cscope 15 $HOME/softwares/lighttpd 0002615261 @config.h 5  #HAVE_ARPA_INET_H 1 ) 11  #HAVE_BZLIB_H 1 ) 14  #HAVE_CHROOT 1 ) 17  #HAVE_CRYPT_H 1 ) 20  #HAVE_DLFCN_H 1 ) 23  #HAVE_DUP2 1 ) 26  #HAVE_EPOLL_CTL 1 ) 44  #HAVE_FCNTL_H 1 ) 47  #HAVE_FORK 1 ) 56  #HAVE_GETCWD 1 ) 59  #HAVE_GETHOSTBYNAME 1 ) 62  #HAVE_GETOPT 1 ) 65  #HAVE_GETOPT_H 1 ) 68  #HAVE_GETRLIMIT 1 ) 71  #HAVE_GETUID 1 ) 74  #HAVE_INET_NTOA 1 ) 77  #HAVE_INET_NTOP 1 ) 80  #HAVE_INTTYPES_H 1 ) 83  #HAVE_IPV6 1 ) 95  #HAVE_LIBBZ2 1 ) 98  #HAVE_LIBCRYPT 1 ) 101  #HAVE_LIBDL 1 ) 113  #HAVE_LIBPCRE 1 ) 125  #HAVE_LIBZ 1 ) 128  #HAVE_LOCALTIME_R 1 ) 131  #HAVE_LSTAT 1 ) 140  #HAVE_MADVISE 1 ) 149  #HAVE_MEMORY_H 1 ) 152  #HAVE_MEMSET 1 ) 155  #HAVE_MMAP 1 ) 158  #HAVE_MUNMAP 1 ) 167  #HAVE_NETINET_IN_H 1 ) 173  #HAVE_PATHCONF 1 ) 176  #HAVE_PCRE_H 1 ) 179  #HAVE_POLL 1 ) 182  #HAVE_POLL_H 1 ) 188  #HAVE_POSIX_FADVISE 1 ) 191  #HAVE_POSIX_MADVISE 1 ) 194  #HAVE_PWD_H 1 ) 197  #HAVE_SELECT 1 ) 200  #HAVE_SENDFILE 1 ) 203  #HAVE_SENDFILE64 1 ) 215  #HAVE_SIGACTION 1 ) 218  #HAVE_SIGNAL 1 ) 221  #HAVE_SIGTIMEDWAIT 1 ) 224  #HAVE_SOCKET 1 ) 227  #HAVE_SOCKLEN_T 1 ) 240  #HAVE_STDINT_H 1 ) 243  #HAVE_STDLIB_H 1 ) 246  #HAVE_STRCHR 1 ) 249  #HAVE_STRDUP 1 ) 252  #HAVE_STRERROR 1 ) 255  #HAVE_STRFTIME 1 ) 258  #HAVE_STRINGS_H 1 ) 261  #HAVE_STRING_H 1 ) 264  #HAVE_STRSTR 1 ) 267  #HAVE_STRTOL 1 ) 270  #HAVE_STRUCT_SOCKADDR_STORAGE 1 ) 273  #HAVE_STRUCT_TM_GMTOFF 1 ) 276  #HAVE_SYSLOG_H 1 ) 282  #HAVE_SYS_EPOLL_H 1 ) 291  #HAVE_SYS_MMAN_H 1 ) 294  #HAVE_SYS_POLL_H 1 ) 300  #HAVE_SYS_PRCTL_H 1 ) 303  #HAVE_SYS_RESOURCE_H 1 ) 306  #HAVE_SYS_SELECT_H 1 ) 309  #HAVE_SYS_SENDFILE_H 1 ) 312  #HAVE_SYS_SOCKET_H 1 ) 315  #HAVE_SYS_STAT_H 1 ) 321  #HAVE_SYS_TIME_H 1 ) 324  #HAVE_SYS_TYPES_H 1 ) 327  #HAVE_SYS_UIO_H 1 ) 330  #HAVE_SYS_UN_H 1 ) 333  #HAVE_SYS_WAIT_H 1 ) 336  #HAVE_UNISTD_H 1 ) 345  #HAVE_UUID_UUID_H 1 ) 351  #HAVE_VFORK 1 ) 357  #HAVE_WORKING_FORK 1 ) 360  #HAVE_WORKING_VFORK 1 ) 363  #HAVE_WRITEV 1 ) 369  #HAVE_ZLIB_H 1 ) 372  #LIGHTTPD_VERSION_ID (1 << 16 | 4 << 8 | 19) ) 376  #LSTAT_FOLLOWS_SLASHED_SYMLINK 1 ) 382  #PACKAGE "ligh‰pd" ) 385  #PACKAGE_BUGREPORT "jª@kÃschke.de" ) 388  #PACKAGE_NAME "ligh‰pd" ) 391  #PACKAGE_STRING "ligh‰pd 1.4.19" ) 394  #PACKAGE_TARNAME "ligh‰pd" ) 397  #PACKAGE_VERSION "1.4.19" ) 400  #PROTOTYPES 1 ) 403  #RETSIGTYPE  ) 406  #SIZEOF_LONG 4 ) 409  #SIZEOF_OFF_T 8 ) 412  #STDC_HEADERS 1 ) 415  #VERSION "1.4.19" ) 420 #iâdeà _ALL_SOURCE 435 #iâdeà __CHAR_UNSIGNED__ 440  #__PROTOTYPES 1 ) 447 #iâdeà __ýlu¥lus @src/array.c 1  ~<¡ršg.h > 2  ~<¡dio.h > 3  ~<¡dlib.h > 4  ~ 6  ~<”ºo.h > 7  ~ 9  ~"¬¿y.h " 10  ~"bufãr.h " 12 ¬¿y * $¬¿y_š™ () { 13 ¬¿y * a ; 15 a = `ÿÎoc (1, (*a)); 16 `as£¹ ( a ); 18 a -> Ãxt_pow”_of_2 = 1; 20  a ; 21 } } 23 ¬¿y * $¬¿y_š™_¬¿y ( ¬¿y * ¤c ) { 24 size_t i ; 25 ¬¿y * a = `¬¿y_š™ (); 27 a -> u£d = ¤c ->used; 28 a -> size = ¤c ->size; 29 a -> Ãxt_pow”_of_2 = ¤c ->next_power_of_2; 30 a -> unique_ndx = ¤c ->unique_ndx; 32 a -> d©a = `m®loc ((* ¤c ->d©aè* src-> size ); 33  i = 0; i < ¤c -> size ; i++) { 34 ià( ¤c -> d©a [ i ]è a ->d©a[i] = src->d©a[i]-> `cÝy (src->data[i]); 35 a -> d©a [ i ] = NULL ; 38 a -> sÜ‹d = `m®loc ((* ¤c ->sÜ‹dè* src-> size ); 39 `memýy ( a -> sÜ‹d , ¤c ->sÜ‹d, (*¤c->sÜ‹dè* src-> size ); 40  a ; 41 } } 43  $¬¿y_ä“ ( ¬¿y * a ) { 44 size_t i ; 45 ià(! a ) ; 47 ià(! a -> is_w—k»f ) { 48  i = 0; i < a -> size ; i++) { 49 ià( a -> d©a [ i ]èa->d©a[i]-> `ä“ (a->data[i]); 53 ià( a -> d©a è `ä“ (a->data); 54 ià( a -> sÜ‹d è `ä“ (a->sorted); 56 `ä“ ( a ); 57 } } 59  $¬¿y_»£t ( ¬¿y * a ) { 60 size_t i ; 61 ià(! a ) ; 63 ià(! a -> is_w—k»f ) { 64  i = 0; i < a -> u£d ; i++) { 65 a -> d©a [ i ]-> `»£t (a->data[i]); 69 a -> u£d = 0; 70 } } 72 d©a_un£t * $¬¿y_pÝ ( ¬¿y * a ) { 73 d©a_un£t * du ; 75 `as£¹ ( a -> u£d != 0); 77 a -> u£d --; 78 du = a -> d©a [a-> u£d ]; 79 a -> d©a [a-> u£d ] = NULL ; 81  du ; 82 } } 84  $¬¿y_g‘_šdex ( ¬¿y * a , cÚ¡ * key , size_t keyËn , * ºdx ) { 85  ndx = -1; 86  i , pos = 0; 88 ià( key =ð NULL )  -1; 91  i = pos = a -> Ãxt_pow”_of_2 / 2; ; i >>= 1) { 92  cmp ; 94 ià( pos < 0) { 95 pos +ð i ; 96 } ià( pos >ð() a -> u£d ) { 97 pos -ð i ; 99 cmp = `bufãr_ÿ£Ëss_com·» ( key , keyËn , a -> d©a [a-> sÜ‹d [ pos ]]->key-> ±r ,‡->d©a[a->sÜ‹d[pos]]->key-> u£d ); 101 ià( cmp == 0) { 103 ndx = a -> sÜ‹d [ pos ]; 105 } ià( cmp < 0) { 106 pos -ð i ; 108 pos +ð i ; 111 ià( i == 0) ; 114 ià( ºdx è*ºdx = pos ; 116  ndx ; 117 } } 119 d©a_un£t * $¬¿y_g‘_–em’t ( ¬¿y * a , cÚ¡ * key ) { 120  ndx ; 122 ià(-1 !ð( ndx = `¬¿y_g‘_šdex ( a , key , `¡¾’ (keyè+ 1, NULL ))) { 125  a -> d©a [ ndx ]; 128  NULL ; 129 } } 131 d©a_un£t * $¬¿y_g‘_unu£d_–em’t ( ¬¿y * a , d©a_ty³_t t ) { 132 d©a_un£t * ds = NULL ; 134 `UNUSED ( t ); 136 ià( a -> size =ð0è NULL ; 138 ià( a -> u£d =ða-> size è NULL ; 140 ià( a -> d©a [a-> u£d ]) { 141 ds = a -> d©a [a-> u£d ]; 143 a -> d©a [a-> u£d ] = NULL ; 146  ds ; 147 } } 150 d©a_un£t * $¬¿y_»¶aû ( ¬¿y * a , d©a_un£t * du ) { 151  ndx ; 153 ià(-1 =ð( ndx = `¬¿y_g‘_šdex ( a , du -> key -> ±r , du->key-> u£d , NULL ))) { 154 `¬¿y_š£¹_unique ( a , du ); 155  NULL ; 157 d©a_un£t * Þd = a -> d©a [ ndx ]; 158 a -> d©a [ ndx ] = du ; 159  Þd ; 161 } } 163  $¬¿y_š£¹_unique ( ¬¿y * a , d©a_un£t * ¡r ) { 164  ndx = -1; 165  pos = 0; 166 size_t j ; 169 ià( ¡r -> key -> u£d =ð0 || sŒ-> is_šdex_key ) { 170 `bufãr_cÝy_lÚg ( ¡r -> key , a -> unique_ndx ++); 171 ¡r -> is_šdex_key = 1; 175 ià(-1 !ð( ndx = `¬¿y_g‘_šdex ( a , ¡r -> key -> ±r , sŒ->key-> u£d , & pos ))) { 177 ià( a -> d©a [ ndx ]-> ty³ =ð ¡r ->type) { 178 ¡r -> `š£¹_dup ( a -> d©a [ ndx ], str); 180 `årštf ( ¡d”r , "a\n"); 187 ià( a -> u£d +1 > INT_MAX ) { 192 ià( a -> size == 0) { 193 a -> size = 16; 194 a -> d©a = `m®loc ((*a->d©aè*‡-> size ); 195 a -> sÜ‹d = `m®loc ((*a->sÜ‹dè*‡-> size ); 196 `as£¹ ( a -> d©a ); 197 `as£¹ ( a -> sÜ‹d ); 198  j = a -> u£d ; j <‡-> size ; j++èa-> d©a [j] = NULL ; 199 } ià( a -> size =ða-> u£d ) { 200 a -> size += 16; 201 a -> d©a = `»®loc ×->d©a, (*a->d©aè*‡-> size ); 202 a -> sÜ‹d = `»®loc ×->sÜ‹d, (*a->sÜ‹dè*‡-> size ); 203 `as£¹ ( a -> d©a ); 204 `as£¹ ( a -> sÜ‹d ); 205  j = a -> u£d ; j <‡-> size ; j++èa-> d©a [j] = NULL ; 208 ndx = (è a -> u£d ; 210 a -> d©a [a-> u£d ++] = ¡r ; 212 ià( pos !ð ndx && 213 (( pos < 0) || 214 `bufãr_ÿ£Ëss_com·» ( ¡r -> key -> ±r , sŒ->key-> u£d , a -> d©a [a-> sÜ‹d [ pos ]]->key->ptr,‡->data[a->sorted[pos]]->key->used) > 0)) { 215 pos ++; 219 ià( pos !ð ndx ) { 220 `memmove ( a -> sÜ‹d + ( pos + 1),‡->sÜ‹d + (pos), ( ndx -…os) * (*a->sorted)); 224 a -> sÜ‹d [ pos ] = ndx ; 226 ià( a -> Ãxt_pow”_of_2 =ð( size_t ) ndx )‡->next_power_of_2 <<= 1; 229 } } 231  $¬¿y_´št_šd’t ( d•th ) { 232  i ; 233  i = 0; i < d•th ; i ++) { 234 `årštf ( ¡dout , " "); 236 } } 238 size_t $¬¿y_g‘_max_key_Ëngth ( ¬¿y * a ) { 239 size_t maxËn , i ; 241 maxËn = 0; 242  i = 0; i < a -> u£d ; i ++) { 243 d©a_un£t * du = a -> d©a [ i ]; 244 size_t Ën = `¡¾’ ( du -> key -> ±r ); 246 ià( Ën > maxËn ) { 247 maxËn = Ën ; 250  maxËn ; 251 } } 253  $¬¿y_´št ( ¬¿y * a ,  d•th ) { 254 size_t i ; 255 size_t maxËn ; 256  Ú–še = 1; 258 ià( a -> u£d > 5) { 259 Ú–še = 0; 261  i = 0; i < a -> u£d && Ú–še ; i++) { 262 d©a_un£t * du = a -> d©a [ i ]; 263 ià(! du -> is_šdex_key ) { 264 Ú–še = 0; 267  du -> ty³ ) { 268  TYPE_INTEGER : 269  TYPE_STRING : 270  TYPE_COUNT : 273 Ú–še = 0; 277 ià( Ú–še ) { 278 `årštf ( ¡dout , "("); 279  i = 0; i < a -> u£d ; i++) { 280 d©a_un£t * du = a -> d©a [ i ]; 281 ià( i != 0) { 282 `årštf ( ¡dout , ", "); 284 du -> `´št (du, d•th + 1); 286 `årštf ( ¡dout , ")"); 290 maxËn = `¬¿y_g‘_max_key_Ëngth ( a ); 291 `årštf ( ¡dout , "(\n"); 292  i = 0; i < a -> u£d ; i++) { 293 d©a_un£t * du = a -> d©a [ i ]; 294 `¬¿y_´št_šd’t ( d•th + 1); 295 ià(! du -> is_šdex_key ) { 296  j ; 298 ià( i && (i % 5) == 0) { 299 `årštf ( ¡dout , "# %zd\n", i ); 300 `¬¿y_´št_šd’t ( d•th + 1); 302 `årštf ( ¡dout , "\"%s\"", du -> key -> ±r ); 303  j = maxËn - `¡¾’ ( du -> key -> ±r ); j > 0; j --) { 304 `årštf ( ¡dout , " "); 306 `årštf ( ¡dout , " => "); 308 du -> `´št (du, d•th + 1); 309 `årštf ( ¡dout , ",\n"); 311 ià(!( i && (i - 1 % 5) == 0)) { 312 `¬¿y_´št_šd’t ( d•th + 1); 313 `årštf ( ¡dout , "# %zd\n", i ); 315 `¬¿y_´št_šd’t ( d•th ); 316 `årštf ( ¡dout , ")"); 319 } } 321 #ifdeà DEBUG_ARRAY 322  $maš ( ¬gc , ** ¬gv ) { 323 ¬¿y * a ; 324 d©a_¡ršg * ds ; 325 d©a_couÁ * dc ; 327 `UNUSED ( ¬gc ); 328 `UNUSED ( ¬gv ); 330 a = `¬¿y_š™ (); 332 ds = `d©a_¡ršg_š™ (); 333 `bufãr_cÝy_¡ršg ( ds -> key , "abc"); 334 `bufãr_cÝy_¡ršg ( ds -> v®ue , "alfrag"); 336 `¬¿y_š£¹_unique ( a , ( d©a_un£t *) ds ); 338 ds = `d©a_¡ršg_š™ (); 339 `bufãr_cÝy_¡ršg ( ds -> key , "abc"); 340 `bufãr_cÝy_¡ršg ( ds -> v®ue , "hameplman"); 342 `¬¿y_š£¹_unique ( a , ( d©a_un£t *) ds ); 344 ds = `d©a_¡ršg_š™ (); 345 `bufãr_cÝy_¡ršg ( ds -> key , "123"); 346 `bufãr_cÝy_¡ršg ( ds -> v®ue , "alfrag"); 348 `¬¿y_š£¹_unique ( a , ( d©a_un£t *) ds ); 350 dc = `d©a_couÁ_š™ (); 351 `bufãr_cÝy_¡ršg ( dc -> key , "def"); 353 `¬¿y_š£¹_unique ( a , ( d©a_un£t *) dc ); 355 dc = `d©a_couÁ_š™ (); 356 `bufãr_cÝy_¡ršg ( dc -> key , "def"); 358 `¬¿y_š£¹_unique ( a , ( d©a_un£t *) dc ); 360 `¬¿y_´št ( a , 0); 362 `¬¿y_ä“ ( a ); 364 `årštf ( ¡d”r , "%d\n", 365 `bufãr_ÿ£Ëss_com·» ( `CONST_STR_LEN ("Content-Type"), CONST_STR_LEN("Content-type"))); 368 } } @src/array.h 1 #iâdeà ARRAY_H 2  #ARRAY_H ) 4  ~<¡dlib.h > 5 #ifdeà HAVE_CONFIG_H 6  ~"cÚfig.h " 8 #ifdeà HAVE_PCRE_H 9  ~ 11  ~"bufãr.h " 13  #DATA_IS_STRING ( x è(x-> ty³ =ð TYPE_STRING ) ) 15 ’um { mTYPE_UNSET , mTYPE_STRING , mTYPE_COUNT , mTYPE_ARRAY , mTYPE_INTEGER , mTYPE_FASTCGI , mTYPE_CONFIG } td©a_ty³_t ; 16  #DATA_UNSET \ 17 d©a_ty³_t ty³ ; \ 18 bufãr * key ; \ 19  is_šdex_key ; \ 20  d©a_un£t *(* cÝy )(cÚ¡ d©a_un£ˆ* ¤c ); \ 21 (* ä“ )( d©a_un£t * p ); \ 22 (* »£t )( d©a_un£t * p ); \ 23 (* š£¹_dup )( d©a_un£t * d¡ , d©a_un£ˆ* ¤c ); \ 24 (* ´št )(cÚ¡  d©a_un£t * p ,  d•th ) ) 26  sd©a_un£t { 27 mDATA_UNSET ; 28 } td©a_un£t ; 31 d©a_un£t ** md©a ; 33 size_t * msÜ‹d ; 35 size_t mu£d ; 36 size_t msize ; 38 size_t munique_ndx ; 40 size_t mÃxt_pow”_of_2 ; 41  mis_w—k»f ; 42 } t¬¿y ; 45 mDATA_UNSET ; 47  mcouÁ ; 48 } td©a_couÁ ; 50 d©a_couÁ * d©a_couÁ_š™ (); 53 mDATA_UNSET ; 55 bufãr * mv®ue ; 56 } td©a_¡ršg ; 58 d©a_¡ršg * d©a_¡ršg_š™ (); 59 d©a_¡ršg * d©a_»¥Ú£_š™ (); 62 mDATA_UNSET ; 64 ¬¿y * mv®ue ; 65 } td©a_¬¿y ; 67 d©a_¬¿y * d©a_¬¿y_š™ (); 73 mCONFIG_COND_UNSET , 74 mCONFIG_COND_EQ , 75 mCONFIG_COND_MATCH , 76 mCONFIG_COND_NE , 77 mCONFIG_COND_NOMATCH 78 } tcÚfig_cÚd_t ; 84 mCOMP_UNSET , 85 mCOMP_SERVER_SOCKET , 86 mCOMP_HTTP_URL , 87 mCOMP_HTTP_HOST , 88 mCOMP_HTTP_REFERER , 89 mCOMP_HTTP_USER_AGENT , 90 mCOMP_HTTP_COOKIE , 91 mCOMP_HTTP_REMOTE_IP , 92 mCOMP_HTTP_QUERY_STRING , 93 mCOMP_HTTP_SCHEME , 94 mCOMP_HTTP_REQUEST_METHOD , 96 mCOMP_LAST_ELEMENT 97 } tcomp_key_t ; 104  _d©a_cÚfig td©a_cÚfig ; 105  s_d©a_cÚfig { 106 mDATA_UNSET ; 108 ¬¿y * mv®ue ; 110 bufãr * mcomp_key ; 111 comp_key_t mcomp ; 113 cÚfig_cÚd_t mcÚd ; 114 bufãr * mÝ ; 116  mcÚ‹xt_ndx ; 117 ¬¿y * mchžds ; 119 d©a_cÚfig * m·»Á ; 121 d©a_cÚfig * m´ev ; 122 d©a_cÚfig * mÃxt ; 124 bufãr * m¡ršg ; 125 #ifdeà HAVE_PCRE_H 126 püe * m»gex ; 127 püe_exŒa * m»gex_¡udy ; 131 d©a_cÚfig * d©a_cÚfig_š™ (); 134 mDATA_UNSET ; 136  mv®ue ; 137 } td©a_š‹g” ; 139 d©a_š‹g” * d©a_š‹g”_š™ (); 142 mDATA_UNSET ; 144 bufãr * mho¡ ; 146  mpÜt ; 148 time_t mdi§bË_ts ; 149  mis_di§bËd ; 150 size_t mb®ªû ; 152  mu§ge ; 153  mÏ¡_u£d_ndx ; 154 } td©a_ç¡cgi ; 156 d©a_ç¡cgi * d©a_ç¡cgi_š™ (); 158 ¬¿y * ¬¿y_š™ (); 159 ¬¿y * ¬¿y_š™_¬¿y ×¼ay * a ); 160  ¬¿y_ä“ ( ¬¿y * a ); 161  ¬¿y_»£t ( ¬¿y * a ); 162  ¬¿y_š£¹_unique ( ¬¿y * a , d©a_un£t * ¡r ); 163 d©a_un£t * ¬¿y_pÝ ( ¬¿y * a ); 164  ¬¿y_´št ( ¬¿y * a ,  d•th ); 165 d©a_un£t * ¬¿y_g‘_unu£d_–em’t ( ¬¿y * a , d©a_ty³_t t ); 166 d©a_un£t * ¬¿y_g‘_–em’t ( ¬¿y * a , cÚ¡ * key ); 167 d©a_un£t * ¬¿y_»¶aû ( ¬¿y * a , d©a_un£ˆ* du ); 168  ¬¿y_¡rÿ£cmp (cÚ¡ * a , size_t a_Ën , cÚ¡ * b , size_ˆ b_Ën ); 169  ¬¿y_´št_šd’t ( d•th ); 170 size_t ¬¿y_g‘_max_key_Ëngth ( ¬¿y * a ); @src/base.h 1 #iâdeà _BASE_H_ 2  #_BASE_H_ ) 4  ~ 5  ~ 6  ~ 8 #ifdeà HAVE_CONFIG_H 9  ~"cÚfig.h " 12  ~ 13 #ifdeà HAVE_STDINT_H 14  ~<¡dšt.h > 16 #ifdeà HAVE_INTTYPES_H 17  ~<š‰y³s.h > 20  ~"bufãr.h " 21  ~"¬¿y.h " 22  ~"chunk.h " 23  ~"keyv®ue.h " 24  ~"£‰šgs.h " 25  ~"fdev’t.h " 26  ~"sys-sock‘.h " 27  ~"¥ÏyŒ“.h " 28  ~"‘ag.h " 31 #ià defšed HAVE_LIBSSL && defšed HAVE_OPENSSL_SSL_H 32  #USE_OPENSSL ) 33  ~<Ý’s¦/s¦.h > 36 #ifdeà HAVE_FAM_H 37  ~<çm.h > 40 #iâdeà O_BINARY 41  #O_BINARY 0 ) 44 #iâdeà O_LARGEFILE 45  #O_LARGEFILE 0 ) 48 #iâdeà SIZE_MAX 49 #ifdeà SIZE_T_MAX 50  #SIZE_MAX SIZE_T_MAX ) 52  #SIZE_MAX (( size_t )~0) ) 56 #iâdeà SSIZE_MAX 57  #SSIZE_MAX (( size_t )~0 >> 1) ) 60 #ifdeà __APPLE__ 61  ~<üt_ex‹ºs.h > 62  #’vœÚ (* `_NSG‘EnvœÚ ()) ) 64 ** ’vœÚ ; 68 #iâdeà HAVE_SOCKLEN_T 69  tsockËn_t ; 73 #ià(! defšed ( HAVE_STDINT_H )è&& (!defšed( HAVE_INTTYPES_H )è&& (!defšed( ušt32_t )) 74  #ušt32_t u_št32_t ) 78 #iâdeà SHUT_WR 79  #SHUT_WR 1 ) 82  ~"£‰šgs.h " 84 ’um { mT_CONFIG_UNSET , 85 mT_CONFIG_STRING , 86 mT_CONFIG_SHORT , 87 mT_CONFIG_BOOLEAN , 88 mT_CONFIG_ARRAY , 89 mT_CONFIG_LOCAL , 90 mT_CONFIG_DEPRECATED , 91 mT_CONFIG_UNSUPPORTED 92 } tcÚfig_v®ues_ty³_t ; 94 ’um { mT_CONFIG_SCOPE_UNSET , 95 mT_CONFIG_SCOPE_SERVER , 96 mT_CONFIG_SCOPE_CONNECTION 97 } tcÚfig_scÝe_ty³_t ; 100 cÚ¡ * mkey ; 101 * mde¡š©iÚ ; 103 cÚfig_v®ues_ty³_t mty³ ; 104 cÚfig_scÝe_ty³_t mscÝe ; 105 } tcÚfig_v®ues_t ; 107 ’um { mDIRECT , mEXTERNAL } tcÚÃùiÚ_ty³ ; 110 * mkey ; 111 cÚÃùiÚ_ty³ mty³ ; 112 * mv®ue ; 113 } t»que¡_hªdËr ; 116 * mkey ; 117 * mho¡ ; 118  mpÜt ; 119  mu£d ; 120  mçùÜ ; 121 } tfcgi_cÚÃùiÚs ; 125 #ifdeà HAVE_IPV6 126  sockaddr_š6 mv6 ; 128  sockaddr_š mv4 ; 129 #ifdeà HAVE_SYS_UN_H 130  sockaddr_un mun ; 132  sockaddr m¶aš ; 133 } tsock_addr ; 136  #HTTP_STATUS `BV (0) ) 137  #HTTP_CONNECTION `BV (1) ) 138  #HTTP_CONTENT_LENGTH `BV (2) ) 139  #HTTP_DATE `BV (3) ) 140  #HTTP_LOCATION `BV (4) ) 145 bufãr * m»que¡ ; 146 bufãr * muri ; 148 bufãr * mÜig_uri ; 150 h‰p_m‘hod_t mh‰p_m‘hod ; 151 h‰p_v”siÚ_t mh‰p_v”siÚ ; 153 bufãr * m»que¡_lše ; 156 bufãr * mh‰p_ho¡ ; 157 cÚ¡ * mh‰p_¿nge ; 158 cÚ¡ * mh‰p_cÚ‹Á_ty³ ; 159 cÚ¡ * mh‰p_if_modif›d_sšû ; 160 cÚ¡ * mh‰p_if_nÚe_m©ch ; 162 ¬¿y * mh—d”s ; 165 size_t mcÚ‹Á_Ëngth ; 168  macû±_’codšg ; 171 bufãr * m·thšfo ; 172 } t»que¡ ; 175 off_t mcÚ‹Á_Ëngth ; 176  mk“p_®ive ; 178 ¬¿y * mh—d”s ; 181 mHTTP_TRANSFER_ENCODING_IDENTITY , mHTTP_TRANSFER_ENCODING_CHUNKED 182 } mŒªsãr_’codšg ; 183 } t»¥Ú£ ; 186 bufãr * mscheme ; 187 bufãr * mauthÜ™y ; 188 bufãr * m·th ; 189 bufãr * m·th_¿w ; 190 bufãr * mqu”y ; 191 } t»que¡_uri ; 194 bufãr * m·th ; 195 bufãr * mba£dœ ; 197 bufãr * mdoc_roÙ ; 198 bufãr * m»l_·th ; 200 bufãr * m‘ag ; 201 } tphysiÿl ; 204 bufãr * mÇme ; 205 bufãr * m‘ag ; 207  ¡© m¡ ; 209 time_t m¡©_ts ; 211 #ifdeà HAVE_LSTAT 212  mis_symlšk ; 215 #ifdeà HAVE_FAM_H 216  mdœ_v”siÚ ; 217  mdœ_ndx ; 220 bufãr * mcÚ‹Á_ty³ ; 221 } t¡©_ÿche_’Œy ; 224 ¥Ïy_Œ“ * mfžes ; 226 bufãr * mdœ_Çme ; 227 #ifdeà HAVE_FAM_H 228 ¥Ïy_Œ“ * mdœs ; 230 FAMCÚÃùiÚ * mçm ; 231  mçm_fcû_ndx ; 233 bufãr * mhash_key ; 234 } t¡©_ÿche ; 237 ¬¿y * mmim‘y³s ; 240 bufãr * mdocum’t_roÙ ; 241 bufãr * m£rv”_Çme ; 242 bufãr * m”rÜ_hªdËr ; 243 bufãr * m£rv”_g ; 244 bufãr * mdœli¡_’codšg ; 245 bufãr * m”rÜfže_´efix ; 247  mmax_k“p_®ive_»que¡s ; 248  mmax_k“p_®ive_idË ; 249  mmax_»ad_idË ; 250  mmax_wr™e_idË ; 251  mu£_x©Œ ; 252  mfÞlow_symlšk ; 253  m¿nge_»que¡s ; 257  mlog_fže_nÙ_found ; 258  mlog_»que¡_h—d” ; 259  mlog_»que¡_hªdlšg ; 260  mlog_»¥Ú£_h—d” ; 261  mlog_cÚd™iÚ_hªdlšg ; 265 bufãr * ms¦_³mfže ; 266 bufãr * ms¦_ÿ_fže ; 267 bufãr * ms¦_ch”_li¡ ; 268  ms¦_u£_s¦v2 ; 270  mu£_v6 ; 271  mis_s¦ ; 272  m®low_h‰p11 ; 273  m‘ag_u£_šode ; 274  m‘ag_u£_mtime ; 275  m‘ag_u£_size ; 276  mfÜû_low”ÿ£_fž’ames ; 277  mmax_»que¡_size ; 279  mkby‹s_³r_£cÚd ; 282  mglob®_kby‹s_³r_£cÚd ; 284 off_t mglob®_by‹s_³r_£cÚd_út ; 298 off_t * mglob®_by‹s_³r_£cÚd_út_±r ; 300 #ifdeà USE_OPENSSL 301 SSL_CTX * ms¦_ùx ; 303 } t¥ecific_cÚfig ; 308 mCON_STATE_CONNECT , 309 mCON_STATE_REQUEST_START , 310 mCON_STATE_READ , 311 mCON_STATE_REQUEST_END , 312 mCON_STATE_READ_POST , 313 mCON_STATE_HANDLE_REQUEST , 314 mCON_STATE_RESPONSE_START , 315 mCON_STATE_WRITE , 316 mCON_STATE_RESPONSE_END , 317 mCON_STATE_ERROR , 318 mCON_STATE_CLOSE 319 } tcÚÃùiÚ_¡©e_t ; 321 ’um { mCOND_RESULT_UNSET , mCOND_RESULT_FALSE , mCOND_RESULT_TRUE } tcÚd_»suÉ_t ; 323 cÚd_»suÉ_t m»suÉ ; 324  m·‰”ncouÁ ; 325  mm©ches [3 * 10]; 326 bufãr * mcomp_v®ue ; 328 comp_key_t mcomp_ty³ ; 329 } tcÚd_ÿche_t ; 332 cÚÃùiÚ_¡©e_t m¡©e ; 335 time_t m»ad_idË_ts ; 336 time_t mþo£_timeout_ts ; 337 time_t mwr™e_»que¡_ts ; 339 time_t mcÚÃùiÚ_¡¬t ; 340 time_t m»que¡_¡¬t ; 342  timev® m¡¬t_tv ; 344 size_t m»que¡_couÁ ; 345 size_t mloÝs_³r_»que¡ ; 351  mfd ; 352  mfde_ndx ; 353  mndx ; 356  mis_»adabË ; 357  mis_wr™abË ; 359  mk“p_®ive ; 361  mfže_¡¬‹d ; 362  mfže_fšished ; 364 chunkqueue * mwr™e_queue ; 365 chunkqueue * m»ad_queue ; 366 chunkqueue * m»que¡_cÚ‹Á_queue ; 368  mŒaffic_lim™_»ached ; 370 off_t mby‹s_wr™‹n ; 371 off_t mby‹s_wr™‹n_cur_£cÚd ; 372 off_t mby‹s_»ad ; 373 off_t mby‹s_h—d” ; 375  mh‰p_¡©us ; 377 sock_addr md¡_addr ; 378 bufãr * md¡_addr_buf ; 381 bufãr * m·r£_»que¡ ; 382  m·r£d_»¥Ú£ ; 384 »que¡ m»que¡ ; 385 »que¡_uri muri ; 386 physiÿl mphysiÿl ; 387 »¥Ú£ m»¥Ú£ ; 389 size_t mh—d”_Ën ; 391 bufãr * mauthed_u£r ; 392 ¬¿y * m’vœÚm’t ; 395  mgÙ_»¥Ú£ ; 397  mš_jobli¡ ; 399 cÚÃùiÚ_ty³ mmode ; 401 ** m¶ugš_ùx ; 403 ¥ecific_cÚfig mcÚf ; 404 cÚd_ÿche_t * mcÚd_ÿche ; 406 bufãr * m£rv”_Çme ; 409 bufãr * m”rÜ_hªdËr ; 410  m”rÜ_hªdËr_§ved_¡©us ; 411  mš_”rÜ_hªdËr ; 413 * m¤v_sock‘ ; 415 #ifdeà USE_OPENSSL 416 SSL * ms¦ ; 417 bufãr * ms¦_”rÜ_wªt_»u£_bufãr ; 420 ‘ag_æags_t m‘ag_æags ; 422  mcÚd™iÚ®_is_v®id [ COMP_LAST_ELEMENT ]; 423 } tcÚÃùiÚ ; 426 cÚÃùiÚ ** m±r ; 427 size_t msize ; 428 size_t mu£d ; 429 } tcÚÃùiÚs ; 432 #ifdeà HAVE_IPV6 434  mçmžy ; 436  š6_addr mv6 ; 437  š_addr mv4 ; 438 } maddr ; 439  mb2 [ INET6_ADDRSTRLEN + 1]; 440 time_t mts ; 441 } tš‘_ÁÝ_ÿche_ty³ ; 446 bufãr * muri ; 447 time_t mmtime ; 448  mh‰p_¡©us ; 449 } t»®·th_ÿche_ty³ ; 452 time_t mmtime ; 453 bufãr * m¡r ; 454 } tmtime_ÿche_ty³ ; 457 * m±r ; 458 size_t mu£d ; 459 size_t msize ; 460 } tbufãr_¶ugš ; 463  mpÜt ; 464 bufãr * mbšdho¡ ; 466 bufãr * m”rÜlog_fže ; 467  m”rÜlog_u£_sy¦og ; 469  mdÚt_d«mÚize ; 470 bufãr * mchªg”oÙ ; 471 bufãr * mu£ºame ; 472 bufãr * mgrou²ame ; 474 bufãr * mpid_fže ; 476 bufãr * mev’t_hªdËr ; 478 bufãr * mmoduËs_dœ ; 479 bufãr * mÃtwÜk_back’d ; 480 ¬¿y * mmoduËs ; 481 ¬¿y * mu¶ßd_‹mpdœs ; 483  mmax_wÜk” ; 484  mmax_fds ; 485  mmax_cÚns ; 486  mmax_»que¡_size ; 488  mlog_»que¡_h—d”_Ú_”rÜ ; 489  mlog_¡©e_hªdlšg ; 491 ’um { mSTAT_CACHE_ENGINE_UNSET , 492 mSTAT_CACHE_ENGINE_NONE , 493 mSTAT_CACHE_ENGINE_SIMPLE , 494 #ifdeà HAVE_FAM_H 495 mSTAT_CACHE_ENGINE_FAM 497 } m¡©_ÿche_’gše ; 498  m’abË_cÜes ; 499 } t£rv”_cÚfig ; 502 sock_addr maddr ; 503  mfd ; 504  mfde_ndx ; 506 bufãr * ms¦_³mfže ; 507 bufãr * ms¦_ÿ_fže ; 508 bufãr * ms¦_ch”_li¡ ; 509  ms¦_u£_s¦v2 ; 510  mu£_v6 ; 511  mis_s¦ ; 513 bufãr * m¤v_tok’ ; 515 #ifdeà USE_OPENSSL 516 SSL_CTX * ms¦_ùx ; 518  mis_´oxy_s¦ ; 519 } t£rv”_sock‘ ; 522 £rv”_sock‘ ** m±r ; 524 size_t msize ; 525 size_t mu£d ; 526 } t£rv”_sock‘_¬¿y ; 528  s£rv” { 529 £rv”_sock‘_¬¿y m¤v_sock‘s ; 532  m”rÜlog_fd ; 533 ’um { mERRORLOG_STDERR , mERRORLOG_FILE , mERRORLOG_SYSLOG } m”rÜlog_mode ; 534 bufãr * m”rÜlog_buf ; 536 fdev’ts * mev , * mev_šs ; 538 bufãr_¶ugš m¶ugšs ; 539 * m¶ugš_¦Ùs ; 542  mcÚ_Ý’ed ; 543  mcÚ_»ad ; 544  mcÚ_wr™‹n ; 545  mcÚ_þo£d ; 547  ms¦_is_š™ ; 549  mmax_fds ; 550  mcur_fds ; 551  mwªt_fds ; 552  msock‘s_di§bËd ; 554 size_t mmax_cÚns ; 557 bufãr * m·r£_fuÎ_·th ; 558 bufãr * m»¥Ú£_h—d” ; 559 bufãr * m»¥Ú£_¿nge ; 560 bufãr * mtmp_buf ; 562 bufãr * mtmp_chunk_Ën ; 564 bufãr * mem±y_¡ršg ; 566 bufãr * mcÚd_check_buf ; 569 #ifdeà HAVE_IPV6 570 š‘_ÁÝ_ÿche_ty³ mš‘_ÁÝ_ÿche [ INET_NTOP_CACHE_MAX ]; 572 mtime_ÿche_ty³ mmtime_ÿche [ FILE_CACHE_MAX ]; 574 ¬¿y * m¥l™_v®s ; 577 time_t mcur_ts ; 578 time_t mÏ¡_g’”©ed_d©e_ts ; 579 time_t mÏ¡_g’”©ed_debug_ts ; 580 time_t m¡¬tup_ts ; 582 bufãr * mts_debug_¡r ; 583 bufãr * mts_d©e_¡r ; 586 ¬¿y * mcÚfig ; 587 ¬¿y * mcÚfig_touched ; 589 ¬¿y * mcÚfig_cÚ‹xt ; 590 ¥ecific_cÚfig ** mcÚfig_¡Üage ; 592 £rv”_cÚfig m¤vcÚf ; 594  mcÚfig_d•»ÿ‹d ; 595  mcÚfig_unsuµÜ‹d ; 597 cÚÃùiÚs * mcÚns ; 598 cÚÃùiÚs * mjobli¡ ; 599 cÚÃùiÚs * mfdwa™queue ; 601 ¡©_ÿche * m¡©_ÿche ; 616 ¬¿y * m¡©us ; 618 fdev’t_hªdËr_t mev’t_hªdËr ; 620 (* mÃtwÜk_back’d_wr™e )( £rv” * m¤v , cÚÃùiÚ * mcÚ ,  mfd , chunkqueue * mcq ); 621 (* mÃtwÜk_back’d_»ad )( £rv” * m¤v , cÚÃùiÚ * mcÚ ,  mfd , chunkqueue * mcq ); 622 #ifdeà USE_OPENSSL 623 (* mÃtwÜk_s¦_back’d_wr™e )( £rv” * m¤v , cÚÃùiÚ * mcÚ , SSL * ms¦ , chunkqueue * mcq ); 624 (* mÃtwÜk_s¦_back’d_»ad )( £rv” * m¤v , cÚÃùiÚ * mcÚ , SSL * ms¦ , chunkqueue * mcq ); 627 uid_t muid ; 628 gid_t mgid ; 629 } t£rv” ; @src/bitset.c 1  ~ 2  ~<¡dlib.h > 3  ~<¡ršg.h > 4  ~<¡dio.h > 5  ~ 7  ~"b™£t.h " 8  ~"bufãr.h " 10  #BITSET_BITS \ 11 Ð CHAR_BIT * ( size_t è) ) 13  #BITSET_MASK ( pos ) \ 14 Ð(( size_t )1è<< (( pos è% BITSET_BITS è) ) 16  #BITSET_WORD ( £t , pos ) \ 17 Ð( £t )-> b™s [( pos è/ BITSET_BITS ] ) ) 19  #BITSET_USED ( nb™s ) \ 20 Ð(( nb™s è+ ( BITSET_BITS - 1)è/ BITSET_BITS ) ) 22 b™£t * $b™£t_š™ ( size_t nb™s ) { 23 b™£t * £t ; 25 £t = `m®loc ((*set)); 26 `as£¹ ( £t ); 28 £t -> b™s = `ÿÎoc ( `BITSET_USED ( nb™s ), (*set->bits)); 29 £t -> nb™s =‚bits; 31 `as£¹ ( £t -> b™s ); 33  £t ; 34 } } 36  $b™£t_»£t ( b™£t * £t ) { 37 `mem£t ( £t -> b™s , 0, `BITSET_USED (£t-> nb™s ) * (*set->bits)); 38 } } 40  $b™£t_ä“ ( b™£t * £t ) { 41 `ä“ ( £t -> b™s ); 42 `ä“ ( £t ); 43 } } 45  $b™£t_þ—r_b™ ( b™£t * £t , size_t pos ) { 46 ià( pos >ð £t -> nb™s ) { 47 `SEGFAULT (); 50 `BITSET_WORD ( £t , pos è&ð~ `BITSET_MASK (pos); 51 } } 53  $b™£t_£t_b™ ( b™£t * £t , size_t pos ) { 54 ià( pos >ð £t -> nb™s ) { 55 `SEGFAULT (); 58 `BITSET_WORD ( £t , pos è|ð `BITSET_MASK (pos); 59 } } 61  $b™£t_‹¡_b™ ( b™£t * £t , size_t pos ) { 62 ià( pos >ð £t -> nb™s ) { 63 `SEGFAULT (); 66  ( `BITSET_WORD ( £t , pos è& `BITSET_MASK (pos)) != 0; 67 } } @src/bitset.h 1 #iâdeà _BITSET_H_ 2  #_BITSET_H_ ) 4  ~<¡ddef.h > 7 size_t * mb™s ; 8 size_t mnb™s ; 9 } tb™£t ; 11 b™£t * b™£t_š™ ( size_t nb™s ); 12  b™£t_»£t ( b™£t * £t ); 13  b™£t_ä“ ( b™£t * £t ); 15  b™£t_þ—r_b™ ( b™£t * £t , size_t pos ); 16  b™£t_£t_b™ ( b™£t * £t , size_t pos ); 17  b™£t_‹¡_b™ ( b™£t * £t , size_t pos ); @src/buffer.c 1  ~<¡dlib.h > 2  ~<¡ršg.h > 4  ~<¡dio.h > 5  ~ 6  ~<ùy³.h > 8  ~"bufãr.h " 11 cÚ¡  ghex_ch¬s [] = "0123456789abcdef"; 19 bufãr * $bufãr_š™ () { 20 bufãr * b ; 22 b = `m®loc ((*b)); 23 `as£¹ ( b ); 25 b -> ±r = NULL ; 26 b -> size = 0; 27 b -> u£d = 0; 29  b ; 30 } } 32 bufãr * $bufãr_š™_bufãr ( bufãr * ¤c ) { 33 bufãr * b = `bufãr_š™ (); 34 `bufãr_cÝy_¡ršg_bufãr ( b , ¤c ); 35  b ; 36 } } 43  $bufãr_ä“ ( bufãr * b ) { 44 ià(! b ) ; 46 `ä“ ( b -> ±r ); 47 `ä“ ( b ); 48 } } 50  $bufãr_»£t ( bufãr * b ) { 51 ià(! b ) ; 54 ià( b -> size > BUFFER_MAX_REUSE_SIZE ) { 55 `ä“ ( b -> ±r ); 56 b -> ±r = NULL ; 57 b -> size = 0; 60 b -> u£d = 0; 61 } } 71  #BUFFER_PIECE_SIZE 64 ) 73  $bufãr_´•¬e_cÝy ( bufãr * b , size_t size ) { 74 ià(! b )  -1; 76 ià((0 =ð b -> size ) || 77 ( size > b ->size)) { 78 ià( b -> size è `ä“ (b-> ±r ); 80 b -> size = size; 83 b -> size +ð BUFFER_PIECE_SIZE - (b->size % BUFFER_PIECE_SIZE); 85 b -> ±r = `m®loc (b-> size ); 86 `as£¹ ( b -> ±r ); 88 b -> u£d = 0; 90 } } 99  $bufãr_´•¬e_­³nd ( bufãr * b , size_t size ) { 100 ià(! b )  -1; 102 ià(0 =ð b -> size ) { 103 b -> size = size; 106 b -> size +ð BUFFER_PIECE_SIZE - (b->size % BUFFER_PIECE_SIZE); 108 b -> ±r = `m®loc (b-> size ); 109 b -> u£d = 0; 110 `as£¹ ( b -> ±r ); 111 } ià( b -> u£d + size > b->size) { 112 b -> size += size; 115 b -> size +ð BUFFER_PIECE_SIZE - (b->size % BUFFER_PIECE_SIZE); 117 b -> ±r = `»®loc (b->±r, b-> size ); 118 `as£¹ ( b -> ±r ); 121 } } 123  $bufãr_cÝy_¡ršg ( bufãr * b , cÚ¡ * s ) { 124 size_t s_Ën ; 126 ià(! s || ! b )  -1; 128 s_Ën = `¡¾’ ( s ) + 1; 129 `bufãr_´•¬e_cÝy ( b , s_Ën ); 131 `memýy ( b -> ±r , s , s_Ën ); 132 b -> u£d = s_Ën ; 135 } } 137  $bufãr_cÝy_¡ršg_Ën ( bufãr * b , cÚ¡ * s , size_t s_Ën ) { 138 ià(! s || ! b )  -1; 145 ià( s_Ën == 0)  0; 147 `bufãr_´•¬e_cÝy ( b , s_Ën + 1); 149 `memýy ( b -> ±r , s , s_Ën ); 150 b -> ±r [ s_Ën ] = '\0'; 151 b -> u£d = s_Ën + 1; 154 } } 156  $bufãr_cÝy_¡ršg_bufãr ( bufãr * b , cÚ¡ bufã¸* ¤c ) { 157 ià(! ¤c )  -1; 159 ià( ¤c -> u£d == 0) { 160 b -> u£d = 0; 163  `bufãr_cÝy_¡ršg_Ën ( b , ¤c -> ±r , src-> u£d - 1); 164 } } 166  $bufãr_­³nd_¡ršg ( bufãr * b , cÚ¡ * s ) { 167 size_t s_Ën ; 169 ià(! s || ! b )  -1; 171 s_Ën = `¡¾’ ( s ); 172 `bufãr_´•¬e_­³nd ( b , s_Ën + 1); 173 ià( b -> u£d == 0) 174 b -> u£d ++; 176 `memýy ( b -> ±r + b-> u£d - 1, s , s_Ën + 1); 177 b -> u£d +ð s_Ën ; 180 } } 182  $bufãr_­³nd_¡ršg_rfžl ( bufãr * b , cÚ¡ * s , size_t maxËn ) { 183 size_t s_Ën ; 185 ià(! s || ! b )  -1; 187 s_Ën = `¡¾’ ( s ); 188 `bufãr_´•¬e_­³nd ( b , maxËn + 1); 189 ià( b -> u£d == 0) 190 b -> u£d ++; 192 `memýy ( b -> ±r + b-> u£d - 1, s , s_Ën ); 193 ià( maxËn > s_Ën ) { 194 `mem£t ( b -> ±r + b-> u£d - 1 + s_Ën , ' ', maxËn - s_len); 197 b -> u£d +ð maxËn ; 198 b -> ±r [b-> u£d - 1] = '\0'; 200 } } 213  $bufãr_­³nd_¡ršg_Ën ( bufãr * b , cÚ¡ * s , size_t s_Ën ) { 214 ià(! s || ! b )  -1; 215 ià( s_Ën == 0)  0; 217 `bufãr_´•¬e_­³nd ( b , s_Ën + 1); 218 ià( b -> u£d == 0) 219 b -> u£d ++; 221 `memýy ( b -> ±r + b-> u£d - 1, s , s_Ën ); 222 b -> u£d +ð s_Ën ; 223 b -> ±r [b-> u£d - 1] = '\0'; 226 } } 228  $bufãr_­³nd_¡ršg_bufãr ( bufãr * b , cÚ¡ bufã¸* ¤c ) { 229 ià(! ¤c )  -1; 230 ià( ¤c -> u£d == 0)  0; 232  `bufãr_­³nd_¡ršg_Ën ( b , ¤c -> ±r , src-> u£d - 1); 233 } } 235  $bufãr_­³nd_memÜy ( bufãr * b , cÚ¡ * s , size_t s_Ën ) { 236 ià(! s || ! b )  -1; 237 ià( s_Ën == 0)  0; 239 `bufãr_´•¬e_­³nd ( b , s_Ën ); 240 `memýy ( b -> ±r + b-> u£d , s , s_Ën ); 241 b -> u£d +ð s_Ën ; 244 } } 246  $bufãr_cÝy_memÜy ( bufãr * b , cÚ¡ * s , size_t s_Ën ) { 247 ià(! s || ! b )  -1; 249 b -> u£d = 0; 251  `bufãr_­³nd_memÜy ( b , s , s_Ën ); 252 } } 254  $bufãr_­³nd_lÚg_hex ( bufãr * b ,  v®ue ) { 255 * buf ; 256  shiá = 0; 257  cÝy = v®ue ; 259  cÝy ) { 260 cÝy >>= 4; 261 shiá ++; 263 ià( shiá == 0) 264 shiá ++; 265 ià( shiá & 0x01) 266 shiá ++; 268 `bufãr_´•¬e_­³nd ( b , shiá + 1); 269 ià( b -> u£d == 0) 270 b -> u£d ++; 271 buf = b -> ±r + (b-> u£d - 1); 272 b -> u£d +ð shiá ; 274 shiá <<= 2; 275  shiá > 0) { 276 shiá -= 4; 277 *( buf ++èð hex_ch¬s [( v®ue >> shiá ) & 0x0F]; 279 * buf = '\0'; 282 } } 284  $LI_Éo¡r (* buf ,  v® ) { 285  sw­ ; 286 * ’d ; 287  Ën = 1; 289 ià( v® < 0) { 290 Ën ++; 291 *( buf ++) = '-'; 292 v® = -val; 295 ’d = buf ; 296  v® > 9) { 297 *( ’d ++èð'0' + ( v® % 10); 298 v® = val / 10; 300 *( ’d èð'0' + v® ; 301 *( ’d + 1) = '\0'; 302 Ën +ð ’d - buf ; 304  buf < ’d ) { 305 sw­ = * ’d ; 306 * ’d = * buf ; 307 * buf = sw­ ; 309 buf ++; 310 ’d --; 313  Ën ; 314 } } 316  $bufãr_­³nd_lÚg ( bufãr * b ,  v® ) { 317 ià(! b )  -1; 319 `bufãr_´•¬e_­³nd ( b , 32); 320 ià( b -> u£d == 0) 321 b -> u£d ++; 323 b -> u£d +ð `LI_Éo¡r (b-> ±r + (b->u£d - 1), v® ); 325 } } 327  $bufãr_cÝy_lÚg ( bufãr * b ,  v® ) { 328 ià(! b )  -1; 330 b -> u£d = 0; 331  `bufãr_­³nd_lÚg ( b , v® ); 332 } } 334 #ià! defšed ( SIZEOF_LONG è|| (SIZEOF_LONG !ð SIZEOF_OFF_T ) 335  $bufãr_­³nd_off_t ( bufãr * b , off_t v® ) { 336  sw­ ; 337 * ’d ; 338 * ¡¬t ; 339  Ën = 1; 341 ià(! b )  -1; 343 `bufãr_´•¬e_­³nd ( b , 32); 344 ià( b -> u£d == 0) 345 b -> u£d ++; 347 ¡¬t = b -> ±r + (b-> u£d - 1); 348 ià( v® < 0) { 349 Ën ++; 350 *( ¡¬t ++) = '-'; 351 v® = -val; 354 ’d = ¡¬t ; 355  v® > 9) { 356 *( ’d ++èð'0' + ( v® % 10); 357 v® = val / 10; 359 *( ’d èð'0' + v® ; 360 *( ’d + 1) = '\0'; 361 Ën +ð ’d - ¡¬t ; 363  ¡¬t < ’d ) { 364 sw­ = * ’d ; 365 * ’d = * ¡¬t ; 366 * ¡¬t = sw­ ; 368 ¡¬t ++; 369 ’d --; 372 b -> u£d +ð Ën ; 374 } } 376  $bufãr_cÝy_off_t ( bufãr * b , off_t v® ) { 377 ià(! b )  -1; 379 b -> u£d = 0; 380  `bufãr_­³nd_off_t ( b , v® ); 381 } } 384  $št2hex ( c ) { 385  hex_ch¬s [( c & 0x0F)]; 386 } } 391  $hex2št ( hex ) { 392 hex = hex - '0'; 393 ià( hex > 9) { 394 hex = (hex + '0' - 1) | 0x20; 395 hex = hex - 'a' + 11; 397 ià( hex > 15) 398 hex = 0xFF; 400  hex ; 401 } } 409 bufãr_¬¿y * $bufãr_¬¿y_š™ () { 410 bufãr_¬¿y * b ; 412 b = `m®loc ((*b)); 414 `as£¹ ( b ); 415 b -> ±r = NULL ; 416 b -> size = 0; 417 b -> u£d = 0; 419  b ; 420 } } 422  $bufãr_¬¿y_»£t ( bufãr_¬¿y * b ) { 423 size_t i ; 425 ià(! b ) ; 428  i = 0; i < b -> u£d ; i++) { 429 `bufãr_»£t ( b -> ±r [ i ]); 432 b -> u£d = 0; 433 } } 441  $bufãr_¬¿y_ä“ ( bufãr_¬¿y * b ) { 442 size_t i ; 443 ià(! b ) ; 445  i = 0; i < b -> size ; i++) { 446 ià( b -> ±r [ i ]è `bufãr_ä“ (b->ptr[i]); 448 `ä“ ( b -> ±r ); 449 `ä“ ( b ); 450 } } 452 bufãr * $bufãr_¬¿y_­³nd_g‘_bufãr ( bufãr_¬¿y * b ) { 453 size_t i ; 455 ià( b -> size == 0) { 456 b -> size = 16; 457 b -> ±r = `m®loc ((*b->±rè* b-> size ); 458 `as£¹ ( b -> ±r ); 459  i = 0; i < b -> size ; i++) { 460 b -> ±r [ i ] = NULL ; 462 } ià( b -> size =ðb-> u£d ) { 463 b -> size += 16; 464 b -> ±r = `»®loc (b->±r, (*b->±rè* b-> size ); 465 `as£¹ ( b -> ±r ); 466  i = b -> u£d ; i < b-> size ; i++) { 467 b -> ±r [ i ] = NULL ; 471 ià( b -> ±r [b-> u£d ] =ð NULL ) { 472 b -> ±r [b-> u£d ] = `bufãr_š™ (); 475 b -> ±r [b-> u£d ]->used = 0; 477  b -> ±r [b-> u£d ++]; 478 } } 481 * $bufãr_£¬ch_¡ršg_Ën ( bufãr * b , cÚ¡ * ÃedË , size_t Ën ) { 482 size_t i ; 483 ià( Ën =ð0è NULL ; 484 ià( ÃedË =ð NULL )  NULL; 486 ià( b -> u£d < Ën è NULL ; 488  i = 0; i < b -> u£d - Ën ; i++) { 489 ià(0 =ð `memcmp ( b -> ±r + i , ÃedË , Ën )) { 490  b -> ±r + i ; 494  NULL ; 495 } } 497 bufãr * $bufãr_š™_¡ršg (cÚ¡ * ¡r ) { 498 bufãr * b = `bufãr_š™ (); 500 `bufãr_cÝy_¡ršg ( b , ¡r ); 502  b ; 503 } } 505  $bufãr_is_em±y ( bufãr * b ) { 506 ià(! b )  1; 507  ( b -> u£d == 0); 508 } } 517  $bufãr_is_equ® ( bufãr * a , bufã¸* b ) { 518 ià( a -> u£d !ð b ->used)  0; 519 ià( a -> u£d == 0)  1; 521  (0 =ð `¡rcmp ( a -> ±r , b ->ptr)); 522 } } 524  $bufãr_is_equ®_¡ršg ( bufãr * a , cÚ¡ * s , size_t b_Ën ) { 525 bufãr b ; 527 b . ±r = (*) s ; 528 b . u£d = b_Ën + 1; 530  `bufãr_is_equ® ( a , & b ); 531 } } 538  $bufãr_ÿ£Ëss_com·» (cÚ¡ * a , size_t a_Ën , cÚ¡ * b , size_ˆ b_Ën ) { 539 size_t ndx = 0, max_ndx ; 540 size_t * ® , * bl ; 541 size_t mask = (* ® ) - 1; 543 ® = ( size_t *) a ; 544 bl = ( size_t *) b ; 547 iàÐ(( size_t ) ® & mask ) == 0 && 548 (( size_t ) bl & mask ) == 0 ) { 550 max_ndx = (( a_Ën < b_Ën è?‡_ËÀ: b_Ënè& ~ mask ; 552 ; ndx < max_ndx ;‚dx +ð(* ® )) { 553 ià(* ® !ð* bl ) ; 554 ® ++; bl ++; 560 a = (*) ® ; 561 b = (*) bl ; 563 max_ndx = (( a_Ën < b_Ën ) ?‡_len : b_len); 565 ; ndx < max_ndx ;‚dx++) { 566  a1 = * a ++, b1 = * b ++; 568 ià( a1 !ð b1 ) { 569 ià(( a1 >ð'A' &&‡1 <ð'Z'è&& ( b1 >= 'a' && b1 <= 'z')) 570 a1 |= 32; 571 ià(( a1 >ð'a' &&‡1 <ð'z'è&& ( b1 >= 'A' && b1 <= 'Z')) 572 b1 |= 32; 573 ià(( a1 - b1 ) != 0)  (a1 - b1); 581 ià( a_Ën =ð b_Ën )  0; 584  ( a_Ën - b_Ën ); 585 } } 594  $bufãr_is_equ®_right_Ën ( bufãr * b1 , bufã¸* b2 , size_t Ën ) { 596 ià( Ën == 0)  1; 599 ià( b1 -> u£d =ð0 || b2 ->used == 0)  0; 602 ià( b1 -> u£d - 1 < Ën || b1->used - 1 <†en)  0; 604 ià(0 =ð `¡ºcmp ( b1 -> ±r + b1-> u£d - 1 - Ën , 605 b2 -> ±r + b2-> u£d - 1 - Ën ,†en)) { 610 } } 612  $bufãr_cÝy_¡ršg_hex ( bufãr * b , cÚ¡ * š , size_t š_Ën ) { 613 size_t i ; 616 ià( š_Ën * 2 < in_len)  -1; 618 `bufãr_´•¬e_cÝy ( b , š_Ën * 2 + 1); 620  i = 0; i < š_Ën ; i++) { 621 b -> ±r [b-> u£d ++] = hex_ch¬s [( š [ i ] >> 4) & 0x0F]; 622 b -> ±r [b-> u£d ++] = hex_ch¬s [ š [ i ] & 0x0F]; 624 b -> ±r [b-> u£d ++] = '\0'; 627 } } 629 cÚ¡  g’coded_ch¬s_»l_uri_·¹ [] = { 651 cÚ¡  g’coded_ch¬s_»l_uri [] = { 673 cÚ¡  g’coded_ch¬s_html [] = { 695 cÚ¡  g’coded_ch¬s_mšim®_xml [] = { 717 cÚ¡  g’coded_ch¬s_hex [] = { 739 cÚ¡  g’coded_ch¬s_h‰p_h—d” [] = { 763  $bufãr_­³nd_¡ršg_’coded ( bufãr * b , cÚ¡ * s , size_t s_Ën , bufãr_’codšg_t ’codšg ) { 764 * ds , * d ; 765 size_t d_Ën , ndx ; 766 cÚ¡ * m­ = NULL ; 768 ià(! s || ! b )  -1; 770 ià( b -> ±r [b-> u£d - 1] != '\0') { 771 `SEGFAULT (); 774 ià( s_Ën == 0)  0; 776  ’codšg ) { 777  ENCODING_REL_URI : 778 m­ = ’coded_ch¬s_»l_uri ; 780  ENCODING_REL_URI_PART : 781 m­ = ’coded_ch¬s_»l_uri_·¹ ; 783  ENCODING_HTML : 784 m­ = ’coded_ch¬s_html ; 786  ENCODING_MINIMAL_XML : 787 m­ = ’coded_ch¬s_mšim®_xml ; 789  ENCODING_HEX : 790 m­ = ’coded_ch¬s_hex ; 792  ENCODING_HTTP_HEADER : 793 m­ = ’coded_ch¬s_h‰p_h—d” ; 795  ENCODING_UNSET : 799 `as£¹ ( m­ !ð NULL ); 802  ds = (*) s , d_Ën = 0, ndx = 0;‚dx < s_Ën ; ds++,‚dx++) { 803 ià( m­ [* ds ]) { 804  ’codšg ) { 805  ENCODING_REL_URI : 806  ENCODING_REL_URI_PART : 807 d_Ën += 3; 809  ENCODING_HTML : 810  ENCODING_MINIMAL_XML : 811 d_Ën += 6; 813  ENCODING_HTTP_HEADER : 814  ENCODING_HEX : 815 d_Ën += 2; 817  ENCODING_UNSET : 821 d_Ën ++; 825 `bufãr_´•¬e_­³nd ( b , d_Ën ); 827  ds = (*) s , d = (*) b -> ±r + b-> u£d - 1, d_Ën = 0, ndx = 0;‚dx < s_Ën ; ds++,‚dx++) { 828 ià( m­ [* ds ]) { 829  ’codšg ) { 830  ENCODING_REL_URI : 831  ENCODING_REL_URI_PART : 832 d [ d_Ën ++] = '%'; 833 d [ d_Ën ++] = hex_ch¬s [((* ds ) >> 4) & 0x0F]; 834 d [ d_Ën ++] = hex_ch¬s [(* ds ) & 0x0F]; 836  ENCODING_HTML : 837  ENCODING_MINIMAL_XML : 838 d [ d_Ën ++] = '&'; 839 d [ d_Ën ++] = '#'; 840 d [ d_Ën ++] = 'x'; 841 d [ d_Ën ++] = hex_ch¬s [((* ds ) >> 4) & 0x0F]; 842 d [ d_Ën ++] = hex_ch¬s [(* ds ) & 0x0F]; 843 d [ d_Ën ++] = ';'; 845  ENCODING_HEX : 846 d [ d_Ën ++] = hex_ch¬s [((* ds ) >> 4) & 0x0F]; 847 d [ d_Ën ++] = hex_ch¬s [(* ds ) & 0x0F]; 849  ENCODING_HTTP_HEADER : 850 d [ d_Ën ++] = * ds ; 851 d [ d_Ën ++] = '\t'; 853  ENCODING_UNSET : 857 d [ d_Ën ++] = * ds ; 862 b -> ±r [b-> u£d + d_Ën - 1] = '\0'; 864 b -> u£d +ð d_Ën ; 867 } } 874  $bufãr_u¾decode_š‹º® ( bufãr * u¾ ,  is_qu”y ) { 875  high , low ; 876 cÚ¡ * ¤c ; 877 * d¡ ; 879 ià(! u¾ || !u¾-> ±r )  -1; 881 ¤c = (cÚ¡ *è u¾ -> ±r ; 882 d¡ = (*è u¾ -> ±r ; 884 (* ¤c ) != '\0') { 885 ià( is_qu”y && * ¤c == '+') { 886 * d¡ = ' '; 887 } ià(* ¤c == '%') { 888 * d¡ = '%'; 890 high = `hex2št (*( ¤c + 1)); 891 ià( high != 0xFF) { 892 low = `hex2št (*( ¤c + 2)); 893 ià( low != 0xFF) { 894 high = (high << 4è| low ; 897 ià( high < 32 || high == 127) high = '_'; 899 * d¡ = high ; 900 ¤c += 2; 904 * d¡ = * ¤c ; 907 d¡ ++; 908 ¤c ++; 911 * d¡ = '\0'; 912 u¾ -> u£d = ( d¡ - u¾-> ±r ) + 1; 915 } } 917  $bufãr_u¾decode_·th ( bufãr * u¾ ) { 918  `bufãr_u¾decode_š‹º® ( u¾ , 0); 919 } } 921  $bufãr_u¾decode_qu”y ( bufãr * u¾ ) { 922  `bufãr_u¾decode_š‹º® ( u¾ , 1); 923 } } 936  $bufãr_·th_sim¶ify ( bufãr * de¡ , bufã¸* ¤c ) 938  tokËn ; 939  c , ´e1 ; 940 * ¡¬t , * ¦ash , * w®k , * out ; 941  ´e ; 943 ià( ¤c =ð NULL || src-> ±r =ðNULL || de¡ == NULL) 946 ià( ¤c =ð de¡ ) 947 `bufãr_´•¬e_­³nd ( de¡ , 1); 949 `bufãr_´•¬e_cÝy ( de¡ , ¤c -> u£d + 1); 951 w®k = ¤c -> ±r ; 952 ¡¬t = de¡ -> ±r ; 953 out = de¡ -> ±r ; 954 ¦ash = de¡ -> ±r ; 957 #ià `defšed ( __WIN32 è|| defšed( __CYGWIN__ ) 961  w®k = ¤c -> ±r ; *walk; walk++) { 962 ià(* w®k == '\\') *walk = '/'; 964 w®k = ¤c -> ±r ; 967 * w®k == ' ') { 968 w®k ++; 971 ´e1 = *( w®k ++); 972 c = *( w®k ++); 973 ´e = ´e1 ; 974 ià( ´e1 != '/') { 975 ´e = ('/' << 8è| ´e1 ; 976 *( out ++) = '/'; 978 *( out ++èð ´e1 ; 980 ià( ´e1 == '\0') { 981 de¡ -> u£d = ( out - ¡¬t ) + 1; 986 ià( c == '/' || c == '\0') { 987 tokËn = out - ¦ash ; 988 ià( tokËn =ð3 && ´e == (('.' << 8) | '.')) { 989 out = ¦ash ; 990 ià( out > ¡¬t ) { 991 out --; 992  out > ¡¬t && *out != '/') { 993 out --; 997 ià( c == '\0') 998 out ++; 999 } ià( tokËn =ð1 || ´e == (('/' << 8) | '.')) { 1000 out = ¦ash ; 1001 ià( c == '\0') 1002 out ++; 1005 ¦ash = out ; 1008 ià( c == '\0') 1011 ´e1 = c ; 1012 ´e = (´<< 8è| ´e1 ; 1013 c = * w®k ; 1014 * out = ´e1 ; 1016 out ++; 1017 w®k ++; 1020 * out = '\0'; 1021 de¡ -> u£d = ( out - ¡¬t ) + 1; 1024 } } 1026  $light_isdig™ ( c ) { 1027  ( c >= '0' && c <= '9'); 1028 } } 1030  $light_isxdig™ ( c ) { 1031 ià( `light_isdig™ ( c ))  1; 1033 c |= 32; 1034  ( c >= 'a' && c <= 'f'); 1035 } } 1037  $light_i§Íha ( c ) { 1038 c |= 32; 1039  ( c >= 'a' && c <= 'z'); 1040 } } 1042  $light_i§Êum ( c ) { 1043  `light_isdig™ ( c è|| `light_i§Íha (c); 1044 } } 1046  $bufãr_to_low” ( bufãr * b ) { 1047 * c ; 1049 ià( b -> u£d == 0)  0; 1051  c = b -> ±r ; *c; c++) { 1052 ià(* c >= 'A' && *c <= 'Z') { 1053 * c |= 32; 1058 } } 1061  $bufãr_to_uµ” ( bufãr * b ) { 1062 * c ; 1064 ià( b -> u£d == 0)  0; 1066  c = b -> ±r ; *c; c++) { 1067 ià(* c >= 'a' && *c <= 'z') { 1068 * c &= ~32; 1073 } } @src/buffer.h 1 #iâdeà _BUFFER_H_ 2  #_BUFFER_H_ ) 4  ~<¡dlib.h > 5  ~ 7 #ifdeà HAVE_CONFIG_H 8  ~"cÚfig.h " 11  ~"£‰šgs.h " 14 * m±r ; 16 size_t mu£d ; 17 size_t msize ; 18 } tbufãr ; 21 bufãr ** m±r ; 23 size_t mu£d ; 24 size_t msize ; 25 } tbufãr_¬¿y ; 28 * m±r ; 30 size_t moff£t ; 32 size_t mu£d ; 33 size_t msize ; 34 } t»ad_bufãr ; 36 bufãr_¬¿y * bufãr_¬¿y_š™ (); 37  bufãr_¬¿y_ä“ ( bufãr_¬¿y * b ); 38  bufãr_¬¿y_»£t ( bufãr_¬¿y * b ); 39 bufãr * bufãr_¬¿y_­³nd_g‘_bufãr ( bufãr_¬¿y * b ); 41 bufãr * bufãr_š™ (); 42 bufãr * bufãr_š™_bufãr (bufã¸* b ); 43 bufãr * bufãr_š™_¡ršg (cÚ¡ * ¡r ); 44  bufãr_ä“ ( bufãr * b ); 45  bufãr_»£t ( bufãr * b ); 47  bufãr_´•¬e_cÝy ( bufãr * b , size_t size ); 48  bufãr_´•¬e_­³nd ( bufãr * b , size_t size ); 50  bufãr_cÝy_¡ršg ( bufãr * b , cÚ¡ * s ); 51  bufãr_cÝy_¡ršg_Ën ( bufãr * b , cÚ¡ * s , size_t s_Ën ); 52  bufãr_cÝy_¡ršg_bufãr ( bufãr * b , cÚ¡ bufã¸* ¤c ); 53  bufãr_cÝy_¡ršg_hex ( bufãr * b , cÚ¡ * š , size_t š_Ën ); 55  bufãr_cÝy_lÚg ( bufãr * b ,  v® ); 57  bufãr_cÝy_memÜy ( bufãr * b , cÚ¡ * s , size_t s_Ën ); 59  bufãr_­³nd_¡ršg ( bufãr * b , cÚ¡ * s ); 60  bufãr_­³nd_¡ršg_Ën ( bufãr * b , cÚ¡ * s , size_t s_Ën ); 61  bufãr_­³nd_¡ršg_bufãr ( bufãr * b , cÚ¡ bufã¸* ¤c ); 62  bufãr_­³nd_¡ršg_lfžl ( bufãr * b , cÚ¡ * s , size_t maxËn ); 63  bufãr_­³nd_¡ršg_rfžl ( bufãr * b , cÚ¡ * s , size_t maxËn ); 65  bufãr_­³nd_lÚg_hex ( bufãr * b ,  Ën ); 66  bufãr_­³nd_lÚg ( bufãr * b ,  v® ); 68 #ià defšed ( SIZEOF_LONG è&& (SIZEOF_LONG =ð SIZEOF_OFF_T ) 69  #bufãr_cÝy_off_t ( x , y è `bufãr_cÝy_lÚg (x, y) ) 70  #bufãr_­³nd_off_t ( x , y è `bufãr_­³nd_lÚg (x, y) ) 72  bufãr_cÝy_off_t ( bufãr * b , off_t v® ); 73  bufãr_­³nd_off_t ( bufãr * b , off_t v® ); 76  bufãr_­³nd_memÜy ( bufãr * b , cÚ¡ * s , size_t s_Ën ); 78 * bufãr_£¬ch_¡ršg_Ën ( bufãr * b , cÚ¡ * ÃedË , size_t Ën ); 80  bufãr_is_em±y ( bufãr * b ); 81  bufãr_is_equ® ( bufãr * a , bufã¸* b ); 82  bufãr_is_equ®_right_Ën ( bufãr * a , bufã¸* b , size_t Ën ); 83  bufãr_is_equ®_¡ršg ( bufãr * a , cÚ¡ * s , size_t b_Ën ); 84  bufãr_ÿ£Ëss_com·» (cÚ¡ * a , size_t a_Ën , cÚ¡ * b , size_ˆ b_Ën ); 87 mENCODING_UNSET , 88 mENCODING_REL_URI , 89 mENCODING_REL_URI_PART , 90 mENCODING_HTML , 91 mENCODING_MINIMAL_XML , 92 mENCODING_HEX , 93 mENCODING_HTTP_HEADER 94 } tbufãr_’codšg_t ; 96  bufãr_­³nd_¡ršg_’coded ( bufãr * b , cÚ¡ * s , size_t s_Ën , bufãr_’codšg_t ’codšg ); 98  bufãr_u¾decode_·th ( bufãr * u¾ ); 99  bufãr_u¾decode_qu”y ( bufãr * u¾ ); 100  bufãr_·th_sim¶ify ( bufãr * de¡ , bufã¸* ¤c ); 102  bufãr_to_low” ( bufãr * b ); 103  bufãr_to_uµ” ( bufãr * b ); 106  LI_Éo¡r (* buf ,  v® ); 107  hex2št ( c ); 108  št2hex ( i ); 110  light_isdig™ ( c ); 111  light_isxdig™ ( c ); 112  light_i§Íha ( c ); 113  light_i§Êum ( c ); 115  #BUFFER_APPEND_STRING_CONST ( x , y ) \ 116 `bufãr_­³nd_¡ršg_Ën ( x , y , (yè- 1) ) 118  #BUFFER_COPY_STRING_CONST ( x , y ) \ 119 `bufãr_cÝy_¡ršg_Ën ( x , y , (yè- 1) ) 121  #BUFFER_APPEND_SLASH ( x ) \ 122 ià( x -> u£d > 1 && x-> ±r [x->u£d - 2] !ð'/'è{ `BUFFER_APPEND_STRING_CONST (x, "/"); } ) 124  #CONST_STR_LEN ( x èx, x ? (xè- 1 : 0 ) 125  #CONST_BUF_LEN ( x èx-> ±r , x-> u£d ? x->u£d - 1 : 0 ) 128  #SEGFAULT (èdØ{ `årštf ( ¡d”r , "%s.%d:‡bÜ‹d\n", __FILE__ , __LINE__ ); `abÜt (); } 0) ) 129  #UNUSED ( x èÐ()(xè) ) @src/chunk.c 7  ~ 8  ~ 9  ~ 11  ~<¡dlib.h > 12  ~ 13  ~ 15  ~<¡dio.h > 16  ~<”ºo.h > 17  ~<¡ršg.h > 19  ~"chunk.h " 21 chunkqueue * $chunkqueue_š™ () { 22 chunkqueue * cq ; 24 cq = `ÿÎoc (1, (*cq)); 26 cq -> fœ¡ = NULL ; 27 cq -> Ï¡ = NULL ; 29 cq -> unu£d = NULL ; 31  cq ; 32 } } 34  chunk * $chunk_š™ () { 35 chunk * c ; 37 c = `ÿÎoc (1, (*c)); 39 c -> mem = `bufãr_š™ (); 40 c -> fže . Çme = `bufãr_š™ (); 41 c -> fže . fd = -1; 42 c -> fže . mm­ . ¡¬t = MAP_FAILED ; 43 c -> Ãxt = NULL ; 45  c ; 46 } } 48  $chunk_ä“ ( chunk * c ) { 49 ià(! c ) ; 51 `bufãr_ä“ ( c -> mem ); 52 `bufãr_ä“ ( c -> fže . Çme ); 54 `ä“ ( c ); 55 } } 57  $chunk_»£t ( chunk * c ) { 58 ià(! c ) ; 60 `bufãr_»£t ( c -> mem ); 62 ià( c -> fže . is_‹mp && ! `bufãr_is_em±y (c->fže. Çme )) { 63 `uÆšk ( c -> fže . Çme -> ±r ); 66 `bufãr_»£t ( c -> fže . Çme ); 68 ià( c -> fže . fd != -1) { 69 `þo£ ( c -> fže . fd ); 70 c -> fže . fd = -1; 72 ià( MAP_FAILED !ð c -> fže . mm­ . ¡¬t ) { 73 `munm­ ( c -> fže . mm­ . ¡¬t , c->fže.mm­. Ëngth ); 74 c -> fže . mm­ . ¡¬t = MAP_FAILED ; 76 } } 79  $chunkqueue_ä“ ( chunkqueue * cq ) { 80 chunk * c , * pc ; 82 ià(! cq ) ; 84  c = cq -> fœ¡ ; c; ) { 85 pc = c ; 86 c = c-> Ãxt ; 87 `chunk_ä“ ( pc ); 90  c = cq -> unu£d ; c; ) { 91 pc = c ; 92 c = c-> Ãxt ; 93 `chunk_ä“ ( pc ); 96 `ä“ ( cq ); 97 } } 99  chunk * $chunkqueue_g‘_unu£d_chunk ( chunkqueue * cq ) { 100 chunk * c ; 103 ià(! cq -> unu£d ) { 104 c = `chunk_š™ (); 107 c = cq -> unu£d ; 108 cq -> unu£d = c -> Ãxt ; 109 c -> Ãxt = NULL ; 110 cq -> unu£d_chunks --; 113  c ; 114 } } 116  $chunkqueue_´•’d_chunk ( chunkqueue * cq , chunk * c ) { 117 c -> Ãxt = cq -> fœ¡ ; 118 cq -> fœ¡ = c ; 120 ià( cq -> Ï¡ =ð NULL ) { 121 cq -> Ï¡ = c ; 125 } } 127  $chunkqueue_­³nd_chunk ( chunkqueue * cq , chunk * c ) { 128 ià( cq -> Ï¡ ) { 129 cq -> Ï¡ -> Ãxt = c ; 131 cq -> Ï¡ = c ; 133 ià( cq -> fœ¡ =ð NULL ) { 134 cq -> fœ¡ = c ; 138 } } 140  $chunkqueue_»£t ( chunkqueue * cq ) { 141 chunk * c ; 145  c = cq -> fœ¡ ; c; c = c-> Ãxt ) { 146  c -> ty³ ) { 147  MEM_CHUNK : 148 c -> off£t = c-> mem -> u£d - 1; 150  FILE_CHUNK : 151 c -> off£t = c-> fže . Ëngth ; 158 `chunkqueue_»move_fšished_chunks ( cq ); 159 cq -> by‹s_š = 0; 160 cq -> by‹s_out = 0; 161 } } 163  $chunkqueue_­³nd_fže ( chunkqueue * cq , bufãr * â , off_t off£t , off_ˆ Ën ) { 164 chunk * c ; 166 ià( Ën == 0)  0; 168 c = `chunkqueue_g‘_unu£d_chunk ( cq ); 170 c -> ty³ = FILE_CHUNK ; 172 `bufãr_cÝy_¡ršg_bufãr ( c -> fže . Çme , â ); 173 c -> fže . ¡¬t = off£t ; 174 c -> fže . Ëngth = Ën ; 175 c -> off£t = 0; 177 `chunkqueue_­³nd_chunk ( cq , c ); 180 } } 182  $chunkqueue_­³nd_bufãr ( chunkqueue * cq , bufãr * mem ) { 183 chunk * c ; 185 ià( mem -> u£d == 0)  0; 187 c = `chunkqueue_g‘_unu£d_chunk ( cq ); 188 c -> ty³ = MEM_CHUNK ; 189 c -> off£t = 0; 190 `bufãr_cÝy_¡ršg_bufãr ( c -> mem , mem); 192 `chunkqueue_­³nd_chunk ( cq , c ); 195 } } 197  $chunkqueue_­³nd_bufãr_w—k ( chunkqueue * cq , bufãr * mem ) { 198 chunk * c ; 200 ià( mem -> u£d == 0)  0; 202 c = `chunkqueue_g‘_unu£d_chunk ( cq ); 203 c -> ty³ = MEM_CHUNK ; 204 c -> off£t = 0; 205 ià( c -> mem è `bufãr_ä“ (c->mem); 206 c -> mem = mem; 208 `chunkqueue_­³nd_chunk ( cq , c ); 211 } } 213  $chunkqueue_´•’d_bufãr ( chunkqueue * cq , bufãr * mem ) { 214 chunk * c ; 216 ià( mem -> u£d == 0)  0; 218 c = `chunkqueue_g‘_unu£d_chunk ( cq ); 219 c -> ty³ = MEM_CHUNK ; 220 c -> off£t = 0; 221 `bufãr_cÝy_¡ršg_bufãr ( c -> mem , mem); 223 `chunkqueue_´•’d_chunk ( cq , c ); 226 } } 229  $chunkqueue_­³nd_mem ( chunkqueue * cq , cÚ¡ * mem , size_t Ën ) { 230 chunk * c ; 232 ià( Ën == 0)  0; 234 c = `chunkqueue_g‘_unu£d_chunk ( cq ); 235 c -> ty³ = MEM_CHUNK ; 236 c -> off£t = 0; 237 `bufãr_cÝy_¡ršg_Ën ( c -> mem , mem, Ën - 1); 239 `chunkqueue_­³nd_chunk ( cq , c ); 242 } } 244 bufãr * $chunkqueue_g‘_´•’d_bufãr ( chunkqueue * cq ) { 245 chunk * c ; 247 c = `chunkqueue_g‘_unu£d_chunk ( cq ); 249 c -> ty³ = MEM_CHUNK ; 250 c -> off£t = 0; 251 `bufãr_»£t ( c -> mem ); 253 `chunkqueue_´•’d_chunk ( cq , c ); 255  c -> mem ; 256 } } 258 bufãr * $chunkqueue_g‘_­³nd_bufãr ( chunkqueue * cq ) { 259 chunk * c ; 261 c = `chunkqueue_g‘_unu£d_chunk ( cq ); 263 c -> ty³ = MEM_CHUNK ; 264 c -> off£t = 0; 265 `bufãr_»£t ( c -> mem ); 267 `chunkqueue_­³nd_chunk ( cq , c ); 269  c -> mem ; 270 } } 272  $chunkqueue_£t_‹mpdœs ( chunkqueue * cq , ¬¿y * ‹mpdœs ) { 273 ià(! cq )  -1; 275 cq -> ‹mpdœs =empdirs; 278 } } 280 chunk * $chunkqueue_g‘_­³nd_‹mpfže ( chunkqueue * cq ) { 281 chunk * c ; 282 bufãr * ‹m¶©e = `bufãr_š™_¡ršg ("/var/tmp/lighttpd-upload-XXXXXX"); 284 c = `chunkqueue_g‘_unu£d_chunk ( cq ); 286 c -> ty³ = FILE_CHUNK ; 287 c -> off£t = 0; 289 ià( cq -> ‹mpdœs && cq->‹mpdœs-> u£d ) { 290 size_t i ; 294  i = 0; i < cq -> ‹mpdœs -> u£d ; i++) { 295 d©a_¡ršg * ds = (d©a_¡ršg *) cq -> ‹mpdœs -> d©a [ i ]; 297 `bufãr_cÝy_¡ršg_bufãr ( ‹m¶©e , ds -> v®ue ); 298 `BUFFER_APPEND_SLASH ( ‹m¶©e ); 299 `BUFFER_APPEND_STRING_CONST ( ‹m¶©e , "lighttpd-upload-XXXXXX"); 301 ià(-1 !ð( c -> fže . fd = `mk¡emp ( ‹m¶©e -> ±r ))) { 303 c -> fže . is_‹mp = 1; 308 ià(-1 !ð( c -> fže . fd = `mk¡emp ( ‹m¶©e -> ±r ))) { 310 c -> fže . is_‹mp = 1; 314 `bufãr_cÝy_¡ršg_bufãr ( c -> fže . Çme , ‹m¶©e ); 315 c -> fže . Ëngth = 0; 317 `chunkqueue_­³nd_chunk ( cq , c ); 319 `bufãr_ä“ ( ‹m¶©e ); 321  c ; 322 } } 325 off_t $chunkqueue_Ëngth ( chunkqueue * cq ) { 326 off_t Ën = 0; 327 chunk * c ; 329  c = cq -> fœ¡ ; c; c = c-> Ãxt ) { 330  c -> ty³ ) { 331  MEM_CHUNK : 332 Ën +ð c -> mem -> u£d ? c->mem->used - 1 : 0; 334  FILE_CHUNK : 335 Ën +ð c -> fže . Ëngth ; 342  Ën ; 343 } } 345 off_t $chunkqueue_wr™‹n ( chunkqueue * cq ) { 346 off_t Ën = 0; 347 chunk * c ; 349  c = cq -> fœ¡ ; c; c = c-> Ãxt ) { 350  c -> ty³ ) { 351  MEM_CHUNK : 352  FILE_CHUNK : 353 Ën +ð c -> off£t ; 360  Ën ; 361 } } 363  $chunkqueue_is_em±y ( chunkqueue * cq ) { 364  cq -> fœ¡ ? 0 : 1; 365 } } 367  $chunkqueue_»move_fšished_chunks ( chunkqueue * cq ) { 368 chunk * c ; 370  c = cq -> fœ¡ ; c; c = cq->first) { 371  is_fšished = 0; 373  c -> ty³ ) { 374  MEM_CHUNK : 375 ià( c -> mem -> u£d =ð0 || (c-> off£t =ð( off_t )c->mem->u£d - 1)è is_fšished = 1; 377  FILE_CHUNK : 378 ià( c -> off£t =ðc-> fže . Ëngth è is_fšished = 1; 384 ià(! is_fšished ) ; 386 `chunk_»£t ( c ); 388 cq -> fœ¡ = c -> Ãxt ; 389 ià( c =ð cq -> Ï¡ ècq->Ï¡ = NULL ; 392 ià( cq -> unu£d_chunks > 4) { 393 `chunk_ä“ ( c ); 395 c -> Ãxt = cq -> unu£d ; 396 cq -> unu£d = c ; 397 cq -> unu£d_chunks ++; 402 } } @src/chunk.h 1 #iâdeà _CHUNK_H_ 2  #_CHUNK_H_ ) 4  ~"bufãr.h " 5  ~"¬¿y.h " 7  schunk { 8 ’um { mUNUSED_CHUNK , mMEM_CHUNK , mFILE_CHUNK } mty³ ; 10 bufãr * mmem ; 14 bufãr * mÇme ; 15 off_t m¡¬t ; 16 off_t mËngth ; 18  mfd ; 20 * m¡¬t ; 21 size_t mËngth ; 22 off_t moff£t ; 23 } mmm­ ; 25  mis_‹mp ; 26 } mfže ; 28 off_t moff£t ; 34  chunk * mÃxt ; 35 } tchunk ; 38 chunk * mfœ¡ ; 39 chunk * mÏ¡ ; 41 chunk * munu£d ; 42 size_t munu£d_chunks ; 44 ¬¿y * m‹mpdœs ; 46 off_t mby‹s_š , mby‹s_out ; 47 } tchunkqueue ; 49 chunkqueue * chunkqueue_š™ (); 50  chunkqueue_£t_‹mpdœs ( chunkqueue * c , ¬¿y * ‹mpdœs ); 51  chunkqueue_­³nd_fže ( chunkqueue * c , bufãr * â , off_t off£t , off_ˆ Ën ); 52  chunkqueue_­³nd_mem ( chunkqueue * c , cÚ¡ * mem , size_t Ën ); 54  chunkqueue_­³nd_bufãr ( chunkqueue * c , bufãr * mem ); 55  chunkqueue_­³nd_bufãr_w—k ( chunkqueue * c , bufãr * mem ); 56  chunkqueue_´•’d_bufãr ( chunkqueue * c , bufãr * mem ); 58 bufãr * chunkqueue_g‘_­³nd_bufãr ( chunkqueue * c ); 59 bufãr * chunkqueue_g‘_´•’d_bufãr ( chunkqueue * c ); 60 chunk * chunkqueue_g‘_­³nd_‹mpfže ( chunkqueue * cq ); 62  chunkqueue_»move_fšished_chunks ( chunkqueue * cq ); 64 off_t chunkqueue_Ëngth ( chunkqueue * c ); 65 off_t chunkqueue_wr™‹n ( chunkqueue * c ); 66  chunkqueue_ä“ ( chunkqueue * c ); 67  chunkqueue_»£t ( chunkqueue * c ); 69  chunkqueue_is_em±y ( chunkqueue * c ); @src/configfile-glue.c 1  ~<¡ršg.h > 3  ~"ba£.h " 4  ~"bufãr.h " 5  ~"¬¿y.h " 6  ~"log.h " 7  ~"¶ugš.h " 9  ~"cÚfigfže.h " 26  $cÚfig_š£¹_v®ues_š‹º® ( £rv” * ¤v , ¬¿y * ÿ , cÚ¡ cÚfig_v®ues_t cv []) { 27 size_t i ; 28 d©a_un£t * du ; 30  i = 0; cv [i]. key ; i++) { 32 ià( NULL =ð( du = `¬¿y_g‘_–em’t ( ÿ , cv [ i ]. key ))) { 38  cv [ i ]. ty³ ) { 39  T_CONFIG_ARRAY : 40 ià( du -> ty³ =ð TYPE_ARRAY ) { 41 size_t j ; 42 d©a_¬¿y * da = (d©a_¬¿y *) du ; 44  j = 0; j < da -> v®ue -> u£d ; j++) { 45 ià( da -> v®ue -> d©a [ j ]-> ty³ =ð TYPE_STRING ) { 46 d©a_¡ršg * ds = `d©a_¡ršg_š™ (); 48 `bufãr_cÝy_¡ršg_bufãr ( ds -> v®ue , (( d©a_¡ršg *)( da ->v®ue-> d©a [ j ]))->value); 49 ià(! da -> is_šdex_key ) { 53 `bufãr_cÝy_¡ršg_bufãr ( ds -> key , (( d©a_¡ršg *)( da -> v®ue -> d©a [ j ]))->key); 56 `¬¿y_š£¹_unique ( cv [ i ]. de¡š©iÚ , ( d©a_un£t *) ds ); 58 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sssd", 60 cv [ i ]. key , "ty³:", da -> v®ue -> d©a [ j ]-> ty³ ); 66 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", cv [ i ]. key , "should have been‡‡rray of strings†ike ... = ( \"...\" )"); 71  T_CONFIG_STRING : 72 ià( du -> ty³ =ð TYPE_STRING ) { 73 d©a_¡ršg * ds = (d©a_¡ršg *) du ; 75 `bufãr_cÝy_¡ršg_bufãr ( cv [ i ]. de¡š©iÚ , ds -> v®ue ); 77 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssss", cv [ i ]. key , "should have been‡ string†ike ... = \"...\""); 82  T_CONFIG_SHORT : 83  du -> ty³ ) { 84  TYPE_INTEGER : { 85 d©a_š‹g” * di = (d©a_š‹g” *) du ; 87 *((*)( cv [ i ]. de¡š©iÚ )èð di -> v®ue ; 90  TYPE_STRING : { 91 d©a_¡ršg * ds = (d©a_¡ršg *) du ; 93 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssb", "gÙ‡ sŒšg buˆex³ùed‡ shÜt:", cv [ i ]. key , ds -> v®ue ); 98 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssds", "uÃx³ùedy³ fÜ key:", cv [ i ]. key , du -> ty³ , "expected‡ integer,„ange 0 ... 65535"); 102  T_CONFIG_BOOLEAN : 103 ià( du -> ty³ =ð TYPE_STRING ) { 104 d©a_¡ršg * ds = (d©a_¡ršg *) du ; 106 ià( `bufãr_is_equ®_¡ršg ( ds -> v®ue , `CONST_STR_LEN ("enable"))) { 107 *((*)( cv [ i ]. de¡š©iÚ )) = 1; 108 } ià( `bufãr_is_equ®_¡ršg ( ds -> v®ue , `CONST_STR_LEN ("disable"))) { 109 *((*)( cv [ i ]. de¡š©iÚ )) = 0; 111 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbs", "ERROR: uÃx³ùed v®ufÜ key:", cv [ i ]. key , ds -> v®ue , "(enable|disable)"); 116 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssss", "ERROR: uÃx³ùedy³ fÜ key:", cv [ i ]. key , "(string)", "\"(enable|disable)\""); 121  T_CONFIG_LOCAL : 122  T_CONFIG_UNSET : 124  T_CONFIG_UNSUPPORTED : 125 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssss", "ERROR: found unsuµÜ‹d key:", cv [ i ]. key , "-", (*)(cv[i]. de¡š©iÚ )); 127 ¤v -> cÚfig_unsuµÜ‹d = 1; 130  T_CONFIG_DEPRECATED : 131 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssss", "ERROR: found d•»ÿ‹d key:", cv [ i ]. key , "-", (*)(cv[i]. de¡š©iÚ )); 133 ¤v -> cÚfig_d•»ÿ‹d = 1; 140 } } 142  $cÚfig_š£¹_v®ues_glob® ( £rv” * ¤v , ¬¿y * ÿ , cÚ¡ cÚfig_v®ues_t cv []) { 143 size_t i ; 144 d©a_un£t * du ; 146  i = 0; cv [i]. key ; i++) { 147 d©a_¡ršg * touched ; 149 ià( NULL =ð( du = `¬¿y_g‘_–em’t ( ÿ , cv [ i ]. key ))) { 156 touched = `d©a_¡ršg_š™ (); 158 `bufãr_cÝy_¡ršg ( touched -> v®ue , ""); 159 `bufãr_cÝy_¡ršg_bufãr ( touched -> key , du ->key); 161 `¬¿y_š£¹_unique ( ¤v -> cÚfig_touched , ( d©a_un£t *) touched ); 164  `cÚfig_š£¹_v®ues_š‹º® ( ¤v , ÿ , cv ); 165 } } 167  $sock_addr_g‘_pÜt ( sock_addr * addr ) { 168 #ifdeà HAVE_IPV6 169  `Áohs ( addr -> ¶aš . §_çmžy ?‡ddr-> v6 . sš6_pÜt :‡ddr-> v4 . sš_pÜt ); 171  `Áohs ( addr -> v4 . sš_pÜt ); 173 } } 175  cÚd_»suÉ_t cÚfig_check_cÚd_ÿched ( £rv” * ¤v , cÚÃùiÚ * cÚ , d©a_cÚfig * dc ); 177  cÚd_»suÉ_t $cÚfig_check_cÚd_noÿche ( £rv” * ¤v , cÚÃùiÚ * cÚ , d©a_cÚfig * dc ) { 178 bufãr * l ; 179 £rv”_sock‘ * ¤v_sock = cÚ -> ¤v_sock‘ ; 182 ià( dc -> ·»Á && dc->·»Á-> cÚ‹xt_ndx ) { 188 ià( cÚ -> cÚf . log_cÚd™iÚ_hªdlšg ) { 189 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "gØ·»Á", dc -> ·»Á -> key ); 192  `cÚfig_check_cÚd_ÿched ( ¤v , cÚ , dc -> ·»Á )) { 193  COND_RESULT_FALSE : 194  COND_RESULT_FALSE ; 195  COND_RESULT_UNSET : 196  COND_RESULT_UNSET ; 202 ià( dc -> ´ev ) { 209 ià( cÚ -> cÚf . log_cÚd™iÚ_hªdlšg ) { 210 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "gØ´ev", dc -> ´ev -> key ); 214 `cÚfig_check_cÚd_ÿched ( ¤v , cÚ , dc -> ´ev ); 217  cÚ -> cÚd_ÿche [ dc -> cÚ‹xt_ndx ]. »suÉ ) { 218  COND_RESULT_FALSE : 219  cÚ -> cÚd_ÿche [ dc -> cÚ‹xt_ndx ]. »suÉ ; 225 ià(! cÚ -> cÚd™iÚ®_is_v®id [ dc -> comp ]) { 226 ià( cÚ -> cÚf . log_cÚd™iÚ_hªdlšg ) { 227 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "dss", 228 dc -> comp , 229 dc -> key -> ±r , 230 cÚ -> cÚd™iÚ®_is_v®id [ dc -> comp ] ? "yeah" : "nej"); 233  COND_RESULT_UNSET ; 238  dc -> comp ) { 239  COMP_HTTP_HOST : { 240 * ck_cÞÚ = NULL , * v®_cÞÚ = NULL; 242 ià(! `bufãr_is_em±y ( cÚ -> uri . authÜ™y )) { 248 l = cÚ -> uri . authÜ™y ; 250  dc -> cÚd ) { 251  CONFIG_COND_NE : 252  CONFIG_COND_EQ : 253 ck_cÞÚ = `¡rchr ( dc -> ¡ršg -> ±r , ':'); 254 v®_cÞÚ = `¡rchr ( l -> ±r , ':'); 256 ià( ck_cÞÚ =ð v®_cÞÚ ) { 260 ià( ck_cÞÚ ) { 262 `bufãr_cÝy_¡ršg_bufãr ( ¤v -> cÚd_check_buf , l ); 263 `BUFFER_APPEND_STRING_CONST ( ¤v -> cÚd_check_buf , ":"); 264 `bufãr_­³nd_lÚg ( ¤v -> cÚd_check_buf , `sock_addr_g‘_pÜt (&( ¤v_sock -> addr ))); 265 l = ¤v -> cÚd_check_buf ; 266 } ià(! ck_cÞÚ ) { 268 `bufãr_cÝy_¡ršg_Ën ( ¤v -> cÚd_check_buf , l -> ±r , v®_cÞÚ -†->ptr); 269 l = ¤v -> cÚd_check_buf ; 276 l = ¤v -> em±y_¡ršg ; 280  COMP_HTTP_REMOTE_IP : { 281 * nm_¦ash ; 291 ià(( dc -> cÚd =ð CONFIG_COND_EQ || 292 dc -> cÚd =ð CONFIG_COND_NE ) && 293 ( cÚ -> d¡_addr . ¶aš . §_çmžy =ð AF_INET ) && 294 ( NULL !ð( nm_¦ash = `¡rchr ( dc -> ¡ršg -> ±r , '/')))) { 295  nm_b™s ; 296  nm ; 297 * ”r ; 298  š_addr v®_šp ; 300 ià(*( nm_¦ash +1) == '\0') { 301 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "ERROR:‚Ønumb”‡á” / ", dc -> ¡ršg ); 303  COND_RESULT_FALSE ; 306 nm_b™s = `¡¹Þ ( nm_¦ash + 1, & ”r , 10); 308 ià(* ”r ) { 309 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", "ERROR:‚Ú-dig™ found iÀÃtmask:", dc -> ¡ršg , ”r ); 311  COND_RESULT_FALSE ; 315 `bufãr_cÝy_¡ršg_Ën ( ¤v -> cÚd_check_buf , dc -> ¡ršg -> ±r , nm_¦ash - dc->string->ptr); 316 #ifdeà __WIN32 317 ià( INADDR_NONE =ð( v®_šp . s_addr = `š‘_addr ( ¤v -> cÚd_check_buf -> ±r ))) { 318 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "ERROR: i°add¸i šv®id:", srv-> cÚd_check_buf ); 320  COND_RESULT_FALSE ; 324 ià(0 =ð `š‘_©Ú ( ¤v -> cÚd_check_buf -> ±r , & v®_šp )) { 325 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "ERROR: i°add¸i šv®id:", srv-> cÚd_check_buf ); 327  COND_RESULT_FALSE ; 332 nm = `htÚl (~((1 << (32 - nm_b™s )) - 1)); 334 ià(( v®_šp . s_addr & nm è=ð( cÚ -> d¡_addr . v4 . sš_addr .s_addr &‚m)) { 335  ( dc -> cÚd =ð CONFIG_COND_EQ è? COND_RESULT_TRUE : COND_RESULT_FALSE ; 337  ( dc -> cÚd =ð CONFIG_COND_EQ è? COND_RESULT_FALSE : COND_RESULT_TRUE ; 340 l = cÚ -> d¡_addr_buf ; 344  COMP_HTTP_SCHEME : 345 l = cÚ -> uri . scheme ; 348  COMP_HTTP_URL : 349 l = cÚ -> uri . ·th ; 352  COMP_HTTP_QUERY_STRING : 353 l = cÚ -> uri . qu”y ; 356  COMP_SERVER_SOCKET : 357 l = ¤v_sock -> ¤v_tok’ ; 360  COMP_HTTP_REFERER : { 361 d©a_¡ršg * ds ; 363 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Referer"))) { 364 l = ds -> v®ue ; 366 l = ¤v -> em±y_¡ršg ; 370  COMP_HTTP_COOKIE : { 371 d©a_¡ršg * ds ; 372 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Cookie"))) { 373 l = ds -> v®ue ; 375 l = ¤v -> em±y_¡ršg ; 379  COMP_HTTP_USER_AGENT : { 380 d©a_¡ršg * ds ; 381 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "User-Agent"))) { 382 l = ds -> v®ue ; 384 l = ¤v -> em±y_¡ršg ; 388  COMP_HTTP_REQUEST_METHOD : { 389 cÚ¡ * m‘hod = `g‘_h‰p_m‘hod_Çme ( cÚ -> »que¡ . h‰p_m‘hod ); 393 `bufãr_cÝy_¡ršg ( ¤v -> tmp_buf , m‘hod ); 395 l = ¤v -> tmp_buf ; 400  COND_RESULT_FALSE ; 403 ià( NULL =ð l ) { 404 ià( cÚ -> cÚf . log_cÚd™iÚ_hªdlšg ) { 405 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "bsbs", dc -> comp_key , 406 "(", l , ") compareo NULL"); 408  COND_RESULT_FALSE ; 411 ià( cÚ -> cÚf . log_cÚd™iÚ_hªdlšg ) { 412 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "bsbsb", dc -> comp_key , 413 "(", l , "ècom·»Ø", dc -> ¡ršg ); 415  dc -> cÚd ) { 416  CONFIG_COND_NE : 417  CONFIG_COND_EQ : 418 ià( `bufãr_is_equ® ( l , dc -> ¡ršg )) { 419  ( dc -> cÚd =ð CONFIG_COND_EQ è? COND_RESULT_TRUE : COND_RESULT_FALSE ; 421  ( dc -> cÚd =ð CONFIG_COND_EQ è? COND_RESULT_FALSE : COND_RESULT_TRUE ; 424 #ifdeà HAVE_PCRE_H 425  CONFIG_COND_NOMATCH : 426  CONFIG_COND_MATCH : { 427 cÚd_ÿche_t * ÿche = & cÚ -> cÚd_ÿche [ dc -> cÚ‹xt_ndx ]; 428  n ; 430 #iâdeà –em’tsof 431  #–em’tsof ( x è((xè/ (x[0])) ) 433 n = `püe_exec ( dc -> »gex , dc-> »gex_¡udy , l -> ±r ,†-> u£d - 1, 0, 0, 434 ÿche -> m©ches , `–em’tsof (cache->matches)); 436 ÿche -> ·‰”ncouÁ = n ; 437 ià( n > 0) { 438 ÿche -> comp_v®ue = l ; 439 ÿche -> comp_ty³ = dc -> comp ; 440  ( dc -> cÚd =ð CONFIG_COND_MATCH è? COND_RESULT_TRUE : COND_RESULT_FALSE ; 443  ( dc -> cÚd =ð CONFIG_COND_MATCH è? COND_RESULT_FALSE : COND_RESULT_TRUE ; 453  COND_RESULT_FALSE ; 454 } } 456  cÚd_»suÉ_t $cÚfig_check_cÚd_ÿched ( £rv” * ¤v , cÚÃùiÚ * cÚ , d©a_cÚfig * dc ) { 457 cÚd_ÿche_t * ÿches = cÚ -> cÚd_ÿche ; 459 ià( COND_RESULT_UNSET =ð ÿches [ dc -> cÚ‹xt_ndx ]. »suÉ ) { 460 ià( COND_RESULT_TRUE =ð( ÿches [ dc -> cÚ‹xt_ndx ]. »suÉ = `cÚfig_check_cÚd_noÿche ( ¤v , cÚ , dc))) { 461 ià( dc -> Ãxt ) { 462 d©a_cÚfig * c ; 463 ià( cÚ -> cÚf . log_cÚd™iÚ_hªdlšg ) { 464 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 467  c = dc -> Ãxt ; c; c = c->next) { 468 ÿches [ c -> cÚ‹xt_ndx ]. »suÉ = COND_RESULT_FALSE ; 472 ÿches [ dc -> cÚ‹xt_ndx ]. comp_ty³ = dc-> comp ; 474 ià( cÚ -> cÚf . log_cÚd™iÚ_hªdlšg ) { 475 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "dss", dc -> cÚ‹xt_ndx , 477 ÿches [ dc -> cÚ‹xt_ndx ]. »suÉ =ð COND_RESULT_UNSET ? "unknown" : 478 ( ÿches [ dc -> cÚ‹xt_ndx ]. »suÉ =ð COND_RESULT_TRUE ? "true" : "false")); 481 ià( cÚ -> cÚf . log_cÚd™iÚ_hªdlšg ) { 482 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "dss", dc -> cÚ‹xt_ndx , 484 ÿches [ dc -> cÚ‹xt_ndx ]. »suÉ =ð COND_RESULT_UNSET ? "unknown" : 485 ( ÿches [ dc -> cÚ‹xt_ndx ]. »suÉ =ð COND_RESULT_TRUE ? "true" : "false")); 488  ÿches [ dc -> cÚ‹xt_ndx ]. »suÉ ; 489 } } 496  $cÚfig_cÚd_ÿche_»£t_™em ( £rv” * ¤v , cÚÃùiÚ * cÚ , comp_key_t ™em ) { 497 size_t i ; 499  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 500 ià( ™em =ð COMP_LAST_ELEMENT || 501 cÚ -> cÚd_ÿche [ i ]. comp_ty³ =ð ™em ) { 502 cÚ -> cÚd_ÿche [ i ]. »suÉ = COND_RESULT_UNSET ; 503 cÚ -> cÚd_ÿche [ i ]. ·‰”ncouÁ = 0; 504 cÚ -> cÚd_ÿche [ i ]. comp_v®ue = NULL ; 507 } } 512  $cÚfig_cÚd_ÿche_»£t ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 513 size_t i ; 515 `cÚfig_cÚd_ÿche_»£t_®l_™ems ( ¤v , cÚ ); 517  i = 0; i < COMP_LAST_ELEMENT ; i++) { 518 cÚ -> cÚd™iÚ®_is_v®id [ i ] = 0; 520 } } 522  $cÚfig_check_cÚd ( £rv” * ¤v , cÚÃùiÚ * cÚ , d©a_cÚfig * dc ) { 523 ià( cÚ -> cÚf . log_cÚd™iÚ_hªdlšg ) { 524 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "=== start of condition block ==="); 526  ( `cÚfig_check_cÚd_ÿched ( ¤v , cÚ , dc è=ð COND_RESULT_TRUE ); 527 } } 529  $cÚfig_­³nd_cÚd_m©ch_bufãr ( cÚÃùiÚ * cÚ , d©a_cÚfig * dc , bufãr * buf ,  n ) 531 cÚd_ÿche_t * ÿche = & cÚ -> cÚd_ÿche [ dc -> cÚ‹xt_ndx ]; 532 ià( n > ÿche -> ·‰”ncouÁ ) { 536 n <<= 1; 537 `bufãr_­³nd_¡ršg_Ën ( buf , 538 ÿche -> comp_v®ue -> ±r + cache-> m©ches [ n ], 539 ÿche -> m©ches [ n + 1] - cache->matches[n]); 541 } } @src/configfile.c 1  ~ 3  ~<¡dlib.h > 4  ~ 5  ~ 6  ~<”ºo.h > 7  ~<¡ršg.h > 8  ~<¡dio.h > 9  ~<ùy³.h > 10  ~ 12  ~"£rv”.h " 13  ~"log.h " 14  ~"¡»am.h " 15  ~"¶ugš.h " 16 #ifdeà USE_LICENSE 17  ~"liûn£.h " 20  ~"cÚfig·r£r.h " 21  ~"cÚfigfže.h " 22  ~"´oc_Ý’.h " 25  $cÚfig_š£¹ ( £rv” * ¤v ) { 26 size_t i ; 27  »t = 0; 28 bufãr * ¡©_ÿche_¡ršg ; 30 cÚfig_v®ues_t cv [] = { 31 { "£rv”.bšd", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 32 { "£rv”.”rÜlog", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 33 { "£rv”.”rÜfže-´efix", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 34 { "£rv”.chroÙ", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 35 { "£rv”.u£ºame", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 36 { "£rv”.grou²ame", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 37 { "£rv”.pÜt", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_SERVER }, 38 { "£rv”.g", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 39 { "£rv”.u£-v6", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 40 { "£rv”.moduËs", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_SERVER }, 42 { "£rv”.ev’t-hªdËr", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 43 { "£rv”.pid-fže", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 44 { "£rv”.max-»que¡-size", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 45 { "£rv”.max-wÜk”", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_SERVER }, 46 { "£rv”.docum’t-roÙ", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 47 { "£rv”.fÜû-low”ÿ£-fž’ames", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 48 { "debug.log-cÚd™iÚ-hªdlšg", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 49 { "£rv”.max-k“p-®ive-»que¡s", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 50 { "£rv”.Çme", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 51 { "£rv”.max-k“p-®ive-idË", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 53 { "£rv”.max-»ad-idË", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 54 { "£rv”.max-wr™e-idË", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 55 { "£rv”.”rÜ-hªdËr-404", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 56 { "£rv”.max-fds", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_SERVER }, 57 #ifdeà HAVE_LSTAT 58 { "£rv”.fÞlow-symlšk", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 63 T_CONFIG_UNSUPPORTED , T_CONFIG_SCOPE_UNSET }, 65 { "£rv”.kby‹s-³r-£cÚd", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 66 { "cÚÃùiÚ.kby‹s-³r-£cÚd", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 67 { "mim‘y³.u£-x©Œ", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 68 { "mim‘y³.assign", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 69 { "s¦.³mfže", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 71 { "s¦.’gše", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 73 { "debug.log-fže-nÙ-found", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 74 { "debug.log-»que¡-hªdlšg", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 75 { "debug.log-»¥Ú£-h—d”", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 76 { "debug.log-»que¡-h—d”", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 78 { "£rv”.´ÙocÞ-h‰p11", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 79 { "debug.log-»que¡-h—d”-Ú-”rÜ", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 80 { "debug.log-¡©e-hªdlšg", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 81 { "s¦.ÿ-fže", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 83 { "£rv”.”rÜlog-u£-sy¦og", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 84 { "£rv”.¿nge-»que¡s", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 85 { "£rv”.¡©-ÿche-’gše", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 86 { "£rv”.max-cÚÃùiÚs", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_SERVER }, 87 { "£rv”.ÃtwÜk-back’d", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 88 { "£rv”.u¶ßd-dœs", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 89 { "£rv”.cÜe-fžes", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 90 { "s¦.ch”-li¡", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 91 { "s¦.u£-s¦v2", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 92 { "‘ag.u£-šode", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 93 { "‘ag.u£-mtime", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 94 { "‘ag.u£-size", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_SERVER }, 95 { "£rv”.ho¡", "u£ s”v”.bšd in¡—d", T_CONFIG_DEPRECATED , T_CONFIG_SCOPE_UNSET }, 96 { "£rv”.doüoÙ", "u£ s”v”.docum’t-roÙ in¡—d", T_CONFIG_DEPRECATED , T_CONFIG_SCOPE_UNSET }, 97 { "£rv”.vœtu®-roÙ", "lßd mod_sim¶e_vho¡‡nd u£ sim¶e-vho¡.£rv”-roÙ in¡—d", T_CONFIG_DEPRECATED , T_CONFIG_SCOPE_UNSET }, 98 { "£rv”.vœtu®-deçuÉ-ho¡", "lßd mod_sim¶e_vho¡‡nd u£ sim¶e-vho¡.deçuÉ-ho¡ in¡—d", T_CONFIG_DEPRECATED , T_CONFIG_SCOPE_UNSET }, 99 { "£rv”.vœtu®-doüoÙ", "lßd mod_sim¶e_vho¡‡nd u£ sim¶e-vho¡.docum’t-roÙ in¡—d", T_CONFIG_DEPRECATED , T_CONFIG_SCOPE_UNSET }, 100 { "£rv”.u£rid", "u£ s”v”.u£ºamš¡—d", T_CONFIG_DEPRECATED , T_CONFIG_SCOPE_UNSET }, 101 { "£rv”.groupid", "u£ s”v”.grou²amš¡—d", T_CONFIG_DEPRECATED , T_CONFIG_SCOPE_UNSET }, 102 { "£rv”.u£-k“p-®ive", "u£ s”v”.max-k“p-®ive-»que¡ ð0 in¡—d", T_CONFIG_DEPRECATED , T_CONFIG_SCOPE_UNSET }, 103 { "£rv”.fÜû-low”-ÿ£-fžes", "u£ s”v”.fÜû-low”ÿ£-fž’ame š¡—d", T_CONFIG_DEPRECATED , T_CONFIG_SCOPE_UNSET }, 105 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 110 cv [0]. de¡š©iÚ = ¤v -> ¤vcÚf . bšdho¡ ; 111 cv [1]. de¡š©iÚ = ¤v -> ¤vcÚf . ”rÜlog_fže ; 112 cv [3]. de¡š©iÚ = ¤v -> ¤vcÚf . chªg”oÙ ; 113 cv [4]. de¡š©iÚ = ¤v -> ¤vcÚf . u£ºame ; 114 cv [5]. de¡š©iÚ = ¤v -> ¤vcÚf . grou²ame ; 115 cv [6]. de¡š©iÚ = &( ¤v -> ¤vcÚf . pÜt ); 117 cv [9]. de¡š©iÚ = ¤v -> ¤vcÚf . moduËs ; 118 cv [10]. de¡š©iÚ = ¤v -> ¤vcÚf . ev’t_hªdËr ; 119 cv [11]. de¡š©iÚ = ¤v -> ¤vcÚf . pid_fže ; 121 cv [13]. de¡š©iÚ = &( ¤v -> ¤vcÚf . max_wÜk” ); 122 cv [23]. de¡š©iÚ = &( ¤v -> ¤vcÚf . max_fds ); 123 cv [36]. de¡š©iÚ = &( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ); 124 cv [37]. de¡š©iÚ = &( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ); 126 cv [39]. de¡š©iÚ = &( ¤v -> ¤vcÚf . ”rÜlog_u£_sy¦og ); 128 ¡©_ÿche_¡ršg = `bufãr_š™ (); 129 cv [41]. de¡š©iÚ = ¡©_ÿche_¡ršg ; 130 cv [43]. de¡š©iÚ = ¤v -> ¤vcÚf . ÃtwÜk_back’d ; 131 cv [44]. de¡š©iÚ = ¤v -> ¤vcÚf . u¶ßd_‹mpdœs ; 132 cv [45]. de¡š©iÚ = &( ¤v -> ¤vcÚf . ’abË_cÜes ); 134 cv [42]. de¡š©iÚ = &( ¤v -> ¤vcÚf . max_cÚns ); 135 cv [12]. de¡š©iÚ = &( ¤v -> ¤vcÚf . max_»que¡_size ); 136 ¤v -> cÚfig_¡Üage = `ÿÎoc (1, srv-> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 138 `as£¹ ( ¤v -> cÚfig_¡Üage ); 140  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 141 ¥ecific_cÚfig * s ; 143 s = `ÿÎoc (1, ( ¥ecific_cÚfig )); 144 `as£¹ ( s ); 145 s -> docum’t_roÙ = `bufãr_š™ (); 146 s -> mim‘y³s = `¬¿y_š™ (); 147 s -> £rv”_Çme = `bufãr_š™ (); 148 s -> s¦_³mfže = `bufãr_š™ (); 149 s -> s¦_ÿ_fže = `bufãr_š™ (); 150 s -> ”rÜ_hªdËr = `bufãr_š™ (); 151 s -> £rv”_g = `bufãr_š™ (); 152 s -> s¦_ch”_li¡ = `bufãr_š™ (); 153 s -> ”rÜfže_´efix = `bufãr_š™ (); 154 s -> max_k“p_®ive_»que¡s = 16; 155 s -> max_k“p_®ive_idË = 5; 156 s -> max_»ad_idË = 60; 157 s -> max_wr™e_idË = 360; 158 s -> u£_x©Œ = 0; 159 s -> is_s¦ = 0; 160 s -> s¦_u£_s¦v2 = 1; 161 s -> u£_v6 = 0; 162 #ifdeà HAVE_LSTAT 163 s -> fÞlow_symlšk = 1; 165 s -> kby‹s_³r_£cÚd = 0; 166 s -> ®low_h‰p11 = 1; 167 s -> ‘ag_u£_šode = 1; 168 s -> ‘ag_u£_mtime = 1; 169 s -> ‘ag_u£_size = 1; 170 s -> ¿nge_»que¡s = 1; 171 s -> fÜû_low”ÿ£_fž’ames = 0; 172 s -> glob®_kby‹s_³r_£cÚd = 0; 173 s -> glob®_by‹s_³r_£cÚd_út = 0; 174 s -> glob®_by‹s_³r_£cÚd_út_±r = &s-> glob®_by‹s_³r_£cÚd_út ; 176 cv [2]. de¡š©iÚ = s -> ”rÜfže_´efix ; 178 cv [7]. de¡š©iÚ = s -> £rv”_g ; 179 cv [8]. de¡š©iÚ = &( s -> u£_v6 ); 183 cv [14]. de¡š©iÚ = s -> docum’t_roÙ ; 184 cv [15]. de¡š©iÚ = &( s -> fÜû_low”ÿ£_fž’ames ); 185 cv [16]. de¡š©iÚ = &( s -> log_cÚd™iÚ_hªdlšg ); 186 cv [17]. de¡š©iÚ = &( s -> max_k“p_®ive_»que¡s ); 187 cv [18]. de¡š©iÚ = s -> £rv”_Çme ; 188 cv [19]. de¡š©iÚ = &( s -> max_k“p_®ive_idË ); 189 cv [20]. de¡š©iÚ = &( s -> max_»ad_idË ); 190 cv [21]. de¡š©iÚ = &( s -> max_wr™e_idË ); 191 cv [22]. de¡š©iÚ = s -> ”rÜ_hªdËr ; 192 #ifdeà HAVE_LSTAT 193 cv [24]. de¡š©iÚ = &( s -> fÞlow_symlšk ); 196 cv [25]. de¡š©iÚ = &( s -> glob®_kby‹s_³r_£cÚd ); 197 cv [26]. de¡š©iÚ = &( s -> kby‹s_³r_£cÚd ); 198 cv [27]. de¡š©iÚ = &( s -> u£_x©Œ ); 199 cv [28]. de¡š©iÚ = s -> mim‘y³s ; 200 cv [29]. de¡š©iÚ = s -> s¦_³mfže ; 201 cv [30]. de¡š©iÚ = &( s -> is_s¦ ); 203 cv [31]. de¡š©iÚ = &( s -> log_fže_nÙ_found ); 204 cv [32]. de¡š©iÚ = &( s -> log_»que¡_hªdlšg ); 205 cv [33]. de¡š©iÚ = &( s -> log_»¥Ú£_h—d” ); 206 cv [34]. de¡š©iÚ = &( s -> log_»que¡_h—d” ); 208 cv [35]. de¡š©iÚ = &( s -> ®low_h‰p11 ); 209 cv [38]. de¡š©iÚ = s -> s¦_ÿ_fže ; 210 cv [40]. de¡š©iÚ = &( s -> ¿nge_»que¡s ); 212 cv [46]. de¡š©iÚ = s -> s¦_ch”_li¡ ; 213 cv [47]. de¡š©iÚ = &( s -> s¦_u£_s¦v2 ); 214 cv [48]. de¡š©iÚ = &( s -> ‘ag_u£_šode ); 215 cv [49]. de¡š©iÚ = &( s -> ‘ag_u£_mtime ); 216 cv [50]. de¡š©iÚ = &( s -> ‘ag_u£_size ); 218 ¤v -> cÚfig_¡Üage [ i ] = s ; 220 ià(0 !ð( »t = `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv ))) { 225 ià( `bufãr_is_em±y ( ¡©_ÿche_¡ršg )) { 226 ¤v -> ¤vcÚf . ¡©_ÿche_’gše = STAT_CACHE_ENGINE_SIMPLE ; 227 } ià( `bufãr_is_equ®_¡ršg ( ¡©_ÿche_¡ršg , `CONST_STR_LEN ("simple"))) { 228 ¤v -> ¤vcÚf . ¡©_ÿche_’gše = STAT_CACHE_ENGINE_SIMPLE ; 229 #ifdeà HAVE_FAM_H 230 } ià( `bufãr_is_equ®_¡ršg ( ¡©_ÿche_¡ršg , `CONST_STR_LEN ("fam"))) { 231 ¤v -> ¤vcÚf . ¡©_ÿche_’gše = STAT_CACHE_ENGINE_FAM ; 233 } ià( `bufãr_is_equ®_¡ršg ( ¡©_ÿche_¡ršg , `CONST_STR_LEN ("disable"))) { 234 ¤v -> ¤vcÚf . ¡©_ÿche_’gše = STAT_CACHE_ENGINE_NONE ; 236 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 238 #ifdeà HAVE_FAM_H 241 " buˆnÙ:", ¡©_ÿche_¡ršg ); 242 »t = HANDLER_ERROR ; 245 `bufãr_ä“ ( ¡©_ÿche_¡ršg ); 247  »t ; 249 } } 252  #PATCH ( x è cÚ -> cÚf .x = s -> ) x 253  $cÚfig_£tup_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 254 ¥ecific_cÚfig * s = ¤v -> cÚfig_¡Üage [0]; 256 `PATCH ( ®low_h‰p11 ); 257 `PATCH ( mim‘y³s ); 258 `PATCH ( docum’t_roÙ ); 259 `PATCH ( max_k“p_®ive_»que¡s ); 260 `PATCH ( max_k“p_®ive_idË ); 261 `PATCH ( max_»ad_idË ); 262 `PATCH ( max_wr™e_idË ); 263 `PATCH ( u£_x©Œ ); 264 `PATCH ( ”rÜ_hªdËr ); 265 `PATCH ( ”rÜfže_´efix ); 266 #ifdeà HAVE_LSTAT 267 `PATCH ( fÞlow_symlšk ); 269 `PATCH ( £rv”_g ); 270 `PATCH ( kby‹s_³r_£cÚd ); 271 `PATCH ( glob®_kby‹s_³r_£cÚd ); 272 `PATCH ( glob®_by‹s_³r_£cÚd_út ); 274 cÚ -> cÚf . glob®_by‹s_³r_£cÚd_út_±r = & s -> glob®_by‹s_³r_£cÚd_út ; 275 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> £rv”_Çme , s ->server_name); 277 `PATCH ( log_»que¡_h—d” ); 278 `PATCH ( log_»¥Ú£_h—d” ); 279 `PATCH ( log_»que¡_hªdlšg ); 280 `PATCH ( log_cÚd™iÚ_hªdlšg ); 281 `PATCH ( log_fže_nÙ_found ); 283 `PATCH ( ¿nge_»que¡s ); 284 `PATCH ( fÜû_low”ÿ£_fž’ames ); 285 `PATCH ( is_s¦ ); 287 `PATCH ( s¦_³mfže ); 288 `PATCH ( s¦_ÿ_fže ); 289 `PATCH ( s¦_ch”_li¡ ); 290 `PATCH ( s¦_u£_s¦v2 ); 291 `PATCH ( ‘ag_u£_šode ); 292 `PATCH ( ‘ag_u£_mtime ); 293 `PATCH ( ‘ag_u£_size ); 296 } } 298  $cÚfig_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , comp_key_t comp ) { 299 size_t i , j ; 301 cÚ -> cÚd™iÚ®_is_v®id [ comp ] = 1; 304  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 305 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 306 ¥ecific_cÚfig * s = ¤v -> cÚfig_¡Üage [ i ]; 309 ià( comp !ð dc ->comp) ; 312 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 315  j = 0; j < dc -> v®ue -> u£d ; j++) { 316 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 318 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.document-root"))) { 319 `PATCH ( docum’t_roÙ ); 320 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.range-requests"))) { 321 `PATCH ( ¿nge_»que¡s ); 322 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.error-handler-404"))) { 323 `PATCH ( ”rÜ_hªdËr ); 324 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.errorfile-prefix"))) { 325 `PATCH ( ”rÜfže_´efix ); 326 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("mimetype.assign"))) { 327 `PATCH ( mim‘y³s ); 328 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.max-keep-alive-requests"))) { 329 `PATCH ( max_k“p_®ive_»que¡s ); 330 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.max-keep-alive-idle"))) { 331 `PATCH ( max_k“p_®ive_idË ); 332 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.max-write-idle"))) { 333 `PATCH ( max_wr™e_idË ); 334 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.max-read-idle"))) { 335 `PATCH ( max_»ad_idË ); 336 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("mimetype.use-xattr"))) { 337 `PATCH ( u£_x©Œ ); 338 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("etag.use-inode"))) { 339 `PATCH ( ‘ag_u£_šode ); 340 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("etag.use-mtime"))) { 341 `PATCH ( ‘ag_u£_mtime ); 342 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("etag.use-size"))) { 343 `PATCH ( ‘ag_u£_size ); 344 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("ssl.pemfile"))) { 345 `PATCH ( s¦_³mfže ); 346 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("ssl.ca-file"))) { 347 `PATCH ( s¦_ÿ_fže ); 348 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("ssl.use-sslv2"))) { 349 `PATCH ( s¦_u£_s¦v2 ); 350 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("ssl.cipher-list"))) { 351 `PATCH ( s¦_ch”_li¡ ); 352 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("ssl.engine"))) { 353 `PATCH ( is_s¦ ); 354 #ifdeà HAVE_LSTAT 355 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.follow-symlink"))) { 356 `PATCH ( fÞlow_symlšk ); 358 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.name"))) { 359 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> £rv”_Çme , s ->server_name); 360 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.tag"))) { 361 `PATCH ( £rv”_g ); 362 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("connection.kbytes-per-second"))) { 363 `PATCH ( kby‹s_³r_£cÚd ); 364 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("debug.log-request-handling"))) { 365 `PATCH ( log_»que¡_hªdlšg ); 366 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("debug.log-request-header"))) { 367 `PATCH ( log_»que¡_h—d” ); 368 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("debug.log-response-header"))) { 369 `PATCH ( log_»¥Ú£_h—d” ); 370 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("debug.log-condition-handling"))) { 371 `PATCH ( log_cÚd™iÚ_hªdlšg ); 372 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("debug.log-file-not-found"))) { 373 `PATCH ( log_fže_nÙ_found ); 374 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.protocol-http11"))) { 375 `PATCH ( ®low_h‰p11 ); 376 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.force-lowercase-filenames"))) { 377 `PATCH ( fÜû_low”ÿ£_fž’ames ); 378 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.kbytes-per-second"))) { 379 `PATCH ( glob®_kby‹s_³r_£cÚd ); 380 `PATCH ( glob®_by‹s_³r_£cÚd_út ); 381 cÚ -> cÚf . glob®_by‹s_³r_£cÚd_út_±r = & s -> glob®_by‹s_³r_£cÚd_út ; 386 cÚ -> ‘ag_æags = (cÚ-> cÚf . ‘ag_u£_mtime ? ETAG_USE_MTIME : 0) | 387 ( cÚ -> cÚf . ‘ag_u£_šode ? ETAG_USE_INODE : 0) | 388 ( cÚ -> cÚf . ‘ag_u£_size ? ETAG_USE_SIZE : 0); 391 } } 392 #undeà PATCH 395  mfoo ; 396  mb¬ ; 398 cÚ¡ bufãr * msourû ; 399 cÚ¡ * mšput ; 400 size_t moff£t ; 401 size_t msize ; 403  mlše_pos ; 404  mlše ; 406  mš_key ; 407  mš_b¿û ; 408  mš_cÚd ; 409 } ttok’iz”_t ; 412  $tok’iz”_Ý’ ( £rv” * ¤v , tok’iz”_t * t , bufãr * ba£dœ , cÚ¡ * â ) { 413 ià( `bufãr_is_em±y ( ba£dœ ) && 414 ( â [0] == '/' || fn[0] == '\\') && 415 ( â [0] == '.' && (fn[1] == '/' || fn[1] == '\\'))) { 416 t -> fže = `bufãr_š™_¡ršg ( â ); 418 t -> fže = `bufãr_š™_bufãr ( ba£dœ ); 419 `bufãr_­³nd_¡ršg ( t -> fže , â ); 422 ià(0 !ð `¡»am_Ý’ (&( t -> s ),-> fže )) { 423 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", 424 "Ý’šg cÚfigfž", t -> fže , "çžed:", `¡»¼Ü ( ”ºo )); 425 `bufãr_ä“ ( t -> fže ); 429 t -> šput =-> s . ¡¬t ; 430 t -> off£t = 0; 431 t -> size =-> s .size; 432 t -> lše = 1; 433 t -> lše_pos = 1; 435 t -> š_key = 1; 436 t -> š_b¿û = 0; 437 t -> š_cÚd = 0; 439 } } 441  $tok’iz”_þo£ ( £rv” * ¤v , tok’iz”_t * t ) { 442 `UNUSED ( ¤v ); 444 `bufãr_ä“ ( t -> fže ); 445  `¡»am_þo£ (&( t -> s )); 446 } } 448  $cÚfig_sk_Ãwlše ( tok’iz”_t * t ) { 449  sk³d = 1; 450 `as£¹ ( t -> šput [t-> off£t ] == '\r' ||->input[t->offset] == '\n'); 451 ià( t -> šput [t-> off£t ] == '\r' &&->input[t->offset + 1] == '\n') { 452 sk³d ++; 453 t -> off£t ++; 455 t -> off£t ++; 456  sk³d ; 457 } } 459  $cÚfig_sk_comm’t ( tok’iz”_t * t ) { 460  i ; 461 `as£¹ ( t -> šput [t-> off£t ] == '#'); 462  i = 1; t -> šput [t-> off£t + i] && 463 ( t -> šput [t-> off£t + i ] != '\n' &&->input[t->offset + i] != '\r'); 464 i ++); 465 t -> off£t +ð i ; 466  i ; 467 } } 469  $cÚfig_tok’iz” ( £rv” * ¤v , tok’iz”_t * t , * tok’_id , bufãr * tok’ ) { 470  tid = 0; 471 size_t i ; 473  tid = 0;id =ð0 && t -> off£t <-> size &&-> šput [t->offset] ; ) { 474  c = t -> šput [t-> off£t ]; 475 cÚ¡ * ¡¬t = NULL ; 477  c ) { 479 ià( t -> š_b¿û ) { 480 ià( t -> šput [t-> off£t + 1] == '>') { 481 t -> off£t += 2; 483 `bufãr_cÝy_¡ršg ( tok’ , "=>"); 485 tid = TK_ARRAY_ASSIGN ; 487 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsdsds", 488 "sourû:", t -> sourû , 489 "lše:", t -> lše , "pos:",-> lše_pos , 493 } ià( t -> š_cÚd ) { 494 ià( t -> šput [t-> off£t + 1] == '=') { 495 t -> off£t += 2; 497 `bufãr_cÝy_¡ršg ( tok’ , "=="); 499 tid = TK_EQ ; 500 } ià( t -> šput [t-> off£t + 1] == '~') { 501 t -> off£t += 2; 503 `bufãr_cÝy_¡ršg ( tok’ , "=~"); 505 tid = TK_MATCH ; 507 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsdsds", 508 "sourû:", t -> sourû , 509 "lše:", t -> lše , "pos:",-> lše_pos , 513 t -> š_key = 1; 514 t -> š_cÚd = 0; 515 } ià( t -> š_key ) { 516 tid = TK_ASSIGN ; 518 `bufãr_cÝy_¡ršg_Ën ( tok’ , t -> šput +-> off£t , 1); 520 t -> off£t ++; 521 t -> lše_pos ++; 523 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsdsds", 524 "sourû:", t -> sourû , 525 "lše:", t -> lše , "pos:",-> lše_pos , 532 ià( t -> š_cÚd ) { 533 ià( t -> šput [t-> off£t + 1] == '=') { 534 t -> off£t += 2; 536 `bufãr_cÝy_¡ršg ( tok’ , "!="); 538 tid = TK_NE ; 539 } ià( t -> šput [t-> off£t + 1] == '~') { 540 t -> off£t += 2; 542 `bufãr_cÝy_¡ršg ( tok’ , "!~"); 544 tid = TK_NOMATCH ; 546 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsdsds", 547 "sourû:", t -> sourû , 548 "lše:", t -> lše , "pos:",-> lše_pos , 552 t -> š_key = 1; 553 t -> š_cÚd = 0; 555 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsdsds", 556 "sourû:", t -> sourû , 557 "lše:", t -> lše , "pos:",-> lše_pos , 565 t -> off£t ++; 566 t -> lše_pos ++; 570 ià( t -> š_b¿û == 0) { 571  dÚe = 0; 572 ! dÚe && t -> off£t <-> size ) { 573  t -> šput [t-> off£t ]) { 576 `cÚfig_sk_Ãwlše ( t ); 577 t -> lše_pos = 1; 578 t -> lše ++; 582 t -> lše_pos +ð `cÚfig_sk_comm’t (t); 587 t -> off£t ++; 588 t -> lše_pos ++; 592 dÚe = 1; 595 t -> š_key = 1; 596 tid = TK_EOL ; 597 `bufãr_cÝy_¡ršg ( tok’ , "(EOL)"); 599 `cÚfig_sk_Ãwlše ( t ); 600 t -> lše_pos = 1; 601 t -> lše ++; 605 ià( t -> š_b¿û > 0) { 606 tid = TK_COMMA ; 608 `bufãr_cÝy_¡ršg ( tok’ , "(COMMA)"); 611 t -> off£t ++; 612 t -> lše_pos ++; 616 ¡¬t = t -> šput +-> off£t + 1; 617 `bufãr_cÝy_¡ršg ( tok’ , ""); 619  i = 1; t -> šput [t-> off£t + i]; i++) { 620 ià( t -> šput [t-> off£t + i ] == '\\' && 621 t -> šput [t-> off£t + i + 1] == '"') { 623 `bufãr_­³nd_¡ršg_Ën ( tok’ , ¡¬t , t -> šput +-> off£t + i - start); 625 ¡¬t = t -> šput +-> off£t + i + 1; 628 i ++; 633 ià( t -> šput [t-> off£t + i ] == '"') { 634 tid = TK_STRING ; 636 `bufãr_­³nd_¡ršg_Ën ( tok’ , ¡¬t , t -> šput +-> off£t + i - start); 642 ià( t -> šput [t-> off£t + i ] == '\0') { 645 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsdsds", 646 "sourû:", t -> sourû , 647 "lše:", t -> lše , "pos:",-> lše_pos , 653 t -> off£t +ð i + 1; 654 t -> lše_pos +ð i + 1; 658 t -> off£t ++; 659 t -> š_b¿û ++; 661 tid = TK_LPARAN ; 663 `bufãr_cÝy_¡ršg ( tok’ , "("); 666 t -> off£t ++; 667 t -> š_b¿û --; 669 tid = TK_RPARAN ; 671 `bufãr_cÝy_¡ršg ( tok’ , ")"); 674 t -> off£t ++; 676 tid = TK_DOLLAR ; 677 t -> š_cÚd = 1; 678 t -> š_key = 0; 680 `bufãr_cÝy_¡ršg ( tok’ , "$"); 685 ià( t -> šput [t-> off£t + 1] == '=') { 686 t -> off£t += 2; 687 `bufãr_cÝy_¡ršg ( tok’ , "+="); 688 tid = TK_APPEND ; 690 t -> off£t ++; 691 tid = TK_PLUS ; 692 `bufãr_cÝy_¡ršg ( tok’ , "+"); 697 t -> off£t ++; 699 tid = TK_LCURLY ; 701 `bufãr_cÝy_¡ršg ( tok’ , "{"); 706 t -> off£t ++; 708 tid = TK_RCURLY ; 710 `bufãr_cÝy_¡ršg ( tok’ , "}"); 715 t -> off£t ++; 717 tid = TK_LBRACKET ; 719 `bufãr_cÝy_¡ršg ( tok’ , "["); 724 t -> off£t ++; 726 tid = TK_RBRACKET ; 728 `bufãr_cÝy_¡ršg ( tok’ , "]"); 732 t -> lše_pos +ð `cÚfig_sk_comm’t (t); 736 ià( t -> š_cÚd ) { 737  i = 0; t -> šput [t-> off£t + i] && 738 ( `i§Íha (() t -> šput [t-> off£t + i ]) 739 ); i ++); 741 ià( i && t -> šput [t-> off£t + i]) { 742 tid = TK_SRVVARNAME ; 743 `bufãr_cÝy_¡ršg_Ën ( tok’ , t -> šput +-> off£t , i ); 745 t -> off£t +ð i ; 746 t -> lše_pos +ð i ; 749 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsdsds", 750 "sourû:", t -> sourû , 751 "lše:", t -> lše , "pos:",-> lše_pos , 755 } ià( `isdig™ (() c )) { 757  i = 0; t -> šput [t-> off£t + i] && `isdig™ (()t->input[t->offset + i]); i++); 760 ià( i ) { 761 tid = TK_INTEGER ; 763 `bufãr_cÝy_¡ršg_Ën ( tok’ , t -> šput +-> off£t , i ); 765 t -> off£t +ð i ; 766 t -> lše_pos +ð i ; 770  i = 0; t -> šput [t-> off£t + i] && 771 ( `i§Êum (() t -> šput [t-> off£t + i ]) || 772 t -> šput [t-> off£t + i ] == '.' || 773 t -> šput [t-> off£t + i ] == '_' || 774 t -> šput [t-> off£t + i ] == '-' 775 ); i ++); 777 ià( i && t -> šput [t-> off£t + i]) { 778 `bufãr_cÝy_¡ršg_Ën ( tok’ , t -> šput +-> off£t , i ); 780 ià( `¡rcmp ( tok’ -> ±r , "include") == 0) { 781 tid = TK_INCLUDE ; 782 } ià( `¡rcmp ( tok’ -> ±r , "include_shell") == 0) { 783 tid = TK_INCLUDE_SHELL ; 784 } ià( `¡rcmp ( tok’ -> ±r , "global") == 0) { 785 tid = TK_GLOBAL ; 786 } ià( `¡rcmp ( tok’ -> ±r , "else") == 0) { 787 tid = TK_ELSE ; 789 tid = TK_LKEY ; 792 t -> off£t +ð i ; 793 t -> lše_pos +ð i ; 796 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsdsds", 797 "sourû:", t -> sourû , 798 "lše:", t -> lše , "pos:",-> lše_pos , 807 ià( tid ) { 808 * tok’_id = tid ; 810 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsdsdbdd", 811 "sourû:", t -> sourû , 812 "lše:", t -> lše , "pos:",-> lše_pos , 813 tok’ ,ok’-> u£d - 1, tid ); 817 } ià( t -> off£t <-> size ) { 818 `årštf ( ¡d”r , "%s.%d: %d, %s\n", 819 __FILE__ , __LINE__ , 820 tid , tok’ -> ±r ); 823 } } 825  $cÚfig_·r£ ( £rv” * ¤v , cÚfig_t * cÚ‹xt , tok’iz”_t * t ) { 826 * pP¬£r ; 827  tok’_id ; 828 bufãr * tok’ , * Ï¡tok’ ; 829  »t ; 831 pP¬£r = `cÚfig·r£rAÎoc Ð m®loc ); 832 Ï¡tok’ = `bufãr_š™ (); 833 tok’ = `bufãr_š™ (); 834 (1 =ð( »t = `cÚfig_tok’iz” ( ¤v , t , & tok’_id , tok’ ))è&& cÚ‹xt -> ok ) { 835 `bufãr_cÝy_¡ršg_bufãr ( Ï¡tok’ , tok’ ); 836 `cÚfig·r£r ( pP¬£r , tok’_id , tok’ , cÚ‹xt ); 838 tok’ = `bufãr_š™ (); 840 `bufãr_ä“ ( tok’ ); 842 ià( »t !ð-1 && cÚ‹xt -> ok ) { 844 `cÚfig·r£r ( pP¬£r , TK_EOL , `bufãr_š™_¡ršg ("(EOL)"), cÚ‹xt ); 845 ià( cÚ‹xt -> ok ) { 846 `cÚfig·r£r ( pP¬£r , 0, NULL , cÚ‹xt ); 849 `cÚfig·r£rF»e ( pP¬£r , ä“ ); 851 ià( »t == -1) { 852 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 853 "cÚfigfž·r£¸çžed‡t:", Ï¡tok’ ); 854 } ià( cÚ‹xt -> ok == 0) { 855 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsdsdsb", 856 "sourû:", t -> sourû , 857 "lše:", t -> lše , "pos:",-> lše_pos , 858 "·r£¸çžed somehow‚—¸h”e:", Ï¡tok’ ); 859 »t = -1; 861 `bufãr_ä“ ( Ï¡tok’ ); 863  »t == -1 ? -1 : 0; 864 } } 866  $tok’iz”_š™ ( tok’iz”_t * t , cÚ¡ bufãr * sourû , cÚ¡ * šput , size_t size ) { 868 t -> sourû = source; 869 t -> šput = input; 870 t -> size = size; 871 t -> off£t = 0; 872 t -> lše = 1; 873 t -> lše_pos = 1; 875 t -> š_key = 1; 876 t -> š_b¿û = 0; 877 t -> š_cÚd = 0; 879 } } 881  $cÚfig_·r£_fže ( £rv” * ¤v , cÚfig_t * cÚ‹xt , cÚ¡ * â ) { 882 tok’iz”_t t ; 883 ¡»am s ; 884  »t ; 885 bufãr * fž’ame ; 887 ià( `bufãr_is_em±y ( cÚ‹xt -> ba£dœ ) && 888 ( â [0] == '/' || fn[0] == '\\') && 889 ( â [0] == '.' && (fn[1] == '/' || fn[1] == '\\'))) { 890 fž’ame = `bufãr_š™_¡ršg ( â ); 892 fž’ame = `bufãr_š™_bufãr ( cÚ‹xt -> ba£dœ ); 893 `bufãr_­³nd_¡ršg ( fž’ame , â ); 896 ià(0 !ð `¡»am_Ý’ (& s , fž’ame )) { 897 ià( s . size == 0) { 899 »t = 0; 901 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", 902 "Ý’šg cÚfigfž", fž’ame , "çžed:", `¡»¼Ü ( ”ºo )); 903 »t = -1; 906 `tok’iz”_š™ (& t , fž’ame , s . ¡¬t , s. size ); 907 »t = `cÚfig_·r£ ( ¤v , cÚ‹xt , & t ); 910 `¡»am_þo£ (& s ); 911 `bufãr_ä“ ( fž’ame ); 912  »t ; 913 } } 915  $cÚfig_·r£_cmd ( £rv” * ¤v , cÚfig_t * cÚ‹xt , cÚ¡ * cmd ) { 916 ´oc_hªdËr_t ´oc ; 917 tok’iz”_t t ; 918  »t ; 919 bufãr * sourû ; 920 bufãr * out ; 921  Þdpwd [ PATH_MAX ]; 923 ià( NULL =ð `g‘cwd ( Þdpwd , (oldpwd))) { 924 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 925 "ÿÂÙ g‘ cwd", `¡»¼Ü ( ”ºo )); 929 sourû = `bufãr_š™_¡ršg ( cmd ); 930 out = `bufãr_š™ (); 932 ià(! `bufãr_is_em±y ( cÚ‹xt -> ba£dœ )) { 933 `chdœ ( cÚ‹xt -> ba£dœ -> ±r ); 936 ià(0 !ð `´oc_Ý’_bufãr (& ´oc , cmd , NULL , out , NULL)) { 937 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", 938 "Ý’šg", sourû , "çžed:", `¡»¼Ü ( ”ºo )); 939 »t = -1; 941 `tok’iz”_š™ (& t , sourû , out -> ±r , out-> u£d ); 942 »t = `cÚfig_·r£ ( ¤v , cÚ‹xt , & t ); 945 `bufãr_ä“ ( sourû ); 946 `bufãr_ä“ ( out ); 947 `chdœ ( Þdpwd ); 948  »t ; 949 } } 951  $cÚ‹xt_š™ ( £rv” * ¤v , cÚfig_t * cÚ‹xt ) { 952 cÚ‹xt -> ¤v = srv; 953 cÚ‹xt -> ok = 1; 954 cÚ‹xt -> cÚfigs_¡ack = `¬¿y_š™ (); 955 cÚ‹xt -> cÚfigs_¡ack -> is_w—k»f = 1; 956 cÚ‹xt -> ba£dœ = `bufãr_š™ (); 957 } } 959  $cÚ‹xt_ä“ ( cÚfig_t * cÚ‹xt ) { 960 `¬¿y_ä“ ( cÚ‹xt -> cÚfigs_¡ack ); 961 `bufãr_ä“ ( cÚ‹xt -> ba£dœ ); 962 } } 964  $cÚfig_»ad ( £rv” * ¤v , cÚ¡ * â ) { 965 cÚfig_t cÚ‹xt ; 966 d©a_cÚfig * dc ; 967 d©a_š‹g” * dpid ; 968 d©a_¡ršg * dcwd ; 969  »t ; 970 * pos ; 971 d©a_¬¿y * moduËs ; 973 `cÚ‹xt_š™ ( ¤v , & cÚ‹xt ); 974 cÚ‹xt . ®l_cÚfigs = ¤v -> cÚfig_cÚ‹xt ; 976 pos = `¡¼chr ( â , 977 #ifdeà __WIN32 983 ià( pos ) { 984 `bufãr_cÝy_¡ršg_Ën ( cÚ‹xt . ba£dœ , â , pos - fn + 1); 985 â = pos + 1; 988 dc = `d©a_cÚfig_š™ (); 989 `bufãr_cÝy_¡ršg ( dc -> key , "global"); 991 `as£¹ ( cÚ‹xt . ®l_cÚfigs -> u£d == 0); 992 dc -> cÚ‹xt_ndx = cÚ‹xt . ®l_cÚfigs -> u£d ; 993 `¬¿y_š£¹_unique ( cÚ‹xt . ®l_cÚfigs , ( d©a_un£t *) dc ); 994 cÚ‹xt . cu¼’t = dc ; 997 ¤v -> cÚfig = dc -> v®ue ; 998 dpid = `d©a_š‹g”_š™ (); 999 dpid -> v®ue = `g‘pid (); 1000 `bufãr_cÝy_¡ršg ( dpid -> key , "var.PID"); 1001 `¬¿y_š£¹_unique ( ¤v -> cÚfig , ( d©a_un£t *) dpid ); 1003 dcwd = `d©a_¡ršg_š™ (); 1004 `bufãr_´•¬e_cÝy ( dcwd -> v®ue , 1024); 1005 ià( NULL !ð `g‘cwd ( dcwd -> v®ue -> ±r , dcwd->v®ue-> size - 1)) { 1006 dcwd -> v®ue -> u£d = `¡¾’ (dcwd->v®ue-> ±r ) + 1; 1007 `bufãr_cÝy_¡ršg ( dcwd -> key , "var.CWD"); 1008 `¬¿y_š£¹_unique ( ¤v -> cÚfig , ( d©a_un£t *) dcwd ); 1011 »t = `cÚfig_·r£_fže ( ¤v , & cÚ‹xt , â ); 1014 `as£¹ (!(0 =ð »t && cÚ‹xt . ok && 0 !ðcÚ‹xt. cÚfigs_¡ack -> u£d )); 1015 `cÚ‹xt_ä“ (& cÚ‹xt ); 1017 ià(0 !ð »t ) { 1018  »t ; 1021 ià( NULL !ð( dc = ( d©a_cÚfig *) `¬¿y_g‘_–em’t ( ¤v -> cÚfig_cÚ‹xt , "global"))) { 1022 ¤v -> cÚfig = dc -> v®ue ; 1027 ià( NULL !ð( moduËs = ( d©a_¬¿y *) `¬¿y_g‘_–em’t ( ¤v -> cÚfig , "server.modules"))) { 1028 d©a_¡ršg * ds ; 1029 d©a_¬¿y * ´•’ds ; 1031 ià( moduËs -> ty³ !ð TYPE_ARRAY ) { 1032 `årštf ( ¡d”r , "server.modules must be‡n‡rray"); 1036 ´•’ds = `d©a_¬¿y_š™ (); 1039 ià( NULL =ð `¬¿y_g‘_–em’t ( moduËs -> v®ue , "mod_indexfile")) { 1040 ds = `d©a_¡ršg_š™ (); 1041 `bufãr_cÝy_¡ršg ( ds -> v®ue , "mod_indexfile"); 1042 `¬¿y_š£¹_unique ( ´•’ds -> v®ue , ( d©a_un£t *) ds ); 1045 ´•’ds = ( d©a_¬¿y *) `cÚfig·r£r_m”ge_d©a (( d©a_un£t *í»³nds, (d©a_un£ˆ*) moduËs ); 1046 `bufãr_cÝy_¡ršg_bufãr ( ´•’ds -> key , moduËs ->key); 1047 `¬¿y_»¶aû ( ¤v -> cÚfig , ( d©a_un£t *) ´•’ds ); 1048 moduËs -> `ä“ (( d©a_un£t *)modules); 1049 moduËs = ´•’ds ; 1052 ià( NULL =ð `¬¿y_g‘_–em’t ( moduËs -> v®ue , "mod_dirlisting")) { 1053 ds = `d©a_¡ršg_š™ (); 1054 `bufãr_cÝy_¡ršg ( ds -> v®ue , "mod_dirlisting"); 1055 `¬¿y_š£¹_unique ( moduËs -> v®ue , ( d©a_un£t *) ds ); 1058 ià( NULL =ð `¬¿y_g‘_–em’t ( moduËs -> v®ue , "mod_staticfile")) { 1059 ds = `d©a_¡ršg_š™ (); 1060 `bufãr_cÝy_¡ršg ( ds -> v®ue , "mod_staticfile"); 1061 `¬¿y_š£¹_unique ( moduËs -> v®ue , ( d©a_un£t *) ds ); 1064 d©a_¡ršg * ds ; 1066 moduËs = `d©a_¬¿y_š™ (); 1069 ds = `d©a_¡ršg_š™ (); 1070 `bufãr_cÝy_¡ršg ( ds -> v®ue , "mod_indexfile"); 1071 `¬¿y_š£¹_unique ( moduËs -> v®ue , ( d©a_un£t *) ds ); 1073 ds = `d©a_¡ršg_š™ (); 1074 `bufãr_cÝy_¡ršg ( ds -> v®ue , "mod_dirlisting"); 1075 `¬¿y_š£¹_unique ( moduËs -> v®ue , ( d©a_un£t *) ds ); 1077 ds = `d©a_¡ršg_š™ (); 1078 `bufãr_cÝy_¡ršg ( ds -> v®ue , "mod_staticfile"); 1079 `¬¿y_š£¹_unique ( moduËs -> v®ue , ( d©a_un£t *) ds ); 1081 `bufãr_cÝy_¡ršg ( moduËs -> key , "server.modules"); 1082 `¬¿y_š£¹_unique ( ¤v -> cÚfig , ( d©a_un£t *) moduËs ); 1086 ià(0 !ð `cÚfig_š£¹ ( ¤v )) { 1091 } } 1093  $cÚfig_£t_deçuÉs ( £rv” * ¤v ) { 1094 size_t i ; 1095 ¥ecific_cÚfig * s = ¤v -> cÚfig_¡Üage [0]; 1096  ¡© ¡1 , ¡2 ; 1098  sev_m­ { fdev’t_hªdËr_t ‘ ; cÚ¡ * Çme ; } ev’t_hªdËrs [] = 1104 #ifdeà USE_POLL 1105 { FDEVENT_HANDLER_POLL , "poll" }, 1107 #ifdeà USE_SELECT 1108 { FDEVENT_HANDLER_SELECT , "select" }, 1110 #ifdeà USE_LINUX_EPOLL 1111 { FDEVENT_HANDLER_LINUX_SYSEPOLL , "linux-sysepoll" }, 1113 #ifdeà USE_LINUX_SIGIO 1114 { FDEVENT_HANDLER_LINUX_RTSIG , "linux-rtsig" }, 1116 #ifdeà USE_SOLARIS_DEVPOLL 1117 { FDEVENT_HANDLER_SOLARIS_DEVPOLL ,"solaris-devpoll" }, 1119 #ifdeà USE_FREEBSD_KQUEUE 1120 { FDEVENT_HANDLER_FREEBSD_KQUEUE , "freebsd-kqueue" }, 1121 { FDEVENT_HANDLER_FREEBSD_KQUEUE , "kqueue" }, 1123 { FDEVENT_HANDLER_UNSET , NULL } 1127 ià( `bufãr_is_em±y ( s -> docum’t_roÙ )) { 1128 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1134 ià( `bufãr_is_em±y ( ¤v -> ¤vcÚf . chªg”oÙ )) { 1135 ià(-1 =ð `¡© ( s -> docum’t_roÙ -> ±r , & ¡1 )) { 1136 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 1138 s -> docum’t_roÙ ); 1143 `bufãr_cÝy_¡ršg_bufãr ( ¤v -> tmp_buf , srv-> ¤vcÚf . chªg”oÙ ); 1144 `bufãr_­³nd_¡ršg_bufãr ( ¤v -> tmp_buf , s -> docum’t_roÙ ); 1146 ià(-1 =ð `¡© ( ¤v -> tmp_buf -> ±r , & ¡1 )) { 1147 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 1149 ¤v -> tmp_buf ); 1155 `bufãr_cÝy_¡ršg_bufãr ( ¤v -> tmp_buf , s -> docum’t_roÙ ); 1157 `bufãr_to_low” ( ¤v -> tmp_buf ); 1159 ià(0 =ð `¡© ( ¤v -> tmp_buf -> ±r , & ¡1 )) { 1160  is_low” = 0; 1162 is_low” = `bufãr_is_equ® ( ¤v -> tmp_buf , s -> docum’t_roÙ ); 1165 `bufãr_cÝy_¡ršg_bufãr ( ¤v -> tmp_buf , s -> docum’t_roÙ ); 1167 `bufãr_to_uµ” ( ¤v -> tmp_buf ); 1172 ià( is_low” && `bufãr_is_equ® ( ¤v -> tmp_buf , s -> docum’t_roÙ )) { 1177 s -> fÜû_low”ÿ£_fž’ames = 0; 1178 } ià(0 =ð `¡© ( ¤v -> tmp_buf -> ±r , & ¡2 )) { 1184 ià( ¡1 . ¡_šo =ð ¡2 .st_ino) { 1187 s -> fÜû_low”ÿ£_fž’ames = 1; 1192 ià( ¤v -> ¤vcÚf . pÜt == 0) { 1193 ¤v -> ¤vcÚf . pÜt = s -> is_s¦ ? 443 : 80; 1196 ià( ¤v -> ¤vcÚf . ev’t_hªdËr -> u£d == 0) { 1202 ¤v -> ev’t_hªdËr = ev’t_hªdËrs [0]. ‘ ; 1204 ià( FDEVENT_HANDLER_UNSET =ð ¤v -> ev’t_hªdËr ) { 1205 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1215  i = 0; ev’t_hªdËrs [i]. Çme ; i++) { 1216 ià(0 =ð `¡rcmp ( ev’t_hªdËrs [ i ]. Çme , ¤v -> ¤vcÚf . ev’t_hªdËr -> ±r )) { 1217 ¤v -> ev’t_hªdËr = ev’t_hªdËrs [ i ]. ‘ ; 1222 ià( FDEVENT_HANDLER_UNSET =ð ¤v -> ev’t_hªdËr ) { 1223 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 1225 ¤v -> ¤vcÚf . ev’t_hªdËr ); 1231 ià( s -> is_s¦ ) { 1232 ià( `bufãr_is_em±y ( s -> s¦_³mfže )) { 1235 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1240 #iâdeà USE_OPENSSL 1241 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1249 } } @src/configfile.h 1 #iâdeà _CONFIG_PARSER_H_ 2  #_CONFIG_PARSER_H_ ) 4  ~"¬¿y.h " 5  ~"bufãr.h " 6  ~"£rv”.h " 9 £rv” * m¤v ; 10  mok ; 11 ¬¿y * m®l_cÚfigs ; 12 ¬¿y * mcÚfigs_¡ack ; 13 d©a_cÚfig * mcu¼’t ; 14 bufãr * mba£dœ ; 15 } tcÚfig_t ; 17 * cÚfig·r£rAÎoc (*(* m®locProc )( size_t )); 18  cÚfig·r£rF»e (* p , (* ä“Proc )(*)); 19  `cÚfig·r£r (* yyp ,  yymajÜ , bufãr * yymšÜ , cÚfig_t * ùx ); 20  `cÚfig_·r£_fže ( £rv” * ¤v , cÚfig_t * cÚ‹xt , cÚ¡ * â ); 21  `cÚfig_·r£_cmd ( £rv” * ¤v , cÚfig_t * cÚ‹xt , cÚ¡ * cmd ); 22 d©a_un£t * `cÚfig·r£r_m”ge_d©a (d©a_un£ˆ* Ý1 , cÚ¡ d©a_un£ˆ* Ý2 ); 24  `cÚfig_cÚd_ÿche_»£t ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 25  `cÚfig_cÚd_ÿche_»£t_™em ( £rv” * ¤v , cÚÃùiÚ * cÚ , comp_key_t ™em ); 27  #cÚfig_cÚd_ÿche_»£t_®l_™ems ( ¤v , cÚ ) \ 28 `cÚfig_cÚd_ÿche_»£t_™em ( ¤v , cÚ , COMP_LAST_ELEMENT ); ) @src/configparser.c 6  ~<¡dio.h > 9  ~ 10  ~<¡dio.h > 11  ~<¡ršg.h > 12 #ifdeà HAVE_CONFIG_H 13  ~"cÚfig.h " 15  ~"cÚfigfže.h " 16  ~"bufãr.h " 17  ~"¬¿y.h " 19  $cÚfig·r£r_push ( cÚfig_t * ùx , d©a_cÚfig * dc ,  i¢ew ) { 20 ià( i¢ew ) { 21 dc -> cÚ‹xt_ndx = ùx -> ®l_cÚfigs -> u£d ; 22 `as£¹ ( dc -> cÚ‹xt_ndx > ùx -> cu¼’t ->context_ndx); 23 `¬¿y_š£¹_unique ( ùx -> ®l_cÚfigs , ( d©a_un£t *) dc ); 24 dc -> ·»Á = ùx -> cu¼’t ; 25 `¬¿y_š£¹_unique ( dc -> ·»Á -> chžds , ( d©a_un£t *)dc); 27 `¬¿y_š£¹_unique ( ùx -> cÚfigs_¡ack , ( d©a_un£t *)ùx-> cu¼’t ); 28 ùx -> cu¼’t = dc ; 29 } } 31  d©a_cÚfig * $cÚfig·r£r_pÝ ( cÚfig_t * ùx ) { 32 d©a_cÚfig * Þd = ùx -> cu¼’t ; 33 ùx -> cu¼’t = ( d©a_cÚfig *è `¬¿y_pÝ (ùx-> cÚfigs_¡ack ); 34  Þd ; 35 } } 38  d©a_un£t * $cÚfig·r£r_g‘_v¬ŸbË ( cÚfig_t * ùx , cÚ¡ bufãr * key ) { 39 d©a_un£t * du ; 40 d©a_cÚfig * dc ; 43 `årštf ( ¡d”r , "g‘ v¬ %s\n", key -> ±r ); 45  dc = ùx -> cu¼’t ; dc; døðdc-> ·»Á ) { 47 `årštf ( ¡d”r , "g‘ v¬ oÀblock: %s\n", dc -> key -> ±r ); 48 `¬¿y_´št ( dc -> v®ue , 0); 50 ià( NULL !ð( du = `¬¿y_g‘_–em’t ( dc -> v®ue , key -> ±r ))) { 51  du -> `cÝy (du); 54  NULL ; 55 } } 60 d©a_un£t * $cÚfig·r£r_m”ge_d©a ( d©a_un£t * Ý1 , cÚ¡ d©a_un£ˆ* Ý2 ) { 62 ià( Ý1 -> ty³ !ð Ý2 ->type) { 63 ià( Ý1 -> ty³ =ð TYPE_STRING && Ý2 ->ty³ =ð TYPE_INTEGER ) { 64 d©a_¡ršg * ds = (d©a_¡ršg *) Ý1 ; 65 `bufãr_­³nd_lÚg ( ds -> v®ue , (( d©a_š‹g” *) Ý2 )->value); 66  Ý1 ; 67 } ià( Ý1 -> ty³ =ð TYPE_INTEGER && Ý2 ->ty³ =ð TYPE_STRING ) { 68 d©a_¡ršg * ds = `d©a_¡ršg_š™ (); 69 `bufãr_­³nd_lÚg ( ds -> v®ue , (( d©a_š‹g” *) Ý1 )->value); 70 `bufãr_­³nd_¡ršg_bufãr ( ds -> v®ue , (( d©a_¡ršg *) Ý2 )->value); 71 Ý1 -> `ä“ (op1); 72  ( d©a_un£t *) ds ; 74 `årštf ( ¡d”r , "dataype mismatch, cannot be merge\n"); 75  NULL ; 79  Ý1 -> ty³ ) { 80  TYPE_STRING : 81 `bufãr_­³nd_¡ršg_bufãr ((( d©a_¡ršg *) Ý1 )-> v®ue , ((d©a_¡ršg *) Ý2 )->value); 83  TYPE_INTEGER : 84 (( d©a_š‹g” *) Ý1 )-> v®ue +ð((d©a_š‹g” *) Ý2 )->value; 86  TYPE_ARRAY : { 87 ¬¿y * d¡ = (( d©a_¬¿y *) Ý1 )-> v®ue ; 88 ¬¿y * ¤c = (( d©a_¬¿y *) Ý2 )-> v®ue ; 89 d©a_un£t * du ; 90 size_t i ; 92  i = 0; i < ¤c -> u£d ; i ++) { 93 du = ( d©a_un£t *) ¤c -> d©a [ i ]; 94 ià( du ) { 95 `¬¿y_š£¹_unique ( d¡ , du -> `cÝy (du)); 100 `as£¹ (0); 104  Ý1 ; 105 } } 121 #iâdeà INTERFACE 122  #INTERFACE 1 ) 158  #YYCODETYPE  ) 159  #YYNOCODE 48 ) 160  #YYACTIONTYPE  ) 161  #cÚfig·r£rTOKENTYPE bufãr * ) 163 cÚfig·r£rTOKENTYPE myy0 ; 164 cÚfig_cÚd_t myy27 ; 165 ¬¿y * myy40 ; 166 d©a_un£t * myy41 ; 167 bufãr * myy43 ; 168 d©a_cÚfig * myy78 ; 169  myy95 ; 170 } tYYMINORTYPE ; 171  #YYSTACKDEPTH 100 ) 172  #cÚfig·r£rARG_SDECL cÚfig_t * ùx ; ) 173  #cÚfig·r£rARG_PDECL , cÚfig_t * ùx ) 174  #cÚfig·r£rARG_FETCH cÚfig_t * ùx = yypP¬£r -> ) ctx 175  #cÚfig·r£rARG_STORE yypP¬£r -> ùx = ) ctx 176  #YYNSTATE 63 ) 177  #YYNRULE 40 ) 178  #YYERRORSYMBOL 26 ) 179  #YYERRSYMDT yy95 ) 180  #YY_NO_ACTION ( YYNSTATE + YYNRULE +2) ) 181  #YY_ACCEPT_ACTION ( YYNSTATE + YYNRULE +1) ) 182  #YY_ERROR_ACTION ( YYNSTATE + YYNRULE ) ) 231  YYACTIONTYPE gyy_aùiÚ [] = { 246  YYCODETYPE gyy_lookah—d [] = { 261  #YY_SHIFT_USE_DFLT (-5) ) 262 sigÃd  gyy_shiá_of¡ [] = { 271  #YY_REDUCE_USE_DFLT (-37) ) 272 sigÃd  gyy_»duû_of¡ [] = { 281  YYACTIONTYPE gyy_deçuÉ [] = { 290  #YY_SZ_ACTTAB (( yy_aùiÚ )/(yy_aùiÚ[0])) ) 302 #ifdeà YYFALLBACK 303 cÚ¡ YYCODETYPE gyyF®lback [] = { 319  syySckEÁry { 320  m¡©’o ; 321  mmajÜ ; 323 YYMINORTYPE mmšÜ ; 326  yySckEÁry tyySckEÁry ; 330  syyP¬£r { 331  myyidx ; 332  myy”rút ; 333 cÚfig·r£rARG_SDECL 334 yySckEÁry myy¡ack [ YYSTACKDEPTH ]; 336  yyP¬£r tyyP¬£r ; 338 #iâdeà NDEBUG 339  ~<¡dio.h > 340  FILE * gyyT¿ûFILE = 0; 341 * gyyT¿ûProm± = 0; 344 #iâdeà NDEBUG 362  $cÚfig·r£rT¿û ( FILE * T¿ûFILE , * zT¿ûProm± ){ 363 yyT¿ûFILE = T¿ûFILE ; 364 yyT¿ûProm± = zT¿ûProm± ; 365 ifÐ yyT¿ûFILE ==0 ) yyT¿ûProm± = 0; 366 ifÐ yyT¿ûProm± ==0 ) yyT¿ûFILE = 0; 367 } } 370 #iâdeà NDEBUG 373 cÚ¡ * gyyTok’Name [] = { 389 #iâdeà NDEBUG 392 cÚ¡ * gyyRuËName [] = { 440 cÚ¡ * $cÚfig·r£rTok’Name ( tok’Ty³ ){ 441 #iâdeà NDEBUG 442 ifÐ tok’Ty³ >0 &&ok’Ty³<(( yyTok’Name )/(yyTokenName[0])) ){ 443  yyTok’Name [ tok’Ty³ ]; 450 } } 464 * cÚfig·r£rAÎoc (*(* m®locProc )( size_t )){ 465 yyP¬£r * gpP¬£r ; 466 gpP¬£r = ( yyP¬£r *)(* m®locProc )Ð( size_t )(yyParser) ); 467 ifÐ gpP¬£r ){ 468 gpP¬£r -> gyyidx = -1; 470  gpP¬£r ; 478  $yy_de¡ruùÜ ( YYCODETYPE yymajÜ , YYMINORTYPE * yypmšÜ ){ 479  yymajÜ ){ 516 { `bufãr_ä“ (( yypmšÜ -> yy0 )); } 521 { ( yypmšÜ -> yy41 )-> `ä“ ((yypminor->yy41)); } 526 { ( yypmšÜ -> yy41 )-> `ä“ ((yypminor->yy41)); } 531 { ( yypmšÜ -> yy41 )-> `ä“ ((yypminor->yy41)); } 536 { `¬¿y_ä“ (( yypmšÜ -> yy40 )); } 541 { `¬¿y_ä“ (( yypmšÜ -> yy40 )); } 546 { `bufãr_ä“ (( yypmšÜ -> yy43 )); } 551 { `bufãr_ä“ (( yypmšÜ -> yy43 )); } 556 } } 566  $yy_pÝ_·r£r_¡ack ( yyP¬£r * pP¬£r ){ 567 YYCODETYPE yymajÜ ; 568 yySckEÁry * yytos = & pP¬£r -> yy¡ack [pP¬£r-> yyidx ]; 570 ifÐ pP¬£r -> yyidx <0 )  0; 571 #iâdeà NDEBUG 572 ifÐ yyT¿ûFILE && pP¬£r -> yyidx >=0 ){ 573 `årštf ( yyT¿ûFILE ,"%sPopping %s\n", 574 yyT¿ûProm± , 575 yyTok’Name [ yytos -> majÜ ]); 578 yymajÜ = yytos -> majÜ ; 579 `yy_de¡ruùÜ Ð yymajÜ , & yytos -> mšÜ ); 580 pP¬£r -> yyidx --; 581  yymajÜ ; 582 } } 596  cÚfig·r£rF»e ( 597 * p , 598 (* ä“Proc )(*) 600 yyP¬£r * pP¬£r = (yyP¬£r*) p ; 601 ifÐ pP¬£r ==0 ) ; 602  pP¬£r -> yyidx >=0 ) `yy_pÝ_·r£r_¡ack (pParser); 603 (* ä“Proc )((*) pP¬£r ); 604 } } 614  $yy_fšd_shiá_aùiÚ ( 615 yyP¬£r * pP¬£r , 616  iLookAh—d 618  i ; 619  ¡©’o = pP¬£r -> yy¡ack [pP¬£r-> yyidx ].stateno; 622 i = yy_shiá_of¡ [ ¡©’o ]; 623 ifÐ i == YY_SHIFT_USE_DFLT ){ 624  yy_deçuÉ [ ¡©’o ]; 626 ifÐ iLookAh—d == YYNOCODE ){ 627  YY_NO_ACTION ; 629 i +ð iLookAh—d ; 630 ifÐ i <0 || i>= YY_SZ_ACTTAB || yy_lookah—d [i]!= iLookAh—d ){ 631 #ifdeà YYFALLBACK 632  iF®lback ; 633 ifÐ iLookAh—d <( yyF®lback )/(yyFallback[0]) 634 && ( iF®lback = yyF®lback [ iLookAh—d ])!=0 ){ 635 #iâdeà NDEBUG 636 ifÐ yyT¿ûFILE ){ 637 `årštf ( yyT¿ûFILE , "%sFALLBACK %s => %s\n", 638 yyT¿ûProm± , yyTok’Name [ iLookAh—d ], yyTok’Name[ iF®lback ]); 641  `yy_fšd_shiá_aùiÚ ( pP¬£r , iF®lback ); 644  yy_deçuÉ [ ¡©’o ]; 646  yy_aùiÚ [ i ]; 648 } } 658  $yy_fšd_»duû_aùiÚ ( 659 yyP¬£r * pP¬£r , 660  iLookAh—d 662  i ; 663  ¡©’o = pP¬£r -> yy¡ack [pP¬£r-> yyidx ].stateno; 665 i = yy_»duû_of¡ [ ¡©’o ]; 666 ifÐ i == YY_REDUCE_USE_DFLT ){ 667  yy_deçuÉ [ ¡©’o ]; 669 ifÐ iLookAh—d == YYNOCODE ){ 670  YY_NO_ACTION ; 672 i +ð iLookAh—d ; 673 ifÐ i <0 || i>= YY_SZ_ACTTAB || yy_lookah—d [i]!= iLookAh—d ){ 674  yy_deçuÉ [ ¡©’o ]; 676  yy_aùiÚ [ i ]; 678 } } 683  $yy_shiá ( 684 yyP¬£r * yypP¬£r , 685  yyNewS‹ , 686  yyMajÜ , 687 YYMINORTYPE * yypMšÜ 689 yySckEÁry * yytos ; 690 yypP¬£r -> yyidx ++; 691 ifÐ yypP¬£r -> yyidx >= YYSTACKDEPTH ){ 692 cÚfig·r£rARG_FETCH ; 693 yypP¬£r -> yyidx --; 694 #iâdeà NDEBUG 695 ifÐ yyT¿ûFILE ){ 696 `årštf ( yyT¿ûFILE ,"%sSck Ov”æow!\n", yyT¿ûProm± ); 699  yypP¬£r -> yyidx >=0 ) `yy_pÝ_·r£r_¡ack (yypParser); 702 cÚfig·r£rARG_STORE ; 705 yytos = & yypP¬£r -> yy¡ack [yypP¬£r-> yyidx ]; 706 yytos -> ¡©’o = yyNewS‹ ; 707 yytos -> majÜ = yyMajÜ ; 708 yytos -> mšÜ = * yypMšÜ ; 709 #iâdeà NDEBUG 710 ifÐ yyT¿ûFILE && yypP¬£r -> yyidx >0 ){ 711  i ; 712 `årštf ( yyT¿ûFILE ,"%sShiá %d\n", yyT¿ûProm± , yyNewS‹ ); 713 `årštf ( yyT¿ûFILE ,"%sSck:", yyT¿ûProm± ); 714  i =1; i<= yypP¬£r -> yyidx ; i++) 715 `årštf ( yyT¿ûFILE ," %s", yyTok’Name [ yypP¬£r -> yy¡ack [ i ]. majÜ ]); 716 `årštf ( yyT¿ûFILE ,"\n"); 719 } } 725 YYCODETYPE mlhs ; 726  mÄhs ; 727 } gyyRuËInfo [] = { 770  yy_acû± ( yyP¬£r *); 776  $yy_»duû ( 777 yyP¬£r * yypP¬£r , 778  yyruËno 780  yygÙo ; 781  yyaù ; 782 YYMINORTYPE yygÙomšÜ ; 783 yySckEÁry * yym¥ ; 784  yysize ; 785 cÚfig·r£rARG_FETCH ; 786 yym¥ = & yypP¬£r -> yy¡ack [yypP¬£r-> yyidx ]; 787 #iâdeà NDEBUG 788 ifÐ yyT¿ûFILE && yyruËno >=0 789 && yyruËno <( yyRuËName )/(yyRuleName[0]) ){ 790 `årštf ( yyT¿ûFILE , "%sReduû [%s].\n", yyT¿ûProm± , 791 yyRuËName [ yyruËno ]); 795  yyruËno ){ 821 { yym¥ [-1]. mšÜ . yy78 = NULL ; } 823 `yy_de¡ruùÜ (1,& yym¥ [0]. mšÜ ); 832 `yy_de¡ruùÜ (1,& yym¥ [0]. mšÜ ); 837 ià( ùx -> ok ) { 838 `bufãr_cÝy_¡ršg_bufãr ( yym¥ [0]. mšÜ . yy41 -> key , yym¥[-2].mšÜ. yy43 ); 839 ià( `¡ºcmp ( yym¥ [-2]. mšÜ . yy43 -> ±r , "env.", ("env.") - 1) == 0) { 840 `årštf ( ¡d”r , "Settingƒnv variable is‚ot supported in conditional %d %s: %s\n", 841 ùx -> cu¼’t -> cÚ‹xt_ndx , 842 ùx -> cu¼’t -> key -> ±r , yym¥ [-2]. mšÜ . yy43 ->ptr); 843 ùx -> ok = 0; 844 } ià( NULL =ð `¬¿y_g‘_–em’t ( ùx -> cu¼’t -> v®ue , yym¥ [0]. mšÜ . yy41 -> key -> ±r )) { 845 `¬¿y_š£¹_unique ( ùx -> cu¼’t -> v®ue , yym¥ [0]. mšÜ . yy41 ); 846 yym¥ [0]. mšÜ . yy41 = NULL ; 848 `årštf ( ¡d”r , "Duplicate config variable in conditional %d %s: %s\n", 849 ùx -> cu¼’t -> cÚ‹xt_ndx , 850 ùx -> cu¼’t -> key -> ±r , yym¥ [0]. mšÜ . yy41 ->key->ptr); 851 ùx -> ok = 0; 852 yym¥ [0]. mšÜ . yy41 -> `ä“ (yymsp[0].minor.yy41); 853 yym¥ [0]. mšÜ . yy41 = NULL ; 856 `bufãr_ä“ ( yym¥ [-2]. mšÜ . yy43 ); 857 yym¥ [-2]. mšÜ . yy43 = NULL ; 860 `yy_de¡ruùÜ (2,& yym¥ [-1]. mšÜ ); 865 ¬¿y * v¬s = ùx -> cu¼’t -> v®ue ; 866 d©a_un£t * du ; 868 ià( `¡ºcmp ( yym¥ [-2]. mšÜ . yy43 -> ±r , "env.", ("env.") - 1) == 0) { 869 `årštf ( ¡d”r , "Appendingƒnv variable is‚ot supported in conditional %d %s: %s\n", 870 ùx -> cu¼’t -> cÚ‹xt_ndx , 871 ùx -> cu¼’t -> key -> ±r , yym¥ [-2]. mšÜ . yy43 ->ptr); 872 ùx -> ok = 0; 873 } ià( NULL !ð( du = `¬¿y_g‘_–em’t ( v¬s , yym¥ [-2]. mšÜ . yy43 -> ±r ))) { 875 du = `cÚfig·r£r_m”ge_d©a (du, yym¥ [0]. mšÜ . yy41 ); 876 ià( NULL =ð du ) { 877 ùx -> ok = 0; 880 `bufãr_cÝy_¡ršg_bufãr ( du -> key , yym¥ [-2]. mšÜ . yy43 ); 881 `¬¿y_»¶aû ( v¬s , du ); 883 yym¥ [0]. mšÜ . yy41 -> `ä“ (yymsp[0].minor.yy41); 884 } ià( NULL !ð( du = `cÚfig·r£r_g‘_v¬ŸbË ( ùx , yym¥ [-2]. mšÜ . yy43 ))) { 885 du = `cÚfig·r£r_m”ge_d©a (du, yym¥ [0]. mšÜ . yy41 ); 886 ià( NULL =ð du ) { 887 ùx -> ok = 0; 888 du -> `ä“ (du); 891 `bufãr_cÝy_¡ršg_bufãr ( du -> key , yym¥ [-2]. mšÜ . yy43 ); 892 `¬¿y_š£¹_unique ( ùx -> cu¼’t -> v®ue , du ); 894 yym¥ [0]. mšÜ . yy41 -> `ä“ (yymsp[0].minor.yy41); 896 `bufãr_cÝy_¡ršg_bufãr ( yym¥ [0]. mšÜ . yy41 -> key , yym¥[-2].mšÜ. yy43 ); 897 `¬¿y_š£¹_unique ( ùx -> cu¼’t -> v®ue , yym¥ [0]. mšÜ . yy41 ); 899 `bufãr_ä“ ( yym¥ [-2]. mšÜ . yy43 ); 900 yym¥ [-2]. mšÜ . yy43 = NULL ; 901 yym¥ [0]. mšÜ . yy41 = NULL ; 904 `yy_de¡ruùÜ (3,& yym¥ [-1]. mšÜ ); 909 ià( `¡rchr ( yym¥ [0]. mšÜ . yy0 -> ±r , '.'è=ð NULL ) { 910 yygÙomšÜ . yy43 = `bufãr_š™_¡ršg ("var."); 911 `bufãr_­³nd_¡ršg_bufãr ( yygÙomšÜ . yy43 , yym¥ [0]. mšÜ . yy0 ); 912 `bufãr_ä“ ( yym¥ [0]. mšÜ . yy0 ); 913 yym¥ [0]. mšÜ . yy0 = NULL ; 915 yygÙomšÜ . yy43 = yym¥ [0]. mšÜ . yy0 ; 916 yym¥ [0]. mšÜ . yy0 = NULL ; 924 yygÙomšÜ . yy41 = `cÚfig·r£r_m”ge_d©a ( yym¥ [-2]. mšÜ .yy41, yymsp[0].minor.yy41); 925 ià( NULL =ð yygÙomšÜ . yy41 ) { 926 ùx -> ok = 0; 928 yym¥ [-2]. mšÜ . yy41 = NULL ; 929 yym¥ [0]. mšÜ . yy41 -> `ä“ (yymsp[0].minor.yy41); 930 yym¥ [0]. mšÜ . yy41 = NULL ; 933 `yy_de¡ruùÜ (5,& yym¥ [-1]. mšÜ ); 938 yygÙomšÜ . yy41 = yym¥ [0]. mšÜ .yy41; 939 yym¥ [0]. mšÜ . yy41 = NULL ; 946 yygÙomšÜ . yy41 = NULL ; 947 ià( `¡ºcmp ( yym¥ [0]. mšÜ . yy43 -> ±r , "env.", ("env.") - 1) == 0) { 948 * ’v ; 950 ià( NULL !ð( ’v = `g‘’v ( yym¥ [0]. mšÜ . yy43 -> ±r + 4))) { 951 d©a_¡ršg * ds ; 952 ds = `d©a_¡ršg_š™ (); 953 `bufãr_­³nd_¡ršg ( ds -> v®ue , ’v ); 954 yygÙomšÜ . yy41 = ( d©a_un£t *) ds ; 957 `årštf ( ¡d”r , "Undefšedƒnv v¬ŸbË: %s\n", yym¥ [0]. mšÜ . yy43 -> ±r + 4); 958 ùx -> ok = 0; 960 } ià( NULL =ð( yygÙomšÜ . yy41 = `cÚfig·r£r_g‘_v¬ŸbË ( ùx , yym¥ [0]. mšÜ . yy43 ))) { 961 `årštf ( ¡d”r , "Undefšed cÚfig v¬ŸbË: %s\n", yym¥ [0]. mšÜ . yy43 -> ±r ); 962 ùx -> ok = 0; 964 ià(! yygÙomšÜ . yy41 ) { 966 yygÙomšÜ . yy41 = ( d©a_un£t *) `d©a_¡ršg_š™ (); 968 `bufãr_ä“ ( yym¥ [0]. mšÜ . yy43 ); 969 yym¥ [0]. mšÜ . yy43 = NULL ; 976 yygÙomšÜ . yy41 = ( d©a_un£t *) `d©a_¡ršg_š™ (); 977 `bufãr_cÝy_¡ršg_bufãr ((( d©a_¡ršg *)( yygÙomšÜ . yy41 ))-> v®ue , yym¥ [0]. mšÜ . yy0 ); 978 `bufãr_ä“ ( yym¥ [0]. mšÜ . yy0 ); 979 yym¥ [0]. mšÜ . yy0 = NULL ; 986 yygÙomšÜ . yy41 = ( d©a_un£t *) `d©a_š‹g”_š™ (); 987 (( d©a_š‹g” *)( yygÙomšÜ . yy41 ))-> v®ue = `¡¹Þ ( yym¥ [0]. mšÜ . yy0 -> ±r , NULL , 10); 988 `bufãr_ä“ ( yym¥ [0]. mšÜ . yy0 ); 989 yym¥ [0]. mšÜ . yy0 = NULL ; 996 yygÙomšÜ . yy41 = ( d©a_un£t *) `d©a_¬¿y_š™ (); 997 `¬¿y_ä“ ((( d©a_¬¿y *)( yygÙomšÜ . yy41 ))-> v®ue ); 998 (( d©a_¬¿y *)( yygÙomšÜ . yy41 ))-> v®ue = yym¥ [0]. mšÜ . yy40 ; 999 yym¥ [0]. mšÜ . yy40 = NULL ; 1006 yygÙomšÜ . yy40 = `¬¿y_š™ (); 1009 `yy_de¡ruùÜ (8,& yym¥ [-1]. mšÜ ); 1010 `yy_de¡ruùÜ (9,& yym¥ [0]. mšÜ ); 1015 yygÙomšÜ . yy40 = yym¥ [-1]. mšÜ .yy40; 1016 yym¥ [-1]. mšÜ . yy40 = NULL ; 1019 `yy_de¡ruùÜ (8,& yym¥ [-2]. mšÜ ); 1020 `yy_de¡ruùÜ (9,& yym¥ [0]. mšÜ ); 1025 ià( `bufãr_is_em±y ( yym¥ [0]. mšÜ . yy41 -> key ) || 1026 NULL =ð `¬¿y_g‘_–em’t ( yym¥ [-2]. mšÜ . yy40 , yym¥[0].mšÜ. yy41 -> key -> ±r )) { 1027 `¬¿y_š£¹_unique ( yym¥ [-2]. mšÜ . yy40 , yym¥[0].mšÜ. yy41 ); 1028 yym¥ [0]. mšÜ . yy41 = NULL ; 1030 `årštf ( ¡d”r , "Duplicate‡rray-key: %s\n", 1031 yym¥ [0]. mšÜ . yy41 -> key -> ±r ); 1032 ùx -> ok = 0; 1033 yym¥ [0]. mšÜ . yy41 -> `ä“ (yymsp[0].minor.yy41); 1034 yym¥ [0]. mšÜ . yy41 = NULL ; 1037 yygÙomšÜ . yy40 = yym¥ [-2]. mšÜ .yy40; 1038 yym¥ [-2]. mšÜ . yy40 = NULL ; 1041 `yy_de¡ruùÜ (10,& yym¥ [-1]. mšÜ ); 1046 yygÙomšÜ . yy40 = yym¥ [-1]. mšÜ .yy40; 1047 yym¥ [-1]. mšÜ . yy40 = NULL ; 1050 `yy_de¡ruùÜ (10,& yym¥ [0]. mšÜ ); 1055 yygÙomšÜ . yy40 = `¬¿y_š™ (); 1056 `¬¿y_š£¹_unique ( yygÙomšÜ . yy40 , yym¥ [0]. mšÜ . yy41 ); 1057 yym¥ [0]. mšÜ . yy41 = NULL ; 1064 yygÙomšÜ . yy41 = yym¥ [0]. mšÜ .yy41; 1065 yym¥ [0]. mšÜ . yy41 = NULL ; 1072 `bufãr_cÝy_¡ršg_bufãr ( yym¥ [0]. mšÜ . yy41 -> key , yym¥[-2].mšÜ. yy43 ); 1073 `bufãr_ä“ ( yym¥ [-2]. mšÜ . yy43 ); 1074 yym¥ [-2]. mšÜ . yy43 = NULL ; 1076 yygÙomšÜ . yy41 = yym¥ [0]. mšÜ .yy41; 1077 yym¥ [0]. mšÜ . yy41 = NULL ; 1080 `yy_de¡ruùÜ (11,& yym¥ [-1]. mšÜ ); 1083 `yy_de¡ruùÜ (1,& yym¥ [0]. mšÜ ); 1090 d©a_cÚfig * dc ; 1091 dc = ( d©a_cÚfig *) `¬¿y_g‘_–em’t ( ùx -> ¤v -> cÚfig_cÚ‹xt , "global"); 1092 `as£¹ ( dc ); 1093 `cÚfig·r£r_push ( ùx , dc , 0); 1096 `yy_de¡ruùÜ (12,& yym¥ [0]. mšÜ ); 1101 d©a_cÚfig * cur ; 1103 cur = ùx -> cu¼’t ; 1104 `cÚfig·r£r_pÝ ( ùx ); 1106 `as£¹ ( cur && ùx -> cu¼’t ); 1108 yygÙomšÜ . yy78 = cur ; 1112 `yy_de¡ruùÜ (13,& yym¥ [-2]. mšÜ ); 1114 `yy_de¡ruùÜ (14,& yym¥ [0]. mšÜ ); 1119 `as£¹ ( yym¥ [-3]. mšÜ . yy78 -> cÚ‹xt_ndx < yymsp[0].minor.yy78->context_ndx); 1120 yym¥ [0]. mšÜ . yy78 -> ´ev = yymsp[-3].minor.yy78; 1121 yym¥ [-3]. mšÜ . yy78 -> Ãxt = yymsp[0].minor.yy78; 1122 yygÙomšÜ . yy78 = yym¥ [0]. mšÜ .yy78; 1123 yym¥ [-3]. mšÜ . yy78 = NULL ; 1124 yym¥ [0]. mšÜ . yy78 = NULL ; 1128 `yy_de¡ruùÜ (15,& yym¥ [-1]. mšÜ ); 1133 yygÙomšÜ . yy78 = yym¥ [0]. mšÜ .yy78; 1134 yym¥ [0]. mšÜ . yy78 = NULL ; 1141 d©a_cÚfig * cur ; 1143 cur = ùx -> cu¼’t ; 1144 `cÚfig·r£r_pÝ ( ùx ); 1146 `as£¹ ( cur && ùx -> cu¼’t ); 1148 yygÙomšÜ . yy78 = cur ; 1152 `yy_de¡ruùÜ (13,& yym¥ [-2]. mšÜ ); 1154 `yy_de¡ruùÜ (14,& yym¥ [0]. mšÜ ); 1159 d©a_cÚfig * dc ; 1160 bufãr * b , * rv®ue , * Ý ; 1162 ià( ùx -> ok && yym¥ [0]. mšÜ . yy41 -> ty³ !ð TYPE_STRING ) { 1163 `årštf ( ¡d”r , "rvalue must be string"); 1164 ùx -> ok = 0; 1167  yym¥ [-1]. mšÜ . yy27 ) { 1168  CONFIG_COND_NE : 1169 Ý = `bufãr_š™_¡ršg ("!="); 1171  CONFIG_COND_EQ : 1172 Ý = `bufãr_š™_¡ršg ("=="); 1174  CONFIG_COND_NOMATCH : 1175 Ý = `bufãr_š™_¡ršg ("!~"); 1177  CONFIG_COND_MATCH : 1178 Ý = `bufãr_š™_¡ršg ("=~"); 1181 `as£¹ (0); 1185 b = `bufãr_š™ (); 1186 `bufãr_cÝy_¡ršg_bufãr ( b , ùx -> cu¼’t -> key ); 1187 `bufãr_­³nd_¡ršg ( b , "/"); 1188 `bufãr_­³nd_¡ršg_bufãr ( b , yym¥ [-5]. mšÜ . yy0 ); 1189 `bufãr_­³nd_¡ršg_bufãr ( b , yym¥ [-3]. mšÜ . yy43 ); 1190 `bufãr_­³nd_¡ršg_bufãr ( b , Ý ); 1191 rv®ue = (( d©a_¡ršg *) yym¥ [0]. mšÜ . yy41 )-> v®ue ; 1192 `bufãr_­³nd_¡ršg_bufãr ( b , rv®ue ); 1194 ià( NULL !ð( dc = ( d©a_cÚfig *) `¬¿y_g‘_–em’t ( ùx -> ®l_cÚfigs , b -> ±r ))) { 1195 `cÚfig·r£r_push ( ùx , dc , 0); 1198 comp_key_t comp ; 1199 * comp_key ; 1200 size_t Ën ; 1201 } comps [] = { 1202 { COMP_SERVER_SOCKET , `CONST_STR_LEN ("SERVER[\"socket\"]" ) }, 1203 { COMP_HTTP_URL , `CONST_STR_LEN ("HTTP[\"url\"]" ) }, 1204 { COMP_HTTP_HOST , `CONST_STR_LEN ("HTTP[\"host\"]" ) }, 1205 { COMP_HTTP_REFERER , `CONST_STR_LEN ("HTTP[\"referer\"]" ) }, 1206 { COMP_HTTP_USER_AGENT , `CONST_STR_LEN ("HTTP[\"useragent\"]" ) }, 1207 { COMP_HTTP_USER_AGENT , `CONST_STR_LEN ("HTTP[\"user-agent\"]" ) }, 1208 { COMP_HTTP_COOKIE , `CONST_STR_LEN ("HTTP[\"cookie\"]" ) }, 1209 { COMP_HTTP_REMOTE_IP , `CONST_STR_LEN ("HTTP[\"remoteip\"]" ) }, 1210 { COMP_HTTP_REMOTE_IP , `CONST_STR_LEN ("HTTP[\"remote-ip\"]" ) }, 1211 { COMP_HTTP_QUERY_STRING , `CONST_STR_LEN ("HTTP[\"querystring\"]") }, 1212 { COMP_HTTP_QUERY_STRING , `CONST_STR_LEN ("HTTP[\"query-string\"]") }, 1213 { COMP_HTTP_REQUEST_METHOD , `CONST_STR_LEN ("HTTP[\"request-method\"]") }, 1214 { COMP_HTTP_SCHEME , `CONST_STR_LEN ("HTTP[\"scheme\"]" ) }, 1215 { COMP_UNSET , NULL , 0 }, 1217 size_t i ; 1219 dc = `d©a_cÚfig_š™ (); 1221 `bufãr_cÝy_¡ršg_bufãr ( dc -> key , b ); 1222 `bufãr_cÝy_¡ršg_bufãr ( dc -> Ý , op); 1223 `bufãr_cÝy_¡ršg_bufãr ( dc -> comp_key , yym¥ [-5]. mšÜ . yy0 ); 1224 `bufãr_­³nd_¡ršg_Ën ( dc -> comp_key , `CONST_STR_LEN ("[\"")); 1225 `bufãr_­³nd_¡ršg_bufãr ( dc -> comp_key , yym¥ [-3]. mšÜ . yy43 ); 1226 `bufãr_­³nd_¡ršg_Ën ( dc -> comp_key , `CONST_STR_LEN ("\"]")); 1227 dc -> cÚd = yym¥ [-1]. mšÜ . yy27 ; 1229  i = 0; comps [i]. comp_key ; i ++) { 1230 ià( `bufãr_is_equ®_¡ršg ( 1231 dc -> comp_key , comps [ i ].comp_key, comps[i]. Ën )) { 1232 dc -> comp = comps [ i ].comp; 1236 ià( COMP_UNSET =ð dc -> comp ) { 1237 `årštf ( ¡d”r , "”rÜ comp_key %s", dc -> comp_key -> ±r ); 1238 ùx -> ok = 0; 1241  yym¥ [-1]. mšÜ . yy27 ) { 1242  CONFIG_COND_NE : 1243  CONFIG_COND_EQ : 1244 dc -> ¡ršg = `bufãr_š™_bufãr ( rv®ue ); 1246  CONFIG_COND_NOMATCH : 1247  CONFIG_COND_MATCH : { 1248 #ifdeà HAVE_PCRE_H 1249 cÚ¡ * ”½Œ ; 1250  ”roff ; 1252 ià( NULL =ð( dc -> »gex = 1253 `püe_compže ( rv®ue -> ±r , 0, & ”½Œ , & ”roff , NULL ))) { 1254 dc -> ¡ršg = `bufãr_š™_¡ršg ( ”½Œ ); 1255 dc -> cÚd = CONFIG_COND_UNSET ; 1257 `årštf ( ¡d”r , "parsing„egex failed: %s -> %s‡t offset %d\n", 1258 rv®ue -> ±r , ”½Œ , ”roff ); 1260 ùx -> ok = 0; 1261 } ià( NULL =ð( dc -> »gex_¡udy = 1262 `püe_¡udy ( dc -> »gex , 0, & ”½Œ )) && 1263 ”½Œ !ð NULL ) { 1264 `årštf ( ¡d”r , "studying„egex failed: %s -> %s\n", 1265 rv®ue -> ±r , ”½Œ ); 1266 ùx -> ok = 0; 1268 dc -> ¡ršg = `bufãr_š™_bufãr ( rv®ue ); 1271 `årštf ( ¡d”r , "can't handle '$%s[%s] =~ ...'‡s you compiled without…cre support. \n" 1273 yym¥ [-5]. mšÜ . yy0 -> ±r , yym¥[-3].mšÜ. yy43 ->ptr); 1274 ùx -> ok = 0; 1280 `årštf ( ¡d”r , "unknown condition for $%s[%s]\n", 1281 yym¥ [-5]. mšÜ . yy0 -> ±r , yym¥[-3].mšÜ. yy43 ->ptr); 1282 ùx -> ok = 0; 1286 `cÚfig·r£r_push ( ùx , dc , 1); 1289 `bufãr_ä“ ( b ); 1290 `bufãr_ä“ ( Ý ); 1291 `bufãr_ä“ ( yym¥ [-5]. mšÜ . yy0 ); 1292 yym¥ [-5]. mšÜ . yy0 = NULL ; 1293 `bufãr_ä“ ( yym¥ [-3]. mšÜ . yy43 ); 1294 yym¥ [-3]. mšÜ . yy43 = NULL ; 1295 yym¥ [0]. mšÜ . yy41 -> `ä“ (yymsp[0].minor.yy41); 1296 yym¥ [0]. mšÜ . yy41 = NULL ; 1299 `yy_de¡ruùÜ (16,& yym¥ [-6]. mšÜ ); 1300 `yy_de¡ruùÜ (18,& yym¥ [-4]. mšÜ ); 1301 `yy_de¡ruùÜ (19,& yym¥ [-2]. mšÜ ); 1306 yygÙomšÜ . yy27 = CONFIG_COND_EQ ; 1309 `yy_de¡ruùÜ (20,& yym¥ [0]. mšÜ ); 1314 yygÙomšÜ . yy27 = CONFIG_COND_MATCH ; 1317 `yy_de¡ruùÜ (21,& yym¥ [0]. mšÜ ); 1322 yygÙomšÜ . yy27 = CONFIG_COND_NE ; 1325 `yy_de¡ruùÜ (22,& yym¥ [0]. mšÜ ); 1330 yygÙomšÜ . yy27 = CONFIG_COND_NOMATCH ; 1333 `yy_de¡ruùÜ (23,& yym¥ [0]. mšÜ ); 1338 yygÙomšÜ . yy43 = NULL ; 1339 ià( ùx -> ok ) { 1340 ià( yym¥ [0]. mšÜ . yy41 -> ty³ =ð TYPE_STRING ) { 1341 yygÙomšÜ . yy43 = `bufãr_š™_bufãr ((( d©a_¡ršg *) yym¥ [0]. mšÜ . yy41 )-> v®ue ); 1342 } ià( yym¥ [0]. mšÜ . yy41 -> ty³ =ð TYPE_INTEGER ) { 1343 yygÙomšÜ . yy43 = `bufãr_š™ (); 1344 `bufãr_cÝy_lÚg ( yygÙomšÜ . yy43 , (( d©a_š‹g” *) yym¥ [0]. mšÜ . yy41 )-> v®ue ); 1346 `årštf ( ¡d”r , "operand must be string"); 1347 ùx -> ok = 0; 1350 yym¥ [0]. mšÜ . yy41 -> `ä“ (yymsp[0].minor.yy41); 1351 yym¥ [0]. mšÜ . yy41 = NULL ; 1358 ià( ùx -> ok ) { 1359 ià(0 !ð `cÚfig_·r£_fže ( ùx -> ¤v , ctx, yym¥ [0]. mšÜ . yy43 -> ±r )) { 1360 ùx -> ok = 0; 1362 `bufãr_ä“ ( yym¥ [0]. mšÜ . yy43 ); 1363 yym¥ [0]. mšÜ . yy43 = NULL ; 1367 `yy_de¡ruùÜ (24,& yym¥ [-1]. mšÜ ); 1372 ià( ùx -> ok ) { 1373 ià(0 !ð `cÚfig_·r£_cmd ( ùx -> ¤v , ctx, yym¥ [0]. mšÜ . yy43 -> ±r )) { 1374 ùx -> ok = 0; 1376 `bufãr_ä“ ( yym¥ [0]. mšÜ . yy43 ); 1377 yym¥ [0]. mšÜ . yy43 = NULL ; 1381 `yy_de¡ruùÜ (25,& yym¥ [-1]. mšÜ ); 1384 yygÙo = yyRuËInfo [ yyruËno ]. lhs ; 1385 yysize = yyRuËInfo [ yyruËno ]. Ähs ; 1386 yypP¬£r -> yyidx -ð yysize ; 1387 yyaù = `yy_fšd_»duû_aùiÚ ( yypP¬£r , yygÙo ); 1388 ifÐ yyaù < YYNSTATE ){ 1389 `yy_shiá ( yypP¬£r , yyaù , yygÙo ,& yygÙomšÜ ); 1390 } ifÐ yyaù =ð YYNSTATE + YYNRULE + 1 ){ 1391 `yy_acû± ( yypP¬£r ); 1393 } } 1398  $yy_·r£_çžed ( 1399 yyP¬£r * yypP¬£r 1401 cÚfig·r£rARG_FETCH ; 1402 #iâdeà NDEBUG 1403 ifÐ yyT¿ûFILE ){ 1404 `årštf ( yyT¿ûFILE ,"%sFaž!\n", yyT¿ûProm± ); 1407  yypP¬£r -> yyidx >=0 ) `yy_pÝ_·r£r_¡ack (yypParser); 1412 ùx -> ok = 0; 1415 cÚfig·r£rARG_STORE ; 1416 } } 1421  $yy_syÁax_”rÜ ( 1422 yyP¬£r * yypP¬£r , 1423  yymajÜ , 1424 YYMINORTYPE yymšÜ 1426 cÚfig·r£rARG_FETCH ; 1427  #TOKEN ( yymšÜ . yy0 ) ) 1428 cÚfig·r£rARG_STORE ; 1429 } } 1434  $yy_acû± ( 1435 yyP¬£r * yypP¬£r 1437 cÚfig·r£rARG_FETCH ; 1438 #iâdeà NDEBUG 1439 ifÐ yyT¿ûFILE ){ 1440 `årštf ( yyT¿ûFILE ,"%sAcû±!\n", yyT¿ûProm± ); 1443  yypP¬£r -> yyidx >=0 ) `yy_pÝ_·r£r_¡ack (yypParser); 1446 cÚfig·r£rARG_STORE ; 1447 } } 1468  $cÚfig·r£r ( 1469 * yyp , 1470  yymajÜ , 1471 cÚfig·r£rTOKENTYPE yymšÜ 1472 cÚfig·r£rARG_PDECL 1474 YYMINORTYPE yymšÜuniÚ ; 1475  yyaù ; 1476  yy’dofšput ; 1477  yy”rÜh™ = 0; 1478 yyP¬£r * yypP¬£r ; 1481 yypP¬£r = ( yyP¬£r *) yyp ; 1482 ifÐ yypP¬£r -> yyidx <0 ){ 1483 ifÐ yymajÜ ==0 ) ; 1484 yypP¬£r -> yyidx = 0; 1485 yypP¬£r -> yy”rút = -1; 1486 yypP¬£r -> yy¡ack [0]. ¡©’o = 0; 1487 yypP¬£r -> yy¡ack [0]. majÜ = 0; 1489 yymšÜuniÚ . yy0 = yymšÜ ; 1490 yy’dofšput = ( yymajÜ ==0); 1491 cÚfig·r£rARG_STORE ; 1493 #iâdeà NDEBUG 1494 ifÐ yyT¿ûFILE ){ 1495 `årštf ( yyT¿ûFILE ,"%sIÅuˆ%s\n", yyT¿ûProm± , yyTok’Name [ yymajÜ ]); 1500 yyaù = `yy_fšd_shiá_aùiÚ ( yypP¬£r , yymajÜ ); 1501 ifÐ yyaù < YYNSTATE ){ 1502 `yy_shiá ( yypP¬£r , yyaù , yymajÜ ,& yymšÜuniÚ ); 1503 yypP¬£r -> yy”rút --; 1504 ifÐ yy’dofšput && yypP¬£r -> yyidx >=0 ){ 1505 yymajÜ = 0; 1507 yymajÜ = YYNOCODE ; 1509 } ifÐ yyaù < YYNSTATE + YYNRULE ){ 1510 `yy_»duû ( yypP¬£r , yyaù - YYNSTATE ); 1511 } ifÐ yyaù =ð YY_ERROR_ACTION ){ 1512  yymx ; 1513 #iâdeà NDEBUG 1514 ifÐ yyT¿ûFILE ){ 1515 `årštf ( yyT¿ûFILE ,"%sSyÁax E¼Ü!\n", yyT¿ûProm± ); 1518 #ifdeà YYERRORSYMBOL 1538 ifÐ yypP¬£r -> yy”rút <0 ){ 1539 `yy_syÁax_”rÜ ( yypP¬£r , yymajÜ , yymšÜuniÚ ); 1541 yymx = yypP¬£r -> yy¡ack [yypP¬£r-> yyidx ]. majÜ ; 1542 ifÐ yymx == YYERRORSYMBOL || yy”rÜh™ ){ 1543 #iâdeà NDEBUG 1544 ifÐ yyT¿ûFILE ){ 1545 `årštf ( yyT¿ûFILE ,"%sDiscard inputoken %s\n", 1546 yyT¿ûProm± , yyTok’Name [ yymajÜ ]); 1549 `yy_de¡ruùÜ ( yymajÜ ,& yymšÜuniÚ ); 1550 yymajÜ = YYNOCODE ; 1553 yypP¬£r -> yyidx >= 0 && 1554 yymx !ð YYERRORSYMBOL && 1555 ( yyaù = `yy_fšd_shiá_aùiÚ ( yypP¬£r , YYERRORSYMBOL )è>ð YYNSTATE 1557 `yy_pÝ_·r£r_¡ack ( yypP¬£r ); 1559 ifÐ yypP¬£r -> yyidx < 0 || yymajÜ ==0 ){ 1560 `yy_de¡ruùÜ ( yymajÜ ,& yymšÜuniÚ ); 1561 `yy_·r£_çžed ( yypP¬£r ); 1562 yymajÜ = YYNOCODE ; 1563 } ifÐ yymx != YYERRORSYMBOL ){ 1564 YYMINORTYPE u2 ; 1565 u2 . YYERRSYMDT = 0; 1566 `yy_shiá ( yypP¬£r , yyaù , YYERRORSYMBOL ,& u2 ); 1569 yypP¬£r -> yy”rút = 3; 1570 yy”rÜh™ = 1; 1581 ifÐ yypP¬£r -> yy”rút <=0 ){ 1582 `yy_syÁax_”rÜ ( yypP¬£r , yymajÜ , yymšÜuniÚ ); 1584 yypP¬£r -> yy”rút = 3; 1585 `yy_de¡ruùÜ ( yymajÜ ,& yymšÜuniÚ ); 1586 ifÐ yy’dofšput ){ 1587 `yy_·r£_çžed ( yypP¬£r ); 1589 yymajÜ = YYNOCODE ; 1592 `yy_acû± ( yypP¬£r ); 1593 yymajÜ = YYNOCODE ; 1595 } yymajÜ != YYNOCODE && yypP¬£r -> yyidx >=0 ); 1597 } } @src/configparser.h 1  #TK_EOL 1 ) 2  #TK_ASSIGN 2 ) 3  #TK_APPEND 3 ) 4  #TK_LKEY 4 ) 5  #TK_PLUS 5 ) 6  #TK_STRING 6 ) 7  #TK_INTEGER 7 ) 8  #TK_LPARAN 8 ) 9  #TK_RPARAN 9 ) 10  #TK_COMMA 10 ) 11  #TK_ARRAY_ASSIGN 11 ) 12  #TK_GLOBAL 12 ) 13  #TK_LCURLY 13 ) 14  #TK_RCURLY 14 ) 15  #TK_ELSE 15 ) 16  #TK_DOLLAR 16 ) 17  #TK_SRVVARNAME 17 ) 18  #TK_LBRACKET 18 ) 19  #TK_RBRACKET 19 ) 20  #TK_EQ 20 ) 21  #TK_MATCH 21 ) 22  #TK_NE 22 ) 23  #TK_NOMATCH 23 ) 24  #TK_INCLUDE 24 ) 25  #TK_INCLUDE_SHELL 25 ) @src/connections-glue.c 1  ~"ba£.h " 3 cÚ¡ * $cÚÃùiÚ_g‘_¡©e ( cÚÃùiÚ_¡©e_t ¡©e ) { 4  ¡©e ) { 5  CON_STATE_CONNECT :  "connect"; 6  CON_STATE_READ :  "read"; 7  CON_STATE_READ_POST :  "readpost"; 8  CON_STATE_WRITE :  "write"; 9  CON_STATE_CLOSE :  "close"; 10  CON_STATE_ERROR :  "error"; 11  CON_STATE_HANDLE_REQUEST :  "handle-req"; 12  CON_STATE_REQUEST_START :  "req-start"; 13  CON_STATE_REQUEST_END :  "req-end"; 14  CON_STATE_RESPONSE_START :  "resp-start"; 15  CON_STATE_RESPONSE_END :  "resp-end"; 18 } } 20 cÚ¡ * $cÚÃùiÚ_g‘_shÜt_¡©e ( cÚÃùiÚ_¡©e_t ¡©e ) { 21  ¡©e ) { 22  CON_STATE_CONNECT :  "."; 23  CON_STATE_READ :  "r"; 24  CON_STATE_READ_POST :  "R"; 25  CON_STATE_WRITE :  "W"; 26  CON_STATE_CLOSE :  "C"; 27  CON_STATE_ERROR :  "E"; 28  CON_STATE_HANDLE_REQUEST :  "h"; 29  CON_STATE_REQUEST_START :  "q"; 30  CON_STATE_REQUEST_END :  "Q"; 31  CON_STATE_RESPONSE_START :  "s"; 32  CON_STATE_RESPONSE_END :  "S"; 35 } } 37  $cÚÃùiÚ_£t_¡©e ( £rv” * ¤v , cÚÃùiÚ * cÚ , cÚÃùiÚ_¡©e_t ¡©e ) { 38 `UNUSED ( ¤v ); 40 cÚ -> ¡©e = state; 43 } } @src/connections.c 1  ~ 3  ~<¡dlib.h > 4  ~<¡dio.h > 5  ~ 6  ~<”ºo.h > 7  ~<¡ršg.h > 8  ~ 9  ~ 11  ~"bufãr.h " 12  ~"£rv”.h " 13  ~"log.h " 14  ~"cÚÃùiÚs.h " 15  ~"fdev’t.h " 17  ~"»que¡.h " 18  ~"»¥Ú£.h " 19  ~"ÃtwÜk.h " 20  ~"h‰p_chunk.h " 21  ~"¡©_ÿche.h " 22  ~"jobli¡.h " 24  ~"¶ugš.h " 26  ~"š‘_ÁÝ_ÿche.h " 28 #ifdeà USE_OPENSSL 29  ~<Ý’s¦/s¦.h > 30  ~<Ý’s¦/”r.h > 33 #ifdeà HAVE_SYS_FILIO_H 34  ~ 37  ~"sys-sock‘.h " 40 mPLUGIN_DATA ; 41 } t¶ugš_d©a ; 43  cÚÃùiÚ * $cÚÃùiÚs_g‘_Ãw_cÚÃùiÚ ( £rv” * ¤v ) { 44 cÚÃùiÚs * cÚns = ¤v ->conns; 45 size_t i ; 47 ià( cÚns -> size == 0) { 48 cÚns -> size = 128; 49 cÚns -> ±r = NULL ; 50 cÚns -> ±r = `m®loc ((*cÚns->±rè* cÚns-> size ); 51  i = 0; i < cÚns -> size ; i++) { 52 cÚns -> ±r [ i ] = `cÚÃùiÚ_š™ ( ¤v ); 54 } ià( cÚns -> size =ðcÚns-> u£d ) { 55 cÚns -> size += 128; 56 cÚns -> ±r = `»®loc (cÚns->±r, (*cÚns->±rè* cÚns-> size ); 58  i = cÚns -> u£d ; i < cÚns-> size ; i++) { 59 cÚns -> ±r [ i ] = `cÚÃùiÚ_š™ ( ¤v ); 63 `cÚÃùiÚ_»£t ( ¤v , cÚns -> ±r [cÚns-> u£d ]); 65 `årštf ( ¡d”r , "%s.%d:‡dd: ", __FILE__ , __LINE__ ); 66  i = 0; i < cÚns -> u£d + 1; i++) { 67 `årštf ( ¡d”r , "%d ", cÚns -> ±r [ i ]-> fd ); 69 `årštf ( ¡d”r , "\n"); 72 cÚns -> ±r [cÚns-> u£d ]-> ndx = conns->used; 73  cÚns -> ±r [cÚns-> u£d ++]; 74 } } 76  $cÚÃùiÚ_d– ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 77 size_t i ; 78 cÚÃùiÚs * cÚns = ¤v ->conns; 79 cÚÃùiÚ * ‹mp ; 81 ià( cÚ =ð NULL )  -1; 83 ià(-1 =ð cÚ -> ndx )  -1; 85 i = cÚ -> ndx ; 89 ià( i !ð cÚns -> u£d - 1) { 90 ‹mp = cÚns -> ±r [ i ]; 91 cÚns -> ±r [ i ] = cÚns->±r[cÚns-> u£d - 1]; 92 cÚns -> ±r [cÚns-> u£d - 1] = ‹mp ; 94 cÚns -> ±r [ i ]-> ndx = i; 95 cÚns -> ±r [cÚns-> u£d - 1]-> ndx = -1; 98 cÚns -> u£d --; 100 cÚ -> ndx = -1; 102 `årštf ( ¡d”r , "%s.%d: d–: (%d)", __FILE__ , __LINE__ , cÚns -> u£d ); 103  i = 0; i < cÚns -> u£d ; i++) { 104 `årštf ( ¡d”r , "%d ", cÚns -> ±r [ i ]-> fd ); 106 `årštf ( ¡d”r , "\n"); 109 } } 111  $cÚÃùiÚ_þo£ ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 112 #ifdeà USE_OPENSSL 113 £rv”_sock‘ * ¤v_sock = cÚ -> ¤v_sock‘ ; 116 #ifdeà USE_OPENSSL 117 ià( ¤v_sock -> is_s¦ ) { 118 ià( cÚ -> s¦ è `SSL_ä“ (con->ssl); 119 cÚ -> s¦ = NULL ; 123 `fdev’t_ev’t_d– ( ¤v -> ev , &( cÚ -> fde_ndx ), cÚ-> fd ); 124 `fdev’t_uÄegi¡” ( ¤v -> ev , cÚ -> fd ); 125 #ifdeà __WIN32 126 ià( `þo£sock‘ ( cÚ -> fd )) { 127 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 128 "(w¬nšgèþo£:", cÚ -> fd , `¡»¼Ü ( ”ºo )); 131 ià( `þo£ ( cÚ -> fd )) { 132 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 133 "(w¬nšgèþo£:", cÚ -> fd , `¡»¼Ü ( ”ºo )); 137 ¤v -> cur_fds --; 139 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 140 "þo£d()", cÚ -> fd ); 143 `cÚÃùiÚ_d– ( ¤v , cÚ ); 144 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_CONNECT ); 147 } } 150  $dump_·ck‘ (cÚ¡ * d©a , size_t Ën ) { 151 size_t i , j ; 153 ià( Ën == 0) ; 155  i = 0; i < Ën ; i++) { 156 ià( i % 16 =ð0è `årštf ( ¡d”r , " "); 158 `årštf ( ¡d”r , "%02x ", d©a [ i ]); 160 ià(( i + 1) % 16 == 0) { 161 `årštf ( ¡d”r , " "); 162  j = 0; j <ð i % 16; j++) { 163  c ; 165 ià( i -15+ j >ð Ën ) ; 167 c = d©a [ i -15+ j ]; 169 `årštf ( ¡d”r , "%c", c > 32 && c < 128 ? c : '.'); 172 `årštf ( ¡d”r , "\n"); 176 ià( Ën % 16 != 0) { 177  j = i % 16; j < 16; j++) { 178 `årštf ( ¡d”r , " "); 181 `årštf ( ¡d”r , " "); 182  j = i & ~0xf; j < Ën ; j++) { 183  c ; 185 c = d©a [ j ]; 186 `årštf ( ¡d”r , "%c", c > 32 && c < 128 ? c : '.'); 188 `årštf ( ¡d”r , "\n"); 190 } } 193  $cÚÃùiÚ_hªdË_»ad_s¦ ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 194 #ifdeà USE_OPENSSL 195  r , s¦_”r , Ën ; 196 bufãr * b = NULL ; 198 ià(! cÚ -> cÚf . is_s¦ )  -1; 203 ià(! cÚ -> s¦_”rÜ_wªt_»u£_bufãr ) { 204 b = `bufãr_š™ (); 205 `bufãr_´•¬e_cÝy ( b , `SSL_³ndšg ( cÚ -> s¦ ) + (16 * 1024)); 208 `mem£t ( b -> ±r , 0, b-> size ); 210 b = cÚ -> s¦_”rÜ_wªt_»u£_bufãr ; 213 Ën = `SSL_»ad ( cÚ -> s¦ , b -> ±r , b-> size - 1); 214 cÚ -> s¦_”rÜ_wªt_»u£_bufãr = NULL ; 216 ià( Ën > 0) { 217 b -> u£d = Ën ; 218 b -> ±r [b-> u£d ++] = '\0'; 222 `chunkqueue_­³nd_bufãr_w—k ( cÚ -> »ad_queue , b ); 223 cÚ -> by‹s_»ad +ð Ën ; 224 b = NULL ; 226 }  Ën > 0); 229 ià( Ën < 0) { 230 ( r = `SSL_g‘_”rÜ ( cÚ -> s¦ , Ën ))) { 231  SSL_ERROR_WANT_READ : 232  SSL_ERROR_WANT_WRITE : 233 cÚ -> is_»adabË = 0; 234 cÚ -> s¦_”rÜ_wªt_»u£_bufãr = b ; 236 b = NULL ; 240  SSL_ERROR_SYSCALL : 253 ( s¦_”r = `ERR_g‘_”rÜ ())) { 255 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", "SSL:", 256 r , `ERR_”rÜ_¡ršg ( s¦_”r , NULL )); 259  ”ºo ) { 261 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sddds", "SSL:", 262 Ën , r , ”ºo , 263 `¡»¼Ü ( ”ºo )); 268  SSL_ERROR_ZERO_RETURN : 271 ià( r == 0) { 277 ( s¦_”r = `ERR_g‘_”rÜ ())) { 279 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", "SSL:", 280 r , `ERR_”rÜ_¡ršg ( s¦_”r , NULL )); 285 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 287 `bufãr_ä“ ( b ); 290 } ià( Ën == 0) { 291 cÚ -> is_»adabË = 0; 295 `bufãr_ä“ ( b ); 304 } } 306  $cÚÃùiÚ_hªdË_»ad ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 307  Ën ; 308 bufãr * b ; 309  tÜ—d ; 311 ià( cÚ -> cÚf . is_s¦ ) { 312  `cÚÃùiÚ_hªdË_»ad_s¦ ( ¤v , cÚ ); 315 #ià `defšed ( __WIN32 ) 316 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> »ad_queue ); 317 `bufãr_´•¬e_cÝy ( b , 4 * 1024); 318 Ën = `»cv ( cÚ -> fd , b -> ±r , b-> size - 1, 0); 320 ià( `ioùl ( cÚ -> fd , FIONREAD , & tÜ—d )) { 321 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 323 cÚ -> fd ); 326 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> »ad_queue ); 327 `bufãr_´•¬e_cÝy ( b , tÜ—d + 1); 329 Ën = `»ad ( cÚ -> fd , b -> ±r , b-> size - 1); 332 ià( Ën < 0) { 333 cÚ -> is_»adabË = 0; 335 ià( ”ºo =ð EAGAIN )  0; 336 ià( ”ºo =ð EINTR ) { 338 cÚ -> is_»adabË = 1; 342 ià( ”ºo !ð ECONNRESET ) { 344 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", "cÚÃùiÚ clo£d -„—d fažed: ", `¡»¼Ü ( ”ºo ),ƒrrno); 347 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 350 } ià( Ën == 0) { 351 cÚ -> is_»adabË = 0; 357 } ià(( size_t ) Ën < b -> size - 1) { 360 cÚ -> is_»adabË = 0; 363 b -> u£d = Ën ; 364 b -> ±r [b-> u£d ++] = '\0'; 366 cÚ -> by‹s_»ad +ð Ën ; 368 `dump_·ck‘ ( b -> ±r , Ën ); 372 } } 374  $cÚÃùiÚ_hªdË_wr™e_´•¬e ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 375 ià( cÚ -> mode =ð DIRECT ) { 377  cÚ -> »que¡ . h‰p_m‘hod ) { 378  HTTP_METHOD_GET : 379  HTTP_METHOD_POST : 380  HTTP_METHOD_HEAD : 381  HTTP_METHOD_PUT : 382  HTTP_METHOD_MKCOL : 383  HTTP_METHOD_DELETE : 384  HTTP_METHOD_COPY : 385  HTTP_METHOD_MOVE : 386  HTTP_METHOD_PROPFIND : 387  HTTP_METHOD_PROPPATCH : 388  HTTP_METHOD_LOCK : 389  HTTP_METHOD_UNLOCK : 391  HTTP_METHOD_OPTIONS : 397 ià((! cÚ -> h‰p_¡©us || cÚ->h‰p_¡©u =ð200è&& cÚ-> uri . ·th -> u£d && 398 cÚ -> uri . ·th -> ±r [0] != '*') { 399 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("Allow"), CONST_STR_LEN("OPTIONS, GET, HEAD, POST")); 401 cÚ -> »¥Ú£ . Œªsãr_’codšg &ð~ HTTP_TRANSFER_ENCODING_CHUNKED ; 402 cÚ -> ·r£d_»¥Ú£ &ð~ HTTP_CONTENT_LENGTH ; 404 cÚ -> h‰p_¡©us = 200; 405 cÚ -> fže_fšished = 1; 407 `chunkqueue_»£t ( cÚ -> wr™e_queue ); 411  cÚ -> h‰p_¡©us ) { 418 cÚ -> h‰p_¡©us = 501; 425 ià( cÚ -> h‰p_¡©us == 0) { 426 cÚ -> h‰p_¡©us = 403; 429  cÚ -> h‰p_¡©us ) { 443 ià( cÚ -> mode !ð DIRECT ) ; 445 cÚ -> fže_fšished = 0; 447 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 450 ià(! `bufãr_is_em±y ( cÚ -> cÚf . ”rÜfže_´efix )) { 451 ¡©_ÿche_’Œy * sû = NULL ; 453 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ·th , cÚ-> cÚf . ”rÜfže_´efix ); 454 `bufãr_­³nd_¡ršg ( cÚ -> physiÿl . ·th , `g‘_h‰p_¡©us_body_Çme (cÚ-> h‰p_¡©us )); 456 ià( HANDLER_ERROR !ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , cÚ-> physiÿl . ·th , & sû )) { 457 cÚ -> fže_fšished = 1; 459 `h‰p_chunk_­³nd_fže ( ¤v , cÚ , cÚ-> physiÿl . ·th , 0, sû -> ¡ . ¡_size ); 460 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("CÚ‹Á-Ty³"), `CONST_BUF_LEN ( sû -> cÚ‹Á_ty³ )); 464 ià(! cÚ -> fže_fšished ) { 465 bufãr * b ; 467 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 469 cÚ -> fže_fšished = 1; 470 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 473 `bufãr_cÝy_¡ršg ( b , 480 `bufãr_­³nd_lÚg ( b , cÚ -> h‰p_¡©us ); 481 `bufãr_­³nd_¡ršg ( b , " - "); 482 `bufãr_­³nd_¡ršg ( b , `g‘_h‰p_¡©us_Çme ( cÚ -> h‰p_¡©us )); 484 `bufãr_­³nd_¡ršg ( b , 489 `bufãr_­³nd_lÚg ( b , cÚ -> h‰p_¡©us ); 490 `bufãr_­³nd_¡ršg ( b , " - "); 491 `bufãr_­³nd_¡ršg ( b , `g‘_h‰p_¡©us_Çme ( cÚ -> h‰p_¡©us )); 493 `bufãr_­³nd_¡ršg ( b ,"\n" 498 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Content-Type"), CONST_STR_LEN("text/html")); 518 cÚ -> »¥Ú£ . Œªsãr_’codšg &ð~ HTTP_TRANSFER_ENCODING_CHUNKED ; 519 cÚ -> ·r£d_»¥Ú£ &ð~ HTTP_CONTENT_LENGTH ; 520 `chunkqueue_»£t ( cÚ -> wr™e_queue ); 522 cÚ -> fže_fšished = 1; 526 ià( cÚ -> fže_fšished ) { 529 ià((!( cÚ -> ·r£d_»¥Ú£ & HTTP_CONTENT_LENGTH )) && 530 ( cÚ -> »¥Ú£ . Œªsãr_’codšg & HTTP_TRANSFER_ENCODING_CHUNKED ) == 0) { 531 off_t qËn = `chunkqueue_Ëngth ( cÚ -> wr™e_queue ); 541 ià(( cÚ -> h‰p_¡©us >= 100 && con->http_status < 200) || 542 cÚ -> h‰p_¡©us == 204 || 543 cÚ -> h‰p_¡©us == 304) { 544 d©a_¡ršg * ds ; 546 ià( NULL !ð( ds = ( d©a_¡ršg *è `¬¿y_g‘_–em’t ( cÚ -> »¥Ú£ . h—d”s , "Content-Length"))) { 547 `bufãr_»£t ( ds -> v®ue ); 549 } ià( qËn > 0 || cÚ -> »que¡ . h‰p_m‘hod !ð HTTP_METHOD_HEAD ) { 553 `bufãr_cÝy_off_t ( ¤v -> tmp_buf , qËn ); 555 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("CÚ‹Á-L’gth"), `CONST_BUF_LEN (¤v-> tmp_buf )); 567 ià((( cÚ -> ·r£d_»¥Ú£ & HTTP_CONTENT_LENGTH ) == 0) && 568 (( cÚ -> »¥Ú£ . Œªsãr_’codšg & HTTP_TRANSFER_ENCODING_CHUNKED ) == 0)) { 569 cÚ -> k“p_®ive = 0; 581 ià( cÚ -> ·r£d_»¥Ú£ & HTTP_CONNECTION ) { 583 ià( cÚ -> k“p_®ive && !cÚ-> »¥Ú£ .keep_alive) { 584 cÚ -> k“p_®ive = 0; 589 ià( cÚ -> »que¡ . h‰p_m‘hod =ð HTTP_METHOD_HEAD ) { 594 cÚ -> fže_fšished = 1; 596 `chunkqueue_»£t ( cÚ -> wr™e_queue ); 597 cÚ -> »¥Ú£ . Œªsãr_’codšg &ð~ HTTP_TRANSFER_ENCODING_CHUNKED ; 600 `h‰p_»¥Ú£_wr™e_h—d” ( ¤v , cÚ ); 603 } } 605  $cÚÃùiÚ_hªdË_wr™e ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 606  `ÃtwÜk_wr™e_chunkqueue ( ¤v , cÚ , cÚ-> wr™e_queue )) { 608 ià( cÚ -> fže_fšished ) { 609 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_RESPONSE_END ); 610 `jobli¡_­³nd ( ¤v , cÚ ); 614 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 615 "cÚÃùiÚ clo£d: wr™çžed oÀfd", cÚ -> fd ); 616 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 617 `jobli¡_­³nd ( ¤v , cÚ ); 620 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 621 `jobli¡_­³nd ( ¤v , cÚ ); 624 cÚ -> is_wr™abË = 0; 631 } } 635 cÚÃùiÚ * $cÚÃùiÚ_š™ ( £rv” * ¤v ) { 636 cÚÃùiÚ * cÚ ; 638 `UNUSED ( ¤v ); 640 cÚ = `ÿÎoc (1, (*con)); 642 cÚ -> fd = 0; 643 cÚ -> ndx = -1; 644 cÚ -> fde_ndx = -1; 645 cÚ -> by‹s_wr™‹n = 0; 646 cÚ -> by‹s_»ad = 0; 647 cÚ -> by‹s_h—d” = 0; 648 cÚ -> loÝs_³r_»que¡ = 0; 650  #CLEAN ( x ) \ 651 cÚ -> x = `bufãr_š™ (); ) 653 `CLEAN ( »que¡ . uri ); 654 `CLEAN ( »que¡ . »que¡_lše ); 655 `CLEAN ( »que¡ .request); 656 `CLEAN ( »que¡ . ·thšfo ); 658 `CLEAN ( »que¡ . Üig_uri ); 660 `CLEAN ( uri . scheme ); 661 `CLEAN ( uri . authÜ™y ); 662 `CLEAN ( uri . ·th ); 663 `CLEAN ( uri . ·th_¿w ); 664 `CLEAN ( uri . qu”y ); 666 `CLEAN ( physiÿl . doc_roÙ ); 667 `CLEAN ( physiÿl . ·th ); 668 `CLEAN ( physiÿl . ba£dœ ); 669 `CLEAN ( physiÿl . »l_·th ); 670 `CLEAN ( physiÿl . ‘ag ); 671 `CLEAN ( ·r£_»que¡ ); 673 `CLEAN ( authed_u£r ); 674 `CLEAN ( £rv”_Çme ); 675 `CLEAN ( ”rÜ_hªdËr ); 676 `CLEAN ( d¡_addr_buf ); 678 #undeà CLEAN 679 cÚ -> wr™e_queue = `chunkqueue_š™ (); 680 cÚ -> »ad_queue = `chunkqueue_š™ (); 681 cÚ -> »que¡_cÚ‹Á_queue = `chunkqueue_š™ (); 682 `chunkqueue_£t_‹mpdœs ( cÚ -> »que¡_cÚ‹Á_queue , ¤v -> ¤vcÚf . u¶ßd_‹mpdœs ); 684 cÚ -> »que¡ . h—d”s = `¬¿y_š™ (); 685 cÚ -> »¥Ú£ . h—d”s = `¬¿y_š™ (); 686 cÚ -> ’vœÚm’t = `¬¿y_š™ (); 690 cÚ -> ¶ugš_ùx = `ÿÎoc (1, ( ¤v -> ¶ugšs . u£d + 1) * (*)); 692 cÚ -> cÚd_ÿche = `ÿÎoc ( ¤v -> cÚfig_cÚ‹xt -> u£d , ( cÚd_ÿche_t )); 693 `cÚfig_£tup_cÚÃùiÚ ( ¤v , cÚ ); 695  cÚ ; 696 } } 698  $cÚÃùiÚs_ä“ ( £rv” * ¤v ) { 699 cÚÃùiÚs * cÚns = ¤v ->conns; 700 size_t i ; 702  i = 0; i < cÚns -> size ; i++) { 703 cÚÃùiÚ * cÚ = cÚns -> ±r [ i ]; 705 `cÚÃùiÚ_»£t ( ¤v , cÚ ); 707 `chunkqueue_ä“ ( cÚ -> wr™e_queue ); 708 `chunkqueue_ä“ ( cÚ -> »ad_queue ); 709 `chunkqueue_ä“ ( cÚ -> »que¡_cÚ‹Á_queue ); 710 `¬¿y_ä“ ( cÚ -> »que¡ . h—d”s ); 711 `¬¿y_ä“ ( cÚ -> »¥Ú£ . h—d”s ); 712 `¬¿y_ä“ ( cÚ -> ’vœÚm’t ); 714  #CLEAN ( x ) \ 715 `bufãr_ä“ ( cÚ -> x ); ) 717 `CLEAN ( »que¡ . uri ); 718 `CLEAN ( »que¡ . »que¡_lše ); 719 `CLEAN ( »que¡ .request); 720 `CLEAN ( »que¡ . ·thšfo ); 722 `CLEAN ( »que¡ . Üig_uri ); 724 `CLEAN ( uri . scheme ); 725 `CLEAN ( uri . authÜ™y ); 726 `CLEAN ( uri . ·th ); 727 `CLEAN ( uri . ·th_¿w ); 728 `CLEAN ( uri . qu”y ); 730 `CLEAN ( physiÿl . doc_roÙ ); 731 `CLEAN ( physiÿl . ·th ); 732 `CLEAN ( physiÿl . ba£dœ ); 733 `CLEAN ( physiÿl . ‘ag ); 734 `CLEAN ( physiÿl . »l_·th ); 735 `CLEAN ( ·r£_»que¡ ); 737 `CLEAN ( authed_u£r ); 738 `CLEAN ( £rv”_Çme ); 739 `CLEAN ( ”rÜ_hªdËr ); 740 `CLEAN ( d¡_addr_buf ); 741 #undeà CLEAN 742 `ä“ ( cÚ -> ¶ugš_ùx ); 743 `ä“ ( cÚ -> cÚd_ÿche ); 745 `ä“ ( cÚ ); 748 `ä“ ( cÚns -> ±r ); 749 } } 752  $cÚÃùiÚ_»£t ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 753 size_t i ; 755 `¶ugšs_ÿÎ_cÚÃùiÚ_»£t ( ¤v , cÚ ); 757 cÚ -> is_»adabË = 1; 758 cÚ -> is_wr™abË = 1; 759 cÚ -> h‰p_¡©us = 0; 760 cÚ -> fže_fšished = 0; 761 cÚ -> fže_¡¬‹d = 0; 762 cÚ -> gÙ_»¥Ú£ = 0; 764 cÚ -> ·r£d_»¥Ú£ = 0; 766 cÚ -> by‹s_wr™‹n = 0; 767 cÚ -> by‹s_wr™‹n_cur_£cÚd = 0; 768 cÚ -> by‹s_»ad = 0; 769 cÚ -> by‹s_h—d” = 0; 770 cÚ -> loÝs_³r_»que¡ = 0; 772 cÚ -> »que¡ . h‰p_m‘hod = HTTP_METHOD_UNSET ; 773 cÚ -> »que¡ . h‰p_v”siÚ = HTTP_VERSION_UNSET ; 775 cÚ -> »que¡ . h‰p_if_modif›d_sšû = NULL ; 776 cÚ -> »que¡ . h‰p_if_nÚe_m©ch = NULL ; 778 cÚ -> »¥Ú£ . k“p_®ive = 0; 779 cÚ -> »¥Ú£ . cÚ‹Á_Ëngth = -1; 780 cÚ -> »¥Ú£ . Œªsãr_’codšg = 0; 782 cÚ -> mode = DIRECT ; 784  #CLEAN ( x ) \ 785 ià( cÚ -> x è `bufãr_»£t (cÚ->x); ) 787 `CLEAN ( »que¡ . uri ); 788 `CLEAN ( »que¡ . »que¡_lše ); 789 `CLEAN ( »que¡ . ·thšfo ); 790 `CLEAN ( »que¡ .request); 792 `CLEAN ( »que¡ . Üig_uri ); 794 `CLEAN ( uri . scheme ); 795 `CLEAN ( uri . authÜ™y ); 796 `CLEAN ( uri . ·th ); 797 `CLEAN ( uri . ·th_¿w ); 798 `CLEAN ( uri . qu”y ); 800 `CLEAN ( physiÿl . doc_roÙ ); 801 `CLEAN ( physiÿl . ·th ); 802 `CLEAN ( physiÿl . ba£dœ ); 803 `CLEAN ( physiÿl . »l_·th ); 804 `CLEAN ( physiÿl . ‘ag ); 806 `CLEAN ( ·r£_»que¡ ); 808 `CLEAN ( authed_u£r ); 809 `CLEAN ( £rv”_Çme ); 810 `CLEAN ( ”rÜ_hªdËr ); 811 #undeà CLEAN 813  #CLEAN ( x ) \ 814 ià( cÚ -> x ècÚ->x-> u£d = 0; ) 816 #undeà CLEAN 818  #CLEAN ( x ) \ 819 cÚ -> »que¡ . x = NULL ; ) 821 `CLEAN ( h‰p_ho¡ ); 822 `CLEAN ( h‰p_¿nge ); 823 `CLEAN ( h‰p_cÚ‹Á_ty³ ); 824 #undeà CLEAN 825 cÚ -> »que¡ . cÚ‹Á_Ëngth = 0; 827 `¬¿y_»£t ( cÚ -> »que¡ . h—d”s ); 828 `¬¿y_»£t ( cÚ -> »¥Ú£ . h—d”s ); 829 `¬¿y_»£t ( cÚ -> ’vœÚm’t ); 831 `chunkqueue_»£t ( cÚ -> wr™e_queue ); 832 `chunkqueue_»£t ( cÚ -> »que¡_cÚ‹Á_queue ); 835  i = 0; i < ¤v -> ¶ugšs . u£d ; i++) { 836 ¶ugš * p = (Õlugš **)( ¤v -> ¶ugšs . ±r ))[ i ]; 837 ¶ugš_d©a * pd = p -> d©a ; 839 ià(! pd ) ; 841 ià( cÚ -> ¶ugš_ùx [ pd -> id ] !ð NULL ) { 842 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "missšg c˪u°š", p -> Çme ); 845 cÚ -> ¶ugš_ùx [ pd -> id ] = NULL ; 851 #ifdeà USE_OPENSSL 852 ià( cÚ -> s¦_”rÜ_wªt_»u£_bufãr ) { 853 `bufãr_ä“ ( cÚ -> s¦_”rÜ_wªt_»u£_bufãr ); 854 cÚ -> s¦_”rÜ_wªt_»u£_bufãr = NULL ; 858 cÚ -> h—d”_Ën = 0; 859 cÚ -> š_”rÜ_hªdËr = 0; 861 `cÚfig_£tup_cÚÃùiÚ ( ¤v , cÚ ); 864 } } 871  $cÚÃùiÚ_hªdË_»ad_¡©e ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 872 cÚÃùiÚ_¡©e_t o¡©e = cÚ -> ¡©e ; 873 chunk * c , * Ï¡_chunk ; 874 off_t Ï¡_off£t ; 875 chunkqueue * cq = cÚ -> »ad_queue ; 876 chunkqueue * d¡_cq = cÚ -> »que¡_cÚ‹Á_queue ; 877  is_þo£d = 0; 879 ià( cÚ -> is_»adabË ) { 880 cÚ -> »ad_idË_ts = ¤v -> cur_ts ; 882  `cÚÃùiÚ_hªdË_»ad ( ¤v , cÚ )) { 886 is_þo£d = 1; 894  c = cq -> fœ¡ ; c;) { 895 ià( cq -> fœ¡ =ð c && c-> mem -> u£d == 0) { 899 cq -> fœ¡ = c -> Ãxt ; 900 ià( cq -> fœ¡ =ð NULL ècq-> Ï¡ = NULL; 902 c -> Ãxt = cq -> unu£d ; 903 cq -> unu£d = c ; 904 cq -> unu£d_chunks ++; 906 c = cq -> fœ¡ ; 907 } ià( c -> Ãxt && c->Ãxt-> mem -> u£d == 0) { 908 chunk * fc ; 912 fc = c -> Ãxt ; 913 c -> Ãxt = fc ->next; 915 fc -> Ãxt = cq -> unu£d ; 916 cq -> unu£d = fc ; 917 cq -> unu£d_chunks ++; 920 ià( c -> Ãxt =ð NULL ) { 921 cq -> Ï¡ = c ; 924 c = c-> Ãxt ; 926 c = c-> Ãxt ; 933  o¡©e ) { 934  CON_STATE_READ : 943 Ï¡_chunk = NULL ; 944 Ï¡_off£t = 0; 946  c = cq -> fœ¡ ; ! Ï¡_chunk && c; c = c-> Ãxt ) { 947 bufãr b ; 948 size_t i ; 950 b . ±r = c -> mem ->±¸+ c-> off£t ; 951 b . u£d = c -> mem ->u£d - c-> off£t ; 953  i = 0; ! Ï¡_chunk && i < b . u£d ; i++) { 954  ch = b . ±r [ i ]; 955 size_t have_ch¬s = 0; 957  ch ) { 960 have_ch¬s = b . u£d - i - 1; 962 ià( have_ch¬s >= 4) { 965 ià(0 =ð `¡ºcmp ( b . ±r + i , "\r\n\r\n", 4)) { 967 Ï¡_chunk = c ; 968 Ï¡_off£t = i + 4; 973 chunk * lookah—d_chunk = c -> Ãxt ; 974 size_t missšg_ch¬s ; 977 missšg_ch¬s = 4 - have_ch¬s ; 979 ià( lookah—d_chunk &&†ookah—d_chunk-> ty³ =ð MEM_CHUNK ) { 982 ià( lookah—d_chunk -> mem -> u£d > missšg_ch¬s ) { 983 ià(0 =ð `¡ºcmp ( b . ±r + i , "\r\n\r\n", have_ch¬s ) && 984 0 =ð `¡ºcmp ( lookah—d_chunk -> mem -> ±r , "\r\n\r\n" + have_ch¬s , missšg_ch¬s )) { 986 Ï¡_chunk = lookah—d_chunk ; 987 Ï¡_off£t = missšg_ch¬s ; 1004 ià( Ï¡_chunk ) { 1005 `bufãr_»£t ( cÚ -> »que¡ .request); 1007  c = cq -> fœ¡ ; c; c = c-> Ãxt ) { 1008 bufãr b ; 1010 b . ±r = c -> mem ->±¸+ c-> off£t ; 1011 b . u£d = c -> mem ->u£d - c-> off£t ; 1013 ià( c =ð Ï¡_chunk ) { 1014 b . u£d = Ï¡_off£t + 1; 1017 `bufãr_­³nd_¡ršg_bufãr ( cÚ -> »que¡ .»que¡, & b ); 1019 ià( c =ð Ï¡_chunk ) { 1020 c -> off£t +ð Ï¡_off£t ; 1025 c -> off£t = c-> mem -> u£d - 1; 1029 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_REQUEST_END ); 1030 } ià( `chunkqueue_Ëngth ( cq ) > 64 * 1024) { 1031 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "oversized„equest-header -> sending Status 414"); 1033 cÚ -> h‰p_¡©us = 414; 1034 cÚ -> k“p_®ive = 0; 1035 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 1038  CON_STATE_READ_POST : 1039  c = cq -> fœ¡ ; c && ( d¡_cq -> by‹s_š !ð( off_t ) cÚ -> »que¡ . cÚ‹Á_Ëngth ); c = c-> Ãxt ) { 1040 off_t weWªt , weHave , toR—d ; 1042 weWªt = cÚ -> »que¡ . cÚ‹Á_Ëngth - d¡_cq -> by‹s_š ; 1044 `as£¹ ( c -> mem -> u£d ); 1046 weHave = c -> mem -> u£d - c-> off£t - 1; 1048 toR—d = weHave > weWªt ? weWant : weHave; 1051 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth > 64 * 1024) { 1052 chunk * d¡_c = NULL ; 1065 ià( d¡_cq -> Ï¡ && 1066 d¡_cq -> Ï¡ -> ty³ =ð FILE_CHUNK && 1067 d¡_cq -> Ï¡ -> fže . is_‹mp && 1068 d¡_cq -> Ï¡ -> off£t == 0) { 1071 ià( d¡_cq -> Ï¡ -> fže . Ëngth < 1 * 1024 * 1024) { 1072 d¡_c = d¡_cq -> Ï¡ ; 1074 ià( d¡_c -> fže . fd == -1) { 1076 d¡_c -> fže . fd = `Ý’ (d¡_c->fže. Çme -> ±r , O_WRONLY | O_APPEND ); 1080 d¡_c = d¡_cq -> Ï¡ ; 1082 ià( d¡_c -> fže . fd != -1) { 1083 `þo£ ( d¡_c -> fže . fd ); 1084 d¡_c -> fže . fd = -1; 1086 d¡_c = `chunkqueue_g‘_­³nd_‹mpfže ( d¡_cq ); 1089 d¡_c = `chunkqueue_g‘_­³nd_‹mpfže ( d¡_cq ); 1094 ià( d¡_c -> fže . fd == -1) { 1101 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 1103 d¡_c -> fže . Çme , `¡»¼Ü ( ”ºo )); 1105 cÚ -> h‰p_¡©us = 413; 1106 cÚ -> k“p_®ive = 0; 1107 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 1112 ià( toR—d !ð `wr™e ( d¡_c -> fže . fd , c -> mem -> ±r + c-> off£t ,oRead)) { 1114 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 1116 d¡_c -> fže . Çme , `¡»¼Ü ( ”ºo )); 1118 cÚ -> h‰p_¡©us = 413; 1119 cÚ -> k“p_®ive = 0; 1120 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 1122 `þo£ ( d¡_c -> fže . fd ); 1123 d¡_c -> fže . fd = -1; 1128 d¡_c -> fže . Ëngth +ð toR—d ; 1130 ià( d¡_cq -> by‹s_š + toR—d =ð( off_t ) cÚ -> »que¡ . cÚ‹Á_Ëngth ) { 1132 `þo£ ( d¡_c -> fže . fd ); 1133 d¡_c -> fže . fd = -1; 1136 bufãr * b ; 1138 b = `chunkqueue_g‘_­³nd_bufãr ( d¡_cq ); 1139 `bufãr_cÝy_¡ršg_Ën ( b , c -> mem -> ±r + c-> off£t , toR—d ); 1142 c -> off£t +ð toR—d ; 1143 d¡_cq -> by‹s_š +ð toR—d ; 1147 ià( d¡_cq -> by‹s_š =ð( off_t ) cÚ -> »que¡ . cÚ‹Á_Ëngth ) { 1148 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 1157 ià( is_þo£d && o¡©e =ð cÚ -> ¡©e ) { 1158 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 1161 `chunkqueue_»move_fšished_chunks ( cq ); 1164 } } 1166 hªdËr_t $cÚÃùiÚ_hªdË_fdev’t (* s , * cÚ‹xt ,  »v’ts ) { 1167 £rv” * ¤v = (£rv” *) s ; 1168 cÚÃùiÚ * cÚ = cÚ‹xt ; 1170 `jobli¡_­³nd ( ¤v , cÚ ); 1172 ià( »v’ts & FDEVENT_IN ) { 1173 cÚ -> is_»adabË = 1; 1175 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "»ad-wa™ - dÚe", cÚ -> fd ); 1178 ià( »v’ts & FDEVENT_OUT ) { 1179 cÚ -> is_wr™abË = 1; 1184 ià( »v’ts & ~( FDEVENT_IN | FDEVENT_OUT )) { 1188 ià( »v’ts & FDEVENT_HUP ) { 1189 ià( cÚ -> ¡©e =ð CON_STATE_CLOSE ) { 1190 cÚ -> þo£_timeout_ts = 0; 1196 #ifdeà USE_LINUX_SIGIO 1197 ià( ¤v -> ev -> š_sigio == 1) { 1198 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1199 "cÚÃùiÚ clo£d:…Þl(è-> HUP", cÚ -> fd ); 1201 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 1204 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 1208 } ià( »v’ts & FDEVENT_ERR ) { 1209 #iâdeà USE_LINUX_SIGIO 1210 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1211 "cÚÃùiÚ clo£d:…Þl(è-> ERR", cÚ -> fd ); 1213 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 1215 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1216 "cÚÃùiÚ clo£d:…Þl(è-> ???", »v’ts ); 1220 ià( cÚ -> ¡©e =ð CON_STATE_READ || 1221 cÚ -> ¡©e =ð CON_STATE_READ_POST ) { 1222 `cÚÃùiÚ_hªdË_»ad_¡©e ( ¤v , cÚ ); 1225 ià( cÚ -> ¡©e =ð CON_STATE_WRITE && 1226 ! `chunkqueue_is_em±y ( cÚ -> wr™e_queue ) && 1227 cÚ -> is_wr™abË ) { 1229 ià(-1 =ð `cÚÃùiÚ_hªdË_wr™e ( ¤v , cÚ )) { 1230 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 1232 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ds", 1233 cÚ -> fd , 1235 } ià( cÚ -> ¡©e =ð CON_STATE_WRITE ) { 1236 cÚ -> wr™e_»que¡_ts = ¤v -> cur_ts ; 1240 ià( cÚ -> ¡©e =ð CON_STATE_CLOSE ) { 1242  b ; 1244 ià( `ioùl ( cÚ -> fd , FIONREAD , & b )) { 1245 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 1246 "ioùl(èçžed", `¡»¼Ü ( ”ºo )); 1249 ià( b > 0) { 1250  buf [1024]; 1251 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdd", 1252 "CLOSE-»ad()", cÚ -> fd , b ); 1255 `»ad ( cÚ -> fd , buf , (buf)); 1259 cÚ -> þo£_timeout_ts = 0; 1263  HANDLER_FINISHED ; 1264 } } 1267 cÚÃùiÚ * $cÚÃùiÚ_acû± ( £rv” * ¤v , £rv”_sock‘ * ¤v_sock‘ ) { 1271  út ; 1272 sock_addr út_addr ; 1273 sockËn_t út_Ën ; 1282 ià( ¤v -> cÚns -> u£d >ð¤v-> max_cÚns ) { 1283  NULL ; 1286 út_Ën = ( út_addr ); 1288 ià(-1 =ð( út = `acû± ( ¤v_sock‘ -> fd , ( sockaddr *è& út_addr , & út_Ën ))) { 1289  ”ºo ) { 1290  EAGAIN : 1291 #ià EWOULDBLOCK !ð EAGAIN 1292  EWOULDBLOCK : 1294  EINTR : 1296  ECONNABORTED : 1299  EMFILE : 1303 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", "acû± fažed:", `¡»¼Ü ( ”ºo ),ƒrrno); 1305  NULL ; 1307 cÚÃùiÚ * cÚ ; 1309 ¤v -> cur_fds ++; 1313 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1314 "­³ùed()", út ); 1316 ¤v -> cÚ_Ý’ed ++; 1318 cÚ = `cÚÃùiÚs_g‘_Ãw_cÚÃùiÚ ( ¤v ); 1320 cÚ -> fd = út ; 1321 cÚ -> fde_ndx = -1; 1323 `g‘timeofday (&( cÚ -> ¡¬t_tv ), NULL ); 1325 `fdev’t_»gi¡” ( ¤v -> ev , cÚ -> fd , cÚÃùiÚ_hªdË_fdev’t , con); 1327 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_REQUEST_START ); 1329 cÚ -> cÚÃùiÚ_¡¬t = ¤v -> cur_ts ; 1330 cÚ -> d¡_addr = út_addr ; 1331 `bufãr_cÝy_¡ršg ( cÚ -> d¡_addr_buf , `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &(cÚ-> d¡_addr ))); 1332 cÚ -> ¤v_sock‘ = srv_socket; 1334 ià(-1 =ð( `fdev’t_fúŽ_£t ( ¤v -> ev , cÚ -> fd ))) { 1335 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "fúŽ fažed: ", `¡»¼Ü ( ”ºo )); 1336  NULL ; 1338 #ifdeà USE_OPENSSL 1340 ià( ¤v_sock‘ -> is_s¦ ) { 1341 ià( NULL =ð( cÚ -> s¦ = `SSL_Ãw ( ¤v_sock‘ -> s¦_ùx ))) { 1342 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "SSL:", 1343 `ERR_”rÜ_¡ršg ( `ERR_g‘_”rÜ (), NULL )); 1345  NULL ; 1348 `SSL_£t_acû±_¡©e ( cÚ -> s¦ ); 1349 cÚ -> cÚf . is_s¦ =1; 1351 ià(1 !ð( `SSL_£t_fd ( cÚ -> s¦ , út ))) { 1352 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "SSL:", 1353 `ERR_”rÜ_¡ršg ( `ERR_g‘_”rÜ (), NULL )); 1354  NULL ; 1358  cÚ ; 1360 } } 1363  $cÚÃùiÚ_¡©e_machše ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 1364  dÚe = 0, r ; 1365 #ifdeà USE_OPENSSL 1366 £rv”_sock‘ * ¤v_sock = cÚ -> ¤v_sock‘ ; 1369 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1370 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1372 cÚ -> fd , 1373 `cÚÃùiÚ_g‘_¡©e ( cÚ -> ¡©e )); 1376  dÚe == 0) { 1377 size_t o¡©e = cÚ -> ¡©e ; 1378  b ; 1380  cÚ -> ¡©e ) { 1381  CON_STATE_REQUEST_START : 1382 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1383 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1384 "¡©fÜ fd", cÚ -> fd , `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e )); 1387 cÚ -> »que¡_¡¬t = ¤v -> cur_ts ; 1388 cÚ -> »ad_idË_ts = ¤v -> cur_ts ; 1390 cÚ -> »que¡_couÁ ++; 1391 cÚ -> loÝs_³r_»que¡ = 0; 1393 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_READ ); 1397 #ifdeà USE_OPENSSL 1398 cÚ -> cÚf . is_s¦ = ¤v_sock ->is_ssl; 1402  CON_STATE_REQUEST_END : 1403 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1404 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1405 "¡©fÜ fd", cÚ -> fd , `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e )); 1408 ià( `h‰p_»que¡_·r£ ( ¤v , cÚ )) { 1411 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_READ_POST ); 1416 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 1419  CON_STATE_HANDLE_REQUEST : 1429 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1430 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1431 "¡©fÜ fd", cÚ -> fd , `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e )); 1434  r = `h‰p_»¥Ú£_´•¬e ( ¤v , cÚ )) { 1435  HANDLER_FINISHED : 1436 ià( cÚ -> mode =ð DIRECT ) { 1437 ià( cÚ -> h‰p_¡©us == 404 || 1438 cÚ -> h‰p_¡©us == 403) { 1441 ià( cÚ -> š_”rÜ_hªdËr == 0 && 1442 (! `bufãr_is_em±y ( cÚ -> cÚf . ”rÜ_hªdËr ) || 1443 ! `bufãr_is_em±y ( cÚ -> ”rÜ_hªdËr ))) { 1446 cÚ -> ”rÜ_hªdËr_§ved_¡©us = cÚ-> h‰p_¡©us ; 1447 cÚ -> h‰p_¡©us = 0; 1449 ià( `bufãr_is_em±y ( cÚ -> ”rÜ_hªdËr )) { 1450 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> »que¡ . uri , cÚ-> cÚf . ”rÜ_hªdËr ); 1452 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> »que¡ . uri , cÚ-> ”rÜ_hªdËr ); 1454 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 1456 cÚ -> š_”rÜ_hªdËr = 1; 1458 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 1460 dÚe = -1; 1462 } ià( cÚ -> š_”rÜ_hªdËr ) { 1465 cÚ -> h‰p_¡©us = cÚ-> ”rÜ_hªdËr_§ved_¡©us ; 1467 } ià( cÚ -> š_”rÜ_hªdËr ) { 1472 ià( cÚ -> h‰p_¡©us == 0) con->http_status = 200; 1475 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_RESPONSE_START ); 1477  HANDLER_WAIT_FOR_FD : 1478 ¤v -> wªt_fds ++; 1480 `fdwa™queue_­³nd ( ¤v , cÚ ); 1482 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 1485  HANDLER_COMEBACK : 1486 dÚe = -1; 1487  HANDLER_WAIT_FOR_EVENT : 1489 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 1492  HANDLER_ERROR : 1494 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 1497 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdd", "unknowÀ»t-v®ue: ", cÚ -> fd , r ); 1502  CON_STATE_RESPONSE_START : 1509 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1510 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1511 "¡©fÜ fd", cÚ -> fd , `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e )); 1514 ià(-1 =ð `cÚÃùiÚ_hªdË_wr™e_´•¬e ( ¤v , cÚ )) { 1515 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 1520 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_WRITE ); 1522  CON_STATE_RESPONSE_END : 1525 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1526 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1527 "¡©fÜ fd", cÚ -> fd , `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e )); 1530 `¶ugšs_ÿÎ_hªdË_»que¡_dÚe ( ¤v , cÚ ); 1532 ¤v -> cÚ_wr™‹n ++; 1534 ià( cÚ -> k“p_®ive ) { 1535 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_REQUEST_START ); 1538 cÚ -> »que¡_¡¬t = ¤v -> cur_ts ; 1539 cÚ -> »ad_idË_ts = ¤v -> cur_ts ; 1542  r = `¶ugšs_ÿÎ_hªdË_cÚÃùiÚ_þo£ ( ¤v , cÚ )) { 1543  HANDLER_GO_ON : 1544  HANDLER_FINISHED : 1547 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "unhªdlšg„‘uº v®ue", r ); 1551 #ifdeà USE_OPENSSL 1552 ià( ¤v_sock -> is_s¦ ) { 1553  `SSL_shutdown ( cÚ -> s¦ )) { 1566 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "SSL:", 1567 `ERR_”rÜ_¡ršg ( `ERR_g‘_”rÜ (), NULL )); 1571 `cÚÃùiÚ_þo£ ( ¤v , cÚ ); 1573 ¤v -> cÚ_þo£d ++; 1576 `cÚÃùiÚ_»£t ( ¤v , cÚ ); 1579  CON_STATE_CONNECT : 1580 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1581 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1582 "¡©fÜ fd", cÚ -> fd , `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e )); 1585 `chunkqueue_»£t ( cÚ -> »ad_queue ); 1587 cÚ -> »que¡_couÁ = 0; 1590  CON_STATE_CLOSE : 1591 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1592 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1593 "¡©fÜ fd", cÚ -> fd , `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e )); 1596 ià( cÚ -> k“p_®ive ) { 1597 ià( `ioùl ( cÚ -> fd , FIONREAD , & b )) { 1598 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 1599 "ioùl(èçžed", `¡»¼Ü ( ”ºo )); 1601 ià( b > 0) { 1602  buf [1024]; 1603 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdd", 1604 "CLOSE-»ad()", cÚ -> fd , b ); 1607 `»ad ( cÚ -> fd , buf , (buf)); 1611 cÚ -> þo£_timeout_ts = 0; 1614 cÚ -> þo£_timeout_ts = 0; 1617 ià( ¤v -> cur_ts - cÚ -> þo£_timeout_ts > 1) { 1618 `cÚÃùiÚ_þo£ ( ¤v , cÚ ); 1620 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1621 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1622 "cÚÃùiÚ clo£d fÜ fd", cÚ -> fd ); 1627  CON_STATE_READ_POST : 1628  CON_STATE_READ : 1629 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1630 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1631 "¡©fÜ fd", cÚ -> fd , `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e )); 1634 `cÚÃùiÚ_hªdË_»ad_¡©e ( ¤v , cÚ ); 1636  CON_STATE_WRITE : 1637 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1638 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1639 "¡©fÜ fd", cÚ -> fd , `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e )); 1643 ià(! `chunkqueue_is_em±y ( cÚ -> wr™e_queue )) { 1645 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "dsd", 1646 cÚ -> fd , 1648 cÚ -> wr™e_queue -> u£d ); 1651 ià(! `chunkqueue_is_em±y ( cÚ -> wr™e_queue è&& cÚ-> is_wr™abË ) { 1652 ià(-1 =ð `cÚÃùiÚ_hªdË_wr™e ( ¤v , cÚ )) { 1653 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ds", 1654 cÚ -> fd , 1656 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 1657 } ià( cÚ -> ¡©e =ð CON_STATE_WRITE ) { 1658 cÚ -> wr™e_»que¡_ts = ¤v -> cur_ts ; 1663  CON_STATE_ERROR : 1666 ià( cÚ -> h‰p_¡©us ) { 1667 `¶ugšs_ÿÎ_hªdË_»que¡_dÚe ( ¤v , cÚ ); 1669 #ifdeà USE_OPENSSL 1670 ià( ¤v_sock -> is_s¦ ) { 1671  »t ; 1672 ( »t = `SSL_shutdown ( cÚ -> s¦ ))) { 1677 `SSL_shutdown ( cÚ -> s¦ ); 1680 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", "SSL:", 1681 `SSL_g‘_”rÜ ( cÚ -> s¦ , »t ), 1682 `ERR_”rÜ_¡ršg ( `ERR_g‘_”rÜ (), NULL )); 1688  cÚ -> mode ) { 1689  DIRECT : 1691 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1693 cÚ -> fd ); 1697  r = `¶ugšs_ÿÎ_hªdË_cÚÃùiÚ_þo£ ( ¤v , cÚ )) { 1698  HANDLER_GO_ON : 1699  HANDLER_FINISHED : 1702 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , ""); 1708 `cÚÃùiÚ_»£t ( ¤v , cÚ ); 1711 ià(( cÚ -> k“p_®ive == 1) && 1712 (0 =ð `shutdown ( cÚ -> fd , SHUT_WR ))) { 1713 cÚ -> þo£_timeout_ts = ¤v -> cur_ts ; 1714 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_CLOSE ); 1716 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1717 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1718 "shutdowÀfÜ fd", cÚ -> fd ); 1721 `cÚÃùiÚ_þo£ ( ¤v , cÚ ); 1724 cÚ -> k“p_®ive = 0; 1726 ¤v -> cÚ_þo£d ++; 1730 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdd", 1731 "unknowÀ¡©e:", cÚ -> fd , cÚ-> ¡©e ); 1736 ià( dÚe == -1) { 1737 dÚe = 0; 1738 } ià( o¡©e =ð cÚ -> ¡©e ) { 1739 dÚe = 1; 1743 ià( ¤v -> ¤vcÚf . log_¡©e_hªdlšg ) { 1744 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1746 cÚ -> fd , 1747 `cÚÃùiÚ_g‘_¡©e ( cÚ -> ¡©e )); 1750  cÚ -> ¡©e ) { 1751  CON_STATE_READ_POST : 1752  CON_STATE_READ : 1753  CON_STATE_CLOSE : 1754 `fdev’t_ev’t_add ( ¤v -> ev , &( cÚ -> fde_ndx ), cÚ-> fd , FDEVENT_IN ); 1756  CON_STATE_WRITE : 1761 ià(! `chunkqueue_is_em±y ( cÚ -> wr™e_queue ) && 1762 ( cÚ -> is_wr™abË == 0) && 1763 ( cÚ -> Œaffic_lim™_»ached == 0)) { 1764 `fdev’t_ev’t_add ( ¤v -> ev , &( cÚ -> fde_ndx ), cÚ-> fd , FDEVENT_OUT ); 1766 `fdev’t_ev’t_d– ( ¤v -> ev , &( cÚ -> fde_ndx ), cÚ-> fd ); 1770 `fdev’t_ev’t_d– ( ¤v -> ev , &( cÚ -> fde_ndx ), cÚ-> fd ); 1775 } } @src/connections.h 1 #iâdeà _CONNECTIONS_H_ 2  #_CONNECTIONS_H_ ) 4  ~"£rv”.h " 5  ~"fdev’t.h " 7 cÚÃùiÚ * cÚÃùiÚ_š™ ( £rv” * ¤v ); 8  cÚÃùiÚ_»£t ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 9  cÚÃùiÚs_ä“ ( £rv” * ¤v ); 11 cÚÃùiÚ * cÚÃùiÚ_acû± ( £rv” * ¤v , £rv”_sock‘ * ¤v_sock ); 12  cÚÃùiÚ_þo£ ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 14  cÚÃùiÚ_£t_¡©e ( £rv” * ¤v , cÚÃùiÚ * cÚ , cÚÃùiÚ_¡©e_t ¡©e ); 15 cÚ¡ * cÚÃùiÚ_g‘_¡©e ( cÚÃùiÚ_¡©e_t ¡©e ); 16 cÚ¡ * cÚÃùiÚ_g‘_shÜt_¡©e ( cÚÃùiÚ_¡©e_t ¡©e ); 17  cÚÃùiÚ_¡©e_machše ( £rv” * ¤v , cÚÃùiÚ * cÚ ); @src/crc32.c 1  ~"üc32.h " 3  #CRC32C ( c , d è(c=(c>>8)^ üc_c [(c^(d))&0xFF]) ) 5 cÚ¡  güc_c [256] = { 73 ušt32_t $g’”©e_üc32c (* bufãr , size_t Ëngth ) { 74 size_t i ; 75 ušt32_t üc32 = ~0L; 77  i = 0; i < Ëngth ; i++){ 78 `CRC32C ( üc32 , () bufãr [ i ]); 80  ~ üc32 ; 81 } } @src/crc32.h 1 #iâdeà __üc32ü_bË_h__ 2  #__üc32ü_bË_h__ ) 4 #ifdeà HAVE_CONFIG_H 5  ~"cÚfig.h " 8  ~ 10 #ià defšed HAVE_STDINT_H 11  ~<¡dšt.h > 12 #–ià defšed HAVE_INTTYPES_H 13  ~<š‰y³s.h > 16 ušt32_t g’”©e_üc32c (* ¡ršg , size_t Ëngth ); @src/data_array.c 1  ~<¡ršg.h > 2  ~<¡dio.h > 3  ~<¡dlib.h > 5  ~"¬¿y.h " 7  d©a_un£t * $d©a_¬¿y_cÝy (cÚ¡ d©a_un£t * s ) { 8 d©a_¬¿y * ¤c = (d©a_¬¿y *) s ; 9 d©a_¬¿y * ds = `d©a_¬¿y_š™ (); 11 `bufãr_cÝy_¡ršg_bufãr ( ds -> key , ¤c ->key); 12 `¬¿y_ä“ ( ds -> v®ue ); 13 ds -> v®ue = `¬¿y_š™_¬¿y ( ¤c ->value); 14 ds -> is_šdex_key = ¤c ->is_index_key; 15  ( d©a_un£t *) ds ; 16 } } 18  $d©a_¬¿y_ä“ ( d©a_un£t * d ) { 19 d©a_¬¿y * ds = (d©a_¬¿y *) d ; 21 `bufãr_ä“ ( ds -> key ); 22 `¬¿y_ä“ ( ds -> v®ue ); 24 `ä“ ( d ); 25 } } 27  $d©a_¬¿y_»£t ( d©a_un£t * d ) { 28 d©a_¬¿y * ds = (d©a_¬¿y *) d ; 31 `bufãr_»£t ( ds -> key ); 32 `¬¿y_»£t ( ds -> v®ue ); 33 } } 35  $d©a_¬¿y_š£¹_dup ( d©a_un£t * d¡ , d©a_un£ˆ* ¤c ) { 36 `UNUSED ( d¡ ); 38 ¤c -> `ä“ (src); 41 } } 43  $d©a_¬¿y_´št (cÚ¡ d©a_un£t * d ,  d•th ) { 44 d©a_¬¿y * ds = (d©a_¬¿y *) d ; 46 `¬¿y_´št ( ds -> v®ue , d•th ); 47 } } 49 d©a_¬¿y * $d©a_¬¿y_š™ () { 50 d©a_¬¿y * ds ; 52 ds = `ÿÎoc (1, (*ds)); 54 ds -> key = `bufãr_š™ (); 55 ds -> v®ue = `¬¿y_š™ (); 57 ds -> cÝy = d©a_¬¿y_cÝy ; 58 ds -> ä“ = d©a_¬¿y_ä“ ; 59 ds -> »£t = d©a_¬¿y_»£t ; 60 ds -> š£¹_dup = d©a_¬¿y_š£¹_dup ; 61 ds -> ´št = d©a_¬¿y_´št ; 62 ds -> ty³ = TYPE_ARRAY ; 64  ds ; 65 } } @src/data_config.c 1  ~<¡ršg.h > 2  ~<¡dio.h > 3  ~<¡dlib.h > 5  ~"¬¿y.h " 7  d©a_un£t * $d©a_cÚfig_cÝy (cÚ¡ d©a_un£t * s ) { 8 d©a_cÚfig * ¤c = (d©a_cÚfig *) s ; 9 d©a_cÚfig * ds = `d©a_cÚfig_š™ (); 11 `bufãr_cÝy_¡ršg_bufãr ( ds -> key , ¤c ->key); 12 `bufãr_cÝy_¡ršg_bufãr ( ds -> comp_key , ¤c ->comp_key); 13 `¬¿y_ä“ ( ds -> v®ue ); 14 ds -> v®ue = `¬¿y_š™_¬¿y ( ¤c ->value); 15  ( d©a_un£t *) ds ; 16 } } 18  $d©a_cÚfig_ä“ ( d©a_un£t * d ) { 19 d©a_cÚfig * ds = (d©a_cÚfig *) d ; 21 `bufãr_ä“ ( ds -> key ); 22 `bufãr_ä“ ( ds -> Ý ); 23 `bufãr_ä“ ( ds -> comp_key ); 25 `¬¿y_ä“ ( ds -> v®ue ); 26 `¬¿y_ä“ ( ds -> chžds ); 28 ià( ds -> ¡ršg è `bufãr_ä“ (ds->string); 29 #ifdeà HAVE_PCRE_H 30 ià( ds -> »gex è `püe_ä“ (ds->regex); 31 ià( ds -> »gex_¡udy è `püe_ä“ (ds->regex_study); 34 `ä“ ( d ); 35 } } 37  $d©a_cÚfig_»£t ( d©a_un£t * d ) { 38 d©a_cÚfig * ds = (d©a_cÚfig *) d ; 41 `bufãr_»£t ( ds -> key ); 42 `bufãr_»£t ( ds -> comp_key ); 43 `¬¿y_»£t ( ds -> v®ue ); 44 } } 46  $d©a_cÚfig_š£¹_dup ( d©a_un£t * d¡ , d©a_un£ˆ* ¤c ) { 47 `UNUSED ( d¡ ); 49 ¤c -> `ä“ (src); 52 } } 54  $d©a_cÚfig_´št (cÚ¡ d©a_un£t * d ,  d•th ) { 55 d©a_cÚfig * ds = (d©a_cÚfig *) d ; 56 ¬¿y * a = (¬¿y *) ds -> v®ue ; 57 size_t i ; 58 size_t maxËn ; 60 ià(0 =ð ds -> cÚ‹xt_ndx ) { 61 `årštf ( ¡dout , "config {\n"); 64 `årštf ( ¡dout , "$%s %s \"%s\" {\n", 65 ds -> comp_key -> ±r , ds-> Ý ->±r, ds-> ¡ršg ->ptr); 66 `¬¿y_´št_šd’t ( d•th + 1); 67 `årštf ( ¡dout , "# block %d\n", ds -> cÚ‹xt_ndx ); 69 d•th ++; 71 maxËn = `¬¿y_g‘_max_key_Ëngth ( a ); 72  i = 0; i < a -> u£d ; i ++) { 73 d©a_un£t * du = a -> d©a [ i ]; 74 size_t Ën = `¡¾’ ( du -> key -> ±r ); 75 size_t j ; 77 `¬¿y_´št_šd’t ( d•th ); 78 `årštf ( ¡dout , "%s", du -> key -> ±r ); 79  j = maxËn - Ën ; j > 0; j --) { 80 `årštf ( ¡dout , " "); 82 `årštf ( ¡dout , " = "); 83 du -> `´št (du, d•th ); 84 `årštf ( ¡dout , "\n"); 87 ià( ds -> chžds ) { 88 `årštf ( ¡dout , "\n"); 89  i = 0; i < ds -> chžds -> u£d ; i ++) { 90 d©a_un£t * du = ds -> chžds -> d©a [ i ]; 93 ià( NULL =ð(( d©a_cÚfig *) du )-> ´ev ) { 94 `årštf ( ¡dout , "\n"); 95 `¬¿y_´št_šd’t ( d•th ); 96 du -> `´št (du, d•th ); 97 `årštf ( ¡dout , "\n"); 102 d•th --; 103 `¬¿y_´št_šd’t ( d•th ); 104 `årštf ( ¡dout , "}"); 105 ià(0 !ð ds -> cÚ‹xt_ndx ) { 106 `årštf ( ¡dout , " #ƒnd of $%s %s \"%s\"", 107 ds -> comp_key -> ±r , ds-> Ý ->±r, ds-> ¡ršg ->ptr); 110 ià( ds -> Ãxt ) { 111 `årštf ( ¡dout , "\n"); 112 `¬¿y_´št_šd’t ( d•th ); 113 `årštf ( ¡dout , "else "); 114 ds -> Ãxt -> `´št (( d©a_un£t *)ds->Ãxt, d•th ); 116 } } 118 d©a_cÚfig * $d©a_cÚfig_š™ () { 119 d©a_cÚfig * ds ; 121 ds = `ÿÎoc (1, (*ds)); 123 ds -> key = `bufãr_š™ (); 124 ds -> Ý = `bufãr_š™ (); 125 ds -> comp_key = `bufãr_š™ (); 126 ds -> v®ue = `¬¿y_š™ (); 127 ds -> chžds = `¬¿y_š™ (); 128 ds -> chžds -> is_w—k»f = 1; 130 ds -> cÝy = d©a_cÚfig_cÝy ; 131 ds -> ä“ = d©a_cÚfig_ä“ ; 132 ds -> »£t = d©a_cÚfig_»£t ; 133 ds -> š£¹_dup = d©a_cÚfig_š£¹_dup ; 134 ds -> ´št = d©a_cÚfig_´št ; 135 ds -> ty³ = TYPE_CONFIG ; 137  ds ; 138 } } @src/data_count.c 1  ~<¡ršg.h > 2  ~<¡dio.h > 3  ~<¡dlib.h > 5  ~"¬¿y.h " 7  d©a_un£t * $d©a_couÁ_cÝy (cÚ¡ d©a_un£t * s ) { 8 d©a_couÁ * ¤c = (d©a_couÁ *) s ; 9 d©a_couÁ * ds = `d©a_couÁ_š™ (); 11 `bufãr_cÝy_¡ršg_bufãr ( ds -> key , ¤c ->key); 12 ds -> couÁ = ¤c ->count; 13 ds -> is_šdex_key = ¤c ->is_index_key; 14  ( d©a_un£t *) ds ; 15 } } 17  $d©a_couÁ_ä“ ( d©a_un£t * d ) { 18 d©a_couÁ * ds = (d©a_couÁ *) d ; 20 `bufãr_ä“ ( ds -> key ); 22 `ä“ ( d ); 23 } } 25  $d©a_couÁ_»£t ( d©a_un£t * d ) { 26 d©a_couÁ * ds = (d©a_couÁ *) d ; 28 `bufãr_»£t ( ds -> key ); 30 ds -> couÁ = 0; 31 } } 33  $d©a_couÁ_š£¹_dup ( d©a_un£t * d¡ , d©a_un£ˆ* ¤c ) { 34 d©a_couÁ * ds_d¡ = (d©a_couÁ *) d¡ ; 35 d©a_couÁ * ds_¤c = (d©a_couÁ *) ¤c ; 37 ds_d¡ -> couÁ +ð ds_¤c ->count; 39 ¤c -> `ä“ (src); 42 } } 44  $d©a_couÁ_´št (cÚ¡ d©a_un£t * d ,  d•th ) { 45 d©a_couÁ * ds = (d©a_couÁ *) d ; 46 `UNUSED ( d•th ); 48 `årštf ( ¡dout , "couÁ(%d)", ds -> couÁ ); 49 } } 52 d©a_couÁ * $d©a_couÁ_š™ () { 53 d©a_couÁ * ds ; 55 ds = `ÿÎoc (1, (*ds)); 57 ds -> key = `bufãr_š™ (); 58 ds -> couÁ = 1; 60 ds -> cÝy = d©a_couÁ_cÝy ; 61 ds -> ä“ = d©a_couÁ_ä“ ; 62 ds -> »£t = d©a_couÁ_»£t ; 63 ds -> š£¹_dup = d©a_couÁ_š£¹_dup ; 64 ds -> ´št = d©a_couÁ_´št ; 65 ds -> ty³ = TYPE_COUNT ; 67  ds ; 68 } } @src/data_fastcgi.c 1  ~<¡ršg.h > 2  ~<¡dio.h > 3  ~<¡dlib.h > 5  ~"¬¿y.h " 6  ~"ç¡cgi.h " 8  d©a_un£t * $d©a_ç¡cgi_cÝy (cÚ¡ d©a_un£t * s ) { 9 d©a_ç¡cgi * ¤c = (d©a_ç¡cg˜*) s ; 10 d©a_ç¡cgi * ds = `d©a_ç¡cgi_š™ (); 12 `bufãr_cÝy_¡ršg_bufãr ( ds -> key , ¤c ->key); 13 `bufãr_cÝy_¡ršg_bufãr ( ds -> ho¡ , ¤c ->host); 14 ds -> is_šdex_key = ¤c ->is_index_key; 15  ( d©a_un£t *) ds ; 16 } } 18  $d©a_ç¡cgi_ä“ ( d©a_un£t * d ) { 19 d©a_ç¡cgi * ds = (d©a_ç¡cg˜*) d ; 21 `bufãr_ä“ ( ds -> key ); 22 `bufãr_ä“ ( ds -> ho¡ ); 24 `ä“ ( d ); 25 } } 27  $d©a_ç¡cgi_»£t ( d©a_un£t * d ) { 28 d©a_ç¡cgi * ds = (d©a_ç¡cg˜*) d ; 30 `bufãr_»£t ( ds -> key ); 31 `bufãr_»£t ( ds -> ho¡ ); 33 } } 35  $d©a_ç¡cgi_š£¹_dup ( d©a_un£t * d¡ , d©a_un£ˆ* ¤c ) { 36 `UNUSED ( d¡ ); 38 ¤c -> `ä“ (src); 41 } } 43  $d©a_ç¡cgi_´št (cÚ¡ d©a_un£t * d ,  d•th ) { 44 d©a_ç¡cgi * ds = (d©a_ç¡cg˜*) d ; 45 `UNUSED ( d•th ); 47 `årštf ( ¡dout , "ç¡cgi(%s)", ds -> ho¡ -> ±r ); 48 } } 51 d©a_ç¡cgi * $d©a_ç¡cgi_š™ () { 52 d©a_ç¡cgi * ds ; 54 ds = `ÿÎoc (1, (*ds)); 56 ds -> key = `bufãr_š™ (); 57 ds -> ho¡ = `bufãr_š™ (); 58 ds -> pÜt = 0; 59 ds -> is_di§bËd = 0; 61 ds -> cÝy = d©a_ç¡cgi_cÝy ; 62 ds -> ä“ = d©a_ç¡cgi_ä“ ; 63 ds -> »£t = d©a_ç¡cgi_»£t ; 64 ds -> š£¹_dup = d©a_ç¡cgi_š£¹_dup ; 65 ds -> ´št = d©a_ç¡cgi_´št ; 66 ds -> ty³ = TYPE_FASTCGI ; 68  ds ; 69 } } @src/data_integer.c 1  ~<¡dio.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 5  ~"¬¿y.h " 7  d©a_un£t * $d©a_š‹g”_cÝy (cÚ¡ d©a_un£t * s ) { 8 d©a_š‹g” * ¤c = (d©a_š‹g” *) s ; 9 d©a_š‹g” * ds = `d©a_š‹g”_š™ (); 11 `bufãr_cÝy_¡ršg_bufãr ( ds -> key , ¤c ->key); 12 ds -> is_šdex_key = ¤c ->is_index_key; 13 ds -> v®ue = ¤c ->value; 14  ( d©a_un£t *) ds ; 15 } } 17  $d©a_š‹g”_ä“ ( d©a_un£t * d ) { 18 d©a_š‹g” * ds = (d©a_š‹g” *) d ; 20 `bufãr_ä“ ( ds -> key ); 22 `ä“ ( d ); 23 } } 25  $d©a_š‹g”_»£t ( d©a_un£t * d ) { 26 d©a_š‹g” * ds = (d©a_š‹g” *) d ; 29 `bufãr_»£t ( ds -> key ); 30 ds -> v®ue = 0; 31 } } 33  $d©a_š‹g”_š£¹_dup ( d©a_un£t * d¡ , d©a_un£ˆ* ¤c ) { 34 `UNUSED ( d¡ ); 36 ¤c -> `ä“ (src); 39 } } 41  $d©a_š‹g”_´št (cÚ¡ d©a_un£t * d ,  d•th ) { 42 d©a_š‹g” * ds = (d©a_š‹g” *) d ; 43 `UNUSED ( d•th ); 45 `årštf ( ¡dout , "%d", ds -> v®ue ); 46 } } 49 d©a_š‹g” * $d©a_š‹g”_š™ () { 50 d©a_š‹g” * ds ; 52 ds = `ÿÎoc (1, (*ds)); 54 ds -> key = `bufãr_š™ (); 55 ds -> v®ue = 0; 57 ds -> cÝy = d©a_š‹g”_cÝy ; 58 ds -> ä“ = d©a_š‹g”_ä“ ; 59 ds -> »£t = d©a_š‹g”_»£t ; 60 ds -> š£¹_dup = d©a_š‹g”_š£¹_dup ; 61 ds -> ´št = d©a_š‹g”_´št ; 62 ds -> ty³ = TYPE_INTEGER ; 64  ds ; 65 } } @src/data_string.c 1  ~<¡ršg.h > 2  ~<¡dio.h > 3  ~<¡dlib.h > 4  ~ 6  ~"¬¿y.h " 8  d©a_un£t * $d©a_¡ršg_cÝy (cÚ¡ d©a_un£t * s ) { 9 d©a_¡ršg * ¤c = (d©a_¡ršg *) s ; 10 d©a_¡ršg * ds = `d©a_¡ršg_š™ (); 12 `bufãr_cÝy_¡ršg_bufãr ( ds -> key , ¤c ->key); 13 `bufãr_cÝy_¡ršg_bufãr ( ds -> v®ue , ¤c ->value); 14 ds -> is_šdex_key = ¤c ->is_index_key; 15  ( d©a_un£t *) ds ; 16 } } 18  $d©a_¡ršg_ä“ ( d©a_un£t * d ) { 19 d©a_¡ršg * ds = (d©a_¡ršg *) d ; 21 `bufãr_ä“ ( ds -> key ); 22 `bufãr_ä“ ( ds -> v®ue ); 24 `ä“ ( d ); 25 } } 27  $d©a_¡ršg_»£t ( d©a_un£t * d ) { 28 d©a_¡ršg * ds = (d©a_¡ršg *) d ; 31 `bufãr_»£t ( ds -> key ); 32 `bufãr_»£t ( ds -> v®ue ); 33 } } 35  $d©a_¡ršg_š£¹_dup ( d©a_un£t * d¡ , d©a_un£ˆ* ¤c ) { 36 d©a_¡ršg * ds_d¡ = (d©a_¡ršg *) d¡ ; 37 d©a_¡ršg * ds_¤c = (d©a_¡ršg *) ¤c ; 39 ià( ds_d¡ -> v®ue -> u£d ) { 40 `bufãr_­³nd_¡ršg ( ds_d¡ -> v®ue , ", "); 41 `bufãr_­³nd_¡ršg_bufãr ( ds_d¡ -> v®ue , ds_¤c ->value); 43 `bufãr_cÝy_¡ršg_bufãr ( ds_d¡ -> v®ue , ds_¤c ->value); 46 ¤c -> `ä“ (src); 49 } } 51  $d©a_»¥Ú£_š£¹_dup ( d©a_un£t * d¡ , d©a_un£ˆ* ¤c ) { 52 d©a_¡ršg * ds_d¡ = (d©a_¡ršg *) d¡ ; 53 d©a_¡ršg * ds_¤c = (d©a_¡ršg *) ¤c ; 55 ià( ds_d¡ -> v®ue -> u£d ) { 56 `bufãr_­³nd_¡ršg ( ds_d¡ -> v®ue , "\r\n"); 57 `bufãr_­³nd_¡ršg_bufãr ( ds_d¡ -> v®ue , ds_d¡-> key ); 58 `bufãr_­³nd_¡ršg ( ds_d¡ -> v®ue , ": "); 59 `bufãr_­³nd_¡ršg_bufãr ( ds_d¡ -> v®ue , ds_¤c ->value); 61 `bufãr_cÝy_¡ršg_bufãr ( ds_d¡ -> v®ue , ds_¤c ->value); 64 ¤c -> `ä“ (src); 67 } } 70  $d©a_¡ršg_´št (cÚ¡ d©a_un£t * d ,  d•th ) { 71 d©a_¡ršg * ds = (d©a_¡ršg *) d ; 72 `UNUSED ( d•th ); 74 `årštf ( ¡dout , "\"%s\"", ds -> v®ue -> u£d ? ds->v®ue-> ±r : ""); 75 } } 78 d©a_¡ršg * $d©a_¡ršg_š™ () { 79 d©a_¡ršg * ds ; 81 ds = `ÿÎoc (1, (*ds)); 82 `as£¹ ( ds ); 84 ds -> key = `bufãr_š™ (); 85 ds -> v®ue = `bufãr_š™ (); 87 ds -> cÝy = d©a_¡ršg_cÝy ; 88 ds -> ä“ = d©a_¡ršg_ä“ ; 89 ds -> »£t = d©a_¡ršg_»£t ; 90 ds -> š£¹_dup = d©a_¡ršg_š£¹_dup ; 91 ds -> ´št = d©a_¡ršg_´št ; 92 ds -> ty³ = TYPE_STRING ; 94  ds ; 95 } } 97 d©a_¡ršg * $d©a_»¥Ú£_š™ () { 98 d©a_¡ršg * ds ; 100 ds = `d©a_¡ršg_š™ (); 101 ds -> š£¹_dup = d©a_»¥Ú£_š£¹_dup ; 103  ds ; 104 } } @src/etag.c 1  ~<¡ršg.h > 3 #ifdeà HAVE_CONFIG_H 4  ~"cÚfig.h " 7 #ià defšed HAVE_STDINT_H 8  ~<¡dšt.h > 9 #–ià defšed HAVE_INTTYPES_H 10  ~<š‰y³s.h > 13  ~"bufãr.h " 14  ~"‘ag.h " 16  $‘ag_is_equ® ( bufãr * ‘ag , cÚ¡ * m©ches ) { 17 ià( ‘ag && ! `bufãr_is_em±y Ógè&& 0 =ð `¡rcmp Óg-> ±r , m©ches ))  1; 19 } } 21  $‘ag_ü—‹ ( bufãr * ‘ag ,  ¡© * ¡ , ‘ag_æags_t æags ) { 22 ià(0 =ð æags )  0; 24 `bufãr_»£t ( ‘ag ); 26 ià( æags & ETAG_USE_INODE ) { 27 `bufãr_­³nd_off_t ( ‘ag , ¡ -> ¡_šo ); 28 `bufãr_­³nd_¡ršg_Ën ( ‘ag , `CONST_STR_LEN ("-")); 31 ià( æags & ETAG_USE_SIZE ) { 32 `bufãr_­³nd_off_t ( ‘ag , ¡ -> ¡_size ); 33 `bufãr_­³nd_¡ršg_Ën ( ‘ag , `CONST_STR_LEN ("-")); 36 ià( æags & ETAG_USE_MTIME ) { 37 `bufãr_­³nd_lÚg ( ‘ag , ¡ -> ¡_mtime ); 41 } } 43  $‘ag_mu‹ ( bufãr * mut , bufã¸* ‘ag ) { 44 size_t i ; 45 ušt32_t h ; 47  h =0, i =0; i < ‘ag -> u£d ; ++ièh = (h<<5)^(h>>27)^Óg-> ±r [i]); 49 `bufãr_»£t ( mut ); 50 `bufãr_cÝy_¡ršg_Ën ( mut , `CONST_STR_LEN ("\"")); 51 `bufãr_­³nd_lÚg ( mut , h ); 52 `bufãr_­³nd_¡ršg_Ën ( mut , `CONST_STR_LEN ("\"")); 55 } } @src/etag.h 1 #iâdeà ETAG_H 2  #ETAG_H ) 4  ~ 5  ~ 6  ~ 8  ~"bufãr.h " 10 ’um { mETAG_USE_INODE = 1, mETAG_USE_MTIME = 2, mETAG_USE_SIZE = 4 } t‘ag_æags_t ; 12  ‘ag_is_equ® ( bufãr * ‘ag , cÚ¡ * m©ches ); 13  ‘ag_ü—‹ ( bufãr * ‘ag ,  ¡© * ¡ , ‘ag_æags_t æags ); 14  ‘ag_mu‹ ( bufãr * mut , bufã¸* ‘ag ); @src/fastcgi.h 15 #iâdeà _FASTCGI_H 16  #_FASTCGI_H ) 21  #FCGI_LISTENSOCK_FILENO 0 ) 24  mv”siÚ ; 25  mty³ ; 26  m»que¡IdB1 ; 27  m»que¡IdB0 ; 28  mcÚ‹ÁL’gthB1 ; 29  mcÚ‹ÁL’gthB0 ; 30  m·ddšgL’gth ; 31  m»£rved ; 32 } tFCGI_H—d” ; 34  #FCGI_MAX_LENGTH 0xffff ) 40  #FCGI_HEADER_LEN 8 ) 45  #FCGI_VERSION_1 1 ) 50  #FCGI_BEGIN_REQUEST 1 ) 51  #FCGI_ABORT_REQUEST 2 ) 52  #FCGI_END_REQUEST 3 ) 53  #FCGI_PARAMS 4 ) 54  #FCGI_STDIN 5 ) 55  #FCGI_STDOUT 6 ) 56  #FCGI_STDERR 7 ) 57  #FCGI_DATA 8 ) 58  #FCGI_GET_VALUES 9 ) 59  #FCGI_GET_VALUES_RESULT 10 ) 60  #FCGI_UNKNOWN_TYPE 11 ) 61  #FCGI_MAXTYPE ( FCGI_UNKNOWN_TYPE ) ) 66  #FCGI_NULL_REQUEST_ID 0 ) 70  mrÞeB1 ; 71  mrÞeB0 ; 72  mæags ; 73  m»£rved [5]; 74 } tFCGI_BegšReque¡Body ; 77 FCGI_H—d” mh—d” ; 78 FCGI_BegšReque¡Body mbody ; 79 } tFCGI_BegšReque¡RecÜd ; 84  #FCGI_KEEP_CONN 1 ) 89  #FCGI_RESPONDER 1 ) 90  #FCGI_AUTHORIZER 2 ) 91  #FCGI_FILTER 3 ) 95  m­pStusB3 ; 96  m­pStusB2 ; 97  m­pStusB1 ; 98  m­pStusB0 ; 99  m´ÙocÞStus ; 100  m»£rved [3]; 101 } tFCGI_EndReque¡Body ; 104 FCGI_H—d” mh—d” ; 105 FCGI_EndReque¡Body mbody ; 106 } tFCGI_EndReque¡RecÜd ; 111  #FCGI_REQUEST_COMPLETE 0 ) 112  #FCGI_CANT_MPX_CONN 1 ) 113  #FCGI_OVERLOADED 2 ) 114  #FCGI_UNKNOWN_ROLE 3 ) 120  #FCGI_MAX_CONNS "FCGI_MAX_CONNS" ) 121  #FCGI_MAX_REQS "FCGI_MAX_REQS" ) 122  #FCGI_MPXS_CONNS "FCGI_MPXS_CONNS" ) 126  mty³ ; 127  m»£rved [7]; 128 } tFCGI_UnknownTy³Body ; 131 FCGI_H—d” mh—d” ; 132 FCGI_UnknownTy³Body mbody ; 133 } tFCGI_UnknownTy³RecÜd ; @src/fdevent.c 1  ~ 3  ~"£‰šgs.h " 5  ~ 6  ~<¡dlib.h > 7  ~<¡ršg.h > 8  ~<”ºo.h > 9  ~<¡dio.h > 10  ~ 12  ~"fdev’t.h " 13  ~"bufãr.h " 15 fdev’ts * $fdev’t_š™ ( size_t maxfds , fdev’t_hªdËr_t ty³ ) { 16 fdev’ts * ev ; 18 ev = `ÿÎoc (1, (*ev)); 19 ev -> fd¬¿y = `ÿÎoc ( maxfds , (*ev->fdarray)); 20 ev -> maxfds = maxfds; 22  ty³ ) { 23  FDEVENT_HANDLER_POLL : 24 ià(0 !ð `fdev’t_pÞl_š™ ( ev )) { 25 `årštf ( ¡d”r , "%s.%d:ƒvent-handler…oll failed\n", 26 __FILE__ , __LINE__ ); 28  NULL ; 31  FDEVENT_HANDLER_SELECT : 32 ià(0 !ð `fdev’t_£Ëù_š™ ( ev )) { 33 `årštf ( ¡d”r , "%s.%d:ƒvent-handler select failed\n", 34 __FILE__ , __LINE__ ); 35  NULL ; 38  FDEVENT_HANDLER_LINUX_RTSIG : 39 ià(0 !ð `fdev’t_lšux_¹sig_š™ ( ev )) { 40 `årštf ( ¡d”r , "%s.%d:ƒvent-handler†inux-rtsig failed,ryo set server.event-handler = \"poll\" or \"select\"\n", 41 __FILE__ , __LINE__ ); 42  NULL ; 45  FDEVENT_HANDLER_LINUX_SYSEPOLL : 46 ià(0 !ð `fdev’t_lšux_sy£pÞl_š™ ( ev )) { 47 `årštf ( ¡d”r , "%s.%d:ƒvent-handler†inux-sysepoll failed,ryo set server.event-handler = \"poll\" or \"select\"\n", 48 __FILE__ , __LINE__ ); 49  NULL ; 52  FDEVENT_HANDLER_SOLARIS_DEVPOLL : 53 ià(0 !ð `fdev’t_sÞ¬is_devpÞl_š™ ( ev )) { 54 `årštf ( ¡d”r , "%s.%d:ƒvent-handler solaris-devpoll failed,ryo set server.event-handler = \"poll\" or \"select\"\n", 55 __FILE__ , __LINE__ ); 56  NULL ; 59  FDEVENT_HANDLER_FREEBSD_KQUEUE : 60 ià(0 !ð `fdev’t_ä“bsd_kqueue_š™ ( ev )) { 61 `årštf ( ¡d”r , "%s.%d:ƒvent-handler freebsd-kqueue failed,ryo set server.event-handler = \"poll\" or \"select\"\n", 62 __FILE__ , __LINE__ ); 63  NULL ; 67 `årštf ( ¡d”r , "%s.%d:ƒvent-handler is unknown,ryo set server.event-handler = \"poll\" or \"select\"\n", 68 __FILE__ , __LINE__ ); 69  NULL ; 72  ev ; 73 } } 75  $fdev’t_ä“ ( fdev’ts * ev ) { 76 size_t i ; 77 ià(! ev ) ; 79 ià( ev -> ä“ èev-> `ä“ (ev); 81  i = 0; i < ev -> maxfds ; i++) { 82 ià( ev -> fd¬¿y [ i ]è `ä“ (ev->fdarray[i]); 85 `ä“ ( ev -> fd¬¿y ); 86 `ä“ ( ev ); 87 } } 89  $fdev’t_»£t ( fdev’ts * ev ) { 90 ià( ev -> »£t èƒv-> `»£t (ev); 93 } } 95 fdnode * $fdnode_š™ () { 96 fdnode * fdn ; 98 fdn = `ÿÎoc (1, (*fdn)); 99 fdn -> fd = -1; 100  fdn ; 101 } } 103  $fdnode_ä“ ( fdnode * fdn ) { 104 `ä“ ( fdn ); 105 } } 107  $fdev’t_»gi¡” ( fdev’ts * ev ,  fd , fdev’t_hªdËr hªdËr , * ùx ) { 108 fdnode * fdn ; 110 fdn = `fdnode_š™ (); 111 fdn -> hªdËr = handler; 112 fdn -> fd = fd; 113 fdn -> ùx = ctx; 115 ev -> fd¬¿y [ fd ] = fdn ; 118 } } 120  $fdev’t_uÄegi¡” ( fdev’ts * ev ,  fd ) { 121 fdnode * fdn ; 122 ià(! ev )  0; 123 fdn = ev -> fd¬¿y [ fd ]; 125 `fdnode_ä“ ( fdn ); 127 ev -> fd¬¿y [ fd ] = NULL ; 130 } } 132  $fdev’t_ev’t_d– ( fdev’ts * ev , * fde_ndx ,  fd ) { 133  fde = fde_ndx ? *fde_ndx : -1; 135 ià( ev -> ev’t_d– è fde =ƒv-> `ev’t_d– Óv, fde, fd ); 137 ià( fde_ndx è*fde_ndx = fde ; 140 } } 142  $fdev’t_ev’t_add ( fdev’ts * ev , * fde_ndx ,  fd ,  ev’ts ) { 143  fde = fde_ndx ? *fde_ndx : -1; 145 ià( ev -> ev’t_add è fde =ƒv-> `ev’t_add Óv, fde, fd , ev’ts ); 147 ià( fde_ndx è*fde_ndx = fde ; 150 } } 152  $fdev’t_pÞl ( fdev’ts * ev ,  timeout_ms ) { 153 ià( ev -> pÞl =ð NULL è `SEGFAULT (); 154  ev -> `pÞl Óv, timeout_ms ); 155 } } 157  $fdev’t_ev’t_g‘_»v’t ( fdev’ts * ev , size_t ndx ) { 158 ià( ev -> ev’t_g‘_»v’t =ð NULL è `SEGFAULT (); 160  ev -> `ev’t_g‘_»v’t Óv, ndx ); 161 } } 163  $fdev’t_ev’t_g‘_fd ( fdev’ts * ev , size_t ndx ) { 164 ià( ev -> ev’t_g‘_fd =ð NULL è `SEGFAULT (); 166  ev -> `ev’t_g‘_fd Óv, ndx ); 167 } } 169 fdev’t_hªdËr $fdev’t_g‘_hªdËr ( fdev’ts * ev ,  fd ) { 170 ià( ev -> fd¬¿y [ fd ] =ð NULL è `SEGFAULT (); 171 ià( ev -> fd¬¿y [ fd ]->fd !ðfdè `SEGFAULT (); 173  ev -> fd¬¿y [ fd ]-> hªdËr ; 174 } } 176 * $fdev’t_g‘_cÚ‹xt ( fdev’ts * ev ,  fd ) { 177 ià( ev -> fd¬¿y [ fd ] =ð NULL è `SEGFAULT (); 178 ià( ev -> fd¬¿y [ fd ]->fd !ðfdè `SEGFAULT (); 180  ev -> fd¬¿y [ fd ]-> ùx ; 181 } } 183  $fdev’t_fúŽ_£t ( fdev’ts * ev ,  fd ) { 184 #ifdeà FD_CLOEXEC 186 `fúŽ ( fd , F_SETFD , FD_CLOEXEC ); 188 ià(( ev è&& (ev-> fúŽ_£t )èƒv-> `fúŽ_£t Óv, fd ); 189 #ifdeà O_NONBLOCK 190  `fúŽ ( fd , F_SETFL , O_NONBLOCK | O_RDWR ); 194 } } 197  $fdev’t_ev’t_Ãxt_fdndx ( fdev’ts * ev ,  ndx ) { 198 ià( ev -> ev’t_Ãxt_fdndx èƒv-> `ev’t_Ãxt_fdndx Óv, ndx ); 201 } } @src/fdevent.h 1 #iâdeà _FDEVENT_H_ 2  #_FDEVENT_H_ ) 4 #ifdeà HAVE_CONFIG_H 5  ~"cÚfig.h " 7  ~"£‰šgs.h " 8  ~"b™£t.h " 12 #ià defšed ( HAVE_EPOLL_CTL è&& defšed( HAVE_SYS_EPOLL_H ) 13 #ià defšed HAVE_STDINT_H 14  ~<¡dšt.h > 16  #USE_LINUX_EPOLL ) 17  ~ 22 #ià defšed HAVE_POLL && (defšed( HAVE_SYS_POLL_H è|| defšed( HAVE_POLL_H )) 23  #USE_POLL ) 24 #ifdeà HAVE_POLL_H 25  ~ 27  ~ 29 #ià defšed HAVE_SIGTIMEDWAIT && defšed( __lšux__ ) 30  #USE_LINUX_SIGIO ) 31  ~ 35 #ià defšed HAVE_SELECT 36 #ifdeà __WIN32 37  ~ 39  #USE_SELECT ) 40 #ifdeà HAVE_SYS_SELECT_H 41  ~ 45 #ià defšed HAVE_SYS_DEVPOLL_H && defšed( __sun ) 46  #USE_SOLARIS_DEVPOLL ) 47  ~ 50 #ià defšed HAVE_SYS_EVENT_H && defšed HAVE_KQUEUE 51  #USE_FREEBSD_KQUEUE ) 52  ~ 55 #ià defšed HAVE_SYS_PORT_H && defšed HAVE_PORT_CREATE 56  #USE_SOLARIS_PORT ) 57  ~ 61  $hªdËr_t (* tfdev’t_hªdËr )(* t¤v , * tùx ,  t»v’ts ); 63  #FDEVENT_IN `BV (0) ) 64  #FDEVENT_PRI `BV (1) ) 65  #FDEVENT_OUT `BV (2) ) 66  #FDEVENT_ERR `BV (3) ) 67  #FDEVENT_HUP `BV (4) ) 68  #FDEVENT_NVAL `BV (5) ) 70 ’um { FD_EVENT_TYPE_UNSET = -1, 71 FD_EVENT_TYPE_CONNECTION , 72 FD_EVENT_TYPE_FCGI_CONNECTION , 73 FD_EVENT_TYPE_DIRWATCH , 74 FD_EVENT_TYPE_CGI_CONNECTION 75 } tfd_ev’t_t ; 77 ’um { FDEVENT_HANDLER_UNSET , 78 FDEVENT_HANDLER_SELECT , 79 FDEVENT_HANDLER_POLL , 80 FDEVENT_HANDLER_LINUX_RTSIG , 81 FDEVENT_HANDLER_LINUX_SYSEPOLL , 82 FDEVENT_HANDLER_SOLARIS_DEVPOLL , 83 FDEVENT_HANDLER_FREEBSD_KQUEUE , 84 FDEVENT_HANDLER_SOLARIS_PORT 85 } tfdev’t_hªdËr_t ; 92  fd ; 93 * cÚn ; 94 fd_ev’t_t fd_ty³ ; 95  ev’ts ; 96  »v’ts ; 97 } tfd_cÚn ; 100 fd_cÚn * ±r ; 102 size_t size ; 103 size_t u£d ; 104 } tfd_cÚn_bufãr ; 111  s_fdnode { 112 fdev’t_hªdËr hªdËr ; 113 * ùx ; 114  fd ; 116  _fdnode * ´ev , * Ãxt ; 117 } tfdnode ; 120 * ±r ; 122 size_t u£d ; 123 size_t size ; 124 } tbufãr_št ; 130  sfdev’ts { 131 fdev’t_hªdËr_t ty³ ; 133 fdnode ** fd¬¿y ; 134 size_t maxfds ; 136 #ifdeà USE_LINUX_SIGIO 137  š_sigio ; 138  signum ; 139 sig£t_t sig£t ; 140 sigšfo_t sigšfo ; 141 b™£t * sigb£t ; 143 #ifdeà USE_LINUX_EPOLL 144  •Þl_fd ; 145  •Þl_ev’t * •Þl_ev’ts ; 147 #ifdeà USE_POLL 148  pÞlfd * pÞlfds ; 150 size_t size ; 151 size_t u£d ; 153 bufãr_št unu£d ; 155 #ifdeà USE_SELECT 156 fd_£t £Ëù_»ad ; 157 fd_£t £Ëù_wr™e ; 158 fd_£t £Ëù_”rÜ ; 160 fd_£t £Ëù_£t_»ad ; 161 fd_£t £Ëù_£t_wr™e ; 162 fd_£t £Ëù_£t_”rÜ ; 164  £Ëù_max_fd ; 166 #ifdeà USE_SOLARIS_DEVPOLL 167  devpÞl_fd ; 168  pÞlfd * devpÞlfds ; 170 #ifdeà USE_FREEBSD_KQUEUE 171  kq_fd ; 172  kev’t * kq_»suÉs ; 173 b™£t * kq_bev’ts ; 175 #ifdeà USE_SOLARIS_PORT 176  pÜt_fd ; 178 (* »£t )( fdev’ts * ev ); 179 (* ä“ )( fdev’ts * ev ); 181 (* ev’t_add )( fdev’ts * ev ,  fde_ndx ,  fd ,  ev’ts ); 182 (* ev’t_d– )( fdev’ts * ev ,  fde_ndx ,  fd ); 183 (* ev’t_g‘_»v’t )( fdev’ts * ev , size_t ndx ); 184 (* ev’t_g‘_fd )( fdev’ts * ev , size_t ndx ); 186 (* ev’t_Ãxt_fdndx )( fdev’ts * ev ,  ndx ); 188 (* pÞl )( fdev’ts * ev ,  timeout_ms ); 190 (* fúŽ_£t )( fdev’ts * ev ,  fd ); 191 } tfdev’ts ; 193 fdev’ts * `fdev’t_š™ ( size_t maxfds , fdev’t_hªdËr_t ty³ ); 194  `fdev’t_»£t ( fdev’ts * ev ); 195  `fdev’t_ä“ ( fdev’ts * ev ); 197  `fdev’t_ev’t_add ( fdev’ts * ev , * fde_ndx ,  fd ,  ev’ts ); 198  `fdev’t_ev’t_d– ( fdev’ts * ev , * fde_ndx ,  fd ); 199  `fdev’t_ev’t_g‘_»v’t ( fdev’ts * ev , size_t ndx ); 200  `fdev’t_ev’t_g‘_fd ( fdev’ts * ev , size_t ndx ); 201 fdev’t_hªdËr `fdev’t_g‘_hªdËr ( fdev’ts * ev ,  fd ); 202 * `fdev’t_g‘_cÚ‹xt ( fdev’ts * ev ,  fd ); 204  `fdev’t_ev’t_Ãxt_fdndx ( fdev’ts * ev ,  ndx ); 206  `fdev’t_pÞl ( fdev’ts * ev ,  timeout_ms ); 208  `fdev’t_»gi¡” ( fdev’ts * ev ,  fd , fdev’t_hªdËr hªdËr , * ùx ); 209  `fdev’t_uÄegi¡” ( fdev’ts * ev ,  fd ); 211  `fdev’t_fúŽ_£t ( fdev’ts * ev ,  fd ); 213  `fdev’t_£Ëù_š™ ( fdev’ts * ev ); 214  `fdev’t_pÞl_š™ ( fdev’ts * ev ); 215  `fdev’t_lšux_¹sig_š™ ( fdev’ts * ev ); 216  `fdev’t_lšux_sy£pÞl_š™ ( fdev’ts * ev ); 217  `fdev’t_sÞ¬is_devpÞl_š™ ( fdev’ts * ev ); 218  `fdev’t_ä“bsd_kqueue_š™ ( fdev’ts * ev ); @src/fdevent_freebsd_kqueue.c 1  ~ 3  ~ 4  ~<¡dlib.h > 5  ~<¡dio.h > 6  ~<¡ršg.h > 7  ~<”ºo.h > 8  ~ 9  ~ 11  ~"fdev’t.h " 12  ~"£‰šgs.h " 13  ~"bufãr.h " 14  ~"£rv”.h " 16 #ifdeà USE_FREEBSD_KQUEUE 17  ~ 18  ~ 20  $fdev’t_ä“bsd_kqueue_ä“ ( fdev’ts * ev ) { 21 `þo£ ( ev -> kq_fd ); 22 `ä“ ( ev -> kq_»suÉs ); 23 `b™£t_ä“ ( ev -> kq_bev’ts ); 24 } } 26  $fdev’t_ä“bsd_kqueue_ev’t_d– ( fdev’ts * ev ,  fde_ndx ,  fd ) { 27  fž‹r , »t ; 28  kev’t kev ; 29  time¥ec ts ; 31 ià( fde_ndx < 0)  -1; 33 fž‹r = `b™£t_‹¡_b™ ( ev -> kq_bev’ts , fd è? EVFILT_READ : EVFILT_WRITE ; 35 `EV_SET (& kev , fd , fž‹r , EV_DELETE , 0, 0, NULL ); 37 ts . tv_£c = 0; 38 ts . tv_n£c = 0; 40 »t = `kev’t ( ev -> kq_fd , 41 & kev , 1, 42 NULL , 0, 43 & ts ); 45 ià( »t == -1) { 46 `årštf ( ¡d”r , "%s.%d: kqueue failed…olling: %s\n", 47 __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 53 } } 55  $fdev’t_ä“bsd_kqueue_ev’t_add ( fdev’ts * ev ,  fde_ndx ,  fd ,  ev’ts ) { 56  fž‹r , »t ; 57  kev’t kev ; 58  time¥ec ts ; 60 `UNUSED ( fde_ndx ); 62 fž‹r = ( ev’ts & FDEVENT_IN è? EVFILT_READ : EVFILT_WRITE ; 64 `EV_SET (& kev , fd , fž‹r , EV_ADD | EV_CLEAR , 0, 0, NULL ); 66 ts . tv_£c = 0; 67 ts . tv_n£c = 0; 69 »t = `kev’t ( ev -> kq_fd , 70 & kev , 1, 71 NULL , 0, 72 & ts ); 74 ià( »t == -1) { 75 `årštf ( ¡d”r , "%s.%d: kqueue failed…olling: %s\n", 76 __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 81 ià( fž‹r =ð EVFILT_READ ) { 82 `b™£t_£t_b™ ( ev -> kq_bev’ts , fd ); 84 `b™£t_þ—r_b™ ( ev -> kq_bev’ts , fd ); 87  fd ; 88 } } 90  $fdev’t_ä“bsd_kqueue_pÞl ( fdev’ts * ev ,  timeout_ms ) { 91  »t ; 92  time¥ec ts ; 94 ts . tv_£c = timeout_ms / 1000; 95 ts . tv_n£c = ( timeout_ms % 1000) * 1000000; 97 »t = `kev’t ( ev -> kq_fd , 98 NULL , 0, 99 ev -> kq_»suÉs ,ƒv-> maxfds , 100 & ts ); 102 ià( »t == -1) { 103  ”ºo ) { 104  EINTR : 108 `årštf ( ¡d”r , "%s.%d: kqueue failed…olling: %s\n", 109 __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 114  »t ; 115 } } 117  $fdev’t_ä“bsd_kqueue_ev’t_g‘_»v’t ( fdev’ts * ev , size_t ndx ) { 118  ev’ts = 0, e ; 120 e = ev -> kq_»suÉs [ ndx ]. fž‹r ; 122 ià( e =ð EVFILT_READ ) { 123 ev’ts |ð FDEVENT_IN ; 124 } ià( e =ð EVFILT_WRITE ) { 125 ev’ts |ð FDEVENT_OUT ; 128 e = ev -> kq_»suÉs [ ndx ]. æags ; 130 ià( e & EV_EOF ) { 131 ev’ts |ð FDEVENT_HUP ; 134 ià( e & EV_ERROR ) { 135 ev’ts |ð FDEVENT_ERR ; 138  ev’ts ; 139 } } 141  $fdev’t_ä“bsd_kqueue_ev’t_g‘_fd ( fdev’ts * ev , size_t ndx ) { 142  ev -> kq_»suÉs [ ndx ]. id’t ; 143 } } 145  $fdev’t_ä“bsd_kqueue_ev’t_Ãxt_fdndx ( fdev’ts * ev ,  ndx ) { 146 `UNUSED ( ev ); 148  ( ndx < 0) ? 0 :‚dx + 1; 149 } } 151  $fdev’t_ä“bsd_kqueue_»£t ( fdev’ts * ev ) { 152 ià(-1 =ð( ev -> kq_fd = `kqueue ())) { 153 `årštf ( ¡d”r , "%s.%d: kqueue failed (%s),ryo set server.event-handler = \"poll\" or \"select\"\n", 154 __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 160 } } 163  $fdev’t_ä“bsd_kqueue_š™ ( fdev’ts * ev ) { 164 ev -> ty³ = FDEVENT_HANDLER_FREEBSD_KQUEUE ; 165  #SET ( x ) \ 166 ev -> x = fdev’t_ä“bsd_kqueue_ ##x; ) 168 `SET ( ä“ ); 169 `SET ( pÞl ); 170 `SET ( »£t ); 172 `SET ( ev’t_d– ); 173 `SET ( ev’t_add ); 175 `SET ( ev’t_Ãxt_fdndx ); 176 `SET ( ev’t_g‘_fd ); 177 `SET ( ev’t_g‘_»v’t ); 179 ev -> kq_fd = -1; 181 ev -> kq_»suÉs = `ÿÎoc Óv-> maxfds , (*ev->kq_results)); 182 ev -> kq_bev’ts = `b™£t_š™ Óv-> maxfds ); 186 ià(-1 =ð( ev -> kq_fd = `kqueue ())) { 187 `årštf ( ¡d”r , "%s.%d: kqueue failed (%s),ryo set server.event-handler = \"poll\" or \"select\"\n", 188 __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 193 `þo£ ( ev -> kq_fd ); 194 ev -> kq_fd = -1; 197 } } 199  $fdev’t_ä“bsd_kqueue_š™ ( fdev’ts * ev ) { 200 `UNUSED ( ev ); 202 `årštf ( ¡d”r , "%s.%d: kqueue‚ot‡vailable,ryo set server.event-handler = \"poll\" or \"select\"\n", 203 __FILE__ , __LINE__ ); 206 } } @src/fdevent_linux_rtsig.c 1  ~ 3  ~ 4  ~<¡dlib.h > 5  ~<¡dio.h > 6  ~<¡ršg.h > 7  ~<”ºo.h > 8  ~ 9  ~ 11  #__USE_GNU ) 12  ~ 14  ~"fdev’t.h " 15  ~"£‰šgs.h " 16  ~"bufãr.h " 18 #ifdeà USE_LINUX_SIGIO 19  $fdev’t_lšux_¹sig_ä“ ( fdev’ts * ev ) { 20 `ä“ ( ev -> pÞlfds ); 21 ià( ev -> unu£d . ±r è `ä“ (ev->unused.ptr); 23 `b™£t_ä“ ( ev -> sigb£t ); 24 } } 27  $fdev’t_lšux_¹sig_ev’t_d– ( fdev’ts * ev ,  fde_ndx ,  fd ) { 28 ià( fde_ndx < 0)  -1; 30 ià(( size_t ) fde_ndx >ð ev -> u£d ) { 31 `årštf ( ¡d”r , "%s.%d: d–! ouˆoà¿ng%d %zu\n", __FILE__ , __LINE__ , fde_ndx , ev -> u£d ); 32 `SEGFAULT (); 35 ià( ev -> pÞlfds [ fde_ndx ]. fd == fd) { 36 size_t k = fde_ndx ; 38 ev -> pÞlfds [ k ]. fd = -1; 40 `b™£t_þ—r_b™ ( ev -> sigb£t , fd ); 42 ià( ev -> unu£d . size == 0) { 43 ev -> unu£d . size = 16; 44 ev -> unu£d . ±r = `m®loc ((*Óv->unu£d.±r)è*ƒv->unu£d. size ); 45 } ià( ev -> unu£d . size =ðev->unu£d. u£d ) { 46 ev -> unu£d . size += 16; 47 ev -> unu£d . ±r = `»®loc Óv->unu£d.±r, (*Óv->unu£d.±r)è*ƒv->unu£d. size ); 50 ev -> unu£d . ±r [ev->unu£d. u£d ++] = k ; 52 `årštf ( ¡d”r , "%s.%d: d–! %d %d\n", __FILE__ , __LINE__ , ev -> pÞlfds [ fde_ndx ]. fd , fd); 54 `SEGFAULT (); 58 } } 61  $fdev’t_lšux_¹sig_ev’t_com´ess ( fdev’ts * ev ) { 62 size_t j ; 64 ià( ev -> u£d == 0)  0; 65 ià( ev -> unu£d . u£d != 0)  0; 67  j = ev -> u£d - 1; j + 1 > 0; j--) { 68 ià( ev -> pÞlfds [ j ]. fd =ð-1èev-> u£d --; 73 } } 76  $fdev’t_lšux_¹sig_ev’t_add ( fdev’ts * ev ,  fde_ndx ,  fd ,  ev’ts ) { 78 ià( fde_ndx != -1) { 79 ià( ev -> pÞlfds [ fde_ndx ]. fd == fd) { 80 ev -> pÞlfds [ fde_ndx ]. ev’ts =ƒvents; 82  fde_ndx ; 84 `årštf ( ¡d”r , "%s.%d:‡dd: (%d, %d)\n", __FILE__ , __LINE__ , fde_ndx , ev -> pÞlfds [fde_ndx]. fd ); 85 `SEGFAULT (); 88 ià( ev -> unu£d . u£d > 0) { 89  k = ev -> unu£d . ±r [--ev->unu£d. u£d ]; 91 ev -> pÞlfds [ k ]. fd = fd; 92 ev -> pÞlfds [ k ]. ev’ts =ƒvents; 94 `b™£t_£t_b™ ( ev -> sigb£t , fd ); 96  k ; 98 ià( ev -> size == 0) { 99 ev -> size = 16; 100 ev -> pÞlfds = `m®loc ((*ev->pÞlfdsè*ƒv-> size ); 101 } ià( ev -> size =ðev-> u£d ) { 102 ev -> size += 16; 103 ev -> pÞlfds = `»®loc Óv->pÞlfds, (*ev->pÞlfdsè*ƒv-> size ); 106 ev -> pÞlfds [ev-> u£d ]. fd = fd; 107 ev -> pÞlfds [ev-> u£d ]. ev’ts =ƒvents; 109 `b™£t_£t_b™ ( ev -> sigb£t , fd ); 111  ev -> u£d ++; 113 } } 115  $fdev’t_lšux_¹sig_pÞl ( fdev’ts * ev ,  timeout_ms ) { 116  time¥ec ts ; 117  r ; 120 `fdev’t_lšux_¹sig_ev’t_com´ess ( ev ); 123 ev -> š_sigio = 1; 125 ts . tv_£c = timeout_ms / 1000; 126 ts . tv_n£c = ( timeout_ms % 1000) * 1000000; 127 r = `sigtimedwa™ (&( ev -> sig£t ), &Óv-> sigšfo ), &( ts )); 129 ià( r == -1) { 130 ià( ”ºo =ð EAGAIN )  0; 131  r ; 132 } ià( r =ð SIGIO ) { 133  sigaùiÚ aù ; 136 `mem£t (& aù , 0, (act)); 137 aù . §_hªdËr = SIG_IGN ; 138 `sigaùiÚ ( ev -> signum , & aù , NULL ); 141 aù . §_hªdËr = SIG_DFL ; 142 `sigaùiÚ ( ev -> signum , & aù , NULL ); 144 ev -> š_sigio = 0; 145 r = `pÞl ( ev -> pÞlfds ,ƒv-> u£d , timeout_ms ); 147  r ; 148 } ià( r =ð ev -> signum ) { 150 `årštf ( ¡d”r , "ev’t: %d %02lx\n", ev -> sigšfo . si_fd ,ƒv->sigšfo. si_bªd ); 152  `b™£t_‹¡_b™ ( ev -> sigb£t ,ƒv-> sigšfo . si_fd ); 157 } } 159  $fdev’t_lšux_¹sig_ev’t_g‘_»v’t ( fdev’ts * ev , size_t ndx ) { 160 ià( ev -> š_sigio == 1) { 162 ià( ev -> sigšfo . si_bªd =ð POLLERR ) { 163 `årštf ( ¡d”r , "ev’t: %d %02lx %02x %s\n", ev -> sigšfo . si_fd ,ƒv->sigšfo. si_bªd , ”ºo , `¡»¼Ü (errno)); 166 ià( ndx != 0) { 167 `årštf ( ¡d”r , "+\n"); 171  ev -> sigšfo . si_bªd & 0x3f; 173 ià( ndx >ð ev -> u£d ) { 174 `årštf ( ¡d”r , "%s.%d:ƒv’t: %zu %zu\n", __FILE__ , __LINE__ , ndx , ev -> u£d ); 177  ev -> pÞlfds [ ndx ]. »v’ts ; 179 } } 181  $fdev’t_lšux_¹sig_ev’t_g‘_fd ( fdev’ts * ev , size_t ndx ) { 182 ià( ev -> š_sigio == 1) { 183  ev -> sigšfo . si_fd ; 185  ev -> pÞlfds [ ndx ]. fd ; 187 } } 189  $fdev’t_lšux_¹sig_fúŽ_£t ( fdev’ts * ev ,  fd ) { 190  pid_t pid = 0; 192 ià( pid =ð0èpid = `g‘pid (); 194 ià(-1 =ð `fúŽ ( fd , F_SETSIG , ev -> signum ))  -1; 196 ià(-1 =ð `fúŽ ( fd , F_SETOWN , (è pid ))  -1; 198  `fúŽ ( fd , F_SETFL , O_ASYNC | O_NONBLOCK | O_RDWR ); 199 } } 202  $fdev’t_lšux_¹sig_ev’t_Ãxt_fdndx ( fdev’ts * ev ,  ndx ) { 203 ià( ev -> š_sigio == 1) { 204 ià( ndx < 0)  0; 207 size_t i ; 209 i = ( ndx < 0) ? 0 :‚dx + 1; 210 ; i < ev -> u£d ; i++) { 211 ià( ev -> pÞlfds [ i ]. »v’ts ) ; 214  i ; 216 } } 218  $fdev’t_lšux_¹sig_š™ ( fdev’ts * ev ) { 219 ev -> ty³ = FDEVENT_HANDLER_LINUX_RTSIG ; 220  #SET ( x ) \ 221 ev -> x = fdev’t_lšux_¹sig_ ##x; ) 223 `SET ( ä“ ); 224 `SET ( pÞl ); 226 `SET ( ev’t_d– ); 227 `SET ( ev’t_add ); 229 `SET ( ev’t_Ãxt_fdndx ); 230 `SET ( fúŽ_£t ); 231 `SET ( ev’t_g‘_fd ); 232 `SET ( ev’t_g‘_»v’t ); 234 ev -> signum = SIGRTMIN + 1; 236 `sigem±y£t (&( ev -> sig£t )); 237 `sigadd£t (&( ev -> sig£t ),ƒv-> signum ); 238 `sigadd£t (&( ev -> sig£t ), SIGIO ); 239 ià(-1 =ð `sig´ocmask ( SIG_BLOCK , &( ev -> sig£t ), NULL )) { 240 `årštf ( ¡d”r , "%s.%d: sigprocmask failed (%s),ryo set server.event-handler = \"poll\" or \"select\"\n", 241 __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 246 ev -> š_sigio = 1; 248 ev -> sigb£t = `b™£t_š™ Óv-> maxfds ); 251 } } 253  $fdev’t_lšux_¹sig_š™ ( fdev’ts * ev ) { 254 `UNUSED ( ev ); 256 `årštf ( ¡d”r , "%s.%d:†inux-rtsig‚ot supported,ryo set server.event-handler = \"poll\" or \"select\"\n", 257 __FILE__ , __LINE__ ); 259 } } @src/fdevent_linux_sysepoll.c 1  ~ 3  ~ 4  ~<¡dlib.h > 5  ~<¡dio.h > 6  ~<¡ršg.h > 7  ~<”ºo.h > 8  ~ 9  ~ 11  ~"fdev’t.h " 12  ~"£‰šgs.h " 13  ~"bufãr.h " 15 #ifdeà USE_LINUX_EPOLL 16  $fdev’t_lšux_sy£pÞl_ä“ ( fdev’ts * ev ) { 17 `þo£ ( ev -> •Þl_fd ); 18 `ä“ ( ev -> •Þl_ev’ts ); 19 } } 21  $fdev’t_lšux_sy£pÞl_ev’t_d– ( fdev’ts * ev ,  fde_ndx ,  fd ) { 22  •Þl_ev’t • ; 24 ià( fde_ndx < 0)  -1; 26 `mem£t (& • , 0, (ep)); 28 • . d©a . fd = fd; 29 • . d©a . ±r = NULL ; 31 ià(0 !ð `•Þl_ùl ( ev -> •Þl_fd , EPOLL_CTL_DEL , fd , & • )) { 32 `årštf ( ¡d”r , "%s.%d:ƒpÞl_ùÈçžed: %s, dyšg\n", __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 34 `SEGFAULT (); 41 } } 43  $fdev’t_lšux_sy£pÞl_ev’t_add ( fdev’ts * ev ,  fde_ndx ,  fd ,  ev’ts ) { 44  •Þl_ev’t • ; 45  add = 0; 47 ià( fde_ndx =ð-1è add = 1; 49 `mem£t (& • , 0, (ep)); 51 • . ev’ts = 0; 53 ià( ev’ts & FDEVENT_IN è • .ev’t |ð EPOLLIN ; 54 ià( ev’ts & FDEVENT_OUT è • .ev’t |ð EPOLLOUT ; 64 • . ev’ts |ð EPOLLERR | EPOLLHUP ; 66 • . d©a . ±r = NULL ; 67 • . d©a . fd = fd; 69 ià(0 !ð `•Þl_ùl ( ev -> •Þl_fd , add ? EPOLL_CTL_ADD : EPOLL_CTL_MOD , fd , & • )) { 70 `årštf ( ¡d”r , "%s.%d:ƒpÞl_ùÈçžed: %s, dyšg\n", __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 72 `SEGFAULT (); 77  fd ; 78 } } 80  $fdev’t_lšux_sy£pÞl_pÞl ( fdev’ts * ev ,  timeout_ms ) { 81  `•Þl_wa™ ( ev -> •Þl_fd ,ƒv-> •Þl_ev’ts ,ƒv-> maxfds , timeout_ms ); 82 } } 84  $fdev’t_lšux_sy£pÞl_ev’t_g‘_»v’t ( fdev’ts * ev , size_t ndx ) { 85  ev’ts = 0, e ; 87 e = ev -> •Þl_ev’ts [ ndx ]. ev’ts ; 88 ià( e & EPOLLIN è ev’ts |ð FDEVENT_IN ; 89 ià( e & EPOLLOUT è ev’ts |ð FDEVENT_OUT ; 90 ià( e & EPOLLERR è ev’ts |ð FDEVENT_ERR ; 91 ià( e & EPOLLHUP è ev’ts |ð FDEVENT_HUP ; 92 ià( e & EPOLLPRI è ev’ts |ð FDEVENT_PRI ; 94  e ; 95 } } 97  $fdev’t_lšux_sy£pÞl_ev’t_g‘_fd ( fdev’ts * ev , size_t ndx ) { 99 `årštf ( ¡d”r , "%s.%d: %d, %d\n", __FILE__ , __LINE__ , ndx , ev -> •Þl_ev’ts [ndx]. d©a . fd ); 102  ev -> •Þl_ev’ts [ ndx ]. d©a . fd ; 103 } } 105  $fdev’t_lšux_sy£pÞl_ev’t_Ãxt_fdndx ( fdev’ts * ev ,  ndx ) { 106 size_t i ; 108 `UNUSED ( ev ); 110 i = ( ndx < 0) ? 0 :‚dx + 1; 112  i ; 113 } } 115  $fdev’t_lšux_sy£pÞl_š™ ( fdev’ts * ev ) { 116 ev -> ty³ = FDEVENT_HANDLER_LINUX_SYSEPOLL ; 117  #SET ( x ) \ 118 ev -> x = fdev’t_lšux_sy£pÞl_ ##x; ) 120 `SET ( ä“ ); 121 `SET ( pÞl ); 123 `SET ( ev’t_d– ); 124 `SET ( ev’t_add ); 126 `SET ( ev’t_Ãxt_fdndx ); 127 `SET ( ev’t_g‘_fd ); 128 `SET ( ev’t_g‘_»v’t ); 130 ià(-1 =ð( ev -> •Þl_fd = `•Þl_ü—‹ Óv-> maxfds ))) { 131 `årštf ( ¡d”r , "%s.%d:ƒpoll_create failed (%s),ryo set server.event-handler = \"poll\" or \"select\"\n", 132 __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 137 ià(-1 =ð `fúŽ ( ev -> •Þl_fd , F_SETFD , FD_CLOEXEC )) { 138 `årštf ( ¡d”r , "%s.%d:ƒpoll_create failed (%s),ryo set server.event-handler = \"poll\" or \"select\"\n", 139 __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 141 `þo£ ( ev -> •Þl_fd ); 146 ev -> •Þl_ev’ts = `m®loc Óv-> maxfds * (*ev->epoll_events)); 149 } } 152  $fdev’t_lšux_sy£pÞl_š™ ( fdev’ts * ev ) { 153 `UNUSED ( ev ); 155 `årštf ( ¡d”r , "%s.%d:†inux-sysepoll‚ot supported,ryo set server.event-handler = \"poll\" or \"select\"\n", 156 __FILE__ , __LINE__ ); 159 } } @src/fdevent_poll.c 1  ~ 3  ~ 4  ~<¡dlib.h > 5  ~<¡dio.h > 6  ~<¡ršg.h > 7  ~<”ºo.h > 8  ~ 9  ~ 11  ~"fdev’t.h " 12  ~"£‰šgs.h " 13  ~"bufãr.h " 15 #ifdeà USE_POLL 16  $fdev’t_pÞl_ä“ ( fdev’ts * ev ) { 17 `ä“ ( ev -> pÞlfds ); 18 ià( ev -> unu£d . ±r è `ä“ (ev->unused.ptr); 19 } } 21  $fdev’t_pÞl_ev’t_d– ( fdev’ts * ev ,  fde_ndx ,  fd ) { 22 ià( fde_ndx < 0)  -1; 24 ià(( size_t ) fde_ndx >ð ev -> u£d ) { 25 `årštf ( ¡d”r , "%s.%d: d–! ouˆoà¿ng%d %zd\n", __FILE__ , __LINE__ , fde_ndx , ev -> u£d ); 26 `SEGFAULT (); 29 ià( ev -> pÞlfds [ fde_ndx ]. fd == fd) { 30 size_t k = fde_ndx ; 32 ev -> pÞlfds [ k ]. fd = -1; 36 ià( ev -> unu£d . size == 0) { 37 ev -> unu£d . size = 16; 38 ev -> unu£d . ±r = `m®loc ((*Óv->unu£d.±r)è*ƒv->unu£d. size ); 39 } ià( ev -> unu£d . size =ðev->unu£d. u£d ) { 40 ev -> unu£d . size += 16; 41 ev -> unu£d . ±r = `»®loc Óv->unu£d.±r, (*Óv->unu£d.±r)è*ƒv->unu£d. size ); 44 ev -> unu£d . ±r [ev->unu£d. u£d ++] = k ; 46 `SEGFAULT (); 50 } } 53  $fdev’t_pÞl_ev’t_com´ess ( fdev’ts * ev ) { 54 size_t j ; 56 ià( ev -> u£d == 0)  0; 57 ià( ev -> unu£d . u£d != 0)  0; 59  j = ev -> u£d - 1; j + 1 > 0 &&ƒv-> pÞlfds [j]. fd == -1; j--)ƒv->used--; 62 } } 65  $fdev’t_pÞl_ev’t_add ( fdev’ts * ev ,  fde_ndx ,  fd ,  ev’ts ) { 68 ià( fde_ndx != -1) { 69 ià( ev -> pÞlfds [ fde_ndx ]. fd == fd) { 70 ev -> pÞlfds [ fde_ndx ]. ev’ts =ƒvents; 72  fde_ndx ; 74 `årštf ( ¡d”r , "%s.%d:‡dd: (%d, %d)\n", __FILE__ , __LINE__ , fde_ndx , ev -> pÞlfds [fde_ndx]. fd ); 75 `SEGFAULT (); 78 ià( ev -> unu£d . u£d > 0) { 79  k = ev -> unu£d . ±r [--ev->unu£d. u£d ]; 81 ev -> pÞlfds [ k ]. fd = fd; 82 ev -> pÞlfds [ k ]. ev’ts =ƒvents; 84  k ; 86 ià( ev -> size == 0) { 87 ev -> size = 16; 88 ev -> pÞlfds = `m®loc ((*ev->pÞlfdsè*ƒv-> size ); 89 } ià( ev -> size =ðev-> u£d ) { 90 ev -> size += 16; 91 ev -> pÞlfds = `»®loc Óv->pÞlfds, (*ev->pÞlfdsè*ƒv-> size ); 94 ev -> pÞlfds [ev-> u£d ]. fd = fd; 95 ev -> pÞlfds [ev-> u£d ]. ev’ts =ƒvents; 97  ev -> u£d ++; 99 } } 101  $fdev’t_pÞl_pÞl ( fdev’ts * ev ,  timeout_ms ) { 103 `fdev’t_pÞl_ev’t_com´ess ( ev ); 105  `pÞl ( ev -> pÞlfds ,ƒv-> u£d , timeout_ms ); 106 } } 108  $fdev’t_pÞl_ev’t_g‘_»v’t ( fdev’ts * ev , size_t ndx ) { 109  r , pÞl_r ; 110 ià( ndx >ð ev -> u£d ) { 111 `årštf ( ¡d”r , "%s.%d: dyšg beÿu£:ƒv’t: %zd >ð%zd\n", __FILE__ , __LINE__ , ndx , ev -> u£d ); 113 `SEGFAULT (); 118 ià( ev -> pÞlfds [ ndx ]. »v’ts & POLLNVAL ) { 120 `SEGFAULT (); 123 r = 0; 124 pÞl_r = ev -> pÞlfds [ ndx ]. »v’ts ; 128 ià( pÞl_r & POLLIN è r |ð FDEVENT_IN ; 129 ià( pÞl_r & POLLOUT è r |ð FDEVENT_OUT ; 130 ià( pÞl_r & POLLERR è r |ð FDEVENT_ERR ; 131 ià( pÞl_r & POLLHUP è r |ð FDEVENT_HUP ; 132 ià( pÞl_r & POLLNVAL è r |ð FDEVENT_NVAL ; 133 ià( pÞl_r & POLLPRI è r |ð FDEVENT_PRI ; 135  ev -> pÞlfds [ ndx ]. »v’ts ; 136 } } 138  $fdev’t_pÞl_ev’t_g‘_fd ( fdev’ts * ev , size_t ndx ) { 139  ev -> pÞlfds [ ndx ]. fd ; 140 } } 142  $fdev’t_pÞl_ev’t_Ãxt_fdndx ( fdev’ts * ev ,  ndx ) { 143 size_t i ; 145 i = ( ndx < 0) ? 0 :‚dx + 1; 146 ; i < ev -> u£d ; i++) { 147 ià( ev -> pÞlfds [ i ]. »v’ts ) ; 150  i ; 151 } } 153  $fdev’t_pÞl_š™ ( fdev’ts * ev ) { 154 ev -> ty³ = FDEVENT_HANDLER_POLL ; 155  #SET ( x ) \ 156 ev -> x = fdev’t_pÞl_ ##x; ) 158 `SET ( ä“ ); 159 `SET ( pÞl ); 161 `SET ( ev’t_d– ); 162 `SET ( ev’t_add ); 164 `SET ( ev’t_Ãxt_fdndx ); 165 `SET ( ev’t_g‘_fd ); 166 `SET ( ev’t_g‘_»v’t ); 169 } } 175  $fdev’t_pÞl_š™ ( fdev’ts * ev ) { 176 `UNUSED ( ev ); 178 `årštf ( ¡d”r , "%s.%d:…oll is‚ot supported,ryo set server.event-handler = \"select\"\n", 179 __FILE__ , __LINE__ ); 181 } } @src/fdevent_select.c 1  ~ 2  ~ 4  ~ 5  ~<¡dlib.h > 6  ~<¡ršg.h > 7  ~<”ºo.h > 8  ~ 9  ~ 10  ~ 12  ~"fdev’t.h " 13  ~"£‰šgs.h " 14  ~"bufãr.h " 16 #ifdeà USE_SELECT 18  $fdev’t_£Ëù_»£t ( fdev’ts * ev ) { 19 `FD_ZERO (&( ev -> £Ëù_£t_»ad )); 20 `FD_ZERO (&( ev -> £Ëù_£t_wr™e )); 21 `FD_ZERO (&( ev -> £Ëù_£t_”rÜ )); 22 ev -> £Ëù_max_fd = -1; 25 } } 27  $fdev’t_£Ëù_ev’t_d– ( fdev’ts * ev ,  fde_ndx ,  fd ) { 28 ià( fde_ndx < 0)  -1; 30 `FD_CLR ( fd , &( ev -> £Ëù_£t_»ad )); 31 `FD_CLR ( fd , &( ev -> £Ëù_£t_wr™e )); 32 `FD_CLR ( fd , &( ev -> £Ëù_£t_”rÜ )); 35 } } 37  $fdev’t_£Ëù_ev’t_add ( fdev’ts * ev ,  fde_ndx ,  fd ,  ev’ts ) { 38 `UNUSED ( fde_ndx ); 41 `as£¹ ( fd < FD_SETSIZE ); 43 ià( ev’ts & FDEVENT_IN ) { 44 `FD_SET ( fd , &( ev -> £Ëù_£t_»ad )); 45 `FD_CLR ( fd , &( ev -> £Ëù_£t_wr™e )); 47 ià( ev’ts & FDEVENT_OUT ) { 48 `FD_CLR ( fd , &( ev -> £Ëù_£t_»ad )); 49 `FD_SET ( fd , &( ev -> £Ëù_£t_wr™e )); 51 `FD_SET ( fd , &( ev -> £Ëù_£t_”rÜ )); 53 ià( fd > ev -> £Ëù_max_fd )ƒv->select_max_fd = fd; 55  fd ; 56 } } 58  $fdev’t_£Ëù_pÞl ( fdev’ts * ev ,  timeout_ms ) { 59  timev® tv ; 61 tv . tv_£c = timeout_ms / 1000; 62 tv . tv_u£c = ( timeout_ms % 1000) * 1000; 64 ev -> £Ëù_»ad =ƒv-> £Ëù_£t_»ad ; 65 ev -> £Ëù_wr™e =ƒv-> £Ëù_£t_wr™e ; 66 ev -> £Ëù_”rÜ =ƒv-> £Ëù_£t_”rÜ ; 68  `£Ëù ( ev -> £Ëù_max_fd + 1, &Óv-> £Ëù_»ad ), &Óv-> £Ëù_wr™e ), &Óv-> £Ëù_”rÜ ), & tv ); 69 } } 71  $fdev’t_£Ëù_ev’t_g‘_»v’t ( fdev’ts * ev , size_t ndx ) { 72  »v’ts = 0; 74 ià( `FD_ISSET ( ndx , &( ev -> £Ëù_»ad ))) { 75 »v’ts |ð FDEVENT_IN ; 77 ià( `FD_ISSET ( ndx , &( ev -> £Ëù_wr™e ))) { 78 »v’ts |ð FDEVENT_OUT ; 80 ià( `FD_ISSET ( ndx , &( ev -> £Ëù_”rÜ ))) { 81 »v’ts |ð FDEVENT_ERR ; 84  »v’ts ; 85 } } 87  $fdev’t_£Ëù_ev’t_g‘_fd ( fdev’ts * ev , size_t ndx ) { 88 `UNUSED ( ev ); 90  ndx ; 91 } } 93  $fdev’t_£Ëù_ev’t_Ãxt_fdndx ( fdev’ts * ev ,  ndx ) { 94  i ; 96 i = ( ndx < 0) ? 0 :‚dx + 1; 98 ; i < ev -> £Ëù_max_fd + 1; i++) { 99 ià( `FD_ISSET ( i , &( ev -> £Ëù_»ad ))) ; 100 ià( `FD_ISSET ( i , &( ev -> £Ëù_wr™e ))) ; 101 ià( `FD_ISSET ( i , &( ev -> £Ëù_”rÜ ))) ; 104  i ; 105 } } 107  $fdev’t_£Ëù_š™ ( fdev’ts * ev ) { 108 ev -> ty³ = FDEVENT_HANDLER_SELECT ; 109  #SET ( x ) \ 110 ev -> x = fdev’t_£Ëù_ ##x; ) 112 `SET ( »£t ); 113 `SET ( pÞl ); 115 `SET ( ev’t_d– ); 116 `SET ( ev’t_add ); 118 `SET ( ev’t_Ãxt_fdndx ); 119 `SET ( ev’t_g‘_fd ); 120 `SET ( ev’t_g‘_»v’t ); 123 } } 126  $fdev’t_£Ëù_š™ ( fdev’ts * ev ) { 127 `UNUSED ( ev ); 130 } } @src/fdevent_solaris_devpoll.c 1  ~ 3  ~ 4  ~<¡dlib.h > 5  ~<¡dio.h > 6  ~<¡ršg.h > 7  ~<”ºo.h > 8  ~ 9  ~ 11  ~"fdev’t.h " 12  ~"£‰šgs.h " 13  ~"bufãr.h " 15 #ifdeà USE_SOLARIS_DEVPOLL 17  $fdev’t_sÞ¬is_devpÞl_ä“ ( fdev’ts * ev ) { 18 `ä“ ( ev -> devpÞlfds ); 19 `þo£ ( ev -> devpÞl_fd ); 20 } } 24  $fdev’t_sÞ¬is_devpÞl_ev’t_d– ( fdev’ts * ev ,  fde_ndx ,  fd ) { 25  pÞlfd pfd ; 27 ià( fde_ndx < 0)  -1; 29 pfd . fd = fd; 30 pfd . ev’ts = POLLREMOVE ; 31 pfd . »v’ts = 0; 33 ià(-1 =ð `wr™e ( ev -> devpÞl_fd , & pfd , (pfd))) { 34 `årštf ( ¡d”r , "%s.%d: (del) write failed: (%d, %s)\n", 35 __FILE__ , __LINE__ , 36 fd , `¡»¼Ü ( ”ºo )); 42 } } 44  $fdev’t_sÞ¬is_devpÞl_ev’t_add ( fdev’ts * ev ,  fde_ndx ,  fd ,  ev’ts ) { 45  pÞlfd pfd ; 46  add = 0; 48 ià( fde_ndx =ð-1è add = 1; 50 pfd . fd = fd; 51 pfd . ev’ts =ƒvents; 52 pfd . »v’ts = 0; 54 ià(-1 =ð `wr™e ( ev -> devpÞl_fd , & pfd , (pfd))) { 55 `årštf ( ¡d”r , "%s.%d: (del) write failed: (%d, %s)\n", 56 __FILE__ , __LINE__ , 57 fd , `¡»¼Ü ( ”ºo )); 62  fd ; 63 } } 65  $fdev’t_sÞ¬is_devpÞl_pÞl ( fdev’ts * ev ,  timeout_ms ) { 66  dvpÞl dÝÞl ; 67  »t ; 69 dÝÞl . dp_timeout = timeout_ms ; 70 dÝÞl . dp_nfds = ev -> maxfds - 1; 71 dÝÞl . dp_fds = ev -> devpÞlfds ; 73 »t = `ioùl ( ev -> devpÞl_fd , DP_POLL , & dÝÞl ); 75  »t ; 76 } } 78  $fdev’t_sÞ¬is_devpÞl_ev’t_g‘_»v’t ( fdev’ts * ev , size_t ndx ) { 79  ev -> devpÞlfds [ ndx ]. »v’ts ; 80 } } 82  $fdev’t_sÞ¬is_devpÞl_ev’t_g‘_fd ( fdev’ts * ev , size_t ndx ) { 83  ev -> devpÞlfds [ ndx ]. fd ; 84 } } 86  $fdev’t_sÞ¬is_devpÞl_ev’t_Ãxt_fdndx ( fdev’ts * ev ,  Ï¡_ndx ) { 87 size_t i ; 89 `UNUSED ( ev ); 91 i = ( Ï¡_ndx < 0) ? 0 :†ast_ndx + 1; 93  i ; 94 } } 96  $fdev’t_sÞ¬is_devpÞl_»£t ( fdev’ts * ev ) { 99 ià(( ev -> devpÞl_fd = `Ý’ ("/dev/pÞl", O_RDWR )) < 0) { 100 `årštf ( ¡d”r , "%s.%d: opening /dev/poll failed (%s),ryo set server.event-handler = \"poll\" or \"select\"\n", 101 __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 106 ià( `fúŽ ( ev -> devpÞl_fd , F_SETFD , FD_CLOEXEC ) < 0) { 107 `årštf ( ¡d”r , "%s.%d: opening /dev/poll failed (%s),ryo set server.event-handler = \"poll\" or \"select\"\n", 108 __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 110 `þo£ ( ev -> devpÞl_fd ); 115 } } 116  $fdev’t_sÞ¬is_devpÞl_š™ ( fdev’ts * ev ) { 117 ev -> ty³ = FDEVENT_HANDLER_SOLARIS_DEVPOLL ; 118  #SET ( x ) \ 119 ev -> x = fdev’t_sÞ¬is_devpÞl_ ##x; ) 121 `SET ( ä“ ); 122 `SET ( pÞl ); 123 `SET ( »£t ); 125 `SET ( ev’t_d– ); 126 `SET ( ev’t_add ); 128 `SET ( ev’t_Ãxt_fdndx ); 129 `SET ( ev’t_g‘_fd ); 130 `SET ( ev’t_g‘_»v’t ); 132 ev -> devpÞlfds = `m®loc ((*ev->devpÞlfdsè*ƒv-> maxfds ); 134 ià(( ev -> devpÞl_fd = `Ý’ ("/dev/pÞl", O_RDWR )) < 0) { 135 `årštf ( ¡d”r , "%s.%d: opening /dev/poll failed (%s),ryo set server.event-handler = \"poll\" or \"select\"\n", 136 __FILE__ , __LINE__ , `¡»¼Ü ( ”ºo )); 142 `þo£ ( ev -> devpÞl_fd ); 144 ev -> devpÞl_fd = -1; 147 } } 150  $fdev’t_sÞ¬is_devpÞl_š™ ( fdev’ts * ev ) { 151 `UNUSED ( ev ); 153 `årštf ( ¡d”r , "%s.%d: solaris-devpoll‚ot supported,ryo set server.event-handler = \"poll\" or \"select\"\n", 154 __FILE__ , __LINE__ ); 157 } } @src/http-header-glue.c 1  #_GNU_SOURCE ) 3  ~<¡ršg.h > 4  ~<”ºo.h > 5  ~ 7  ~"ba£.h " 8  ~"¬¿y.h " 9  ~"bufãr.h " 10  ~"log.h " 11  ~"‘ag.h " 40 #ifdeà HAVE_IPV6 41 #iâdeà SA_LEN 42 #ifdeà HAVE_SOCKADDR_SA_LEN 43  #SA_LEN ( addr è(×ddr)-> §_Ën ) ) 45 #ifdeà HAVE_STRUCT_SOCKADDR_STORAGE 46  size_t $g‘_§_Ën (cÚ¡  sockaddr * addr ) { 47  addr -> §_çmžy ) { 49 #ifdeà AF_INET 50  AF_INET : 51  ( ( sockaddr_š )); 54 #ifdeà AF_INET6 55  AF_INET6 : 56  ( ( sockaddr_š6 )); 60  ( ( sockaddr )); 63 } } 64  #SA_LEN ( addr è( `g‘_§_Ën ×ddr)) ) 66  #SA_LEN ( addr è( ( sockaddr )) ) 75  $»¥Ú£_h—d”_š£¹ ( £rv” * ¤v , cÚÃùiÚ * cÚ , cÚ¡ * key , size_t keyËn , cÚ¡ * v®ue , size_ˆ v®Ën ) { 76 d©a_¡ršg * ds ; 78 `UNUSED ( ¤v ); 80 ià( NULL =ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( cÚ -> »¥Ú£ . h—d”s , TYPE_STRING ))) { 81 ds = `d©a_»¥Ú£_š™ (); 83 `bufãr_cÝy_¡ršg_Ën ( ds -> key , key, keyËn ); 84 `bufãr_cÝy_¡ršg_Ën ( ds -> v®ue , v®ue, v®Ën ); 86 `¬¿y_š£¹_unique ( cÚ -> »¥Ú£ . h—d”s , ( d©a_un£t *) ds ); 89 } } 91  $»¥Ú£_h—d”_ov”wr™e ( £rv” * ¤v , cÚÃùiÚ * cÚ , cÚ¡ * key , size_t keyËn , cÚ¡ * v®ue , size_ˆ v®Ën ) { 92 d©a_¡ršg * ds ; 94 `UNUSED ( ¤v ); 97 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »¥Ú£ . h—d”s , key ))) { 98 `bufãr_cÝy_¡ršg ( ds -> v®ue , value); 103  `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , key , keyËn , v®ue , v®Ën ); 104 } } 106  $h‰p_»¥Ú£_»dœeù_to_dœeùÜy ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 107 bufãr * o ; 109 o = `bufãr_š™ (); 111 ià( cÚ -> cÚf . is_s¦ ) { 112 `bufãr_cÝy_¡ršg ( o , "https://"); 114 `bufãr_cÝy_¡ršg ( o , "http://"); 116 ià( cÚ -> uri . authÜ™y -> u£d ) { 117 `bufãr_­³nd_¡ršg_bufãr ( o , cÚ -> uri . authÜ™y ); 120  ho¡’t * he ; 121 #ifdeà HAVE_IPV6 122  hbuf [256]; 124 sock_addr our_addr ; 125 sockËn_t our_addr_Ën ; 127 our_addr_Ën = ( our_addr ); 129 ià(-1 =ð `g‘sockÇme ( cÚ -> fd , &( our_addr . ¶aš ), & our_addr_Ën )) { 130 cÚ -> h‰p_¡©us = 500; 132 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 133 "ÿn'ˆg‘ sockÇme", `¡»¼Ü ( ”ºo )); 135 `bufãr_ä“ ( o ); 141  our_addr . ¶aš . §_çmžy ) { 142 #ifdeà HAVE_IPV6 143  AF_INET6 : 144 ià(0 !ð `g‘Çmešfo ((cÚ¡  sockaddr *)(& our_addr . v6 ), 145 `SA_LEN ((cÚ¡  sockaddr *)& our_addr . v6 ), 146 hbuf , (hbuf), NULL , 0, 0)) { 148  d¡ [ INET6_ADDRSTRLEN ]; 150 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 152 `¡»¼Ü ( ”ºo ), ", using ip-address instead"); 154 `bufãr_­³nd_¡ršg ( o , 155 `š‘_ÁÝ ( AF_INET6 , (*)& our_addr . v6 . sš6_addr , 156 d¡ , (dst))); 158 `bufãr_­³nd_¡ršg ( o , hbuf ); 162  AF_INET : 163 ià( NULL =ð( he = `g‘ho¡byaddr ((*)& our_addr . v4 . sš_addr , ( š_addr ), AF_INET ))) { 164 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 166 h_”ºo , ", using ip-address instead"); 168 `bufãr_­³nd_¡ršg ( o , `š‘_Áß ( our_addr . v4 . sš_addr )); 170 `bufãr_­³nd_¡ršg ( o , he -> h_Çme ); 174 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 177 `bufãr_ä“ ( o ); 181 ià(!(( cÚ -> cÚf . is_s¦ =ð0 && ¤v -> ¤vcÚf . pÜt == 80) || 182 ( cÚ -> cÚf . is_s¦ =ð1 && ¤v -> ¤vcÚf . pÜt == 443))) { 183 `bufãr_­³nd_¡ršg ( o , ":"); 184 `bufãr_­³nd_lÚg ( o , ¤v -> ¤vcÚf . pÜt ); 187 `bufãr_­³nd_¡ršg_bufãr ( o , cÚ -> uri . ·th ); 188 `bufãr_­³nd_¡ršg ( o , "/"); 189 ià(! `bufãr_is_em±y ( cÚ -> uri . qu”y )) { 190 `bufãr_­³nd_¡ršg ( o , "?"); 191 `bufãr_­³nd_¡ršg_bufãr ( o , cÚ -> uri . qu”y ); 194 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("LoÿtiÚ"), `CONST_BUF_LEN ( o )); 196 cÚ -> h‰p_¡©us = 301; 197 cÚ -> fže_fšished = 1; 199 `bufãr_ä“ ( o ); 202 } } 204 bufãr * $¡ráime_ÿche_g‘ ( £rv” * ¤v , time_t Ï¡_mod ) { 205  tm *tm; 206 size_t i ; 208  i = 0; i < FILE_CACHE_MAX ; i++) { 210 ià( ¤v -> mtime_ÿche [ i ]. mtime =ð Ï¡_mod è srv->mtime_ÿche[i]. ¡r ; 213 ià( ¤v -> mtime_ÿche [ i ]. mtime == 0) ; 216 ià( i =ð FILE_CACHE_MAX ) { 217 i = 0; 220 ¤v -> mtime_ÿche [ i ]. mtime = Ï¡_mod ; 221 `bufãr_´•¬e_cÝy ( ¤v -> mtime_ÿche [ i ]. ¡r , 1024); 222 tm = `gmtime (&( ¤v -> mtime_ÿche [ i ]. mtime )); 223 ¤v -> mtime_ÿche [ i ]. ¡r -> u£d = `¡ráime (¤v->mtime_ÿche[i].¡r-> ±r , 224 ¤v -> mtime_ÿche [ i ]. ¡r -> size - 1, 225 "%a, %d %b %Y %H:%M:%S GMT", tm ); 226 ¤v -> mtime_ÿche [ i ]. ¡r -> u£d ++; 228  ¤v -> mtime_ÿche [ i ]. ¡r ; 229 } } 232  $h‰p_»¥Ú£_hªdË_ÿchabË ( £rv” * ¤v , cÚÃùiÚ * cÚ , bufãr * mtime ) { 244 ià( cÚ -> »que¡ . h‰p_if_nÚe_m©ch ) { 245 ià( `‘ag_is_equ® ( cÚ -> physiÿl . ‘ag , cÚ-> »que¡ . h‰p_if_nÚe_m©ch )) { 246 ià( cÚ -> »que¡ . h‰p_m‘hod =ð HTTP_METHOD_GET || 247 cÚ -> »que¡ . h‰p_m‘hod =ð HTTP_METHOD_HEAD ) { 250 ià( cÚ -> »que¡ . h‰p_if_modif›d_sšû ) { 251 size_t u£d_Ën ; 252 * £micÞÚ ; 254 ià( NULL =ð( £micÞÚ = `¡rchr ( cÚ -> »que¡ . h‰p_if_modif›d_sšû , ';'))) { 255 u£d_Ën = `¡¾’ ( cÚ -> »que¡ . h‰p_if_modif›d_sšû ); 257 u£d_Ën = £micÞÚ - cÚ -> »que¡ . h‰p_if_modif›d_sšû ; 260 ià(0 =ð `¡ºcmp ( cÚ -> »que¡ . h‰p_if_modif›d_sšû , mtime -> ±r , u£d_Ën )) { 261 cÚ -> h‰p_¡©us = 304; 262  HANDLER_FINISHED ; 264  buf [("Sat, 23 Jul 2005 21:20:01 GMT")]; 265 time_t t_h—d” , t_fže ; 266  tm m; 269 ià( u£d_Ën >ð( buf )) { 270 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdd", 272 cÚ -> »que¡ . h‰p_if_modif›d_sšû , u£d_Ën , ( buf ) - 1); 274 cÚ -> h‰p_¡©us = 412; 275  HANDLER_FINISHED ; 279 `¡ºýy ( buf , cÚ -> »que¡ . h‰p_if_modif›d_sšû , u£d_Ën ); 280 buf [ u£d_Ën ] = '\0'; 282 ià( NULL =ð `¡½time ( buf , "%a, %d %b %Y %H:%M:%S GMT", & tm )) { 283 cÚ -> h‰p_¡©us = 412; 284  HANDLER_FINISHED ; 286 t_h—d” = `mktime (& tm ); 288 `¡½time ( mtime -> ±r , "%a, %d %b %Y %H:%M:%S GMT", & tm ); 289 t_fže = `mktime (& tm ); 291 ià( t_fže > t_h—d” è HANDLER_GO_ON ; 293 cÚ -> h‰p_¡©us = 304; 294  HANDLER_FINISHED ; 297 cÚ -> h‰p_¡©us = 304; 298  HANDLER_FINISHED ; 301 cÚ -> h‰p_¡©us = 412; 302  HANDLER_FINISHED ; 305 } ià( cÚ -> »que¡ . h‰p_if_modif›d_sšû ) { 306 size_t u£d_Ën ; 307 * £micÞÚ ; 309 ià( NULL =ð( £micÞÚ = `¡rchr ( cÚ -> »que¡ . h‰p_if_modif›d_sšû , ';'))) { 310 u£d_Ën = `¡¾’ ( cÚ -> »que¡ . h‰p_if_modif›d_sšû ); 312 u£d_Ën = £micÞÚ - cÚ -> »que¡ . h‰p_if_modif›d_sšû ; 315 ià(0 =ð `¡ºcmp ( cÚ -> »que¡ . h‰p_if_modif›d_sšû , mtime -> ±r , u£d_Ën )) { 316 cÚ -> h‰p_¡©us = 304; 317  HANDLER_FINISHED ; 319  buf [("Sat, 23 Jul 2005 21:20:01 GMT")]; 320 time_t t_h—d” , t_fže ; 321  tm m; 324 ià( u£d_Ën >ð( buf )è HANDLER_GO_ON ; 326 `¡ºýy ( buf , cÚ -> »que¡ . h‰p_if_modif›d_sšû , u£d_Ën ); 327 buf [ u£d_Ën ] = '\0'; 329 ià( NULL =ð `¡½time ( buf , "%a, %d %b %Y %H:%M:%S GMT", & tm )) { 333 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 334 "¡½time(èçžed on", buf ); 335  HANDLER_GO_ON ; 337 t_h—d” = `mktime (& tm ); 339 `¡½time ( mtime -> ±r , "%a, %d %b %Y %H:%M:%S GMT", & tm ); 340 t_fže = `mktime (& tm ); 342 ià( t_fže > t_h—d” è HANDLER_GO_ON ; 344 cÚ -> h‰p_¡©us = 304; 345  HANDLER_FINISHED ; 349  HANDLER_GO_ON ; 350 } } @src/http_auth.c 1 #ifdeà HAVE_CONFIG_H 2  ~"cÚfig.h " 5 #ifdeà HAVE_CRYPT_H 6  ~<üy±.h > 7 #–ià defšed ( __lšux__ ) 9  #_XOPEN_SOURCE ) 12 #ifdeà HAVE_LIBCRYPT 13  #HAVE_CRYPT ) 16  ~ 17  ~ 19  ~ 20  ~<¡dlib.h > 21  ~<¡dio.h > 22  ~<¡ršg.h > 23  ~ 24  ~<”ºo.h > 25  ~ 26  ~<ùy³.h > 28  ~"£rv”.h " 29  ~"log.h " 30  ~"h‰p_auth.h " 31  ~"h‰p_auth_dige¡.h " 32  ~"š‘_ÁÝ_ÿche.h " 33  ~"¡»am.h " 35 #ifdeà USE_OPENSSL 36  ~<Ý’s¦/md5.h > 38  ~"md5.h " 56 hªdËr_t auth_ld­_š™ ( £rv” * ¤v , mod_auth_¶ugš_cÚfig * s ); 58 cÚ¡  gba£64_·d = '='; 60 cÚ¡  gba£64_»v”£_bË [256] = { 79 * $ba£64_decode ( bufãr * out , cÚ¡ * š ) { 80 * »suÉ ; 81  ch , j = 0, k ; 82 size_t i ; 84 size_t š_Ën = `¡¾’ ( š ); 86 `bufãr_´•¬e_cÝy ( out , š_Ën ); 88 »suÉ = (*) out -> ±r ; 90 ch = š [0]; 92  i = 0; i < š_Ën ; i++) { 93 ch = š [ i ]; 95 ià( ch == '\0') ; 97 ià( ch =ð ba£64_·d ) ; 99 ch = ba£64_»v”£_bË [ch]; 100 ià( ch < 0) ; 102  i % 4) { 104 »suÉ [ j ] = ch << 2; 107 »suÉ [ j ++] |ð ch >> 4; 108 »suÉ [ j ] = ( ch & 0x0f) << 4; 111 »suÉ [ j ++] |ð ch >>2; 112 »suÉ [ j ] = ( ch & 0x03) << 6; 115 »suÉ [ j ++] |ð ch ; 119 k = j ; 121 ià( ch =ð ba£64_·d ) { 122  i % 4) { 125  NULL ; 127 k ++; 129 »suÉ [ k ++] = 0; 132 »suÉ [ k ] = '\0'; 134 out -> u£d = k ; 136  »suÉ ; 137 } } 139  $h‰p_auth_g‘_·sswÜd ( £rv” * ¤v , mod_auth_¶ugš_d©a * p , bufãr * u£ºame , bufã¸* »®m , bufã¸* ·sswÜd ) { 140  »t = -1; 142 ià(! u£ºame -> u£d || ! »®m ->used)  -1; 144 ià( p -> cÚf . auth_back’d =ð AUTH_BACKEND_HTDIGEST ) { 145 ¡»am f ; 146 * f_lše ; 148 ià( `bufãr_is_em±y ( p -> cÚf . auth_htdige¡_u£rfže ))  -1; 150 ià(0 !ð `¡»am_Ý’ (& f , p -> cÚf . auth_htdige¡_u£rfže )) { 151 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", "Ý’šg dige¡-u£rfže", p -> cÚf . auth_htdige¡_u£rfže , "çžed:", `¡»¼Ü ( ”ºo )); 156 f_lše = f . ¡¬t ; 158  f_lše - f . ¡¬t !ðf. size ) { 159 * f_u£r , * f_pwd , * e , * f_»®m ; 160 size_t u_Ën , pwd_Ën , r_Ën ; 162 f_u£r = f_lše ; 170 ià( NULL =ð( f_»®m = `memchr ( f_u£r , ':', f . size - (f_u£¸- f. ¡¬t ) ))) { 171 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 172 "·r£dƒ¼Ü in", p -> cÚf . auth_htdige¡_u£rfže , 175 `¡»am_þo£ (& f ); 180 ià( NULL =ð( f_pwd = `memchr ( f_»®m + 1, ':', f . size - (f_»®m + 1 - f. ¡¬t )))) { 181 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 182 "·r£dƒ¼Ü in", p -> cÚf . auth_¶aš_u£rfže , 185 `¡»am_þo£ (& f ); 191 u_Ën = f_»®m - f_u£r ; 192 f_»®m ++; 193 r_Ën = f_pwd - f_»®m ; 194 f_pwd ++; 196 ià( NULL !ð( e = `memchr ( f_pwd , '\n', f . size - (f_pwd - f. ¡¬t )))) { 197 pwd_Ën = e - f_pwd ; 199 pwd_Ën = f . size - ( f_pwd - f. ¡¬t ); 202 ià( u£ºame -> u£d - 1 =ð u_Ën && 203 ( »®m -> u£d - 1 =ð r_Ën ) && 204 (0 =ð `¡ºcmp ( u£ºame -> ±r , f_u£r , u_Ën )) && 205 (0 =ð `¡ºcmp ( »®m -> ±r , f_»®m , r_Ën ))) { 208 `bufãr_cÝy_¡ršg_Ën ( ·sswÜd , f_pwd , pwd_Ën ); 210 »t = 0; 215 ià(! e ) ; 217 f_lše = e + 1; 220 `¡»am_þo£ (& f ); 221 } ià( p -> cÚf . auth_back’d =ð AUTH_BACKEND_HTPASSWD || 222 p -> cÚf . auth_back’d =ð AUTH_BACKEND_PLAIN ) { 223 ¡»am f ; 224 * f_lše ; 225 bufãr * auth_â ; 227 auth_â = ( p -> cÚf . auth_back’d =ð AUTH_BACKEND_HTPASSWD è?…->cÚf. auth_hasswd_u£rfže :…->cÚf. auth_¶aš_u£rfže ; 229 ià( `bufãr_is_em±y ( auth_â ))  -1; 231 ià(0 !ð `¡»am_Ý’ (& f , auth_â )) { 232 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", 233 "Ý’šg…Ïš-u£rfže", auth_â , "çžed:", `¡»¼Ü ( ”ºo )); 238 f_lše = f . ¡¬t ; 240  f_lše - f . ¡¬t !ðf. size ) { 241 * f_u£r , * f_pwd , * e ; 242 size_t u_Ën , pwd_Ën ; 244 f_u£r = f_lše ; 252 ià( NULL =ð( f_pwd = `memchr ( f_u£r , ':', f . size - (f_u£¸- f. ¡¬t ) ))) { 253 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 254 "·r£dƒ¼Ü in", auth_â , 257 `¡»am_þo£ (& f ); 263 u_Ën = f_pwd - f_u£r ; 264 f_pwd ++; 266 ià( NULL !ð( e = `memchr ( f_pwd , '\n', f . size - (f_pwd - f. ¡¬t )))) { 267 pwd_Ën = e - f_pwd ; 269 pwd_Ën = f . size - ( f_pwd - f. ¡¬t ); 272 ià( u£ºame -> u£d - 1 =ð u_Ën && 273 (0 =ð `¡ºcmp ( u£ºame -> ±r , f_u£r , u_Ën ))) { 276 `bufãr_cÝy_¡ršg_Ën ( ·sswÜd , f_pwd , pwd_Ën ); 278 »t = 0; 283 ià(! e ) ; 285 f_lše = e + 1; 288 `¡»am_þo£ (& f ); 289 } ià( p -> cÚf . auth_back’d =ð AUTH_BACKEND_LDAP ) { 290 »t = 0; 295  »t ; 296 } } 298  $h‰p_auth_m©ch_ruËs ( £rv” * ¤v , mod_auth_¶ugš_d©a * p , cÚ¡ * u¾ , cÚ¡ * u£ºame , cÚ¡ * group , cÚ¡ * ho¡ ) { 299 cÚ¡ * r = NULL , * ruËs = NULL; 300 size_t i ; 301  u£ºame_Ën ; 302 d©a_¡ršg * »quœe ; 303 ¬¿y * »q ; 305 `UNUSED ( group ); 306 `UNUSED ( ho¡ ); 310  i = 0; i < p -> cÚf . auth_»quœe -> u£d ; i++) { 311 ià( p -> cÚf . auth_»quœe -> d©a [ i ]-> key -> u£d == 0) ; 313 ià(0 =ð `¡ºcmp ( u¾ , p -> cÚf . auth_»quœe -> d©a [ i ]-> key -> ±r ,…->cÚf.auth_»quœe->d©a[i]->key-> u£d - 1)) { 318 ià( i =ð p -> cÚf . auth_»quœe -> u£d ) { 322 »q = (( d©a_¬¿y *)( p -> cÚf . auth_»quœe -> d©a [ i ]))-> v®ue ; 324 »quœe = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( »q , "require"); 327 ià(0 =ð `¡rcmp ( »quœe -> v®ue -> ±r , "valid-user")) { 335 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "ruËs", »quœe -> v®ue ); 338 u£ºame_Ën = u£ºame ? `¡¾’ (username) : 0; 340 r = ruËs = »quœe -> v®ue -> ±r ; 343 cÚ¡ * eq ; 344 cÚ¡ * k , * v , * e ; 345  k_Ën , v_Ën , r_Ën ; 347 e = `¡rchr ( r , '|'); 349 ià( e ) { 350 r_Ën = e - r ; 352 r_Ën = `¡¾’ ( ruËs è- ( r -„ules); 357 ià(0 =ð `¡ºcmp ( r , "v®id-u£r", r_Ën )) { 358 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 360 »quœe -> v®ue ); 365 ià( NULL =ð( eq = `¡rchr ( r , '='))) { 366 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 368 »quœe -> v®ue ); 373 ià( eq > r + r_Ën ) { 374 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 376 »quœe -> v®ue ); 383 k = r ; 384 k_Ën = eq - r ; 385 v = eq + 1; 386 v_Ën = r_Ën - k_Ën - 1; 388 ià( k_Ën == 4) { 389 ià(0 =ð `¡ºcmp ( k , "u£r", k_Ën )) { 390 ià( u£ºame && 391 u£ºame_Ën =ð v_Ën && 392 0 =ð `¡ºcmp ( u£ºame , v , v_Ën )) { 395 } ià(0 =ð `¡ºcmp ( k , "ho¡", k_Ën )) { 396 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "host ... (not implemented)"); 398 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "unknown key"); 401 } ià( k_Ën == 5) { 402 ià(0 =ð `¡ºcmp ( k , "group", k_Ën )) { 403 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "group ... (not implemented)"); 405 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "unknowÀkey", k ); 409 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "unknown key"); 413 ià(! e ) ; 414 r = e + 1; 417 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "nothing matched"); 420 } } 422  #APR_MD5_DIGESTSIZE 16 ) 423  #APR1_ID "$­r1$" ) 431  $to64 (* s ,  v ,  n ) 433  ™ß64 [] = 436 -- n >= 0) { 437 * s ++ = ™ß64 [ v &0x3f]; 438 v >>= 6; 440 } } 442  $­r_md5_’code (cÚ¡ * pw , cÚ¡ * §É , * »suÉ , size_t nby‹s ) { 449  ·sswd [120], * p ; 450 cÚ¡ * ¥ , * • ; 451  fš® [ APR_MD5_DIGESTSIZE ]; 452 ssize_t ¦ , ¶ , i ; 453 MD5_CTX ùx , ùx1 ; 454  l ; 461 ¥ = §É ; 466 ià(! `¡ºcmp ( ¥ , APR1_ID , `¡¾’ (APR1_ID))) { 467 ¥ +ð `¡¾’ ( APR1_ID ); 473  • = ¥ ; (*ep != '\0') && (*ep != '$') && (ep < (sp + 8));ƒp++) { 480 ¦ = • - ¥ ; 485 `MD5_In™ (& ùx ); 490 `MD5_Upd©e (& ùx , pw , `¡¾’ (pw)); 495 `MD5_Upd©e (& ùx , APR1_ID , `¡¾’ (APR1_ID)); 500 `MD5_Upd©e (& ùx , ¥ , ¦ ); 505 `MD5_In™ (& ùx1 ); 506 `MD5_Upd©e (& ùx1 , pw , `¡¾’ (pw)); 507 `MD5_Upd©e (& ùx1 , ¥ , ¦ ); 508 `MD5_Upd©e (& ùx1 , pw , `¡¾’ (pw)); 509 `MD5_Fš® ( fš® , & ùx1 ); 510  ¶ = `¡¾’ ( pw );…È> 0;…È-ð APR_MD5_DIGESTSIZE ) { 511 `MD5_Upd©e (& ùx , fš® , 512 ( ¶ > APR_MD5_DIGESTSIZE ) ? APR_MD5_DIGESTSIZE :…l); 518 `mem£t ( fš® , 0, (final)); 523  i = `¡¾’ ( pw ); i != 0; i >>= 1) { 524 ià( i & 1) { 525 `MD5_Upd©e (& ùx , fš® , 1); 528 `MD5_Upd©e (& ùx , pw , 1); 536 `¡rýy ( ·sswd , APR1_ID ); 537 `¡ºÿt ( ·sswd , ¥ , ¦ ); 538 `¡rÿt ( ·sswd , "$"); 540 `MD5_Fš® ( fš® , & ùx ); 547  i = 0; i < 1000; i++) { 548 `MD5_In™ (& ùx1 ); 549 ià( i & 1) { 550 `MD5_Upd©e (& ùx1 , pw , `¡¾’ (pw)); 553 `MD5_Upd©e (& ùx1 , fš® , APR_MD5_DIGESTSIZE ); 555 ià( i % 3) { 556 `MD5_Upd©e (& ùx1 , ¥ , ¦ ); 559 ià( i % 7) { 560 `MD5_Upd©e (& ùx1 , pw , `¡¾’ (pw)); 563 ià( i & 1) { 564 `MD5_Upd©e (& ùx1 , fš® , APR_MD5_DIGESTSIZE ); 567 `MD5_Upd©e (& ùx1 , pw , `¡¾’ (pw)); 569 `MD5_Fš® ( fš® ,& ùx1 ); 572 p = ·sswd + `¡¾’ (passwd); 574 l = ( fš® [ 0]<<16è| (fš®[ 6]<<8è| fš®[12]; `to64 ( p ,†, 4);… += 4; 575 l = ( fš® [ 1]<<16è| (fš®[ 7]<<8è| fš®[13]; `to64 ( p ,†, 4);… += 4; 576 l = ( fš® [ 2]<<16è| (fš®[ 8]<<8è| fš®[14]; `to64 ( p ,†, 4);… += 4; 577 l = ( fš® [ 3]<<16è| (fš®[ 9]<<8è| fš®[15]; `to64 ( p ,†, 4);… += 4; 578 l = ( fš® [ 4]<<16è| (fš®[10]<<8è| fš®[ 5]; `to64 ( p ,†, 4);… += 4; 579 l = fš® [11] ; `to64 ( p ,†, 2);… += 2; 580 * p = '\0'; 585 `mem£t ( fš® , 0, (final)); 589  #­r_ýy¡º ¡ºýy ) 590 `­r_ýy¡º ( »suÉ , ·sswd , nby‹s - 1); 591 } } 601  $h‰p_auth_basic_·sswÜd_com·» ( £rv” * ¤v , mod_auth_¶ugš_d©a * p , ¬¿y * »q , bufãr * u£ºame , bufã¸* »®m , bufã¸* ·sswÜd , cÚ¡ * pw ) { 602 `UNUSED ( ¤v ); 603 `UNUSED ( »q ); 605 ià( p -> cÚf . auth_back’d =ð AUTH_BACKEND_HTDIGEST ) { 612 MD5_CTX Md5Ctx ; 613 HASH HA1 ; 614  a1 [256]; 616 `MD5_In™ (& Md5Ctx ); 617 `MD5_Upd©e (& Md5Ctx , (*) u£ºame -> ±r , u£ºame-> u£d - 1); 618 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 619 `MD5_Upd©e (& Md5Ctx , (*) »®m -> ±r ,„—lm-> u£d - 1); 620 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 621 `MD5_Upd©e (& Md5Ctx , (*) pw , `¡¾’ (pw)); 622 `MD5_Fš® ( HA1 , & Md5Ctx ); 624 `CvtHex ( HA1 , a1 ); 626 ià(0 =ð `¡rcmp ( ·sswÜd -> ±r , a1 )) { 629 } ià( p -> cÚf . auth_back’d =ð AUTH_BACKEND_HTPASSWD ) { 630  §m¶e [120]; 631 ià(! `¡ºcmp ( ·sswÜd -> ±r , APR1_ID , `¡¾’ (APR1_ID))) { 635 `­r_md5_’code ( pw , ·sswÜd -> ±r , §m¶e , (sample)); 636  ( `¡rcmp ( §m¶e , ·sswÜd -> ±r ) == 0) ? 0 : 1; 638 #ifdeà HAVE_CRYPT 639  §É [32]; 640 * üy±ed ; 641 size_t §É_Ën = 0; 656 ià( ·sswÜd -> u£d < 13 + 1) { 657 `årštf ( ¡d”r , "%s.%d\n", __FILE__ , __LINE__ ); 661 ià( ·sswÜd -> u£d == 13 + 1) { 663 §É_Ën = 2; 664 } ià( ·sswÜd -> ±r [0] == '$' &&…assword->ptr[2] == '$') { 665 * dÞÏr = NULL ; 667 ià( NULL =ð( dÞÏr = `¡rchr ( ·sswÜd -> ±r + 3, '$'))) { 668 `årštf ( ¡d”r , "%s.%d\n", __FILE__ , __LINE__ ); 672 §É_Ën = dÞÏr - ·sswÜd -> ±r ; 675 ià( §É_Ën > ( §É ) - 1) { 676 `årštf ( ¡d”r , "%s.%d\n", __FILE__ , __LINE__ ); 680 `¡ºýy ( §É , ·sswÜd -> ±r , §É_Ën ); 682 §É [ §É_Ën ] = '\0'; 684 üy±ed = `üy± ( pw , §É ); 686 ià(0 =ð `¡rcmp ( ·sswÜd -> ±r , üy±ed )) { 689 `årštf ( ¡d”r , "%s.%d\n", __FILE__ , __LINE__ ); 694 } ià( p -> cÚf . auth_back’d =ð AUTH_BACKEND_PLAIN ) { 695 ià(0 =ð `¡rcmp ( ·sswÜd -> ±r , pw )) { 698 } ià( p -> cÚf . auth_back’d =ð AUTH_BACKEND_LDAP ) { 699 #ifdeà USE_LDAP 700 LDAP * ld­ ; 701 LDAPMes§ge * lm , * fœ¡ ; 702 * dn ; 703  »t ; 704 * ©Œs [] = { LDAP_NO_ATTRS , NULL }; 705 size_t i ; 724  i = 0; i < u£ºame -> u£d - 1; i++) { 725  c = u£ºame -> ±r [ i ]; 727 ià(! `i§Íha ( c ) && 728 ! `isdig™ ( c )) { 730 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbd", 731 "ld­: inv®id ch¬aù” (a-zA-Z0-9‡Îowedèš u£ºame:", u£ºame , i ); 737 ià( p -> cÚf . auth_ld­_®low_em±y_pw !ð1 && pw [0] == '\0') 741 `bufãr_cÝy_¡ršg_bufãr ( p -> ld­_fž‹r ,…-> cÚf . ld­_fž‹r_´e ); 742 `bufãr_­³nd_¡ršg_bufãr ( p -> ld­_fž‹r , u£ºame ); 743 `bufãr_­³nd_¡ršg_bufãr ( p -> ld­_fž‹r ,…-> cÚf . ld­_fž‹r_po¡ ); 747 ià( p -> cÚf . ld­ =ð NULL || 748 LDAP_SUCCESS !ð( »t = `ld­_£¬ch_s ( p -> cÚf . ld­ ,…->cÚf. auth_ld­_ba£dn -> ±r , LDAP_SCOPE_SUBTREE ,…-> ld­_fž‹r ->±r, ©Œs , 0, & lm ))) { 749 ià( `auth_ld­_š™ ( ¤v , & p -> cÚf è!ð HANDLER_GO_ON ) 751 ià( LDAP_SUCCESS !ð( »t = `ld­_£¬ch_s ( p -> cÚf . ld­ ,…->cÚf. auth_ld­_ba£dn -> ±r , LDAP_SCOPE_SUBTREE ,…-> ld­_fž‹r ->±r, ©Œs , 0, & lm ))) { 753 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sssb", 754 "ld­:", `ld­_”r2¡ršg ( »t ), "fž‹r:", p -> ld­_fž‹r ); 760 ià( NULL =ð( fœ¡ = `ld­_fœ¡_’Œy ( p -> cÚf . ld­ , lm ))) { 761 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "ldap ..."); 763 `ld­_msgä“ ( lm ); 768 ià( NULL =ð( dn = `ld­_g‘_dn ( p -> cÚf . ld­ , fœ¡ ))) { 769 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "ldap ..."); 771 `ld­_msgä“ ( lm ); 776 `ld­_msgä“ ( lm ); 780 ià( NULL =ð( ld­ = `ld­_š™ ( p -> cÚf . auth_ld­_ho¡Çme -> ±r , LDAP_PORT ))) { 781 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ld­ ...", `¡»¼Ü ( ”ºo )); 785 »t = LDAP_VERSION3 ; 786 ià( LDAP_OPT_SUCCESS !ð( »t = `ld­_£t_ÝtiÚ ( ld­ , LDAP_OPT_PROTOCOL_VERSION , &ret))) { 787 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ld­:", `ld­_”r2¡ršg ( »t )); 789 `ld­_unbšd_s ( ld­ ); 794 ià( p -> cÚf . auth_ld­_¡¬‰ls == 1) { 795 ià( LDAP_OPT_SUCCESS !ð( »t = `ld­_¡¬t_Žs_s ( ld­ , NULL , NULL))) { 796 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ld­ s¹TLS fažed:", `ld­_”r2¡ršg ( »t )); 798 `ld­_unbšd_s ( ld­ ); 805 ià( LDAP_SUCCESS !ð( »t = `ld­_sim¶e_bšd_s ( ld­ , dn , pw ))) { 806 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ld­:", `ld­_”r2¡ršg ( »t )); 808 `ld­_unbšd_s ( ld­ ); 814 `ld­_unbšd_s ( ld­ ); 822 } } 824  $h‰p_auth_basic_check ( £rv” * ¤v , cÚÃùiÚ * cÚ , mod_auth_¶ugš_d©a * p , ¬¿y * »q , bufãr * u¾ , cÚ¡ * »®m_¡r ) { 825 bufãr * u£ºame , * ·sswÜd ; 826 * pw ; 828 d©a_¡ršg * »®m ; 830 »®m = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( »q , "realm"); 832 u£ºame = `bufãr_š™ (); 834 ià(! `ba£64_decode ( u£ºame , »®m_¡r )) { 835 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "decodešg ba£64-¡ršg fažed", u£ºame ); 837 `bufãr_ä“ ( u£ºame ); 842 ià( NULL =ð( pw = `¡rchr ( u£ºame -> ±r , ':'))) { 843 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", ": i missšg in", u£ºame ); 845 `bufãr_ä“ ( u£ºame ); 849 * pw ++ = '\0'; 851 u£ºame -> u£d = pw - u£ºame-> ±r ; 853 ·sswÜd = `bufãr_š™ (); 855 ià( `h‰p_auth_g‘_·sswÜd ( ¤v , p , u£ºame , »®m -> v®ue , ·sswÜd )) { 856 `bufãr_ä“ ( u£ºame ); 857 `bufãr_ä“ ( ·sswÜd ); 859 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "get_password failed"); 865 ià( `h‰p_auth_basic_·sswÜd_com·» ( ¤v , p , »q , u£ºame , »®m -> v®ue , ·sswÜd , pw )) { 866 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbbss", "·sswÜd dÛ¢'ˆm©ch fÜ ", cÚ -> uri . ·th , u£ºame , ", IP:", `š‘_ÁÝ_ÿche_g‘_ (¤v, &(cÚ-> d¡_addr ))); 868 `bufãr_ä“ ( u£ºame ); 869 `bufãr_ä“ ( ·sswÜd ); 875 ià( `h‰p_auth_m©ch_ruËs ( ¤v , p , u¾ -> ±r , u£ºame ->±r, NULL , NULL)) { 876 `bufãr_ä“ ( u£ºame ); 877 `bufãr_ä“ ( ·sswÜd ); 879 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "rules didn't match"); 885 `bufãr_cÝy_¡ršg_bufãr ( p -> auth_u£r , u£ºame ); 887 `bufãr_ä“ ( u£ºame ); 888 `bufãr_ä“ ( ·sswÜd ); 891 } } 894 cÚ¡ * mkey ; 895  mkey_Ën ; 896 ** m±r ; 897 } tdige¡_kv ; 899  $h‰p_auth_dige¡_check ( £rv” * ¤v , cÚÃùiÚ * cÚ , mod_auth_¶ugš_d©a * p , ¬¿y * »q , bufãr * u¾ , cÚ¡ * »®m_¡r ) { 900  a1 [256]; 901  a2 [256]; 903 * u£ºame ; 904 * »®m ; 905 * nÚû ; 906 * uri ; 907 * ®gÜ™hm ; 908 * qÝ ; 909 * úÚû ; 910 * nc ; 911 * »¥Ús ; 913 * e , * c ; 914 cÚ¡ * m = NULL ; 915  i ; 916 bufãr * ·sswÜd , * b , * u£ºame_buf , * »®m_buf ; 918 MD5_CTX Md5Ctx ; 919 HASH HA1 ; 920 HASH HA2 ; 921 HASH Re¥Hash ; 922 HASHHEX HA2Hex ; 926  #S ( x ) \ 927 x , (x)-1, NULL ) 928 dige¡_kv dkv [10] = { 929 { `S ("username=") }, 930 { `S ("realm=") }, 931 { `S ("nonce=") }, 932 { `S ("uri=") }, 933 { `S ("algorithm=") }, 934 { `S ("qop=") }, 935 { `S ("cnonce=") }, 936 { `S ("nc=") }, 937 { `S ("response=") }, 939 { NULL , 0, NULL } 941 #undeà S 943 dkv [0]. ±r = & u£ºame ; 944 dkv [1]. ±r = & »®m ; 945 dkv [2]. ±r = & nÚû ; 946 dkv [3]. ±r = & uri ; 947 dkv [4]. ±r = & ®gÜ™hm ; 948 dkv [5]. ±r = & qÝ ; 949 dkv [6]. ±r = & úÚû ; 950 dkv [7]. ±r = & nc ; 951 dkv [8]. ±r = & »¥Ús ; 952 dkv [9]. ±r = NULL ; 954 `UNUSED ( »q ); 956  i = 0; dkv [i]. key ; i++) { 957 *( dkv [ i ]. ±r èð NULL ; 961 ià( p -> cÚf . auth_back’d !ð AUTH_BACKEND_HTDIGEST && 962 p -> cÚf . auth_back’d !ð AUTH_BACKEND_PLAIN ) { 963 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 969 b = `bufãr_š™_¡ršg ( »®m_¡r ); 972  c = b -> ±r ; *c; c++) { 974 * c == ' ' || *c == '\t') c++; 975 ià(!* c ) ; 977  i = 0; dkv [i]. key ; i++) { 978 ià((0 =ð `¡ºcmp ( c , dkv [ i ]. key , dkv[i]. key_Ën ))) { 979 ià(( c [ dkv [ i ]. key_Ën ] == '"') && 980 ( NULL !ð( e = `¡rchr ( c + dkv [ i ]. key_Ën + 1, '"')))) { 982 *( dkv [ i ]. ±r èð c + dkv[i]. key_Ën + 1; 983 c = e ; 985 * e = '\0'; 986 } ià( NULL !ð( e = `¡rchr ( c + dkv [ i ]. key_Ën , ','))) { 988 *( dkv [ i ]. ±r èð c + dkv[i]. key_Ën ; 989 c = e ; 991 * e = '\0'; 994 *( dkv [ i ]. ±r èð c + dkv[i]. key_Ën ; 995 c +ð `¡¾’ (c) - 1; 1001 ià( p -> cÚf . auth_debug > 1) { 1002 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "u£ºame", u£ºame ); 1003 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "»®m", »®m ); 1004 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "nÚû", nÚû ); 1005 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "uri", uri ); 1006 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "®gÜigthm", ®gÜ™hm ); 1007 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "qÝ", qÝ ); 1008 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "úÚû", úÚû ); 1009 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "nc", nc ); 1010 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "»¥Ú£", »¥Ús ); 1014 ià(! u£ºame || 1015 ! »®m || 1016 ! nÚû || 1017 ! uri || 1018 ( qÝ && (! nc || ! úÚû )) || 1019 ! »¥Ús ) { 1022 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1025 `bufãr_ä“ ( b ); 1032 ià( ®gÜ™hm && 1033 0 =ð `¡rÿ£cmp ( ®gÜ™hm , "md5-sess") && 1034 (! nÚû || ! úÚû )) { 1035 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1038 `bufãr_ä“ ( b ); 1042 m = `g‘_h‰p_m‘hod_Çme ( cÚ -> »que¡ . h‰p_m‘hod ); 1045 ·sswÜd = `bufãr_š™ (); 1046 u£ºame_buf = `bufãr_š™_¡ršg ( u£ºame ); 1047 »®m_buf = `bufãr_š™_¡ršg ( »®m ); 1048 ià( `h‰p_auth_g‘_·sswÜd ( ¤v , p , u£ºame_buf , »®m_buf , ·sswÜd )) { 1049 `bufãr_ä“ ( ·sswÜd ); 1050 `bufãr_ä“ ( b ); 1051 `bufãr_ä“ ( u£ºame_buf ); 1052 `bufãr_ä“ ( »®m_buf ); 1056 `bufãr_ä“ ( u£ºame_buf ); 1057 `bufãr_ä“ ( »®m_buf ); 1059 ià( p -> cÚf . auth_back’d =ð AUTH_BACKEND_PLAIN ) { 1061 `MD5_In™ (& Md5Ctx ); 1062 `MD5_Upd©e (& Md5Ctx , (*) u£ºame , `¡¾’ (username)); 1063 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 1064 `MD5_Upd©e (& Md5Ctx , (*) »®m , `¡¾’ (realm)); 1065 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 1066 `MD5_Upd©e (& Md5Ctx , (*) ·sswÜd -> ±r ,…asswÜd-> u£d - 1); 1067 `MD5_Fš® ( HA1 , & Md5Ctx ); 1068 } ià( p -> cÚf . auth_back’d =ð AUTH_BACKEND_HTDIGEST ) { 1071  i = 0; i < HASHLEN ; i++) { 1072 HA1 [ i ] = `hex2št ( ·sswÜd -> ±r [i*2]) << 4; 1073 HA1 [ i ] |ð `hex2št ( ·sswÜd -> ±r [i*2+1]); 1077 `SEGFAULT (); 1080 `bufãr_ä“ ( ·sswÜd ); 1082 ià( ®gÜ™hm && 1083 `¡rÿ£cmp ( ®gÜ™hm , "md5-sess") == 0) { 1084 `MD5_In™ (& Md5Ctx ); 1085 `MD5_Upd©e (& Md5Ctx , (*) HA1 , 16); 1086 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 1087 `MD5_Upd©e (& Md5Ctx , (*) nÚû , `¡¾’ (nonce)); 1088 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 1089 `MD5_Upd©e (& Md5Ctx , (*) úÚû , `¡¾’ (cnonce)); 1090 `MD5_Fš® ( HA1 , & Md5Ctx ); 1093 `CvtHex ( HA1 , a1 ); 1096 `MD5_In™ (& Md5Ctx ); 1097 `MD5_Upd©e (& Md5Ctx , (*) m , `¡¾’ (m)); 1098 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 1099 `MD5_Upd©e (& Md5Ctx , (*) uri , `¡¾’ (uri)); 1100 ià( qÝ && `¡rÿ£cmp (qop, "auth-int") == 0) { 1101 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 1102 `MD5_Upd©e (& Md5Ctx , (*)"", HASHHEXLEN ); 1104 `MD5_Fš® ( HA2 , & Md5Ctx ); 1105 `CvtHex ( HA2 , HA2Hex ); 1108 `MD5_In™ (& Md5Ctx ); 1109 `MD5_Upd©e (& Md5Ctx , (*) a1 , HASHHEXLEN ); 1110 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 1111 `MD5_Upd©e (& Md5Ctx , (*) nÚû , `¡¾’ (nonce)); 1112 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 1113 ià( qÝ && *qop) { 1114 `MD5_Upd©e (& Md5Ctx , (*) nc , `¡¾’ (nc)); 1115 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 1116 `MD5_Upd©e (& Md5Ctx , (*) úÚû , `¡¾’ (cnonce)); 1117 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 1118 `MD5_Upd©e (& Md5Ctx , (*) qÝ , `¡¾’ (qop)); 1119 `MD5_Upd©e (& Md5Ctx , (*)":", 1); 1121 `MD5_Upd©e (& Md5Ctx , (*) HA2Hex , HASHHEXLEN ); 1122 `MD5_Fš® ( Re¥Hash , & Md5Ctx ); 1123 `CvtHex ( Re¥Hash , a2 ); 1125 ià(0 !ð `¡rcmp ( a2 , »¥Ús )) { 1128 ià( p -> cÚf . auth_debug ) { 1129 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 1130 "dige¡: dige¡ mism©ch", a2 , »¥Ús ); 1133 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 1134 "dige¡:‡uth fažed fÜ ", u£ºame , ": wrÚg…asswÜd, IP:", `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &( cÚ -> d¡_addr ))); 1136 `bufãr_ä“ ( b ); 1141 ià( `h‰p_auth_m©ch_ruËs ( ¤v , p , u¾ -> ±r , u£ºame , NULL , NULL)) { 1142 `bufãr_ä“ ( b ); 1144 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1151 `bufãr_cÝy_¡ršg ( p -> auth_u£r , u£ºame ); 1153 `bufãr_ä“ ( b ); 1155 ià( p -> cÚf . auth_debug ) { 1156 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1160 } } 1163  $h‰p_auth_dige¡_g’”©e_nÚû ( £rv” * ¤v , mod_auth_¶ugš_d©a * p , bufãr * â ,  out [33]) { 1164 HASH h ; 1165 MD5_CTX Md5Ctx ; 1166  hh [32]; 1168 `UNUSED ( p ); 1171 `MD5_In™ (& Md5Ctx ); 1172 `MD5_Upd©e (& Md5Ctx , (*) â -> ±r , fn-> u£d - 1); 1173 `MD5_Upd©e (& Md5Ctx , (*)"+", 1); 1176 `LI_Éo¡r ( hh , ¤v -> cur_ts ); 1177 `MD5_Upd©e (& Md5Ctx , (*) hh , `¡¾’ (hh)); 1178 `LI_Éo¡r ( hh , `¿nd ()); 1179 `MD5_Upd©e (& Md5Ctx , (*) hh , `¡¾’ (hh)); 1181 `MD5_Fš® ( h , & Md5Ctx ); 1183 `CvtHex ( h , out ); 1186 } } @src/http_auth.h 1 #iâdeà _HTTP_AUTH_H_ 2  #_HTTP_AUTH_H_ ) 4  ~"£rv”.h " 5  ~"¶ugš.h " 7 #ià defšed ( HAVE_LDAP_H è&& defšed( HAVE_LBER_H è&& defšed( HAVE_LIBLDAP è&& defšed( HAVE_LIBLBER ) 8  #USE_LDAP ) 9  ~ 13 mAUTH_BACKEND_UNSET , 14 mAUTH_BACKEND_PLAIN , 15 mAUTH_BACKEND_LDAP , 16 mAUTH_BACKEND_HTPASSWD , 17 mAUTH_BACKEND_HTDIGEST 18 } tauth_back’d_t ; 22 ¬¿y * mauth_»quœe ; 24 bufãr * mauth_¶aš_groupfže ; 25 bufãr * mauth_¶aš_u£rfže ; 27 bufãr * mauth_htdige¡_u£rfže ; 28 bufãr * mauth_hasswd_u£rfže ; 30 bufãr * mauth_back’d_cÚf ; 32 bufãr * mauth_ld­_ho¡Çme ; 33 bufãr * mauth_ld­_ba£dn ; 34 bufãr * mauth_ld­_bšddn ; 35 bufãr * mauth_ld­_bšdpw ; 36 bufãr * mauth_ld­_fž‹r ; 37 bufãr * mauth_ld­_ÿfže ; 38  mauth_ld­_¡¬‰ls ; 39  mauth_ld­_®low_em±y_pw ; 41  mauth_debug ; 44 auth_back’d_t mauth_back’d ; 46 #ifdeà USE_LDAP 47 LDAP * mld­ ; 49 bufãr * mld­_fž‹r_´e ; 50 bufãr * mld­_fž‹r_po¡ ; 52 } tmod_auth_¶ugš_cÚfig ; 55 mPLUGIN_DATA ; 56 bufãr * mtmp_buf ; 58 bufãr * mauth_u£r ; 60 #ifdeà USE_LDAP 61 bufãr * mld­_fž‹r ; 64 mod_auth_¶ugš_cÚfig ** mcÚfig_¡Üage ; 66 mod_auth_¶ugš_cÚfig mcÚf ; 67 } tmod_auth_¶ugš_d©a ; 69  h‰p_auth_basic_check ( £rv” * ¤v , cÚÃùiÚ * cÚ , mod_auth_¶ugš_d©a * p , ¬¿y * »q , bufãr * u¾ , cÚ¡ * »®m_¡r ); 70  h‰p_auth_dige¡_check ( £rv” * ¤v , cÚÃùiÚ * cÚ , mod_auth_¶ugš_d©a * p , ¬¿y * »q , bufãr * u¾ , cÚ¡ * »®m_¡r ); 71  h‰p_auth_dige¡_g’”©e_nÚû ( £rv” * ¤v , mod_auth_¶ugš_d©a * p , bufãr * â ,  hh [33]); @src/http_auth_digest.c 1  ~<¡ršg.h > 2  ~"h‰p_auth_dige¡.h " 4  ~"bufãr.h " 6 #iâdeà USE_OPENSSL 7  ~"md5.h " 10  $CvtHex ( IN HASH Bš , OUT HASHHEX Hex ) { 11  i ; 13  i = 0; i < HASHLEN ; i++) { 14 Hex [ i *2] = `št2hex (( Bš [i] >> 4) & 0xf); 15 Hex [ i *2+1] = `št2hex ( Bš [i] & 0xf); 17 Hex [ HASHHEXLEN ] = '\0'; 18 } } @src/http_auth_digest.h 1 #iâdeà _DIGCALC_H_ 2  #_DIGCALC_H_ ) 4 #ifdeà HAVE_CONFIG_H 5  ~"cÚfig.h " 8  #HASHLEN 16 ) 9  tHASH [ HASHLEN ]; 10  #HASHHEXLEN 32 ) 11  tHASHHEX [ HASHHEXLEN +1]; 12 #ifdeà USE_OPENSSL 13  #IN cÚ¡ ) 15  #IN ) 17  #OUT ) 19  CvtHex ( 20 IN HASH Bš , 21 OUT HASHHEX Hex @src/http_chunk.c 7  ~ 8  ~ 10  ~<¡dlib.h > 11  ~ 12  ~ 14  ~<¡dio.h > 15  ~<”ºo.h > 16  ~<¡ršg.h > 18  ~"£rv”.h " 19  ~"chunk.h " 20  ~"h‰p_chunk.h " 21  ~"log.h " 23  $h‰p_chunk_­³nd_Ën ( £rv” * ¤v , cÚÃùiÚ * cÚ , size_t Ën ) { 24 size_t i , Þ’ = Ën , j ; 25 bufãr * b ; 27 b = ¤v -> tmp_chunk_Ën ; 29 ià( Ën == 0) { 30 `bufãr_cÝy_¡ršg ( b , "0"); 32  i = 0; i < 8 && Ën ; i++) { 33 Ën >>= 4; 37 `bufãr_´•¬e_cÝy ( b , i + 1); 39  j = i -1, Ën = Þ’ ; j+1 > 0; j--) { 40 b -> ±r [ j ] = ( Ën & 0xf) + (((len & 0xf) <= 9) ? '0' : 'a' - 10); 41 Ën >>= 4; 43 b -> u£d = i ; 44 b -> ±r [b-> u£d ++] = '\0'; 47 `bufãr_­³nd_¡ršg ( b , "\r\n"); 48 `chunkqueue_­³nd_bufãr ( cÚ -> wr™e_queue , b ); 51 } } 54  $h‰p_chunk_­³nd_fže ( £rv” * ¤v , cÚÃùiÚ * cÚ , bufãr * â , off_t off£t , off_ˆ Ën ) { 55 chunkqueue * cq ; 57 ià(! cÚ )  -1; 59 cq = cÚ -> wr™e_queue ; 61 ià( cÚ -> »¥Ú£ . Œªsãr_’codšg & HTTP_TRANSFER_ENCODING_CHUNKED ) { 62 `h‰p_chunk_­³nd_Ën ( ¤v , cÚ , Ën ); 65 `chunkqueue_­³nd_fže ( cq , â , off£t , Ën ); 67 ià( cÚ -> »¥Ú£ . Œªsãr_’codšg & HTTP_TRANSFER_ENCODING_CHUNKED && Ën > 0) { 68 `chunkqueue_­³nd_mem ( cq , "\r\n", 2 + 1); 72 } } 74  $h‰p_chunk_­³nd_bufãr ( £rv” * ¤v , cÚÃùiÚ * cÚ , bufãr * mem ) { 75 chunkqueue * cq ; 77 ià(! cÚ )  -1; 79 cq = cÚ -> wr™e_queue ; 81 ià( cÚ -> »¥Ú£ . Œªsãr_’codšg & HTTP_TRANSFER_ENCODING_CHUNKED ) { 82 `h‰p_chunk_­³nd_Ën ( ¤v , cÚ , mem -> u£d - 1); 85 `chunkqueue_­³nd_bufãr ( cq , mem ); 87 ià( cÚ -> »¥Ú£ . Œªsãr_’codšg & HTTP_TRANSFER_ENCODING_CHUNKED && mem -> u£d > 0) { 88 `chunkqueue_­³nd_mem ( cq , "\r\n", 2 + 1); 92 } } 94  $h‰p_chunk_­³nd_mem ( £rv” * ¤v , cÚÃùiÚ * cÚ , cÚ¡ * mem , size_t Ën ) { 95 chunkqueue * cq ; 97 ià(! cÚ )  -1; 99 cq = cÚ -> wr™e_queue ; 101 ià( Ën == 0) { 102 ià( cÚ -> »¥Ú£ . Œªsãr_’codšg & HTTP_TRANSFER_ENCODING_CHUNKED ) { 103 `chunkqueue_­³nd_mem ( cq , "0\r\n\r\n", 5 + 1); 105 `chunkqueue_­³nd_mem ( cq , "", 1); 110 ià( cÚ -> »¥Ú£ . Œªsãr_’codšg & HTTP_TRANSFER_ENCODING_CHUNKED ) { 111 `h‰p_chunk_­³nd_Ën ( ¤v , cÚ , Ën - 1); 114 `chunkqueue_­³nd_mem ( cq , mem , Ën ); 116 ià( cÚ -> »¥Ú£ . Œªsãr_’codšg & HTTP_TRANSFER_ENCODING_CHUNKED ) { 117 `chunkqueue_­³nd_mem ( cq , "\r\n", 2 + 1); 121 } } 124 off_t $h‰p_chunkqueue_Ëngth ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 125 ià(! cÚ ) { 126 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "connection is NULL!!"); 131  `chunkqueue_Ëngth ( cÚ -> wr™e_queue ); 132 } } @src/http_chunk.h 1 #iâdeà _HTTP_CHUNK_H_ 2  #_HTTP_CHUNK_H_ ) 4  ~"£rv”.h " 5  ~ 7  h‰p_chunk_­³nd_mem ( £rv” * ¤v , cÚÃùiÚ * cÚ , cÚ¡ * mem , size_t Ën ); 8  h‰p_chunk_­³nd_bufãr ( £rv” * ¤v , cÚÃùiÚ * cÚ , bufãr * mem ); 9  h‰p_chunk_­³nd_fže ( £rv” * ¤v , cÚÃùiÚ * cÚ , bufãr * â , off_t off£t , off_ˆ Ën ); 10 off_t h‰p_chunkqueue_Ëngth ( £rv” * ¤v , cÚÃùiÚ * cÚ ); @src/inet_ntop_cache.c 1  ~ 3  ~<¡ršg.h > 6  ~"ba£.h " 7  ~"š‘_ÁÝ_ÿche.h " 8  ~"sys-sock‘.h " 10 cÚ¡ * $š‘_ÁÝ_ÿche_g‘_ ( £rv” * ¤v , sock_addr * addr ) { 11 #ifdeà HAVE_IPV6 12 size_t ndx = 0, i ; 13  i = 0; i < INET_NTOP_CACHE_MAX ; i++) { 14 ià( ¤v -> š‘_ÁÝ_ÿche [ i ]. ts != 0) { 15 ià( ¤v -> š‘_ÁÝ_ÿche [ i ]. çmžy =ð AF_INET6 && 16 0 =ð `memcmp ( ¤v -> š‘_ÁÝ_ÿche [ i ]. addr . v6 . s6_addr ,‡ddr->v6. sš6_addr .s6_addr, 16)) { 19 } ià( ¤v -> š‘_ÁÝ_ÿche [ i ]. çmžy =ð AF_INET && 20 ¤v -> š‘_ÁÝ_ÿche [ i ]. addr . v4 . s_addr =ðaddr->v4. sš_addr .s_addr) { 28 ià( i =ð INET_NTOP_CACHE_MAX ) { 31 i = ndx ; 32 `š‘_ÁÝ ( addr -> ¶aš . §_çmžy , 33 addr -> ¶aš . §_çmžy =ð AF_INET6 ? 34 (cÚ¡ *è&( addr -> v6 . sš6_addr ) : 35 (cÚ¡ *è&( addr -> v4 . sš_addr ), 36 ¤v -> š‘_ÁÝ_ÿche [ i ]. b2 , INET6_ADDRSTRLEN ); 38 ¤v -> š‘_ÁÝ_ÿche [ i ]. ts = srv-> cur_ts ; 39 ¤v -> š‘_ÁÝ_ÿche [ i ]. çmžy = addr -> ¶aš . §_çmžy ; 41 ià( ¤v -> š‘_ÁÝ_ÿche [ i ]. çmžy =ð AF_INET ) { 42 ¤v -> š‘_ÁÝ_ÿche [ i ]. addr . v4 . s_addr =‡ddr->v4. sš_addr .s_addr; 43 } ià( ¤v -> š‘_ÁÝ_ÿche [ i ]. çmžy =ð AF_INET6 ) { 44 `memýy ( ¤v -> š‘_ÁÝ_ÿche [ i ]. addr . v6 . s6_addr ,‡ddr->v6. sš6_addr .s6_addr, 16); 48  ¤v -> š‘_ÁÝ_ÿche [ i ]. b2 ; 50 `UNUSED ( ¤v ); 51  `š‘_Áß ( addr -> v4 . sš_addr ); 53 } } @src/inet_ntop_cache.h 1 #iâdeà _INET_NTOP_CACHE_H_ 2  #_INET_NTOP_CACHE_H_ ) 4  ~"ba£.h " 5 cÚ¡ * š‘_ÁÝ_ÿche_g‘_ ( £rv” * ¤v , sock_addr * addr ); @src/joblist.c 1  ~<¡dlib.h > 2  ~<¡ršg.h > 4  ~"ba£.h " 5  ~"jobli¡.h " 6  ~"log.h " 8  $jobli¡_­³nd ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 9 ià( cÚ -> š_jobli¡ )  0; 11 ià( ¤v -> jobli¡ -> size == 0) { 12 ¤v -> jobli¡ -> size = 16; 13 ¤v -> jobli¡ -> ±r = `m®loc ((*¤v->jobli¡->±rè* srv->jobli¡-> size ); 14 } ià( ¤v -> jobli¡ -> u£d =ð¤v->jobli¡-> size ) { 15 ¤v -> jobli¡ -> size += 16; 16 ¤v -> jobli¡ -> ±r = `»®loc (¤v->jobli¡->±r, (*¤v->jobli¡->±rè* srv->jobli¡-> size ); 19 ¤v -> jobli¡ -> ±r [¤v->jobli¡-> u£d ++] = cÚ ; 22 } } 24  $jobli¡_ä“ ( £rv” * ¤v , cÚÃùiÚs * jobli¡ ) { 25 `UNUSED ( ¤v ); 27 `ä“ ( jobli¡ -> ±r ); 28 `ä“ ( jobli¡ ); 29 } } 31 cÚÃùiÚ * $fdwa™queue_unshiá ( £rv” * ¤v , cÚÃùiÚs * fdwa™queue ) { 32 cÚÃùiÚ * cÚ ; 33 `UNUSED ( ¤v ); 36 ià( fdwa™queue -> u£d =ð0è NULL ; 38 cÚ = fdwa™queue -> ±r [0]; 40 `memmove ( fdwa™queue -> ±r , &(fdwa™queue->±r[1]), --fdwa™queue-> u£d * (*(fdwaitqueue->ptr))); 42  cÚ ; 43 } } 45  $fdwa™queue_­³nd ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 46 ià( ¤v -> fdwa™queue -> size == 0) { 47 ¤v -> fdwa™queue -> size = 16; 48 ¤v -> fdwa™queue -> ±r = `m®loc ((*(¤v->fdwa™queue->±r)è* srv->fdwa™queue-> size ); 49 } ià( ¤v -> fdwa™queue -> u£d =ð¤v->fdwa™queue-> size ) { 50 ¤v -> fdwa™queue -> size += 16; 51 ¤v -> fdwa™queue -> ±r = `»®loc (¤v->fdwa™queue->±r, (*(¤v->fdwa™queue->±r)è* srv->fdwa™queue-> size ); 54 ¤v -> fdwa™queue -> ±r [¤v->fdwa™queue-> u£d ++] = cÚ ; 57 } } 59  $fdwa™queue_ä“ ( £rv” * ¤v , cÚÃùiÚs * fdwa™queue ) { 60 `UNUSED ( ¤v ); 61 `ä“ ( fdwa™queue -> ±r ); 62 `ä“ ( fdwa™queue ); 63 } } @src/joblist.h 1 #iâdeà _JOB_LIST_H_ 2  #_JOB_LIST_H_ ) 4  ~"ba£.h " 6  jobli¡_­³nd ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 7  jobli¡_ä“ ( £rv” * ¤v , cÚÃùiÚs * jobli¡ ); 9  fdwa™queue_­³nd ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 10  fdwa™queue_ä“ ( £rv” * ¤v , cÚÃùiÚs * fdwa™queue ); 11 cÚÃùiÚ * fdwa™queue_unshiá ( £rv” * ¤v , cÚÃùiÚs * fdwa™queue ); @src/keyvalue.c 1  ~<¡dlib.h > 2  ~<¡ršg.h > 3  ~<¡dio.h > 5  ~"£rv”.h " 6  ~"keyv®ue.h " 8  keyv®ue gh‰p_v”siÚs [] = { 9 { HTTP_VERSION_1_1 , "HTTP/1.1" }, 10 { HTTP_VERSION_1_0 , "HTTP/1.0" }, 11 { HTTP_VERSION_UNSET , NULL } 14  keyv®ue gh‰p_m‘hods [] = { 15 { HTTP_METHOD_GET , "GET" }, 16 { HTTP_METHOD_POST , "POST" }, 17 { HTTP_METHOD_HEAD , "HEAD" }, 18 { HTTP_METHOD_PROPFIND , "PROPFIND" }, 19 { HTTP_METHOD_PROPPATCH , "PROPPATCH" }, 20 { HTTP_METHOD_REPORT , "REPORT" }, 21 { HTTP_METHOD_OPTIONS , "OPTIONS" }, 22 { HTTP_METHOD_MKCOL , "MKCOL" }, 23 { HTTP_METHOD_PUT , "PUT" }, 24 { HTTP_METHOD_DELETE , "DELETE" }, 25 { HTTP_METHOD_COPY , "COPY" }, 26 { HTTP_METHOD_MOVE , "MOVE" }, 27 { HTTP_METHOD_LABEL , "LABEL" }, 28 { HTTP_METHOD_CHECKOUT , "CHECKOUT" }, 29 { HTTP_METHOD_CHECKIN , "CHECKIN" }, 30 { HTTP_METHOD_MERGE , "MERGE" }, 31 { HTTP_METHOD_LOCK , "LOCK" }, 32 { HTTP_METHOD_UNLOCK , "UNLOCK" }, 33 { HTTP_METHOD_MKACTIVITY , "MKACTIVITY" }, 34 { HTTP_METHOD_UNCHECKOUT , "UNCHECKOUT" }, 35 { HTTP_METHOD_VERSION_CONTROL , "VERSION-CONTROL" }, 36 { HTTP_METHOD_CONNECT , "CONNECT" }, 38 { HTTP_METHOD_UNSET , NULL } 41  keyv®ue gh‰p_¡©us [] = { 91 { -1, NULL } 94  keyv®ue gh‰p_¡©us_body [] = { 106 { -1, NULL } 110 cÚ¡ * $keyv®ue_g‘_v®ue ( keyv®ue * kv ,  k ) { 111  i ; 112  i = 0; kv [i]. v®ue ; i++) { 113 ià( kv [ i ]. key =ð k è kv[i]. v®ue ; 115  NULL ; 116 } } 118  $keyv®ue_g‘_key ( keyv®ue * kv , cÚ¡ * s ) { 119  i ; 120  i = 0; kv [i]. v®ue ; i++) { 121 ià(0 =ð `¡rcmp ( kv [ i ]. v®ue , s )è kv[i]. key ; 124 } } 126 keyv®ue_bufãr * $keyv®ue_bufãr_š™ () { 127 keyv®ue_bufãr * kvb ; 129 kvb = `ÿÎoc (1, (*kvb)); 131  kvb ; 132 } } 134  $keyv®ue_bufãr_­³nd ( keyv®ue_bufãr * kvb ,  key , cÚ¡ * v®ue ) { 135 size_t i ; 136 ià( kvb -> size == 0) { 137 kvb -> size = 4; 139 kvb -> kv = `m®loc (kvb-> size * (*kvb->kv)); 141  i = 0; i < kvb -> size ; i++) { 142 kvb -> kv [ i ] = `ÿÎoc (1, (**kvb->kv)); 144 } ià( kvb -> u£d =ðkvb-> size ) { 145 kvb -> size += 4; 147 kvb -> kv = `»®loc (kvb->kv, kvb-> size * (*kvb->kv)); 149  i = kvb -> u£d ; i < kvb-> size ; i++) { 150 kvb -> kv [ i ] = `ÿÎoc (1, (**kvb->kv)); 154 kvb -> kv [kvb-> u£d ]-> key = key; 155 kvb -> kv [kvb-> u£d ]-> v®ue = `¡rdup (value); 157 kvb -> u£d ++; 160 } } 162  $keyv®ue_bufãr_ä“ ( keyv®ue_bufãr * kvb ) { 163 size_t i ; 165  i = 0; i < kvb -> size ; i++) { 166 ià( kvb -> kv [ i ]-> v®ue è `ä“ (kvb->kv[i]->value); 167 `ä“ ( kvb -> kv [ i ]); 170 ià( kvb -> kv è `ä“ (kvb->kv); 172 `ä“ ( kvb ); 173 } } 176 s_keyv®ue_bufãr * $s_keyv®ue_bufãr_š™ () { 177 s_keyv®ue_bufãr * kvb ; 179 kvb = `ÿÎoc (1, (*kvb)); 181  kvb ; 182 } } 184  $s_keyv®ue_bufãr_­³nd ( s_keyv®ue_bufãr * kvb , cÚ¡ * key , cÚ¡ * v®ue ) { 185 size_t i ; 186 ià( kvb -> size == 0) { 187 kvb -> size = 4; 188 kvb -> u£d = 0; 190 kvb -> kv = `m®loc (kvb-> size * (*kvb->kv)); 192  i = 0; i < kvb -> size ; i++) { 193 kvb -> kv [ i ] = `ÿÎoc (1, (**kvb->kv)); 195 } ià( kvb -> u£d =ðkvb-> size ) { 196 kvb -> size += 4; 198 kvb -> kv = `»®loc (kvb->kv, kvb-> size * (*kvb->kv)); 200  i = kvb -> u£d ; i < kvb-> size ; i++) { 201 kvb -> kv [ i ] = `ÿÎoc (1, (**kvb->kv)); 205 kvb -> kv [kvb-> u£d ]-> key = key ? `¡rdup (keyè: NULL ; 206 kvb -> kv [kvb-> u£d ]-> v®ue = `¡rdup (value); 208 kvb -> u£d ++; 211 } } 213  $s_keyv®ue_bufãr_ä“ ( s_keyv®ue_bufãr * kvb ) { 214 size_t i ; 216  i = 0; i < kvb -> size ; i++) { 217 ià( kvb -> kv [ i ]-> key è `ä“ (kvb->kv[i]->key); 218 ià( kvb -> kv [ i ]-> v®ue è `ä“ (kvb->kv[i]->value); 219 `ä“ ( kvb -> kv [ i ]); 222 ià( kvb -> kv è `ä“ (kvb->kv); 224 `ä“ ( kvb ); 225 } } 228 h‰·uth_keyv®ue_bufãr * $h‰·uth_keyv®ue_bufãr_š™ () { 229 h‰·uth_keyv®ue_bufãr * kvb ; 231 kvb = `ÿÎoc (1, (*kvb)); 233  kvb ; 234 } } 236  $h‰·uth_keyv®ue_bufãr_­³nd ( h‰·uth_keyv®ue_bufãr * kvb , cÚ¡ * key , cÚ¡ * »®m , h‰·uth_ty³ ty³ ) { 237 size_t i ; 238 ià( kvb -> size == 0) { 239 kvb -> size = 4; 241 kvb -> kv = `m®loc (kvb-> size * (*kvb->kv)); 243  i = 0; i < kvb -> size ; i++) { 244 kvb -> kv [ i ] = `ÿÎoc (1, (**kvb->kv)); 246 } ià( kvb -> u£d =ðkvb-> size ) { 247 kvb -> size += 4; 249 kvb -> kv = `»®loc (kvb->kv, kvb-> size * (*kvb->kv)); 251  i = kvb -> u£d ; i < kvb-> size ; i++) { 252 kvb -> kv [ i ] = `ÿÎoc (1, (**kvb->kv)); 256 kvb -> kv [kvb-> u£d ]-> key = `¡rdup (key); 257 kvb -> kv [kvb-> u£d ]-> »®m = `¡rdup (realm); 258 kvb -> kv [kvb-> u£d ]-> ty³ =ype; 260 kvb -> u£d ++; 263 } } 265  $h‰·uth_keyv®ue_bufãr_ä“ ( h‰·uth_keyv®ue_bufãr * kvb ) { 266 size_t i ; 268  i = 0; i < kvb -> size ; i++) { 269 ià( kvb -> kv [ i ]-> key è `ä“ (kvb->kv[i]->key); 270 ià( kvb -> kv [ i ]-> »®m è `ä“ (kvb->kv[i]->realm); 271 `ä“ ( kvb -> kv [ i ]); 274 ià( kvb -> kv è `ä“ (kvb->kv); 276 `ä“ ( kvb ); 277 } } 280 cÚ¡ * $g‘_h‰p_v”siÚ_Çme ( i ) { 281  `keyv®ue_g‘_v®ue ( h‰p_v”siÚs , i ); 282 } } 284 cÚ¡ * $g‘_h‰p_¡©us_Çme ( i ) { 285  `keyv®ue_g‘_v®ue ( h‰p_¡©us , i ); 286 } } 288 cÚ¡ * $g‘_h‰p_m‘hod_Çme ( h‰p_m‘hod_t i ) { 289  `keyv®ue_g‘_v®ue ( h‰p_m‘hods , i ); 290 } } 292 cÚ¡ * $g‘_h‰p_¡©us_body_Çme ( i ) { 293  `keyv®ue_g‘_v®ue ( h‰p_¡©us_body , i ); 294 } } 296  $g‘_h‰p_v”siÚ_key (cÚ¡ * s ) { 297  `keyv®ue_g‘_key ( h‰p_v”siÚs , s ); 298 } } 300 h‰p_m‘hod_t $g‘_h‰p_m‘hod_key (cÚ¡ * s ) { 301  ( h‰p_m‘hod_t ) `keyv®ue_g‘_key ( h‰p_m‘hods , s ); 302 } } 307 püe_keyv®ue_bufãr * $püe_keyv®ue_bufãr_š™ () { 308 püe_keyv®ue_bufãr * kvb ; 310 kvb = `ÿÎoc (1, (*kvb)); 312  kvb ; 313 } } 315  $püe_keyv®ue_bufãr_­³nd ( püe_keyv®ue_bufãr * kvb , cÚ¡ * key , cÚ¡ * v®ue ) { 316 #ifdeà HAVE_PCRE_H 317 size_t i ; 318 cÚ¡ * ”½Œ ; 319  ”roff ; 320 püe_keyv®ue * kv ; 323 ià(! key )  -1; 325 #ifdeà HAVE_PCRE_H 326 ià( kvb -> size == 0) { 327 kvb -> size = 4; 328 kvb -> u£d = 0; 330 kvb -> kv = `m®loc (kvb-> size * (*kvb->kv)); 332  i = 0; i < kvb -> size ; i++) { 333 kvb -> kv [ i ] = `ÿÎoc (1, (**kvb->kv)); 335 } ià( kvb -> u£d =ðkvb-> size ) { 336 kvb -> size += 4; 338 kvb -> kv = `»®loc (kvb->kv, kvb-> size * (*kvb->kv)); 340  i = kvb -> u£d ; i < kvb-> size ; i++) { 341 kvb -> kv [ i ] = `ÿÎoc (1, (**kvb->kv)); 345 kv = kvb ->kv[kvb-> u£d ]; 346 ià( NULL =ð( kv -> key = `püe_compže (key, 347 0, & ”½Œ , & ”roff , NULL ))) { 349 `årštf ( ¡d”r , "%s.%d:„exex°compž©iÚƒ¼Ü‡ˆ%s\n", __FILE__ , __LINE__ , ”½Œ ); 353 ià( NULL =ð( kv -> key_exŒa = `püe_¡udy (kv-> key , 0, & ”½Œ )) && 354 ”½Œ !ð NULL ) { 358 kv -> v®ue = `bufãr_š™_¡ršg (value); 360 kvb -> u£d ++; 364 `UNUSED ( kvb ); 365 `UNUSED ( v®ue ); 369 } } 371  $püe_keyv®ue_bufãr_ä“ ( püe_keyv®ue_bufãr * kvb ) { 372 #ifdeà HAVE_PCRE_H 373 size_t i ; 374 püe_keyv®ue * kv ; 376  i = 0; i < kvb -> size ; i++) { 377 kv = kvb ->kv[ i ]; 378 ià( kv -> key è `püe_ä“ (kv->key); 379 ià( kv -> key_exŒa è `püe_ä“ (kv->key_extra); 380 ià( kv -> v®ue è `bufãr_ä“ (kv->value); 381 `ä“ ( kv ); 384 ià( kvb -> kv è `ä“ (kvb->kv); 387 `ä“ ( kvb ); 388 } } @src/keyvalue.h 1 #iâdeà _KEY_VALUE_H_ 2  #_KEY_VALUE_H_ ) 4 #ifdeà HAVE_CONFIG_H 5  ~"cÚfig.h " 8 #ifdeà HAVE_PCRE_H 9  ~ 13 mHTTP_METHOD_UNSET = -1, 14 mHTTP_METHOD_GET , 15 mHTTP_METHOD_POST , 16 mHTTP_METHOD_HEAD , 17 mHTTP_METHOD_OPTIONS , 18 mHTTP_METHOD_PROPFIND , 19 mHTTP_METHOD_MKCOL , 20 mHTTP_METHOD_PUT , 21 mHTTP_METHOD_DELETE , 22 mHTTP_METHOD_COPY , 23 mHTTP_METHOD_MOVE , 24 mHTTP_METHOD_PROPPATCH , 25 mHTTP_METHOD_REPORT , 26 mHTTP_METHOD_CHECKOUT , 27 mHTTP_METHOD_CHECKIN , 28 mHTTP_METHOD_VERSION_CONTROL , 29 mHTTP_METHOD_UNCHECKOUT , 30 mHTTP_METHOD_MKACTIVITY , 31 mHTTP_METHOD_MERGE , 32 mHTTP_METHOD_LOCK , 33 mHTTP_METHOD_UNLOCK , 34 mHTTP_METHOD_LABEL , 35 mHTTP_METHOD_CONNECT 36 } th‰p_m‘hod_t ; 38 ’um { mHTTP_VERSION_UNSET = -1, mHTTP_VERSION_1_0 , mHTTP_VERSION_1_1 } th‰p_v”siÚ_t ; 41  mkey ; 43 * mv®ue ; 44 } tkeyv®ue ; 47 * mkey ; 49 * mv®ue ; 50 } ts_keyv®ue ; 53 #ifdeà HAVE_PCRE_H 54 püe * mkey ; 55 püe_exŒa * mkey_exŒa ; 58 bufãr * mv®ue ; 59 } tpüe_keyv®ue ; 61 ’um { mHTTP_AUTH_BASIC , mHTTP_AUTH_DIGEST } th‰·uth_ty³ ; 64 * mkey ; 66 * m»®m ; 67 h‰·uth_ty³ mty³ ; 68 } th‰·uth_keyv®ue ; 70  #KVB ( x ) \ 72 x ** kv ; \ 73 size_t u£d ;\ 74 size_t size ;\ 75 } tx ## t_bufãr ) 77 tKVB ( tkeyv®ue ); 78 KVB ( s_keyv®ue ); 79 KVB ( h‰·uth_keyv®ue ); 80 KVB ( püe_keyv®ue ); 82 cÚ¡ * g‘_h‰p_¡©us_Çme ( i ); 83 cÚ¡ * g‘_h‰p_v”siÚ_Çme ( i ); 84 cÚ¡ * g‘_h‰p_m‘hod_Çme ( h‰p_m‘hod_t i ); 85 cÚ¡ * g‘_h‰p_¡©us_body_Çme ( i ); 86  g‘_h‰p_v”siÚ_key (cÚ¡ * s ); 87 h‰p_m‘hod_t g‘_h‰p_m‘hod_key (cÚ¡ * s ); 89 cÚ¡ * keyv®ue_g‘_v®ue ( keyv®ue * kv ,  k ); 90  keyv®ue_g‘_key ( keyv®ue * kv , cÚ¡ * s ); 92 keyv®ue_bufãr * keyv®ue_bufãr_š™ (); 93  keyv®ue_bufãr_­³nd ( keyv®ue_bufãr * kvb ,  k , cÚ¡ * v®ue ); 94  keyv®ue_bufãr_ä“ ( keyv®ue_bufãr * kvb ); 96 s_keyv®ue_bufãr * s_keyv®ue_bufãr_š™ (); 97  s_keyv®ue_bufãr_­³nd ( s_keyv®ue_bufãr * kvb , cÚ¡ * key , cÚ¡ * v®ue ); 98  s_keyv®ue_bufãr_ä“ ( s_keyv®ue_bufãr * kvb ); 100 h‰·uth_keyv®ue_bufãr * h‰·uth_keyv®ue_bufãr_š™ (); 101  h‰·uth_keyv®ue_bufãr_­³nd ( h‰·uth_keyv®ue_bufãr * kvb , cÚ¡ * key , cÚ¡ * »®m , h‰·uth_ty³ ty³ ); 102  h‰·uth_keyv®ue_bufãr_ä“ ( h‰·uth_keyv®ue_bufãr * kvb ); 104 püe_keyv®ue_bufãr * püe_keyv®ue_bufãr_š™ (); 105  püe_keyv®ue_bufãr_­³nd ( püe_keyv®ue_bufãr * kvb , cÚ¡ * key , cÚ¡ * v®ue ); 106  püe_keyv®ue_bufãr_ä“ ( püe_keyv®ue_bufãr * kvb ); @src/lemon.c 9  ~<¡dio.h > 10  ~<¡d¬g.h > 11  ~<¡ršg.h > 12  ~<ùy³.h > 13  ~<¡dlib.h > 15  qsÜt (); 16  ¡¹od (); 17  ¡¹Þ (); 18  ä“ (); 19  acûss (); 20  ©oi (); 22 #iâdeà __WIN32__ 23 #ià defšed ( _WIN32 è|| defšed( WIN32 ) 24  #__WIN32__ ) 29  #PRIVATE ) 31 #ifdeà TEST 32  #MAXRHS 5 ) 34  #MAXRHS 1000 ) 37 * msÜt (); 38 * m®loc (); 41  aùiÚ * AùiÚ_Ãw (); 42  aùiÚ * AùiÚ_sÜt (); 43  AùiÚ_add (); 46  myas£¹ (); 47 #iâdeà NDEBUG 48  #as£¹ ( X èif(!(X)) `myas£¹ ( __FILE__ , __LINE__ ) ) 50  #as£¹ ( X ) ) 54  FšdRuËP»ûd’ûs (); 55  FšdFœ¡S‘s (); 56  FšdS‹s (); 57  FšdLšks (); 58  FšdFÞlowS‘s (); 59  FšdAùiÚs (); 62  CÚfigli¡_š™ ( ); 63  cÚfig * CÚfigli¡_add ( ); 64  cÚfig * CÚfigli¡_addbasis ( ); 65  CÚfigli¡_þosu» ( ); 66  CÚfigli¡_sÜt ( ); 67  CÚfigli¡_sÜtbasis ( ); 68  cÚfig * CÚfigli¡_»tuº ( ); 69  cÚfig * CÚfigli¡_basis ( ); 70  CÚfigli¡_—t ( ); 71  CÚfigli¡_»£t ( ); 74  E¼ÜMsg (const *, ,const *, ...); 77  ss_ÝtiÚs { 78 ’um { mOPT_FLAG =1, mOPT_INT , mOPT_DBL , mOPT_STR , 79 mOPT_FFLAG , mOPT_FINT , mOPT_FDBL , mOPT_FSTR } mty³ ; 80 * mÏb– ; 81 * m¬g ; 82 * mmes§ge ; 84  O±In™ ( ); 85  O±NArgs ( ); 86 * O±Arg ( ); 87  O±E¼ ( ); 88  O±Pršt ( ); 91  P¬£ ( ); 94  ¶šk * Plšk_Ãw ( ); 95  Plšk_add ( ); 96  Plšk_cÝy ( ); 97  Plšk_d–‘e ( ); 100  R•ršt ( ); 101  R•ÜtOuut ( ); 102  R•ÜtTabË ( ); 103  R•ÜtH—d” ( ); 104  Com´essTabËs ( ); 107  S‘Size ( ); 108 * S‘New ( ); 109  S‘F»e ( ); 111  S‘Add ( ); 112  S‘UniÚ ( ); 114  #S‘Fšd ( X , Y è(X[Y]è ) 121 ’um { mBo_FALSE =0, mBo_TRUE } tBoÞ—n ; 125  ssymbÞ { 126 * mÇme ; 127  mšdex ; 129 mTERMINAL , 130 mNONTERMINAL 131 } mty³ ; 132  ruË * mruË ; 133  symbÞ * mçÎback ; 134  m´ec ; 135 ee_assoc { 136 mLEFT , 137 mRIGHT , 138 mNONE , 139 mUNK 140 } massoc ; 141 * mfœ¡£t ; 142 BoÞ—n mÏmbda ; 143 * mde¡ruùÜ ; 145  mde¡ruùÜÊ ; 146 * md©©y³ ; 148  mdŠum ; 155  sruË { 156  symbÞ * mlhs ; 157 * mlh§lŸs ; 158  mruËlše ; 159  mÄhs ; 160  symbÞ ** mrhs ; 161 ** mrh§lŸs ; 162  mlše ; 163 * mcode ; 164  symbÞ * m´ecsym ; 165  mšdex ; 166 BoÞ—n mÿnReduû ; 167  ruË * mÃxŽhs ; 168  ruË * mÃxt ; 176  scÚfig { 177  ruË * m½ ; 178  mdÙ ; 179 * mfws ; 180  ¶šk * måÍ ; 181  ¶šk * mb¶p ; 182  ¡©e * m¡p ; 184 mCOMPLETE , 185 mINCOMPLETE 186 } m¡©us ; 187  cÚfig * mÃxt ; 188  cÚfig * mbp ; 192  saùiÚ { 193  symbÞ * m¥ ; 194 ee_aùiÚ { 195 mSHIFT , 196 mACCEPT , 197 mREDUCE , 198 mERROR , 199 mCONFLICT , 200 mSH_RESOLVED , 201 mRD_RESOLVED , 202 mNOT_USED 203 } mty³ ; 205  ¡©e * m¡p ; 206  ruË * m½ ; 207 } mx ; 208  aùiÚ * mÃxt ; 209  aùiÚ * mcÞlide ; 214  s¡©e { 215  cÚfig * mbp ; 216  cÚfig * mcå ; 217  mšdex ; 218  aùiÚ * m­ ; 219  mnTknAù , mnNtAù ; 220  miTknOf¡ , miNtOf¡ ; 221  miDæt ; 223  #NO_OFFSET (-2147483647) ) 228  s¶šk { 229  cÚfig * mcå ; 230  ¶šk * mÃxt ; 237  sËmÚ { 238  ¡©e ** msÜ‹d ; 239  ruË * mruË ; 240  mn¡©e ; 241  mÄuË ; 242  mnsymbÞ ; 243  mÁ”mš® ; 244  symbÞ ** msymbÞs ; 245  m”rÜút ; 246  symbÞ * m”rsym ; 247 * mÇme ; 248 * m¬g ; 249 * mtok’ty³ ; 250 * mv¬ty³ ; 251 * m¡¬t ; 252 * m¡acksize ; 253 * mšþude ; 254  mšþud–n ; 255 * m”rÜ ; 256  m”rÜÊ ; 257 * mov”æow ; 258  mov”æowÊ ; 259 * mçžu» ; 260  mçžu»Ê ; 261 * macû± ; 262  macû±Ê ; 263 * mexŒacode ; 264  mexŒacod–n ; 265 * mtok’de¡ ; 266  mtok’de¡Ê ; 267 * mv¬de¡ ; 268  mv¬de¡Ê ; 269 * mfž’ame ; 270 * mtm¶Çme ; 271 * mouŠame ; 272 * mtok’´efix ; 273  mncÚæiù ; 274  mbËsize ; 275  mbasisæag ; 276  mhas_çÎback ; 277 * m¬gv0 ; 280  #MemÜyCheck ( X ) if((X)==0){ \ 281  `memÜy_”rÜ (); \ 282 `memÜy_”rÜ (); \ 283 } ) 300 * SŒ§ã (); 302  SŒ§ã_š™ ( ); 303  SŒ§ã_š£¹ ( ); 304 * SŒ§ã_fšd ( ); 308  symbÞ * SymbÞ_Ãw (); 309  SymbÞcmµ ( ); 310  SymbÞ_š™ ( ); 311  SymbÞ_š£¹ ( ); 312  symbÞ * SymbÞ_fšd ( ); 313  symbÞ * SymbÞ_Nth ( ); 314  SymbÞ_couÁ ( ); 315  symbÞ ** SymbÞ_¬¿yof ( ); 319  CÚfigcmp ( ); 320  ¡©e * S‹_Ãw (); 321  S‹_š™ ( ); 322  S‹_š£¹ ( ); 323  ¡©e * S‹_fšd ( ); 324  ¡©e ** S‹_¬¿yof ( ); 328  CÚfigbË_š™ ( ); 329  CÚfigbË_š£¹ ( ); 330  cÚfig * CÚfigbË_fšd ( ); 331  CÚfigbË_þ—r ( ); 338  aùiÚ * $AùiÚ_Ãw (){ 339  aùiÚ * ä“li¡ = 0; 340  aùiÚ * Ãw ; 342 ifÐ ä“li¡ ==0 ){ 343  i ; 344  amt = 100; 345 ä“li¡ = ( aùiÚ *) `m®loc Ð(aùiÚ)* amt ); 346 ifÐ ä“li¡ ==0 ){ 347 `årštf ( ¡d”r ,"Unableo‡llocate memory for‡‚ew…arser‡ction."); 348 `ex™ (1); 350  i =0; i< amt -1; i++è ä“li¡ [i]. Ãxt = &freelist[i+1]; 351 ä“li¡ [ amt -1]. Ãxt = 0; 353 Ãw = ä“li¡ ; 354 ä“li¡ = f»–i¡-> Ãxt ; 355  Ãw ; 356 } } 359  $aùiÚcmp ( ­1 , ­2 ) 360  aùiÚ * ­1 ; 361  aùiÚ * ­2 ; 363  rc ; 364 rc = ­1 -> ¥ -> šdex - ­2 ->sp->index; 365 ifÐ rc ==0 )„øð() ­1 -> ty³ - () ­2 ->type; 366 ifÐ rc ==0 ){ 367 `as£¹ Ð ­1 -> ty³ == REDUCE ||‡p1->ty³== RD_RESOLVED ||‡p1->ty³== CONFLICT ); 368 `as£¹ Ð ­2 -> ty³ == REDUCE ||‡p2->ty³== RD_RESOLVED ||‡p2->ty³== CONFLICT ); 369 rc = ­1 -> x . ½ -> šdex - ­2 ->x.rp->index; 371  rc ; 372 } } 375  aùiÚ * $AùiÚ_sÜt ( ­ ) 376  aùiÚ * ­ ; 378 ­ = ( aùiÚ *) `msÜt ×p,&­-> Ãxt , aùiÚcmp ); 379  ­ ; 380 } } 382  $AùiÚ_add ( ­p , ty³ , ¥ , ¬g ) 383  aùiÚ ** ­p ; 384 e_aùiÚ ty³ ; 385  symbÞ * ¥ ; 386 * ¬g ; 388  aùiÚ * Ãw ; 389 Ãw = `AùiÚ_Ãw (); 390 Ãw -> Ãxt = * ­p ; 391 * ­p = Ãw ; 392 Ãw -> ty³ =ype; 393 Ãw -> ¥ = sp; 394 ifÐ ty³ == SHIFT ){ 395 Ãw -> x . ¡p = ( ¡©e *) ¬g ; 397 Ãw -> x . ½ = ( ruË *) ¬g ; 399 } } 409  aùb taùb ; 410  saùb { 411  mnAùiÚ ; 412  mnAùiÚAÎoc ; 414  mlookah—d ; 415  maùiÚ ; 416 } * maAùiÚ , 417 * maLookah—d ; 418  mmnLookah—d ; 419  mmnAùiÚ ; 420  mmxLookah—d ; 421  mnLookah—d ; 422  mnLookah—dAÎoc ; 426  #aùb_size ( X è((X)-> nAùiÚ ) ) 429  #aùb_yyaùiÚ ( X , N è((X)-> aAùiÚ [N]. aùiÚ ) ) 432  #aùb_yylookah—d ( X , N è((X)-> aAùiÚ [N]. lookah—d ) ) 435  $aùb_ä“ ( aùb * p ){ 436 `ä“ Ð p -> aAùiÚ ); 437 `ä“ Ð p -> aLookah—d ); 438 `ä“ Ð p ); 439 } } 442 aùb * $aùb_®loc (){ 443 aùb * p = `m®loc ( (*p) ); 444 ifÐ p ==0 ){ 445 `årštf ( ¡d”r ,"Unableo‡llocate memory for‡‚ew‡cttab."); 446 `ex™ (1); 448 `mem£t ( p , 0, (*p)); 449  p ; 450 } } 454  $aùb_aùiÚ ( aùb * p ,  lookah—d ,  aùiÚ ){ 455 ifÐ p -> nLookah—d >õ-> nLookah—dAÎoc ){ 456 p -> nLookah—dAÎoc += 25; 457 p -> aLookah—d = `»®loc (…->aLookahead, 458 ( p -> aLookah—d [0])*p-> nLookah—dAÎoc ); 459 ifÐ p -> aLookah—d ==0 ){ 460 `årštf ( ¡d”r ,"malloc failed\n"); 461 `ex™ (1); 464 ifÐ p -> nLookah—d ==0 ){ 465 p -> mxLookah—d = lookah—d ; 466 p -> mnLookah—d = lookah—d ; 467 p -> mnAùiÚ = aùiÚ ; 469 ifÐ p -> mxLookah—d < lookah—d )…->mxLookahead =†ookahead; 470 ifÐ p -> mnLookah—d > lookah—d ){ 471 p -> mnLookah—d = lookah—d ; 472 p -> mnAùiÚ = aùiÚ ; 475 p -> aLookah—d [p-> nLookah—d ]. lookah—d =†ookahead; 476 p -> aLookah—d [p-> nLookah—d ]. aùiÚ =‡ction; 477 p -> nLookah—d ++; 478 } } 487  $aùb_š£¹ ( aùb * p ){ 488  i , j , k , n ; 489 `as£¹ Ð p -> nLookah—d >0 ); 495 n = p -> mxLookah—d + 1; 496 ifÐ p -> nAùiÚ + n >ðp-> nAùiÚAÎoc ){ 497  ÞdAÎoc = p -> nAùiÚAÎoc ; 498 p -> nAùiÚAÎoc =…-> nAùiÚ + n +…->nActionAlloc + 20; 499 p -> aAùiÚ = `»®loc (…->aAction, 500 ( p -> aAùiÚ [0])*p-> nAùiÚAÎoc ); 501 ifÐ p -> aAùiÚ ==0 ){ 502 `årštf ( ¡d”r ,"malloc failed\n"); 503 `ex™ (1); 505  i = ÞdAÎoc ; i< p -> nAùiÚAÎoc ; i++){ 506 p -> aAùiÚ [ i ]. lookah—d = -1; 507 p -> aAùiÚ [ i ]. aùiÚ = -1; 518  i =0; i< p -> nAùiÚ +p-> mnLookah—d ; i++){ 519 ifÐ p -> aAùiÚ [ i ]. lookah—d <0 ){ 520  j =0; j< p -> nLookah—d ; j++){ 521 k = p -> aLookah—d [ j ]. lookah—d -…-> mnLookah—d + i ; 522 ifÐ k <0 ) ; 523 ifÐ p -> aAùiÚ [ k ]. lookah—d >=0 ) ; 525 ifÐ j < p -> nLookah—d ) ; 526  j =0; j< p -> nAùiÚ ; j++){ 527 ifÐ p -> aAùiÚ [ j ]. lookah—d ==j+p-> mnLookah—d - i ) ; 529 ifÐ j == p -> nAùiÚ ){ 532 } ifÐ p -> aAùiÚ [ i ]. lookah—d =õ-> mnLookah—d ){ 533 ifÐ p -> aAùiÚ [ i ]. aùiÚ !õ-> mnAùiÚ ) ; 534  j =0; j< p -> nLookah—d ; j++){ 535 k = p -> aLookah—d [ j ]. lookah—d -…-> mnLookah—d + i ; 536 ifÐ k <0 || k>= p -> nAùiÚ ) ; 537 ifÐ p -> aLookah—d [ j ]. lookah—d !õ-> aAùiÚ [ k ].lookahead ) ; 538 ifÐ p -> aLookah—d [ j ]. aùiÚ !õ-> aAùiÚ [ k ].action ) ; 540 ifÐ j < p -> nLookah—d ) ; 541 n = 0; 542  j =0; j< p -> nAùiÚ ; j++){ 543 ifÐ p -> aAùiÚ [ j ]. lookah—d <0 ) ; 544 ifÐ p -> aAùiÚ [ j ]. lookah—d ==j+p-> mnLookah—d - i ) n ++; 546 ifÐ n == p -> nLookah—d ){ 552  j =0; j< p -> nLookah—d ; j++){ 553 k = p -> aLookah—d [ j ]. lookah—d -…-> mnLookah—d + i ; 554 p -> aAùiÚ [ k ] =…-> aLookah—d [ j ]; 555 ifÐ k >= p -> nAùiÚ )…->nAction = k+1; 557 p -> nLookah—d = 0; 561  i - p -> mnLookah—d ; 562 } } 568  $myas£¹ ( fže , lše ) 569 * fže ; 570  lše ; 572 `årštf ( ¡d”r ,"As£¹iÚ fažed oÀlš%d oàfž\"%s\"\n", lše , fže ); 573 `ex™ (1); 574 } } 590  $FšdRuËP»ûd’ûs ( xp ) 591  ËmÚ * xp ; 593  ruË * ½ ; 594  ½ = xp -> ruË ;„p;„pôp-> Ãxt ){ 595 ifÐ ½ -> ´ecsym ==0 ){ 596  i ; 597  i =0; i< ½ -> Ähs ; i++){ 598 ifÐ ½ -> rhs [ i ]-> ´ec >=0 ){ 599 ½ -> ´ecsym =„p-> rhs [ i ]; 606 } } 613  $FšdFœ¡S‘s ( Ëmp ) 614  ËmÚ * Ëmp ; 616  i ; 617  ruË * ½ ; 618  ´og»ss ; 620  i =0; i< Ëmp -> nsymbÞ ; i++){ 621 Ëmp -> symbÞs [ i ]-> Ïmbda = Bo_FALSE ; 623  i = Ëmp -> Á”mš® ; i<Ëmp-> nsymbÞ ; i++){ 624 Ëmp -> symbÞs [ i ]-> fœ¡£t = `S‘New (); 629 ´og»ss = 0; 630  ½ = Ëmp -> ruË ;„p;„pôp-> Ãxt ){ 631 ifÐ ½ -> lhs -> Ïmbda ) ; 632  i =0; i< ½ -> Ähs ; i++){ 633 ifÐ ½ -> rhs [ i ]-> Ïmbda == Bo_FALSE ) ; 635 ifÐ i == ½ -> Ähs ){ 636 ½ -> lhs -> Ïmbda = Bo_TRUE ; 637 ´og»ss = 1; 640 } ´og»ss ); 644  symbÞ * s1 , * s2 ; 645 ´og»ss = 0; 646  ½ = Ëmp -> ruË ;„p;„pôp-> Ãxt ){ 647 s1 = ½ -> lhs ; 648  i =0; i< ½ -> Ähs ; i++){ 649 s2 = ½ -> rhs [ i ]; 650 ifÐ s2 -> ty³ == TERMINAL ){ 651 ´og»ss +ð `S‘Add ( s1 -> fœ¡£t , s2 -> šdex ); 653 } ifÐ s1 == s2 ){ 654 ifÐ s1 -> Ïmbda == Bo_FALSE ) ; 656 ´og»ss +ð `S‘UniÚ ( s1 -> fœ¡£t , s2 ->firstset); 657 ifÐ s2 -> Ïmbda == Bo_FALSE ) ; 661 } ´og»ss ); 663 } } 669 PRIVATE  ¡©e * g‘¡©e ( ); 670  $FšdS‹s ( Ëmp ) 671  ËmÚ * Ëmp ; 673  symbÞ * ¥ ; 674  ruË * ½ ; 676 `CÚfigli¡_š™ (); 679 ifÐ Ëmp -> ¡¬t ){ 680 ¥ = `SymbÞ_fšd ( Ëmp -> ¡¬t ); 681 ifÐ ¥ ==0 ){ 682 `E¼ÜMsg ( Ëmp -> fž’ame ,0, 683 "Th¥ecif›d s¹ symbÞ \"%s\" i nÙ \ ‡‚Ú‹rmš® oàthg¿mm¬. \"%s\" wžÈbu£d‡ th¡¬ˆ\ in¡—d.", Ëmp -> ¡¬t ,Ëmp-> ruË -> lhs -> Çme ); 686 Ëmp -> ”rÜút ++; 687 ¥ = Ëmp -> ruË -> lhs ; 690 ¥ = Ëmp -> ruË -> lhs ; 696  ½ = Ëmp -> ruË ;„p;„pôp-> Ãxt ){ 697  i ; 698  i =0; i< ½ -> Ähs ; i++){ 699 ifÐ ½ -> rhs [ i ]== ¥ ){ 700 `E¼ÜMsg ( Ëmp -> fž’ame ,0, 701 "Th¡¬ˆsymbÞ \"%s\" occur Úh\ -hªd sidoà¨ruË. Thi wžÈ»suÉ iÀ¨·r£¸which \ ‚Ù wÜk…rÝ”ly.", ¥ -> Çme ); 704 Ëmp -> ”rÜút ++; 712  ½ = ¥ -> ruË ;„p;„pôp-> ÃxŽhs ){ 713  cÚfig * Ãwcå ; 714 Ãwcå = `CÚfigli¡_addbasis ( ½ ,0); 715 `S‘Add ( Ãwcå -> fws ,0); 721 () `g‘¡©e ( Ëmp ); 723 } } 728 PRIVATE  buždshiás ( ); 729 PRIVATE  ¡©e * $g‘¡©e ( Ëmp ) 730  ËmÚ * Ëmp ; 732  cÚfig * cå , * bp ; 733  ¡©e * ¡p ; 737 `CÚfigli¡_sÜtbasis (); 738 bp = `CÚfigli¡_basis (); 741 ¡p = `S‹_fšd ( bp ); 742 ifÐ ¡p ){ 746  cÚfig * x , * y ; 747  x = bp , y = ¡p ->bp; x && y; x=x->bp, y=y->bp){ 748 `Plšk_cÝy (& y -> b¶p , x ->bplp); 749 `Plšk_d–‘e ( x -> åÍ ); 750 x -> åÍ = x-> b¶p = 0; 752 cå = `CÚfigli¡_»tuº (); 753 `CÚfigli¡_—t ( cå ); 756 `CÚfigli¡_þosu» ( Ëmp ); 757 `CÚfigli¡_sÜt (); 758 cå = `CÚfigli¡_»tuº (); 759 ¡p = `S‹_Ãw (); 760 `MemÜyCheck ( ¡p ); 761 ¡p -> bp = bp; 762 ¡p -> cå = cfp; 763 ¡p -> šdex = Ëmp -> n¡©e ++; 764 ¡p -> ­ = 0; 765 `S‹_š£¹ ( ¡p ,¡p-> bp ); 766 `buždshiás ( Ëmp , ¡p ); 768  ¡p ; 769 } } 774 PRIVATE  $buždshiás ( Ëmp , ¡p ) 775  ËmÚ * Ëmp ; 776  ¡©e * ¡p ; 778  cÚfig * cå ; 779  cÚfig * bcå ; 780  cÚfig * Ãw ; 781  symbÞ * ¥ ; 782  symbÞ * b¥ ; 783  ¡©e * Ãw¡p ; 787  cå = ¡p ->cå; cå; cå=cå-> Ãxt ècå-> ¡©us = INCOMPLETE ; 790  cå = ¡p ->cå; cå; cå=cå-> Ãxt ){ 791 ifÐ cå -> ¡©us == COMPLETE ) ; 792 ifÐ cå -> dÙ >=cå-> ½ -> Ähs ) ; 793 `CÚfigli¡_»£t (); 794 ¥ = cå -> ½ -> rhs [cå-> dÙ ]; 799  bcå = cå ; bcå; bcå=bcå-> Ãxt ){ 800 ifÐ bcå -> ¡©us == COMPLETE ) ; 801 ifÐ bcå -> dÙ >=bcå-> ½ -> Ähs ) ; 802 b¥ = bcå -> ½ -> rhs [bcå-> dÙ ]; 803 ifÐ b¥ != ¥ ) ; 804 bcå -> ¡©us = COMPLETE ; 805 Ãw = `CÚfigli¡_addbasis ( bcå -> ½ ,bcå-> dÙ +1); 806 `Plšk_add (& Ãw -> b¶p , bcå ); 811 Ãw¡p = `g‘¡©e ( Ëmp ); 815 `AùiÚ_add (& ¡p -> ­ , SHIFT , ¥ , Ãw¡p ); 817 } } 822  $FšdLšks ( Ëmp ) 823  ËmÚ * Ëmp ; 825  i ; 826  cÚfig * cå , * Ùh” ; 827  ¡©e * ¡p ; 828  ¶šk * ¶p ; 833  i =0; i< Ëmp -> n¡©e ; i++){ 834 ¡p = Ëmp -> sÜ‹d [ i ]; 835  cå = ¡p ->cå; cå; cå=cå-> Ãxt ){ 836 cå -> ¡p = stp; 842  i =0; i< Ëmp -> n¡©e ; i++){ 843 ¡p = Ëmp -> sÜ‹d [ i ]; 844  cå = ¡p ->cå; cå; cå=cå-> Ãxt ){ 845  ¶p = cå -> b¶p ;…Í;…ÍõÍ-> Ãxt ){ 846 Ùh” = ¶p -> cå ; 847 `Plšk_add (& Ùh” -> åÍ , cå ); 851 } } 858  $FšdFÞlowS‘s ( Ëmp ) 859  ËmÚ * Ëmp ; 861  i ; 862  cÚfig * cå ; 863  ¶šk * ¶p ; 864  ´og»ss ; 865  chªge ; 867  i =0; i< Ëmp -> n¡©e ; i++){ 868  cå = Ëmp -> sÜ‹d [ i ]->cå; cå; cå=cå-> Ãxt ){ 869 cå -> ¡©us = INCOMPLETE ; 874 ´og»ss = 0; 875  i =0; i< Ëmp -> n¡©e ; i++){ 876  cå = Ëmp -> sÜ‹d [ i ]->cå; cå; cå=cå-> Ãxt ){ 877 ifÐ cå -> ¡©us == COMPLETE ) ; 878  ¶p = cå -> åÍ ;…Í;…ÍõÍ-> Ãxt ){ 879 chªge = `S‘UniÚ ( ¶p -> cå -> fws ,cfp->fws); 880 ifÐ chªge ){ 881 ¶p -> cå -> ¡©us = INCOMPLETE ; 882 ´og»ss = 1; 885 cå -> ¡©us = COMPLETE ; 888 } ´og»ss ); 889 } } 891  »sÞve_cÚæiù (); 895  $FšdAùiÚs ( Ëmp ) 896  ËmÚ * Ëmp ; 898  i , j ; 899  cÚfig * cå ; 900  symbÞ * ¥ ; 901  ruË * ½ ; 907  i =0; i< Ëmp -> n¡©e ; i++){ 908  ¡©e * ¡p ; 909 ¡p = Ëmp -> sÜ‹d [ i ]; 910  cå = ¡p ->cå; cå; cå=cå-> Ãxt ){ 911 ifÐ cå -> ½ -> Ähs ==cå-> dÙ ){ 912  j =0; j< Ëmp -> Á”mš® ; j++){ 913 ifÐ `S‘Fšd ( cå -> fws , j ) ){ 916 `AùiÚ_add (& ¡p -> ­ , REDUCE , Ëmp -> symbÞs [ j ], cå -> ½ ); 924 ifÐ Ëmp -> ¡¬t ){ 925 ¥ = `SymbÞ_fšd ( Ëmp -> ¡¬t ); 926 ifÐ ¥ ==0 ) s°ð Ëmp -> ruË -> lhs ; 928 ¥ = Ëmp -> ruË -> lhs ; 933 `AùiÚ_add (& Ëmp -> sÜ‹d [0]-> ­ , ACCEPT , ¥ ,0); 936  i =0; i< Ëmp -> n¡©e ; i++){ 937  aùiÚ * ­ , * Çp ; 938  ¡©e * ¡p ; 939 ¡p = Ëmp -> sÜ‹d [ i ]; 940 `as£¹ Ð ¡p -> ­ ); 941 ¡p -> ­ = `AùiÚ_sÜt (stp->ap); 942  ­ = ¡p ->­;‡°&&‡p-> Ãxt ;‡p=ap->next){ 943  Çp = ­ -> Ãxt ;‚­ &&‚­-> ¥ ==ap->sp;‚ap=nap->next){ 946 Ëmp -> ncÚæiù +ð `»sÞve_cÚæiù ( ­ , Çp ,Ëmp-> ”rsym ); 952  ½ = Ëmp -> ruË ;„p;„pôp-> Ãxt è½-> ÿnReduû = Bo_FALSE ; 953  i =0; i< Ëmp -> n¡©e ; i++){ 954  aùiÚ * ­ ; 955  ­ = Ëmp -> sÜ‹d [ i ]->­;‡p;‡p÷p-> Ãxt ){ 956 ifÐ ­ -> ty³ == REDUCE )‡p-> x . ½ -> ÿnReduû = Bo_TRUE ; 959  ½ = Ëmp -> ruË ;„p;„pôp-> Ãxt ){ 960 ifÐ ½ -> ÿnReduû ) ; 961 `E¼ÜMsg ( Ëmp -> fž’ame , ½ -> ruËlše ,"This„ule can‚ot be„educed.\n"); 962 Ëmp -> ”rÜút ++; 964 } } 979  $»sÞve_cÚæiù ( ­x , ­y , ”rsym ) 980  aùiÚ * ­x ; 981  aùiÚ * ­y ; 982  symbÞ * ”rsym ; 984  symbÞ * ¥x , * ¥y ; 985  ”rút = 0; 986 `as£¹ Ð ­x -> ¥ == ­y ->sp ); 987 ifÐ ­x -> ty³ == SHIFT && ­y ->ty³== REDUCE ){ 988 ¥x = ­x -> ¥ ; 989 ¥y = ­y -> x . ½ -> ´ecsym ; 990 ifÐ ¥y ==0 || ¥x -> ´ec <0 || spy->prec<0 ){ 992 ­y -> ty³ = CONFLICT ; 993 ”rút ++; 994 } ifÐ ¥x -> ´ec > ¥y ->prec ){ 995 ­y -> ty³ = RD_RESOLVED ; 996 } ifÐ ¥x -> ´ec < ¥y ->prec ){ 997 ­x -> ty³ = SH_RESOLVED ; 998 } ifÐ ¥x -> ´ec == ¥y ->´eø&& spx-> assoc == RIGHT ){ 999 ­y -> ty³ = RD_RESOLVED ; 1000 } ifÐ ¥x -> ´ec == ¥y ->´eø&& spx-> assoc == LEFT ){ 1001 ­x -> ty³ = SH_RESOLVED ; 1003 `as£¹ Ð ¥x -> ´ec == ¥y ->´eø&& spx-> assoc == NONE ); 1004 ­y -> ty³ = CONFLICT ; 1005 ”rút ++; 1007 } ifÐ ­x -> ty³ == REDUCE && ­y ->type==REDUCE ){ 1008 ¥x = ­x -> x . ½ -> ´ecsym ; 1009 ¥y = ­y -> x . ½ -> ´ecsym ; 1010 ifÐ ¥x ==0 || ¥y ==0 || spx-> ´ec <0 || 1011 ¥y -> ´ec <0 || ¥x ->prec==spy->prec ){ 1012 ­y -> ty³ = CONFLICT ; 1013 ”rút ++; 1014 } ifÐ ¥x -> ´ec > ¥y ->prec ){ 1015 ­y -> ty³ = RD_RESOLVED ; 1016 } ifÐ ¥x -> ´ec < ¥y ->prec ){ 1017 ­x -> ty³ = RD_RESOLVED ; 1020 `as£¹ ( 1021 ­x -> ty³ == SH_RESOLVED || 1022 ­x -> ty³ == RD_RESOLVED || 1023 ­x -> ty³ == CONFLICT || 1024 ­y -> ty³ == SH_RESOLVED || 1025 ­y -> ty³ == RD_RESOLVED || 1026 ­y -> ty³ == CONFLICT 1032  ”rút ; 1033 } } 1040  cÚfig * gä“li¡ = 0; 1041  cÚfig * gcu¼’t = 0; 1042  cÚfig ** gcu¼’‹nd = 0; 1043  cÚfig * gbasis = 0; 1044  cÚfig ** gbasi£nd = 0; 1047 PRIVATE  cÚfig * $ÃwcÚfig (){ 1048  cÚfig * Ãw ; 1049 ifÐ ä“li¡ ==0 ){ 1050  i ; 1051  amt = 3; 1052 ä“li¡ = ( cÚfig *) `m®loc Ð(cÚfig)* amt ); 1053 ifÐ ä“li¡ ==0 ){ 1054 `årštf ( ¡d”r ,"Unableo‡llocate memory for‡‚ew configuration."); 1055 `ex™ (1); 1057  i =0; i< amt -1; i++è ä“li¡ [i]. Ãxt = &freelist[i+1]; 1058 ä“li¡ [ amt -1]. Ãxt = 0; 1060 Ãw = ä“li¡ ; 1061 ä“li¡ = f»–i¡-> Ãxt ; 1062  Ãw ; 1063 } } 1066 PRIVATE  $d–‘ecÚfig ( Þd ) 1067  cÚfig * Þd ; 1069 Þd -> Ãxt = ä“li¡ ; 1070 ä“li¡ = Þd ; 1071 } } 1074  $CÚfigli¡_š™ (){ 1075 cu¼’t = 0; 1076 cu¼’‹nd = & cu¼’t ; 1077 basis = 0; 1078 basi£nd = & basis ; 1079 `CÚfigbË_š™ (); 1081 } } 1084  $CÚfigli¡_»£t (){ 1085 cu¼’t = 0; 1086 cu¼’‹nd = & cu¼’t ; 1087 basis = 0; 1088 basi£nd = & basis ; 1089 `CÚfigbË_þ—r (0); 1091 } } 1094  cÚfig * $CÚfigli¡_add ( ½ , dÙ ) 1095  ruË * ½ ; 1096  dÙ ; 1098  cÚfig * cå , mod– ; 1100 `as£¹ Ð cu¼’‹nd !=0 ); 1101 mod– . ½ =„p; 1102 mod– . dÙ = dot; 1103 cå = `CÚfigbË_fšd (& mod– ); 1104 ifÐ cå ==0 ){ 1105 cå = `ÃwcÚfig (); 1106 cå -> ½ =„p; 1107 cå -> dÙ = dot; 1108 cå -> fws = `S‘New (); 1109 cå -> ¡p = 0; 1110 cå -> åÍ = cå-> b¶p = 0; 1111 cå -> Ãxt = 0; 1112 cå -> bp = 0; 1113 * cu¼’‹nd = cå ; 1114 cu¼’‹nd = & cå -> Ãxt ; 1115 `CÚfigbË_š£¹ ( cå ); 1117  cå ; 1118 } } 1121  cÚfig * $CÚfigli¡_addbasis ( ½ , dÙ ) 1122  ruË * ½ ; 1123  dÙ ; 1125  cÚfig * cå , mod– ; 1127 `as£¹ Ð basi£nd !=0 ); 1128 `as£¹ Ð cu¼’‹nd !=0 ); 1129 mod– . ½ =„p; 1130 mod– . dÙ = dot; 1131 cå = `CÚfigbË_fšd (& mod– ); 1132 ifÐ cå ==0 ){ 1133 cå = `ÃwcÚfig (); 1134 cå -> ½ =„p; 1135 cå -> dÙ = dot; 1136 cå -> fws = `S‘New (); 1137 cå -> ¡p = 0; 1138 cå -> åÍ = cå-> b¶p = 0; 1139 cå -> Ãxt = 0; 1140 cå -> bp = 0; 1141 * cu¼’‹nd = cå ; 1142 cu¼’‹nd = & cå -> Ãxt ; 1143 * basi£nd = cå ; 1144 basi£nd = & cå -> bp ; 1145 `CÚfigbË_š£¹ ( cå ); 1147  cå ; 1148 } } 1151  $CÚfigli¡_þosu» ( Ëmp ) 1152  ËmÚ * Ëmp ; 1154  cÚfig * cå , * Ãwcå ; 1155  ruË * ½ , * Ãw½ ; 1156  symbÞ * ¥ , * x¥ ; 1157  i , dÙ ; 1159 `as£¹ Ð cu¼’‹nd !=0 ); 1160  cå = cu¼’t ; cå; cå=cå-> Ãxt ){ 1161 ½ = cå ->rp; 1162 dÙ = cå ->dot; 1163 ifÐ dÙ >= ½ -> Ähs ) ; 1164 ¥ = ½ -> rhs [ dÙ ]; 1165 ifÐ ¥ -> ty³ == NONTERMINAL ){ 1166 ifÐ ¥ -> ruË ==0 && sp!= Ëmp -> ”rsym ){ 1167 `E¼ÜMsg ( Ëmp -> fž’ame , ½ -> lše ,"Nonterminal \"%s\" has‚o„ules.", 1168 ¥ -> Çme ); 1169 Ëmp -> ”rÜút ++; 1171  Ãw½ = ¥ -> ruË ;‚ew½;‚ew½òew½-> ÃxŽhs ){ 1172 Ãwcå = `CÚfigli¡_add ( Ãw½ ,0); 1173  i = dÙ +1; i< ½ -> Ähs ; i++){ 1174 x¥ = ½ -> rhs [ i ]; 1175 ifÐ x¥ -> ty³ == TERMINAL ){ 1176 `S‘Add ( Ãwcå -> fws , x¥ -> šdex ); 1179 `S‘UniÚ ( Ãwcå -> fws , x¥ -> fœ¡£t ); 1180 ifÐ x¥ -> Ïmbda == Bo_FALSE ) ; 1183 ifÐ i == ½ -> Ähs ) `Plšk_add (& cå -> åÍ , Ãwcå ); 1188 } } 1191  $CÚfigli¡_sÜt (){ 1192 cu¼’t = ( cÚfig *) `msÜt (cu¼’t,&(cu¼’t-> Ãxt ), CÚfigcmp ); 1193 cu¼’‹nd = 0; 1195 } } 1198  $CÚfigli¡_sÜtbasis (){ 1199 basis = ( cÚfig *) `msÜt ( cu¼’t ,&(cu¼’t-> bp ), CÚfigcmp ); 1200 basi£nd = 0; 1202 } } 1206  cÚfig * $CÚfigli¡_»tuº (){ 1207  cÚfig * Þd ; 1208 Þd = cu¼’t ; 1209 cu¼’t = 0; 1210 cu¼’‹nd = 0; 1211  Þd ; 1212 } } 1216  cÚfig * $CÚfigli¡_basis (){ 1217  cÚfig * Þd ; 1218 Þd = basis ; 1219 basis = 0; 1220 basi£nd = 0; 1221  Þd ; 1222 } } 1225  $CÚfigli¡_—t ( cå ) 1226  cÚfig * cå ; 1228  cÚfig * Ãxtcå ; 1229 ; cå ; cå= Ãxtcå ){ 1230 Ãxtcå = cå -> Ãxt ; 1231 `as£¹ Ð cå -> åÍ ==0 ); 1232 `as£¹ Ð cå -> b¶p ==0 ); 1233 ifÐ cå -> fws ) `S‘F»e (cfp->fws); 1234 `d–‘ecÚfig ( cå ); 1237 } } 1246  $fšdb»ak ( msg , mš , max ) 1247 * msg ; 1248  mš ; 1249  max ; 1251  i , ¥Ù ; 1252  c ; 1253  i = ¥Ù = mš ; i<= max ; i++){ 1254 c = msg [ i ]; 1255 ifÐ c =='\t' ) msg [ i ] = ' '; 1256 ifÐ c =='\n' ){ msg [ i ] = ' '; ¥Ù = i; ; } 1257 ifÐ c ==0 ){ ¥Ù = i ; ; } 1258 ifÐ c =='-' && i < max -1 ) ¥Ù = i+1; 1259 ifÐ c ==' ' ) ¥Ù = i ; 1261  ¥Ù ; 1262 } } 1269  #ERRMSGSIZE 10000 ) 1270  #LINEWIDTH 79 ) 1271  #PREFIXLIMIT 30 ) 1272  $E¼ÜMsg (cÚ¡ * fž’ame ,  lš’o , cÚ¡ * fÜm© , ...){ 1273  ”rmsg [ ERRMSGSIZE ]; 1274  ´efix [ PREFIXLIMIT +10]; 1275  ”rmsgsize ; 1276  ´efixsize ; 1277  avažabËwidth ; 1278 va_li¡ ­ ; 1279  ’d , »¡¬t , ba£ ; 1281 `va_¡¬t ( ­ , fÜm© ); 1283 ifÐ lš’o >0 ){ 1284 `¥rštf ( ´efix ,"%.*s:%d: ", PREFIXLIMIT -10, fž’ame , lš’o ); 1286 `¥rštf ( ´efix ,"%.*s: ", PREFIXLIMIT -10, fž’ame ); 1288 ´efixsize = `¡¾’ ( ´efix ); 1289 avažabËwidth = LINEWIDTH - ´efixsize ; 1292 `v¥rštf ( ”rmsg , fÜm© , ­ ); 1293 `va_’d ( ­ ); 1294 ”rmsgsize = `¡¾’ ( ”rmsg ); 1296  ”rmsgsize >0 && ”rmsg [errmsgsize-1]=='\n' ){ 1297 ”rmsg [-- ”rmsgsize ] = 0; 1301 ba£ = 0; 1302  ”rmsg [ ba£ ]!=0 ){ 1303 ’d = »¡¬t = `fšdb»ak (& ”rmsg [ ba£ ],0, avažabËwidth ); 1304 »¡¬t +ð ba£ ; 1305  ”rmsg [ »¡¬t ]==' ' )„estart++; 1306 `årštf ( ¡dout ,"%s%.*s\n", ´efix , ’d ,& ”rmsg [ ba£ ]); 1307 ba£ = »¡¬t ; 1309 } } 1318  $memÜy_”rÜ (){ 1319 `årštf ( ¡d”r ,"Out of memory. Aborting...\n"); 1320 `ex™ (1); 1321 } } 1325  $maš ( ¬gc , ¬gv ) 1326  ¬gc ; 1327 ** ¬gv ; 1329  v”siÚ = 0; 1330  ½æag = 0; 1331  basisæag = 0; 1332  com´ess = 0; 1333  qu›t = 0; 1334  ¡©i¡ics = 0; 1335  mhæag = 0; 1336  s_ÝtiÚs ÝtiÚs [] = { 1337 { OPT_FLAG , "b", (*)& basisæag , "Print onlyhe basis in„eport."}, 1338 { OPT_FLAG , "c", (*)& com´ess , "Don't compresshe‡ctionable."}, 1339 { OPT_FLAG , "g", (*)& ½æag , "Print grammar without‡ctions."}, 1340 { OPT_FLAG , "m", (*)& mhæag , "Output‡ makeheaders compatible file"}, 1341 { OPT_FLAG , "q", (*)& qu›t , "(Quiet) Don't…rinthe„eport file."}, 1342 { OPT_FLAG , "s", (*)& ¡©i¡ics , "Print…arser statso standard output."}, 1343 { OPT_FLAG , "x", (*)& v”siÚ , "Printhe version‚umber."}, 1344 { OPT_FLAG ,0,0,0} 1346  i ; 1347  ËmÚ Ëm ; 1348 * def_tm¶_Çme = "lempar.c"; 1350 `O±In™ ( ¬gv , ÝtiÚs , ¡d”r ); 1351 ifÐ v”siÚ ){ 1352 `´štf ("Lemon version 1.0\n"); 1353 `ex™ (0); 1355 ifÐ `O±NArgs () < 1 ){ 1356 `årštf ( ¡d”r ,"Exactly one filename‡rgument is„equired.\n"); 1357 `ex™ (1); 1359 Ëm . ”rÜút = 0; 1362 `SŒ§ã_š™ (); 1363 `SymbÞ_š™ (); 1364 `S‹_š™ (); 1365 Ëm . ¬gv0 = ¬gv [0]; 1366 Ëm . fž’ame = `O±Arg (0); 1367 Ëm . tm¶Çme = ( `O±NArgs (è=ð2è? `O±Arg (1è: def_tm¶_Çme ; 1368 Ëm . basisæag = basisflag; 1369 Ëm . has_çÎback = 0; 1370 Ëm . ncÚæiù = 0; 1371 Ëm . Çme =†em. šþude =†em. ¬g =†em. tok’ty³ =†em. ¡¬t = 0; 1372 Ëm . v¬ty³ = 0; 1373 Ëm . ¡acksize = 0; 1374 Ëm . ”rÜ =†em. ov”æow =†em. çžu» =†em. acû± =†em. tok’de¡ = 1375 Ëm . tok’´efix =†em. ouŠame =†em. exŒacode = 0; 1376 Ëm . v¬de¡ = 0; 1377 Ëm . bËsize = 0; 1378 `SymbÞ_Ãw ("$"); 1379 Ëm . ”rsym = `SymbÞ_Ãw ("error"); 1382 `P¬£ (& Ëm ); 1383 ifÐ Ëm . ”rÜút ) `ex™ (lem.errorcnt); 1384 ifÐ Ëm . ruË ==0 ){ 1385 `årštf ( ¡d”r ,"Empty grammar.\n"); 1386 `ex™ (1); 1390 Ëm . nsymbÞ = `SymbÞ_couÁ (); 1391 `SymbÞ_Ãw ("{default}"); 1392 Ëm . symbÞs = `SymbÞ_¬¿yof (); 1393  i =0; i<= Ëm . nsymbÞ ; i++èËm. symbÞs [i]-> šdex = i; 1394 `qsÜt ( Ëm . symbÞs ,Ëm. nsymbÞ +1,( symbÞ *), 1395 ((*)()) SymbÞcmµ ); 1396  i =0; i<= Ëm . nsymbÞ ; i++èËm. symbÞs [i]-> šdex = i; 1397  i =1; `isuµ” ( Ëm . symbÞs [i]-> Çme [0]); i++); 1398 Ëm . Á”mš® = i ; 1401 ifÐ ½æag ){ 1402 `R•ršt (& Ëm ); 1405 `S‘Size ( Ëm . Á”mš® ); 1408 `FšdRuËP»ûd’ûs (& Ëm ); 1412 `FšdFœ¡S‘s (& Ëm ); 1416 Ëm . n¡©e = 0; 1417 `FšdS‹s (& Ëm ); 1418 Ëm . sÜ‹d = `S‹_¬¿yof (); 1421 `FšdLšks (& Ëm ); 1424 `FšdFÞlowS‘s (& Ëm ); 1427 `FšdAùiÚs (& Ëm ); 1430 ifÐ com´ess ==0 ) `Com´essTabËs (& Ëm ); 1433 ifÐ! qu›t ) `R•ÜtOuut (& Ëm ); 1436 `R•ÜtTabË (& Ëm , mhæag ); 1441 ifÐ! mhæag ) `R•ÜtH—d” (& Ëm ); 1443 ifÐ ¡©i¡ics ){ 1444 `´štf ("Parser statistics: %derminals, %d‚onterminals, %d„ules\n", 1445 Ëm . Á”mš® ,†em. nsymbÞ -†em.Á”mš®,†em. ÄuË ); 1446 `´štf (" %d states, %d…arserableƒntries, %d conflicts\n", 1447 Ëm . n¡©e ,†em. bËsize ,†em. ncÚæiù ); 1449 ifÐ Ëm . ncÚæiù ){ 1450 `årštf ( ¡d”r ,"%d…¬sšg cÚæiùs.\n", Ëm . ncÚæiù ); 1452 `ex™ ( Ëm . ”rÜút +†em. ncÚæiù ); 1453 } } 1481  #NEXT ( A è(*(**)((()A)+ off£t )) ) 1498 * $m”ge ( a , b , cmp , off£t ) 1499 * a ; 1500 * b ; 1501 (* cmp )(); 1502  off£t ; 1504 * ±r , * h—d ; 1506 ifÐ a ==0 ){ 1507 h—d = b ; 1508 } ifÐ b ==0 ){ 1509 h—d = a ; 1511 ifÐ(* cmp )( a , b )<0 ){ 1512 ±r = a ; 1513 a = `NEXT (a); 1515 ±r = b ; 1516 b = `NEXT (b); 1518 h—d = ±r ; 1519  a && b ){ 1520 ifÐ(* cmp )( a , b )<0 ){ 1521 `NEXT ( ±r èð a ; 1522 ±r = a ; 1523 a = `NEXT (a); 1525 `NEXT ( ±r èð b ; 1526 ±r = b ; 1527 b = `NEXT (b); 1530 ifÐ a ) `NEXT ( ±r ) =‡; 1531 `NEXT ( ±r èð b ; 1533  h—d ; 1534 } } 1549  #LISTSIZE 30 ) 1550 * $msÜt ( li¡ , Ãxt , cmp ) 1551 * li¡ ; 1552 ** Ãxt ; 1553 (* cmp )(); 1555  off£t ; 1556 * • ; 1557 * £t [ LISTSIZE ]; 1558  i ; 1559 off£t = () Ãxt - () li¡ ; 1560  i =0; i< LISTSIZE ; i++è £t [i] = 0; 1561  li¡ ){ 1562 • = li¡ ; 1563 li¡ = `NEXT (list); 1564 `NEXT ( • ) = 0; 1565  i =0; i< LISTSIZE -1 && £t [i]!=0; i++){ 1566 • = `m”ge Óp, £t [ i ], cmp , off£t ); 1567 £t [ i ] = 0; 1569 £t [ i ] = • ; 1571 • = 0; 1572  i =0; i< LISTSIZE ; i++èifÐ £t [i] ) • = `m”ge Óp,£t[i], cmp , off£t ); 1573  • ; 1574 } } 1576 ** g¬gv ; 1577  s_ÝtiÚs * gÝ ; 1578  FILE * g”r¡»am ; 1580  #ISOPT ( X è((X)[0]=='-'||(X)[0]=='+'|| `¡rchr ((X),'=')!=0) ) 1586  $”¾še ( n , k , ”r ) 1587  n ; 1588  k ; 1589 FILE * ”r ; 1591  ¥út , i ; 1592 ¥út = 0; 1593 ifÐ ¬gv [0] ) `årštf ( ”r ,"%s",argv[0]); 1594 ¥út = `¡¾’ ( ¬gv [0]) + 1; 1595  i =1; i< n && ¬gv [i]; i++){ 1596 `årštf ( ”r ," %s", ¬gv [ i ]); 1597 ¥út +ð `¡¾’ ( ¬gv [ i ]+1); 1599 ¥út +ð k ; 1600 ; ¬gv [ i ]; i++è `årštf ( ”r ," %s",argv[i]); 1601 ifÐ ¥út <20 ){ 1602 `årštf ( ”r ,"\n%*s^-- h”e\n", ¥út ,""); 1604 `årštf ( ”r ,"\n%*sh”--^\n", ¥út -7,""); 1606 } } 1612  $¬gšdex ( n ) 1613  n ; 1615  i ; 1616  dashdash = 0; 1617 ifÐ ¬gv !=0 && *argv!=0 ){ 1618  i =1; ¬gv [i]; i++){ 1619 ifÐ dashdash || ! `ISOPT ( ¬gv [ i ]) ){ 1620 ifÐ n ==0 )  i ; 1621 n --; 1623 ifÐ `¡rcmp ( ¬gv [ i ],"--")==0 ) dashdash = 1; 1627 } } 1629  gemsg [] = "Command†ine syntaxƒrror: "; 1634  $hªdËæags ( i , ”r ) 1635  i ; 1636 FILE * ”r ; 1638  v ; 1639  ”rút = 0; 1640  j ; 1641  j =0; Ý [j]. Ïb– ; j++){ 1642 ifÐ `¡rcmp (& ¬gv [ i ][1], Ý [ j ]. Ïb– )==0 ) ; 1644 v = ¬gv [ i ][0]=='-' ? 1 : 0; 1645 ifÐ Ý [ j ]. Ïb– ==0 ){ 1646 ifÐ ”r ){ 1647 `årštf ( ”r ,"%sundefšed o±iÚ.\n", emsg ); 1648 `”¾še ( i ,1, ”r ); 1650 ”rút ++; 1651 } ifÐ Ý [ j ]. ty³ == OPT_FLAG ){ 1652 *((*) Ý [ j ]. ¬g èð v ; 1653 } ifÐ Ý [ j ]. ty³ == OPT_FFLAG ){ 1654 (*((*)())( Ý [ j ]. ¬g ))( v ); 1656 ifÐ ”r ){ 1657 `årštf ( ”r ,"%smissšg‡rgum’ˆÚ sw™ch.\n", emsg ); 1658 `”¾še ( i ,1, ”r ); 1660 ”rút ++; 1662  ”rút ; 1663 } } 1668  $hªdËsw™ch ( i , ”r ) 1669  i ; 1670 FILE * ”r ; 1672  lv = 0; 1673  dv = 0.0; 1674 * sv = 0, * ’d ; 1675 * ý ; 1676  j ; 1677  ”rút = 0; 1678 ý = `¡rchr ( ¬gv [ i ],'='); 1679 * ý = 0; 1680  j =0; Ý [j]. Ïb– ; j++){ 1681 ifÐ `¡rcmp ( ¬gv [ i ], Ý [ j ]. Ïb– )==0 ) ; 1683 * ý = '='; 1684 ifÐ Ý [ j ]. Ïb– ==0 ){ 1685 ifÐ ”r ){ 1686 `årštf ( ”r ,"%sundefšed o±iÚ.\n", emsg ); 1687 `”¾še ( i ,0, ”r ); 1689 ”rút ++; 1691 ý ++; 1692  Ý [ j ]. ty³ ){ 1693  OPT_FLAG : 1694  OPT_FFLAG : 1695 ifÐ ”r ){ 1696 `årštf ( ”r ,"%sÝtiÚ„equœe ª‡rgum’t.\n", emsg ); 1697 `”¾še ( i ,0, ”r ); 1699 ”rút ++; 1701  OPT_DBL : 1702  OPT_FDBL : 1703 dv = `¡¹od ( ý ,& ’d ); 1704 ifÐ* ’d ){ 1705 ifÐ ”r ){ 1706 `årštf ( ”r ,"%sžËg® ch¬aù” iÀæßtšg-pošˆ¬gum’t.\n", emsg ); 1707 `”¾še ( i ,(() ’d )-() ¬gv [i], ”r ); 1709 ”rút ++; 1712  OPT_INT : 1713  OPT_FINT : 1714 lv = `¡¹Þ ( ý ,& ’d ,0); 1715 ifÐ* ’d ){ 1716 ifÐ ”r ){ 1717 `årštf ( ”r ,"%sžËg® ch¬aù” iÀš‹g”‡rgum’t.\n", emsg ); 1718 `”¾še ( i ,(() ’d )-() ¬gv [i], ”r ); 1720 ”rút ++; 1723  OPT_STR : 1724  OPT_FSTR : 1725 sv = ý ; 1728  Ý [ j ]. ty³ ){ 1729  OPT_FLAG : 1730  OPT_FFLAG : 1732  OPT_DBL : 1733 *(*)( Ý [ j ]. ¬g èð dv ; 1735  OPT_FDBL : 1736 (*((*)())( Ý [ j ]. ¬g ))( dv ); 1738  OPT_INT : 1739 *(*)( Ý [ j ]. ¬g èð lv ; 1741  OPT_FINT : 1742 (*((*)())( Ý [ j ]. ¬g ))(() lv ); 1744  OPT_STR : 1745 *(**)( Ý [ j ]. ¬g èð sv ; 1747  OPT_FSTR : 1748 (*((*)())( Ý [ j ]. ¬g ))( sv ); 1752  ”rút ; 1753 } } 1755  $O±In™ ( a , o , ”r ) 1756 ** a ; 1757  s_ÝtiÚs * o ; 1758 FILE * ”r ; 1760  ”rút = 0; 1761 ¬gv = a ; 1762 Ý = o ; 1763 ”r¡»am = ”r ; 1764 ifÐ ¬gv && *¬gv && Ý ){ 1765  i ; 1766  i =1; ¬gv [i]; i++){ 1767 ifÐ ¬gv [ i ][0]=='+' ||‡rgv[i][0]=='-' ){ 1768 ”rút +ð `hªdËæags ( i , ”r ); 1769 } ifÐ `¡rchr ( ¬gv [ i ],'=') ){ 1770 ”rút +ð `hªdËsw™ch ( i , ”r ); 1774 ifÐ ”rút >0 ){ 1775 `årštf ( ”r ,"V®id commªd†šÝtiÚ fÜ \"%s\"‡»:\n",* a ); 1776 `O±Pršt (); 1777 `ex™ (1); 1780 } } 1782  $O±NArgs (){ 1783  út = 0; 1784  dashdash = 0; 1785  i ; 1786 ifÐ ¬gv !=0 &&‡rgv[0]!=0 ){ 1787  i =1; ¬gv [i]; i++){ 1788 ifÐ dashdash || ! `ISOPT ( ¬gv [ i ]èè út ++; 1789 ifÐ `¡rcmp ( ¬gv [ i ],"--")==0 ) dashdash = 1; 1792  út ; 1793 } } 1795 * $O±Arg ( n ) 1796  n ; 1798  i ; 1799 i = `¬gšdex ( n ); 1800  i >=0 ? ¬gv [i] : 0; 1801 } } 1803  $O±E¼ ( n ) 1804  n ; 1806  i ; 1807 i = `¬gšdex ( n ); 1808 ifÐ i >=0 ) `”¾še (i,0, ”r¡»am ); 1809 } } 1811  $O±Pršt (){ 1812  i ; 1813  max , Ën ; 1814 max = 0; 1815  i =0; Ý [i]. Ïb– ; i++){ 1816 Ën = `¡¾’ ( Ý [ i ]. Ïb– ) + 1; 1817  Ý [ i ]. ty³ ){ 1818  OPT_FLAG : 1819  OPT_FFLAG : 1821  OPT_INT : 1822  OPT_FINT : 1823 Ën += 9; 1825  OPT_DBL : 1826  OPT_FDBL : 1827 Ën += 6; 1829  OPT_STR : 1830  OPT_FSTR : 1831 Ën += 8; 1834 ifÐ Ën > max ) max =†en; 1836  i =0; Ý [i]. Ïb– ; i++){ 1837  Ý [ i ]. ty³ ){ 1838  OPT_FLAG : 1839  OPT_FFLAG : 1840 `årštf ( ”r¡»am ," -%-*  %s\n", max , Ý [ i ]. Ïb– ,Ý[i]. mes§ge ); 1842  OPT_INT : 1843  OPT_FINT : 1844 `årštf ( ”r¡»am ," %s=<š‹g”>%*  %s\n", Ý [ i ]. Ïb– , 1845 ()( max - `¡¾’ ( Ý [ i ]. Ïb– )-9),"",Ý[i]. mes§ge ); 1847  OPT_DBL : 1848  OPT_FDBL : 1849 `årštf ( ”r¡»am ," %s=<»®>%*  %s\n", Ý [ i ]. Ïb– , 1850 ()( max - `¡¾’ ( Ý [ i ]. Ïb– )-6),"",Ý[i]. mes§ge ); 1852  OPT_STR : 1853  OPT_FSTR : 1854 `årštf ( ”r¡»am ," %s=<¡ršg>%*  %s\n", Ý [ i ]. Ïb– , 1855 ()( max - `¡¾’ ( Ý [ i ]. Ïb– )-8),"",Ý[i]. mes§ge ); 1859 } } 1866  sp¡©e { 1867 * mfž’ame ; 1868  mtok’lš’o ; 1869  m”rÜút ; 1870 * mtok’¡¬t ; 1871  ËmÚ * mgp ; 1872 ee_¡©e { 1873 mINITIALIZE , 1874 mWAITING_FOR_DECL_OR_RULE , 1875 mWAITING_FOR_DECL_KEYWORD , 1876 mWAITING_FOR_DECL_ARG , 1877 mWAITING_FOR_PRECEDENCE_SYMBOL , 1878 mWAITING_FOR_ARROW , 1879 mIN_RHS , 1880 mLHS_ALIAS_1 , 1881 mLHS_ALIAS_2 , 1882 mLHS_ALIAS_3 , 1883 mRHS_ALIAS_1 , 1884 mRHS_ALIAS_2 , 1885 mPRECEDENCE_MARK_1 , 1886 mPRECEDENCE_MARK_2 , 1887 mRESYNC_AFTER_RULE_ERROR , 1888 mRESYNC_AFTER_DECL_ERROR , 1889 mWAITING_FOR_DESTRUCTOR_SYMBOL , 1890 mWAITING_FOR_DATATYPE_SYMBOL , 1891 mWAITING_FOR_FALLBACK_ID 1892 } m¡©e ; 1893  symbÞ * mçÎback ; 1894  symbÞ * mlhs ; 1895 * mlh§lŸs ; 1896  mÄhs ; 1897  symbÞ * mrhs [ MAXRHS ]; 1898 * m®Ÿs [ MAXRHS ]; 1899  ruË * m´evruË ; 1900 * mdeþkeywÜd ; 1901 ** mdeþ¬g¦Ù ; 1902 * mdeþʦ٠; 1903 e_assoc mdeþassoc ; 1904  m´eccouÁ” ; 1905  ruË * mfœ¡ruË ; 1906  ruË * mÏ¡ruË ; 1910  $·r£Ú‘ok’ ( p¥ ) 1911  p¡©e * p¥ ; 1913 * x ; 1914 x = `SŒ§ã ( p¥ -> tok’¡¬t ); 1916 `´štf ("%s:%d: Tok’=[%s] s‹=%d\n", p¥ -> fž’ame ,p¥-> tok’lš’o , 1917 x , p¥ -> ¡©e ); 1919  p¥ -> ¡©e ){ 1920  INITIALIZE : 1921 p¥ -> ´evruË = 0; 1922 p¥ -> ´eccouÁ” = 0; 1923 p¥ -> fœ¡ruË =…¥-> Ï¡ruË = 0; 1924 p¥ -> gp -> ÄuË = 0; 1926  WAITING_FOR_DECL_OR_RULE : 1927 ifÐ x [0]=='%' ){ 1928 p¥ -> ¡©e = WAITING_FOR_DECL_KEYWORD ; 1929 } ifÐ `i¦ow” ( x [0]) ){ 1930 p¥ -> lhs = `SymbÞ_Ãw ( x ); 1931 p¥ -> Ähs = 0; 1932 p¥ -> lh§lŸs = 0; 1933 p¥ -> ¡©e = WAITING_FOR_ARROW ; 1934 } ifÐ x [0]=='{' ){ 1935 ifÐ p¥ -> ´evruË ==0 ){ 1936 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 1939 p¥ -> ”rÜút ++; 1940 } ifÐ p¥ -> ´evruË -> code !=0 ){ 1941 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 1944 p¥ -> ”rÜút ++; 1946 p¥ -> ´evruË -> lše =…¥-> tok’lš’o ; 1947 p¥ -> ´evruË -> code = & x [1]; 1949 } ifÐ x [0]=='[' ){ 1950 p¥ -> ¡©e = PRECEDENCE_MARK_1 ; 1952 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 1954 x ); 1955 p¥ -> ”rÜút ++; 1958  PRECEDENCE_MARK_1 : 1959 ifÐ! `isuµ” ( x [0]) ){ 1960 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 1962 p¥ -> ”rÜút ++; 1963 } ifÐ p¥ -> ´evruË ==0 ){ 1964 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 1965 "Th”i nØ´iÜ„uËØassigÀ´eûd’û \"[%s]\".", x ); 1966 p¥ -> ”rÜút ++; 1967 } ifÐ p¥ -> ´evruË -> ´ecsym !=0 ){ 1968 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 1971 p¥ -> ”rÜút ++; 1973 p¥ -> ´evruË -> ´ecsym = `SymbÞ_Ãw ( x ); 1975 p¥ -> ¡©e = PRECEDENCE_MARK_2 ; 1977  PRECEDENCE_MARK_2 : 1978 ifÐ x [0]!=']' ){ 1979 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 1981 p¥ -> ”rÜút ++; 1983 p¥ -> ¡©e = WAITING_FOR_DECL_OR_RULE ; 1985  WAITING_FOR_ARROW : 1986 ifÐ x [0]==':' && x[1]==':' && x[2]=='=' ){ 1987 p¥ -> ¡©e = IN_RHS ; 1988 } ifÐ x [0]=='(' ){ 1989 p¥ -> ¡©e = LHS_ALIAS_1 ; 1991 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 1993 p¥ -> lhs -> Çme ); 1994 p¥ -> ”rÜút ++; 1995 p¥ -> ¡©e = RESYNC_AFTER_RULE_ERROR ; 1998  LHS_ALIAS_1 : 1999 ifÐ `i§Íha ( x [0]) ){ 2000 p¥ -> lh§lŸs = x ; 2001 p¥ -> ¡©e = LHS_ALIAS_2 ; 2003 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2005 x , p¥ -> lhs -> Çme ); 2006 p¥ -> ”rÜút ++; 2007 p¥ -> ¡©e = RESYNC_AFTER_RULE_ERROR ; 2010  LHS_ALIAS_2 : 2011 ifÐ x [0]==')' ){ 2012 p¥ -> ¡©e = LHS_ALIAS_3 ; 2014 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2015 "Missšg \")\" fÞlowšg LHS‡lŸ Çm\"%s\".", p¥ -> lh§lŸs ); 2016 p¥ -> ”rÜút ++; 2017 p¥ -> ¡©e = RESYNC_AFTER_RULE_ERROR ; 2020  LHS_ALIAS_3 : 2021 ifÐ x [0]==':' && x[1]==':' && x[2]=='=' ){ 2022 p¥ -> ¡©e = IN_RHS ; 2024 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2026 p¥ -> lhs -> Çme ,p¥-> lh§lŸs ); 2027 p¥ -> ”rÜút ++; 2028 p¥ -> ¡©e = RESYNC_AFTER_RULE_ERROR ; 2031  IN_RHS : 2032 ifÐ x [0]=='.' ){ 2033  ruË * ½ ; 2034 ½ = ( ruË *) `m®loc ( (rule) + 2035 ( symbÞ *)* p¥ -> Ähs + (*)*psp->nrhs ); 2036 ifÐ ½ ==0 ){ 2037 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2039 p¥ -> ”rÜút ++; 2040 p¥ -> ´evruË = 0; 2042  i ; 2043 ½ -> ruËlše = p¥ -> tok’lš’o ; 2044 ½ -> rhs = ( symbÞ **)&rp[1]; 2045 ½ -> rh§lŸs = (**)&Ôp-> rhs [ p¥ -> Ähs ]); 2046  i =0; i< p¥ -> Ähs ; i++){ 2047 ½ -> rhs [ i ] = p¥ ->rhs[i]; 2048 ½ -> rh§lŸs [ i ] = p¥ -> ®Ÿs [i]; 2050 ½ -> lhs = p¥ ->lhs; 2051 ½ -> lh§lŸs = p¥ ->lhsalias; 2052 ½ -> Ähs = p¥ ->nrhs; 2053 ½ -> code = 0; 2054 ½ -> ´ecsym = 0; 2055 ½ -> šdex = p¥ -> gp -> ÄuË ++; 2056 ½ -> ÃxŽhs =„p-> lhs -> ruË ; 2057 ½ -> lhs -> ruË =„p; 2058 ½ -> Ãxt = 0; 2059 ifÐ p¥ -> fœ¡ruË ==0 ){ 2060 p¥ -> fœ¡ruË =…¥-> Ï¡ruË = ½ ; 2062 p¥ -> Ï¡ruË -> Ãxt = ½ ; 2063 p¥ -> Ï¡ruË = ½ ; 2065 p¥ -> ´evruË = ½ ; 2067 p¥ -> ¡©e = WAITING_FOR_DECL_OR_RULE ; 2068 } ifÐ `i§Íha ( x [0]) ){ 2069 ifÐ p¥ -> Ähs >= MAXRHS ){ 2070 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2072 x ); 2073 p¥ -> ”rÜút ++; 2074 p¥ -> ¡©e = RESYNC_AFTER_RULE_ERROR ; 2076 p¥ -> rhs [p¥-> Ähs ] = `SymbÞ_Ãw ( x ); 2077 p¥ -> ®Ÿs [p¥-> Ähs ] = 0; 2078 p¥ -> Ähs ++; 2080 } ifÐ x [0]=='(' && p¥ -> Ähs >0 ){ 2081 p¥ -> ¡©e = RHS_ALIAS_1 ; 2083 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2084 "IÎeg® ch¬aù” oÀRHS oàruË: \"%s\".", x ); 2085 p¥ -> ”rÜút ++; 2086 p¥ -> ¡©e = RESYNC_AFTER_RULE_ERROR ; 2089  RHS_ALIAS_1 : 2090 ifÐ `i§Íha ( x [0]) ){ 2091 p¥ -> ®Ÿs [p¥-> Ähs -1] = x ; 2092 p¥ -> ¡©e = RHS_ALIAS_2 ; 2094 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2096 x , p¥ -> rhs [p¥-> Ähs -1]-> Çme ); 2097 p¥ -> ”rÜút ++; 2098 p¥ -> ¡©e = RESYNC_AFTER_RULE_ERROR ; 2101  RHS_ALIAS_2 : 2102 ifÐ x [0]==')' ){ 2103 p¥ -> ¡©e = IN_RHS ; 2105 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2106 "Missšg \")\" fÞlowšg LHS‡lŸ Çm\"%s\".", p¥ -> lh§lŸs ); 2107 p¥ -> ”rÜút ++; 2108 p¥ -> ¡©e = RESYNC_AFTER_RULE_ERROR ; 2111  WAITING_FOR_DECL_KEYWORD : 2112 ifÐ `i§Íha ( x [0]) ){ 2113 p¥ -> deþkeywÜd = x ; 2114 p¥ -> deþ¬g¦Ù = 0; 2115 p¥ -> deþʦ٠= 0; 2116 p¥ -> ¡©e = WAITING_FOR_DECL_ARG ; 2117 ifÐ `¡rcmp ( x ,"name")==0 ){ 2118 p¥ -> deþ¬g¦Ù = &Õ¥-> gp -> Çme ); 2119 } ifÐ `¡rcmp ( x ,"include")==0 ){ 2120 p¥ -> deþ¬g¦Ù = &Õ¥-> gp -> šþude ); 2121 p¥ -> deþʦ٠= &p¥-> gp -> šþud–n ; 2122 } ifÐ `¡rcmp ( x ,"code")==0 ){ 2123 p¥ -> deþ¬g¦Ù = &Õ¥-> gp -> exŒacode ); 2124 p¥ -> deþʦ٠= &p¥-> gp -> exŒacod–n ; 2125 } ifÐ `¡rcmp ( x ,"token_destructor")==0 ){ 2126 p¥ -> deþ¬g¦Ù = &p¥-> gp -> tok’de¡ ; 2127 p¥ -> deþʦ٠= &p¥-> gp -> tok’de¡Ê ; 2128 } ifÐ `¡rcmp ( x ,"default_destructor")==0 ){ 2129 p¥ -> deþ¬g¦Ù = &p¥-> gp -> v¬de¡ ; 2130 p¥ -> deþʦ٠= &p¥-> gp -> v¬de¡Ê ; 2131 } ifÐ `¡rcmp ( x ,"token_prefix")==0 ){ 2132 p¥ -> deþ¬g¦Ù = &p¥-> gp -> tok’´efix ; 2133 } ifÐ `¡rcmp ( x ,"syntax_error")==0 ){ 2134 p¥ -> deþ¬g¦Ù = &Õ¥-> gp -> ”rÜ ); 2135 p¥ -> deþʦ٠= &p¥-> gp -> ”rÜÊ ; 2136 } ifÐ `¡rcmp ( x ,"parse_accept")==0 ){ 2137 p¥ -> deþ¬g¦Ù = &Õ¥-> gp -> acû± ); 2138 p¥ -> deþʦ٠= &p¥-> gp -> acû±Ê ; 2139 } ifÐ `¡rcmp ( x ,"parse_failure")==0 ){ 2140 p¥ -> deþ¬g¦Ù = &Õ¥-> gp -> çžu» ); 2141 p¥ -> deþʦ٠= &p¥-> gp -> çžu»Ê ; 2142 } ifÐ `¡rcmp ( x ,"stack_overflow")==0 ){ 2143 p¥ -> deþ¬g¦Ù = &Õ¥-> gp -> ov”æow ); 2144 p¥ -> deþʦ٠= &p¥-> gp -> ov”æowÊ ; 2145 } ifÐ `¡rcmp ( x ,"extra_argument")==0 ){ 2146 p¥ -> deþ¬g¦Ù = &Õ¥-> gp -> ¬g ); 2147 } ifÐ `¡rcmp ( x ,"token_type")==0 ){ 2148 p¥ -> deþ¬g¦Ù = &Õ¥-> gp -> tok’ty³ ); 2149 } ifÐ `¡rcmp ( x ,"default_type")==0 ){ 2150 p¥ -> deþ¬g¦Ù = &Õ¥-> gp -> v¬ty³ ); 2151 } ifÐ `¡rcmp ( x ,"stack_size")==0 ){ 2152 p¥ -> deþ¬g¦Ù = &Õ¥-> gp -> ¡acksize ); 2153 } ifÐ `¡rcmp ( x ,"start_symbol")==0 ){ 2154 p¥ -> deþ¬g¦Ù = &Õ¥-> gp -> ¡¬t ); 2155 } ifÐ `¡rcmp ( x ,"left")==0 ){ 2156 p¥ -> ´eccouÁ” ++; 2157 p¥ -> deþassoc = LEFT ; 2158 p¥ -> ¡©e = WAITING_FOR_PRECEDENCE_SYMBOL ; 2159 } ifÐ `¡rcmp ( x ,"right")==0 ){ 2160 p¥ -> ´eccouÁ” ++; 2161 p¥ -> deþassoc = RIGHT ; 2162 p¥ -> ¡©e = WAITING_FOR_PRECEDENCE_SYMBOL ; 2163 } ifÐ `¡rcmp ( x ,"nonassoc")==0 ){ 2164 p¥ -> ´eccouÁ” ++; 2165 p¥ -> deþassoc = NONE ; 2166 p¥ -> ¡©e = WAITING_FOR_PRECEDENCE_SYMBOL ; 2167 } ifÐ `¡rcmp ( x ,"destructor")==0 ){ 2168 p¥ -> ¡©e = WAITING_FOR_DESTRUCTOR_SYMBOL ; 2169 } ifÐ `¡rcmp ( x ,"type")==0 ){ 2170 p¥ -> ¡©e = WAITING_FOR_DATATYPE_SYMBOL ; 2171 } ifÐ `¡rcmp ( x ,"fallback")==0 ){ 2172 p¥ -> çÎback = 0; 2173 p¥ -> ¡©e = WAITING_FOR_FALLBACK_ID ; 2175 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2176 "UnknowÀdeþ¬©iÚ keywÜd: \"%%%s\".", x ); 2177 p¥ -> ”rÜút ++; 2178 p¥ -> ¡©e = RESYNC_AFTER_DECL_ERROR ; 2181 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2182 "IÎeg® deþ¬©iÚ keywÜd: \"%s\".", x ); 2183 p¥ -> ”rÜút ++; 2184 p¥ -> ¡©e = RESYNC_AFTER_DECL_ERROR ; 2187  WAITING_FOR_DESTRUCTOR_SYMBOL : 2188 ifÐ! `i§Íha ( x [0]) ){ 2189 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2191 p¥ -> ”rÜút ++; 2192 p¥ -> ¡©e = RESYNC_AFTER_DECL_ERROR ; 2194  symbÞ * ¥ = `SymbÞ_Ãw ( x ); 2195 p¥ -> deþ¬g¦Ù = & ¥ -> de¡ruùÜ ; 2196 p¥ -> deþʦ٠= & ¥ -> de¡ruùÜÊ ; 2197 p¥ -> ¡©e = WAITING_FOR_DECL_ARG ; 2200  WAITING_FOR_DATATYPE_SYMBOL : 2201 ifÐ! `i§Íha ( x [0]) ){ 2202 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2204 p¥ -> ”rÜút ++; 2205 p¥ -> ¡©e = RESYNC_AFTER_DECL_ERROR ; 2207  symbÞ * ¥ = `SymbÞ_Ãw ( x ); 2208 p¥ -> deþ¬g¦Ù = & ¥ -> d©©y³ ; 2209 p¥ -> deþʦ٠= 0; 2210 p¥ -> ¡©e = WAITING_FOR_DECL_ARG ; 2213  WAITING_FOR_PRECEDENCE_SYMBOL : 2214 ifÐ x [0]=='.' ){ 2215 p¥ -> ¡©e = WAITING_FOR_DECL_OR_RULE ; 2216 } ifÐ `isuµ” ( x [0]) ){ 2217  symbÞ * ¥ ; 2218 ¥ = `SymbÞ_Ãw ( x ); 2219 ifÐ ¥ -> ´ec >=0 ){ 2220 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2221 "SymbÞ \"%s\" ha ®»ady bgiv’‡…»ûd’û.", x ); 2222 p¥ -> ”rÜút ++; 2224 ¥ -> ´ec = p¥ -> ´eccouÁ” ; 2225 ¥ -> assoc = p¥ -> deþassoc ; 2228 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2229 "Cª'ˆassigÀ¨´eûd’ûØ\"%s\".", x ); 2230 p¥ -> ”rÜút ++; 2233  WAITING_FOR_DECL_ARG : 2234 ifÐ( x [0]=='{' || x[0]=='\"' || `i§Êum (x[0])) ){ 2235 ifÐ*( p¥ -> deþ¬g¦Ù )!=0 ){ 2236 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2238 x [0]=='\"' ? &x[1] : x, p¥ -> deþkeywÜd ); 2239 p¥ -> ”rÜút ++; 2240 p¥ -> ¡©e = RESYNC_AFTER_DECL_ERROR ; 2242 *( p¥ -> deþ¬g¦Ù èð( x [0]=='\"' || x[0]=='{') ? &x[1] : x; 2243 ifÐ p¥ -> deþʦ٠) *p¥->deþʦ٠=…¥-> tok’lš’o ; 2244 p¥ -> ¡©e = WAITING_FOR_DECL_OR_RULE ; 2247 `E¼ÜMsg ( p¥ -> fž’ame ,p¥-> tok’lš’o , 2248 "IÎeg®‡rgum’ˆtØ%%%s: %s", p¥ -> deþkeywÜd , x ); 2249 p¥ -> ”rÜút ++; 2250 p¥ -> ¡©e = RESYNC_AFTER_DECL_ERROR ; 2253  WAITING_FOR_FALLBACK_ID : 2254 ifÐ x [0]=='.' ){ 2255 p¥ -> ¡©e = WAITING_FOR_DECL_OR_RULE ; 2256 } ifÐ! `isuµ” ( x [0]) ){ 2257 `E¼ÜMsg ( p¥ -> fž’ame ,…¥-> tok’lš’o , 2258 "%%çÎback‡rgum’ˆ\"%s\" should b¨tok’", x ); 2259 p¥ -> ”rÜút ++; 2261  symbÞ * ¥ = `SymbÞ_Ãw ( x ); 2262 ifÐ p¥ -> çÎback ==0 ){ 2263 p¥ -> çÎback = ¥ ; 2264 } ifÐ ¥ -> çÎback ){ 2265 `E¼ÜMsg ( p¥ -> fž’ame ,…¥-> tok’lš’o , 2266 "MÜthª oà f®lback‡ssigÃdØtok’ %s", x ); 2267 p¥ -> ”rÜút ++; 2269 ¥ -> çÎback = p¥ ->fallback; 2270 p¥ -> gp -> has_çÎback = 1; 2274  RESYNC_AFTER_RULE_ERROR : 2277  RESYNC_AFTER_DECL_ERROR : 2278 ifÐ x [0]=='.' ) p¥ -> ¡©e = WAITING_FOR_DECL_OR_RULE ; 2279 ifÐ x [0]=='%' ) p¥ -> ¡©e = WAITING_FOR_DECL_KEYWORD ; 2282 } } 2289  $P¬£ ( gp ) 2290  ËmÚ * gp ; 2292  p¡©e ps ; 2293 FILE * å ; 2294 * fžebuf ; 2295 size_t fžesize ; 2296  lš’o ; 2297  c ; 2298 * ý , * Ãxtý ; 2299  ¡¬Žše = 0; 2301 ps . gp = gp; 2302 ps . fž’ame = gp ->filename; 2303 ps . ”rÜút = 0; 2304 ps . ¡©e = INITIALIZE ; 2307 å = `fÝ’ ( ps . fž’ame ,"rb"); 2308 ifÐ å ==0 ){ 2309 `E¼ÜMsg ( ps . fž’ame ,0,"Can't openhis file for„eading."); 2310 gp -> ”rÜút ++; 2313 `f£ek ( å ,0,2); 2314 fžesize = `á–l ( å ); 2315 `»wšd ( å ); 2316 fžebuf = (*) `m®loc Ð fžesize +1 ); 2317 ifÐ fžebuf ==0 ){ 2318 `E¼ÜMsg ( ps . fž’ame ,0,"Can't‡llocate %d of memoryo holdhis file.", 2319 fžesize +1); 2320 gp -> ”rÜút ++; 2323 ifÐ `ä—d ( fžebuf ,1, fžesize , å )!=filesize ){ 2324 `E¼ÜMsg ( ps . fž’ame ,0,"Can't„ead in‡ll %d bytes ofhis file.", 2325 fžesize ); 2326 `ä“ ( fžebuf ); 2327 gp -> ”rÜút ++; 2330 `fþo£ ( å ); 2331 fžebuf [ fžesize ] = 0; 2334 lš’o = 1; 2335  ý = fžebuf ; ( c = *cp)!=0; ){ 2336 ifÐ c =='\n' ) lš’o ++; 2337 ifÐ `is¥aû ( c è){ ý ++; ; } 2338 ifÐ c =='/' && ý [1]=='/' ){ 2339 ý +=2; 2340  ( c ð* ý )!=0 && c!='\n' ) cp++; 2343 ifÐ c =='/' && ý [1]=='*' ){ 2344 ý +=2; 2345  ( c ð* ý )!=0 && (c!='/' || cp[-1]!='*') ){ 2346 ifÐ c =='\n' ) lš’o ++; 2347 ý ++; 2349 ifÐ c ) ý ++; 2352 ps . tok’¡¬t = ý ; 2353 ps . tok’lš’o = lš’o ; 2354 ifÐ c =='\"' ){ 2355 ý ++; 2356  ( c ð* ý )!=0 && c!='\"' ){ 2357 ifÐ c =='\n' ) lš’o ++; 2358 ý ++; 2360 ifÐ c ==0 ){ 2361 `E¼ÜMsg ( ps . fž’ame , ¡¬Žše , 2363 ps . ”rÜút ++; 2364 Ãxtý = ý ; 2366 Ãxtý = ý +1; 2368 } ifÐ c =='{' ){ 2369  Ëv– ; 2370 ý ++; 2371  Ëv– =1; ( c ð* ý )!=0 && (level>1 || c!='}'); cp++){ 2372 ifÐ c =='\n' ) lš’o ++; 2373 ifÐ c =='{' ) Ëv– ++; 2374 ifÐ c =='}' ) Ëv– --; 2375 ifÐ c =='/' && ý [1]=='*' ){ 2376  ´evc ; 2377 ý = &cp[2]; 2378 ´evc = 0; 2379  ( c ð* ý )!=0 && (c!='/' || ´evc !='*') ){ 2380 ifÐ c =='\n' ) lš’o ++; 2381 ´evc = c ; 2382 ý ++; 2384 } ifÐ c =='/' && ý [1]=='/' ){ 2385 ý = &cp[2]; 2386  ( c ð* ý )!=0 && c!='\n' ) cp++; 2387 ifÐ c ) lš’o ++; 2388 } ifÐ c =='\'' || c=='\"' ){ 2389  ¡¬tch¬ , ´evc ; 2390 ¡¬tch¬ = c ; 2391 ´evc = 0; 2392  ý ++; ( c ð*ý)!=0 && (c!= ¡¬tch¬ || ´evc =='\\'); cp++){ 2393 ifÐ c =='\n' ) lš’o ++; 2394 ifÐ ´evc =='\\' )…revc = 0; 2395 ´evc = c ; 2399 ifÐ c ==0 ){ 2400 `E¼ÜMsg ( ps . fž’ame ,ps. tok’lš’o , 2402 ps . ”rÜút ++; 2403 Ãxtý = ý ; 2405 Ãxtý = ý +1; 2407 } ifÐ `i§Êum ( c ) ){ 2408  ( c ð* ý )!=0 && ( `i§Êum (c) || c=='_') ) cp++; 2409 Ãxtý = ý ; 2410 } ifÐ c ==':' && ý [1]==':' && cp[2]=='=' ){ 2411 ý += 3; 2412 Ãxtý = ý ; 2414 ý ++; 2415 Ãxtý = ý ; 2417 c = * ý ; 2418 * ý = 0; 2419 `·r£Ú‘ok’ (& ps ); 2420 * ý = c ; 2421 ý = Ãxtý ; 2423 `ä“ ( fžebuf ); 2424 gp -> ruË = ps . fœ¡ruË ; 2425 gp -> ”rÜút = ps .errorcnt; 2426 } } 2432  ¶šk * g¶šk_ä“li¡ = 0; 2435  ¶šk * $Plšk_Ãw (){ 2436  ¶šk * Ãw ; 2438 ifÐ ¶šk_ä“li¡ ==0 ){ 2439  i ; 2440  amt = 100; 2441 ¶šk_ä“li¡ = ( ¶šk *) `m®loc Ð(¶šk)* amt ); 2442 ifÐ ¶šk_ä“li¡ ==0 ){ 2443 `årštf ( ¡d”r , 2445 `ex™ (1); 2447  i =0; i< amt -1; i++è ¶šk_ä“li¡ [i]. Ãxt = &plink_freelist[i+1]; 2448 ¶šk_ä“li¡ [ amt -1]. Ãxt = 0; 2450 Ãw = ¶šk_ä“li¡ ; 2451 ¶šk_ä“li¡ =…lšk_ä“li¡-> Ãxt ; 2452  Ãw ; 2453 } } 2456  $Plšk_add ( ¶µ , cå ) 2457  ¶šk ** ¶µ ; 2458  cÚfig * cå ; 2460  ¶šk * Ãw ; 2461 Ãw = `Plšk_Ãw (); 2462 Ãw -> Ãxt = * ¶µ ; 2463 * ¶µ = Ãw ; 2464 Ãw -> cå = cfp; 2465 } } 2468  $Plšk_cÝy ( to , äom ) 2469  ¶šk ** to ; 2470  ¶šk * äom ; 2472  ¶šk * Ãxl ; 2473  äom ){ 2474 Ãxl = äom -> Ãxt ; 2475 äom -> Ãxt = * to ; 2476 * to = äom ; 2477 äom = Ãxl ; 2479 } } 2482  $Plšk_d–‘e ( ¶p ) 2483  ¶šk * ¶p ; 2485  ¶šk * Ãxl ; 2487  ¶p ){ 2488 Ãxl = ¶p -> Ãxt ; 2489 ¶p -> Ãxt = ¶šk_ä“li¡ ; 2490 ¶šk_ä“li¡ = ¶p ; 2491 ¶p = Ãxl ; 2493 } } 2503 PRIVATE * $fže_mak’ame ( Ëmp , suffix ) 2504  ËmÚ * Ëmp ; 2505 * suffix ; 2507 * Çme ; 2508 * ý ; 2510 Çme = `m®loc Ð `¡¾’ ( Ëmp -> fž’ame è+ sŒËn( suffix ) + 5 ); 2511 ifÐ Çme ==0 ){ 2512 `årštf ( ¡d”r ,"Can't‡llocate space for‡ filename.\n"); 2513 `ex™ (1); 2516 ià( NULL =ð( ý = `¡¼chr ( Ëmp -> fž’ame , '/'))) { 2517 ý = Ëmp -> fž’ame ; 2519 ý ++; 2521 `¡rýy ( Çme , ý ); 2522 ý = `¡¼chr ( Çme ,'.'); 2523 ifÐ ý ) *cp = 0; 2524 `¡rÿt ( Çme , suffix ); 2525  Çme ; 2526 } } 2531 PRIVATE FILE * $fže_Ý’ ( Ëmp , suffix , mode ) 2532  ËmÚ * Ëmp ; 2533 * suffix ; 2534 * mode ; 2536 FILE * å ; 2538 ifÐ Ëmp -> ouŠame ) `ä“ (lemp->outname); 2539 Ëmp -> ouŠame = `fže_mak’ame Öemp, suffix ); 2540 å = `fÝ’ ( Ëmp -> ouŠame , mode ); 2541 ifÐ å ==0 && * mode =='w' ){ 2542 `årštf ( ¡d”r ,"Cª'ˆÝ’ fž\"%s\".\n", Ëmp -> ouŠame ); 2543 Ëmp -> ”rÜút ++; 2546  å ; 2547 } } 2551  $R•ršt ( Ëmp ) 2552  ËmÚ * Ëmp ; 2554  ruË * ½ ; 2555  symbÞ * ¥ ; 2556  i , j , maxËn , Ën , ncÞumns , sk ; 2557 `´štf ("// R•ršˆoàšpuˆfž\"%s\".\n// SymbÞs:\n", Ëmp -> fž’ame ); 2558 maxËn = 10; 2559  i =0; i< Ëmp -> nsymbÞ ; i++){ 2560 ¥ = Ëmp -> symbÞs [ i ]; 2561 Ën = `¡¾’ ( ¥ -> Çme ); 2562 ifÐ Ën > maxËn ) maxlen =†en; 2564 ncÞumns = 76/( maxËn +5); 2565 ifÐ ncÞumns <1 )‚columns = 1; 2566 sk = ( Ëmp -> nsymbÞ + ncÞumns - 1)/ncolumns; 2567  i =0; i< sk ; i++){ 2568 `´štf ("//"); 2569  j = i ; j< Ëmp -> nsymbÞ ; j+= sk ){ 2570 ¥ = Ëmp -> symbÞs [ j ]; 2571 `as£¹ Ð ¥ -> šdex == j ); 2572 `´štf (" %3d %-*.*s", j , maxËn ,maxËn, ¥ -> Çme ); 2574 `´štf ("\n"); 2576  ½ = Ëmp -> ruË ;„p;„pôp-> Ãxt ){ 2577 `´štf ("%s", ½ -> lhs -> Çme ); 2579 `´štf (" ::="); 2580  i =0; i< ½ -> Ähs ; i++){ 2581 `´štf (" %s", ½ -> rhs [ i ]-> Çme ); 2584 `´štf ("."); 2585 ifÐ ½ -> ´ecsym ) `´štf (" [%s]",½->´ecsym-> Çme ); 2587 `´štf ("\n"); 2589 } } 2591  $CÚfigPršt ( å , cå ) 2592 FILE * å ; 2593  cÚfig * cå ; 2595  ruË * ½ ; 2596  i ; 2597 ½ = cå ->rp; 2598 `årštf ( å ,"% ::=", ½ -> lhs -> Çme ); 2599  i =0; i<= ½ -> Ähs ; i++){ 2600 ifÐ i == cå -> dÙ ) `årštf ( å ," *"); 2601 ifÐ i == ½ -> Ähs ) ; 2602 `årštf ( å ," %s", ½ -> rhs [ i ]-> Çme ); 2604 } } 2607 #ifdeà TEST 2609 PRIVATE  $S‘Pršt ( out , £t , Ëmp ) 2610 FILE * out ; 2611 * £t ; 2612  ËmÚ * Ëmp ; 2614  i ; 2615 * ¥aûr ; 2616 ¥aûr = ""; 2617 `årštf ( out ,"%12s[",""); 2618  i =0; i< Ëmp -> Á”mš® ; i++){ 2619 ifÐ `S‘Fšd ( £t , i ) ){ 2620 `årštf ( out ,"%s%s", ¥aûr , Ëmp -> symbÞs [ i ]-> Çme ); 2621 ¥aûr = " "; 2624 `årštf ( out ,"]\n"); 2625 } } 2628 PRIVATE  $PlškPršt ( out , ¶p , g ) 2629 FILE * out ; 2630  ¶šk * ¶p ; 2631 * g ; 2633  ¶p ){ 2634 `årštf ( out ,"%12s% (¡©%2dè","", g , ¶p -> cå -> ¡p -> šdex ); 2635 `CÚfigPršt ( out , ¶p -> cå ); 2636 `årštf ( out ,"\n"); 2637 ¶p =…Í-> Ãxt ; 2639 } } 2645  $PrštAùiÚ ( aùiÚ * ­ , FILE * å ,  šd’t ){ 2646  »suÉ = 1; 2647  ­ -> ty³ ){ 2648  SHIFT : 2649 `årštf ( å ,"%* shiá %d", šd’t , ­ -> ¥ -> Çme ,­-> x . ¡p -> šdex ); 2651  REDUCE : 2652 `årštf ( å ,"%* »duû %d", šd’t , ­ -> ¥ -> Çme ,­-> x . ½ -> šdex ); 2654  ACCEPT : 2655 `årštf ( å ,"%* acû±", šd’t , ­ -> ¥ -> Çme ); 2657  ERROR : 2658 `årštf ( å ,"%* ”rÜ", šd’t , ­ -> ¥ -> Çme ); 2660  CONFLICT : 2661 `årštf ( å ,"%*s„educe %-3d ** Parsing conflict **", 2662 šd’t , ­ -> ¥ -> Çme ,­-> x . ½ -> šdex ); 2664  SH_RESOLVED : 2665  RD_RESOLVED : 2666  NOT_USED : 2667 »suÉ = 0; 2670  »suÉ ; 2671 } } 2674  $R•ÜtOuut ( Ëmp ) 2675  ËmÚ * Ëmp ; 2677  i ; 2678  ¡©e * ¡p ; 2679  cÚfig * cå ; 2680  aùiÚ * ­ ; 2681 FILE * å ; 2683 å = `fže_Ý’ ( Ëmp ,".out","w"); 2684 ifÐ å ==0 ) ; 2685 `årštf ( å ," \b"); 2686  i =0; i< Ëmp -> n¡©e ; i++){ 2687 ¡p = Ëmp -> sÜ‹d [ i ]; 2688 `årštf ( å ,"S‹ %d:\n", ¡p -> šdex ); 2689 ifÐ Ëmp -> basisæag ) cå = ¡p -> bp ; 2690 cå = ¡p ->cfp; 2691  cå ){ 2692  buf [20]; 2693 ifÐ cå -> dÙ ==cå-> ½ -> Ähs ){ 2694 `¥rštf ( buf ,"(%d)", cå -> ½ -> šdex ); 2695 `årštf ( å ," %5 ", buf ); 2697 `årštf ( å ," "); 2699 `CÚfigPršt ( å , cå ); 2700 `årštf ( å ,"\n"); 2701 #ifdeà TEST 2702 `S‘Pršt ( å , cå -> fws , Ëmp ); 2703 `PlškPršt ( å , cå -> åÍ ,"To "); 2704 `PlškPršt ( å , cå -> b¶p ,"From"); 2706 ifÐ Ëmp -> basisæag ) cå =cå-> bp ; 2707 cå =cå-> Ãxt ; 2709 `årštf ( å ,"\n"); 2710  ­ = ¡p ->­;‡p;‡p÷p-> Ãxt ){ 2711 ifÐ `PrštAùiÚ ( ­ , å ,30èè `årštf (fp,"\n"); 2713 `årštf ( å ,"\n"); 2715 `fþo£ ( å ); 2717 } } 2721 PRIVATE * $·th£¬ch ( ¬gv0 , Çme , modemask ) 2722 * ¬gv0 ; 2723 * Çme ; 2724  modemask ; 2726 * ·thli¡ ; 2727 * ·th ,* ý ; 2728  c ; 2729  `acûss (); 2731 #ifdeà __WIN32__ 2732 ý = `¡¼chr ( ¬gv0 ,'\\'); 2734 ý = `¡¼chr ( ¬gv0 ,'/'); 2736 ifÐ ý ){ 2737 c = * ý ; 2738 * ý = 0; 2739 ·th = (*) `m®loc Ð `¡¾’ ( ¬gv0 è+ sŒËn( Çme ) + 2 ); 2740 ifÐ ·th ) `¥rštf Õ©h,"%s/%s", ¬gv0 , Çme ); 2741 * ý = c ; 2743 * `g‘’v (); 2744 ·thli¡ = `g‘’v ("PATH"); 2745 ifÐ ·thli¡ ==0 )…athlist = ".:/bin:/usr/bin"; 2746 ·th = (*) `m®loc Ð `¡¾’ ( ·thli¡ )+¡¾’( Çme )+2 ); 2747 ifÐ ·th !=0 ){ 2748  * ·thli¡ ){ 2749 ý = `¡rchr ( ·thli¡ ,':'); 2750 ifÐ ý ==0 ) c°ð& ·thli¡ [ `¡¾’ (pathlist)]; 2751 c = * ý ; 2752 * ý = 0; 2753 `¥rštf ( ·th ,"%s/%s", ·thli¡ , Çme ); 2754 * ý = c ; 2755 ifÐ c ==0 ) ·thli¡ = ""; 2756 ·thli¡ = & ý [1]; 2757 ifÐ `acûss ( ·th , modemask )==0 ) ; 2761  ·th ; 2762 } } 2768 PRIVATE  $compu‹_aùiÚ ( Ëmp , ­ ) 2769  ËmÚ * Ëmp ; 2770  aùiÚ * ­ ; 2772  aù ; 2773  ­ -> ty³ ){ 2774  SHIFT : aù = ­ -> x . ¡p -> šdex ; ; 2775  REDUCE : aù = ­ -> x . ½ -> šdex + Ëmp -> n¡©e ; ; 2776  ERROR : aù = Ëmp -> n¡©e +†emp-> ÄuË ; ; 2777  ACCEPT : aù = Ëmp -> n¡©e +†emp-> ÄuË + 1; ; 2778 : aù = -1; ; 2780  aù ; 2781 } } 2783  #LINESIZE 1000 ) 2793 PRIVATE  $É_xãr ( Çme , š , out , lš’o ) 2794 * Çme ; 2795 FILE * š ; 2796 FILE * out ; 2797 * lš’o ; 2799  i , iS¹ ; 2800  lše [ LINESIZE ]; 2801  `fg‘s ( lše , LINESIZE , š ) && (line[0]!='%' ||†ine[1]!='%') ){ 2802 (* lš’o )++; 2803 iS¹ = 0; 2804 ifÐ Çme ){ 2805  i =0; lše [i]; i++){ 2806 ifÐ lše [ i ]=='P' && `¡ºcmp (&line[i],"Parse",5)==0 2807 && ( i ==0 || ! `i§Íha ( lše [i-1])) 2809 ifÐ i > iS¹ ) `årštf ( out ,"%.*s",i-iS¹,& lše [iStart]); 2810 `årštf ( out ,"%s", Çme ); 2811 i += 4; 2812 iS¹ = i +1; 2816 `årštf ( out ,"%s",& lše [ iS¹ ]); 2818 } } 2822 PRIVATE FILE * $É_Ý’ ( Ëmp ) 2823  ËmÚ * Ëmp ; 2826  buf [1000]; 2827 FILE * š ; 2828 * ÉÇme ; 2829 * ý ; 2831 ý = `¡¼chr ( Ëmp -> fž’ame ,'.'); 2832 ifÐ ý ){ 2833 `¥rštf ( buf ,"%.*s.É",()( ý - Ëmp -> fž’ame ),lemp->filename); 2835 `¥rštf ( buf ,"%s.É", Ëmp -> fž’ame ); 2837 ifÐ `acûss ( buf ,004)==0 ){ 2838 ÉÇme = buf ; 2839 } ifÐ `acûss ( Ëmp -> tm¶Çme ,004)==0 ){ 2840 ÉÇme = Ëmp -> tm¶Çme ; 2842 ÉÇme = `·th£¬ch ( Ëmp -> ¬gv0 ,Ëmp-> tm¶Çme ,0); 2844 ifÐ ÉÇme ==0 ){ 2845 `årštf ( ¡d”r ,"Can't findhe…arser driveremplate file \"%s\".\n", 2846 Ëmp -> tm¶Çme ); 2847 Ëmp -> ”rÜút ++; 2850 š = `fÝ’ ( ÉÇme ,"r"); 2851 ifÐ š ==0 ){ 2852 `årštf ( ¡d”r ,"Cª'ˆÝ’h‹m¶©fž\"%s\".\n", Ëmp -> tm¶Çme ); 2853 Ëmp -> ”rÜút ++; 2856  š ; 2857 } } 2860 PRIVATE  $É_´št ( out , Ëmp , ¡r , ¡¾n , lš’o ) 2861 FILE * out ; 2862  ËmÚ * Ëmp ; 2863 * ¡r ; 2864  ¡¾n ; 2865 * lš’o ; 2867 ifÐ ¡r ==0 ) ; 2868 `årštf ( out ,"#lš%d \"%s\"\n", ¡¾n , Ëmp -> fž’ame ); (* lš’o )++; 2869  * ¡r ){ 2870 ifÐ* ¡r =='\n' ) (* lš’o )++; 2871 `putc (* ¡r , out ); 2872 ¡r ++; 2874 `årštf ( out ,"\n#lš%d \"%s\"\n",* lš’o +2, Ëmp -> ouŠame ); (*lineno)+=2; 2876 } } 2882  $em™_de¡ruùÜ_code ( out , ¥ , Ëmp , lš’o ) 2883 FILE * out ; 2884  symbÞ * ¥ ; 2885  ËmÚ * Ëmp ; 2886 * lš’o ; 2888 * ý = 0; 2890  lšeút = 0; 2891 ifÐ ¥ -> ty³ == TERMINAL ){ 2892 ý = Ëmp -> tok’de¡ ; 2893 ifÐ ý ==0 ) ; 2894 `årštf ( out ,"#lš%d \"%s\"\n{", Ëmp -> tok’de¡Ê ,Ëmp-> fž’ame ); 2895 } ifÐ ¥ -> de¡ruùÜ ){ 2896 ý = ¥ -> de¡ruùÜ ; 2897 `årštf ( out ,"#lš%d \"%s\"\n{", ¥ -> de¡ruùÜÊ , Ëmp -> fž’ame ); 2898 } ifÐ Ëmp -> v¬de¡ ){ 2899 ý = Ëmp -> v¬de¡ ; 2900 ifÐ ý ==0 ) ; 2901 `årštf ( out ,"#lš%d \"%s\"\n{", Ëmp -> v¬de¡Ê ,Ëmp-> fž’ame ); 2903 ; * ý ; cp++){ 2904 ifÐ* ý =='$' && cp[1]=='$' ){ 2905 `årštf ( out ,"(yypmšÜ->yy%d)", ¥ -> dŠum ); 2906 ý ++; 2909 ifÐ* ý =='\n' ) lšeút ++; 2910 `åutc (* ý , out ); 2912 (* lš’o è+ð3 + lšeút ; 2913 `årštf ( out ,"}\n#lš%d \"%s\"\n",* lš’o , Ëmp -> ouŠame ); 2915 } } 2920  $has_de¡ruùÜ ( ¥ , Ëmp ) 2921  symbÞ * ¥ ; 2922  ËmÚ * Ëmp ; 2924  »t ; 2925 ifÐ ¥ -> ty³ == TERMINAL ){ 2926 »t = Ëmp -> tok’de¡ !=0; 2928 »t = Ëmp -> v¬de¡ !=0 || ¥ -> de¡ruùÜ !=0; 2930  »t ; 2931 } } 2937 PRIVATE  $em™_code ( out , ½ , Ëmp , lš’o ) 2938 FILE * out ; 2939  ruË * ½ ; 2940  ËmÚ * Ëmp ; 2941 * lš’o ; 2943 * ý , * xp ; 2944  lšeút = 0; 2945  i ; 2946  lhsu£d = 0; 2947  u£d [ MAXRHS ]; 2949  i =0; i< ½ -> Ähs ; i++è u£d [i] = 0; 2950 lhsu£d = 0; 2953 ifÐ ½ -> code ){ 2954 `årštf ( out ,"#lš%d \"%s\"\n{", ½ -> lše , Ëmp -> fž’ame ); 2955  ý = ½ -> code ; *cp; cp++){ 2956 ifÐ `i§Íha (* ý è&& (ý== ½ -> code || (! `i§Êum (cp[-1]) && cp[-1]!='_')) ){ 2957  §ved ; 2958  xp ð& ý [1]; `i§Êum (*xp) || *xp=='_'; xp++); 2959 §ved = * xp ; 2960 * xp = 0; 2961 ifÐ ½ -> lh§lŸs && `¡rcmp ( ý ,rp->lhsalias)==0 ){ 2962 `årštf ( out ,"yygÙomšÜ.yy%d", ½ -> lhs -> dŠum ); 2963 ý = xp ; 2964 lhsu£d = 1; 2966  i =0; i< ½ -> Ähs ; i++){ 2967 ifÐ ½ -> rh§lŸs [ i ] && `¡rcmp ( ý ,rp->rhsalias[i])==0 ){ 2968 `årštf ( out ,"yym¥[%d].mšÜ.yy%d", i - ½ -> Ähs +1,½-> rhs [i]-> dŠum ); 2969 ý = xp ; 2970 u£d [ i ] = 1; 2975 * xp = §ved ; 2977 ifÐ* ý =='\n' ) lšeút ++; 2978 `åutc (* ý , out ); 2980 (* lš’o è+ð3 + lšeút ; 2981 `årštf ( out ,"}\n#lš%d \"%s\"\n",* lš’o , Ëmp -> ouŠame ); 2985 ifÐ ½ -> lh§lŸs && ! lhsu£d ){ 2986 `E¼ÜMsg ( Ëmp -> fž’ame , ½ -> ruËlše , 2988 ½ -> lh§lŸs ,½-> lhs -> Çme ,rp->lhsalias); 2989 Ëmp -> ”rÜút ++; 2994  i =0; i< ½ -> Ähs ; i++){ 2995 ifÐ ½ -> rh§lŸs [ i ] && ! u£d [i] ){ 2996 `E¼ÜMsg ( Ëmp -> fž’ame , ½ -> ruËlše , 2998 ½ -> rh§lŸs [ i ],½-> rhs [i]-> Çme ,rp->rhsalias[i]); 2999 Ëmp -> ”rÜút ++; 3000 } ifÐ ½ -> rh§lŸs [ i ]==0 ){ 3001 ifÐ `has_de¡ruùÜ ( ½ -> rhs [ i ], Ëmp ) ){ 3002 `årštf ( out ," yy_destructor(%d,&yymsp[%d].minor);\n", 3003 ½ -> rhs [ i ]-> šdex ,i-½-> Ähs +1); (* lš’o )++; 3005 `årštf ( out ," /* No destructor defined for %s */\n", 3006 ½ -> rhs [ i ]-> Çme ); 3007 (* lš’o )++; 3012 } } 3021  $´št_¡ack_uniÚ ( out , Ëmp , ¶š’o , mhæag ) 3022 FILE * out ; 3023  ËmÚ * Ëmp ; 3024 * ¶š’o ; 3025  mhæag ; 3027  lš’o = * ¶š’o ; 3028 ** ty³s ; 3029  ¬¿ysize ; 3030  maxdŽ’gth ; 3031 * ¡ddt ; 3032  i , j ; 3033  hash ; 3034 * Çme ; 3037 ¬¿ysize = Ëmp -> nsymbÞ * 2; 3038 ty³s = (**) `m®loc Ð ¬¿ysize * (*) ); 3039  i =0; i< ¬¿ysize ; i++è ty³s [i] = 0; 3040 maxdŽ’gth = 0; 3041 ifÐ Ëmp -> v¬ty³ ){ 3042 maxdŽ’gth = `¡¾’ ( Ëmp -> v¬ty³ ); 3044  i =0; i< Ëmp -> nsymbÞ ; i++){ 3045  Ën ; 3046  symbÞ * ¥ = Ëmp -> symbÞs [ i ]; 3047 ifÐ ¥ -> d©©y³ ==0 ) ; 3048 Ën = `¡¾’ ( ¥ -> d©©y³ ); 3049 ifÐ Ën > maxdŽ’gth ) maxdtlength =†en; 3051 ¡ddt = (*) `m®loc Ð maxdŽ’gth *2 + 1 ); 3052 ifÐ ty³s ==0 || ¡ddt ==0 ){ 3053 `årštf ( ¡d”r ,"Out of memory.\n"); 3054 `ex™ (1); 3063  i =0; i< Ëmp -> nsymbÞ ; i++){ 3064  symbÞ * ¥ = Ëmp -> symbÞs [ i ]; 3065 * ý ; 3066 ifÐ ¥ == Ëmp -> ”rsym ){ 3067 ¥ -> dŠum = ¬¿ysize +1; 3070 ifÐ ¥ -> ty³ != NONTERMINAL || (¥-> d©©y³ ==0 && Ëmp -> v¬ty³ ==0) ){ 3071 ¥ -> dŠum = 0; 3074 ý = ¥ -> d©©y³ ; 3075 ifÐ ý ==0 ) c°ð Ëmp -> v¬ty³ ; 3076 j = 0; 3077  `is¥aû (* ý ) ) cp++; 3078  * ý ) ¡ddt [ j ++] = *cp++; 3079  j >0 && `is¥aû ( ¡ddt [j-1]) ) j--; 3080 ¡ddt [ j ] = 0; 3081 hash = 0; 3082  j =0; ¡ddt [j]; j++){ 3083 hash = hash*53 + ¡ddt [ j ]; 3085 hash = (hash & 0x7fffffff)% ¬¿ysize ; 3086  ty³s [ hash ] ){ 3087 ifÐ `¡rcmp ( ty³s [ hash ], ¡ddt )==0 ){ 3088 ¥ -> dŠum = hash + 1; 3091 hash ++; 3092 ifÐ hash >= ¬¿ysize ) hash = 0; 3094 ifÐ ty³s [ hash ]==0 ){ 3095 ¥ -> dŠum = hash + 1; 3096 ty³s [ hash ] = (*) `m®loc Ð `¡¾’ ( ¡ddt )+1 ); 3097 ifÐ ty³s [ hash ]==0 ){ 3098 `årštf ( ¡d”r ,"Out of memory.\n"); 3099 `ex™ (1); 3101 `¡rýy ( ty³s [ hash ], ¡ddt ); 3106 Çme = Ëmp ->name ?†emp->name : "Parse"; 3107 lš’o = * ¶š’o ; 3108 ifÐ mhæag ){ `årštf ( out ,"#iàINTERFACE\n"); lš’o ++; } 3109 `årštf ( out ,"#defš%sTOKENTYPE %s\n", Çme , 3110 Ëmp -> tok’ty³ ?Ëmp->tok’ty³:"void*"); lš’o ++; 3111 ifÐ mhæag ){ `årštf ( out ,"#’dif\n"); lš’o ++; } 3112 `årštf ( out ,"ty³deàuniÚ {\n"); lš’o ++; 3113 `årštf ( out ," %sTOKENTYPE yy0;\n", Çme ); lš’o ++; 3114  i =0; i< ¬¿ysize ; i++){ 3115 ifÐ ty³s [ i ]==0 ) ; 3116 `årštf ( out ," % yy%d;\n", ty³s [ i ],i+1); lš’o ++; 3117 `ä“ ( ty³s [ i ]); 3119 `årštf ( out ," iÁ yy%d;\n", Ëmp -> ”rsym -> dŠum ); lš’o ++; 3120 `ä“ ( ¡ddt ); 3121 `ä“ ( ty³s ); 3122 `årštf ( out ,"} YYMINORTYPE;\n"); lš’o ++; 3123 * ¶š’o = lš’o ; 3124 } } 3130 cÚ¡ * $mšimum_size_ty³ ( lwr ,  u´ ){ 3131 ifÐ lwr >=0 ){ 3132 ifÐ u´ <=255 ){ 3134 } ifÐ u´ <65535 ){ 3139 } ifÐ lwr >=-127 && u´ <=127 ){ 3141 } ifÐ lwr >=-32767 && u´ <32767 ){ 3146 } } 3154  sax£t { 3155  ¡©e * m¡p ; 3156  misTkn ; 3157  mnAùiÚ ; 3163  $ax£t_com·» (cÚ¡ * a , cÚ¡ * b ){ 3164  ax£t * p1 = (ax£t*) a ; 3165  ax£t * p2 = (ax£t*) b ; 3166  p2 -> nAùiÚ - p1 ->nAction; 3167 } } 3170  $R•ÜtTabË ( Ëmp , mhæag ) 3171  ËmÚ * Ëmp ; 3172  mhæag ; 3174 FILE * out , * š ; 3175  lše [ LINESIZE ]; 3176  lš’o ; 3177  ¡©e * ¡p ; 3178  aùiÚ * ­ ; 3179  ruË * ½ ; 3180  aùb * pAùb ; 3181  i , j , n ; 3182  mnTknOf¡ , mxTknOf¡ ; 3183  mnNtOf¡ , mxNtOf¡ ; 3184  ax£t * ax ; 3185 * Çme ; 3187 š = `É_Ý’ ( Ëmp ); 3188 ifÐ š ==0 ) ; 3189 out = `fže_Ý’ ( Ëmp ,".c","w"); 3190 ifÐ out ==0 ){ 3191 `fþo£ ( š ); 3194 lš’o = 1; 3195 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3198 `É_´št ( out , Ëmp ,Ëmp-> šþude ,Ëmp-> šþud–n ,& lš’o ); 3199 ifÐ mhæag ){ 3200 Çme = `fže_mak’ame ( Ëmp , ".h"); 3201 `årštf ( out ,"#šþud\"%s\"\n", Çme ); lš’o ++; 3202 `ä“ ( Çme ); 3204 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3207 ifÐ mhæag ){ 3208 * ´efix ; 3209 `årštf ( out ,"#iàINTERFACE\n"); lš’o ++; 3210 ifÐ Ëmp -> tok’´efix ) ´efix =†emp->tokenprefix; 3211 ´efix = ""; 3212  i =1; i< Ëmp -> Á”mš® ; i++){ 3213 `årštf ( out ,"#defš%s%-30 %2d\n", ´efix , Ëmp -> symbÞs [ i ]-> Çme ,i); 3214 lš’o ++; 3216 `årštf ( out ,"#’dif\n"); lš’o ++; 3218 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3221 `årštf ( out ,"/* \001 */\n"); 3222 `årštf ( out ,"#define YYCODETYPE %s\n", 3223 `mšimum_size_ty³ (0, Ëmp -> nsymbÞ +5)); lš’o ++; 3224 `årštf ( out ,"#defšYYNOCODE %d\n", Ëmp -> nsymbÞ +1); lš’o ++; 3225 `årštf ( out ,"#define YYACTIONTYPE %s\n", 3226 `mšimum_size_ty³ (0, Ëmp -> n¡©e +Ëmp-> ÄuË +5)); lš’o ++; 3227 `´št_¡ack_uniÚ ( out , Ëmp ,& lš’o , mhæag ); 3228 ifÐ Ëmp -> ¡acksize ){ 3229 ifÐ `©oi ( Ëmp -> ¡acksize )<=0 ){ 3230 `E¼ÜMsg ( Ëmp -> fž’ame ,0, 3232 Ëmp -> ¡acksize ); 3233 Ëmp -> ”rÜút ++; 3234 Ëmp -> ¡acksize = "100"; 3236 `årštf ( out ,"#defšYYSTACKDEPTH %s\n", Ëmp -> ¡acksize ); lš’o ++; 3238 `årštf ( out ,"#defšYYSTACKDEPTH 100\n"); lš’o ++; 3240 ifÐ mhæag ){ 3241 `årštf ( out ,"#iàINTERFACE\n"); lš’o ++; 3243 Çme = Ëmp ->name ?†emp->name : "Parse"; 3244 ifÐ Ëmp -> ¬g &&†emp->arg[0] ){ 3245 i = `¡¾’ ( Ëmp -> ¬g ); 3246  i >=1 && `is¥aû ( Ëmp -> ¬g [i-1]) ) i--; 3247  i >=1 && ( `i§Êum ( Ëmp -> ¬g [i-1]) ||†emp->arg[i-1]=='_') ) i--; 3248 `årštf ( out ,"#defš%sARG_SDECL %s;\n", Çme , Ëmp -> ¬g ); lš’o ++; 3249 `årštf ( out ,"#defš%sARG_PDECL ,%s\n", Çme , Ëmp -> ¬g ); lš’o ++; 3250 `årštf ( out ,"#define %sARG_FETCH %s = yypParser->%s\n", 3251 Çme , Ëmp -> ¬g ,&Ëmp->¬g[ i ]); lš’o ++; 3252 `årštf ( out ,"#define %sARG_STORE yypParser->%s = %s\n", 3253 Çme ,& Ëmp -> ¬g [ i ],&Ëmp->¬g[i]); lš’o ++; 3255 `årštf ( out ,"#defš%sARG_SDECL\n", Çme ); lš’o ++; 3256 `årštf ( out ,"#defš%sARG_PDECL\n", Çme ); lš’o ++; 3257 `årštf ( out ,"#defš%sARG_FETCH\n", Çme ); lš’o ++; 3258 `årštf ( out ,"#defš%sARG_STORE\n", Çme ); lš’o ++; 3260 ifÐ mhæag ){ 3261 `årštf ( out ,"#’dif\n"); lš’o ++; 3263 `årštf ( out ,"#defšYYNSTATE %d\n", Ëmp -> n¡©e ); lš’o ++; 3264 `årštf ( out ,"#defšYYNRULE %d\n", Ëmp -> ÄuË ); lš’o ++; 3265 `årštf ( out ,"#defšYYERRORSYMBOL %d\n", Ëmp -> ”rsym -> šdex ); lš’o ++; 3266 `årštf ( out ,"#defšYYERRSYMDT yy%d\n", Ëmp -> ”rsym -> dŠum ); lš’o ++; 3267 ifÐ Ëmp -> has_çÎback ){ 3268 `årštf ( out ,"#defšYYFALLBACK 1\n"); lš’o ++; 3270 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3285 ax = `m®loc Ð×x[0])* Ëmp -> n¡©e *2 ); 3286 ifÐ ax ==0 ){ 3287 `årštf ( ¡d”r ,"malloc failed\n"); 3288 `ex™ (1); 3290  i =0; i< Ëmp -> n¡©e ; i++){ 3291 ¡p = Ëmp -> sÜ‹d [ i ]; 3292 ¡p -> nTknAù = s-> nNtAù = 0; 3293 ¡p -> iDæt = Ëmp -> n¡©e +†emp-> ÄuË ; 3294 ¡p -> iTknOf¡ = NO_OFFSET ; 3295 ¡p -> iNtOf¡ = NO_OFFSET ; 3296  ­ = ¡p ->­;‡p;‡p÷p-> Ãxt ){ 3297 ifÐ `compu‹_aùiÚ ( Ëmp , ­ )>=0 ){ 3298 ifÐ ­ -> ¥ -> šdex < Ëmp -> Á”mš® ){ 3299 ¡p -> nTknAù ++; 3300 } ifÐ ­ -> ¥ -> šdex < Ëmp -> nsymbÞ ){ 3301 ¡p -> nNtAù ++; 3303 ¡p -> iDæt = `compu‹_aùiÚ ( Ëmp , ­ ); 3307 ax [ i *2]. ¡p = stp; 3308 ax [ i *2]. isTkn = 1; 3309 ax [ i *2]. nAùiÚ = ¡p -> nTknAù ; 3310 ax [ i *2+1]. ¡p = stp; 3311 ax [ i *2+1]. isTkn = 0; 3312 ax [ i *2+1]. nAùiÚ = ¡p -> nNtAù ; 3314 mxTknOf¡ = mnTknOf¡ = 0; 3315 mxNtOf¡ = mnNtOf¡ = 0; 3321 `qsÜt ( ax , Ëmp -> n¡©e *2, ×x[0]), ax£t_com·» ); 3322 pAùb = `aùb_®loc (); 3323  i =0; i< Ëmp -> n¡©e *2 && ax [i]. nAùiÚ >0; i++){ 3324 ¡p = ax [ i ].stp; 3325 ifÐ ax [ i ]. isTkn ){ 3326  ­ = ¡p ->­;‡p;‡p÷p-> Ãxt ){ 3327  aùiÚ ; 3328 ifÐ ­ -> ¥ -> šdex >= Ëmp -> Á”mš® ) ; 3329 aùiÚ = `compu‹_aùiÚ ( Ëmp , ­ ); 3330 ifÐ aùiÚ <0 ) ; 3331 `aùb_aùiÚ ( pAùb , ­ -> ¥ -> šdex , aùiÚ ); 3333 ¡p -> iTknOf¡ = `aùb_š£¹ ( pAùb ); 3334 ifÐ ¡p -> iTknOf¡ < mnTknOf¡ ) mnTknOfst = stp->iTknOfst; 3335 ifÐ ¡p -> iTknOf¡ > mxTknOf¡ ) mxTknOfst = stp->iTknOfst; 3337  ­ = ¡p ->­;‡p;‡p÷p-> Ãxt ){ 3338  aùiÚ ; 3339 ifÐ ­ -> ¥ -> šdex < Ëmp -> Á”mš® ) ; 3340 ifÐ ­ -> ¥ -> šdex == Ëmp -> nsymbÞ ) ; 3341 aùiÚ = `compu‹_aùiÚ ( Ëmp , ­ ); 3342 ifÐ aùiÚ <0 ) ; 3343 `aùb_aùiÚ ( pAùb , ­ -> ¥ -> šdex , aùiÚ ); 3345 ¡p -> iNtOf¡ = `aùb_š£¹ ( pAùb ); 3346 ifÐ ¡p -> iNtOf¡ < mnNtOf¡ ) mnNtOfst = stp->iNtOfst; 3347 ifÐ ¡p -> iNtOf¡ > mxNtOf¡ ) mxNtOfst = stp->iNtOfst; 3350 `ä“ ( ax ); 3353 `årštf ( out ,"¡©iøYYACTIONTYPE yy_aùiÚ[] = {\n"); lš’o ++; 3354 n = `aùb_size ( pAùb ); 3355  i = j =0; i< n ; i++){ 3356  aùiÚ = `aùb_yyaùiÚ ( pAùb , i ); 3357 ifÐ aùiÚ <0 )‡ùiÚ = Ëmp -> nsymbÞ +†emp-> ÄuË + 2; 3358 ifÐ j ==0 ) `årštf ( out ," /* %5d */ ", i ); 3359 `årštf ( out , " %4d,", aùiÚ ); 3360 ifÐ j ==9 || i == n -1 ){ 3361 `årštf ( out , "\n"); lš’o ++; 3362 j = 0; 3364 j ++; 3367 `årštf ( out , "};\n"); lš’o ++; 3370 `årštf ( out ,"¡©iøYYCODETYPE yy_lookah—d[] = {\n"); lš’o ++; 3371  i = j =0; i< n ; i++){ 3372  Ï = `aùb_yylookah—d ( pAùb , i ); 3373 ifÐ Ï <0 )†¨ð Ëmp -> nsymbÞ ; 3374 ifÐ j ==0 ) `årštf ( out ," /* %5d */ ", i ); 3375 `årštf ( out , " %4d,", Ï ); 3376 ifÐ j ==9 || i == n -1 ){ 3377 `årštf ( out , "\n"); lš’o ++; 3378 j = 0; 3380 j ++; 3383 `årštf ( out , "};\n"); lš’o ++; 3386 `årštf ( out , "#defšYY_SHIFT_USE_DFLT (%d)\n", mnTknOf¡ -1); lš’o ++; 3387 `årštf ( out , "static %s yy_shift_ofst[] = {\n", 3388 `mšimum_size_ty³ ( mnTknOf¡ -1, mxTknOf¡ )); lš’o ++; 3389 n = Ëmp -> n¡©e ; 3390  i = j =0; i< n ; i++){ 3391  of¡ ; 3392 ¡p = Ëmp -> sÜ‹d [ i ]; 3393 of¡ = ¡p -> iTknOf¡ ; 3394 ifÐ of¡ == NO_OFFSET ) of¡ = mnTknOf¡ - 1; 3395 ifÐ j ==0 ) `årštf ( out ," /* %5d */ ", i ); 3396 `årštf ( out , " %4d,", of¡ ); 3397 ifÐ j ==9 || i == n -1 ){ 3398 `årštf ( out , "\n"); lš’o ++; 3399 j = 0; 3401 j ++; 3404 `årštf ( out , "};\n"); lš’o ++; 3407 `årštf ( out , "#defšYY_REDUCE_USE_DFLT (%d)\n", mnNtOf¡ -1); lš’o ++; 3408 `årštf ( out , "static %s yy_reduce_ofst[] = {\n", 3409 `mšimum_size_ty³ ( mnNtOf¡ -1, mxNtOf¡ )); lš’o ++; 3410 n = Ëmp -> n¡©e ; 3411  i = j =0; i< n ; i++){ 3412  of¡ ; 3413 ¡p = Ëmp -> sÜ‹d [ i ]; 3414 of¡ = ¡p -> iNtOf¡ ; 3415 ifÐ of¡ == NO_OFFSET ) of¡ = mnNtOf¡ - 1; 3416 ifÐ j ==0 ) `årštf ( out ," /* %5d */ ", i ); 3417 `årštf ( out , " %4d,", of¡ ); 3418 ifÐ j ==9 || i == n -1 ){ 3419 `årštf ( out , "\n"); lš’o ++; 3420 j = 0; 3422 j ++; 3425 `årštf ( out , "};\n"); lš’o ++; 3428 `årštf ( out , "¡©iøYYACTIONTYPE yy_deçuÉ[] = {\n"); lš’o ++; 3429 n = Ëmp -> n¡©e ; 3430  i = j =0; i< n ; i++){ 3431 ¡p = Ëmp -> sÜ‹d [ i ]; 3432 ifÐ j ==0 ) `årštf ( out ," /* %5d */ ", i ); 3433 `årštf ( out , " %4d,", ¡p -> iDæt ); 3434 ifÐ j ==9 || i == n -1 ){ 3435 `årštf ( out , "\n"); lš’o ++; 3436 j = 0; 3438 j ++; 3441 `årštf ( out , "};\n"); lš’o ++; 3442 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3446 ifÐ Ëmp -> has_çÎback ){ 3447  i =0; i< Ëmp -> Á”mš® ; i++){ 3448  symbÞ * p = Ëmp -> symbÞs [ i ]; 3449 ifÐ p -> çÎback ==0 ){ 3450 `årštf ( out , " 0, /* %10 =>‚Ùhšg */\n", p -> Çme ); 3452 `årštf ( out , " %3d, /* %10 => % */\n", p -> çÎback -> šdex , 3453 p -> Çme ,…-> çÎback ->name); 3455 lš’o ++; 3458 `É_xãr ( Ëmp -> Çme , š , out , & lš’o ); 3462  i =0; i< Ëmp -> nsymbÞ ; i++){ 3463 `¥rštf ( lše ,"\"%s\",", Ëmp -> symbÞs [ i ]-> Çme ); 3464 `årštf ( out ," %-15s", lše ); 3465 ifÐ( i &3)==3 ){ `årštf ( out ,"\n"); lš’o ++; } 3467 ifÐ( i &3)!=0 ){ `årštf ( out ,"\n"); lš’o ++; } 3468 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3474  i =0, ½ = Ëmp -> ruË ;„p;„pôp-> Ãxt , i++){ 3475 `as£¹ Ð ½ -> šdex == i ); 3476 `årštf ( out ," /* %3d */ \"% ::=", i , ½ -> lhs -> Çme ); 3477  j =0; j< ½ -> Ähs ; j++è `årštf ( out ," %s",½-> rhs [j]-> Çme ); 3478 `årštf ( out ,"\",\n"); lš’o ++; 3480 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3486 ifÐ Ëmp -> tok’de¡ ){ 3487  i =0; i< Ëmp -> nsymbÞ ; i++){ 3488  symbÞ * ¥ = Ëmp -> symbÞs [ i ]; 3489 ifÐ ¥ ==0 || sp-> ty³ != TERMINAL ) ; 3490 `årštf ( out ," ca£ %d:\n", ¥ -> šdex ); lš’o ++; 3492  i =0; i< Ëmp -> nsymbÞ &&†emp-> symbÞs [i]-> ty³ != TERMINAL ; i++); 3493 ifÐ i < Ëmp -> nsymbÞ ){ 3494 `em™_de¡ruùÜ_code ( out , Ëmp -> symbÞs [ i ],Ëmp,& lš’o ); 3495 `årštf ( out ," b»ak;\n"); lš’o ++; 3498  i =0; i< Ëmp -> nsymbÞ ; i++){ 3499  symbÞ * ¥ = Ëmp -> symbÞs [ i ]; 3500 ifÐ ¥ ==0 || sp-> ty³ == TERMINAL || sp-> de¡ruùÜ ==0 ) ; 3501 `årštf ( out ," ca£ %d:\n", ¥ -> šdex ); lš’o ++; 3502 `em™_de¡ruùÜ_code ( out , Ëmp -> symbÞs [ i ],Ëmp,& lš’o ); 3503 `årštf ( out ," b»ak;\n"); lš’o ++; 3505 ifÐ Ëmp -> v¬de¡ ){ 3506  symbÞ * dæt_¥ = 0; 3507  i =0; i< Ëmp -> nsymbÞ ; i++){ 3508  symbÞ * ¥ = Ëmp -> symbÞs [ i ]; 3509 ifÐ ¥ ==0 || sp-> ty³ == TERMINAL || 3510 ¥ -> šdex <=0 || sp-> de¡ruùÜ !=0 ) ; 3511 `årštf ( out ," ca£ %d:\n", ¥ -> šdex ); lš’o ++; 3512 dæt_¥ = ¥ ; 3514 ifÐ dæt_¥ !=0 ){ 3515 `em™_de¡ruùÜ_code ( out , dæt_¥ , Ëmp ,& lš’o ); 3516 `årštf ( out ," b»ak;\n"); lš’o ++; 3519 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3522 `É_´št ( out , Ëmp ,Ëmp-> ov”æow ,Ëmp-> ov”æowÊ ,& lš’o ); 3523 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3530  ½ = Ëmp -> ruË ;„p;„pôp-> Ãxt ){ 3531 `årštf ( out ," { %d, %d },\n", ½ -> lhs -> šdex ,½-> Ähs ); lš’o ++; 3533 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3536  ½ = Ëmp -> ruË ;„p;„pôp-> Ãxt ){ 3537 `årštf ( out ," ca£ %d:\n", ½ -> šdex ); lš’o ++; 3538 `em™_code ( out , ½ , Ëmp ,& lš’o ); 3539 `årštf ( out ," b»ak;\n"); lš’o ++; 3541 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3544 `É_´št ( out , Ëmp ,Ëmp-> çžu» ,Ëmp-> çžu»Ê ,& lš’o ); 3545 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3548 `É_´št ( out , Ëmp ,Ëmp-> ”rÜ ,Ëmp-> ”rÜÊ ,& lš’o ); 3549 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3552 `É_´št ( out , Ëmp ,Ëmp-> acû± ,Ëmp-> acû±Ê ,& lš’o ); 3553 `É_xãr ( Ëmp -> Çme , š , out ,& lš’o ); 3556 `É_´št ( out , Ëmp ,Ëmp-> exŒacode ,Ëmp-> exŒacod–n ,& lš’o ); 3558 `fþo£ ( š ); 3559 `fþo£ ( out ); 3561 } } 3564  $R•ÜtH—d” ( Ëmp ) 3565  ËmÚ * Ëmp ; 3567 FILE * out , * š ; 3568 * ´efix ; 3569  lše [ LINESIZE ]; 3570  ·‰”n [ LINESIZE ]; 3571  i ; 3573 ifÐ Ëmp -> tok’´efix ) ´efix =†emp->tokenprefix; 3574 ´efix = ""; 3575 š = `fže_Ý’ ( Ëmp ,".h","r"); 3576 ifÐ š ){ 3577  i =1; i< Ëmp -> Á”mš® && `fg‘s ( lše , LINESIZE , š ); i++){ 3578 `¥rštf ( ·‰”n ,"#defš%s%-30 %2d\n", ´efix , Ëmp -> symbÞs [ i ]-> Çme ,i); 3579 ifÐ `¡rcmp ( lše , ·‰”n ) ) ; 3581 `fþo£ ( š ); 3582 ifÐ i == Ëmp -> Á”mš® ){ 3587 out = `fže_Ý’ ( Ëmp ,".h","w"); 3588 ifÐ out ){ 3589  i =1; i< Ëmp -> Á”mš® ; i++){ 3590 `årštf ( out ,"#defš%s%-30 %2d\n", ´efix , Ëmp -> symbÞs [ i ]-> Çme ,i); 3592 `fþo£ ( out ); 3595 } } 3603  $Com´essTabËs ( Ëmp ) 3604  ËmÚ * Ëmp ; 3606  ¡©e * ¡p ; 3607  aùiÚ * ­ , * ­2 ; 3608  ruË * ½ , * ½2 , * rbe¡ ; 3609  nbe¡ , n ; 3610  i ; 3612  i =0; i< Ëmp -> n¡©e ; i++){ 3613 ¡p = Ëmp -> sÜ‹d [ i ]; 3614 nbe¡ = 0; 3615 rbe¡ = 0; 3617  ­ = ¡p ->­;‡p;‡p÷p-> Ãxt ){ 3618 ifÐ ­ -> ty³ != REDUCE ) ; 3619 ½ = ­ -> x .rp; 3620 ifÐ ½ == rbe¡ ) ; 3621 n = 1; 3622  ­2 = ­ -> Ãxt ;‡p2;‡p2=ap2->next){ 3623 ifÐ ­2 -> ty³ != REDUCE ) ; 3624 ½2 = ­2 -> x . ½ ; 3625 ifÐ ½2 == rbe¡ ) ; 3626 ifÐ ½2 == ½ ) n ++; 3628 ifÐ n > nbe¡ ){ 3629 nbe¡ = n ; 3630 rbe¡ = ½ ; 3636 ifÐ nbe¡ <2 ) ; 3640  ­ = ¡p ->­;‡p;‡p÷p-> Ãxt ){ 3641 ifÐ ­ -> ty³ == REDUCE &&‡p-> x . ½ == rbe¡ ) ; 3643 `as£¹ Ð ­ ); 3644 ­ -> ¥ = `SymbÞ_Ãw ("{default}"); 3645  ­ ÷p-> Ãxt ;‡p;‡p=ap->next){ 3646 ifÐ ­ -> ty³ == REDUCE &&‡p-> x . ½ == rbe¡ )‡p->ty³ = NOT_USED ; 3648 ¡p -> ­ = `AùiÚ_sÜt (stp->ap); 3650 } } 3657  gglob®_size = 0; 3660  $S‘Size ( n ) 3661  n ; 3663 glob®_size = n +1; 3664 } } 3667 * $S‘New (){ 3668 * s ; 3669  i ; 3670 s = (*) `m®loc Ð glob®_size ); 3671 ifÐ s ==0 ){ 3672  `memÜy_”rÜ (); 3673 `memÜy_”rÜ (); 3675  i =0; i< glob®_size ; i++è s [i] = 0; 3676  s ; 3677 } } 3680  $S‘F»e ( s ) 3681 * s ; 3683 `ä“ ( s ); 3684 } } 3688  $S‘Add ( s , e ) 3689 * s ; 3690  e ; 3692  rv ; 3693 rv = s [ e ]; 3694 s [ e ] = 1; 3695  ! rv ; 3696 } } 3699  $S‘UniÚ ( s1 , s2 ) 3700 * s1 ; 3701 * s2 ; 3703  i , ´og»ss ; 3704 ´og»ss = 0; 3705  i =0; i< glob®_size ; i++){ 3706 ifÐ s2 [ i ]==0 ) ; 3707 ifÐ s1 [ i ]==0 ){ 3708 ´og»ss = 1; 3709 s1 [ i ] = 1; 3712  ´og»ss ; 3713 } } 3727 PRIVATE  $¡rhash ( x ) 3728 * x ; 3730  h = 0; 3731  * x è h = h*13 + *(x++); 3732  h ; 3733 } } 3739 * $SŒ§ã ( y ) 3740 * y ; 3742 * z ; 3744 z = `SŒ§ã_fšd ( y ); 3745 ifÐ z ==0 && (z= `m®loc Ð `¡¾’ ( y )+1 ))!=0 ){ 3746 `¡rýy ( z , y ); 3747 `SŒ§ã_š£¹ ( z ); 3749 `MemÜyCheck ( z ); 3750  z ; 3751 } } 3756  ss_x1 { 3757  msize ; 3760  mcouÁ ; 3761  s_x1node * mtbl ; 3762  s_x1node ** mht ; 3768  ss_x1node { 3769 * md©a ; 3770  s_x1node * mÃxt ; 3771  s_x1node ** mäom ; 3772 } tx1node ; 3775  s_x1 * gx1a ; 3778  $SŒ§ã_š™ (){ 3779 ifÐ x1a ) ; 3780 x1a = ( s_x1 *) `m®loc ( (s_x1) ); 3781 ifÐ x1a ){ 3782 x1a -> size = 1024; 3783 x1a -> couÁ = 0; 3784 x1a -> tbl = ( x1node *) `m®loc ( 3785 (( x1node ) + (x1node*))*1024 ); 3786 ifÐ x1a -> tbl ==0 ){ 3787 `ä“ ( x1a ); 3788 x1a = 0; 3790  i ; 3791 x1a -> ht = ( x1node **)&(x1a-> tbl [1024]); 3792  i =0; i<1024; i++è x1a -> ht [i] = 0; 3795 } } 3798  $SŒ§ã_š£¹ ( d©a ) 3799 * d©a ; 3801 x1node * Å ; 3802  h ; 3803  ph ; 3805 ifÐ x1a ==0 )  0; 3806 ph = `¡rhash ( d©a ); 3807 h = ph & ( x1a -> size -1); 3808 Å = x1a -> ht [ h ]; 3809  Å ){ 3810 ifÐ `¡rcmp ( Å -> d©a ,data)==0 ){ 3815 Å =‚p-> Ãxt ; 3817 ifÐ x1a -> couÁ >=x1a-> size ){ 3819  i , size ; 3820  s_x1 ¬¿y ; 3821 ¬¿y . size = sizð x1a ->size*2; 3822 ¬¿y . couÁ = x1a ->count; 3823 ¬¿y . tbl = ( x1node *) `m®loc ( 3824 (( x1node è+ (x1node*))* size ); 3825 ifÐ ¬¿y . tbl ==0 )  0; 3826 ¬¿y . ht = ( x1node **)&×¼ay. tbl [ size ]); 3827  i =0; i< size ; i++è ¬¿y . ht [i] = 0; 3828  i =0; i< x1a -> couÁ ; i++){ 3829 x1node * ÞdÅ , * ÃwÅ ; 3830 ÞdÅ = &( x1a -> tbl [ i ]); 3831 h = `¡rhash ( ÞdÅ -> d©a è& ( size -1); 3832 ÃwÅ = &( ¬¿y . tbl [ i ]); 3833 ifÐ ¬¿y . ht [ h ] )‡¼ay.ht[h]-> äom = &( ÃwÅ -> Ãxt ); 3834 ÃwÅ -> Ãxt = ¬¿y . ht [ h ]; 3835 ÃwÅ -> d©a = ÞdÅ ->data; 3836 ÃwÅ -> äom = &( ¬¿y . ht [ h ]); 3837 ¬¿y . ht [ h ] = ÃwÅ ; 3839 `ä“ ( x1a -> tbl ); 3840 * x1a = ¬¿y ; 3843 h = ph & ( x1a -> size -1); 3844 Å = &( x1a -> tbl [x1a-> couÁ ++]); 3845 Å -> d©a = data; 3846 ifÐ x1a -> ht [ h ] ) x1a->ht[h]-> äom = &( Å -> Ãxt ); 3847 Å -> Ãxt = x1a -> ht [ h ]; 3848 x1a -> ht [ h ] = Å ; 3849 Å -> äom = &( x1a -> ht [ h ]); 3851 } } 3855 * $SŒ§ã_fšd ( key ) 3856 * key ; 3858  h ; 3859 x1node * Å ; 3861 ifÐ x1a ==0 )  0; 3862 h = `¡rhash ( key è& ( x1a -> size -1); 3863 Å = x1a -> ht [ h ]; 3864  Å ){ 3865 ifÐ `¡rcmp ( Å -> d©a , key )==0 ) ; 3866 Å =‚p-> Ãxt ; 3868  Å ?‚p-> d©a : 0; 3869 } } 3874  symbÞ * $SymbÞ_Ãw ( x ) 3875 * x ; 3877  symbÞ * ¥ ; 3879 ¥ = `SymbÞ_fšd ( x ); 3880 ifÐ ¥ ==0 ){ 3881 ¥ = ( symbÞ *) `m®loc ( (symbol) ); 3882 `MemÜyCheck ( ¥ ); 3883 ¥ -> Çme = `SŒ§ã ( x ); 3884 ¥ -> ty³ = `isuµ” (* x è? TERMINAL : NONTERMINAL ; 3885 ¥ -> ruË = 0; 3886 ¥ -> çÎback = 0; 3887 ¥ -> ´ec = -1; 3888 ¥ -> assoc = UNK ; 3889 ¥ -> fœ¡£t = 0; 3890 ¥ -> Ïmbda = Bo_FALSE ; 3891 ¥ -> de¡ruùÜ = 0; 3892 ¥ -> d©©y³ = 0; 3893 `SymbÞ_š£¹ ( ¥ ,¥-> Çme ); 3895  ¥ ; 3896 } } 3908  $SymbÞcmµ ( symbÞ ** a , symbÞ ** b ){ 3909  i1 = (** a ). šdex + 10000000*((**a). Çme [0]>'Z'); 3910  i2 = (** b ). šdex + 10000000*((**b). Çme [0]>'Z'); 3911  i1 - i2 ; 3912 } } 3917  ss_x2 { 3918  msize ; 3921  mcouÁ ; 3922  s_x2node * mtbl ; 3923  s_x2node ** mht ; 3929  ss_x2node { 3930  symbÞ * md©a ; 3931 * mkey ; 3932  s_x2node * mÃxt ; 3933  s_x2node ** mäom ; 3934 } tx2node ; 3937  s_x2 * gx2a ; 3940  $SymbÞ_š™ (){ 3941 ifÐ x2a ) ; 3942 x2a = ( s_x2 *) `m®loc ( (s_x2) ); 3943 ifÐ x2a ){ 3944 x2a -> size = 128; 3945 x2a -> couÁ = 0; 3946 x2a -> tbl = ( x2node *) `m®loc ( 3947 (( x2node ) + (x2node*))*128 ); 3948 ifÐ x2a -> tbl ==0 ){ 3949 `ä“ ( x2a ); 3950 x2a = 0; 3952  i ; 3953 x2a -> ht = ( x2node **)&(x2a-> tbl [128]); 3954  i =0; i<128; i++è x2a -> ht [i] = 0; 3957 } } 3960  $SymbÞ_š£¹ ( d©a , key ) 3961  symbÞ * d©a ; 3962 * key ; 3964 x2node * Å ; 3965  h ; 3966  ph ; 3968 ifÐ x2a ==0 )  0; 3969 ph = `¡rhash ( key ); 3970 h = ph & ( x2a -> size -1); 3971 Å = x2a -> ht [ h ]; 3972  Å ){ 3973 ifÐ `¡rcmp ( Å -> key ,key)==0 ){ 3978 Å =‚p-> Ãxt ; 3980 ifÐ x2a -> couÁ >=x2a-> size ){ 3982  i , size ; 3983  s_x2 ¬¿y ; 3984 ¬¿y . size = sizð x2a ->size*2; 3985 ¬¿y . couÁ = x2a ->count; 3986 ¬¿y . tbl = ( x2node *) `m®loc ( 3987 (( x2node è+ (x2node*))* size ); 3988 ifÐ ¬¿y . tbl ==0 )  0; 3989 ¬¿y . ht = ( x2node **)&×¼ay. tbl [ size ]); 3990  i =0; i< size ; i++è ¬¿y . ht [i] = 0; 3991  i =0; i< x2a -> couÁ ; i++){ 3992 x2node * ÞdÅ , * ÃwÅ ; 3993 ÞdÅ = &( x2a -> tbl [ i ]); 3994 h = `¡rhash ( ÞdÅ -> key è& ( size -1); 3995 ÃwÅ = &( ¬¿y . tbl [ i ]); 3996 ifÐ ¬¿y . ht [ h ] )‡¼ay.ht[h]-> äom = &( ÃwÅ -> Ãxt ); 3997 ÃwÅ -> Ãxt = ¬¿y . ht [ h ]; 3998 ÃwÅ -> key = ÞdÅ ->key; 3999 ÃwÅ -> d©a = ÞdÅ ->data; 4000 ÃwÅ -> äom = &( ¬¿y . ht [ h ]); 4001 ¬¿y . ht [ h ] = ÃwÅ ; 4003 `ä“ ( x2a -> tbl ); 4004 * x2a = ¬¿y ; 4007 h = ph & ( x2a -> size -1); 4008 Å = &( x2a -> tbl [x2a-> couÁ ++]); 4009 Å -> key = key; 4010 Å -> d©a = data; 4011 ifÐ x2a -> ht [ h ] ) x2a->ht[h]-> äom = &( Å -> Ãxt ); 4012 Å -> Ãxt = x2a -> ht [ h ]; 4013 x2a -> ht [ h ] = Å ; 4014 Å -> äom = &( x2a -> ht [ h ]); 4016 } } 4020  symbÞ * $SymbÞ_fšd ( key ) 4021 * key ; 4023  h ; 4024 x2node * Å ; 4026 ifÐ x2a ==0 )  0; 4027 h = `¡rhash ( key è& ( x2a -> size -1); 4028 Å = x2a -> ht [ h ]; 4029  Å ){ 4030 ifÐ `¡rcmp ( Å -> key ,key)==0 ) ; 4031 Å =‚p-> Ãxt ; 4033  Å ?‚p-> d©a : 0; 4034 } } 4037  symbÞ * $SymbÞ_Nth ( n ) 4038  n ; 4040  symbÞ * d©a ; 4041 ifÐ x2a && n >0 &&‚<=x2a-> couÁ ){ 4042 d©a = x2a -> tbl [ n -1].data; 4044 d©a = 0; 4046  d©a ; 4047 } } 4050  $SymbÞ_couÁ () 4052  x2a ? x2a-> couÁ : 0; 4053 } } 4058  symbÞ ** $SymbÞ_¬¿yof () 4060  symbÞ ** ¬¿y ; 4061  i , size ; 4062 ifÐ x2a ==0 )  0; 4063 size = x2a -> couÁ ; 4064 ¬¿y = ( symbÞ **) `m®loc Ð(symbÞ *)* size ); 4065 ifÐ ¬¿y ){ 4066  i =0; i< size ; i++è ¬¿y [i] = x2a -> tbl [i]. d©a ; 4068  ¬¿y ; 4069 } } 4072  $CÚfigcmp ( a , b ) 4073  cÚfig * a ; 4074  cÚfig * b ; 4076  x ; 4077 x = a -> ½ -> šdex - b ->rp->index; 4078 ifÐ x ==0 ) x = a -> dÙ - b ->dot; 4079  x ; 4080 } } 4083 PRIVATE  $¡©ecmp ( a , b ) 4084  cÚfig * a ; 4085  cÚfig * b ; 4087  rc ; 4088  rc =0;„c==0 && a && b ;‡÷-> bp , b=b->bp){ 4089 rc = a -> ½ -> šdex - b ->rp->index; 4090 ifÐ rc ==0 )„øð a -> dÙ - b ->dot; 4092 ifÐ rc ==0 ){ 4093 ifÐ a ) rc = 1; 4094 ifÐ b ) rc = -1; 4096  rc ; 4097 } } 4100 PRIVATE  $¡©ehash ( a ) 4101  cÚfig * a ; 4103  h =0; 4104  a ){ 4105 h = h*571 + a -> ½ -> šdex *37 +‡-> dÙ ; 4106 a =‡-> bp ; 4108  h ; 4109 } } 4112  ¡©e * $S‹_Ãw () 4114  ¡©e * Ãw ; 4115 Ãw = ( ¡©e *) `m®loc ( (state) ); 4116 `MemÜyCheck ( Ãw ); 4117  Ãw ; 4118 } } 4123  ss_x3 { 4124  msize ; 4127  mcouÁ ; 4128  s_x3node * mtbl ; 4129  s_x3node ** mht ; 4135  ss_x3node { 4136  ¡©e * md©a ; 4137  cÚfig * mkey ; 4138  s_x3node * mÃxt ; 4139  s_x3node ** mäom ; 4140 } tx3node ; 4143  s_x3 * gx3a ; 4146  $S‹_š™ (){ 4147 ifÐ x3a ) ; 4148 x3a = ( s_x3 *) `m®loc ( (s_x3) ); 4149 ifÐ x3a ){ 4150 x3a -> size = 128; 4151 x3a -> couÁ = 0; 4152 x3a -> tbl = ( x3node *) `m®loc ( 4153 (( x3node ) + (x3node*))*128 ); 4154 ifÐ x3a -> tbl ==0 ){ 4155 `ä“ ( x3a ); 4156 x3a = 0; 4158  i ; 4159 x3a -> ht = ( x3node **)&(x3a-> tbl [128]); 4160  i =0; i<128; i++è x3a -> ht [i] = 0; 4163 } } 4166  $S‹_š£¹ ( d©a , key ) 4167  ¡©e * d©a ; 4168  cÚfig * key ; 4170 x3node * Å ; 4171  h ; 4172  ph ; 4174 ifÐ x3a ==0 )  0; 4175 ph = `¡©ehash ( key ); 4176 h = ph & ( x3a -> size -1); 4177 Å = x3a -> ht [ h ]; 4178  Å ){ 4179 ifÐ `¡©ecmp ( Å -> key ,key)==0 ){ 4184 Å =‚p-> Ãxt ; 4186 ifÐ x3a -> couÁ >=x3a-> size ){ 4188  i , size ; 4189  s_x3 ¬¿y ; 4190 ¬¿y . size = sizð x3a ->size*2; 4191 ¬¿y . couÁ = x3a ->count; 4192 ¬¿y . tbl = ( x3node *) `m®loc ( 4193 (( x3node è+ (x3node*))* size ); 4194 ifÐ ¬¿y . tbl ==0 )  0; 4195 ¬¿y . ht = ( x3node **)&×¼ay. tbl [ size ]); 4196  i =0; i< size ; i++è ¬¿y . ht [i] = 0; 4197  i =0; i< x3a -> couÁ ; i++){ 4198 x3node * ÞdÅ , * ÃwÅ ; 4199 ÞdÅ = &( x3a -> tbl [ i ]); 4200 h = `¡©ehash ( ÞdÅ -> key è& ( size -1); 4201 ÃwÅ = &( ¬¿y . tbl [ i ]); 4202 ifÐ ¬¿y . ht [ h ] )‡¼ay.ht[h]-> äom = &( ÃwÅ -> Ãxt ); 4203 ÃwÅ -> Ãxt = ¬¿y . ht [ h ]; 4204 ÃwÅ -> key = ÞdÅ ->key; 4205 ÃwÅ -> d©a = ÞdÅ ->data; 4206 ÃwÅ -> äom = &( ¬¿y . ht [ h ]); 4207 ¬¿y . ht [ h ] = ÃwÅ ; 4209 `ä“ ( x3a -> tbl ); 4210 * x3a = ¬¿y ; 4213 h = ph & ( x3a -> size -1); 4214 Å = &( x3a -> tbl [x3a-> couÁ ++]); 4215 Å -> key = key; 4216 Å -> d©a = data; 4217 ifÐ x3a -> ht [ h ] ) x3a->ht[h]-> äom = &( Å -> Ãxt ); 4218 Å -> Ãxt = x3a -> ht [ h ]; 4219 x3a -> ht [ h ] = Å ; 4220 Å -> äom = &( x3a -> ht [ h ]); 4222 } } 4226  ¡©e * $S‹_fšd ( key ) 4227  cÚfig * key ; 4229  h ; 4230 x3node * Å ; 4232 ifÐ x3a ==0 )  0; 4233 h = `¡©ehash ( key è& ( x3a -> size -1); 4234 Å = x3a -> ht [ h ]; 4235  Å ){ 4236 ifÐ `¡©ecmp ( Å -> key ,key)==0 ) ; 4237 Å =‚p-> Ãxt ; 4239  Å ?‚p-> d©a : 0; 4240 } } 4245  ¡©e ** $S‹_¬¿yof () 4247  ¡©e ** ¬¿y ; 4248  i , size ; 4249 ifÐ x3a ==0 )  0; 4250 size = x3a -> couÁ ; 4251 ¬¿y = ( ¡©e **) `m®loc Ð(¡©*)* size ); 4252 ifÐ ¬¿y ){ 4253  i =0; i< size ; i++è ¬¿y [i] = x3a -> tbl [i]. d©a ; 4255  ¬¿y ; 4256 } } 4259 PRIVATE  $cÚfighash ( a ) 4260  cÚfig * a ; 4262  h =0; 4263 h = h*571 + a -> ½ -> šdex *37 +‡-> dÙ ; 4264  h ; 4265 } } 4270  ss_x4 { 4271  msize ; 4274  mcouÁ ; 4275  s_x4node * mtbl ; 4276  s_x4node ** mht ; 4282  ss_x4node { 4283  cÚfig * md©a ; 4284  s_x4node * mÃxt ; 4285  s_x4node ** mäom ; 4286 } tx4node ; 4289  s_x4 * gx4a ; 4292  $CÚfigbË_š™ (){ 4293 ifÐ x4a ) ; 4294 x4a = ( s_x4 *) `m®loc ( (s_x4) ); 4295 ifÐ x4a ){ 4296 x4a -> size = 64; 4297 x4a -> couÁ = 0; 4298 x4a -> tbl = ( x4node *) `m®loc ( 4299 (( x4node ) + (x4node*))*64 ); 4300 ifÐ x4a -> tbl ==0 ){ 4301 `ä“ ( x4a ); 4302 x4a = 0; 4304  i ; 4305 x4a -> ht = ( x4node **)&(x4a-> tbl [64]); 4306  i =0; i<64; i++è x4a -> ht [i] = 0; 4309 } } 4312  $CÚfigbË_š£¹ ( d©a ) 4313  cÚfig * d©a ; 4315 x4node * Å ; 4316  h ; 4317  ph ; 4319 ifÐ x4a ==0 )  0; 4320 ph = `cÚfighash ( d©a ); 4321 h = ph & ( x4a -> size -1); 4322 Å = x4a -> ht [ h ]; 4323  Å ){ 4324 ifÐ `CÚfigcmp ( Å -> d©a ,data)==0 ){ 4329 Å =‚p-> Ãxt ; 4331 ifÐ x4a -> couÁ >=x4a-> size ){ 4333  i , size ; 4334  s_x4 ¬¿y ; 4335 ¬¿y . size = sizð x4a ->size*2; 4336 ¬¿y . couÁ = x4a ->count; 4337 ¬¿y . tbl = ( x4node *) `m®loc ( 4338 (( x4node è+ (x4node*))* size ); 4339 ifÐ ¬¿y . tbl ==0 )  0; 4340 ¬¿y . ht = ( x4node **)&×¼ay. tbl [ size ]); 4341  i =0; i< size ; i++è ¬¿y . ht [i] = 0; 4342  i =0; i< x4a -> couÁ ; i++){ 4343 x4node * ÞdÅ , * ÃwÅ ; 4344 ÞdÅ = &( x4a -> tbl [ i ]); 4345 h = `cÚfighash ( ÞdÅ -> d©a è& ( size -1); 4346 ÃwÅ = &( ¬¿y . tbl [ i ]); 4347 ifÐ ¬¿y . ht [ h ] )‡¼ay.ht[h]-> äom = &( ÃwÅ -> Ãxt ); 4348 ÃwÅ -> Ãxt = ¬¿y . ht [ h ]; 4349 ÃwÅ -> d©a = ÞdÅ ->data; 4350 ÃwÅ -> äom = &( ¬¿y . ht [ h ]); 4351 ¬¿y . ht [ h ] = ÃwÅ ; 4353 `ä“ ( x4a -> tbl ); 4354 * x4a = ¬¿y ; 4357 h = ph & ( x4a -> size -1); 4358 Å = &( x4a -> tbl [x4a-> couÁ ++]); 4359 Å -> d©a = data; 4360 ifÐ x4a -> ht [ h ] ) x4a->ht[h]-> äom = &( Å -> Ãxt ); 4361 Å -> Ãxt = x4a -> ht [ h ]; 4362 x4a -> ht [ h ] = Å ; 4363 Å -> äom = &( x4a -> ht [ h ]); 4365 } } 4369  cÚfig * $CÚfigbË_fšd ( key ) 4370  cÚfig * key ; 4372  h ; 4373 x4node * Å ; 4375 ifÐ x4a ==0 )  0; 4376 h = `cÚfighash ( key è& ( x4a -> size -1); 4377 Å = x4a -> ht [ h ]; 4378  Å ){ 4379 ifÐ `CÚfigcmp ( Å -> d©a , key )==0 ) ; 4380 Å =‚p-> Ãxt ; 4382  Å ?‚p-> d©a : 0; 4383 } } 4387  $CÚfigbË_þ—r ( f ) 4388 (* f )( ); 4390  i ; 4391 ifÐ x4a ==0 || x4a-> couÁ ==0 ) ; 4392 ifÐ f )  i =0; i< x4a -> couÁ ; i++è(*f)(x4a-> tbl [i]. d©a ); 4393  i =0; i< x4a -> size ; i++èx4a-> ht [i] = 0; 4394 x4a -> couÁ = 0; 4396 } } @src/lempar.c 6  ~<¡dio.h > 7 %% /* $yy·r£ */ `yyËx () 18 } %% 21 #iâdeà INTERFACE 22  #INTERFACE 1 ) 57 %% /* $yy·r£ */ `yyËx () 58 # defše `YY_NO_ACTION ( YYNSTATE + YYNRULE +2) 59 # defše `YY_ACCEPT_ACTION ( YYNSTATE + YYNRULE +1) 60 # defše `YY_ERROR_ACTION ( YYNSTATE + YYNRULE ) 109 } %% 110  #YY_SZ_ACTTAB (( yy_aùiÚ )/(yy_aùiÚ[0])) ) 122 #ifdeà YYFALLBACK 123 cÚ¡ YYCODETYPE gyyF®lback [] = { 124 %% /* $yy·r£ */ `yyËx () 126 # ’dif 140  syySckEÁry { 141  m¡©’o ; 142  mmajÜ ; 144 YYMINORTYPE mmšÜ ; 147  yySckEÁry tyySckEÁry ; 151  syyP¬£r { 152  myyidx ; 153  myy”rút ; 154 P¬£ARG_SDECL 155 yySckEÁry myy¡ack [ YYSTACKDEPTH ]; 157  yyP¬£r tyyP¬£r ; 159 # iâdef NDEBUG 160 # šþude < ¡dio . h > 161  FILE * gyyT¿ûFILE = 0; 162 * gyyT¿ûProm± = 0; 163 # ’dif 165 # iâdef NDEBUG 183  `P¬£T¿û ( FILE * gT¿ûFILE , * gzT¿ûProm± ){ 184 gyyT¿ûFILE = T¿ûFILE ; 185 gyyT¿ûProm± = zT¿ûProm± ; 186 ifÐ gyyT¿ûFILE ==0 ) yyT¿ûProm± = 0; 187 ifÐ gyyT¿ûProm± ==0 ) yyT¿ûFILE = 0; 189 # ’dif 191 # iâdef NDEBUG 194 cÚ¡ * gyyTok’Name [] = { 195 } %% 199 #iâdeà NDEBUG 202 cÚ¡ * gyyRuËName [] = { 203 %% /* $yy·r£ */ `yyËx () 205 # ’dif 211 cÚ¡ * `P¬£Tok’Name ( gtok’Ty³ ){ 212 # iâdef NDEBUG 213 ifÐ gtok’Ty³ >0 &&ok’Ty³<(( gyyTok’Name )/(yyTokenName[0])) ){ 214  gyyTok’Name [ tok’Ty³ ]; 220 # ’dif 235 * `P¬£AÎoc (*(* gm®locProc )( gsize_t )){ 236 yyP¬£r * gpP¬£r ; 237 gpP¬£r = ( yyP¬£r *)(* m®locProc )Ð( size_t )(yyParser) ); 238 ifÐ gpP¬£r ){ 239 gpP¬£r -> gyyidx = -1; 241  gpP¬£r ; 249  `yy_de¡ruùÜ ( YYCODETYPE gyymajÜ , YYMINORTYPE * gyypmšÜ ){ 250  gyymajÜ ){ 261 } %% 274  $yy_pÝ_·r£r_¡ack ( yyP¬£r * pP¬£r ){ 275 YYCODETYPE yymajÜ ; 276 yySckEÁry * yytos = & pP¬£r -> yy¡ack [pP¬£r-> yyidx ]; 278 ifÐ pP¬£r -> yyidx <0 )  0; 279 #iâdeà NDEBUG 280 ifÐ yyT¿ûFILE && pP¬£r -> yyidx >=0 ){ 281 `årštf ( yyT¿ûFILE ,"%sPopping %s\n", 282 yyT¿ûProm± , 283 yyTok’Name [ yytos -> majÜ ]); 286 yymajÜ = yytos -> majÜ ; 287 `yy_de¡ruùÜ Ð yymajÜ , & yytos -> mšÜ ); 288 pP¬£r -> yyidx --; 289  yymajÜ ; 290 } } 304  P¬£F»e ( 305 * p , 306 (* ä“Proc )(*) 308 yyP¬£r * pP¬£r = (yyP¬£r*) p ; 309 ifÐ pP¬£r ==0 ) ; 310  pP¬£r -> yyidx >=0 ) `yy_pÝ_·r£r_¡ack (pParser); 311 (* ä“Proc )((*) pP¬£r ); 312 } } 322  $yy_fšd_shiá_aùiÚ ( 323 yyP¬£r * pP¬£r , 324  iLookAh—d 326  i ; 327  ¡©’o = pP¬£r -> yy¡ack [pP¬£r-> yyidx ].stateno; 330 i = yy_shiá_of¡ [ ¡©’o ]; 331 ifÐ i == YY_SHIFT_USE_DFLT ){ 332  yy_deçuÉ [ ¡©’o ]; 334 ifÐ iLookAh—d == YYNOCODE ){ 335  YY_NO_ACTION ; 337 i +ð iLookAh—d ; 338 ifÐ i <0 || i>= YY_SZ_ACTTAB || yy_lookah—d [i]!= iLookAh—d ){ 339 #ifdeà YYFALLBACK 340  iF®lback ; 341 ifÐ iLookAh—d <( yyF®lback )/(yyFallback[0]) 342 && ( iF®lback = yyF®lback [ iLookAh—d ])!=0 ){ 343 #iâdeà NDEBUG 344 ifÐ yyT¿ûFILE ){ 345 `årštf ( yyT¿ûFILE , "%sFALLBACK %s => %s\n", 346 yyT¿ûProm± , yyTok’Name [ iLookAh—d ], yyTok’Name[ iF®lback ]); 349  `yy_fšd_shiá_aùiÚ ( pP¬£r , iF®lback ); 352  yy_deçuÉ [ ¡©’o ]; 354  yy_aùiÚ [ i ]; 356 } } 366  $yy_fšd_»duû_aùiÚ ( 367 yyP¬£r * pP¬£r , 368  iLookAh—d 370  i ; 371  ¡©’o = pP¬£r -> yy¡ack [pP¬£r-> yyidx ].stateno; 373 i = yy_»duû_of¡ [ ¡©’o ]; 374 ifÐ i == YY_REDUCE_USE_DFLT ){ 375  yy_deçuÉ [ ¡©’o ]; 377 ifÐ iLookAh—d == YYNOCODE ){ 378  YY_NO_ACTION ; 380 i +ð iLookAh—d ; 381 ifÐ i <0 || i>= YY_SZ_ACTTAB || yy_lookah—d [i]!= iLookAh—d ){ 382  yy_deçuÉ [ ¡©’o ]; 384  yy_aùiÚ [ i ]; 386 } } 391  $yy_shiá ( 392 yyP¬£r * yypP¬£r , 393  yyNewS‹ , 394  yyMajÜ , 395 YYMINORTYPE * yypMšÜ 397 yySckEÁry * yytos ; 398 yypP¬£r -> yyidx ++; 399 ifÐ yypP¬£r -> yyidx >= YYSTACKDEPTH ){ 400 P¬£ARG_FETCH ; 401 yypP¬£r -> yyidx --; 402 #iâdeà NDEBUG 403 ifÐ yyT¿ûFILE ){ 404 `årštf ( yyT¿ûFILE ,"%sSck Ov”æow!\n", yyT¿ûProm± ); 407  yypP¬£r -> yyidx >=0 ) `yy_pÝ_·r£r_¡ack (yypParser); 410 %% /* $yy·r£ */ `yyËx () 411 P¬£ARG_STORE ; 413 } } 414 gyytos = & yypP¬£r -> yy¡ack [yypP¬£r-> yyidx ]; 415 gyytos -> g¡©’o = yyNewS‹ ; 416 gyytos -> gmajÜ = yyMajÜ ; 417 gyytos -> gmšÜ = * yypMšÜ ; 418 # iâdef NDEBUG 419 ifÐ gyyT¿ûFILE && gyypP¬£r -> gyyidx >0 ){ 420  gi ; 421 `årštf ( gyyT¿ûFILE ,"%sShiá %d\n", gyyT¿ûProm± , gyyNewS‹ ); 422 `årštf ( gyyT¿ûFILE ,"%sSck:", gyyT¿ûProm± ); 423  gi =1; i<= yypP¬£r -> yyidx ; i++) 424 `årštf ( gyyT¿ûFILE ," %s", gyyTok’Name [ yypP¬£r -> yy¡ack [ i ]. gmajÜ ]); 425 `årštf ( gyyT¿ûFILE ,"\n"); 427 # ’dif 434 YYCODETYPE mlhs ; 435  mÄhs ; 436 } gyyRuËInfo [] = { 437 } %% 440  yy_acû± ( yyP¬£r *); 446  $yy_»duû ( 447 yyP¬£r * yypP¬£r , 448  yyruËno 450  yygÙo ; 451  yyaù ; 452 YYMINORTYPE yygÙomšÜ ; 453 yySckEÁry * yym¥ ; 454  yysize ; 455 P¬£ARG_FETCH ; 456 yym¥ = & yypP¬£r -> yy¡ack [yypP¬£r-> yyidx ]; 457 #iâdeà NDEBUG 458 ifÐ yyT¿ûFILE && yyruËno >=0 459 && yyruËno <( yyRuËName )/(yyRuleName[0]) ){ 460 `årštf ( yyT¿ûFILE , "%sReduû [%s].\n", yyT¿ûProm± , 461 yyRuËName [ yyruËno ]); 465  yyruËno ){ 474 %% /* $yy·r£ */ `yyËx () 475 } }; 476 gyygÙo = yyRuËInfo [ yyruËno ]. lhs ; 477 gyysize = yyRuËInfo [ yyruËno ]. Ähs ; 478 gyypP¬£r -> gyyidx -ð yysize ; 479 gyyaù = `yy_fšd_»duû_aùiÚ ( yypP¬£r , gyygÙo ); 480 ifÐ gyyaù < gYYNSTATE ){ 481 `yy_shiá ( gyypP¬£r , gyyaù , gyygÙo ,& gyygÙomšÜ ); 482 } ifÐ gyyaù =ð YYNSTATE + YYNRULE + 1 ){ 483 `yy_acû± ( yypP¬£r ); 490  `yy_·r£_çžed ( 491 yyP¬£r * gyypP¬£r 493 gP¬£ARG_FETCH ; 494 # iâdef NDEBUG 495 ifÐ gyyT¿ûFILE ){ 496 `årštf ( gyyT¿ûFILE ,"%sFaž!\n", gyyT¿ûProm± ); 498 # ’dif 499  gyypP¬£r -> gyyidx >=0 ) `yy_pÝ_·r£r_¡ack ( yypP¬£r ); 502 } %% 503 gP¬£ARG_STORE ; 509  $yy_syÁax_”rÜ ( 510 yyP¬£r * yypP¬£r , 511  yymajÜ , 512 YYMINORTYPE yymšÜ 514 P¬£ARG_FETCH ; 515  #TOKEN ( yymšÜ . yy0 ) ) 516 %% /* $yy·r£ */ `yyËx () 517 P¬£ARG_STORE ; 518 } } 523  `yy_acû± ( 524 yyP¬£r * gyypP¬£r 526 gP¬£ARG_FETCH ; 527 # iâdef NDEBUG 528 ifÐ gyyT¿ûFILE ){ 529 `årštf ( gyyT¿ûFILE ,"%sAcû±!\n", gyyT¿ûProm± ); 531 # ’dif 532  gyypP¬£r -> gyyidx >=0 ) `yy_pÝ_·r£r_¡ack ( yypP¬£r ); 535 } %% 536 gP¬£ARG_STORE ; 558  $P¬£ ( 559 * yyp , 560  yymajÜ , 561 P¬£TOKENTYPE yymšÜ 562 P¬£ARG_PDECL 564 YYMINORTYPE yymšÜuniÚ ; 565  yyaù ; 566  yy’dofšput ; 567  yy”rÜh™ = 0; 568 yyP¬£r * yypP¬£r ; 571 yypP¬£r = ( yyP¬£r *) yyp ; 572 ifÐ yypP¬£r -> yyidx <0 ){ 573 ifÐ yymajÜ ==0 ) ; 574 yypP¬£r -> yyidx = 0; 575 yypP¬£r -> yy”rút = -1; 576 yypP¬£r -> yy¡ack [0]. ¡©’o = 0; 577 yypP¬£r -> yy¡ack [0]. majÜ = 0; 579 yymšÜuniÚ . yy0 = yymšÜ ; 580 yy’dofšput = ( yymajÜ ==0); 581 P¬£ARG_STORE ; 583 #iâdeà NDEBUG 584 ifÐ yyT¿ûFILE ){ 585 `årštf ( yyT¿ûFILE ,"%sIÅuˆ%s\n", yyT¿ûProm± , yyTok’Name [ yymajÜ ]); 590 yyaù = `yy_fšd_shiá_aùiÚ ( yypP¬£r , yymajÜ ); 591 ifÐ yyaù < YYNSTATE ){ 592 `yy_shiá ( yypP¬£r , yyaù , yymajÜ ,& yymšÜuniÚ ); 593 yypP¬£r -> yy”rút --; 594 ifÐ yy’dofšput && yypP¬£r -> yyidx >=0 ){ 595 yymajÜ = 0; 597 yymajÜ = YYNOCODE ; 599 } ifÐ yyaù < YYNSTATE + YYNRULE ){ 600 `yy_»duû ( yypP¬£r , yyaù - YYNSTATE ); 601 } ifÐ yyaù =ð YY_ERROR_ACTION ){ 602  yymx ; 603 #iâdeà NDEBUG 604 ifÐ yyT¿ûFILE ){ 605 `årštf ( yyT¿ûFILE ,"%sSyÁax E¼Ü!\n", yyT¿ûProm± ); 608 #ifdeà YYERRORSYMBOL 628 ifÐ yypP¬£r -> yy”rút <0 ){ 629 `yy_syÁax_”rÜ ( yypP¬£r , yymajÜ , yymšÜuniÚ ); 631 yymx = yypP¬£r -> yy¡ack [yypP¬£r-> yyidx ]. majÜ ; 632 ifÐ yymx == YYERRORSYMBOL || yy”rÜh™ ){ 633 #iâdeà NDEBUG 634 ifÐ yyT¿ûFILE ){ 635 `årštf ( yyT¿ûFILE ,"%sDiscard inputoken %s\n", 636 yyT¿ûProm± , yyTok’Name [ yymajÜ ]); 639 `yy_de¡ruùÜ ( yymajÜ ,& yymšÜuniÚ ); 640 yymajÜ = YYNOCODE ; 643 yypP¬£r -> yyidx >= 0 && 644 yymx !ð YYERRORSYMBOL && 645 ( yyaù = `yy_fšd_shiá_aùiÚ ( yypP¬£r , YYERRORSYMBOL )è>ð YYNSTATE 647 `yy_pÝ_·r£r_¡ack ( yypP¬£r ); 649 ifÐ yypP¬£r -> yyidx < 0 || yymajÜ ==0 ){ 650 `yy_de¡ruùÜ ( yymajÜ ,& yymšÜuniÚ ); 651 `yy_·r£_çžed ( yypP¬£r ); 652 yymajÜ = YYNOCODE ; 653 } ifÐ yymx != YYERRORSYMBOL ){ 654 YYMINORTYPE u2 ; 655 u2 . YYERRSYMDT = 0; 656 `yy_shiá ( yypP¬£r , yyaù , YYERRORSYMBOL ,& u2 ); 659 yypP¬£r -> yy”rút = 3; 660 yy”rÜh™ = 1; 671 ifÐ yypP¬£r -> yy”rút <=0 ){ 672 `yy_syÁax_”rÜ ( yypP¬£r , yymajÜ , yymšÜuniÚ ); 674 yypP¬£r -> yy”rút = 3; 675 `yy_de¡ruùÜ ( yymajÜ ,& yymšÜuniÚ ); 676 ifÐ yy’dofšput ){ 677 `yy_·r£_çžed ( yypP¬£r ); 679 yymajÜ = YYNOCODE ; 682 `yy_acû± ( yypP¬£r ); 683 yymajÜ = YYNOCODE ; 685 } yymajÜ != YYNOCODE && yypP¬£r -> yyidx >=0 ); 687 } } @src/lighttpd-angel.c 12  ~ 14  ~<¡dlib.h > 15  ~<¡dio.h > 16  ~<¡ršg.h > 17  ~<”ºo.h > 18  ~ 19  ~ 20  ~ 22  #BINPATH SBIN_DIR "/ligh‰pd" ) 24  sigšfo_t gÏ¡_sig‹rm_šfo ; 25  sigšfo_t gÏ¡_sighup_šfo ; 27 vÞ©ž sig_©omic_t g¡¬t_´oûss = 1; 28 vÞ©ž sig_©omic_t gg¿ûful_»¡¬t = 0; 29 vÞ©ž pid_t gpid = -1; 31  $sigaùiÚ_hªdËr ( sig , sigšfo_t * si , * cÚ‹xt ) { 32  ex™code ; 34  sig ) { 35  SIGINT : 36  SIGTERM : 37 `memýy (& Ï¡_sig‹rm_šfo , si , (*si)); 40 `kžl ( pid , sig ); 42  SIGHUP : 43 `memýy (& Ï¡_sighup_šfo , si , (*si)); 46 `kžl ( pid , SIGINT ); 48 `u¦“p (5 * 1000); 50 ¡¬t_´oûss = 1; 52  SIGCHLD : 54 `wa™ (& ex™code ); 57 } } 59  $maš ( ¬gc , ** ¬gv ) { 60  is_shutdown = 0; 61  sigaùiÚ aù ; 67 `mem£t (& aù , 0, (act)); 68 aù . §_hªdËr = SIG_IGN ; 69 `sigaùiÚ ( SIGPIPE , & aù , NULL ); 70 `sigaùiÚ ( SIGUSR1 , & aù , NULL ); 72 aù . §_sigaùiÚ = sigaùiÚ_hªdËr ; 73 `sigem±y£t (& aù . §_mask ); 74 aù . §_æags = SA_SIGINFO ; 76 `sigaùiÚ ( SIGINT , & aù , NULL ); 77 `sigaùiÚ ( SIGTERM , & aù , NULL ); 78 `sigaùiÚ ( SIGHUP , & aù , NULL ); 79 `sigaùiÚ ( SIGALRM , & aù , NULL ); 80 `sigaùiÚ ( SIGCHLD , & aù , NULL ); 87 ! is_shutdown ) { 88  ex™code = 0; 90 ià( ¡¬t_´oûss ) { 91 pid = `fÜk (); 93 ià(0 =ð pid ) { 96 ¬gv [0] = BINPATH ; 98 `execvp ( BINPATH , ¬gv ); 100 `ex™ (1); 101 } ià(-1 =ð pid ) { 108 ¡¬t_´oûss = 0; 111 ià(( pid_t )-1 =ð `wa™pid ( pid , & ex™code , 0)) { 112  ”ºo ) { 113  EINTR : 117  ECHILD : 121 ià(! ¡¬t_´oûss è is_shutdown = 1; 129 ià( `WIFEXITED ( ex™code )) { 132 is_shutdown = 1; 134 `årštf ( ¡d”r , "%s.%d: child (pid=%d)ƒxited‚ormally withƒxitcode: %d\n", 135 __FILE__ , __LINE__ , 136 pid , 137 `WEXITSTATUS ( ex™code )); 139 } ià( `WIFSIGNALED ( ex™code )) { 142 `årštf ( ¡d”r , "%s.%d: child (pid=%d)ƒxited unexpectedly with signal %d,„estarting\n", 143 __FILE__ , __LINE__ , 144 pid , 145 `WTERMSIG ( ex™code )); 147 ¡¬t_´oûss = 1; 153 } } @src/log.c 1  #_GNU_SOURCE ) 3  ~ 5  ~<”ºo.h > 6  ~ 7  ~ 8  ~ 9  ~<¡ršg.h > 10  ~<¡dlib.h > 12  ~<¡d¬g.h > 13  ~<¡dio.h > 15 #ifdeà HAVE_CONFIG_H 16  ~"cÚfig.h " 19 #ifdeà HAVE_SYSLOG_H 20  ~ 23  ~"log.h " 24  ~"¬¿y.h " 26 #ifdeà HAVE_VALGRIND_VALGRIND_H 27  ~ 30 #iâdeà O_LARGEFILE 31  #O_LARGEFILE 0 ) 46  $log_”rÜ_Ý’ ( £rv” * ¤v ) { 47  fd ; 48  þo£_¡d”r = 1; 50 #ifdeà HAVE_SYSLOG_H 52 `Ý’log ("ligh‰pd", LOG_CONS | LOG_PID , LOG_DAEMON ); 54 ¤v -> ”rÜlog_mode = ERRORLOG_STDERR ; 56 ià( ¤v -> ¤vcÚf . ”rÜlog_u£_sy¦og ) { 57 ¤v -> ”rÜlog_mode = ERRORLOG_SYSLOG ; 58 } ià(! `bufãr_is_em±y ( ¤v -> ¤vcÚf . ”rÜlog_fže )) { 59 cÚ¡ * logfže = ¤v -> ¤vcÚf . ”rÜlog_fže -> ±r ; 61 ià(-1 =ð( ¤v -> ”rÜlog_fd = `Ý’ ( logfže , O_APPEND | O_WRONLY | O_CREAT | O_LARGEFILE , 0644))) { 62 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "SSSS", 63 "Ý’šgƒ¼Ülog '", logfže , 64 "' fažed: ", `¡»¼Ü ( ”ºo )); 68 #ifdeà FD_CLOEXEC 70 `fúŽ ( ¤v -> ”rÜlog_fd , F_SETFD , FD_CLOEXEC ); 72 ¤v -> ”rÜlog_mode = ERRORLOG_FILE ; 75 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "server started"); 77 #ifdeà HAVE_VALGRIND_VALGRIND_H 79 ià( RUNNING_ON_VALGRIND è þo£_¡d”r = 0; 81 ià( ¤v -> ”rÜlog_mode =ð ERRORLOG_STDERR è þo£_¡d”r = 0; 84 ià( þo£_¡d”r && 85 -1 !ð( fd = `Ý’ ("/dev/nuÎ", O_WRONLY ))) { 86 `þo£ ( STDERR_FILENO ); 87 `dup2 ( fd , STDERR_FILENO ); 88 `þo£ ( fd ); 91 } } 101  $log_”rÜ_cyþe ( £rv” * ¤v ) { 104 ià( ¤v -> ”rÜlog_mode =ð ERRORLOG_FILE ) { 105 cÚ¡ * logfže = ¤v -> ¤vcÚf . ”rÜlog_fže -> ±r ; 108  Ãw_fd ; 110 ià(-1 =ð( Ãw_fd = `Ý’ ( logfže , O_APPEND | O_WRONLY | O_CREAT | O_LARGEFILE , 0644))) { 112 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "SSSSS", 113 "cyþšgƒ¼Ülog '", logfže , 114 "' fažed: ", `¡»¼Ü ( ”ºo ), 117 `þo£ ( ¤v -> ”rÜlog_fd ); 118 ¤v -> ”rÜlog_fd = -1; 119 #ifdeà HAVE_SYSLOG_H 120 ¤v -> ”rÜlog_mode = ERRORLOG_SYSLOG ; 124 `þo£ ( ¤v -> ”rÜlog_fd ); 125 ¤v -> ”rÜlog_fd = Ãw_fd ; 130 } } 132  $log_”rÜ_þo£ ( £rv” * ¤v ) { 133  ¤v -> ”rÜlog_mode ) { 134  ERRORLOG_FILE : 135 `þo£ ( ¤v -> ”rÜlog_fd ); 137  ERRORLOG_SYSLOG : 138 #ifdeà HAVE_SYSLOG_H 139 `þo£log (); 142  ERRORLOG_STDERR : 147 } } 149  $log_”rÜ_wr™e ( £rv” * ¤v , cÚ¡ * fž’ame ,  lše , cÚ¡ * fmt , ...) { 150 va_li¡ ­ ; 152  ¤v -> ”rÜlog_mode ) { 153  ERRORLOG_FILE : 154  ERRORLOG_STDERR : 156 ià( ¤v -> cur_ts !ð¤v-> Ï¡_g’”©ed_debug_ts ) { 157 `bufãr_´•¬e_cÝy ( ¤v -> ts_debug_¡r , 255); 158 `¡ráime ( ¤v -> ts_debug_¡r -> ±r , srv->ts_debug_¡r-> size - 1, "%Y-%m-%d %H:%M:%S", `loÿÉime (&(¤v-> cur_ts ))); 159 ¤v -> ts_debug_¡r -> u£d = `¡¾’ (¤v->ts_debug_¡r-> ±r ) + 1; 161 ¤v -> Ï¡_g’”©ed_debug_ts = srv-> cur_ts ; 164 `bufãr_cÝy_¡ršg_bufãr ( ¤v -> ”rÜlog_buf , srv-> ts_debug_¡r ); 165 `BUFFER_APPEND_STRING_CONST ( ¤v -> ”rÜlog_buf , ": ("); 167  ERRORLOG_SYSLOG : 169 `BUFFER_COPY_STRING_CONST ( ¤v -> ”rÜlog_buf , "("); 173 `bufãr_­³nd_¡ršg ( ¤v -> ”rÜlog_buf , fž’ame ); 174 `BUFFER_APPEND_STRING_CONST ( ¤v -> ”rÜlog_buf , "."); 175 `bufãr_­³nd_lÚg ( ¤v -> ”rÜlog_buf , lše ); 176 `BUFFER_APPEND_STRING_CONST ( ¤v -> ”rÜlog_buf , ") "); 179  `va_¡¬t ( ­ , fmt ); *fmt; fmt++) { 180  d ; 181 * s ; 182 bufãr * b ; 183 off_t o ; 185 * fmt ) { 187 s = `va_¬g ( ­ , *); 188 `bufãr_­³nd_¡ršg ( ¤v -> ”rÜlog_buf , s ); 189 `BUFFER_APPEND_STRING_CONST ( ¤v -> ”rÜlog_buf , " "); 192 b = `va_¬g ( ­ , bufãr *); 193 `bufãr_­³nd_¡ršg_bufãr ( ¤v -> ”rÜlog_buf , b ); 194 `BUFFER_APPEND_STRING_CONST ( ¤v -> ”rÜlog_buf , " "); 197 d = `va_¬g ( ­ , ); 198 `bufãr_­³nd_lÚg ( ¤v -> ”rÜlog_buf , d ); 199 `BUFFER_APPEND_STRING_CONST ( ¤v -> ”rÜlog_buf , " "); 202 o = `va_¬g ( ­ , off_t ); 203 `bufãr_­³nd_off_t ( ¤v -> ”rÜlog_buf , o ); 204 `BUFFER_APPEND_STRING_CONST ( ¤v -> ”rÜlog_buf , " "); 207 d = `va_¬g ( ­ , ); 208 `BUFFER_APPEND_STRING_CONST ( ¤v -> ”rÜlog_buf , "0x"); 209 `bufãr_­³nd_lÚg_hex ( ¤v -> ”rÜlog_buf , d ); 210 `BUFFER_APPEND_STRING_CONST ( ¤v -> ”rÜlog_buf , " "); 213 s = `va_¬g ( ­ , *); 214 `bufãr_­³nd_¡ršg ( ¤v -> ”rÜlog_buf , s ); 217 b = `va_¬g ( ­ , bufãr *); 218 `bufãr_­³nd_¡ršg_bufãr ( ¤v -> ”rÜlog_buf , b ); 221 d = `va_¬g ( ­ , ); 222 `bufãr_­³nd_lÚg ( ¤v -> ”rÜlog_buf , d ); 230 `bufãr_­³nd_¡ršg_Ën ( ¤v -> ”rÜlog_buf , fmt , 1); 234 `va_’d ( ­ ); 236  ¤v -> ”rÜlog_mode ) { 237  ERRORLOG_FILE : 238 `BUFFER_APPEND_STRING_CONST ( ¤v -> ”rÜlog_buf , "\n"); 239 `wr™e ( ¤v -> ”rÜlog_fd , srv-> ”rÜlog_buf -> ±r , srv->”rÜlog_buf-> u£d - 1); 241  ERRORLOG_STDERR : 242 `BUFFER_APPEND_STRING_CONST ( ¤v -> ”rÜlog_buf , "\n"); 243 `wr™e ( STDERR_FILENO , ¤v -> ”rÜlog_buf -> ±r , srv->”rÜlog_buf-> u£d - 1); 245  ERRORLOG_SYSLOG : 246 `sy¦og ( LOG_ERR , "%s", ¤v -> ”rÜlog_buf -> ±r ); 251 } } @src/log.h 1 #iâdeà _LOG_H_ 2  #_LOG_H_ ) 4  ~"£rv”.h " 6  #WP (è `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , ""); ) 8  log_”rÜ_Ý’ ( £rv” * ¤v ); 9  log_”rÜ_þo£ ( £rv” * ¤v ); 10  log_”rÜ_wr™e ( £rv” * ¤v , cÚ¡ * fž’ame ,  lše , cÚ¡ * fmt , ...); 11  log_”rÜ_cyþe ( £rv” * ¤v ); @src/md5.c 26 #ifdeà HAVE_CONFIG_H 27  ~"cÚfig.h " 30 #iâdeà USE_OPENSSL 31  ~<¡ršg.h > 33  ~"md5.h " 38  #S11 7 ) 39  #S12 12 ) 40  #S13 17 ) 41  #S14 22 ) 42  #S21 5 ) 43  #S22 9 ) 44  #S23 14 ) 45  #S24 20 ) 46  #S31 4 ) 47  #S32 11 ) 48  #S33 16 ) 49  #S34 23 ) 50  #S41 6 ) 51  #S42 10 ) 52  #S43 15 ) 53  #S44 21 ) 55  MD5T¿nsfÜm ( UINT4 [4], [64]); 56  Encode (*, UINT4 *, ); 57  Decode ( UINT4 *, *, ); 59 #ifdeà HAVE_MEMCPY 60  #MD5_memýy ( ouut , šput , Ën è `memýy ((ouut), (šput), (Ën)) ) 62  MD5_memýy ( POINTER , POINTER, ); 64 #ifdeà HAVE_MEMSET 65  #MD5_mem£t ( ouut , v®ue , Ën è `mem£t ((ouut), (v®ue), (Ën)) ) 67  MD5_mem£t ( POINTER , , ); 70  gPADDING [64] = { 78  #F ( x , y , z è(((xè& (y)è| ((~xè& (z))) ) 79  #G ( x , y , z è(((xè& (z)è| ((yè& (~z))) ) 80  #H ( x , y , z è((xè^ (yè^ (z)) ) 81  #I ( x , y , z è((yè^ ((xè| (~z))) ) 85  #ROTATE_LEFT ( x , n è(((xè<< (n)è| ((xè>> (32-Ò)))) ) 90  #FF ( a , b , c , d , x , s , ac ) { \ 91 ( a è+ð `F (( b ), ( c ), ( d )è+ ( x è+ ( UINT4 )( ac ); \ 92 ( a èð `ROTATE_LEFT (×), ( s )); \ 93 ( a è+ð( b ); \ 94 } ) 95  #GG ( a , b , c , d , x , s , ac ) { \ 96 ( a è+ð `G (( b ), ( c ), ( d )è+ ( x è+ ( UINT4 )( ac ); \ 97 ( a èð `ROTATE_LEFT (×), ( s )); \ 98 ( a è+ð( b ); \ 99 } ) 100  #HH ( a , b , c , d , x , s , ac ) { \ 101 ( a è+ð `H (( b ), ( c ), ( d )è+ ( x è+ ( UINT4 )( ac ); \ 102 ( a èð `ROTATE_LEFT (×), ( s )); \ 103 ( a è+ð( b ); \ 104 } ) 105  #II ( a , b , c , d , x , s , ac ) { \ 106 ( a è+ð `I (( b ), ( c ), ( d )è+ ( x è+ ( UINT4 )( ac ); \ 107 ( a èð `ROTATE_LEFT (×), ( s )); \ 108 ( a è+ð( b ); \ 109 } ) 113  $MD5_In™ ( cÚ‹xt ) 114 MD5_CTX * cÚ‹xt ; 116 cÚ‹xt -> couÁ [0] = context->count[1] = 0; 119 cÚ‹xt -> ¡©e [0] = 0x67452301; 120 cÚ‹xt -> ¡©e [1] = 0xefcdab89; 121 cÚ‹xt -> ¡©e [2] = 0x98badcfe; 122 cÚ‹xt -> ¡©e [3] = 0x10325476; 123 } } 129  $MD5_Upd©e ( cÚ‹xt , šput , šputL’ ) 130 MD5_CTX * cÚ‹xt ; 131 * šput ; 132  šputL’ ; 134  i , ndx , ·¹L’ ; 137 ndx = ()(( cÚ‹xt -> couÁ [0] >> 3) & 0x3F); 140 ià(( cÚ‹xt -> couÁ [0] +ð(( UINT4 ) šputL’ << 3)) 142 < (( UINT4 ) šputL’ << 3)) 143 cÚ‹xt -> couÁ [1]++; 144 cÚ‹xt -> couÁ [1] +ð(( UINT4 ) šputL’ >> 29); 146 ·¹L’ = 64 - ndx ; 150 ià( šputL’ >ð ·¹L’ ) { 151 MD5_memýy 152 (( POINTER )& cÚ‹xt -> bufãr [ ndx ], (POINTER) šput , ·¹L’ ); 153 `MD5T¿nsfÜm ( cÚ‹xt -> ¡©e , cÚ‹xt-> bufãr ); 155  i = ·¹L’ ; i + 63 < šputL’ ; i += 64) 156 `MD5T¿nsfÜm ( cÚ‹xt -> ¡©e , & šput [ i ]); 158 ndx = 0; 161 i = 0; 164 MD5_memýy 165 (( POINTER )& cÚ‹xt -> bufãr [ ndx ], (POINTER)& šput [ i ], 166 šputL’ - i ); 167 } } 172  $MD5_Fš® ( dige¡ , cÚ‹xt ) 173  dige¡ [16]; 174 MD5_CTX * cÚ‹xt ; 176  b™s [8]; 177  ndx , ·dL’ ; 180 `Encode ( b™s , cÚ‹xt -> couÁ , 8); 184 ndx = ()(( cÚ‹xt -> couÁ [0] >> 3) & 0x3f); 185 ·dL’ = ( ndx < 56) ? (56 -‚dx) : (120 -‚dx); 186 `MD5_Upd©e ( cÚ‹xt , PADDING , ·dL’ ); 189 `MD5_Upd©e ( cÚ‹xt , b™s , 8); 192 `Encode ( dige¡ , cÚ‹xt -> ¡©e , 16); 196 `MD5_mem£t (( POINTER ) cÚ‹xt , 0,  (*context)); 197 } } 201  $MD5T¿nsfÜm ( ¡©e , block ) 202 UINT4 ¡©e [4]; 203  block [64]; 205 UINT4 a = ¡©e [0], b = s‹[1], c = s‹[2], d = s‹[3], x [16]; 207 `Decode ( x , block , 64); 210 `FF ( a , b , c , d , x [ 0], S11 , 0xd76aa478); 211 `FF ( d , a , b , c , x [ 1], S12 , 0xe8c7b756); 212 `FF ( c , d , a , b , x [ 2], S13 , 0x242070db); 213 `FF ( b , c , d , a , x [ 3], S14 , 0xc1bdceee); 214 `FF ( a , b , c , d , x [ 4], S11 , 0xf57c0faf); 215 `FF ( d , a , b , c , x [ 5], S12 , 0x4787c62a); 216 `FF ( c , d , a , b , x [ 6], S13 , 0xa8304613); 217 `FF ( b , c , d , a , x [ 7], S14 , 0xfd469501); 218 `FF ( a , b , c , d , x [ 8], S11 , 0x698098d8); 219 `FF ( d , a , b , c , x [ 9], S12 , 0x8b44f7af); 220 `FF ( c , d , a , b , x [10], S13 , 0xffff5bb1); 221 `FF ( b , c , d , a , x [11], S14 , 0x895cd7be); 222 `FF ( a , b , c , d , x [12], S11 , 0x6b901122); 223 `FF ( d , a , b , c , x [13], S12 , 0xfd987193); 224 `FF ( c , d , a , b , x [14], S13 , 0xa679438e); 225 `FF ( b , c , d , a , x [15], S14 , 0x49b40821); 228 `GG ( a , b , c , d , x [ 1], S21 , 0xf61e2562); 229 `GG ( d , a , b , c , x [ 6], S22 , 0xc040b340); 230 `GG ( c , d , a , b , x [11], S23 , 0x265e5a51); 231 `GG ( b , c , d , a , x [ 0], S24 , 0xe9b6c7aa); 232 `GG ( a , b , c , d , x [ 5], S21 , 0xd62f105d); 233 `GG ( d , a , b , c , x [10], S22 , 0x2441453); 234 `GG ( c , d , a , b , x [15], S23 , 0xd8a1e681); 235 `GG ( b , c , d , a , x [ 4], S24 , 0xe7d3fbc8); 236 `GG ( a , b , c , d , x [ 9], S21 , 0x21e1cde6); 237 `GG ( d , a , b , c , x [14], S22 , 0xc33707d6); 238 `GG ( c , d , a , b , x [ 3], S23 , 0xf4d50d87); 240 `GG ( b , c , d , a , x [ 8], S24 , 0x455a14ed); 241 `GG ( a , b , c , d , x [13], S21 , 0xa9e3e905); 242 `GG ( d , a , b , c , x [ 2], S22 , 0xfcefa3f8); 243 `GG ( c , d , a , b , x [ 7], S23 , 0x676f02d9); 244 `GG ( b , c , d , a , x [12], S24 , 0x8d2a4c8a); 247 `HH ( a , b , c , d , x [ 5], S31 , 0xfffa3942); 248 `HH ( d , a , b , c , x [ 8], S32 , 0x8771f681); 249 `HH ( c , d , a , b , x [11], S33 , 0x6d9d6122); 250 `HH ( b , c , d , a , x [14], S34 , 0xfde5380c); 251 `HH ( a , b , c , d , x [ 1], S31 , 0xa4beea44); 252 `HH ( d , a , b , c , x [ 4], S32 , 0x4bdecfa9); 253 `HH ( c , d , a , b , x [ 7], S33 , 0xf6bb4b60); 254 `HH ( b , c , d , a , x [10], S34 , 0xbebfbc70); 255 `HH ( a , b , c , d , x [13], S31 , 0x289b7ec6); 256 `HH ( d , a , b , c , x [ 0], S32 , 0xeaa127fa); 257 `HH ( c , d , a , b , x [ 3], S33 , 0xd4ef3085); 258 `HH ( b , c , d , a , x [ 6], S34 , 0x4881d05); 259 `HH ( a , b , c , d , x [ 9], S31 , 0xd9d4d039); 260 `HH ( d , a , b , c , x [12], S32 , 0xe6db99e5); 261 `HH ( c , d , a , b , x [15], S33 , 0x1fa27cf8); 262 `HH ( b , c , d , a , x [ 2], S34 , 0xc4ac5665); 265 `II ( a , b , c , d , x [ 0], S41 , 0xf4292244); 266 `II ( d , a , b , c , x [ 7], S42 , 0x432aff97); 267 `II ( c , d , a , b , x [14], S43 , 0xab9423a7); 268 `II ( b , c , d , a , x [ 5], S44 , 0xfc93a039); 269 `II ( a , b , c , d , x [12], S41 , 0x655b59c3); 270 `II ( d , a , b , c , x [ 3], S42 , 0x8f0ccc92); 271 `II ( c , d , a , b , x [10], S43 , 0xffeff47d); 272 `II ( b , c , d , a , x [ 1], S44 , 0x85845dd1); 273 `II ( a , b , c , d , x [ 8], S41 , 0x6fa87e4f); 274 `II ( d , a , b , c , x [15], S42 , 0xfe2ce6e0); 275 `II ( c , d , a , b , x [ 6], S43 , 0xa3014314); 276 `II ( b , c , d , a , x [13], S44 , 0x4e0811a1); 277 `II ( a , b , c , d , x [ 4], S41 , 0xf7537e82); 278 `II ( d , a , b , c , x [11], S42 , 0xbd3af235); 279 `II ( c , d , a , b , x [ 2], S43 , 0x2ad7d2bb); 280 `II ( b , c , d , a , x [ 9], S44 , 0xeb86d391); 282 ¡©e [0] +ð a ; 283 ¡©e [1] +ð b ; 284 ¡©e [2] +ð c ; 285 ¡©e [3] +ð d ; 290 `MD5_mem£t (( POINTER ) x , 0,  (x)); 291 } } 296  $Encode ( ouut , šput , Ën ) 297 * ouut ; 298 UINT4 * šput ; 299  Ën ; 301  i , j ; 303  i = 0, j = 0; j < Ën ; i++, j += 4) { 304 ouut [ j ] = ()( šput [ i ] & 0xff); 305 ouut [ j +1] = ()(( šput [ i ] >> 8) & 0xff); 306 ouut [ j +2] = ()(( šput [ i ] >> 16) & 0xff); 307 ouut [ j +3] = ()(( šput [ i ] >> 24) & 0xff); 309 } } 314  $Decode ( ouut , šput , Ën ) 315 UINT4 * ouut ; 316 * šput ; 317  Ën ; 319  i , j ; 321  i = 0, j = 0; j < Ën ; i++, j += 4) 322 ouut [ i ] = (( UINT4 ) šput [ j ]) | (((UINT4)input[j+1]) << 8) | 323 ((( UINT4 ) šput [ j +2]) << 16) | (((UINT4)input[j+3]) << 24); 324 } } 328 #iâdeà HAVE_MEMCPY 329  $MD5_memýy ( ouut , šput , Ën ) 330 POINTER ouut ; 331 POINTER šput ; 332  Ën ; 334  i ; 336  i = 0; i < Ën ; i++) 338 ouut [ i ] = šput [i]; 339 } } 343 #iâdeà HAVE_MEMSET 344  $MD5_mem£t ( ouut , v®ue , Ën ) 345 POINTER ouut ; 346  v®ue ; 347  Ën ; 349  i ; 351  i = 0; i < Ën ; i++) 352 ((*) ouut )[ i ] = () v®ue ; 353 } } @src/md5.h 25  ~ 26 #ifdeà HAVE_STDINT_H 27  ~<¡dšt.h > 29 #ifdeà HAVE_INTTYPES_H 30  ~<š‰y³s.h > 33  #UINT4 ušt32_t ) 34  #UINT2 ušt16_t ) 35  #POINTER * ) 39 UINT4 m¡©e [4]; 40 UINT4 mcouÁ [2]; 41  mbufãr [64]; 42 } tMD5_CTX ; 44  MD5_In™ ( MD5_CTX *); 45  MD5_Upd©e ( MD5_CTX *, *, ); 46  MD5_Fš® ([16], MD5_CTX *); @src/mod_access.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 5  ~"ba£.h " 6  ~"log.h " 7  ~"bufãr.h " 9  ~"¶ugš.h " 12 ¬¿y * macûss_d’y ; 13 } t¶ugš_cÚfig ; 16 mPLUGIN_DATA ; 18 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 20 ¶ugš_cÚfig mcÚf ; 21 } t¶ugš_d©a ; 23 $INIT_FUNC ( mod_acûss_š™ ) { 24 ¶ugš_d©a * p ; 26 p = `ÿÎoc (1, (*p)); 28  p ; 29 } } 31 $FREE_FUNC ( mod_acûss_ä“ ) { 32 ¶ugš_d©a * p = p_d ; 34 `UNUSED ( ¤v ); 36 ià(! p è HANDLER_GO_ON ; 38 ià( p -> cÚfig_¡Üage ) { 39 size_t i ; 40  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 41 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 43 `¬¿y_ä“ ( s -> acûss_d’y ); 45 `ä“ ( s ); 47 `ä“ ( p -> cÚfig_¡Üage ); 50 `ä“ ( p ); 52  HANDLER_GO_ON ; 53 } } 55 $SETDEFAULTS_FUNC ( mod_acûss_£t_deçuÉs ) { 56 ¶ugš_d©a * p = p_d ; 57 size_t i = 0; 59 cÚfig_v®ues_t cv [] = { 60 { "u¾.acûss-d’y", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 61 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 64 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 66  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 67 ¶ugš_cÚfig * s ; 69 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 70 s -> acûss_d’y = `¬¿y_š™ (); 72 cv [0]. de¡š©iÚ = s -> acûss_d’y ; 74 p -> cÚfig_¡Üage [ i ] = s ; 76 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 77  HANDLER_ERROR ; 81  HANDLER_GO_ON ; 82 } } 84  #PATCH ( x ) \ 85 p -> cÚf . x = s ->x; ) 86  $mod_acûss_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 87 size_t i , j ; 88 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 90 `PATCH ( acûss_d’y ); 93  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 94 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 95 s = p -> cÚfig_¡Üage [ i ]; 98 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 101  j = 0; j < dc -> v®ue -> u£d ; j++) { 102 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 104 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("url.access-deny"))) { 105 `PATCH ( acûss_d’y ); 111 } } 112 #undeà PATCH 123 $URIHANDLER_FUNC ( mod_acûss_uri_hªdËr ) { 124 ¶ugš_d©a * p = p_d ; 125  s_Ën ; 126 size_t k ; 128 ià( cÚ -> uri . ·th -> u£d =ð0è HANDLER_GO_ON ; 130 `mod_acûss_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 132 s_Ën = cÚ -> uri . ·th -> u£d - 1; 134 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 135 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 139  k = 0; k < p -> cÚf . acûss_d’y -> u£d ; k++) { 140 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . acûss_d’y -> d©a [ k ]; 141  ù_Ën = ds -> v®ue -> u£d - 1; 142  d’›d = 0; 145 ià( ù_Ën > s_Ën ) ; 146 ià( ds -> v®ue -> u£d == 0) ; 150 ià( cÚ -> cÚf . fÜû_low”ÿ£_fž’ames ) { 151 ià(0 =ð `¡ºÿ£cmp ( cÚ -> uri . ·th -> ±r + s_Ën - ù_Ën , ds -> v®ue ->ptr, ct_len)) { 152 d’›d = 1; 155 ià(0 =ð `¡ºcmp ( cÚ -> uri . ·th -> ±r + s_Ën - ù_Ën , ds -> v®ue ->ptr, ct_len)) { 156 d’›d = 1; 160 ià( d’›d ) { 161 cÚ -> h‰p_¡©us = 403; 163 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 164 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 165 "u¾ d’›d‡ wm©ch:", ds -> v®ue ); 168  HANDLER_FINISHED ; 173  HANDLER_GO_ON ; 174 } } 177  $mod_acûss_¶ugš_š™ ( ¶ugš * p ) { 178 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 179 p -> Çme = `bufãr_š™_¡ršg ("access"); 181 p -> š™ = mod_acûss_š™ ; 182 p -> £t_deçuÉs = mod_acûss_£t_deçuÉs ; 183 p -> hªdË_uri_þ—n = mod_acûss_uri_hªdËr ; 184 p -> hªdË_sub»que¡_¡¬t = mod_acûss_uri_hªdËr ; 185 p -> þ—nup = mod_acûss_ä“ ; 187 p -> d©a = NULL ; 190 } } @src/mod_accesslog.c 1  #_GNU_SOURCE ) 3  ~ 4  ~ 6  ~<ùy³.h > 7  ~<¡dlib.h > 8  ~<¡ršg.h > 9  ~ 10  ~ 11  ~<”ºo.h > 12  ~ 14  ~<¡dio.h > 16  ~"ba£.h " 17  ~"log.h " 18  ~"bufãr.h " 20  ~"¶ugš.h " 22  ~"š‘_ÁÝ_ÿche.h " 24  ~"sys-sock‘.h " 26 #ifdeà HAVE_SYSLOG_H 27  ~ 31  mkey ; 33 mFORMAT_UNSET , 34 mFORMAT_UNSUPPORTED , 35 mFORMAT_PERCENT , 36 mFORMAT_REMOTE_HOST , 37 mFORMAT_REMOTE_IDENT , 38 mFORMAT_REMOTE_USER , 39 mFORMAT_TIMESTAMP , 40 mFORMAT_REQUEST_LINE , 41 mFORMAT_STATUS , 42 mFORMAT_BYTES_OUT_NO_HEADER , 43 mFORMAT_HEADER , 45 mFORMAT_REMOTE_ADDR , 46 mFORMAT_LOCAL_ADDR , 47 mFORMAT_COOKIE , 48 mFORMAT_TIME_USED_MS , 49 mFORMAT_ENV , 50 mFORMAT_FILENAME , 51 mFORMAT_REQUEST_PROTOCOL , 52 mFORMAT_REQUEST_METHOD , 53 mFORMAT_SERVER_PORT , 54 mFORMAT_QUERY_STRING , 55 mFORMAT_TIME_USED , 56 mFORMAT_URL , 57 mFORMAT_SERVER_NAME , 58 mFORMAT_HTTP_HOST , 59 mFORMAT_CONNECTION_STATUS , 60 mFORMAT_BYTES_IN , 61 mFORMAT_BYTES_OUT , 63 mFORMAT_RESPONSE_HEADER 64 } mty³ ; 65 } tfÜm©_m­pšg ; 74 cÚ¡ fÜm©_m­pšg gfm­ [] = 76 { '%', FORMAT_PERCENT }, 77 { 'h', FORMAT_REMOTE_HOST }, 78 { 'l', FORMAT_REMOTE_IDENT }, 79 { 'u', FORMAT_REMOTE_USER }, 80 { 't', FORMAT_TIMESTAMP }, 81 { 'r', FORMAT_REQUEST_LINE }, 82 { 's', FORMAT_STATUS }, 83 { 'b', FORMAT_BYTES_OUT_NO_HEADER }, 84 { 'i', FORMAT_HEADER }, 86 { 'a', FORMAT_REMOTE_ADDR }, 87 { 'A', FORMAT_LOCAL_ADDR }, 88 { 'B', FORMAT_BYTES_OUT_NO_HEADER }, 89 { 'C', FORMAT_COOKIE }, 90 { 'D', FORMAT_TIME_USED_MS }, 91 { 'e', FORMAT_ENV }, 92 { 'f', FORMAT_FILENAME }, 93 { 'H', FORMAT_REQUEST_PROTOCOL }, 94 { 'm', FORMAT_REQUEST_METHOD }, 95 { 'n', FORMAT_UNSUPPORTED }, 96 { 'p', FORMAT_SERVER_PORT }, 97 { 'P', FORMAT_UNSUPPORTED }, 98 { 'q', FORMAT_QUERY_STRING }, 99 { 'T', FORMAT_TIME_USED }, 100 { 'U', FORMAT_URL }, 101 { 'v', FORMAT_SERVER_NAME }, 102 { 'V', FORMAT_HTTP_HOST }, 103 { 'X', FORMAT_CONNECTION_STATUS }, 104 { 'I', FORMAT_BYTES_IN }, 105 { 'O', FORMAT_BYTES_OUT }, 107 { 'o', FORMAT_RESPONSE_HEADER }, 109 { '\0', FORMAT_UNSET } 114 ’um { mFIELD_UNSET , mFIELD_STRING , mFIELD_FORMAT } mty³ ; 116 bufãr * m¡ršg ; 117  mf›ld ; 118 } tfÜm©_f›ld ; 121 fÜm©_f›ld ** m±r ; 123 size_t mu£d ; 124 size_t msize ; 125 } tfÜm©_f›lds ; 128 bufãr * macûss_logfže ; 129 bufãr * mfÜm© ; 130  mu£_sy¦og ; 133  mlog_acûss_fd ; 134 time_t mÏ¡_g’”©ed_acûs¦og_ts ; 135 time_t * mÏ¡_g’”©ed_acûs¦og_ts_±r ; 138 bufãr * macûss_logbufãr ; 139 bufãr * mts_acûs¦og_¡r ; 141 fÜm©_f›lds * m·r£d_fÜm© ; 142 } t¶ugš_cÚfig ; 145 mPLUGIN_DATA ; 147 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 148 ¶ugš_cÚfig mcÚf ; 149 } t¶ugš_d©a ; 151 $INIT_FUNC ( mod_acûs¦og_š™ ) { 152 ¶ugš_d©a * p ; 154 p = `ÿÎoc (1, (*p)); 156  p ; 157 } } 159  $acûs¦og_·r£_fÜm© ( £rv” * ¤v , fÜm©_f›lds * f›lds , bufãr * fÜm© ) { 160 size_t i , j , k = 0, ¡¬t = 0; 162 ià( fÜm© -> u£d == 0)  -1; 164  i = 0; i < fÜm© -> u£d - 1; i++) { 165  fÜm© -> ±r [ i ]) { 167 ià( i > 0 && ¡¬t != i) { 169 ià( f›lds -> size == 0) { 170 f›lds -> size = 16; 171 f›lds -> u£d = 0; 172 f›lds -> ±r = `m®loc (f›lds-> size * ( fÜm©_f›lds * )); 173 } ià( f›lds -> u£d =ðf›lds-> size ) { 174 f›lds -> size += 16; 175 f›lds -> ±r = `»®loc (f›lds->±r, f›lds-> size * ( fÜm©_f›lds * )); 178 f›lds -> ±r [f›lds-> u£d ] = `m®loc (( fÜm©_f›lds )); 179 f›lds -> ±r [f›lds-> u£d ]-> ty³ = FIELD_STRING ; 180 f›lds -> ±r [f›lds-> u£d ]-> ¡ršg = `bufãr_š™ (); 182 `bufãr_cÝy_¡ršg_Ën ( f›lds -> ±r [f›lds-> u£d ]-> ¡ršg , fÜm© ->±¸+ ¡¬t , i - start); 184 f›lds -> u£d ++; 189 ià( f›lds -> size == 0) { 190 f›lds -> size = 16; 191 f›lds -> u£d = 0; 192 f›lds -> ±r = `m®loc (f›lds-> size * ( fÜm©_f›lds * )); 193 } ià( f›lds -> u£d =ðf›lds-> size ) { 194 f›lds -> size += 16; 195 f›lds -> ±r = `»®loc (f›lds->±r, f›lds-> size * ( fÜm©_f›lds * )); 199  fÜm© -> ±r [ i +1]) { 203 ià( fÜm© -> ±r [ i +2] == '\0') { 204 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "%<‡nd %> haveo be followed by‡ format-specifier"); 209  j = 0; fm­ [j]. key != '\0'; j++) { 210 ià( fm­ [ j ]. key !ð fÜm© -> ±r [ i +2]) ; 214 f›lds -> ±r [f›lds-> u£d ] = `m®loc (( fÜm©_f›lds )); 215 f›lds -> ±r [f›lds-> u£d ]-> ty³ = FIELD_FORMAT ; 216 f›lds -> ±r [f›lds-> u£d ]-> f›ld = fm­ [ j ]. ty³ ; 217 f›lds -> ±r [f›lds-> u£d ]-> ¡ršg = NULL ; 219 f›lds -> u£d ++; 224 ià( fm­ [ j ]. key == '\0') { 225 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "%<‡nd %> haveo be followed by‡ valid format-specifier"); 229 ¡¬t = i + 3; 230 i = ¡¬t - 1; 236  k = i +2; k < fÜm© -> u£d - 1; k++) { 237 ià( fÜm© -> ±r [ k ] == '}') ; 240 ià( k =ð fÜm© -> u£d - 1) { 241 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "%{ haso beerminated by‡ }"); 246 ià( fÜm© -> ±r [ k +1] == '\0') { 247 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "%{...} haso be followed by‡ format-specifier"); 251 ià( k =ð i + 2) { 252 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "%{...} haso be contain‡ string"); 256  j = 0; fm­ [j]. key != '\0'; j++) { 257 ià( fm­ [ j ]. key !ð fÜm© -> ±r [ k +1]) ; 261 f›lds -> ±r [f›lds-> u£d ] = `m®loc (( fÜm©_f›lds )); 262 f›lds -> ±r [f›lds-> u£d ]-> ty³ = FIELD_FORMAT ; 263 f›lds -> ±r [f›lds-> u£d ]-> f›ld = fm­ [ j ]. ty³ ; 264 f›lds -> ±r [f›lds-> u£d ]-> ¡ršg = `bufãr_š™ (); 266 `bufãr_cÝy_¡ršg_Ën ( f›lds -> ±r [f›lds-> u£d ]-> ¡ršg , fÜm© ->±¸+ i + 2, k - (i + 2)); 268 f›lds -> u£d ++; 273 ià( fm­ [ j ]. key == '\0') { 274 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "%{...} haso be followed by‡ valid format-specifier"); 278 ¡¬t = k + 2; 279 i = ¡¬t - 1; 284 ià( fÜm© -> ±r [ i +1] == '\0') { 285 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "% haso be followed by‡ format-specifier"); 289  j = 0; fm­ [j]. key != '\0'; j++) { 290 ià( fm­ [ j ]. key !ð fÜm© -> ±r [ i +1]) ; 294 f›lds -> ±r [f›lds-> u£d ] = `m®loc (( fÜm©_f›lds )); 295 f›lds -> ±r [f›lds-> u£d ]-> ty³ = FIELD_FORMAT ; 296 f›lds -> ±r [f›lds-> u£d ]-> f›ld = fm­ [ j ]. ty³ ; 297 f›lds -> ±r [f›lds-> u£d ]-> ¡ršg = NULL ; 299 f›lds -> u£d ++; 304 ià( fm­ [ j ]. key == '\0') { 305 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "% haso be followed by‡ valid format-specifier"); 309 ¡¬t = i + 2; 310 i = ¡¬t - 1; 319 ià( ¡¬t < i ) { 321 ià( f›lds -> size == 0) { 322 f›lds -> size = 16; 323 f›lds -> u£d = 0; 324 f›lds -> ±r = `m®loc (f›lds-> size * ( fÜm©_f›lds * )); 325 } ià( f›lds -> u£d =ðf›lds-> size ) { 326 f›lds -> size += 16; 327 f›lds -> ±r = `»®loc (f›lds->±r, f›lds-> size * ( fÜm©_f›lds * )); 330 f›lds -> ±r [f›lds-> u£d ] = `m®loc (( fÜm©_f›lds )); 331 f›lds -> ±r [f›lds-> u£d ]-> ty³ = FIELD_STRING ; 332 f›lds -> ±r [f›lds-> u£d ]-> ¡ršg = `bufãr_š™ (); 334 `bufãr_cÝy_¡ršg_Ën ( f›lds -> ±r [f›lds-> u£d ]-> ¡ršg , fÜm© ->±¸+ ¡¬t , i - start); 336 f›lds -> u£d ++; 340 } } 342 $FREE_FUNC ( mod_acûs¦og_ä“ ) { 343 ¶ugš_d©a * p = p_d ; 344 size_t i ; 346 ià(! p è HANDLER_GO_ON ; 348 ià( p -> cÚfig_¡Üage ) { 350  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 351 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 353 ià(! s ) ; 355 ià( s -> acûss_logbufãr -> u£d ) { 356 ià( s -> u£_sy¦og ) { 357 #ifdeà HAVE_SYSLOG_H 358 ià( s -> acûss_logbufãr -> u£d > 2) { 359 `sy¦og ( LOG_INFO , "%*s", s -> acûss_logbufãr -> u£d - 2, s->acûss_logbufãr-> ±r ); 362 } ià( s -> log_acûss_fd != -1) { 363 `wr™e ( s -> log_acûss_fd , s-> acûss_logbufãr -> ±r , s->acûss_logbufãr-> u£d - 1); 367 ià( s -> log_acûss_fd !ð-1è `þo£ (s->log_access_fd); 369 `bufãr_ä“ ( s -> ts_acûs¦og_¡r ); 370 `bufãr_ä“ ( s -> acûss_logbufãr ); 371 `bufãr_ä“ ( s -> fÜm© ); 372 `bufãr_ä“ ( s -> acûss_logfže ); 374 ià( s -> ·r£d_fÜm© ) { 375 size_t j ; 376  j = 0; j < s -> ·r£d_fÜm© -> u£d ; j++) { 377 ià( s -> ·r£d_fÜm© -> ±r [ j ]-> ¡ršg è `bufãr_ä“ (s->parsed_format->ptr[j]->string); 378 `ä“ ( s -> ·r£d_fÜm© -> ±r [ j ]); 380 `ä“ ( s -> ·r£d_fÜm© -> ±r ); 381 `ä“ ( s -> ·r£d_fÜm© ); 384 `ä“ ( s ); 387 `ä“ ( p -> cÚfig_¡Üage ); 390 `ä“ ( p ); 392  HANDLER_GO_ON ; 393 } } 395 $SETDEFAULTS_FUNC ( log_acûss_Ý’ ) { 396 ¶ugš_d©a * p = p_d ; 397 size_t i = 0; 399 cÚfig_v®ues_t cv [] = { 400 { "acûs¦og.fž’ame", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 401 { "acûs¦og.u£-sy¦og", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 402 { "acûs¦og.fÜm©", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 403 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 406 ià(! p è HANDLER_ERROR ; 408 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 410  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 411 ¶ugš_cÚfig * s ; 413 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 414 s -> acûss_logfže = `bufãr_š™ (); 415 s -> fÜm© = `bufãr_š™ (); 416 s -> acûss_logbufãr = `bufãr_š™ (); 417 s -> ts_acûs¦og_¡r = `bufãr_š™ (); 418 s -> log_acûss_fd = -1; 419 s -> Ï¡_g’”©ed_acûs¦og_ts = 0; 420 s -> Ï¡_g’”©ed_acûs¦og_ts_±r = &(s-> Ï¡_g’”©ed_acûs¦og_ts ); 423 cv [0]. de¡š©iÚ = s -> acûss_logfže ; 424 cv [1]. de¡š©iÚ = &( s -> u£_sy¦og ); 425 cv [2]. de¡š©iÚ = s -> fÜm© ; 427 p -> cÚfig_¡Üage [ i ] = s ; 429 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 430  HANDLER_ERROR ; 433 ià( i =ð0 && `bufãr_is_em±y ( s -> fÜm© )) { 436 `bufãr_cÝy_¡ršg ( s -> fÜm© , "%h %V %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""); 441 ià( s -> fÜm© -> u£d ) { 442 s -> ·r£d_fÜm© = `ÿÎoc (1, (*(s->parsed_format))); 444 ià(-1 =ð `acûs¦og_·r£_fÜm© ( ¤v , s -> ·r£d_fÜm© , s-> fÜm© )) { 446 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 447 "·rsšg‡cûs¦og-defš™iÚ fažed:", s -> fÜm© ); 449  HANDLER_ERROR ; 453  j = 0; j < s -> ·r£d_fÜm© -> u£d ; j++) { 454  s -> ·r£d_fÜm© -> ±r [ j ]-> ty³ ) { 455  FIELD_FORMAT : 456 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssds", 457 "cÚfig:", "fÜm©", s -> ·r£d_fÜm© -> ±r [ j ]-> f›ld , 458 s -> ·r£d_fÜm© -> ±r [ j ]-> ¡ršg ? 459 s -> ·r£d_fÜm© -> ±r [ j ]-> ¡ršg ->ptr : "" ); 461  FIELD_STRING : 462 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbs", "cÚfig:", "¡ršg '", s -> ·r£d_fÜm© -> ±r [ j ]-> ¡ršg , "'"); 471 ià( s -> u£_sy¦og ) { 476 ià( `bufãr_is_em±y ( s -> acûss_logfže )) ; 478 ià( s -> acûss_logfže -> ±r [0] == '|') { 479 #ifdeà HAVE_FORK 482  to_log_fds [2]; 483 pid_t pid ; 485 ià( `pe ( to_log_fds )) { 486 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "pçžed: ", `¡»¼Ü ( ”ºo )); 487  HANDLER_ERROR ; 491  pid = `fÜk ()) { 495 `þo£ ( STDIN_FILENO ); 496 `dup2 ( to_log_fds [0], STDIN_FILENO ); 497 `þo£ ( to_log_fds [0]); 499 `þo£ ( to_log_fds [1]); 502  i = 3; i < 256; i++) { 503 `þo£ ( i ); 510 `exeþ ("/bš/sh", "sh", "-c", s -> acûss_logfže -> ±r + 1, (*) NULL ); 512 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 513 "¥awnšg†og-´oûs çžed: ", `¡»¼Ü ( ”ºo ), 514 s -> acûss_logfže -> ±r + 1); 516 `ex™ (-1); 520 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "fÜk fažed: ", `¡»¼Ü ( ”ºo )); 523 `þo£ ( to_log_fds [0]); 525 s -> log_acûss_fd = to_log_fds [1]; 532 } ià(-1 =ð( s -> log_acûss_fd = 533 `Ý’ ( s -> acûss_logfže -> ±r , O_APPEND | O_WRONLY | O_CREAT | O_LARGEFILE , 0644))) { 535 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssb", 537 `¡»¼Ü ( ”ºo ), s -> acûss_logfže ); 539  HANDLER_ERROR ; 541 `fúŽ ( s -> log_acûss_fd , F_SETFD , FD_CLOEXEC ); 545  HANDLER_GO_ON ; 546 } } 548 $SIGHUP_FUNC ( log_acûss_cyþe ) { 549 ¶ugš_d©a * p = p_d ; 550 size_t i ; 552 ià(! p -> cÚfig_¡Üage è HANDLER_GO_ON ; 554  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 555 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 557 ià( s -> acûss_logbufãr -> u£d ) { 558 ià( s -> u£_sy¦og ) { 559 #ifdeà HAVE_SYSLOG_H 560 ià( s -> acûss_logbufãr -> u£d > 2) { 562 `sy¦og ( LOG_INFO , "%*s", s -> acûss_logbufãr -> u£d - 2, s->acûss_logbufãr-> ±r ); 565 } ià( s -> log_acûss_fd != -1) { 566 `wr™e ( s -> log_acûss_fd , s-> acûss_logbufãr -> ±r , s->acûss_logbufãr-> u£d - 1); 569 `bufãr_»£t ( s -> acûss_logbufãr ); 572 ià( s -> u£_sy¦og == 0 && 573 ! `bufãr_is_em±y ( s -> acûss_logfže ) && 574 s -> acûss_logfže -> ±r [0] != '|') { 576 `þo£ ( s -> log_acûss_fd ); 578 ià(-1 =ð( s -> log_acûss_fd = 579 `Ý’ ( s -> acûss_logfže -> ±r , O_APPEND | O_WRONLY | O_CREAT | O_LARGEFILE , 0644))) { 581 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "cyþšg‡cûss-log fažed:", `¡»¼Ü ( ”ºo )); 583  HANDLER_ERROR ; 588  HANDLER_GO_ON ; 589 } } 591  #PATCH ( x ) \ 592 p -> cÚf . x = s ->x; ) 593  $mod_acûs¦og_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 594 size_t i , j ; 595 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 597 `PATCH ( acûss_logfže ); 598 `PATCH ( fÜm© ); 599 `PATCH ( log_acûss_fd ); 600 `PATCH ( Ï¡_g’”©ed_acûs¦og_ts_±r ); 601 `PATCH ( acûss_logbufãr ); 602 `PATCH ( ts_acûs¦og_¡r ); 603 `PATCH ( ·r£d_fÜm© ); 604 `PATCH ( u£_sy¦og ); 607  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 608 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 609 s = p -> cÚfig_¡Üage [ i ]; 612 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 615  j = 0; j < dc -> v®ue -> u£d ; j++) { 616 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 618 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("accesslog.filename"))) { 619 `PATCH ( acûss_logfže ); 620 `PATCH ( log_acûss_fd ); 621 `PATCH ( Ï¡_g’”©ed_acûs¦og_ts_±r ); 622 `PATCH ( acûss_logbufãr ); 623 `PATCH ( ts_acûs¦og_¡r ); 624 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("accesslog.format"))) { 625 `PATCH ( fÜm© ); 626 `PATCH ( ·r£d_fÜm© ); 627 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("accesslog.use-syslog"))) { 628 `PATCH ( u£_sy¦og ); 629 `PATCH ( Ï¡_g’”©ed_acûs¦og_ts_±r ); 630 `PATCH ( acûss_logbufãr ); 631 `PATCH ( ts_acûs¦og_¡r ); 637 } } 638 #undeà PATCH 640 $REQUESTDONE_FUNC ( log_acûss_wr™e ) { 641 ¶ugš_d©a * p = p_d ; 642 bufãr * b ; 643 size_t j ; 645  Ãwts = 0; 646 d©a_¡ršg * ds ; 648 `mod_acûs¦og_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 650 b = p -> cÚf . acûss_logbufãr ; 651 ià( b -> u£d == 0) { 652 `bufãr_cÝy_¡ršg ( b , ""); 655  j = 0; j < p -> cÚf . ·r£d_fÜm© -> u£d ; j++) { 656  p -> cÚf . ·r£d_fÜm© -> ±r [ j ]-> ty³ ) { 657  FIELD_STRING : 658 `bufãr_­³nd_¡ršg_bufãr ( b , p -> cÚf . ·r£d_fÜm© -> ±r [ j ]-> ¡ršg ); 660  FIELD_FORMAT : 661  p -> cÚf . ·r£d_fÜm© -> ±r [ j ]-> f›ld ) { 662  FORMAT_TIMESTAMP : 665 ià( ¤v -> cur_ts !ð*( p -> cÚf . Ï¡_g’”©ed_acûs¦og_ts_±r )) { 666  tm m; 667 #ià `defšed ( HAVE_STRUCT_TM_GMTOFF ) 668  scd , hrs , mš ; 671 `bufãr_´•¬e_cÝy ( p -> cÚf . ts_acûs¦og_¡r , 255); 672 #ià `defšed ( HAVE_STRUCT_TM_GMTOFF ) 673 #ifdeà HAVE_LOCALTIME_R 674 `loÿÉime_r (&( ¤v -> cur_ts ), & tm ); 675 `¡ráime ( p -> cÚf . ts_acûs¦og_¡r -> ±r ,…->cÚf.ts_acûs¦og_¡r-> size - 1, "[%d/%b/%Y:%H:%M:%S ", & tm ); 677 `¡ráime ( p -> cÚf . ts_acûs¦og_¡r -> ±r ,…->cÚf.ts_acûs¦og_¡r-> size - 1, "[%d/%b/%Y:%H:%M:%S ", `loÿÉime_r (&( ¤v -> cur_ts ))); 679 p -> cÚf . ts_acûs¦og_¡r -> u£d = `¡¾’ Õ->cÚf.ts_acûs¦og_¡r-> ±r ) + 1; 681 `bufãr_­³nd_¡ršg ( p -> cÚf . ts_acûs¦og_¡r , tm . tm_gmtoff >= 0 ? "+" : "-"); 683 scd = `abs ( tm . tm_gmtoff ); 684 hrs = scd / 3600; 685 mš = ( scd % 3600) / 60; 688 ià( hrs < 10è `bufãr_­³nd_¡ršg ( p -> cÚf . ts_acûs¦og_¡r , "0"); 689 `bufãr_­³nd_lÚg ( p -> cÚf . ts_acûs¦og_¡r , hrs ); 691 ià( mš < 10è `bufãr_­³nd_¡ršg ( p -> cÚf . ts_acûs¦og_¡r , "0"); 692 `bufãr_­³nd_lÚg ( p -> cÚf . ts_acûs¦og_¡r , mš ); 693 `BUFFER_APPEND_STRING_CONST ( p -> cÚf . ts_acûs¦og_¡r , "]"); 695 #ifdeà HAVE_GMTIME_R 696 `gmtime_r (&( ¤v -> cur_ts ), & tm ); 697 `¡ráime ( p -> cÚf . ts_acûs¦og_¡r -> ±r ,…->cÚf.ts_acûs¦og_¡r-> size - 1, "[%d/%b/%Y:%H:%M:%S +0000]", & tm ); 699 `¡ráime ( p -> cÚf . ts_acûs¦og_¡r -> ±r ,…->cÚf.ts_acûs¦og_¡r-> size - 1, "[%d/%b/%Y:%H:%M:%S +0000]", `gmtime (&( ¤v -> cur_ts ))); 701 p -> cÚf . ts_acûs¦og_¡r -> u£d = `¡¾’ Õ->cÚf.ts_acûs¦og_¡r-> ±r ) + 1; 704 *( p -> cÚf . Ï¡_g’”©ed_acûs¦og_ts_±r èð ¤v -> cur_ts ; 705 Ãwts = 1; 708 `bufãr_­³nd_¡ršg_bufãr ( b , p -> cÚf . ts_acûs¦og_¡r ); 711  FORMAT_REMOTE_HOST : 715 `bufãr_­³nd_¡ršg ( b , `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &( cÚ -> d¡_addr ))); 718  FORMAT_REMOTE_IDENT : 720 `BUFFER_APPEND_STRING_CONST ( b , "-"); 722  FORMAT_REMOTE_USER : 723 ià( cÚ -> authed_u£r -> u£d > 1) { 724 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> authed_u£r ); 726 `BUFFER_APPEND_STRING_CONST ( b , "-"); 729  FORMAT_REQUEST_LINE : 730 ià( cÚ -> »que¡ . »que¡_lše -> u£d ) { 731 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> »que¡ . »que¡_lše ); 734  FORMAT_STATUS : 735 `bufãr_­³nd_lÚg ( b , cÚ -> h‰p_¡©us ); 738  FORMAT_BYTES_OUT_NO_HEADER : 739 ià( cÚ -> by‹s_wr™‹n > 0) { 740 `bufãr_­³nd_off_t ( b , 741 cÚ -> by‹s_wr™‹n - cÚ-> by‹s_h—d” <= 0 ? 0 : con->bytes_written - con->bytes_header); 743 `BUFFER_APPEND_STRING_CONST ( b , "-"); 746  FORMAT_HEADER : 747 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , p -> cÚf . ·r£d_fÜm© -> ±r [ j ]-> ¡ršg ->ptr))) { 748 `bufãr_­³nd_¡ršg_bufãr ( b , ds -> v®ue ); 750 `BUFFER_APPEND_STRING_CONST ( b , "-"); 753  FORMAT_RESPONSE_HEADER : 754 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »¥Ú£ . h—d”s , p -> cÚf . ·r£d_fÜm© -> ±r [ j ]-> ¡ršg ->ptr))) { 755 `bufãr_­³nd_¡ršg_bufãr ( b , ds -> v®ue ); 757 `BUFFER_APPEND_STRING_CONST ( b , "-"); 760  FORMAT_FILENAME : 761 ià( cÚ -> physiÿl . ·th -> u£d > 1) { 762 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> physiÿl . ·th ); 764 `BUFFER_APPEND_STRING_CONST ( b , "-"); 767  FORMAT_BYTES_OUT : 768 ià( cÚ -> by‹s_wr™‹n > 0) { 769 `bufãr_­³nd_off_t ( b , cÚ -> by‹s_wr™‹n ); 771 `BUFFER_APPEND_STRING_CONST ( b , "-"); 774  FORMAT_BYTES_IN : 775 ià( cÚ -> by‹s_»ad > 0) { 776 `bufãr_­³nd_off_t ( b , cÚ -> by‹s_»ad ); 778 `BUFFER_APPEND_STRING_CONST ( b , "-"); 781  FORMAT_TIME_USED : 782 `bufãr_­³nd_lÚg ( b , ¤v -> cur_ts - cÚ -> »que¡_¡¬t ); 784  FORMAT_SERVER_NAME : 785 ià( cÚ -> £rv”_Çme -> u£d > 1) { 786 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> £rv”_Çme ); 788 `BUFFER_APPEND_STRING_CONST ( b , "-"); 791  FORMAT_HTTP_HOST : 792 ià( cÚ -> uri . authÜ™y -> u£d > 1) { 793 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> uri . authÜ™y ); 795 `BUFFER_APPEND_STRING_CONST ( b , "-"); 798  FORMAT_REQUEST_PROTOCOL : 799 `bufãr_­³nd_¡ršg ( b , 800 cÚ -> »que¡ . h‰p_v”siÚ =ð HTTP_VERSION_1_1 ? "HTTP/1.1" : "HTTP/1.0"); 802  FORMAT_REQUEST_METHOD : 803 `bufãr_­³nd_¡ršg ( b , `g‘_h‰p_m‘hod_Çme ( cÚ -> »que¡ . h‰p_m‘hod )); 805  FORMAT_PERCENT : 806 `bufãr_­³nd_¡ršg ( b , "%"); 808  FORMAT_SERVER_PORT : 809 `bufãr_­³nd_lÚg ( b , ¤v -> ¤vcÚf . pÜt ); 811  FORMAT_QUERY_STRING : 812 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> uri . qu”y ); 814  FORMAT_URL : 815 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> uri . ·th_¿w ); 817  FORMAT_CONNECTION_STATUS : 818  cÚ -> k“p_®ive ) { 819 0: `bufãr_­³nd_¡ršg ( b , "-"); ; 820 : `bufãr_­³nd_¡ršg ( b , "+"); ; 840 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 842 ià( p -> cÚf . u£_sy¦og || 843 ( p -> cÚf . acûss_logfže -> u£d &&…->cÚf.acûss_logfže-> ±r [0] == '|') || 844 Ãwts || 845 b -> u£d > BUFFER_MAX_REUSE_SIZE ) { 846 ià( p -> cÚf . u£_sy¦og ) { 847 #ifdeà HAVE_SYSLOG_H 848 ià( b -> u£d > 2) { 850 `sy¦og ( LOG_INFO , "%*s", b -> u£d - 2, b-> ±r ); 853 } ià( p -> cÚf . log_acûss_fd != -1) { 854 `wr™e ( p -> cÚf . log_acûss_fd , b -> ±r , b-> u£d - 1); 856 `bufãr_»£t ( b ); 859  HANDLER_GO_ON ; 860 } } 863  $mod_acûs¦og_¶ugš_š™ ( ¶ugš * p ) { 864 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 865 p -> Çme = `bufãr_š™_¡ršg ("accesslog"); 867 p -> š™ = mod_acûs¦og_š™ ; 868 p -> £t_deçuÉs ð log_acûss_Ý’ ; 869 p -> þ—nup = mod_acûs¦og_ä“ ; 871 p -> hªdË_»que¡_dÚe = log_acûss_wr™e ; 872 p -> hªdË_sighup = log_acûss_cyþe ; 874 p -> d©a = NULL ; 877 } } @src/mod_alias.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 4  ~<¡dio.h > 6  ~"ba£.h " 7  ~"log.h " 8  ~"bufãr.h " 10  ~"¶ugš.h " 14 ¬¿y * m®Ÿs ; 15 } t¶ugš_cÚfig ; 18 mPLUGIN_DATA ; 20 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 22 ¶ugš_cÚfig mcÚf ; 23 } t¶ugš_d©a ; 26 $INIT_FUNC ( mod_®Ÿs_š™ ) { 27 ¶ugš_d©a * p ; 29 p = `ÿÎoc (1, (*p)); 33  p ; 34 } } 37 $FREE_FUNC ( mod_®Ÿs_ä“ ) { 38 ¶ugš_d©a * p = p_d ; 40 ià(! p è HANDLER_GO_ON ; 42 ià( p -> cÚfig_¡Üage ) { 43 size_t i ; 45  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 46 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 48 if(! s ) ; 50 `¬¿y_ä“ ( s -> ®Ÿs ); 52 `ä“ ( s ); 54 `ä“ ( p -> cÚfig_¡Üage ); 57 `ä“ ( p ); 59  HANDLER_GO_ON ; 60 } } 64 $SETDEFAULTS_FUNC ( mod_®Ÿs_£t_deçuÉs ) { 65 ¶ugš_d©a * p = p_d ; 66 size_t i = 0; 68 cÚfig_v®ues_t cv [] = { 69 { "®Ÿs.u¾", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 70 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 73 ià(! p è HANDLER_ERROR ; 75 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 77  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 78 ¶ugš_cÚfig * s ; 80 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 81 s -> ®Ÿs = `¬¿y_š™ (); 82 cv [0]. de¡š©iÚ = s -> ®Ÿs ; 84 p -> cÚfig_¡Üage [ i ] = s ; 86 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 87  HANDLER_ERROR ; 89 ià( s -> ®Ÿs -> u£d >= 2) { 90 cÚ¡ ¬¿y * a = s -> ®Ÿs ; 91 size_t j , k ; 93  j = 0; j < a -> u£d ; j ++) { 94 cÚ¡ bufãr * ´efix = a -> d©a [a-> sÜ‹d [ j ]]-> key ; 95  k = j + 1; k < a -> u£d ; k ++) { 96 cÚ¡ bufãr * key = a -> d©a [a-> sÜ‹d [ k ]]->key; 98 ià( key -> u£d < ´efix ->used) { 101 ià( `memcmp ( key -> ±r , ´efix ->±r,…»fix-> u£d - 1) != 0) { 105 ià( a -> sÜ‹d [ j ] <‡->sÜ‹d[ k ]) { 106 `årštf ( ¡d”r , "url.alias: `%s' will‚ever match‡s `%s' matched first\n", 107 key -> ±r , 108 ´efix -> ±r ); 109  HANDLER_ERROR ; 116  HANDLER_GO_ON ; 117 } } 119  #PATCH ( x ) \ 120 p -> cÚf . x = s ->x; ) 121  $mod_®Ÿs_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 122 size_t i , j ; 123 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 125 `PATCH ( ®Ÿs ); 128  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 129 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 130 s = p -> cÚfig_¡Üage [ i ]; 133 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 136  j = 0; j < dc -> v®ue -> u£d ; j++) { 137 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 139 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("alias.url"))) { 140 `PATCH ( ®Ÿs ); 146 } } 147 #undeà PATCH 149 $PHYSICALPATH_FUNC ( mod_®Ÿs_physiÿl_hªdËr ) { 150 ¶ugš_d©a * p = p_d ; 151  uri_Ën , ba£dœ_Ën ; 152 * uri_±r ; 153 size_t k ; 155 ià( cÚ -> physiÿl . ·th -> u£d =ð0è HANDLER_GO_ON ; 157 `mod_®Ÿs_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 160 ba£dœ_Ën = ( cÚ -> physiÿl . ba£dœ -> u£d - 1) - 1; 161 uri_Ën = cÚ -> physiÿl . ·th -> u£d - 1 - ba£dœ_Ën ; 162 uri_±r = cÚ -> physiÿl . ·th -> ±r + ba£dœ_Ën ; 164  k = 0; k < p -> cÚf . ®Ÿs -> u£d ; k++) { 165 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . ®Ÿs -> d©a [ k ]; 166  ®Ÿs_Ën = ds -> key -> u£d - 1; 168 ià( ®Ÿs_Ën > uri_Ën ) ; 169 ià( ds -> key -> u£d == 0) ; 171 ià(0 =ð( cÚ -> cÚf . fÜû_low”ÿ£_fž’ames ? 172 `¡ºÿ£cmp ( uri_±r , ds -> key -> ±r , ®Ÿs_Ën ) : 173 `¡ºcmp ( uri_±r , ds -> key -> ±r , ®Ÿs_Ën ))) { 176 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ba£dœ , ds -> v®ue ); 177 `bufãr_cÝy_¡ršg_bufãr ( ¤v -> tmp_buf , ds -> v®ue ); 178 `bufãr_­³nd_¡ršg ( ¤v -> tmp_buf , uri_±r + ®Ÿs_Ën ); 179 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ·th , ¤v -> tmp_buf ); 181  HANDLER_GO_ON ; 186  HANDLER_GO_ON ; 187 } } 191  $mod_®Ÿs_¶ugš_š™ ( ¶ugš * p ) { 192 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 193 p -> Çme = `bufãr_š™_¡ršg ("alias"); 195 p -> š™ = mod_®Ÿs_š™ ; 196 p -> hªdË_physiÿl ð mod_®Ÿs_physiÿl_hªdËr ; 197 p -> £t_deçuÉs = mod_®Ÿs_£t_deçuÉs ; 198 p -> þ—nup = mod_®Ÿs_ä“ ; 200 p -> d©a = NULL ; 203 } } @src/mod_auth.c 1  ~ 2  ~ 4  ~<¡dlib.h > 5  ~<¡ršg.h > 6  ~<”ºo.h > 7  ~ 8  ~ 10  ~"¶ugš.h " 11  ~"h‰p_auth.h " 12  ~"log.h " 13  ~"»¥Ú£.h " 15 hªdËr_t auth_ld­_š™ ( £rv” * ¤v , mod_auth_¶ugš_cÚfig * s ); 30 $INIT_FUNC ( mod_auth_š™ ) { 31 mod_auth_¶ugš_d©a * p ; 33 p = `ÿÎoc (1, (*p)); 35 p -> tmp_buf = `bufãr_š™ (); 37 p -> auth_u£r = `bufãr_š™ (); 38 #ifdeà USE_LDAP 39 p -> ld­_fž‹r = `bufãr_š™ (); 42  p ; 43 } } 45 $FREE_FUNC ( mod_auth_ä“ ) { 46 mod_auth_¶ugš_d©a * p = p_d ; 48 `UNUSED ( ¤v ); 50 ià(! p è HANDLER_GO_ON ; 52 `bufãr_ä“ ( p -> tmp_buf ); 53 `bufãr_ä“ ( p -> auth_u£r ); 54 #ifdeà USE_LDAP 55 `bufãr_ä“ ( p -> ld­_fž‹r ); 58 ià( p -> cÚfig_¡Üage ) { 59 size_t i ; 60  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 61 mod_auth_¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 63 ià(! s ) ; 65 `¬¿y_ä“ ( s -> auth_»quœe ); 66 `bufãr_ä“ ( s -> auth_¶aš_groupfže ); 67 `bufãr_ä“ ( s -> auth_¶aš_u£rfže ); 68 `bufãr_ä“ ( s -> auth_htdige¡_u£rfže ); 69 `bufãr_ä“ ( s -> auth_hasswd_u£rfže ); 70 `bufãr_ä“ ( s -> auth_back’d_cÚf ); 72 `bufãr_ä“ ( s -> auth_ld­_ho¡Çme ); 73 `bufãr_ä“ ( s -> auth_ld­_ba£dn ); 74 `bufãr_ä“ ( s -> auth_ld­_bšddn ); 75 `bufãr_ä“ ( s -> auth_ld­_bšdpw ); 76 `bufãr_ä“ ( s -> auth_ld­_fž‹r ); 77 `bufãr_ä“ ( s -> auth_ld­_ÿfže ); 79 #ifdeà USE_LDAP 80 `bufãr_ä“ ( s -> ld­_fž‹r_´e ); 81 `bufãr_ä“ ( s -> ld­_fž‹r_po¡ ); 83 ià( s -> ld­ è `ld­_unbšd_s (s->ldap); 86 `ä“ ( s ); 88 `ä“ ( p -> cÚfig_¡Üage ); 91 `ä“ ( p ); 93  HANDLER_GO_ON ; 94 } } 96  #PATCH ( x ) \ 97 p -> cÚf . x = s ->x; ) 98  $mod_auth_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , mod_auth_¶ugš_d©a * p ) { 99 size_t i , j ; 100 mod_auth_¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 102 `PATCH ( auth_back’d ); 103 `PATCH ( auth_¶aš_groupfže ); 104 `PATCH ( auth_¶aš_u£rfže ); 105 `PATCH ( auth_htdige¡_u£rfže ); 106 `PATCH ( auth_hasswd_u£rfže ); 107 `PATCH ( auth_»quœe ); 108 `PATCH ( auth_debug ); 109 `PATCH ( auth_ld­_ho¡Çme ); 110 `PATCH ( auth_ld­_ba£dn ); 111 `PATCH ( auth_ld­_bšddn ); 112 `PATCH ( auth_ld­_bšdpw ); 113 `PATCH ( auth_ld­_fž‹r ); 114 `PATCH ( auth_ld­_ÿfže ); 115 `PATCH ( auth_ld­_¡¬‰ls ); 116 `PATCH ( auth_ld­_®low_em±y_pw ); 117 #ifdeà USE_LDAP 118 `PATCH ( ld­ ); 119 `PATCH ( ld­_fž‹r_´e ); 120 `PATCH ( ld­_fž‹r_po¡ ); 124  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 125 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 126 s = p -> cÚfig_¡Üage [ i ]; 129 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 132  j = 0; j < dc -> v®ue -> u£d ; j++) { 133 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 135 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.backend"))) { 136 `PATCH ( auth_back’d ); 137 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.backend.plain.groupfile"))) { 138 `PATCH ( auth_¶aš_groupfže ); 139 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.backend.plain.userfile"))) { 140 `PATCH ( auth_¶aš_u£rfže ); 141 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.backend.htdigest.userfile"))) { 142 `PATCH ( auth_htdige¡_u£rfže ); 143 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.backend.htpasswd.userfile"))) { 144 `PATCH ( auth_hasswd_u£rfže ); 145 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.require"))) { 146 `PATCH ( auth_»quœe ); 147 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.debug"))) { 148 `PATCH ( auth_debug ); 149 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.backend.ldap.hostname"))) { 150 `PATCH ( auth_ld­_ho¡Çme ); 151 #ifdeà USE_LDAP 152 `PATCH ( ld­ ); 153 `PATCH ( ld­_fž‹r_´e ); 154 `PATCH ( ld­_fž‹r_po¡ ); 156 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.backend.ldap.base-dn"))) { 157 `PATCH ( auth_ld­_ba£dn ); 158 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.backend.ldap.filter"))) { 159 `PATCH ( auth_ld­_fž‹r ); 160 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.backend.ldap.ca-file"))) { 161 `PATCH ( auth_ld­_ÿfže ); 162 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.backend.ldap.starttls"))) { 163 `PATCH ( auth_ld­_¡¬‰ls ); 164 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("auth.backend.ldap.allow-empty-pw"))) { 165 `PATCH ( auth_ld­_®low_em±y_pw ); 171 } } 172 #undeà PATCH 174  hªdËr_t $mod_auth_uri_hªdËr ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 175 size_t k ; 176  auth_»quœed = 0, auth_§tisf›d = 0; 177 * h‰p_authÜiz©iÚ = NULL ; 178 d©a_¡ršg * ds ; 179 mod_auth_¶ugš_d©a * p = p_d ; 180 ¬¿y * »q ; 183 `mod_auth_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 185 ià( p -> cÚf . auth_»quœe =ð NULL è HANDLER_GO_ON ; 194 auth_»quœed = 0; 195 auth_§tisf›d = 0; 198  k = 0; k < p -> cÚf . auth_»quœe -> u£d ; k++) { 199 bufãr * »quœe = p -> cÚf . auth_»quœe -> d©a [ k ]-> key ; 201 ià( »quœe -> u£d == 0) ; 202 ià( cÚ -> uri . ·th -> u£d < »quœe ->used) ; 206 ià( cÚ -> cÚf . fÜû_low”ÿ£_fž’ames ) { 207 ià(0 =ð `¡ºÿ£cmp ( cÚ -> uri . ·th -> ±r , »quœe ->±r,„equœe-> u£d - 1)) { 208 auth_»quœed = 1; 212 ià(0 =ð `¡ºcmp ( cÚ -> uri . ·th -> ±r , »quœe ->±r,„equœe-> u£d - 1)) { 213 auth_»quœed = 1; 220 ià( auth_»quœed =ð0è HANDLER_GO_ON ; 222 »q = (( d©a_¬¿y *)( p -> cÚf . auth_»quœe -> d©a [ k ]))-> v®ue ; 226 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Authorization"))) { 227 h‰p_authÜiz©iÚ = ds -> v®ue -> ±r ; 230 ià( ds && ds-> v®ue && ds->v®ue-> u£d ) { 231 * auth_»®m ; 232 d©a_¡ršg * m‘hod ; 234 m‘hod = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( »q , "method"); 237 ià( NULL !ð( auth_»®m = `¡rchr ( h‰p_authÜiz©iÚ , ' '))) { 238  auth_ty³_Ën = auth_»®m - h‰p_authÜiz©iÚ ; 240 ià(( auth_ty³_Ën == 5) && 241 (0 =ð `¡ºÿ£cmp ( h‰p_authÜiz©iÚ , "Basic", auth_ty³_Ën ))) { 243 ià(0 =ð `¡rcmp ( m‘hod -> v®ue -> ±r , "basic")) { 244 auth_§tisf›d = `h‰p_auth_basic_check ( ¤v , cÚ , p , »q , cÚ-> uri . ·th , auth_»®m +1); 246 } ià(( auth_ty³_Ën == 6) && 247 (0 =ð `¡ºÿ£cmp ( h‰p_authÜiz©iÚ , "Dige¡", auth_ty³_Ën ))) { 248 ià(0 =ð `¡rcmp ( m‘hod -> v®ue -> ±r , "digest")) { 249 ià(-1 =ð( auth_§tisf›d = `h‰p_auth_dige¡_check ( ¤v , cÚ , p , »q , cÚ-> uri . ·th , auth_»®m +1))) { 250 cÚ -> h‰p_¡©us = 400; 254  HANDLER_FINISHED ; 258 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 260 h‰p_authÜiz©iÚ ); 265 ià(! auth_§tisf›d ) { 266 d©a_¡ršg * m‘hod , * »®m ; 267 m‘hod = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( »q , "method"); 268 »®m = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( »q , "realm"); 270 cÚ -> h‰p_¡©us = 401; 272 ià(0 =ð `¡rcmp ( m‘hod -> v®ue -> ±r , "basic")) { 273 `bufãr_cÝy_¡ršg ( p -> tmp_buf , "Basic„ealm=\""); 274 `bufãr_­³nd_¡ršg_bufãr ( p -> tmp_buf , »®m -> v®ue ); 275 `bufãr_­³nd_¡ršg ( p -> tmp_buf , "\""); 277 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("WWW-Auth’tiÿ‹"), `CONST_BUF_LEN ( p -> tmp_buf )); 278 } ià(0 =ð `¡rcmp ( m‘hod -> v®ue -> ±r , "digest")) { 279  hh [33]; 280 `h‰p_auth_dige¡_g’”©e_nÚû ( ¤v , p , srv-> tmp_buf , hh ); 282 `bufãr_cÝy_¡ršg ( p -> tmp_buf , "Digest„ealm=\""); 283 `bufãr_­³nd_¡ršg_bufãr ( p -> tmp_buf , »®m -> v®ue ); 284 `bufãr_­³nd_¡ršg ( p -> tmp_buf , "\",‚once=\""); 285 `bufãr_­³nd_¡ršg ( p -> tmp_buf , hh ); 286 `bufãr_­³nd_¡ršg ( p -> tmp_buf , "\", qop=\"auth\""); 288 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("WWW-Auth’tiÿ‹"), `CONST_BUF_LEN ( p -> tmp_buf )); 292  HANDLER_FINISHED ; 296 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> authed_u£r , p -> auth_u£r ); 299  HANDLER_GO_ON ; 300 } } 302 $SETDEFAULTS_FUNC ( mod_auth_£t_deçuÉs ) { 303 mod_auth_¶ugš_d©a * p = p_d ; 304 size_t i ; 306 cÚfig_v®ues_t cv [] = { 307 { "auth.back’d", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 308 { "auth.back’d.¶aš.groupfže", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 309 { "auth.back’d.¶aš.u£rfže", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 310 { "auth.»quœe", NULL , T_CONFIG_LOCAL , T_CONFIG_SCOPE_CONNECTION }, 311 { "auth.back’d.ld­.ho¡Çme", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 312 { "auth.back’d.ld­.ba£-dn", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 313 { "auth.back’d.ld­.fž‹r", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 314 { "auth.back’d.ld­.ÿ-fže", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 315 { "auth.back’d.ld­.¡¬‰ls", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 316 { "auth.back’d.ld­.bšd-dn", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 317 { "auth.back’d.ld­.bšd-pw", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 318 { "auth.back’d.ld­.®low-em±y-pw", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 319 { "auth.back’d.htdige¡.u£rfže", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 320 { "auth.back’d.hasswd.u£rfže", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 321 { "auth.debug", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 322 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 325 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 327  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 328 mod_auth_¶ugš_cÚfig * s ; 329 size_t n ; 330 d©a_¬¿y * da ; 331 ¬¿y * ÿ ; 333 s = `ÿÎoc (1, ( mod_auth_¶ugš_cÚfig )); 334 s -> auth_¶aš_groupfže = `bufãr_š™ (); 335 s -> auth_¶aš_u£rfže = `bufãr_š™ (); 336 s -> auth_htdige¡_u£rfže = `bufãr_š™ (); 337 s -> auth_hasswd_u£rfže = `bufãr_š™ (); 338 s -> auth_back’d_cÚf = `bufãr_š™ (); 340 s -> auth_ld­_ho¡Çme = `bufãr_š™ (); 341 s -> auth_ld­_ba£dn = `bufãr_š™ (); 342 s -> auth_ld­_bšddn = `bufãr_š™ (); 343 s -> auth_ld­_bšdpw = `bufãr_š™ (); 344 s -> auth_ld­_fž‹r = `bufãr_š™ (); 345 s -> auth_ld­_ÿfže = `bufãr_š™ (); 346 s -> auth_ld­_¡¬‰ls = 0; 347 s -> auth_debug = 0; 349 s -> auth_»quœe = `¬¿y_š™ (); 351 #ifdeà USE_LDAP 352 s -> ld­_fž‹r_´e = `bufãr_š™ (); 353 s -> ld­_fž‹r_po¡ = `bufãr_š™ (); 354 s -> ld­ = NULL ; 357 cv [0]. de¡š©iÚ = s -> auth_back’d_cÚf ; 358 cv [1]. de¡š©iÚ = s -> auth_¶aš_groupfže ; 359 cv [2]. de¡š©iÚ = s -> auth_¶aš_u£rfže ; 360 cv [3]. de¡š©iÚ = s -> auth_»quœe ; 361 cv [4]. de¡š©iÚ = s -> auth_ld­_ho¡Çme ; 362 cv [5]. de¡š©iÚ = s -> auth_ld­_ba£dn ; 363 cv [6]. de¡š©iÚ = s -> auth_ld­_fž‹r ; 364 cv [7]. de¡š©iÚ = s -> auth_ld­_ÿfže ; 365 cv [8]. de¡š©iÚ = &( s -> auth_ld­_¡¬‰ls ); 366 cv [9]. de¡š©iÚ = s -> auth_ld­_bšddn ; 367 cv [10]. de¡š©iÚ = s -> auth_ld­_bšdpw ; 368 cv [11]. de¡š©iÚ = &( s -> auth_ld­_®low_em±y_pw ); 369 cv [12]. de¡š©iÚ = s -> auth_htdige¡_u£rfže ; 370 cv [13]. de¡š©iÚ = s -> auth_hasswd_u£rfže ; 371 cv [14]. de¡š©iÚ = &( s -> auth_debug ); 373 p -> cÚfig_¡Üage [ i ] = s ; 374 ÿ = (( d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue ; 376 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , ÿ , cv )) { 377  HANDLER_ERROR ; 380 ià( s -> auth_back’d_cÚf -> u£d ) { 381 ià(0 =ð `¡rcmp ( s -> auth_back’d_cÚf -> ±r , "htpasswd")) { 382 s -> auth_back’d = AUTH_BACKEND_HTPASSWD ; 383 } ià(0 =ð `¡rcmp ( s -> auth_back’d_cÚf -> ±r , "htdigest")) { 384 s -> auth_back’d = AUTH_BACKEND_HTDIGEST ; 385 } ià(0 =ð `¡rcmp ( s -> auth_back’d_cÚf -> ±r , "plain")) { 386 s -> auth_back’d = AUTH_BACKEND_PLAIN ; 387 } ià(0 =ð `¡rcmp ( s -> auth_back’d_cÚf -> ±r , "ldap")) { 388 s -> auth_back’d = AUTH_BACKEND_LDAP ; 390 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "auth.back’d‚Ù suµÜ‹d:", s -> auth_back’d_cÚf ); 392  HANDLER_ERROR ; 397 ià( NULL =ð( da = ( d©a_¬¿y *) `¬¿y_g‘_–em’t ( ÿ , "auth.require"))) ; 399 ià( da -> ty³ !ð TYPE_ARRAY ) ; 401  n = 0;‚ < da -> v®ue -> u£d ;‚++) { 402 size_t m ; 403 d©a_¬¿y * da_fže = (d©a_¬¿y *) da -> v®ue -> d©a [ n ]; 404 cÚ¡ * m‘hod , * »®m , * »quœe ; 406 ià( da -> v®ue -> d©a [ n ]-> ty³ !ð TYPE_ARRAY ) { 407 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 411  HANDLER_ERROR ; 414 m‘hod = »®m = »quœe = NULL ; 416  m = 0; m < da_fže -> v®ue -> u£d ; m++) { 417 ià( da_fže -> v®ue -> d©a [ m ]-> ty³ =ð TYPE_STRING ) { 418 ià(0 =ð `¡rcmp ( da_fže -> v®ue -> d©a [ m ]-> key -> ±r , "method")) { 419 m‘hod = (( d©a_¡ršg *)( da_fže -> v®ue -> d©a [ m ]))->v®ue-> ±r ; 420 } ià(0 =ð `¡rcmp ( da_fže -> v®ue -> d©a [ m ]-> key -> ±r , "realm")) { 421 »®m = (( d©a_¡ršg *)( da_fže -> v®ue -> d©a [ m ]))->v®ue-> ±r ; 422 } ià(0 =ð `¡rcmp ( da_fže -> v®ue -> d©a [ m ]-> key -> ±r , "require")) { 423 »quœe = (( d©a_¡ršg *)( da_fže -> v®ue -> d©a [ m ]))->v®ue-> ±r ; 425 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbs", 428 da_fže -> v®ue -> d©a [ m ]-> key , 431  HANDLER_ERROR ; 434 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbs", 437 da_fže -> v®ue -> d©a [ m ]-> key , 440  HANDLER_ERROR ; 444 ià( m‘hod =ð NULL ) { 445 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 448  HANDLER_ERROR ; 450 ià(0 !ð `¡rcmp ( m‘hod , "basic") && 451 0 !ð `¡rcmp ( m‘hod , "digest")) { 452 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 455  HANDLER_ERROR ; 459 ià( »®m =ð NULL ) { 460 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 463  HANDLER_ERROR ; 466 ià( »quœe =ð NULL ) { 467 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 470  HANDLER_ERROR ; 473 ià( m‘hod && »®m && »quœe ) { 474 d©a_¡ršg * ds ; 475 d©a_¬¿y * a ; 477 a = `d©a_¬¿y_š™ (); 478 `bufãr_cÝy_¡ršg_bufãr ( a -> key , da_fže ->key); 480 ds = `d©a_¡ršg_š™ (); 482 `bufãr_cÝy_¡ršg ( ds -> key , "method"); 483 `bufãr_cÝy_¡ršg ( ds -> v®ue , m‘hod ); 485 `¬¿y_š£¹_unique ( a -> v®ue , ( d©a_un£t *) ds ); 487 ds = `d©a_¡ršg_š™ (); 489 `bufãr_cÝy_¡ršg ( ds -> key , "realm"); 490 `bufãr_cÝy_¡ršg ( ds -> v®ue , »®m ); 492 `¬¿y_š£¹_unique ( a -> v®ue , ( d©a_un£t *) ds ); 494 ds = `d©a_¡ršg_š™ (); 496 `bufãr_cÝy_¡ršg ( ds -> key , "require"); 497 `bufãr_cÝy_¡ršg ( ds -> v®ue , »quœe ); 499 `¬¿y_š£¹_unique ( a -> v®ue , ( d©a_un£t *) ds ); 501 `¬¿y_š£¹_unique ( s -> auth_»quœe , ( d©a_un£t *) a ); 505  s -> auth_back’d ) { 506  AUTH_BACKEND_LDAP : { 507 hªdËr_t »t = `auth_ld­_š™ ( ¤v , s ); 508 ià( »t =ð HANDLER_ERROR ) 509  ( »t ); 517  HANDLER_GO_ON ; 518 } } 520 hªdËr_t $auth_ld­_š™ ( £rv” * ¤v , mod_auth_¶ugš_cÚfig * s ) { 521 #ifdeà USE_LDAP 522  »t ; 524 ià( s -> auth_ld­_ba£dn -> u£d == 0) { 525 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "ldap:‡uth.backend.ldap.base-dn haso be set"); 527  HANDLER_ERROR ; 531 ià( s -> auth_ld­_fž‹r -> u£d ) { 532 * dÞÏr ; 536 ià( NULL =ð( dÞÏr = `¡rchr ( s -> auth_ld­_fž‹r -> ±r , '$'))) { 537 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "ldap:‡uth.backend.ldap.filter is missing‡„eplace-operator '$'"); 539  HANDLER_ERROR ; 542 `bufãr_cÝy_¡ršg_Ën ( s -> ld­_fž‹r_´e , s-> auth_ld­_fž‹r -> ±r , dÞÏr - s->auth_ldap_filter->ptr); 543 `bufãr_cÝy_¡ršg ( s -> ld­_fž‹r_po¡ , dÞÏr +1); 546 ià( s -> auth_ld­_ho¡Çme -> u£d ) { 547 ià( NULL =ð( s -> ld­ = `ld­_š™ (s-> auth_ld­_ho¡Çme -> ±r , LDAP_PORT ))) { 548 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ld­ ...", `¡»¼Ü ( ”ºo )); 550  HANDLER_ERROR ; 553 »t = LDAP_VERSION3 ; 554 ià( LDAP_OPT_SUCCESS !ð( »t = `ld­_£t_ÝtiÚ ( s -> ld­ , LDAP_OPT_PROTOCOL_VERSION , &ret))) { 555 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ld­:", `ld­_”r2¡ršg ( »t )); 557  HANDLER_ERROR ; 560 ià( s -> auth_ld­_¡¬‰ls ) { 563 ià(! `bufãr_is_em±y ( s -> auth_ld­_ÿfže )) { 564 ià( LDAP_OPT_SUCCESS !ð( »t = `ld­_£t_ÝtiÚ ( NULL , LDAP_OPT_X_TLS_CACERTFILE , 565 s -> auth_ld­_ÿfže -> ±r ))) { 566 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 567 "Lßdšg CA c”tifiÿ‹ fažed:", `ld­_”r2¡ršg ( »t )); 569  HANDLER_ERROR ; 573 ià( LDAP_OPT_SUCCESS !ð( »t = `ld­_¡¬t_Žs_s ( s -> ld­ , NULL , NULL))) { 574 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ld­ s¹TLS fažed:", `ld­_”r2¡ršg ( »t )); 576  HANDLER_ERROR ; 582 ià( s -> auth_ld­_bšddn -> u£d ) { 583 ià( LDAP_SUCCESS !ð( »t = `ld­_sim¶e_bšd_s ( s -> ld­ , s-> auth_ld­_bšddn -> ±r , s-> auth_ld­_bšdpw ->ptr))) { 584 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ld­:", `ld­_”r2¡ršg ( »t )); 586  HANDLER_ERROR ; 589 ià( LDAP_SUCCESS !ð( »t = `ld­_sim¶e_bšd_s ( s -> ld­ , NULL , NULL))) { 590 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ld­:", `ld­_”r2¡ršg ( »t )); 592  HANDLER_ERROR ; 597 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "no†dap support‡vailable"); 598  HANDLER_ERROR ; 600  HANDLER_GO_ON ; 601 } } 603  $mod_auth_¶ugš_š™ ( ¶ugš * p ) { 604 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 605 p -> Çme = `bufãr_š™_¡ršg ("auth"); 606 p -> š™ = mod_auth_š™ ; 607 p -> £t_deçuÉs = mod_auth_£t_deçuÉs ; 608 p -> hªdË_uri_þ—n = mod_auth_uri_hªdËr ; 609 p -> þ—nup = mod_auth_ä“ ; 611 p -> d©a = NULL ; 614 } } @src/mod_auth.h @src/mod_cgi.c 1  ~ 2 #ifdeà __WIN32 3  ~ 5  ~ 6  ~ 7  ~ 9  ~<Ãtš‘/š.h > 11  ~<¬·/š‘.h > 14  ~ 15  ~<”ºo.h > 16  ~<¡dlib.h > 17  ~<¡ršg.h > 18  ~ 19  ~ 20  ~<ùy³.h > 21  ~ 23  ~<¡dio.h > 24  ~ 26  ~"£rv”.h " 27  ~"keyv®ue.h " 28  ~"log.h " 29  ~"cÚÃùiÚs.h " 30  ~"jobli¡.h " 31  ~"h‰p_chunk.h " 33  ~"¶ugš.h " 35 #ifdeà HAVE_SYS_FILIO_H 36  ~ 39 ’um { mEOL_UNSET , mEOL_N , mEOL_RN }; 42 ** m±r ; 44 size_t msize ; 45 size_t mu£d ; 46 } tch¬_¬¿y ; 49 pid_t * m±r ; 50 size_t mu£d ; 51 size_t msize ; 52 } tbufãr_pid_t ; 55 ¬¿y * mcgi ; 56 } t¶ugš_cÚfig ; 59 mPLUGIN_DATA ; 60 bufãr_pid_t mcgi_pid ; 62 bufãr * mtmp_buf ; 63 bufãr * m·r£_»¥Ú£ ; 65 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 67 ¶ugš_cÚfig mcÚf ; 68 } t¶ugš_d©a ; 71 pid_t mpid ; 72  mfd ; 73  mfde_ndx ; 75 cÚÃùiÚ * m»mÙe_cÚn ; 76 ¶ugš_d©a * m¶ugš_d©a ; 78 bufãr * m»¥Ú£ ; 79 bufãr * m»¥Ú£_h—d” ; 80 } thªdËr_ùx ; 82  hªdËr_ùx * $cgi_hªdËr_ùx_š™ () { 83 hªdËr_ùx * hùx = `ÿÎoc (1, (*hctx)); 85 `as£¹ ( hùx ); 87 hùx -> »¥Ú£ = `bufãr_š™ (); 88 hùx -> »¥Ú£_h—d” = `bufãr_š™ (); 90  hùx ; 91 } } 93  $cgi_hªdËr_ùx_ä“ ( hªdËr_ùx * hùx ) { 94 `bufãr_ä“ ( hùx -> »¥Ú£ ); 95 `bufãr_ä“ ( hùx -> »¥Ú£_h—d” ); 97 `ä“ ( hùx ); 98 } } 100 ’um { mFDEVENT_HANDLED_UNSET , mFDEVENT_HANDLED_FINISHED , mFDEVENT_HANDLED_NOT_FINISHED , mFDEVENT_HANDLED_ERROR }; 102 $INIT_FUNC ( mod_cgi_š™ ) { 103 ¶ugš_d©a * p ; 105 p = `ÿÎoc (1, (*p)); 107 `as£¹ ( p ); 109 p -> tmp_buf = `bufãr_š™ (); 110 p -> ·r£_»¥Ú£ = `bufãr_š™ (); 112  p ; 113 } } 116 $FREE_FUNC ( mod_cgi_ä“ ) { 117 ¶ugš_d©a * p = p_d ; 118 bufãr_pid_t * r = &( p -> cgi_pid ); 120 `UNUSED ( ¤v ); 122 ià( p -> cÚfig_¡Üage ) { 123 size_t i ; 124  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 125 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 127 `¬¿y_ä“ ( s -> cgi ); 129 `ä“ ( s ); 131 `ä“ ( p -> cÚfig_¡Üage ); 135 ià( r -> ±r è `ä“ (r->ptr); 137 `bufãr_ä“ ( p -> tmp_buf ); 138 `bufãr_ä“ ( p -> ·r£_»¥Ú£ ); 140 `ä“ ( p ); 142  HANDLER_GO_ON ; 143 } } 145 $SETDEFAULTS_FUNC ( mod_ç¡cgi_£t_deçuÉs ) { 146 ¶ugš_d©a * p = p_d ; 147 size_t i = 0; 149 cÚfig_v®ues_t cv [] = { 150 { "cgi.assign", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 151 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 154 ià(! p è HANDLER_ERROR ; 156 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 158  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 159 ¶ugš_cÚfig * s ; 161 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 162 `as£¹ ( s ); 164 s -> cgi = `¬¿y_š™ (); 166 cv [0]. de¡š©iÚ = s -> cgi ; 168 p -> cÚfig_¡Üage [ i ] = s ; 170 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 171  HANDLER_ERROR ; 175  HANDLER_GO_ON ; 176 } } 179  $cgi_pid_add ( £rv” * ¤v , ¶ugš_d©a * p , pid_t pid ) { 180  m = -1; 181 size_t i ; 182 bufãr_pid_t * r = &( p -> cgi_pid ); 184 `UNUSED ( ¤v ); 186  i = 0; i < r -> u£d ; i++) { 187 ià( r -> ±r [ i ] > m ) m =„->ptr[i]; 190 ià( r -> size == 0) { 191 r -> size = 16; 192 r -> ±r = `m®loc ((*r->±rè*„-> size ); 193 } ià( r -> u£d =ðr-> size ) { 194 r -> size += 16; 195 r -> ±r = `»®loc Ô->±r, (*r->±rè*„-> size ); 198 r -> ±r [r-> u£d ++] = pid ; 200  m ; 201 } } 203  $cgi_pid_d– ( £rv” * ¤v , ¶ugš_d©a * p , pid_t pid ) { 204 size_t i ; 205 bufãr_pid_t * r = &( p -> cgi_pid ); 207 `UNUSED ( ¤v ); 209  i = 0; i < r -> u£d ; i++) { 210 ià( r -> ±r [ i ] =ð pid ) ; 213 ià( i !ð r -> u£d ) { 216 ià( i !ð r -> u£d - 1) { 217 r -> ±r [ i ] =„->±r[r-> u£d - 1]; 219 r -> u£d --; 223 } } 225  $cgi_»¥Ú£_·r£ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * š ) { 226 * ns ; 227 cÚ¡ * s ; 228  lše = 0; 230 `UNUSED ( ¤v ); 232 `bufãr_cÝy_¡ršg_bufãr ( p -> ·r£_»¥Ú£ , š ); 234  s = p -> ·r£_»¥Ú£ -> ±r ; 235 NULL !ð( ns = `¡rchr ( s , '\n')); 236 s = ns + 1, lše ++) { 237 cÚ¡ * key , * v®ue ; 238  key_Ën ; 239 d©a_¡ršg * ds ; 242 ns [0] = '\0'; 244 ià( ns > s &&‚s[-1] == '\r')‚s[-1] = '\0'; 246 ià( lše == 0 && 247 0 =ð `¡ºcmp ( s , "HTTP/1.", 7)) { 250 ià(( s [7] == '1' || 251 s [7] == '0') && 252 s [8] == ' ') { 253  ¡©us ; 256 ¡©us = `¡¹Þ ( s +9, NULL , 10); 258 ià( ¡©us >= 100 && 259 ¡©us < 1000) { 261 cÚ -> ·r£d_»¥Ú£ |ð HTTP_STATUS ; 262 cÚ -> h‰p_¡©us = ¡©us ; 267 key = s ; 268 ià( NULL =ð( v®ue = `¡rchr ( s , ':'))) { 273 key_Ën = v®ue - key ; 274 v®ue += 1; 277 * v®ue == ' ' || *value == '\t') value++; 279 ià( NULL =ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( cÚ -> »¥Ú£ . h—d”s , TYPE_STRING ))) { 280 ds = `d©a_»¥Ú£_š™ (); 282 `bufãr_cÝy_¡ršg_Ën ( ds -> key , key, key_Ën ); 283 `bufãr_cÝy_¡ršg ( ds -> v®ue , value); 285 `¬¿y_š£¹_unique ( cÚ -> »¥Ú£ . h—d”s , ( d©a_un£t *) ds ); 287  key_Ën ) { 289 ià(0 =ð `¡ºÿ£cmp ( key , "D©e", key_Ën )) { 290 cÚ -> ·r£d_»¥Ú£ |ð HTTP_DATE ; 294 ià(0 =ð `¡ºÿ£cmp ( key , "Stus", key_Ën )) { 295 cÚ -> h‰p_¡©us = `¡¹Þ ( v®ue , NULL , 10); 296 cÚ -> ·r£d_»¥Ú£ |ð HTTP_STATUS ; 300 ià(0 =ð `¡ºÿ£cmp ( key , "LoÿtiÚ", key_Ën )) { 301 cÚ -> ·r£d_»¥Ú£ |ð HTTP_LOCATION ; 305 ià(0 =ð `¡ºÿ£cmp ( key , "CÚÃùiÚ", key_Ën )) { 306 cÚ -> »¥Ú£ . k“p_®ive = (0 =ð `¡rÿ£cmp ( v®ue , "Keep-Alive")) ? 1 : 0; 307 cÚ -> ·r£d_»¥Ú£ |ð HTTP_CONNECTION ; 311 ià(0 =ð `¡ºÿ£cmp ( key , "CÚ‹Á-L’gth", key_Ën )) { 312 cÚ -> »¥Ú£ . cÚ‹Á_Ëngth = `¡¹Þ ( v®ue , NULL , 10); 313 cÚ -> ·r£d_»¥Ú£ |ð HTTP_CONTENT_LENGTH ; 323 ià(( cÚ -> ·r£d_»¥Ú£ & HTTP_LOCATION ) && 324 !( cÚ -> ·r£d_»¥Ú£ & HTTP_STATUS )) { 325 cÚ -> h‰p_¡©us = 302; 329 } } 332  $cgi_demux_»¥Ú£ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 333 ¶ugš_d©a * p = hùx ->plugin_data; 334 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 337  n ; 339 `bufãr_´•¬e_cÝy ( hùx -> »¥Ú£ , 1024); 340 ià(-1 =ð( n = `»ad ( hùx -> fd , hùx-> »¥Ú£ -> ±r , hùx->»¥Ú£-> size - 1))) { 341 ià( ”ºo =ð EAGAIN ||ƒ¼nØ=ð EINTR ) { 343  FDEVENT_HANDLED_NOT_FINISHED ; 346 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdd", `¡»¼Ü ( ”ºo ), cÚ -> fd , hùx ->fd); 347  FDEVENT_HANDLED_ERROR ; 350 ià( n == 0) { 353 cÚ -> fže_fšished = 1; 356 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , NULL , 0); 357 `jobli¡_­³nd ( ¤v , cÚ ); 359  FDEVENT_HANDLED_FINISHED ; 362 hùx -> »¥Ú£ -> ±r [ n ] = '\0'; 363 hùx -> »¥Ú£ -> u£d = n +1; 367 ià( cÚ -> fže_¡¬‹d == 0) { 368  is_h—d” = 0; 369  is_h—d”_’d = 0; 370 size_t Ï¡_eÞ = 0; 371 size_t i ; 373 `bufãr_­³nd_¡ršg_bufãr ( hùx -> »¥Ú£_h—d” , hùx-> »¥Ú£ ); 397 ià(0 =ð `¡ºcmp ( hùx -> »¥Ú£_h—d” -> ±r , "HTTP/1.", 7)è is_h—d” = 1; 399  i = 0; ! is_h—d”_’d && i < hùx -> »¥Ú£_h—d” -> u£d - 1; i++) { 400  c = hùx -> »¥Ú£_h—d” -> ±r [ i ]; 402  c ) { 408 is_h—d” = 1; 412 ià( is_h—d” == 0) { 415 is_h—d”_’d = 1; 423 ià( Ï¡_eÞ > 0 && 424 (( i - Ï¡_eÞ == 1) || 425 ( i - Ï¡_eÞ =ð2 && hùx -> »¥Ú£_h—d” -> ±r [i - 1] == '\r'))) { 426 is_h—d”_’d = 1; 430 Ï¡_eÞ = i ; 436 ià( is_h—d”_’d ) { 437 ià(! is_h—d” ) { 440 ià( cÚ -> »que¡ . h‰p_v”siÚ =ð HTTP_VERSION_1_1 ) { 441 cÚ -> »¥Ú£ . Œªsãr_’codšg = HTTP_TRANSFER_ENCODING_CHUNKED ; 444 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , hùx -> »¥Ú£_h—d” -> ±r , hùx->»¥Ú£_h—d”-> u£d ); 445 `jobli¡_­³nd ( ¤v , cÚ ); 447 cÚ¡ * b¡¬t ; 448 size_t bËn ; 455 i --; 458 b¡¬t = hùx -> »¥Ú£_h—d” -> ±r + ( i + 1); 459 bËn = ( hùx -> »¥Ú£_h—d” -> u£d - 1è- ( i + 1); 462 ià( i > 0 && ( hùx -> »¥Ú£_h—d” -> ±r [i - 1] == '\r')) { 463 i --; 466 hùx -> »¥Ú£_h—d” -> ±r [ i ] = '\0'; 467 hùx -> »¥Ú£_h—d” -> u£d = i + 1; 470 `cgi_»¥Ú£_·r£ ( ¤v , cÚ , p , hùx -> »¥Ú£_h—d” ); 473 ià( cÚ -> »que¡ . h‰p_v”siÚ =ð HTTP_VERSION_1_1 && 474 !( cÚ -> ·r£d_»¥Ú£ & HTTP_CONTENT_LENGTH )) { 475 cÚ -> »¥Ú£ . Œªsãr_’codšg = HTTP_TRANSFER_ENCODING_CHUNKED ; 478 ià( bËn > 0) { 479 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , b¡¬t , bËn + 1); 480 `jobli¡_­³nd ( ¤v , cÚ ); 484 cÚ -> fže_¡¬‹d = 1; 487 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , hùx -> »¥Ú£ -> ±r , hùx->»¥Ú£-> u£d ); 488 `jobli¡_­³nd ( ¤v , cÚ ); 492 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ddss", cÚ -> fd , hùx ->fd, `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e ), b -> ±r ); 496  FDEVENT_HANDLED_NOT_FINISHED ; 497 } } 499  hªdËr_t $cgi_cÚÃùiÚ_þo£ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 500  ¡©us ; 501 pid_t pid ; 502 ¶ugš_d©a * p ; 503 cÚÃùiÚ * cÚ ; 505 ià( NULL =ð hùx è HANDLER_GO_ON ; 507 p = hùx -> ¶ugš_d©a ; 508 cÚ = hùx -> »mÙe_cÚn ; 510 ià( cÚ -> mode !ð p -> id è HANDLER_GO_ON ; 512 #iâdeà __WIN32 520 ià( hùx -> fd != -1) { 522 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 523 `fdev’t_uÄegi¡” ( ¤v -> ev , hùx -> fd ); 525 ià( `þo£ ( hùx -> fd )) { 526 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", "cg˜þo£ fažed ", hùx -> fd , `¡»¼Ü ( ”ºo )); 529 hùx -> fd = -1; 530 hùx -> fde_ndx = -1; 533 pid = hùx ->pid; 535 cÚ -> ¶ugš_ùx [ p -> id ] = NULL ; 538 `cgi_hªdËr_ùx_ä“ ( hùx ); 541 ià( pid ) { 543  `wa™pid ( pid , & ¡©us , WNOHANG )) { 547 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "(debugèchžd i¢'ˆdÚy‘,…id:", pid ); 552 ià( ”ºo =ð EINTR ) ; 564 ià( ”ºo =ð ECHILD è HANDLER_GO_ON ; 566 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "wa™pid fažed: ", `¡»¼Ü ( ”ºo )); 567  HANDLER_ERROR ; 570 ià(0 =ð cÚ -> fže_¡¬‹d ) { 571 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 572 cÚ -> h‰p_¡©us = 500; 573 cÚ -> mode = DIRECT ; 576 ià( `WIFEXITED ( ¡©us )) { 578 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "(debugècg˜ex™ed fše,…id:", pid ); 580 pid = 0; 582  HANDLER_GO_ON ; 584 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "cg˜d›d,…id:", pid ); 585 pid = 0; 586  HANDLER_GO_ON ; 591 `kžl ( pid , SIGTERM ); 594 `cgi_pid_add ( ¤v , p , pid ); 597  HANDLER_GO_ON ; 598 } } 600  hªdËr_t $cgi_cÚÃùiÚ_þo£_ÿÎback ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 601 ¶ugš_d©a * p = p_d ; 603  `cgi_cÚÃùiÚ_þo£ ( ¤v , cÚ -> ¶ugš_ùx [ p -> id ]); 604 } } 607  hªdËr_t $cgi_hªdË_fdev’t (* s , * ùx ,  »v’ts ) { 608 £rv” * ¤v = (£rv” *) s ; 609 hªdËr_ùx * hùx = ùx ; 610 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 612 `jobli¡_­³nd ( ¤v , cÚ ); 614 ià( hùx -> fd == -1) { 615 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ddss", cÚ -> fd , hùx ->fd, `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e ), "invalid cgi-fd"); 617  HANDLER_ERROR ; 620 ià( »v’ts & FDEVENT_IN ) { 621  `cgi_demux_»¥Ú£ ( ¤v , hùx )) { 622  FDEVENT_HANDLED_NOT_FINISHED : 624  FDEVENT_HANDLED_FINISHED : 628 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ddss", cÚ -> fd , hùx ->fd, `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e ), "finished"); 630 `cgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 633  HANDLER_FINISHED ; 634  FDEVENT_HANDLED_ERROR : 635 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 636 cÚ -> h‰p_¡©us = 500; 637 cÚ -> mode = DIRECT ; 639 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "demuxer failed: "); 644 ià( »v’ts & FDEVENT_OUT ) { 649 ià( »v’ts & FDEVENT_HUP ) { 651 ià( cÚ -> fže_¡¬‹d == 0 && 652 hùx -> »¥Ú£_h—d” -> u£d ) { 653 cÚ -> fže_¡¬‹d = 1; 654 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , hùx -> »¥Ú£_h—d” -> ±r , hùx->»¥Ú£_h—d”-> u£d ); 655 `jobli¡_­³nd ( ¤v , cÚ ); 658 ià( cÚ -> fže_fšished == 0) { 659 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , NULL , 0); 660 `jobli¡_­³nd ( ¤v , cÚ ); 663 cÚ -> fže_fšished = 1; 665 ià( `chunkqueue_is_em±y ( cÚ -> wr™e_queue )) { 667 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_RESPONSE_END ); 674 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sddd", "gÙ HUP from cgi", cÚ -> fd , hùx ->fd, »v’ts ); 678 `cgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 679 } ià( »v’ts & FDEVENT_ERR ) { 680 cÚ -> fže_fšished = 1; 683 `cgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 685 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "cgi-FDEVENT_ERR"); 687  HANDLER_ERROR ; 690  HANDLER_FINISHED ; 691 } } 694  $cgi_’v_add ( ch¬_¬¿y * ’v , cÚ¡ * key , size_t key_Ën , cÚ¡ * v® , size_ˆ v®_Ën ) { 695 * d¡ ; 697 ià(! key || ! v® )  -1; 699 d¡ = `m®loc ( key_Ën + v®_Ën + 3); 700 `memýy ( d¡ , key , key_Ën ); 701 d¡ [ key_Ën ] = '='; 703 `memýy ( d¡ + key_Ën + 1, v® , v®_Ën + 1); 705 ià( ’v -> size == 0) { 706 ’v -> size = 16; 707 ’v -> ±r = `m®loc Ónv-> size * (*env->ptr)); 708 } ià( ’v -> size =ð’v-> u£d ) { 709 ’v -> size += 16; 710 ’v -> ±r = `»®loc Ónv->±r,ƒnv-> size * (*env->ptr)); 713 ’v -> ±r [’v-> u£d ++] = d¡ ; 716 } } 718  $cgi_ü—‹_’v ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * cgi_hªdËr ) { 719 pid_t pid ; 721 #ifdeà HAVE_IPV6 722  b2 [ INET6_ADDRSTRLEN + 1]; 725  to_cgi_fds [2]; 726  äom_cgi_fds [2]; 727  ¡© ¡ ; 729 #iâdeà __WIN32 731 ià( cgi_hªdËr -> u£d > 1) { 733 ià(-1 =ð( `¡© ( cgi_hªdËr -> ±r , & ¡ ))) { 734 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", 735 "¡© fÜ cgi-hªdËr", cgi_hªdËr , 736 "çžed:", `¡»¼Ü ( ”ºo )); 741 ià( `pe ( to_cgi_fds )) { 742 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "pçžed:", `¡»¼Ü ( ”ºo )); 746 ià( `pe ( äom_cgi_fds )) { 747 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "pçžed:", `¡»¼Ü ( ”ºo )); 752  pid = `fÜk ()) { 755 ** ¬gs ; 756  ¬gc ; 757  i = 0; 758  buf [32]; 759 size_t n ; 760 ch¬_¬¿y ’v ; 761 * c ; 762 cÚ¡ * s ; 763 £rv”_sock‘ * ¤v_sock = cÚ -> ¤v_sock‘ ; 766 `þo£ ( STDOUT_FILENO ); 767 `dup2 ( äom_cgi_fds [1], STDOUT_FILENO ); 768 `þo£ ( äom_cgi_fds [1]); 770 `þo£ ( äom_cgi_fds [0]); 773 `þo£ ( STDIN_FILENO ); 774 `dup2 ( to_cgi_fds [0], STDIN_FILENO ); 775 `þo£ ( to_cgi_fds [0]); 777 `þo£ ( to_cgi_fds [1]); 784 ià( ¤v -> ”rÜlog_mode =ð ERRORLOG_FILE ) { 785 `þo£ ( STDERR_FILENO ); 786 `dup2 ( ¤v -> ”rÜlog_fd , STDERR_FILENO ); 790 ’v . ±r = NULL ; 791 ’v . size = 0; 792 ’v . u£d = 0; 794 `cgi_’v_add (& ’v , `CONST_STR_LEN ("SERVER_SOFTWARE"), CONST_STR_LEN( PACKAGE_NAME "/" PACKAGE_VERSION )); 796 ià(! `bufãr_is_em±y ( cÚ -> £rv”_Çme )) { 797 `cgi_’v_add (& ’v , `CONST_STR_LEN ("SERVER_NAME"), `CONST_BUF_LEN ( cÚ -> £rv”_Çme )); 799 #ifdeà HAVE_IPV6 800 s = `š‘_ÁÝ ( ¤v_sock -> addr . ¶aš . §_çmžy , 801 ¤v_sock -> addr . ¶aš . §_çmžy =ð AF_INET6 ? 802 (cÚ¡ *è&( ¤v_sock -> addr . v6 . sš6_addr ) : 803 (cÚ¡ *è&( ¤v_sock -> addr . v4 . sš_addr ), 804 b2 , (b2)-1); 806 s = `š‘_Áß ( ¤v_sock -> addr . v4 . sš_addr ); 808 `cgi_’v_add (& ’v , `CONST_STR_LEN ("SERVER_NAME"), s , `¡¾’ (s)); 810 `cgi_’v_add (& ’v , `CONST_STR_LEN ("GATEWAY_INTERFACE"), CONST_STR_LEN("CGI/1.1")); 812 s = `g‘_h‰p_v”siÚ_Çme ( cÚ -> »que¡ . h‰p_v”siÚ ); 814 `cgi_’v_add (& ’v , `CONST_STR_LEN ("SERVER_PROTOCOL"), s , `¡¾’ (s)); 816 `LI_Éo¡r ( buf , 817 #ifdeà HAVE_IPV6 818 `Áohs ( ¤v_sock -> addr . ¶aš . §_çmžy =ð AF_INET6 ? srv_sock->addr. v6 . sš6_pÜt : srv_sock->addr. v4 . sš_pÜt ) 820 `Áohs ( ¤v_sock -> addr . v4 . sš_pÜt ) 823 `cgi_’v_add (& ’v , `CONST_STR_LEN ("SERVER_PORT"), buf , `¡¾’ (buf)); 825 #ifdeà HAVE_IPV6 826 s = `š‘_ÁÝ ( ¤v_sock -> addr . ¶aš . §_çmžy , 827 ¤v_sock -> addr . ¶aš . §_çmžy =ð AF_INET6 ? 828 (cÚ¡ *è&( ¤v_sock -> addr . v6 . sš6_addr ) : 829 (cÚ¡ *è&( ¤v_sock -> addr . v4 . sš_addr ), 830 b2 , (b2)-1); 832 s = `š‘_Áß ( ¤v_sock -> addr . v4 . sš_addr ); 834 `cgi_’v_add (& ’v , `CONST_STR_LEN ("SERVER_ADDR"), s , `¡¾’ (s)); 836 s = `g‘_h‰p_m‘hod_Çme ( cÚ -> »que¡ . h‰p_m‘hod ); 837 `cgi_’v_add (& ’v , `CONST_STR_LEN ("REQUEST_METHOD"), s , `¡¾’ (s)); 839 ià(! `bufãr_is_em±y ( cÚ -> »que¡ . ·thšfo )) { 840 `cgi_’v_add (& ’v , `CONST_STR_LEN ("PATH_INFO"), `CONST_BUF_LEN ( cÚ -> »que¡ . ·thšfo )); 842 `cgi_’v_add (& ’v , `CONST_STR_LEN ("REDIRECT_STATUS"), CONST_STR_LEN("200")); 843 ià(! `bufãr_is_em±y ( cÚ -> uri . qu”y )) { 844 `cgi_’v_add (& ’v , `CONST_STR_LEN ("QUERY_STRING"), `CONST_BUF_LEN ( cÚ -> uri . qu”y )); 846 ià(! `bufãr_is_em±y ( cÚ -> »que¡ . Üig_uri )) { 847 `cgi_’v_add (& ’v , `CONST_STR_LEN ("REQUEST_URI"), `CONST_BUF_LEN ( cÚ -> »que¡ . Üig_uri )); 851 #ifdeà HAVE_IPV6 852 s = `š‘_ÁÝ ( cÚ -> d¡_addr . ¶aš . §_çmžy , 853 cÚ -> d¡_addr . ¶aš . §_çmžy =ð AF_INET6 ? 854 (cÚ¡ *è&( cÚ -> d¡_addr . v6 . sš6_addr ) : 855 (cÚ¡ *è&( cÚ -> d¡_addr . v4 . sš_addr ), 856 b2 , (b2)-1); 858 s = `š‘_Áß ( cÚ -> d¡_addr . v4 . sš_addr ); 860 `cgi_’v_add (& ’v , `CONST_STR_LEN ("REMOTE_ADDR"), s , `¡¾’ (s)); 862 `LI_Éo¡r ( buf , 863 #ifdeà HAVE_IPV6 864 `Áohs ( cÚ -> d¡_addr . ¶aš . §_çmžy =ð AF_INET6 ? cÚ->d¡_addr. v6 . sš6_pÜt : cÚ->d¡_addr. v4 . sš_pÜt ) 866 `Áohs ( cÚ -> d¡_addr . v4 . sš_pÜt ) 869 `cgi_’v_add (& ’v , `CONST_STR_LEN ("REMOTE_PORT"), buf , `¡¾’ (buf)); 871 ià(! `bufãr_is_em±y ( cÚ -> authed_u£r )) { 872 `cgi_’v_add (& ’v , `CONST_STR_LEN ("REMOTE_USER"), 873 `CONST_BUF_LEN ( cÚ -> authed_u£r )); 876 #ifdeà USE_OPENSSL 877 ià( ¤v_sock -> is_s¦ ) { 878 `cgi_’v_add (& ’v , `CONST_STR_LEN ("HTTPS"), CONST_STR_LEN("on")); 883 `LI_Éo¡r ( buf , cÚ -> »que¡ . cÚ‹Á_Ëngth ); 884 `cgi_’v_add (& ’v , `CONST_STR_LEN ("CONTENT_LENGTH"), buf , `¡¾’ (buf)); 885 `cgi_’v_add (& ’v , `CONST_STR_LEN ("SCRIPT_FILENAME"), `CONST_BUF_LEN ( cÚ -> physiÿl . ·th )); 886 `cgi_’v_add (& ’v , `CONST_STR_LEN ("SCRIPT_NAME"), `CONST_BUF_LEN ( cÚ -> uri . ·th )); 887 `cgi_’v_add (& ’v , `CONST_STR_LEN ("DOCUMENT_ROOT"), `CONST_BUF_LEN ( cÚ -> physiÿl . doc_roÙ )); 890 ià( NULL !ð( s = `g‘’v ("LD_PRELOAD"))) { 891 `cgi_’v_add (& ’v , `CONST_STR_LEN ("LD_PRELOAD"), s , `¡¾’ (s)); 894 ià( NULL !ð( s = `g‘’v ("LD_LIBRARY_PATH"))) { 895 `cgi_’v_add (& ’v , `CONST_STR_LEN ("LD_LIBRARY_PATH"), s , `¡¾’ (s)); 897 #ifdeà __CYGWIN__ 899 ià( NULL !ð( s = `g‘’v ("SYSTEMROOT"))) { 900 `cgi_’v_add (& ’v , `CONST_STR_LEN ("SYSTEMROOT"), s , `¡¾’ (s)); 904  n = 0;‚ < cÚ -> »que¡ . h—d”s -> u£d ;‚++) { 905 d©a_¡ršg * ds ; 907 ds = ( d©a_¡ršg *) cÚ -> »que¡ . h—d”s -> d©a [ n ]; 909 ià( ds -> v®ue -> u£d && ds-> key ->used) { 910 size_t j ; 912 `bufãr_»£t ( p -> tmp_buf ); 914 ià(0 !ð `¡rÿ£cmp ( ds -> key -> ±r , "CONTENT-TYPE")) { 915 `bufãr_cÝy_¡ršg ( p -> tmp_buf , "HTTP_"); 916 p -> tmp_buf -> u£d --; 919 `bufãr_´•¬e_­³nd ( p -> tmp_buf , ds -> key -> u£d + 2); 921  j = 0; j < ds -> key -> u£d - 1; j++) { 922  ü = '_'; 923 ià( `light_i§Íha ( ds -> key -> ±r [ j ])) { 925 ü = ds -> key -> ±r [ j ] & ~32; 926 } ià( `light_isdig™ ( ds -> key -> ±r [ j ])) { 928 ü = ds -> key -> ±r [ j ]; 930 p -> tmp_buf -> ±r [p->tmp_buf-> u£d ++] = ü ; 932 p -> tmp_buf -> ±r [p->tmp_buf-> u£d ++] = '\0'; 934 `cgi_’v_add (& ’v , `CONST_BUF_LEN ( p -> tmp_buf ), CONST_BUF_LEN( ds -> v®ue )); 938  n = 0;‚ < cÚ -> ’vœÚm’t -> u£d ;‚++) { 939 d©a_¡ršg * ds ; 941 ds = ( d©a_¡ršg *) cÚ -> ’vœÚm’t -> d©a [ n ]; 943 ià( ds -> v®ue -> u£d && ds-> key ->used) { 944 size_t j ; 946 `bufãr_»£t ( p -> tmp_buf ); 948 `bufãr_´•¬e_­³nd ( p -> tmp_buf , ds -> key -> u£d + 2); 950  j = 0; j < ds -> key -> u£d - 1; j++) { 951 p -> tmp_buf -> ±r [p->tmp_buf-> u£d ++] = 952 `i§Íha (() ds -> key -> ±r [ j ]) ? 953 `touµ” (() ds -> key -> ±r [ j ]) : '_'; 955 p -> tmp_buf -> ±r [p->tmp_buf-> u£d ++] = '\0'; 957 `cgi_’v_add (& ’v , `CONST_BUF_LEN ( p -> tmp_buf ), CONST_BUF_LEN( ds -> v®ue )); 961 ià( ’v . size =ð’v. u£d ) { 962 ’v . size += 16; 963 ’v . ±r = `»®loc Ónv.±r,ƒnv. size * (*env.ptr)); 966 ’v . ±r [’v. u£d ] = NULL ; 969 ¬gc = 3; 970 ¬gs = `m®loc ((*¬gsè* ¬gc ); 971 i = 0; 973 ià( cgi_hªdËr -> u£d > 1) { 974 ¬gs [ i ++] = cgi_hªdËr -> ±r ; 976 ¬gs [ i ++] = cÚ -> physiÿl . ·th -> ±r ; 977 ¬gs [ i ++] = NULL ; 980 ià( NULL !ð( c = `¡¼chr ( cÚ -> physiÿl . ·th -> ±r , '/'))) { 981 * c = '\0'; 984 ià(-1 =ð `chdœ ( cÚ -> physiÿl . ·th -> ±r )) { 985 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssb", "chdœ fažed:", `¡»¼Ü ( ”ºo ), cÚ -> physiÿl . ·th ); 987 * c = '/'; 991  i = 3; i < 256; i++) { 992 ià( i !ð ¤v -> ”rÜlog_fd è `þo£ (i); 996 `execve ( ¬gs [0],‡rgs, ’v . ±r ); 998 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", "CGI fažed:", `¡»¼Ü ( ”ºo ), ¬gs [0]); 1001 `SEGFAULT (); 1006 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "fÜk fažed:", `¡»¼Ü ( ”ºo )); 1010 hªdËr_ùx * hùx ; 1013 `þo£ ( äom_cgi_fds [1]); 1014 `þo£ ( to_cgi_fds [0]); 1016 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth ) { 1017 chunkqueue * cq = cÚ -> »que¡_cÚ‹Á_queue ; 1018 chunk * c ; 1020 `as£¹ ( `chunkqueue_Ëngth ( cq è=ð( off_t ) cÚ -> »que¡ . cÚ‹Á_Ëngth ); 1023  c = cq -> fœ¡ ; c; c = cq->first) { 1024  r = 0; 1027  c -> ty³ ) { 1028  FILE_CHUNK : 1030 ià( c -> fže . mm­ . ¡¬t =ð MAP_FAILED ) { 1031 ià(-1 =ð c -> fže . fd && 1032 -1 =ð( c -> fže . fd = `Ý’ (c->fže. Çme -> ±r , O_RDONLY ))) { 1033 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "Ý’ fažed: ", `¡»¼Ü ( ”ºo )); 1035 `þo£ ( äom_cgi_fds [0]); 1036 `þo£ ( to_cgi_fds [1]); 1040 c -> fže . mm­ . Ëngth = c->file.length; 1042 ià( MAP_FAILED =ð( c -> fže . mm­ . ¡¬t = `mm­ (0, c->fže.mm­. Ëngth , PROT_READ , MAP_SHARED , c->fže. fd , 0))) { 1043 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbd", "mmap failed: ", 1044 `¡»¼Ü ( ”ºo ), c -> fže . Çme , c->fže. fd ); 1046 `þo£ ( äom_cgi_fds [0]); 1047 `þo£ ( to_cgi_fds [1]); 1051 `þo£ ( c -> fže . fd ); 1052 c -> fže . fd = -1; 1057 ià(( r = `wr™e ( to_cgi_fds [1], c -> fže . mm­ . ¡¬t + c-> off£t , c->fže. Ëngth - c->offset)) < 0) { 1058  ”ºo ) { 1059  ENOSPC : 1060 cÚ -> h‰p_¡©us = 507; 1064 cÚ -> h‰p_¡©us = 403; 1069  MEM_CHUNK : 1070 ià(( r = `wr™e ( to_cgi_fds [1], c -> mem -> ±r + c-> off£t , c->mem-> u£d - c->offset - 1)) < 0) { 1071  ”ºo ) { 1072  ENOSPC : 1073 cÚ -> h‰p_¡©us = 507; 1077 cÚ -> h‰p_¡©us = 403; 1082  UNUSED_CHUNK : 1086 ià( r > 0) { 1087 c -> off£t +ð r ; 1088 cq -> by‹s_out +ð r ; 1092 `chunkqueue_»move_fšished_chunks ( cq ); 1096 `þo£ ( to_cgi_fds [1]); 1099 cÚ -> mode = p -> id ; 1100 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 1102 hùx = `cgi_hªdËr_ùx_š™ (); 1104 hùx -> »mÙe_cÚn = cÚ ; 1105 hùx -> ¶ugš_d©a = p ; 1106 hùx -> pid =…id; 1107 hùx -> fd = äom_cgi_fds [0]; 1108 hùx -> fde_ndx = -1; 1110 cÚ -> ¶ugš_ùx [ p -> id ] = hùx ; 1112 `fdev’t_»gi¡” ( ¤v -> ev , hùx -> fd , cgi_hªdË_fdev’t , hctx); 1113 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_IN ); 1115 ià(-1 =ð `fdev’t_fúŽ_£t ( ¤v -> ev , hùx -> fd )) { 1116 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "fúŽ fažed: ", `¡»¼Ü ( ”ºo )); 1118 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 1119 `fdev’t_uÄegi¡” ( ¤v -> ev , hùx -> fd ); 1121 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "cg˜þo£:", hùx -> fd ); 1123 `þo£ ( hùx -> fd ); 1125 `cgi_hªdËr_ùx_ä“ ( hùx ); 1127 cÚ -> ¶ugš_ùx [ p -> id ] = NULL ; 1140 } } 1142  #PATCH ( x ) \ 1143 p -> cÚf . x = s ->x; ) 1144  $mod_cgi_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 1145 size_t i , j ; 1146 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 1148 `PATCH ( cgi ); 1151  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 1152 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 1153 s = p -> cÚfig_¡Üage [ i ]; 1156 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 1159  j = 0; j < dc -> v®ue -> u£d ; j++) { 1160 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 1162 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("cgi.assign"))) { 1163 `PATCH ( cgi ); 1169 } } 1170 #undeà PATCH 1172 $URIHANDLER_FUNC ( cgi_is_hªdËd ) { 1173 size_t k , s_Ën ; 1174 ¶ugš_d©a * p = p_d ; 1175 bufãr * â = cÚ -> physiÿl . ·th ; 1177 ià( â -> u£d =ð0è HANDLER_GO_ON ; 1179 `mod_cgi_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 1181 s_Ën = â -> u£d - 1; 1183  k = 0; k < p -> cÚf . cgi -> u£d ; k++) { 1184 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . cgi -> d©a [ k ]; 1185 size_t ù_Ën = ds -> key -> u£d - 1; 1187 ià( ds -> key -> u£d == 0) ; 1188 ià( s_Ën < ù_Ën ) ; 1190 ià(0 =ð `¡ºcmp ( â -> ±r + s_Ën - ù_Ën , ds -> key ->ptr, ct_len)) { 1191 ià( `cgi_ü—‹_’v ( ¤v , cÚ , p , ds -> v®ue )) { 1192 cÚ -> h‰p_¡©us = 500; 1194 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 1195  HANDLER_FINISHED ; 1202  HANDLER_GO_ON ; 1203 } } 1205 $TRIGGER_FUNC ( cgi_Œigg” ) { 1206 ¶ugš_d©a * p = p_d ; 1207 size_t ndx ; 1209 #iâdeà __WIN32 1211  ndx = 0;‚dx < p -> cgi_pid . u£d ;‚dx++) { 1212  ¡©us ; 1214  `wa™pid ( p -> cgi_pid . ±r [ ndx ], & ¡©us , WNOHANG )) { 1218 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "(debugèchžd i¢'ˆdÚy‘,…id:", p -> cgi_pid . ±r [ ndx ]); 1222 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "wa™pid fažed: ", `¡»¼Ü ( ”ºo )); 1224  HANDLER_ERROR ; 1227 ià( `WIFEXITED ( ¡©us )) { 1229 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "(debugècg˜ex™ed fše,…id:", p -> cgi_pid . ±r [ ndx ]); 1231 } ià( `WIFSIGNALED ( ¡©us )) { 1234 ià( `WTERMSIG ( ¡©us è!ð SIGTERM ) { 1235 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "þ—nšg u°CGI:…roûs d›d w™h sigÇl", `WTERMSIG ( ¡©us )); 1238 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "cleaning up CGI:ƒnded unexpectedly"); 1241 `cgi_pid_d– ( ¤v , p ,…-> cgi_pid . ±r [ ndx ]); 1246 ndx --; 1250  HANDLER_GO_ON ; 1251 } } 1253 $SUBREQUEST_FUNC ( mod_cgi_hªdË_sub»que¡ ) { 1254  ¡©us ; 1255 ¶ugš_d©a * p = p_d ; 1256 hªdËr_ùx * hùx = cÚ -> ¶ugš_ùx [ p -> id ]; 1258 ià( cÚ -> mode !ð p -> id è HANDLER_GO_ON ; 1259 ià( NULL =ð hùx è HANDLER_GO_ON ; 1262 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdd", "sub»que¡,…id =", hùx , hùx-> pid ); 1264 ià( hùx -> pid =ð0è HANDLER_FINISHED ; 1265 #iâdeà __WIN32 1266  `wa™pid ( hùx -> pid , & ¡©us , WNOHANG )) { 1270 ià( cÚ -> fže_¡¬‹d è HANDLER_FINISHED ; 1272  HANDLER_WAIT_FOR_EVENT ; 1274 ià( ”ºo =ð EINTR è HANDLER_WAIT_FOR_EVENT ; 1276 ià( ”ºo =ð ECHILD && cÚ -> fže_¡¬‹d == 0) { 1280  HANDLER_WAIT_FOR_EVENT ; 1283 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "wa™pid fažed: ", `¡»¼Ü ( ”ºo )); 1284 cÚ -> mode = DIRECT ; 1285 cÚ -> h‰p_¡©us = 500; 1287 hùx -> pid = 0; 1289 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 1290 `fdev’t_uÄegi¡” ( ¤v -> ev , hùx -> fd ); 1292 ià( `þo£ ( hùx -> fd )) { 1293 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", "cg˜þo£ fažed ", hùx -> fd , `¡»¼Ü ( ”ºo )); 1296 `cgi_hªdËr_ùx_ä“ ( hùx ); 1298 cÚ -> ¶ugš_ùx [ p -> id ] = NULL ; 1300  HANDLER_FINISHED ; 1307 ià(! cÚ -> fže_¡¬‹d è HANDLER_WAIT_FOR_EVENT ; 1309 ià( `WIFEXITED ( ¡©us )) { 1312 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "cgi died ?"); 1314 cÚ -> mode = DIRECT ; 1315 cÚ -> h‰p_¡©us = 500; 1319 hùx -> pid = 0; 1321 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 1322 `fdev’t_uÄegi¡” ( ¤v -> ev , hùx -> fd ); 1324 ià( `þo£ ( hùx -> fd )) { 1325 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", "cg˜þo£ fažed ", hùx -> fd , `¡»¼Ü ( ”ºo )); 1328 `cgi_hªdËr_ùx_ä“ ( hùx ); 1330 cÚ -> ¶ugš_ùx [ p -> id ] = NULL ; 1331  HANDLER_FINISHED ; 1334  HANDLER_ERROR ; 1336 } } 1339  $mod_cgi_¶ugš_š™ ( ¶ugš * p ) { 1340 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 1341 p -> Çme = `bufãr_š™_¡ršg ("cgi"); 1343 p -> cÚÃùiÚ_»£t = cgi_cÚÃùiÚ_þo£_ÿÎback ; 1344 p -> hªdË_sub»que¡_¡¬t = cgi_is_hªdËd ; 1345 p -> hªdË_sub»que¡ = mod_cgi_hªdË_sub»que¡ ; 1347 p -> hªdË_fdev’t = cgi_hªdË_fdev’t ; 1349 p -> hªdË_Œigg” = cgi_Œigg” ; 1350 p -> š™ = mod_cgi_š™ ; 1351 p -> þ—nup = mod_cgi_ä“ ; 1352 p -> £t_deçuÉs = mod_ç¡cgi_£t_deçuÉs ; 1354 p -> d©a = NULL ; 1357 } } @src/mod_cml.c 1  ~ 2  ~ 4  ~<¡dlib.h > 5  ~<¡ršg.h > 6  ~<”ºo.h > 7  ~ 8  ~<¡dio.h > 10  ~"bufãr.h " 11  ~"£rv”.h " 12  ~"log.h " 13  ~"¶ugš.h " 14  ~"»¥Ú£.h " 16  ~"¡»am.h " 18  ~"mod_cml.h " 21 $INIT_FUNC ( mod_cml_š™ ) { 22 ¶ugš_d©a * p ; 24 p = `ÿÎoc (1, (*p)); 26 p -> ba£dœ = `bufãr_š™ (); 27 p -> ba£u¾ = `bufãr_š™ (); 28 p -> Œigg”_hªdËr = `bufãr_š™ (); 30  p ; 31 } } 34 $FREE_FUNC ( mod_cml_ä“ ) { 35 ¶ugš_d©a * p = p_d ; 37 `UNUSED ( ¤v ); 39 ià(! p è HANDLER_GO_ON ; 41 ià( p -> cÚfig_¡Üage ) { 42 size_t i ; 43  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 44 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 46 `bufãr_ä“ ( s -> ext ); 48 `bufãr_ä“ ( s -> mc_Çme¥aû ); 49 `bufãr_ä“ ( s -> pow”_magÃt ); 50 `¬¿y_ä“ ( s -> mc_ho¡s ); 52 #ià `defšed ( HAVE_MEMCACHE_H ) 53 ià( s -> mc è `mc_ä“ (s->mc); 56 `ä“ ( s ); 58 `ä“ ( p -> cÚfig_¡Üage ); 61 `bufãr_ä“ ( p -> Œigg”_hªdËr ); 62 `bufãr_ä“ ( p -> ba£dœ ); 63 `bufãr_ä“ ( p -> ba£u¾ ); 65 `ä“ ( p ); 67  HANDLER_GO_ON ; 68 } } 72 $SETDEFAULTS_FUNC ( mod_cml_£t_deçuÉs ) { 73 ¶ugš_d©a * p = p_d ; 74 size_t i = 0; 76 cÚfig_v®ues_t cv [] = { 77 { "cml.ex‹nsiÚ", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 78 { "cml.memÿche-ho¡s", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 79 { "cml.memÿche-Çme¥aû", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 80 { "cml.pow”-magÃt", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 81 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 84 ià(! p è HANDLER_ERROR ; 86 p -> cÚfig_¡Üage = `m®loc ( ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 88  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 89 ¶ugš_cÚfig * s ; 91 s = `m®loc (( ¶ugš_cÚfig )); 92 s -> ext = `bufãr_š™ (); 93 s -> mc_ho¡s = `¬¿y_š™ (); 94 s -> mc_Çme¥aû = `bufãr_š™ (); 95 s -> pow”_magÃt = `bufãr_š™ (); 96 #ià `defšed ( HAVE_MEMCACHE_H ) 97 s -> mc = NULL ; 100 cv [0]. de¡š©iÚ = s -> ext ; 101 cv [1]. de¡š©iÚ = s -> mc_ho¡s ; 102 cv [2]. de¡š©iÚ = s -> mc_Çme¥aû ; 103 cv [3]. de¡š©iÚ = s -> pow”_magÃt ; 105 p -> cÚfig_¡Üage [ i ] = s ; 107 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 108  HANDLER_ERROR ; 111 ià( s -> mc_ho¡s -> u£d ) { 112 #ià `defšed ( HAVE_MEMCACHE_H ) 113 size_t k ; 114 s -> mc = `mc_Ãw (); 116  k = 0; k < s -> mc_ho¡s -> u£d ; k++) { 117 d©a_¡ršg * ds = (d©a_¡ršg *) s -> mc_ho¡s -> d©a [ k ]; 119 ià(0 !ð `mc_£rv”_add4 ( s -> mc , ds -> v®ue -> ±r )) { 120 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 122 ds -> v®ue ); 124  HANDLER_ERROR ; 128 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 130  HANDLER_ERROR ; 135  HANDLER_GO_ON ; 136 } } 138  #PATCH ( x ) \ 139 p -> cÚf . x = s ->x; ) 140  $mod_cml_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 141 size_t i , j ; 142 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 144 `PATCH ( ext ); 145 #ià `defšed ( HAVE_MEMCACHE_H ) 146 `PATCH ( mc ); 148 `PATCH ( mc_Çme¥aû ); 149 `PATCH ( pow”_magÃt ); 152  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 153 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 154 s = p -> cÚfig_¡Üage [ i ]; 157 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 160  j = 0; j < dc -> v®ue -> u£d ; j++) { 161 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 163 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("cml.extension"))) { 164 `PATCH ( ext ); 165 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("cml.memcache-hosts"))) { 166 #ià `defšed ( HAVE_MEMCACHE_H ) 167 `PATCH ( mc ); 169 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("cml.memcache-namespace"))) { 170 `PATCH ( mc_Çme¥aû ); 171 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("cml.power-magnet"))) { 172 `PATCH ( pow”_magÃt ); 178 } } 179 #undeà PATCH 181  $ÿche_ÿÎ_lua ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * cml_fže ) { 182 bufãr * b ; 183 * c ; 186 b = p -> ba£u¾ ; 187 `bufãr_cÝy_¡ršg_bufãr ( b , cÚ -> uri . ·th ); 188  c = b -> ±r + b-> u£d - 1; c > b->ptr && *c != '/'; c--); 190 ià(* c == '/') { 191 b -> u£d = c - b-> ±r + 2; 192 *( c +1) = '\0'; 195 b = p -> ba£dœ ; 196 `bufãr_cÝy_¡ršg_bufãr ( b , cÚ -> physiÿl . ·th ); 197  c = b -> ±r + b-> u£d - 1; c > b->ptr && *c != '/'; c--); 199 ià(* c == '/') { 200 b -> u£d = c - b-> ±r + 2; 201 *( c +1) = '\0'; 209  `ÿche_·r£_lua ( ¤v , cÚ , p , cml_fže ); 210 } } 212 $URIHANDLER_FUNC ( mod_cml_pow”_magÃt ) { 213 ¶ugš_d©a * p = p_d ; 215 `mod_cml_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 217 `bufãr_»£t ( p -> ba£dœ ); 218 `bufãr_»£t ( p -> ba£u¾ ); 219 `bufãr_»£t ( p -> Œigg”_hªdËr ); 221 ià( `bufãr_is_em±y ( p -> cÚf . pow”_magÃt )è HANDLER_GO_ON ; 240  `ÿche_ÿÎ_lua ( ¤v , cÚ , p ,…-> cÚf . pow”_magÃt )) { 243 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 244 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "cache-error"); 246 cÚ -> h‰p_¡©us = 500; 247  HANDLER_COMEBACK ; 249 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 250 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "cache-hit"); 253 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 254  HANDLER_FINISHED ; 257  HANDLER_GO_ON ; 259 cÚ -> h‰p_¡©us = 500; 260  HANDLER_COMEBACK ; 262 } } 264 $URIHANDLER_FUNC ( mod_cml_is_hªdËd ) { 265 ¶ugš_d©a * p = p_d ; 267 ià( `bufãr_is_em±y ( cÚ -> physiÿl . ·th )è HANDLER_ERROR ; 269 `mod_cml_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 271 `bufãr_»£t ( p -> ba£dœ ); 272 `bufãr_»£t ( p -> ba£u¾ ); 273 `bufãr_»£t ( p -> Œigg”_hªdËr ); 275 ià( `bufãr_is_em±y ( p -> cÚf . ext )è HANDLER_GO_ON ; 277 ià(! `bufãr_is_equ®_right_Ën ( cÚ -> physiÿl . ·th , p -> cÚf . ext ,…->cÚf.ext-> u£d - 1)) { 278  HANDLER_GO_ON ; 281  `ÿche_ÿÎ_lua ( ¤v , cÚ , p , cÚ-> physiÿl . ·th )) { 284 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 285 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "cache-error"); 287 cÚ -> h‰p_¡©us = 500; 288  HANDLER_COMEBACK ; 290 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 291 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "cache-hit"); 294 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 295  HANDLER_FINISHED ; 297 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 298 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "cache-miss"); 301  HANDLER_COMEBACK ; 303 cÚ -> h‰p_¡©us = 500; 304  HANDLER_COMEBACK ; 306 } } 308  $mod_cml_¶ugš_š™ ( ¶ugš * p ) { 309 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 310 p -> Çme = `bufãr_š™_¡ršg ("cache"); 312 p -> š™ = mod_cml_š™ ; 313 p -> þ—nup = mod_cml_ä“ ; 314 p -> £t_deçuÉs = mod_cml_£t_deçuÉs ; 316 p -> hªdË_sub»que¡_¡¬t = mod_cml_is_hªdËd ; 317 p -> hªdË_physiÿl = mod_cml_pow”_magÃt ; 319 p -> d©a = NULL ; 322 } } @src/mod_cml.h 1 #iâdeà _MOD_CACHE_H_ 2  #_MOD_CACHE_H_ ) 4  ~"bufãr.h " 5  ~"£rv”.h " 6  ~"»¥Ú£.h " 8  ~"¡»am.h " 9  ~"¶ugš.h " 11 #ià defšed ( HAVE_MEMCACHE_H ) 12  ~ 15  #¶ugš_d©a mod_ÿche_¶ugš_d©a ) 18 bufãr * mext ; 20 ¬¿y * mmc_ho¡s ; 21 bufãr * mmc_Çme¥aû ; 22 #ià defšed ( HAVE_MEMCACHE_H ) 23  memÿche * mmc ; 25 bufãr * mpow”_magÃt ; 26 } t¶ugš_cÚfig ; 29 mPLUGIN_DATA ; 31 bufãr * mba£dœ ; 32 bufãr * mba£u¾ ; 34 bufãr * mŒigg”_hªdËr ; 36 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 38 ¶ugš_cÚfig mcÚf ; 39 } t¶ugš_d©a ; 41  ÿche_·r£_lua ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * â ); @src/mod_cml_funcs.c 1  ~ 2  ~ 4  ~<¡dlib.h > 5  ~<¡ršg.h > 6  ~<”ºo.h > 7  ~ 8  ~ 9  ~<¡dio.h > 11  ~"bufãr.h " 12  ~"£rv”.h " 13  ~"log.h " 14  ~"¶ugš.h " 15  ~"»¥Ú£.h " 17  ~"mod_cml.h " 18  ~"mod_cml_funcs.h " 20 #ifdeà USE_OPENSSL 21  ~<Ý’s¦/md5.h > 23  ~"md5.h " 26  #HASHLEN 16 ) 27  tHASH [ HASHLEN ]; 28  #HASHHEXLEN 32 ) 29  tHASHHEX [ HASHHEXLEN +1]; 30 #ifdeà USE_OPENSSL 31  #IN cÚ¡ ) 33  #IN ) 35  #OUT ) 37 #ifdeà HAVE_LUA_H 39  $f_üy±o_md5 ( lua_S‹ * L ) { 40 MD5_CTX Md5Ctx ; 41 HASH HA1 ; 42 bufãr b ; 43  hex [33]; 44  n = `lua_g‘tÝ ( L ); 46 b . ±r = hex ; 47 b . u£d = 0; 48 b . size = ( hex ); 50 ià( n != 1) { 51 `lua_push¡ršg ( L , "md5:ƒxpected one‡rgument"); 52 `lua_”rÜ ( L ); 55 ià(! `lua_is¡ršg ( L , 1)) { 56 `lua_push¡ršg ( L , "md5:‡rgument haso be‡ string"); 57 `lua_”rÜ ( L ); 60 `MD5_In™ (& Md5Ctx ); 61 `MD5_Upd©e (& Md5Ctx , (*) `lua_to¡ršg ( L , 1), `lua_¡¾’ (L, 1)); 62 `MD5_Fš® ( HA1 , & Md5Ctx ); 64 `bufãr_cÝy_¡ršg_hex (& b , (*) HA1 , 16); 66 `lua_push¡ršg ( L , b . ±r ); 69 } } 72  $f_fže_mtime ( lua_S‹ * L ) { 73  ¡© ¡ ; 74  n = `lua_g‘tÝ ( L ); 76 ià( n != 1) { 77 `lua_push¡ršg ( L , "file_mtime:ƒxpected one‡rgument"); 78 `lua_”rÜ ( L ); 81 ià(! `lua_is¡ršg ( L , 1)) { 82 `lua_push¡ršg ( L , "file_mtime:‡rgument haso be‡ string"); 83 `lua_”rÜ ( L ); 86 ià(-1 =ð `¡© ( `lua_to¡ršg ( L , 1), & ¡ )) { 87 `lua_pushnž ( L ); 91 `lua_pushnumb” ( L , ¡ . ¡_mtime ); 94 } } 96  $f_dœ_fžes_™” ( lua_S‹ * L ) { 97 DIR * d ; 98  dœ’t * de ; 100 d = `lua_tou£rd©a ( L , `lua_upv®uešdex (1)); 102 ià( NULL =ð( de = `»addœ ( d ))) { 104 `þo£dœ ( d ); 108 `lua_push¡ršg ( L , de -> d_Çme ); 111 } } 113  $f_dœ_fžes ( lua_S‹ * L ) { 114 DIR * d ; 115  n = `lua_g‘tÝ ( L ); 117 ià( n != 1) { 118 `lua_push¡ršg ( L , "dir_files:ƒxpected one‡rgument"); 119 `lua_”rÜ ( L ); 122 ià(! `lua_is¡ršg ( L , 1)) { 123 `lua_push¡ršg ( L , "dir_files:‡rgument haso be‡ string"); 124 `lua_”rÜ ( L ); 128 ià( NULL =ð( d = `Ý’dœ ( `lua_to¡ršg ( L , 1)))) { 129 `lua_pushnž ( L ); 134 `lua_pushlightu£rd©a ( L , d ); 135 `lua_pushcþosu» ( L , f_dœ_fžes_™” , 1); 138 } } 140  $f_fže_i¤eg ( lua_S‹ * L ) { 141  ¡© ¡ ; 142  n = `lua_g‘tÝ ( L ); 144 ià( n != 1) { 145 `lua_push¡ršg ( L , "file_isreg:ƒxpected one‡rgument"); 146 `lua_”rÜ ( L ); 149 ià(! `lua_is¡ršg ( L , 1)) { 150 `lua_push¡ršg ( L , "file_isreg:‡rgument haso be‡ string"); 151 `lua_”rÜ ( L ); 154 ià(-1 =ð `¡© ( `lua_to¡ršg ( L , 1), & ¡ )) { 155 `lua_pushnž ( L ); 159 `lua_pushnumb” ( L , `S_ISREG ( ¡ . ¡_mode )); 162 } } 164  $f_fže_isdœ ( lua_S‹ * L ) { 165  ¡© ¡ ; 166  n = `lua_g‘tÝ ( L ); 168 ià( n != 1) { 169 `lua_push¡ršg ( L , "file_isreg:ƒxpected one‡rgument"); 170 `lua_”rÜ ( L ); 173 ià(! `lua_is¡ršg ( L , 1)) { 174 `lua_push¡ršg ( L , "file_isreg:‡rgument haso be‡ string"); 175 `lua_”rÜ ( L ); 178 ià(-1 =ð `¡© ( `lua_to¡ršg ( L , 1), & ¡ )) { 179 `lua_pushnž ( L ); 183 `lua_pushnumb” ( L , `S_ISDIR ( ¡ . ¡_mode )); 186 } } 190 #ifdeà HAVE_MEMCACHE_H 191  $f_memÿche_exi¡s ( lua_S‹ * L ) { 192 * r ; 193  n = `lua_g‘tÝ ( L ); 194  memÿche * mc ; 196 ià(! `lua_i¦ightu£rd©a ( L , `lua_upv®uešdex (1))) { 197 `lua_push¡ršg ( L , "where is my userdata ?"); 198 `lua_”rÜ ( L ); 201 mc = `lua_tou£rd©a ( L , `lua_upv®uešdex (1)); 203 ià( n != 1) { 204 `lua_push¡ršg ( L , "expected one‡rgument"); 205 `lua_”rÜ ( L ); 208 ià(! `lua_is¡ršg ( L , 1)) { 209 `lua_push¡ršg ( L , "argument haso be‡ string"); 210 `lua_”rÜ ( L ); 213 ià( NULL =ð( r = `mc_ag‘ ( mc , 214 `lua_to¡ršg ( L , 1), `lua_¡¾’ (L, 1)))) { 216 `lua_pushboÞ—n ( L , 0); 220 `ä“ ( r ); 222 `lua_pushboÞ—n ( L , 1); 224 } } 226  $f_memÿche_g‘_¡ršg ( lua_S‹ * L ) { 227 * r ; 228  n = `lua_g‘tÝ ( L ); 230  memÿche * mc ; 232 ià(! `lua_i¦ightu£rd©a ( L , `lua_upv®uešdex (1))) { 233 `lua_push¡ršg ( L , "where is my userdata ?"); 234 `lua_”rÜ ( L ); 237 mc = `lua_tou£rd©a ( L , `lua_upv®uešdex (1)); 240 ià( n != 1) { 241 `lua_push¡ršg ( L , "expected one‡rgument"); 242 `lua_”rÜ ( L ); 245 ià(! `lua_is¡ršg ( L , 1)) { 246 `lua_push¡ršg ( L , "argument haso be‡ string"); 247 `lua_”rÜ ( L ); 250 ià( NULL =ð( r = `mc_ag‘ ( mc , 251 `lua_to¡ršg ( L , 1), `lua_¡¾’ (L, 1)))) { 252 `lua_pushnž ( L ); 256 `lua_push¡ršg ( L , r ); 258 `ä“ ( r ); 261 } } 263  $f_memÿche_g‘_lÚg ( lua_S‹ * L ) { 264 * r ; 265  n = `lua_g‘tÝ ( L ); 267  memÿche * mc ; 269 ià(! `lua_i¦ightu£rd©a ( L , `lua_upv®uešdex (1))) { 270 `lua_push¡ršg ( L , "where is my userdata ?"); 271 `lua_”rÜ ( L ); 274 mc = `lua_tou£rd©a ( L , `lua_upv®uešdex (1)); 277 ià( n != 1) { 278 `lua_push¡ršg ( L , "expected one‡rgument"); 279 `lua_”rÜ ( L ); 282 ià(! `lua_is¡ršg ( L , 1)) { 283 `lua_push¡ršg ( L , "argument haso be‡ string"); 284 `lua_”rÜ ( L ); 287 ià( NULL =ð( r = `mc_ag‘ ( mc , 288 `lua_to¡ršg ( L , 1), `lua_¡¾’ (L, 1)))) { 289 `lua_pushnž ( L ); 293 `lua_pushnumb” ( L , `¡¹Þ ( r , NULL , 10)); 295 `ä“ ( r ); 298 } } @src/mod_cml_funcs.h 1 #iâdeà _MOD_CML_FUNCS_H_ 2  #_MOD_CML_FUNCS_H_ ) 4 #ifdeà HAVE_CONFIG_H 5  ~"cÚfig.h " 8 #ifdeà HAVE_LUA_H 9  ~ 11  f_üy±o_md5 ( lua_S‹ * L ); 12  f_fže_mtime ( lua_S‹ * L ); 13  f_fže_i¤eg ( lua_S‹ * L ); 14  f_fže_isdœ ( lua_S‹ * L ); 15  f_dœ_fžes ( lua_S‹ * L ); 17  f_memÿche_exi¡s ( lua_S‹ * L ); 18  f_memÿche_g‘_¡ršg ( lua_S‹ * L ); 19  f_memÿche_g‘_lÚg ( lua_S‹ * L ); @src/mod_cml_lua.c 1  ~ 2  ~<¡dio.h > 3  ~<”ºo.h > 4  ~ 6  ~"mod_cml.h " 7  ~"mod_cml_funcs.h " 8  ~"log.h " 9  ~"¡»am.h " 11  ~"¡©_ÿche.h " 13 #ifdeà USE_OPENSSL 14  ~<Ý’s¦/md5.h > 16  ~"md5.h " 19  #HASHLEN 16 ) 20  tHASH [ HASHLEN ]; 21  #HASHHEXLEN 32 ) 22  tHASHHEX [ HASHHEXLEN +1]; 23 #ifdeà USE_OPENSSL 24  #IN cÚ¡ ) 26  #IN ) 28  #OUT ) 30 #ifdeà HAVE_LUA_H 32  ~ 33  ~ 34  ~<Ïuxlib.h > 37 ¡»am m¡ ; 38  mdÚe ; 39 } t»adme ; 41 cÚ¡ * $lßd_fže ( lua_S‹ * L , * d©a , size_t * size ) { 42 »adme * rm = d©a ; 44 `UNUSED ( L ); 46 ià( rm -> dÚe )  0; 48 * size = rm -> ¡ .size; 49 rm -> dÚe = 1; 50  rm -> ¡ . ¡¬t ; 51 } } 53  $lua_to_c_g‘_¡ršg ( lua_S‹ * L , cÚ¡ * v¬Çme , bufãr * b ) { 54  cu»Ëm ; 56 `lua_push¡ršg ( L , v¬Çme ); 58 cu»Ëm = `lua_g‘tÝ ( L ); 59 `lua_g‘bË ( L , LUA_GLOBALSINDEX ); 62 ià(! `lua_is¡ršg ( L , cu»Ëm )) { 63 `lua_£‰Ý ( L , cu»Ëm - 1); 68 `bufãr_cÝy_¡ršg ( b , `lua_to¡ršg ( L , cu»Ëm )); 70 `lua_pÝ ( L , 1); 72 `as£¹ ( cu»Ëm - 1 =ð `lua_g‘tÝ ( L )); 75 } } 77  $lua_to_c_is_bË ( lua_S‹ * L , cÚ¡ * v¬Çme ) { 78  cu»Ëm ; 80 `lua_push¡ršg ( L , v¬Çme ); 82 cu»Ëm = `lua_g‘tÝ ( L ); 83 `lua_g‘bË ( L , LUA_GLOBALSINDEX ); 86 ià(! `lua_i¡abË ( L , cu»Ëm )) { 87 `lua_£‰Ý ( L , cu»Ëm - 1); 92 `lua_£‰Ý ( L , cu»Ëm - 1); 94 `as£¹ ( cu»Ëm - 1 =ð `lua_g‘tÝ ( L )); 97 } } 99  $c_to_lua_push ( lua_S‹ * L ,  tbl , cÚ¡ * key , size_t key_Ën , cÚ¡ * v® , size_ˆ v®_Ën ) { 100 `lua_pushl¡ršg ( L , key , key_Ën ); 101 `lua_pushl¡ršg ( L , v® , v®_Ën ); 102 `lua_£‰abË ( L , tbl ); 105 } } 108  $ÿche_expÜt_g‘_·¿ms ( lua_S‹ * L ,  tbl , bufãr * qry¡r ) { 109 size_t is_key = 1; 110 size_t i ; 111 * key = NULL , * v® = NULL; 113 key = qry¡r -> ±r ; 116  i = 0; i < qry¡r -> u£d ; i++) { 117  qry¡r -> ±r [ i ]) { 119 ià( is_key ) { 120 v® = qry¡r -> ±r + i + 1; 122 qry¡r -> ±r [ i ] = '\0'; 124 is_key = 0; 130 ià(! is_key ) { 134 qry¡r -> ±r [ i ] = '\0'; 136 `c_to_lua_push ( L , tbl , 137 key , `¡¾’ (key), 138 v® , `¡¾’ (val)); 141 key = qry¡r -> ±r + i + 1; 142 v® = NULL ; 143 is_key = 1; 149 } } 151  $ÿche_expÜt_cook›_·¿ms ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 152 d©a_un£t * d ; 154 `UNUSED ( ¤v ); 156 ià( NULL !ð( d = `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Cookie"))) { 157 d©a_¡ršg * ds = (d©a_¡ršg *) d ; 158 size_t key = 0, v®ue = 0; 159 size_t is_key = 1, is_sid = 0; 160 size_t i ; 163 ià(! `DATA_IS_STRING ( d ))  -1; 164 ià( ds -> v®ue -> u£d == 0)  -1; 166 ià( ds -> v®ue -> ±r [0] == '\0' || 167 ds -> v®ue -> ±r [0] == '=' || 168 ds -> v®ue -> ±r [0] == ';')  -1; 170 `bufãr_»£t ( p -> £ssiÚ_id ); 171  i = 0; i < ds -> v®ue -> u£d ; i++) { 172  ds -> v®ue -> ±r [ i ]) { 174 ià( is_key ) { 175 ià(0 =ð `¡ºcmp ( ds -> v®ue -> ±r + key , "PHPSESSID", i - key)) { 177 is_sid = 1; 179 v®ue = i + 1; 181 is_key = 0; 186 ià( is_sid ) { 187 `bufãr_cÝy_¡ršg_Ën ( p -> £ssiÚ_id , ds -> v®ue -> ±r + v®ue, i - value); 190 is_sid = 0; 191 key = i + 1; 192 v®ue = 0; 193 is_key = 1; 196 ià( is_key =ð1 && key =ð i ) key = i + 1; 197 ià( is_key =ð0 && v®ue =ð i ) value = i + 1; 200 ià( is_sid ) { 201 `bufãr_cÝy_¡ršg_Ën ( p -> £ssiÚ_id , ds -> v®ue -> ±r + v®ue, i - value); 210 } } 213  $ÿche_·r£_lua ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * â ) { 214 lua_S‹ * L ; 215 »adme rm ; 216  »t = -1; 217 bufãr * b = `bufãr_š™ (); 218  h—d”_tbl = 0; 220 rm . dÚe = 0; 221 `¡»am_Ý’ (& rm . ¡ , â ); 224 L = `luaL_Ãw¡©e (); 225 `luaL_Ý’libs ( L ); 228 `lua_»gi¡” ( L , "md5", f_üy±o_md5 ); 229 `lua_»gi¡” ( L , "fže_mtime", f_fže_mtime ); 230 `lua_»gi¡” ( L , "fže_i¤eg", f_fže_i¤eg ); 231 `lua_»gi¡” ( L , "fže_isdœ", f_fže_i¤eg ); 232 `lua_»gi¡” ( L , "dœ_fžes", f_dœ_fžes ); 234 #ifdeà HAVE_MEMCACHE_H 235 `lua_pushl™”® ( L , "memcache_get_long"); 236 `lua_pushlightu£rd©a ( L , p -> cÚf . mc ); 237 `lua_pushcþosu» ( L , f_memÿche_g‘_lÚg , 1); 238 `lua_£‰abË ( L , LUA_GLOBALSINDEX ); 240 `lua_pushl™”® ( L , "memcache_get_string"); 241 `lua_pushlightu£rd©a ( L , p -> cÚf . mc ); 242 `lua_pushcþosu» ( L , f_memÿche_g‘_¡ršg , 1); 243 `lua_£‰abË ( L , LUA_GLOBALSINDEX ); 245 `lua_pushl™”® ( L , "memcache_exists"); 246 `lua_pushlightu£rd©a ( L , p -> cÚf . mc ); 247 `lua_pushcþosu» ( L , f_memÿche_exi¡s , 1); 248 `lua_£‰abË ( L , LUA_GLOBALSINDEX ); 251 `lua_pushl™”® ( L , "request"); 252 `lua_ÃwbË ( L ); 253 `lua_£‰abË ( L , LUA_GLOBALSINDEX ); 255 `lua_pushl™”® ( L , "request"); 256 h—d”_tbl = `lua_g‘tÝ ( L ); 257 `lua_g‘bË ( L , LUA_GLOBALSINDEX ); 259 `c_to_lua_push ( L , h—d”_tbl , `CONST_STR_LEN ("REQUEST_URI"), `CONST_BUF_LEN ( cÚ -> »que¡ . Üig_uri )); 260 `c_to_lua_push ( L , h—d”_tbl , `CONST_STR_LEN ("SCRIPT_NAME"), `CONST_BUF_LEN ( cÚ -> uri . ·th )); 261 `c_to_lua_push ( L , h—d”_tbl , `CONST_STR_LEN ("SCRIPT_FILENAME"), `CONST_BUF_LEN ( cÚ -> physiÿl . ·th )); 262 `c_to_lua_push ( L , h—d”_tbl , `CONST_STR_LEN ("DOCUMENT_ROOT"), `CONST_BUF_LEN ( cÚ -> physiÿl . doc_roÙ )); 263 ià(! `bufãr_is_em±y ( cÚ -> »que¡ . ·thšfo )) { 264 `c_to_lua_push ( L , h—d”_tbl , `CONST_STR_LEN ("PATH_INFO"), `CONST_BUF_LEN ( cÚ -> »que¡ . ·thšfo )); 267 `c_to_lua_push ( L , h—d”_tbl , `CONST_STR_LEN ("CWD"), `CONST_BUF_LEN ( p -> ba£dœ )); 268 `c_to_lua_push ( L , h—d”_tbl , `CONST_STR_LEN ("BASEURL"), `CONST_BUF_LEN ( p -> ba£u¾ )); 271 `lua_pushl™”® ( L , "get"); 272 `lua_ÃwbË ( L ); 273 `lua_£‰abË ( L , LUA_GLOBALSINDEX ); 275 `lua_pushl™”® ( L , "get"); 276 h—d”_tbl = `lua_g‘tÝ ( L ); 277 `lua_g‘bË ( L , LUA_GLOBALSINDEX ); 279 `bufãr_cÝy_¡ršg_bufãr ( b , cÚ -> uri . qu”y ); 280 `ÿche_expÜt_g‘_·¿ms ( L , h—d”_tbl , b ); 281 `bufãr_»£t ( b ); 284 `lua_pushl™”® ( L , "CACHE_HIT"); 285 `lua_pushboÞ—n ( L , 0); 286 `lua_£‰abË ( L , LUA_GLOBALSINDEX ); 288 `lua_pushl™”® ( L , "CACHE_MISS"); 289 `lua_pushboÞ—n ( L , 1); 290 `lua_£‰abË ( L , LUA_GLOBALSINDEX ); 293 ià( `lua_lßd ( L , lßd_fže , & rm , â -> ±r è|| `lua_pÿÎ (L,0,1,0)) { 294 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 295 `lua_to¡ršg ( L ,-1)); 297  ”rÜ ; 301 »t = () `lua_tÚumb” ( L , -1); 302 `lua_pÝ ( L , 1); 305 `lua_to_c_g‘_¡ršg ( L , "Œigg”_hªdËr", p -> Œigg”_hªdËr ); 307 ià(0 =ð `lua_to_c_g‘_¡ršg ( L , "ouut_cÚ‹Áty³", b )) { 308 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("CÚ‹Á-Ty³"), `CONST_BUF_LEN ( b )); 311 ià( »t == 0) { 314  cu»Ëm ; 315 time_t mtime = 0; 317 ià(! `lua_to_c_is_bË ( L , "output_include")) { 318 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 320 »t = -1; 322  ”rÜ ; 325 `lua_push¡ršg ( L , "output_include"); 327 cu»Ëm = `lua_g‘tÝ ( L ); 328 `lua_g‘bË ( L , LUA_GLOBALSINDEX ); 339 `lua_pushnž ( L ); 340  `lua_Ãxt ( L , cu»Ëm ) != 0) { 341 ¡©_ÿche_’Œy * sû = NULL ; 344 ià( `lua_is¡ršg ( L , -1)) { 345 cÚ¡ * s = `lua_to¡ršg ( L , -1); 348 ià( s [0] != '/') { 349 `bufãr_cÝy_¡ršg_bufãr ( b , p -> ba£dœ ); 350 `bufãr_­³nd_¡ršg ( b , `lua_to¡ršg ( L , -1)); 352 `bufãr_cÝy_¡ršg ( b , `lua_to¡ršg ( L , -1)); 355 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , b , & sû )) { 358  ”ºo ) { 359  ENOENT : 361 ià(! `bufãr_is_em±y ( p -> Œigg”_hªdËr )) { 362 »t = 1; 364 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 370 »t = -1; 372 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 382 `chunkqueue_­³nd_fže ( cÚ -> wr™e_queue , b , 0, sû -> ¡ . ¡_size ); 383 ià( sû -> ¡ . ¡_mtime > mtime ) mtime = sce->st.st_mtime; 387 »t = -1; 388 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 393 `lua_pÝ ( L , 1); 396 `lua_£‰Ý ( L , cu»Ëm - 1); 398 ià( »t == 0) { 399 d©a_¡ršg * ds ; 400  timebuf [("Sat, 23 Jul 2005 21:20:01 GMT")]; 401 bufãr tbuf ; 403 cÚ -> fže_fšished = 1; 405 ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »¥Ú£ . h—d”s , "Last-Modified"); 408 ià(( mtime è&& ( NULL =ð ds )) { 410 `¡ráime ( timebuf , Ñimebuf), "%a, %d %b %Y %H:%M:%S GMT", `gmtime (& mtime )); 412 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("La¡-Modif›d"), timebuf , (timebuf) - 1); 415 tbuf . ±r = timebuf ; 416 tbuf . u£d = ( timebuf ); 417 tbuf . size = ( timebuf ); 418 } ià( ds ) { 419 tbuf . ±r = ds -> v®ue ->ptr; 420 tbuf . u£d = ds -> v®ue ->used; 421 tbuf . size = ds -> v®ue ->size; 423 tbuf . size = 0; 424 tbuf . u£d = 0; 425 tbuf . ±r = NULL ; 428 ià( HANDLER_FINISHED =ð `h‰p_»¥Ú£_hªdË_ÿchabË ( ¤v , cÚ , & tbuf )) { 432 `chunkqueue_»£t ( cÚ -> wr™e_queue ); 433 »t = 0; 436 `chunkqueue_»£t ( cÚ -> wr™e_queue ); 440 ià( »t =ð1 && ! `bufãr_is_em±y ( p -> Œigg”_hªdËr )) { 442 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> uri . ·th , p -> ba£u¾ ); 443 `bufãr_­³nd_¡ršg_bufãr ( cÚ -> uri . ·th , p -> Œigg”_hªdËr ); 445 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ·th , p -> ba£dœ ); 446 `bufãr_­³nd_¡ršg_bufãr ( cÚ -> physiÿl . ·th , p -> Œigg”_hªdËr ); 448 `chunkqueue_»£t ( cÚ -> wr™e_queue ); 451 ”rÜ : 452 `lua_þo£ ( L ); 454 `¡»am_þo£ (& rm . ¡ ); 455 `bufãr_ä“ ( b ); 457  »t ; 458 } } 460  $ÿche_·r£_lua ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * â ) { 461 `UNUSED ( ¤v ); 462 `UNUSED ( cÚ ); 463 `UNUSED ( p ); 464 `UNUSED ( â ); 467 } } @src/mod_compress.c 1  ~ 2  ~ 4  ~ 5  ~ 6  ~<ùy³.h > 7  ~<¡dlib.h > 8  ~<¡ršg.h > 9  ~<”ºo.h > 10  ~ 12  ~"ba£.h " 13  ~"log.h " 14  ~"bufãr.h " 15  ~"»¥Ú£.h " 16  ~"¡©_ÿche.h " 18  ~"¶ugš.h " 20  ~"üc32.h " 21  ~"‘ag.h " 23 #ià defšed HAVE_ZLIB_H && defšed HAVE_LIBZ 24  #USE_ZLIB ) 25  ~ 28 #ià defšed HAVE_BZLIB_H && defšed HAVE_LIBBZ2 29  #USE_BZ2LIB ) 31  #BZ_NO_STDIO ) 32  ~ 35  ~"sys-mm­.h " 38  #HTTP_ACCEPT_ENCODING_IDENTITY `BV (0) ) 39  #HTTP_ACCEPT_ENCODING_GZIP `BV (1) ) 40  #HTTP_ACCEPT_ENCODING_DEFLATE `BV (2) ) 41  #HTTP_ACCEPT_ENCODING_COMPRESS `BV (3) ) 42  #HTTP_ACCEPT_ENCODING_BZIP2 `BV (4) ) 44 #ifdeà __WIN32 45  #mkdœ ( x , y è `mkdœ (x) ) 49 bufãr * mcom´ess_ÿche_dœ ; 50 ¬¿y * mcom´ess ; 51 off_t mcom´ess_max_fžesize ; 52 } t¶ugš_cÚfig ; 55 mPLUGIN_DATA ; 56 bufãr * moâ ; 57 bufãr * mb ; 59 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 60 ¶ugš_cÚfig mcÚf ; 61 } t¶ugš_d©a ; 63 $INIT_FUNC ( mod_com´ess_š™ ) { 64 ¶ugš_d©a * p ; 66 p = `ÿÎoc (1, (*p)); 68 p -> oâ = `bufãr_š™ (); 69 p -> b = `bufãr_š™ (); 71  p ; 72 } } 74 $FREE_FUNC ( mod_com´ess_ä“ ) { 75 ¶ugš_d©a * p = p_d ; 77 `UNUSED ( ¤v ); 79 ià(! p è HANDLER_GO_ON ; 81 `bufãr_ä“ ( p -> oâ ); 82 `bufãr_ä“ ( p -> b ); 84 ià( p -> cÚfig_¡Üage ) { 85 size_t i ; 86  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 87 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 89 ià(! s ) ; 91 `¬¿y_ä“ ( s -> com´ess ); 92 `bufãr_ä“ ( s -> com´ess_ÿche_dœ ); 94 `ä“ ( s ); 96 `ä“ ( p -> cÚfig_¡Üage ); 100 `ä“ ( p ); 102  HANDLER_GO_ON ; 103 } } 106  $mkdœ_»cursive (* dœ ) { 107 * p = dœ ; 109 ià(! dœ || !dir[0]) 112 ( p = `¡rchr Õ + 1, '/')è!ð NULL ) { 114 * p = '\0'; 115 ià(( `mkdœ ( dœ , 0700è!ð0è&& ( ”ºo !ð EEXIST )) { 116 * p = '/'; 120 * p ++ = '/'; 121 ià(!* p )  0; 124  ( `mkdœ ( dœ , 0700è!ð0è&& ( ”ºo !ð EEXIST ) ? -1 : 0; 125 } } 128  $mkdœ_fÜ_fže (* fž’ame ) { 129 * p = fž’ame ; 131 ià(! fž’ame || !filename[0]) 134 ( p = `¡rchr Õ + 1, '/')è!ð NULL ) { 136 * p = '\0'; 137 ià(( `mkdœ ( fž’ame , 0700è!ð0è&& ( ”ºo !ð EEXIST )) { 138 * p = '/'; 142 * p ++ = '/'; 143 ià(!* p )  -1; 147 } } 149 $SETDEFAULTS_FUNC ( mod_com´ess_£tdeçuÉs ) { 150 ¶ugš_d©a * p = p_d ; 151 size_t i = 0; 153 cÚfig_v®ues_t cv [] = { 154 { "com´ess.ÿche-dœ", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 155 { "com´ess.fž‘y³", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 156 { "com´ess.max-fžesize", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 157 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 160 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 162  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 163 ¶ugš_cÚfig * s ; 165 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 166 s -> com´ess_ÿche_dœ = `bufãr_š™ (); 167 s -> com´ess = `¬¿y_š™ (); 168 s -> com´ess_max_fžesize = 0; 170 cv [0]. de¡š©iÚ = s -> com´ess_ÿche_dœ ; 171 cv [1]. de¡š©iÚ = s -> com´ess ; 172 cv [2]. de¡š©iÚ = &( s -> com´ess_max_fžesize ); 174 p -> cÚfig_¡Üage [ i ] = s ; 176 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 177  HANDLER_ERROR ; 180 ià(! `bufãr_is_em±y ( s -> com´ess_ÿche_dœ )) { 181 `mkdœ_»cursive ( s -> com´ess_ÿche_dœ -> ±r ); 183  ¡© ¡ ; 184 ià(0 !ð `¡© ( s -> com´ess_ÿche_dœ -> ±r , & ¡ )) { 185 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", "can't stat compress.cache-dir", 186 s -> com´ess_ÿche_dœ , `¡»¼Ü ( ”ºo )); 188  HANDLER_ERROR ; 193  HANDLER_GO_ON ; 195 } } 197 #ifdeà USE_ZLIB 198  $deæ©e_fže_to_bufãr_gz ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , * ¡¬t , off_t ¡_size , time_t mtime ) { 199 * c ; 200  üc ; 201 z_¡»am z ; 203 `UNUSED ( ¤v ); 204 `UNUSED ( cÚ ); 206 z . z®loc = Z_NULL ; 207 z . zä“ = Z_NULL ; 208 z . Ýaque = Z_NULL ; 210 ià( Z_OK !ð `deæ©eIn™2 (& z , 211 Z_DEFAULT_COMPRESSION , 212 Z_DEFLATED , 213 - MAX_WBITS , 215 Z_DEFAULT_STRATEGY )) { 219 z . Ãxt_š = (*) ¡¬t ; 220 z . avaž_š = ¡_size ; 221 z . tÙ®_š = 0; 224 `bufãr_´•¬e_cÝy ( p -> b , ( z . avaž_š * 1.1) + 12 + 18); 228 c = (*) p -> b -> ±r ; 229 c [0] = 0x1f; 230 c [1] = 0x8b; 231 c [2] = Z_DEFLATED ; 232 c [3] = 0; 233 c [4] = ( mtime >> 0) & 0xff; 234 c [5] = ( mtime >> 8) & 0xff; 235 c [6] = ( mtime >> 16) & 0xff; 236 c [7] = ( mtime >> 24) & 0xff; 237 c [8] = 0x00; 238 c [9] = 0x03; 240 p -> b -> u£d = 10; 241 z . Ãxt_out = (*) p -> b -> ±r +…->b-> u£d ; 242 z . avaž_out = p -> b -> size -…->b-> u£d - 8; 243 z . tÙ®_out = 0; 245 ià( Z_STREAM_END !ð `deæ©e (& z , Z_FINISH )) { 246 `deæ©eEnd (& z ); 251 p -> b -> u£d +ð z . tÙ®_out ; 253 üc = `g’”©e_üc32c ( ¡¬t , ¡_size ); 255 c = (*) p -> b -> ±r +…->b-> u£d ; 257 c [0] = ( üc >> 0) & 0xff; 258 c [1] = ( üc >> 8) & 0xff; 259 c [2] = ( üc >> 16) & 0xff; 260 c [3] = ( üc >> 24) & 0xff; 261 c [4] = ( z . tÙ®_š >> 0) & 0xff; 262 c [5] = ( z . tÙ®_š >> 8) & 0xff; 263 c [6] = ( z . tÙ®_š >> 16) & 0xff; 264 c [7] = ( z . tÙ®_š >> 24) & 0xff; 265 p -> b -> u£d += 8; 267 ià( Z_OK !ð `deæ©eEnd (& z )) { 272 } } 274  $deæ©e_fže_to_bufãr_deæ©e ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , * ¡¬t , off_t ¡_size ) { 275 z_¡»am z ; 277 `UNUSED ( ¤v ); 278 `UNUSED ( cÚ ); 280 z . z®loc = Z_NULL ; 281 z . zä“ = Z_NULL ; 282 z . Ýaque = Z_NULL ; 284 ià( Z_OK !ð `deæ©eIn™2 (& z , 285 Z_DEFAULT_COMPRESSION , 286 Z_DEFLATED , 287 - MAX_WBITS , 289 Z_DEFAULT_STRATEGY )) { 293 z . Ãxt_š = ¡¬t ; 294 z . avaž_š = ¡_size ; 295 z . tÙ®_š = 0; 297 `bufãr_´•¬e_cÝy ( p -> b , ( z . avaž_š * 1.1) + 12); 299 z . Ãxt_out = (*) p -> b -> ±r ; 300 z . avaž_out = p -> b -> size ; 301 z . tÙ®_out = 0; 303 ià( Z_STREAM_END !ð `deæ©e (& z , Z_FINISH )) { 304 `deæ©eEnd (& z ); 309 p -> b -> u£d +ð z . tÙ®_out ; 311 ià( Z_OK !ð `deæ©eEnd (& z )) { 316 } } 320 #ifdeà USE_BZ2LIB 321  $deæ©e_fže_to_bufãr_bz2 ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , * ¡¬t , off_t ¡_size ) { 322 bz_¡»am bz ; 324 `UNUSED ( ¤v ); 325 `UNUSED ( cÚ ); 327 bz . bz®loc = NULL ; 328 bz . bzä“ = NULL ; 329 bz . Ýaque = NULL ; 331 ià( BZ_OK !ð `BZ2_bzCom´essIn™ (& bz , 338 bz . Ãxt_š = (*) ¡¬t ; 339 bz . avaž_š = ¡_size ; 340 bz . tÙ®_š_lo32 = 0; 341 bz . tÙ®_š_hi32 = 0; 343 `bufãr_´•¬e_cÝy ( p -> b , ( bz . avaž_š * 1.1) + 12); 345 bz . Ãxt_out = p -> b -> ±r ; 346 bz . avaž_out = p -> b -> size ; 347 bz . tÙ®_out_lo32 = 0; 348 bz . tÙ®_out_hi32 = 0; 350 ià( BZ_STREAM_END !ð `BZ2_bzCom´ess (& bz , BZ_FINISH )) { 351 `BZ2_bzCom´essEnd (& bz ); 356 ià( bz . tÙ®_out_hi32 )  -1; 359 p -> b -> u£d = bz . tÙ®_out_lo32 ; 361 ià( BZ_OK !ð `BZ2_bzCom´essEnd (& bz )) { 366 } } 369  $deæ©e_fže_to_fže ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * â , ¡©_ÿche_’Œy * sû ,  ty³ ) { 370  ifd , ofd ; 371  »t = -1; 372 * ¡¬t ; 373 cÚ¡ * fž’ame = â -> ±r ; 374 ssize_t r ; 377 ià(( off_t )( sû -> ¡ . ¡_size * 1.1) < sce->st.st_size)  -1; 384 ià( sû -> ¡ . ¡_size > 128 * 1024 * 1024)  -1; 386 `bufãr_»£t ( p -> oâ ); 387 `bufãr_cÝy_¡ršg_bufãr ( p -> oâ ,…-> cÚf . com´ess_ÿche_dœ ); 388 `BUFFER_APPEND_SLASH ( p -> oâ ); 390 ià(0 =ð `¡ºcmp ( cÚ -> physiÿl . ·th -> ±r , cÚ->physiÿl. doc_roÙ ->±r, cÚ->physiÿl.doc_roÙ-> u£d -1)) { 391 `bufãr_­³nd_¡ršg ( p -> oâ , cÚ -> physiÿl . ·th -> ±r + cÚ->physiÿl. doc_roÙ -> u£d - 1); 392 `bufãr_cÝy_¡ršg_bufãr ( p -> b ,…-> oâ ); 394 `bufãr_­³nd_¡ršg_bufãr ( p -> oâ , cÚ -> uri . ·th ); 397  ty³ ) { 398  HTTP_ACCEPT_ENCODING_GZIP : 399 `bufãr_­³nd_¡ršg ( p -> oâ , "-gzip-"); 401  HTTP_ACCEPT_ENCODING_DEFLATE : 402 `bufãr_­³nd_¡ršg ( p -> oâ , "-deflate-"); 404  HTTP_ACCEPT_ENCODING_BZIP2 : 405 `bufãr_­³nd_¡ršg ( p -> oâ , "-bzip2-"); 408 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "unknowÀcom´essiÚy³", ty³ ); 412 `bufãr_­³nd_¡ršg_bufãr ( p -> oâ , sû -> ‘ag ); 414 ià(-1 =ð `mkdœ_fÜ_fže ( p -> oâ -> ±r )) { 415 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "couldn'ˆü—‹ dœeùÜy fÜ fže", p -> oâ ); 419 ià(-1 =ð( ofd = `Ý’ ( p -> oâ -> ±r , O_WRONLY | O_CREAT | O_EXCL | O_BINARY , 0600))) { 420 ià( ”ºo =ð EEXIST ) { 423 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "bs", p -> oâ , "compress-cache hit"); 425 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ·th , p -> oâ ); 430 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", "ü—tšg cachefže", p -> oâ , "çžed", `¡»¼Ü ( ”ºo )); 435 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "bs", p -> oâ , "compress-cache miss"); 437 ià(-1 =ð( ifd = `Ý’ ( fž’ame , O_RDONLY | O_BINARY ))) { 438 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", "Ý’šg…Ïš-fže", â , "çžed", `¡»¼Ü ( ”ºo )); 440 `þo£ ( ofd ); 443 ià(-1 =ð `uÆšk ( p -> oâ -> ±r )) { 444 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", "uÆškšg incom¶‘ÿchefže", p -> oâ , "çžed:", `¡»¼Ü ( ”ºo )); 451 ià( MAP_FAILED =ð( ¡¬t = `mm­ ( NULL , sû -> ¡ . ¡_size , PROT_READ , MAP_SHARED , ifd , 0))) { 452 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", "mm­šg", â , "çžed", `¡»¼Ü ( ”ºo )); 454 `þo£ ( ofd ); 455 `þo£ ( ifd ); 458 ià(-1 =ð `uÆšk ( p -> oâ -> ±r )) { 459 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", "uÆškšg incom¶‘ÿchefže", p -> oâ , "çžed:", `¡»¼Ü ( ”ºo )); 465  ty³ ) { 466 #ifdeà USE_ZLIB 467  HTTP_ACCEPT_ENCODING_GZIP : 468 »t = `deæ©e_fže_to_bufãr_gz ( ¤v , cÚ , p , ¡¬t , sû -> ¡ . ¡_size , sû->¡. ¡_mtime ); 470  HTTP_ACCEPT_ENCODING_DEFLATE : 471 »t = `deæ©e_fže_to_bufãr_deæ©e ( ¤v , cÚ , p , ¡¬t , sû -> ¡ . ¡_size ); 474 #ifdeà USE_BZ2LIB 475  HTTP_ACCEPT_ENCODING_BZIP2 : 476 »t = `deæ©e_fže_to_bufãr_bz2 ( ¤v , cÚ , p , ¡¬t , sû -> ¡ . ¡_size ); 480 »t = -1; 484 ià( »t == 0) { 485 r = `wr™e ( ofd , p -> b -> ±r ,…->b-> u£d ); 486 ià(-1 =ð r ) { 487 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", "wr™šg cachefže", p -> oâ , "çžed:", `¡»¼Ü ( ”ºo )); 488 »t = -1; 489 } ià(( size_t ) r !ð p -> b -> u£d ) { 490 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", "wr™šg cachefže", p -> oâ , "failed:‚otƒnough bytes written"); 491 »t = -1; 495 `munm­ ( ¡¬t , sû -> ¡ . ¡_size ); 496 `þo£ ( ofd ); 497 `þo£ ( ifd ); 499 ià( »t != 0) { 501 ià(-1 =ð `uÆšk ( p -> oâ -> ±r )) { 502 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", "uÆškšg incom¶‘ÿchefže", p -> oâ , "çžed:", `¡»¼Ü ( ”ºo )); 508 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ·th , p -> oâ ); 511 } } 513  $deæ©e_fže_to_bufãr ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * â , ¡©_ÿche_’Œy * sû ,  ty³ ) { 514  ifd ; 515  »t = -1; 516 * ¡¬t ; 517 bufãr * b ; 520 ià(( off_t )( sû -> ¡ . ¡_size * 1.1) < sce->st.st_size)  -1; 527 ià( sû -> ¡ . ¡_size > 128 * 1024 * 1024)  -1; 530 ià(-1 =ð( ifd = `Ý’ ( â -> ±r , O_RDONLY | O_BINARY ))) { 531 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", "Ý’šg…Ïš-fže", â , "çžed", `¡»¼Ü ( ”ºo )); 537 ià( MAP_FAILED =ð( ¡¬t = `mm­ ( NULL , sû -> ¡ . ¡_size , PROT_READ , MAP_SHARED , ifd , 0))) { 538 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", "mm­šg", â , "çžed", `¡»¼Ü ( ”ºo )); 540 `þo£ ( ifd ); 544  ty³ ) { 545 #ifdeà USE_ZLIB 546  HTTP_ACCEPT_ENCODING_GZIP : 547 »t = `deæ©e_fže_to_bufãr_gz ( ¤v , cÚ , p , ¡¬t , sû -> ¡ . ¡_size , sû->¡. ¡_mtime ); 549  HTTP_ACCEPT_ENCODING_DEFLATE : 550 »t = `deæ©e_fže_to_bufãr_deæ©e ( ¤v , cÚ , p , ¡¬t , sû -> ¡ . ¡_size ); 553 #ifdeà USE_BZ2LIB 554  HTTP_ACCEPT_ENCODING_BZIP2 : 555 »t = `deæ©e_fže_to_bufãr_bz2 ( ¤v , cÚ , p , ¡¬t , sû -> ¡ . ¡_size ); 559 »t = -1; 563 `munm­ ( ¡¬t , sû -> ¡ . ¡_size ); 564 `þo£ ( ifd ); 566 ià( »t != 0)  -1; 568 `chunkqueue_»£t ( cÚ -> wr™e_queue ); 569 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 570 `bufãr_cÝy_memÜy ( b , p ->b-> ±r ,…->b-> u£d + 1); 572 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 574 cÚ -> fže_fšished = 1; 575 cÚ -> fže_¡¬‹d = 1; 578 } } 581  #PATCH ( x ) \ 582 p -> cÚf . x = s ->x; ) 583  $mod_com´ess_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 584 size_t i , j ; 585 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 587 `PATCH ( com´ess_ÿche_dœ ); 588 `PATCH ( com´ess ); 589 `PATCH ( com´ess_max_fžesize ); 592  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 593 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 594 s = p -> cÚfig_¡Üage [ i ]; 597 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 600  j = 0; j < dc -> v®ue -> u£d ; j++) { 601 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 603 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("compress.cache-dir"))) { 604 `PATCH ( com´ess_ÿche_dœ ); 605 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("compress.filetype"))) { 606 `PATCH ( com´ess ); 607 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("compress.max-filesize"))) { 608 `PATCH ( com´ess_max_fžesize ); 614 } } 615 #undeà PATCH 617 $PHYSICALPATH_FUNC ( mod_com´ess_physiÿl ) { 618 ¶ugš_d©a * p = p_d ; 619 size_t m ; 620 off_t max_fsize ; 621 ¡©_ÿche_’Œy * sû = NULL ; 623 ià( cÚ -> mode !ð DIRECT || cÚ-> h‰p_¡©us è HANDLER_GO_ON ; 626 ià( cÚ -> »que¡ . h‰p_m‘hod !ð HTTP_METHOD_GET && 627 cÚ -> »que¡ . h‰p_m‘hod !ð HTTP_METHOD_POST ) { 628  HANDLER_GO_ON ; 631 ià( `bufãr_is_em±y ( cÚ -> physiÿl . ·th )) { 632  HANDLER_GO_ON ; 635 `mod_com´ess_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 637 max_fsize = p -> cÚf . com´ess_max_fžesize ; 639 `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , cÚ-> physiÿl . ·th , & sû ); 642 ià( max_fsize && ( sû -> ¡ . ¡_size >> 10è> max_fsizeè HANDLER_GO_ON ; 649 ià( sû -> ¡ . ¡_size < 128è HANDLER_GO_ON ; 652  m = 0; m < p -> cÚf . com´ess -> u£d ; m++) { 653 d©a_¡ršg * com´ess_ds = (d©a_¡ršg *) p -> cÚf . com´ess -> d©a [ m ]; 655 ià(! com´ess_ds ) { 656 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbb", "evž", cÚ -> physiÿl . ·th , cÚ-> uri .path); 658  HANDLER_GO_ON ; 661 ià( `bufãr_is_equ® ( com´ess_ds -> v®ue , sû -> cÚ‹Á_ty³ )) { 663 d©a_¡ršg * ds ; 666 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("Vary"), CONST_STR_LEN("Accept-Encoding")); 668 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Accept-Encoding"))) { 669  acû±_’codšg = 0; 670 * v®ue = ds ->v®ue-> ±r ; 671  ¤v_’codšgs = 0; 672  m©ched_’codšgs = 0; 675 ià( NULL !ð `¡r¡r ( v®ue , "gz")è acû±_’codšg |ð HTTP_ACCEPT_ENCODING_GZIP ; 676 ià( NULL !ð `¡r¡r ( v®ue , "deæ©e")è acû±_’codšg |ð HTTP_ACCEPT_ENCODING_DEFLATE ; 677 ià( NULL !ð `¡r¡r ( v®ue , "com´ess")è acû±_’codšg |ð HTTP_ACCEPT_ENCODING_COMPRESS ; 678 ià( NULL !ð `¡r¡r ( v®ue , "bz2")è acû±_’codšg |ð HTTP_ACCEPT_ENCODING_BZIP2 ; 679 ià( NULL !ð `¡r¡r ( v®ue , "id’t™y")è acû±_’codšg |ð HTTP_ACCEPT_ENCODING_IDENTITY ; 682 #ifdeà USE_BZ2LIB 683 ¤v_’codšgs |ð HTTP_ACCEPT_ENCODING_BZIP2 ; 685 #ifdeà USE_ZLIB 686 ¤v_’codšgs |ð HTTP_ACCEPT_ENCODING_GZIP ; 687 ¤v_’codšgs |ð HTTP_ACCEPT_ENCODING_DEFLATE ; 691 m©ched_’codšgs = acû±_’codšg & ¤v_’codšgs ; 693 ià( m©ched_’codšgs ) { 694 cÚ¡ * dæt_gz = "gzip"; 695 cÚ¡ * dæt_deæ©e = "deflate"; 696 cÚ¡ * dæt_bz2 = "bzip2"; 698 cÚ¡ * com´essiÚ_Çme = NULL ; 699  com´essiÚ_ty³ = 0; 702 ià( m©ched_’codšgs & HTTP_ACCEPT_ENCODING_BZIP2 ) { 703 com´essiÚ_ty³ = HTTP_ACCEPT_ENCODING_BZIP2 ; 704 com´essiÚ_Çme = dæt_bz2 ; 705 } ià( m©ched_’codšgs & HTTP_ACCEPT_ENCODING_GZIP ) { 706 com´essiÚ_ty³ = HTTP_ACCEPT_ENCODING_GZIP ; 707 com´essiÚ_Çme = dæt_gz ; 708 } ià( m©ched_’codšgs & HTTP_ACCEPT_ENCODING_DEFLATE ) { 709 com´essiÚ_ty³ = HTTP_ACCEPT_ENCODING_DEFLATE ; 710 com´essiÚ_Çme = dæt_deæ©e ; 714 ià( p -> cÚf . com´ess_ÿche_dœ -> u£d ) { 715 ià(0 =ð `deæ©e_fže_to_fže ( ¤v , cÚ , p , 716 cÚ -> physiÿl . ·th , sû , com´essiÚ_ty³ )) { 717 bufãr * mtime ; 719 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("CÚ‹Á-Encodšg"), com´essiÚ_Çme , `¡¾’ (compression_name)); 721 mtime = `¡ráime_ÿche_g‘ ( ¤v , sû -> ¡ . ¡_mtime ); 722 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("La¡-Modif›d"), `CONST_BUF_LEN ( mtime )); 724 `‘ag_mu‹ ( cÚ -> physiÿl . ‘ag , sû ->etag); 725 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("ETag"), `CONST_BUF_LEN (cÚ-> physiÿl . ‘ag )); 727 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("CÚ‹Á-Ty³"), `CONST_BUF_LEN ( sû -> cÚ‹Á_ty³ )); 729  HANDLER_GO_ON ; 731 } ià(0 =ð `deæ©e_fže_to_bufãr ( ¤v , cÚ , p , 732 cÚ -> physiÿl . ·th , sû , com´essiÚ_ty³ )) { 733 bufãr * mtime ; 735 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("CÚ‹Á-Encodšg"), com´essiÚ_Çme , `¡¾’ (compression_name)); 737 mtime = `¡ráime_ÿche_g‘ ( ¤v , sû -> ¡ . ¡_mtime ); 738 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("La¡-Modif›d"), `CONST_BUF_LEN ( mtime )); 740 `‘ag_mu‹ ( cÚ -> physiÿl . ‘ag , sû ->etag); 741 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("ETag"), `CONST_BUF_LEN (cÚ-> physiÿl . ‘ag )); 743 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("CÚ‹Á-Ty³"), `CONST_BUF_LEN ( sû -> cÚ‹Á_ty³ )); 745  HANDLER_FINISHED ; 753  HANDLER_GO_ON ; 754 } } 756  $mod_com´ess_¶ugš_š™ ( ¶ugš * p ) { 757 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 758 p -> Çme = `bufãr_š™_¡ršg ("compress"); 760 p -> š™ = mod_com´ess_š™ ; 761 p -> £t_deçuÉs = mod_com´ess_£tdeçuÉs ; 762 p -> hªdË_sub»que¡_¡¬t = mod_com´ess_physiÿl ; 763 p -> þ—nup = mod_com´ess_ä“ ; 765 p -> d©a = NULL ; 768 } } @src/mod_dirlisting.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 4  ~ 5  ~ 6  ~<”ºo.h > 7  ~<¡dio.h > 8  ~ 9  ~ 11  ~"ba£.h " 12  ~"log.h " 13  ~"bufãr.h " 15  ~"¶ugš.h " 17  ~"»¥Ú£.h " 18  ~"¡©_ÿche.h " 19  ~"¡»am.h " 26 #ifdeà HAVE_SYS_SYSLIMITS_H 27  ~ 30 #ifdeà HAVE_ATTR_ATTRIBUTES_H 31  ~<©Œ/©Œibu‹s.h > 37 #ifdeà HAVE_PCRE_H 38 püe * m»gex ; 40 bufãr * m¡ršg ; 41 } texþudes ; 44 exþudes ** m±r ; 46 size_t mu£d ; 47 size_t msize ; 48 } texþudes_bufãr ; 51  mdœ_li¡šg ; 52  mhide_dÙ_fžes ; 53  mshow_»adme ; 54  mhide_»adme_fže ; 55  mshow_h—d” ; 56  mhide_h—d”_fže ; 58 exþudes_bufãr * mexþudes ; 60 bufãr * mex‹º®_css ; 61 bufãr * m’codšg ; 62 bufãr * m£t_foÙ” ; 63 } t¶ugš_cÚfig ; 66 mPLUGIN_DATA ; 68 bufãr * mtmp_buf ; 69 bufãr * mcÚ‹Á_ch¬£t ; 71 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 73 ¶ugš_cÚfig mcÚf ; 74 } t¶ugš_d©a ; 76 exþudes_bufãr * $exþudes_bufãr_š™ () { 77 exþudes_bufãr * exb ; 79 exb = `ÿÎoc (1, (*exb)); 81  exb ; 82 } } 84  $exþudes_bufãr_­³nd ( exþudes_bufãr * exb , bufãr * ¡ršg ) { 85 #ifdeà HAVE_PCRE_H 86 size_t i ; 87 cÚ¡ * ”½Œ ; 88  ”roff ; 90 ià(! ¡ršg )  -1; 92 ià( exb -> size == 0) { 93 exb -> size = 4; 94 exb -> u£d = 0; 96 exb -> ±r = `m®loc Óxb-> size * (*exb->ptr)); 98  i = 0; i < exb -> size ; i++) { 99 exb -> ±r [ i ] = `ÿÎoc (1, (**exb->ptr)); 101 } ià( exb -> u£d =ðexb-> size ) { 102 exb -> size += 4; 104 exb -> ±r = `»®loc Óxb->±r,ƒxb-> size * (*exb->ptr)); 106  i = exb -> u£d ; i <ƒxb-> size ; i++) { 107 exb -> ±r [ i ] = `ÿÎoc (1, (**exb->ptr)); 112 ià( NULL =ð( exb -> ±r [exb-> u£d ]-> »gex = `püe_compže ( ¡ršg ->ptr, 0, 113 & ”½Œ , & ”roff , NULL ))) { 117 exb -> ±r [exb-> u£d ]-> ¡ršg = `bufãr_š™ (); 118 `bufãr_cÝy_¡ršg_bufãr ( exb -> ±r [exb-> u£d ]-> ¡ršg , string); 120 exb -> u£d ++; 124 `UNUSED ( exb ); 125 `UNUSED ( ¡ršg ); 129 } } 131  $exþudes_bufãr_ä“ ( exþudes_bufãr * exb ) { 132 #ifdeà HAVE_PCRE_H 133 size_t i ; 135  i = 0; i < exb -> size ; i++) { 136 ià( exb -> ±r [ i ]-> »gex è `püe_ä“ (exb->ptr[i]->regex); 137 ià( exb -> ±r [ i ]-> ¡ršg è `bufãr_ä“ (exb->ptr[i]->string); 138 `ä“ ( exb -> ±r [ i ]); 141 ià( exb -> ±r è `ä“ (exb->ptr); 144 `ä“ ( exb ); 145 } } 148 $INIT_FUNC ( mod_dœli¡šg_š™ ) { 149 ¶ugš_d©a * p ; 151 p = `ÿÎoc (1, (*p)); 153 p -> tmp_buf = `bufãr_š™ (); 154 p -> cÚ‹Á_ch¬£t = `bufãr_š™ (); 156  p ; 157 } } 160 $FREE_FUNC ( mod_dœli¡šg_ä“ ) { 161 ¶ugš_d©a * p = p_d ; 163 `UNUSED ( ¤v ); 165 ià(! p è HANDLER_GO_ON ; 167 ià( p -> cÚfig_¡Üage ) { 168 size_t i ; 169  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 170 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 172 ià(! s ) ; 174 `exþudes_bufãr_ä“ ( s -> exþudes ); 175 `bufãr_ä“ ( s -> ex‹º®_css ); 176 `bufãr_ä“ ( s -> ’codšg ); 177 `bufãr_ä“ ( s -> £t_foÙ” ); 179 `ä“ ( s ); 181 `ä“ ( p -> cÚfig_¡Üage ); 184 `bufãr_ä“ ( p -> tmp_buf ); 185 `bufãr_ä“ ( p -> cÚ‹Á_ch¬£t ); 187 `ä“ ( p ); 189  HANDLER_GO_ON ; 190 } } 192  $·r£_cÚfig_’Œy ( £rv” * ¤v , ¶ugš_cÚfig * s , ¬¿y * ÿ , cÚ¡ * ÝtiÚ ) { 193 d©a_un£t * du ; 195 ià( NULL !ð( du = `¬¿y_g‘_–em’t ( ÿ , ÝtiÚ ))) { 196 d©a_¬¿y * da = (d©a_¬¿y *) du ; 197 size_t j ; 199 ià( du -> ty³ !ð TYPE_ARRAY ) { 200 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 201 "uÃx³ùedy³ fÜ key: ", ÝtiÚ , "array of strings"); 203  HANDLER_ERROR ; 206 da = ( d©a_¬¿y *) du ; 208  j = 0; j < da -> v®ue -> u£d ; j++) { 209 ià( da -> v®ue -> d©a [ j ]-> ty³ !ð TYPE_STRING ) { 210 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sssbs", 211 "uÃx³ùedy³ fÜ key: ", ÝtiÚ , "[", 212 da -> v®ue -> d©a [ j ]-> key , "](string)"); 214  HANDLER_ERROR ; 217 ià(0 !ð `exþudes_bufãr_­³nd ( s -> exþudes , 218 (( d©a_¡ršg *)( da -> v®ue -> d©a [ j ]))->value)) { 219 #ifdeà HAVE_PCRE_H 220 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 221 "püe-compžçžed fÜ", (( d©a_¡ršg *)( da -> v®ue -> d©a [ j ]))->value); 223 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 231 } } 235  #CONFIG_EXCLUDE "dœ-li¡šg.exþude" ) 236  #CONFIG_ACTIVATE "dœ-li¡šg.aùiv©e" ) 237  #CONFIG_HIDE_DOTFILES "dœ-li¡šg.hide-dÙfžes" ) 238  #CONFIG_EXTERNAL_CSS "dœ-li¡šg.ex‹º®-css" ) 239  #CONFIG_ENCODING "dœ-li¡šg.’codšg" ) 240  #CONFIG_SHOW_README "dœ-li¡šg.show-»adme" ) 241  #CONFIG_HIDE_README_FILE "dœ-li¡šg.hide-»adme-fže" ) 242  #CONFIG_SHOW_HEADER "dœ-li¡šg.show-h—d”" ) 243  #CONFIG_HIDE_HEADER_FILE "dœ-li¡šg.hide-h—d”-fže" ) 244  #CONFIG_DIR_LISTING "£rv”.dœ-li¡šg" ) 245  #CONFIG_SET_FOOTER "dœ-li¡šg.£t-foÙ”" ) 248 $SETDEFAULTS_FUNC ( mod_dœli¡šg_£t_deçuÉs ) { 249 ¶ugš_d©a * p = p_d ; 250 size_t i = 0; 252 cÚfig_v®ues_t cv [] = { 253 { CONFIG_EXCLUDE , NULL , T_CONFIG_LOCAL , T_CONFIG_SCOPE_CONNECTION }, 254 { CONFIG_ACTIVATE , NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 255 { CONFIG_HIDE_DOTFILES , NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 256 { CONFIG_EXTERNAL_CSS , NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 257 { CONFIG_ENCODING , NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 258 { CONFIG_SHOW_README , NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 259 { CONFIG_HIDE_README_FILE , NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 260 { CONFIG_SHOW_HEADER , NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 261 { CONFIG_HIDE_HEADER_FILE , NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 262 { CONFIG_DIR_LISTING , NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 263 { CONFIG_SET_FOOTER , NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 265 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 268 ià(! p è HANDLER_ERROR ; 270 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 272  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 273 ¶ugš_cÚfig * s ; 274 ¬¿y * ÿ ; 276 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 277 s -> exþudes = `exþudes_bufãr_š™ (); 278 s -> dœ_li¡šg = 0; 279 s -> ex‹º®_css = `bufãr_š™ (); 280 s -> hide_dÙ_fžes = 0; 281 s -> show_»adme = 0; 282 s -> hide_»adme_fže = 0; 283 s -> show_h—d” = 0; 284 s -> hide_h—d”_fže = 0; 285 s -> ’codšg = `bufãr_š™ (); 286 s -> £t_foÙ” = `bufãr_š™ (); 288 cv [0]. de¡š©iÚ = s -> exþudes ; 289 cv [1]. de¡š©iÚ = &( s -> dœ_li¡šg ); 290 cv [2]. de¡š©iÚ = &( s -> hide_dÙ_fžes ); 291 cv [3]. de¡š©iÚ = s -> ex‹º®_css ; 292 cv [4]. de¡š©iÚ = s -> ’codšg ; 293 cv [5]. de¡š©iÚ = &( s -> show_»adme ); 294 cv [6]. de¡š©iÚ = &( s -> hide_»adme_fže ); 295 cv [7]. de¡š©iÚ = &( s -> show_h—d” ); 296 cv [8]. de¡š©iÚ = &( s -> hide_h—d”_fže ); 297 cv [9]. de¡š©iÚ = &( s -> dœ_li¡šg ); 298 cv [10]. de¡š©iÚ = s -> £t_foÙ” ; 300 p -> cÚfig_¡Üage [ i ] = s ; 301 ÿ = (( d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue ; 303 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , ÿ , cv )) { 304  HANDLER_ERROR ; 307 `·r£_cÚfig_’Œy ( ¤v , s , ÿ , CONFIG_EXCLUDE ); 310  HANDLER_GO_ON ; 311 } } 313  #PATCH ( x ) \ 314 p -> cÚf . x = s ->x; ) 315  $mod_dœli¡šg_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 316 size_t i , j ; 317 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 319 `PATCH ( dœ_li¡šg ); 320 `PATCH ( ex‹º®_css ); 321 `PATCH ( hide_dÙ_fžes ); 322 `PATCH ( ’codšg ); 323 `PATCH ( show_»adme ); 324 `PATCH ( hide_»adme_fže ); 325 `PATCH ( show_h—d” ); 326 `PATCH ( hide_h—d”_fže ); 327 `PATCH ( exþudes ); 328 `PATCH ( £t_foÙ” ); 331  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 332 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 333 s = p -> cÚfig_¡Üage [ i ]; 336 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 339  j = 0; j < dc -> v®ue -> u£d ; j++) { 340 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 342 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( CONFIG_ACTIVATE )) || 343 `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( CONFIG_DIR_LISTING ))) { 344 `PATCH ( dœ_li¡šg ); 345 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( CONFIG_HIDE_DOTFILES ))) { 346 `PATCH ( hide_dÙ_fžes ); 347 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( CONFIG_EXTERNAL_CSS ))) { 348 `PATCH ( ex‹º®_css ); 349 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( CONFIG_ENCODING ))) { 350 `PATCH ( ’codšg ); 351 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( CONFIG_SHOW_README ))) { 352 `PATCH ( show_»adme ); 353 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( CONFIG_HIDE_README_FILE ))) { 354 `PATCH ( hide_»adme_fže ); 355 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( CONFIG_SHOW_HEADER ))) { 356 `PATCH ( show_h—d” ); 357 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( CONFIG_HIDE_HEADER_FILE ))) { 358 `PATCH ( hide_h—d”_fže ); 359 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( CONFIG_SET_FOOTER ))) { 360 `PATCH ( £t_foÙ” ); 361 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( CONFIG_EXCLUDE ))) { 362 `PATCH ( exþudes ); 368 } } 369 #undeà PATCH 372 size_t mÇm–’ ; 373 time_t mmtime ; 374 off_t msize ; 375 } tdœls_’Œy_t ; 378 dœls_’Œy_t ** m’t ; 379 size_t mu£d ; 380 size_t msize ; 381 } tdœls_li¡_t ; 383  #DIRLIST_ENT_NAME ( ’t è((*)ÓÁè+ ( dœls_’Œy_t )) ) 384  #DIRLIST_BLOB_SIZE 16 ) 387  $h‰p_dœls_sÜt ( dœls_’Œy_t ** ’t ,  num ) { 388  g­ = num ; 389  i , j ; 390  sw­³d ; 391 dœls_’Œy_t * tmp ; 394 g­ = (gap * 10) / 13; 395 ià( g­ == 9 || gap == 10) 396 g­ = 11; 397 ià( g­ < 1) 398 g­ = 1; 399 sw­³d = 0; 401  i = 0; i < num - g­ ; i++) { 402 j = i + g­ ; 403 ià( `¡rcmp ( `DIRLIST_ENT_NAME ( ’t [ i ]), DIRLIST_ENT_NAMEÓÁ[ j ])) > 0) { 404 tmp = ’t [ i ]; 405 ’t [ i ] =ƒÁ[ j ]; 406 ’t [ j ] = tmp ; 407 sw­³d = 1; 411 }  g­ > 1 || sw­³d ); 412 } } 417  $h‰p_li¡_dœeùÜy_sizefmt (* buf , off_t size ) { 418 cÚ¡  un™ [] = "KMGTPE"; 419 cÚ¡ * u = un™ - 1; 420  »maš ; 421 * out = buf ; 423 ià( size < 100) 424 size += 99; 425 ià( size < 100) 426 size = 0; 429 »maš = (è size & 1023; 430 size >>= 10; 431 u ++; 432 ià(( size & (~0 ^ 1023)) == 0) 436 »maš /= 100; 437 ià( »maš > 9) 438 »maš = 9; 439 ià( size > 999) { 440 size = 0; 441 »maš = 9; 442 u ++; 445 out +ð `LI_Éo¡r (out, size ); 446 out [0] = '.'; 447 out [1] = »maš + '0'; 448 out [2] = * u ; 449 out [3] = '\0'; 451  ( out + 3 - buf ); 452 } } 454  $h‰p_li¡_dœeùÜy_h—d” ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * out ) { 455 `UNUSED ( ¤v ); 457 `BUFFER_APPEND_STRING_CONST ( out , 463 `bufãr_­³nd_¡ršg_’coded ( out , `CONST_BUF_LEN ( cÚ -> uri . ·th ), ENCODING_MINIMAL_XML ); 464 `BUFFER_APPEND_STRING_CONST ( out , "\n"); 466 ià( p -> cÚf . ex‹º®_css -> u£d > 1) { 467 `BUFFER_APPEND_STRING_CONST ( out , " cÚf . ex‹º®_css ); 469 `BUFFER_APPEND_STRING_CONST ( out , "\" />\n"); 471 `BUFFER_APPEND_STRING_CONST ( out , 489 `BUFFER_APPEND_STRING_CONST ( out , 508 `BUFFER_APPEND_STRING_CONST ( out , "\n\n"); 511 ià( p -> cÚf . show_h—d” ) { 512 ¡»am s ; 515 `bufãr_cÝy_¡ršg_bufãr ( p -> tmp_buf , cÚ -> physiÿl . ·th ); 516 `BUFFER_APPEND_SLASH ( p -> tmp_buf ); 517 `BUFFER_APPEND_STRING_CONST ( p -> tmp_buf , "HEADER.txt"); 519 ià(-1 !ð `¡»am_Ý’ (& s , p -> tmp_buf )) { 520 `BUFFER_APPEND_STRING_CONST ( out , "
");

521 
	`bufãr_­³nd_¡ršg_’coded
(
out
, 
s
.
¡¬t
, s.
size
, 
ENCODING_MINIMAL_XML
);

522 
	`BUFFER_APPEND_STRING_CONST
(
out
, "
"); 524 `¡»am_þo£ (& s ); 527 `BUFFER_APPEND_STRING_CONST ( out , "

Index of "); 528 `bufãr_­³nd_¡ršg_’coded ( out , `CONST_BUF_LEN ( cÚ -> uri . ·th ), ENCODING_MINIMAL_XML ); 529 `BUFFER_APPEND_STRING_CONST ( out , 549 } } 551  $h‰p_li¡_dœeùÜy_foÙ” ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * out ) { 552 `UNUSED ( ¤v ); 554 `BUFFER_APPEND_STRING_CONST ( out , 560 ià( p -> cÚf . show_»adme ) { 561 ¡»am s ; 564 `bufãr_cÝy_¡ršg_bufãr ( p -> tmp_buf , cÚ -> physiÿl . ·th ); 565 `BUFFER_APPEND_SLASH ( p -> tmp_buf ); 566 `BUFFER_APPEND_STRING_CONST ( p -> tmp_buf , "README.txt"); 568 ià(-1 !ð `¡»am_Ý’ (& s , p -> tmp_buf )) { 569 `BUFFER_APPEND_STRING_CONST ( out , "
");

570 
	`bufãr_­³nd_¡ršg_’coded
(
out
, 
s
.
¡¬t
, s.
size
, 
ENCODING_MINIMAL_XML
);

571 
	`BUFFER_APPEND_STRING_CONST
(
out
, "
"); 573 `¡»am_þo£ (& s ); 576 `BUFFER_APPEND_STRING_CONST ( out , 580 ià( p -> cÚf . £t_foÙ” -> u£d > 1) { 581 `bufãr_­³nd_¡ršg_bufãr ( out , p -> cÚf . £t_foÙ” ); 582 } ià( `bufãr_is_em±y ( cÚ -> cÚf . £rv”_g )) { 583 `BUFFER_APPEND_STRING_CONST ( out , PACKAGE_NAME "/" PACKAGE_VERSION ); 585 `bufãr_­³nd_¡ršg_bufãr ( out , cÚ -> cÚf . £rv”_g ); 588 `BUFFER_APPEND_STRING_CONST ( out , 593 } } 595  $h‰p_li¡_dœeùÜy ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * dœ ) { 596 DIR * dp ; 597 bufãr * out ; 598  dœ’t * d’t ; 599  ¡© ¡ ; 600 * ·th , * ·th_fže ; 601 size_t i ; 602  hide_dÙfžes = p -> cÚf . hide_dÙ_fžes ; 603 dœls_li¡_t dœs , fžes , * li¡ ; 604 dœls_’Œy_t * tmp ; 605  sizebuf [("999.9K")]; 606  d©ebuf [("2005-Jan-01 22:23:24")]; 607 size_t k ; 608 cÚ¡ * cÚ‹Á_ty³ ; 609  Çme_max ; 610 #ifdeà HAVE_XATTR 611  ©Œv® [128]; 612  ©ŒËn ; 614 #ifdeà HAVE_LOCALTIME_R 615  tm m; 618 ià( dœ -> u£d == 0)  -1; 620 i = dœ -> u£d - 1; 622 #ifdeà HAVE_PATHCONF 623 ià(-1 =ð( Çme_max = `·thcÚf ( dœ -> ±r , _PC_NAME_MAX ))) { 624 #ifdeà NAME_MAX 625 Çme_max = NAME_MAX ; 627 Çme_max = 255; 630 #–ià defšed __WIN32 631 Çme_max = FILENAME_MAX ; 633 Çme_max = NAME_MAX ; 636 ·th = `m®loc ( dœ -> u£d + Çme_max ); 637 `as£¹ ( ·th ); 638 `¡rýy ( ·th , dœ -> ±r ); 639 ·th_fže = ·th + i ; 641 ià( NULL =ð( dp = `Ý’dœ ( ·th ))) { 642 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 643 "Ý’dœ fažed:", dœ , `¡»¼Ü ( ”ºo )); 645 `ä“ ( ·th ); 649 dœs . ’t = ( dœls_’Œy_t **è `m®loc ((dœls_’Œy_t*è* DIRLIST_BLOB_SIZE ); 650 `as£¹ ( dœs . ’t ); 651 dœs . size = DIRLIST_BLOB_SIZE ; 652 dœs . u£d = 0; 653 fžes . ’t = ( dœls_’Œy_t **è `m®loc ((dœls_’Œy_t*è* DIRLIST_BLOB_SIZE ); 654 `as£¹ ( fžes . ’t ); 655 fžes . size = DIRLIST_BLOB_SIZE ; 656 fžes . u£d = 0; 658 ( d’t = `»addœ ( dp )è!ð NULL ) { 659  exþude_m©ch = 0; 661 ià( d’t -> d_Çme [0] == '.') { 662 ià( hide_dÙfžes ) 664 ià( d’t -> d_Çme [1] == '\0') 666 ià( d’t -> d_Çme [1] == '.' && dent->d_name[2] == '\0') 670 ià( p -> cÚf . hide_»adme_fže ) { 671 ià( `¡rcmp ( d’t -> d_Çme , "README.txt") == 0) 674 ià( p -> cÚf . hide_h—d”_fže ) { 675 ià( `¡rcmp ( d’t -> d_Çme , "HEADER.txt") == 0) 682 #ifdeà HAVE_PCRE_H 683  i = 0; i < p -> cÚf . exþudes -> u£d ; i++) { 684  n ; 685  #N 10 ) 686  ovec [ N * 3]; 687 püe * »gex = p -> cÚf . exþudes -> ±r [ i ]->regex; 689 ià(( n = `püe_exec ( »gex , NULL , d’t -> d_Çme , 690 `¡¾’ ( d’t -> d_Çme ), 0, 0, ovec , 3 * N )) < 0) { 691 ià( n !ð PCRE_ERROR_NOMATCH ) { 692 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 693 "executiÚƒ¼Ü whžm©chšg:", n ); 699 exþude_m©ch = 1; 704 ià( exþude_m©ch ) { 709 i = `¡¾’ ( d’t -> d_Çme ); 714 ià( i > ( size_t ) Çme_max ) ; 716 `memýy ( ·th_fže , d’t -> d_Çme , i + 1); 717 ià( `¡© ( ·th , & ¡ ) != 0) 720 li¡ = & fžes ; 721 ià( `S_ISDIR ( ¡ . ¡_mode )) 722 li¡ = & dœs ; 724 ià( li¡ -> u£d =ðli¡-> size ) { 725 li¡ -> size +ð DIRLIST_BLOB_SIZE ; 726 li¡ -> ’t = ( dœls_’Œy_t **è `»®loc Öi¡->’t, (dœls_’Œy_t*è*†i¡-> size ); 727 `as£¹ ( li¡ -> ’t ); 730 tmp = ( dœls_’Œy_t *è `m®loc ((dœls_’Œy_tè+ 1 + i ); 731 tmp -> mtime = ¡ . ¡_mtime ; 732 tmp -> size = ¡ . ¡_size ; 733 tmp -> Çm–’ = i ; 734 `memýy ( `DIRLIST_ENT_NAME ( tmp ), d’t -> d_Çme , i + 1); 736 li¡ -> ’t [li¡-> u£d ++] = tmp ; 738 `þo£dœ ( dp ); 740 ià( dœs . u£d è `h‰p_dœls_sÜt (dœs. ’t , dirs.used); 742 ià( fžes . u£d è `h‰p_dœls_sÜt (fžes. ’t , files.used); 744 out = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 745 `BUFFER_COPY_STRING_CONST ( out , " cÚf . ’codšg )) { 747 `BUFFER_APPEND_STRING_CONST ( out , "iso-8859-1"); 749 `bufãr_­³nd_¡ršg_bufãr ( out , p -> cÚf . ’codšg ); 751 `BUFFER_APPEND_STRING_CONST ( out , "\"?>\n"); 752 `h‰p_li¡_dœeùÜy_h—d” ( ¤v , cÚ , p , out ); 755  i = 0; i < dœs . u£d ; i++) { 756 tmp = dœs . ’t [ i ]; 758 #ifdeà HAVE_LOCALTIME_R 759 `loÿÉime_r (&( tmp -> mtime ), & tm ); 760 `¡ráime ( d©ebuf , (d©ebuf), "%Y-%b-%d %H:%M:%S", & tm ); 762 `¡ráime ( d©ebuf , (d©ebuf), "%Y-%b-%d %H:%M:%S", `loÿÉime (&( tmp -> mtime ))); 765 `BUFFER_APPEND_STRING_CONST ( out , " Çm–’ , ENCODING_REL_URI_PART ); 767 `BUFFER_APPEND_STRING_CONST ( out , "/\">"); 768 `bufãr_­³nd_¡ršg_’coded ( out , `DIRLIST_ENT_NAME ( tmp ),mp-> Çm–’ , ENCODING_MINIMAL_XML ); 769 `BUFFER_APPEND_STRING_CONST ( out , "/"); 770 `bufãr_­³nd_¡ršg_Ën ( out , d©ebuf , (datebuf) - 1); 771 `BUFFER_APPEND_STRING_CONST ( out , "-  Directory\n"); 773 `ä“ ( tmp ); 777  i = 0; i < fžes . u£d ; i++) { 778 tmp = fžes . ’t [ i ]; 780 cÚ‹Á_ty³ = NULL ; 781 #ifdeà HAVE_XATTR 783 ià( cÚ -> cÚf . u£_x©Œ ) { 784 `memýy ( ·th_fže , `DIRLIST_ENT_NAME ( tmp ),mp-> Çm–’ + 1); 785 ©ŒËn = ( ©Œv® ) - 1; 786 ià( `©Œ_g‘ ( ·th , "CÚ‹Á-Ty³", ©Œv® , & ©ŒËn , 0) == 0) { 787 ©Œv® [ ©ŒËn ] = '\0'; 788 cÚ‹Á_ty³ = ©Œv® ; 793 ià( cÚ‹Á_ty³ =ð NULL ) { 794 cÚ‹Á_ty³ = "application/octet-stream"; 795  k = 0; k < cÚ -> cÚf . mim‘y³s -> u£d ; k++) { 796 d©a_¡ršg * ds = (d©a_¡ršg *) cÚ -> cÚf . mim‘y³s -> d©a [ k ]; 797 size_t ù_Ën ; 799 ià( ds -> key -> u£d == 0) 802 ù_Ën = ds -> key -> u£d - 1; 803 ià( tmp -> Çm–’ < ù_Ën ) 806 ià(0 =ð `¡ºÿ£cmp ( `DIRLIST_ENT_NAME ( tmp è+mp-> Çm–’ - ù_Ën , ds -> key -> ±r , ct_len)) { 807 cÚ‹Á_ty³ = ds -> v®ue -> ±r ; 813 #ifdeà HAVE_LOCALTIME_R 814 `loÿÉime_r (&( tmp -> mtime ), & tm ); 815 `¡ráime ( d©ebuf , (d©ebuf), "%Y-%b-%d %H:%M:%S", & tm ); 817 `¡ráime ( d©ebuf , (d©ebuf), "%Y-%b-%d %H:%M:%S", `loÿÉime (&( tmp -> mtime ))); 819 `h‰p_li¡_dœeùÜy_sizefmt ( sizebuf , tmp -> size ); 821 `BUFFER_APPEND_STRING_CONST ( out , " Çm–’ , ENCODING_REL_URI_PART ); 823 `BUFFER_APPEND_STRING_CONST ( out , "\">"); 824 `bufãr_­³nd_¡ršg_’coded ( out , `DIRLIST_ENT_NAME ( tmp ),mp-> Çm–’ , ENCODING_MINIMAL_XML ); 825 `BUFFER_APPEND_STRING_CONST ( out , ""); 826 `bufãr_­³nd_¡ršg_Ën ( out , d©ebuf , (datebuf) - 1); 827 `BUFFER_APPEND_STRING_CONST ( out , ""); 828 `bufãr_­³nd_¡ršg ( out , sizebuf ); 829 `BUFFER_APPEND_STRING_CONST ( out , ""); 830 `bufãr_­³nd_¡ršg ( out , cÚ‹Á_ty³ ); 831 `BUFFER_APPEND_STRING_CONST ( out , "\n"); 833 `ä“ ( tmp ); 836 `ä“ ( fžes . ’t ); 837 `ä“ ( dœs . ’t ); 838 `ä“ ( ·th ); 840 `h‰p_li¡_dœeùÜy_foÙ” ( ¤v , cÚ , p , out ); 843 ià( `bufãr_is_em±y ( p -> cÚf . ’codšg )) { 844 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("Content-Type"), CONST_STR_LEN("text/html")); 846 `bufãr_cÝy_¡ršg ( p -> cÚ‹Á_ch¬£t , "text/html; charset="); 847 `bufãr_­³nd_¡ršg_bufãr ( p -> cÚ‹Á_ch¬£t ,…-> cÚf . ’codšg ); 848 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("CÚ‹Á-Ty³"), `CONST_BUF_LEN ( p -> cÚ‹Á_ch¬£t )); 851 cÚ -> fže_fšished = 1; 854 } } 858 $URIHANDLER_FUNC ( mod_dœli¡šg_sub»que¡ ) { 859 ¶ugš_d©a * p = p_d ; 860 ¡©_ÿche_’Œy * sû = NULL ; 862 `UNUSED ( ¤v ); 864 ià( cÚ -> physiÿl . ·th -> u£d =ð0è HANDLER_GO_ON ; 865 ià( cÚ -> uri . ·th -> u£d =ð0è HANDLER_GO_ON ; 866 ià( cÚ -> uri . ·th -> ±r [cÚ->uri.·th-> u£d - 2] !ð'/'è HANDLER_GO_ON ; 868 `mod_dœli¡šg_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 870 ià(! p -> cÚf . dœ_li¡šg è HANDLER_GO_ON ; 872 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 873 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "-- handlinghe„equest‡s Dir-Listing"); 874 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "URI :", cÚ -> uri . ·th ); 877 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , cÚ-> physiÿl . ·th , & sû )) { 878 `årštf ( ¡d”r , "%s.%d: %s\n", __FILE__ , __LINE__ , cÚ -> physiÿl . ·th -> ±r ); 879 `SEGFAULT (); 882 ià(! `S_ISDIR ( sû -> ¡ . ¡_mode )è HANDLER_GO_ON ; 884 ià( `h‰p_li¡_dœeùÜy ( ¤v , cÚ , p , cÚ-> physiÿl . ·th )) { 886 cÚ -> h‰p_¡©us = 403; 889 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 892  HANDLER_FINISHED ; 893 } } 897  $mod_dœli¡šg_¶ugš_š™ ( ¶ugš * p ) { 898 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 899 p -> Çme = `bufãr_š™_¡ršg ("dirlisting"); 901 p -> š™ = mod_dœli¡šg_š™ ; 902 p -> hªdË_sub»que¡_¡¬t = mod_dœli¡šg_sub»que¡ ; 903 p -> £t_deçuÉs = mod_dœli¡šg_£t_deçuÉs ; 904 p -> þ—nup = mod_dœli¡šg_ä“ ; 906 p -> d©a = NULL ; 909 } } @src/mod_evasive.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 5  ~"ba£.h " 6  ~"log.h " 7  ~"bufãr.h " 9  ~"¶ugš.h " 11  ~"š‘_ÁÝ_ÿche.h " 29  mmax_cÚns ; 30 } t¶ugš_cÚfig ; 33 mPLUGIN_DATA ; 35 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 37 ¶ugš_cÚfig mcÚf ; 38 } t¶ugš_d©a ; 40 $INIT_FUNC ( mod_evasive_š™ ) { 41 ¶ugš_d©a * p ; 43 p = `ÿÎoc (1, (*p)); 45  p ; 46 } } 48 $FREE_FUNC ( mod_evasive_ä“ ) { 49 ¶ugš_d©a * p = p_d ; 51 `UNUSED ( ¤v ); 53 ià(! p è HANDLER_GO_ON ; 55 ià( p -> cÚfig_¡Üage ) { 56 size_t i ; 57  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 58 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 60 `ä“ ( s ); 62 `ä“ ( p -> cÚfig_¡Üage ); 65 `ä“ ( p ); 67  HANDLER_GO_ON ; 68 } } 70 $SETDEFAULTS_FUNC ( mod_evasive_£t_deçuÉs ) { 71 ¶ugš_d©a * p = p_d ; 72 size_t i = 0; 74 cÚfig_v®ues_t cv [] = { 75 { "evasive.max-cÚns-³r-", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 76 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 79 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 81  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 82 ¶ugš_cÚfig * s ; 84 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 85 s -> max_cÚns = 0; 87 cv [0]. de¡š©iÚ = &( s -> max_cÚns ); 89 p -> cÚfig_¡Üage [ i ] = s ; 91 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 92  HANDLER_ERROR ; 96  HANDLER_GO_ON ; 97 } } 99  #PATCH ( x ) \ 100 p -> cÚf . x = s ->x; ) 101  $mod_evasive_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 102 size_t i , j ; 103 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 105 `PATCH ( max_cÚns ); 108  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 109 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 110 s = p -> cÚfig_¡Üage [ i ]; 113 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 116  j = 0; j < dc -> v®ue -> u£d ; j++) { 117 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 119 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("evasive.max-conns-per-ip"))) { 120 `PATCH ( max_cÚns ); 126 } } 127 #undeà PATCH 129 $URIHANDLER_FUNC ( mod_evasive_uri_hªdËr ) { 130 ¶ugš_d©a * p = p_d ; 131 size_t cÚns_by_ = 0; 132 size_t j ; 134 ià( cÚ -> uri . ·th -> u£d =ð0è HANDLER_GO_ON ; 136 `mod_evasive_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 139 ià( p -> cÚf . max_cÚns =ð0è HANDLER_GO_ON ; 141  j = 0; j < ¤v -> cÚns -> u£d ; j++) { 142 cÚÃùiÚ * c = ¤v -> cÚns -> ±r [ j ]; 147 ià( c -> d¡_addr . v4 . sš_addr . s_addr =ð cÚ ->dst_addr.ipv4.sin_addr.s_addr && 148 c -> ¡©e > CON_STATE_REQUEST_END ) { 149 cÚns_by_ ++; 151 ià( cÚns_by_ > p -> cÚf . max_cÚns ) { 152 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 153 `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &( cÚ -> d¡_addr )), 156 cÚ -> h‰p_¡©us = 403; 157  HANDLER_FINISHED ; 162  HANDLER_GO_ON ; 163 } } 166  $mod_evasive_¶ugš_š™ ( ¶ugš * p ) { 167 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 168 p -> Çme = `bufãr_š™_¡ršg ("evasive"); 170 p -> š™ = mod_evasive_š™ ; 171 p -> £t_deçuÉs = mod_evasive_£t_deçuÉs ; 172 p -> hªdË_uri_þ—n = mod_evasive_uri_hªdËr ; 173 p -> þ—nup = mod_evasive_ä“ ; 175 p -> d©a = NULL ; 178 } } @src/mod_evhost.c 1  ~<¡ršg.h > 2  ~<”ºo.h > 3  ~<ùy³.h > 5  ~"¶ugš.h " 6  ~"log.h " 7  ~"»¥Ú£.h " 8  ~"¡©_ÿche.h " 12 bufãr * m·th_p›ûs_¿w ; 15 size_t mËn ; 16 bufãr ** m·th_p›ûs ; 17 } t¶ugš_cÚfig ; 20 mPLUGIN_DATA ; 21 bufãr * mtmp_buf ; 23 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 24 ¶ugš_cÚfig mcÚf ; 25 } t¶ugš_d©a ; 27 $INIT_FUNC ( mod_evho¡_š™ ) { 28 ¶ugš_d©a * p ; 30 p = `ÿÎoc (1, (*p)); 32 p -> tmp_buf = `bufãr_š™ (); 34  p ; 35 } } 37 $FREE_FUNC ( mod_evho¡_ä“ ) { 38 ¶ugš_d©a * p = p_d ; 40 `UNUSED ( ¤v ); 42 ià(! p è HANDLER_GO_ON ; 44 ià( p -> cÚfig_¡Üage ) { 45 size_t i ; 46  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 47 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 49 ià(! s ) ; 51 if( s -> ·th_p›ûs ) { 52 size_t j ; 53  j = 0; j < s -> Ën ; j++) { 54 `bufãr_ä“ ( s -> ·th_p›ûs [ j ]); 57 `ä“ ( s -> ·th_p›ûs ); 60 `bufãr_ä“ ( s -> ·th_p›ûs_¿w ); 62 `ä“ ( s ); 64 `ä“ ( p -> cÚfig_¡Üage ); 67 `bufãr_ä“ ( p -> tmp_buf ); 69 `ä“ ( p ); 71  HANDLER_GO_ON ; 72 } } 74  $mod_evho¡_·r£_·‰”n ( ¶ugš_cÚfig * s ) { 75 * ±r = s -> ·th_p›ûs_¿w ->±r,* pos ; 77 s -> ·th_p›ûs = NULL ; 79  pos = ±r ;*ptr;ptr++) { 80 if(* ±r == '%') { 81 s -> ·th_p›ûs = `»®loc (s->·th_p›ûs,(s-> Ën +2) * (*s->path_pieces)); 82 s -> ·th_p›ûs [s-> Ën ] = `bufãr_š™ (); 83 s -> ·th_p›ûs [s-> Ën +1] = `bufãr_š™ (); 85 `bufãr_cÝy_¡ršg_Ën ( s -> ·th_p›ûs [s-> Ën ], pos , ±r -pos); 86 pos = ±r + 2; 88 `bufãr_cÝy_¡ršg_Ën ( s -> ·th_p›ûs [s-> Ën +1], ±r ++,2); 90 s -> Ën += 2; 94 if(* pos != '\0') { 95 s -> ·th_p›ûs = `»®loc (s->·th_p›ûs,(s-> Ën +1) * (*s->path_pieces)); 96 s -> ·th_p›ûs [s-> Ën ] = `bufãr_š™ (); 98 `bufãr_­³nd_memÜy ( s -> ·th_p›ûs [s-> Ën ], pos , ±r -pos); 100 s -> Ën += 1; 102 } } 104 $SETDEFAULTS_FUNC ( mod_evho¡_£t_deçuÉs ) { 105 ¶ugš_d©a * p = p_d ; 106 size_t i ; 123 cÚfig_v®ues_t cv [] = { 124 { "evho¡.·th-·‰”n", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 125 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 128 ià(! p è HANDLER_ERROR ; 130 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 132  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 133 ¶ugš_cÚfig * s ; 135 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 136 s -> ·th_p›ûs_¿w = `bufãr_š™ (); 137 s -> ·th_p›ûs = NULL ; 138 s -> Ën = 0; 140 cv [0]. de¡š©iÚ = s -> ·th_p›ûs_¿w ; 142 p -> cÚfig_¡Üage [ i ] = s ; 144 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 145  HANDLER_ERROR ; 148 ià( s -> ·th_p›ûs_¿w -> u£d != 0) { 149 `mod_evho¡_·r£_·‰”n ( s ); 153  HANDLER_GO_ON ; 154 } } 164  $mod_evho¡_·r£_ho¡ ( cÚÃùiÚ * cÚ , ¬¿y * ho¡ ) { 166 * ±r = cÚ -> uri . authÜ™y ->±¸+ cÚ->uri.authÜ™y-> u£d - 1; 167 * cÞÚ = ±r ; 168  fœ¡ = 1; 169 d©a_¡ršg * ds ; 170  i ; 173 ; ±r > cÚ -> uri . authÜ™y ->ptr;ptr--) { 174 if(* ±r == '.') { 175 if( fœ¡ ) first = 0; 177 } if(* ±r == ':') { 178 cÞÚ = ±r ; 179 fœ¡ = 1; 183 ds = `d©a_¡ršg_š™ (); 184 `bufãr_cÝy_¡ršg ( ds -> key ,"%0"); 187 ià(* ±r == '.')…tr++; 188 `bufãr_cÝy_¡ršg_Ën ( ds -> v®ue , ±r , cÞÚ -ptr); 190 `¬¿y_š£¹_unique ( ho¡ ,( d©a_un£t *) ds ); 194 ià( cÞÚ !ð cÚ -> uri . authÜ™y -> ±r ) { 195  ±r = cÞÚ - 1, i = 1;…Œ > cÚ -> uri . authÜ™y ->ptr;…tr--) { 196 if(* ±r == '.') { 197 ià( ±r !ð cÞÚ - 1) { 199 ds = `d©a_¡ršg_š™ (); 200 `bufãr_cÝy_¡ršg ( ds -> key ,"%"); 201 `bufãr_­³nd_lÚg ( ds -> key , i ++); 202 `bufãr_cÝy_¡ršg_Ën ( ds -> v®ue , ±r +1, cÞÚ -ptr-1); 204 `¬¿y_š£¹_unique ( ho¡ ,( d©a_un£t *) ds ); 206 cÞÚ = ±r ; 211 ià( cÞÚ !ð ±r ) { 212 ds = `d©a_¡ršg_š™ (); 213 `bufãr_cÝy_¡ršg ( ds -> key ,"%"); 214 `bufãr_­³nd_lÚg ( ds -> key , i ++); 215 `bufãr_cÝy_¡ršg_Ën ( ds -> v®ue , ±r , cÞÚ -ptr); 217 `¬¿y_š£¹_unique ( ho¡ ,( d©a_un£t *) ds ); 222 } } 224  #PATCH ( x ) \ 225 p -> cÚf . x = s ->x; ) 226  $mod_evho¡_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 227 size_t i , j ; 228 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 230 `PATCH ( ·th_p›ûs ); 231 `PATCH ( Ën ); 234  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 235 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 236 s = p -> cÚfig_¡Üage [ i ]; 239 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 242  j = 0; j < dc -> v®ue -> u£d ; j++) { 243 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 245 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("evhost.path-pattern"))) { 246 `PATCH ( ·th_p›ûs ); 247 `PATCH ( Ën ); 253 } } 254 #undeà PATCH 257  hªdËr_t $mod_evho¡_uri_hªdËr ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 258 ¶ugš_d©a * p = p_d ; 259 size_t i ; 260 ¬¿y * ·r£d_ho¡ ; 261 * ±r ; 262  nÙ_good = 0; 263 ¡©_ÿche_’Œy * sû = NULL ; 266 ià( cÚ -> uri . authÜ™y -> u£d =ð0è HANDLER_GO_ON ; 268 `mod_evho¡_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 271 ià(0 =ð p -> cÚf . Ën ) { 272  HANDLER_GO_ON ; 275 ·r£d_ho¡ = `¬¿y_š™ (); 277 `mod_evho¡_·r£_ho¡ ( cÚ , ·r£d_ho¡ ); 280 `bufãr_»£t ( p -> tmp_buf ); 282  i = 0; i < p -> cÚf . Ën ; i++) { 283 ±r = p -> cÚf . ·th_p›ûs [ i ]->ptr; 284 ià(* ±r == '%') { 285 d©a_¡ršg * ds ; 287 ià(*( ±r +1) == '%') { 289 `BUFFER_APPEND_STRING_CONST ( p -> tmp_buf ,"%"); 290 } ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( ·r£d_ho¡ , p -> cÚf . ·th_p›ûs [ i ]-> ±r ))) { 291 ià( ds -> v®ue -> u£d ) { 292 `bufãr_­³nd_¡ršg_bufãr ( p -> tmp_buf , ds -> v®ue ); 298 `bufãr_­³nd_¡ršg_bufãr ( p -> tmp_buf ,p-> cÚf . ·th_p›ûs [ i ]); 302 `BUFFER_APPEND_SLASH ( p -> tmp_buf ); 304 `¬¿y_ä“ ( ·r£d_ho¡ ); 306 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , p -> tmp_buf , & sû )) { 307 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", `¡»¼Ü ( ”ºo ), p -> tmp_buf ); 308 nÙ_good = 1; 309 } if(! `S_ISDIR ( sû -> ¡ . ¡_mode )) { 310 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "nÙ‡ dœeùÜy:", p -> tmp_buf ); 311 nÙ_good = 1; 314 ià(! nÙ_good ) { 315 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . doc_roÙ , p -> tmp_buf ); 318  HANDLER_GO_ON ; 319 } } 321  $mod_evho¡_¶ugš_š™ ( ¶ugš * p ) { 322 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 323 p -> Çme = `bufãr_š™_¡ršg ("evhost"); 324 p -> š™ = mod_evho¡_š™ ; 325 p -> £t_deçuÉs = mod_evho¡_£t_deçuÉs ; 326 p -> hªdË_doüoÙ = mod_evho¡_uri_hªdËr ; 327 p -> þ—nup = mod_evho¡_ä“ ; 329 p -> d©a = NULL ; 332 } } @src/mod_expire.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 4  ~ 6  ~"ba£.h " 7  ~"log.h " 8  ~"bufãr.h " 9  ~"»¥Ú£.h " 11  ~"¶ugš.h " 12  ~"¡©_ÿche.h " 25 ¬¿y * mexpœe_u¾ ; 26 } t¶ugš_cÚfig ; 29 mPLUGIN_DATA ; 31 bufãr * mexpœe_t¡mp ; 33 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 35 ¶ugš_cÚfig mcÚf ; 36 } t¶ugš_d©a ; 39 $INIT_FUNC ( mod_expœe_š™ ) { 40 ¶ugš_d©a * p ; 42 p = `ÿÎoc (1, (*p)); 44 p -> expœe_t¡mp = `bufãr_š™ (); 46 `bufãr_´•¬e_cÝy ( p -> expœe_t¡mp , 255); 48  p ; 49 } } 52 $FREE_FUNC ( mod_expœe_ä“ ) { 53 ¶ugš_d©a * p = p_d ; 55 `UNUSED ( ¤v ); 57 ià(! p è HANDLER_GO_ON ; 59 `bufãr_ä“ ( p -> expœe_t¡mp ); 61 ià( p -> cÚfig_¡Üage ) { 62 size_t i ; 63  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 64 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 66 `¬¿y_ä“ ( s -> expœe_u¾ ); 68 `ä“ ( s ); 70 `ä“ ( p -> cÚfig_¡Üage ); 73 `ä“ ( p ); 75  HANDLER_GO_ON ; 76 } } 78  $mod_expœe_g‘_off£t ( £rv” * ¤v , ¶ugš_d©a * p , bufãr * expœe , * off£t ) { 79 * ts ; 80  ty³ = -1; 81  »‰s = 0; 83 `UNUSED ( p ); 93 ià( expœe -> u£d == 0) { 94 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 99 ts = expœe -> ±r ; 101 ià(0 =ð `¡ºcmp ( ts , "access ", 7)) { 102 ty³ = 0; 103 ts += 7; 104 } ià(0 =ð `¡ºcmp ( ts , "now ", 4)) { 105 ty³ = 0; 106 ts += 4; 107 } ià(0 =ð `¡ºcmp ( ts , "modification ", 13)) { 108 ty³ = 1; 109 ts += 13; 112 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 113 "šv®id :", ts ); 117 ià(0 =ð `¡ºcmp ( ts , "plus ", 5)) { 119 ts += 5; 124 * ¥aû , * ”r ; 125  num ; 127 ià( NULL =ð( ¥aû = `¡rchr ( ts , ' '))) { 128 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 129 "missšg s·û‡á” :", ts ); 133 num = `¡¹Þ ( ts , & ”r , 10); 134 ià(* ”r != ' ') { 135 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 136 "missšg ‡á” :", ts ); 140 ts = ¥aû + 1; 142 ià( NULL !ð( ¥aû = `¡rchr ( ts , ' '))) { 143  ¦’ ; 146 ¦’ = ¥aû - ts ; 148 ià( ¦’ == 5 && 149 0 =ð `¡ºcmp ( ts , "y—rs", ¦’ )) { 150 num *= 60 * 60 * 24 * 30 * 12; 151 } ià( ¦’ == 6 && 152 0 =ð `¡ºcmp ( ts , "mÚths", ¦’ )) { 153 num *= 60 * 60 * 24 * 30; 154 } ià( ¦’ == 5 && 155 0 =ð `¡ºcmp ( ts , "w“ks", ¦’ )) { 156 num *= 60 * 60 * 24 * 7; 157 } ià( ¦’ == 4 && 158 0 =ð `¡ºcmp ( ts , "days", ¦’ )) { 159 num *= 60 * 60 * 24; 160 } ià( ¦’ == 5 && 161 0 =ð `¡ºcmp ( ts , "hours", ¦’ )) { 162 num *= 60 * 60; 163 } ià( ¦’ == 7 && 164 0 =ð `¡ºcmp ( ts , "mšu‹s", ¦’ )) { 165 num *= 60; 166 } ià( ¦’ == 7 && 167 0 =ð `¡ºcmp ( ts , "£cÚds", ¦’ )) { 168 num *= 1; 170 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 171 "unknowÀty³:", ts ); 175 »‰s +ð num ; 177 ts = ¥aû + 1; 179 ià(0 =ð `¡rcmp ( ts , "years")) { 180 num *= 60 * 60 * 24 * 30 * 12; 181 } ià(0 =ð `¡rcmp ( ts , "months")) { 182 num *= 60 * 60 * 24 * 30; 183 } ià(0 =ð `¡rcmp ( ts , "weeks")) { 184 num *= 60 * 60 * 24 * 7; 185 } ià(0 =ð `¡rcmp ( ts , "days")) { 186 num *= 60 * 60 * 24; 187 } ià(0 =ð `¡rcmp ( ts , "hours")) { 188 num *= 60 * 60; 189 } ià(0 =ð `¡rcmp ( ts , "minutes")) { 190 num *= 60; 191 } ià(0 =ð `¡rcmp ( ts , "seconds")) { 192 num *= 1; 194 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 195 "unknowÀty³:", ts ); 199 »‰s +ð num ; 205 ià( off£t !ð NULL è*off£ˆð »‰s ; 207  ty³ ; 208 } } 213 $SETDEFAULTS_FUNC ( mod_expœe_£t_deçuÉs ) { 214 ¶ugš_d©a * p = p_d ; 215 size_t i = 0, k ; 217 cÚfig_v®ues_t cv [] = { 218 { "expœe.u¾", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 219 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 222 ià(! p è HANDLER_ERROR ; 224 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 226  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 227 ¶ugš_cÚfig * s ; 229 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 230 s -> expœe_u¾ = `¬¿y_š™ (); 232 cv [0]. de¡š©iÚ = s -> expœe_u¾ ; 234 p -> cÚfig_¡Üage [ i ] = s ; 236 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 237  HANDLER_ERROR ; 240  k = 0; k < s -> expœe_u¾ -> u£d ; k++) { 241 d©a_¡ršg * ds = (d©a_¡ršg *) s -> expœe_u¾ -> d©a [ k ]; 244 ià(-1 =ð `mod_expœe_g‘_off£t ( ¤v , p , ds -> v®ue , NULL )) { 245 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 246 "·rsšgƒxpœe.u¾ fažed:", ds -> v®ue ); 247  HANDLER_ERROR ; 253  HANDLER_GO_ON ; 254 } } 256  #PATCH ( x ) \ 257 p -> cÚf . x = s ->x; ) 258  $mod_expœe_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 259 size_t i , j ; 260 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 262 `PATCH ( expœe_u¾ ); 265  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 266 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 267 s = p -> cÚfig_¡Üage [ i ]; 270 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 273  j = 0; j < dc -> v®ue -> u£d ; j++) { 274 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 276 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("expire.url"))) { 277 `PATCH ( expœe_u¾ ); 283 } } 284 #undeà PATCH 286 $URIHANDLER_FUNC ( mod_expœe_·th_hªdËr ) { 287 ¶ugš_d©a * p = p_d ; 288  s_Ën ; 289 size_t k ; 291 ià( cÚ -> uri . ·th -> u£d =ð0è HANDLER_GO_ON ; 293 `mod_expœe_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 295 s_Ën = cÚ -> uri . ·th -> u£d - 1; 297  k = 0; k < p -> cÚf . expœe_u¾ -> u£d ; k++) { 298 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . expœe_u¾ -> d©a [ k ]; 299  ù_Ën = ds -> key -> u£d - 1; 301 ià( ù_Ën > s_Ën ) ; 302 ià( ds -> key -> u£d == 0) ; 304 ià(0 =ð `¡ºcmp ( cÚ -> uri . ·th -> ±r , ds -> key ->±r, ù_Ën )) { 305  ts ; 306 time_t t ; 307 size_t Ën ; 308 ¡©_ÿche_’Œy * sû = NULL ; 310 `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , cÚ-> physiÿl . ·th , & sû ); 312  `mod_expœe_g‘_off£t ( ¤v , p , ds -> v®ue , & ts )) { 315 t = ( ts + ¤v -> cur_ts ); 320 t = ( ts + sû -> ¡ . ¡_mtime ); 328 ià(0 =ð( Ën = `¡ráime ( p -> expœe_t¡mp -> ±r ,…->expœe_t¡mp-> size - 1, 329 "%a, %d %b %Y %H:%M:%S GMT", `gmtime (&( t ))))) { 332  HANDLER_GO_ON ; 336 p -> expœe_t¡mp -> u£d = Ën + 1; 339 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Expœes"), `CONST_BUF_LEN ( p -> expœe_t¡mp )); 342 `bufãr_cÝy_¡ršg ( p -> expœe_t¡mp , "max-age="); 343 `bufãr_­³nd_lÚg ( p -> expœe_t¡mp , ts ); 345 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Cache-CÚŒÞ"), `CONST_BUF_LEN ( p -> expœe_t¡mp )); 347  HANDLER_GO_ON ; 352  HANDLER_GO_ON ; 353 } } 357  $mod_expœe_¶ugš_š™ ( ¶ugš * p ) { 358 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 359 p -> Çme = `bufãr_š™_¡ršg ("expire"); 361 p -> š™ = mod_expœe_š™ ; 362 p -> hªdË_sub»que¡_¡¬t = mod_expœe_·th_hªdËr ; 363 p -> £t_deçuÉs = mod_expœe_£t_deçuÉs ; 364 p -> þ—nup = mod_expœe_ä“ ; 366 p -> d©a = NULL ; 369 } } @src/mod_extforward.c 1 #ifdeà HAVE_CONFIG_H 2  ~"cÚfig.h " 5  ~<ùy³.h > 6  ~<¡dlib.h > 7  ~<¡ršg.h > 8  ~<¡dio.h > 9  ~<Ãtš‘/š.h > 11  ~"ba£.h " 12  ~"log.h " 13  ~"bufãr.h " 15  ~"¶ugš.h " 17  ~"š‘_ÁÝ_ÿche.h " 18  ~"cÚfigfže.h " 82 ¬¿y * mfÜw¬d” ; 83 } t¶ugš_cÚfig ; 86 mPLUGIN_DATA ; 88 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 90 ¶ugš_cÚfig mcÚf ; 91 } t¶ugš_d©a ; 97 sock_addr m§ved_»mÙe_addr ; 98 bufãr * m§ved_»mÙe_addr_buf ; 99 } thªdËr_ùx ; 102  hªdËr_ùx * $hªdËr_ùx_š™ ( sock_addr Þdaddr , bufãr * Þdaddr_buf ) { 103 hªdËr_ùx * hùx ; 104 hùx = `ÿÎoc (1, (*hctx)); 105 hùx -> §ved_»mÙe_addr = Þdaddr ; 106 hùx -> §ved_»mÙe_addr_buf = Þdaddr_buf ; 107  hùx ; 108 } } 110  $hªdËr_ùx_ä“ ( hªdËr_ùx * hùx ) { 111 `ä“ ( hùx ); 112 } } 115 $INIT_FUNC ( mod_extfÜw¬d_š™ ) { 116 ¶ugš_d©a * p ; 117 p = `ÿÎoc (1, (*p)); 118  p ; 119 } } 122 $FREE_FUNC ( mod_extfÜw¬d_ä“ ) { 123 ¶ugš_d©a * p = p_d ; 125 `UNUSED ( ¤v ); 127 ià(! p è HANDLER_GO_ON ; 129 ià( p -> cÚfig_¡Üage ) { 130 size_t i ; 132  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 133 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 135 ià(! s ) ; 137 `¬¿y_ä“ ( s -> fÜw¬d” ); 139 `ä“ ( s ); 141 `ä“ ( p -> cÚfig_¡Üage ); 145 `ä“ ( p ); 147  HANDLER_GO_ON ; 148 } } 152 $SETDEFAULTS_FUNC ( mod_extfÜw¬d_£t_deçuÉs ) { 153 ¶ugš_d©a * p = p_d ; 154 size_t i = 0; 156 cÚfig_v®ues_t cv [] = { 157 { "extfÜw¬d.fÜw¬d”", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 158 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 161 ià(! p è HANDLER_ERROR ; 163 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 165  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 166 ¶ugš_cÚfig * s ; 168 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 169 s -> fÜw¬d” = `¬¿y_š™ (); 171 cv [0]. de¡š©iÚ = s -> fÜw¬d” ; 173 p -> cÚfig_¡Üage [ i ] = s ; 175 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 176  HANDLER_ERROR ; 180  HANDLER_GO_ON ; 181 } } 183  #PATCH ( x ) \ 184 p -> cÚf . x = s ->x; ) 185  $mod_extfÜw¬d_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 186 size_t i , j ; 187 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 189 `PATCH ( fÜw¬d” ); 192  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 193 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 194 s = p -> cÚfig_¡Üage [ i ]; 197 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 200  j = 0; j < dc -> v®ue -> u£d ; j++) { 201 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 203 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("extforward.forwarder"))) { 204 `PATCH ( fÜw¬d” ); 210 } } 211 #undeà PATCH 214  $put_¡ršg_što_¬¿y_Ën ( ¬¿y * ¬y , cÚ¡ * ¡r ,  Ën ) 216 d©a_¡ršg * ‹mpd©a ; 217 ià( Ën == 0) 219 ‹mpd©a = `d©a_¡ršg_š™ (); 220 `bufãr_cÝy_¡ršg_Ën ( ‹mpd©a -> v®ue , ¡r , Ën ); 221 `¬¿y_š£¹_unique ( ¬y ,( d©a_un£t *) ‹mpd©a ); 222 } } 226  ¬¿y * $exŒaù_fÜw¬d_¬¿y ( bufãr * pbufãr ) 228 ¬¿y * »suÉ = `¬¿y_š™ (); 229 ià( pbufãr -> u£d > 0) { 230 * ba£ , * cu¼ ; 232  š_¡r = 0; 233  ba£ = pbufãr -> ±r , cu¼ =…buffer->ptr; *curr; curr++) { 234 ià( š_¡r ) { 235 ià((* cu¼ > '9' || *curr < '0') && *curr != '.' && *curr != ':') { 237 `put_¡ršg_što_¬¿y_Ën ( »suÉ , ba£ , cu¼ - base); 239 š_¡r = 0; 242 ià(* cu¼ >= '0' && *curr <= '9') { 244 ba£ = cu¼ ; 245 š_¡r = 1; 250 ià( š_¡r ) { 251 `put_¡ršg_što_¬¿y_Ën ( »suÉ , ba£ , cu¼ - base); 254  »suÉ ; 255 } } 257  #IP_TRUSTED 1 ) 258  #IP_UNTRUSTED 0 ) 262  $is_´oxy_Œu¡ed (cÚ¡ * ¡r , ¶ugš_d©a * p ) 264 d©a_¡ršg * ®lds = (d©a_¡ršg *) `¬¿y_g‘_–em’t ( p -> cÚf . fÜw¬d” , "all"); 266 ià( ®lds ) { 267 ià( `¡rÿ£cmp ( ®lds -> v®ue -> ±r , "trust") == 0) { 268  IP_TRUSTED ; 270  IP_UNTRUSTED ; 274  ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( p -> cÚf . fÜw¬d” , ¡r è? IP_TRUSTED : IP_UNTRUSTED ; 275 } } 281 cÚ¡ * $Ï¡_nÙ_š_¬¿y ( ¬¿y * a , ¶ugš_d©a * p ) 283 ¬¿y * fÜw¬d” = p -> cÚf .forwarder; 285  i = a -> u£d - 1; i >= 0; i--) { 286 d©a_¡ršg * ds = (d©a_¡ršg *) a -> d©a [ i ]; 287 cÚ¡ * = ds -> v®ue -> ±r ; 289 ià(! `¬¿y_g‘_–em’t ( fÜw¬d” , )) { 290  ; 293  NULL ; 294 } } 296  addršfo * $¡r_to_sockaddr (cÚ¡ * ho¡ ) 298  addršfo hšts , * »s0 ; 299  »suÉ ; 301 `mem£t (& hšts , 0, (hints)); 302 #iâdeà AI_NUMERICSERV 310  #AI_NUMERICSERV 0 ) 312 hšts . ai_æags = AI_NUMERICHOST | AI_NUMERICSERV ; 314 »suÉ = `g‘addršfo ( ho¡ , NULL , & hšts , & »s0 ); 315 iàÐ »suÉ != 0 ) 317 `årštf ( ¡d”r ,"could‚Ù„esÞvho¡Çm% beÿu£ %s\n", ho¡ , `gai_¡»¼Ü ( »suÉ )); 318 ià( »suÉ =ð EAI_SYSTEM ) 319 `³¼Ü ("The systemƒrror is "); 320  NULL ; 323 ià( »s0 ==0) 324 `årštf ( ¡d”r , "ProbËm iÀ»sÞvšg ho¡Çm%s: sucûeded, buˆnØšfÜm©iÚ„‘uºed\n", ho¡ ); 326  »s0 ; 327 } } 331  $þ—n_cÚd_ÿche ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 332 `cÚfig_cÚd_ÿche_»£t_™em ( ¤v , cÚ , COMP_HTTP_REMOTE_IP ); 333 } } 335 $URIHANDLER_FUNC ( mod_extfÜw¬d_uri_hªdËr ) { 336 ¶ugš_d©a * p = p_d ; 337 d©a_¡ršg * fÜw¬ded = NULL ; 338 #ifdeà HAVE_IPV6 339  b2 [ INET6_ADDRSTRLEN + 1]; 340  addršfo * add¾i¡ = NULL ; 342 cÚ¡ * d¡_addr_¡r = NULL ; 343 ¬¿y * fÜw¬d_¬¿y = NULL ; 344 cÚ¡ * »®_»mÙe_addr = NULL ; 345 #ifdeà HAVE_IPV6 348 ià(! cÚ -> »que¡ . h—d”s è HANDLER_GO_ON ; 350 `mod_extfÜw¬d_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 352 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 353 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 357 ià(( NULL =ð( fÜw¬ded = ( d©a_¡ršg *è `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s ,"X-Forwarded-For")) && 358 NULL =ð( fÜw¬ded = ( d©a_¡ršg *è `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Forwarded-For")))) { 360 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 361 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 365  HANDLER_GO_ON ; 368 #ifdeà HAVE_IPV6 369 d¡_addr_¡r = `š‘_ÁÝ ( cÚ -> d¡_addr . ¶aš . §_çmžy , 370 cÚ -> d¡_addr . ¶aš . §_çmžy =ð AF_INET6 ? 371 ( sockaddr *)&( cÚ -> d¡_addr . v6 . sš6_addr ) : 372 ( sockaddr *)&( cÚ -> d¡_addr . v4 . sš_addr ), 373 b2 , 374 ( b2 ) - 1); 376 d¡_addr_¡r = `š‘_Áß ( cÚ -> d¡_addr . v4 . sš_addr ); 380 ià( IP_UNTRUSTED =ð `is_´oxy_Œu¡ed ( d¡_addr_¡r , p )) { 381 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 382 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 386  HANDLER_GO_ON ; 390 fÜw¬d_¬¿y = `exŒaù_fÜw¬d_¬¿y ( fÜw¬ded -> v®ue ); 391 »®_»mÙe_addr = `Ï¡_nÙ_š_¬¿y ( fÜw¬d_¬¿y , p ); 393 ià( »®_»mÙe_addr !ð NULL ) { 394 sock_addr sock ; 395  addršfo * addrs_Ëá ; 396 £rv”_sock‘ * ¤v_sock = cÚ -> ¤v_sock‘ ; 397 d©a_¡ršg * fÜw¬ded_´Ùo = (d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "X-Forwarded-Proto"); 399 ià( fÜw¬ded_´Ùo && ! `¡rcmp (fÜw¬ded_´Ùo-> v®ue -> ±r , "https")) { 400 ¤v_sock -> is_´oxy_s¦ = 1; 402 ¤v_sock -> is_´oxy_s¦ = 0; 405 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 406 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "usšg‡dd»ss:", »®_»mÙe_addr ); 408 #ifdeà HAVE_IPV6 409 add¾i¡ = `¡r_to_sockaddr ( »®_»mÙe_addr ); 410 sock . ¶aš . §_çmžy = AF_UNSPEC ; 411  addrs_Ëá = add¾i¡ ;‡ddrs_Ëá !ð NULL ;‡ddrs_Ëá =‡ddrs_Ëá -> ai_Ãxt ) { 412 sock . ¶aš . §_çmžy = addrs_Ëá -> ai_çmžy ; 413 ià( sock . ¶aš . §_çmžy =ð AF_INET ) { 414 sock . v4 . sš_addr = (( sockaddr_š *) addrs_Ëá -> ai_addr )->sin_addr; 416 } ià( sock . ¶aš . §_çmžy =ð AF_INET6 ) { 417 sock . v6 . sš6_addr = (( sockaddr_š6 *) addrs_Ëá -> ai_addr )->sin6_addr; 422 sock . v4 . sš_addr . s_addr = `š‘_addr ( »®_»mÙe_addr ); 423 sock . ¶aš . §_çmžy = (sock. v4 . sš_addr . s_addr =ð0xFFFFFFFFè? AF_UNSPEC : AF_INET ; 425 ià( sock . ¶aš . §_çmžy !ð AF_UNSPEC ) { 427 ià( cÚ -> ¶ugš_ùx [ p -> id ]) { 428 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 430 `hªdËr_ùx_ä“ ( cÚ -> ¶ugš_ùx [ p -> id ]); 431 cÚ -> ¶ugš_ùx [ p -> id ] = NULL ; 434 cÚ -> ¶ugš_ùx [ p -> id ] = `hªdËr_ùx_š™ (cÚ-> d¡_addr , cÚ-> d¡_addr_buf ); 436 cÚ -> d¡_addr = sock ; 437 cÚ -> d¡_addr_buf = `bufãr_š™ (); 438 `bufãr_cÝy_¡ršg ( cÚ -> d¡_addr_buf , »®_»mÙe_addr ); 440 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 441 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 442 "·tchšg cÚ->d¡_addr_buàfÜhacûs¦og:", »®_»mÙe_addr ); 445 `þ—n_cÚd_ÿche ( ¤v , cÚ ); 447 #ifdeà HAVE_IPV6 448 ià( add¾i¡ !ð NULL ) `ä“addršfo (addrlist); 451 `¬¿y_ä“ ( fÜw¬d_¬¿y ); 454  HANDLER_GO_ON ; 455 } } 457 $CONNECTION_FUNC ( mod_extfÜw¬d_»¡Üe ) { 458 ¶ugš_d©a * p = p_d ; 459 hªdËr_ùx * hùx = cÚ -> ¶ugš_ùx [ p -> id ]; 461 ià(! hùx è HANDLER_GO_ON ; 463 cÚ -> d¡_addr = hùx -> §ved_»mÙe_addr ; 464 `bufãr_ä“ ( cÚ -> d¡_addr_buf ); 466 cÚ -> d¡_addr_buf = hùx -> §ved_»mÙe_addr_buf ; 468 `hªdËr_ùx_ä“ ( hùx ); 470 cÚ -> ¶ugš_ùx [ p -> id ] = NULL ; 473 `þ—n_cÚd_ÿche ( ¤v , cÚ ); 475  HANDLER_GO_ON ; 476 } } 481  $mod_extfÜw¬d_¶ugš_š™ ( ¶ugš * p ) { 482 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 483 p -> Çme = `bufãr_š™_¡ršg ("extforward"); 485 p -> š™ = mod_extfÜw¬d_š™ ; 486 p -> hªdË_uri_¿w = mod_extfÜw¬d_uri_hªdËr ; 487 p -> hªdË_»que¡_dÚe = mod_extfÜw¬d_»¡Üe ; 488 p -> cÚÃùiÚ_»£t = mod_extfÜw¬d_»¡Üe ; 489 p -> £t_deçuÉs = mod_extfÜw¬d_£t_deçuÉs ; 490 p -> þ—nup = mod_extfÜw¬d_ä“ ; 492 p -> d©a = NULL ; 495 } } @src/mod_fastcgi.c 1  ~ 2  ~ 3  ~<”ºo.h > 4  ~ 5  ~<¡ršg.h > 6  ~<¡dlib.h > 7  ~<ùy³.h > 8  ~ 9  ~ 11  ~"bufãr.h " 12  ~"£rv”.h " 13  ~"keyv®ue.h " 14  ~"log.h " 16  ~"h‰p_chunk.h " 17  ~"fdev’t.h " 18  ~"cÚÃùiÚs.h " 19  ~"»¥Ú£.h " 20  ~"jobli¡.h " 22  ~"¶ugš.h " 24  ~"š‘_ÁÝ_ÿche.h " 25  ~"¡©_ÿche.h " 26  ~"¡©us_couÁ”.h " 28 #ifdeà HAVE_FASTCGI_FASTCGI_H 29  ~<ç¡cgi/ç¡cgi.h > 31 #ifdeà HAVE_FASTCGI_H 32  ~<ç¡cgi.h > 34  ~"ç¡cgi.h " 37  ~<¡dio.h > 39 #ifdeà HAVE_SYS_FILIO_H 40  ~ 43  ~"sys-sock‘.h " 45 #ifdeà HAVE_SYS_UIO_H 46  ~ 48 #ifdeà HAVE_SYS_WAIT_H 49  ~ 52  #FCGI_ENV_ADD_CHECK ( »t , cÚ ) \ 53 ià( »t == -1) { \ 54 cÚ -> h‰p_¡©us = 400; \ 55 cÚ -> fže_fšished = 1; \ 57 }; ) 68  sfcgi_´oc { 69 size_t mid ; 70 bufãr * munixsock‘ ; 71  mpÜt ; 73 bufãr * mcÚÃùiÚ_Çme ; 75 pid_t mpid ; 78 size_t mlßd ; 80 time_t mÏ¡_u£d ; 81 size_t m»que¡s ; 82  fcgi_´oc * m´ev , * mÃxt ; 84 time_t mdi§bËd_uÁž ; 86  mis_loÿl ; 89 mPROC_STATE_UNSET , 90 mPROC_STATE_RUNNING , 91 mPROC_STATE_OVERLOADED , 93 mPROC_STATE_DIED_WAIT_FOR_PID , 94 mPROC_STATE_DIED , 95 mPROC_STATE_KILLED 96 } m¡©e ; 97 } tfcgi_´oc ; 101 bufãr * mid ; 110 fcgi_´oc * mfœ¡ ; 111 fcgi_´oc * munu£d_´ocs ; 123  mmš_´ocs ; 124  mmax_´ocs ; 125 size_t mnum_´ocs ; 126 size_t maùive_´ocs ; 128  mmax_lßd_³r_´oc ; 138  midË_timeout ; 146  mdi§bË_time ; 154 size_t mmax_»que¡s_³r_´oc ; 169 bufãr * mho¡ ; 170  mpÜt ; 180 bufãr * munixsock‘ ; 190 bufãr * mbš_·th ; 197 ¬¿y * mbš_’v ; 199 ¬¿y * mbš_’v_cÝy ; 210 bufãr * mdoüoÙ ; 218  mmode ; 227  mcheck_loÿl ; 236  mb»ak_sütfž’ame_fÜ_php ; 243  m®low_x£ndfže ; 245 ssize_t mlßd ; 247 size_t mmax_id ; 253 bufãr * m¡r_»que¡_uri ; 255  mkžl_sigÇl ; 259 } tfcgi_ex‹nsiÚ_ho¡ ; 281 bufãr * mkey ; 283  mnÙe_is_£Á ; 284  mÏ¡_u£d_ndx ; 286 fcgi_ex‹nsiÚ_ho¡ ** mho¡s ; 288 size_t mu£d ; 289 size_t msize ; 290 } tfcgi_ex‹nsiÚ ; 293 fcgi_ex‹nsiÚ ** mexts ; 295 size_t mu£d ; 296 size_t msize ; 297 } tfcgi_exts ; 301 fcgi_exts * mexts ; 303 ¬¿y * mext_m­pšg ; 305  mdebug ; 306 } t¶ugš_cÚfig ; 309 size_t * m±r ; 310 size_t mu£d ; 311 size_t msize ; 312 } tbufãr_ušt ; 315 ** m±r ; 317 size_t msize ; 318 size_t mu£d ; 319 } tch¬_¬¿y ; 323 mPLUGIN_DATA ; 324 bufãr_ušt mfcgi_»que¡_id ; 326 bufãr * mfcgi_’v ; 328 bufãr * m·th ; 329 bufãr * m·r£_»¥Ú£ ; 331 bufãr * m¡©uskey ; 333 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 335 ¶ugš_cÚfig mcÚf ; 336 } t¶ugš_d©a ; 340 mFCGI_STATE_UNSET , 341 mFCGI_STATE_INIT , 342 mFCGI_STATE_CONNECT_DELAYED , 343 mFCGI_STATE_PREPARE_WRITE , 344 mFCGI_STATE_WRITE , 345 mFCGI_STATE_READ 346 } tfcgi_cÚÃùiÚ_¡©e_t ; 349 fcgi_´oc * m´oc ; 350 fcgi_ex‹nsiÚ_ho¡ * mho¡ ; 351 fcgi_ex‹nsiÚ * mext ; 353 fcgi_cÚÃùiÚ_¡©e_t m¡©e ; 354 time_t m¡©e_time¡amp ; 356  m»cÚÃùs ; 358 chunkqueue * mrb ; 359 chunkqueue * mwb ; 361 bufãr * m»¥Ú£_h—d” ; 363 size_t m»que¡_id ; 364  mfd ; 365  mfde_ndx ; 367 pid_t mpid ; 368  mgÙ_´oc ; 370  m£nd_cÚ‹Á_body ; 372 ¶ugš_cÚfig mcÚf ; 374 cÚÃùiÚ * m»mÙe_cÚn ; 375 ¶ugš_d©a * m¶ugš_d©a ; 376 } thªdËr_ùx ; 380  hªdËr_t fcgi_hªdË_fdev’t (* s , * ùx ,  »v’ts ); 382  $ç¡cgi_¡©us_cÝy_´oúame ( bufãr * b , fcgi_ex‹nsiÚ_ho¡ * ho¡ , fcgi_´oc * ´oc ) { 383 `bufãr_cÝy_¡ršg ( b , "fastcgi.backend."); 384 `bufãr_­³nd_¡ršg_bufãr ( b , ho¡ -> id ); 385 ià( ´oc ) { 386 `bufãr_­³nd_¡ršg ( b , "."); 387 `bufãr_­³nd_lÚg ( b , ´oc -> id ); 391 } } 393  $ç¡cgi_¡©us_š™ ( £rv” * ¤v , bufãr * b , fcgi_ex‹nsiÚ_ho¡ * ho¡ , fcgi_´oc * ´oc ) { 394  #CLEAN ( x ) \ 395 `ç¡cgi_¡©us_cÝy_´oúame ( b , ho¡ , ´oc ); \ 396 `bufãr_­³nd_¡ršg ( b , x ); \ 397 `¡©us_couÁ”_£t ( ¤v , `CONST_BUF_LEN ( b ), 0); ) 399 `CLEAN (".disabled"); 400 `CLEAN (".died"); 401 `CLEAN (".overloaded"); 402 `CLEAN (".connected"); 403 `CLEAN (".load"); 405 #undeà CLEAN 407  #CLEAN ( x ) \ 408 `ç¡cgi_¡©us_cÝy_´oúame ( b , ho¡ , NULL ); \ 409 `bufãr_­³nd_¡ršg ( b , x ); \ 410 `¡©us_couÁ”_£t ( ¤v , `CONST_BUF_LEN ( b ), 0); ) 412 `CLEAN (".load"); 414 #undeà CLEAN 417 } } 419  hªdËr_ùx * $hªdËr_ùx_š™ () { 420 hªdËr_ùx * hùx ; 422 hùx = `ÿÎoc (1, (*hctx)); 423 `as£¹ ( hùx ); 425 hùx -> fde_ndx = -1; 427 hùx -> »¥Ú£_h—d” = `bufãr_š™ (); 429 hùx -> »que¡_id = 0; 430 hùx -> ¡©e = FCGI_STATE_INIT ; 431 hùx -> ´oc = NULL ; 433 hùx -> fd = -1; 435 hùx -> »cÚÃùs = 0; 436 hùx -> £nd_cÚ‹Á_body = 1; 438 hùx -> rb = `chunkqueue_š™ (); 439 hùx -> wb = `chunkqueue_š™ (); 441  hùx ; 442 } } 444  $hªdËr_ùx_ä“ ( hªdËr_ùx * hùx ) { 445 ià( hùx -> ho¡ ) { 446 hùx -> ho¡ -> lßd --; 447 hùx -> ho¡ = NULL ; 450 `bufãr_ä“ ( hùx -> »¥Ú£_h—d” ); 452 `chunkqueue_ä“ ( hùx -> rb ); 453 `chunkqueue_ä“ ( hùx -> wb ); 455 `ä“ ( hùx ); 456 } } 458 fcgi_´oc * $ç¡cgi_´oûss_š™ () { 459 fcgi_´oc * f ; 461 f = `ÿÎoc (1, (*f)); 462 f -> unixsock‘ = `bufãr_š™ (); 463 f -> cÚÃùiÚ_Çme = `bufãr_š™ (); 465 f -> ´ev = NULL ; 466 f -> Ãxt = NULL ; 468  f ; 469 } } 471  $ç¡cgi_´oûss_ä“ ( fcgi_´oc * f ) { 472 ià(! f ) ; 474 `ç¡cgi_´oûss_ä“ ( f -> Ãxt ); 476 `bufãr_ä“ ( f -> unixsock‘ ); 477 `bufãr_ä“ ( f -> cÚÃùiÚ_Çme ); 479 `ä“ ( f ); 480 } } 482 fcgi_ex‹nsiÚ_ho¡ * $ç¡cgi_ho¡_š™ () { 483 fcgi_ex‹nsiÚ_ho¡ * f ; 485 f = `ÿÎoc (1, (*f)); 487 f -> id = `bufãr_š™ (); 488 f -> ho¡ = `bufãr_š™ (); 489 f -> unixsock‘ = `bufãr_š™ (); 490 f -> doüoÙ = `bufãr_š™ (); 491 f -> bš_·th = `bufãr_š™ (); 492 f -> bš_’v = `¬¿y_š™ (); 493 f -> bš_’v_cÝy = `¬¿y_š™ (); 494 f -> ¡r_»que¡_uri = `bufãr_š™ (); 496  f ; 497 } } 499  $ç¡cgi_ho¡_ä“ ( fcgi_ex‹nsiÚ_ho¡ * h ) { 500 ià(! h ) ; 502 `bufãr_ä“ ( h -> id ); 503 `bufãr_ä“ ( h -> ho¡ ); 504 `bufãr_ä“ ( h -> unixsock‘ ); 505 `bufãr_ä“ ( h -> doüoÙ ); 506 `bufãr_ä“ ( h -> bš_·th ); 507 `bufãr_ä“ ( h -> ¡r_»que¡_uri ); 508 `¬¿y_ä“ ( h -> bš_’v ); 509 `¬¿y_ä“ ( h -> bš_’v_cÝy ); 511 `ç¡cgi_´oûss_ä“ ( h -> fœ¡ ); 512 `ç¡cgi_´oûss_ä“ ( h -> unu£d_´ocs ); 514 `ä“ ( h ); 516 } } 518 fcgi_exts * $ç¡cgi_ex‹nsiÚs_š™ () { 519 fcgi_exts * f ; 521 f = `ÿÎoc (1, (*f)); 523  f ; 524 } } 526  $ç¡cgi_ex‹nsiÚs_ä“ ( fcgi_exts * f ) { 527 size_t i ; 529 ià(! f ) ; 531  i = 0; i < f -> u£d ; i++) { 532 fcgi_ex‹nsiÚ * ã ; 533 size_t j ; 535 ã = f -> exts [ i ]; 537  j = 0; j < ã -> u£d ; j++) { 538 fcgi_ex‹nsiÚ_ho¡ * h ; 540 h = ã -> ho¡s [ j ]; 542 `ç¡cgi_ho¡_ä“ ( h ); 545 `bufãr_ä“ ( ã -> key ); 546 `ä“ ( ã -> ho¡s ); 548 `ä“ ( ã ); 551 `ä“ ( f -> exts ); 553 `ä“ ( f ); 554 } } 556  $ç¡cgi_ex‹nsiÚ_š£¹ ( fcgi_exts * ext , bufãr * key , fcgi_ex‹nsiÚ_ho¡ * fh ) { 557 fcgi_ex‹nsiÚ * ã ; 558 size_t i ; 562  i = 0; i < ext -> u£d ; i++) { 563 ià( `bufãr_is_equ® ( key , ext -> exts [ i ]->key)) { 568 ià( i =ð ext -> u£d ) { 570 ã = `ÿÎoc (1, (*fe)); 571 `as£¹ ( ã ); 572 ã -> key = `bufãr_š™ (); 573 ã -> Ï¡_u£d_ndx = -1; 574 `bufãr_cÝy_¡ršg_bufãr ( ã -> key , key); 578 ià( ext -> size == 0) { 579 ext -> size = 8; 580 ext -> exts = `m®loc Óxt-> size * (*(ext->exts))); 581 `as£¹ ( ext -> exts ); 582 } ià( ext -> u£d =ðext-> size ) { 583 ext -> size += 8; 584 ext -> exts = `»®loc Óxt->exts,ƒxt-> size * (*(ext->exts))); 585 `as£¹ ( ext -> exts ); 587 ext -> exts [ext-> u£d ++] = ã ; 589 ã = ext -> exts [ i ]; 592 ià( ã -> size == 0) { 593 ã -> size = 4; 594 ã -> ho¡s = `m®loc (ã-> size * (*(fe->hosts))); 595 `as£¹ ( ã -> ho¡s ); 596 } ià( ã -> size =ðã-> u£d ) { 597 ã -> size += 4; 598 ã -> ho¡s = `»®loc (ã->ho¡s, fe-> size * (*(fe->hosts))); 599 `as£¹ ( ã -> ho¡s ); 602 ã -> ho¡s [ã-> u£d ++] = fh ; 606 } } 608 $INIT_FUNC ( mod_ç¡cgi_š™ ) { 609 ¶ugš_d©a * p ; 611 p = `ÿÎoc (1, (*p)); 613 p -> fcgi_’v = `bufãr_š™ (); 615 p -> ·th = `bufãr_š™ (); 616 p -> ·r£_»¥Ú£ = `bufãr_š™ (); 618 p -> ¡©uskey = `bufãr_š™ (); 620  p ; 621 } } 624 $FREE_FUNC ( mod_ç¡cgi_ä“ ) { 625 ¶ugš_d©a * p = p_d ; 626 bufãr_ušt * r = &( p -> fcgi_»que¡_id ); 628 `UNUSED ( ¤v ); 630 ià( r -> ±r è `ä“ (r->ptr); 632 `bufãr_ä“ ( p -> fcgi_’v ); 633 `bufãr_ä“ ( p -> ·th ); 634 `bufãr_ä“ ( p -> ·r£_»¥Ú£ ); 635 `bufãr_ä“ ( p -> ¡©uskey ); 637 ià( p -> cÚfig_¡Üage ) { 638 size_t i , j , n ; 639  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 640 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 641 fcgi_exts * exts ; 643 ià(! s ) ; 645 exts = s ->exts; 647  j = 0; j < exts -> u£d ; j++) { 648 fcgi_ex‹nsiÚ * ex ; 650 ex = exts ->exts[ j ]; 652  n = 0;‚ < ex -> u£d ;‚++) { 653 fcgi_´oc * ´oc ; 654 fcgi_ex‹nsiÚ_ho¡ * ho¡ ; 656 ho¡ = ex -> ho¡s [ n ]; 658  ´oc = ho¡ -> fœ¡ ;…roc;…roøð´oc-> Ãxt ) { 659 ià( ´oc -> pid != 0) { 660 `kžl ( ´oc -> pid , ho¡ -> kžl_sigÇl ); 663 ià( ´oc -> is_loÿl && 664 ! `bufãr_is_em±y ( ´oc -> unixsock‘ )) { 665 `uÆšk ( ´oc -> unixsock‘ -> ±r ); 669  ´oc = ho¡ -> unu£d_´ocs ;…roc;…roøð´oc-> Ãxt ) { 670 ià( ´oc -> pid != 0) { 671 `kžl ( ´oc -> pid , ho¡ -> kžl_sigÇl ); 673 ià( ´oc -> is_loÿl && 674 ! `bufãr_is_em±y ( ´oc -> unixsock‘ )) { 675 `uÆšk ( ´oc -> unixsock‘ -> ±r ); 681 `ç¡cgi_ex‹nsiÚs_ä“ ( s -> exts ); 682 `¬¿y_ä“ ( s -> ext_m­pšg ); 684 `ä“ ( s ); 686 `ä“ ( p -> cÚfig_¡Üage ); 689 `ä“ ( p ); 691  HANDLER_GO_ON ; 692 } } 694  $’v_add ( ch¬_¬¿y * ’v , cÚ¡ * key , size_t key_Ën , cÚ¡ * v® , size_ˆ v®_Ën ) { 695 * d¡ ; 697 ià(! key || ! v® )  -1; 699 d¡ = `m®loc ( key_Ën + v®_Ën + 3); 700 `memýy ( d¡ , key , key_Ën ); 701 d¡ [ key_Ën ] = '='; 703 `memýy ( d¡ + key_Ën + 1, v® , v®_Ën + 1); 705 ià( ’v -> size == 0) { 706 ’v -> size = 16; 707 ’v -> ±r = `m®loc Ónv-> size * (*env->ptr)); 708 } ià( ’v -> size =ð’v-> u£d + 1) { 709 ’v -> size += 16; 710 ’v -> ±r = `»®loc Ónv->±r,ƒnv-> size * (*env->ptr)); 713 ’v -> ±r [’v-> u£d ++] = d¡ ; 716 } } 718  $·r£_bš·th ( ch¬_¬¿y * ’v , bufãr * b ) { 719 * ¡¬t ; 720 size_t i ; 723 ¡¬t = b -> ±r ; 724  i = 0; i < b -> u£d - 1; i++) { 725  b -> ±r [ i ]) { 730 ià( ’v -> size == 0) { 731 ’v -> size = 16; 732 ’v -> ±r = `m®loc Ónv-> size * (*env->ptr)); 733 } ià( ’v -> size =ð’v-> u£d ) { 734 ’v -> size += 16; 735 ’v -> ±r = `»®loc Ónv->±r,ƒnv-> size * (*env->ptr)); 738 b -> ±r [ i ] = '\0'; 740 ’v -> ±r [’v-> u£d ++] = ¡¬t ; 742 ¡¬t = b -> ±r + i + 1; 749 ià( ’v -> size == 0) { 750 ’v -> size = 16; 751 ’v -> ±r = `m®loc Ónv-> size * (*env->ptr)); 752 } ià( ’v -> size =ð’v-> u£d ) { 753 ’v -> size += 16; 754 ’v -> ±r = `»®loc Ónv->±r,ƒnv-> size * (*env->ptr)); 758 ’v -> ±r [’v-> u£d ++] = ¡¬t ; 760 ià( ’v -> size == 0) { 761 ’v -> size = 16; 762 ’v -> ±r = `m®loc Ónv-> size * (*env->ptr)); 763 } ià( ’v -> size =ð’v-> u£d ) { 764 ’v -> size += 16; 765 ’v -> ±r = `»®loc Ónv->±r,ƒnv-> size * (*env->ptr)); 769 ’v -> ±r [’v-> u£d ++] = NULL ; 772 } } 774  $fcgi_¥awn_cÚÃùiÚ ( £rv” * ¤v , 775 ¶ugš_d©a * p , 776 fcgi_ex‹nsiÚ_ho¡ * ho¡ , 777 fcgi_´oc * ´oc ) { 778  fcgi_fd ; 779  sock‘_ty³ , ¡©us ; 780  timev® tv = { 0, 100 * 1000 }; 781 #ifdeà HAVE_SYS_UN_H 782  sockaddr_un fcgi_addr_un ; 784  sockaddr_š fcgi_addr_š ; 785  sockaddr * fcgi_addr ; 787 sockËn_t £rvËn ; 789 #iâdeà HAVE_FORK 793 ià( p -> cÚf . debug ) { 794 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdb", 795 "Ãw…roc, sock‘:", ´oc -> pÜt ,…roc-> unixsock‘ ); 798 ià(! `bufãr_is_em±y ( ´oc -> unixsock‘ )) { 799 `mem£t (& fcgi_addr , 0, (fcgi_addr)); 801 #ifdeà HAVE_SYS_UN_H 802 fcgi_addr_un . sun_çmžy = AF_UNIX ; 803 `¡rýy ( fcgi_addr_un . sun_·th , ´oc -> unixsock‘ -> ±r ); 805 #ifdeà SUN_LEN 806 £rvËn = `SUN_LEN (& fcgi_addr_un ); 809 £rvËn = ´oc -> unixsock‘ -> u£d + ( fcgi_addr_un . sun_çmžy ); 811 sock‘_ty³ = AF_UNIX ; 812 fcgi_addr = ( sockaddr *è& fcgi_addr_un ; 814 `bufãr_cÝy_¡ršg ( ´oc -> cÚÃùiÚ_Çme , "unix:"); 815 `bufãr_­³nd_¡ršg_bufãr ( ´oc -> cÚÃùiÚ_Çme ,…roc-> unixsock‘ ); 818 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 823 fcgi_addr_š . sš_çmžy = AF_INET ; 825 ià( `bufãr_is_em±y ( ho¡ ->host)) { 826 fcgi_addr_š . sš_addr . s_addr = `htÚl ( INADDR_LOOPBACK ); 828  ho¡’t * he ; 831 fcgi_addr_š . sš_addr . s_addr = `htÚl ( INADDR_LOOPBACK ); 834 ià( NULL =ð( he = `g‘ho¡byÇme ( ho¡ ->ho¡-> ±r ))) { 835 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 837 h_”ºo , ho¡ ->host); 841 ià( he -> h_add¹y³ !ð AF_INET ) { 842 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "addr-ty³ !ðAF_INET: ", he -> h_add¹y³ ); 846 ià( he -> h_Ëngth !ð( š_addr )) { 847 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "addr-Ëngth !ðsizeof(š_addr): ", he -> h_Ëngth ); 851 `memýy (&( fcgi_addr_š . sš_addr . s_addr ), he -> h_addr_li¡ [0], he-> h_Ëngth ); 854 fcgi_addr_š . sš_pÜt = `htÚs ( ´oc -> pÜt ); 855 £rvËn = ( fcgi_addr_š ); 857 sock‘_ty³ = AF_INET ; 858 fcgi_addr = ( sockaddr *è& fcgi_addr_š ; 860 `bufãr_cÝy_¡ršg ( ´oc -> cÚÃùiÚ_Çme , "tcp:"); 861 ià(! `bufãr_is_em±y ( ho¡ ->host)) { 862 `bufãr_­³nd_¡ršg_bufãr ( ´oc -> cÚÃùiÚ_Çme , ho¡ ->host); 864 `bufãr_­³nd_¡ršg ( ´oc -> cÚÃùiÚ_Çme , "localhost"); 866 `bufãr_­³nd_¡ršg ( ´oc -> cÚÃùiÚ_Çme , ":"); 867 `bufãr_­³nd_lÚg ( ´oc -> cÚÃùiÚ_Çme ,…roc-> pÜt ); 870 ià(-1 =ð( fcgi_fd = `sock‘ ( sock‘_ty³ , SOCK_STREAM , 0))) { 871 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 872 "çžed:", `¡»¼Ü ( ”ºo )); 876 ià(-1 =ð `cÚÃù ( fcgi_fd , fcgi_addr , £rvËn )) { 878 pid_t chžd ; 879  v® ; 881 ià( ”ºo !ð ENOENT && 882 ! `bufãr_is_em±y ( ´oc -> unixsock‘ )) { 883 `uÆšk ( ´oc -> unixsock‘ -> ±r ); 886 `þo£ ( fcgi_fd ); 889 ià(-1 =ð( fcgi_fd = `sock‘ ( sock‘_ty³ , SOCK_STREAM , 0))) { 890 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 891 "sock‘ fažed:", `¡»¼Ü ( ”ºo )); 895 v® = 1; 896 ià( `£tsockÝt ( fcgi_fd , SOL_SOCKET , SO_REUSEADDR , & v® , (val)) < 0) { 897 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 898 "sock‘sock݈çžed:", `¡»¼Ü ( ”ºo )); 903 ià(-1 =ð `bšd ( fcgi_fd , fcgi_addr , £rvËn )) { 904 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 906 ´oc -> cÚÃùiÚ_Çme , 907 `¡»¼Ü ( ”ºo )); 911 ià(-1 =ð `li¡’ ( fcgi_fd , 1024)) { 912 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 913 "li¡’ fažed:", `¡»¼Ü ( ”ºo )); 917 #ifdeà HAVE_FORK 918 ( chžd = `fÜk ())) { 920 size_t i = 0; 921 * c ; 922 ch¬_¬¿y ’v ; 923 ch¬_¬¿y ¬g ; 926 ’v . ±r = NULL ; 927 ’v . size = 0; 928 ’v . u£d = 0; 930 ¬g . ±r = NULL ; 931 ¬g . size = 0; 932 ¬g . u£d = 0; 934 if( fcgi_fd !ð FCGI_LISTENSOCK_FILENO ) { 935 `þo£ ( FCGI_LISTENSOCK_FILENO ); 936 `dup2 ( fcgi_fd , FCGI_LISTENSOCK_FILENO ); 937 `þo£ ( fcgi_fd ); 941  i = 3; i < 256; i++) { 942 `þo£ ( i ); 946 ià( ho¡ -> bš_’v_cÝy -> u£d ) { 947  i = 0; i < ho¡ -> bš_’v_cÝy -> u£d ; i++) { 948 d©a_¡ršg * ds = (d©a_¡ršg *) ho¡ -> bš_’v_cÝy -> d©a [ i ]; 949 * ge ; 951 ià( NULL !ð( ge = `g‘’v ( ds -> v®ue -> ±r ))) { 952 `’v_add (& ’v , `CONST_BUF_LEN ( ds -> v®ue ), ge , `¡¾’ (ge)); 956  i = 0; ’vœÚ [i]; i++) { 957 * eq ; 959 ià( NULL !ð( eq = `¡rchr ( ’vœÚ [ i ], '='))) { 960 `’v_add (& ’v , ’vœÚ [ i ], eq -ƒnvœÚ[i],ƒq+1, `¡¾’ (eq+1)); 966  i = 0; i < ho¡ -> bš_’v -> u£d ; i++) { 967 d©a_¡ršg * ds = (d©a_¡ršg *) ho¡ -> bš_’v -> d©a [ i ]; 969 `’v_add (& ’v , `CONST_BUF_LEN ( ds -> key ), CONST_BUF_LEN(ds-> v®ue )); 972  i = 0; i < ’v . u£d ; i++) { 974 ià(0 =ð `¡ºcmp ( ’v . ±r [ i ], "PHP_FCGI_CHILDREN=", ("PHP_FCGI_CHILDREN=") - 1)) ; 978 ià( i =ð ’v . u£d ) { 979 `’v_add (& ’v , `CONST_STR_LEN ("PHP_FCGI_CHILDREN"), CONST_STR_LEN("1")); 982 ’v . ±r [’v. u£d ] = NULL ; 984 `·r£_bš·th (& ¬g , ho¡ -> bš_·th ); 988 ià( NULL !ð( c = `¡¼chr ( ¬g . ±r [0], '/'))) { 989 * c = '\0'; 992 ià(-1 =ð `chdœ ( ¬g . ±r [0])) { 993 * c = '/'; 994 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", "chdœ fažed:", `¡»¼Ü ( ”ºo ), ¬g . ±r [0]); 996 * c = '/'; 1001 `execve ( ¬g . ±r [0],‡rg.±r, ’v .ptr); 1003 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 1004 "execvçžed fÜ:", ho¡ -> bš_·th , `¡»¼Ü ( ”ºo )); 1006 `ex™ ( ”ºo ); 1017 `£Ëù (0, NULL , NULL, NULL, & tv ); 1019  `wa™pid ( chžd , & ¡©us , WNOHANG )) { 1025 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 1026 "pid‚Ù found:", `¡»¼Ü ( ”ºo )); 1029 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 1030 "thç¡cgi-back’d", ho¡ -> bš_·th , "failedo start:"); 1032 ià( `WIFEXITED ( ¡©us )) { 1033 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdb", 1035 `WEXITSTATUS ( ¡©us ), ho¡ -> bš_·th ); 1036 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1042 } ià( `WIFSIGNALED ( ¡©us )) { 1043 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1045 `WTERMSIG ( ¡©us )); 1047 ià( `WTERMSIG ( ¡©us ) == 11) { 1048 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1050 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1054 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1056 ¡©us ); 1062 ´oc -> pid = chžd ; 1063 ´oc -> Ï¡_u£d = ¤v -> cur_ts ; 1064 ´oc -> is_loÿl = 1; 1070 ´oc -> is_loÿl = 0; 1071 ´oc -> pid = 0; 1073 ià( p -> cÚf . debug ) { 1074 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 1076 ´oc -> cÚÃùiÚ_Çme ); 1080 ´oc -> ¡©e = PROC_STATE_RUNNING ; 1081 ho¡ -> aùive_´ocs ++; 1083 `þo£ ( fcgi_fd ); 1086 } } 1089 $SETDEFAULTS_FUNC ( mod_ç¡cgi_£t_deçuÉs ) { 1090 ¶ugš_d©a * p = p_d ; 1091 d©a_un£t * du ; 1092 size_t i = 0; 1093 bufãr * fcgi_mode = `bufãr_š™ (); 1095 cÚfig_v®ues_t cv [] = { 1096 { "ç¡cgi.£rv”", NULL , T_CONFIG_LOCAL , T_CONFIG_SCOPE_CONNECTION }, 1097 { "ç¡cgi.debug", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 1098 { "ç¡cgi.m­-ex‹nsiÚs", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 1099 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 1102 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 1104  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 1105 ¶ugš_cÚfig * s ; 1106 ¬¿y * ÿ ; 1108 s = `m®loc (( ¶ugš_cÚfig )); 1109 s -> exts = `ç¡cgi_ex‹nsiÚs_š™ (); 1110 s -> debug = 0; 1111 s -> ext_m­pšg = `¬¿y_š™ (); 1113 cv [0]. de¡š©iÚ = s -> exts ; 1114 cv [1]. de¡š©iÚ = &( s -> debug ); 1115 cv [2]. de¡š©iÚ = s -> ext_m­pšg ; 1117 p -> cÚfig_¡Üage [ i ] = s ; 1118 ÿ = (( d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue ; 1120 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , ÿ , cv )) { 1121  HANDLER_ERROR ; 1128 ià( NULL !ð( du = `¬¿y_g‘_–em’t ( ÿ , "fastcgi.server"))) { 1129 size_t j ; 1130 d©a_¬¿y * da = (d©a_¬¿y *) du ; 1132 ià( du -> ty³ !ð TYPE_ARRAY ) { 1133 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 1136  HANDLER_ERROR ; 1145  j = 0; j < da -> v®ue -> u£d ; j++) { 1146 size_t n ; 1147 d©a_¬¿y * da_ext = (d©a_¬¿y *) da -> v®ue -> d©a [ j ]; 1149 ià( da -> v®ue -> d©a [ j ]-> ty³ !ð TYPE_ARRAY ) { 1150 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sssbs", 1152 "[", da -> v®ue -> d©a [ j ]-> key , "](string)"); 1154  HANDLER_ERROR ; 1169  n = 0;‚ < da_ext -> v®ue -> u£d ;‚++) { 1170 d©a_¬¿y * da_ho¡ = (d©a_¬¿y *) da_ext -> v®ue -> d©a [ n ]; 1172 fcgi_ex‹nsiÚ_ho¡ * ho¡ ; 1174 cÚfig_v®ues_t fcv [] = { 1175 { "ho¡", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 1176 { "doüoÙ", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 1177 { "mode", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 1178 { "sock‘", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 1179 { "bš-·th", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 1181 { "check-loÿl", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 1182 { "pÜt", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 1183 { "mš-´ocs-nÙ-wÜkšg", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 1184 { "max-´ocs", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 1185 { "max-lßd-³r-´oc", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 1186 { "idË-timeout", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 1187 { "di§bË-time", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 1189 { "bš-’vœÚm’t", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 1190 { "bš-cÝy-’vœÚm’t", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 1192 { "brok’-sütfž’ame", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 1193 { "®low-x-£nd-fže", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 1194 { "¡r-»que¡-uri", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 1195 { "kžl-sigÇl", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 1197 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 1200 ià( da_ho¡ -> ty³ !ð TYPE_ARRAY ) { 1201 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssSBS", 1204 "[", da_ho¡ -> key , "](string)"); 1206  HANDLER_ERROR ; 1209 ho¡ = `ç¡cgi_ho¡_š™ (); 1211 `bufãr_cÝy_¡ršg_bufãr ( ho¡ -> id , da_ho¡ -> key ); 1213 ho¡ -> check_loÿl = 1; 1214 ho¡ -> mš_´ocs = 4; 1215 ho¡ -> max_´ocs = 4; 1216 ho¡ -> max_lßd_³r_´oc = 1; 1217 ho¡ -> idË_timeout = 60; 1218 ho¡ -> mode = FCGI_RESPONDER ; 1219 ho¡ -> di§bË_time = 60; 1220 ho¡ -> b»ak_sütfž’ame_fÜ_php = 0; 1221 ho¡ -> ®low_x£ndfže = 0; 1222 ho¡ -> kžl_sigÇl = SIGTERM ; 1224 fcv [0]. de¡š©iÚ = ho¡ ->host; 1225 fcv [1]. de¡š©iÚ = ho¡ -> doüoÙ ; 1226 fcv [2]. de¡š©iÚ = fcgi_mode ; 1227 fcv [3]. de¡š©iÚ = ho¡ -> unixsock‘ ; 1228 fcv [4]. de¡š©iÚ = ho¡ -> bš_·th ; 1230 fcv [5]. de¡š©iÚ = &( ho¡ -> check_loÿl ); 1231 fcv [6]. de¡š©iÚ = &( ho¡ -> pÜt ); 1232 fcv [7]. de¡š©iÚ = &( ho¡ -> mš_´ocs ); 1233 fcv [8]. de¡š©iÚ = &( ho¡ -> max_´ocs ); 1234 fcv [9]. de¡š©iÚ = &( ho¡ -> max_lßd_³r_´oc ); 1235 fcv [10]. de¡š©iÚ = &( ho¡ -> idË_timeout ); 1236 fcv [11]. de¡š©iÚ = &( ho¡ -> di§bË_time ); 1238 fcv [12]. de¡š©iÚ = ho¡ -> bš_’v ; 1239 fcv [13]. de¡š©iÚ = ho¡ -> bš_’v_cÝy ; 1240 fcv [14]. de¡š©iÚ = &( ho¡ -> b»ak_sütfž’ame_fÜ_php ); 1241 fcv [15]. de¡š©iÚ = &( ho¡ -> ®low_x£ndfže ); 1242 fcv [16]. de¡š©iÚ = ho¡ -> ¡r_»que¡_uri ; 1243 fcv [17]. de¡š©iÚ = &( ho¡ -> kžl_sigÇl ); 1245 ià(0 !ð `cÚfig_š£¹_v®ues_š‹º® ( ¤v , da_ho¡ -> v®ue , fcv )) { 1246  HANDLER_ERROR ; 1249 ià((! `bufãr_is_em±y ( ho¡ ->ho¡è|| ho¡-> pÜt ) && 1250 ! `bufãr_is_em±y ( ho¡ -> unixsock‘ )) { 1251 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsbsbs", 1253 da -> key , "= (", 1254 da_ext -> key , " => (", 1255 da_ho¡ -> key , " ( ..."); 1257  HANDLER_ERROR ; 1260 ià(! `bufãr_is_em±y ( ho¡ -> unixsock‘ )) { 1262  sockaddr_un un ; 1264 ià( ho¡ -> unixsock‘ -> u£d > ( un . sun_·th ) - 2) { 1265 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsbsbs", 1267 da -> key , "= (", 1268 da_ext -> key , " => (", 1269 da_ho¡ -> key , " ( ..."); 1271  HANDLER_ERROR ; 1276 ià( `bufãr_is_em±y ( ho¡ ->host) && 1277 `bufãr_is_em±y ( ho¡ -> bš_·th )) { 1278 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsbsbs", 1280 da -> key , "= (", 1281 da_ext -> key , " => (", 1282 da_ho¡ -> key , " ( ..."); 1284  HANDLER_ERROR ; 1285 } ià( ho¡ -> pÜt == 0) { 1286 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsbsbs", 1288 da -> key , "= (", 1289 da_ext -> key , " => (", 1290 da_ho¡ -> key , " ( ..."); 1292  HANDLER_ERROR ; 1296 ià(! `bufãr_is_em±y ( ho¡ -> bš_·th )) { 1298 size_t ²o ; 1301 ho¡ -> mš_´ocs = ho¡-> max_´ocs ; 1303 ià( ho¡ -> mš_´ocs > ho¡-> max_´ocs ) host->max_procs = host->min_procs; 1304 ià( ho¡ -> max_lßd_³r_´oc < 1) host->max_load_per_proc = 0; 1306 ià( s -> debug ) { 1307 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbsdsbsdsd", 1309 "\n\roc:", ho¡ -> bš_·th , 1310 "\n\Üt:", ho¡ -> pÜt , 1311 "\n\tsock‘", ho¡ -> unixsock‘ , 1312 "\n\tmš-´ocs:", ho¡ -> mš_´ocs , 1313 "\n\tmax-´ocs:", ho¡ -> max_´ocs ); 1316  ²o = 0;…nØ< ho¡ -> mš_´ocs ;…no++) { 1317 fcgi_´oc * ´oc ; 1319 ´oc = `ç¡cgi_´oûss_š™ (); 1320 ´oc -> id = ho¡ -> num_´ocs ++; 1321 ho¡ -> max_id ++; 1323 ià( `bufãr_is_em±y ( ho¡ -> unixsock‘ )) { 1324 ´oc -> pÜt = ho¡ ->p܈+ ²o ; 1326 `bufãr_cÝy_¡ršg_bufãr ( ´oc -> unixsock‘ , ho¡ ->unixsocket); 1327 `bufãr_­³nd_¡ršg ( ´oc -> unixsock‘ , "-"); 1328 `bufãr_­³nd_lÚg ( ´oc -> unixsock‘ , ²o ); 1331 ià( s -> debug ) { 1332 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdsbsdsd", 1334 "\n\Üt:", ho¡ -> pÜt , 1335 "\n\tsock‘", ho¡ -> unixsock‘ , 1336 "\n\tcu¼’t:", ²o , "/", ho¡ -> mš_´ocs ); 1339 ià( `fcgi_¥awn_cÚÃùiÚ ( ¤v , p , ho¡ , ´oc )) { 1340 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1342  HANDLER_ERROR ; 1345 `ç¡cgi_¡©us_š™ ( ¤v , p -> ¡©uskey , ho¡ , ´oc ); 1347 ´oc -> Ãxt = ho¡ -> fœ¡ ; 1348 ià( ho¡ -> fœ¡ èho¡->fœ¡-> ´ev = ´oc ; 1350 ho¡ -> fœ¡ = ´oc ; 1353 fcgi_´oc * ´oc ; 1355 ´oc = `ç¡cgi_´oûss_š™ (); 1356 ´oc -> id = ho¡ -> num_´ocs ++; 1357 ho¡ -> max_id ++; 1358 ho¡ -> aùive_´ocs ++; 1359 ´oc -> ¡©e = PROC_STATE_RUNNING ; 1361 ià( `bufãr_is_em±y ( ho¡ -> unixsock‘ )) { 1362 ´oc -> pÜt = ho¡ ->port; 1364 `bufãr_cÝy_¡ršg_bufãr ( ´oc -> unixsock‘ , ho¡ ->unixsocket); 1367 `ç¡cgi_¡©us_š™ ( ¤v , p -> ¡©uskey , ho¡ , ´oc ); 1369 ho¡ -> fœ¡ = ´oc ; 1371 ho¡ -> mš_´ocs = 1; 1372 ho¡ -> max_´ocs = 1; 1375 ià(! `bufãr_is_em±y ( fcgi_mode )) { 1376 ià( `¡rcmp ( fcgi_mode -> ±r , "responder") == 0) { 1377 ho¡ -> mode = FCGI_RESPONDER ; 1378 } ià( `¡rcmp ( fcgi_mode -> ±r , "authorizer") == 0) { 1379 ho¡ -> mode = FCGI_AUTHORIZER ; 1380 ià( `bufãr_is_em±y ( ho¡ -> doüoÙ )) { 1381 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1383  HANDLER_ERROR ; 1386 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 1388 fcgi_mode , "(ignored, mode seto„esponder)"); 1393 `ç¡cgi_ex‹nsiÚ_š£¹ ( s -> exts , da_ext -> key , ho¡ ); 1399 `bufãr_ä“ ( fcgi_mode ); 1401  HANDLER_GO_ON ; 1402 } } 1404  $fcgi_£t_¡©e ( £rv” * ¤v , hªdËr_ùx * hùx , fcgi_cÚÃùiÚ_¡©e_t ¡©e ) { 1405 hùx -> ¡©e = state; 1406 hùx -> ¡©e_time¡amp = ¤v -> cur_ts ; 1409 } } 1412  size_t $fcgi_»que¡id_Ãw ( £rv” * ¤v , ¶ugš_d©a * p ) { 1413 size_t m = 0; 1414 size_t i ; 1415 bufãr_ušt * r = &( p -> fcgi_»que¡_id ); 1417 `UNUSED ( ¤v ); 1419  i = 0; i < r -> u£d ; i++) { 1420 ià( r -> ±r [ i ] > m ) m =„->ptr[i]; 1423 ià( r -> size == 0) { 1424 r -> size = 16; 1425 r -> ±r = `m®loc ((*r->±rè*„-> size ); 1426 } ià( r -> u£d =ðr-> size ) { 1427 r -> size += 16; 1428 r -> ±r = `»®loc Ô->±r, (*r->±rè*„-> size ); 1431 r -> ±r [r-> u£d ++] = ++ m ; 1433  m ; 1434 } } 1436  $fcgi_»que¡id_d– ( £rv” * ¤v , ¶ugš_d©a * p , size_t »que¡_id ) { 1437 size_t i ; 1438 bufãr_ušt * r = &( p -> fcgi_»que¡_id ); 1440 `UNUSED ( ¤v ); 1442  i = 0; i < r -> u£d ; i++) { 1443 ià( r -> ±r [ i ] =ð »que¡_id ) ; 1446 ià( i !ð r -> u£d ) { 1449 ià( i !ð r -> u£d - 1) { 1450 r -> ±r [ i ] =„->±r[r-> u£d - 1]; 1452 r -> u£d --; 1456 } } 1457  $fcgi_cÚÃùiÚ_þo£ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 1458 ¶ugš_d©a * p ; 1459 cÚÃùiÚ * cÚ ; 1461 ià( NULL =ð hùx ) ; 1463 p = hùx -> ¶ugš_d©a ; 1464 cÚ = hùx -> »mÙe_cÚn ; 1466 ià( hùx -> fd != -1) { 1467 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 1468 `fdev’t_uÄegi¡” ( ¤v -> ev , hùx -> fd ); 1469 `þo£ ( hùx -> fd ); 1470 ¤v -> cur_fds --; 1473 ià( hùx -> »que¡_id != 0) { 1474 `fcgi_»que¡id_d– ( ¤v , p , hùx -> »que¡_id ); 1477 ià( hùx -> ho¡ && hùx-> ´oc ) { 1478 ià( hùx -> gÙ_´oc ) { 1480 hùx -> ´oc -> lßd --; 1482 `¡©us_couÁ”_dec ( ¤v , `CONST_STR_LEN ("fastcgi.active-requests")); 1484 `ç¡cgi_¡©us_cÝy_´oúame ( p -> ¡©uskey , hùx -> ho¡ , hùx-> ´oc ); 1485 `bufãr_­³nd_¡ršg ( p -> ¡©uskey , ".load"); 1487 `¡©us_couÁ”_£t ( ¤v , `CONST_BUF_LEN ( p -> ¡©uskey ), hùx -> ´oc -> lßd ); 1489 ià( p -> cÚf . debug ) { 1490 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdsbsd", 1492 "pid:", hùx -> ´oc -> pid , 1493 "sock‘:", hùx -> ´oc -> cÚÃùiÚ_Çme , 1494 "lßd:", hùx -> ´oc -> lßd ); 1500 `hªdËr_ùx_ä“ ( hùx ); 1501 cÚ -> ¶ugš_ùx [ p -> id ] = NULL ; 1502 } } 1504  $fcgi_»cÚÃù ( £rv” * ¤v , hªdËr_ùx * hùx ) { 1505 ¶ugš_d©a * p = hùx ->plugin_data; 1526 ià( hùx -> fd != -1) { 1527 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 1528 `fdev’t_uÄegi¡” ( ¤v -> ev , hùx -> fd ); 1529 `þo£ ( hùx -> fd ); 1530 ¤v -> cur_fds --; 1531 hùx -> fd = -1; 1534 `fcgi_»que¡id_d– ( ¤v , p , hùx -> »que¡_id ); 1536 `fcgi_£t_¡©e ( ¤v , hùx , FCGI_STATE_INIT ); 1538 hùx -> »que¡_id = 0; 1539 hùx -> »cÚÃùs ++; 1541 ià( p -> cÚf . debug > 2) { 1542 ià( hùx -> ´oc ) { 1543 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdb", 1545 hùx -> ´oc -> pid , hùx->´oc-> cÚÃùiÚ_Çme ); 1547 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 1549 hùx -> ho¡ -> unixsock‘ ); 1553 ià( hùx -> ´oc && hùx-> gÙ_´oc ) { 1554 hùx -> ´oc -> lßd --; 1558 hùx -> ho¡ -> lßd --; 1559 hùx -> ho¡ = NULL ; 1562 } } 1565  hªdËr_t $fcgi_cÚÃùiÚ_»£t ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 1566 ¶ugš_d©a * p = p_d ; 1568 `fcgi_cÚÃùiÚ_þo£ ( ¤v , cÚ -> ¶ugš_ùx [ p -> id ]); 1570  HANDLER_GO_ON ; 1571 } } 1574  $fcgi_’v_add ( bufãr * ’v , cÚ¡ * key , size_t key_Ën , cÚ¡ * v® , size_ˆ v®_Ën ) { 1575 size_t Ën ; 1577 ià(! key || ! v® )  -1; 1579 Ën = key_Ën + v®_Ën ; 1581 Ën +ð key_Ën > 127 ? 4 : 1; 1582 Ën +ð v®_Ën > 127 ? 4 : 1; 1584 ià( ’v -> u£d + Ën >ð FCGI_MAX_LENGTH ) { 1596 ià( key_Ën > 0x7fffffff) key_len = 0x7fffffff; 1597 ià( v®_Ën > 0x7fffffff) val_len = 0x7fffffff; 1599 `bufãr_´•¬e_­³nd ( ’v , Ën ); 1601 ià( key_Ën > 127) { 1602 ’v -> ±r [’v-> u£d ++] = (( key_Ën >> 24) & 0xff) | 0x80; 1603 ’v -> ±r [’v-> u£d ++] = ( key_Ën >> 16) & 0xff; 1604 ’v -> ±r [’v-> u£d ++] = ( key_Ën >> 8) & 0xff; 1605 ’v -> ±r [’v-> u£d ++] = ( key_Ën >> 0) & 0xff; 1607 ’v -> ±r [’v-> u£d ++] = ( key_Ën >> 0) & 0xff; 1610 ià( v®_Ën > 127) { 1611 ’v -> ±r [’v-> u£d ++] = (( v®_Ën >> 24) & 0xff) | 0x80; 1612 ’v -> ±r [’v-> u£d ++] = ( v®_Ën >> 16) & 0xff; 1613 ’v -> ±r [’v-> u£d ++] = ( v®_Ën >> 8) & 0xff; 1614 ’v -> ±r [’v-> u£d ++] = ( v®_Ën >> 0) & 0xff; 1616 ’v -> ±r [’v-> u£d ++] = ( v®_Ën >> 0) & 0xff; 1619 `memýy ( ’v -> ±r +ƒnv-> u£d , key , key_Ën ); 1620 ’v -> u£d +ð key_Ën ; 1621 `memýy ( ’v -> ±r +ƒnv-> u£d , v® , v®_Ën ); 1622 ’v -> u£d +ð v®_Ën ; 1625 } } 1627  $fcgi_h—d” ( FCGI_H—d” * h—d” ,  ty³ , size_t »que¡_id ,  cÚ‹ÁL’gth ,  ·ddšgL’gth ) { 1628 `as£¹ ( cÚ‹ÁL’gth <ð FCGI_MAX_LENGTH ); 1630 h—d” -> v”siÚ = FCGI_VERSION_1 ; 1631 h—d” -> ty³ =ype; 1632 h—d” -> »que¡IdB0 = »que¡_id & 0xff; 1633 h—d” -> »que¡IdB1 = ( »que¡_id >> 8) & 0xff; 1634 h—d” -> cÚ‹ÁL’gthB0 = cÚ‹ÁL’gth & 0xff; 1635 h—d” -> cÚ‹ÁL’gthB1 = ( cÚ‹ÁL’gth >> 8) & 0xff; 1636 h—d” -> ·ddšgL’gth =…addingLength; 1637 h—d” -> »£rved = 0; 1640 } } 1650 mCONNECTION_UNSET , 1651 mCONNECTION_OK , 1652 mCONNECTION_DELAYED , 1653 mCONNECTION_OVERLOADED , 1654 mCONNECTION_DEAD 1655 } tcÚÃùiÚ_»suÉ_t ; 1657  cÚÃùiÚ_»suÉ_t $fcgi_e¡ablish_cÚÃùiÚ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 1658  sockaddr * fcgi_addr ; 1659  sockaddr_š fcgi_addr_š ; 1660 #ifdeà HAVE_SYS_UN_H 1661  sockaddr_un fcgi_addr_un ; 1663 sockËn_t £rvËn ; 1665 fcgi_ex‹nsiÚ_ho¡ * ho¡ = hùx ->host; 1666 fcgi_´oc * ´oc = hùx ->proc; 1667  fcgi_fd = hùx -> fd ; 1669 `mem£t (& fcgi_addr , 0, (fcgi_addr)); 1671 ià(! `bufãr_is_em±y ( ´oc -> unixsock‘ )) { 1672 #ifdeà HAVE_SYS_UN_H 1674 fcgi_addr_un . sun_çmžy = AF_UNIX ; 1675 `¡rýy ( fcgi_addr_un . sun_·th , ´oc -> unixsock‘ -> ±r ); 1676 #ifdeà SUN_LEN 1677 £rvËn = `SUN_LEN (& fcgi_addr_un ); 1680 £rvËn = ´oc -> unixsock‘ -> u£d + ( fcgi_addr_un . sun_çmžy ); 1682 fcgi_addr = ( sockaddr *è& fcgi_addr_un ; 1684 ià( `bufãr_is_em±y ( ´oc -> cÚÃùiÚ_Çme )) { 1686 `bufãr_cÝy_¡ršg ( ´oc -> cÚÃùiÚ_Çme , "unix:"); 1687 `bufãr_­³nd_¡ršg_bufãr ( ´oc -> cÚÃùiÚ_Çme ,…roc-> unixsock‘ ); 1693 fcgi_addr_š . sš_çmžy = AF_INET ; 1694 ià(! `bufãr_is_em±y ( ho¡ ->host)) { 1695 ià(0 =ð `š‘_©Ú ( ho¡ ->ho¡-> ±r , &( fcgi_addr_š . sš_addr ))) { 1696 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 1697 "cÚv”tšg IP‡dd»s çžed fÜ", ho¡ ->host, 1703 fcgi_addr_š . sš_addr . s_addr = `htÚl ( INADDR_LOOPBACK ); 1705 fcgi_addr_š . sš_pÜt = `htÚs ( ´oc -> pÜt ); 1706 £rvËn = ( fcgi_addr_š ); 1708 fcgi_addr = ( sockaddr *è& fcgi_addr_š ; 1710 ià( `bufãr_is_em±y ( ´oc -> cÚÃùiÚ_Çme )) { 1712 `bufãr_cÝy_¡ršg ( ´oc -> cÚÃùiÚ_Çme , "tcp:"); 1713 ià(! `bufãr_is_em±y ( ho¡ ->host)) { 1714 `bufãr_­³nd_¡ršg_bufãr ( ´oc -> cÚÃùiÚ_Çme , ho¡ ->host); 1716 `bufãr_­³nd_¡ršg ( ´oc -> cÚÃùiÚ_Çme , "localhost"); 1718 `bufãr_­³nd_¡ršg ( ´oc -> cÚÃùiÚ_Çme , ":"); 1719 `bufãr_­³nd_lÚg ( ´oc -> cÚÃùiÚ_Çme ,…roc-> pÜt ); 1723 ià(-1 =ð `cÚÃù ( fcgi_fd , fcgi_addr , £rvËn )) { 1724 ià( ”ºo =ð EINPROGRESS || 1725 ”ºo =ð EALREADY || 1726 ”ºo =ð EINTR ) { 1727 ià( hùx -> cÚf . debug > 2) { 1728 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 1729 "cÚÃù d–ayed; wžÈcÚtšuÏ‹r:", ´oc -> cÚÃùiÚ_Çme ); 1732  CONNECTION_DELAYED ; 1733 } ià( ”ºo =ð EAGAIN ) { 1734 ià( hùx -> cÚf . debug ) { 1735 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsd", 1738 "Thlßd fÜhi Fa¡CGI back’d", ´oc -> cÚÃùiÚ_Çme , "is",…roc-> lßd ); 1741  CONNECTION_OVERLOADED ; 1743 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sssb", 1745 `¡»¼Ü ( ”ºo ), "on", 1746 ´oc -> cÚÃùiÚ_Çme ); 1748  CONNECTION_DEAD ; 1752 hùx -> »cÚÃùs = 0; 1753 ià( hùx -> cÚf . debug > 1) { 1754 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1755 "cÚÃù sucûeded: ", fcgi_fd ); 1758  CONNECTION_OK ; 1759 } } 1761  $fcgi_’v_add_»que¡_h—d”s ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 1762 size_t i ; 1764  i = 0; i < cÚ -> »que¡ . h—d”s -> u£d ; i++) { 1765 d©a_¡ršg * ds ; 1767 ds = ( d©a_¡ršg *) cÚ -> »que¡ . h—d”s -> d©a [ i ]; 1769 ià( ds -> v®ue -> u£d && ds-> key ->used) { 1770 size_t j ; 1771 `bufãr_»£t ( ¤v -> tmp_buf ); 1773 ià(0 !ð `¡rÿ£cmp ( ds -> key -> ±r , "CONTENT-TYPE")) { 1774 `BUFFER_COPY_STRING_CONST ( ¤v -> tmp_buf , "HTTP_"); 1775 ¤v -> tmp_buf -> u£d --; 1778 `bufãr_´•¬e_­³nd ( ¤v -> tmp_buf , ds -> key -> u£d + 2); 1779  j = 0; j < ds -> key -> u£d - 1; j++) { 1780  c = '_'; 1781 ià( `light_i§Íha ( ds -> key -> ±r [ j ])) { 1783 c = ds -> key -> ±r [ j ] & ~32; 1784 } ià( `light_isdig™ ( ds -> key -> ±r [ j ])) { 1786 c = ds -> key -> ±r [ j ]; 1788 ¤v -> tmp_buf -> ±r [¤v->tmp_buf-> u£d ++] = c ; 1790 ¤v -> tmp_buf -> ±r [¤v->tmp_buf-> u£d ++] = '\0'; 1792 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_BUF_LEN ( ¤v -> tmp_buf ), CONST_BUF_LEN( ds -> v®ue )), cÚ ); 1796  i = 0; i < cÚ -> ’vœÚm’t -> u£d ; i++) { 1797 d©a_¡ršg * ds ; 1799 ds = ( d©a_¡ršg *) cÚ -> ’vœÚm’t -> d©a [ i ]; 1801 ià( ds -> v®ue -> u£d && ds-> key ->used) { 1802 size_t j ; 1803 `bufãr_»£t ( ¤v -> tmp_buf ); 1805 `bufãr_´•¬e_­³nd ( ¤v -> tmp_buf , ds -> key -> u£d + 2); 1806  j = 0; j < ds -> key -> u£d - 1; j++) { 1807  c = '_'; 1808 ià( `light_i§Íha ( ds -> key -> ±r [ j ])) { 1810 c = ds -> key -> ±r [ j ] & ~32; 1811 } ià( `light_isdig™ ( ds -> key -> ±r [ j ])) { 1813 c = ds -> key -> ±r [ j ]; 1815 ¤v -> tmp_buf -> ±r [¤v->tmp_buf-> u£d ++] = c ; 1817 ¤v -> tmp_buf -> ±r [¤v->tmp_buf-> u£d ++] = '\0'; 1819 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_BUF_LEN ( ¤v -> tmp_buf ), CONST_BUF_LEN( ds -> v®ue )), cÚ ); 1824 } } 1827  $fcgi_ü—‹_’v ( £rv” * ¤v , hªdËr_ùx * hùx , size_t »que¡_id ) { 1828 FCGI_BegšReque¡RecÜd begšRecÜd ; 1829 FCGI_H—d” h—d” ; 1830 bufãr * b ; 1832  buf [32]; 1833 cÚ¡ * s ; 1834 #ifdeà HAVE_IPV6 1835  b2 [ INET6_ADDRSTRLEN + 1]; 1838 ¶ugš_d©a * p = hùx ->plugin_data; 1839 fcgi_ex‹nsiÚ_ho¡ * ho¡ ð hùx ->host; 1841 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 1842 £rv”_sock‘ * ¤v_sock = cÚ -> ¤v_sock‘ ; 1844 sock_addr our_addr ; 1845 sockËn_t our_addr_Ën ; 1849 `fcgi_h—d” (&( begšRecÜd . h—d” ), FCGI_BEGIN_REQUEST , »que¡_id , (begšRecÜd. body ), 0); 1850 begšRecÜd . body . rÞeB0 = ho¡ -> mode ; 1851 begšRecÜd . body . rÞeB1 = 0; 1852 begšRecÜd . body . æags = 0; 1853 `mem£t ( begšRecÜd . body . »£rved , 0, (beginRecord.body.reserved)); 1855 b = `chunkqueue_g‘_­³nd_bufãr ( hùx -> wb ); 1857 `bufãr_cÝy_memÜy ( b , (cÚ¡ *)& begšRecÜd , (beginRecord)); 1860 `bufãr_´•¬e_cÝy ( p -> fcgi_’v , 1024); 1863 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("SERVER_SOFTWARE"), CONST_STR_LEN( PACKAGE_NAME "/" PACKAGE_VERSION )), cÚ ) 1865 ià( cÚ -> £rv”_Çme -> u£d ) { 1866 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("SERVER_NAME"), `CONST_BUF_LEN ( cÚ -> £rv”_Çme )),con) 1868 #ifdeà HAVE_IPV6 1869 s = `š‘_ÁÝ ( ¤v_sock -> addr . ¶aš . §_çmžy , 1870 ¤v_sock -> addr . ¶aš . §_çmžy =ð AF_INET6 ? 1871 (cÚ¡ *è&( ¤v_sock -> addr . v6 . sš6_addr ) : 1872 (cÚ¡ *è&( ¤v_sock -> addr . v4 . sš_addr ), 1873 b2 , (b2)-1); 1875 s = `š‘_Áß ( ¤v_sock -> addr . v4 . sš_addr ); 1877 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("SERVER_NAME"), s , `¡¾’ (s)), cÚ ) 1880 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("GATEWAY_INTERFACE"), CONST_STR_LEN("CGI/1.1")), cÚ ) 1882 `LI_Éo¡r ( buf , 1883 #ifdeà HAVE_IPV6 1884 `Áohs ( ¤v_sock -> addr . ¶aš . §_çmžy ? srv_sock->addr. v6 . sš6_pÜt : srv_sock->addr. v4 . sš_pÜt ) 1886 `Áohs ( ¤v_sock -> addr . v4 . sš_pÜt ) 1890 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("SERVER_PORT"), buf , `¡¾’ (buf)), cÚ ) 1893 our_addr_Ën = ( our_addr ); 1895 ià(-1 =ð `g‘sockÇme ( cÚ -> fd , &( our_addr . ¶aš ), & our_addr_Ën )) { 1896 s = `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &( ¤v_sock -> addr )); 1898 s = `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &( our_addr )); 1900 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("SERVER_ADDR"), s , `¡¾’ (s)), cÚ ) 1902 `LI_Éo¡r ( buf , 1903 #ifdeà HAVE_IPV6 1904 `Áohs ( cÚ -> d¡_addr . ¶aš . §_çmžy ? cÚ->d¡_addr. v6 . sš6_pÜt : cÚ->d¡_addr. v4 . sš_pÜt ) 1906 `Áohs ( cÚ -> d¡_addr . v4 . sš_pÜt ) 1910 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("REMOTE_PORT"), buf , `¡¾’ (buf)), cÚ ) 1912 s = `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &( cÚ -> d¡_addr )); 1913 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("REMOTE_ADDR"), s , `¡¾’ (s)), cÚ ) 1915 ià(! `bufãr_is_em±y ( cÚ -> authed_u£r )) { 1926 * h‰p_authÜiz©iÚ = NULL ; 1927 d©a_¡ršg * ds ; 1929 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("REMOTE_USER"), `CONST_BUF_LEN ( cÚ -> authed_u£r )),con) 1931 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Authorization"))) { 1932 h‰p_authÜiz©iÚ = ds -> v®ue -> ±r ; 1935 ià( ds && ds-> v®ue && ds->v®ue-> u£d ) { 1936 * auth_»®m ; 1937 ià( NULL !ð( auth_»®m = `¡rchr ( h‰p_authÜiz©iÚ , ' '))) { 1938  auth_ty³_Ën = auth_»®m - h‰p_authÜiz©iÚ ; 1939 ià(( auth_ty³_Ën =ð5è&& (0 =ð `¡ºcmp ( h‰p_authÜiz©iÚ , "Basic",‡uth_type_len))) { 1940 `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("AUTH_TYPE"), CONST_STR_LEN("Basic")); 1941 } ià(( auth_ty³_Ën =ð6è&& (0 =ð `¡ºcmp ( h‰p_authÜiz©iÚ , "Digest",‡uth_type_len))) { 1942 `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("AUTH_TYPE"), CONST_STR_LEN("Digest")); 1948 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth > 0 && ho¡ -> mode !ð FCGI_AUTHORIZER ) { 1952 `LI_Éo¡r ( buf , cÚ -> »que¡ . cÚ‹Á_Ëngth ); 1953 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("CONTENT_LENGTH"), buf , `¡¾’ (buf)), cÚ ) 1956 ià( ho¡ -> mode !ð FCGI_AUTHORIZER ) { 1964 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("SCRIPT_NAME"), `CONST_BUF_LEN ( cÚ -> uri . ·th )),con) 1966 ià(! `bufãr_is_em±y ( cÚ -> »que¡ . ·thšfo )) { 1967 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("PATH_INFO"), `CONST_BUF_LEN ( cÚ -> »que¡ . ·thšfo )),con) 1971 ià(! `bufãr_is_em±y ( ho¡ -> doüoÙ )) { 1972 `bufãr_cÝy_¡ršg_bufãr ( p -> ·th , ho¡ -> doüoÙ ); 1974 `bufãr_cÝy_¡ršg_bufãr ( p -> ·th , cÚ -> physiÿl . doc_roÙ ); 1976 `bufãr_­³nd_¡ršg_bufãr ( p -> ·th , cÚ -> »que¡ . ·thšfo ); 1977 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("PATH_TRANSLATED"), `CONST_BUF_LEN Õ-> ·th )), cÚ ) 1979 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("PATH_INFO"), CONST_STR_LEN("")), cÚ ) 1991 ià(! `bufãr_is_em±y ( ho¡ -> doüoÙ )) { 1997 `bufãr_cÝy_¡ršg_bufãr ( p -> ·th , ho¡ -> doüoÙ ); 1998 `bufãr_­³nd_¡ršg_bufãr ( p -> ·th , cÚ -> uri .path); 2000 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("SCRIPT_FILENAME"), `CONST_BUF_LEN Õ-> ·th )), cÚ ) 2001 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("DOCUMENT_ROOT"), `CONST_BUF_LEN ( ho¡ -> doüoÙ )), cÚ ) 2003 `bufãr_cÝy_¡ršg_bufãr ( p -> ·th , cÚ -> physiÿl .path); 2009 ià( ho¡ -> b»ak_sütfž’ame_fÜ_php ) { 2010 `bufãr_­³nd_¡ršg_bufãr ( p -> ·th , cÚ -> »que¡ . ·thšfo ); 2013 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("SCRIPT_FILENAME"), `CONST_BUF_LEN Õ-> ·th )), cÚ ) 2014 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("DOCUMENT_ROOT"), `CONST_BUF_LEN ( cÚ -> physiÿl . doc_roÙ )),con) 2017 ià( ho¡ -> ¡r_»que¡_uri -> u£d > 1) { 2027 ià('/' !ð ho¡ -> ¡r_»que¡_uri -> ±r [ho¡->¡r_»que¡_uri-> u£d - 2]) { 2029 `bufãr_­³nd_¡ršg ( ho¡ -> ¡r_»que¡_uri , "/"); 2032 ià( cÚ -> »que¡ . Üig_uri -> u£d >ð ho¡ -> ¡r_»que¡_uri ->used && 2033 0 =ð `¡ºcmp ( cÚ -> »que¡ . Üig_uri -> ±r , ho¡ -> ¡r_»que¡_uri ->±r, ho¡->¡r_»que¡_uri-> u£d - 1)) { 2036 `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("REQUEST_URI"), 2037 cÚ -> »que¡ . Üig_uri -> ±r + ( ho¡ -> ¡r_»que¡_uri -> u£d - 2), 2038 cÚ -> »que¡ . Üig_uri -> u£d - ( ho¡ -> ¡r_»que¡_uri ->used - 2)); 2040 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("REQUEST_URI"), `CONST_BUF_LEN ( cÚ -> »que¡ . Üig_uri )),con) 2043 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("REQUEST_URI"), `CONST_BUF_LEN ( cÚ -> »que¡ . Üig_uri )),con) 2045 ià(! `bufãr_is_equ® ( cÚ -> »que¡ . uri , cÚ->»que¡. Üig_uri )) { 2046 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("REDIRECT_URI"), `CONST_BUF_LEN ( cÚ -> »que¡ . uri )),con) 2048 ià(! `bufãr_is_em±y ( cÚ -> uri . qu”y )) { 2049 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("QUERY_STRING"), `CONST_BUF_LEN ( cÚ -> uri . qu”y )),con) 2051 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("QUERY_STRING"), CONST_STR_LEN("")), cÚ ) 2054 s = `g‘_h‰p_m‘hod_Çme ( cÚ -> »que¡ . h‰p_m‘hod ); 2055 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("REQUEST_METHOD"), s , `¡¾’ (s)), cÚ ) 2056 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("REDIRECT_STATUS"), CONST_STR_LEN("200")), cÚ ) 2057 s = `g‘_h‰p_v”siÚ_Çme ( cÚ -> »que¡ . h‰p_v”siÚ ); 2058 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("SERVER_PROTOCOL"), s , `¡¾’ (s)), cÚ ) 2060 ià( ¤v_sock -> is_s¦ || srv_sock-> is_´oxy_s¦ ) { 2061 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add ( p -> fcgi_’v , `CONST_STR_LEN ("HTTPS"), CONST_STR_LEN("Ú")), cÚ ) 2064 `FCGI_ENV_ADD_CHECK ( `fcgi_’v_add_»que¡_h—d”s ( ¤v , cÚ , p ), con); 2066 `fcgi_h—d” (&( h—d” ), FCGI_PARAMS , »que¡_id , p -> fcgi_’v -> u£d , 0); 2067 `bufãr_­³nd_memÜy ( b , (cÚ¡ *)& h—d” , (header)); 2068 `bufãr_­³nd_memÜy ( b , (cÚ¡ *) p -> fcgi_’v -> ±r ,…->fcgi_’v-> u£d ); 2070 `fcgi_h—d” (&( h—d” ), FCGI_PARAMS , »que¡_id , 0, 0); 2071 `bufãr_­³nd_memÜy ( b , (cÚ¡ *)& h—d” , (header)); 2073 b -> u£d ++; 2074 hùx -> wb -> by‹s_š +ð b -> u£d - 1; 2076 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth ) { 2077 chunkqueue * »q_cq = cÚ -> »que¡_cÚ‹Á_queue ; 2078 chunk * »q_c ; 2079 off_t off£t ; 2082  off£t = 0, »q_c = »q_cq -> fœ¡ ; off£ˆ!ð»q_cq-> by‹s_š ; ) { 2083 off_t weWªt = »q_cq -> by‹s_š - off£t > FCGI_MAX_LENGTH ? FCGI_MAX_LENGTH :„eq_cq->bytes_in - offset; 2084 off_t wr™‹n = 0; 2085 off_t weHave = 0; 2091 b = `chunkqueue_g‘_­³nd_bufãr ( hùx -> wb ); 2092 `fcgi_h—d” (&( h—d” ), FCGI_STDIN , »que¡_id , weWªt , 0); 2093 `bufãr_cÝy_memÜy ( b , (cÚ¡ *)& h—d” , (header)); 2094 hùx -> wb -> by‹s_š +ð( h—d” ); 2096 ià( p -> cÚf . debug > 10) { 2097 `årštf ( ¡d”r , "%s.%d:o£nd: %Îd / %Îd\n", __FILE__ , __LINE__ , off£t , »q_cq -> by‹s_š ); 2100  wr™‹n = 0; wr™‹À!ð weWªt ; ) { 2101 ià( p -> cÚf . debug > 10) { 2102 `årštf ( ¡d”r , "%s.%d: chunk: %Îd / %Îd\n", __FILE__ , __LINE__ , wr™‹n , weWªt ); 2105  »q_c -> ty³ ) { 2106  FILE_CHUNK : 2107 weHave = »q_c -> fže . Ëngth -„eq_c-> off£t ; 2109 ià( weHave > weWªt - wr™‹n ) weHave = weWant - written; 2111 ià( p -> cÚf . debug > 10) { 2112 `årštf ( ¡d”r , "%s.%d: sending %lld bytes from (%lld / %lld) %s\n", 2113 __FILE__ , __LINE__ , 2114 weHave , 2115 »q_c -> off£t , 2116 »q_c -> fže . Ëngth , 2117 »q_c -> fže . Çme -> ±r ); 2120 `as£¹ ( weHave != 0); 2122 `chunkqueue_­³nd_fže ( hùx -> wb , »q_c -> fže . Çme ,„eq_c-> off£t , weHave ); 2124 »q_c -> off£t +ð weHave ; 2125 »q_cq -> by‹s_out +ð weHave ; 2126 wr™‹n +ð weHave ; 2128 hùx -> wb -> by‹s_š +ð weHave ; 2142 ià( »q_c -> off£t =ð»q_c-> fže . Ëngth ) { 2143 chunk * c ; 2145 ià( p -> cÚf . debug > 10) { 2146 `årštf ( ¡d”r , "%s.%d:‚exˆchunk\n", __FILE__ , __LINE__ ); 2148 c = hùx -> wb -> Ï¡ ; 2150 `as£¹ ( c -> ty³ =ð FILE_CHUNK ); 2151 `as£¹ ( »q_c -> fže . is_‹mp == 1); 2153 c -> fže . is_‹mp = 1; 2154 »q_c -> fže . is_‹mp = 0; 2156 `chunkqueue_»move_fšished_chunks ( »q_cq ); 2158 »q_c = »q_cq -> fœ¡ ; 2162  MEM_CHUNK : 2164 weHave = »q_c -> mem -> u£d - 1 -„eq_c-> off£t ; 2166 ià( weHave > weWªt - wr™‹n ) weHave = weWant - written; 2168 `bufãr_­³nd_memÜy ( b , »q_c -> mem -> ±r +„eq_c-> off£t , weHave ); 2170 »q_c -> off£t +ð weHave ; 2171 »q_cq -> by‹s_out +ð weHave ; 2172 wr™‹n +ð weHave ; 2174 hùx -> wb -> by‹s_š +ð weHave ; 2176 ià( »q_c -> off£t =ð»q_c-> mem -> u£d - 1) { 2177 `chunkqueue_»move_fšished_chunks ( »q_cq ); 2179 »q_c = »q_cq -> fœ¡ ; 2188 b -> u£d ++; 2189 off£t +ð weWªt ; 2193 b = `chunkqueue_g‘_­³nd_bufãr ( hùx -> wb ); 2195 `fcgi_h—d” (&( h—d” ), FCGI_STDIN , »que¡_id , 0, 0); 2196 `bufãr_cÝy_memÜy ( b , (cÚ¡ *)& h—d” , (header)); 2197 b -> u£d ++; 2199 hùx -> wb -> by‹s_š +ð( h—d” ); 2202  i = 0; i < hùx -> wr™e_bufãr -> u£d ; i++) { 2203 `årštf ( ¡d”r , "%02x ", hùx -> wr™e_bufãr -> ±r [ i ]); 2204 ià(( i +1) % 16 == 0) { 2205 size_t j ; 2206  j = i -15; j <= i; j++) { 2207 `årštf ( ¡d”r , "%c", 2208 `i¥ršt (() hùx -> wr™e_bufãr -> ±r [ j ]) ? hctx->write_buffer->ptr[j] : '.'); 2210 `årštf ( ¡d”r , "\n"); 2216 } } 2218  $fcgi_»¥Ú£_·r£ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * š ) { 2219 * s , * ns ; 2221 hªdËr_ùx * hùx = cÚ -> ¶ugš_ùx [ p -> id ]; 2222 fcgi_ex‹nsiÚ_ho¡ * ho¡ ð hùx ->host; 2224 `UNUSED ( ¤v ); 2226 `bufãr_cÝy_¡ršg_bufãr ( p -> ·r£_»¥Ú£ , š ); 2229  s = p -> ·r£_»¥Ú£ -> ±r ; NULL !ð( ns = `¡rchr (s, '\n')); s =‚s + 1) { 2230 * key , * v®ue ; 2231  key_Ën ; 2232 d©a_¡ršg * ds ; 2236 ià( ns > p -> ·r£_»¥Ú£ -> ±r && 2237 *( ns -1) == '\r') { 2238 *( ns -1) = '\0'; 2241 ns [0] = '\0'; 2243 key = s ; 2244 ià( NULL =ð( v®ue = `¡rchr ( s , ':'))) { 2249 key_Ën = v®ue - key ; 2251 v®ue ++; 2253 * v®ue == ' ' || *value == '\t') value++; 2255 ià( ho¡ -> mode !ð FCGI_AUTHORIZER || 2256 !( cÚ -> h‰p_¡©us == 0 || 2257 cÚ -> h‰p_¡©us == 200)) { 2261 ià(0 !ð `¡ºÿ£cmp ( key , "Stus", key_Ën )) { 2262 ià( NULL =ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( cÚ -> »¥Ú£ . h—d”s , TYPE_STRING ))) { 2263 ds = `d©a_»¥Ú£_š™ (); 2265 `bufãr_cÝy_¡ršg_Ën ( ds -> key , key, key_Ën ); 2266 `bufãr_cÝy_¡ršg ( ds -> v®ue , value); 2268 `¬¿y_š£¹_unique ( cÚ -> »¥Ú£ . h—d”s , ( d©a_un£t *) ds ); 2272  key_Ën ) { 2274 ià(0 =ð `¡ºÿ£cmp ( key , "D©e", key_Ën )) { 2275 cÚ -> ·r£d_»¥Ú£ |ð HTTP_DATE ; 2279 ià(0 =ð `¡ºÿ£cmp ( key , "Stus", key_Ën )) { 2280 cÚ -> h‰p_¡©us = `¡¹Þ ( v®ue , NULL , 10); 2281 cÚ -> ·r£d_»¥Ú£ |ð HTTP_STATUS ; 2285 ià(0 =ð `¡ºÿ£cmp ( key , "LoÿtiÚ", key_Ën )) { 2286 cÚ -> ·r£d_»¥Ú£ |ð HTTP_LOCATION ; 2290 ià(0 =ð `¡ºÿ£cmp ( key , "CÚÃùiÚ", key_Ën )) { 2291 cÚ -> »¥Ú£ . k“p_®ive = (0 =ð `¡rÿ£cmp ( v®ue , "Keep-Alive")) ? 1 : 0; 2292 cÚ -> ·r£d_»¥Ú£ |ð HTTP_CONNECTION ; 2296 ià(0 =ð `¡ºÿ£cmp ( key , "CÚ‹Á-L’gth", key_Ën )) { 2297 cÚ -> »¥Ú£ . cÚ‹Á_Ëngth = `¡¹Þ ( v®ue , NULL , 10); 2298 cÚ -> ·r£d_»¥Ú£ |ð HTTP_CONTENT_LENGTH ; 2300 ià( cÚ -> »¥Ú£ . cÚ‹Á_Ëngth < 0) con->response.content_length = 0; 2309 ià(( cÚ -> ·r£d_»¥Ú£ & HTTP_LOCATION ) && 2310 !( cÚ -> ·r£d_»¥Ú£ & HTTP_STATUS )) { 2311 cÚ -> h‰p_¡©us = 302; 2315 } } 2318 bufãr * mb ; 2319 size_t mËn ; 2320  mty³ ; 2321  m·ddšg ; 2322 size_t m»que¡_id ; 2323 } tç¡cgi_»¥Ú£_·ck‘ ; 2325  $ç¡cgi_g‘_·ck‘ ( £rv” * ¤v , hªdËr_ùx * hùx , ç¡cgi_»¥Ú£_·ck‘ * ·ck‘ ) { 2326 chunk * c ; 2327 size_t off£t = 0; 2328 size_t tÜ—d = 0; 2329 FCGI_H—d” * h—d” ; 2331 ià(! hùx -> rb -> fœ¡ )  -1; 2333 ·ck‘ -> b = `bufãr_š™ (); 2334 ·ck‘ -> Ën = 0; 2335 ·ck‘ -> ty³ = 0; 2336 ·ck‘ -> ·ddšg = 0; 2337 ·ck‘ -> »que¡_id = 0; 2340  c = hùx -> rb -> fœ¡ ; c; c = c-> Ãxt ) { 2341 ià( ·ck‘ -> b -> u£d == 0) { 2342 `bufãr_cÝy_¡ršg_Ën ( ·ck‘ -> b , c -> mem -> ±r + c-> off£t , c->mem-> u£d - c->offset - 1); 2344 `bufãr_­³nd_¡ršg_Ën ( ·ck‘ -> b , c -> mem -> ±r + c-> off£t , c->mem-> u£d - c->offset - 1); 2347 ià( ·ck‘ -> b -> u£d >ð(* h—d” ) + 1) ; 2350 ià(( ·ck‘ -> b -> u£d == 0) || 2351 ( ·ck‘ -> b -> u£d - 1 < ( FCGI_H—d” ))) { 2353 `bufãr_ä“ ( ·ck‘ -> b ); 2355 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdsds", "Fa¡CGI: h—d”oØsm®l:", ·ck‘ -> b -> u£d , "by‹ <", ( FCGI_H—d” ), "bytes"); 2360 h—d” = ( FCGI_H—d” *)( ·ck‘ -> b -> ±r ); 2362 ·ck‘ -> Ën = ( h—d” -> cÚ‹ÁL’gthB0 | (h—d”-> cÚ‹ÁL’gthB1 << 8)è+ h—d”-> ·ddšgL’gth ; 2363 ·ck‘ -> »que¡_id = ( h—d” -> »que¡IdB0 | (h—d”-> »que¡IdB1 << 8)); 2364 ·ck‘ -> ty³ = h—d” ->type; 2365 ·ck‘ -> ·ddšg = h—d” -> ·ddšgL’gth ; 2368 off£t = (* h—d” ); 2371 `bufãr_cÝy_¡ršg ( ·ck‘ -> b , ""); 2373 ià( ·ck‘ -> Ën ) { 2375 ; c && ( ·ck‘ -> b -> u£d <…ack‘-> Ën + 1); c = c-> Ãxt ) { 2376 size_t weWªt = ·ck‘ -> Ën - (·ck‘-> b -> u£d - 1); 2377 size_t weHave = c -> mem -> u£d - c-> off£t - offset - 1; 2379 ià( weHave > weWªt ) weHave = weWant; 2381 `bufãr_­³nd_¡ršg_Ën ( ·ck‘ -> b , c -> mem -> ±r + c-> off£t + off£t, weHave ); 2384 off£t = 0; 2387 ià( ·ck‘ -> b -> u£d <…ack‘-> Ën + 1) { 2390 `bufãr_ä“ ( ·ck‘ -> b ); 2394 ·ck‘ -> b -> u£d -ð·ck‘-> ·ddšg ; 2395 ·ck‘ -> b -> ±r [·ck‘->b-> u£d - 1] = '\0'; 2399 tÜ—d = ·ck‘ -> Ën + ( FCGI_H—d” ); 2400  c = hùx -> rb -> fœ¡ ; c && tÜ—d ; c = c-> Ãxt ) { 2401 ià( c -> mem -> u£d - c-> off£t - 1 <ð tÜ—d ) { 2403 tÜ—d -ð c -> mem -> u£d - c-> off£t - 1; 2404 c -> off£t = c-> mem -> u£d - 1; 2406 c -> off£t +ð tÜ—d ; 2407 tÜ—d = 0; 2411 `chunkqueue_»move_fšished_chunks ( hùx -> rb ); 2414 } } 2416  $fcgi_demux_»¥Ú£ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 2417  fš = 0; 2418  tÜ—d ; 2419 ssize_t r ; 2421 ¶ugš_d©a * p = hùx ->plugin_data; 2422 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 2423  fcgi_fd = hùx -> fd ; 2424 fcgi_ex‹nsiÚ_ho¡ * ho¡ ð hùx ->host; 2425 fcgi_´oc * ´oc = hùx ->proc; 2430 ià( `ioùl ( hùx -> fd , FIONREAD , & tÜ—d )) { 2431 ià( ”ºo =ð EAGAIN )  0; 2432 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 2434 fcgi_fd ); 2440 ià( tÜ—d > 0) { 2441 bufãr * b ; 2442 chunk * cq_fœ¡ = hùx -> rb -> fœ¡ ; 2443 chunk * cq_Ï¡ = hùx -> rb -> Ï¡ ; 2445 b = `chunkqueue_g‘_­³nd_bufãr ( hùx -> rb ); 2446 `bufãr_´•¬e_cÝy ( b , tÜ—d + 1); 2449 ià(-1 =ð( r = `»ad ( hùx -> fd , b -> ±r , tÜ—d ))) { 2450 ià( ”ºo =ð EAGAIN ) { 2453 `bufãr_ä“ ( hùx -> rb -> Ï¡ -> mem ); 2454 `ä“ ( hùx -> rb -> Ï¡ ); 2455 hùx -> rb -> fœ¡ = cq_fœ¡ ; 2456 hùx -> rb -> Ï¡ = cq_Ï¡ ; 2459 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 2461 fcgi_fd , `¡»¼Ü ( ”ºo )); 2466 `as£¹ ( r ); 2468 b -> u£d = r + 1; 2469 b -> ±r [b-> u£d - 1] = '\0'; 2471 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdsb", 2473 "pid:", ´oc -> pid , 2474 "sock‘:", ´oc -> cÚÃùiÚ_Çme ); 2483  fš == 0) { 2484 ç¡cgi_»¥Ú£_·ck‘ ·ck‘ ; 2487 ià(0 !ð `ç¡cgi_g‘_·ck‘ ( ¤v , hùx , & ·ck‘ )) { 2492  ·ck‘ . ty³ ) { 2493  FCGI_STDOUT : 2494 ià( ·ck‘ . Ën == 0) ; 2497 ià(0 =ð cÚ -> fže_¡¬‹d ) { 2498 * c ; 2499 size_t bËn ; 2500 d©a_¡ršg * ds ; 2510 ià( hùx -> »¥Ú£_h—d” -> u£d == 0) { 2511 `bufãr_cÝy_¡ršg_bufãr ( hùx -> »¥Ú£_h—d” , ·ck‘ . b ); 2513 `bufãr_­³nd_¡ršg_bufãr ( hùx -> »¥Ú£_h—d” , ·ck‘ . b ); 2516 ià( NULL !ð( c = `bufãr_£¬ch_¡ršg_Ën ( hùx -> »¥Ú£_h—d” , `CONST_STR_LEN ("\r\n\r\n")))) { 2517 bËn = hùx -> »¥Ú£_h—d” -> u£d - ( c - hùx->»¥Ú£_h—d”-> ±r ) - 4; 2518 hùx -> »¥Ú£_h—d” -> u£d = ( c - hùx->»¥Ú£_h—d”-> ±r ) + 3; 2519 c += 4; 2520 } ià( NULL !ð( c = `bufãr_£¬ch_¡ršg_Ën ( hùx -> »¥Ú£_h—d” , `CONST_STR_LEN ("\n\n")))) { 2521 bËn = hùx -> »¥Ú£_h—d” -> u£d - ( c - hùx->»¥Ú£_h—d”-> ±r ) - 2; 2522 hùx -> »¥Ú£_h—d” -> u£d = c - hùx->»¥Ú£_h—d”-> ±r + 2; 2523 c += 2; 2530 `fcgi_»¥Ú£_·r£ ( ¤v , cÚ , p , hùx -> »¥Ú£_h—d” ); 2532 cÚ -> fže_¡¬‹d = 1; 2534 ià( ho¡ -> mode =ð FCGI_AUTHORIZER && 2535 ( cÚ -> h‰p_¡©us == 0 || 2536 cÚ -> h‰p_¡©us == 200)) { 2538 hùx -> £nd_cÚ‹Á_body = 0; 2541 ià( ho¡ -> ®low_x£ndfže && 2542 ( NULL !ð( ds = ( d©a_¡ršg *è `¬¿y_g‘_–em’t ( cÚ -> »¥Ú£ . h—d”s , "X-LIGHTTPD-send-file")) 2543 || NULL !ð( ds = ( d©a_¡ršg *è `¬¿y_g‘_–em’t ( cÚ -> »¥Ú£ . h—d”s , "X-Sendfile")))) { 2544 ¡©_ÿche_’Œy * sû ; 2546 ià( HANDLER_ERROR !ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , ds -> v®ue , & sû )) { 2547 d©a_¡ršg * dþs = `d©a_¡ršg_š™ (); 2549 `h‰p_chunk_­³nd_fže ( ¤v , cÚ , ds -> v®ue , 0, sû -> ¡ . ¡_size ); 2550 hùx -> £nd_cÚ‹Á_body = 0; 2551 `jobli¡_­³nd ( ¤v , cÚ ); 2553 `bufãr_cÝy_¡ršg_Ën ( dþs -> key , "Content-Length", ("Content-Length")-1); 2554 `bufãr_cÝy_lÚg ( dþs -> v®ue , sû -> ¡ . ¡_size ); 2555 dþs = ( d©a_¡ršg *è `¬¿y_»¶aû ( cÚ -> »¥Ú£ . h—d”s , ( d©a_un£t *)dcls); 2556 ià( dþs èdþs-> `ä“ (( d©a_un£t *)dcls); 2558 cÚ -> ·r£d_»¥Ú£ |ð HTTP_CONTENT_LENGTH ; 2559 cÚ -> »¥Ú£ . cÚ‹Á_Ëngth = sû -> ¡ . ¡_size ; 2561 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 2563 ds -> v®ue ); 2568 ià( hùx -> £nd_cÚ‹Á_body && bËn > 1) { 2570 ià( cÚ -> »que¡ . h‰p_v”siÚ =ð HTTP_VERSION_1_1 && 2571 !( cÚ -> ·r£d_»¥Ú£ & HTTP_CONTENT_LENGTH )) { 2572 cÚ -> »¥Ú£ . Œªsãr_’codšg = HTTP_TRANSFER_ENCODING_CHUNKED ; 2575 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , c , bËn ); 2576 `jobli¡_­³nd ( ¤v , cÚ ); 2578 } ià( hùx -> £nd_cÚ‹Á_body && ·ck‘ . b -> u£d > 1) { 2579 ià( cÚ -> »que¡ . h‰p_v”siÚ =ð HTTP_VERSION_1_1 && 2580 !( cÚ -> ·r£d_»¥Ú£ & HTTP_CONTENT_LENGTH )) { 2582 cÚ -> »¥Ú£ . Œªsãr_’codšg = HTTP_TRANSFER_ENCODING_CHUNKED ; 2585 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , ·ck‘ . b -> ±r ,…ack‘.b-> u£d ); 2586 `jobli¡_­³nd ( ¤v , cÚ ); 2589  FCGI_STDERR : 2590 ià( ·ck‘ . Ën == 0) ; 2592 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 2593 "Fa¡CGI-¡d”r:", ·ck‘ . b ); 2596  FCGI_END_REQUEST : 2597 cÚ -> fže_fšished = 1; 2599 ià( ho¡ -> mode !ð FCGI_AUTHORIZER || 2600 !( cÚ -> h‰p_¡©us == 0 || 2601 cÚ -> h‰p_¡©us == 200)) { 2603 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , NULL , 0); 2604 `jobli¡_­³nd ( ¤v , cÚ ); 2607 fš = 1; 2610 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 2611 "Fa¡CGI: h—d”.ty³‚Ù hªdËd: ", ·ck‘ . ty³ ); 2614 `bufãr_ä“ ( ·ck‘ . b ); 2617  fš ; 2618 } } 2620  $fcgi_»¡¬t_d—d_´ocs ( £rv” * ¤v , ¶ugš_d©a * p , fcgi_ex‹nsiÚ_ho¡ * ho¡ ) { 2621 fcgi_´oc * ´oc ; 2623  ´oc = ho¡ -> fœ¡ ;…roc;…roøð´oc-> Ãxt ) { 2624  ¡©us ; 2626 ià( p -> cÚf . debug > 2) { 2627 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbdddd", 2629 ´oc -> cÚÃùiÚ_Çme , 2630 ´oc -> ¡©e , 2631 ´oc -> is_loÿl , 2632 ´oc -> lßd , 2633 ´oc -> pid ); 2640  ´oc -> ¡©e ) { 2641  PROC_STATE_KILLED : 2642  PROC_STATE_UNSET : 2644 `as£¹ (0); 2647  PROC_STATE_RUNNING : 2649  PROC_STATE_OVERLOADED : 2650 ià( ¤v -> cur_ts <ð ´oc -> di§bËd_uÁž ) ; 2652 ´oc -> ¡©e = PROC_STATE_RUNNING ; 2653 ho¡ -> aùive_´ocs ++; 2655 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbdb", 2657 ho¡ ->ho¡, ho¡-> pÜt , 2658 ho¡ -> unixsock‘ ); 2660  PROC_STATE_DIED_WAIT_FOR_PID : 2662 ià(! ´oc -> is_loÿl ) ; 2666  `wa™pid ( ´oc -> pid , & ¡©us , WNOHANG )) { 2673 ià( `WIFEXITED ( ¡©us )) { 2675 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdsd", 2676 "chždƒx™ed,…id:", ´oc -> pid , 2677 "¡©us:", `WEXITSTATUS ( ¡©us )); 2679 } ià( `WIFSIGNALED ( ¡©us )) { 2680 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 2682 `WTERMSIG ( ¡©us )); 2684 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 2686 ¡©us ); 2689 ´oc -> ¡©e = PROC_STATE_DIED ; 2694 ià( ´oc -> ¡©e !ð PROC_STATE_DIED ) ; 2696  PROC_STATE_DIED : 2700 ià( ´oc -> is_loÿl ) { 2703 ià( ´oc -> lßd != 0) ; 2707 ià( p -> cÚf . debug ) { 2708 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbsdsd", 2710 "\n\tsock‘", ´oc -> cÚÃùiÚ_Çme , 2711 "\n\tcu¼’t:", 1, "/", ho¡ -> mš_´ocs ); 2714 ià( `fcgi_¥awn_cÚÃùiÚ ( ¤v , p , ho¡ , ´oc )) { 2715 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 2717  HANDLER_ERROR ; 2720 ià( ¤v -> cur_ts <ð ´oc -> di§bËd_uÁž ) ; 2722 ´oc -> ¡©e = PROC_STATE_RUNNING ; 2723 ho¡ -> aùive_´ocs ++; 2725 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 2727 ´oc -> cÚÃùiÚ_Çme ); 2734 } } 2736  hªdËr_t $fcgi_wr™e_»que¡ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 2737 ¶ugš_d©a * p = hùx ->plugin_data; 2738 fcgi_ex‹nsiÚ_ho¡ * ho¡ ð hùx ->host; 2739 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 2740 fcgi_´oc * ´oc ; 2742  »t ; 2750 ià(! ho¡ || 2751 (! ho¡ -> pÜt && !ho¡-> unixsock‘ -> u£d )) { 2752 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sxddd", 2754 ho¡ , 2755 ho¡ ->ho¡-> u£d , 2756 ho¡ -> pÜt , 2757 ho¡ -> unixsock‘ -> u£d ); 2759 hùx -> ´oc -> di§bËd_uÁž = ¤v -> cur_ts + 10; 2760 hùx -> ´oc -> ¡©e = PROC_STATE_DIED ; 2762  HANDLER_ERROR ; 2766 ià( hùx -> ¡©e =ð FCGI_STATE_CONNECT_DELAYED ) { 2767  sock‘_”rÜ ; 2768 sockËn_t sock‘_”rÜ_Ën = ( sock‘_”rÜ ); 2771 ià(0 !ð `g‘sockÝt ( hùx -> fd , SOL_SOCKET , SO_ERROR , & sock‘_”rÜ , & sock‘_”rÜ_Ën )) { 2772 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 2773 "g‘sock݈çžed:", `¡»¼Ü ( ”ºo )); 2775 hùx -> ´oc -> di§bËd_uÁž = ¤v -> cur_ts + 10; 2776 hùx -> ´oc -> ¡©e = PROC_STATE_DIED ; 2778  HANDLER_ERROR ; 2780 ià( sock‘_”rÜ != 0) { 2781 ià(! hùx -> ´oc -> is_loÿl || p -> cÚf . debug ) { 2784 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sssb", 2785 "e¡ablishšg cÚÃùiÚ fažed:", `¡»¼Ü ( sock‘_”rÜ ), 2786 "sock‘:", hùx -> ´oc -> cÚÃùiÚ_Çme ); 2789 hùx -> ´oc -> di§bËd_uÁž = ¤v -> cur_ts + 5; 2791 ià( hùx -> ´oc -> is_loÿl ) { 2792 hùx -> ´oc -> ¡©e = PROC_STATE_DIED_WAIT_FOR_PID ; 2794 hùx -> ´oc -> ¡©e = PROC_STATE_DIED ; 2797 hùx -> ´oc -> ¡©e = PROC_STATE_DIED ; 2799 `ç¡cgi_¡©us_cÝy_´oúame ( p -> ¡©uskey , hùx -> ho¡ , hùx-> ´oc ); 2800 `bufãr_­³nd_¡ršg ( p -> ¡©uskey , ".died"); 2802 `¡©us_couÁ”_šc ( ¤v , `CONST_BUF_LEN ( p -> ¡©uskey )); 2804  HANDLER_ERROR ; 2807 hùx -> ¡©e = FCGI_STATE_PREPARE_WRITE ; 2811  hùx -> ¡©e ) { 2812  FCGI_STATE_CONNECT_DELAYED : 2815  FCGI_STATE_INIT : 2817 hùx -> ´oc = NULL ; 2819  ´oc = hùx -> ho¡ -> fœ¡ ; 2820 ´oc &&…roc-> ¡©e !ð PROC_STATE_RUNNING ; 2821 ´oc =…roc-> Ãxt ); 2824 ià( ´oc =ð NULL ) { 2825 hùx -> fde_ndx = -1; 2827  HANDLER_ERROR ; 2830 hùx -> ´oc =…roc; 2833  ´oc =…roc-> Ãxt ;…roc;…roc =…roc->next) { 2834 ià( ´oc -> ¡©e !ð PROC_STATE_RUNNING ) ; 2835 ià( ´oc -> lßd < hùx ->proc->load) hctx->proc =…roc; 2838 »t = ho¡ -> unixsock‘ -> u£d ? AF_UNIX : AF_INET ; 2840 ià(-1 =ð( hùx -> fd = `sock‘ ( »t , SOCK_STREAM , 0))) { 2841 ià( ”ºo =ð EMFILE || 2842 ”ºo =ð EINTR ) { 2843 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 2844 "wa™ fÜ fd‡ˆcÚÃùiÚ:", cÚ -> fd ); 2846  HANDLER_WAIT_FOR_FD ; 2849 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdd", 2850 "sock‘ fažed:", `¡»¼Ü ( ”ºo ), ¤v -> cur_fds , srv-> max_fds ); 2851  HANDLER_ERROR ; 2853 hùx -> fde_ndx = -1; 2855 ¤v -> cur_fds ++; 2857 `fdev’t_»gi¡” ( ¤v -> ev , hùx -> fd , fcgi_hªdË_fdev’t , hctx); 2859 ià(-1 =ð `fdev’t_fúŽ_£t ( ¤v -> ev , hùx -> fd )) { 2860 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 2861 "fúŽ fažed:", `¡»¼Ü ( ”ºo )); 2863  HANDLER_ERROR ; 2866 ià( hùx -> ´oc -> is_loÿl ) { 2867 hùx -> pid = hùx-> ´oc ->pid; 2870  `fcgi_e¡ablish_cÚÃùiÚ ( ¤v , hùx )) { 2871  CONNECTION_DELAYED : 2874 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_OUT ); 2876 `fcgi_£t_¡©e ( ¤v , hùx , FCGI_STATE_CONNECT_DELAYED ); 2877  HANDLER_WAIT_FOR_EVENT ; 2878  CONNECTION_OVERLOADED : 2882 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdsd", 2884 "»cÚÃùs:", hùx -> »cÚÃùs , 2885 "lßd:", ho¡ -> lßd ); 2888 hùx -> ´oc -> di§bËd_uÁž = ¤v -> cur_ts + 2; 2889 hùx -> ´oc -> ¡©e = PROC_STATE_OVERLOADED ; 2891 `ç¡cgi_¡©us_cÝy_´oúame ( p -> ¡©uskey , hùx -> ho¡ , hùx-> ´oc ); 2892 `bufãr_­³nd_¡ršg ( p -> ¡©uskey , ".overloaded"); 2894 `¡©us_couÁ”_šc ( ¤v , `CONST_BUF_LEN ( p -> ¡©uskey )); 2896  HANDLER_ERROR ; 2897  CONNECTION_DEAD : 2905 hùx -> ´oc -> di§bËd_uÁž = ¤v -> cur_ts + 5; 2906 ià( hùx -> ´oc -> is_loÿl ) { 2907 hùx -> ´oc -> ¡©e = PROC_STATE_DIED_WAIT_FOR_PID ; 2909 hùx -> ´oc -> ¡©e = PROC_STATE_DIED ; 2912 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdsd", 2914 "»cÚÃùs:", hùx -> »cÚÃùs , 2915 "lßd:", ho¡ -> lßd ); 2917 `ç¡cgi_¡©us_cÝy_´oúame ( p -> ¡©uskey , hùx -> ho¡ , hùx-> ´oc ); 2918 `bufãr_­³nd_¡ršg ( p -> ¡©uskey , ".died"); 2920 `¡©us_couÁ”_šc ( ¤v , `CONST_BUF_LEN ( p -> ¡©uskey )); 2922  HANDLER_ERROR ; 2923  CONNECTION_OK : 2926 `fcgi_£t_¡©e ( ¤v , hùx , FCGI_STATE_PREPARE_WRITE ); 2929  CONNECTION_UNSET : 2933  FCGI_STATE_PREPARE_WRITE : 2936 hùx -> ´oc -> lßd ++; 2937 hùx -> ´oc -> Ï¡_u£d = ¤v -> cur_ts ; 2938 hùx -> gÙ_´oc = 1; 2940 `¡©us_couÁ”_šc ( ¤v , `CONST_STR_LEN ("fastcgi.requests")); 2941 `¡©us_couÁ”_šc ( ¤v , `CONST_STR_LEN ("fastcgi.active-requests")); 2943 `ç¡cgi_¡©us_cÝy_´oúame ( p -> ¡©uskey , hùx -> ho¡ , hùx-> ´oc ); 2944 `bufãr_­³nd_¡ršg ( p -> ¡©uskey , ".connected"); 2946 `¡©us_couÁ”_šc ( ¤v , `CONST_BUF_LEN ( p -> ¡©uskey )); 2949 `ç¡cgi_¡©us_cÝy_´oúame ( p -> ¡©uskey , hùx -> ho¡ , hùx-> ´oc ); 2950 `bufãr_­³nd_¡ršg ( p -> ¡©uskey , ".load"); 2952 `¡©us_couÁ”_£t ( ¤v , `CONST_BUF_LEN ( p -> ¡©uskey ), hùx -> ´oc -> lßd ); 2955 `ç¡cgi_¡©us_cÝy_´oúame ( p -> ¡©uskey , hùx -> ho¡ , NULL ); 2956 `bufãr_­³nd_¡ršg ( p -> ¡©uskey , ".load"); 2958 `¡©us_couÁ”_£t ( ¤v , `CONST_BUF_LEN ( p -> ¡©uskey ), hùx -> ho¡ -> lßd ); 2960 ià( p -> cÚf . debug ) { 2961 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdsbsd", 2963 "pid:", hùx -> ´oc -> pid , 2964 "sock‘:", hùx -> ´oc -> cÚÃùiÚ_Çme , 2965 "lßd:", hùx -> ´oc -> lßd ); 2969 ià( hùx -> »que¡_id == 0) { 2970 hùx -> »que¡_id = `fcgi_»que¡id_Ãw ( ¤v , p ); 2972 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 2973 "fcgi-»que¡ i ®»ady iÀu£:", hùx -> »que¡_id ); 2977 ià(-1 =ð `fcgi_ü—‹_’v ( ¤v , hùx , hùx-> »que¡_id )è HANDLER_ERROR ; 2978 `fcgi_£t_¡©e ( ¤v , hùx , FCGI_STATE_WRITE ); 2980  FCGI_STATE_WRITE : 2981 »t = ¤v -> `ÃtwÜk_back’d_wr™e (¤v, cÚ , hùx -> fd , hùx-> wb ); 2983 `chunkqueue_»move_fšished_chunks ( hùx -> wb ); 2985 ià( »t < 0) { 2986  ”ºo ) { 2987  ENOTCONN : 2994 ià( hùx -> wb -> by‹s_out == 0 && 2995 hùx -> »cÚÃùs < 5) { 2996 `u¦“p (10000); 3000 `fcgi_»cÚÃù ( ¤v , hùx ); 3002  HANDLER_WAIT_FOR_FD ; 3011 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssosd", 3013 "wr™e-off£t:", hùx -> wb -> by‹s_out , 3014 "»cÚÃù‡‰em±s:", hùx -> »cÚÃùs ); 3016  HANDLER_ERROR ; 3017  EAGAIN : 3018  EINTR : 3019 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_OUT ); 3021  HANDLER_WAIT_FOR_EVENT ; 3023 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", 3024 "wr™çžed:", `¡»¼Ü ( ”ºo ),ƒrrno); 3026  HANDLER_ERROR ; 3030 ià( hùx -> wb -> by‹s_out =ðhùx->wb-> by‹s_š ) { 3032 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 3033 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_IN ); 3034 `fcgi_£t_¡©e ( ¤v , hùx , FCGI_STATE_READ ); 3036 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_OUT ); 3038  HANDLER_WAIT_FOR_EVENT ; 3042  FCGI_STATE_READ : 3046 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "(debug) unknown state"); 3047  HANDLER_ERROR ; 3050  HANDLER_WAIT_FOR_EVENT ; 3051 } } 3056 $SUBREQUEST_FUNC ( mod_ç¡cgi_hªdË_sub»que¡ ) { 3057 ¶ugš_d©a * p = p_d ; 3059 hªdËr_ùx * hùx = cÚ -> ¶ugš_ùx [ p -> id ]; 3060 fcgi_´oc * ´oc ; 3061 fcgi_ex‹nsiÚ_ho¡ * ho¡ ; 3063 ià( NULL =ð hùx è HANDLER_GO_ON ; 3066 ià( cÚ -> mode !ð p -> id è HANDLER_GO_ON ; 3071 ià( hùx -> ho¡ =ð NULL ) { 3072 size_t k ; 3073  ndx , u£d = -1; 3076 ndx = hùx -> ext -> Ï¡_u£d_ndx + 1; 3077 if( ndx >ð hùx -> ext -> u£d ||‚dx < 0)‚dx = 0; 3078 ho¡ = hùx -> ext -> ho¡s [ ndx ]; 3079 ià( ho¡ -> lßd > 0) { 3081  k = 0, ndx = -1; k < hùx -> ext -> u£d ; k++) { 3082 ho¡ = hùx -> ext -> ho¡s [ k ]; 3085 ià( ho¡ -> aùive_´ocs == 0) ; 3087 ià( u£d =ð-1 || ho¡ -> lßd < used) { 3088 u£d = ho¡ -> lßd ; 3090 ndx = k ; 3096 ià( ndx == -1) { 3099 `fcgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 3101 cÚ -> h‰p_¡©us = 500; 3102 cÚ -> mode = DIRECT ; 3104  HANDLER_FINISHED ; 3107 hùx -> ext -> Ï¡_u£d_ndx = ndx ; 3108 ho¡ = hùx -> ext -> ho¡s [ ndx ]; 3116 hùx -> ho¡ = host; 3121 hùx -> ho¡ -> lßd ++; 3122 hùx -> ´oc = NULL ; 3124 ho¡ = hùx ->host; 3128  `fcgi_wr™e_»que¡ ( ¤v , hùx )) { 3129  HANDLER_ERROR : 3130 ´oc = hùx ->proc; 3131 ho¡ = hùx ->host; 3133 ià( hùx -> ¡©e =ð FCGI_STATE_INIT || 3134 hùx -> ¡©e =ð FCGI_STATE_CONNECT_DELAYED ) { 3135 ià( ´oc è ho¡ -> aùive_´ocs --; 3137 `fcgi_»¡¬t_d—d_´ocs ( ¤v , p , ho¡ ); 3140 ià( hùx -> »cÚÃùs < 5) { 3141 `fcgi_»cÚÃù ( ¤v , hùx ); 3142 `jobli¡_­³nd ( ¤v , cÚ ); 3144  HANDLER_WAIT_FOR_FD ; 3146 `fcgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 3148 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 3149 cÚ -> mode = DIRECT ; 3150 cÚ -> h‰p_¡©us = 500; 3151 `jobli¡_­³nd ( ¤v , cÚ ); 3153  HANDLER_FINISHED ; 3156 `fcgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 3158 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 3159 cÚ -> mode = DIRECT ; 3160 ià( cÚ -> h‰p_¡©us != 400) con->http_status = 503; 3161 `jobli¡_­³nd ( ¤v , cÚ ); 3163  HANDLER_FINISHED ; 3165  HANDLER_WAIT_FOR_EVENT : 3166 ià( cÚ -> fže_¡¬‹d == 1) { 3167  HANDLER_FINISHED ; 3169  HANDLER_WAIT_FOR_EVENT ; 3171  HANDLER_WAIT_FOR_FD : 3172  HANDLER_WAIT_FOR_FD ; 3174 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "subrequest write-req default"); 3175  HANDLER_ERROR ; 3177 } } 3179  hªdËr_t $fcgi_hªdË_fdev’t (* s , * ùx ,  »v’ts ) { 3180 £rv” * ¤v = (£rv” *) s ; 3181 hªdËr_ùx * hùx = ùx ; 3182 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 3183 ¶ugš_d©a * p = hùx ->plugin_data; 3185 fcgi_´oc * ´oc = hùx ->proc; 3186 fcgi_ex‹nsiÚ_ho¡ * ho¡ ð hùx ->host; 3188 ià(( »v’ts & FDEVENT_IN ) && 3189 hùx -> ¡©e =ð FCGI_STATE_READ ) { 3190  `fcgi_demux_»¥Ú£ ( ¤v , hùx )) { 3195 ià( ho¡ -> mode =ð FCGI_AUTHORIZER && 3196 ( cÚ -> h‰p_¡©us == 200 || 3197 cÚ -> h‰p_¡©us == 0)) { 3204 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . doc_roÙ , ho¡ -> doüoÙ ); 3206 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ·th , ho¡ -> doüoÙ ); 3207 `bufãr_­³nd_¡ršg_bufãr ( cÚ -> physiÿl . ·th , cÚ-> uri .path); 3208 `fcgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 3210 cÚ -> mode = DIRECT ; 3211 cÚ -> fže_¡¬‹d = 1; 3214 `fcgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 3217 `jobli¡_­³nd ( ¤v , cÚ ); 3218  HANDLER_FINISHED ; 3220 ià( ´oc -> pid &&…roc-> ¡©e !ð PROC_STATE_DIED ) { 3221  ¡©us ; 3225  `wa™pid ( ´oc -> pid , & ¡©us , WNOHANG )) { 3233 ià( `WIFEXITED ( ¡©us )) { 3234 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdsd", 3235 "chždƒx™ed,…id:", ´oc -> pid , 3236 "¡©us:", `WEXITSTATUS ( ¡©us )); 3237 } ià( `WIFSIGNALED ( ¡©us )) { 3238 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 3240 `WTERMSIG ( ¡©us )); 3242 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 3244 ¡©us ); 3247 ià( p -> cÚf . debug ) { 3248 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbsdsd", 3250 "\n\tsock‘", ´oc -> cÚÃùiÚ_Çme , 3251 "\n\tcu¼’t:", 1, "/", ho¡ -> mš_´ocs ); 3254 ià( `fcgi_¥awn_cÚÃùiÚ ( ¤v , p , ho¡ , ´oc )) { 3256 ´oc -> ¡©e = PROC_STATE_DIED ; 3258 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 3266 ià( cÚ -> fže_¡¬‹d == 0) { 3269 ià( hùx -> wb -> by‹s_out == 0 && 3270 hùx -> »cÚÃùs < 5) { 3271 `fcgi_»cÚÃù ( ¤v , hùx ); 3273 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbsbs", 3275 "Ú sock‘:", ´oc -> cÚÃùiÚ_Çme , 3276 "fÜ", cÚ -> uri . ·th , ",„econnecting"); 3278  HANDLER_WAIT_FOR_FD ; 3281 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sosbsbs", 3282 "»¥Ú£‚Ù„eûived,„eque¡ s’t:", hùx -> wb -> by‹s_out , 3283 "Ú sock‘:", ´oc -> cÚÃùiÚ_Çme , 3284 "fÜ", cÚ -> uri . ·th , ", closing connection"); 3286 `fcgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 3288 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 3289 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 3290 cÚ -> h‰p_¡©us = 500; 3291 cÚ -> mode = DIRECT ; 3294 `fcgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 3296 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbsbs", 3298 "Ú sock‘:", ´oc -> cÚÃùiÚ_Çme , 3299 "fÜ", cÚ -> uri . ·th , ",erminating connection"); 3301 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 3307 `jobli¡_­³nd ( ¤v , cÚ ); 3308  HANDLER_FINISHED ; 3312 ià( »v’ts & FDEVENT_OUT ) { 3313 ià( hùx -> ¡©e =ð FCGI_STATE_CONNECT_DELAYED || 3314 hùx -> ¡©e =ð FCGI_STATE_WRITE ) { 3320  `mod_ç¡cgi_hªdË_sub»que¡ ( ¤v , cÚ , p ); 3322 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 3324 hùx -> ¡©e ); 3329 ià( »v’ts & FDEVENT_HUP ) { 3330 ià( hùx -> ¡©e =ð FCGI_STATE_CONNECT_DELAYED ) { 3340  `mod_ç¡cgi_hªdË_sub»que¡ ( ¤v , cÚ , p ); 3341 } ià( hùx -> ¡©e =ð FCGI_STATE_READ && 3342 hùx -> ´oc -> pÜt == 0) { 3349 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbSBSDSd", 3351 cÚ -> uri . ·th , 3353 ho¡ ->host, 3355 ho¡ -> pÜt , 3357 hùx -> ¡©e ); 3359 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 3360 `fcgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 3361 `jobli¡_­³nd ( ¤v , cÚ ); 3363 } ià( »v’ts & FDEVENT_ERR ) { 3364 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 3369 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 3370 `fcgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 3371 `jobli¡_­³nd ( ¤v , cÚ ); 3374  HANDLER_FINISHED ; 3375 } } 3376  #PATCH ( x ) \ 3377 p -> cÚf . x = s ->x; ) 3378  $fcgi_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 3379 size_t i , j ; 3380 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 3382 `PATCH ( exts ); 3383 `PATCH ( debug ); 3384 `PATCH ( ext_m­pšg ); 3387  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 3388 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 3389 s = p -> cÚfig_¡Üage [ i ]; 3392 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 3395  j = 0; j < dc -> v®ue -> u£d ; j++) { 3396 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 3398 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("fastcgi.server"))) { 3399 `PATCH ( exts ); 3400 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("fastcgi.debug"))) { 3401 `PATCH ( debug ); 3402 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("fastcgi.map-extensions"))) { 3403 `PATCH ( ext_m­pšg ); 3409 } } 3410 #undeà PATCH 3413  hªdËr_t $fcgi_check_ex‹nsiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ,  uri_·th_hªdËr ) { 3414 ¶ugš_d©a * p = p_d ; 3415 size_t s_Ën ; 3416 size_t k ; 3417 bufãr * â ; 3418 fcgi_ex‹nsiÚ * ex‹nsiÚ = NULL ; 3419 fcgi_ex‹nsiÚ_ho¡ * ho¡ = NULL ; 3422 ià( cÚ -> fže_¡¬‹d =ð1è HANDLER_GO_ON ; 3424 â = uri_·th_hªdËr ? cÚ -> uri . ·th : cÚ-> physiÿl .path; 3426 ià( `bufãr_is_em±y ( â )è HANDLER_GO_ON ; 3428 s_Ën = â -> u£d - 1; 3430 `fcgi_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 3441  k = 0; k < p -> cÚf . ext_m­pšg -> u£d ; k++) { 3442 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . ext_m­pšg -> d©a [ k ]; 3443 size_t ù_Ën ; 3445 ià( ds -> key -> u£d == 0) ; 3447 ù_Ën = ds -> key -> u£d - 1; 3449 ià( s_Ën < ù_Ën ) ; 3452 ià(0 =ð `¡ºcmp ( â -> ±r + s_Ën - ù_Ën , ds -> key ->ptr, ct_len)) { 3456  k = 0; k < p -> cÚf . exts -> u£d ; k++) { 3457 ex‹nsiÚ = p -> cÚf . exts ->exts[ k ]; 3459 ià( `bufãr_is_equ® ( ds -> v®ue , ex‹nsiÚ -> key )) { 3464 ià( k =ð p -> cÚf . exts -> u£d ) { 3466 ex‹nsiÚ = NULL ; 3472 ià( ex‹nsiÚ =ð NULL ) { 3474  k = 0; k < p -> cÚf . exts -> u£d ; k++) { 3475 size_t ù_Ën ; 3477 ex‹nsiÚ = p -> cÚf . exts ->exts[ k ]; 3479 ià( ex‹nsiÚ -> key -> u£d == 0) ; 3481 ù_Ën = ex‹nsiÚ -> key -> u£d - 1; 3483 ià( s_Ën < ù_Ën ) ; 3486 ià(*( ex‹nsiÚ -> key -> ±r ) == '/') { 3487 ià( `¡ºcmp ( â -> ±r , ex‹nsiÚ -> key ->±r, ù_Ën ) == 0) 3489 } ià(0 =ð `¡ºcmp ( â -> ±r + s_Ën - ù_Ën , ex‹nsiÚ -> key ->ptr, ct_len)) { 3495 ià( k =ð p -> cÚf . exts -> u£d ) { 3496  HANDLER_GO_ON ; 3501  k = 0; k < ex‹nsiÚ -> u£d ; k++) { 3502 ho¡ = ex‹nsiÚ -> ho¡s [ k ]; 3505 ià( ho¡ -> aùive_´ocs == 0) { 3506 ho¡ = NULL ; 3515 ià(! ho¡ ) { 3517 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 3518 cÚ -> h‰p_¡©us = 500; 3521 ià(! ex‹nsiÚ -> nÙe_is_£Á ) { 3522 ex‹nsiÚ -> nÙe_is_£Á = 1; 3524 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsbs", 3525 "®ÈhªdËr fÜ ", cÚ -> uri . ·th , 3526 "Ú", ex‹nsiÚ -> key , 3530  HANDLER_FINISHED ; 3534 ex‹nsiÚ -> nÙe_is_£Á = 0; 3542 ià( uri_·th_hªdËr ) { 3543 ià( ho¡ -> check_loÿl == 0) { 3544 hªdËr_ùx * hùx ; 3545 * ·thšfo ; 3547 hùx = `hªdËr_ùx_š™ (); 3549 hùx -> »mÙe_cÚn = cÚ ; 3550 hùx -> ¶ugš_d©a = p ; 3551 hùx -> ´oc = NULL ; 3552 hùx -> ext = ex‹nsiÚ ; 3555 hùx -> cÚf . exts = p ->conf.exts; 3556 hùx -> cÚf . debug = p ->conf.debug; 3558 cÚ -> ¶ugš_ùx [ p -> id ] = hùx ; 3560 cÚ -> mode = p -> id ; 3562 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 3563 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 3588 ià( ex‹nsiÚ -> key -> ±r [0] == '/' && 3589 cÚ -> uri . ·th -> u£d > ex‹nsiÚ -> key ->used && 3590 NULL !ð( ·thšfo = `¡rchr ( cÚ -> uri . ·th -> ±r + ex‹nsiÚ -> key -> u£d - 1, '/'))) { 3593 `bufãr_cÝy_¡ršg ( cÚ -> »que¡ . ·thšfo ,…athinfo); 3595 cÚ -> uri . ·th -> u£d -ðcÚ-> »que¡ . ·thšfo ->used - 1; 3596 cÚ -> uri . ·th -> ±r [cÚ->uri.·th-> u£d - 1] = '\0'; 3600 hªdËr_ùx * hùx ; 3601 hùx = `hªdËr_ùx_š™ (); 3603 hùx -> »mÙe_cÚn = cÚ ; 3604 hùx -> ¶ugš_d©a = p ; 3605 hùx -> ´oc = NULL ; 3606 hùx -> ext = ex‹nsiÚ ; 3608 hùx -> cÚf . exts = p ->conf.exts; 3609 hùx -> cÚf . debug = p ->conf.debug; 3611 cÚ -> ¶ugš_ùx [ p -> id ] = hùx ; 3613 cÚ -> mode = p -> id ; 3615 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 3616 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "handling it in mod_fastcgi"); 3620  HANDLER_GO_ON ; 3621 } } 3624  hªdËr_t $fcgi_check_ex‹nsiÚ_1 ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 3625  `fcgi_check_ex‹nsiÚ ( ¤v , cÚ , p_d , 1); 3626 } } 3629  hªdËr_t $fcgi_check_ex‹nsiÚ_2 ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 3630  `fcgi_check_ex‹nsiÚ ( ¤v , cÚ , p_d , 0); 3631 } } 3633 $JOBLIST_FUNC ( mod_ç¡cgi_hªdË_jobli¡ ) { 3634 ¶ugš_d©a * p = p_d ; 3635 hªdËr_ùx * hùx = cÚ -> ¶ugš_ùx [ p -> id ]; 3637 ià( hùx =ð NULL è HANDLER_GO_ON ; 3639 ià( hùx -> fd != -1) { 3640  hùx -> ¡©e ) { 3641  FCGI_STATE_READ : 3642 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_IN ); 3645  FCGI_STATE_CONNECT_DELAYED : 3646  FCGI_STATE_WRITE : 3647 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_OUT ); 3650  FCGI_STATE_INIT : 3654 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "unhªdËd fcgi.¡©e", hùx -> ¡©e ); 3659  HANDLER_GO_ON ; 3660 } } 3663  hªdËr_t $fcgi_cÚÃùiÚ_þo£_ÿÎback ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 3664 ¶ugš_d©a * p = p_d ; 3666 `fcgi_cÚÃùiÚ_þo£ ( ¤v , cÚ -> ¶ugš_ùx [ p -> id ]); 3668  HANDLER_GO_ON ; 3669 } } 3671 $TRIGGER_FUNC ( mod_ç¡cgi_hªdË_Œigg” ) { 3672 ¶ugš_d©a * p = p_d ; 3673 size_t i , j , n ; 3686  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 3687 ¶ugš_cÚfig * cÚf ; 3688 fcgi_exts * exts ; 3690 cÚf = p -> cÚfig_¡Üage [ i ]; 3692 exts = cÚf ->exts; 3694  j = 0; j < exts -> u£d ; j++) { 3695 fcgi_ex‹nsiÚ * ex ; 3697 ex = exts ->exts[ j ]; 3699  n = 0;‚ < ex -> u£d ;‚++) { 3701 fcgi_´oc * ´oc ; 3702  sum_lßd = 0; 3703 fcgi_ex‹nsiÚ_ho¡ * ho¡ ; 3705 ho¡ = ex -> ho¡s [ n ]; 3707 `fcgi_»¡¬t_d—d_´ocs ( ¤v , p , ho¡ ); 3709  ´oc = ho¡ -> fœ¡ ;…roc;…roøð´oc-> Ãxt ) { 3710 sum_lßd +ð ´oc -> lßd ; 3713 ià( ho¡ -> num_´ocs && 3714 ho¡ -> num_´ocs < ho¡-> max_´ocs && 3715 ( sum_lßd / ho¡ -> num_´ocs è> ho¡-> max_lßd_³r_´oc ) { 3717 ià( p -> cÚf . debug ) { 3718 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 3722  ´oc = ho¡ -> unu£d_´ocs ;…roø&&…roc-> pid !ð0;…roøð´oc-> Ãxt ); 3724 ià( ´oc ) { 3725 ià( ´oc =ð ho¡ -> unu£d_´ocs èho¡->unu£d_´oc ð´oc-> Ãxt ; 3727 ià( ´oc -> Ãxt è´oc->Ãxt-> ´ev = NULL ; 3729 ho¡ -> max_id ++; 3731 ´oc = `ç¡cgi_´oûss_š™ (); 3732 ´oc -> id = ho¡ -> max_id ++; 3735 ho¡ -> num_´ocs ++; 3737 ià( `bufãr_is_em±y ( ho¡ -> unixsock‘ )) { 3738 ´oc -> pÜt = ho¡ ->p܈+…roc-> id ; 3740 `bufãr_cÝy_¡ršg_bufãr ( ´oc -> unixsock‘ , ho¡ ->unixsocket); 3741 `bufãr_­³nd_¡ršg ( ´oc -> unixsock‘ , "-"); 3742 `bufãr_­³nd_lÚg ( ´oc -> unixsock‘ ,…roc-> id ); 3745 ià( `fcgi_¥awn_cÚÃùiÚ ( ¤v , p , ho¡ , ´oc )) { 3746 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 3748  HANDLER_ERROR ; 3751 ´oc -> ´ev = NULL ; 3752 ´oc -> Ãxt = ho¡ -> fœ¡ ; 3753 ià( ho¡ -> fœ¡ ) { 3754 ho¡ -> fœ¡ -> ´ev = ´oc ; 3756 ho¡ -> fœ¡ = ´oc ; 3759  ´oc = ho¡ -> fœ¡ ;…roc;…roøð´oc-> Ãxt ) { 3760 ià( ´oc -> lßd != 0) ; 3761 ià( ho¡ -> num_´ocs <ðho¡-> mš_´ocs ) ; 3762 ià( ´oc -> pid == 0) ; 3764 ià( ¤v -> cur_ts - ´oc -> Ï¡_u£d > ho¡ -> idË_timeout ) { 3768 ià( p -> cÚf . debug ) { 3769 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbsd", 3771 "sock‘:", ´oc -> cÚÃùiÚ_Çme , 3772 "pid", ´oc -> pid ); 3776 ià( ´oc -> Ãxt è´oc->Ãxt-> ´ev =…roc->prev; 3777 ià( ´oc -> ´ev è´oc->´ev-> Ãxt =…roc->next; 3779 ià( ´oc -> ´ev =ð NULL è ho¡ -> fœ¡ =…roc-> Ãxt ; 3781 ´oc -> ´ev = NULL ; 3782 ´oc -> Ãxt = ho¡ -> unu£d_´ocs ; 3784 ià( ho¡ -> unu£d_´ocs èho¡->unu£d_´ocs-> ´ev = ´oc ; 3785 ho¡ -> unu£d_´ocs = ´oc ; 3787 `kžl ( ´oc -> pid , SIGTERM ); 3789 ´oc -> ¡©e = PROC_STATE_KILLED ; 3791 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbsd", 3793 "sock‘:", ´oc -> cÚÃùiÚ_Çme , 3794 "pid", ´oc -> pid ); 3796 ho¡ -> num_´ocs --; 3803  ´oc = ho¡ -> unu£d_´ocs ;…roc;…roøð´oc-> Ãxt ) { 3804  ¡©us ; 3806 ià( ´oc -> pid == 0) ; 3808  `wa™pid ( ´oc -> pid , & ¡©us , WNOHANG )) { 3813 ià( ”ºo !ð EINTR ) { 3815 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sddss", 3816 "pid ", ´oc -> pid ,…roc-> ¡©e , 3817 "nÙ found:", `¡»¼Ü ( ”ºo )); 3820 ià( ”ºo =ð ECHILD ) { 3822 ´oc -> pid = 0; 3823 ´oc -> ¡©e = PROC_STATE_UNSET ; 3830 ià( `WIFEXITED ( ¡©us )) { 3831 ià( ´oc -> ¡©e !ð PROC_STATE_KILLED ) { 3832 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdb", 3834 `WEXITSTATUS ( ¡©us ), ´oc -> cÚÃùiÚ_Çme ); 3836 } ià( `WIFSIGNALED ( ¡©us )) { 3837 ià( `WTERMSIG ( ¡©us è!ð SIGTERM ) { 3838 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 3840 `WTERMSIG ( ¡©us )); 3843 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 3845 ¡©us ); 3847 ´oc -> pid = 0; 3848 ´oc -> ¡©e = PROC_STATE_UNSET ; 3849 ho¡ -> max_id --; 3856  HANDLER_GO_ON ; 3857 } } 3860  $mod_ç¡cgi_¶ugš_š™ ( ¶ugš * p ) { 3861 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 3862 p -> Çme = `bufãr_š™_¡ršg ("fastcgi"); 3864 p -> š™ = mod_ç¡cgi_š™ ; 3865 p -> þ—nup = mod_ç¡cgi_ä“ ; 3866 p -> £t_deçuÉs = mod_ç¡cgi_£t_deçuÉs ; 3867 p -> cÚÃùiÚ_»£t = fcgi_cÚÃùiÚ_»£t ; 3868 p -> hªdË_cÚÃùiÚ_þo£ = fcgi_cÚÃùiÚ_þo£_ÿÎback ; 3869 p -> hªdË_uri_þ—n = fcgi_check_ex‹nsiÚ_1 ; 3870 p -> hªdË_sub»que¡_¡¬t = fcgi_check_ex‹nsiÚ_2 ; 3871 p -> hªdË_sub»que¡ = mod_ç¡cgi_hªdË_sub»que¡ ; 3872 p -> hªdË_jobli¡ = mod_ç¡cgi_hªdË_jobli¡ ; 3873 p -> hªdË_Œigg” = mod_ç¡cgi_hªdË_Œigg” ; 3875 p -> d©a = NULL ; 3878 } } @src/mod_flv_streaming.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 5  ~"ba£.h " 6  ~"log.h " 7  ~"bufãr.h " 8  ~"»¥Ú£.h " 9  ~"h‰p_chunk.h " 10  ~"¡©_ÿche.h " 12  ~"¶ugš.h " 14 #ifdeà HAVE_CONFIG_H 15  ~"cÚfig.h " 21 ¬¿y * mex‹nsiÚs ; 22 } t¶ugš_cÚfig ; 25 mPLUGIN_DATA ; 27 bufãr * mqu”y_¡r ; 28 ¬¿y * mg‘_·¿ms ; 30 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 32 ¶ugš_cÚfig mcÚf ; 33 } t¶ugš_d©a ; 36 $INIT_FUNC ( mod_æv_¡»amšg_š™ ) { 37 ¶ugš_d©a * p ; 39 p = `ÿÎoc (1, (*p)); 41 p -> qu”y_¡r = `bufãr_š™ (); 42 p -> g‘_·¿ms = `¬¿y_š™ (); 44  p ; 45 } } 48 $FREE_FUNC ( mod_æv_¡»amšg_ä“ ) { 49 ¶ugš_d©a * p = p_d ; 51 `UNUSED ( ¤v ); 53 ià(! p è HANDLER_GO_ON ; 55 ià( p -> cÚfig_¡Üage ) { 56 size_t i ; 58  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 59 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 61 ià(! s ) ; 63 `¬¿y_ä“ ( s -> ex‹nsiÚs ); 65 `ä“ ( s ); 67 `ä“ ( p -> cÚfig_¡Üage ); 70 `bufãr_ä“ ( p -> qu”y_¡r ); 71 `¬¿y_ä“ ( p -> g‘_·¿ms ); 73 `ä“ ( p ); 75  HANDLER_GO_ON ; 76 } } 80 $SETDEFAULTS_FUNC ( mod_æv_¡»amšg_£t_deçuÉs ) { 81 ¶ugš_d©a * p = p_d ; 82 size_t i = 0; 84 cÚfig_v®ues_t cv [] = { 85 { "æv-¡»amšg.ex‹nsiÚs", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 86 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 89 ià(! p è HANDLER_ERROR ; 91 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 93  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 94 ¶ugš_cÚfig * s ; 96 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 97 s -> ex‹nsiÚs = `¬¿y_š™ (); 99 cv [0]. de¡š©iÚ = s -> ex‹nsiÚs ; 101 p -> cÚfig_¡Üage [ i ] = s ; 103 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 104  HANDLER_ERROR ; 108  HANDLER_GO_ON ; 109 } } 111  #PATCH ( x ) \ 112 p -> cÚf . x = s ->x; ) 113  $mod_æv_¡»amšg_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 114 size_t i , j ; 115 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 117 `PATCH ( ex‹nsiÚs ); 120  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 121 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 122 s = p -> cÚfig_¡Üage [ i ]; 125 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 128  j = 0; j < dc -> v®ue -> u£d ; j++) { 129 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 131 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("flv-streaming.extensions"))) { 132 `PATCH ( ex‹nsiÚs ); 138 } } 139 #undeà PATCH 141  $¥l™_g‘_·¿ms ( ¬¿y * g‘_·¿ms , bufãr * qry¡r ) { 142 size_t is_key = 1; 143 size_t i ; 144 * key = NULL , * v® = NULL; 146 key = qry¡r -> ±r ; 149  i = 0; i < qry¡r -> u£d ; i++) { 150  qry¡r -> ±r [ i ]) { 152 ià( is_key ) { 153 v® = qry¡r -> ±r + i + 1; 155 qry¡r -> ±r [ i ] = '\0'; 157 is_key = 0; 163 ià(! is_key ) { 164 d©a_¡ršg * ds ; 168 qry¡r -> ±r [ i ] = '\0'; 170 ià( NULL =ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( g‘_·¿ms , TYPE_STRING ))) { 171 ds = `d©a_¡ršg_š™ (); 173 `bufãr_cÝy_¡ršg_Ën ( ds -> key , key, `¡¾’ (key)); 174 `bufãr_cÝy_¡ršg_Ën ( ds -> v®ue , v® , `¡¾’ (val)); 176 `¬¿y_š£¹_unique ( g‘_·¿ms , ( d©a_un£t *) ds ); 179 key = qry¡r -> ±r + i + 1; 180 v® = NULL ; 181 is_key = 1; 187 } } 189 $URIHANDLER_FUNC ( mod_æv_¡»amšg_·th_hªdËr ) { 190 ¶ugš_d©a * p = p_d ; 191  s_Ën ; 192 size_t k ; 194 `UNUSED ( ¤v ); 196 ià( `bufãr_is_em±y ( cÚ -> physiÿl . ·th )è HANDLER_GO_ON ; 198 `mod_æv_¡»amšg_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 200 s_Ën = cÚ -> physiÿl . ·th -> u£d - 1; 202  k = 0; k < p -> cÚf . ex‹nsiÚs -> u£d ; k++) { 203 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . ex‹nsiÚs -> d©a [ k ]; 204  ù_Ën = ds -> v®ue -> u£d - 1; 206 ià( ù_Ën > s_Ën ) ; 207 ià( ds -> v®ue -> u£d == 0) ; 209 ià(0 =ð `¡ºcmp ( cÚ -> physiÿl . ·th -> ±r + s_Ën - ù_Ën , ds -> v®ue ->ptr, ct_len)) { 210 d©a_¡ršg * g‘_·¿m ; 211 ¡©_ÿche_’Œy * sû = NULL ; 212 bufãr * b ; 213  ¡¬t ; 214 * ”r = NULL ; 218 `¬¿y_»£t ( p -> g‘_·¿ms ); 219 `bufãr_cÝy_¡ršg_bufãr ( p -> qu”y_¡r , cÚ -> uri . qu”y ); 220 `¥l™_g‘_·¿ms ( p -> g‘_·¿ms ,…-> qu”y_¡r ); 222 ià( NULL =ð( g‘_·¿m = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( p -> g‘_·¿ms , "start"))) { 223  HANDLER_GO_ON ; 227 ià( g‘_·¿m -> v®ue -> u£d < 2è HANDLER_GO_ON ; 230 ¡¬t = `¡¹Þ ( g‘_·¿m -> v®ue -> ±r , & ”r , 10); 231 ià(* ”r != '\0') { 232  HANDLER_GO_ON ; 235 ià( ¡¬t <ð0è HANDLER_GO_ON ; 238 ià( HANDLER_GO_ON !ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , cÚ-> physiÿl . ·th , & sû )) { 239  HANDLER_GO_ON ; 242 ià( ¡¬t > sû -> ¡ . ¡_size ) { 243  HANDLER_GO_ON ; 247 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 248 `BUFFER_COPY_STRING_CONST ( b , "FLV\x1\x1\0\0\0\x9\0\0\0\x9"); 250 `h‰p_chunk_­³nd_fže ( ¤v , cÚ , cÚ-> physiÿl . ·th , ¡¬t , sû -> ¡ . ¡_size - start); 252 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Content-Type"), CONST_STR_LEN("video/x-flv")); 254 cÚ -> fže_fšished = 1; 256  HANDLER_FINISHED ; 261  HANDLER_GO_ON ; 262 } } 266  $mod_æv_¡»amšg_¶ugš_š™ ( ¶ugš * p ) { 267 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 268 p -> Çme = `bufãr_š™_¡ršg ("flv_streaming"); 270 p -> š™ = mod_æv_¡»amšg_š™ ; 271 p -> hªdË_physiÿl = mod_æv_¡»amšg_·th_hªdËr ; 272 p -> £t_deçuÉs = mod_æv_¡»amšg_£t_deçuÉs ; 273 p -> þ—nup = mod_æv_¡»amšg_ä“ ; 275 p -> d©a = NULL ; 278 } } @src/mod_indexfile.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 4  ~<”ºo.h > 7  ~"ba£.h " 8  ~"log.h " 9  ~"bufãr.h " 11  ~"¶ugš.h " 13  ~"¡©_ÿche.h " 18 ¬¿y * mšdexfžes ; 19 } t¶ugš_cÚfig ; 22 mPLUGIN_DATA ; 24 bufãr * mtmp_buf ; 26 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 28 ¶ugš_cÚfig mcÚf ; 29 } t¶ugš_d©a ; 32 $INIT_FUNC ( mod_šdexfže_š™ ) { 33 ¶ugš_d©a * p ; 35 p = `ÿÎoc (1, (*p)); 37 p -> tmp_buf = `bufãr_š™ (); 39  p ; 40 } } 43 $FREE_FUNC ( mod_šdexfže_ä“ ) { 44 ¶ugš_d©a * p = p_d ; 46 `UNUSED ( ¤v ); 48 ià(! p è HANDLER_GO_ON ; 50 ià( p -> cÚfig_¡Üage ) { 51 size_t i ; 52  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 53 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 55 ià(! s ) ; 57 `¬¿y_ä“ ( s -> šdexfžes ); 59 `ä“ ( s ); 61 `ä“ ( p -> cÚfig_¡Üage ); 64 `bufãr_ä“ ( p -> tmp_buf ); 66 `ä“ ( p ); 68  HANDLER_GO_ON ; 69 } } 73 $SETDEFAULTS_FUNC ( mod_šdexfže_£t_deçuÉs ) { 74 ¶ugš_d©a * p = p_d ; 75 size_t i = 0; 77 cÚfig_v®ues_t cv [] = { 78 { "šdex-fže.Çmes", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 79 { "£rv”.šdexfžes", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 80 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 83 ià(! p è HANDLER_ERROR ; 85 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 87  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 88 ¶ugš_cÚfig * s ; 90 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 91 s -> šdexfžes = `¬¿y_š™ (); 93 cv [0]. de¡š©iÚ = s -> šdexfžes ; 94 cv [1]. de¡š©iÚ = s -> šdexfžes ; 96 p -> cÚfig_¡Üage [ i ] = s ; 98 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 99  HANDLER_ERROR ; 103  HANDLER_GO_ON ; 104 } } 106  #PATCH ( x ) \ 107 p -> cÚf . x = s ->x; ) 108  $mod_šdexfže_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 109 size_t i , j ; 110 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 112 `PATCH ( šdexfžes ); 115  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 116 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 117 s = p -> cÚfig_¡Üage [ i ]; 120 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 123  j = 0; j < dc -> v®ue -> u£d ; j++) { 124 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 126 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("server.indexfiles"))) { 127 `PATCH ( šdexfžes ); 128 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("index-file.names"))) { 129 `PATCH ( šdexfžes ); 135 } } 136 #undeà PATCH 138 $URIHANDLER_FUNC ( mod_šdexfže_sub»que¡ ) { 139 ¶ugš_d©a * p = p_d ; 140 size_t k ; 141 ¡©_ÿche_’Œy * sû = NULL ; 143 ià( cÚ -> uri . ·th -> u£d =ð0è HANDLER_GO_ON ; 144 ià( cÚ -> uri . ·th -> ±r [cÚ->uri.·th-> u£d - 2] !ð'/'è HANDLER_GO_ON ; 146 `mod_šdexfže_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 148 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 149 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "-- handlinghe„equest‡s Indexfile"); 150 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "URI :", cÚ -> uri . ·th ); 154  k = 0; k < p -> cÚf . šdexfžes -> u£d ; k++) { 155 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . šdexfžes -> d©a [ k ]; 157 ià( ds -> v®ue && ds->v®ue-> ±r [0] == '/') { 160 `bufãr_cÝy_¡ršg_bufãr ( p -> tmp_buf , cÚ -> physiÿl . doc_roÙ ); 162 `bufãr_cÝy_¡ršg_bufãr ( p -> tmp_buf , cÚ -> physiÿl . ·th ); 164 `bufãr_­³nd_¡ršg_bufãr ( p -> tmp_buf , ds -> v®ue ); 166 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , p -> tmp_buf , & sû )) { 167 ià( ”ºo =ð EACCES ) { 168 cÚ -> h‰p_¡©us = 403; 169 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 171  HANDLER_FINISHED ; 174 ià( ”ºo !ð ENOENT && 175 ”ºo !ð ENOTDIR ) { 178 cÚ -> h‰p_¡©us = 500; 180 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbsb", 181 "fžnÙ found ... o¸so: ", `¡»¼Ü ( ”ºo ), 182 cÚ -> uri . ·th , 183 "->", cÚ -> physiÿl . ·th ); 185 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 187  HANDLER_FINISHED ; 193 `bufãr_­³nd_¡ršg_bufãr ( cÚ -> uri . ·th , ds -> v®ue ); 194 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ·th , p -> tmp_buf ); 198  HANDLER_GO_ON ; 202  HANDLER_GO_ON ; 203 } } 207  $mod_šdexfže_¶ugš_š™ ( ¶ugš * p ) { 208 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 209 p -> Çme = `bufãr_š™_¡ršg ("indexfile"); 211 p -> š™ = mod_šdexfže_š™ ; 212 p -> hªdË_sub»que¡_¡¬t = mod_šdexfže_sub»que¡ ; 213 p -> £t_deçuÉs = mod_šdexfže_£t_deçuÉs ; 214 p -> þ—nup = mod_šdexfže_ä“ ; 216 p -> d©a = NULL ; 219 } } @src/mod_magnet.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 4  ~ 5  ~<£tjmp.h > 7  ~"ba£.h " 8  ~"log.h " 9  ~"bufãr.h " 11  ~"¶ugš.h " 13  ~"mod_magÃt_ÿche.h " 14  ~"»¥Ú£.h " 15  ~"¡©_ÿche.h " 16  ~"¡©us_couÁ”.h " 17  ~"‘ag.h " 19 #ifdeà HAVE_LUA_H 20  ~ 21  ~<Ïuxlib.h > 23  #MAGNET_CONFIG_RAW_URL "magÃt.©Œaù-¿w-u¾-to" ) 24  #MAGNET_CONFIG_PHYSICAL_PATH "magÃt.©Œaù-physiÿl-·th-to" ) 25  #MAGNET_RESTART_REQUEST 99 ) 29  jmp_buf gexû±iÚjmp ; 32 ¬¿y * mu¾_¿w ; 33 ¬¿y * mphysiÿl_·th ; 34 } t¶ugš_cÚfig ; 37 mPLUGIN_DATA ; 39 süt_ÿche * mÿche ; 41 bufãr * m’code_buf ; 43 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 45 ¶ugš_cÚfig mcÚf ; 46 } t¶ugš_d©a ; 49 $INIT_FUNC ( mod_magÃt_š™ ) { 50 ¶ugš_d©a * p ; 52 p = `ÿÎoc (1, (*p)); 54 p -> ÿche = `süt_ÿche_š™ (); 55 p -> ’code_buf = `bufãr_š™ (); 57  p ; 58 } } 61 $FREE_FUNC ( mod_magÃt_ä“ ) { 62 ¶ugš_d©a * p = p_d ; 64 `UNUSED ( ¤v ); 66 ià(! p è HANDLER_GO_ON ; 68 ià( p -> cÚfig_¡Üage ) { 69 size_t i ; 71  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 72 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 74 ià(! s ) ; 76 `¬¿y_ä“ ( s -> u¾_¿w ); 77 `¬¿y_ä“ ( s -> physiÿl_·th ); 79 `ä“ ( s ); 81 `ä“ ( p -> cÚfig_¡Üage ); 84 `süt_ÿche_ä“ ( p -> ÿche ); 85 `bufãr_ä“ ( p -> ’code_buf ); 87 `ä“ ( p ); 89  HANDLER_GO_ON ; 90 } } 94 $SETDEFAULTS_FUNC ( mod_magÃt_£t_deçuÉs ) { 95 ¶ugš_d©a * p = p_d ; 96 size_t i = 0; 98 cÚfig_v®ues_t cv [] = { 99 { MAGNET_CONFIG_RAW_URL , NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 100 { MAGNET_CONFIG_PHYSICAL_PATH , NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 101 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 104 ià(! p è HANDLER_ERROR ; 106 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 108  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 109 ¶ugš_cÚfig * s ; 111 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 112 s -> u¾_¿w = `¬¿y_š™ (); 113 s -> physiÿl_·th = `¬¿y_š™ (); 115 cv [0]. de¡š©iÚ = s -> u¾_¿w ; 116 cv [1]. de¡š©iÚ = s -> physiÿl_·th ; 118 p -> cÚfig_¡Üage [ i ] = s ; 120 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 121  HANDLER_ERROR ; 125  HANDLER_GO_ON ; 126 } } 128  #PATCH ( x ) \ 129 p -> cÚf . x = s ->x; ) 130  $mod_magÃt_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 131 size_t i , j ; 132 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 134 `PATCH ( u¾_¿w ); 135 `PATCH ( physiÿl_·th ); 138  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 139 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 140 s = p -> cÚfig_¡Üage [ i ]; 143 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 146  j = 0; j < dc -> v®ue -> u£d ; j++) { 147 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 149 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( MAGNET_CONFIG_RAW_URL ))) { 150 `PATCH ( u¾_¿w ); 151 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ( MAGNET_CONFIG_PHYSICAL_PATH ))) { 152 `PATCH ( physiÿl_·th ); 158 } } 159 #undeà PATCH 161  $magÃt_´št ( lua_S‹ * L ) { 162 cÚ¡ * s = `luaL_check¡ršg ( L , 1); 163 £rv” * ¤v ; 165 `lua_push¡ršg ( L , "lighty.srv"); 166 `lua_g‘bË ( L , LUA_REGISTRYINDEX ); 167 ¤v = `lua_tou£rd©a ( L , -1); 168 `lua_pÝ ( L , 1); 170 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 171 "Öua-´št)", s ); 174 } } 176  $magÃt_¡© ( lua_S‹ * L ) { 177 cÚ¡ * s = `luaL_check¡ršg ( L , 1); 178 £rv” * ¤v ; 179 cÚÃùiÚ * cÚ ; 180 bufãr sb ; 181 ¡©_ÿche_’Œy * sû = NULL ; 183 `lua_push¡ršg ( L , "lighty.srv"); 184 `lua_g‘bË ( L , LUA_REGISTRYINDEX ); 185 ¤v = `lua_tou£rd©a ( L , -1); 186 `lua_pÝ ( L , 1); 188 `lua_push¡ršg ( L , "lighty.con"); 189 `lua_g‘bË ( L , LUA_REGISTRYINDEX ); 190 cÚ = `lua_tou£rd©a ( L , -1); 191 `lua_pÝ ( L , 1); 193 sb . ±r = (*) s ; 194 sb . u£d = sb. size = `¡¾’ ( s ) + 1; 196 ià( HANDLER_GO_ON !ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , & sb , & sû )) { 197 `lua_pushnž ( L ); 202 `lua_ÃwbË ( L ); 204 `lua_pushboÞ—n ( L , `S_ISREG ( sû -> ¡ . ¡_mode )); 205 `lua_£tf›ld ( L , -2, "is_file"); 207 `lua_pushboÞ—n ( L , `S_ISDIR ( sû -> ¡ . ¡_mode )); 208 `lua_£tf›ld ( L , -2, "is_dir"); 210 `lua_pushboÞ—n ( L , `S_ISCHR ( sû -> ¡ . ¡_mode )); 211 `lua_£tf›ld ( L , -2, "is_char"); 213 `lua_pushboÞ—n ( L , `S_ISBLK ( sû -> ¡ . ¡_mode )); 214 `lua_£tf›ld ( L , -2, "is_block"); 216 `lua_pushboÞ—n ( L , `S_ISSOCK ( sû -> ¡ . ¡_mode )); 217 `lua_£tf›ld ( L , -2, "is_socket"); 219 `lua_pushboÞ—n ( L , `S_ISLNK ( sû -> ¡ . ¡_mode )); 220 `lua_£tf›ld ( L , -2, "is_link"); 222 `lua_pushboÞ—n ( L , `S_ISFIFO ( sû -> ¡ . ¡_mode )); 223 `lua_£tf›ld ( L , -2, "is_fifo"); 225 `lua_pushš‹g” ( L , sû -> ¡ . ¡_mtime ); 226 `lua_£tf›ld ( L , -2, "st_mtime"); 228 `lua_pushš‹g” ( L , sû -> ¡ . ¡_ùime ); 229 `lua_£tf›ld ( L , -2, "st_ctime"); 231 `lua_pushš‹g” ( L , sû -> ¡ . ¡_©ime ); 232 `lua_£tf›ld ( L , -2, "st_atime"); 234 `lua_pushš‹g” ( L , sû -> ¡ . ¡_uid ); 235 `lua_£tf›ld ( L , -2, "st_uid"); 237 `lua_pushš‹g” ( L , sû -> ¡ . ¡_gid ); 238 `lua_£tf›ld ( L , -2, "st_gid"); 240 `lua_pushš‹g” ( L , sû -> ¡ . ¡_size ); 241 `lua_£tf›ld ( L , -2, "st_size"); 243 `lua_pushš‹g” ( L , sû -> ¡ . ¡_šo ); 244 `lua_£tf›ld ( L , -2, "st_ino"); 247 ià(! `bufãr_is_em±y ( sû -> ‘ag )) { 249 bufãr * b = `bufãr_š™ (); 250 `‘ag_mu‹ ( b , sû -> ‘ag ); 252 `lua_pushl¡ršg ( L , b -> ±r , b-> u£d - 1); 253 `bufãr_ä“ ( b ); 255 `lua_pushnž ( L ); 257 `lua_£tf›ld ( L , -2, "etag"); 259 ià(! `bufãr_is_em±y ( sû -> cÚ‹Á_ty³ )) { 260 `lua_pushl¡ršg ( L , sû -> cÚ‹Á_ty³ -> ±r , sû->cÚ‹Á_ty³-> u£d - 1); 262 `lua_pushnž ( L ); 264 `lua_£tf›ld ( L , -2, "content-type"); 267 } } 270  $magÃt_©·nic ( lua_S‹ * L ) { 271 cÚ¡ * s = `luaL_check¡ršg ( L , 1); 272 £rv” * ¤v ; 274 `lua_push¡ršg ( L , "lighty.srv"); 275 `lua_g‘bË ( L , LUA_REGISTRYINDEX ); 276 ¤v = `lua_tou£rd©a ( L , -1); 277 `lua_pÝ ( L , 1); 279 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 280 "Öua-©·nic)", s ); 282 `lÚgjmp ( exû±iÚjmp , 1); 283 } } 285  $magÃt_»qhdr_g‘ ( lua_S‹ * L ) { 286 £rv” * ¤v ; 287 cÚÃùiÚ * cÚ ; 288 d©a_¡ršg * ds ; 290 cÚ¡ * key = `luaL_check¡ršg ( L , 2); 292 `lua_push¡ršg ( L , "lighty.srv"); 293 `lua_g‘bË ( L , LUA_REGISTRYINDEX ); 294 ¤v = `lua_tou£rd©a ( L , -1); 295 `lua_pÝ ( L , 1); 297 `lua_push¡ršg ( L , "lighty.con"); 298 `lua_g‘bË ( L , LUA_REGISTRYINDEX ); 299 cÚ = `lua_tou£rd©a ( L , -1); 300 `lua_pÝ ( L , 1); 302 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , key ))) { 303 ià( ds -> v®ue -> u£d ) { 304 `lua_pushl¡ršg ( L , ds -> v®ue -> ±r , ds->v®ue-> u£d - 1); 306 `lua_pushnž ( L ); 309 `lua_pushnž ( L ); 312 } } 314  $magÃt_¡©us_g‘ ( lua_S‹ * L ) { 315 d©a_š‹g” * di ; 316 £rv” * ¤v ; 317 size_t key_Ën = 0; 319 cÚ¡ * key = `luaL_checkl¡ršg ( L , 2, & key_Ën ); 321 `lua_push¡ršg ( L , "lighty.srv"); 322 `lua_g‘bË ( L , LUA_REGISTRYINDEX ); 323 ¤v = `lua_tou£rd©a ( L , -1); 324 `lua_pÝ ( L , 1); 326 di = `¡©us_couÁ”_g‘_couÁ” ( ¤v , key , key_Ën ); 328 `lua_pushnumb” ( L , () di -> v®ue ); 331 } } 333  $magÃt_¡©us_£t ( lua_S‹ * L ) { 334 size_t key_Ën = 0; 335 £rv” * ¤v ; 337 cÚ¡ * key = `luaL_checkl¡ršg ( L , 2, & key_Ën ); 338  couÁ” = `luaL_checkšt ( L , 3); 340 `lua_push¡ršg ( L , "lighty.srv"); 341 `lua_g‘bË ( L , LUA_REGISTRYINDEX ); 342 ¤v = `lua_tou£rd©a ( L , -1); 343 `lua_pÝ ( L , 1); 345 `¡©us_couÁ”_£t ( ¤v , key , key_Ën , couÁ” ); 348 } } 351 cÚ¡ * mÇme ; 353 mMAGNET_ENV_UNSET , 355 mMAGNET_ENV_PHYICAL_PATH , 356 mMAGNET_ENV_PHYICAL_REL_PATH , 357 mMAGNET_ENV_PHYICAL_DOC_ROOT , 359 mMAGNET_ENV_URI_PATH , 360 mMAGNET_ENV_URI_PATH_RAW , 361 mMAGNET_ENV_URI_SCHEME , 362 mMAGNET_ENV_URI_AUTHORITY , 363 mMAGNET_ENV_URI_QUERY , 365 mMAGNET_ENV_REQUEST_METHOD , 366 mMAGNET_ENV_REQUEST_URI , 367 mMAGNET_ENV_REQUEST_ORIG_URI , 368 mMAGNET_ENV_REQUEST_PROTOCOL 369 } mty³ ; 370 } tmagÃt_’v_t ; 372  bufãr * $magÃt_’v_g‘_bufãr ( £rv” * ¤v , cÚÃùiÚ * cÚ , cÚ¡ * key ) { 373 bufãr * de¡ = NULL ; 374 size_t i ; 376 cÚ¡ magÃt_’v_t ’v [] = { 377 { "physiÿl.·th", MAGNET_ENV_PHYICAL_PATH }, 378 { "physiÿl.»l-·th", MAGNET_ENV_PHYICAL_REL_PATH }, 379 { "physiÿl.doc-roÙ", MAGNET_ENV_PHYICAL_DOC_ROOT }, 381 { "uri.·th", MAGNET_ENV_URI_PATH }, 382 { "uri.·th-¿w", MAGNET_ENV_URI_PATH_RAW }, 383 { "uri.scheme", MAGNET_ENV_URI_SCHEME }, 384 { "uri.authÜ™y", MAGNET_ENV_URI_AUTHORITY }, 385 { "uri.qu”y", MAGNET_ENV_URI_QUERY }, 387 { "»que¡.m‘hod", MAGNET_ENV_REQUEST_METHOD }, 388 { "»que¡.uri", MAGNET_ENV_REQUEST_URI }, 389 { "»que¡.Üig-uri", MAGNET_ENV_REQUEST_ORIG_URI }, 390 { "»que¡.´ÙocÞ", MAGNET_ENV_REQUEST_PROTOCOL }, 392 { NULL , MAGNET_ENV_UNSET } 395 `UNUSED ( ¤v ); 402  i = 0; ’v [i]. Çme ; i++) { 403 ià(0 =ð `¡rcmp ( key , ’v [ i ]. Çme )) ; 406  ’v [ i ]. ty³ ) { 407  MAGNET_ENV_PHYICAL_PATH : de¡ = cÚ -> physiÿl . ·th ; ; 408  MAGNET_ENV_PHYICAL_REL_PATH : de¡ = cÚ -> physiÿl . »l_·th ; ; 409  MAGNET_ENV_PHYICAL_DOC_ROOT : de¡ = cÚ -> physiÿl . doc_roÙ ; ; 411  MAGNET_ENV_URI_PATH : de¡ = cÚ -> uri . ·th ; ; 412  MAGNET_ENV_URI_PATH_RAW : de¡ = cÚ -> uri . ·th_¿w ; ; 413  MAGNET_ENV_URI_SCHEME : de¡ = cÚ -> uri . scheme ; ; 414  MAGNET_ENV_URI_AUTHORITY : de¡ = cÚ -> uri . authÜ™y ; ; 415  MAGNET_ENV_URI_QUERY : de¡ = cÚ -> uri . qu”y ; ; 417  MAGNET_ENV_REQUEST_METHOD : ; 418  MAGNET_ENV_REQUEST_URI : de¡ = cÚ -> »que¡ . uri ; ; 419  MAGNET_ENV_REQUEST_ORIG_URI : de¡ = cÚ -> »que¡ . Üig_uri ; ; 420  MAGNET_ENV_REQUEST_PROTOCOL : ; 422  MAGNET_ENV_UNSET : ; 425  de¡ ; 426 } } 428  $magÃt_’v_g‘ ( lua_S‹ * L ) { 429 £rv” * ¤v ; 430 cÚÃùiÚ * cÚ ; 432 cÚ¡ * key = `luaL_check¡ršg ( L , 2); 433 bufãr * de¡ = NULL ; 435 `lua_push¡ršg ( L , "lighty.srv"); 436 `lua_g‘bË ( L , LUA_REGISTRYINDEX ); 437 ¤v = `lua_tou£rd©a ( L , -1); 438 `lua_pÝ ( L , 1); 440 `lua_push¡ršg ( L , "lighty.con"); 441 `lua_g‘bË ( L , LUA_REGISTRYINDEX ); 442 cÚ = `lua_tou£rd©a ( L , -1); 443 `lua_pÝ ( L , 1); 445 de¡ = `magÃt_’v_g‘_bufãr ( ¤v , cÚ , key ); 447 ià( de¡ && de¡-> u£d ) { 448 `lua_pushl¡ršg ( L , de¡ -> ±r , de¡-> u£d - 1); 450 `lua_pushnž ( L ); 454 } } 456  $magÃt_’v_£t ( lua_S‹ * L ) { 457 £rv” * ¤v ; 458 cÚÃùiÚ * cÚ ; 460 cÚ¡ * key = `luaL_check¡ršg ( L , 2); 461 cÚ¡ * v® = `luaL_check¡ršg ( L , 3); 462 bufãr * de¡ = NULL ; 464 `lua_push¡ršg ( L , "lighty.srv"); 465 `lua_g‘bË ( L , LUA_REGISTRYINDEX ); 466 ¤v = `lua_tou£rd©a ( L , -1); 467 `lua_pÝ ( L , 1); 469 `lua_push¡ršg ( L , "lighty.con"); 470 `lua_g‘bË ( L , LUA_REGISTRYINDEX ); 471 cÚ = `lua_tou£rd©a ( L , -1); 472 `lua_pÝ ( L , 1); 474 ià( NULL !ð( de¡ = `magÃt_’v_g‘_bufãr ( ¤v , cÚ , key ))) { 475 `bufãr_cÝy_¡ršg ( de¡ , v® ); 479  `luaL_”rÜ ( L , "couldn'ˆ¡Ü'%s' iÀlighty.’v[]", key ); 483 } } 486  $magÃt_cÝy_»¥Ú£_h—d” ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , lua_S‹ * L ) { 487 `UNUSED ( p ); 492 `lua_g‘ãnv ( L , -1); 496 `lua_g‘f›ld ( L , -1, "lighty"); 497 `as£¹ ( `lua_i¡abË ( L , -1)); 499 `lua_g‘f›ld ( L , -1, "header"); 500 ià( `lua_i¡abË ( L , -1)) { 503 `lua_pushnž ( L ); 504  `lua_Ãxt ( L , -2) != 0) { 505 ià( `lua_is¡ršg ( L , -1) &&†ua_isstring(L, -2)) { 506 cÚ¡ * key , * v® ; 507 size_t key_Ën , v®_Ën ; 509 key = `lua_tÞ¡ršg ( L , -2, & key_Ën ); 510 v® = `lua_tÞ¡ršg ( L , -1, & v®_Ën ); 512 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , key , key_Ën , v® , v®_Ën ); 515 `lua_pÝ ( L , 1); 519 `lua_pÝ ( L , 1); 520 `lua_pÝ ( L , 1); 521 `lua_pÝ ( L , 1); 524 } } 535  $magÃt_©ch_cÚ‹Á ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , lua_S‹ * L ) { 536 `UNUSED ( p ); 541 `as£¹ ( `lua_isfunùiÚ ( L , -1)); 542 `lua_g‘ãnv ( L , -1); 544 `lua_g‘f›ld ( L , -1, "lighty"); 545 `as£¹ ( `lua_i¡abË ( L , -1)); 547 `lua_g‘f›ld ( L , -1, "content"); 548 ià( `lua_i¡abË ( L , -1)) { 549  i ; 552  i = 1; ; i++) { 553 `lua_¿wg‘i ( L , -1, i ); 556 ià( `lua_is¡ršg ( L , -1)) { 557 size_t s_Ën = 0; 558 cÚ¡ * s = `lua_tÞ¡ršg ( L , -1, & s_Ën ); 560 `chunkqueue_­³nd_mem ( cÚ -> wr™e_queue , s , s_Ën + 1); 561 } ià( `lua_i¡abË ( L , -1)) { 562 `lua_g‘f›ld ( L , -1, "filename"); 563 `lua_g‘f›ld ( L , -2, "length"); 564 `lua_g‘f›ld ( L , -3, "offset"); 566 ià( `lua_is¡ršg ( L , -3)) { 567 bufãr * â = `bufãr_š™ (); 568 ¡©_ÿche_’Œy * sû ; 570 `bufãr_cÝy_¡ršg ( â , `lua_to¡ršg ( L , -3)); 572 ià( HANDLER_GO_ON =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , â , & sû )) { 573 off_t off = 0; 574 off_t Ën = 0; 576 ià( `lua_i¢umb” ( L , -1)) { 577 off = `lua_tÚumb” ( L , -1); 580 ià( `lua_i¢umb” ( L , -2)) { 581 Ën = `lua_tÚumb” ( L , -2); 583 Ën = sû -> ¡ . ¡_size ; 586 ià( off < 0) { 587  `luaL_”rÜ ( L , "off£ˆfÜ '%s' i Ãg©ive", â -> ±r ); 590 ià( Ën < off ) { 591  `luaL_”rÜ ( L , "off£ˆ>†’gth fÜ '%s'", â -> ±r ); 594 `chunkqueue_­³nd_fže ( cÚ -> wr™e_queue , â , off , Ën - off); 597 `bufãr_ä“ ( â ); 599 `lua_pÝ ( L , 3 + 2); 601  `luaL_”rÜ ( L , "cÚ‹Á[%d] i ¨bˇnd„equœe thf›ld \"fž’ame\"", i ); 604 `lua_pÝ ( L , 3); 605 } ià( `lua_i¢ž ( L , -1)) { 608 `lua_pÝ ( L , 1); 612 `lua_pÝ ( L , 4); 614  `luaL_”rÜ ( L , "cÚ‹Á[%d] i Ã™h”‡ sŒšg‚܇abË: ", i ); 617 `lua_pÝ ( L , 1); 620  `luaL_”rÜ ( L , "lighty.content haso be‡able"); 622 `lua_pÝ ( L , 1); 623 `lua_pÝ ( L , 1); 624 `lua_pÝ ( L , 1); 627 } } 629  hªdËr_t $magÃt_©Œaù ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * Çme ) { 630 lua_S‹ * L ; 631  lua_»tuº_v®ue = -1; 635 L = `süt_ÿche_g‘_süt ( ¤v , cÚ , p -> ÿche , Çme ); 637 ià( `lua_is¡ršg ( L , -1)) { 638 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 641 Çme , 643 `lua_to¡ršg ( L , -1)); 645 `lua_pÝ ( L , 1); 647 `as£¹ ( `lua_g‘tÝ ( L ) == 0); 649 cÚ -> h‰p_¡©us = 500; 651  HANDLER_FINISHED ; 654 `lua_push¡ršg ( L , "lighty.srv"); 655 `lua_pushlightu£rd©a ( L , ¤v ); 656 `lua_£‰abË ( L , LUA_REGISTRYINDEX ); 658 `lua_push¡ršg ( L , "lighty.con"); 659 `lua_pushlightu£rd©a ( L , cÚ ); 660 `lua_£‰abË ( L , LUA_REGISTRYINDEX ); 662 `lua_©·nic ( L , magÃt_©·nic ); 675 `lua_ÃwbË ( L ); 678 `lua_pushcfunùiÚ ( L , magÃt_´št ); 679 `lua_£tf›ld ( L , -2, "print"); 687 `lua_ÃwbË ( L ); 689 `lua_ÃwbË ( L ); 690 `lua_ÃwbË ( L ); 691 `lua_pushcfunùiÚ ( L , magÃt_»qhdr_g‘ ); 692 `lua_£tf›ld ( L , -2, "__index"); 693 `lua_£tm‘©abË ( L , -2); 694 `lua_£tf›ld ( L , -2, "request"); 696 `lua_ÃwbË ( L ); 697 `lua_ÃwbË ( L ); 698 `lua_pushcfunùiÚ ( L , magÃt_’v_g‘ ); 699 `lua_£tf›ld ( L , -2, "__index"); 700 `lua_pushcfunùiÚ ( L , magÃt_’v_£t ); 701 `lua_£tf›ld ( L , -2, "__newindex"); 702 `lua_£tm‘©abË ( L , -2); 703 `lua_£tf›ld ( L , -2, "env"); 705 `lua_ÃwbË ( L ); 706 `lua_ÃwbË ( L ); 707 `lua_pushcfunùiÚ ( L , magÃt_¡©us_g‘ ); 708 `lua_£tf›ld ( L , -2, "__index"); 709 `lua_pushcfunùiÚ ( L , magÃt_¡©us_£t ); 710 `lua_£tf›ld ( L , -2, "__newindex"); 711 `lua_£tm‘©abË ( L , -2); 712 `lua_£tf›ld ( L , -2, "status"); 715 `lua_ÃwbË ( L ); 716 `lua_£tf›ld ( L , -2, "content"); 718 `lua_ÃwbË ( L ); 719 `lua_£tf›ld ( L , -2, "header"); 721 `lua_pushš‹g” ( L , MAGNET_RESTART_REQUEST ); 722 `lua_£tf›ld ( L , -2, "RESTART_REQUEST"); 724 `lua_pushcfunùiÚ ( L , magÃt_¡© ); 725 `lua_£tf›ld ( L , -2, "stat"); 727 `lua_£tf›ld ( L , -2, "lighty"); 729 `lua_ÃwbË ( L ); 730 `lua_pushv®ue ( L , LUA_GLOBALSINDEX ); 731 `lua_£tf›ld ( L , -2, "__index"); 732 `lua_£tm‘©abË ( L , -2); 735 `lua_£tãnv ( L , -2); 737 ià( `lua_pÿÎ ( L , 0, 1, 0)) { 738 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 741 `lua_to¡ršg ( L , -1)); 742 `lua_pÝ ( L , 1); 744 `as£¹ ( `lua_g‘tÝ ( L ) == 1); 746 cÚ -> h‰p_¡©us = 500; 748  HANDLER_FINISHED ; 752 `as£¹ ( `lua_g‘tÝ ( L ) == 2); 754 ià( `lua_i¢umb” ( L , -1)) { 756 lua_»tuº_v®ue = () `lua_tÚumb” ( L , -1); 758 `lua_pÝ ( L , 1); 760 `magÃt_cÝy_»¥Ú£_h—d” ( ¤v , cÚ , p , L ); 762 ià( lua_»tuº_v®ue > 99) { 763 cÚ -> h‰p_¡©us = lua_»tuº_v®ue ; 764 cÚ -> fže_fšished = 1; 767 ià(0 =ð `£tjmp ( exû±iÚjmp )) { 768 `magÃt_©ch_cÚ‹Á ( ¤v , cÚ , p , L ); 771 cÚ -> h‰p_¡©us = 500; 774 `as£¹ ( `lua_g‘tÝ ( L ) == 1); 777  HANDLER_FINISHED ; 778 } ià( MAGNET_RESTART_REQUEST =ð lua_»tuº_v®ue ) { 779 `as£¹ ( `lua_g‘tÝ ( L ) == 1); 781  HANDLER_COMEBACK ; 783 `as£¹ ( `lua_g‘tÝ ( L ) == 1); 785  HANDLER_GO_ON ; 787 } } 789  hªdËr_t $magÃt_©Œaù_¬¿y ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , ¬¿y * fžes ) { 790 size_t i ; 793 ià( fžes -> u£d =ð0è HANDLER_GO_ON ; 798  i = 0; i < fžes -> u£d ; i++) { 799 d©a_¡ršg * ds = (d©a_¡ršg *) fžes -> d©a [ i ]; 800 hªdËr_t »t ; 802 ià( `bufãr_is_em±y ( ds -> v®ue )) ; 804 »t = `magÃt_©Œaù ( ¤v , cÚ , p , ds -> v®ue ); 806 ià( »t !ð HANDLER_GO_ON ) „et; 809  HANDLER_GO_ON ; 810 } } 812 $URIHANDLER_FUNC ( mod_magÃt_uri_hªdËr ) { 813 ¶ugš_d©a * p = p_d ; 815 `mod_magÃt_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 817  `magÃt_©Œaù_¬¿y ( ¤v , cÚ , p ,…-> cÚf . u¾_¿w ); 818 } } 820 $URIHANDLER_FUNC ( mod_magÃt_physiÿl ) { 821 ¶ugš_d©a * p = p_d ; 823 `mod_magÃt_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 825  `magÃt_©Œaù_¬¿y ( ¤v , cÚ , p ,…-> cÚf . physiÿl_·th ); 826 } } 831  $mod_magÃt_¶ugš_š™ ( ¶ugš * p ) { 832 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 833 p -> Çme = `bufãr_š™_¡ršg ("magnet"); 835 p -> š™ = mod_magÃt_š™ ; 836 p -> hªdË_uri_þ—n = mod_magÃt_uri_hªdËr ; 837 p -> hªdË_physiÿl = mod_magÃt_physiÿl ; 838 p -> £t_deçuÉs = mod_magÃt_£t_deçuÉs ; 839 p -> þ—nup = mod_magÃt_ä“ ; 841 p -> d©a = NULL ; 844 } } 847  $mod_magÃt_¶ugš_š™ ( ¶ugš * p ) { 848 `UNUSED ( p ); 850 } } @src/mod_magnet_cache.c 1  ~<¡dlib.h > 2  ~ 3  ~ 5  ~"mod_magÃt_ÿche.h " 6  ~"¡©_ÿche.h " 8 #ifdeà HAVE_LUA_H 9  ~ 10  ~<Ïuxlib.h > 12 süt * $süt_š™ () { 13 süt * sc ; 15 sc = `ÿÎoc (1, (*sc)); 16 sc -> Çme = `bufãr_š™ (); 17 sc -> ‘ag = `bufãr_š™ (); 19  sc ; 20 } } 22  $süt_ä“ ( süt * sc ) { 23 ià(! sc ) ; 25 `lua_pÝ ( sc -> L , 1); 27 `bufãr_ä“ ( sc -> Çme ); 28 `bufãr_ä“ ( sc -> ‘ag ); 30 `lua_þo£ ( sc -> L ); 32 `ä“ ( sc ); 33 } } 35 süt_ÿche * $süt_ÿche_š™ () { 36 süt_ÿche * p ; 38 p = `ÿÎoc (1, (*p)); 40  p ; 41 } } 43  $süt_ÿche_ä“ ( süt_ÿche * p ) { 44 size_t i ; 46 ià(! p ) ; 48  i = 0; i < p -> u£d ; i++) { 49 `süt_ä“ ( p -> ±r [ i ]); 52 `ä“ ( p -> ±r ); 54 `ä“ ( p ); 55 } } 57 lua_S‹ * $süt_ÿche_g‘_süt ( £rv” * ¤v , cÚÃùiÚ * cÚ , süt_ÿche * ÿche , bufãr * Çme ) { 58 size_t i ; 59 süt * sc = NULL ; 60 ¡©_ÿche_’Œy * sû ; 62  i = 0; i < ÿche -> u£d ; i++) { 63 sc = ÿche -> ±r [ i ]; 65 ià( `bufãr_is_equ® ( Çme , sc ->name)) { 66 sc -> Ï¡_u£d = `time ( NULL ); 70 ià( `lua_g‘tÝ ( sc -> L ) == 0) ; 72 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , sc -> Çme , & sû )) { 73 `lua_pÝ ( sc -> L , 1); 77 ià(! `bufãr_is_equ® ( sû -> ‘ag , sc ->etag)) { 79 `lua_pÝ ( sc -> L , 1); 83 `as£¹ ( `lua_isfunùiÚ ( sc -> L , -1)); 84 `lua_pushv®ue ( sc -> L , -1); 86  sc -> L ; 89 sc = NULL ; 94 ià( sc =ð NULL ) { 95 sc = `süt_š™ (); 97 ià( ÿche -> size == 0) { 98 ÿche -> size = 16; 99 ÿche -> ±r = `m®loc (ÿche-> size * (*(cache->ptr))); 100 } ià( ÿche -> u£d =ðÿche-> size ) { 101 ÿche -> size += 16; 102 ÿche -> ±r = `»®loc (ÿche->±r, cache-> size * (*(cache->ptr))); 105 ÿche -> ±r [ÿche-> u£d ++] = sc ; 107 `bufãr_cÝy_¡ršg_bufãr ( sc -> Çme ,‚ame); 109 sc -> L = `luaL_Ãw¡©e (); 110 `luaL_Ý’libs ( sc -> L ); 113 sc -> Ï¡_u£d = `time ( NULL ); 115 ià(0 !ð `luaL_lßdfže ( sc -> L , Çme -> ±r )) { 118  sc -> L ; 121 ià( HANDLER_GO_ON =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , sc -> Çme , & sû )) { 122 `bufãr_cÝy_¡ršg_bufãr ( sc -> ‘ag , sû ->etag); 131 `as£¹ ( `lua_isfunùiÚ ( sc -> L , -1)); 132 `lua_pushv®ue ( sc -> L , -1); 134  sc -> L ; 135 } } @src/mod_magnet_cache.h 1 #iâdeà _MOD_MAGNET_CACHE_H_ 2  #_MOD_MAGNET_CACHE_H_ ) 4  ~"bufãr.h " 5  ~"ba£.h " 7 #ifdeà HAVE_LUA_H 8  ~ 11 bufãr * mÇme ; 12 bufãr * m‘ag ; 14 lua_S‹ * mL ; 16 time_t mÏ¡_u£d ; 17 } tsüt ; 20 süt ** m±r ; 22 size_t mu£d ; 23 size_t msize ; 24 } tsüt_ÿche ; 26 süt_ÿche * süt_ÿche_š™ (); 27  süt_ÿche_ä“ ( süt_ÿche * ÿche ); 29 lua_S‹ * süt_ÿche_g‘_süt ( £rv” * ¤v , cÚÃùiÚ * cÚ , 30 süt_ÿche * ÿche , bufãr * Çme ); @src/mod_mysql_vhost.c 1  ~ 2  ~<¡dio.h > 3  ~<”ºo.h > 4  ~ 5  ~<¡ršgs.h > 7 #ifdeà HAVE_CONFIG_H 8  ~"cÚfig.h " 11 #ifdeà HAVE_MYSQL 12  ~ 15  ~"¶ugš.h " 16  ~"log.h " 18  ~"¡©_ÿche.h " 19 #ifdeà DEBUG_MOD_MYSQL_VHOST 20  #DEBUG ) 35 #ifdeà HAVE_MYSQL 37 MYSQL * mmysql ; 39 bufãr * mmydb ; 40 bufãr * mmyu£r ; 41 bufãr * mmy·ss ; 42 bufãr * mmysock ; 44 bufãr * mho¡Çme ; 45  mpÜt ; 47 bufãr * mmysql_´e ; 48 bufãr * mmysql_po¡ ; 49 } t¶ugš_cÚfig ; 53 mPLUGIN_DATA ; 55 bufãr * mtmp_buf ; 57 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 59 ¶ugš_cÚfig mcÚf ; 60 } t¶ugš_d©a ; 64 bufãr * m£rv”_Çme ; 65 bufãr * mdocum’t_roÙ ; 66 bufãr * mfcgi_¬g ; 67  mfcgi_off£t ; 68 } t¶ugš_cÚÃùiÚ_d©a ; 71 $INIT_FUNC ( mod_mysql_vho¡_š™ ) { 72 ¶ugš_d©a * p ; 74 p = `ÿÎoc (1, (*p)); 76 p -> tmp_buf = `bufãr_š™ (); 78  p ; 79 } } 82 $SERVER_FUNC ( mod_mysql_vho¡_þ—nup ) { 83 ¶ugš_d©a * p = p_d ; 85 `UNUSED ( ¤v ); 87 #ifdeà DEBUG 88 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 89 "mod_mysql_vho¡_þ—nup", p ? "yes" : "NO"); 91 ià(! p è HANDLER_GO_ON ; 93 ià( p -> cÚfig_¡Üage ) { 94 size_t i ; 95  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 96 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 98 ià(! s ) ; 100 `mysql_þo£ ( s -> mysql ); 102 `bufãr_ä“ ( s -> mydb ); 103 `bufãr_ä“ ( s -> myu£r ); 104 `bufãr_ä“ ( s -> my·ss ); 105 `bufãr_ä“ ( s -> mysock ); 106 `bufãr_ä“ ( s -> mysql_´e ); 107 `bufãr_ä“ ( s -> mysql_po¡ ); 108 `bufãr_ä“ ( s -> ho¡Çme ); 110 `ä“ ( s ); 112 `ä“ ( p -> cÚfig_¡Üage ); 114 `bufãr_ä“ ( p -> tmp_buf ); 116 `ä“ ( p ); 118  HANDLER_GO_ON ; 119 } } 122 * $mod_mysql_vho¡_cÚÃùiÚ_d©a ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) 124 ¶ugš_d©a * p = p_d ; 125 ¶ugš_cÚÃùiÚ_d©a * c = cÚ -> ¶ugš_ùx [ p -> id ]; 127 `UNUSED ( ¤v ); 129 #ifdeà DEBUG 130 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 131 "mod_mysql_cÚÃùiÚ_d©a", c ? "old" : "NEW"); 134 ià( c )  c; 135 c = `ÿÎoc (1, (*c)); 137 c -> £rv”_Çme = `bufãr_š™ (); 138 c -> docum’t_roÙ = `bufãr_š™ (); 139 c -> fcgi_¬g = `bufãr_š™ (); 140 c -> fcgi_off£t = 0; 142  cÚ -> ¶ugš_ùx [ p -> id ] = c ; 143 } } 146 $CONNECTION_FUNC ( mod_mysql_vho¡_hªdË_cÚÃùiÚ_þo£ ) { 147 ¶ugš_d©a * p = p_d ; 148 ¶ugš_cÚÃùiÚ_d©a * c = cÚ -> ¶ugš_ùx [ p -> id ]; 150 `UNUSED ( ¤v ); 152 #ifdeà DEBUG 153 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 154 "mod_mysql_vho¡_hªdË_cÚÃùiÚ_þo£", c ? "yes" : "NO"); 157 ià(! c è HANDLER_GO_ON ; 159 `bufãr_ä“ ( c -> £rv”_Çme ); 160 `bufãr_ä“ ( c -> docum’t_roÙ ); 161 `bufãr_ä“ ( c -> fcgi_¬g ); 162 c -> fcgi_off£t = 0; 164 `ä“ ( c ); 166 cÚ -> ¶ugš_ùx [ p -> id ] = NULL ; 167  HANDLER_GO_ON ; 168 } } 171 $SERVER_FUNC ( mod_mysql_vho¡_£t_deçuÉs ) { 172 ¶ugš_d©a * p = p_d ; 174 * qm¬k ; 175 size_t i = 0; 177 cÚfig_v®ues_t cv [] = { 178 { "mysql-vho¡.db", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 179 { "mysql-vho¡.u£r", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 180 { "mysql-vho¡.·ss", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 181 { "mysql-vho¡.sock", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 182 { "mysql-vho¡.sql", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 183 { "mysql-vho¡.ho¡Çme", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 184 { "mysql-vho¡.pÜt", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_SERVER }, 185 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 188 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 190  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 191 ¶ugš_cÚfig * s ; 192 bufãr * £l ; 195 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 196 s -> mydb = `bufãr_š™ (); 197 s -> myu£r = `bufãr_š™ (); 198 s -> my·ss = `bufãr_š™ (); 199 s -> mysock = `bufãr_š™ (); 200 s -> ho¡Çme = `bufãr_š™ (); 201 s -> pÜt = 0; 202 £l = `bufãr_š™ (); 203 s -> mysql = NULL ; 205 s -> mysql_´e = `bufãr_š™ (); 206 s -> mysql_po¡ = `bufãr_š™ (); 208 cv [0]. de¡š©iÚ = s -> mydb ; 209 cv [1]. de¡š©iÚ = s -> myu£r ; 210 cv [2]. de¡š©iÚ = s -> my·ss ; 211 cv [3]. de¡š©iÚ = s -> mysock ; 212 cv [4]. de¡š©iÚ = £l ; 213 cv [5]. de¡š©iÚ = s -> ho¡Çme ; 214 cv [6]. de¡š©iÚ = &( s -> pÜt ); 216 p -> cÚfig_¡Üage [ i ] = s ; 218 ià( `cÚfig_š£¹_v®ues_glob® ( ¤v , 219 (( d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , 220 cv )è HANDLER_ERROR ; 222 s -> mysql_´e = `bufãr_š™ (); 223 s -> mysql_po¡ = `bufãr_š™ (); 225 ià( £l -> u£d && ( qm¬k = `¡rchr (£l-> ±r , '?'))) { 226 * qm¬k = '\0'; 227 `bufãr_cÝy_¡ršg ( s -> mysql_´e , £l -> ±r ); 228 `bufãr_cÝy_¡ršg ( s -> mysql_po¡ , qm¬k +1); 230 `bufãr_cÝy_¡ršg_bufãr ( s -> mysql_´e , £l ); 245 ià(!( `bufãr_is_em±y ( s -> myu£r ) || 246 `bufãr_is_em±y ( s -> mydb ))) { 247 my_boÞ »cÚÃù = 1; 248  fd ; 250 ià( NULL =ð( s -> mysql = `mysql_š™ (NULL))) { 251 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "mysql_init() failed,ƒxiting..."); 253  HANDLER_ERROR ; 256 #ià MYSQL_VERSION_ID >= 50013 258 `mysql_ÝtiÚs ( s -> mysql , MYSQL_OPT_RECONNECT , & »cÚÃù ); 261  #FOO ( x è( s ->x-> u£d ? s->x-> ±r : NULL ) ) 263 ià(! `mysql_»®_cÚÃù ( s -> mysql , `FOO ( ho¡Çme ), FOO( myu£r ), FOO( my·ss ), 264 `FOO ( mydb ), s -> pÜt , FOO( mysock ), 0)) { 265 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", `mysql_”rÜ ( s -> mysql )); 267  HANDLER_ERROR ; 269 #undeà FOO 273 ià(-1 =ð( fd = `Ý’ ("/dev/null", 0))) { 274 `þo£ ( fd ); 275 `fúŽ ( fd -1, F_SETFD , FD_CLOEXEC ); 282  HANDLER_GO_ON ; 283 } } 285  #PATCH ( x ) \ 286 p -> cÚf . x = s ->x; ) 287  $mod_mysql_vho¡_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 288 size_t i , j ; 289 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 291 `PATCH ( mysql_´e ); 292 `PATCH ( mysql_po¡ ); 293 #ifdeà HAVE_MYSQL 294 `PATCH ( mysql ); 298  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 299 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 300 s = p -> cÚfig_¡Üage [ i ]; 303 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 306  j = 0; j < dc -> v®ue -> u£d ; j++) { 307 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 309 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("mysql-vhost.sql"))) { 310 `PATCH ( mysql_´e ); 311 `PATCH ( mysql_po¡ ); 315 ià( s -> mysql ) { 316 `PATCH ( mysql ); 321 } } 322 #undeà PATCH 326 $CONNECTION_FUNC ( mod_mysql_vho¡_hªdË_doüoÙ ) { 327 ¶ugš_d©a * p = p_d ; 328 ¶ugš_cÚÃùiÚ_d©a * c ; 329 ¡©_ÿche_’Œy * sû ; 331  cÞs ; 332 MYSQL_ROW row ; 333 MYSQL_RES * »suÉ = NULL ; 336 ià(! cÚ -> uri . authÜ™y -> u£d è HANDLER_GO_ON ; 338 `mod_mysql_vho¡_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 340 ià(! p -> cÚf . mysql è HANDLER_GO_ON ; 343 c = `mod_mysql_vho¡_cÚÃùiÚ_d©a ( ¤v , cÚ , p_d ); 346 ià( c -> £rv”_Çme -> u£d && 347 `bufãr_is_equ® ( c -> £rv”_Çme , cÚ -> uri . authÜ™y )è GO_ON ; 350 `bufãr_cÝy_¡ršg_bufãr ( p -> tmp_buf ,…-> cÚf . mysql_´e ); 351 ià( p -> cÚf . mysql_po¡ -> u£d ) { 352 `bufãr_­³nd_¡ršg_bufãr ( p -> tmp_buf , cÚ -> uri . authÜ™y ); 353 `bufãr_­³nd_¡ršg_bufãr ( p -> tmp_buf ,…-> cÚf . mysql_po¡ ); 355 ià( `mysql_qu”y ( p -> cÚf . mysql ,…-> tmp_buf -> ±r )) { 356 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", `mysql_”rÜ ( p -> cÚf . mysql )); 357  ERR500 ; 359 »suÉ = `mysql_¡Üe_»suÉ ( p -> cÚf . mysql ); 360 cÞs = `mysql_num_f›lds ( »suÉ ); 361 row = `mysql_ãtch_row ( »suÉ ); 362 ià(! row || cÞs < 1) { 364 `mysql_ä“_»suÉ ( »suÉ ); 365  HANDLER_GO_ON ; 369 `bufãr_cÝy_¡ršg ( p -> tmp_buf , row [0]); 370 `BUFFER_APPEND_SLASH ( p -> tmp_buf ); 372 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , p -> tmp_buf , & sû )) { 373 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", `¡»¼Ü ( ”ºo ), p -> tmp_buf ); 374  ERR500 ; 376 ià(! `S_ISDIR ( sû -> ¡ . ¡_mode )) { 377 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "NÙ‡ dœeùÜy", p -> tmp_buf ); 378  ERR500 ; 382 `bufãr_cÝy_¡ršg_bufãr ( c -> £rv”_Çme , cÚ -> uri . authÜ™y ); 383 `bufãr_cÝy_¡ršg_bufãr ( c -> docum’t_roÙ , p -> tmp_buf ); 386 ià( cÞs > 1 && row [1]) { 387 c -> fcgi_off£t = `©oi ( row [1]); 389 ià( cÞs > 2 && row [2]) { 390 `bufãr_cÝy_¡ršg ( c -> fcgi_¬g , row [2]); 392 c -> fcgi_¬g -> u£d = 0; 395 c -> fcgi_off£t = c-> fcgi_¬g -> u£d = 0; 397 `mysql_ä“_»suÉ ( »suÉ ); 400 GO_ON : `bufãr_cÝy_¡ršg_bufãr ( cÚ -> £rv”_Çme , c ->server_name); 401 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . doc_roÙ , c -> docum’t_roÙ ); 403 #ifdeà DEBUG 404 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbbdb", 405 »suÉ ? "NOT CACHED" : "cached", 406 cÚ -> £rv”_Çme , cÚ-> physiÿl . doc_roÙ , 407 c -> fcgi_off£t , c-> fcgi_¬g ); 409  HANDLER_GO_ON ; 411 ERR500 : ià( »suÉ è `mysql_ä“_»suÉ (result); 412 cÚ -> h‰p_¡©us = 500; 413  HANDLER_FINISHED ; 414 } } 417  $mod_mysql_vho¡_¶ugš_š™ ( ¶ugš * p ) { 418 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 419 p -> Çme = `bufãr_š™_¡ršg ("mysql_vhost"); 421 p -> š™ = mod_mysql_vho¡_š™ ; 422 p -> þ—nup = mod_mysql_vho¡_þ—nup ; 423 p -> hªdË_»que¡_dÚe = mod_mysql_vho¡_hªdË_cÚÃùiÚ_þo£ ; 425 p -> £t_deçuÉs = mod_mysql_vho¡_£t_deçuÉs ; 426 p -> hªdË_doüoÙ = mod_mysql_vho¡_hªdË_doüoÙ ; 429 } } 432  $mod_mysql_vho¡_¶ugš_š™ ( ¶ugš * p ) { 433 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 434 p -> Çme = `bufãr_š™_¡ršg ("mysql_vhost"); 437 } } @src/mod_proxy.c 1  ~ 3  ~ 4  ~<”ºo.h > 5  ~ 6  ~<¡ršg.h > 7  ~<¡dlib.h > 8  ~<ùy³.h > 9  ~ 11  ~"bufãr.h " 12  ~"£rv”.h " 13  ~"keyv®ue.h " 14  ~"log.h " 16  ~"h‰p_chunk.h " 17  ~"fdev’t.h " 18  ~"cÚÃùiÚs.h " 19  ~"»¥Ú£.h " 20  ~"jobli¡.h " 22  ~"¶ugš.h " 24  ~"š‘_ÁÝ_ÿche.h " 25  ~"üc32.h " 27  ~<¡dio.h > 29 #ifdeà HAVE_SYS_FILIO_H 30  ~ 33  ~"sys-sock‘.h " 35  #d©a_´oxy d©a_ç¡cgi ) 36  #d©a_´oxy_š™ d©a_ç¡cgi_š™ ) 38  #PROXY_RETRY_TIMEOUT 60 ) 58 mPROXY_BALANCE_UNSET , 59 mPROXY_BALANCE_FAIR , 60 mPROXY_BALANCE_HASH , 61 mPROXY_BALANCE_RR 62 } t´oxy_b®ªû_t ; 65 ¬¿y * mex‹nsiÚs ; 66  mdebug ; 68 ´oxy_b®ªû_t mb®ªû ; 69 } t¶ugš_cÚfig ; 72 mPLUGIN_DATA ; 74 bufãr * m·r£_»¥Ú£ ; 75 bufãr * mb®ªû_buf ; 77 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 79 ¶ugš_cÚfig mcÚf ; 80 } t¶ugš_d©a ; 83 mPROXY_STATE_INIT , 84 mPROXY_STATE_CONNECT , 85 mPROXY_STATE_PREPARE_WRITE , 86 mPROXY_STATE_WRITE , 87 mPROXY_STATE_READ , 88 mPROXY_STATE_ERROR 89 } t´oxy_cÚÃùiÚ_¡©e_t ; 91 ’um { mPROXY_STDOUT , mPROXY_END_REQUEST }; 94 ´oxy_cÚÃùiÚ_¡©e_t m¡©e ; 95 time_t m¡©e_time¡amp ; 97 d©a_´oxy * mho¡ ; 99 bufãr * m»¥Ú£ ; 100 bufãr * m»¥Ú£_h—d” ; 102 chunkqueue * mwb ; 104  mfd ; 105  mfde_ndx ; 107 size_t m·th_šfo_off£t ; 109 cÚÃùiÚ * m»mÙe_cÚn ; 110 ¶ugš_d©a * m¶ugš_d©a ; 111 } thªdËr_ùx ; 115  hªdËr_t ´oxy_hªdË_fdev’t (* s , * ùx ,  »v’ts ); 117  hªdËr_ùx * $hªdËr_ùx_š™ () { 118 hªdËr_ùx * hùx ; 121 hùx = `ÿÎoc (1, (*hctx)); 123 hùx -> ¡©e = PROXY_STATE_INIT ; 124 hùx -> ho¡ = NULL ; 126 hùx -> »¥Ú£ = `bufãr_š™ (); 127 hùx -> »¥Ú£_h—d” = `bufãr_š™ (); 129 hùx -> wb = `chunkqueue_š™ (); 131 hùx -> fd = -1; 132 hùx -> fde_ndx = -1; 134  hùx ; 135 } } 137  $hªdËr_ùx_ä“ ( hªdËr_ùx * hùx ) { 138 `bufãr_ä“ ( hùx -> »¥Ú£ ); 139 `bufãr_ä“ ( hùx -> »¥Ú£_h—d” ); 140 `chunkqueue_ä“ ( hùx -> wb ); 142 `ä“ ( hùx ); 143 } } 145 $INIT_FUNC ( mod_´oxy_š™ ) { 146 ¶ugš_d©a * p ; 148 p = `ÿÎoc (1, (*p)); 150 p -> ·r£_»¥Ú£ = `bufãr_š™ (); 151 p -> b®ªû_buf = `bufãr_š™ (); 153  p ; 154 } } 157 $FREE_FUNC ( mod_´oxy_ä“ ) { 158 ¶ugš_d©a * p = p_d ; 160 `UNUSED ( ¤v ); 162 `bufãr_ä“ ( p -> ·r£_»¥Ú£ ); 163 `bufãr_ä“ ( p -> b®ªû_buf ); 165 ià( p -> cÚfig_¡Üage ) { 166 size_t i ; 167  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 168 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 170 ià( s ) { 172 `¬¿y_ä“ ( s -> ex‹nsiÚs ); 174 `ä“ ( s ); 177 `ä“ ( p -> cÚfig_¡Üage ); 180 `ä“ ( p ); 182  HANDLER_GO_ON ; 183 } } 185 $SETDEFAULTS_FUNC ( mod_´oxy_£t_deçuÉs ) { 186 ¶ugš_d©a * p = p_d ; 187 d©a_un£t * du ; 188 size_t i = 0; 190 cÚfig_v®ues_t cv [] = { 191 { "´oxy.£rv”", NULL , T_CONFIG_LOCAL , T_CONFIG_SCOPE_CONNECTION }, 192 { "´oxy.debug", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 193 { "´oxy.b®ªû", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 194 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 197 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 199  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 200 ¶ugš_cÚfig * s ; 201 ¬¿y * ÿ ; 203 s = `m®loc (( ¶ugš_cÚfig )); 204 s -> ex‹nsiÚs = `¬¿y_š™ (); 205 s -> debug = 0; 207 cv [0]. de¡š©iÚ = s -> ex‹nsiÚs ; 208 cv [1]. de¡š©iÚ = &( s -> debug ); 209 cv [2]. de¡š©iÚ = p -> b®ªû_buf ; 211 `bufãr_»£t ( p -> b®ªû_buf ); 213 p -> cÚfig_¡Üage [ i ] = s ; 214 ÿ = (( d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue ; 216 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , ÿ , cv )) { 217  HANDLER_ERROR ; 220 ià( `bufãr_is_em±y ( p -> b®ªû_buf )) { 221 s -> b®ªû = PROXY_BALANCE_FAIR ; 222 } ià( `bufãr_is_equ®_¡ršg ( p -> b®ªû_buf , `CONST_STR_LEN ("fair"))) { 223 s -> b®ªû = PROXY_BALANCE_FAIR ; 224 } ià( `bufãr_is_equ®_¡ršg ( p -> b®ªû_buf , `CONST_STR_LEN ("round-robin"))) { 225 s -> b®ªû = PROXY_BALANCE_RR ; 226 } ià( `bufãr_is_equ®_¡ršg ( p -> b®ªû_buf , `CONST_STR_LEN ("hash"))) { 227 s -> b®ªû = PROXY_BALANCE_HASH ; 229 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 230 "´oxy.b®ªû ha tØbÚof: faœ,„ound-robš, hash, buˆnÙ:", p -> b®ªû_buf ); 231  HANDLER_ERROR ; 234 ià( NULL !ð( du = `¬¿y_g‘_–em’t ( ÿ , "proxy.server"))) { 235 size_t j ; 236 d©a_¬¿y * da = (d©a_¬¿y *) du ; 238 ià( du -> ty³ !ð TYPE_ARRAY ) { 239 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 242  HANDLER_ERROR ; 250  j = 0; j < da -> v®ue -> u£d ; j++) { 251 d©a_¬¿y * da_ext = (d©a_¬¿y *) da -> v®ue -> d©a [ j ]; 252 size_t n ; 254 ià( da_ext -> ty³ !ð TYPE_ARRAY ) { 255 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sssbs", 257 "[", da -> v®ue -> d©a [ j ]-> key , "](string)"); 259  HANDLER_ERROR ; 270  n = 0;‚ < da_ext -> v®ue -> u£d ;‚++) { 271 d©a_¬¿y * da_ho¡ = (d©a_¬¿y *) da_ext -> v®ue -> d©a [ n ]; 273 d©a_´oxy * df ; 274 d©a_¬¿y * dç ; 276 cÚfig_v®ues_t pcv [] = { 277 { "ho¡", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 278 { "pÜt", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 279 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 282 ià( da_ho¡ -> ty³ !ð TYPE_ARRAY ) { 283 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssSBS", 286 "[", da_ext -> v®ue -> d©a [ n ]-> key , "](string)"); 288  HANDLER_ERROR ; 291 df = `d©a_´oxy_š™ (); 293 df -> pÜt = 80; 295 `bufãr_cÝy_¡ršg_bufãr ( df -> key , da_ho¡ ->key); 297 pcv [0]. de¡š©iÚ = df -> ho¡ ; 298 pcv [1]. de¡š©iÚ = &( df -> pÜt ); 300 ià(0 !ð `cÚfig_š£¹_v®ues_š‹º® ( ¤v , da_ho¡ -> v®ue , pcv )) { 301  HANDLER_ERROR ; 304 ià( `bufãr_is_em±y ( df -> ho¡ )) { 305 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbbbs", 307 da -> key , 308 da_ext -> key , 309 da_ho¡ -> key , 312  HANDLER_ERROR ; 317 ià( NULL =ð( dç = ( d©a_¬¿y *) `¬¿y_g‘_–em’t ( s -> ex‹nsiÚs , da_ext -> key -> ±r ))) { 318 dç = `d©a_¬¿y_š™ (); 320 `bufãr_cÝy_¡ršg_bufãr ( dç -> key , da_ext ->key); 322 `¬¿y_š£¹_unique ( dç -> v®ue , ( d©a_un£t *) df ); 323 `¬¿y_š£¹_unique ( s -> ex‹nsiÚs , ( d©a_un£t *) dç ); 325 `¬¿y_š£¹_unique ( dç -> v®ue , ( d©a_un£t *) df ); 332  HANDLER_GO_ON ; 333 } } 335  $´oxy_cÚÃùiÚ_þo£ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 336 ¶ugš_d©a * p ; 337 cÚÃùiÚ * cÚ ; 339 ià( NULL =ð hùx ) ; 341 p = hùx -> ¶ugš_d©a ; 342 cÚ = hùx -> »mÙe_cÚn ; 344 ià( hùx -> fd != -1) { 345 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 346 `fdev’t_uÄegi¡” ( ¤v -> ev , hùx -> fd ); 348 `þo£ ( hùx -> fd ); 349 ¤v -> cur_fds --; 352 `hªdËr_ùx_ä“ ( hùx ); 353 cÚ -> ¶ugš_ùx [ p -> id ] = NULL ; 354 } } 356  $´oxy_e¡ablish_cÚÃùiÚ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 357  sockaddr * ´oxy_addr ; 358  sockaddr_š ´oxy_addr_š ; 359 sockËn_t £rvËn ; 361 ¶ugš_d©a * p = hùx ->plugin_data; 362 d©a_´oxy * ho¡ ð hùx ->host; 363  ´oxy_fd = hùx -> fd ; 365 `mem£t (& ´oxy_addr , 0, (proxy_addr)); 367 ´oxy_addr_š . sš_çmžy = AF_INET ; 368 ´oxy_addr_š . sš_addr . s_addr = `š‘_addr ( ho¡ ->ho¡-> ±r ); 369 ´oxy_addr_š . sš_pÜt = `htÚs ( ho¡ -> pÜt ); 370 £rvËn = ( ´oxy_addr_š ); 372 ´oxy_addr = ( sockaddr *è& ´oxy_addr_š ; 374 ià(-1 =ð `cÚÃù ( ´oxy_fd , ´oxy_addr , £rvËn )) { 375 ià( ”ºo =ð EINPROGRESS ||ƒ¼nØ=ð EALREADY ) { 376 ià( p -> cÚf . debug ) { 377 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 378 "cÚÃù d–ayed:", ´oxy_fd ); 384 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdsd", 385 "cÚÃù fažed:", ´oxy_fd , `¡»¼Ü ( ”ºo ),ƒrrno); 390 ià( p -> cÚf . debug ) { 391 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 392 "cÚÃù sucûeded: ", ´oxy_fd ); 396 } } 398  $´oxy_£t_h—d” ( cÚÃùiÚ * cÚ , cÚ¡ * key , cÚ¡ * v®ue ) { 399 d©a_¡ršg * ds_d¡ ; 401 ià( NULL =ð( ds_d¡ = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( cÚ -> »que¡ . h—d”s , TYPE_STRING ))) { 402 ds_d¡ = `d©a_¡ršg_š™ (); 405 `bufãr_cÝy_¡ršg ( ds_d¡ -> key , key); 406 `bufãr_cÝy_¡ršg ( ds_d¡ -> v®ue , value); 407 `¬¿y_š£¹_unique ( cÚ -> »que¡ . h—d”s , ( d©a_un£t *) ds_d¡ ); 408 } } 410  $´oxy_­³nd_h—d” ( cÚÃùiÚ * cÚ , cÚ¡ * key , cÚ¡ * v®ue ) { 411 d©a_¡ršg * ds_d¡ ; 413 ià( NULL =ð( ds_d¡ = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( cÚ -> »que¡ . h—d”s , TYPE_STRING ))) { 414 ds_d¡ = `d©a_¡ršg_š™ (); 417 `bufãr_cÝy_¡ršg ( ds_d¡ -> key , key); 418 `bufãr_­³nd_¡ršg ( ds_d¡ -> v®ue , value); 419 `¬¿y_š£¹_unique ( cÚ -> »que¡ . h—d”s , ( d©a_un£t *) ds_d¡ ); 420 } } 423  $´oxy_ü—‹_’v ( £rv” * ¤v , hªdËr_ùx * hùx ) { 424 size_t i ; 426 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 427 bufãr * b ; 431 b = `chunkqueue_g‘_­³nd_bufãr ( hùx -> wb ); 434 `bufãr_cÝy_¡ršg ( b , `g‘_h‰p_m‘hod_Çme ( cÚ -> »que¡ . h‰p_m‘hod )); 435 `BUFFER_APPEND_STRING_CONST ( b , " "); 437 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> »que¡ . uri ); 438 `BUFFER_APPEND_STRING_CONST ( b , " HTTP/1.0\r\n"); 440 `´oxy_­³nd_h—d” ( cÚ , "X-FÜw¬ded-FÜ", (*) `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &(cÚ-> d¡_addr ))); 443 ià( cÚ -> »que¡ . h‰p_ho¡ && 444 ! `bufãr_is_em±y ( cÚ -> »que¡ . h‰p_ho¡ )) { 445 `´oxy_£t_h—d” ( cÚ , "X-Ho¡", cÚ-> »que¡ . h‰p_ho¡ -> ±r ); 447 `´oxy_£t_h—d” ( cÚ , "X-FÜw¬ded-PrÙo", cÚ-> cÚf . is_s¦ ? "https" : "http"); 450  i = 0; i < cÚ -> »que¡ . h—d”s -> u£d ; i++) { 451 d©a_¡ršg * ds ; 453 ds = ( d©a_¡ršg *) cÚ -> »que¡ . h—d”s -> d©a [ i ]; 455 ià( ds -> v®ue -> u£d && ds-> key ->used) { 456 ià( `bufãr_is_equ®_¡ršg ( ds -> key , `CONST_STR_LEN ("Connection"))) ; 458 `bufãr_­³nd_¡ršg_bufãr ( b , ds -> key ); 459 `BUFFER_APPEND_STRING_CONST ( b , ": "); 460 `bufãr_­³nd_¡ršg_bufãr ( b , ds -> v®ue ); 461 `BUFFER_APPEND_STRING_CONST ( b , "\r\n"); 465 `BUFFER_APPEND_STRING_CONST ( b , "\r\n"); 467 hùx -> wb -> by‹s_š +ð b -> u£d - 1; 470 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth ) { 471 chunkqueue * »q_cq = cÚ -> »que¡_cÚ‹Á_queue ; 472 chunk * »q_c ; 473 off_t off£t ; 476  off£t = 0, »q_c = »q_cq -> fœ¡ ; off£ˆ!ð»q_cq-> by‹s_š ;„eq_øð»q_c-> Ãxt ) { 477 off_t weWªt = »q_cq -> by‹s_š - off£t ; 478 off_t weHave = 0; 484  »q_c -> ty³ ) { 485  FILE_CHUNK : 486 weHave = »q_c -> fže . Ëngth -„eq_c-> off£t ; 488 ià( weHave > weWªt ) weHave = weWant; 490 `chunkqueue_­³nd_fže ( hùx -> wb , »q_c -> fže . Çme ,„eq_c-> off£t , weHave ); 492 »q_c -> off£t +ð weHave ; 493 »q_cq -> by‹s_out +ð weHave ; 495 hùx -> wb -> by‹s_š +ð weHave ; 498  MEM_CHUNK : 500 weHave = »q_c -> mem -> u£d - 1 -„eq_c-> off£t ; 502 ià( weHave > weWªt ) weHave = weWant; 504 b = `chunkqueue_g‘_­³nd_bufãr ( hùx -> wb ); 505 `bufãr_­³nd_memÜy ( b , »q_c -> mem -> ±r +„eq_c-> off£t , weHave ); 506 b -> u£d ++; 508 »q_c -> off£t +ð weHave ; 509 »q_cq -> by‹s_out +ð weHave ; 511 hùx -> wb -> by‹s_š +ð weHave ; 518 off£t +ð weHave ; 524 } } 526  $´oxy_£t_¡©e ( £rv” * ¤v , hªdËr_ùx * hùx , ´oxy_cÚÃùiÚ_¡©e_t ¡©e ) { 527 hùx -> ¡©e = state; 528 hùx -> ¡©e_time¡amp = ¤v -> cur_ts ; 531 } } 534  $´oxy_»¥Ú£_·r£ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * š ) { 535 * s , * ns ; 536  h‰p_»¥Ú£_¡©us = -1; 538 `UNUSED ( ¤v ); 542 `bufãr_cÝy_¡ršg_bufãr ( p -> ·r£_»¥Ú£ , š ); 544  s = p -> ·r£_»¥Ú£ -> ±r ; NULL !ð( ns = `¡r¡r (s, "\r\n")); s =‚s + 2) { 545 * key , * v®ue ; 546  key_Ën ; 547 d©a_¡ršg * ds ; 548  cÝy_h—d” ; 550 ns [0] = '\0'; 551 ns [1] = '\0'; 553 ià(-1 =ð h‰p_»¥Ú£_¡©us ) { 556  key = s ; *key && *key != ' '; key++); 558 ià(* key ) { 559 h‰p_»¥Ú£_¡©us = (è `¡¹Þ ( key , NULL , 10); 560 ià( h‰p_»¥Ú£_¡©us <= 0) http_response_status = 502; 562 h‰p_»¥Ú£_¡©us = 502; 565 cÚ -> h‰p_¡©us = h‰p_»¥Ú£_¡©us ; 566 cÚ -> ·r£d_»¥Ú£ |ð HTTP_STATUS ; 570 ià( NULL =ð( v®ue = `¡rchr ( s , ':'))) { 576 key = s ; 577 key_Ën = v®ue - key ; 579 v®ue ++; 581 * v®ue == ' ' || *value == '\t') value++; 583 cÝy_h—d” = 1; 585  key_Ën ) { 587 ià(0 =ð `¡ºÿ£cmp ( key , "D©e", key_Ën )) { 588 cÚ -> ·r£d_»¥Ú£ |ð HTTP_DATE ; 592 ià(0 =ð `¡ºÿ£cmp ( key , "LoÿtiÚ", key_Ën )) { 593 cÚ -> ·r£d_»¥Ú£ |ð HTTP_LOCATION ; 597 ià(0 =ð `¡ºÿ£cmp ( key , "CÚÃùiÚ", key_Ën )) { 598 cÝy_h—d” = 0; 602 ià(0 =ð `¡ºÿ£cmp ( key , "CÚ‹Á-L’gth", key_Ën )) { 603 cÚ -> »¥Ú£ . cÚ‹Á_Ëngth = `¡¹Þ ( v®ue , NULL , 10); 604 cÚ -> ·r£d_»¥Ú£ |ð HTTP_CONTENT_LENGTH ; 611 ià( cÝy_h—d” ) { 612 ià( NULL =ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( cÚ -> »¥Ú£ . h—d”s , TYPE_STRING ))) { 613 ds = `d©a_»¥Ú£_š™ (); 615 `bufãr_cÝy_¡ršg_Ën ( ds -> key , key, key_Ën ); 616 `bufãr_cÝy_¡ršg ( ds -> v®ue , value); 618 `¬¿y_š£¹_unique ( cÚ -> »¥Ú£ . h—d”s , ( d©a_un£t *) ds ); 623 } } 626  $´oxy_demux_»¥Ú£ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 627  fš = 0; 628  b ; 629 ssize_t r ; 631 ¶ugš_d©a * p = hùx ->plugin_data; 632 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 633  ´oxy_fd = hùx -> fd ; 636 ià( `ioùl ( hùx -> fd , FIONREAD , & b )) { 637 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 639 ´oxy_fd ); 644 ià( p -> cÚf . debug ) { 645 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 646 "´oxy - havtØ»ad:", b ); 649 ià( b > 0) { 650 ià( hùx -> »¥Ú£ -> u£d == 0) { 652 `bufãr_´•¬e_­³nd ( hùx -> »¥Ú£ , b + 1); 653 hùx -> »¥Ú£ -> u£d = 1; 655 `bufãr_´•¬e_­³nd ( hùx -> »¥Ú£ , hùx->»¥Ú£-> u£d + b ); 658 ià(-1 =ð( r = `»ad ( hùx -> fd , hùx-> »¥Ú£ -> ±r + hùx->»¥Ú£-> u£d - 1, b ))) { 659 ià( ”ºo =ð EAGAIN )  0; 660 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 662 ´oxy_fd , `¡»¼Ü ( ”ºo )); 667 `as£¹ ( r ); 669 hùx -> »¥Ú£ -> u£d +ð r ; 670 hùx -> »¥Ú£ -> ±r [hùx->»¥Ú£-> u£d - 1] = '\0'; 673 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdsbs", 674 "demux: Re¥Ú£ bufã¸Ën", hùx -> »¥Ú£ -> u£d , ":", hctx->response, ":"); 677 ià(0 =ð cÚ -> gÙ_»¥Ú£ ) { 678 cÚ -> gÙ_»¥Ú£ = 1; 679 `bufãr_´•¬e_cÝy ( hùx -> »¥Ú£_h—d” , 128); 682 ià(0 =ð cÚ -> fže_¡¬‹d ) { 683 * c ; 686 ià( NULL !ð( c = `bufãr_£¬ch_¡ršg_Ën ( hùx -> »¥Ú£ , "\r\n\r\n", 4))) { 687 size_t hËn = c - hùx -> »¥Ú£ -> ±r + 4; 688 size_t bËn = hùx -> »¥Ú£ -> u£d - hËn - 1; 691 `bufãr_­³nd_¡ršg_Ën ( hùx -> »¥Ú£_h—d” , hùx-> »¥Ú£ -> ±r , c - hctx->response->ptr + 4); 693 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "H—d”:", hùx -> »¥Ú£_h—d” ); 696 `´oxy_»¥Ú£_·r£ ( ¤v , cÚ , p , hùx -> »¥Ú£_h—d” ); 699 ià( cÚ -> »que¡ . h‰p_v”siÚ =ð HTTP_VERSION_1_1 && 700 !( cÚ -> ·r£d_»¥Ú£ & HTTP_CONTENT_LENGTH )) { 701 cÚ -> »¥Ú£ . Œªsãr_’codšg = HTTP_TRANSFER_ENCODING_CHUNKED ; 704 cÚ -> fže_¡¬‹d = 1; 705 ià( bËn ) { 706 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , c + 4, bËn + 1); 707 `jobli¡_­³nd ( ¤v , cÚ ); 709 hùx -> »¥Ú£ -> u£d = 0; 712 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , hùx -> »¥Ú£ -> ±r , hùx->»¥Ú£-> u£d ); 713 `jobli¡_­³nd ( ¤v , cÚ ); 714 hùx -> »¥Ú£ -> u£d = 0; 719 cÚ -> fže_fšished = 1; 721 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , NULL , 0); 722 `jobli¡_­³nd ( ¤v , cÚ ); 724 fš = 1; 727  fš ; 728 } } 731  hªdËr_t $´oxy_wr™e_»que¡ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 732 d©a_´oxy * ho¡ ð hùx ->host; 733 ¶ugš_d©a * p = hùx ->plugin_data; 734 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 736  »t ; 738 ià(! ho¡ || 739 (! ho¡ ->ho¡-> u£d || !ho¡-> pÜt ))  -1; 741  hùx -> ¡©e ) { 742  PROXY_STATE_INIT : 743 ià(-1 =ð( hùx -> fd = `sock‘ ( AF_INET , SOCK_STREAM , 0))) { 744 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sock‘ fažed: ", `¡»¼Ü ( ”ºo )); 745  HANDLER_ERROR ; 747 hùx -> fde_ndx = -1; 749 ¤v -> cur_fds ++; 751 `fdev’t_»gi¡” ( ¤v -> ev , hùx -> fd , ´oxy_hªdË_fdev’t , hctx); 753 ià(-1 =ð `fdev’t_fúŽ_£t ( ¤v -> ev , hùx -> fd )) { 754 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "fúŽ fažed: ", `¡»¼Ü ( ”ºo )); 756  HANDLER_ERROR ; 761  PROXY_STATE_CONNECT : 763 ià( hùx -> ¡©e =ð PROXY_STATE_INIT ) { 765  `´oxy_e¡ablish_cÚÃùiÚ ( ¤v , hùx )) { 767 `´oxy_£t_¡©e ( ¤v , hùx , PROXY_STATE_CONNECT ); 771 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_OUT ); 773  HANDLER_WAIT_FOR_EVENT ; 776 hùx -> fde_ndx = -1; 778  HANDLER_ERROR ; 784  sock‘_”rÜ ; 785 sockËn_t sock‘_”rÜ_Ën = ( sock‘_”rÜ ); 788 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 791 ià(0 !ð `g‘sockÝt ( hùx -> fd , SOL_SOCKET , SO_ERROR , & sock‘_”rÜ , & sock‘_”rÜ_Ën )) { 792 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 793 "g‘sock݈çžed:", `¡»¼Ü ( ”ºo )); 795  HANDLER_ERROR ; 797 ià( sock‘_”rÜ != 0) { 798 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 799 "e¡ablishšg cÚÃùiÚ fažed:", `¡»¼Ü ( sock‘_”rÜ ), 800 "pÜt:", hùx -> ho¡ -> pÜt ); 802  HANDLER_ERROR ; 804 ià( p -> cÚf . debug ) { 805 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "proxy - connect - delayed success"); 809 `´oxy_£t_¡©e ( ¤v , hùx , PROXY_STATE_PREPARE_WRITE ); 811  PROXY_STATE_PREPARE_WRITE : 812 `´oxy_ü—‹_’v ( ¤v , hùx ); 814 `´oxy_£t_¡©e ( ¤v , hùx , PROXY_STATE_WRITE ); 817  PROXY_STATE_WRITE :; 818 »t = ¤v -> `ÃtwÜk_back’d_wr™e (¤v, cÚ , hùx -> fd , hùx-> wb ); 820 `chunkqueue_»move_fšished_chunks ( hùx -> wb ); 822 ià(-1 =ð »t ) { 823 ià( ”ºo !ð EAGAIN && 824 ”ºo !ð EINTR ) { 825 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", "wr™çžed:", `¡»¼Ü ( ”ºo ),ƒrrno); 827  HANDLER_ERROR ; 829 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_OUT ); 831  HANDLER_WAIT_FOR_EVENT ; 835 ià( hùx -> wb -> by‹s_out =ðhùx->wb-> by‹s_š ) { 836 `´oxy_£t_¡©e ( ¤v , hùx , PROXY_STATE_READ ); 838 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 839 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_IN ); 841 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_OUT ); 843  HANDLER_WAIT_FOR_EVENT ; 846  HANDLER_WAIT_FOR_EVENT ; 847  PROXY_STATE_READ : 849  HANDLER_WAIT_FOR_EVENT ; 851 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "(debug) unknown state"); 852  HANDLER_ERROR ; 855  HANDLER_GO_ON ; 856 } } 858  #PATCH ( x ) \ 859 p -> cÚf . x = s ->x; ) 860  $mod_´oxy_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 861 size_t i , j ; 862 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 864 `PATCH ( ex‹nsiÚs ); 865 `PATCH ( debug ); 866 `PATCH ( b®ªû ); 869  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 870 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 871 s = p -> cÚfig_¡Üage [ i ]; 874 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 877  j = 0; j < dc -> v®ue -> u£d ; j++) { 878 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 880 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("proxy.server"))) { 881 `PATCH ( ex‹nsiÚs ); 882 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("proxy.debug"))) { 883 `PATCH ( debug ); 884 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("proxy.balance"))) { 885 `PATCH ( b®ªû ); 891 } } 892 #undeà PATCH 894 $SUBREQUEST_FUNC ( mod_´oxy_hªdË_sub»que¡ ) { 895 ¶ugš_d©a * p = p_d ; 897 hªdËr_ùx * hùx = cÚ -> ¶ugš_ùx [ p -> id ]; 898 d©a_´oxy * ho¡ ; 900 ià( NULL =ð hùx è HANDLER_GO_ON ; 902 `mod_´oxy_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 904 ho¡ = hùx ->host; 907 ià( cÚ -> mode !ð p -> id è HANDLER_GO_ON ; 910  `´oxy_wr™e_»que¡ ( ¤v , hùx )) { 911  HANDLER_ERROR : 912 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbdd", "proxy-server disabled:", 913 ho¡ ->host, 914 ho¡ -> pÜt , 915 hùx -> fd ); 918 ho¡ -> is_di§bËd = 1; 919 ho¡ -> di§bË_ts = ¤v -> cur_ts ; 921 `´oxy_cÚÃùiÚ_þo£ ( ¤v , hùx ); 924 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 925 cÚ -> mode = DIRECT ; 927 `jobli¡_­³nd ( ¤v , cÚ ); 934  HANDLER_WAIT_FOR_FD ; 935  HANDLER_WAIT_FOR_EVENT : 936  HANDLER_WAIT_FOR_EVENT ; 937  HANDLER_WAIT_FOR_FD : 938  HANDLER_WAIT_FOR_FD ; 943 ià( cÚ -> fže_¡¬‹d == 1) { 944  HANDLER_FINISHED ; 946  HANDLER_WAIT_FOR_EVENT ; 948 } } 950  hªdËr_t $´oxy_hªdË_fdev’t (* s , * ùx ,  »v’ts ) { 951 £rv” * ¤v = (£rv” *) s ; 952 hªdËr_ùx * hùx = ùx ; 953 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 954 ¶ugš_d©a * p = hùx ->plugin_data; 957 ià(( »v’ts & FDEVENT_IN ) && 958 hùx -> ¡©e =ð PROXY_STATE_READ ) { 960 ià( p -> cÚf . debug ) { 961 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 962 "´oxy: fdev’t-š", hùx -> ¡©e ); 965  `´oxy_demux_»¥Ú£ ( ¤v , hùx )) { 969 hùx -> ho¡ -> u§ge --; 972 `´oxy_cÚÃùiÚ_þo£ ( ¤v , hùx ); 974 `jobli¡_­³nd ( ¤v , cÚ ); 975  HANDLER_FINISHED ; 977 ià( cÚ -> fže_¡¬‹d == 0) { 979 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 980 cÚ -> h‰p_¡©us = 500; 981 cÚ -> mode = DIRECT ; 984 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 987 `jobli¡_­³nd ( ¤v , cÚ ); 988  HANDLER_FINISHED ; 992 ià( »v’ts & FDEVENT_OUT ) { 993 ià( p -> cÚf . debug ) { 994 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 995 "´oxy: fdev’t-out", hùx -> ¡©e ); 998 ià( hùx -> ¡©e =ð PROXY_STATE_CONNECT || 999 hùx -> ¡©e =ð PROXY_STATE_WRITE ) { 1005  `mod_´oxy_hªdË_sub»que¡ ( ¤v , cÚ , p ); 1007 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1008 "´oxy: out", hùx -> ¡©e ); 1013 ià( »v’ts & FDEVENT_HUP ) { 1014 ià( p -> cÚf . debug ) { 1015 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1016 "´oxy: fdev’t-hup", hùx -> ¡©e ); 1019 ià( hùx -> ¡©e =ð PROXY_STATE_CONNECT ) { 1027 `´oxy_cÚÃùiÚ_þo£ ( ¤v , hùx ); 1028 `jobli¡_­³nd ( ¤v , cÚ ); 1030 cÚ -> h‰p_¡©us = 503; 1031 cÚ -> mode = DIRECT ; 1033  HANDLER_FINISHED ; 1036 cÚ -> fže_fšished = 1; 1038 `´oxy_cÚÃùiÚ_þo£ ( ¤v , hùx ); 1039 `jobli¡_­³nd ( ¤v , cÚ ); 1040 } ià( »v’ts & FDEVENT_ERR ) { 1043 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "´oxy-FDEVENT_ERR, buˆnØHUP", »v’ts ); 1045 `jobli¡_­³nd ( ¤v , cÚ ); 1046 `´oxy_cÚÃùiÚ_þo£ ( ¤v , hùx ); 1049  HANDLER_FINISHED ; 1050 } } 1052  hªdËr_t $mod_´oxy_check_ex‹nsiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 1053 ¶ugš_d©a * p = p_d ; 1054 size_t s_Ën ; 1055  Ï¡_max = ULONG_MAX ; 1056  max_u§ge = INT_MAX ; 1057  ndx = -1; 1058 size_t k ; 1059 bufãr * â ; 1060 d©a_¬¿y * ex‹nsiÚ = NULL ; 1061 size_t ·th_šfo_off£t ; 1064 ià( cÚ -> fže_¡¬‹d =ð1è HANDLER_GO_ON ; 1066 `mod_´oxy_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 1068 â = cÚ -> uri . ·th ; 1070 ià( â -> u£d == 0) { 1071  HANDLER_ERROR ; 1074 s_Ën = â -> u£d - 1; 1077 ·th_šfo_off£t = 0; 1079 ià( p -> cÚf . debug ) { 1080 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "proxy - start"); 1084  k = 0; k < p -> cÚf . ex‹nsiÚs -> u£d ; k++) { 1085 size_t ù_Ën ; 1087 ex‹nsiÚ = ( d©a_¬¿y *) p -> cÚf . ex‹nsiÚs -> d©a [ k ]; 1089 ià( ex‹nsiÚ -> key -> u£d == 0) ; 1091 ù_Ën = ex‹nsiÚ -> key -> u£d - 1; 1093 ià( s_Ën < ù_Ën ) ; 1096 ià(*( ex‹nsiÚ -> key -> ±r ) == '/') { 1097 ià( `¡ºcmp ( â -> ±r , ex‹nsiÚ -> key ->±r, ù_Ën ) == 0) { 1098 ià( s_Ën > ù_Ën + 1) { 1099 * pi_off£t ; 1101 ià(0 !ð( pi_off£t = `¡rchr ( â -> ±r + ù_Ën + 1, '/'))) { 1102 ·th_šfo_off£t = pi_off£t - â -> ±r ; 1107 } ià(0 =ð `¡ºcmp ( â -> ±r + s_Ën - ù_Ën , ex‹nsiÚ -> key ->ptr, ct_len)) { 1113 ià( k =ð p -> cÚf . ex‹nsiÚs -> u£d ) { 1114  HANDLER_GO_ON ; 1117 ià( p -> cÚf . debug ) { 1118 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "proxy -ƒxt found"); 1121  p -> cÚf . b®ªû ) { 1122  PROXY_BALANCE_HASH : 1125 ià( p -> cÚf . debug ) { 1126 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1127 "´oxy - u£d hash b®ªcšg, ho¡s:", ex‹nsiÚ -> v®ue -> u£d ); 1130  k = 0, ndx = -1, Ï¡_max = ULONG_MAX ; k < ex‹nsiÚ -> v®ue -> u£d ; k++) { 1131 d©a_´oxy * ho¡ = (d©a_´oxy *) ex‹nsiÚ -> v®ue -> d©a [ k ]; 1132  cur_max ; 1134 ià( ho¡ -> is_di§bËd ) ; 1136 cur_max = `g’”©e_üc32c ( `CONST_BUF_LEN ( cÚ -> uri . ·th )) + 1137 `g’”©e_üc32c ( `CONST_BUF_LEN ( ho¡ ->host)) + 1138 `g’”©e_üc32c ( `CONST_BUF_LEN ( cÚ -> uri . authÜ™y )); 1140 ià( p -> cÚf . debug ) { 1141 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbbbd", 1143 cÚ -> uri . ·th , 1144 ho¡ ->host, 1145 cÚ -> uri . authÜ™y , 1146 cur_max ); 1149 ià(( Ï¡_max =ð ULONG_MAX ) || 1150 ( cur_max > Ï¡_max )) { 1151 Ï¡_max = cur_max ; 1153 ndx = k ; 1158  PROXY_BALANCE_FAIR : 1160 ià( p -> cÚf . debug ) { 1161 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1165  k = 0, ndx = -1, max_u§ge = INT_MAX ; k < ex‹nsiÚ -> v®ue -> u£d ; k++) { 1166 d©a_´oxy * ho¡ = (d©a_´oxy *) ex‹nsiÚ -> v®ue -> d©a [ k ]; 1168 ià( ho¡ -> is_di§bËd ) ; 1170 ià( ho¡ -> u§ge < max_u§ge ) { 1171 max_u§ge = ho¡ -> u§ge ; 1173 ndx = k ; 1178  PROXY_BALANCE_RR : 1180 ià( p -> cÚf . debug ) { 1181 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1186 `as£¹ ( ex‹nsiÚ -> v®ue -> u£d < INT_MAX ); 1188  k = 0, ndx = -1, max_u§ge = INT_MAX ; k < ex‹nsiÚ -> v®ue -> u£d ; k++) { 1189 d©a_´oxy * ho¡ = (d©a_´oxy *) ex‹nsiÚ -> v®ue -> d©a [ k ]; 1191 ià( ho¡ -> is_di§bËd ) ; 1194 ià( max_u§ge =ð INT_MAX ) { 1195 max_u§ge = k ; 1199 ià(() k > ho¡ -> Ï¡_u£d_ndx ) { 1200 ndx = k ; 1201 ho¡ -> Ï¡_u£d_ndx = k ; 1208 ià( ndx =ð-1 && max_u§ge !ð INT_MAX ) { 1209 ndx = max_u§ge ; 1218 ià( ndx != -1) { 1219 d©a_´oxy * ho¡ = (d©a_´oxy *) ex‹nsiÚ -> v®ue -> d©a [ ndx ]; 1227 hªdËr_ùx * hùx ; 1228 hùx = `hªdËr_ùx_š™ (); 1230 hùx -> ·th_šfo_off£t =…ath_info_offset; 1231 hùx -> »mÙe_cÚn = cÚ ; 1232 hùx -> ¶ugš_d©a = p ; 1233 hùx -> ho¡ = host; 1235 cÚ -> ¶ugš_ùx [ p -> id ] = hùx ; 1237 ho¡ -> u§ge ++; 1239 cÚ -> mode = p -> id ; 1241 ià( p -> cÚf . debug ) { 1242 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbd", 1244 ho¡ ->ho¡, ho¡-> pÜt ); 1247  HANDLER_GO_ON ; 1250 cÚ -> h‰p_¡©us = 500; 1252 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 1254 â ); 1256  HANDLER_FINISHED ; 1258  HANDLER_GO_ON ; 1259 } } 1261  hªdËr_t $mod_´oxy_cÚÃùiÚ_þo£_ÿÎback ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 1262 ¶ugš_d©a * p = p_d ; 1264 `´oxy_cÚÃùiÚ_þo£ ( ¤v , cÚ -> ¶ugš_ùx [ p -> id ]); 1266  HANDLER_GO_ON ; 1267 } } 1275 $TRIGGER_FUNC ( mod_´oxy_Œigg” ) { 1276 ¶ugš_d©a * p = p_d ; 1278 ià( p -> cÚfig_¡Üage ) { 1279 size_t i , n , k ; 1280  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 1281 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 1283 ià(! s ) ; 1287  k = 0; k < s -> ex‹nsiÚs -> u£d ; k++) { 1288 d©a_¬¿y * ex‹nsiÚ = (d©a_¬¿y *) s -> ex‹nsiÚs -> d©a [ k ]; 1291  n = 0;‚ < ex‹nsiÚ -> v®ue -> u£d ;‚++) { 1292 d©a_´oxy * ho¡ = (d©a_´oxy *) ex‹nsiÚ -> v®ue -> d©a [ n ]; 1294 ià(! ho¡ -> is_di§bËd || 1295 ¤v -> cur_ts - ho¡ -> di§bË_ts < 5) ; 1297 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbd", 1299 ho¡ ->ho¡, ho¡-> pÜt ); 1301 ho¡ -> is_di§bËd = 0; 1307  HANDLER_GO_ON ; 1308 } } 1311  $mod_´oxy_¶ugš_š™ ( ¶ugš * p ) { 1312 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 1313 p -> Çme = `bufãr_š™_¡ršg ("proxy"); 1315 p -> š™ = mod_´oxy_š™ ; 1316 p -> þ—nup = mod_´oxy_ä“ ; 1317 p -> £t_deçuÉs = mod_´oxy_£t_deçuÉs ; 1318 p -> cÚÃùiÚ_»£t = mod_´oxy_cÚÃùiÚ_þo£_ÿÎback ; 1319 p -> hªdË_cÚÃùiÚ_þo£ = mod_´oxy_cÚÃùiÚ_þo£_ÿÎback ; 1320 p -> hªdË_uri_þ—n = mod_´oxy_check_ex‹nsiÚ ; 1321 p -> hªdË_sub»que¡ = mod_´oxy_hªdË_sub»que¡ ; 1322 p -> hªdË_Œigg” = mod_´oxy_Œigg” ; 1324 p -> d©a = NULL ; 1327 } } @src/mod_redirect.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 5  ~"ba£.h " 6  ~"log.h " 7  ~"bufãr.h " 9  ~"¶ugš.h " 10  ~"»¥Ú£.h " 12 #ifdeà HAVE_CONFIG_H 13  ~"cÚfig.h " 17 püe_keyv®ue_bufãr * m»dœeù ; 18 d©a_cÚfig * mcÚ‹xt ; 19 } t¶ugš_cÚfig ; 22 mPLUGIN_DATA ; 23 bufãr * mm©ch_buf ; 24 bufãr * mloÿtiÚ ; 26 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 28 ¶ugš_cÚfig mcÚf ; 29 } t¶ugš_d©a ; 31 $INIT_FUNC ( mod_»dœeù_š™ ) { 32 ¶ugš_d©a * p ; 34 p = `ÿÎoc (1, (*p)); 36 p -> m©ch_buf = `bufãr_š™ (); 37 p -> loÿtiÚ = `bufãr_š™ (); 39  p ; 40 } } 42 $FREE_FUNC ( mod_»dœeù_ä“ ) { 43 ¶ugš_d©a * p = p_d ; 45 ià(! p è HANDLER_GO_ON ; 47 ià( p -> cÚfig_¡Üage ) { 48 size_t i ; 49  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 50 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 52 `püe_keyv®ue_bufãr_ä“ ( s -> »dœeù ); 54 `ä“ ( s ); 56 `ä“ ( p -> cÚfig_¡Üage ); 60 `bufãr_ä“ ( p -> m©ch_buf ); 61 `bufãr_ä“ ( p -> loÿtiÚ ); 63 `ä“ ( p ); 65  HANDLER_GO_ON ; 66 } } 68 $SETDEFAULTS_FUNC ( mod_»dœeù_£t_deçuÉs ) { 69 ¶ugš_d©a * p = p_d ; 70 d©a_un£t * du ; 71 size_t i = 0; 73 cÚfig_v®ues_t cv [] = { 74 { "u¾.»dœeù", NULL , T_CONFIG_LOCAL , T_CONFIG_SCOPE_CONNECTION }, 75 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 78 ià(! p è HANDLER_ERROR ; 81 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 83  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 84 ¶ugš_cÚfig * s ; 85 size_t j ; 86 ¬¿y * ÿ ; 87 d©a_¬¿y * da = (d©a_¬¿y *) du ; 89 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 90 s -> »dœeù = `püe_keyv®ue_bufãr_š™ (); 92 cv [0]. de¡š©iÚ = s -> »dœeù ; 94 p -> cÚfig_¡Üage [ i ] = s ; 95 ÿ = (( d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue ; 97 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , ÿ , cv )) { 98  HANDLER_ERROR ; 101 ià( NULL =ð( du = `¬¿y_g‘_–em’t ( ÿ , "url.redirect"))) { 106 ià( du -> ty³ !ð TYPE_ARRAY ) { 107 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 110  HANDLER_ERROR ; 113 da = ( d©a_¬¿y *) du ; 115  j = 0; j < da -> v®ue -> u£d ; j++) { 116 ià( da -> v®ue -> d©a [ j ]-> ty³ !ð TYPE_STRING ) { 117 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sssbs", 120 "[", da -> v®ue -> d©a [ j ]-> key , "](string)"); 122  HANDLER_ERROR ; 125 ià(0 !ð `püe_keyv®ue_bufãr_­³nd ( s -> »dœeù , 126 (( d©a_¡ršg *)( da -> v®ue -> d©a [ j ]))-> key -> ±r , 127 (( d©a_¡ršg *)( da -> v®ue -> d©a [ j ]))->v®ue-> ±r )) { 129 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 130 "püe-compžçžed fÜ", da -> v®ue -> d©a [ j ]-> key ); 135  HANDLER_GO_ON ; 136 } } 137 #ifdeà HAVE_PCRE_H 138  $mod_»dœeù_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 139 size_t i , j ; 140 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 142 p -> cÚf . »dœeù = s ->redirect; 143 p -> cÚf . cÚ‹xt = NULL ; 146  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 147 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 148 s = p -> cÚfig_¡Üage [ i ]; 151 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 154  j = 0; j < dc -> v®ue -> u£d ; j++) { 155 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 157 ià(0 =ð `¡rcmp ( du -> key -> ±r , "url.redirect")) { 158 p -> cÚf . »dœeù = s ->redirect; 159 p -> cÚf . cÚ‹xt = dc ; 165 } } 167  hªdËr_t $mod_»dœeù_uri_hªdËr ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d©a ) { 168 #ifdeà HAVE_PCRE_H 169 ¶ugš_d©a * p = p_d©a ; 170 size_t i ; 179 `mod_»dœeù_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 181 `bufãr_cÝy_¡ršg_bufãr ( p -> m©ch_buf , cÚ -> »que¡ . uri ); 183  i = 0; i < p -> cÚf . »dœeù -> u£d ; i++) { 184 püe * m©ch ; 185 püe_exŒa * exŒa ; 186 cÚ¡ * ·‰”n ; 187 size_t ·‰”n_Ën ; 188  n ; 189 püe_keyv®ue * kv = p -> cÚf . »dœeù ->kv[ i ]; 190  #N 10 ) 191  ovec [ N * 3]; 193 m©ch = kv -> key ; 194 exŒa = kv -> key_exŒa ; 195 ·‰”n = kv -> v®ue -> ±r ; 196 ·‰”n_Ën = kv -> v®ue -> u£d - 1; 198 ià(( n = `püe_exec ( m©ch , exŒa , p -> m©ch_buf -> ±r ,…->m©ch_buf-> u£d - 1, 0, 0, ovec , 3 * N )) < 0) { 199 ià( n !ð PCRE_ERROR_NOMATCH ) { 200 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 201 "executiÚƒ¼Ü whžm©chšg: ", n ); 202  HANDLER_ERROR ; 205 cÚ¡ ** li¡ ; 206 size_t ¡¬t , ’d ; 207 size_t k ; 210 `püe_g‘_sub¡ršg_li¡ ( p -> m©ch_buf -> ±r , ovec , n , & li¡ ); 214 `bufãr_»£t ( p -> loÿtiÚ ); 216 ¡¬t = 0; ’d = ·‰”n_Ën ; 217  k = 0; k < ·‰”n_Ën ; k++) { 218 ià(( ·‰”n [ k ] == '$' ||…attern[k] == '%') && 219 `isdig™ (() ·‰”n [ k + 1])) { 222 size_t num = ·‰”n [ k + 1] - '0'; 224 ’d = k ; 226 `bufãr_­³nd_¡ršg_Ën ( p -> loÿtiÚ , ·‰”n + ¡¬t , ’d - start); 228 ià( ·‰”n [ k ] == '$') { 230 ià( num < ( size_t ) n ) { 231 `bufãr_­³nd_¡ršg ( p -> loÿtiÚ , li¡ [ num ]); 233 } ià( p -> cÚf . cÚ‹xt =ð NULL ) { 235 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 237 kv -> v®ue ); 239 `cÚfig_­³nd_cÚd_m©ch_bufãr ( cÚ , p -> cÚf . cÚ‹xt ,…-> loÿtiÚ , num ); 242 k ++; 243 ¡¬t = k + 1; 247 `bufãr_­³nd_¡ršg_Ën ( p -> loÿtiÚ , ·‰”n + ¡¬t , ·‰”n_Ën - start); 249 `püe_ä“ ( li¡ ); 251 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("LoÿtiÚ"), `CONST_BUF_LEN ( p -> loÿtiÚ )); 253 cÚ -> h‰p_¡©us = 301; 254 cÚ -> fže_fšished = 1; 256  HANDLER_FINISHED ; 259 #undeà N 262 `UNUSED ( ¤v ); 263 `UNUSED ( cÚ ); 264 `UNUSED ( p_d©a ); 267  HANDLER_GO_ON ; 268 } } 271  $mod_»dœeù_¶ugš_š™ ( ¶ugš * p ) { 272 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 273 p -> Çme = `bufãr_š™_¡ršg ("redirect"); 275 p -> š™ = mod_»dœeù_š™ ; 276 p -> hªdË_uri_þ—n = mod_»dœeù_uri_hªdËr ; 277 p -> £t_deçuÉs = mod_»dœeù_£t_deçuÉs ; 278 p -> þ—nup = mod_»dœeù_ä“ ; 280 p -> d©a = NULL ; 283 } } @src/mod_rewrite.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 5  ~"ba£.h " 6  ~"log.h " 7  ~"bufãr.h " 9  ~"¶ugš.h " 11 #ifdeà HAVE_CONFIG_H 12  ~"cÚfig.h " 16 #ifdeà HAVE_PCRE_H 17 püe * mkey ; 20 bufãr * mv®ue ; 22  mÚû ; 23 } t»wr™e_ruË ; 26 »wr™e_ruË ** m±r ; 28 size_t mu£d ; 29 size_t msize ; 30 } t»wr™e_ruË_bufãr ; 33 »wr™e_ruË_bufãr * m»wr™e ; 34 d©a_cÚfig * mcÚ‹xt ; 35 } t¶ugš_cÚfig ; 38 ’um { mREWRITE_STATE_UNSET , mREWRITE_STATE_FINISHED } m¡©e ; 39  mloÝs ; 40 } thªdËr_ùx ; 43 mPLUGIN_DATA ; 44 bufãr * mm©ch_buf ; 46 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 48 ¶ugš_cÚfig mcÚf ; 49 } t¶ugš_d©a ; 51  hªdËr_ùx * $hªdËr_ùx_š™ () { 52 hªdËr_ùx * hùx ; 54 hùx = `ÿÎoc (1, (*hctx)); 56 hùx -> ¡©e = REWRITE_STATE_UNSET ; 57 hùx -> loÝs = 0; 59  hùx ; 60 } } 62  $hªdËr_ùx_ä“ ( hªdËr_ùx * hùx ) { 63 `ä“ ( hùx ); 64 } } 66 »wr™e_ruË_bufãr * $»wr™e_ruË_bufãr_š™ () { 67 »wr™e_ruË_bufãr * kvb ; 69 kvb = `ÿÎoc (1, (*kvb)); 71  kvb ; 72 } } 74  $»wr™e_ruË_bufãr_­³nd ( »wr™e_ruË_bufãr * kvb , bufãr * key , bufã¸* v®ue ,  Úû ) { 75 #ifdeà HAVE_PCRE_H 76 size_t i ; 77 cÚ¡ * ”½Œ ; 78  ”roff ; 80 ià(! key )  -1; 82 ià( kvb -> size == 0) { 83 kvb -> size = 4; 84 kvb -> u£d = 0; 86 kvb -> ±r = `m®loc (kvb-> size * (*kvb->ptr)); 88  i = 0; i < kvb -> size ; i++) { 89 kvb -> ±r [ i ] = `ÿÎoc (1, (**kvb->ptr)); 91 } ià( kvb -> u£d =ðkvb-> size ) { 92 kvb -> size += 4; 94 kvb -> ±r = `»®loc (kvb->±r, kvb-> size * (*kvb->ptr)); 96  i = kvb -> u£d ; i < kvb-> size ; i++) { 97 kvb -> ±r [ i ] = `ÿÎoc (1, (**kvb->ptr)); 101 ià( NULL =ð( kvb -> ±r [kvb-> u£d ]-> key = `püe_compže (key->ptr, 102 0, & ”½Œ , & ”roff , NULL ))) { 107 kvb -> ±r [kvb-> u£d ]-> v®ue = `bufãr_š™ (); 108 `bufãr_cÝy_¡ršg_bufãr ( kvb -> ±r [kvb-> u£d ]-> v®ue , value); 109 kvb -> ±r [kvb-> u£d ]-> Úû = once; 111 kvb -> u£d ++; 115 `UNUSED ( kvb ); 116 `UNUSED ( v®ue ); 117 `UNUSED ( Úû ); 118 `UNUSED ( key ); 122 } } 124  $»wr™e_ruË_bufãr_ä“ ( »wr™e_ruË_bufãr * kvb ) { 125 #ifdeà HAVE_PCRE_H 126 size_t i ; 128  i = 0; i < kvb -> size ; i++) { 129 ià( kvb -> ±r [ i ]-> key è `püe_ä“ (kvb->ptr[i]->key); 130 ià( kvb -> ±r [ i ]-> v®ue è `bufãr_ä“ (kvb->ptr[i]->value); 131 `ä“ ( kvb -> ±r [ i ]); 134 ià( kvb -> ±r è `ä“ (kvb->ptr); 137 `ä“ ( kvb ); 138 } } 141 $INIT_FUNC ( mod_»wr™e_š™ ) { 142 ¶ugš_d©a * p ; 144 p = `ÿÎoc (1, (*p)); 146 p -> m©ch_buf = `bufãr_š™ (); 148  p ; 149 } } 151 $FREE_FUNC ( mod_»wr™e_ä“ ) { 152 ¶ugš_d©a * p = p_d ; 154 `UNUSED ( ¤v ); 156 ià(! p è HANDLER_GO_ON ; 158 `bufãr_ä“ ( p -> m©ch_buf ); 159 ià( p -> cÚfig_¡Üage ) { 160 size_t i ; 161  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 162 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 163 `»wr™e_ruË_bufãr_ä“ ( s -> »wr™e ); 165 `ä“ ( s ); 167 `ä“ ( p -> cÚfig_¡Üage ); 170 `ä“ ( p ); 172  HANDLER_GO_ON ; 173 } } 175  $·r£_cÚfig_’Œy ( £rv” * ¤v , ¶ugš_cÚfig * s , ¬¿y * ÿ , cÚ¡ * ÝtiÚ ,  Úû ) { 176 d©a_un£t * du ; 178 ià( NULL !ð( du = `¬¿y_g‘_–em’t ( ÿ , ÝtiÚ ))) { 179 d©a_¬¿y * da = (d©a_¬¿y *) du ; 180 size_t j ; 182 ià( du -> ty³ !ð TYPE_ARRAY ) { 183 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 184 "uÃx³ùedy³ fÜ key: ", ÝtiÚ , "array of strings"); 186  HANDLER_ERROR ; 189 da = ( d©a_¬¿y *) du ; 191  j = 0; j < da -> v®ue -> u£d ; j++) { 192 ià( da -> v®ue -> d©a [ j ]-> ty³ !ð TYPE_STRING ) { 193 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sssbs", 195 ÝtiÚ , 196 "[", da -> v®ue -> d©a [ j ]-> key , "](string)"); 198  HANDLER_ERROR ; 201 ià(0 !ð `»wr™e_ruË_bufãr_­³nd ( s -> »wr™e , 202 (( d©a_¡ršg *)( da -> v®ue -> d©a [ j ]))-> key , 203 (( d©a_¡ršg *)( da -> v®ue -> d©a [ j ]))->value, 204 Úû )) { 205 #ifdeà HAVE_PCRE_H 206 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 207 "püe-compžçžed fÜ", da -> v®ue -> d©a [ j ]-> key ); 209 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 217 } } 219 $SETDEFAULTS_FUNC ( mod_»wr™e_£t_deçuÉs ) { 220 ¶ugš_d©a * p = p_d ; 221 size_t i = 0; 223 cÚfig_v®ues_t cv [] = { 224 { "u¾.»wr™e-»³©", NULL , T_CONFIG_LOCAL , T_CONFIG_SCOPE_CONNECTION }, 225 { "u¾.»wr™e-Úû", NULL , T_CONFIG_LOCAL , T_CONFIG_SCOPE_CONNECTION }, 233 { "u¾.»wr™e", NULL , T_CONFIG_LOCAL , T_CONFIG_SCOPE_CONNECTION }, 234 { "u¾.»wr™e-fš®", NULL , T_CONFIG_LOCAL , T_CONFIG_SCOPE_CONNECTION }, 235 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 238 ià(! p è HANDLER_ERROR ; 241 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 243  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 244 ¶ugš_cÚfig * s ; 245 ¬¿y * ÿ ; 247 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 248 s -> »wr™e = `»wr™e_ruË_bufãr_š™ (); 250 cv [0]. de¡š©iÚ = s -> »wr™e ; 251 cv [1]. de¡š©iÚ = s -> »wr™e ; 252 cv [2]. de¡š©iÚ = s -> »wr™e ; 254 p -> cÚfig_¡Üage [ i ] = s ; 255 ÿ = (( d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue ; 257 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , ÿ , cv )) { 258  HANDLER_ERROR ; 261 `·r£_cÚfig_’Œy ( ¤v , s , ÿ , "url.rewrite-once", 1); 262 `·r£_cÚfig_’Œy ( ¤v , s , ÿ , "url.rewrite-final", 1); 263 `·r£_cÚfig_’Œy ( ¤v , s , ÿ , "url.rewrite", 1); 264 `·r£_cÚfig_’Œy ( ¤v , s , ÿ , "url.rewrite-repeat", 0); 267  HANDLER_GO_ON ; 268 } } 269 #ifdeà HAVE_PCRE_H 270  $mod_»wr™e_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 271 size_t i , j ; 272 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 274 p -> cÚf . »wr™e = s ->rewrite; 275 p -> cÚf . cÚ‹xt = NULL ; 278  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 279 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 280 s = p -> cÚfig_¡Üage [ i ]; 282 ià( COMP_HTTP_URL =ð dc -> comp ) ; 285 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 288  j = 0; j < dc -> v®ue -> u£d ; j++) { 289 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 291 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("url.rewrite"))) { 292 p -> cÚf . »wr™e = s ->rewrite; 293 p -> cÚf . cÚ‹xt = dc ; 294 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("url.rewrite-once"))) { 295 p -> cÚf . »wr™e = s ->rewrite; 296 p -> cÚf . cÚ‹xt = dc ; 297 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("url.rewrite-repeat"))) { 298 p -> cÚf . »wr™e = s ->rewrite; 299 p -> cÚf . cÚ‹xt = dc ; 300 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("url.rewrite-final"))) { 301 p -> cÚf . »wr™e = s ->rewrite; 302 p -> cÚf . cÚ‹xt = dc ; 308 } } 310 $URIHANDLER_FUNC ( mod_»wr™e_cÚ_»£t ) { 311 ¶ugš_d©a * p = p_d ; 313 `UNUSED ( ¤v ); 315 ià( cÚ -> ¶ugš_ùx [ p -> id ]) { 316 `hªdËr_ùx_ä“ ( cÚ -> ¶ugš_ùx [ p -> id ]); 317 cÚ -> ¶ugš_ùx [ p -> id ] = NULL ; 320  HANDLER_GO_ON ; 321 } } 323 $URIHANDLER_FUNC ( mod_»wr™e_uri_hªdËr ) { 324 #ifdeà HAVE_PCRE_H 325 ¶ugš_d©a * p = p_d ; 326 size_t i ; 327 hªdËr_ùx * hùx ; 336 ià( cÚ -> ¶ugš_ùx [ p -> id ]) { 337 hùx = cÚ -> ¶ugš_ùx [ p -> id ]; 339 ià( hùx -> loÝs ++ > 100) { 340 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 343  HANDLER_ERROR ; 346 ià( hùx -> ¡©e =ð REWRITE_STATE_FINISHED è HANDLER_GO_ON ; 349 `mod_»wr™e_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 351 ià(! p -> cÚf . »wr™e è HANDLER_GO_ON ; 353 `bufãr_cÝy_¡ršg_bufãr ( p -> m©ch_buf , cÚ -> »que¡ . uri ); 355  i = 0; i < p -> cÚf . »wr™e -> u£d ; i++) { 356 püe * m©ch ; 357 cÚ¡ * ·‰”n ; 358 size_t ·‰”n_Ën ; 359  n ; 360 »wr™e_ruË * ruË = p -> cÚf . »wr™e -> ±r [ i ]; 361  #N 10 ) 362  ovec [ N * 3]; 364 m©ch = ruË -> key ; 365 ·‰”n = ruË -> v®ue -> ±r ; 366 ·‰”n_Ën = ruË -> v®ue -> u£d - 1; 368 ià(( n = `püe_exec ( m©ch , NULL , p -> m©ch_buf -> ±r ,…->m©ch_buf-> u£d - 1, 0, 0, ovec , 3 * N )) < 0) { 369 ià( n !ð PCRE_ERROR_NOMATCH ) { 370 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 371 "executiÚƒ¼Ü whžm©chšg: ", n ); 372  HANDLER_ERROR ; 375 cÚ¡ ** li¡ ; 376 size_t ¡¬t , ’d ; 377 size_t k ; 380 `püe_g‘_sub¡ršg_li¡ ( p -> m©ch_buf -> ±r , ovec , n , & li¡ ); 384 `bufãr_»£t ( cÚ -> »que¡ . uri ); 386 ¡¬t = 0; ’d = ·‰”n_Ën ; 387  k = 0; k < ·‰”n_Ën ; k++) { 388 ià(( ·‰”n [ k ] == '$' ||…attern[k] == '%') && 389 `isdig™ (() ·‰”n [ k + 1])) { 392 size_t num = ·‰”n [ k + 1] - '0'; 394 ’d = k ; 396 `bufãr_­³nd_¡ršg_Ën ( cÚ -> »que¡ . uri , ·‰”n + ¡¬t , ’d - start); 398 ià( ·‰”n [ k ] == '$') { 400 ià( num < ( size_t ) n ) { 401 `bufãr_­³nd_¡ršg ( cÚ -> »que¡ . uri , li¡ [ num ]); 403 } ià( p -> cÚf . cÚ‹xt =ð NULL ) { 405 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 407 ruË -> v®ue ); 410 `cÚfig_­³nd_cÚd_m©ch_bufãr ( cÚ , p -> cÚf . cÚ‹xt , cÚ-> »que¡ . uri , num ); 413 k ++; 414 ¡¬t = k + 1; 418 `bufãr_­³nd_¡ršg_Ën ( cÚ -> »que¡ . uri , ·‰”n + ¡¬t , ·‰”n_Ën - start); 420 `püe_ä“ ( li¡ ); 422 hùx = `hªdËr_ùx_š™ (); 424 cÚ -> ¶ugš_ùx [ p -> id ] = hùx ; 426 ià( ruË -> Úû è hùx -> ¡©e = REWRITE_STATE_FINISHED ; 428  HANDLER_COMEBACK ; 431 #undeà N 434 `UNUSED ( ¤v ); 435 `UNUSED ( cÚ ); 436 `UNUSED ( p_d ); 439  HANDLER_GO_ON ; 440 } } 442  $mod_»wr™e_¶ugš_š™ ( ¶ugš * p ) { 443 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 444 p -> Çme = `bufãr_š™_¡ršg ("rewrite"); 446 p -> š™ = mod_»wr™e_š™ ; 450 p -> hªdË_uri_¿w = mod_»wr™e_uri_hªdËr ; 451 p -> £t_deçuÉs = mod_»wr™e_£t_deçuÉs ; 452 p -> þ—nup = mod_»wr™e_ä“ ; 453 p -> cÚÃùiÚ_»£t = mod_»wr™e_cÚ_»£t ; 455 p -> d©a = NULL ; 458 } } @src/mod_rrdtool.c 1  #_GNU_SOURCE ) 2  ~ 4  ~ 5  ~<¡dlib.h > 6  ~<¡dio.h > 7  ~<¡ršg.h > 8  ~ 9  ~<”ºo.h > 10  ~ 12  ~"£rv”.h " 13  ~"cÚÃùiÚs.h " 14  ~"»¥Ú£.h " 15  ~"cÚÃùiÚs.h " 16  ~"log.h " 18  ~"¶ugš.h " 19 #ifdeà HAVE_FORK 21  ~ 24 bufãr * m·th_¼dtoÞ_bš ; 25 bufãr * m·th_¼d ; 27  m»que¡s , * m»que¡s_±r ; 28  mby‹s_wr™‹n , * mby‹s_wr™‹n_±r ; 29  mby‹s_»ad , * mby‹s_»ad_±r ; 30 } t¶ugš_cÚfig ; 33 mPLUGIN_DATA ; 35 bufãr * mcmd ; 36 bufãr * m»¥ ; 38  m»ad_fd , mwr™e_fd ; 39 pid_t m¼dtoÞ_pid ; 41  m¼dtoÞ_rušg ; 43 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 44 ¶ugš_cÚfig mcÚf ; 45 } t¶ugš_d©a ; 47 $INIT_FUNC ( mod_¼d_š™ ) { 48 ¶ugš_d©a * p ; 50 p = `ÿÎoc (1, (*p)); 52 p -> »¥ = `bufãr_š™ (); 53 p -> cmd = `bufãr_š™ (); 55  p ; 56 } } 58 $FREE_FUNC ( mod_¼d_ä“ ) { 59 ¶ugš_d©a * p = p_d ; 60 size_t i ; 62 ià(! p è HANDLER_GO_ON ; 64 ià( p -> cÚfig_¡Üage ) { 65  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 66 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 68 `bufãr_ä“ ( s -> ·th_¼dtoÞ_bš ); 69 `bufãr_ä“ ( s -> ·th_¼d ); 71 `ä“ ( s ); 74 `bufãr_ä“ ( p -> cmd ); 75 `bufãr_ä“ ( p -> »¥ ); 77 `ä“ ( p -> cÚfig_¡Üage ); 79 ià( p -> ¼dtoÞ_pid ) { 80  ¡©us ; 81 `þo£ ( p -> »ad_fd ); 82 `þo£ ( p -> wr™e_fd ); 83 #ifdeà HAVE_FORK 85 `wa™pid ( p -> ¼dtoÞ_pid , & ¡©us , 0); 89 `ä“ ( p ); 91  HANDLER_GO_ON ; 92 } } 94  $mod_¼d_ü—‹_pe ( £rv” * ¤v , ¶ugš_d©a * p ) { 95 pid_t pid ; 97  to_¼dtoÞ_fds [2]; 98  äom_¼dtoÞ_fds [2]; 99 #ifdeà HAVE_FORK 100 ià( `pe ( to_¼dtoÞ_fds )) { 101 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 102 "pçžed: ", `¡»¼Ü ( ”ºo )); 106 ià( `pe ( äom_¼dtoÞ_fds )) { 107 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 108 "pçžed: ", `¡»¼Ü ( ”ºo )); 113  pid = `fÜk ()) { 116 ** ¬gs ; 117  ¬gc ; 118  i = 0; 119 * dash = "-"; 122 `þo£ ( STDOUT_FILENO ); 123 `dup2 ( äom_¼dtoÞ_fds [1], STDOUT_FILENO ); 124 `þo£ ( äom_¼dtoÞ_fds [1]); 126 `þo£ ( äom_¼dtoÞ_fds [0]); 129 `þo£ ( STDIN_FILENO ); 130 `dup2 ( to_¼dtoÞ_fds [0], STDIN_FILENO ); 131 `þo£ ( to_¼dtoÞ_fds [0]); 133 `þo£ ( to_¼dtoÞ_fds [1]); 135 `þo£ ( STDERR_FILENO ); 137 ià( ¤v -> ”rÜlog_mode =ð ERRORLOG_FILE ) { 138 `dup2 ( ¤v -> ”rÜlog_fd , STDERR_FILENO ); 139 `þo£ ( ¤v -> ”rÜlog_fd ); 143 ¬gc = 3; 144 ¬gs = `m®loc ((*¬gsè* ¬gc ); 145 i = 0; 147 ¬gs [ i ++] = p -> cÚf . ·th_¼dtoÞ_bš -> ±r ; 148 ¬gs [ i ++] = dash ; 149 ¬gs [ i ++] = NULL ; 152  i = 3; i < 256; i++) { 153 `þo£ ( i ); 157 `execv ( ¬gs [0],‡rgs); 159 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", "¥awšg„rdtoÞ fažed: ", `¡»¼Ü ( ”ºo ), ¬gs [0]); 162 `SEGFAULT (); 167 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "fÜk fažed: ", `¡»¼Ü ( ”ºo )); 172 `þo£ ( äom_¼dtoÞ_fds [1]); 173 `þo£ ( to_¼dtoÞ_fds [0]); 176 p -> wr™e_fd = to_¼dtoÞ_fds [1]; 177 p -> »ad_fd = äom_¼dtoÞ_fds [0]; 178 p -> ¼dtoÞ_pid = pid ; 188 } } 190  $mod_¼dtoÞ_ü—‹_¼d ( £rv” * ¤v , ¶ugš_d©a * p , ¶ugš_cÚfig * s ) { 191  ¡© ¡ ; 194 ià(0 =ð `¡© ( s -> ·th_¼d -> ±r , & ¡ )) { 196 ià(! `S_ISREG ( ¡ . ¡_mode )) { 197 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 198 "nÙ‡„eguϸfže:", s -> ·th_¼d ); 199  HANDLER_ERROR ; 202  r ; 205 `BUFFER_COPY_STRING_CONST ( p -> cmd , "create "); 206 `bufãr_­³nd_¡ršg_bufãr ( p -> cmd , s -> ·th_¼d ); 207 `bufãr_­³nd_¡ršg ( p -> cmd , " --step 60 "); 208 `bufãr_­³nd_¡ršg ( p -> cmd , "DS:InOctets:ABSOLUTE:600:U:U "); 209 `bufãr_­³nd_¡ršg ( p -> cmd , "DS:OutOctets:ABSOLUTE:600:U:U "); 210 `bufãr_­³nd_¡ršg ( p -> cmd , "DS:Requests:ABSOLUTE:600:U:U "); 211 `bufãr_­³nd_¡ršg ( p -> cmd , "RRA:AVERAGE:0.5:1:600 "); 212 `bufãr_­³nd_¡ršg ( p -> cmd , "RRA:AVERAGE:0.5:6:700 "); 213 `bufãr_­³nd_¡ršg ( p -> cmd , "RRA:AVERAGE:0.5:24:775 "); 214 `bufãr_­³nd_¡ršg ( p -> cmd , "RRA:AVERAGE:0.5:288:797 "); 215 `bufãr_­³nd_¡ršg ( p -> cmd , "RRA:MAX:0.5:1:600 "); 216 `bufãr_­³nd_¡ršg ( p -> cmd , "RRA:MAX:0.5:6:700 "); 217 `bufãr_­³nd_¡ršg ( p -> cmd , "RRA:MAX:0.5:24:775 "); 218 `bufãr_­³nd_¡ršg ( p -> cmd , "RRA:MAX:0.5:288:797 "); 219 `bufãr_­³nd_¡ršg ( p -> cmd , "RRA:MIN:0.5:1:600 "); 220 `bufãr_­³nd_¡ršg ( p -> cmd , "RRA:MIN:0.5:6:700 "); 221 `bufãr_­³nd_¡ršg ( p -> cmd , "RRA:MIN:0.5:24:775 "); 222 `bufãr_­³nd_¡ršg ( p -> cmd , "RRA:MIN:0.5:288:797\n"); 224 ià(-1 =ð( r = `wr™e ( p -> wr™e_fd ,…-> cmd -> ±r ,…->cmd-> u£d - 1))) { 225 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 226 "¼dtoÞ-wr™e: fažed", `¡»¼Ü ( ”ºo )); 228  HANDLER_ERROR ; 231 `bufãr_´•¬e_cÝy ( p -> »¥ , 4096); 232 ià(-1 =ð( r = `»ad ( p -> »ad_fd ,…-> »¥ -> ±r ,…->»¥-> size ))) { 233 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 234 "¼dtoÞ-»ad: fažed", `¡»¼Ü ( ”ºo )); 236  HANDLER_ERROR ; 239 p -> »¥ -> u£d = r ; 241 ià( p -> »¥ -> ±r [0] != 'O' || 242 p -> »¥ -> ±r [1] != 'K') { 243 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbb", 244 "¼dtoÞ-»¥Ú£:", p -> cmd ,…-> »¥ ); 246  HANDLER_ERROR ; 250  HANDLER_GO_ON ; 251 } } 253  #PATCH ( x ) \ 254 p -> cÚf . x = s ->x; ) 255  $mod_¼d_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 256 size_t i , j ; 257 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 259 `PATCH ( ·th_¼dtoÞ_bš ); 260 `PATCH ( ·th_¼d ); 262 p -> cÚf . by‹s_wr™‹n_±r = &( s -> by‹s_wr™‹n ); 263 p -> cÚf . by‹s_»ad_±r = &( s -> by‹s_»ad ); 264 p -> cÚf . »que¡s_±r = &( s -> »que¡s ); 267  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 268 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 269 s = p -> cÚfig_¡Üage [ i ]; 272 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 275  j = 0; j < dc -> v®ue -> u£d ; j++) { 276 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 278 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("rrdtool.db-name"))) { 279 `PATCH ( ·th_¼d ); 282 p -> cÚf . by‹s_wr™‹n_±r = &( s -> by‹s_wr™‹n ); 283 p -> cÚf . by‹s_»ad_±r = &( s -> by‹s_»ad ); 284 p -> cÚf . »que¡s_±r = &( s -> »que¡s ); 290 } } 291 #undeà PATCH 293 $SETDEFAULTS_FUNC ( mod_¼d_£t_deçuÉs ) { 294 ¶ugš_d©a * p = p_d ; 295 size_t i ; 297 cÚfig_v®ues_t cv [] = { 298 { "¼dtoÞ.bš¬y", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_SERVER }, 299 { "¼dtoÞ.db-Çme", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 300 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 303 ià(! p è HANDLER_ERROR ; 305 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 307  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 308 ¶ugš_cÚfig * s ; 310 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 311 s -> ·th_¼dtoÞ_bš = `bufãr_š™ (); 312 s -> ·th_¼d = `bufãr_š™ (); 313 s -> »que¡s = 0; 314 s -> by‹s_wr™‹n = 0; 315 s -> by‹s_»ad = 0; 317 cv [0]. de¡š©iÚ = s -> ·th_¼dtoÞ_bš ; 318 cv [1]. de¡š©iÚ = s -> ·th_¼d ; 320 p -> cÚfig_¡Üage [ i ] = s ; 322 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 323  HANDLER_ERROR ; 326 ià( i > 0 && ! `bufãr_is_em±y ( s -> ·th_¼dtoÞ_bš )) { 329 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 332  HANDLER_ERROR ; 337 p -> cÚf . ·th_¼dtoÞ_bš =…-> cÚfig_¡Üage [0]->path_rrdtool_bin; 338 p -> ¼dtoÞ_rušg = 0; 342 ià( `bufãr_is_em±y ( p -> cÚf . ·th_¼dtoÞ_bš )) { 343 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 345  HANDLER_ERROR ; 349 ià( `mod_¼d_ü—‹_pe ( ¤v , p )) { 350  HANDLER_ERROR ; 353 p -> ¼dtoÞ_rušg = 1; 355  HANDLER_GO_ON ; 356 } } 358 $TRIGGER_FUNC ( mod_¼d_Œigg” ) { 359 ¶ugš_d©a * p = p_d ; 360 size_t i ; 362 ià(! p -> ¼dtoÞ_rušg è HANDLER_GO_ON ; 363 ià(( ¤v -> cur_ts % 60è!ð0è HANDLER_GO_ON ; 365  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 366 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 367  r ; 369 ià( `bufãr_is_em±y ( s -> ·th_¼d )) ; 373 ià( HANDLER_GO_ON !ð `mod_¼dtoÞ_ü—‹_¼d ( ¤v , p , s )è HANDLER_ERROR ; 375 `BUFFER_COPY_STRING_CONST ( p -> cmd , "update "); 376 `bufãr_­³nd_¡ršg_bufãr ( p -> cmd , s -> ·th_¼d ); 377 `BUFFER_APPEND_STRING_CONST ( p -> cmd , " N:"); 378 `bufãr_­³nd_off_t ( p -> cmd , s -> by‹s_»ad ); 379 `BUFFER_APPEND_STRING_CONST ( p -> cmd , ":"); 380 `bufãr_­³nd_off_t ( p -> cmd , s -> by‹s_wr™‹n ); 381 `BUFFER_APPEND_STRING_CONST ( p -> cmd , ":"); 382 `bufãr_­³nd_lÚg ( p -> cmd , s -> »que¡s ); 383 `BUFFER_APPEND_STRING_CONST ( p -> cmd , "\n"); 385 ià(-1 =ð( r = `wr™e ( p -> wr™e_fd ,…-> cmd -> ±r ,…->cmd-> u£d - 1))) { 386 p -> ¼dtoÞ_rušg = 0; 388 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 389 "¼dtoÞ-wr™e: fažed", `¡»¼Ü ( ”ºo )); 391  HANDLER_ERROR ; 394 `bufãr_´•¬e_cÝy ( p -> »¥ , 4096); 395 ià(-1 =ð( r = `»ad ( p -> »ad_fd ,…-> »¥ -> ±r ,…->»¥-> size ))) { 396 p -> ¼dtoÞ_rušg = 0; 398 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 399 "¼dtoÞ-»ad: fažed", `¡»¼Ü ( ”ºo )); 401  HANDLER_ERROR ; 404 p -> »¥ -> u£d = r ; 406 ià( p -> »¥ -> ±r [0] != 'O' || 407 p -> »¥ -> ±r [1] != 'K') { 408 p -> ¼dtoÞ_rušg = 0; 410 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbb", 411 "¼dtoÞ-»¥Ú£:", p -> cmd ,…-> »¥ ); 413  HANDLER_ERROR ; 415 s -> »que¡s = 0; 416 s -> by‹s_wr™‹n = 0; 417 s -> by‹s_»ad = 0; 420  HANDLER_GO_ON ; 421 } } 423 $REQUESTDONE_FUNC ( mod_¼d_accouÁ ) { 424 ¶ugš_d©a * p = p_d ; 426 `mod_¼d_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 428 *( p -> cÚf . »que¡s_±r ) += 1; 429 *( p -> cÚf . by‹s_wr™‹n_±r è+ð cÚ -> by‹s_wr™‹n ; 430 *( p -> cÚf . by‹s_»ad_±r è+ð cÚ -> by‹s_»ad ; 432  HANDLER_GO_ON ; 433 } } 435  $mod_¼dtoÞ_¶ugš_š™ ( ¶ugš * p ) { 436 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 437 p -> Çme = `bufãr_š™_¡ršg ("rrd"); 439 p -> š™ = mod_¼d_š™ ; 440 p -> þ—nup = mod_¼d_ä“ ; 441 p -> £t_deçuÉs ð mod_¼d_£t_deçuÉs ; 443 p -> hªdË_Œigg” = mod_¼d_Œigg” ; 444 p -> hªdË_»que¡_dÚe = mod_¼d_accouÁ ; 446 p -> d©a = NULL ; 449 } } @src/mod_scgi.c 1  ~ 2  ~ 3  ~<”ºo.h > 4  ~ 5  ~<¡ršg.h > 6  ~<¡dlib.h > 7  ~<ùy³.h > 8  ~ 9  ~ 11  ~"bufãr.h " 12  ~"£rv”.h " 13  ~"keyv®ue.h " 14  ~"log.h " 16  ~"h‰p_chunk.h " 17  ~"fdev’t.h " 18  ~"cÚÃùiÚs.h " 19  ~"»¥Ú£.h " 20  ~"jobli¡.h " 22  ~"¶ugš.h " 24  ~"š‘_ÁÝ_ÿche.h " 26  ~<¡dio.h > 28 #ifdeà HAVE_SYS_FILIO_H 29  ~ 32  ~"sys-sock‘.h " 34 #ifdeà HAVE_SYS_UIO_H 35  ~ 37 #ifdeà HAVE_SYS_WAIT_H 38  ~ 41 ’um { mEOL_UNSET , mEOL_N , mEOL_RN }; 52  sscgi_´oc { 53 size_t mid ; 54 bufãr * msock‘ ; 55  mpÜt ; 57 pid_t mpid ; 60 size_t mlßd ; 62 time_t mÏ¡_u£d ; 63 size_t m»que¡s ; 64  scgi_´oc * m´ev , * mÃxt ; 66 time_t mdi§bË_ts ; 68  mis_loÿl ; 70 ’um { mPROC_STATE_UNSET , 71 mPROC_STATE_RUNNING , 72 mPROC_STATE_DIED_WAIT_FOR_PID , 73 mPROC_STATE_KILLED , 74 mPROC_STATE_DIED , 75 mPROC_STATE_DISABLED 76 } m¡©e ; 77 } tscgi_´oc ; 87 scgi_´oc * mfœ¡ ; 88 scgi_´oc * munu£d_´ocs ; 100  mmš_´ocs ; 101  mmax_´ocs ; 102 size_t mnum_´ocs ; 103 size_t maùive_´ocs ; 105  mmax_lßd_³r_´oc ; 115  midË_timeout ; 123  mdi§bË_time ; 131 size_t mmax_»que¡s_³r_´oc ; 146 bufãr * mho¡ ; 147  mpÜt ; 157 bufãr * munixsock‘ ; 167 bufãr * mbš_·th ; 174 ¬¿y * mbš_’v ; 176 ¬¿y * mbš_’v_cÝy ; 187 bufãr * mdoüoÙ ; 196  mcheck_loÿl ; 205 ssize_t mlßd ; 207 size_t mmax_id ; 212 } tscgi_ex‹nsiÚ_ho¡ ; 234 bufãr * mkey ; 236 scgi_ex‹nsiÚ_ho¡ ** mho¡s ; 238 size_t mu£d ; 239 size_t msize ; 240 } tscgi_ex‹nsiÚ ; 243 scgi_ex‹nsiÚ ** mexts ; 245 size_t mu£d ; 246 size_t msize ; 247 } tscgi_exts ; 251 scgi_exts * mexts ; 253  mdebug ; 254 } t¶ugš_cÚfig ; 257 ** m±r ; 259 size_t msize ; 260 size_t mu£d ; 261 } tch¬_¬¿y ; 265 mPLUGIN_DATA ; 267 bufãr * mscgi_’v ; 269 bufãr * m·th ; 270 bufãr * m·r£_»¥Ú£ ; 272 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 274 ¶ugš_cÚfig mcÚf ; 275 } t¶ugš_d©a ; 278 ’um { mFCGI_STATE_INIT , mFCGI_STATE_CONNECT , mFCGI_STATE_PREPARE_WRITE , 279 mFCGI_STATE_WRITE , mFCGI_STATE_READ 280 } tscgi_cÚÃùiÚ_¡©e_t ; 283 bufãr * m»¥Ú£ ; 284 size_t m»¥Ú£_Ën ; 285  m»¥Ú£_ty³ ; 286  m»¥Ú£_·ddšg ; 288 scgi_´oc * m´oc ; 289 scgi_ex‹nsiÚ_ho¡ * mho¡ ; 291 scgi_cÚÃùiÚ_¡©e_t m¡©e ; 292 time_t m¡©e_time¡amp ; 294  m»cÚÃùs ; 296 »ad_bufãr * mrb ; 297 chunkqueue * mwb ; 299 bufãr * m»¥Ú£_h—d” ; 301  md–ayed ; 303 size_t m»que¡_id ; 304  mfd ; 305  mfde_ndx ; 307 pid_t mpid ; 308  mgÙ_´oc ; 310 ¶ugš_cÚfig mcÚf ; 312 cÚÃùiÚ * m»mÙe_cÚn ; 313 ¶ugš_d©a * m¶ugš_d©a ; 314 } thªdËr_ùx ; 318  hªdËr_t scgi_hªdË_fdev’t (* s , * ùx ,  »v’ts ); 320  scgi_´oþi¡_sÜt_down ( £rv” * ¤v , scgi_ex‹nsiÚ_ho¡ * ho¡ , scgi_´oc * ´oc ); 324  hªdËr_ùx * $hªdËr_ùx_š™ () { 325 hªdËr_ùx * hùx ; 327 hùx = `ÿÎoc (1, (*hctx)); 328 `as£¹ ( hùx ); 330 hùx -> fde_ndx = -1; 332 hùx -> »¥Ú£ = `bufãr_š™ (); 333 hùx -> »¥Ú£_h—d” = `bufãr_š™ (); 335 hùx -> »que¡_id = 0; 336 hùx -> ¡©e = FCGI_STATE_INIT ; 337 hùx -> ´oc = NULL ; 339 hùx -> »¥Ú£_Ën = 0; 340 hùx -> »¥Ú£_ty³ = 0; 341 hùx -> »¥Ú£_·ddšg = 0; 342 hùx -> fd = -1; 344 hùx -> »cÚÃùs = 0; 346 hùx -> wb = `chunkqueue_š™ (); 348  hùx ; 349 } } 351  $hªdËr_ùx_ä“ ( hªdËr_ùx * hùx ) { 352 `bufãr_ä“ ( hùx -> »¥Ú£ ); 353 `bufãr_ä“ ( hùx -> »¥Ú£_h—d” ); 355 `chunkqueue_ä“ ( hùx -> wb ); 357 ià( hùx -> rb ) { 358 ià( hùx -> rb -> ±r è `ä“ (hctx->rb->ptr); 359 `ä“ ( hùx -> rb ); 362 `ä“ ( hùx ); 363 } } 365 scgi_´oc * $scgi_´oûss_š™ () { 366 scgi_´oc * f ; 368 f = `ÿÎoc (1, (*f)); 369 f -> sock‘ = `bufãr_š™ (); 371 f -> ´ev = NULL ; 372 f -> Ãxt = NULL ; 374  f ; 375 } } 377  $scgi_´oûss_ä“ ( scgi_´oc * f ) { 378 ià(! f ) ; 380 `scgi_´oûss_ä“ ( f -> Ãxt ); 382 `bufãr_ä“ ( f -> sock‘ ); 384 `ä“ ( f ); 385 } } 387 scgi_ex‹nsiÚ_ho¡ * $scgi_ho¡_š™ () { 388 scgi_ex‹nsiÚ_ho¡ * f ; 390 f = `ÿÎoc (1, (*f)); 392 f -> ho¡ = `bufãr_š™ (); 393 f -> unixsock‘ = `bufãr_š™ (); 394 f -> doüoÙ = `bufãr_š™ (); 395 f -> bš_·th = `bufãr_š™ (); 396 f -> bš_’v = `¬¿y_š™ (); 397 f -> bš_’v_cÝy = `¬¿y_š™ (); 399  f ; 400 } } 402  $scgi_ho¡_ä“ ( scgi_ex‹nsiÚ_ho¡ * h ) { 403 ià(! h ) ; 405 `bufãr_ä“ ( h -> ho¡ ); 406 `bufãr_ä“ ( h -> unixsock‘ ); 407 `bufãr_ä“ ( h -> doüoÙ ); 408 `bufãr_ä“ ( h -> bš_·th ); 409 `¬¿y_ä“ ( h -> bš_’v ); 410 `¬¿y_ä“ ( h -> bš_’v_cÝy ); 412 `scgi_´oûss_ä“ ( h -> fœ¡ ); 413 `scgi_´oûss_ä“ ( h -> unu£d_´ocs ); 415 `ä“ ( h ); 417 } } 419 scgi_exts * $scgi_ex‹nsiÚs_š™ () { 420 scgi_exts * f ; 422 f = `ÿÎoc (1, (*f)); 424  f ; 425 } } 427  $scgi_ex‹nsiÚs_ä“ ( scgi_exts * f ) { 428 size_t i ; 430 ià(! f ) ; 432  i = 0; i < f -> u£d ; i++) { 433 scgi_ex‹nsiÚ * ã ; 434 size_t j ; 436 ã = f -> exts [ i ]; 438  j = 0; j < ã -> u£d ; j++) { 439 scgi_ex‹nsiÚ_ho¡ * h ; 441 h = ã -> ho¡s [ j ]; 443 `scgi_ho¡_ä“ ( h ); 446 `bufãr_ä“ ( ã -> key ); 447 `ä“ ( ã -> ho¡s ); 449 `ä“ ( ã ); 452 `ä“ ( f -> exts ); 454 `ä“ ( f ); 455 } } 457  $scgi_ex‹nsiÚ_š£¹ ( scgi_exts * ext , bufãr * key , scgi_ex‹nsiÚ_ho¡ * fh ) { 458 scgi_ex‹nsiÚ * ã ; 459 size_t i ; 463  i = 0; i < ext -> u£d ; i++) { 464 ià( `bufãr_is_equ® ( key , ext -> exts [ i ]->key)) { 469 ià( i =ð ext -> u£d ) { 471 ã = `ÿÎoc (1, (*fe)); 472 `as£¹ ( ã ); 473 ã -> key = `bufãr_š™ (); 474 `bufãr_cÝy_¡ršg_bufãr ( ã -> key , key); 478 ià( ext -> size == 0) { 479 ext -> size = 8; 480 ext -> exts = `m®loc Óxt-> size * (*(ext->exts))); 481 `as£¹ ( ext -> exts ); 482 } ià( ext -> u£d =ðext-> size ) { 483 ext -> size += 8; 484 ext -> exts = `»®loc Óxt->exts,ƒxt-> size * (*(ext->exts))); 485 `as£¹ ( ext -> exts ); 487 ext -> exts [ext-> u£d ++] = ã ; 489 ã = ext -> exts [ i ]; 492 ià( ã -> size == 0) { 493 ã -> size = 4; 494 ã -> ho¡s = `m®loc (ã-> size * (*(fe->hosts))); 495 `as£¹ ( ã -> ho¡s ); 496 } ià( ã -> size =ðã-> u£d ) { 497 ã -> size += 4; 498 ã -> ho¡s = `»®loc (ã->ho¡s, fe-> size * (*(fe->hosts))); 499 `as£¹ ( ã -> ho¡s ); 502 ã -> ho¡s [ã-> u£d ++] = fh ; 506 } } 508 $INIT_FUNC ( mod_scgi_š™ ) { 509 ¶ugš_d©a * p ; 511 p = `ÿÎoc (1, (*p)); 513 p -> scgi_’v = `bufãr_š™ (); 515 p -> ·th = `bufãr_š™ (); 516 p -> ·r£_»¥Ú£ = `bufãr_š™ (); 518  p ; 519 } } 522 $FREE_FUNC ( mod_scgi_ä“ ) { 523 ¶ugš_d©a * p = p_d ; 525 `UNUSED ( ¤v ); 527 `bufãr_ä“ ( p -> scgi_’v ); 528 `bufãr_ä“ ( p -> ·th ); 529 `bufãr_ä“ ( p -> ·r£_»¥Ú£ ); 531 ià( p -> cÚfig_¡Üage ) { 532 size_t i , j , n ; 533  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 534 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 535 scgi_exts * exts ; 537 ià(! s ) ; 539 exts = s ->exts; 541  j = 0; j < exts -> u£d ; j++) { 542 scgi_ex‹nsiÚ * ex ; 544 ex = exts ->exts[ j ]; 546  n = 0;‚ < ex -> u£d ;‚++) { 547 scgi_´oc * ´oc ; 548 scgi_ex‹nsiÚ_ho¡ * ho¡ ; 550 ho¡ = ex -> ho¡s [ n ]; 552  ´oc = ho¡ -> fœ¡ ;…roc;…roøð´oc-> Ãxt ) { 553 ià( ´oc -> pid !ð0è `kžl Õroc->pid, SIGTERM ); 555 ià( ´oc -> is_loÿl && 556 ! `bufãr_is_em±y ( ´oc -> sock‘ )) { 557 `uÆšk ( ´oc -> sock‘ -> ±r ); 561  ´oc = ho¡ -> unu£d_´ocs ;…roc;…roøð´oc-> Ãxt ) { 562 ià( ´oc -> pid !ð0è `kžl Õroc->pid, SIGTERM ); 564 ià( ´oc -> is_loÿl && 565 ! `bufãr_is_em±y ( ´oc -> sock‘ )) { 566 `uÆšk ( ´oc -> sock‘ -> ±r ); 572 `scgi_ex‹nsiÚs_ä“ ( s -> exts ); 574 `ä“ ( s ); 576 `ä“ ( p -> cÚfig_¡Üage ); 579 `ä“ ( p ); 581  HANDLER_GO_ON ; 582 } } 584  $’v_add ( ch¬_¬¿y * ’v , cÚ¡ * key , size_t key_Ën , cÚ¡ * v® , size_ˆ v®_Ën ) { 585 * d¡ ; 587 ià(! key || ! v® )  -1; 589 d¡ = `m®loc ( key_Ën + v®_Ën + 3); 590 `memýy ( d¡ , key , key_Ën ); 591 d¡ [ key_Ën ] = '='; 593 `memýy ( d¡ + key_Ën + 1, v® , v®_Ën + 1); 595 ià( ’v -> size == 0) { 596 ’v -> size = 16; 597 ’v -> ±r = `m®loc Ónv-> size * (*env->ptr)); 598 } ià( ’v -> size =ð’v-> u£d ) { 599 ’v -> size += 16; 600 ’v -> ±r = `»®loc Ónv->±r,ƒnv-> size * (*env->ptr)); 603 ’v -> ±r [’v-> u£d ++] = d¡ ; 606 } } 608  $scgi_¥awn_cÚÃùiÚ ( £rv” * ¤v , 609 ¶ugš_d©a * p , 610 scgi_ex‹nsiÚ_ho¡ * ho¡ , 611 scgi_´oc * ´oc ) { 612  scgi_fd ; 613  sock‘_ty³ , ¡©us ; 614  timev® tv = { 0, 100 * 1000 }; 615 #ifdeà HAVE_SYS_UN_H 616  sockaddr_un scgi_addr_un ; 618  sockaddr_š scgi_addr_š ; 619  sockaddr * scgi_addr ; 621 sockËn_t £rvËn ; 623 #iâdeà HAVE_FORK 627 ià( p -> cÚf . debug ) { 628 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdb", 629 "Ãw…roc, sock‘:", ´oc -> pÜt ,…roc-> sock‘ ); 632 ià(! `bufãr_is_em±y ( ´oc -> sock‘ )) { 633 `mem£t (& scgi_addr , 0, (scgi_addr)); 635 #ifdeà HAVE_SYS_UN_H 636 scgi_addr_un . sun_çmžy = AF_UNIX ; 637 `¡rýy ( scgi_addr_un . sun_·th , ´oc -> sock‘ -> ±r ); 639 #ifdeà SUN_LEN 640 £rvËn = `SUN_LEN (& scgi_addr_un ); 643 £rvËn = ´oc -> sock‘ -> u£d + ( scgi_addr_un . sun_çmžy ); 645 sock‘_ty³ = AF_UNIX ; 646 scgi_addr = ( sockaddr *è& scgi_addr_un ; 648 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 653 scgi_addr_š . sš_çmžy = AF_INET ; 655 ià( `bufãr_is_em±y ( ho¡ ->host)) { 656 scgi_addr_š . sš_addr . s_addr = `htÚl ( INADDR_ANY ); 658  ho¡’t * he ; 661 scgi_addr_š . sš_addr . s_addr = `htÚl ( INADDR_ANY ); 664 ià( NULL =ð( he = `g‘ho¡byÇme ( ho¡ ->ho¡-> ±r ))) { 665 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 667 h_”ºo , ho¡ ->host); 671 ià( he -> h_add¹y³ !ð AF_INET ) { 672 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "addr-ty³ !ðAF_INET: ", he -> h_add¹y³ ); 676 ià( he -> h_Ëngth !ð( š_addr )) { 677 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "addr-Ëngth !ðsizeof(š_addr): ", he -> h_Ëngth ); 681 `memýy (&( scgi_addr_š . sš_addr . s_addr ), he -> h_addr_li¡ [0], he-> h_Ëngth ); 684 scgi_addr_š . sš_pÜt = `htÚs ( ´oc -> pÜt ); 685 £rvËn = ( scgi_addr_š ); 687 sock‘_ty³ = AF_INET ; 688 scgi_addr = ( sockaddr *è& scgi_addr_š ; 691 ià(-1 =ð( scgi_fd = `sock‘ ( sock‘_ty³ , SOCK_STREAM , 0))) { 692 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 693 "çžed:", `¡»¼Ü ( ”ºo )); 697 ià(-1 =ð `cÚÃù ( scgi_fd , scgi_addr , £rvËn )) { 699 pid_t chžd ; 700  v® ; 702 ià(! `bufãr_is_em±y ( ´oc -> sock‘ )) { 703 `uÆšk ( ´oc -> sock‘ -> ±r ); 706 `þo£ ( scgi_fd ); 709 ià(-1 =ð( scgi_fd = `sock‘ ( sock‘_ty³ , SOCK_STREAM , 0))) { 710 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 711 "sock‘ fažed:", `¡»¼Ü ( ”ºo )); 715 v® = 1; 716 ià( `£tsockÝt ( scgi_fd , SOL_SOCKET , SO_REUSEADDR , & v® , (val)) < 0) { 717 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 718 "sock‘sock݈çžed:", `¡»¼Ü ( ”ºo )); 723 ià(-1 =ð `bšd ( scgi_fd , scgi_addr , £rvËn )) { 724 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbds", 726 ´oc -> sock‘ , 727 ´oc -> pÜt , 728 `¡»¼Ü ( ”ºo )); 732 ià(-1 =ð `li¡’ ( scgi_fd , 1024)) { 733 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 734 "li¡’ fažed:", `¡»¼Ü ( ”ºo )); 738 #ifdeà HAVE_FORK 739 ( chžd = `fÜk ())) { 741 bufãr * b ; 742 size_t i = 0; 743  fd = 0; 744 ch¬_¬¿y ’v ; 748 ’v . ±r = NULL ; 749 ’v . size = 0; 750 ’v . u£d = 0; 753  fd = 3; fd < 256; fd++) { 754 ià( fd !ð2 && fd !ð scgi_fd è `þo£ (fd); 758 ià( ho¡ -> bš_’v_cÝy -> u£d ) { 759  i = 0; i < ho¡ -> bš_’v_cÝy -> u£d ; i++) { 760 d©a_¡ršg * ds = (d©a_¡ršg *) ho¡ -> bš_’v_cÝy -> d©a [ i ]; 761 * ge ; 763 ià( NULL !ð( ge = `g‘’v ( ds -> v®ue -> ±r ))) { 764 `’v_add (& ’v , `CONST_BUF_LEN ( ds -> v®ue ), ge , `¡¾’ (ge)); 768  i = 0; ’vœÚ [i]; i++) { 769 * eq ; 771 ià( NULL !ð( eq = `¡rchr ( ’vœÚ [ i ], '='))) { 772 `’v_add (& ’v , ’vœÚ [ i ], eq -ƒnvœÚ[i],ƒq+1, `¡¾’ (eq+1)); 778  i = 0; i < ho¡ -> bš_’v -> u£d ; i++) { 779 d©a_¡ršg * ds = (d©a_¡ršg *) ho¡ -> bš_’v -> d©a [ i ]; 781 `’v_add (& ’v , `CONST_BUF_LEN ( ds -> key ), CONST_BUF_LEN(ds-> v®ue )); 784  i = 0; i < ’v . u£d ; i++) { 786 ià(0 =ð `¡ºcmp ( ’v . ±r [ i ], "PHP_FCGI_CHILDREN=", ("PHP_FCGI_CHILDREN=") - 1)) ; 790 ià( i =ð ’v . u£d ) { 791 `’v_add (& ’v , `CONST_STR_LEN ("PHP_FCGI_CHILDREN"), CONST_STR_LEN("1")); 794 ’v . ±r [’v. u£d ] = NULL ; 796 b = `bufãr_š™ (); 797 `bufãr_cÝy_¡ršg ( b , "exec "); 798 `bufãr_­³nd_¡ršg_bufãr ( b , ho¡ -> bš_·th ); 801 `exeþe ("/bš/sh", "sh", "-c", b -> ±r , (*) NULL , ’v .ptr); 803 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 804 "exeþ fažed fÜ:", ho¡ -> bš_·th , `¡»¼Ü ( ”ºo )); 806 `ex™ ( ”ºo ); 817 `£Ëù (0, NULL , NULL, NULL, & tv ); 819  `wa™pid ( chžd , & ¡©us , WNOHANG )) { 825 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 826 "pid‚Ù found:", `¡»¼Ü ( ”ºo )); 830 ià( `WIFEXITED ( ¡©us )) { 831 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 833 `WEXITSTATUS ( ¡©us )); 834 } ià( `WIFSIGNALED ( ¡©us )) { 835 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 837 `WTERMSIG ( ¡©us )); 839 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 841 ¡©us ); 847 ´oc -> pid = chžd ; 848 ´oc -> Ï¡_u£d = ¤v -> cur_ts ; 849 ´oc -> is_loÿl = 1; 855 ´oc -> is_loÿl = 0; 856 ´oc -> pid = 0; 858 ià( p -> cÚf . debug ) { 859 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 861 ´oc -> sock‘ ); 865 ´oc -> ¡©e = PROC_STATE_RUNNING ; 866 ho¡ -> aùive_´ocs ++; 868 `þo£ ( scgi_fd ); 871 } } 874 $SETDEFAULTS_FUNC ( mod_scgi_£t_deçuÉs ) { 875 ¶ugš_d©a * p = p_d ; 876 d©a_un£t * du ; 877 size_t i = 0; 879 cÚfig_v®ues_t cv [] = { 880 { "scgi.£rv”", NULL , T_CONFIG_LOCAL , T_CONFIG_SCOPE_CONNECTION }, 881 { "scgi.debug", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 882 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 885 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 887  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 888 ¶ugš_cÚfig * s ; 889 ¬¿y * ÿ ; 891 s = `m®loc (( ¶ugš_cÚfig )); 892 s -> exts = `scgi_ex‹nsiÚs_š™ (); 893 s -> debug = 0; 895 cv [0]. de¡š©iÚ = s -> exts ; 896 cv [1]. de¡š©iÚ = &( s -> debug ); 898 p -> cÚfig_¡Üage [ i ] = s ; 899 ÿ = (( d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue ; 901 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , ÿ , cv )) { 902  HANDLER_ERROR ; 909 ià( NULL !ð( du = `¬¿y_g‘_–em’t ( ÿ , "scgi.server"))) { 910 size_t j ; 911 d©a_¬¿y * da = (d©a_¬¿y *) du ; 913 ià( du -> ty³ !ð TYPE_ARRAY ) { 914 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 917  HANDLER_ERROR ; 926  j = 0; j < da -> v®ue -> u£d ; j++) { 927 size_t n ; 928 d©a_¬¿y * da_ext = (d©a_¬¿y *) da -> v®ue -> d©a [ j ]; 930 ià( da -> v®ue -> d©a [ j ]-> ty³ !ð TYPE_ARRAY ) { 931 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sssbs", 933 "[", da -> v®ue -> d©a [ j ]-> key , "](string)"); 935  HANDLER_ERROR ; 950  n = 0;‚ < da_ext -> v®ue -> u£d ;‚++) { 951 d©a_¬¿y * da_ho¡ = (d©a_¬¿y *) da_ext -> v®ue -> d©a [ n ]; 953 scgi_ex‹nsiÚ_ho¡ * df ; 955 cÚfig_v®ues_t fcv [] = { 956 { "ho¡", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 957 { "doüoÙ", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 958 { "sock‘", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 959 { "bš-·th", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 961 { "check-loÿl", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 962 { "pÜt", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 963 { "mš-´ocs-nÙ-wÜkšg", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 964 { "max-´ocs", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 965 { "max-lßd-³r-´oc", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 966 { "idË-timeout", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 967 { "di§bË-time", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 969 { "bš-’vœÚm’t", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 970 { "bš-cÝy-’vœÚm’t", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 973 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 976 ià( da_ho¡ -> ty³ !ð TYPE_ARRAY ) { 977 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssSBS", 980 "[", da_ho¡ -> key , "](string)"); 982  HANDLER_ERROR ; 985 df = `scgi_ho¡_š™ (); 987 df -> check_loÿl = 1; 988 df -> mš_´ocs = 4; 989 df -> max_´ocs = 4; 990 df -> max_lßd_³r_´oc = 1; 991 df -> idË_timeout = 60; 992 df -> di§bË_time = 60; 994 fcv [0]. de¡š©iÚ = df -> ho¡ ; 995 fcv [1]. de¡š©iÚ = df -> doüoÙ ; 996 fcv [2]. de¡š©iÚ = df -> unixsock‘ ; 997 fcv [3]. de¡š©iÚ = df -> bš_·th ; 999 fcv [4]. de¡š©iÚ = &( df -> check_loÿl ); 1000 fcv [5]. de¡š©iÚ = &( df -> pÜt ); 1001 fcv [6]. de¡š©iÚ = &( df -> mš_´ocs ); 1002 fcv [7]. de¡š©iÚ = &( df -> max_´ocs ); 1003 fcv [8]. de¡š©iÚ = &( df -> max_lßd_³r_´oc ); 1004 fcv [9]. de¡š©iÚ = &( df -> idË_timeout ); 1005 fcv [10]. de¡š©iÚ = &( df -> di§bË_time ); 1007 fcv [11]. de¡š©iÚ = df -> bš_’v ; 1008 fcv [12]. de¡š©iÚ = df -> bš_’v_cÝy ; 1011 ià(0 !ð `cÚfig_š£¹_v®ues_š‹º® ( ¤v , da_ho¡ -> v®ue , fcv )) { 1012  HANDLER_ERROR ; 1015 ià((! `bufãr_is_em±y ( df -> ho¡ è|| df-> pÜt ) && 1016 ! `bufãr_is_em±y ( df -> unixsock‘ )) { 1017 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1020  HANDLER_ERROR ; 1023 ià(! `bufãr_is_em±y ( df -> unixsock‘ )) { 1025  sockaddr_un un ; 1027 ià( df -> unixsock‘ -> u£d > ( un . sun_·th ) - 2) { 1028 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1030  HANDLER_ERROR ; 1035 ià( `bufãr_is_em±y ( df -> ho¡ ) && 1036 `bufãr_is_em±y ( df -> bš_·th )) { 1037 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbbbs", 1039 da -> key , 1040 da_ext -> key , 1041 da_ho¡ -> key , 1044  HANDLER_ERROR ; 1045 } ià( df -> pÜt == 0) { 1046 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbbbs", 1048 da -> key , 1049 da_ext -> key , 1050 da_ho¡ -> key , 1052  HANDLER_ERROR ; 1056 ià(! `bufãr_is_em±y ( df -> bš_·th )) { 1058 size_t ²o ; 1061 df -> mš_´ocs = df-> max_´ocs ; 1063 ià( df -> mš_´ocs > df-> max_´ocs ) df->max_procs = df->min_procs; 1064 ià( df -> max_lßd_³r_´oc < 1) df->max_load_per_proc = 0; 1066 ià( s -> debug ) { 1067 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbsdsbsdsd", 1069 "\n\roc:", df -> bš_·th , 1070 "\n\Üt:", df -> pÜt , 1071 "\n\tsock‘", df -> unixsock‘ , 1072 "\n\tmš-´ocs:", df -> mš_´ocs , 1073 "\n\tmax-´ocs:", df -> max_´ocs ); 1076  ²o = 0;…nØ< df -> mš_´ocs ;…no++) { 1077 scgi_´oc * ´oc ; 1079 ´oc = `scgi_´oûss_š™ (); 1080 ´oc -> id = df -> num_´ocs ++; 1081 df -> max_id ++; 1083 ià( `bufãr_is_em±y ( df -> unixsock‘ )) { 1084 ´oc -> pÜt = df ->p܈+ ²o ; 1086 `bufãr_cÝy_¡ršg_bufãr ( ´oc -> sock‘ , df -> unixsock‘ ); 1087 `bufãr_­³nd_¡ršg ( ´oc -> sock‘ , "-"); 1088 `bufãr_­³nd_lÚg ( ´oc -> sock‘ , ²o ); 1091 ià( s -> debug ) { 1092 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdsbsdsd", 1094 "\n\Üt:", df -> pÜt , 1095 "\n\tsock‘", df -> unixsock‘ , 1096 "\n\tcu¼’t:", ²o , "/", df -> mš_´ocs ); 1099 ià( `scgi_¥awn_cÚÃùiÚ ( ¤v , p , df , ´oc )) { 1100 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1102  HANDLER_ERROR ; 1105 ´oc -> Ãxt = df -> fœ¡ ; 1106 ià( df -> fœ¡ èdf->fœ¡-> ´ev = ´oc ; 1108 df -> fœ¡ = ´oc ; 1111 scgi_´oc * å ; 1113 å = `scgi_´oûss_š™ (); 1114 å -> id = df -> num_´ocs ++; 1115 df -> max_id ++; 1116 df -> aùive_´ocs ++; 1117 å -> ¡©e = PROC_STATE_RUNNING ; 1119 ià( `bufãr_is_em±y ( df -> unixsock‘ )) { 1120 å -> pÜt = df ->port; 1122 `bufãr_cÝy_¡ršg_bufãr ( å -> sock‘ , df -> unixsock‘ ); 1125 df -> fœ¡ = å ; 1127 df -> mš_´ocs = 1; 1128 df -> max_´ocs = 1; 1132 `scgi_ex‹nsiÚ_š£¹ ( s -> exts , da_ext -> key , df ); 1138  HANDLER_GO_ON ; 1139 } } 1141  $scgi_£t_¡©e ( £rv” * ¤v , hªdËr_ùx * hùx , scgi_cÚÃùiÚ_¡©e_t ¡©e ) { 1142 hùx -> ¡©e = state; 1143 hùx -> ¡©e_time¡amp = ¤v -> cur_ts ; 1146 } } 1149  $scgi_cÚÃùiÚ_þ—nup ( £rv” * ¤v , hªdËr_ùx * hùx ) { 1150 ¶ugš_d©a * p ; 1151 cÚÃùiÚ * cÚ ; 1153 ià( NULL =ð hùx ) ; 1155 p = hùx -> ¶ugš_d©a ; 1156 cÚ = hùx -> »mÙe_cÚn ; 1158 ià( cÚ -> mode !ð p -> id ) { 1159 `WP (); 1163 ià( hùx -> fd != -1) { 1164 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 1165 `fdev’t_uÄegi¡” ( ¤v -> ev , hùx -> fd ); 1166 `þo£ ( hùx -> fd ); 1167 ¤v -> cur_fds --; 1170 ià( hùx -> ho¡ && hùx-> ´oc ) { 1171 hùx -> ho¡ -> lßd --; 1173 ià( hùx -> gÙ_´oc ) { 1175 hùx -> ´oc -> lßd --; 1177 ià( p -> cÚf . debug ) { 1178 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sddb", 1180 hùx -> fd , 1181 hùx -> ´oc -> pid , hùx->´oc-> sock‘ ); 1185 `scgi_´oþi¡_sÜt_down ( ¤v , hùx -> ho¡ , hùx-> ´oc ); 1189 `hªdËr_ùx_ä“ ( hùx ); 1190 cÚ -> ¶ugš_ùx [ p -> id ] = NULL ; 1191 } } 1193  $scgi_»cÚÃù ( £rv” * ¤v , hªdËr_ùx * hùx ) { 1194 ¶ugš_d©a * p = hùx ->plugin_data; 1215 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 1216 `fdev’t_uÄegi¡” ( ¤v -> ev , hùx -> fd ); 1217 `þo£ ( hùx -> fd ); 1218 ¤v -> cur_fds --; 1220 `scgi_£t_¡©e ( ¤v , hùx , FCGI_STATE_INIT ); 1222 hùx -> »que¡_id = 0; 1223 hùx -> »cÚÃùs ++; 1225 ià( p -> cÚf . debug ) { 1226 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sddb", 1228 hùx -> fd , 1229 hùx -> ´oc -> pid , hùx->´oc-> sock‘ ); 1232 hùx -> ´oc -> lßd --; 1233 `scgi_´oþi¡_sÜt_down ( ¤v , hùx -> ho¡ , hùx-> ´oc ); 1236 } } 1239  hªdËr_t $scgi_cÚÃùiÚ_»£t ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 1240 ¶ugš_d©a * p = p_d ; 1242 `scgi_cÚÃùiÚ_þ—nup ( ¤v , cÚ -> ¶ugš_ùx [ p -> id ]); 1244  HANDLER_GO_ON ; 1245 } } 1248  $scgi_’v_add ( bufãr * ’v , cÚ¡ * key , size_t key_Ën , cÚ¡ * v® , size_ˆ v®_Ën ) { 1249 size_t Ën ; 1251 ià(! key || ! v® )  -1; 1253 Ën = key_Ën + v®_Ën + 2; 1255 `bufãr_´•¬e_­³nd ( ’v , Ën ); 1258 `memýy ( ’v -> ±r +ƒnv-> u£d , key , key_Ën + 1); 1259 ’v -> u£d +ð key_Ën + 1; 1260 `memýy ( ’v -> ±r +ƒnv-> u£d , v® , v®_Ën + 1); 1261 ’v -> u£d +ð v®_Ën + 1; 1264 } } 1275  $scgi_e¡ablish_cÚÃùiÚ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 1276  sockaddr * scgi_addr ; 1277  sockaddr_š scgi_addr_š ; 1278 #ifdeà HAVE_SYS_UN_H 1279  sockaddr_un scgi_addr_un ; 1281 sockËn_t £rvËn ; 1283 scgi_ex‹nsiÚ_ho¡ * ho¡ = hùx ->host; 1284 scgi_´oc * ´oc = hùx ->proc; 1285  scgi_fd = hùx -> fd ; 1287 `mem£t (& scgi_addr , 0, (scgi_addr)); 1289 ià(! `bufãr_is_em±y ( ´oc -> sock‘ )) { 1290 #ifdeà HAVE_SYS_UN_H 1292 scgi_addr_un . sun_çmžy = AF_UNIX ; 1293 `¡rýy ( scgi_addr_un . sun_·th , ´oc -> sock‘ -> ±r ); 1294 #ifdeà SUN_LEN 1295 £rvËn = `SUN_LEN (& scgi_addr_un ); 1298 £rvËn = ´oc -> sock‘ -> u£d + ( scgi_addr_un . sun_çmžy ); 1300 scgi_addr = ( sockaddr *è& scgi_addr_un ; 1305 scgi_addr_š . sš_çmžy = AF_INET ; 1306 ià(0 =ð `š‘_©Ú ( ho¡ ->ho¡-> ±r , &( scgi_addr_š . sš_addr ))) { 1307 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 1308 "cÚv”tšg IP-ad»s çžed fÜ", ho¡ ->host, 1313 scgi_addr_š . sš_pÜt = `htÚs ( ´oc -> pÜt ); 1314 £rvËn = ( scgi_addr_š ); 1316 scgi_addr = ( sockaddr *è& scgi_addr_š ; 1319 ià(-1 =ð `cÚÃù ( scgi_fd , scgi_addr , £rvËn )) { 1320 ià( ”ºo =ð EINPROGRESS || 1321 ”ºo =ð EALREADY || 1322 ”ºo =ð EINTR ) { 1323 ià( hùx -> cÚf . debug ) { 1324 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1325 "cÚÃù d–ayed, wžÈcÚtšuÏ‹r:", scgi_fd ); 1330 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdsddb", 1331 "cÚÃù fažed:", scgi_fd , 1332 `¡»¼Ü ( ”ºo ),ƒrrno, 1333 ´oc -> pÜt ,…roc-> sock‘ ); 1335 ià( ”ºo =ð EAGAIN ) { 1338 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1346 ià( hùx -> cÚf . debug > 1) { 1347 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1348 "cÚÃù sucûeded: ", scgi_fd ); 1354 } } 1356  $scgi_’v_add_»que¡_h—d”s ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 1357 size_t i ; 1359  i = 0; i < cÚ -> »que¡ . h—d”s -> u£d ; i++) { 1360 d©a_¡ršg * ds ; 1362 ds = ( d©a_¡ršg *) cÚ -> »que¡ . h—d”s -> d©a [ i ]; 1364 ià( ds -> v®ue -> u£d && ds-> key ->used) { 1365 size_t j ; 1366 `bufãr_»£t ( ¤v -> tmp_buf ); 1368 ià(0 !ð `¡rÿ£cmp ( ds -> key -> ±r , "CONTENT-TYPE")) { 1369 `BUFFER_COPY_STRING_CONST ( ¤v -> tmp_buf , "HTTP_"); 1370 ¤v -> tmp_buf -> u£d --; 1373 `bufãr_´•¬e_­³nd ( ¤v -> tmp_buf , ds -> key -> u£d + 2); 1374  j = 0; j < ds -> key -> u£d - 1; j++) { 1375 ¤v -> tmp_buf -> ±r [¤v->tmp_buf-> u£d ++] = 1376 `light_i§Íha ( ds -> key -> ±r [ j ]) ? 1377 ds -> key -> ±r [ j ] & ~32 : '_'; 1379 ¤v -> tmp_buf -> ±r [¤v->tmp_buf-> u£d ++] = '\0'; 1381 `scgi_’v_add ( p -> scgi_’v , `CONST_BUF_LEN ( ¤v -> tmp_buf ), CONST_BUF_LEN( ds -> v®ue )); 1385  i = 0; i < cÚ -> ’vœÚm’t -> u£d ; i++) { 1386 d©a_¡ršg * ds ; 1388 ds = ( d©a_¡ršg *) cÚ -> ’vœÚm’t -> d©a [ i ]; 1390 ià( ds -> v®ue -> u£d && ds-> key ->used) { 1391 size_t j ; 1392 `bufãr_»£t ( ¤v -> tmp_buf ); 1394 `bufãr_´•¬e_­³nd ( ¤v -> tmp_buf , ds -> key -> u£d + 2); 1395  j = 0; j < ds -> key -> u£d - 1; j++) { 1396 ¤v -> tmp_buf -> ±r [¤v->tmp_buf-> u£d ++] = 1397 `i§Íha (() ds -> key -> ±r [ j ]) ? 1398 `touµ” (() ds -> key -> ±r [ j ]) : '_'; 1400 ¤v -> tmp_buf -> ±r [¤v->tmp_buf-> u£d ++] = '\0'; 1402 `scgi_’v_add ( p -> scgi_’v , `CONST_BUF_LEN ( ¤v -> tmp_buf ), CONST_BUF_LEN( ds -> v®ue )); 1407 } } 1410  $scgi_ü—‹_’v ( £rv” * ¤v , hªdËr_ùx * hùx ) { 1411  buf [32]; 1412 cÚ¡ * s ; 1413 #ifdeà HAVE_IPV6 1414  b2 [ INET6_ADDRSTRLEN + 1]; 1416 bufãr * b ; 1418 ¶ugš_d©a * p = hùx ->plugin_data; 1419 scgi_ex‹nsiÚ_ho¡ * ho¡ ð hùx ->host; 1421 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 1422 £rv”_sock‘ * ¤v_sock = cÚ -> ¤v_sock‘ ; 1424 sock_addr our_addr ; 1425 sockËn_t our_addr_Ën ; 1427 `bufãr_´•¬e_cÝy ( p -> scgi_’v , 1024); 1432 `LI_Éo¡r ( buf , cÚ -> »que¡ . cÚ‹Á_Ëngth ); 1433 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("CONTENT_LENGTH"), buf , `¡¾’ (buf)); 1434 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("SCGI"), CONST_STR_LEN("1")); 1437 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("SERVER_SOFTWARE"), CONST_STR_LEN( PACKAGE_NAME "/" PACKAGE_VERSION )); 1439 ià( cÚ -> £rv”_Çme -> u£d ) { 1440 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("SERVER_NAME"), `CONST_BUF_LEN ( cÚ -> £rv”_Çme )); 1442 #ifdeà HAVE_IPV6 1443 s = `š‘_ÁÝ ( ¤v_sock -> addr . ¶aš . §_çmžy , 1444 ¤v_sock -> addr . ¶aš . §_çmžy =ð AF_INET6 ? 1445 (cÚ¡ *è&( ¤v_sock -> addr . v6 . sš6_addr ) : 1446 (cÚ¡ *è&( ¤v_sock -> addr . v4 . sš_addr ), 1447 b2 , (b2)-1); 1449 s = `š‘_Áß ( ¤v_sock -> addr . v4 . sš_addr ); 1451 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("SERVER_NAME"), s , `¡¾’ (s)); 1454 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("GATEWAY_INTERFACE"), CONST_STR_LEN("CGI/1.1")); 1456 `LI_Éo¡r ( buf , 1457 #ifdeà HAVE_IPV6 1458 `Áohs ( ¤v_sock -> addr . ¶aš . §_çmžy ? srv_sock->addr. v6 . sš6_pÜt : srv_sock->addr. v4 . sš_pÜt ) 1460 `Áohs ( ¤v_sock -> addr . v4 . sš_pÜt ) 1464 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("SERVER_PORT"), buf , `¡¾’ (buf)); 1467 our_addr_Ën = ( our_addr ); 1469 ià(-1 =ð `g‘sockÇme ( cÚ -> fd , &( our_addr . ¶aš ), & our_addr_Ën )) { 1470 s = `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &( ¤v_sock -> addr )); 1472 s = `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &( our_addr )); 1474 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("SERVER_ADDR"), s , `¡¾’ (s)); 1476 `LI_Éo¡r ( buf , 1477 #ifdeà HAVE_IPV6 1478 `Áohs ( cÚ -> d¡_addr . ¶aš . §_çmžy ? cÚ->d¡_addr. v6 . sš6_pÜt : cÚ->d¡_addr. v4 . sš_pÜt ) 1480 `Áohs ( cÚ -> d¡_addr . v4 . sš_pÜt ) 1484 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("REMOTE_PORT"), buf , `¡¾’ (buf)); 1486 s = `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &( cÚ -> d¡_addr )); 1487 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("REMOTE_ADDR"), s , `¡¾’ (s)); 1489 ià(! `bufãr_is_em±y ( cÚ -> authed_u£r )) { 1490 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("REMOTE_USER"), 1491 `CONST_BUF_LEN ( cÚ -> authed_u£r )); 1501 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("SCRIPT_NAME"), `CONST_BUF_LEN ( cÚ -> uri . ·th )); 1503 ià(! `bufãr_is_em±y ( cÚ -> »que¡ . ·thšfo )) { 1504 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("PATH_INFO"), `CONST_BUF_LEN ( cÚ -> »que¡ . ·thšfo )); 1508 ià(! `bufãr_is_em±y ( ho¡ -> doüoÙ )) { 1509 `bufãr_cÝy_¡ršg_bufãr ( p -> ·th , ho¡ -> doüoÙ ); 1511 `bufãr_cÝy_¡ršg_bufãr ( p -> ·th , cÚ -> physiÿl . doc_roÙ ); 1513 `bufãr_­³nd_¡ršg_bufãr ( p -> ·th , cÚ -> »que¡ . ·thšfo ); 1514 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("PATH_TRANSLATED"), `CONST_BUF_LEN Õ-> ·th )); 1516 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("PATH_INFO"), CONST_STR_LEN("")); 1527 ià(! `bufãr_is_em±y ( ho¡ -> doüoÙ )) { 1533 `bufãr_cÝy_¡ršg_bufãr ( p -> ·th , ho¡ -> doüoÙ ); 1534 `bufãr_­³nd_¡ršg_bufãr ( p -> ·th , cÚ -> uri .path); 1536 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("SCRIPT_FILENAME"), `CONST_BUF_LEN Õ-> ·th )); 1537 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("DOCUMENT_ROOT"), `CONST_BUF_LEN ( ho¡ -> doüoÙ )); 1539 `bufãr_cÝy_¡ršg_bufãr ( p -> ·th , cÚ -> physiÿl .path); 1541 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("SCRIPT_FILENAME"), `CONST_BUF_LEN Õ-> ·th )); 1542 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("DOCUMENT_ROOT"), `CONST_BUF_LEN ( cÚ -> physiÿl . doc_roÙ )); 1544 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("REQUEST_URI"), `CONST_BUF_LEN ( cÚ -> »que¡ . Üig_uri )); 1545 ià(! `bufãr_is_equ® ( cÚ -> »que¡ . uri , cÚ->»que¡. Üig_uri )) { 1546 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("REDIRECT_URI"), `CONST_BUF_LEN ( cÚ -> »que¡ . uri )); 1548 ià(! `bufãr_is_em±y ( cÚ -> uri . qu”y )) { 1549 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("QUERY_STRING"), `CONST_BUF_LEN ( cÚ -> uri . qu”y )); 1551 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("QUERY_STRING"), CONST_STR_LEN("")); 1554 s = `g‘_h‰p_m‘hod_Çme ( cÚ -> »que¡ . h‰p_m‘hod ); 1555 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("REQUEST_METHOD"), s , `¡¾’ (s)); 1556 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("REDIRECT_STATUS"), CONST_STR_LEN("200")); 1557 s = `g‘_h‰p_v”siÚ_Çme ( cÚ -> »que¡ . h‰p_v”siÚ ); 1558 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("SERVER_PROTOCOL"), s , `¡¾’ (s)); 1560 #ifdeà USE_OPENSSL 1561 ià( ¤v_sock -> is_s¦ ) { 1562 `scgi_’v_add ( p -> scgi_’v , `CONST_STR_LEN ("HTTPS"), CONST_STR_LEN("on")); 1566 `scgi_’v_add_»que¡_h—d”s ( ¤v , cÚ , p ); 1568 b = `chunkqueue_g‘_­³nd_bufãr ( hùx -> wb ); 1570 `bufãr_­³nd_lÚg ( b , p -> scgi_’v -> u£d ); 1571 `bufãr_­³nd_¡ršg_Ën ( b , `CONST_STR_LEN (":")); 1572 `bufãr_­³nd_¡ršg_Ën ( b , (cÚ¡ *) p -> scgi_’v -> ±r ,…->scgi_’v-> u£d ); 1573 `bufãr_­³nd_¡ršg_Ën ( b , `CONST_STR_LEN (",")); 1575 hùx -> wb -> by‹s_š +ð b -> u£d - 1; 1577 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth ) { 1578 chunkqueue * »q_cq = cÚ -> »que¡_cÚ‹Á_queue ; 1579 chunk * »q_c ; 1580 off_t off£t ; 1583  off£t = 0, »q_c = »q_cq -> fœ¡ ; off£ˆ!ð»q_cq-> by‹s_š ;„eq_øð»q_c-> Ãxt ) { 1584 off_t weWªt = »q_cq -> by‹s_š - off£t ; 1585 off_t weHave = 0; 1591  »q_c -> ty³ ) { 1592  FILE_CHUNK : 1593 weHave = »q_c -> fže . Ëngth -„eq_c-> off£t ; 1595 ià( weHave > weWªt ) weHave = weWant; 1597 `chunkqueue_­³nd_fže ( hùx -> wb , »q_c -> fže . Çme ,„eq_c-> off£t , weHave ); 1599 »q_c -> off£t +ð weHave ; 1600 »q_cq -> by‹s_out +ð weHave ; 1602 hùx -> wb -> by‹s_š +ð weHave ; 1605  MEM_CHUNK : 1607 weHave = »q_c -> mem -> u£d - 1 -„eq_c-> off£t ; 1609 ià( weHave > weWªt ) weHave = weWant; 1611 b = `chunkqueue_g‘_­³nd_bufãr ( hùx -> wb ); 1612 `bufãr_­³nd_memÜy ( b , »q_c -> mem -> ±r +„eq_c-> off£t , weHave ); 1613 b -> u£d ++; 1615 »q_c -> off£t +ð weHave ; 1616 »q_cq -> by‹s_out +ð weHave ; 1618 hùx -> wb -> by‹s_š +ð weHave ; 1625 off£t +ð weHave ; 1630  i = 0; i < hùx -> wr™e_bufãr -> u£d ; i++) { 1631 `årštf ( ¡d”r , "%02x ", hùx -> wr™e_bufãr -> ±r [ i ]); 1632 ià(( i +1) % 16 == 0) { 1633 size_t j ; 1634  j = i -15; j <= i; j++) { 1635 `årštf ( ¡d”r , "%c", 1636 `i¥ršt (() hùx -> wr™e_bufãr -> ±r [ j ]) ? hctx->write_buffer->ptr[j] : '.'); 1638 `årštf ( ¡d”r , "\n"); 1644 } } 1646  $scgi_»¥Ú£_·r£ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * š ,  eÞ ) { 1647 * ns ; 1648 cÚ¡ * s ; 1649  lše = 0; 1651 `UNUSED ( ¤v ); 1653 `bufãr_cÝy_¡ršg_bufãr ( p -> ·r£_»¥Ú£ , š ); 1655  s = p -> ·r£_»¥Ú£ -> ±r ; 1656 NULL !ð( ns = ( eÞ =ð EOL_RN ? `¡r¡r ( s , "\r\n"è: `¡rchr (s, '\n'))); 1657 s = ns + ( eÞ =ð EOL_RN ? 2 : 1), lše ++) { 1658 cÚ¡ * key , * v®ue ; 1659  key_Ën ; 1660 d©a_¡ršg * ds ; 1662 ns [0] = '\0'; 1664 ià( lše == 0 && 1665 0 =ð `¡ºcmp ( s , "HTTP/1.", 7)) { 1668 ià(( s [7] == '1' || 1669 s [7] == '0') && 1670 s [8] == ' ') { 1671  ¡©us ; 1674 ¡©us = `¡¹Þ ( s +9, NULL , 10); 1676 ià( cÚ -> h‰p_¡©us >= 100 && 1677 cÚ -> h‰p_¡©us < 1000) { 1679 cÚ -> ·r£d_»¥Ú£ |ð HTTP_STATUS ; 1680 cÚ -> h‰p_¡©us = ¡©us ; 1685 key = s ; 1686 ià( NULL =ð( v®ue = `¡rchr ( s , ':'))) { 1691 key_Ën = v®ue - key ; 1692 v®ue += 1; 1695 * v®ue == ' ' || *value == '\t') value++; 1697 ià( NULL =ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( cÚ -> »¥Ú£ . h—d”s , TYPE_STRING ))) { 1698 ds = `d©a_»¥Ú£_š™ (); 1700 `bufãr_cÝy_¡ršg_Ën ( ds -> key , key, key_Ën ); 1701 `bufãr_cÝy_¡ršg ( ds -> v®ue , value); 1703 `¬¿y_š£¹_unique ( cÚ -> »¥Ú£ . h—d”s , ( d©a_un£t *) ds ); 1705  key_Ën ) { 1707 ià(0 =ð `¡ºÿ£cmp ( key , "D©e", key_Ën )) { 1708 cÚ -> ·r£d_»¥Ú£ |ð HTTP_DATE ; 1712 ià(0 =ð `¡ºÿ£cmp ( key , "Stus", key_Ën )) { 1713 cÚ -> h‰p_¡©us = `¡¹Þ ( v®ue , NULL , 10); 1714 cÚ -> ·r£d_»¥Ú£ |ð HTTP_STATUS ; 1718 ià(0 =ð `¡ºÿ£cmp ( key , "LoÿtiÚ", key_Ën )) { 1719 cÚ -> ·r£d_»¥Ú£ |ð HTTP_LOCATION ; 1723 ià(0 =ð `¡ºÿ£cmp ( key , "CÚÃùiÚ", key_Ën )) { 1724 cÚ -> »¥Ú£ . k“p_®ive = (0 =ð `¡rÿ£cmp ( v®ue , "Keep-Alive")) ? 1 : 0; 1725 cÚ -> ·r£d_»¥Ú£ |ð HTTP_CONNECTION ; 1729 ià(0 =ð `¡ºÿ£cmp ( key , "CÚ‹Á-L’gth", key_Ën )) { 1730 cÚ -> »¥Ú£ . cÚ‹Á_Ëngth = `¡¹Þ ( v®ue , NULL , 10); 1731 cÚ -> ·r£d_»¥Ú£ |ð HTTP_CONTENT_LENGTH ; 1741 ià(( cÚ -> ·r£d_»¥Ú£ & HTTP_LOCATION ) && 1742 !( cÚ -> ·r£d_»¥Ú£ & HTTP_STATUS )) { 1743 cÚ -> h‰p_¡©us = 302; 1747 } } 1750  $scgi_demux_»¥Ú£ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 1751 ¶ugš_d©a * p = hùx ->plugin_data; 1752 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 1755  n ; 1757 `bufãr_´•¬e_cÝy ( hùx -> »¥Ú£ , 1024); 1758 ià(-1 =ð( n = `»ad ( hùx -> fd , hùx-> »¥Ú£ -> ±r , hùx->»¥Ú£-> size - 1))) { 1759 ià( ”ºo =ð EAGAIN ||ƒ¼nØ=ð EINTR ) { 1764 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdd", `¡»¼Ü ( ”ºo ), cÚ -> fd , hùx ->fd); 1768 ià( n == 0) { 1771 cÚ -> fže_fšished = 1; 1774 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , NULL , 0); 1775 `jobli¡_­³nd ( ¤v , cÚ ); 1780 hùx -> »¥Ú£ -> ±r [ n ] = '\0'; 1781 hùx -> »¥Ú£ -> u£d = n +1; 1785 ià( cÚ -> fže_¡¬‹d == 0) { 1786 * c ; 1787  š_h—d” = 0; 1788  h—d”_’d = 0; 1789  ý , eÞ = EOL_UNSET ; 1790 size_t u£d = 0; 1792 `bufãr_­³nd_¡ršg_bufãr ( hùx -> »¥Ú£_h—d” , hùx-> »¥Ú£ ); 1795 ià(0 =ð `¡ºcmp ( hùx -> »¥Ú£_h—d” -> ±r , "HTTP/1.", 7)è š_h—d” = 1; 1798  c = hùx -> »¥Ú£_h—d” -> ±r , ý = 0, u£d = hctx->response_header->used - 1; used; c++, cp++, used--) { 1799 ià(* c =ð':'è š_h—d” = 1; 1800 ià(* c == '\n') { 1801 ià( š_h—d” == 0) { 1804 c = NULL ; 1805 h—d”_’d = 1; 1809 ià( eÞ =ð EOL_UNSET èeÞ = EOL_N ; 1811 ià(*( c +1) == '\n') { 1812 h—d”_’d = 1; 1816 } ià( u£d > 1 && * c == '\r' && *(c+1) == '\n') { 1817 ià( š_h—d” == 0) { 1820 c = NULL ; 1821 h—d”_’d = 1; 1825 ià( eÞ =ð EOL_UNSET èeÞ = EOL_RN ; 1827 ià( u£d > 3 && 1828 *( c +2) == '\r' && 1829 *( c +3) == '\n') { 1830 h—d”_’d = 1; 1835 c ++; 1836 ý ++; 1837 u£d --; 1841 ià( h—d”_’d ) { 1842 ià( c =ð NULL ) { 1845 ià( cÚ -> »que¡ . h‰p_v”siÚ =ð HTTP_VERSION_1_1 ) { 1846 cÚ -> »¥Ú£ . Œªsãr_’codšg = HTTP_TRANSFER_ENCODING_CHUNKED ; 1849 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , hùx -> »¥Ú£_h—d” -> ±r , hùx->»¥Ú£_h—d”-> u£d ); 1850 `jobli¡_­³nd ( ¤v , cÚ ); 1852 size_t hËn = c - hùx -> »¥Ú£_h—d” -> ±r + ( eÞ =ð EOL_RN ? 4 : 2); 1853 size_t bËn = hùx -> »¥Ú£_h—d” -> u£d - hËn - 1; 1856 hùx -> »¥Ú£_h—d” -> u£d = hËn + 1 - ( eÞ =ð EOL_RN ? 2 : 1); 1857 hùx -> »¥Ú£_h—d” -> ±r [ hËn - ( eÞ =ð EOL_RN ? 2 : 1)] = '\0'; 1860 `scgi_»¥Ú£_·r£ ( ¤v , cÚ , p , hùx -> »¥Ú£_h—d” , eÞ ); 1863 ià( cÚ -> »que¡ . h‰p_v”siÚ =ð HTTP_VERSION_1_1 && 1864 !( cÚ -> ·r£d_»¥Ú£ & HTTP_CONTENT_LENGTH )) { 1865 cÚ -> »¥Ú£ . Œªsãr_’codšg = HTTP_TRANSFER_ENCODING_CHUNKED ; 1868 ià(( hùx -> »¥Ú£ -> u£d !ð hËn è&& bËn > 0) { 1869 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , c + ( eÞ =ð EOL_RN ? 4: 2), bËn + 1); 1870 `jobli¡_­³nd ( ¤v , cÚ ); 1874 cÚ -> fže_¡¬‹d = 1; 1877 `h‰p_chunk_­³nd_mem ( ¤v , cÚ , hùx -> »¥Ú£ -> ±r , hùx->»¥Ú£-> u£d ); 1878 `jobli¡_­³nd ( ¤v , cÚ ); 1882 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ddss", cÚ -> fd , hùx ->fd, `cÚÃùiÚ_g‘_¡©e (cÚ-> ¡©e ), b -> ±r ); 1887 } } 1890  $scgi_´oþi¡_sÜt_up ( £rv” * ¤v , scgi_ex‹nsiÚ_ho¡ * ho¡ , scgi_´oc * ´oc ) { 1891 scgi_´oc * p ; 1893 `UNUSED ( ¤v ); 1907 ià( ho¡ -> fœ¡ =ð ´oc &&…roc-> Ãxt =ð NULL )  0; 1909  p = ´oc ;…-> Ãxt &&…->Ãxt-> lßd <…roc->load;… =…->next); 1919 ià( p =ð ´oc )  0; 1921 ià( ho¡ -> fœ¡ =ð ´oc ) { 1924 ho¡ -> fœ¡ = ´oc -> Ãxt ; 1925 ho¡ -> fœ¡ -> ´ev = NULL ; 1930 ià( ´oc -> ´ev è´oc->´ev-> Ãxt =…roc->next; 1931 ià( ´oc -> Ãxt è´oc->Ãxt-> ´ev =…roc->prev; 1935 ´oc -> Ãxt = p ->next; 1936 ´oc -> ´ev = p ; 1937 ià( p -> Ãxt èp->Ãxt-> ´ev = ´oc ; 1938 p -> Ãxt = ´oc ; 1940  p = ho¡ -> fœ¡ ;…;… =…-> Ãxt ) { 1941 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "dd", 1942 p -> pid ,…-> lßd ); 1945 `UNUSED ( ¤v ); 1949 } } 1951  $scgi_´oþi¡_sÜt_down ( £rv” * ¤v , scgi_ex‹nsiÚ_ho¡ * ho¡ , scgi_´oc * ´oc ) { 1952 scgi_´oc * p ; 1954 `UNUSED ( ¤v ); 1981 ià( ho¡ -> fœ¡ =ð ´oc &&…roc-> Ãxt =ð NULL )  0; 1983  p = ho¡ -> fœ¡ ;… !ð ´oc &&…-> lßd <…roc->lßd;… =…-> Ãxt ); 1994 ià( p =ð ´oc )  0; 1998 ià( ho¡ -> fœ¡ =ð ´oc )  0; 2001 ià( ´oc -> ´ev è´oc->´ev-> Ãxt =…roc->next; 2002 ià( ´oc -> Ãxt è´oc->Ãxt-> ´ev =…roc->prev; 2005 ´oc -> Ãxt = p ; 2006 ´oc -> ´ev = p ->prev; 2007 ià( p -> ´ev èp->´ev-> Ãxt = ´oc ; 2008 p -> ´ev = ´oc ; 2010 ià( ´oc -> ´ev =ð NULL è ho¡ -> fœ¡ =…roc; 2012  p = ho¡ -> fœ¡ ;…;… =…-> Ãxt ) { 2013 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "dd", 2014 p -> pid ,…-> lßd ); 2017 `UNUSED ( ¤v ); 2021 } } 2023  $scgi_»¡¬t_d—d_´ocs ( £rv” * ¤v , ¶ugš_d©a * p , scgi_ex‹nsiÚ_ho¡ * ho¡ ) { 2024 scgi_´oc * ´oc ; 2026  ´oc = ho¡ -> fœ¡ ;…roc;…roøð´oc-> Ãxt ) { 2027 ià( p -> cÚf . debug ) { 2028 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbdbdddd", 2030 ho¡ ->ho¡, ´oc -> pÜt , 2031 ´oc -> sock‘ , 2032 ´oc -> ¡©e , 2033 ´oc -> is_loÿl , 2034 ´oc -> lßd , 2035 ´oc -> pid ); 2038 ià(0 =ð ´oc -> is_loÿl ) { 2045 ià(( ´oc -> ¡©e =ð PROC_STATE_DISABLED ) && 2046 ( ¤v -> cur_ts - ´oc -> di§bË_ts > ho¡ -> di§bË_time )) { 2047 ´oc -> ¡©e = PROC_STATE_RUNNING ; 2048 ho¡ -> aùive_´ocs ++; 2050 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbdb", 2052 ho¡ ->ho¡, ho¡-> pÜt , 2053 ho¡ -> unixsock‘ ); 2057  ¡©us ; 2059 ià( ´oc -> ¡©e =ð PROC_STATE_DIED_WAIT_FOR_PID ) { 2060  `wa™pid ( ´oc -> pid , & ¡©us , WNOHANG )) { 2067 ià( `WIFEXITED ( ¡©us )) { 2069 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdsd", 2070 "chždƒx™ed,…id:", ´oc -> pid , 2071 "¡©us:", `WEXITSTATUS ( ¡©us )); 2073 } ià( `WIFSIGNALED ( ¡©us )) { 2074 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 2076 `WTERMSIG ( ¡©us )); 2078 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 2080 ¡©us ); 2083 ´oc -> ¡©e = PROC_STATE_DIED ; 2092 ià( ´oc -> ¡©e =ð PROC_STATE_DIED && 2093 ´oc -> lßd == 0) { 2096 ià( p -> cÚf . debug ) { 2097 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdsbsdsd", 2099 "\n\Üt:", ho¡ -> pÜt , 2100 "\n\tsock‘", ho¡ -> unixsock‘ , 2101 "\n\tcu¼’t:", 1, "/", ho¡ -> mš_´ocs ); 2104 ià( `scgi_¥awn_cÚÃùiÚ ( ¤v , p , ho¡ , ´oc )) { 2105 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 2107  HANDLER_ERROR ; 2110 `scgi_´oþi¡_sÜt_down ( ¤v , ho¡ , ´oc ); 2116 } } 2119  hªdËr_t $scgi_wr™e_»que¡ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 2120 ¶ugš_d©a * p = hùx ->plugin_data; 2121 scgi_ex‹nsiÚ_ho¡ * ho¡ ð hùx ->host; 2122 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 2124  »t ; 2127 ià(! ho¡ || 2128 ((! ho¡ ->ho¡-> u£d || !ho¡-> pÜt è&& !ho¡-> unixsock‘ ->used)) { 2129 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sxddd", 2131 ho¡ , 2132 ho¡ ->ho¡-> u£d , 2133 ho¡ -> pÜt , 2134 ho¡ -> unixsock‘ -> u£d ); 2135  HANDLER_ERROR ; 2139  hùx -> ¡©e ) { 2140  FCGI_STATE_INIT : 2141 »t = ho¡ -> unixsock‘ -> u£d ? AF_UNIX : AF_INET ; 2143 ià(-1 =ð( hùx -> fd = `sock‘ ( »t , SOCK_STREAM , 0))) { 2144 ià( ”ºo =ð EMFILE || 2145 ”ºo =ð EINTR ) { 2146 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 2147 "wa™ fÜ fd‡ˆcÚÃùiÚ:", cÚ -> fd ); 2149  HANDLER_WAIT_FOR_FD ; 2152 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdd", 2153 "sock‘ fažed:", `¡»¼Ü ( ”ºo ), ¤v -> cur_fds , srv-> max_fds ); 2154  HANDLER_ERROR ; 2156 hùx -> fde_ndx = -1; 2158 ¤v -> cur_fds ++; 2160 `fdev’t_»gi¡” ( ¤v -> ev , hùx -> fd , scgi_hªdË_fdev’t , hctx); 2162 ià(-1 =ð `fdev’t_fúŽ_£t ( ¤v -> ev , hùx -> fd )) { 2163 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 2164 "fúŽ fažed: ", `¡»¼Ü ( ”ºo )); 2166  HANDLER_ERROR ; 2170  FCGI_STATE_CONNECT : 2171 ià( hùx -> ¡©e =ð FCGI_STATE_INIT ) { 2172  hùx -> ´oc = hùx-> ho¡ -> fœ¡ ; 2173 hùx -> ´oc && hùx->´oc-> ¡©e !ð PROC_STATE_RUNNING ; 2174 hùx -> ´oc = hùx->´oc-> Ãxt ); 2177 ià( hùx -> ´oc =ð NULL ) { 2178 hùx -> fde_ndx = -1; 2180  HANDLER_ERROR ; 2183 ià( hùx -> ´oc -> is_loÿl ) { 2184 hùx -> pid = hùx-> ´oc ->pid; 2187  `scgi_e¡ablish_cÚÃùiÚ ( ¤v , hùx )) { 2189 `scgi_£t_¡©e ( ¤v , hùx , FCGI_STATE_CONNECT ); 2193 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_OUT ); 2195  HANDLER_WAIT_FOR_EVENT ; 2198 hùx -> fde_ndx = -1; 2200  HANDLER_ERROR ; 2208  sock‘_”rÜ ; 2209 sockËn_t sock‘_”rÜ_Ën = ( sock‘_”rÜ ); 2212 ià(0 !ð `g‘sockÝt ( hùx -> fd , SOL_SOCKET , SO_ERROR , & sock‘_”rÜ , & sock‘_”rÜ_Ën )) { 2213 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 2214 "g‘sock݈çžed:", `¡»¼Ü ( ”ºo )); 2216  HANDLER_ERROR ; 2218 ià( sock‘_”rÜ != 0) { 2219 ià(! hùx -> ´oc -> is_loÿl || p -> cÚf . debug ) { 2222 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 2223 "e¡ablishšg cÚÃùiÚ fažed:", `¡»¼Ü ( sock‘_”rÜ ), 2224 "pÜt:", hùx -> ´oc -> pÜt ); 2227  HANDLER_ERROR ; 2233 hùx -> ´oc -> lßd ++; 2234 hùx -> ´oc -> Ï¡_u£d = ¤v -> cur_ts ; 2235 hùx -> gÙ_´oc = 1; 2237 ià( p -> cÚf . debug ) { 2238 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sddbdd", 2240 hùx -> fd , 2241 hùx -> ´oc -> pid , 2242 hùx -> ´oc -> sock‘ , 2243 hùx -> ´oc -> pÜt , 2244 hùx -> ´oc -> lßd ); 2248 `scgi_´oþi¡_sÜt_up ( ¤v , hùx -> ho¡ , hùx-> ´oc ); 2250 `scgi_£t_¡©e ( ¤v , hùx , FCGI_STATE_PREPARE_WRITE ); 2252  FCGI_STATE_PREPARE_WRITE : 2253 `scgi_ü—‹_’v ( ¤v , hùx ); 2255 `scgi_£t_¡©e ( ¤v , hùx , FCGI_STATE_WRITE ); 2258  FCGI_STATE_WRITE : 2259 »t = ¤v -> `ÃtwÜk_back’d_wr™e (¤v, cÚ , hùx -> fd , hùx-> wb ); 2261 `chunkqueue_»move_fšished_chunks ( hùx -> wb ); 2263 ià(-1 =ð »t ) { 2264 ià( ”ºo =ð ENOTCONN ) { 2271 ià( hùx -> wb -> by‹s_out == 0 && 2272 hùx -> »cÚÃùs < 5) { 2273 `u¦“p (10000); 2277 `scgi_»cÚÃù ( ¤v , hùx ); 2279  HANDLER_WAIT_FOR_FD ; 2288 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssosd", 2290 "wr™e-off£t:", hùx -> wb -> by‹s_out , 2291 "»cÚÃù‡‰em±s:", hùx -> »cÚÃùs ); 2293  HANDLER_ERROR ; 2296 ià(( ”ºo !ð EAGAIN ) && 2297 ( ”ºo !ð EINTR )) { 2299 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", 2300 "wr™çžed:", `¡»¼Ü ( ”ºo ),ƒrrno); 2302  HANDLER_ERROR ; 2304 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_OUT ); 2306  HANDLER_WAIT_FOR_EVENT ; 2310 ià( hùx -> wb -> by‹s_out =ðhùx->wb-> by‹s_š ) { 2312 `fdev’t_ev’t_d– ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd ); 2313 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_IN ); 2314 `scgi_£t_¡©e ( ¤v , hùx , FCGI_STATE_READ ); 2316 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_OUT ); 2318  HANDLER_WAIT_FOR_EVENT ; 2322  FCGI_STATE_READ : 2326 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "(debug) unknown state"); 2327  HANDLER_ERROR ; 2330  HANDLER_WAIT_FOR_EVENT ; 2331 } } 2333 $SUBREQUEST_FUNC ( mod_scgi_hªdË_sub»que¡ ) { 2334 ¶ugš_d©a * p = p_d ; 2336 hªdËr_ùx * hùx = cÚ -> ¶ugš_ùx [ p -> id ]; 2337 scgi_´oc * ´oc ; 2338 scgi_ex‹nsiÚ_ho¡ * ho¡ ; 2340 ià( NULL =ð hùx è HANDLER_GO_ON ; 2343 ià( cÚ -> mode !ð p -> id è HANDLER_GO_ON ; 2346  `scgi_wr™e_»que¡ ( ¤v , hùx )) { 2347  HANDLER_ERROR : 2348 ´oc = hùx ->proc; 2349 ho¡ = hùx ->host; 2351 ià( ´oc && 2352 0 =ð ´oc -> is_loÿl && 2353 ´oc -> ¡©e !ð PROC_STATE_DISABLED ) { 2356 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbdb", "fcgi-server disabled:", 2357 ho¡ ->host, 2358 ´oc -> pÜt , 2359 ´oc -> sock‘ ); 2362 ´oc -> di§bË_ts = ¤v -> cur_ts ; 2363 ´oc -> ¡©e = PROC_STATE_DISABLED ; 2364 ho¡ -> aùive_´ocs --; 2367 ià( hùx -> ¡©e =ð FCGI_STATE_INIT || 2368 hùx -> ¡©e =ð FCGI_STATE_CONNECT ) { 2372 ià( ´oc &&…roc-> is_loÿl ) { 2374 ià( p -> cÚf . debug ) { 2375 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbdb", "connect()o scgi failed,„estartinghe„equest-handling:", 2376 ho¡ ->host, 2377 ´oc -> pÜt , 2378 ´oc -> sock‘ ); 2391 ià( ´oc -> ¡©e =ð PROC_STATE_RUNNING && 2392 hùx -> pid =ð ´oc ->pid) { 2393 ´oc -> ¡©e = PROC_STATE_DIED_WAIT_FOR_PID ; 2396 `scgi_»¡¬t_d—d_´ocs ( ¤v , p , ho¡ ); 2398 `scgi_cÚÃùiÚ_þ—nup ( ¤v , hùx ); 2400 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 2401 cÚ -> mode = DIRECT ; 2402 `jobli¡_­³nd ( ¤v , cÚ ); 2408  HANDLER_WAIT_FOR_FD ; 2410 `scgi_cÚÃùiÚ_þ—nup ( ¤v , hùx ); 2412 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 2413 cÚ -> mode = DIRECT ; 2414 cÚ -> h‰p_¡©us = 503; 2416  HANDLER_FINISHED ; 2418  HANDLER_WAIT_FOR_EVENT : 2419 ià( cÚ -> fže_¡¬‹d == 1) { 2420  HANDLER_FINISHED ; 2422  HANDLER_WAIT_FOR_EVENT ; 2424  HANDLER_WAIT_FOR_FD : 2425  HANDLER_WAIT_FOR_FD ; 2427 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "subrequest write-req default"); 2428  HANDLER_ERROR ; 2430 } } 2432  hªdËr_t $scgi_cÚÃùiÚ_þo£ ( £rv” * ¤v , hªdËr_ùx * hùx ) { 2433 ¶ugš_d©a * p ; 2434 cÚÃùiÚ * cÚ ; 2436 ià( NULL =ð hùx è HANDLER_GO_ON ; 2438 p = hùx -> ¶ugš_d©a ; 2439 cÚ = hùx -> »mÙe_cÚn ; 2441 ià( cÚ -> mode !ð p -> id è HANDLER_GO_ON ; 2443 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdsd", 2445 "cÚÃùiÚ-fd:", cÚ -> fd , 2446 "fcgi-fd:", hùx -> fd ); 2450 `scgi_cÚÃùiÚ_þ—nup ( ¤v , hùx ); 2452  HANDLER_FINISHED ; 2453 } } 2456  hªdËr_t $scgi_hªdË_fdev’t (* s , * ùx ,  »v’ts ) { 2457 £rv” * ¤v = (£rv” *) s ; 2458 hªdËr_ùx * hùx = ùx ; 2459 cÚÃùiÚ * cÚ = hùx -> »mÙe_cÚn ; 2460 ¶ugš_d©a * p = hùx ->plugin_data; 2462 scgi_´oc * ´oc = hùx ->proc; 2463 scgi_ex‹nsiÚ_ho¡ * ho¡ ð hùx ->host; 2465 ià(( »v’ts & FDEVENT_IN ) && 2466 hùx -> ¡©e =ð FCGI_STATE_READ ) { 2467  `scgi_demux_»¥Ú£ ( ¤v , hùx )) { 2472 `scgi_cÚÃùiÚ_þ—nup ( ¤v , hùx ); 2474 `jobli¡_­³nd ( ¤v , cÚ ); 2475  HANDLER_FINISHED ; 2477 ià( ´oc -> pid &&…roc-> ¡©e !ð PROC_STATE_DIED ) { 2478  ¡©us ; 2482  `wa™pid ( ´oc -> pid , & ¡©us , WNOHANG )) { 2490 ià( `WIFEXITED ( ¡©us )) { 2491 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdsd", 2492 "chždƒx™ed,…id:", ´oc -> pid , 2493 "¡©us:", `WEXITSTATUS ( ¡©us )); 2494 } ià( `WIFSIGNALED ( ¡©us )) { 2495 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 2497 `WTERMSIG ( ¡©us )); 2499 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 2501 ¡©us ); 2504 ià( p -> cÚf . debug ) { 2505 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdsbsdsd", 2507 "\n\Üt:", ho¡ -> pÜt , 2508 "\n\tsock‘", ho¡ -> unixsock‘ , 2509 "\n\tcu¼’t:", 1, "/", ho¡ -> mš_´ocs ); 2512 ià( `scgi_¥awn_cÚÃùiÚ ( ¤v , p , ho¡ , ´oc )) { 2514 ´oc -> ¡©e = PROC_STATE_DIED ; 2516 `scgi_´oþi¡_sÜt_down ( ¤v , ho¡ , ´oc ); 2523 ià( cÚ -> fže_¡¬‹d == 0) { 2526 ià( hùx -> wb -> by‹s_out == 0 && 2527 hùx -> »cÚÃùs < 5) { 2528 `scgi_»cÚÃù ( ¤v , hùx ); 2530 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdsd", 2532 "cÚÃùiÚ-fd:", cÚ -> fd , 2533 "fcgi-fd:", hùx -> fd ); 2535  HANDLER_WAIT_FOR_FD ; 2538 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sosdsd", 2539 "»¥Ú£‚Ù s’t,„eque¡ s’t:", hùx -> wb -> by‹s_out , 2540 "cÚÃùiÚ-fd:", cÚ -> fd , 2541 "fcgi-fd:", hùx -> fd ); 2543 `scgi_cÚÃùiÚ_þ—nup ( ¤v , hùx ); 2545 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_HANDLE_REQUEST ); 2546 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 2547 cÚ -> h‰p_¡©us = 500; 2548 cÚ -> mode = DIRECT ; 2551 `scgi_cÚÃùiÚ_þ—nup ( ¤v , hùx ); 2553 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssdsd", 2555 "cÚÃùiÚ-fd:", cÚ -> fd , 2556 "fcgi-fd:", hùx -> fd ); 2558 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 2564 `jobli¡_­³nd ( ¤v , cÚ ); 2565  HANDLER_FINISHED ; 2569 ià( »v’ts & FDEVENT_OUT ) { 2570 ià( hùx -> ¡©e =ð FCGI_STATE_CONNECT || 2571 hùx -> ¡©e =ð FCGI_STATE_WRITE ) { 2577  `mod_scgi_hªdË_sub»que¡ ( ¤v , cÚ , p ); 2579 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 2581 hùx -> ¡©e ); 2586 ià( »v’ts & FDEVENT_HUP ) { 2587 ià( hùx -> ¡©e =ð FCGI_STATE_CONNECT ) { 2597  `mod_scgi_hªdË_sub»que¡ ( ¤v , cÚ , p ); 2598 } ià( hùx -> ¡©e =ð FCGI_STATE_READ && 2599 hùx -> ´oc -> pÜt == 0) { 2606 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbSBSDSd", 2608 cÚ -> uri . ·th , 2610 ho¡ ->host, 2612 ho¡ -> pÜt , 2614 hùx -> ¡©e ); 2616 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 2617 `scgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 2618 `jobli¡_­³nd ( ¤v , cÚ ); 2620 } ià( »v’ts & FDEVENT_ERR ) { 2621 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 2626 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 2627 `scgi_cÚÃùiÚ_þo£ ( ¤v , hùx ); 2628 `jobli¡_­³nd ( ¤v , cÚ ); 2631  HANDLER_FINISHED ; 2632 } } 2633  #PATCH ( x ) \ 2634 p -> cÚf . x = s ->x; ) 2635  $scgi_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 2636 size_t i , j ; 2637 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 2639 `PATCH ( exts ); 2640 `PATCH ( debug ); 2643  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 2644 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 2645 s = p -> cÚfig_¡Üage [ i ]; 2648 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 2651  j = 0; j < dc -> v®ue -> u£d ; j++) { 2652 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 2654 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("scgi.server"))) { 2655 `PATCH ( exts ); 2656 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("scgi.debug"))) { 2657 `PATCH ( debug ); 2663 } } 2664 #undeà PATCH 2667  hªdËr_t $scgi_check_ex‹nsiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ,  uri_·th_hªdËr ) { 2668 ¶ugš_d©a * p = p_d ; 2669 size_t s_Ën ; 2670  u£d = -1; 2671  ndx ; 2672 size_t k ; 2673 bufãr * â ; 2674 scgi_ex‹nsiÚ * ex‹nsiÚ = NULL ; 2677 ià( cÚ -> fže_¡¬‹d =ð1è HANDLER_GO_ON ; 2679 â = uri_·th_hªdËr ? cÚ -> uri . ·th : cÚ-> physiÿl .path; 2681 ià( `bufãr_is_em±y ( â )è HANDLER_GO_ON ; 2683 s_Ën = â -> u£d - 1; 2685 `scgi_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 2688  k = 0; k < p -> cÚf . exts -> u£d ; k++) { 2689 size_t ù_Ën ; 2691 ex‹nsiÚ = p -> cÚf . exts ->exts[ k ]; 2693 ià( ex‹nsiÚ -> key -> u£d == 0) ; 2695 ù_Ën = ex‹nsiÚ -> key -> u£d - 1; 2697 ià( s_Ën < ù_Ën ) ; 2700 ià(*( ex‹nsiÚ -> key -> ±r ) == '/') { 2701 ià( `¡ºcmp ( â -> ±r , ex‹nsiÚ -> key ->±r, ù_Ën ) == 0) 2703 } ià(0 =ð `¡ºcmp ( â -> ±r + s_Ën - ù_Ën , ex‹nsiÚ -> key ->ptr, ct_len)) { 2710 ià( k =ð p -> cÚf . exts -> u£d ) { 2711  HANDLER_GO_ON ; 2715  k = 0, ndx = -1; k < ex‹nsiÚ -> u£d ; k++) { 2716 scgi_ex‹nsiÚ_ho¡ * ho¡ = ex‹nsiÚ -> ho¡s [ k ]; 2719 ià( ho¡ -> aùive_´ocs == 0) ; 2721 ià( u£d =ð-1 || ho¡ -> lßd < used) { 2722 u£d = ho¡ -> lßd ; 2724 ndx = k ; 2729 ià( ndx != -1) { 2730 scgi_ex‹nsiÚ_ho¡ * ho¡ = ex‹nsiÚ -> ho¡s [ ndx ]; 2738 ià( uri_·th_hªdËr ) { 2739 ià( ho¡ -> check_loÿl == 0) { 2740 hªdËr_ùx * hùx ; 2741 * ·thšfo ; 2743 hùx = `hªdËr_ùx_š™ (); 2745 hùx -> »mÙe_cÚn = cÚ ; 2746 hùx -> ¶ugš_d©a = p ; 2747 hùx -> ho¡ = host; 2748 hùx -> ´oc = NULL ; 2750 hùx -> cÚf . exts = p ->conf.exts; 2751 hùx -> cÚf . debug = p ->conf.debug; 2753 cÚ -> ¶ugš_ùx [ p -> id ] = hùx ; 2755 ho¡ -> lßd ++; 2757 cÚ -> mode = p -> id ; 2759 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 2760 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "handling it in mod_scgi"); 2784 ià( ex‹nsiÚ -> key -> ±r [0] == '/' && 2785 cÚ -> uri . ·th -> u£d > ex‹nsiÚ -> key ->used && 2786 NULL !ð( ·thšfo = `¡rchr ( cÚ -> uri . ·th -> ±r + ex‹nsiÚ -> key -> u£d - 1, '/'))) { 2789 `bufãr_cÝy_¡ršg ( cÚ -> »que¡ . ·thšfo ,…athinfo); 2791 cÚ -> uri . ·th -> u£d -ðcÚ-> »que¡ . ·thšfo ->used - 1; 2792 cÚ -> uri . ·th -> ±r [cÚ->uri.·th-> u£d - 1] = '\0'; 2795  HANDLER_GO_ON ; 2797 hªdËr_ùx * hùx ; 2798 hùx = `hªdËr_ùx_š™ (); 2800 hùx -> »mÙe_cÚn = cÚ ; 2801 hùx -> ¶ugš_d©a = p ; 2802 hùx -> ho¡ = host; 2803 hùx -> ´oc = NULL ; 2805 hùx -> cÚf . exts = p ->conf.exts; 2806 hùx -> cÚf . debug = p ->conf.debug; 2808 cÚ -> ¶ugš_ùx [ p -> id ] = hùx ; 2810 ho¡ -> lßd ++; 2812 cÚ -> mode = p -> id ; 2814 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 2815 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "handling it in mod_fastcgi"); 2818  HANDLER_GO_ON ; 2822 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 2823 cÚ -> h‰p_¡©us = 500; 2825 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 2827 â ); 2829  HANDLER_FINISHED ; 2831  HANDLER_GO_ON ; 2832 } } 2835  hªdËr_t $scgi_check_ex‹nsiÚ_1 ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 2836  `scgi_check_ex‹nsiÚ ( ¤v , cÚ , p_d , 1); 2837 } } 2840  hªdËr_t $scgi_check_ex‹nsiÚ_2 ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 2841  `scgi_check_ex‹nsiÚ ( ¤v , cÚ , p_d , 0); 2842 } } 2844 $JOBLIST_FUNC ( mod_scgi_hªdË_jobli¡ ) { 2845 ¶ugš_d©a * p = p_d ; 2846 hªdËr_ùx * hùx = cÚ -> ¶ugš_ùx [ p -> id ]; 2848 ià( hùx =ð NULL è HANDLER_GO_ON ; 2850 ià( hùx -> fd != -1) { 2851  hùx -> ¡©e ) { 2852  FCGI_STATE_READ : 2853 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_IN ); 2856  FCGI_STATE_CONNECT : 2857  FCGI_STATE_WRITE : 2858 `fdev’t_ev’t_add ( ¤v -> ev , &( hùx -> fde_ndx ), hùx-> fd , FDEVENT_OUT ); 2861  FCGI_STATE_INIT : 2865 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "unhªdËd fcgi.¡©e", hùx -> ¡©e ); 2870  HANDLER_GO_ON ; 2871 } } 2874  hªdËr_t $scgi_cÚÃùiÚ_þo£_ÿÎback ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 2875 ¶ugš_d©a * p = p_d ; 2877  `scgi_cÚÃùiÚ_þo£ ( ¤v , cÚ -> ¶ugš_ùx [ p -> id ]); 2878 } } 2880 $TRIGGER_FUNC ( mod_scgi_hªdË_Œigg” ) { 2881 ¶ugš_d©a * p = p_d ; 2882 size_t i , j , n ; 2895  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 2896 ¶ugš_cÚfig * cÚf ; 2897 scgi_exts * exts ; 2899 cÚf = p -> cÚfig_¡Üage [ i ]; 2901 exts = cÚf ->exts; 2903  j = 0; j < exts -> u£d ; j++) { 2904 scgi_ex‹nsiÚ * ex ; 2906 ex = exts ->exts[ j ]; 2908  n = 0;‚ < ex -> u£d ;‚++) { 2910 scgi_´oc * ´oc ; 2911  sum_lßd = 0; 2912 scgi_ex‹nsiÚ_ho¡ * ho¡ ; 2914 ho¡ = ex -> ho¡s [ n ]; 2916 `scgi_»¡¬t_d—d_´ocs ( ¤v , p , ho¡ ); 2918  ´oc = ho¡ -> fœ¡ ;…roc;…roøð´oc-> Ãxt ) { 2919 sum_lßd +ð ´oc -> lßd ; 2922 ià( ho¡ -> num_´ocs && 2923 ho¡ -> num_´ocs < ho¡-> max_´ocs && 2924 ( sum_lßd / ho¡ -> num_´ocs è> ho¡-> max_lßd_³r_´oc ) { 2926 scgi_´oc * å = NULL ; 2928 ià( p -> cÚf . debug ) { 2929 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 2933  å = ho¡ -> unu£d_´ocs ; f°&& fp-> pid !ð0; f°ðå-> Ãxt ); 2935 ià( å ) { 2936 ià( å =ð ho¡ -> unu£d_´ocs èho¡->unu£d_´oc ðå-> Ãxt ; 2938 ià( å -> Ãxt èå->Ãxt-> ´ev = NULL ; 2940 ho¡ -> max_id ++; 2942 å = `scgi_´oûss_š™ (); 2943 å -> id = ho¡ -> max_id ++; 2946 ho¡ -> num_´ocs ++; 2948 ià( `bufãr_is_em±y ( ho¡ -> unixsock‘ )) { 2949 å -> pÜt = ho¡ ->p܈+ fp-> id ; 2951 `bufãr_cÝy_¡ršg_bufãr ( å -> sock‘ , ho¡ -> unixsock‘ ); 2952 `bufãr_­³nd_¡ršg ( å -> sock‘ , "-"); 2953 `bufãr_­³nd_lÚg ( å -> sock‘ , fp-> id ); 2956 ià( `scgi_¥awn_cÚÃùiÚ ( ¤v , p , ho¡ , å )) { 2957 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 2959  HANDLER_ERROR ; 2962 å -> ´ev = NULL ; 2963 å -> Ãxt = ho¡ -> fœ¡ ; 2964 ià( ho¡ -> fœ¡ ) { 2965 ho¡ -> fœ¡ -> ´ev = å ; 2967 ho¡ -> fœ¡ = å ; 2970  ´oc = ho¡ -> fœ¡ ;…roc;…roøð´oc-> Ãxt ) { 2971 ià( ´oc -> lßd != 0) ; 2972 ià( ho¡ -> num_´ocs <ðho¡-> mš_´ocs ) ; 2973 ià( ´oc -> pid == 0) ; 2975 ià( ¤v -> cur_ts - ´oc -> Ï¡_u£d > ho¡ -> idË_timeout ) { 2979 ià( p -> cÚf . debug ) { 2980 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbsd", 2982 "sock‘:", ´oc -> sock‘ , 2983 "pid", ´oc -> pid ); 2987 ià( ´oc -> Ãxt è´oc->Ãxt-> ´ev =…roc->prev; 2988 ià( ´oc -> ´ev è´oc->´ev-> Ãxt =…roc->next; 2990 ià( ´oc -> ´ev =ð NULL è ho¡ -> fœ¡ =…roc-> Ãxt ; 2992 ´oc -> ´ev = NULL ; 2993 ´oc -> Ãxt = ho¡ -> unu£d_´ocs ; 2995 ià( ho¡ -> unu£d_´ocs èho¡->unu£d_´ocs-> ´ev = ´oc ; 2996 ho¡ -> unu£d_´ocs = ´oc ; 2998 `kžl ( ´oc -> pid , SIGTERM ); 3000 ´oc -> ¡©e = PROC_STATE_KILLED ; 3002 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbsd", 3004 "sock‘:", ´oc -> sock‘ , 3005 "pid", ´oc -> pid ); 3007 ho¡ -> num_´ocs --; 3014  ´oc = ho¡ -> unu£d_´ocs ;…roc;…roøð´oc-> Ãxt ) { 3015  ¡©us ; 3017 ià( ´oc -> pid == 0) ; 3019  `wa™pid ( ´oc -> pid , & ¡©us , WNOHANG )) { 3024 ià( ”ºo !ð EINTR ) { 3026 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sddss", 3027 "pid ", ´oc -> pid ,…roc-> ¡©e , 3028 "nÙ found:", `¡»¼Ü ( ”ºo )); 3031 ià( ”ºo =ð ECHILD ) { 3033 ´oc -> pid = 0; 3034 ´oc -> ¡©e = PROC_STATE_UNSET ; 3041 ià( `WIFEXITED ( ¡©us )) { 3042 ià( ´oc -> ¡©e !ð PROC_STATE_KILLED ) { 3043 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdb", 3045 `WEXITSTATUS ( ¡©us ), ´oc -> sock‘ ); 3047 } ià( `WIFSIGNALED ( ¡©us )) { 3048 ià( `WTERMSIG ( ¡©us è!ð SIGTERM ) { 3049 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 3051 `WTERMSIG ( ¡©us )); 3054 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 3056 ¡©us ); 3058 ´oc -> pid = 0; 3059 ´oc -> ¡©e = PROC_STATE_UNSET ; 3060 ho¡ -> max_id --; 3067  HANDLER_GO_ON ; 3068 } } 3071  $mod_scgi_¶ugš_š™ ( ¶ugš * p ) { 3072 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 3073 p -> Çme = `bufãr_š™_¡ršg ("scgi"); 3075 p -> š™ = mod_scgi_š™ ; 3076 p -> þ—nup = mod_scgi_ä“ ; 3077 p -> £t_deçuÉs = mod_scgi_£t_deçuÉs ; 3078 p -> cÚÃùiÚ_»£t = scgi_cÚÃùiÚ_»£t ; 3079 p -> hªdË_cÚÃùiÚ_þo£ = scgi_cÚÃùiÚ_þo£_ÿÎback ; 3080 p -> hªdË_uri_þ—n = scgi_check_ex‹nsiÚ_1 ; 3081 p -> hªdË_sub»que¡_¡¬t = scgi_check_ex‹nsiÚ_2 ; 3082 p -> hªdË_sub»que¡ = mod_scgi_hªdË_sub»que¡ ; 3083 p -> hªdË_jobli¡ = mod_scgi_hªdË_jobli¡ ; 3084 p -> hªdË_Œigg” = mod_scgi_hªdË_Œigg” ; 3086 p -> d©a = NULL ; 3089 } } @src/mod_secure_download.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 5  ~"ba£.h " 6  ~"log.h " 7  ~"bufãr.h " 9  ~"¶ugš.h " 11 #ifdeà HAVE_CONFIG_H 12  ~"cÚfig.h " 15 #ifdeà USE_OPENSSL 16  ~<Ý’s¦/md5.h > 18  ~"md5.h " 21  #HASHLEN 16 ) 22  tHASH [ HASHLEN ]; 23  #HASHHEXLEN 32 ) 24  tHASHHEX [ HASHHEXLEN +1]; 25 #ifdeà USE_OPENSSL 26  #IN cÚ¡ ) 28  #IN ) 30  #OUT ) 36 bufãr * mdoc_roÙ ; 37 bufãr * m£ü‘ ; 38 bufãr * muri_´efix ; 40  mtimeout ; 41 } t¶ugš_cÚfig ; 44 mPLUGIN_DATA ; 46 bufãr * mmd5 ; 48 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 50 ¶ugš_cÚfig mcÚf ; 51 } t¶ugš_d©a ; 54 $INIT_FUNC ( mod_£cdowÆßd_š™ ) { 55 ¶ugš_d©a * p ; 57 p = `ÿÎoc (1, (*p)); 59 p -> md5 = `bufãr_š™ (); 61  p ; 62 } } 65 $FREE_FUNC ( mod_£cdowÆßd_ä“ ) { 66 ¶ugš_d©a * p = p_d ; 67 `UNUSED ( ¤v ); 69 ià(! p è HANDLER_GO_ON ; 71 ià( p -> cÚfig_¡Üage ) { 72 size_t i ; 73  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 74 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 76 `bufãr_ä“ ( s -> £ü‘ ); 77 `bufãr_ä“ ( s -> doc_roÙ ); 78 `bufãr_ä“ ( s -> uri_´efix ); 80 `ä“ ( s ); 82 `ä“ ( p -> cÚfig_¡Üage ); 85 `bufãr_ä“ ( p -> md5 ); 87 `ä“ ( p ); 89  HANDLER_GO_ON ; 90 } } 94 $SETDEFAULTS_FUNC ( mod_£cdowÆßd_£t_deçuÉs ) { 95 ¶ugš_d©a * p = p_d ; 96 size_t i = 0; 98 cÚfig_v®ues_t cv [] = { 99 { "£cdowÆßd.£ü‘", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 100 { "£cdowÆßd.docum’t-roÙ", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 101 { "£cdowÆßd.uri-´efix", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 102 { "£cdowÆßd.timeout", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 103 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 106 ià(! p è HANDLER_ERROR ; 108 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 110  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 111 ¶ugš_cÚfig * s ; 113 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 114 s -> £ü‘ = `bufãr_š™ (); 115 s -> doc_roÙ = `bufãr_š™ (); 116 s -> uri_´efix = `bufãr_š™ (); 117 s -> timeout = 60; 119 cv [0]. de¡š©iÚ = s -> £ü‘ ; 120 cv [1]. de¡š©iÚ = s -> doc_roÙ ; 121 cv [2]. de¡š©iÚ = s -> uri_´efix ; 122 cv [3]. de¡š©iÚ = &( s -> timeout ); 124 p -> cÚfig_¡Üage [ i ] = s ; 126 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 127  HANDLER_ERROR ; 131  HANDLER_GO_ON ; 132 } } 141  $is_hex_Ën (cÚ¡ * ¡r , size_t Ën ) { 142 size_t i ; 144 ià( NULL =ð ¡r )  0; 146  i = 0; i < Ën && * ¡r ; i++, str++) { 148 ià(!((* ¡r >= '0' && *str <= '9') || 149 (* ¡r >= 'a' && *str <= 'f') || 150 (* ¡r >= 'A' && *str <= 'F')) 156  i =ð Ën ; 157 } } 159  #PATCH ( x ) \ 160 p -> cÚf . x = s ->x; ) 161  $mod_£cdowÆßd_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 162 size_t i , j ; 163 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 165 `PATCH ( £ü‘ ); 166 `PATCH ( doc_roÙ ); 167 `PATCH ( uri_´efix ); 168 `PATCH ( timeout ); 171  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 172 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 173 s = p -> cÚfig_¡Üage [ i ]; 176 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 179  j = 0; j < dc -> v®ue -> u£d ; j++) { 180 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 182 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("secdownload.secret"))) { 183 `PATCH ( £ü‘ ); 184 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("secdownload.document-root"))) { 185 `PATCH ( doc_roÙ ); 186 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("secdownload.uri-prefix"))) { 187 `PATCH ( uri_´efix ); 188 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("secdownload.timeout"))) { 189 `PATCH ( timeout ); 195 } } 196 #undeà PATCH 199 $URIHANDLER_FUNC ( mod_£cdowÆßd_uri_hªdËr ) { 200 ¶ugš_d©a * p = p_d ; 201 MD5_CTX Md5Ctx ; 202 HASH HA1 ; 203 cÚ¡ * »l_uri , * ts_¡r , * md5_¡r ; 204 time_t ts = 0; 205 size_t i ; 207 ià( cÚ -> uri . ·th -> u£d =ð0è HANDLER_GO_ON ; 209 `mod_£cdowÆßd_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 211 ià( `bufãr_is_em±y ( p -> cÚf . uri_´efix )è HANDLER_GO_ON ; 213 ià( `bufãr_is_em±y ( p -> cÚf . £ü‘ )) { 214 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 216  HANDLER_ERROR ; 219 ià( `bufãr_is_em±y ( p -> cÚf . doc_roÙ )) { 220 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 222  HANDLER_ERROR ; 229 ià(0 !ð `¡ºcmp ( cÚ -> uri . ·th -> ±r , p -> cÚf . uri_´efix ->±r,…->cÚf.uri_´efix-> u£d - 1)è HANDLER_GO_ON ; 231 md5_¡r = cÚ -> uri . ·th -> ±r + p -> cÚf . uri_´efix -> u£d - 1; 233 ià(! `is_hex_Ën ( md5_¡r , 32)è HANDLER_GO_ON ; 234 ià(*( md5_¡r + 32è!ð'/'è HANDLER_GO_ON ; 236 ts_¡r = md5_¡r + 32 + 1; 238 ià(! `is_hex_Ën ( ts_¡r , 8)è HANDLER_GO_ON ; 239 ià(*( ts_¡r + 8è!ð'/'è HANDLER_GO_ON ; 241  i = 0; i < 8; i++) { 242 ts = (t << 4è+ `hex2št (*( ts_¡r + i )); 246 ià( ¤v -> cur_ts - ts > p -> cÚf . timeout || 247 ¤v -> cur_ts - ts < - p -> cÚf . timeout ) { 249 cÚ -> h‰p_¡©us = 410; 251  HANDLER_FINISHED ; 254 »l_uri = ts_¡r + 8; 261 `bufãr_cÝy_¡ršg_bufãr ( p -> md5 ,…-> cÚf . £ü‘ ); 262 `bufãr_­³nd_¡ršg ( p -> md5 , »l_uri ); 263 `bufãr_­³nd_¡ršg_Ën ( p -> md5 , ts_¡r , 8); 265 `MD5_In™ (& Md5Ctx ); 266 `MD5_Upd©e (& Md5Ctx , (*) p -> md5 -> ±r ,…->md5-> u£d - 1); 267 `MD5_Fš® ( HA1 , & Md5Ctx ); 269 `bufãr_cÝy_¡ršg_hex ( p -> md5 , (*) HA1 , 16); 271 ià(0 !ð `¡ºcmp ( md5_¡r , p -> md5 -> ±r , 32)) { 272 cÚ -> h‰p_¡©us = 403; 274 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 276 md5_¡r , p -> md5 -> ±r ); 278  HANDLER_FINISHED ; 284 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . doc_roÙ , p -> cÚf .doc_root); 285 `bufãr_cÝy_¡ršg ( cÚ -> physiÿl . »l_·th , »l_uri ); 286 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ·th , cÚ->physiÿl. doc_roÙ ); 287 `bufãr_­³nd_¡ršg_bufãr ( cÚ -> physiÿl . ·th , cÚ->physiÿl. »l_·th ); 289  HANDLER_GO_ON ; 290 } } 294  $mod_£cdowÆßd_¶ugš_š™ ( ¶ugš * p ) { 295 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 296 p -> Çme = `bufãr_š™_¡ršg ("secdownload"); 298 p -> š™ = mod_£cdowÆßd_š™ ; 299 p -> hªdË_physiÿl = mod_£cdowÆßd_uri_hªdËr ; 300 p -> £t_deçuÉs = mod_£cdowÆßd_£t_deçuÉs ; 301 p -> þ—nup = mod_£cdowÆßd_ä“ ; 303 p -> d©a = NULL ; 306 } } @src/mod_setenv.c 1  ~<¡dlib.h > 2  ~<¡ršg.h > 4  ~"ba£.h " 5  ~"log.h " 6  ~"bufãr.h " 8  ~"¶ugš.h " 10  ~"»¥Ú£.h " 15  mhªdËd ; 16 } thªdËr_ùx ; 19 ¬¿y * m»que¡_h—d” ; 20 ¬¿y * m»¥Ú£_h—d” ; 22 ¬¿y * m’vœÚm’t ; 23 } t¶ugš_cÚfig ; 26 mPLUGIN_DATA ; 28 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 30 ¶ugš_cÚfig mcÚf ; 31 } t¶ugš_d©a ; 33  hªdËr_ùx * $hªdËr_ùx_š™ () { 34 hªdËr_ùx * hùx ; 36 hùx = `ÿÎoc (1, (*hctx)); 38 hùx -> hªdËd = 0; 40  hùx ; 41 } } 43  $hªdËr_ùx_ä“ ( hªdËr_ùx * hùx ) { 44 `ä“ ( hùx ); 45 } } 49 $INIT_FUNC ( mod_£‹nv_š™ ) { 50 ¶ugš_d©a * p ; 52 p = `ÿÎoc (1, (*p)); 54  p ; 55 } } 58 $FREE_FUNC ( mod_£‹nv_ä“ ) { 59 ¶ugš_d©a * p = p_d ; 61 `UNUSED ( ¤v ); 63 ià(! p è HANDLER_GO_ON ; 65 ià( p -> cÚfig_¡Üage ) { 66 size_t i ; 67  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 68 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 70 `¬¿y_ä“ ( s -> »que¡_h—d” ); 71 `¬¿y_ä“ ( s -> »¥Ú£_h—d” ); 72 `¬¿y_ä“ ( s -> ’vœÚm’t ); 74 `ä“ ( s ); 76 `ä“ ( p -> cÚfig_¡Üage ); 79 `ä“ ( p ); 81  HANDLER_GO_ON ; 82 } } 86 $SETDEFAULTS_FUNC ( mod_£‹nv_£t_deçuÉs ) { 87 ¶ugš_d©a * p = p_d ; 88 size_t i = 0; 90 cÚfig_v®ues_t cv [] = { 91 { "£‹nv.add-»que¡-h—d”", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 92 { "£‹nv.add-»¥Ú£-h—d”", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 93 { "£‹nv.add-’vœÚm’t", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 94 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 97 ià(! p è HANDLER_ERROR ; 99 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 101  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 102 ¶ugš_cÚfig * s ; 104 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 105 s -> »que¡_h—d” = `¬¿y_š™ (); 106 s -> »¥Ú£_h—d” = `¬¿y_š™ (); 107 s -> ’vœÚm’t = `¬¿y_š™ (); 109 cv [0]. de¡š©iÚ = s -> »que¡_h—d” ; 110 cv [1]. de¡š©iÚ = s -> »¥Ú£_h—d” ; 111 cv [2]. de¡š©iÚ = s -> ’vœÚm’t ; 113 p -> cÚfig_¡Üage [ i ] = s ; 115 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 116  HANDLER_ERROR ; 120  HANDLER_GO_ON ; 121 } } 123  #PATCH ( x ) \ 124 p -> cÚf . x = s ->x; ) 125  $mod_£‹nv_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 126 size_t i , j ; 127 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 129 `PATCH ( »que¡_h—d” ); 130 `PATCH ( »¥Ú£_h—d” ); 131 `PATCH ( ’vœÚm’t ); 134  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 135 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 136 s = p -> cÚfig_¡Üage [ i ]; 139 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 142  j = 0; j < dc -> v®ue -> u£d ; j++) { 143 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 145 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("setenv.add-request-header"))) { 146 `PATCH ( »que¡_h—d” ); 147 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("setenv.add-response-header"))) { 148 `PATCH ( »¥Ú£_h—d” ); 149 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("setenv.add-environment"))) { 150 `PATCH ( ’vœÚm’t ); 156 } } 157 #undeà PATCH 159 $URIHANDLER_FUNC ( mod_£‹nv_uri_hªdËr ) { 160 ¶ugš_d©a * p = p_d ; 161 size_t k ; 162 hªdËr_ùx * hùx ; 164 ià( cÚ -> ¶ugš_ùx [ p -> id ]) { 165 hùx = cÚ -> ¶ugš_ùx [ p -> id ]; 167 hùx = `hªdËr_ùx_š™ (); 169 cÚ -> ¶ugš_ùx [ p -> id ] = hùx ; 172 ià( hùx -> hªdËd ) { 173  HANDLER_GO_ON ; 176 hùx -> hªdËd = 1; 178 `mod_£‹nv_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 180  k = 0; k < p -> cÚf . »que¡_h—d” -> u£d ; k++) { 181 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . »que¡_h—d” -> d©a [ k ]; 182 d©a_¡ršg * ds_d¡ ; 184 ià( NULL =ð( ds_d¡ = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( cÚ -> »que¡ . h—d”s , TYPE_STRING ))) { 185 ds_d¡ = `d©a_¡ršg_š™ (); 188 `bufãr_cÝy_¡ršg_bufãr ( ds_d¡ -> key , ds ->key); 189 `bufãr_cÝy_¡ršg_bufãr ( ds_d¡ -> v®ue , ds ->value); 191 `¬¿y_š£¹_unique ( cÚ -> »que¡ . h—d”s , ( d©a_un£t *) ds_d¡ ); 194  k = 0; k < p -> cÚf . ’vœÚm’t -> u£d ; k++) { 195 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . ’vœÚm’t -> d©a [ k ]; 196 d©a_¡ršg * ds_d¡ ; 198 ià( NULL =ð( ds_d¡ = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( cÚ -> ’vœÚm’t , TYPE_STRING ))) { 199 ds_d¡ = `d©a_¡ršg_š™ (); 202 `bufãr_cÝy_¡ršg_bufãr ( ds_d¡ -> key , ds ->key); 203 `bufãr_cÝy_¡ršg_bufãr ( ds_d¡ -> v®ue , ds ->value); 205 `¬¿y_š£¹_unique ( cÚ -> ’vœÚm’t , ( d©a_un£t *) ds_d¡ ); 208  k = 0; k < p -> cÚf . »¥Ú£_h—d” -> u£d ; k++) { 209 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . »¥Ú£_h—d” -> d©a [ k ]; 211 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_BUF_LEN ( ds -> key ), CONST_BUF_LEN(ds-> v®ue )); 215  HANDLER_GO_ON ; 216 } } 218 $REQUESTDONE_FUNC ( mod_£‹nv_»£t ) { 219 ¶ugš_d©a * p = p_d ; 221 `UNUSED ( ¤v ); 223 ià( cÚ -> ¶ugš_ùx [ p -> id ]) { 224 `hªdËr_ùx_ä“ ( cÚ -> ¶ugš_ùx [ p -> id ]); 225 cÚ -> ¶ugš_ùx [ p -> id ] = NULL ; 228  HANDLER_GO_ON ; 229 } } 233  $mod_£‹nv_¶ugš_š™ ( ¶ugš * p ) { 234 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 235 p -> Çme = `bufãr_š™_¡ršg ("setenv"); 237 p -> š™ = mod_£‹nv_š™ ; 238 p -> hªdË_uri_þ—n = mod_£‹nv_uri_hªdËr ; 239 p -> £t_deçuÉs = mod_£‹nv_£t_deçuÉs ; 240 p -> þ—nup = mod_£‹nv_ä“ ; 242 p -> hªdË_»que¡_dÚe = mod_£‹nv_»£t ; 244 p -> d©a = NULL ; 247 } } @src/mod_simple_vhost.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 4  ~<”ºo.h > 6  ~"ba£.h " 7  ~"log.h " 8  ~"bufãr.h " 9  ~"¡©_ÿche.h " 11  ~"¶ugš.h " 13 #ifdeà HAVE_CONFIG_H 14  ~"cÚfig.h " 18 bufãr * m£rv”_roÙ ; 19 bufãr * mdeçuÉ_ho¡ ; 20 bufãr * mdocum’t_roÙ ; 22 bufãr * mdoüoÙ_ÿche_key ; 23 bufãr * mdoüoÙ_ÿche_v®ue ; 24 bufãr * mdoüoÙ_ÿche_£rv”Çme ; 26  mdebug ; 27 } t¶ugš_cÚfig ; 30 mPLUGIN_DATA ; 32 bufãr * mdoc_roÙ ; 34 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 35 ¶ugš_cÚfig mcÚf ; 36 } t¶ugš_d©a ; 38 $INIT_FUNC ( mod_sim¶e_vho¡_š™ ) { 39 ¶ugš_d©a * p ; 41 p = `ÿÎoc (1, (*p)); 43 p -> doc_roÙ = `bufãr_š™ (); 45  p ; 46 } } 48 $FREE_FUNC ( mod_sim¶e_vho¡_ä“ ) { 49 ¶ugš_d©a * p = p_d ; 51 `UNUSED ( ¤v ); 53 ià(! p è HANDLER_GO_ON ; 55 ià( p -> cÚfig_¡Üage ) { 56 size_t i ; 57  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 58 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 60 `bufãr_ä“ ( s -> docum’t_roÙ ); 61 `bufãr_ä“ ( s -> deçuÉ_ho¡ ); 62 `bufãr_ä“ ( s -> £rv”_roÙ ); 64 `bufãr_ä“ ( s -> doüoÙ_ÿche_key ); 65 `bufãr_ä“ ( s -> doüoÙ_ÿche_v®ue ); 66 `bufãr_ä“ ( s -> doüoÙ_ÿche_£rv”Çme ); 68 `ä“ ( s ); 71 `ä“ ( p -> cÚfig_¡Üage ); 74 `bufãr_ä“ ( p -> doc_roÙ ); 76 `ä“ ( p ); 78  HANDLER_GO_ON ; 79 } } 81 $SETDEFAULTS_FUNC ( mod_sim¶e_vho¡_£t_deçuÉs ) { 82 ¶ugš_d©a * p = p_d ; 83 size_t i ; 85 cÚfig_v®ues_t cv [] = { 86 { "sim¶e-vho¡.£rv”-roÙ", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 87 { "sim¶e-vho¡.deçuÉ-ho¡", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 88 { "sim¶e-vho¡.docum’t-roÙ", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 89 { "sim¶e-vho¡.debug", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 90 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 93 ià(! p è HANDLER_ERROR ; 95 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 97  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 98 ¶ugš_cÚfig * s ; 100 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 102 s -> £rv”_roÙ = `bufãr_š™ (); 103 s -> deçuÉ_ho¡ = `bufãr_š™ (); 104 s -> docum’t_roÙ = `bufãr_š™ (); 106 s -> doüoÙ_ÿche_key = `bufãr_š™ (); 107 s -> doüoÙ_ÿche_v®ue = `bufãr_š™ (); 108 s -> doüoÙ_ÿche_£rv”Çme = `bufãr_š™ (); 110 s -> debug = 0; 112 cv [0]. de¡š©iÚ = s -> £rv”_roÙ ; 113 cv [1]. de¡š©iÚ = s -> deçuÉ_ho¡ ; 114 cv [2]. de¡š©iÚ = s -> docum’t_roÙ ; 115 cv [3]. de¡š©iÚ = &( s -> debug ); 118 p -> cÚfig_¡Üage [ i ] = s ; 120 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 121  HANDLER_ERROR ; 125  HANDLER_GO_ON ; 126 } } 128  $bužd_doc_roÙ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * out , bufã¸* ho¡ ) { 129 ¡©_ÿche_’Œy * sû = NULL ; 131 `bufãr_´•¬e_cÝy ( out , 128); 133 ià( p -> cÚf . £rv”_roÙ -> u£d ) { 134 `bufãr_cÝy_¡ršg_bufãr ( out , p -> cÚf . £rv”_roÙ ); 136 ià( ho¡ -> u£d ) { 140 * dp ; 142 `BUFFER_APPEND_SLASH ( out ); 144 ià( NULL =ð( dp = `¡rchr ( ho¡ -> ±r , ':'))) { 145 `bufãr_­³nd_¡ršg_bufãr ( out , ho¡ ); 147 `bufãr_­³nd_¡ršg_Ën ( out , ho¡ -> ±r , dp - host->ptr); 150 `BUFFER_APPEND_SLASH ( out ); 152 ià( p -> cÚf . docum’t_roÙ -> u£d > 2 &&…->cÚf.docum’t_roÙ-> ±r [0] == '/') { 153 `bufãr_­³nd_¡ršg_Ën ( out , p -> cÚf . docum’t_roÙ -> ±r + 1,…->cÚf.docum’t_roÙ-> u£d - 2); 155 `bufãr_­³nd_¡ršg_bufãr ( out , p -> cÚf . docum’t_roÙ ); 156 `BUFFER_APPEND_SLASH ( out ); 159 `bufãr_cÝy_¡ršg_bufãr ( out , cÚ -> cÚf . docum’t_roÙ ); 160 `BUFFER_APPEND_SLASH ( out ); 163 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , out , & sû )) { 164 ià( p -> cÚf . debug ) { 165 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 166 `¡»¼Ü ( ”ºo ), out ); 169 } ià(! `S_ISDIR ( sû -> ¡ . ¡_mode )) { 174 } } 177  #PATCH ( x ) \ 178 p -> cÚf . x = s ->x; ) 179  $mod_sim¶e_vho¡_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 180 size_t i , j ; 181 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 183 `PATCH ( £rv”_roÙ ); 184 `PATCH ( deçuÉ_ho¡ ); 185 `PATCH ( docum’t_roÙ ); 187 `PATCH ( doüoÙ_ÿche_key ); 188 `PATCH ( doüoÙ_ÿche_v®ue ); 189 `PATCH ( doüoÙ_ÿche_£rv”Çme ); 191 `PATCH ( debug ); 194  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 195 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 196 s = p -> cÚfig_¡Üage [ i ]; 199 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 202  j = 0; j < dc -> v®ue -> u£d ; j++) { 203 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 205 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("simple-vhost.server-root"))) { 206 `PATCH ( £rv”_roÙ ); 207 `PATCH ( doüoÙ_ÿche_key ); 208 `PATCH ( doüoÙ_ÿche_v®ue ); 209 `PATCH ( doüoÙ_ÿche_£rv”Çme ); 210 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("simple-vhost.default-host"))) { 211 `PATCH ( deçuÉ_ho¡ ); 212 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("simple-vhost.document-root"))) { 213 `PATCH ( docum’t_roÙ ); 214 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("simple-vhost.debug"))) { 215 `PATCH ( debug ); 221 } } 222 #undeà PATCH 224  hªdËr_t $mod_sim¶e_vho¡_doüoÙ ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d©a ) { 225 ¶ugš_d©a * p = p_d©a ; 233 `mod_sim¶e_vho¡_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 235 ià( p -> cÚf . doüoÙ_ÿche_key -> u£d && 236 cÚ -> uri . authÜ™y -> u£d && 237 `bufãr_is_equ® ( p -> cÚf . doüoÙ_ÿche_key , cÚ -> uri . authÜ™y )) { 239 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . doc_roÙ , p -> cÚf . doüoÙ_ÿche_v®ue ); 240 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> £rv”_Çme , p -> cÚf . doüoÙ_ÿche_£rv”Çme ); 243 ià(( cÚ -> uri . authÜ™y -> u£d == 0) || 244 `bužd_doc_roÙ ( ¤v , cÚ , p ,…-> doc_roÙ , cÚ-> uri . authÜ™y )) { 246 ià( `bužd_doc_roÙ ( ¤v , cÚ , p , 247 p -> doc_roÙ , 248 p -> cÚf . deçuÉ_ho¡ )) { 249  HANDLER_GO_ON ; 251 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> £rv”_Çme , p -> cÚf . deçuÉ_ho¡ ); 254 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> £rv”_Çme , cÚ-> uri . authÜ™y ); 258 `bufãr_cÝy_¡ršg_bufãr ( p -> cÚf . doüoÙ_ÿche_key , cÚ -> uri . authÜ™y ); 259 `bufãr_cÝy_¡ršg_bufãr ( p -> cÚf . doüoÙ_ÿche_v®ue ,…-> doc_roÙ ); 260 `bufãr_cÝy_¡ršg_bufãr ( p -> cÚf . doüoÙ_ÿche_£rv”Çme , cÚ -> £rv”_Çme ); 262 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . doc_roÙ , p ->doc_root); 265  HANDLER_GO_ON ; 266 } } 269  $mod_sim¶e_vho¡_¶ugš_š™ ( ¶ugš * p ) { 270 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 271 p -> Çme = `bufãr_š™_¡ršg ("simple_vhost"); 273 p -> š™ = mod_sim¶e_vho¡_š™ ; 274 p -> £t_deçuÉs = mod_sim¶e_vho¡_£t_deçuÉs ; 275 p -> hªdË_doüoÙ = mod_sim¶e_vho¡_doüoÙ ; 276 p -> þ—nup = mod_sim¶e_vho¡_ä“ ; 278 p -> d©a = NULL ; 281 } } @src/mod_skeleton.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 5  ~"ba£.h " 6  ~"log.h " 7  ~"bufãr.h " 9  ~"¶ugš.h " 11 #ifdeà HAVE_CONFIG_H 12  ~"cÚfig.h " 31 ¬¿y * mm©ch ; 32 } t¶ugš_cÚfig ; 35 mPLUGIN_DATA ; 37 bufãr * mm©ch_buf ; 39 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 41 ¶ugš_cÚfig mcÚf ; 42 } t¶ugš_d©a ; 45 size_t mfoo ; 46 } thªdËr_ùx ; 48  hªdËr_ùx * $hªdËr_ùx_š™ () { 49 hªdËr_ùx * hùx ; 51 hùx = `ÿÎoc (1, (*hctx)); 53  hùx ; 54 } } 56  $hªdËr_ùx_ä“ ( hªdËr_ùx * hùx ) { 58 `ä“ ( hùx ); 59 } } 62 $INIT_FUNC ( mod_sk–‘Ú_š™ ) { 63 ¶ugš_d©a * p ; 65 p = `ÿÎoc (1, (*p)); 67 p -> m©ch_buf = `bufãr_š™ (); 69  p ; 70 } } 73 $FREE_FUNC ( mod_sk–‘Ú_ä“ ) { 74 ¶ugš_d©a * p = p_d ; 76 `UNUSED ( ¤v ); 78 ià(! p è HANDLER_GO_ON ; 80 ià( p -> cÚfig_¡Üage ) { 81 size_t i ; 83  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 84 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 86 ià(! s ) ; 88 `¬¿y_ä“ ( s -> m©ch ); 90 `ä“ ( s ); 92 `ä“ ( p -> cÚfig_¡Üage ); 95 `bufãr_ä“ ( p -> m©ch_buf ); 97 `ä“ ( p ); 99  HANDLER_GO_ON ; 100 } } 104 $SETDEFAULTS_FUNC ( mod_sk–‘Ú_£t_deçuÉs ) { 105 ¶ugš_d©a * p = p_d ; 106 size_t i = 0; 108 cÚfig_v®ues_t cv [] = { 109 { "sk–‘Ú.¬¿y", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 110 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 113 ià(! p è HANDLER_ERROR ; 115 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 117  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 118 ¶ugš_cÚfig * s ; 120 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 121 s -> m©ch = `¬¿y_š™ (); 123 cv [0]. de¡š©iÚ = s -> m©ch ; 125 p -> cÚfig_¡Üage [ i ] = s ; 127 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 128  HANDLER_ERROR ; 132  HANDLER_GO_ON ; 133 } } 135  #PATCH ( x ) \ 136 p -> cÚf . x = s ->x; ) 137  $mod_sk–‘Ú_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 138 size_t i , j ; 139 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 141 `PATCH ( m©ch ); 144  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 145 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 146 s = p -> cÚfig_¡Üage [ i ]; 149 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 152  j = 0; j < dc -> v®ue -> u£d ; j++) { 153 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 155 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("skeleton.array"))) { 156 `PATCH ( m©ch ); 162 } } 163 #undeà PATCH 165 $URIHANDLER_FUNC ( mod_sk–‘Ú_uri_hªdËr ) { 166 ¶ugš_d©a * p = p_d ; 167  s_Ën ; 168 size_t k , i ; 170 `UNUSED ( ¤v ); 172 ià( cÚ -> uri . ·th -> u£d =ð0è HANDLER_GO_ON ; 174 `mod_sk–‘Ú_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 176 s_Ën = cÚ -> uri . ·th -> u£d - 1; 178  k = 0; k < p -> cÚf . m©ch -> u£d ; k++) { 179 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . m©ch -> d©a [ k ]; 180  ù_Ën = ds -> v®ue -> u£d - 1; 182 ià( ù_Ën > s_Ën ) ; 183 ià( ds -> v®ue -> u£d == 0) ; 185 ià(0 =ð `¡ºcmp ( cÚ -> uri . ·th -> ±r + s_Ën - ù_Ën , ds -> v®ue ->ptr, ct_len)) { 186 cÚ -> h‰p_¡©us = 403; 188  HANDLER_FINISHED ; 193  HANDLER_GO_ON ; 194 } } 198  $mod_sk–‘Ú_¶ugš_š™ ( ¶ugš * p ) { 199 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 200 p -> Çme = `bufãr_š™_¡ršg ("skeleton"); 202 p -> š™ = mod_sk–‘Ú_š™ ; 203 p -> hªdË_uri_þ—n = mod_sk–‘Ú_uri_hªdËr ; 204 p -> £t_deçuÉs = mod_sk–‘Ú_£t_deçuÉs ; 205 p -> þ—nup = mod_sk–‘Ú_ä“ ; 207 p -> d©a = NULL ; 210 } } @src/mod_ssi.c 1  ~ 3  ~<ùy³.h > 4  ~<¡dlib.h > 5  ~<¡dio.h > 6  ~<¡ršg.h > 7  ~<”ºo.h > 8  ~ 9  ~ 11  ~"ba£.h " 12  ~"log.h " 13  ~"bufãr.h " 14  ~"¡©_ÿche.h " 16  ~"¶ugš.h " 17  ~"¡»am.h " 19  ~"»¥Ú£.h " 21  ~"mod_ssi.h " 23  ~"š‘_ÁÝ_ÿche.h " 25  ~"sys-sock‘.h " 27 #ifdeà HAVE_PWD_H 28  ~ 31 #ifdeà HAVE_FORK 32  ~ 35 #ifdeà HAVE_SYS_FILIO_H 36  ~ 39  ~"‘ag.h " 42 vÞ©ž time_t gšþude_fže_Ï¡_mtime = 0; 45 $INIT_FUNC ( mod_ssi_š™ ) { 46 ¶ugš_d©a * p ; 48 p = `ÿÎoc (1, (*p)); 50 p -> timefmt = `bufãr_š™ (); 51 p -> ¡©_â = `bufãr_š™ (); 53 p -> ssi_v¬s = `¬¿y_š™ (); 54 p -> ssi_cgi_’v = `¬¿y_š™ (); 56  p ; 57 } } 60 $FREE_FUNC ( mod_ssi_ä“ ) { 61 ¶ugš_d©a * p = p_d ; 62 `UNUSED ( ¤v ); 64 ià(! p è HANDLER_GO_ON ; 66 ià( p -> cÚfig_¡Üage ) { 67 size_t i ; 68  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 69 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 71 `¬¿y_ä“ ( s -> ssi_ex‹nsiÚ ); 73 `ä“ ( s ); 75 `ä“ ( p -> cÚfig_¡Üage ); 78 `¬¿y_ä“ ( p -> ssi_v¬s ); 79 `¬¿y_ä“ ( p -> ssi_cgi_’v ); 80 #ifdeà HAVE_PCRE_H 81 `püe_ä“ ( p -> ssi_»gex ); 83 `bufãr_ä“ ( p -> timefmt ); 84 `bufãr_ä“ ( p -> ¡©_â ); 86 `ä“ ( p ); 88  HANDLER_GO_ON ; 89 } } 93 $SETDEFAULTS_FUNC ( mod_ssi_£t_deçuÉs ) { 94 ¶ugš_d©a * p = p_d ; 95 size_t i = 0; 96 #ifdeà HAVE_PCRE_H 97 cÚ¡ * ”½Œ ; 98  ”roff ; 101 cÚfig_v®ues_t cv [] = { 102 { "ssi.ex‹nsiÚ", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 103 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 106 ià(! p è HANDLER_ERROR ; 108 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 110  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 111 ¶ugš_cÚfig * s ; 113 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 114 s -> ssi_ex‹nsiÚ = `¬¿y_š™ (); 116 cv [0]. de¡š©iÚ = s -> ssi_ex‹nsiÚ ; 118 p -> cÚfig_¡Üage [ i ] = s ; 120 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 121  HANDLER_ERROR ; 125 #ifdeà HAVE_PCRE_H 127 ià( NULL =ð( p -> ssi_»gex = `püe_compže ("", 0, & ”½Œ , & ”roff , NULL))) { 128 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 130 ”roff , ”½Œ ); 131  HANDLER_ERROR ; 134 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 136  HANDLER_ERROR ; 139  HANDLER_GO_ON ; 140 } } 142  $ssi_’v_add ( ¬¿y * ’v , cÚ¡ * key , cÚ¡ * v® ) { 143 d©a_¡ršg * ds ; 145 ià( NULL =ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( ’v , TYPE_STRING ))) { 146 ds = `d©a_¡ršg_š™ (); 148 `bufãr_cÝy_¡ršg ( ds -> key , key); 149 `bufãr_cÝy_¡ršg ( ds -> v®ue , v® ); 151 `¬¿y_š£¹_unique ( ’v , ( d©a_un£t *) ds ); 154 } } 162  $ssi_’v_add_»que¡_h—d”s ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 163 size_t i ; 165  i = 0; i < cÚ -> »que¡ . h—d”s -> u£d ; i++) { 166 d©a_¡ršg * ds ; 168 ds = ( d©a_¡ršg *) cÚ -> »que¡ . h—d”s -> d©a [ i ]; 170 ià( ds -> v®ue -> u£d && ds-> key ->used) { 171 size_t j ; 172 `bufãr_»£t ( ¤v -> tmp_buf ); 175 ià(0 =ð `¡rÿ£cmp ( ds -> key -> ±r , "AUTHORIZATION")) { 179 ià(0 !ð `¡rÿ£cmp ( ds -> key -> ±r , "CONTENT-TYPE")) { 180 `bufãr_cÝy_¡ršg ( ¤v -> tmp_buf , "HTTP_"); 181 ¤v -> tmp_buf -> u£d --; 184 `bufãr_´•¬e_­³nd ( ¤v -> tmp_buf , ds -> key -> u£d + 2); 185  j = 0; j < ds -> key -> u£d - 1; j++) { 186  c = '_'; 187 ià( `light_i§Íha ( ds -> key -> ±r [ j ])) { 189 c = ds -> key -> ±r [ j ] & ~32; 190 } ià( `light_isdig™ ( ds -> key -> ±r [ j ])) { 192 c = ds -> key -> ±r [ j ]; 194 ¤v -> tmp_buf -> ±r [¤v->tmp_buf-> u£d ++] = c ; 196 ¤v -> tmp_buf -> ±r [¤v->tmp_buf-> u£d ] = '\0'; 198 `ssi_’v_add ( p -> ssi_cgi_’v , ¤v -> tmp_buf -> ±r , ds -> v®ue ->ptr); 203 } } 205  $bužd_ssi_cgi_v¬s ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 206  buf [32]; 208 £rv”_sock‘ * ¤v_sock = cÚ -> ¤v_sock‘ ; 210 #ifdeà HAVE_IPV6 211  b2 [ INET6_ADDRSTRLEN + 1]; 214  #CONST_STRING ( x ) \ 215 x ) 217 `¬¿y_»£t ( p -> ssi_cgi_’v ); 219 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("SERVER_SOFTWARE"), PACKAGE_NAME "/" PACKAGE_VERSION ); 220 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("SERVER_NAME"), 221 #ifdeà HAVE_IPV6 222 `š‘_ÁÝ ( ¤v_sock -> addr . ¶aš . §_çmžy , 223 ¤v_sock -> addr . ¶aš . §_çmžy =ð AF_INET6 ? 224 (cÚ¡ *è&( ¤v_sock -> addr . v6 . sš6_addr ) : 225 (cÚ¡ *è&( ¤v_sock -> addr . v4 . sš_addr ), 226 b2 , (b2)-1) 228 `š‘_Áß ( ¤v_sock -> addr . v4 . sš_addr ) 231 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("GATEWAY_INTERFACE"), "CGI/1.1"); 233 `LI_Éo¡r ( buf , 234 #ifdeà HAVE_IPV6 235 `Áohs ( ¤v_sock -> addr . ¶aš . §_çmžy ? srv_sock->addr. v6 . sš6_pÜt : srv_sock->addr. v4 . sš_pÜt ) 237 `Áohs ( ¤v_sock -> addr . v4 . sš_pÜt ) 241 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("SERVER_PORT"), buf ); 243 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("REMOTE_ADDR"), 244 `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &( cÚ -> d¡_addr ))); 246 ià( cÚ -> authed_u£r -> u£d ) { 247 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("REMOTE_USER"), 248 cÚ -> authed_u£r -> ±r ); 251 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth > 0) { 255 `LI_Éo¡r ( buf , cÚ -> »que¡ . cÚ‹Á_Ëngth ); 256 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("CONTENT_LENGTH"), buf ); 265 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("SCRIPT_NAME"), cÚ -> uri . ·th -> ±r ); 266 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("PATH_INFO"), ""); 276 ià( cÚ -> »que¡ . ·thšfo -> u£d ) { 277 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("PATH_INFO"), cÚ -> »que¡ . ·thšfo -> ±r ); 280 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("SCRIPT_FILENAME"), cÚ -> physiÿl . ·th -> ±r ); 281 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("DOCUMENT_ROOT"), cÚ -> physiÿl . doc_roÙ -> ±r ); 283 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("REQUEST_URI"), cÚ -> »que¡ . uri -> ±r ); 284 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("QUERY_STRING"), cÚ -> uri . qu”y -> u£d ? cÚ->uri.qu”y-> ±r : ""); 285 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("REQUEST_METHOD"), `g‘_h‰p_m‘hod_Çme ( cÚ -> »que¡ . h‰p_m‘hod )); 286 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("REDIRECT_STATUS"), "200"); 287 `ssi_’v_add ( p -> ssi_cgi_’v , `CONST_STRING ("SERVER_PROTOCOL"), `g‘_h‰p_v”siÚ_Çme ( cÚ -> »que¡ . h‰p_v”siÚ )); 289 `ssi_’v_add_»que¡_h—d”s ( ¤v , cÚ , p ); 292 } } 294  $´oûss_ssi_¡mt ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , 295 cÚ¡ ** l , size_t n ) { 296 size_t i , ssicmd = 0; 297  buf [255]; 298 bufãr * b = NULL ; 301 cÚ¡ * v¬ ; 302 ’um { SSI_UNSET , SSI_ECHO , SSI_FSIZE , SSI_INCLUDE , SSI_FLASTMOD , 303 SSI_CONFIG , SSI_PRINTENV , SSI_SET , SSI_IF , SSI_ELIF , 304 SSI_ELSE , SSI_ENDIF , SSI_EXEC } ty³ ; 305 } ssicmds [] = { 306 { "echo", SSI_ECHO }, 307 { "šþude", SSI_INCLUDE }, 308 { "æa¡mod", SSI_FLASTMOD }, 309 { "fsize", SSI_FSIZE }, 310 { "cÚfig", SSI_CONFIG }, 311 { "´š‹nv", SSI_PRINTENV }, 312 { "£t", SSI_SET }, 313 { "if", SSI_IF }, 314 { "–if", SSI_ELIF }, 315 { "’dif", SSI_ENDIF }, 316 { "–£", SSI_ELSE }, 317 { "exec", SSI_EXEC }, 319 { NULL , SSI_UNSET } 322  i = 0; ssicmds [i]. v¬ ; i++) { 323 ià(0 =ð `¡rcmp ( l [1], ssicmds [ i ]. v¬ )) { 324 ssicmd = ssicmds [ i ]. ty³ ; 329  ssicmd ) { 330  SSI_ECHO : { 332  v¬ = 0, ’c = 0; 333 cÚ¡ * v¬_v® = NULL ; 334 ¡©_ÿche_’Œy * sû = NULL ; 337 cÚ¡ * v¬ ; 338 ’um { SSI_ECHO_UNSET , SSI_ECHO_DATE_GMT , SSI_ECHO_DATE_LOCAL , SSI_ECHO_DOCUMENT_NAME , SSI_ECHO_DOCUMENT_URI , 339 SSI_ECHO_LAST_MODIFIED , SSI_ECHO_USER_NAME } ty³ ; 340 } echov¬s [] = { 341 { "DATE_GMT", SSI_ECHO_DATE_GMT }, 342 { "DATE_LOCAL", SSI_ECHO_DATE_LOCAL }, 343 { "DOCUMENT_NAME", SSI_ECHO_DOCUMENT_NAME }, 344 { "DOCUMENT_URI", SSI_ECHO_DOCUMENT_URI }, 345 { "LAST_MODIFIED", SSI_ECHO_LAST_MODIFIED }, 346 { "USER_NAME", SSI_ECHO_USER_NAME }, 348 { NULL , SSI_ECHO_UNSET } 352 cÚ¡ * v¬ ; 353 ’um { SSI_ENC_UNSET , SSI_ENC_URL , SSI_ENC_NONE , SSI_ENC_ENTITY } ty³ ; 354 } ’cv¬s [] = { 355 { "u¾", SSI_ENC_URL }, 356 { "nÚe", SSI_ENC_NONE }, 357 { "’t™y", SSI_ENC_ENTITY }, 359 { NULL , SSI_ENC_UNSET } 362  i = 2; i < n ; i += 2) { 363 ià(0 =ð `¡rcmp ( l [ i ], "var")) { 364  j ; 366 v¬_v® = l [ i +1]; 368  j = 0; echov¬s [j]. v¬ ; j++) { 369 ià(0 =ð `¡rcmp ( l [ i +1], echov¬s [ j ]. v¬ )) { 370 v¬ = echov¬s [ j ]. ty³ ; 374 } ià(0 =ð `¡rcmp ( l [ i ], "encoding")) { 375  j ; 377  j = 0; ’cv¬s [j]. v¬ ; j++) { 378 ià(0 =ð `¡rcmp ( l [ i +1], ’cv¬s [ j ]. v¬ )) { 379 ’c = ’cv¬s [ j ]. ty³ ; 384 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 386 l [1],†[ i ]); 390 ià( p -> if_is_çl£ ) ; 392 ià(! v¬_v® ) { 393 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 395 l [1], "var is missing"); 399 `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , cÚ-> physiÿl . ·th , & sû ); 401  v¬ ) { 402  SSI_ECHO_USER_NAME : { 403  ·sswd * pw ; 405 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 406 #ifdeà HAVE_PWD_H 407 ià( NULL =ð( pw = `g‘pwuid ( sû -> ¡ . ¡_uid ))) { 408 `bufãr_cÝy_lÚg ( b , sû -> ¡ . ¡_uid ); 410 `bufãr_cÝy_¡ršg ( b , pw -> pw_Çme ); 413 `bufãr_cÝy_lÚg ( b , sû -> ¡ . ¡_uid ); 417  SSI_ECHO_LAST_MODIFIED : { 418 time_t t = sû -> ¡ . ¡_mtime ; 420 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 421 ià(0 =ð `¡ráime ( buf , (buf), p -> timefmt -> ±r , `loÿÉime (& t ))) { 422 `bufãr_cÝy_¡ršg ( b , "(none)"); 424 `bufãr_cÝy_¡ršg ( b , buf ); 428  SSI_ECHO_DATE_LOCAL : { 429 time_t t = `time ( NULL ); 431 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 432 ià(0 =ð `¡ráime ( buf , (buf), p -> timefmt -> ±r , `loÿÉime (& t ))) { 433 `bufãr_cÝy_¡ršg ( b , "(none)"); 435 `bufãr_cÝy_¡ršg ( b , buf ); 439  SSI_ECHO_DATE_GMT : { 440 time_t t = `time ( NULL ); 442 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 443 ià(0 =ð `¡ráime ( buf , (buf), p -> timefmt -> ±r , `gmtime (& t ))) { 444 `bufãr_cÝy_¡ršg ( b , "(none)"); 446 `bufãr_cÝy_¡ršg ( b , buf ); 450  SSI_ECHO_DOCUMENT_NAME : { 451 * ¦ ; 453 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 454 ià( NULL =ð( ¦ = `¡¼chr ( cÚ -> physiÿl . ·th -> ±r , '/'))) { 455 `bufãr_cÝy_¡ršg_bufãr ( b , cÚ -> physiÿl . ·th ); 457 `bufãr_cÝy_¡ršg ( b , ¦ + 1); 461  SSI_ECHO_DOCUMENT_URI : { 462 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 463 `bufãr_cÝy_¡ršg_bufãr ( b , cÚ -> uri . ·th ); 467 d©a_¡ršg * ds ; 470 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 472 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( p -> ssi_cgi_’v , v¬_v® ))) { 473 `bufãr_cÝy_¡ršg_bufãr ( b , ds -> v®ue ); 475 `bufãr_cÝy_¡ršg ( b , "(none)"); 483  SSI_INCLUDE : 484  SSI_FLASTMOD : 485  SSI_FSIZE : { 486 cÚ¡ * fže_·th = NULL , * vœt_·th = NULL; 487  ¡© ¡ ; 488 * ¦ ; 490  i = 2; i < n ; i += 2) { 491 ià(0 =ð `¡rcmp ( l [ i ], "file")) { 492 fže_·th = l [ i +1]; 493 } ià(0 =ð `¡rcmp ( l [ i ], "virtual")) { 494 vœt_·th = l [ i +1]; 496 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 498 l [1],†[ i ]); 502 ià(! fže_·th && ! vœt_·th ) { 503 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 505 l [1], "file or virtual‡re missing"); 509 ià( fže_·th && vœt_·th ) { 510 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 512 l [1], "only one of file‡nd virtual is‡llowed here"); 517 ià( p -> if_is_çl£ ) ; 519 ià( fže_·th ) { 521 ià( NULL =ð( ¦ = `¡¼chr ( cÚ -> physiÿl . ·th -> ±r , '/'))) { 522 `bufãr_cÝy_¡ršg ( p -> ¡©_â , "/"); 524 `bufãr_cÝy_¡ršg_Ën ( p -> ¡©_â , cÚ -> physiÿl . ·th -> ±r , ¦ - con->physical.path->ptr + 1); 527 `bufãr_cÝy_¡ršg ( ¤v -> tmp_buf , fže_·th ); 528 `bufãr_u¾decode_·th ( ¤v -> tmp_buf ); 529 `bufãr_·th_sim¶ify ( ¤v -> tmp_buf , srv->tmp_buf); 530 `bufãr_­³nd_¡ršg_bufãr ( p -> ¡©_â , ¤v -> tmp_buf ); 534 ià( vœt_·th [0] == '/') { 535 `bufãr_cÝy_¡ršg ( p -> ¡©_â , vœt_·th ); 538 ¦ = `¡¼chr ( cÚ -> uri . ·th -> ±r , '/'); 540 `bufãr_cÝy_¡ršg_Ën ( p -> ¡©_â , cÚ -> uri . ·th -> ±r , ¦ - con->uri.path->ptr + 1); 541 `bufãr_­³nd_¡ršg ( p -> ¡©_â , vœt_·th ); 544 `bufãr_u¾decode_·th ( p -> ¡©_â ); 545 `bufãr_·th_sim¶ify ( ¤v -> tmp_buf , p -> ¡©_â ); 549 `bufãr_cÝy_¡ršg_bufãr ( p -> ¡©_â , cÚ -> physiÿl . doc_roÙ ); 550 `bufãr_­³nd_¡ršg_bufãr ( p -> ¡©_â , ¤v -> tmp_buf ); 553 ià(0 =ð `¡© ( p -> ¡©_â -> ±r , & ¡ )) { 554 time_t t = ¡ . ¡_mtime ; 556  ssicmd ) { 557  SSI_FSIZE : 558 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 559 ià( p -> sizefmt ) { 560  j = 0; 561 cÚ¡ * abr [] = { " B", " kB", " MB", " GB", " TB", NULL }; 563 off_t s = ¡ . ¡_size ; 565  j = 0; s > 1024 && abr [j+1]; s /= 1024, j++); 567 `bufãr_cÝy_off_t ( b , s ); 568 `bufãr_­³nd_¡ršg ( b , abr [ j ]); 570 `bufãr_cÝy_off_t ( b , ¡ . ¡_size ); 573  SSI_FLASTMOD : 574 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 575 ià(0 =ð `¡ráime ( buf , (buf), p -> timefmt -> ±r , `loÿÉime (& t ))) { 576 `bufãr_cÝy_¡ršg ( b , "(none)"); 578 `bufãr_cÝy_¡ršg ( b , buf ); 581  SSI_INCLUDE : 582 `chunkqueue_­³nd_fže ( cÚ -> wr™e_queue , p -> ¡©_â , 0, ¡ . ¡_size ); 585 ià( ¡ . ¡_mtime > šþude_fže_Ï¡_mtime ) 586 šþude_fže_Ï¡_mtime = ¡ . ¡_mtime ; 591 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 593 p -> ¡©_â , `¡»¼Ü ( ”ºo )); 597  SSI_SET : { 598 cÚ¡ * key = NULL , * v® = NULL; 599  i = 2; i < n ; i += 2) { 600 ià(0 =ð `¡rcmp ( l [ i ], "var")) { 601 key = l [ i +1]; 602 } ià(0 =ð `¡rcmp ( l [ i ], "value")) { 603 v® = l [ i +1]; 605 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 607 l [1],†[ i ]); 611 ià( p -> if_is_çl£ ) ; 613 ià( key && v® ) { 614 d©a_¡ršg * ds ; 616 ià( NULL =ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( p -> ssi_v¬s , TYPE_STRING ))) { 617 ds = `d©a_¡ršg_š™ (); 619 `bufãr_cÝy_¡ršg ( ds -> key , key); 620 `bufãr_cÝy_¡ršg ( ds -> v®ue , v® ); 622 `¬¿y_š£¹_unique ( p -> ssi_v¬s , ( d©a_un£t *) ds ); 624 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 626 l [0],†[1]); 630  SSI_CONFIG : 631 ià( p -> if_is_çl£ ) ; 633  i = 2; i < n ; i += 2) { 634 ià(0 =ð `¡rcmp ( l [ i ], "timefmt")) { 635 `bufãr_cÝy_¡ršg ( p -> timefmt , l [ i +1]); 636 } ià(0 =ð `¡rcmp ( l [ i ], "sizefmt")) { 637 ià(0 =ð `¡rcmp ( l [ i +1], "abbrev")) { 638 p -> sizefmt = 1; 639 } ià(0 =ð `¡rcmp ( l [ i +1], "abbrev")) { 640 p -> sizefmt = 0; 642 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sssss", 644 l [ i ], 646 l [1],†[ i +1]); 649 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 651 l [1],†[ i ]); 655  SSI_PRINTENV : 656 ià( p -> if_is_çl£ ) ; 658 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 659 `bufãr_cÝy_¡ršg ( b , "
");

660 
i
 = 0; i < 
p
->
ssi_v¬s
->
u£d
; i++) {

661 
d©a_¡ršg
 *
ds
 = (d©a_¡ršg *)
p
->
ssi_v¬s
->
d©a
[p->ssi_v¬s->
s܋d
[
i
]];

663 
	`bufãr_­³nd_¡ršg_bufãr
(
b
, 
ds
->
key
);

664 
	`bufãr_­³nd_¡ršg
(
b
, ": ");

665 
	`bufãr_­³nd_¡ršg_bufãr
(
b
, 
ds
->
v®ue
);

666 
	`bufãr_­³nd_¡ršg
(
b
, "
"); 669 `bufãr_­³nd_¡ršg ( b , "
"); 672  SSI_EXEC : { 673 cÚ¡ * cmd = NULL ; 674 pid_t pid ; 675  äom_exec_fds [2]; 677  i = 2; i < n ; i += 2) { 678 ià(0 =ð `¡rcmp ( l [ i ], "cmd")) { 679 cmd = l [ i +1]; 681 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 683 l [1],†[ i ]); 687 ià( p -> if_is_çl£ ) ; 694 ià(! cmd ) ; 695 #ifdeà HAVE_FORK 696 ià( `pe ( äom_exec_fds )) { 697 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 698 "pçžed: ", `¡»¼Ü ( ”ºo )); 703  pid = `fÜk ()) { 706 `þo£ ( STDOUT_FILENO ); 707 `dup2 ( äom_exec_fds [1], STDOUT_FILENO ); 708 `þo£ ( äom_exec_fds [1]); 710 `þo£ ( äom_exec_fds [0]); 713 `þo£ ( STDIN_FILENO ); 715 `exeþ ("/bš/sh", "sh", "-c", cmd , (*) NULL ); 717 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", "¥awšgƒxeøçžed:", `¡»¼Ü ( ”ºo ), cmd ); 720 `SEGFAULT (); 725 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "fÜk fažed:", `¡»¼Ü ( ”ºo )); 729  ¡©us ; 730 ssize_t r ; 731  was_š‹¼u±ed = 0; 733 `þo£ ( äom_exec_fds [1]); 741 ià(-1 =ð `wa™pid ( pid , & ¡©us , 0)) { 742 ià( ”ºo =ð EINTR ) { 743 was_š‹¼u±ed ++; 745 was_š‹¼u±ed = 0; 746 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "wa™pid fažed:", `¡»¼Ü ( ”ºo )); 748 } ià( `WIFEXITED ( ¡©us )) { 749  tÜ—d ; 751 was_š‹¼u±ed = 0; 754 ià( `ioùl ( äom_exec_fds [0], FIONREAD , & tÜ—d )) { 755 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 760 ià( tÜ—d > 0) { 761 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 763 `bufãr_´•¬e_cÝy ( b , tÜ—d + 1); 765 ià(( r = `»ad ( äom_exec_fds [0], b -> ±r , b-> size - 1)) < 0) { 769 b -> u£d = r ; 770 b -> ±r [b-> u£d ++] = '\0'; 777 was_š‹¼u±ed = 0; 778 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "processƒxited‡bnormally"); 780 }  was_š‹¼u±ed > 0 && was_interrupted < 4); 782 `þo£ ( äom_exec_fds [0]); 794  SSI_IF : { 795 cÚ¡ * ex´ = NULL ; 797  i = 2; i < n ; i += 2) { 798 ià(0 =ð `¡rcmp ( l [ i ], "expr")) { 799 ex´ = l [ i +1]; 801 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 803 l [1],†[ i ]); 807 ià(! ex´ ) { 808 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 810 l [1], "expr missing"); 814 ià((! p -> if_is_çl£ ) && 815 (( p -> if_is_çl£_Ëv– == 0) || 816 ( p -> if_Ëv– <…-> if_is_çl£_Ëv– ))) { 817  `ssi_ev®_ex´ ( ¤v , cÚ , p , ex´ )) { 820 p -> if_is_çl£ = 1; 821 p -> if_is_çl£_Ëv– =…-> if_Ëv– ; 824 p -> if_is_çl£ = 0; 829 p -> if_Ëv– ++; 833  SSI_ELSE : 834 p -> if_Ëv– --; 836 ià( p -> if_is_çl£ ) { 837 ià(( p -> if_Ëv– =ðp-> if_is_çl£_Ëv– ) && 838 ( p -> if_is_çl£_’dif == 0)) { 839 p -> if_is_çl£ = 0; 842 p -> if_is_çl£ = 1; 844 p -> if_is_çl£_Ëv– =…-> if_Ëv– ; 846 p -> if_Ëv– ++; 849  SSI_ELIF : { 850 cÚ¡ * ex´ = NULL ; 851  i = 2; i < n ; i += 2) { 852 ià(0 =ð `¡rcmp ( l [ i ], "expr")) { 853 ex´ = l [ i +1]; 855 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 857 l [1],†[ i ]); 861 ià(! ex´ ) { 862 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sss", 864 l [1], "expr missing"); 868 p -> if_Ëv– --; 870 ià( p -> if_Ëv– =ðp-> if_is_çl£_Ëv– ) { 871 ià(( p -> if_is_çl£ ) && 872 ( p -> if_is_çl£_’dif == 0)) { 873  `ssi_ev®_ex´ ( ¤v , cÚ , p , ex´ )) { 876 p -> if_is_çl£ = 1; 877 p -> if_is_çl£_Ëv– =…-> if_Ëv– ; 880 p -> if_is_çl£ = 0; 884 p -> if_is_çl£ = 1; 885 p -> if_is_çl£_Ëv– =…-> if_Ëv– ; 886 p -> if_is_çl£_’dif = 1; 890 p -> if_Ëv– ++; 894  SSI_ENDIF : 895 p -> if_Ëv– --; 897 ià( p -> if_Ëv– =ðp-> if_is_çl£_Ëv– ) { 898 p -> if_is_çl£ = 0; 899 p -> if_is_çl£_’dif = 0; 904 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 906 l [1]); 912 } } 914  $mod_ssi_hªdË_»que¡ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 915 ¡»am s ; 916 #ifdeà HAVE_PCRE_H 917  i , n ; 919  #N 10 ) 920  ovec [ N * 3]; 925 `¬¿y_»£t ( p -> ssi_v¬s ); 926 `¬¿y_»£t ( p -> ssi_cgi_’v ); 927 `bufãr_cÝy_¡ršg ( p -> timefmt , "%a, %d %b %Y %H:%M:%S %Z"); 928 p -> sizefmt = 0; 929 `bužd_ssi_cgi_v¬s ( ¤v , cÚ , p ); 930 p -> if_is_çl£ = 0; 933 šþude_fže_Ï¡_mtime = 0; 935 ià(-1 =ð `¡»am_Ý’ (& s , cÚ -> physiÿl . ·th )) { 936 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 937 "¡»am-Ý’: ", cÚ -> physiÿl . ·th ); 1000 #ifdeà HAVE_PCRE_H 1001  i = 0; ( n = `püe_exec ( p -> ssi_»gex , NULL , s . ¡¬t , s. size , i, 0, ovec , N * 3)) > 0; i = ovec[1]) { 1002 cÚ¡ ** l ; 1005 ià(! p -> if_is_çl£ è `chunkqueue_­³nd_fže ( cÚ -> wr™e_queue , cÚ-> physiÿl . ·th , i , ovec [0] - i); 1007 `püe_g‘_sub¡ršg_li¡ ( s . ¡¬t , ovec , n , & l ); 1008 `´oûss_ssi_¡mt ( ¤v , cÚ , p , l , n ); 1009 `püe_ä“_sub¡ršg_li¡ ( l ); 1012  n ) { 1013  PCRE_ERROR_NOMATCH : 1015 `chunkqueue_­³nd_fže ( cÚ -> wr™e_queue , cÚ-> physiÿl . ·th , i , s . size - i); 1019 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1020 "executiÚƒ¼Ü whžm©chšg: ", n ); 1026 `¡»am_þo£ (& s ); 1028 cÚ -> fže_¡¬‹d = 1; 1029 cÚ -> fže_fšished = 1; 1031 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Content-Type"), CONST_STR_LEN("text/html")); 1036 ¡©_ÿche_’Œy * sû = NULL ; 1037 time_t lm_time = 0; 1038 bufãr * mtime = NULL ; 1040 `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , cÚ-> physiÿl . ·th , & sû ); 1042 `‘ag_mu‹ ( cÚ -> physiÿl . ‘ag , sû ->etag); 1043 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("ETag"), `CONST_BUF_LEN (cÚ-> physiÿl . ‘ag )); 1045 ià( sû -> ¡ . ¡_mtime > šþude_fže_Ï¡_mtime ) 1046 lm_time = sû -> ¡ . ¡_mtime ; 1048 lm_time = šþude_fže_Ï¡_mtime ; 1050 mtime = `¡ráime_ÿche_g‘ ( ¤v , lm_time ); 1051 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("La¡-Modif›d"), `CONST_BUF_LEN ( mtime )); 1055 šþude_fže_Ï¡_mtime = 0; 1058 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 1061 } } 1063  #PATCH ( x ) \ 1064 p -> cÚf . x = s ->x; ) 1065  $mod_ssi_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 1066 size_t i , j ; 1067 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 1069 `PATCH ( ssi_ex‹nsiÚ ); 1072  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 1073 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 1074 s = p -> cÚfig_¡Üage [ i ]; 1077 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 1080  j = 0; j < dc -> v®ue -> u£d ; j++) { 1081 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 1083 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("ssi.extension"))) { 1084 `PATCH ( ssi_ex‹nsiÚ ); 1090 } } 1091 #undeà PATCH 1093 $URIHANDLER_FUNC ( mod_ssi_physiÿl_·th ) { 1094 ¶ugš_d©a * p = p_d ; 1095 size_t k ; 1097 ià( cÚ -> physiÿl . ·th -> u£d =ð0è HANDLER_GO_ON ; 1099 `mod_ssi_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 1101  k = 0; k < p -> cÚf . ssi_ex‹nsiÚ -> u£d ; k++) { 1102 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . ssi_ex‹nsiÚ -> d©a [ k ]; 1104 ià( ds -> v®ue -> u£d == 0) ; 1106 ià( `bufãr_is_equ®_right_Ën ( cÚ -> physiÿl . ·th , ds -> v®ue , ds->v®ue-> u£d - 1)) { 1109 ià( `mod_ssi_hªdË_»que¡ ( ¤v , cÚ , p )) { 1111 cÚ -> h‰p_¡©us = 500; 1114  HANDLER_FINISHED ; 1119  HANDLER_GO_ON ; 1120 } } 1124  $mod_ssi_¶ugš_š™ ( ¶ugš * p ) { 1125 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 1126 p -> Çme = `bufãr_š™_¡ršg ("ssi"); 1128 p -> š™ = mod_ssi_š™ ; 1129 p -> hªdË_sub»que¡_¡¬t = mod_ssi_physiÿl_·th ; 1130 p -> £t_deçuÉs = mod_ssi_£t_deçuÉs ; 1131 p -> þ—nup = mod_ssi_ä“ ; 1133 p -> d©a = NULL ; 1136 } } @src/mod_ssi.h 1 #iâdeà _MOD_SSI_H_ 2  #_MOD_SSI_H_ ) 4  ~"ba£.h " 5  ~"bufãr.h " 6  ~"¬¿y.h " 8  ~"¶ugš.h " 10 #ifdeà HAVE_PCRE_H 11  ~ 17 ¬¿y * mssi_ex‹nsiÚ ; 18 } t¶ugš_cÚfig ; 21 mPLUGIN_DATA ; 23 #ifdeà HAVE_PCRE_H 24 püe * mssi_»gex ; 26 bufãr * mtimefmt ; 27  msizefmt ; 29 bufãr * m¡©_â ; 31 ¬¿y * mssi_v¬s ; 32 ¬¿y * mssi_cgi_’v ; 34  mif_Ëv– , mif_is_çl£_Ëv– , mif_is_çl£ , mif_is_çl£_’dif ; 36 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 38 ¶ugš_cÚfig mcÚf ; 39 } t¶ugš_d©a ; 41  ssi_ev®_ex´ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , cÚ¡ * ex´ ); @src/mod_ssi_expr.c 1  ~<ùy³.h > 2  ~<¡ršg.h > 4  ~"bufãr.h " 5  ~"log.h " 6  ~"mod_ssi.h " 7  ~"mod_ssi_ex´.h " 8  ~"mod_ssi_ex´·r£r.h " 11 cÚ¡ * mšput ; 12 size_t moff£t ; 13 size_t msize ; 15  mlše_pos ; 17  mš_key ; 18  mš_b¿û ; 19  mš_cÚd ; 20 } tssi_tok’iz”_t ; 22 ssi_v®_t * $ssi_v®_š™ () { 23 ssi_v®_t * s ; 25 s = `ÿÎoc (1, (*s)); 27  s ; 28 } } 30  $ssi_v®_ä“ ( ssi_v®_t * s ) { 31 ià( s -> ¡r è `bufãr_ä“ (s->str); 33 `ä“ ( s ); 34 } } 36  $ssi_v®_toboÞ ( ssi_v®_t * B ) { 37 ià( B -> ty³ =ð SSI_TYPE_STRING ) { 38  B -> ¡r -> u£d > 1 ? 1 : 0; 40  B -> bo ; 42 } } 44  $ssi_ex´_tok’iz” ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , 45 ssi_tok’iz”_t * t , * tok’_id , bufãr * tok’ ) { 46  tid = 0; 47 size_t i ; 49 `UNUSED ( cÚ ); 51  tid = 0;id =ð0 && t -> off£t <-> size &&-> šput [t->offset] ; ) { 52  c = t -> šput [t-> off£t ]; 53 d©a_¡ršg * ds ; 55  c ) { 57 tid = TK_EQ ; 59 t -> off£t ++; 60 t -> lše_pos ++; 62 `bufãr_cÝy_¡ršg ( tok’ , "(=)"); 66 ià( t -> šput [t-> off£t + 1] == '=') { 67 t -> off£t += 2; 68 t -> lše_pos += 2; 70 tid = TK_GE ; 72 `bufãr_cÝy_¡ršg ( tok’ , "(>=)"); 74 t -> off£t += 1; 75 t -> lše_pos += 1; 77 tid = TK_GT ; 79 `bufãr_cÝy_¡ršg ( tok’ , "(>)"); 84 ià( t -> šput [t-> off£t + 1] == '=') { 85 t -> off£t += 2; 86 t -> lše_pos += 2; 88 tid = TK_LE ; 90 `bufãr_cÝy_¡ršg ( tok’ , "(<=)"); 92 t -> off£t += 1; 93 t -> lše_pos += 1; 95 tid = TK_LT ; 97 `bufãr_cÝy_¡ršg ( tok’ , "(<)"); 103 ià( t -> šput [t-> off£t + 1] == '=') { 104 t -> off£t += 2; 105 t -> lše_pos += 2; 107 tid = TK_NE ; 109 `bufãr_cÝy_¡ršg ( tok’ , "(!=)"); 111 t -> off£t += 1; 112 t -> lše_pos += 1; 114 tid = TK_NOT ; 116 `bufãr_cÝy_¡ršg ( tok’ , "(!)"); 121 ià( t -> šput [t-> off£t + 1] == '&') { 122 t -> off£t += 2; 123 t -> lše_pos += 2; 125 tid = TK_AND ; 127 `bufãr_cÝy_¡ršg ( tok’ , "(&&)"); 129 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 130 "pos:", t -> lše_pos , 137 ià( t -> šput [t-> off£t + 1] == '|') { 138 t -> off£t += 2; 139 t -> lše_pos += 2; 141 tid = TK_OR ; 143 `bufãr_cÝy_¡ršg ( tok’ , "(||)"); 145 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 146 "pos:", t -> lše_pos , 154 t -> off£t ++; 155 t -> lše_pos ++; 160  i = 1; t -> šput [t-> off£t + i] &&->input[t->offset + i] != '\''; i++); 162 ià( t -> šput [t-> off£t + i ]) { 163 tid = TK_VALUE ; 165 `bufãr_cÝy_¡ršg_Ën ( tok’ , t -> šput +-> off£t + 1, i -1); 167 t -> off£t +ð i + 1; 168 t -> lše_pos +ð i + 1; 172 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 173 "pos:", t -> lše_pos , 181 t -> off£t ++; 182 t -> š_b¿û ++; 184 tid = TK_LPARAN ; 186 `bufãr_cÝy_¡ršg ( tok’ , "("); 189 t -> off£t ++; 190 t -> š_b¿û --; 192 tid = TK_RPARAN ; 194 `bufãr_cÝy_¡ršg ( tok’ , ")"); 197 ià( t -> šput [t-> off£t + 1] == '{') { 198  i = 2; t -> šput [t-> off£t + i] &&->input[t->offset + i] != '}'; i++); 200 ià( t -> šput [t-> off£t + i ] != '}') { 201 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 202 "pos:", t -> lše_pos , 208 `bufãr_cÝy_¡ršg_Ën ( tok’ , t -> šput +-> off£t + 2, i -3); 210  i = 1; `i§Íha ( t -> šput [t-> off£t + i]) ||->input[t->offset + i] == '_'; i++); 212 `bufãr_cÝy_¡ršg_Ën ( tok’ , t -> šput +-> off£t + 1, i -1); 215 tid = TK_VALUE ; 217 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( p -> ssi_cgi_’v , tok’ -> ±r ))) { 218 `bufãr_cÝy_¡ršg_bufãr ( tok’ , ds -> v®ue ); 219 } ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( p -> ssi_v¬s , tok’ -> ±r ))) { 220 `bufãr_cÝy_¡ršg_bufãr ( tok’ , ds -> v®ue ); 222 `bufãr_cÝy_¡ršg ( tok’ , ""); 225 t -> off£t +ð i ; 226 t -> lše_pos +ð i ; 230  i = 0; `isg¿ph ( t -> šput [t-> off£t + i]); i++) { 231  d = t -> šput [t-> off£t + i ]; 232  d ) { 248 tid = TK_VALUE ; 250 `bufãr_cÝy_¡ršg_Ën ( tok’ , t -> šput +-> off£t , i ); 252 t -> off£t +ð i ; 253 t -> lše_pos +ð i ; 259 ià( tid ) { 260 * tok’_id = tid ; 263 } ià( t -> off£t <-> size ) { 264 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 265 "pos:", t -> lše_pos , 269 } } 271  $ssi_ev®_ex´ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , cÚ¡ * ex´ ) { 272 ssi_tok’iz”_t t ; 273 * pP¬£r ; 274  tok’_id ; 275 bufãr * tok’ ; 276 ssi_ùx_t cÚ‹xt ; 277  »t ; 279 t . šput = ex´ ; 280 t . off£t = 0; 281 t . size = `¡¾’ ( ex´ ); 282 t . lše_pos = 1; 284 t . š_key = 1; 285 t . š_b¿û = 0; 286 t . š_cÚd = 0; 288 cÚ‹xt . ok = 1; 289 cÚ‹xt . ¤v = srv; 293 pP¬£r = `ss›x´·r£rAÎoc Ð m®loc ); 294 tok’ = `bufãr_š™ (); 295 (1 =ð( »t = `ssi_ex´_tok’iz” ( ¤v , cÚ , p , & t , & tok’_id , tok’ ))è&& cÚ‹xt . ok ) { 296 `ss›x´·r£r ( pP¬£r , tok’_id , tok’ , & cÚ‹xt ); 298 tok’ = `bufãr_š™ (); 300 `ss›x´·r£r ( pP¬£r , 0, tok’ , & cÚ‹xt ); 301 `ss›x´·r£rF»e ( pP¬£r , ä“ ); 303 `bufãr_ä“ ( tok’ ); 305 ià( »t == -1) { 306 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 311 ià( cÚ‹xt . ok == 0) { 312 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 313 "pos:", t . lše_pos , 318 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", 320 ex´ , 321 cÚ‹xt . v® . bo ); 323  cÚ‹xt . v® . bo ; 324 } } @src/mod_ssi_expr.h 1 #iâdeà _MOD_SSI_EXPR_H_ 2  #_MOD_SSI_EXPR_H_ ) 4  ~"bufãr.h " 7 ’um { mSSI_TYPE_UNSET , mSSI_TYPE_BOOL , mSSI_TYPE_STRING } mty³ ; 9 bufãr * m¡r ; 10  mbo ; 11 } tssi_v®_t ; 14  mok ; 16 ssi_v®_t mv® ; 18 * m¤v ; 19 } tssi_ùx_t ; 21 ’um { mSSI_COND_UNSET , mSSI_COND_LE , mSSI_COND_GE , mSSI_COND_EQ , mSSI_COND_NE , mSSI_COND_LT , mSSI_COND_GT } tssi_ex´_cÚd ; 23 * ss›x´·r£rAÎoc (*(* m®locProc )( size_t )); 24  ss›x´·r£rF»e (* p , (* ä“Proc )(*)); 25  `ss›x´·r£r (* yyp ,  yymajÜ , bufãr * yymšÜ , ssi_ùx_t * ùx ); 27  `ssi_v®_toboÞ ( ssi_v®_t * B ); 28 ssi_v®_t * `ssi_v®_š™ (); 29  `ssi_v®_ä“ ( ssi_v®_t * s ); @src/mod_ssi_exprparser.c 6  ~<¡dio.h > 9  ~ 10  ~<¡ršg.h > 11 #ifdeà HAVE_CONFIG_H 12  ~"cÚfig.h " 14  ~"mod_ssi_ex´.h " 15  ~"bufãr.h " 30 #iâdeà INTERFACE 31  #INTERFACE 1 ) 67  #YYCODETYPE  ) 68  #YYNOCODE 20 ) 69  #YYACTIONTYPE  ) 70  #ss›x´·r£rTOKENTYPE bufãr * ) 72 ss›x´·r£rTOKENTYPE myy0 ; 73  myy8 ; 74 bufãr * myy19 ; 75 ssi_v®_t * myy29 ; 76  myy39 ; 77 } tYYMINORTYPE ; 78  #YYSTACKDEPTH 100 ) 79  #ss›x´·r£rARG_SDECL ssi_ùx_t * ùx ; ) 80  #ss›x´·r£rARG_PDECL , ssi_ùx_t * ùx ) 81  #ss›x´·r£rARG_FETCH ssi_ùx_t * ùx = yypP¬£r -> ) ctx 82  #ss›x´·r£rARG_STORE yypP¬£r -> ùx = ) ctx 83  #YYNSTATE 23 ) 84  #YYNRULE 16 ) 85  #YYERRORSYMBOL 13 ) 86  #YYERRSYMDT yy39 ) 87  #YY_NO_ACTION ( YYNSTATE + YYNRULE +2) ) 88  #YY_ACCEPT_ACTION ( YYNSTATE + YYNRULE +1) ) 89  #YY_ERROR_ACTION ( YYNSTATE + YYNRULE ) ) 138  YYACTIONTYPE gyy_aùiÚ [] = { 144  YYCODETYPE gyy_lookah—d [] = { 150  #YY_SHIFT_USE_DFLT (-2) ) 151 sigÃd  gyy_shiá_of¡ [] = { 156  #YY_REDUCE_USE_DFLT (-7) ) 157 sigÃd  gyy_»duû_of¡ [] = { 162  YYACTIONTYPE gyy_deçuÉ [] = { 167  #YY_SZ_ACTTAB (( yy_aùiÚ )/(yy_aùiÚ[0])) ) 179 #ifdeà YYFALLBACK 180 cÚ¡ YYCODETYPE gyyF®lback [] = { 196  syySckEÁry { 197  m¡©’o ; 198  mmajÜ ; 200 YYMINORTYPE mmšÜ ; 203  yySckEÁry tyySckEÁry ; 207  syyP¬£r { 208  myyidx ; 209  myy”rút ; 210 ss›x´·r£rARG_SDECL 211 yySckEÁry myy¡ack [ YYSTACKDEPTH ]; 213  yyP¬£r tyyP¬£r ; 215 #iâdeà NDEBUG 216  ~<¡dio.h > 217  FILE * gyyT¿ûFILE = 0; 218 * gyyT¿ûProm± = 0; 221 #iâdeà NDEBUG 239  $ss›x´·r£rT¿û ( FILE * T¿ûFILE , * zT¿ûProm± ){ 240 yyT¿ûFILE = T¿ûFILE ; 241 yyT¿ûProm± = zT¿ûProm± ; 242 ifÐ yyT¿ûFILE ==0 ) yyT¿ûProm± = 0; 243 ifÐ yyT¿ûProm± ==0 ) yyT¿ûFILE = 0; 244 } } 247 #iâdeà NDEBUG 250 cÚ¡ * gyyTok’Name [] = { 259 #iâdeà NDEBUG 262 cÚ¡ * gyyRuËName [] = { 286 cÚ¡ * $ss›x´·r£rTok’Name ( tok’Ty³ ){ 287 #iâdeà NDEBUG 288 ifÐ tok’Ty³ >0 &&ok’Ty³<(( yyTok’Name )/(yyTokenName[0])) ){ 289  yyTok’Name [ tok’Ty³ ]; 296 } } 310 * ss›x´·r£rAÎoc (*(* m®locProc )( size_t )){ 311 yyP¬£r * gpP¬£r ; 312 gpP¬£r = ( yyP¬£r *)(* m®locProc )Ð( size_t )(yyParser) ); 313 ifÐ gpP¬£r ){ 314 gpP¬£r -> gyyidx = -1; 316  gpP¬£r ; 324  $yy_de¡ruùÜ ( YYCODETYPE yymajÜ , YYMINORTYPE * yypmšÜ ){ 325  yymajÜ ){ 349 { `bufãr_ä“ (( yypmšÜ -> yy0 )); } 354 } } 364  $yy_pÝ_·r£r_¡ack ( yyP¬£r * pP¬£r ){ 365 YYCODETYPE yymajÜ ; 366 yySckEÁry * yytos = & pP¬£r -> yy¡ack [pP¬£r-> yyidx ]; 368 ifÐ pP¬£r -> yyidx <0 )  0; 369 #iâdeà NDEBUG 370 ifÐ yyT¿ûFILE && pP¬£r -> yyidx >=0 ){ 371 `årštf ( yyT¿ûFILE ,"%sPopping %s\n", 372 yyT¿ûProm± , 373 yyTok’Name [ yytos -> majÜ ]); 376 yymajÜ = yytos -> majÜ ; 377 `yy_de¡ruùÜ Ð yymajÜ , & yytos -> mšÜ ); 378 pP¬£r -> yyidx --; 379  yymajÜ ; 380 } } 394  ss›x´·r£rF»e ( 395 * p , 396 (* ä“Proc )(*) 398 yyP¬£r * pP¬£r = (yyP¬£r*) p ; 399 ifÐ pP¬£r ==0 ) ; 400  pP¬£r -> yyidx >=0 ) `yy_pÝ_·r£r_¡ack (pParser); 401 (* ä“Proc )((*) pP¬£r ); 402 } } 412  $yy_fšd_shiá_aùiÚ ( 413 yyP¬£r * pP¬£r , 414  iLookAh—d 416  i ; 417  ¡©’o = pP¬£r -> yy¡ack [pP¬£r-> yyidx ].stateno; 420 i = yy_shiá_of¡ [ ¡©’o ]; 421 ifÐ i == YY_SHIFT_USE_DFLT ){ 422  yy_deçuÉ [ ¡©’o ]; 424 ifÐ iLookAh—d == YYNOCODE ){ 425  YY_NO_ACTION ; 427 i +ð iLookAh—d ; 428 ifÐ i <0 || i>= YY_SZ_ACTTAB || yy_lookah—d [i]!= iLookAh—d ){ 429 #ifdeà YYFALLBACK 430  iF®lback ; 431 ifÐ iLookAh—d <( yyF®lback )/(yyFallback[0]) 432 && ( iF®lback = yyF®lback [ iLookAh—d ])!=0 ){ 433 #iâdeà NDEBUG 434 ifÐ yyT¿ûFILE ){ 435 `årštf ( yyT¿ûFILE , "%sFALLBACK %s => %s\n", 436 yyT¿ûProm± , yyTok’Name [ iLookAh—d ], yyTok’Name[ iF®lback ]); 439  `yy_fšd_shiá_aùiÚ ( pP¬£r , iF®lback ); 442  yy_deçuÉ [ ¡©’o ]; 444  yy_aùiÚ [ i ]; 446 } } 456  $yy_fšd_»duû_aùiÚ ( 457 yyP¬£r * pP¬£r , 458  iLookAh—d 460  i ; 461  ¡©’o = pP¬£r -> yy¡ack [pP¬£r-> yyidx ].stateno; 463 i = yy_»duû_of¡ [ ¡©’o ]; 464 ifÐ i == YY_REDUCE_USE_DFLT ){ 465  yy_deçuÉ [ ¡©’o ]; 467 ifÐ iLookAh—d == YYNOCODE ){ 468  YY_NO_ACTION ; 470 i +ð iLookAh—d ; 471 ifÐ i <0 || i>= YY_SZ_ACTTAB || yy_lookah—d [i]!= iLookAh—d ){ 472  yy_deçuÉ [ ¡©’o ]; 474  yy_aùiÚ [ i ]; 476 } } 481  $yy_shiá ( 482 yyP¬£r * yypP¬£r , 483  yyNewS‹ , 484  yyMajÜ , 485 YYMINORTYPE * yypMšÜ 487 yySckEÁry * yytos ; 488 yypP¬£r -> yyidx ++; 489 ifÐ yypP¬£r -> yyidx >= YYSTACKDEPTH ){ 490 ss›x´·r£rARG_FETCH ; 491 yypP¬£r -> yyidx --; 492 #iâdeà NDEBUG 493 ifÐ yyT¿ûFILE ){ 494 `årštf ( yyT¿ûFILE ,"%sSck Ov”æow!\n", yyT¿ûProm± ); 497  yypP¬£r -> yyidx >=0 ) `yy_pÝ_·r£r_¡ack (yypParser); 500 ss›x´·r£rARG_STORE ; 503 yytos = & yypP¬£r -> yy¡ack [yypP¬£r-> yyidx ]; 504 yytos -> ¡©’o = yyNewS‹ ; 505 yytos -> majÜ = yyMajÜ ; 506 yytos -> mšÜ = * yypMšÜ ; 507 #iâdeà NDEBUG 508 ifÐ yyT¿ûFILE && yypP¬£r -> yyidx >0 ){ 509  i ; 510 `årštf ( yyT¿ûFILE ,"%sShiá %d\n", yyT¿ûProm± , yyNewS‹ ); 511 `årštf ( yyT¿ûFILE ,"%sSck:", yyT¿ûProm± ); 512  i =1; i<= yypP¬£r -> yyidx ; i++) 513 `årštf ( yyT¿ûFILE ," %s", yyTok’Name [ yypP¬£r -> yy¡ack [ i ]. majÜ ]); 514 `årštf ( yyT¿ûFILE ,"\n"); 517 } } 523 YYCODETYPE mlhs ; 524  mÄhs ; 525 } gyyRuËInfo [] = { 544  yy_acû± ( yyP¬£r *); 550  $yy_»duû ( 551 yyP¬£r * yypP¬£r , 552  yyruËno 554  yygÙo ; 555  yyaù ; 556 YYMINORTYPE yygÙomšÜ ; 557 yySckEÁry * yym¥ ; 558  yysize ; 559 ss›x´·r£rARG_FETCH ; 560 yym¥ = & yypP¬£r -> yy¡ack [yypP¬£r-> yyidx ]; 561 #iâdeà NDEBUG 562 ifÐ yyT¿ûFILE && yyruËno >=0 563 && yyruËno <( yyRuËName )/(yyRuleName[0]) ){ 564 `årštf ( yyT¿ûFILE , "%sReduû [%s].\n", yyT¿ûProm± , 565 yyRuËName [ yyruËno ]); 569  yyruËno ){ 581 ùx -> v® . bo = `ssi_v®_toboÞ ( yym¥ [0]. mšÜ . yy29 ); 582 ùx -> v® . ty³ = SSI_TYPE_BOOL ; 584 `ssi_v®_ä“ ( yym¥ [0]. mšÜ . yy29 ); 591  cmp ; 593 ià( yym¥ [-2]. mšÜ . yy29 -> ty³ =ð SSI_TYPE_STRING && 594 yym¥ [0]. mšÜ . yy29 -> ty³ =ð SSI_TYPE_STRING ) { 595 cmp = `¡rcmp ( yym¥ [-2]. mšÜ . yy29 -> ¡r -> ±r , yymsp[0].minor.yy29->str->ptr); 597 cmp = `ssi_v®_toboÞ ( yym¥ [-2]. mšÜ . yy29 ) - ssi_val_tobool(yymsp[0].minor.yy29); 600 yygÙomšÜ . yy29 = yym¥ [-2]. mšÜ .yy29; 602  yym¥ [-1]. mšÜ . yy8 ) { 603  SSI_COND_EQ : yygÙomšÜ . yy29 -> bo = ( cmp == 0) ? 1 : 0; ; 604  SSI_COND_NE : yygÙomšÜ . yy29 -> bo = ( cmp != 0) ? 1 : 0; ; 605  SSI_COND_GE : yygÙomšÜ . yy29 -> bo = ( cmp >= 0) ? 1 : 0; ; 606  SSI_COND_GT : yygÙomšÜ . yy29 -> bo = ( cmp > 0) ? 1 : 0; ; 607  SSI_COND_LE : yygÙomšÜ . yy29 -> bo = ( cmp <= 0) ? 1 : 0; ; 608  SSI_COND_LT : yygÙomšÜ . yy29 -> bo = ( cmp < 0) ? 1 : 0; ; 611 yygÙomšÜ . yy29 -> ty³ = SSI_TYPE_BOOL ; 613 `ssi_v®_ä“ ( yym¥ [0]. mšÜ . yy29 ); 620 yygÙomšÜ . yy29 = yym¥ [0]. mšÜ .yy29; 627  e ; 629 e = `ssi_v®_toboÞ ( yym¥ [-2]. mšÜ . yy29 ) && ssi_val_tobool(yymsp[0].minor.yy29); 631 yygÙomšÜ . yy29 = yym¥ [-2]. mšÜ .yy29; 632 yygÙomšÜ . yy29 -> bo = e ; 633 yygÙomšÜ . yy29 -> ty³ = SSI_TYPE_BOOL ; 634 `ssi_v®_ä“ ( yym¥ [0]. mšÜ . yy29 ); 637 `yy_de¡ruùÜ (1,& yym¥ [-1]. mšÜ ); 642  e ; 644 e = `ssi_v®_toboÞ ( yym¥ [-2]. mšÜ . yy29 ) || ssi_val_tobool(yymsp[0].minor.yy29); 646 yygÙomšÜ . yy29 = yym¥ [-2]. mšÜ .yy29; 647 yygÙomšÜ . yy29 -> bo = e ; 648 yygÙomšÜ . yy29 -> ty³ = SSI_TYPE_BOOL ; 649 `ssi_v®_ä“ ( yym¥ [0]. mšÜ . yy29 ); 652 `yy_de¡ruùÜ (2,& yym¥ [-1]. mšÜ ); 657  e ; 659 e = ! `ssi_v®_toboÞ ( yym¥ [0]. mšÜ . yy29 ); 661 yygÙomšÜ . yy29 = yym¥ [0]. mšÜ .yy29; 662 yygÙomšÜ . yy29 -> bo = e ; 663 yygÙomšÜ . yy29 -> ty³ = SSI_TYPE_BOOL ; 666 `yy_de¡ruùÜ (9,& yym¥ [-1]. mšÜ ); 671 yygÙomšÜ . yy29 = yym¥ [-1]. mšÜ .yy29; 674 `yy_de¡ruùÜ (10,& yym¥ [-2]. mšÜ ); 675 `yy_de¡ruùÜ (11,& yym¥ [0]. mšÜ ); 680 yygÙomšÜ . yy29 = `ssi_v®_š™ (); 681 yygÙomšÜ . yy29 -> ¡r = yym¥ [0]. mšÜ . yy19 ; 682 yygÙomšÜ . yy29 -> ty³ = SSI_TYPE_STRING ; 689 yygÙomšÜ . yy19 = `bufãr_š™_¡ršg ( yym¥ [0]. mšÜ . yy0 -> ±r ); 696 yygÙomšÜ . yy19 = yym¥ [-1]. mšÜ .yy19; 697 `bufãr_­³nd_¡ršg_bufãr ( yygÙomšÜ . yy19 , yym¥ [0]. mšÜ . yy0 ); 703 { yygÙomšÜ . yy8 = SSI_COND_EQ ; } 705 `yy_de¡ruùÜ (3,& yym¥ [0]. mšÜ ); 709 { yygÙomšÜ . yy8 = SSI_COND_NE ; } 711 `yy_de¡ruùÜ (4,& yym¥ [0]. mšÜ ); 715 { yygÙomšÜ . yy8 = SSI_COND_LE ; } 717 `yy_de¡ruùÜ (8,& yym¥ [0]. mšÜ ); 721 { yygÙomšÜ . yy8 = SSI_COND_GE ; } 723 `yy_de¡ruùÜ (6,& yym¥ [0]. mšÜ ); 727 { yygÙomšÜ . yy8 = SSI_COND_LT ; } 729 `yy_de¡ruùÜ (7,& yym¥ [0]. mšÜ ); 733 { yygÙomšÜ . yy8 = SSI_COND_GT ; } 735 `yy_de¡ruùÜ (5,& yym¥ [0]. mšÜ ); 738 yygÙo = yyRuËInfo [ yyruËno ]. lhs ; 739 yysize = yyRuËInfo [ yyruËno ]. Ähs ; 740 yypP¬£r -> yyidx -ð yysize ; 741 yyaù = `yy_fšd_»duû_aùiÚ ( yypP¬£r , yygÙo ); 742 ifÐ yyaù < YYNSTATE ){ 743 `yy_shiá ( yypP¬£r , yyaù , yygÙo ,& yygÙomšÜ ); 744 } ifÐ yyaù =ð YYNSTATE + YYNRULE + 1 ){ 745 `yy_acû± ( yypP¬£r ); 747 } } 752  $yy_·r£_çžed ( 753 yyP¬£r * yypP¬£r 755 ss›x´·r£rARG_FETCH ; 756 #iâdeà NDEBUG 757 ifÐ yyT¿ûFILE ){ 758 `årštf ( yyT¿ûFILE ,"%sFaž!\n", yyT¿ûProm± ); 761  yypP¬£r -> yyidx >=0 ) `yy_pÝ_·r£r_¡ack (yypParser); 766 ùx -> ok = 0; 769 ss›x´·r£rARG_STORE ; 770 } } 775  $yy_syÁax_”rÜ ( 776 yyP¬£r * yypP¬£r , 777  yymajÜ , 778 YYMINORTYPE yymšÜ 780 ss›x´·r£rARG_FETCH ; 781  #TOKEN ( yymšÜ . yy0 ) ) 782 ss›x´·r£rARG_STORE ; 783 } } 788  $yy_acû± ( 789 yyP¬£r * yypP¬£r 791 ss›x´·r£rARG_FETCH ; 792 #iâdeà NDEBUG 793 ifÐ yyT¿ûFILE ){ 794 `årštf ( yyT¿ûFILE ,"%sAcû±!\n", yyT¿ûProm± ); 797  yypP¬£r -> yyidx >=0 ) `yy_pÝ_·r£r_¡ack (yypParser); 800 ss›x´·r£rARG_STORE ; 801 } } 822  $ss›x´·r£r ( 823 * yyp , 824  yymajÜ , 825 ss›x´·r£rTOKENTYPE yymšÜ 826 ss›x´·r£rARG_PDECL 828 YYMINORTYPE yymšÜuniÚ ; 829  yyaù ; 830  yy’dofšput ; 831  yy”rÜh™ = 0; 832 yyP¬£r * yypP¬£r ; 835 yypP¬£r = ( yyP¬£r *) yyp ; 836 ifÐ yypP¬£r -> yyidx <0 ){ 837 ifÐ yymajÜ ==0 ) ; 838 yypP¬£r -> yyidx = 0; 839 yypP¬£r -> yy”rút = -1; 840 yypP¬£r -> yy¡ack [0]. ¡©’o = 0; 841 yypP¬£r -> yy¡ack [0]. majÜ = 0; 843 yymšÜuniÚ . yy0 = yymšÜ ; 844 yy’dofšput = ( yymajÜ ==0); 845 ss›x´·r£rARG_STORE ; 847 #iâdeà NDEBUG 848 ifÐ yyT¿ûFILE ){ 849 `årštf ( yyT¿ûFILE ,"%sIÅuˆ%s\n", yyT¿ûProm± , yyTok’Name [ yymajÜ ]); 854 yyaù = `yy_fšd_shiá_aùiÚ ( yypP¬£r , yymajÜ ); 855 ifÐ yyaù < YYNSTATE ){ 856 `yy_shiá ( yypP¬£r , yyaù , yymajÜ ,& yymšÜuniÚ ); 857 yypP¬£r -> yy”rút --; 858 ifÐ yy’dofšput && yypP¬£r -> yyidx >=0 ){ 859 yymajÜ = 0; 861 yymajÜ = YYNOCODE ; 863 } ifÐ yyaù < YYNSTATE + YYNRULE ){ 864 `yy_»duû ( yypP¬£r , yyaù - YYNSTATE ); 865 } ifÐ yyaù =ð YY_ERROR_ACTION ){ 866  yymx ; 867 #iâdeà NDEBUG 868 ifÐ yyT¿ûFILE ){ 869 `årštf ( yyT¿ûFILE ,"%sSyÁax E¼Ü!\n", yyT¿ûProm± ); 872 #ifdeà YYERRORSYMBOL 892 ifÐ yypP¬£r -> yy”rút <0 ){ 893 `yy_syÁax_”rÜ ( yypP¬£r , yymajÜ , yymšÜuniÚ ); 895 yymx = yypP¬£r -> yy¡ack [yypP¬£r-> yyidx ]. majÜ ; 896 ifÐ yymx == YYERRORSYMBOL || yy”rÜh™ ){ 897 #iâdeà NDEBUG 898 ifÐ yyT¿ûFILE ){ 899 `årštf ( yyT¿ûFILE ,"%sDiscard inputoken %s\n", 900 yyT¿ûProm± , yyTok’Name [ yymajÜ ]); 903 `yy_de¡ruùÜ ( yymajÜ ,& yymšÜuniÚ ); 904 yymajÜ = YYNOCODE ; 907 yypP¬£r -> yyidx >= 0 && 908 yymx !ð YYERRORSYMBOL && 909 ( yyaù = `yy_fšd_shiá_aùiÚ ( yypP¬£r , YYERRORSYMBOL )è>ð YYNSTATE 911 `yy_pÝ_·r£r_¡ack ( yypP¬£r ); 913 ifÐ yypP¬£r -> yyidx < 0 || yymajÜ ==0 ){ 914 `yy_de¡ruùÜ ( yymajÜ ,& yymšÜuniÚ ); 915 `yy_·r£_çžed ( yypP¬£r ); 916 yymajÜ = YYNOCODE ; 917 } ifÐ yymx != YYERRORSYMBOL ){ 918 YYMINORTYPE u2 ; 919 u2 . YYERRSYMDT = 0; 920 `yy_shiá ( yypP¬£r , yyaù , YYERRORSYMBOL ,& u2 ); 923 yypP¬£r -> yy”rút = 3; 924 yy”rÜh™ = 1; 935 ifÐ yypP¬£r -> yy”rút <=0 ){ 936 `yy_syÁax_”rÜ ( yypP¬£r , yymajÜ , yymšÜuniÚ ); 938 yypP¬£r -> yy”rút = 3; 939 `yy_de¡ruùÜ ( yymajÜ ,& yymšÜuniÚ ); 940 ifÐ yy’dofšput ){ 941 `yy_·r£_çžed ( yypP¬£r ); 943 yymajÜ = YYNOCODE ; 946 `yy_acû± ( yypP¬£r ); 947 yymajÜ = YYNOCODE ; 949 } yymajÜ != YYNOCODE && yypP¬£r -> yyidx >=0 ); 951 } } @src/mod_ssi_exprparser.h 1  #TK_AND 1 ) 2  #TK_OR 2 ) 3  #TK_EQ 3 ) 4  #TK_NE 4 ) 5  #TK_GT 5 ) 6  #TK_GE 6 ) 7  #TK_LT 7 ) 8  #TK_LE 8 ) 9  #TK_NOT 9 ) 10  #TK_LPARAN 10 ) 11  #TK_RPARAN 11 ) 12  #TK_VALUE 12 ) @src/mod_staticfile.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡dio.h > 4  ~<¡ršg.h > 6  ~"ba£.h " 7  ~"log.h " 8  ~"bufãr.h " 10  ~"¶ugš.h " 12  ~"¡©_ÿche.h " 13  ~"‘ag.h " 14  ~"h‰p_chunk.h " 15  ~"»¥Ú£.h " 27 ¬¿y * mexþude_ext ; 28  m‘ags_u£d ; 29 } t¶ugš_cÚfig ; 32 mPLUGIN_DATA ; 34 bufãr * m¿nge_buf ; 36 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 38 ¶ugš_cÚfig mcÚf ; 39 } t¶ugš_d©a ; 42 $INIT_FUNC ( mod_¡©icfže_š™ ) { 43 ¶ugš_d©a * p ; 45 p = `ÿÎoc (1, (*p)); 47 p -> ¿nge_buf = `bufãr_š™ (); 49  p ; 50 } } 53 $FREE_FUNC ( mod_¡©icfže_ä“ ) { 54 ¶ugš_d©a * p = p_d ; 56 `UNUSED ( ¤v ); 58 ià(! p è HANDLER_GO_ON ; 60 ià( p -> cÚfig_¡Üage ) { 61 size_t i ; 62  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 63 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 65 `¬¿y_ä“ ( s -> exþude_ext ); 67 `ä“ ( s ); 69 `ä“ ( p -> cÚfig_¡Üage ); 71 `bufãr_ä“ ( p -> ¿nge_buf ); 73 `ä“ ( p ); 75  HANDLER_GO_ON ; 76 } } 80 $SETDEFAULTS_FUNC ( mod_¡©icfže_£t_deçuÉs ) { 81 ¶ugš_d©a * p = p_d ; 82 size_t i = 0; 84 cÚfig_v®ues_t cv [] = { 85 { "¡©ic-fže.exþude-ex‹nsiÚs", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 86 { "¡©ic-fže.‘ags", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 87 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 90 ià(! p è HANDLER_ERROR ; 92 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 94  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 95 ¶ugš_cÚfig * s ; 97 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 98 s -> exþude_ext = `¬¿y_š™ (); 99 s -> ‘ags_u£d = 1; 101 cv [0]. de¡š©iÚ = s -> exþude_ext ; 102 cv [1]. de¡š©iÚ = &( s -> ‘ags_u£d ); 104 p -> cÚfig_¡Üage [ i ] = s ; 106 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 107  HANDLER_ERROR ; 111  HANDLER_GO_ON ; 112 } } 114  #PATCH ( x ) \ 115 p -> cÚf . x = s ->x; ) 116  $mod_¡©icfže_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 117 size_t i , j ; 118 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 120 `PATCH ( exþude_ext ); 121 `PATCH ( ‘ags_u£d ); 124  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 125 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 126 s = p -> cÚfig_¡Üage [ i ]; 129 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 132  j = 0; j < dc -> v®ue -> u£d ; j++) { 133 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 135 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("static-file.exclude-extensions"))) { 136 `PATCH ( exþude_ext ); 137 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("static-file.etags"))) { 138 `PATCH ( ‘ags_u£d ); 144 } } 145 #undeà PATCH 147  $h‰p_»¥Ú£_·r£_¿nge ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 148  muɬt = 0; 149  ”rÜ ; 150 off_t ¡¬t , ’d ; 151 cÚ¡ * s , * mšus ; 152 * bound¬y = "fkj49sn38dcn3"; 153 d©a_¡ršg * ds ; 154 ¡©_ÿche_’Œy * sû = NULL ; 155 bufãr * cÚ‹Á_ty³ = NULL ; 157 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , cÚ-> physiÿl . ·th , & sû )) { 158 `SEGFAULT (); 161 ¡¬t = 0; 162 ’d = sû -> ¡ . ¡_size - 1; 164 cÚ -> »¥Ú£ . cÚ‹Á_Ëngth = 0; 166 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »¥Ú£ . h—d”s , "Content-Type"))) { 167 cÚ‹Á_ty³ = ds -> v®ue ; 170  s = cÚ -> »que¡ . h‰p_¿nge , ”rÜ = 0; 171 ! ”rÜ && * s && NULL !ð( mšus = `¡rchr (s, '-')); ) { 172 * ”r ; 173 off_t Ï , Ë ; 175 ià( s =ð mšus ) { 178 Ë = `¡¹Þl ( s , & ”r , 10); 180 ià( Ë == 0) { 183 cÚ -> h‰p_¡©us = 416; 184 ”rÜ = 1; 185 } ià(* ”r == '\0') { 187 s = ”r ; 189 ’d = sû -> ¡ . ¡_size - 1; 190 ¡¬t = sû -> ¡ . ¡_size + Ë ; 191 } ià(* ”r == ',') { 192 muɬt = 1; 193 s = ”r + 1; 195 ’d = sû -> ¡ . ¡_size - 1; 196 ¡¬t = sû -> ¡ . ¡_size + Ë ; 198 ”rÜ = 1; 201 } ià(*( mšus +1) == '\0' || *(minus+1) == ',') { 204 Ï = `¡¹Þl ( s , & ”r , 10); 206 ià( ”r =ð mšus ) { 209 ià(*( ”r + 1) == '\0') { 210 s = ”r + 1; 212 ’d = sû -> ¡ . ¡_size - 1; 213 ¡¬t = Ï ; 215 } ià(*( ”r + 1) == ',') { 216 muɬt = 1; 217 s = ”r + 2; 219 ’d = sû -> ¡ . ¡_size - 1; 220 ¡¬t = Ï ; 222 ”rÜ = 1; 226 ”rÜ = 1; 231 Ï = `¡¹Þl ( s , & ”r , 10); 233 ià( ”r =ð mšus ) { 234 Ë = `¡¹Þl ( mšus +1, & ”r , 10); 237 ià( Ï > Ë ) { 238 ”rÜ = 1; 241 ià(* ”r == '\0') { 243 s = ”r ; 245 ’d = Ë ; 246 ¡¬t = Ï ; 247 } ià(* ”r == ',') { 248 muɬt = 1; 249 s = ”r + 1; 251 ’d = Ë ; 252 ¡¬t = Ï ; 256 ”rÜ = 1; 261 ”rÜ = 1; 265 ià(! ”rÜ ) { 266 ià( ¡¬t < 0) start = 0; 269 ià( ’d > sû -> ¡ . ¡_size - 1)ƒnd = sce->st.st_size - 1; 271 ià( ¡¬t > sû -> ¡ . ¡_size - 1) { 272 ”rÜ = 1; 274 cÚ -> h‰p_¡©us = 416; 278 ià(! ”rÜ ) { 279 ià( muɬt ) { 281 bufãr * b ; 283 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 285 `bufãr_cÝy_¡ršg ( b , "\r\n--"); 286 `bufãr_­³nd_¡ršg ( b , bound¬y ); 289 `bufãr_­³nd_¡ršg ( b , "\r\nContent-Range: bytes "); 290 `bufãr_­³nd_off_t ( b , ¡¬t ); 291 `bufãr_­³nd_¡ršg ( b , "-"); 292 `bufãr_­³nd_off_t ( b , ’d ); 293 `bufãr_­³nd_¡ršg ( b , "/"); 294 `bufãr_­³nd_off_t ( b , sû -> ¡ . ¡_size ); 296 `bufãr_­³nd_¡ršg ( b , "\r\nContent-Type: "); 297 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ‹Á_ty³ ); 300 `bufãr_­³nd_¡ršg ( b , "\r\n\r\n"); 302 cÚ -> »¥Ú£ . cÚ‹Á_Ëngth +ð b -> u£d - 1; 306 `chunkqueue_­³nd_fže ( cÚ -> wr™e_queue , cÚ-> physiÿl . ·th , ¡¬t , ’d - start + 1); 307 cÚ -> »¥Ú£ . cÚ‹Á_Ëngth +ð ’d - ¡¬t + 1; 312 ià( ”rÜ )  -1; 314 ià( muɬt ) { 316 bufãr * b ; 318 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 320 `bufãr_cÝy_¡ršg_Ën ( b , "\r\n--", 4); 321 `bufãr_­³nd_¡ršg ( b , bound¬y ); 322 `bufãr_­³nd_¡ršg_Ën ( b , "--\r\n", 4); 324 cÚ -> »¥Ú£ . cÚ‹Á_Ëngth +ð b -> u£d - 1; 328 `bufãr_cÝy_¡ršg ( p -> ¿nge_buf , "multipart/byteranges; boundary="); 329 `bufãr_­³nd_¡ršg ( p -> ¿nge_buf , bound¬y ); 332 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("CÚ‹Á-Ty³"), `CONST_BUF_LEN ( p -> ¿nge_buf )); 336 `bufãr_cÝy_¡ršg ( p -> ¿nge_buf , "bytes "); 337 `bufãr_­³nd_off_t ( p -> ¿nge_buf , ¡¬t ); 338 `bufãr_­³nd_¡ršg ( p -> ¿nge_buf , "-"); 339 `bufãr_­³nd_off_t ( p -> ¿nge_buf , ’d ); 340 `bufãr_­³nd_¡ršg ( p -> ¿nge_buf , "/"); 341 `bufãr_­³nd_off_t ( p -> ¿nge_buf , sû -> ¡ . ¡_size ); 343 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("CÚ‹Á-Rªge"), `CONST_BUF_LEN ( p -> ¿nge_buf )); 348 } } 350 $URIHANDLER_FUNC ( mod_¡©icfže_sub»que¡ ) { 351 ¶ugš_d©a * p = p_d ; 352 size_t k ; 353  s_Ën ; 354 ¡©_ÿche_’Œy * sû = NULL ; 355 bufãr * mtime = NULL ; 356 d©a_¡ršg * ds ; 357  ®low_ÿchšg = 1; 360 ià( cÚ -> h‰p_¡©us !ð0è HANDLER_GO_ON ; 361 ià( cÚ -> uri . ·th -> u£d =ð0è HANDLER_GO_ON ; 362 ià( cÚ -> physiÿl . ·th -> u£d =ð0è HANDLER_GO_ON ; 365 ià( cÚ -> mode !ð DIRECT è HANDLER_GO_ON ; 368  cÚ -> »que¡ . h‰p_m‘hod ) { 369  HTTP_METHOD_GET : 370  HTTP_METHOD_POST : 371  HTTP_METHOD_HEAD : 374  HANDLER_GO_ON ; 377 `mod_¡©icfže_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 379 s_Ën = cÚ -> uri . ·th -> u£d - 1; 382  k = 0; k < p -> cÚf . exþude_ext -> u£d ; k++) { 383 ds = ( d©a_¡ršg *) p -> cÚf . exþude_ext -> d©a [ k ]; 385 ià( ds -> v®ue -> u£d == 0) ; 387 ià( `bufãr_is_equ®_right_Ën ( cÚ -> physiÿl . ·th , ds -> v®ue , ds->v®ue-> u£d - 1)) { 388  HANDLER_GO_ON ; 393 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 394 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "-- handling file‡s static file"); 397 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , cÚ-> physiÿl . ·th , & sû )) { 398 cÚ -> h‰p_¡©us = 403; 400 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsb", 401 "nÙ‡„eguϸfže:", cÚ -> uri . ·th , 402 "->", cÚ -> physiÿl . ·th ); 404  HANDLER_FINISHED ; 408 #ifdeà HAVE_LSTAT 409 ià(( sû -> is_symlšk =ð1è&& ! cÚ -> cÚf . fÞlow_symlšk ) { 410 cÚ -> h‰p_¡©us = 403; 412 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 413 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "--‡ccess denied due symlink„estriction"); 414 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©h :", cÚ -> physiÿl . ·th ); 417 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 418  HANDLER_FINISHED ; 421 ià(! `S_ISREG ( sû -> ¡ . ¡_mode )) { 422 cÚ -> h‰p_¡©us = 404; 424 ià( cÚ -> cÚf . log_fže_nÙ_found ) { 425 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsb", 426 "nÙ‡„eguϸfže:", cÚ -> uri . ·th , 427 "->", sû -> Çme ); 430  HANDLER_FINISHED ; 437 ià( NULL =ð `¬¿y_g‘_–em’t ( cÚ -> »¥Ú£ . h—d”s , "Content-Type")) { 438 ià( `bufãr_is_em±y ( sû -> cÚ‹Á_ty³ )) { 445 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Content-Type"), CONST_STR_LEN("application/octet-stream")); 447 ®low_ÿchšg = 0; 449 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("CÚ‹Á-Ty³"), `CONST_BUF_LEN ( sû -> cÚ‹Á_ty³ )); 453 ià( cÚ -> cÚf . ¿nge_»que¡s ) { 454 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Accept-Ranges"), CONST_STR_LEN("bytes")); 457 ià( ®low_ÿchšg ) { 458 ià( p -> cÚf . ‘ags_u£d && cÚ -> ‘ag_æags !ð0 && ! `bufãr_is_em±y ( sû -> ‘ag )) { 459 ià( NULL =ð `¬¿y_g‘_–em’t ( cÚ -> »¥Ú£ . h—d”s , "ETag")) { 461 `‘ag_mu‹ ( cÚ -> physiÿl . ‘ag , sû ->etag); 463 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("ETag"), `CONST_BUF_LEN (cÚ-> physiÿl . ‘ag )); 468 ià( NULL =ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »¥Ú£ . h—d”s , "Last-Modified"))) { 469 mtime = `¡ráime_ÿche_g‘ ( ¤v , sû -> ¡ . ¡_mtime ); 470 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("La¡-Modif›d"), `CONST_BUF_LEN ( mtime )); 472 mtime = ds -> v®ue ; 475 ià( HANDLER_FINISHED =ð `h‰p_»¥Ú£_hªdË_ÿchabË ( ¤v , cÚ , mtime )) { 476  HANDLER_FINISHED ; 480 ià( cÚ -> »que¡ . h‰p_¿nge && cÚ-> cÚf . ¿nge_»que¡s ) { 481  do_¿nge_»que¡ = 1; 484 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "If-Range"))) { 488 ià( ds -> v®ue -> ±r [0] == '"') { 492 ià(! cÚ -> physiÿl . ‘ag ) { 493 do_¿nge_»que¡ = 0; 494 } ià(! `bufãr_is_equ® ( ds -> v®ue , cÚ -> physiÿl . ‘ag )) { 495 do_¿nge_»que¡ = 0; 497 } ià(! mtime ) { 503 do_¿nge_»que¡ = 0; 504 } ià(! `bufãr_is_equ® ( ds -> v®ue , mtime )) { 505 do_¿nge_»que¡ = 0; 509 ià( do_¿nge_»que¡ ) { 511 cÚ -> fže_fšished = 1; 513 ià(0 =ð `h‰p_»¥Ú£_·r£_¿nge ( ¤v , cÚ , p )) { 514 cÚ -> h‰p_¡©us = 206; 516  HANDLER_FINISHED ; 525 `h‰p_chunk_­³nd_fže ( ¤v , cÚ , cÚ-> physiÿl . ·th , 0, sû -> ¡ . ¡_size ); 527 cÚ -> h‰p_¡©us = 200; 528 cÚ -> fže_fšished = 1; 530  HANDLER_FINISHED ; 531 } } 535  $mod_¡©icfže_¶ugš_š™ ( ¶ugš * p ) { 536 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 537 p -> Çme = `bufãr_š™_¡ršg ("staticfile"); 539 p -> š™ = mod_¡©icfže_š™ ; 540 p -> hªdË_sub»que¡_¡¬t = mod_¡©icfže_sub»que¡ ; 541 p -> £t_deçuÉs = mod_¡©icfže_£t_deçuÉs ; 542 p -> þ—nup = mod_¡©icfže_ä“ ; 544 p -> d©a = NULL ; 547 } } @src/mod_status.c 1  #_GNU_SOURCE ) 2  ~ 4  ~ 5  ~<¡dlib.h > 6  ~<¡ršg.h > 7  ~ 8  ~<”ºo.h > 9  ~ 10  ~<¡dio.h > 12  ~"£rv”.h " 13  ~"cÚÃùiÚs.h " 14  ~"»¥Ú£.h " 15  ~"cÚÃùiÚs.h " 16  ~"log.h " 18  ~"¶ugš.h " 20  ~"š‘_ÁÝ_ÿche.h " 23 bufãr * mcÚfig_u¾ ; 24 bufãr * m¡©us_u¾ ; 25 bufãr * m¡©i¡ics_u¾ ; 27  msÜt ; 28 } t¶ugš_cÚfig ; 31 mPLUGIN_DATA ; 33  mŒaffic_out ; 34  m»que¡s ; 36  mmod_5s_Œaffic_out [5]; 37  mmod_5s_»que¡s [5]; 38 size_t mmod_5s_ndx ; 40  m»l_Œaffic_out ; 41  m»l_»que¡s ; 43  mabs_Œaffic_out ; 44  mabs_»que¡s ; 46  mby‹s_wr™‹n ; 48 bufãr * mmoduË_li¡ ; 50 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 52 ¶ugš_cÚfig mcÚf ; 53 } t¶ugš_d©a ; 55 $INIT_FUNC ( mod_¡©us_š™ ) { 56 ¶ugš_d©a * p ; 57 size_t i ; 59 p = `ÿÎoc (1, (*p)); 61 p -> Œaffic_out =…-> »que¡s = 0; 62 p -> »l_Œaffic_out =…-> »l_»que¡s = 0; 63 p -> abs_Œaffic_out =…-> abs_»que¡s = 0; 64 p -> by‹s_wr™‹n = 0; 65 p -> moduË_li¡ = `bufãr_š™ (); 67  i = 0; i < 5; i++) { 68 p -> mod_5s_Œaffic_out [ i ] =…-> mod_5s_»que¡s [i] = 0; 71  p ; 72 } } 74 $FREE_FUNC ( mod_¡©us_ä“ ) { 75 ¶ugš_d©a * p = p_d ; 77 `UNUSED ( ¤v ); 79 ià(! p è HANDLER_GO_ON ; 81 `bufãr_ä“ ( p -> moduË_li¡ ); 83 ià( p -> cÚfig_¡Üage ) { 84 size_t i ; 85  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 86 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 88 `bufãr_ä“ ( s -> ¡©us_u¾ ); 89 `bufãr_ä“ ( s -> ¡©i¡ics_u¾ ); 90 `bufãr_ä“ ( s -> cÚfig_u¾ ); 92 `ä“ ( s ); 94 `ä“ ( p -> cÚfig_¡Üage ); 98 `ä“ ( p ); 100  HANDLER_GO_ON ; 101 } } 103 $SETDEFAULTS_FUNC ( mod_¡©us_£t_deçuÉs ) { 104 ¶ugš_d©a * p = p_d ; 105 size_t i ; 107 cÚfig_v®ues_t cv [] = { 108 { "¡©us.¡©us-u¾", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 109 { "¡©us.cÚfig-u¾", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 110 { "¡©us.’abË-sÜt", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 111 { "¡©us.¡©i¡ics-u¾", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 112 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 115 ià(! p è HANDLER_ERROR ; 117 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 119  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 120 ¶ugš_cÚfig * s ; 122 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 123 s -> cÚfig_u¾ = `bufãr_š™ (); 124 s -> ¡©us_u¾ = `bufãr_š™ (); 125 s -> sÜt = 1; 126 s -> ¡©i¡ics_u¾ = `bufãr_š™ (); 128 cv [0]. de¡š©iÚ = s -> ¡©us_u¾ ; 129 cv [1]. de¡š©iÚ = s -> cÚfig_u¾ ; 130 cv [2]. de¡š©iÚ = &( s -> sÜt ); 131 cv [3]. de¡š©iÚ = s -> ¡©i¡ics_u¾ ; 133 p -> cÚfig_¡Üage [ i ] = s ; 135 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 136  HANDLER_ERROR ; 140  HANDLER_GO_ON ; 141 } } 145  $mod_¡©us_row_­³nd ( bufãr * b , cÚ¡ * key , cÚ¡ * v®ue ) { 146 `BUFFER_APPEND_STRING_CONST ( b , " \n"); 147 `BUFFER_APPEND_STRING_CONST ( b , " "); 148 `bufãr_­³nd_¡ršg ( b , key ); 149 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 150 `BUFFER_APPEND_STRING_CONST ( b , " "); 151 `bufãr_­³nd_¡ršg ( b , v®ue ); 152 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 153 `BUFFER_APPEND_STRING_CONST ( b , " \n"); 156 } } 158  $mod_¡©us_h—d”_­³nd ( bufãr * b , cÚ¡ * key ) { 159 `BUFFER_APPEND_STRING_CONST ( b , " \n"); 160 `BUFFER_APPEND_STRING_CONST ( b , " "); 161 `bufãr_­³nd_¡ršg ( b , key ); 162 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 163 `BUFFER_APPEND_STRING_CONST ( b , " \n"); 166 } } 168  $mod_¡©us_h—d”_­³nd_sÜt ( bufãr * b , * p_d , cÚ¡ * key ) { 169 ¶ugš_d©a * p = p_d ; 171 ià( p -> cÚf . sÜt ) { 172 `BUFFER_APPEND_STRING_CONST ( b , ""); 173 `bufãr_­³nd_¡ršg ( b , key ); 174 `BUFFER_APPEND_STRING_CONST ( b , ":\n"); 176 `BUFFER_APPEND_STRING_CONST ( b , ""); 177 `bufãr_­³nd_¡ršg ( b , key ); 178 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 182 } } 184  $mod_¡©us_g‘_muÉl›r (* avg , * muÉl›r ,  size ) { 185 * muÉl›r = ' '; 187 ià(* avg > size è{ *avg /ðsize; * muÉl›r = 'k'; } 188 ià(* avg > size è{ *avg /ðsize; * muÉl›r = 'M'; } 189 ià(* avg > size è{ *avg /ðsize; * muÉl›r = 'G'; } 190 ià(* avg > size è{ *avg /ðsize; * muÉl›r = 'T'; } 191 ià(* avg > size è{ *avg /ðsize; * muÉl›r = 'P'; } 192 ià(* avg > size è{ *avg /ðsize; * muÉl›r = 'E'; } 193 ià(* avg > size è{ *avg /ðsize; * muÉl›r = 'Z'; } 194 ià(* avg > size è{ *avg /ðsize; * muÉl›r = 'Y'; } 197 } } 199  hªdËr_t $mod_¡©us_hªdË_£rv”_¡©us_html ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 200 ¶ugš_d©a * p = p_d ; 201 bufãr * b ; 202 size_t j ; 203  avg ; 204  muÉl›r = '\0'; 205  buf [32]; 206 time_t ts ; 208  days , hours , mšs , £cÚds ; 210 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 212 `BUFFER_COPY_STRING_CONST ( b , 220 `BUFFER_APPEND_STRING_CONST ( b , 231 ià( p -> cÚf . sÜt ) { 232 `BUFFER_APPEND_STRING_CONST ( b , 238 `BUFFER_APPEND_STRING_CONST ( b , 256 `BUFFER_APPEND_STRING_CONST ( b , 271 `BUFFER_APPEND_STRING_CONST ( b , 281 `BUFFER_APPEND_STRING_CONST ( b , 299 `BUFFER_APPEND_STRING_CONST ( b , 306 `BUFFER_APPEND_STRING_CONST ( b , "

Server-Status

"); 308 `BUFFER_APPEND_STRING_CONST ( b , ""); 309 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 314 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 348 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 357 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 359 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 369 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 382 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 384 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 394 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 407 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 408  j = 0, avg = 0; j < 5; j++) { 409 avg +ð p -> mod_5s_»que¡s [ j ]; 412 avg /= 5; 414 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 424  j = 0, avg = 0; j < 5; j++) { 425 avg +ð p -> mod_5s_Œaffic_out [ j ]; 428 avg /= 5; 430 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 440 `BUFFER_APPEND_STRING_CONST ( b , "
Hostname"); 310 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> uri . authÜ™y ); 311 `BUFFER_APPEND_STRING_CONST ( b , " ("); 312 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> £rv”_Çme ); 313 `BUFFER_APPEND_STRING_CONST ( b , ")
Uptime"); 316 ts = ¤v -> cur_ts - srv-> ¡¬tup_ts ; 318 days = ts / (60 * 60 * 24); 319 ts %= (60 * 60 * 24); 321 hours = ts / (60 * 60); 322 ts %= (60 * 60); 324 mšs = ts / (60); 325 ts %= (60); 327 £cÚds = ts ; 329 ià( days ) { 330 `bufãr_­³nd_lÚg ( b , days ); 331 `BUFFER_APPEND_STRING_CONST ( b , " days "); 334 ià( hours ) { 335 `bufãr_­³nd_lÚg ( b , hours ); 336 `BUFFER_APPEND_STRING_CONST ( b , " hours "); 339 ià( mšs ) { 340 `bufãr_­³nd_lÚg ( b , mšs ); 341 `BUFFER_APPEND_STRING_CONST ( b , " min "); 344 `bufãr_­³nd_lÚg ( b , £cÚds ); 345 `BUFFER_APPEND_STRING_CONST ( b , " s"); 347 `BUFFER_APPEND_STRING_CONST ( b , "
Started‡t"); 350 ts = ¤v -> ¡¬tup_ts ; 352 `¡ráime ( buf , (bufè- 1, "%Y-%m-%d %H:%M:%S", `loÿÉime (& ts )); 353 `bufãr_­³nd_¡ršg ( b , buf ); 354 `BUFFER_APPEND_STRING_CONST ( b , "
absolute (since start)
Requests"); 360 avg = p -> abs_»que¡s ; 362 `mod_¡©us_g‘_muÉl›r (& avg , & muÉl›r , 1000); 364 `bufãr_­³nd_lÚg ( b , avg ); 365 `BUFFER_APPEND_STRING_CONST ( b , " "); 366 ià( muÉl›r è `bufãr_­³nd_¡ršg_Ën ( b , &multiplier, 1); 367 `BUFFER_APPEND_STRING_CONST ( b , "req
Traffic"); 370 avg = p -> abs_Œaffic_out ; 372 `mod_¡©us_g‘_muÉl›r (& avg , & muÉl›r , 1024); 374 `¥rštf ( buf , "%.2f", avg ); 375 `bufãr_­³nd_¡ršg ( b , buf ); 376 `BUFFER_APPEND_STRING_CONST ( b , " "); 377 ià( muÉl›r è `bufãr_­³nd_¡ršg_Ën ( b , &multiplier, 1); 378 `BUFFER_APPEND_STRING_CONST ( b , "byte
average (since start)
Requests"); 385 avg = p -> abs_»que¡s / ( ¤v -> cur_ts - srv-> ¡¬tup_ts ); 387 `mod_¡©us_g‘_muÉl›r (& avg , & muÉl›r , 1000); 389 `bufãr_­³nd_lÚg ( b , avg ); 390 `BUFFER_APPEND_STRING_CONST ( b , " "); 391 ià( muÉl›r è `bufãr_­³nd_¡ršg_Ën ( b , &multiplier, 1); 392 `BUFFER_APPEND_STRING_CONST ( b , "req/s
Traffic"); 395 avg = p -> abs_Œaffic_out / ( ¤v -> cur_ts - srv-> ¡¬tup_ts ); 397 `mod_¡©us_g‘_muÉl›r (& avg , & muÉl›r , 1024); 399 `¥rštf ( buf , "%.2f", avg ); 400 `bufãr_­³nd_¡ršg ( b , buf ); 401 `BUFFER_APPEND_STRING_CONST ( b , " "); 402 ià( muÉl›r è `bufãr_­³nd_¡ršg_Ën ( b , &multiplier, 1); 403 `BUFFER_APPEND_STRING_CONST ( b , "byte/s
average (5s sliding‡verage)
Requests"); 416 `mod_¡©us_g‘_muÉl›r (& avg , & muÉl›r , 1000); 418 `bufãr_­³nd_lÚg ( b , avg ); 419 `BUFFER_APPEND_STRING_CONST ( b , " "); 420 ià( muÉl›r è `bufãr_­³nd_¡ršg_Ën ( b , &multiplier, 1); 422 `BUFFER_APPEND_STRING_CONST ( b , "req/s
Traffic"); 432 `mod_¡©us_g‘_muÉl›r (& avg , & muÉl›r , 1024); 434 `¥rštf ( buf , "%.2f", avg ); 435 `bufãr_­³nd_¡ršg ( b , buf ); 436 `BUFFER_APPEND_STRING_CONST ( b , " "); 437 ià( muÉl›r è `bufãr_­³nd_¡ršg_Ën ( b , &multiplier, 1); 438 `BUFFER_APPEND_STRING_CONST ( b , "byte/s
\n"); 443 `BUFFER_APPEND_STRING_CONST ( b , "
\n
legend\n");

444 
	`BUFFER_APPEND_STRING_CONST
(
b
, ". = connect, C = close, E = hardƒrror\n");

445 
	`BUFFER_APPEND_STRING_CONST
(
b
, "r =„ead, R =„ead-POST, W = write, h = handle-request\n");

446 
	`BUFFER_APPEND_STRING_CONST
(
b
, "q =„equest-start, Q =„equest-end\n");

447 
	`BUFFER_APPEND_STRING_CONST
(
b
, "s =„esponse-start, S =„esponse-end\n");

449 
	`BUFFER_APPEND_STRING_CONST
(
b
, "");

450 
	`bufãr_­³nd_lÚg
(
b
, 
¤v
->
cÚns
->
u£d
);

451 
	`BUFFER_APPEND_STRING_CONST
(
b
, " connections\n");

453 
j
 = 0; j < 
¤v
->
cÚns
->
u£d
; j++) {

454 
cÚÃùiÚ
 *
c
 = 
¤v
->
cÚns
->
±r
[
j
];

455 cÚ¡ *
¡©e
 = 
	`cÚÃùiÚ_g‘_shÜt_¡©e
(
c
->state);

457 
	`bufãr_­³nd_¡ršg_Ën
(
b
, 
¡©e
, 1);

459 ià(((
j
 + 1) % 50) == 0) {

460 
	`BUFFER_APPEND_STRING_CONST
(
b
, "\n");

464 
	`BUFFER_APPEND_STRING_CONST
(
b
, "\n

\n

Connections

\n"); 466 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 467 `BUFFER_APPEND_STRING_CONST ( b , ""); 468 `mod_¡©us_h—d”_­³nd_sÜt ( b , p_d , "Client IP"); 469 `mod_¡©us_h—d”_­³nd_sÜt ( b , p_d , "Read"); 470 `mod_¡©us_h—d”_­³nd_sÜt ( b , p_d , "Written"); 471 `mod_¡©us_h—d”_­³nd_sÜt ( b , p_d , "State"); 472 `mod_¡©us_h—d”_­³nd_sÜt ( b , p_d , "Time"); 473 `mod_¡©us_h—d”_­³nd_sÜt ( b , p_d , "Host"); 474 `mod_¡©us_h—d”_­³nd_sÜt ( b , p_d , "URI"); 475 `mod_¡©us_h—d”_­³nd_sÜt ( b , p_d , "File"); 476 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 478  j = 0; j < ¤v -> cÚns -> u£d ; j++) { 479 cÚÃùiÚ * c = ¤v -> cÚns -> ±r [ j ]; 481 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 542 `BUFFER_APPEND_STRING_CONST ( b , 546 `BUFFER_APPEND_STRING_CONST ( b , 551 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Content-Type"), CONST_STR_LEN("text/html")); 554 } } 557  hªdËr_t $mod_¡©us_hªdË_£rv”_¡©us_‹xt ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 558 ¶ugš_d©a * p = p_d ; 559 bufãr * b ; 560  avg ; 561 time_t ts ; 562  buf [32]; 563  k ; 564  l ; 566 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 569 `BUFFER_APPEND_STRING_CONST ( b , "Total Accesses: "); 570 avg = p -> abs_»que¡s ; 571 `¢´štf ( buf , (bufè- 1, "%.0f", avg ); 572 `bufãr_­³nd_¡ršg ( b , buf ); 573 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 576 `BUFFER_APPEND_STRING_CONST ( b , "Total kBytes: "); 577 avg = p -> abs_Œaffic_out / 1024; 578 `¢´štf ( buf , (bufè- 1, "%.0f", avg ); 579 `bufãr_­³nd_¡ršg ( b , buf ); 580 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 583 `BUFFER_APPEND_STRING_CONST ( b , "Uptime: "); 584 ts = ¤v -> cur_ts - srv-> ¡¬tup_ts ; 585 `bufãr_­³nd_lÚg ( b , ts ); 586 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 589 `BUFFER_APPEND_STRING_CONST ( b , "BusyServers: "); 590 `bufãr_­³nd_lÚg ( b , ¤v -> cÚns -> u£d ); 591 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 593 `BUFFER_APPEND_STRING_CONST ( b , "IdleServers: "); 594 `bufãr_­³nd_lÚg ( b , ¤v -> cÚns -> size - srv->cÚns-> u£d ); 595 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 598 `BUFFER_APPEND_STRING_CONST ( b , "Scoreboard: "); 599  k = 0; k < ¤v -> cÚns -> u£d ; k++) { 600 cÚÃùiÚ * c = ¤v -> cÚns -> ±r [ k ]; 601 cÚ¡ * ¡©e = `cÚÃùiÚ_g‘_shÜt_¡©e ( c ->state); 602 `bufãr_­³nd_¡ršg_Ën ( b , ¡©e , 1); 604  l = 0;† < ¤v -> cÚns -> size - srv->cÚns-> u£d ;†++) { 605 `BUFFER_APPEND_STRING_CONST ( b , "_"); 607 `BUFFER_APPEND_STRING_CONST ( b , "\n"); 611 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Content-Type"), CONST_STR_LEN("text/plain")); 614 } } 616  hªdËr_t $mod_¡©us_hªdË_£rv”_¡©i¡ics ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 617 ¶ugš_d©a * p = p_d ; 618 bufãr * b = p -> moduË_li¡ ; 619 size_t i ; 620 ¬¿y * ¡ = ¤v -> ¡©us ; 622 ià(0 =ð ¡ -> u£d ) { 624 cÚ -> h‰p_¡©us = 204; 625 cÚ -> fže_fšished = 1; 627  HANDLER_FINISHED ; 630 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 632  i = 0; i < ¡ -> u£d ; i++) { 633 size_t ndx = ¡ -> sÜ‹d [ i ]; 635 `bufãr_­³nd_¡ršg_bufãr ( b , ¡ -> d©a [ ndx ]-> key ); 636 `bufãr_­³nd_¡ršg ( b , ": "); 637 `bufãr_­³nd_lÚg ( b , (( d©a_š‹g” *)( ¡ -> d©a [ ndx ]))-> v®ue ); 638 `bufãr_­³nd_¡ršg ( b , "\n"); 641 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Content-Type"), CONST_STR_LEN("text/plain")); 643 cÚ -> h‰p_¡©us = 200; 644 cÚ -> fže_fšished = 1; 646  HANDLER_FINISHED ; 647 } } 650  hªdËr_t $mod_¡©us_hªdË_£rv”_¡©us ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 652 ià( `bufãr_is_equ®_¡ršg ( cÚ -> uri . qu”y , `CONST_STR_LEN ("auto"))) { 653 `mod_¡©us_hªdË_£rv”_¡©us_‹xt ( ¤v , cÚ , p_d ); 655 `mod_¡©us_hªdË_£rv”_¡©us_html ( ¤v , cÚ , p_d ); 658 cÚ -> h‰p_¡©us = 200; 659 cÚ -> fže_fšished = 1; 661  HANDLER_FINISHED ; 662 } } 665  hªdËr_t $mod_¡©us_hªdË_£rv”_cÚfig ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 666 ¶ugš_d©a * p = p_d ; 667 bufãr * b , * m = p -> moduË_li¡ ; 668 size_t i ; 670  sev_m­ { fdev’t_hªdËr_t ‘ ; cÚ¡ * Çme ; } ev’t_hªdËrs [] = 676 #ifdeà USE_POLL 677 { FDEVENT_HANDLER_POLL , "poll" }, 679 #ifdeà USE_SELECT 680 { FDEVENT_HANDLER_SELECT , "select" }, 682 #ifdeà USE_LINUX_EPOLL 683 { FDEVENT_HANDLER_LINUX_SYSEPOLL , "linux-sysepoll" }, 685 #ifdeà USE_LINUX_SIGIO 686 { FDEVENT_HANDLER_LINUX_RTSIG , "linux-rtsig" }, 688 #ifdeà USE_SOLARIS_DEVPOLL 689 { FDEVENT_HANDLER_SOLARIS_DEVPOLL ,"solaris-devpoll" }, 691 #ifdeà USE_FREEBSD_KQUEUE 692 { FDEVENT_HANDLER_FREEBSD_KQUEUE , "freebsd-kqueue" }, 694 { FDEVENT_HANDLER_UNSET , NULL } 697 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 699 `BUFFER_COPY_STRING_CONST ( b , 708 "

" PACKAGE_NAME " " PACKAGE_VERSION "

\n" 711 `mod_¡©us_h—d”_­³nd ( b , "Server-Features"); 712 #ifdeà HAVE_PCRE_H 713 `mod_¡©us_row_­³nd ( b , "RegEx Conditionals", "enabled"); 715 `mod_¡©us_row_­³nd ( b , "RegEx Conditionals", "disabled -…cre missing"); 717 `mod_¡©us_h—d”_­³nd ( b , "Network Engine"); 719  i = 0; ev’t_hªdËrs [i]. Çme ; i++) { 720 ià( ev’t_hªdËrs [ i ]. ‘ =ð ¤v -> ev’t_hªdËr ) { 721 `mod_¡©us_row_­³nd ( b , "fd-Ev’t-HªdËr", ev’t_hªdËrs [ i ]. Çme ); 726 `mod_¡©us_h—d”_­³nd ( b , "Config-File-Settings"); 728  i = 0; i < ¤v -> ¶ugšs . u£d ; i++) { 729 ¶ugš ** ps = ¤v -> ¶ugšs . ±r ; 731 ¶ugš * ¶ = ps [ i ]; 733 ià( i == 0) { 734 `bufãr_cÝy_¡ršg_bufãr ( m , ¶ -> Çme ); 736 `BUFFER_APPEND_STRING_CONST ( m , "
"); 737 `bufãr_­³nd_¡ršg_bufãr ( m , ¶ -> Çme ); 741 `mod_¡©us_row_­³nd ( b , "Lßded ModuËs", m -> ±r ); 743 `BUFFER_APPEND_STRING_CONST ( b , "
"); 483 `bufãr_­³nd_¡ršg ( b , `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &( c -> d¡_addr ))); 485 `BUFFER_APPEND_STRING_CONST ( b , ""); 487 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth ) { 488 `bufãr_­³nd_lÚg ( b , c -> »que¡_cÚ‹Á_queue -> by‹s_š ); 489 `BUFFER_APPEND_STRING_CONST ( b , "/"); 490 `bufãr_­³nd_lÚg ( b , c -> »que¡ . cÚ‹Á_Ëngth ); 492 `BUFFER_APPEND_STRING_CONST ( b , "0/0"); 495 `BUFFER_APPEND_STRING_CONST ( b , ""); 497 `bufãr_­³nd_off_t ( b , `chunkqueue_wr™‹n ( c -> wr™e_queue )); 498 `BUFFER_APPEND_STRING_CONST ( b , "/"); 499 `bufãr_­³nd_off_t ( b , `chunkqueue_Ëngth ( c -> wr™e_queue )); 501 `BUFFER_APPEND_STRING_CONST ( b , ""); 503 `bufãr_­³nd_¡ršg ( b , `cÚÃùiÚ_g‘_¡©e ( c -> ¡©e )); 505 `BUFFER_APPEND_STRING_CONST ( b , ""); 507 `bufãr_­³nd_lÚg ( b , ¤v -> cur_ts - c -> »que¡_¡¬t ); 509 `BUFFER_APPEND_STRING_CONST ( b , ""); 511 ià( `bufãr_is_em±y ( c -> £rv”_Çme )) { 512 `bufãr_­³nd_¡ršg_bufãr ( b , c -> uri . authÜ™y ); 515 `bufãr_­³nd_¡ršg_bufãr ( b , c -> £rv”_Çme ); 518 `BUFFER_APPEND_STRING_CONST ( b , ""); 520 ià(! `bufãr_is_em±y ( c -> uri . ·th )) { 521 `bufãr_­³nd_¡ršg_’coded ( b , `CONST_BUF_LEN ( c -> uri . ·th ), ENCODING_HTML ); 524 ià(! `bufãr_is_em±y ( c -> uri . qu”y )) { 525 `BUFFER_APPEND_STRING_CONST ( b , "?"); 526 `bufãr_­³nd_¡ršg_’coded ( b , `CONST_BUF_LEN ( c -> uri . qu”y ), ENCODING_HTML ); 529 ià(! `bufãr_is_em±y ( c -> »que¡ . Üig_uri )) { 530 `BUFFER_APPEND_STRING_CONST ( b , " ("); 531 `bufãr_­³nd_¡ršg_’coded ( b , `CONST_BUF_LEN ( c -> »que¡ . Üig_uri ), ENCODING_HTML ); 532 `BUFFER_APPEND_STRING_CONST ( b , ")"); 534 `BUFFER_APPEND_STRING_CONST ( b , ""); 536 `bufãr_­³nd_¡ršg_bufãr ( b , c -> physiÿl . ·th ); 538 `BUFFER_APPEND_STRING_CONST ( b , "
\n"); 745 `BUFFER_APPEND_STRING_CONST ( b , 750 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Content-Type"), CONST_STR_LEN("text/html")); 752 cÚ -> h‰p_¡©us = 200; 753 cÚ -> fže_fšished = 1; 755  HANDLER_FINISHED ; 756 } } 758  #PATCH ( x ) \ 759 p -> cÚf . x = s ->x; ) 760  $mod_¡©us_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 761 size_t i , j ; 762 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 764 `PATCH ( ¡©us_u¾ ); 765 `PATCH ( cÚfig_u¾ ); 766 `PATCH ( sÜt ); 767 `PATCH ( ¡©i¡ics_u¾ ); 770  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 771 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 772 s = p -> cÚfig_¡Üage [ i ]; 775 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 778  j = 0; j < dc -> v®ue -> u£d ; j++) { 779 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 781 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("status.status-url"))) { 782 `PATCH ( ¡©us_u¾ ); 783 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("status.config-url"))) { 784 `PATCH ( cÚfig_u¾ ); 785 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("status.enable-sort"))) { 786 `PATCH ( sÜt ); 787 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("status.statistics-url"))) { 788 `PATCH ( ¡©i¡ics_u¾ ); 794 } } 796  hªdËr_t $mod_¡©us_hªdËr ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) { 797 ¶ugš_d©a * p = p_d ; 799 `mod_¡©us_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 801 ià(! `bufãr_is_em±y ( p -> cÚf . ¡©us_u¾ ) && 802 `bufãr_is_equ® ( p -> cÚf . ¡©us_u¾ , cÚ -> uri . ·th )) { 803  `mod_¡©us_hªdË_£rv”_¡©us ( ¤v , cÚ , p_d ); 804 } ià(! `bufãr_is_em±y ( p -> cÚf . cÚfig_u¾ ) && 805 `bufãr_is_equ® ( p -> cÚf . cÚfig_u¾ , cÚ -> uri . ·th )) { 806  `mod_¡©us_hªdË_£rv”_cÚfig ( ¤v , cÚ , p_d ); 807 } ià(! `bufãr_is_em±y ( p -> cÚf . ¡©i¡ics_u¾ ) && 808 `bufãr_is_equ® ( p -> cÚf . ¡©i¡ics_u¾ , cÚ -> uri . ·th )) { 809  `mod_¡©us_hªdË_£rv”_¡©i¡ics ( ¤v , cÚ , p_d ); 812  HANDLER_GO_ON ; 813 } } 815 $TRIGGER_FUNC ( mod_¡©us_Œigg” ) { 816 ¶ugš_d©a * p = p_d ; 817 size_t i ; 820  i = 0; i < ¤v -> cÚns -> u£d ; i++) { 821 cÚÃùiÚ * c = ¤v -> cÚns -> ±r [ i ]; 823 p -> by‹s_wr™‹n +ð c -> by‹s_wr™‹n_cur_£cÚd ; 827 p -> mod_5s_Œaffic_out [p-> mod_5s_ndx ] =…-> by‹s_wr™‹n ; 828 p -> mod_5s_»que¡s [p-> mod_5s_ndx ] =…-> »que¡s ; 830 p -> mod_5s_ndx = (p->mod_5s_ndx+1) % 5; 832 p -> abs_Œaffic_out +ðp-> by‹s_wr™‹n ; 833 p -> »l_Œaffic_out +ðp-> by‹s_wr™‹n ; 835 p -> by‹s_wr™‹n = 0; 838 p -> Œaffic_out = 0; 839 p -> »que¡s = 0; 841  HANDLER_GO_ON ; 842 } } 844 $REQUESTDONE_FUNC ( mod_¡©us_accouÁ ) { 845 ¶ugš_d©a * p = p_d ; 847 `UNUSED ( ¤v ); 849 p -> »que¡s ++; 850 p -> »l_»que¡s ++; 851 p -> abs_»que¡s ++; 853 p -> by‹s_wr™‹n +ð cÚ -> by‹s_wr™‹n_cur_£cÚd ; 855  HANDLER_GO_ON ; 856 } } 858  $mod_¡©us_¶ugš_š™ ( ¶ugš * p ) { 859 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 860 p -> Çme = `bufãr_š™_¡ršg ("status"); 862 p -> š™ = mod_¡©us_š™ ; 863 p -> þ—nup = mod_¡©us_ä“ ; 864 p -> £t_deçuÉs ð mod_¡©us_£t_deçuÉs ; 866 p -> hªdË_uri_þ—n = mod_¡©us_hªdËr ; 867 p -> hªdË_Œigg” = mod_¡©us_Œigg” ; 868 p -> hªdË_»que¡_dÚe = mod_¡©us_accouÁ ; 870 p -> d©a = NULL ; 873 } } @src/mod_trigger_b4_dl.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 5  ~"ba£.h " 6  ~"log.h " 7  ~"bufãr.h " 9  ~"¶ugš.h " 10  ~"»¥Ú£.h " 11  ~"š‘_ÁÝ_ÿche.h " 13 #ià defšed ( HAVE_GDBM_H ) 14  ~ 17 #ià defšed ( HAVE_PCRE_H ) 18  ~ 21 #ià defšed ( HAVE_MEMCACHE_H ) 22  ~ 33 bufãr * mdb_fž’ame ; 35 bufãr * mŒigg”_u¾ ; 36 bufãr * mdowÆßd_u¾ ; 37 bufãr * md’y_u¾ ; 39 ¬¿y * mmc_ho¡s ; 40 bufãr * mmc_Çme¥aû ; 41 #ià defšed ( HAVE_PCRE_H ) 42 püe * mŒigg”_»gex ; 43 püe * mdowÆßd_»gex ; 45 #ià defšed ( HAVE_GDBM_H ) 46 GDBM_FILE mdb ; 49 #ià defšed ( HAVE_MEMCACHE_H ) 50  memÿche * mmc ; 53  mŒigg”_timeout ; 54  mdebug ; 55 } t¶ugš_cÚfig ; 58 mPLUGIN_DATA ; 60 bufãr * mtmp_buf ; 62 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 64 ¶ugš_cÚfig mcÚf ; 65 } t¶ugš_d©a ; 68 $INIT_FUNC ( mod_Œigg”_b4_dl_š™ ) { 69 ¶ugš_d©a * p ; 71 p = `ÿÎoc (1, (*p)); 73 p -> tmp_buf = `bufãr_š™ (); 75  p ; 76 } } 79 $FREE_FUNC ( mod_Œigg”_b4_dl_ä“ ) { 80 ¶ugš_d©a * p = p_d ; 82 `UNUSED ( ¤v ); 84 ià(! p è HANDLER_GO_ON ; 86 ià( p -> cÚfig_¡Üage ) { 87 size_t i ; 88  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 89 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 91 ià(! s ) ; 93 `bufãr_ä“ ( s -> db_fž’ame ); 94 `bufãr_ä“ ( s -> dowÆßd_u¾ ); 95 `bufãr_ä“ ( s -> Œigg”_u¾ ); 96 `bufãr_ä“ ( s -> d’y_u¾ ); 98 `bufãr_ä“ ( s -> mc_Çme¥aû ); 99 `¬¿y_ä“ ( s -> mc_ho¡s ); 101 #ià `defšed ( HAVE_PCRE_H ) 102 ià( s -> Œigg”_»gex è `püe_ä“ (s->trigger_regex); 103 ià( s -> dowÆßd_»gex è `püe_ä“ (s->download_regex); 105 #ià `defšed ( HAVE_GDBM_H ) 106 ià( s -> db è `gdbm_þo£ (s->db); 108 #ià `defšed ( HAVE_MEMCACHE_H ) 109 ià( s -> mc è `mc_ä“ (s->mc); 112 `ä“ ( s ); 114 `ä“ ( p -> cÚfig_¡Üage ); 117 `bufãr_ä“ ( p -> tmp_buf ); 119 `ä“ ( p ); 121  HANDLER_GO_ON ; 122 } } 126 $SETDEFAULTS_FUNC ( mod_Œigg”_b4_dl_£t_deçuÉs ) { 127 ¶ugš_d©a * p = p_d ; 128 size_t i = 0; 131 cÚfig_v®ues_t cv [] = { 132 { "Œigg”-befÜe-dowÆßd.gdbm-fž’ame", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 133 { "Œigg”-befÜe-dowÆßd.Œigg”-u¾", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 134 { "Œigg”-befÜe-dowÆßd.dowÆßd-u¾", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 135 { "Œigg”-befÜe-dowÆßd.d’y-u¾", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 136 { "Œigg”-befÜe-dowÆßd.Œigg”-timeout", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 137 { "Œigg”-befÜe-dowÆßd.memÿche-ho¡s", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 138 { "Œigg”-befÜe-dowÆßd.memÿche-Çme¥aû", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 139 { "Œigg”-befÜe-dowÆßd.debug", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 140 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 143 ià(! p è HANDLER_ERROR ; 145 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 147  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 148 ¶ugš_cÚfig * s ; 149 #ià `defšed ( HAVE_PCRE_H ) 150 cÚ¡ * ”½Œ ; 151  ”roff ; 154 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 155 s -> db_fž’ame = `bufãr_š™ (); 156 s -> dowÆßd_u¾ = `bufãr_š™ (); 157 s -> Œigg”_u¾ = `bufãr_š™ (); 158 s -> d’y_u¾ = `bufãr_š™ (); 159 s -> mc_ho¡s = `¬¿y_š™ (); 160 s -> mc_Çme¥aû = `bufãr_š™ (); 162 cv [0]. de¡š©iÚ = s -> db_fž’ame ; 163 cv [1]. de¡š©iÚ = s -> Œigg”_u¾ ; 164 cv [2]. de¡š©iÚ = s -> dowÆßd_u¾ ; 165 cv [3]. de¡š©iÚ = s -> d’y_u¾ ; 166 cv [4]. de¡š©iÚ = &( s -> Œigg”_timeout ); 167 cv [5]. de¡š©iÚ = s -> mc_ho¡s ; 168 cv [6]. de¡š©iÚ = s -> mc_Çme¥aû ; 169 cv [7]. de¡š©iÚ = &( s -> debug ); 171 p -> cÚfig_¡Üage [ i ] = s ; 173 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 174  HANDLER_ERROR ; 176 #ià `defšed ( HAVE_GDBM_H ) 177 ià(! `bufãr_is_em±y ( s -> db_fž’ame )) { 178 ià( NULL =ð( s -> db = `gdbm_Ý’ (s-> db_fž’ame -> ±r , 4096, GDBM_WRCREAT | GDBM_NOLOCK , S_IRUSR | S_IWUSR , 0))) { 179 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 181  HANDLER_ERROR ; 185 #ià `defšed ( HAVE_PCRE_H ) 186 ià(! `bufãr_is_em±y ( s -> dowÆßd_u¾ )) { 187 ià( NULL =ð( s -> dowÆßd_»gex = `püe_compže (s-> dowÆßd_u¾ -> ±r , 188 0, & ”½Œ , & ”roff , NULL ))) { 190 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", 192 s -> dowÆßd_u¾ , "pos:", ”roff ); 193  HANDLER_ERROR ; 197 ià(! `bufãr_is_em±y ( s -> Œigg”_u¾ )) { 198 ià( NULL =ð( s -> Œigg”_»gex = `püe_compže (s-> Œigg”_u¾ -> ±r , 199 0, & ”½Œ , & ”roff , NULL ))) { 201 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbss", 203 s -> Œigg”_u¾ , "pos:", ”roff ); 205  HANDLER_ERROR ; 210 ià( s -> mc_ho¡s -> u£d ) { 211 #ià `defšed ( HAVE_MEMCACHE_H ) 212 size_t k ; 213 s -> mc = `mc_Ãw (); 215  k = 0; k < s -> mc_ho¡s -> u£d ; k++) { 216 d©a_¡ršg * ds = (d©a_¡ršg *) s -> mc_ho¡s -> d©a [ k ]; 218 ià(0 !ð `mc_£rv”_add4 ( s -> mc , ds -> v®ue -> ±r )) { 219 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 221 ds -> v®ue ); 223  HANDLER_ERROR ; 227 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 229  HANDLER_ERROR ; 234 #ià(! `defšed ( HAVE_GDBM_H è&& !defšed( HAVE_MEMCACHE_H )è|| !defšed( HAVE_PCRE_H ) 235 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 237  HANDLER_ERROR ; 241  HANDLER_GO_ON ; 242 } } 244  #PATCH ( x ) \ 245 p -> cÚf . x = s ->x; ) 246  $mod_Œigg”_b4_dl_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 247 size_t i , j ; 248 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 250 #ià `defšed ( HAVE_GDBM ) 251 `PATCH ( db ); 253 #ià `defšed ( HAVE_PCRE_H ) 254 `PATCH ( dowÆßd_»gex ); 255 `PATCH ( Œigg”_»gex ); 257 `PATCH ( Œigg”_timeout ); 258 `PATCH ( d’y_u¾ ); 259 `PATCH ( mc_Çme¥aû ); 260 `PATCH ( debug ); 261 #ià `defšed ( HAVE_MEMCACHE_H ) 262 `PATCH ( mc ); 266  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 267 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 268 s = p -> cÚfig_¡Üage [ i ]; 271 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 274  j = 0; j < dc -> v®ue -> u£d ; j++) { 275 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 277 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("trigger-before-download.download-url"))) { 278 #ià `defšed ( HAVE_PCRE_H ) 279 `PATCH ( dowÆßd_»gex ); 281 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("trigger-before-download.trigger-url"))) { 282 #ià `defšed ( HAVE_PCRE_H ) 283 `PATCH ( Œigg”_»gex ); 285 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("trigger-before-download.gdbm-filename"))) { 286 #ià `defšed ( HAVE_GDBM_H ) 287 `PATCH ( db ); 289 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("trigger-before-download.trigger-timeout"))) { 290 `PATCH ( Œigg”_timeout ); 291 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("trigger-before-download.debug"))) { 292 `PATCH ( debug ); 293 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("trigger-before-download.deny-url"))) { 294 `PATCH ( d’y_u¾ ); 295 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("trigger-before-download.memcache-namespace"))) { 296 `PATCH ( mc_Çme¥aû ); 297 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("trigger-before-download.memcache-hosts"))) { 298 #ià `defšed ( HAVE_MEMCACHE_H ) 299 `PATCH ( mc ); 306 } } 307 #undeà PATCH 309 $URIHANDLER_FUNC ( mod_Œigg”_b4_dl_uri_hªdËr ) { 310 ¶ugš_d©a * p = p_d ; 311 cÚ¡ * »mÙe_ ; 312 d©a_¡ršg * ds ; 314 #ià `defšed ( HAVE_PCRE_H ) 315  n ; 316  #N 10 ) 317  ovec [ N * 3]; 319 ià( cÚ -> uri . ·th -> u£d =ð0è HANDLER_GO_ON ; 321 `mod_Œigg”_b4_dl_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 323 ià(! p -> cÚf . Œigg”_»gex || !p->cÚf. dowÆßd_»gex è HANDLER_GO_ON ; 325 #ià! `defšed ( HAVE_GDBM_H è&& !defšed( HAVE_MEMCACHE_H ) 326  HANDLER_GO_ON ; 327 #–ià `defšed ( HAVE_GDBM_H è&& defšed( HAVE_MEMCACHE_H ) 328 ià(! p -> cÚf . db && !p->cÚf. mc è HANDLER_GO_ON ; 329 ià( p -> cÚf . db &&…->cÚf. mc ) { 332  HANDLER_GO_ON ; 334 #–ià `defšed ( HAVE_GDBM_H ) 335 ià(! p -> cÚf . db è HANDLER_GO_ON ; 337 ià(! p -> cÚf . mc è HANDLER_GO_ON ; 340 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "X-Forwarded-For"))) { 343 »mÙe_ = ds -> v®ue -> ±r ; 347 »mÙe_ = `š‘_ÁÝ_ÿche_g‘_ ( ¤v , &( cÚ -> d¡_addr )); 350 ià( p -> cÚf . debug ) { 351 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "(debugè»mÙe-:", »mÙe_ ); 355 ià(( n = `püe_exec ( p -> cÚf . Œigg”_»gex , NULL , cÚ -> uri . ·th -> ±r , cÚ->uri.·th-> u£d - 1, 0, 0, ovec , 3 * N )) < 0) { 356 ià( n !ð PCRE_ERROR_NOMATCH ) { 357 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 358 "executiÚƒ¼Ü whžm©chšg:", n ); 360  HANDLER_ERROR ; 363 #ià `defšed ( HAVE_GDBM_H ) 364 ià( p -> cÚf . db ) { 366 d©um key , v® ; 368 key . d±r = (*) »mÙe_ ; 369 key . dsize = `¡¾’ ( »mÙe_ ); 371 v® . d±r = (*)&( ¤v -> cur_ts ); 372 v® . dsize = ( ¤v -> cur_ts ); 374 ià(0 !ð `gdbm_¡Üe ( p -> cÚf . db , key , v® , GDBM_REPLACE )) { 375 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 380 #ià `defšed ( HAVE_MEMCACHE_H ) 381 ià( p -> cÚf . mc ) { 382 size_t i ; 383 `bufãr_cÝy_¡ršg_bufãr ( p -> tmp_buf ,…-> cÚf . mc_Çme¥aû ); 384 `bufãr_­³nd_¡ršg ( p -> tmp_buf , »mÙe_ ); 386  i = 0; i < p -> tmp_buf -> u£d - 1; i++) { 387 ià( p -> tmp_buf -> ±r [ i ] == ' ')…->tmp_buf->ptr[i] = '-'; 390 ià( p -> cÚf . debug ) { 391 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "(debugèŒigg”ed IP:", p -> tmp_buf ); 394 ià(0 !ð `mc_£t ( p -> cÚf . mc , 395 `CONST_BUF_LEN ( p -> tmp_buf ), 396 (*)&( ¤v -> cur_ts ), (srv->cur_ts), 397 p -> cÚf . Œigg”_timeout , 0)) { 398 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 406 ià(( n = `püe_exec ( p -> cÚf . dowÆßd_»gex , NULL , cÚ -> uri . ·th -> ±r , cÚ->uri.·th-> u£d - 1, 0, 0, ovec , 3 * N )) < 0) { 407 ià( n !ð PCRE_ERROR_NOMATCH ) { 408 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 409 "executiÚƒ¼Ü whžm©chšg: ", n ); 410  HANDLER_ERROR ; 414 #ià `defšed ( HAVE_GDBM_H ) 415 ià( p -> cÚf . db ) { 416 d©um key , v® ; 417 time_t Ï¡_h™ ; 419 key . d±r = (*) »mÙe_ ; 420 key . dsize = `¡¾’ ( »mÙe_ ); 422 v® = `gdbm_ãtch ( p -> cÚf . db , key ); 424 ià( v® . d±r =ð NULL ) { 427 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("LoÿtiÚ"), `CONST_BUF_LEN ( p -> cÚf . d’y_u¾ )); 429 cÚ -> h‰p_¡©us = 307; 431  HANDLER_FINISHED ; 434 Ï¡_h™ = *( time_t *)( v® . d±r ); 436 `ä“ ( v® . d±r ); 438 ià( ¤v -> cur_ts - Ï¡_h™ > p -> cÚf . Œigg”_timeout ) { 441 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("LoÿtiÚ"), `CONST_BUF_LEN ( p -> cÚf . d’y_u¾ )); 442 cÚ -> h‰p_¡©us = 307; 444 ià( p -> cÚf . db ) { 445 ià(0 !ð `gdbm_d–‘e ( p -> cÚf . db , key )) { 446 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 451  HANDLER_FINISHED ; 454 v® . d±r = (*)&( ¤v -> cur_ts ); 455 v® . dsize = ( ¤v -> cur_ts ); 457 ià(0 !ð `gdbm_¡Üe ( p -> cÚf . db , key , v® , GDBM_REPLACE )) { 458 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 464 #ià `defšed ( HAVE_MEMCACHE_H ) 465 ià( p -> cÚf . mc ) { 466 * r ; 467 size_t i ; 469 `bufãr_cÝy_¡ršg_bufãr ( p -> tmp_buf ,…-> cÚf . mc_Çme¥aû ); 470 `bufãr_­³nd_¡ršg ( p -> tmp_buf , »mÙe_ ); 472  i = 0; i < p -> tmp_buf -> u£d - 1; i++) { 473 ià( p -> tmp_buf -> ±r [ i ] == ' ')…->tmp_buf->ptr[i] = '-'; 476 ià( p -> cÚf . debug ) { 477 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "(debugècheckšg IP:", p -> tmp_buf ); 486 ià( NULL =ð( r = `mc_ag‘ ( p -> cÚf . mc , 487 `CONST_BUF_LEN ( p -> tmp_buf ) 490 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("LoÿtiÚ"), `CONST_BUF_LEN ( p -> cÚf . d’y_u¾ )); 492 cÚ -> h‰p_¡©us = 307; 494  HANDLER_FINISHED ; 497 `ä“ ( r ); 500 ià(0 !ð `mc_£t ( p -> cÚf . mc , 501 `CONST_BUF_LEN ( p -> tmp_buf ), 502 (*)&( ¤v -> cur_ts ), (srv->cur_ts), 503 p -> cÚf . Œigg”_timeout , 0)) { 504 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 512 `UNUSED ( ¤v ); 513 `UNUSED ( cÚ ); 514 `UNUSED ( p_d ); 517  HANDLER_GO_ON ; 518 } } 520 #ià defšed ( HAVE_GDBM_H ) 521 $TRIGGER_FUNC ( mod_Œigg”_b4_dl_hªdË_Œigg” ) { 522 ¶ugš_d©a * p = p_d ; 523 size_t i ; 526 ià( ¤v -> cur_ts % 60 !ð0è HANDLER_GO_ON ; 529  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 530 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 531 d©um key , v® , okey ; 533 ià(! s -> db ) ; 535 okey . d±r = NULL ; 541  key = `gdbm_fœ¡key ( s -> db ); key. d±r ; key = `gdbm_Ãxtkey (s->db, okey )) { 542 time_t Ï¡_h™ ; 543 ià( okey . d±r ) { 544 `ä“ ( okey . d±r ); 545 okey . d±r = NULL ; 548 v® = `gdbm_ãtch ( s -> db , key ); 550 Ï¡_h™ = *( time_t *)( v® . d±r ); 552 `ä“ ( v® . d±r ); 554 ià( ¤v -> cur_ts - Ï¡_h™ > s -> Œigg”_timeout ) { 555 `gdbm_d–‘e ( s -> db , key ); 558 okey = key ; 560 ià( okey . d±r è `ä“ (okey.dptr); 563 ià(( ¤v -> cur_ts % (60 * 60 * 24è!ð0)è `gdbm_»Ügªize ( s -> db ); 565  HANDLER_GO_ON ; 566 } } 571  $mod_Œigg”_b4_dl_¶ugš_š™ ( ¶ugš * p ) { 572 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 573 p -> Çme = `bufãr_š™_¡ršg ("trigger_b4_dl"); 575 p -> š™ = mod_Œigg”_b4_dl_š™ ; 576 p -> hªdË_uri_þ—n = mod_Œigg”_b4_dl_uri_hªdËr ; 577 p -> £t_deçuÉs = mod_Œigg”_b4_dl_£t_deçuÉs ; 578 #ià `defšed ( HAVE_GDBM_H ) 579 p -> hªdË_Œigg” = mod_Œigg”_b4_dl_hªdË_Œigg” ; 581 p -> þ—nup = mod_Œigg”_b4_dl_ä“ ; 583 p -> d©a = NULL ; 586 } } @src/mod_userdir.c 1  ~ 3  ~<¡dlib.h > 4  ~<¡ršg.h > 6  ~"ba£.h " 7  ~"log.h " 8  ~"bufãr.h " 10  ~"»¥Ú£.h " 12  ~"¶ugš.h " 14 #ifdeà HAVE_PWD_H 15  ~ 20 ¬¿y * mexþude_u£r ; 21 ¬¿y * mšþude_u£r ; 22 bufãr * m·th ; 23 bufãr * mba£·th ; 24  mˉ”homes ; 25 } t¶ugš_cÚfig ; 28 mPLUGIN_DATA ; 30 bufãr * mu£ºame ; 31 bufãr * m‹mp_·th ; 33 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 35 ¶ugš_cÚfig mcÚf ; 36 } t¶ugš_d©a ; 39 $INIT_FUNC ( mod_u£rdœ_š™ ) { 40 ¶ugš_d©a * p ; 42 p = `ÿÎoc (1, (*p)); 44 p -> u£ºame = `bufãr_š™ (); 45 p -> ‹mp_·th = `bufãr_š™ (); 47  p ; 48 } } 51 $FREE_FUNC ( mod_u£rdœ_ä“ ) { 52 ¶ugš_d©a * p = p_d ; 54 ià(! p è HANDLER_GO_ON ; 56 ià( p -> cÚfig_¡Üage ) { 57 size_t i ; 59  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 60 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 62 `¬¿y_ä“ ( s -> šþude_u£r ); 63 `¬¿y_ä“ ( s -> exþude_u£r ); 64 `bufãr_ä“ ( s -> ·th ); 65 `bufãr_ä“ ( s -> ba£·th ); 67 `ä“ ( s ); 69 `ä“ ( p -> cÚfig_¡Üage ); 72 `bufãr_ä“ ( p -> u£ºame ); 73 `bufãr_ä“ ( p -> ‹mp_·th ); 75 `ä“ ( p ); 77  HANDLER_GO_ON ; 78 } } 82 $SETDEFAULTS_FUNC ( mod_u£rdœ_£t_deçuÉs ) { 83 ¶ugš_d©a * p = p_d ; 84 size_t i ; 86 cÚfig_v®ues_t cv [] = { 87 { "u£rdœ.·th", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 88 { "u£rdœ.exþude-u£r", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 89 { "u£rdœ.šþude-u£r", NULL , T_CONFIG_ARRAY , T_CONFIG_SCOPE_CONNECTION }, 90 { "u£rdœ.ba£·th", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 91 { "u£rdœ.ˉ”homes", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 92 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 95 ià(! p è HANDLER_ERROR ; 97 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 99  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 100 ¶ugš_cÚfig * s ; 102 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 103 s -> exþude_u£r = `¬¿y_š™ (); 104 s -> šþude_u£r = `¬¿y_š™ (); 105 s -> ·th = `bufãr_š™ (); 106 s -> ba£·th = `bufãr_š™ (); 107 s -> ˉ”homes = 0; 109 cv [0]. de¡š©iÚ = s -> ·th ; 110 cv [1]. de¡š©iÚ = s -> exþude_u£r ; 111 cv [2]. de¡š©iÚ = s -> šþude_u£r ; 112 cv [3]. de¡š©iÚ = s -> ba£·th ; 113 cv [4]. de¡š©iÚ = &( s -> ˉ”homes ); 115 p -> cÚfig_¡Üage [ i ] = s ; 117 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 118  HANDLER_ERROR ; 122  HANDLER_GO_ON ; 123 } } 125  #PATCH ( x ) \ 126 p -> cÚf . x = s ->x; ) 127  $mod_u£rdœ_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 128 size_t i , j ; 129 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 131 `PATCH ( ·th ); 132 `PATCH ( exþude_u£r ); 133 `PATCH ( šþude_u£r ); 134 `PATCH ( ba£·th ); 135 `PATCH ( ˉ”homes ); 138  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 139 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 140 s = p -> cÚfig_¡Üage [ i ]; 143 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 146  j = 0; j < dc -> v®ue -> u£d ; j++) { 147 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 149 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("userdir.path"))) { 150 `PATCH ( ·th ); 151 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("userdir.exclude-user"))) { 152 `PATCH ( exþude_u£r ); 153 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("userdir.include-user"))) { 154 `PATCH ( šþude_u£r ); 155 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("userdir.basepath"))) { 156 `PATCH ( ba£·th ); 157 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("userdir.letterhomes"))) { 158 `PATCH ( ˉ”homes ); 164 } } 165 #undeà PATCH 167 $URIHANDLER_FUNC ( mod_u£rdœ_doüoÙ_hªdËr ) { 168 ¶ugš_d©a * p = p_d ; 169  uri_Ën ; 170 size_t k ; 171 * »l_u¾ ; 172 #ifdeà HAVE_PWD_H 173  ·sswd * pwd = NULL ; 176 ià( cÚ -> uri . ·th -> u£d =ð0è HANDLER_GO_ON ; 178 `mod_u£rdœ_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 183 ià( p -> cÚf . ·th -> u£d =ð0è HANDLER_GO_ON ; 185 uri_Ën = cÚ -> uri . ·th -> u£d - 1; 189 ià( cÚ -> uri . ·th -> ±r [0] != '/' || 190 cÚ -> uri . ·th -> ±r [1] !ð'~'è HANDLER_GO_ON ; 192 ià( NULL =ð( »l_u¾ = `¡rchr ( cÚ -> uri . ·th -> ±r + 2, '/'))) { 194 `h‰p_»¥Ú£_»dœeù_to_dœeùÜy ( ¤v , cÚ ); 196  HANDLER_FINISHED ; 200 ià(0 =ð »l_u¾ - ( cÚ -> uri . ·th -> ±r + 2)) { 201  HANDLER_GO_ON ; 204 `bufãr_cÝy_¡ršg_Ën ( p -> u£ºame , cÚ -> uri . ·th -> ±r + 2, »l_u¾ - (con->uri.path->ptr + 2)); 206 ià( `bufãr_is_em±y ( p -> cÚf . ba£·th ) 207 #ifdeà HAVE_PWD_H 208 && NULL =ð( pwd = `g‘pwÇm ( p -> u£ºame -> ±r )) 212  HANDLER_GO_ON ; 216  k = 0; k < p -> cÚf . exþude_u£r -> u£d ; k++) { 217 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . exþude_u£r -> d©a [ k ]; 219 ià( `bufãr_is_equ® ( ds -> v®ue , p -> u£ºame )) { 221  HANDLER_GO_ON ; 225 ià( p -> cÚf . šþude_u£r -> u£d ) { 226  found_u£r = 0; 227  k = 0; k < p -> cÚf . šþude_u£r -> u£d ; k++) { 228 d©a_¡ršg * ds = (d©a_¡ršg *) p -> cÚf . šþude_u£r -> d©a [ k ]; 230 ià( `bufãr_is_equ® ( ds -> v®ue , p -> u£ºame )) { 232 found_u£r = 1; 237 ià(! found_u£r è HANDLER_GO_ON ; 242 ià( `bufãr_is_em±y ( p -> cÚf . ba£·th )) { 243 #ifdeà HAVE_PWD_H 244 `bufãr_cÝy_¡ršg ( p -> ‹mp_·th , pwd -> pw_dœ ); 247 * ý ; 252  ý = p -> u£ºame -> ±r ; *cp; cp++) { 253  c = * ý ; 255 ià(!( c == '-' || 256 c == '_' || 257 c == '.' || 258 ( c >= 'a' && c <= 'z') || 259 ( c >= 'A' && c <= 'Z') || 260 ( c >= '0' && c <= '9'))) { 262  HANDLER_GO_ON ; 266 `bufãr_cÝy_¡ršg_bufãr ( p -> ‹mp_·th ,…-> cÚf . ba£·th ); 267 `BUFFER_APPEND_SLASH ( p -> ‹mp_·th ); 268 ià( p -> cÚf . ˉ”homes ) { 269 `bufãr_­³nd_¡ršg_Ën ( p -> ‹mp_·th ,…-> u£ºame -> ±r , 1); 270 `BUFFER_APPEND_SLASH ( p -> ‹mp_·th ); 272 `bufãr_­³nd_¡ršg_bufãr ( p -> ‹mp_·th ,…-> u£ºame ); 274 `BUFFER_APPEND_SLASH ( p -> ‹mp_·th ); 275 `bufãr_­³nd_¡ršg_bufãr ( p -> ‹mp_·th ,…-> cÚf . ·th ); 277 ià( `bufãr_is_em±y ( p -> cÚf . ba£·th )) { 278  ¡© ¡ ; 279  »t ; 281 »t = `¡© ( p -> ‹mp_·th -> ±r , & ¡ ); 282 ià( »t < 0 || `S_ISDIR ( ¡ . ¡_mode ) != 1) { 283  HANDLER_GO_ON ; 287 `BUFFER_APPEND_SLASH ( p -> ‹mp_·th ); 288 `bufãr_­³nd_¡ršg ( p -> ‹mp_·th , »l_u¾ + 1); 289 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ·th , p -> ‹mp_·th ); 291 `bufãr_»£t ( p -> ‹mp_·th ); 293  HANDLER_GO_ON ; 294 } } 298  $mod_u£rdœ_¶ugš_š™ ( ¶ugš * p ) { 299 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 300 p -> Çme = `bufãr_š™_¡ršg ("userdir"); 302 p -> š™ = mod_u£rdœ_š™ ; 303 p -> hªdË_physiÿl = mod_u£rdœ_doüoÙ_hªdËr ; 304 p -> £t_deçuÉs = mod_u£rdœ_£t_deçuÉs ; 305 p -> þ—nup = mod_u£rdœ_ä“ ; 307 p -> d©a = NULL ; 310 } } @src/mod_usertrack.c 1  ~<ùy³.h > 2  ~<¡dlib.h > 3  ~<¡ršg.h > 5  ~"ba£.h " 6  ~"log.h " 7  ~"bufãr.h " 9  ~"¶ugš.h " 11 #ifdeà USE_OPENSSL 12  ~<Ý’s¦/md5.h > 14  ~"md5.h " 20 bufãr * mcook›_Çme ; 21 bufãr * mcook›_domaš ; 22  mcook›_max_age ; 23 } t¶ugš_cÚfig ; 26 mPLUGIN_DATA ; 28 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 30 ¶ugš_cÚfig mcÚf ; 31 } t¶ugš_d©a ; 34 $INIT_FUNC ( mod_u£¹¿ck_š™ ) { 35 ¶ugš_d©a * p ; 37 p = `ÿÎoc (1, (*p)); 39  p ; 40 } } 43 $FREE_FUNC ( mod_u£¹¿ck_ä“ ) { 44 ¶ugš_d©a * p = p_d ; 46 `UNUSED ( ¤v ); 48 ià(! p è HANDLER_GO_ON ; 50 ià( p -> cÚfig_¡Üage ) { 51 size_t i ; 52  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 53 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 55 `bufãr_ä“ ( s -> cook›_Çme ); 56 `bufãr_ä“ ( s -> cook›_domaš ); 58 `ä“ ( s ); 60 `ä“ ( p -> cÚfig_¡Üage ); 63 `ä“ ( p ); 65  HANDLER_GO_ON ; 66 } } 70 $SETDEFAULTS_FUNC ( mod_u£¹¿ck_£t_deçuÉs ) { 71 ¶ugš_d©a * p = p_d ; 72 size_t i = 0; 74 cÚfig_v®ues_t cv [] = { 75 { "u£¹¿ck.cook›-Çme", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 76 { "u£¹¿ck.cook›-max-age", NULL , T_CONFIG_SHORT , T_CONFIG_SCOPE_CONNECTION }, 77 { "u£¹¿ck.cook›-domaš", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 79 { "u£¹¿ck.cook›Çme", NULL , T_CONFIG_DEPRECATED , T_CONFIG_SCOPE_CONNECTION }, 80 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 83 ià(! p è HANDLER_ERROR ; 85 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 87  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 88 ¶ugš_cÚfig * s ; 90 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 91 s -> cook›_Çme = `bufãr_š™ (); 92 s -> cook›_domaš = `bufãr_š™ (); 93 s -> cook›_max_age = 0; 95 cv [0]. de¡š©iÚ = s -> cook›_Çme ; 96 cv [1]. de¡š©iÚ = &( s -> cook›_max_age ); 97 cv [2]. de¡š©iÚ = s -> cook›_domaš ; 99 p -> cÚfig_¡Üage [ i ] = s ; 101 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 102  HANDLER_ERROR ; 105 ià( `bufãr_is_em±y ( s -> cook›_Çme )) { 106 `bufãr_cÝy_¡ršg ( s -> cook›_Çme , "TRACKID"); 108 size_t j ; 109  j = 0; j < s -> cook›_Çme -> u£d - 1; j++) { 110  c = s -> cook›_Çme -> ±r [ j ] | 32; 111 ià( c < 'a' || c > 'z') { 112 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 114 s -> cook›_Çme ); 116  HANDLER_ERROR ; 121 ià(! `bufãr_is_em±y ( s -> cook›_domaš )) { 122 size_t j ; 123  j = 0; j < s -> cook›_domaš -> u£d - 1; j++) { 124  c = s -> cook›_domaš -> ±r [ j ]; 125 ià( c <= 32 || c >= 127 || c == '"' || c == '\\') { 126 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 128 s -> cook›_domaš ); 130  HANDLER_ERROR ; 136  HANDLER_GO_ON ; 137 } } 139  #PATCH ( x ) \ 140 p -> cÚf . x = s ->x; ) 141  $mod_u£¹¿ck_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 142 size_t i , j ; 143 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 145 `PATCH ( cook›_Çme ); 146 `PATCH ( cook›_domaš ); 147 `PATCH ( cook›_max_age ); 150  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 151 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 152 s = p -> cÚfig_¡Üage [ i ]; 155 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 158  j = 0; j < dc -> v®ue -> u£d ; j++) { 159 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 161 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("usertrack.cookie-name"))) { 162 `PATCH ( cook›_Çme ); 163 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("usertrack.cookie-max-age"))) { 164 `PATCH ( cook›_max_age ); 165 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("usertrack.cookie-domain"))) { 166 `PATCH ( cook›_domaš ); 172 } } 173 #undeà PATCH 175 $URIHANDLER_FUNC ( mod_u£¹¿ck_uri_hªdËr ) { 176 ¶ugš_d©a * p = p_d ; 177 d©a_¡ršg * ds ; 178  h [16]; 179 MD5_CTX Md5Ctx ; 180  hh [32]; 182 ià( cÚ -> uri . ·th -> u£d =ð0è HANDLER_GO_ON ; 184 `mod_u£¹¿ck_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 186 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Cookie"))) { 187 * g ; 196 ià( NULL !ð( g = `¡r¡r ( ds -> v®ue -> ±r , p -> cÚf . cook›_Çme ->ptr))) { 197 * nc ; 200  nc = g + p -> cÚf . cook›_Çme -> u£d -1; *nc == ' ' || *nc == '\t';‚c++); 202 ià(* nc == '=') { 205 ià( `¡¾’ ( nc ) > 32) { 207  HANDLER_GO_ON ; 214 ià( NULL =ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( cÚ -> »¥Ú£ . h—d”s , TYPE_STRING ))) { 215 ds = `d©a_»¥Ú£_š™ (); 217 `bufãr_cÝy_¡ršg ( ds -> key , "Set-Cookie"); 218 `bufãr_cÝy_¡ršg_bufãr ( ds -> v®ue , p -> cÚf . cook›_Çme ); 219 `bufãr_­³nd_¡ršg ( ds -> v®ue , "="); 225 `MD5_In™ (& Md5Ctx ); 226 `MD5_Upd©e (& Md5Ctx , (*) cÚ -> uri . ·th -> ±r , cÚ->uri.·th-> u£d - 1); 227 `MD5_Upd©e (& Md5Ctx , (*)"+", 1); 230 `LI_Éo¡r ( hh , ¤v -> cur_ts ); 231 `MD5_Upd©e (& Md5Ctx , (*) hh , `¡¾’ (hh)); 232 `LI_Éo¡r ( hh , `¿nd ()); 233 `MD5_Upd©e (& Md5Ctx , (*) hh , `¡¾’ (hh)); 235 `MD5_Fš® ( h , & Md5Ctx ); 237 `bufãr_­³nd_¡ršg_’coded ( ds -> v®ue , (*) h , 16, ENCODING_HEX ); 238 `bufãr_­³nd_¡ršg ( ds -> v®ue , "; Path=/"); 239 `bufãr_­³nd_¡ršg ( ds -> v®ue , "; Version=1"); 241 ià(! `bufãr_is_em±y ( p -> cÚf . cook›_domaš )) { 242 `bufãr_­³nd_¡ršg ( ds -> v®ue , "; Domain="); 243 `bufãr_­³nd_¡ršg_’coded ( ds -> v®ue , `CONST_BUF_LEN ( p -> cÚf . cook›_domaš ), ENCODING_REL_URI ); 246 ià( p -> cÚf . cook›_max_age ) { 247 `bufãr_­³nd_¡ršg ( ds -> v®ue , "; max-age="); 248 `bufãr_­³nd_lÚg ( ds -> v®ue , p -> cÚf . cook›_max_age ); 251 `¬¿y_š£¹_unique ( cÚ -> »¥Ú£ . h—d”s , ( d©a_un£t *) ds ); 253  HANDLER_GO_ON ; 254 } } 258  $mod_u£¹¿ck_¶ugš_š™ ( ¶ugš * p ) { 259 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 260 p -> Çme = `bufãr_š™_¡ršg ("usertrack"); 262 p -> š™ = mod_u£¹¿ck_š™ ; 263 p -> hªdË_uri_þ—n = mod_u£¹¿ck_uri_hªdËr ; 264 p -> £t_deçuÉs = mod_u£¹¿ck_£t_deçuÉs ; 265 p -> þ—nup = mod_u£¹¿ck_ä“ ; 267 p -> d©a = NULL ; 270 } } @src/mod_webdav.c 1  ~ 2  ~ 3  ~<ùy³.h > 4  ~<¡dlib.h > 5  ~<¡ršg.h > 6  ~<”ºo.h > 7  ~ 8  ~<¡dio.h > 9  ~ 11  ~ 12  ~ 14 #ifdeà HAVE_CONFIG_H 15  ~"cÚfig.h " 18 #ià defšed ( HAVE_LIBXML_H è&& defšed( HAVE_SQLITE3_H ) 19  #USE_PROPPATCH ) 20  ~ 21  ~ 23  ~ 26 #ià defšed ( HAVE_LIBXML_H è&& defšed( HAVE_SQLITE3_H è&& defšed( HAVE_UUID_UUID_H ) 27  #USE_LOCKS ) 28  ~ 31  ~"ba£.h " 32  ~"log.h " 33  ~"bufãr.h " 34  ~"»¥Ú£.h " 36  ~"¶ugš.h " 38  ~"¡»am.h " 39  ~"¡©_ÿche.h " 41  ~"sys-mm­.h " 51  #WEBDAV_FILE_MODE S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH ) 52  #WEBDAV_DIR_MODE S_IRWXU | S_IRWXG | S_IRWXO ) 57  m’abËd ; 58  mis_»adÚly ; 59  mlog_xml ; 61 bufãr * msql™e_db_Çme ; 62 #ifdeà USE_PROPPATCH 63 sql™e3 * msql ; 64 sql™e3_¡mt * m¡mt_upd©e_´Ý ; 65 sql™e3_¡mt * m¡mt_d–‘e_´Ý ; 66 sql™e3_¡mt * m¡mt_£Ëù_´Ý ; 67 sql™e3_¡mt * m¡mt_£Ëù_´ÝÇmes ; 69 sql™e3_¡mt * m¡mt_d–‘e_uri ; 70 sql™e3_¡mt * m¡mt_move_uri ; 71 sql™e3_¡mt * m¡mt_cÝy_uri ; 73 sql™e3_¡mt * m¡mt_»move_lock ; 74 sql™e3_¡mt * m¡mt_ü—‹_lock ; 75 sql™e3_¡mt * m¡mt_»ad_lock ; 76 sql™e3_¡mt * m¡mt_»ad_lock_by_uri ; 77 sql™e3_¡mt * m¡mt_»äesh_lock ; 79 } t¶ugš_cÚfig ; 82 mPLUGIN_DATA ; 84 bufãr * mtmp_buf ; 85 »que¡_uri muri ; 86 physiÿl mphysiÿl ; 88 ¶ugš_cÚfig ** mcÚfig_¡Üage ; 90 ¶ugš_cÚfig mcÚf ; 91 } t¶ugš_d©a ; 94 $INIT_FUNC ( mod_webdav_š™ ) { 95 ¶ugš_d©a * p ; 97 p = `ÿÎoc (1, (*p)); 99 p -> tmp_buf = `bufãr_š™ (); 101 p -> uri . scheme = `bufãr_š™ (); 102 p -> uri . ·th_¿w = `bufãr_š™ (); 103 p -> uri . ·th = `bufãr_š™ (); 104 p -> uri . authÜ™y = `bufãr_š™ (); 106 p -> physiÿl . ·th = `bufãr_š™ (); 107 p -> physiÿl . »l_·th = `bufãr_š™ (); 108 p -> physiÿl . doc_roÙ = `bufãr_š™ (); 109 p -> physiÿl . ba£dœ = `bufãr_š™ (); 111  p ; 112 } } 115 $FREE_FUNC ( mod_webdav_ä“ ) { 116 ¶ugš_d©a * p = p_d ; 118 `UNUSED ( ¤v ); 120 ià(! p è HANDLER_GO_ON ; 122 ià( p -> cÚfig_¡Üage ) { 123 size_t i ; 124  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 125 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [ i ]; 127 ià(! s ) ; 129 `bufãr_ä“ ( s -> sql™e_db_Çme ); 130 #ifdeà USE_PROPPATCH 131 ià( s -> sql ) { 132 `sql™e3_fš®ize ( s -> ¡mt_d–‘e_´Ý ); 133 `sql™e3_fš®ize ( s -> ¡mt_d–‘e_uri ); 134 `sql™e3_fš®ize ( s -> ¡mt_cÝy_uri ); 135 `sql™e3_fš®ize ( s -> ¡mt_move_uri ); 136 `sql™e3_fš®ize ( s -> ¡mt_upd©e_´Ý ); 137 `sql™e3_fš®ize ( s -> ¡mt_£Ëù_´Ý ); 138 `sql™e3_fš®ize ( s -> ¡mt_£Ëù_´ÝÇmes ); 140 `sql™e3_fš®ize ( s -> ¡mt_»ad_lock ); 141 `sql™e3_fš®ize ( s -> ¡mt_»ad_lock_by_uri ); 142 `sql™e3_fš®ize ( s -> ¡mt_ü—‹_lock ); 143 `sql™e3_fš®ize ( s -> ¡mt_»move_lock ); 144 `sql™e3_fš®ize ( s -> ¡mt_»äesh_lock ); 145 `sql™e3_þo£ ( s -> sql ); 148 `ä“ ( s ); 150 `ä“ ( p -> cÚfig_¡Üage ); 153 `bufãr_ä“ ( p -> uri . scheme ); 154 `bufãr_ä“ ( p -> uri . ·th_¿w ); 155 `bufãr_ä“ ( p -> uri . ·th ); 156 `bufãr_ä“ ( p -> uri . authÜ™y ); 158 `bufãr_ä“ ( p -> physiÿl . ·th ); 159 `bufãr_ä“ ( p -> physiÿl . »l_·th ); 160 `bufãr_ä“ ( p -> physiÿl . doc_roÙ ); 161 `bufãr_ä“ ( p -> physiÿl . ba£dœ ); 163 `bufãr_ä“ ( p -> tmp_buf ); 165 `ä“ ( p ); 167  HANDLER_GO_ON ; 168 } } 172 $SETDEFAULTS_FUNC ( mod_webdav_£t_deçuÉs ) { 173 ¶ugš_d©a * p = p_d ; 174 size_t i = 0; 176 cÚfig_v®ues_t cv [] = { 177 { "webdav.aùiv©e", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 178 { "webdav.is-»adÚly", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 179 { "webdav.sql™e-db-Çme", NULL , T_CONFIG_STRING , T_CONFIG_SCOPE_CONNECTION }, 180 { "webdav.log-xml", NULL , T_CONFIG_BOOLEAN , T_CONFIG_SCOPE_CONNECTION }, 181 { NULL , NULL, T_CONFIG_UNSET , T_CONFIG_SCOPE_UNSET } 184 ià(! p è HANDLER_ERROR ; 186 p -> cÚfig_¡Üage = `ÿÎoc (1, ¤v -> cÚfig_cÚ‹xt -> u£d * ( ¥ecific_cÚfig *)); 188  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 189 ¶ugš_cÚfig * s ; 191 s = `ÿÎoc (1, ( ¶ugš_cÚfig )); 192 s -> sql™e_db_Çme = `bufãr_š™ (); 194 cv [0]. de¡š©iÚ = &( s -> ’abËd ); 195 cv [1]. de¡š©iÚ = &( s -> is_»adÚly ); 196 cv [2]. de¡š©iÚ = s -> sql™e_db_Çme ; 197 cv [3]. de¡š©iÚ = &( s -> log_xml ); 199 p -> cÚfig_¡Üage [ i ] = s ; 201 ià(0 !ð `cÚfig_š£¹_v®ues_glob® ( ¤v , (( d©a_cÚfig *)¤v-> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue , cv )) { 202  HANDLER_ERROR ; 205 ià(! `bufãr_is_em±y ( s -> sql™e_db_Çme )) { 206 #ifdeà USE_PROPPATCH 207 cÚ¡ * Ãxt_¡mt ; 208 * ”r ; 210 ià( SQLITE_OK !ð `sql™e3_Ý’ ( s -> sql™e_db_Çme -> ±r , &(s-> sql ))) { 211 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", "sqlite3_open failed for", 212 s -> sql™e_db_Çme , 213 `sql™e3_”rmsg ( s -> sql )); 214  HANDLER_ERROR ; 217 ià( SQLITE_OK !ð `sql™e3_exec ( s -> sql , 224 NULL , NULL, & ”r )) { 226 ià(0 !ð `¡rcmp ( ”r , "table…roperties‡lreadyƒxists")) { 227 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ÿn'ˆÝ’¿n§ùiÚ:", ”r ); 228 `sql™e3_ä“ ( ”r ); 230  HANDLER_ERROR ; 232 `sql™e3_ä“ ( ”r ); 235 ià( SQLITE_OK !ð `sql™e3_´•¬e ( s -> sql , 236 `CONST_STR_LEN ("SELECT value FROM…roperties WHERE„esource = ? AND…rop = ? AND‚s = ?"), 237 &( s -> ¡mt_£Ëù_´Ý ), & Ãxt_¡mt )) { 240 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql™e3_´•¬çžed:", `sql™e3_”rmsg ( s -> sql )); 241  HANDLER_ERROR ; 244 ià( SQLITE_OK !ð `sql™e3_´•¬e ( s -> sql , 245 `CONST_STR_LEN ("SELECT‚s,…rop FROM…roperties WHERE„esource = ?"), 246 &( s -> ¡mt_£Ëù_´ÝÇmes ), & Ãxt_¡mt )) { 249 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql™e3_´•¬çžed:", `sql™e3_”rmsg ( s -> sql )); 250  HANDLER_ERROR ; 254 ià( SQLITE_OK !ð `sql™e3_´•¬e ( s -> sql , 255 `CONST_STR_LEN ("REPLACE INTO…roperties (resource,…rop,‚s, value) VALUES (?, ?, ?, ?)"), 256 &( s -> ¡mt_upd©e_´Ý ), & Ãxt_¡mt )) { 259 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql™e3_´•¬çžed:", `sql™e3_”rmsg ( s -> sql )); 260  HANDLER_ERROR ; 263 ià( SQLITE_OK !ð `sql™e3_´•¬e ( s -> sql , 264 `CONST_STR_LEN ("DELETE FROM…roperties WHERE„esource = ? AND…rop = ? AND‚s = ?"), 265 &( s -> ¡mt_d–‘e_´Ý ), & Ãxt_¡mt )) { 267 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql™e3_´•¬çžed", `sql™e3_”rmsg ( s -> sql )); 269  HANDLER_ERROR ; 272 ià( SQLITE_OK !ð `sql™e3_´•¬e ( s -> sql , 273 `CONST_STR_LEN ("DELETE FROM…roperties WHERE„esource = ?"), 274 &( s -> ¡mt_d–‘e_uri ), & Ãxt_¡mt )) { 276 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql™e3_´•¬çžed", `sql™e3_”rmsg ( s -> sql )); 278  HANDLER_ERROR ; 281 ià( SQLITE_OK !ð `sql™e3_´•¬e ( s -> sql , 282 `CONST_STR_LEN ("INSERT INTO…roperties SELECT ?,…rop,‚s, value FROM…roperties WHERE„esource = ?"), 283 &( s -> ¡mt_cÝy_uri ), & Ãxt_¡mt )) { 285 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql™e3_´•¬çžed", `sql™e3_”rmsg ( s -> sql )); 287  HANDLER_ERROR ; 290 ià( SQLITE_OK !ð `sql™e3_´•¬e ( s -> sql , 291 `CONST_STR_LEN ("UPDATE…roperties SET„esource = ? WHERE„esource = ?"), 292 &( s -> ¡mt_move_uri ), & Ãxt_¡mt )) { 294 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql™e3_´•¬çžed", `sql™e3_”rmsg ( s -> sql )); 296  HANDLER_ERROR ; 301 ià( SQLITE_OK !ð `sql™e3_exec ( s -> sql , 311 NULL , NULL, & ”r )) { 313 ià(0 !ð `¡rcmp ( ”r , "table†ocks‡lreadyƒxists")) { 314 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ÿn'ˆÝ’¿n§ùiÚ:", ”r ); 315 `sql™e3_ä“ ( ”r ); 317  HANDLER_ERROR ; 319 `sql™e3_ä“ ( ”r ); 322 ià( SQLITE_OK !ð `sql™e3_´•¬e ( s -> sql , 323 `CONST_STR_LEN ("INSERT INTO†ocks (locktoken,„esource,†ockscope,†ocktype, owner, depth,imeout) VALUES (?,?,?,?,?,?, CURRENT_TIME + 600)"), 324 &( s -> ¡mt_ü—‹_lock ), & Ãxt_¡mt )) { 326 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql™e3_´•¬çžed", `sql™e3_”rmsg ( s -> sql )); 328  HANDLER_ERROR ; 331 ià( SQLITE_OK !ð `sql™e3_´•¬e ( s -> sql , 332 `CONST_STR_LEN ("DELETE FROM†ocks WHERE†ocktoken = ?"), 333 &( s -> ¡mt_»move_lock ), & Ãxt_¡mt )) { 335 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql™e3_´•¬çžed", `sql™e3_”rmsg ( s -> sql )); 337  HANDLER_ERROR ; 340 ià( SQLITE_OK !ð `sql™e3_´•¬e ( s -> sql , 341 `CONST_STR_LEN ("SELECT†ocktoken,„esource,†ockscope,†ocktype, owner, depth,imeout FROM†ocks WHERE†ocktoken = ?"), 342 &( s -> ¡mt_»ad_lock ), & Ãxt_¡mt )) { 344 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql™e3_´•¬çžed", `sql™e3_”rmsg ( s -> sql )); 346  HANDLER_ERROR ; 349 ià( SQLITE_OK !ð `sql™e3_´•¬e ( s -> sql , 350 `CONST_STR_LEN ("SELECT†ocktoken,„esource,†ockscope,†ocktype, owner, depth,imeout FROM†ocks WHERE„esource = ?"), 351 &( s -> ¡mt_»ad_lock_by_uri ), & Ãxt_¡mt )) { 353 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql™e3_´•¬çžed", `sql™e3_”rmsg ( s -> sql )); 355  HANDLER_ERROR ; 358 ià( SQLITE_OK !ð `sql™e3_´•¬e ( s -> sql , 359 `CONST_STR_LEN ("UPDATE†ocks SETimeout = CURRENT_TIME + 600 WHERE†ocktoken = ?"), 360 &( s -> ¡mt_»äesh_lock ), & Ãxt_¡mt )) { 362 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql™e3_´•¬çžed", `sql™e3_”rmsg ( s -> sql )); 364  HANDLER_ERROR ; 369 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "Sorry,‚o sqlite3‡nd†ibxml2 support include, compile with --with-webdav-props"); 370  HANDLER_ERROR ; 375  HANDLER_GO_ON ; 376 } } 378  #PATCH_OPTION ( x ) \ 379 p -> cÚf . x = s ->x; ) 380  $mod_webdav_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p ) { 381 size_t i , j ; 382 ¶ugš_cÚfig * s = p -> cÚfig_¡Üage [0]; 384 `PATCH_OPTION ( ’abËd ); 385 `PATCH_OPTION ( is_»adÚly ); 386 `PATCH_OPTION ( log_xml ); 388 #ifdeà USE_PROPPATCH 389 `PATCH_OPTION ( sql ); 390 `PATCH_OPTION ( ¡mt_upd©e_´Ý ); 391 `PATCH_OPTION ( ¡mt_d–‘e_´Ý ); 392 `PATCH_OPTION ( ¡mt_£Ëù_´Ý ); 393 `PATCH_OPTION ( ¡mt_£Ëù_´ÝÇmes ); 395 `PATCH_OPTION ( ¡mt_d–‘e_uri ); 396 `PATCH_OPTION ( ¡mt_move_uri ); 397 `PATCH_OPTION ( ¡mt_cÝy_uri ); 399 `PATCH_OPTION ( ¡mt_»move_lock ); 400 `PATCH_OPTION ( ¡mt_»äesh_lock ); 401 `PATCH_OPTION ( ¡mt_ü—‹_lock ); 402 `PATCH_OPTION ( ¡mt_»ad_lock ); 403 `PATCH_OPTION ( ¡mt_»ad_lock_by_uri ); 406  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 407 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 408 s = p -> cÚfig_¡Üage [ i ]; 411 ià(! `cÚfig_check_cÚd ( ¤v , cÚ , dc )) ; 414  j = 0; j < dc -> v®ue -> u£d ; j++) { 415 d©a_un£t * du = dc -> v®ue -> d©a [ j ]; 417 ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("webdav.activate"))) { 418 `PATCH_OPTION ( ’abËd ); 419 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("webdav.is-readonly"))) { 420 `PATCH_OPTION ( is_»adÚly ); 421 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("webdav.log-xml"))) { 422 `PATCH_OPTION ( log_xml ); 423 } ià( `bufãr_is_equ®_¡ršg ( du -> key , `CONST_STR_LEN ("webdav.sqlite-db-name"))) { 424 #ifdeà USE_PROPPATCH 425 `PATCH_OPTION ( sql ); 426 `PATCH_OPTION ( ¡mt_upd©e_´Ý ); 427 `PATCH_OPTION ( ¡mt_d–‘e_´Ý ); 428 `PATCH_OPTION ( ¡mt_£Ëù_´Ý ); 429 `PATCH_OPTION ( ¡mt_£Ëù_´ÝÇmes ); 431 `PATCH_OPTION ( ¡mt_d–‘e_uri ); 432 `PATCH_OPTION ( ¡mt_move_uri ); 433 `PATCH_OPTION ( ¡mt_cÝy_uri ); 435 `PATCH_OPTION ( ¡mt_»move_lock ); 436 `PATCH_OPTION ( ¡mt_»äesh_lock ); 437 `PATCH_OPTION ( ¡mt_ü—‹_lock ); 438 `PATCH_OPTION ( ¡mt_»ad_lock ); 439 `PATCH_OPTION ( ¡mt_»ad_lock_by_uri ); 446 } } 448 $URIHANDLER_FUNC ( mod_webdav_uri_hªdËr ) { 449 ¶ugš_d©a * p = p_d ; 451 `UNUSED ( ¤v ); 453 ià( cÚ -> uri . ·th -> u£d =ð0è HANDLER_GO_ON ; 455 `mod_webdav_·tch_cÚÃùiÚ ( ¤v , cÚ , p ); 457 ià(! p -> cÚf . ’abËd è HANDLER_GO_ON ; 459  cÚ -> »que¡ . h‰p_m‘hod ) { 460  HTTP_METHOD_OPTIONS : 462 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("DAV"), CONST_STR_LEN("1,2")); 463 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("MS-Author-Via"), CONST_STR_LEN("DAV")); 465 ià( p -> cÚf . is_»adÚly ) { 466 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("Allow"), CONST_STR_LEN("PROPFIND")); 468 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("Allow"), CONST_STR_LEN("PROPFIND, DELETE, MKCOL, PUT, MOVE, COPY, PROPPATCH, LOCK, UNLOCK")); 476  HANDLER_GO_ON ; 477 } } 478  $webdav_g’_´Ý_g ( £rv” * ¤v , cÚÃùiÚ * cÚ , 479 * ´Ý_Çme , 480 * ´Ý_ns , 481 * v®ue , 482 bufãr * b ) { 484 `UNUSED ( ¤v ); 485 `UNUSED ( cÚ ); 487 ià( v®ue ) { 488 `bufãr_­³nd_¡ršg ( b ,"<"); 489 `bufãr_­³nd_¡ršg ( b , ´Ý_Çme ); 490 `bufãr_­³nd_¡ršg ( b , " xmlns=\""); 491 `bufãr_­³nd_¡ršg ( b , ´Ý_ns ); 492 `bufãr_­³nd_¡ršg ( b , "\">"); 494 `bufãr_­³nd_¡ršg ( b , v®ue ); 496 `bufãr_­³nd_¡ršg ( b ,""); 500 `bufãr_­³nd_¡ršg ( b ,"<"); 501 `bufãr_­³nd_¡ršg ( b , ´Ý_Çme ); 502 `bufãr_­³nd_¡ršg ( b , " xmlns=\""); 503 `bufãr_­³nd_¡ršg ( b , ´Ý_ns ); 504 `bufãr_­³nd_¡ršg ( b , "\"/>"); 508 } } 511  $webdav_g’_»¥Ú£_¡©us_g ( £rv” * ¤v , cÚÃùiÚ * cÚ , physiÿl * d¡ ,  ¡©us , bufãr * b ) { 512 `UNUSED ( ¤v ); 514 `bufãr_­³nd_¡ršg ( b ,"\n"); 516 `bufãr_­³nd_¡ršg ( b ,"\n"); 517 `bufãr_­³nd_¡ršg_bufãr ( b , d¡ -> »l_·th ); 518 `bufãr_­³nd_¡ršg ( b ,"\n"); 519 `bufãr_­³nd_¡ršg ( b ,"\n"); 521 ià( cÚ -> »que¡ . h‰p_v”siÚ =ð HTTP_VERSION_1_1 ) { 522 `BUFFER_COPY_STRING_CONST ( b , "HTTP/1.1 "); 524 `BUFFER_COPY_STRING_CONST ( b , "HTTP/1.0 "); 526 `bufãr_­³nd_lÚg ( b , ¡©us ); 527 `BUFFER_APPEND_STRING_CONST ( b , " "); 528 `bufãr_­³nd_¡ršg ( b , `g‘_h‰p_¡©us_Çme ( ¡©us )); 530 `bufãr_­³nd_¡ršg ( b ,"\n"); 531 `bufãr_­³nd_¡ršg ( b ,"\n"); 534 } } 536  $webdav_d–‘e_fže ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , physiÿl * d¡ , bufãr * b ) { 537  ¡©us = 0; 540 ià(-1 =ð `uÆšk ( d¡ -> ·th -> ±r )) { 541  ”ºo ) { 542  EACCES : 543  EPERM : 545 ¡©us = 403; 548 ¡©us = 501; 551 `webdav_g’_»¥Ú£_¡©us_g ( ¤v , cÚ , d¡ , ¡©us , b ); 553 #ifdeà USE_PROPPATCH 554 sql™e3_¡mt * ¡mt = p -> cÚf . ¡mt_d–‘e_uri ; 556 ià(! ¡mt ) { 557 ¡©us = 403; 558 `webdav_g’_»¥Ú£_¡©us_g ( ¤v , cÚ , d¡ , ¡©us , b ); 560 `sql™e3_»£t ( ¡mt ); 564 `sql™e3_bšd_‹xt ( ¡mt , 1, 565 d¡ -> »l_·th -> ±r , 566 d¡ -> »l_·th -> u£d - 1, 567 SQLITE_TRANSIENT ); 569 ià( SQLITE_DONE !ð `sql™e3_¡• ( ¡mt )) { 576  ( ¡©us != 0); 577 } } 579  $webdav_d–‘e_dœ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , physiÿl * d¡ , bufãr * b ) { 580 DIR * dœ ; 581  have_muÉi_¡©us = 0; 582 physiÿl d ; 584 d . ·th = `bufãr_š™ (); 585 d . »l_·th = `bufãr_š™ (); 587 ià( NULL !ð( dœ = `Ý’dœ ( d¡ -> ·th -> ±r ))) { 588  dœ’t * de ; 590  NULL !ð( de = `»addœ ( dœ ))) { 591  ¡© ¡ ; 592  ¡©us = 0; 594 ià(( de -> d_Çme [0] == '.' && de->d_name[1] == '\0') || 595 ( de -> d_Çme [0] == '.' && de->d_name[1] == '.' && de->d_name[2] == '\0')) { 600 `bufãr_cÝy_¡ršg_bufãr ( d . ·th , d¡ ->path); 601 `BUFFER_APPEND_SLASH ( d . ·th ); 602 `bufãr_­³nd_¡ršg ( d . ·th , de -> d_Çme ); 604 `bufãr_cÝy_¡ršg_bufãr ( d . »l_·th , d¡ ->rel_path); 605 `BUFFER_APPEND_SLASH ( d . »l_·th ); 606 `bufãr_­³nd_¡ršg ( d . »l_·th , de -> d_Çme ); 609 ià(-1 =ð `¡© ( d . ·th -> ±r , & ¡ )) { 611 } ià( `S_ISDIR ( ¡ . ¡_mode )) { 612 have_muÉi_¡©us = `webdav_d–‘e_dœ ( ¤v , cÚ , p , & d , b ); 615 ià(-1 =ð `rmdœ ( d . ·th -> ±r )) { 616  ”ºo ) { 617  EACCES : 618  EPERM : 620 ¡©us = 403; 623 ¡©us = 501; 626 have_muÉi_¡©us = 1; 628 `webdav_g’_»¥Ú£_¡©us_g ( ¤v , cÚ , & d , ¡©us , b ); 630 #ifdeà USE_PROPPATCH 631 sql™e3_¡mt * ¡mt = p -> cÚf . ¡mt_d–‘e_uri ; 633 ¡©us = 0; 635 ià( ¡mt ) { 636 `sql™e3_»£t ( ¡mt ); 640 `sql™e3_bšd_‹xt ( ¡mt , 1, 641 d . »l_·th -> ±r , 642 d . »l_·th -> u£d - 1, 643 SQLITE_TRANSIENT ); 645 ià( SQLITE_DONE !ð `sql™e3_¡• ( ¡mt )) { 652 have_muÉi_¡©us = `webdav_d–‘e_fže ( ¤v , cÚ , p , & d , b ); 655 `þo£dœ ( dœ ); 657 `bufãr_ä“ ( d . ·th ); 658 `bufãr_ä“ ( d . »l_·th ); 661  have_muÉi_¡©us ; 662 } } 664  $webdav_cÝy_fže ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , physiÿl * ¤c ,…hysiÿÈ* d¡ ,  ov”wr™e ) { 665 ¡»am s ; 666  ¡©us = 0, ofd ; 667 `UNUSED ( ¤v ); 668 `UNUSED ( cÚ ); 670 ià( `¡»am_Ý’ (& s , ¤c -> ·th )) { 674 ià(-1 =ð( ofd = `Ý’ ( d¡ -> ·th -> ±r , O_WRONLY | O_TRUNC | O_CREAT |( ov”wr™e ? 0 : O_EXCL ), WEBDAV_FILE_MODE ))) { 676  ”ºo ) { 677  EEXIST : 678 ¡©us = 412; 680  EISDIR : 681 ¡©us = 409; 683  ENOENT : 685 ¡©us = 409; 688 ¡©us = 403; 691 `¡»am_þo£ (& s ); 692  ¡©us ; 695 ià(-1 =ð `wr™e ( ofd , s . ¡¬t , s. size )) { 696  ”ºo ) { 697  ENOSPC : 698 ¡©us = 507; 701 ¡©us = 403; 706 `¡»am_þo£ (& s ); 707 `þo£ ( ofd ); 709 #ifdeà USE_PROPPATCH 710 ià(0 =ð ¡©us ) { 712 sql™e3_¡mt * ¡mt = p -> cÚf . ¡mt_cÝy_uri ; 714 ià( ¡mt ) { 715 `sql™e3_»£t ( ¡mt ); 718 `sql™e3_bšd_‹xt ( ¡mt , 1, 719 d¡ -> »l_·th -> ±r , 720 d¡ -> »l_·th -> u£d - 1, 721 SQLITE_TRANSIENT ); 723 `sql™e3_bšd_‹xt ( ¡mt , 2, 724 ¤c -> »l_·th -> ±r , 725 ¤c -> »l_·th -> u£d - 1, 726 SQLITE_TRANSIENT ); 728 ià( SQLITE_DONE !ð `sql™e3_¡• ( ¡mt )) { 734  ¡©us ; 735 } } 737  $webdav_cÝy_dœ ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , physiÿl * ¤c ,…hysiÿÈ* d¡ ,  ov”wr™e ) { 738 DIR * ¤cdœ ; 739  ¡©us = 0; 741 ià( NULL !ð( ¤cdœ = `Ý’dœ ( ¤c -> ·th -> ±r ))) { 742  dœ’t * de ; 743 physiÿl s , d ; 745 s . ·th = `bufãr_š™ (); 746 s . »l_·th = `bufãr_š™ (); 748 d . ·th = `bufãr_š™ (); 749 d . »l_·th = `bufãr_š™ (); 751  NULL !ð( de = `»addœ ( ¤cdœ ))) { 752  ¡© ¡ ; 754 ià(( de -> d_Çme [0] == '.' && de->d_name[1] == '\0') || 755 ( de -> d_Çme [0] == '.' && de->d_name[1] == '.' && de->d_name[2] == '\0')) { 759 `bufãr_cÝy_¡ršg_bufãr ( s . ·th , ¤c ->path); 760 `BUFFER_APPEND_SLASH ( s . ·th ); 761 `bufãr_­³nd_¡ršg ( s . ·th , de -> d_Çme ); 763 `bufãr_cÝy_¡ršg_bufãr ( d . ·th , d¡ ->path); 764 `BUFFER_APPEND_SLASH ( d . ·th ); 765 `bufãr_­³nd_¡ršg ( d . ·th , de -> d_Çme ); 767 `bufãr_cÝy_¡ršg_bufãr ( s . »l_·th , ¤c ->rel_path); 768 `BUFFER_APPEND_SLASH ( s . »l_·th ); 769 `bufãr_­³nd_¡ršg ( s . »l_·th , de -> d_Çme ); 771 `bufãr_cÝy_¡ršg_bufãr ( d . »l_·th , d¡ ->rel_path); 772 `BUFFER_APPEND_SLASH ( d . »l_·th ); 773 `bufãr_­³nd_¡ršg ( d . »l_·th , de -> d_Çme ); 775 ià(-1 =ð `¡© ( s . ·th -> ±r , & ¡ )) { 777 } ià( `S_ISDIR ( ¡ . ¡_mode )) { 779 ià(-1 =ð `mkdœ ( d . ·th -> ±r , WEBDAV_DIR_MODE ) && 780 ”ºo !ð EEXIST ) { 783 #ifdeà USE_PROPPATCH 784 sql™e3_¡mt * ¡mt = p -> cÚf . ¡mt_cÝy_uri ; 786 ià(0 !ð( ¡©us = `webdav_cÝy_dœ ( ¤v , cÚ , p , & s , & d , ov”wr™e ))) { 791 ià( ¡mt ) { 792 `sql™e3_»£t ( ¡mt ); 795 `sql™e3_bšd_‹xt ( ¡mt , 1, 796 d¡ -> »l_·th -> ±r , 797 d¡ -> »l_·th -> u£d - 1, 798 SQLITE_TRANSIENT ); 800 `sql™e3_bšd_‹xt ( ¡mt , 2, 801 ¤c -> »l_·th -> ±r , 802 ¤c -> »l_·th -> u£d - 1, 803 SQLITE_TRANSIENT ); 805 ià( SQLITE_DONE !ð `sql™e3_¡• ( ¡mt )) { 811 } ià( `S_ISREG ( ¡ . ¡_mode )) { 813 ià(0 !ð( ¡©us = `webdav_cÝy_fže ( ¤v , cÚ , p , & s , & d , ov”wr™e ))) { 819 `bufãr_ä“ ( s . ·th ); 820 `bufãr_ä“ ( s . »l_·th ); 821 `bufãr_ä“ ( d . ·th ); 822 `bufãr_ä“ ( d . »l_·th ); 824 `þo£dœ ( ¤cdœ ); 827  ¡©us ; 828 } } 830  $webdav_g‘_live_´Ý”ty ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , physiÿl * d¡ , * ´Ý_Çme , bufãr * b ) { 831 ¡©_ÿche_’Œy * sû = NULL ; 832  found = 0; 834 `UNUSED ( p ); 836 ià( HANDLER_ERROR !ð( `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , d¡ -> ·th , & sû ))) { 837  ùime_buf [] = "2005-08-18T07:27:16Z"; 838  mtime_buf [] = "Thu, 18 Aug 2005 07:27:16 GMT"; 839 size_t k ; 841 ià(0 =ð `¡rcmp ( ´Ý_Çme , "resourcetype")) { 842 ià( `S_ISDIR ( sû -> ¡ . ¡_mode )) { 843 `bufãr_­³nd_¡ršg ( b , ""); 844 found = 1; 846 } ià(0 =ð `¡rcmp ( ´Ý_Çme , "getcontenttype")) { 847 ià( `S_ISDIR ( sû -> ¡ . ¡_mode )) { 848 `bufãr_­³nd_¡ršg ( b , "httpd/unix-directory"); 849 found = 1; 850 } if( `S_ISREG ( sû -> ¡ . ¡_mode )) { 851  k = 0; k < cÚ -> cÚf . mim‘y³s -> u£d ; k++) { 852 d©a_¡ršg * ds = (d©a_¡ršg *) cÚ -> cÚf . mim‘y³s -> d©a [ k ]; 854 ià( ds -> key -> u£d == 0) ; 856 ià( `bufãr_is_equ®_right_Ën ( d¡ -> ·th , ds -> key , ds->key-> u£d - 1)) { 857 `bufãr_­³nd_¡ršg ( b ,""); 858 `bufãr_­³nd_¡ršg_bufãr ( b , ds -> v®ue ); 859 `bufãr_­³nd_¡ršg ( b , ""); 860 found = 1; 866 } ià(0 =ð `¡rcmp ( ´Ý_Çme , "creationdate")) { 867 `bufãr_­³nd_¡ršg ( b , ""); 868 `¡ráime ( ùime_buf , (ùime_buf), "%Y-%m-%dT%H:%M:%SZ", `gmtime (&( sû -> ¡ . ¡_ùime ))); 869 `bufãr_­³nd_¡ršg ( b , ùime_buf ); 870 `bufãr_­³nd_¡ršg ( b , ""); 871 found = 1; 872 } ià(0 =ð `¡rcmp ( ´Ý_Çme , "getlastmodified")) { 873 `bufãr_­³nd_¡ršg ( b ,""); 874 `¡ráime ( mtime_buf , (mtime_buf), "%a, %d %b %Y %H:%M:%S GMT", `gmtime (&( sû -> ¡ . ¡_mtime ))); 875 `bufãr_­³nd_¡ršg ( b , mtime_buf ); 876 `bufãr_­³nd_¡ršg ( b , ""); 877 found = 1; 878 } ià(0 =ð `¡rcmp ( ´Ý_Çme , "getcontentlength")) { 879 `bufãr_­³nd_¡ršg ( b ,""); 880 `bufãr_­³nd_off_t ( b , sû -> ¡ . ¡_size ); 881 `bufãr_­³nd_¡ršg ( b , ""); 882 found = 1; 883 } ià(0 =ð `¡rcmp ( ´Ý_Çme , "getcontentlanguage")) { 884 `bufãr_­³nd_¡ršg ( b ,""); 885 `bufãr_­³nd_¡ršg ( b , "en"); 886 `bufãr_­³nd_¡ršg ( b , ""); 887 found = 1; 891  found ? 0 : -1; 892 } } 894  $webdav_g‘_´Ý”ty ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , physiÿl * d¡ , * ´Ý_Çme , * ´Ý_ns , bufãr * b ) { 895 ià(0 =ð `¡rcmp ( ´Ý_ns , "DAV:")) { 897  `webdav_g‘_live_´Ý”ty ( ¤v , cÚ , p , d¡ , ´Ý_Çme , b ); 899  found = 0; 900 #ifdeà USE_PROPPATCH 901 sql™e3_¡mt * ¡mt = p -> cÚf . ¡mt_£Ëù_´Ý ; 903 ià( ¡mt ) { 905 `sql™e3_»£t ( ¡mt ); 909 `sql™e3_bšd_‹xt ( ¡mt , 1, 910 d¡ -> »l_·th -> ±r , 911 d¡ -> »l_·th -> u£d - 1, 912 SQLITE_TRANSIENT ); 913 `sql™e3_bšd_‹xt ( ¡mt , 2, 914 ´Ý_Çme , 915 `¡¾’ ( ´Ý_Çme ), 916 SQLITE_TRANSIENT ); 917 `sql™e3_bšd_‹xt ( ¡mt , 3, 918 ´Ý_ns , 919 `¡¾’ ( ´Ý_ns ), 920 SQLITE_TRANSIENT ); 923  SQLITE_ROW =ð `sql™e3_¡• ( ¡mt )) { 925 `webdav_g’_´Ý_g ( ¤v , cÚ , ´Ý_Çme , ´Ý_ns , (*) `sql™e3_cÞumn_‹xt ( ¡mt , 0), b ); 926 found = 1; 930  found ? 0 : -1; 935 } } 938 * mns ; 939 * m´Ý ; 940 } twebdav_´Ý”ty ; 942 webdav_´Ý”ty glive_´Ý”t›s [] = { 955 { NULL , NULL } 959 webdav_´Ý”ty ** m±r ; 961 size_t mu£d ; 962 size_t msize ; 963 } twebdav_´Ý”t›s ; 965  $webdav_g‘_´Ýs ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , physiÿl * d¡ , webdav_´Ý”t›s * ´Ýs , bufãr * b_200 , bufã¸* b_404 ) { 966 size_t i ; 968 ià( ´Ýs ) { 969  i = 0; i < ´Ýs -> u£d ; i++) { 970 webdav_´Ý”ty * ´Ý ; 972 ´Ý = ´Ýs -> ±r [ i ]; 974 ià(0 !ð `webdav_g‘_´Ý”ty ( ¤v , cÚ , p , 975 d¡ , ´Ý ->´Ý,…rÝ-> ns , b_200 )) { 976 `webdav_g’_´Ý_g ( ¤v , cÚ , ´Ý ->´Ý,…rÝ-> ns , NULL , b_404 ); 980  i = 0; live_´Ý”t›s [i]. ´Ý ; i++) { 982 `webdav_g‘_live_´Ý”ty ( ¤v , cÚ , p , d¡ , live_´Ý”t›s [ i ]. ´Ý , b_200 ); 987 } } 989 #ifdeà USE_PROPPATCH 990  $webdav_·r£_chunkqueue ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , chunkqueue * cq , xmlDoc ** »t_xml ) { 991 xmlP¬£rCtxtPŒ ùxt ; 992 xmlDoc * xml ; 993  »s ; 994  ”r ; 996 chunk * c ; 998 `UNUSED ( cÚ ); 1001 ùxt = `xmlC»©ePushP¬£rCtxt ( NULL , NULL, NULL, 0, NULL); 1003  c = cq -> fœ¡ ; cq-> by‹s_out !ðcq-> by‹s_š ; c = cq->first) { 1004 size_t weWªt = cq -> by‹s_out - cq-> by‹s_š ; 1005 size_t weHave ; 1007  c -> ty³ ) { 1008  FILE_CHUNK : 1009 weHave = c -> fže . Ëngth - c-> off£t ; 1011 ià( weHave > weWªt ) weHave = weWant; 1014 ià( c -> fže . mm­ . ¡¬t =ð MAP_FAILED ) { 1015 ià(-1 =ð c -> fže . fd && 1016 -1 =ð( c -> fže . fd = `Ý’ (c->fže. Çme -> ±r , O_RDONLY ))) { 1017 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "Ý’ fažed: ", `¡»¼Ü ( ”ºo )); 1022 ià( MAP_FAILED =ð( c -> fže . mm­ . ¡¬t = `mm­ (0, c->fže. Ëngth , PROT_READ , MAP_SHARED , c->fže. fd , 0))) { 1023 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbd", "mmap failed: ", 1024 `¡»¼Ü ( ”ºo ), c -> fže . Çme , c->fže. fd ); 1029 `þo£ ( c -> fže . fd ); 1030 c -> fže . fd = -1; 1032 c -> fže . mm­ . Ëngth = c->file.length; 1037 ià( XML_ERR_OK !ð( ”r = `xmlP¬£Chunk ( ùxt , c -> fže . mm­ . ¡¬t + c-> off£t , weHave , 0))) { 1038 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sodd", "xmlP¬£Chunk fažed‡t:", cq -> by‹s_out , weHave , ”r ); 1041 c -> off£t +ð weHave ; 1042 cq -> by‹s_out +ð weHave ; 1045  MEM_CHUNK : 1047 weHave = c -> mem -> u£d - 1 - c-> off£t ; 1049 ià( weHave > weWªt ) weHave = weWant; 1051 ià( p -> cÚf . log_xml ) { 1052 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "XML-»que¡-body:", c -> mem -> ±r + c-> off£t ); 1055 ià( XML_ERR_OK !ð( ”r = `xmlP¬£Chunk ( ùxt , c -> mem -> ±r + c-> off£t , weHave , 0))) { 1056 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sodd", "xmlP¬£Chunk fažed‡t:", cq -> by‹s_out , weHave , ”r ); 1059 c -> off£t +ð weHave ; 1060 cq -> by‹s_out +ð weHave ; 1063  UNUSED_CHUNK : 1066 `chunkqueue_»move_fšished_chunks ( cq ); 1070 ( ”r = `xmlP¬£Chunk ( ùxt , 0, 0, 1))) { 1071  XML_ERR_DOCUMENT_END : 1072  XML_ERR_OK : 1075 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "xmlP¬£Chunk fažed‡ˆfš®…ack‘:", ”r ); 1079 xml = ùxt -> myDoc ; 1080 »s = ùxt -> w–lFÜmed ; 1081 `xmlF»eP¬£rCtxt ( ùxt ); 1083 ià( »s == 0) { 1084 `xmlF»eDoc ( xml ); 1086 * »t_xml = xml ; 1089  »s ; 1090 } } 1093  $webdav_lockdiscov”y ( £rv” * ¤v , cÚÃùiÚ * cÚ , 1094 bufãr * locktok’ , cÚ¡ * lockscÝe , cÚ¡ * lockty³ ,  d•th ) { 1096 bufãr * b ; 1098 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Lock-Tok’"), `CONST_BUF_LEN ( locktok’ )); 1100 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , 1101 `CONST_STR_LEN ("Content-Type"), 1102 `CONST_STR_LEN ("text/xml; charset=\"utf-8\"")); 1104 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 1106 `bufãr_cÝy_¡ršg ( b , "\n"); 1108 `bufãr_­³nd_¡ršg ( b ,"\n"); 1109 `bufãr_­³nd_¡ršg ( b ,"\n"); 1110 `bufãr_­³nd_¡ršg ( b ,"\n"); 1112 `bufãr_­³nd_¡ršg ( b ,""); 1113 `bufãr_­³nd_¡ršg ( b ,""); 1116 `bufãr_­³nd_¡ršg ( b ,"\n"); 1118 `bufãr_­³nd_¡ršg ( b ,""); 1119 `bufãr_­³nd_¡ršg ( b ,""); 1122 `bufãr_­³nd_¡ršg ( b ,"\n"); 1124 `bufãr_­³nd_¡ršg ( b ,""); 1125 `bufãr_­³nd_¡ršg ( b , d•th == 0 ? "0" : "infinity"); 1126 `bufãr_­³nd_¡ršg ( b ,"\n"); 1128 `bufãr_­³nd_¡ršg ( b ,""); 1129 `bufãr_­³nd_¡ršg ( b , "Second-600"); 1130 `bufãr_­³nd_¡ršg ( b ,"\n"); 1132 `bufãr_­³nd_¡ršg ( b ,""); 1133 `bufãr_­³nd_¡ršg ( b ,"\n"); 1135 `bufãr_­³nd_¡ršg ( b ,""); 1136 `bufãr_­³nd_¡ršg ( b , ""); 1137 `bufãr_­³nd_¡ršg_bufãr ( b , locktok’ ); 1138 `bufãr_­³nd_¡ršg ( b , ""); 1139 `bufãr_­³nd_¡ršg ( b ,"\n"); 1141 `bufãr_­³nd_¡ršg ( b ,"\n"); 1142 `bufãr_­³nd_¡ršg ( b ,"\n"); 1143 `bufãr_­³nd_¡ršg ( b ,"\n"); 1146 } } 1153  $webdav_has_lock ( £rv” * ¤v , cÚÃùiÚ * cÚ , ¶ugš_d©a * p , bufãr * uri ) { 1154  has_lock = 1; 1156 #ifdeà USE_LOCKS 1157 d©a_¡ršg * ds ; 1174 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "If"))) { 1183 sql™e3_¡mt * ¡mt = p -> cÚf . ¡mt_»ad_lock_by_uri ; 1185 `sql™e3_»£t ( ¡mt ); 1187 `sql™e3_bšd_‹xt ( ¡mt , 1, 1188 `CONST_BUF_LEN ( uri ), 1189 SQLITE_TRANSIENT ); 1191  SQLITE_ROW =ð `sql™e3_¡• ( ¡mt )) { 1192 has_lock = 0; 1197  has_lock ; 1198 } } 1200 $URIHANDLER_FUNC ( mod_webdav_sub»que¡_hªdËr ) { 1201 ¶ugš_d©a * p = p_d ; 1202 bufãr * b ; 1203 DIR * dœ ; 1204 d©a_¡ršg * ds ; 1205  d•th = -1; 1206  ¡© ¡ ; 1207 bufãr * ´Ý_200 ; 1208 bufãr * ´Ý_404 ; 1209 webdav_´Ý”t›s * »q_´Ýs ; 1210 ¡©_ÿche_’Œy * sû = NULL ; 1212 `UNUSED ( ¤v ); 1214 ià(! p -> cÚf . ’abËd è HANDLER_GO_ON ; 1216 ià( cÚ -> physiÿl . ·th -> u£d =ð0è HANDLER_GO_ON ; 1219 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Depth"))) { 1220 d•th = `¡¹Þ ( ds -> v®ue -> ±r , NULL , 10); 1223  cÚ -> »que¡ . h‰p_m‘hod ) { 1224  HTTP_METHOD_PROPFIND : 1226 »q_´Ýs = NULL ; 1230  `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , cÚ-> physiÿl . ·th , & sû )) { 1231  HANDLER_ERROR : 1232 ià( ”ºo =ð ENOENT ) { 1233 cÚ -> h‰p_¡©us = 404; 1234  HANDLER_FINISHED ; 1242 #ifdeà USE_PROPPATCH 1244 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth ) { 1245 xmlDocPŒ xml ; 1247 ià(1 =ð `webdav_·r£_chunkqueue ( ¤v , cÚ , p , cÚ-> »que¡_cÚ‹Á_queue , & xml )) { 1248 xmlNode * roÙnode = `xmlDocG‘RoÙEËm’t ( xml ); 1250 `as£¹ ( roÙnode ); 1252 ià(0 =ð `xmlSŒcmp ( roÙnode -> Çme , BAD_CAST "propfind")) { 1253 xmlNode * cmd ; 1255 »q_´Ýs = `ÿÎoc (1, (*req_props)); 1257  cmd = roÙnode -> chžd»n ; cmd; cmd = cmd-> Ãxt ) { 1259 ià(0 =ð `xmlSŒcmp ( cmd -> Çme , BAD_CAST "prop")) { 1261 xmlNode * ´Ý ; 1263  ´Ý = cmd -> chžd»n ;…rÝ;…rÝ =…rÝ-> Ãxt ) { 1264 ià( ´Ý -> ty³ =ð XML_TEXT_NODE ) ; 1266 ià( ´Ý -> ns && 1267 (0 =ð `xmlSŒcmp ( ´Ý -> ns -> h»f , BAD_CAST "")) && 1268 (0 !ð `xmlSŒcmp ( ´Ý -> ns -> ´efix , BAD_CAST ""))) { 1269 size_t i ; 1270 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 1272 ´Ý -> Çme ); 1274 `xmlF»eDoc ( xml ); 1276  i = 0; i < »q_´Ýs -> u£d ; i++) { 1277 `ä“ ( »q_´Ýs -> ±r [ i ]-> ns ); 1278 `ä“ ( »q_´Ýs -> ±r [ i ]-> ´Ý ); 1279 `ä“ ( »q_´Ýs -> ±r [ i ]); 1281 `ä“ ( »q_´Ýs -> ±r ); 1282 `ä“ ( »q_´Ýs ); 1284 cÚ -> h‰p_¡©us = 400; 1285  HANDLER_FINISHED ; 1289 ià( »q_´Ýs -> size == 0) { 1290 »q_´Ýs -> size = 16; 1291 »q_´Ýs -> ±r = `m®loc ((*Ôeq_´Ýs->±r)è*„eq_´Ýs-> size ); 1292 } ià( »q_´Ýs -> u£d =ð»q_´Ýs-> size ) { 1293 »q_´Ýs -> size += 16; 1294 »q_´Ýs -> ±r = `»®loc Ôeq_´Ýs->±r, (*Ôeq_´Ýs->±r)è*„eq_´Ýs-> size ); 1297 »q_´Ýs -> ±r [»q_´Ýs-> u£d ] = `m®loc (( webdav_´Ý”ty )); 1298 »q_´Ýs -> ±r [»q_´Ýs-> u£d ]-> ns = (*) `xmlSŒdup ( ´Ý ->n ?…rÝ->ns-> h»f : ( xmlCh¬ *)""); 1299 »q_´Ýs -> ±r [»q_´Ýs-> u£d ]-> ´Ý = (*) `xmlSŒdup ÕrÝ-> Çme ); 1300 »q_´Ýs -> u£d ++; 1302 } ià(0 =ð `xmlSŒcmp ( cmd -> Çme , BAD_CAST "propname")) { 1303 sql™e3_¡mt * ¡mt = p -> cÚf . ¡mt_£Ëù_´ÝÇmes ; 1305 ià( ¡mt ) { 1307 `sql™e3_»£t ( ¡mt ); 1310 `sql™e3_bšd_‹xt ( ¡mt , 1, 1311 cÚ -> uri . ·th -> ±r , 1312 cÚ -> uri . ·th -> u£d - 1, 1313 SQLITE_TRANSIENT ); 1315 ià( SQLITE_DONE !ð `sql™e3_¡• ( ¡mt )) { 1318 } ià(0 =ð `xmlSŒcmp ( cmd -> Çme , BAD_CAST "allprop")) { 1324 `xmlF»eDoc ( xml ); 1326 cÚ -> h‰p_¡©us = 400; 1327  HANDLER_FINISHED ; 1331 cÚ -> h‰p_¡©us = 207; 1333 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Content-Type"), CONST_STR_LEN("text/xml; charset=\"utf-8\"")); 1335 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 1337 `bufãr_cÝy_¡ršg ( b , "\n"); 1339 `bufãr_­³nd_¡ršg ( b ,"\n"); 1343 ´Ý_200 = `bufãr_š™ (); 1344 ´Ý_404 = `bufãr_š™ (); 1346  d•th ) { 1349 `webdav_g‘_´Ýs ( ¤v , cÚ , p , &(cÚ-> physiÿl ), »q_´Ýs , ´Ý_200 , ´Ý_404 ); 1351 `bufãr_­³nd_¡ršg ( b ,"\n"); 1352 `bufãr_­³nd_¡ršg ( b ,""); 1353 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> uri . scheme ); 1354 `bufãr_­³nd_¡ršg ( b ,"://"); 1355 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> uri . authÜ™y ); 1356 `bufãr_­³nd_¡ršg_’coded ( b , `CONST_BUF_LEN ( cÚ -> uri . ·th ), ENCODING_REL_URI ); 1357 `bufãr_­³nd_¡ršg ( b ,"\n"); 1359 ià(! `bufãr_is_em±y ( ´Ý_200 )) { 1360 `bufãr_­³nd_¡ršg ( b ,"\n"); 1361 `bufãr_­³nd_¡ršg ( b ,"\n"); 1363 `bufãr_­³nd_¡ršg_bufãr ( b , ´Ý_200 ); 1365 `bufãr_­³nd_¡ršg ( b ,"\n"); 1367 `bufãr_­³nd_¡ršg ( b ,"HTTP/1.1 200 OK\n"); 1369 `bufãr_­³nd_¡ršg ( b ,"\n"); 1371 ià(! `bufãr_is_em±y ( ´Ý_404 )) { 1372 `bufãr_­³nd_¡ršg ( b ,"\n"); 1373 `bufãr_­³nd_¡ršg ( b ,"\n"); 1375 `bufãr_­³nd_¡ršg_bufãr ( b , ´Ý_404 ); 1377 `bufãr_­³nd_¡ršg ( b ,"\n"); 1379 `bufãr_­³nd_¡ršg ( b ,"HTTP/1.1 404 Not Found\n"); 1381 `bufãr_­³nd_¡ršg ( b ,"\n"); 1384 `bufãr_­³nd_¡ršg ( b ,"\n"); 1388 ià( NULL !ð( dœ = `Ý’dœ ( cÚ -> physiÿl . ·th -> ±r ))) { 1389  dœ’t * de ; 1390 physiÿl d ; 1391 physiÿl * d¡ = &( cÚ ->physical); 1393 d . ·th = `bufãr_š™ (); 1394 d . »l_·th = `bufãr_š™ (); 1396  NULL !ð( de = `»addœ ( dœ ))) { 1397 ià( de -> d_Çme [0] == '.' && de->d_name[1] == '.' && de->d_name[2] == '\0') { 1402 `bufãr_cÝy_¡ršg_bufãr ( d . ·th , d¡ ->path); 1403 `BUFFER_APPEND_SLASH ( d . ·th ); 1405 `bufãr_cÝy_¡ršg_bufãr ( d . »l_·th , d¡ ->rel_path); 1406 `BUFFER_APPEND_SLASH ( d . »l_·th ); 1408 ià( de -> d_Çme [0] == '.' && de->d_name[1] == '\0') { 1411 `bufãr_­³nd_¡ršg ( d . ·th , de -> d_Çme ); 1412 `bufãr_­³nd_¡ršg ( d . »l_·th , de -> d_Çme ); 1415 `bufãr_»£t ( ´Ý_200 ); 1416 `bufãr_»£t ( ´Ý_404 ); 1418 `webdav_g‘_´Ýs ( ¤v , cÚ , p , & d , »q_´Ýs , ´Ý_200 , ´Ý_404 ); 1420 `bufãr_­³nd_¡ršg ( b ,"\n"); 1421 `bufãr_­³nd_¡ršg ( b ,""); 1422 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> uri . scheme ); 1423 `bufãr_­³nd_¡ršg ( b ,"://"); 1424 `bufãr_­³nd_¡ršg_bufãr ( b , cÚ -> uri . authÜ™y ); 1425 `bufãr_­³nd_¡ršg_’coded ( b , `CONST_BUF_LEN ( d . »l_·th ), ENCODING_REL_URI ); 1426 `bufãr_­³nd_¡ršg ( b ,"\n"); 1428 ià(! `bufãr_is_em±y ( ´Ý_200 )) { 1429 `bufãr_­³nd_¡ršg ( b ,"\n"); 1430 `bufãr_­³nd_¡ršg ( b ,"\n"); 1432 `bufãr_­³nd_¡ršg_bufãr ( b , ´Ý_200 ); 1434 `bufãr_­³nd_¡ršg ( b ,"\n"); 1436 `bufãr_­³nd_¡ršg ( b ,"HTTP/1.1 200 OK\n"); 1438 `bufãr_­³nd_¡ršg ( b ,"\n"); 1440 ià(! `bufãr_is_em±y ( ´Ý_404 )) { 1441 `bufãr_­³nd_¡ršg ( b ,"\n"); 1442 `bufãr_­³nd_¡ršg ( b ,"\n"); 1444 `bufãr_­³nd_¡ršg_bufãr ( b , ´Ý_404 ); 1446 `bufãr_­³nd_¡ršg ( b ,"\n"); 1448 `bufãr_­³nd_¡ršg ( b ,"HTTP/1.1 404 Not Found\n"); 1450 `bufãr_­³nd_¡ršg ( b ,"\n"); 1453 `bufãr_­³nd_¡ršg ( b ,"\n"); 1455 `þo£dœ ( dœ ); 1456 `bufãr_ä“ ( d . ·th ); 1457 `bufãr_ä“ ( d . »l_·th ); 1462 ià( »q_´Ýs ) { 1463 size_t i ; 1464  i = 0; i < »q_´Ýs -> u£d ; i++) { 1465 `ä“ ( »q_´Ýs -> ±r [ i ]-> ns ); 1466 `ä“ ( »q_´Ýs -> ±r [ i ]-> ´Ý ); 1467 `ä“ ( »q_´Ýs -> ±r [ i ]); 1469 `ä“ ( »q_´Ýs -> ±r ); 1470 `ä“ ( »q_´Ýs ); 1473 `bufãr_ä“ ( ´Ý_200 ); 1474 `bufãr_ä“ ( ´Ý_404 ); 1476 `bufãr_­³nd_¡ršg ( b ,"\n"); 1478 ià( p -> cÚf . log_xml ) { 1479 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "XML-»¥Ú£-body:", b ); 1481 cÚ -> fže_fšished = 1; 1483  HANDLER_FINISHED ; 1484  HTTP_METHOD_MKCOL : 1485 ià( p -> cÚf . is_»adÚly ) { 1486 cÚ -> h‰p_¡©us = 403; 1487  HANDLER_FINISHED ; 1490 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth != 0) { 1492 cÚ -> h‰p_¡©us = 415; 1494  HANDLER_FINISHED ; 1499 ià(-1 =ð `mkdœ ( cÚ -> physiÿl . ·th -> ±r , WEBDAV_DIR_MODE )) { 1500  ”ºo ) { 1501  EPERM : 1502 cÚ -> h‰p_¡©us = 403; 1504  ENOENT : 1505  ENOTDIR : 1506 cÚ -> h‰p_¡©us = 409; 1508  EEXIST : 1510 cÚ -> h‰p_¡©us = 405; 1514 cÚ -> h‰p_¡©us = 201; 1515 cÚ -> fže_fšished = 1; 1518  HANDLER_FINISHED ; 1519  HTTP_METHOD_DELETE : 1520 ià( p -> cÚf . is_»adÚly ) { 1521 cÚ -> h‰p_¡©us = 403; 1522  HANDLER_FINISHED ; 1526 ià(! `webdav_has_lock ( ¤v , cÚ , p , cÚ-> uri . ·th )) { 1527 cÚ -> h‰p_¡©us = 423; 1528  HANDLER_FINISHED ; 1532 ià(-1 =ð `¡© ( cÚ -> physiÿl . ·th -> ±r , & ¡ )) { 1534  ”ºo ) { 1535  ENOENT : 1536 cÚ -> h‰p_¡©us = 404; 1539 cÚ -> h‰p_¡©us = 403; 1542 } ià( `S_ISDIR ( ¡ . ¡_mode )) { 1543 bufãr * muÉi_¡©us_»¥ = `bufãr_š™ (); 1545 ià( `webdav_d–‘e_dœ ( ¤v , cÚ , p , &(cÚ-> physiÿl ), muÉi_¡©us_»¥ )) { 1547 `»¥Ú£_h—d”_ov”wr™e ( ¤v , cÚ , `CONST_STR_LEN ("Content-Type"), CONST_STR_LEN("text/xml; charset=\"utf-8\"")); 1549 b = `chunkqueue_g‘_­³nd_bufãr ( cÚ -> wr™e_queue ); 1551 `bufãr_cÝy_¡ršg ( b , "\n"); 1553 `bufãr_­³nd_¡ršg ( b ,"\n"); 1555 `bufãr_­³nd_¡ršg_bufãr ( b , muÉi_¡©us_»¥ ); 1557 `bufãr_­³nd_¡ršg ( b ,"\n"); 1559 ià( p -> cÚf . log_xml ) { 1560 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "XML-»¥Ú£-body:", b ); 1563 cÚ -> h‰p_¡©us = 207; 1564 cÚ -> fže_fšished = 1; 1568 ià(-1 =ð `rmdœ ( cÚ -> physiÿl . ·th -> ±r )) { 1569  ”ºo ) { 1570  ENOENT : 1571 cÚ -> h‰p_¡©us = 404; 1574 cÚ -> h‰p_¡©us = 501; 1578 cÚ -> h‰p_¡©us = 204; 1582 `bufãr_ä“ ( muÉi_¡©us_»¥ ); 1583 } ià(-1 =ð `uÆšk ( cÚ -> physiÿl . ·th -> ±r )) { 1584  ”ºo ) { 1585  EPERM : 1586 cÚ -> h‰p_¡©us = 403; 1588  ENOENT : 1589 cÚ -> h‰p_¡©us = 404; 1592 cÚ -> h‰p_¡©us = 501; 1596 cÚ -> h‰p_¡©us = 204; 1598  HANDLER_FINISHED ; 1599  HTTP_METHOD_PUT : { 1600  fd ; 1601 chunkqueue * cq = cÚ -> »que¡_cÚ‹Á_queue ; 1602 chunk * c ; 1603 d©a_¡ršg * ds_¿nge ; 1605 ià( p -> cÚf . is_»adÚly ) { 1606 cÚ -> h‰p_¡©us = 403; 1607  HANDLER_FINISHED ; 1611 ià(! `webdav_has_lock ( ¤v , cÚ , p , cÚ-> uri . ·th )) { 1612 cÚ -> h‰p_¡©us = 423; 1613  HANDLER_FINISHED ; 1617 `as£¹ ( `chunkqueue_Ëngth ( cq è=ð( off_t ) cÚ -> »que¡ . cÚ‹Á_Ëngth ); 1625 ià( NULL !ð( ds_¿nge = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Content-Range"))) { 1626 cÚ¡ * num = ds_¿nge -> v®ue -> ±r ; 1627 off_t off£t ; 1628 * ”r = NULL ; 1630 ià(0 !ð `¡ºcmp ( num , "bytes ", 6)) { 1631 cÚ -> h‰p_¡©us = 501; 1633  HANDLER_FINISHED ; 1638 num += 6; 1641 * num == ' ' || *num == '\t')‚um++; 1643 ià(* num == '\0') { 1644 cÚ -> h‰p_¡©us = 501; 1646  HANDLER_FINISHED ; 1649 off£t = `¡¹Þl ( num , & ”r , 10); 1651 ià(* ”r !ð'-' || off£t < 0) { 1652 cÚ -> h‰p_¡©us = 501; 1654  HANDLER_FINISHED ; 1657 ià(-1 =ð( fd = `Ý’ ( cÚ -> physiÿl . ·th -> ±r , O_WRONLY , WEBDAV_FILE_MODE ))) { 1658  ”ºo ) { 1659  ENOENT : 1660 cÚ -> h‰p_¡©us = 404; 1663 cÚ -> h‰p_¡©us = 403; 1666  HANDLER_FINISHED ; 1669 ià(-1 =ð `l£ek ( fd , off£t , SEEK_SET )) { 1670 cÚ -> h‰p_¡©us = 501; 1672 `þo£ ( fd ); 1674  HANDLER_FINISHED ; 1676 cÚ -> h‰p_¡©us = 200; 1681 ià(-1 =ð( fd = `Ý’ ( cÚ -> physiÿl . ·th -> ±r , O_WRONLY | O_TRUNC , WEBDAV_FILE_MODE ))) { 1682 ià( ”ºo =ð ENOENT && 1683 -1 =ð( fd = `Ý’ ( cÚ -> physiÿl . ·th -> ±r , O_WRONLY | O_CREAT | O_TRUNC | O_EXCL , WEBDAV_FILE_MODE ))) { 1685 cÚ -> h‰p_¡©us = 403; 1687  HANDLER_FINISHED ; 1689 cÚ -> h‰p_¡©us = 201; 1692 cÚ -> h‰p_¡©us = 200; 1696 cÚ -> fže_fšished = 1; 1698  c = cq -> fœ¡ ; c; c = cq->first) { 1699  r = 0; 1702  c -> ty³ ) { 1703  FILE_CHUNK : 1705 ià( c -> fže . mm­ . ¡¬t =ð MAP_FAILED ) { 1706 ià(-1 =ð c -> fže . fd && 1707 -1 =ð( c -> fže . fd = `Ý’ (c->fže. Çme -> ±r , O_RDONLY ))) { 1708 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "Ý’ fažed: ", `¡»¼Ü ( ”ºo )); 1710  HANDLER_ERROR ; 1713 ià( MAP_FAILED =ð( c -> fže . mm­ . ¡¬t = `mm­ (0, c->fže. Ëngth , PROT_READ , MAP_SHARED , c->fže. fd , 0))) { 1714 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbd", "mmap failed: ", 1715 `¡»¼Ü ( ”ºo ), c -> fže . Çme , c->fže. fd ); 1717  HANDLER_ERROR ; 1720 c -> fže . mm­ . Ëngth = c->file.length; 1722 `þo£ ( c -> fže . fd ); 1723 c -> fže . fd = -1; 1728 ià(( r = `wr™e ( fd , c -> fže . mm­ . ¡¬t + c-> off£t , c->fže. Ëngth - c->offset)) < 0) { 1729  ”ºo ) { 1730  ENOSPC : 1731 cÚ -> h‰p_¡©us = 507; 1735 cÚ -> h‰p_¡©us = 403; 1740  MEM_CHUNK : 1741 ià(( r = `wr™e ( fd , c -> mem -> ±r + c-> off£t , c->mem-> u£d - c->offset - 1)) < 0) { 1742  ”ºo ) { 1743  ENOSPC : 1744 cÚ -> h‰p_¡©us = 507; 1748 cÚ -> h‰p_¡©us = 403; 1753  UNUSED_CHUNK : 1757 ià( r > 0) { 1758 c -> off£t +ð r ; 1759 cq -> by‹s_out +ð r ; 1763 `chunkqueue_»move_fšished_chunks ( cq ); 1765 `þo£ ( fd ); 1767  HANDLER_FINISHED ; 1769  HTTP_METHOD_MOVE : 1770  HTTP_METHOD_COPY : { 1771 bufãr * de¡š©iÚ = NULL ; 1772 * £p , * ¡¬t ; 1773  ov”wr™e = 1; 1775 ià( p -> cÚf . is_»adÚly ) { 1776 cÚ -> h‰p_¡©us = 403; 1777  HANDLER_FINISHED ; 1781 ià( cÚ -> »que¡ . h‰p_m‘hod =ð HTTP_METHOD_MOVE ) { 1782 ià(! `webdav_has_lock ( ¤v , cÚ , p , cÚ-> uri . ·th )) { 1783 cÚ -> h‰p_¡©us = 423; 1784  HANDLER_FINISHED ; 1788 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Destination"))) { 1789 de¡š©iÚ = ds -> v®ue ; 1791 cÚ -> h‰p_¡©us = 400; 1792  HANDLER_FINISHED ; 1795 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Overwrite"))) { 1796 ià( ds -> v®ue -> u£d != 2 || 1797 ( ds -> v®ue -> ±r [0] != 'F' && 1798 ds -> v®ue -> ±r [0] != 'T') ) { 1799 cÚ -> h‰p_¡©us = 400; 1800  HANDLER_FINISHED ; 1802 ov”wr™e = ( ds -> v®ue -> ±r [0] == 'F' ? 0 : 1); 1813 `bufãr_»£t ( p -> uri . scheme ); 1814 `bufãr_»£t ( p -> uri . ·th_¿w ); 1815 `bufãr_»£t ( p -> uri . authÜ™y ); 1817 ¡¬t = de¡š©iÚ -> ±r ; 1819 ià( NULL =ð( £p = `¡r¡r ( ¡¬t , "://"))) { 1820 cÚ -> h‰p_¡©us = 400; 1821  HANDLER_FINISHED ; 1823 `bufãr_cÝy_¡ršg_Ën ( p -> uri . scheme , ¡¬t , £p - start); 1825 ¡¬t = £p + 3; 1827 ià( NULL =ð( £p = `¡rchr ( ¡¬t , '/'))) { 1828 cÚ -> h‰p_¡©us = 400; 1829  HANDLER_FINISHED ; 1831 `bufãr_cÝy_¡ršg_Ën ( p -> uri . authÜ™y , ¡¬t , £p - start); 1833 ¡¬t = £p + 1; 1835 ià( NULL =ð( £p = `¡rchr ( ¡¬t , '?'))) { 1837 `bufãr_cÝy_¡ršg ( p -> uri . ·th_¿w , ¡¬t ); 1839 `bufãr_cÝy_¡ršg_Ën ( p -> uri . ·th_¿w , ¡¬t , £p - start); 1842 ià(! `bufãr_is_equ® ( p -> uri . authÜ™y , cÚ ->uri.authority)) { 1844 cÚ -> h‰p_¡©us = 502; 1845  HANDLER_FINISHED ; 1848 `bufãr_cÝy_¡ršg_bufãr ( p -> tmp_buf ,…-> uri . ·th_¿w ); 1849 `bufãr_u¾decode_·th ( p -> tmp_buf ); 1850 `bufãr_·th_sim¶ify ( p -> uri . ·th ,…-> tmp_buf ); 1853 `bufãr_cÝy_¡ršg_bufãr ( p -> physiÿl . doc_roÙ , cÚ ->physical.doc_root); 1854 `bufãr_cÝy_¡ršg_bufãr ( p -> physiÿl . »l_·th ,…-> uri . ·th ); 1856 ià( cÚ -> cÚf . fÜû_low”ÿ£_fž’ames ) { 1857 `bufãr_to_low” ( p -> physiÿl . »l_·th ); 1860 `bufãr_cÝy_¡ršg_bufãr ( p -> physiÿl . ·th ,…->physiÿl. doc_roÙ ); 1861 `BUFFER_APPEND_SLASH ( p -> physiÿl . ·th ); 1862 `bufãr_cÝy_¡ršg_bufãr ( p -> physiÿl . ba£dœ ,…->physiÿl. ·th ); 1865 ià( p -> physiÿl . »l_·th -> ±r [0] == '/') { 1866 `bufãr_­³nd_¡ršg_Ën ( p -> physiÿl . ·th ,…->physiÿl. »l_·th -> ±r + 1,…->physiÿl.»l_·th-> u£d - 2); 1868 `bufãr_­³nd_¡ršg_bufãr ( p -> physiÿl . ·th ,…->physiÿl. »l_·th ); 1874 ià(-1 =ð `¡© ( cÚ -> physiÿl . ·th -> ±r , & ¡ )) { 1876  ”ºo ) { 1877  ENOENT : 1878 cÚ -> h‰p_¡©us = 404; 1881 cÚ -> h‰p_¡©us = 403; 1884 } ià( `S_ISDIR ( ¡ . ¡_mode )) { 1885  r ; 1888 ià(-1 =ð `¡© ( p -> physiÿl . ·th -> ±r , & ¡ )) { 1889 ià(-1 =ð `mkdœ ( p -> physiÿl . ·th -> ±r , WEBDAV_DIR_MODE )) { 1890 cÚ -> h‰p_¡©us = 403; 1891  HANDLER_FINISHED ; 1893 } ià(! `S_ISDIR ( ¡ . ¡_mode )) { 1894 ià( ov”wr™e == 0) { 1896 cÚ -> h‰p_¡©us = 409; 1897  HANDLER_FINISHED ; 1899 `uÆšk ( p -> physiÿl . ·th -> ±r ); 1900 ià(-1 =ð `mkdœ ( p -> physiÿl . ·th -> ±r , WEBDAV_DIR_MODE )) { 1901 cÚ -> h‰p_¡©us = 403; 1902  HANDLER_FINISHED ; 1908 ià(0 !ð( r = `webdav_cÝy_dœ ( ¤v , cÚ , p , &(cÚ-> physiÿl ), &Õ->physiÿl), ov”wr™e ))) { 1909 cÚ -> h‰p_¡©us = r ; 1910  HANDLER_FINISHED ; 1912 ià( cÚ -> »que¡ . h‰p_m‘hod =ð HTTP_METHOD_MOVE ) { 1913 b = `bufãr_š™ (); 1914 `webdav_d–‘e_dœ ( ¤v , cÚ , p , &(cÚ-> physiÿl ), b ); 1915 `bufãr_ä“ ( b ); 1917 `rmdœ ( cÚ -> physiÿl . ·th -> ±r ); 1919 cÚ -> h‰p_¡©us = 201; 1920 cÚ -> fže_fšished = 1; 1923  r ; 1926 ià(! `webdav_has_lock ( ¤v , cÚ , p ,…-> uri . ·th )) { 1927 cÚ -> h‰p_¡©us = 423; 1928  HANDLER_FINISHED ; 1932 ià(0 =ð( r = `¡© ( p -> physiÿl . ·th -> ±r , & ¡ ))) { 1933 ià( `S_ISDIR ( ¡ . ¡_mode )) { 1937 ià( NULL !ð( £p = `¡¼chr ( cÚ -> physiÿl . ·th -> ±r , '/'))) { 1938 `bufãr_­³nd_¡ršg ( p -> physiÿl . ·th , £p ); 1939 r = `¡© ( p -> physiÿl . ·th -> ±r , & ¡ ); 1944 ià(-1 =ð r ) { 1945 cÚ -> h‰p_¡©us = 201; 1946 cÚ -> fže_fšished = 1; 1948  ”ºo ) { 1949  ENOTDIR : 1950 cÚ -> h‰p_¡©us = 409; 1951  HANDLER_FINISHED ; 1953 } ià( ov”wr™e == 0) { 1955 cÚ -> h‰p_¡©us = 412; 1956  HANDLER_FINISHED ; 1958 cÚ -> h‰p_¡©us = 204; 1961 ià( cÚ -> »que¡ . h‰p_m‘hod =ð HTTP_METHOD_MOVE ) { 1964 ià(0 =ð `»Çme ( cÚ -> physiÿl . ·th -> ±r , p ->physical.path->ptr)) { 1965 #ifdeà USE_PROPPATCH 1966 sql™e3_¡mt * ¡mt = p -> cÚf . ¡mt_move_uri ; 1968 ià( ¡mt ) { 1970 `sql™e3_»£t ( ¡mt ); 1973 `sql™e3_bšd_‹xt ( ¡mt , 1, 1974 p -> uri . ·th -> ±r , 1975 p -> uri . ·th -> u£d - 1, 1976 SQLITE_TRANSIENT ); 1978 `sql™e3_bšd_‹xt ( ¡mt , 2, 1979 cÚ -> uri . ·th -> ±r , 1980 cÚ -> uri . ·th -> u£d - 1, 1981 SQLITE_TRANSIENT ); 1983 ià( SQLITE_DONE !ð `sql™e3_¡• ( ¡mt )) { 1984 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sql-movçžed:", `sql™e3_”rmsg ( p -> cÚf . sql )); 1988  HANDLER_FINISHED ; 1994 ià(0 !ð( r = `webdav_cÝy_fže ( ¤v , cÚ , p , &(cÚ-> physiÿl ), &Õ->physiÿl), ov”wr™e ))) { 1995 cÚ -> h‰p_¡©us = r ; 1997  HANDLER_FINISHED ; 2000 ià( cÚ -> »que¡ . h‰p_m‘hod =ð HTTP_METHOD_MOVE ) { 2001 b = `bufãr_š™ (); 2002 `webdav_d–‘e_fže ( ¤v , cÚ , p , &(cÚ-> physiÿl ), b ); 2003 `bufãr_ä“ ( b ); 2007  HANDLER_FINISHED ; 2009  HTTP_METHOD_PROPPATCH : 2010 ià( p -> cÚf . is_»adÚly ) { 2011 cÚ -> h‰p_¡©us = 403; 2012  HANDLER_FINISHED ; 2015 ià(! `webdav_has_lock ( ¤v , cÚ , p , cÚ-> uri . ·th )) { 2016 cÚ -> h‰p_¡©us = 423; 2017  HANDLER_FINISHED ; 2021 ià(-1 =ð `¡© ( cÚ -> physiÿl . ·th -> ±r , & ¡ )) { 2022  ”ºo ) { 2023  ENOENT : 2024 cÚ -> h‰p_¡©us = 404; 2029 #ifdeà USE_PROPPATCH 2030 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth ) { 2031 xmlDocPŒ xml ; 2033 ià(1 =ð `webdav_·r£_chunkqueue ( ¤v , cÚ , p , cÚ-> »que¡_cÚ‹Á_queue , & xml )) { 2034 xmlNode * roÙnode = `xmlDocG‘RoÙEËm’t ( xml ); 2036 ià(0 =ð `xmlSŒcmp ( roÙnode -> Çme , BAD_CAST "propertyupdate")) { 2037 xmlNode * cmd ; 2038 * ”r = NULL ; 2039  em±y_ns = 0; 2043 ià( SQLITE_OK !ð `sql™e3_exec ( p -> cÚf . sql , "BEGIN TRANSACTION", NULL , NULL, & ”r )) { 2044 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ÿn'ˆÝ’¿n§ùiÚ:", ”r ); 2045 `sql™e3_ä“ ( ”r ); 2047  ´Ým©ch_þ—nup ; 2051  cmd = roÙnode -> chžd»n ; cmd; cmd = cmd-> Ãxt ) { 2052 xmlNode * ´Ýs ; 2055 ià((0 =ð `xmlSŒcmp ( cmd -> Çme , BAD_CAST "set")) || 2056 (0 =ð `xmlSŒcmp ( cmd -> Çme , BAD_CAST "remove"))) { 2058 sql™e3_¡mt * ¡mt ; 2060 ¡mt = (0 =ð `xmlSŒcmp ( cmd -> Çme , BAD_CAST "remove")) ? 2061 p -> cÚf . ¡mt_d–‘e_´Ý :…->cÚf. ¡mt_upd©e_´Ý ; 2063  ´Ýs = cmd -> chžd»n ;…rÝs;…rÝ ð´Ýs-> Ãxt ) { 2064 ià(0 =ð `xmlSŒcmp ( ´Ýs -> Çme , BAD_CAST "prop")) { 2065 xmlNode * ´Ý ; 2066  r ; 2068 ´Ý = ´Ýs -> chžd»n ; 2070 ià( ´Ý -> ns && 2071 (0 =ð `xmlSŒcmp ( ´Ý -> ns -> h»f , BAD_CAST "")) && 2072 (0 !ð `xmlSŒcmp ( ´Ý -> ns -> ´efix , BAD_CAST ""))) { 2073 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 2075 ´Ý -> Çme ); 2077 em±y_ns = 1; 2081 `sql™e3_»£t ( ¡mt ); 2085 `sql™e3_bšd_‹xt ( ¡mt , 1, 2086 cÚ -> uri . ·th -> ±r , 2087 cÚ -> uri . ·th -> u£d - 1, 2088 SQLITE_TRANSIENT ); 2089 `sql™e3_bšd_‹xt ( ¡mt , 2, 2090 (*) ´Ý -> Çme , 2091 `¡¾’ ((*) ´Ý -> Çme ), 2092 SQLITE_TRANSIENT ); 2093 ià( ´Ý -> ns ) { 2094 `sql™e3_bšd_‹xt ( ¡mt , 3, 2095 (*) ´Ý -> ns -> h»f , 2096 `¡¾’ ((*) ´Ý -> ns -> h»f ), 2097 SQLITE_TRANSIENT ); 2099 `sql™e3_bšd_‹xt ( ¡mt , 3, 2102 SQLITE_TRANSIENT ); 2104 ià( ¡mt =ð p -> cÚf . ¡mt_upd©e_´Ý ) { 2105 `sql™e3_bšd_‹xt ( ¡mt , 4, 2106 (*) `xmlNodeG‘CÚ‹Á ( ´Ý ), 2107 `¡¾’ ((*) `xmlNodeG‘CÚ‹Á ( ´Ý )), 2108 SQLITE_TRANSIENT ); 2111 ià( SQLITE_DONE !ð( r = `sql™e3_¡• ( ¡mt ))) { 2112 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 2113 "sql-£ˆçžed:", `sql™e3_”rmsg ( p -> cÚf . sql )); 2117 ià( em±y_ns ) ; 2121 ià( em±y_ns ) { 2122 ià( SQLITE_OK !ð `sql™e3_exec ( p -> cÚf . sql , "ROLLBACK", NULL , NULL, & ”r )) { 2123 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ÿn'ˆrÞlback¿n§ùiÚ:", ”r ); 2124 `sql™e3_ä“ ( ”r ); 2126  ´Ým©ch_þ—nup ; 2129 cÚ -> h‰p_¡©us = 400; 2131 ià( SQLITE_OK !ð `sql™e3_exec ( p -> cÚf . sql , "COMMIT", NULL , NULL, & ”r )) { 2132 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ÿn'ˆcomm™¿n§ùiÚ:", ”r ); 2133 `sql™e3_ä“ ( ”r ); 2135  ´Ým©ch_þ—nup ; 2137 cÚ -> h‰p_¡©us = 200; 2139 cÚ -> fže_fšished = 1; 2141  HANDLER_FINISHED ; 2144 ´Ým©ch_þ—nup : 2146 `xmlF»eDoc ( xml ); 2148 cÚ -> h‰p_¡©us = 400; 2149  HANDLER_FINISHED ; 2153 cÚ -> h‰p_¡©us = 501; 2154  HANDLER_FINISHED ; 2155  HTTP_METHOD_LOCK : 2179 ià( d•th != 0 && depth != -1) { 2180 cÚ -> h‰p_¡©us = 400; 2182  HANDLER_FINISHED ; 2185 #ifdeà USE_LOCKS 2186 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth ) { 2187 xmlDocPŒ xml ; 2188 bufãr * hdr_if = NULL ; 2190 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "If"))) { 2191 hdr_if = ds -> v®ue ; 2195 ià( hdr_if =ð NULL && d•th == -1) { 2196 cÚ -> h‰p_¡©us = 409; 2198  HANDLER_FINISHED ; 2201 ià(1 =ð `webdav_·r£_chunkqueue ( ¤v , cÚ , p , cÚ-> »que¡_cÚ‹Á_queue , & xml )) { 2202 xmlNode * roÙnode = `xmlDocG‘RoÙEËm’t ( xml ); 2204 `as£¹ ( roÙnode ); 2206 ià(0 =ð `xmlSŒcmp ( roÙnode -> Çme , BAD_CAST "lockinfo")) { 2207 xmlNode * lockšfo ; 2208 cÚ¡ xmlCh¬ * lockscÝe = NULL , * lockty³ = NULL; 2210  lockšfo = roÙnode -> chžd»n ;†ockšfo;†ockšfØðlockšfo-> Ãxt ) { 2211 ià(0 =ð `xmlSŒcmp ( lockšfo -> Çme , BAD_CAST "lockscope")) { 2212 xmlNode * v®ue ; 2213  v®ue = lockšfo -> chžd»n ; v®ue; v®uðv®ue-> Ãxt ) { 2214 ià((0 =ð `xmlSŒcmp ( v®ue -> Çme , BAD_CAST "exclusive")) || 2215 (0 =ð `xmlSŒcmp ( v®ue -> Çme , BAD_CAST "shared"))) { 2216 lockscÝe = v®ue -> Çme ; 2218 cÚ -> h‰p_¡©us = 400; 2220 `xmlF»eDoc ( xml ); 2221  HANDLER_FINISHED ; 2224 } ià(0 =ð `xmlSŒcmp ( lockšfo -> Çme , BAD_CAST "locktype")) { 2225 xmlNode * v®ue ; 2226  v®ue = lockšfo -> chžd»n ; v®ue; v®uðv®ue-> Ãxt ) { 2227 ià((0 =ð `xmlSŒcmp ( v®ue -> Çme , BAD_CAST "write"))) { 2228 lockty³ = v®ue -> Çme ; 2230 cÚ -> h‰p_¡©us = 400; 2232 `xmlF»eDoc ( xml ); 2233  HANDLER_FINISHED ; 2237 } ià(0 =ð `xmlSŒcmp ( lockšfo -> Çme , BAD_CAST "owner")) { 2241 ià( lockscÝe && lockty³ ) { 2242 sql™e3_¡mt * ¡mt = p -> cÚf . ¡mt_»ad_lock_by_uri ; 2250 ià( ¡mt ) { 2252 `sql™e3_»£t ( ¡mt ); 2254 `sql™e3_bšd_‹xt ( ¡mt , 1, 2255 p -> uri . ·th -> ±r , 2256 p -> uri . ·th -> u£d - 1, 2257 SQLITE_TRANSIENT ); 2260  SQLITE_ROW =ð `sql™e3_¡• ( ¡mt )) { 2264 * sql_lockscÝe = (*) `sql™e3_cÞumn_‹xt ( ¡mt , 2); 2266 ià( `¡rcmp ( sql_lockscÝe , "exclusive")) { 2267 cÚ -> h‰p_¡©us = 423; 2268 } ià(0 =ð `xmlSŒcmp ( lockscÝe , BAD_CAST "exclusive")) { 2271 cÚ -> h‰p_¡©us = 423; 2274 ià( cÚ -> h‰p_¡©us == 423) { 2275 `xmlF»eDoc ( xml ); 2276  HANDLER_FINISHED ; 2280 ¡mt = p -> cÚf . ¡mt_ü—‹_lock ; 2281 ià( ¡mt ) { 2283 uuid_t id ; 2284  uuid [37] ; 2286 `uuid_g’”©e ( id ); 2287 `uuid_uŬ£ ( id , uuid ); 2289 `bufãr_cÝy_¡ršg ( p -> tmp_buf , "opaquelocktoken:"); 2290 `bufãr_­³nd_¡ršg ( p -> tmp_buf , uuid ); 2301 `sql™e3_»£t ( ¡mt ); 2303 `sql™e3_bšd_‹xt ( ¡mt , 1, 2304 `CONST_BUF_LEN ( p -> tmp_buf ), 2305 SQLITE_TRANSIENT ); 2307 `sql™e3_bšd_‹xt ( ¡mt , 2, 2308 `CONST_BUF_LEN ( cÚ -> uri . ·th ), 2309 SQLITE_TRANSIENT ); 2311 `sql™e3_bšd_‹xt ( ¡mt , 3, 2312 (cÚ¡ *) lockscÝe , 2313 `xmlSŒËn ( lockscÝe ), 2314 SQLITE_TRANSIENT ); 2316 `sql™e3_bšd_‹xt ( ¡mt , 4, 2317 (cÚ¡ *) lockty³ , 2318 `xmlSŒËn ( lockty³ ), 2319 SQLITE_TRANSIENT ); 2322 `sql™e3_bšd_‹xt ( ¡mt , 5, 2325 SQLITE_TRANSIENT ); 2328 `sql™e3_bšd_št ( ¡mt , 6, 2329 d•th ); 2332 ià( SQLITE_DONE !ð `sql™e3_¡• ( ¡mt )) { 2333 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 2334 "ü—‹†ock:", `sql™e3_”rmsg ( p -> cÚf . sql )); 2338 `webdav_lockdiscov”y ( ¤v , cÚ , p -> tmp_buf , (cÚ¡ *) lockscÝe , (cÚ¡ *) lockty³ , d•th ); 2340 cÚ -> h‰p_¡©us = 201; 2341 cÚ -> fže_fšished = 1; 2346 `xmlF»eDoc ( xml ); 2347  HANDLER_FINISHED ; 2349 cÚ -> h‰p_¡©us = 400; 2350  HANDLER_FINISHED ; 2354 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "If"))) { 2355 bufãr * locktok’ = ds -> v®ue ; 2356 sql™e3_¡mt * ¡mt = p -> cÚf . ¡mt_»äesh_lock ; 2359 ià( locktok’ -> u£d < 6) { 2360 cÚ -> h‰p_¡©us = 400; 2362  HANDLER_FINISHED ; 2365 `bufãr_cÝy_¡ršg_Ën ( p -> tmp_buf , locktok’ -> ±r + 2,†ocktok’-> u£d - 5); 2367 `sql™e3_»£t ( ¡mt ); 2369 `sql™e3_bšd_‹xt ( ¡mt , 1, 2370 `CONST_BUF_LEN ( p -> tmp_buf ), 2371 SQLITE_TRANSIENT ); 2373 ià( SQLITE_DONE !ð `sql™e3_¡• ( ¡mt )) { 2374 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 2375 "»äesh†ock:", `sql™e3_”rmsg ( p -> cÚf . sql )); 2378 `webdav_lockdiscov”y ( ¤v , cÚ , p -> tmp_buf , "exclusive", "write", 0); 2380 cÚ -> h‰p_¡©us = 200; 2381 cÚ -> fže_fšished = 1; 2382  HANDLER_FINISHED ; 2385 cÚ -> h‰p_¡©us = 400; 2387  HANDLER_FINISHED ; 2392 cÚ -> h‰p_¡©us = 501; 2393  HANDLER_FINISHED ; 2395  HTTP_METHOD_UNLOCK : 2396 #ifdeà USE_LOCKS 2397 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , "Lock-Token"))) { 2398 bufãr * locktok’ = ds -> v®ue ; 2399 sql™e3_¡mt * ¡mt = p -> cÚf . ¡mt_»move_lock ; 2402 ià( locktok’ -> u£d < 4) { 2403 cÚ -> h‰p_¡©us = 400; 2405  HANDLER_FINISHED ; 2418 `bufãr_cÝy_¡ršg_Ën ( p -> tmp_buf , locktok’ -> ±r + 1,†ocktok’-> u£d - 3); 2420 `sql™e3_»£t ( ¡mt ); 2422 `sql™e3_bšd_‹xt ( ¡mt , 1, 2423 `CONST_BUF_LEN ( p -> tmp_buf ), 2424 SQLITE_TRANSIENT ); 2426 `sql™e3_bšd_‹xt ( ¡mt , 2, 2427 `CONST_BUF_LEN ( cÚ -> uri . ·th ), 2428 SQLITE_TRANSIENT ); 2430 ià( SQLITE_DONE !ð `sql™e3_¡• ( ¡mt )) { 2431 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 2432 "»movlock:", `sql™e3_”rmsg ( p -> cÚf . sql )); 2435 ià(0 =ð `sql™e3_chªges ( p -> cÚf . sql )) { 2436 cÚ -> h‰p_¡©us = 401; 2438 cÚ -> h‰p_¡©us = 204; 2440  HANDLER_FINISHED ; 2443 cÚ -> h‰p_¡©us = 400; 2445  HANDLER_FINISHED ; 2449 cÚ -> h‰p_¡©us = 501; 2450  HANDLER_FINISHED ; 2457  HANDLER_GO_ON ; 2458 } } 2463  $mod_webdav_¶ugš_š™ ( ¶ugš * p ) { 2464 p -> v”siÚ = LIGHTTPD_VERSION_ID ; 2465 p -> Çme = `bufãr_š™_¡ršg ("webdav"); 2467 p -> š™ = mod_webdav_š™ ; 2468 p -> hªdË_uri_þ—n = mod_webdav_uri_hªdËr ; 2469 p -> hªdË_physiÿl = mod_webdav_sub»que¡_hªdËr ; 2470 p -> £t_deçuÉs = mod_webdav_£t_deçuÉs ; 2471 p -> þ—nup = mod_webdav_ä“ ; 2473 p -> d©a = NULL ; 2476 } } @src/network.c 1  ~ 2  ~ 3  ~ 5  ~<”ºo.h > 6  ~ 7  ~ 8  ~<¡ršg.h > 9  ~<¡dlib.h > 10  ~ 12  ~"ÃtwÜk.h " 13  ~"fdev’t.h " 14  ~"log.h " 15  ~"cÚÃùiÚs.h " 16  ~"¶ugš.h " 17  ~"jobli¡.h " 19  ~"ÃtwÜk_back’ds.h " 20  ~"sys-mm­.h " 21  ~"sys-sock‘.h " 23 #ifdeà USE_OPENSSL 24  ~<Ý’s¦/s¦.h > 25  ~<Ý’s¦/”r.h > 26  ~<Ý’s¦/¿nd.h > 29 hªdËr_t $ÃtwÜk_£rv”_hªdË_fdev’t (* s , * cÚ‹xt ,  »v’ts ) { 30 £rv” * ¤v = (£rv” *) s ; 31 £rv”_sock‘ * ¤v_sock‘ = (£rv”_sock‘ *) cÚ‹xt ; 32 cÚÃùiÚ * cÚ ; 33  loÝs = 0; 35 `UNUSED ( cÚ‹xt ); 37 ià( »v’ts !ð FDEVENT_IN ) { 38 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdd", 40 ¤v_sock‘ -> fd , 41 »v’ts ); 42  HANDLER_ERROR ; 48  loÝs = 0;†oÝ < 100 && NULL !ð( cÚ = `cÚÃùiÚ_acû± ( ¤v , ¤v_sock‘ ));†oops++) { 49 hªdËr_t r ; 51 `cÚÃùiÚ_¡©e_machše ( ¤v , cÚ ); 53  r = `¶ugšs_ÿÎ_hªdË_jobli¡ ( ¤v , cÚ )) { 54  HANDLER_FINISHED : 55  HANDLER_GO_ON : 58 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "d", r ); 62  HANDLER_GO_ON ; 63 } } 65  $ÃtwÜk_£rv”_š™ ( £rv” * ¤v , bufãr * ho¡_tok’ , ¥ecific_cÚfig * s ) { 66  v® ; 67 sockËn_t addr_Ën ; 68 £rv”_sock‘ * ¤v_sock‘ ; 69 * ¥ ; 70  pÜt = 0; 71 cÚ¡ * ho¡ ; 72 bufãr * b ; 73  is_unix_domaš_sock‘ = 0; 74  fd ; 76 #ifdeà SO_ACCEPTFILTER 77  acû±_fž‹r_¬g aç ; 80 #ifdeà __WIN32 81 WORD wV”siÚReque¡ed ; 82 WSADATA w§D©a ; 83  ”r ; 85 wV”siÚReque¡ed = `MAKEWORD ( 2, 2 ); 87 ”r = `WSAS¹up Ð wV”siÚReque¡ed , & w§D©a ); 88 iàÐ ”r != 0 ) { 95 ¤v_sock‘ = `ÿÎoc (1, (*srv_socket)); 96 ¤v_sock‘ -> fd = -1; 98 ¤v_sock‘ -> ¤v_tok’ = `bufãr_š™ (); 99 `bufãr_cÝy_¡ršg_bufãr ( ¤v_sock‘ -> ¤v_tok’ , ho¡_tok’ ); 101 b = `bufãr_š™ (); 102 `bufãr_cÝy_¡ršg_bufãr ( b , ho¡_tok’ ); 107 ià( NULL =ð( ¥ = `¡¼chr ( b -> ±r , ':'))) { 108 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "v®uoà$SERVER[\"sock‘\"] ha tØb\":pÜt\".", b ); 113 ho¡ = b -> ±r ; 116 ià( b -> ±r [0] =ð'[' && *( ¥ -1) == ']') { 117 *( ¥ -1) = '\0'; 118 ho¡ ++; 120 s -> u£_v6 = 1; 123 *( ¥ ++) = '\0'; 125 pÜt = `¡¹Þ ( ¥ , NULL , 10); 127 ià( ho¡ [0] == '/') { 129 is_unix_domaš_sock‘ = 1; 130 } ià( pÜt == 0 ||…ort > 65535) { 131 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "p܈ouˆoà¿nge:", pÜt ); 136 ià(* ho¡ =ð'\0'èho¡ = NULL ; 138 ià( is_unix_domaš_sock‘ ) { 139 #ifdeà HAVE_SYS_UN_H 141 ¤v_sock‘ -> addr . ¶aš . §_çmžy = AF_UNIX ; 143 ià(-1 =ð( ¤v_sock‘ -> fd = `sock‘ (¤v_sock‘-> addr . ¶aš . §_çmžy , SOCK_STREAM , 0))) { 144 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sock‘ fažed:", `¡»¼Ü ( ”ºo )); 148 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 154 #ifdeà HAVE_IPV6 155 ià( s -> u£_v6 ) { 156 ¤v_sock‘ -> addr . ¶aš . §_çmžy = AF_INET6 ; 158 ià(-1 =ð( ¤v_sock‘ -> fd = `sock‘ (¤v_sock‘-> addr . ¶aš . §_çmžy , SOCK_STREAM , IPPROTO_TCP ))) { 159 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sock‘ fažed:", `¡»¼Ü ( ”ºo )); 162 ¤v_sock‘ -> u£_v6 = 1; 166 ià( ¤v_sock‘ -> fd == -1) { 167 ¤v_sock‘ -> addr . ¶aš . §_çmžy = AF_INET ; 168 ià(-1 =ð( ¤v_sock‘ -> fd = `sock‘ (¤v_sock‘-> addr . ¶aš . §_çmžy , SOCK_STREAM , IPPROTO_TCP ))) { 169 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sock‘ fažed:", `¡»¼Ü ( ”ºo )); 175 ¤v -> cur_fds = ¤v_sock‘ -> fd ; 177 v® = 1; 178 ià( `£tsockÝt ( ¤v_sock‘ -> fd , SOL_SOCKET , SO_REUSEADDR , & v® , (val)) < 0) { 179 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "sock‘sock݈çžed:", `¡»¼Ü ( ”ºo )); 183  ¤v_sock‘ -> addr . ¶aš . §_çmžy ) { 184 #ifdeà HAVE_IPV6 185  AF_INET6 : 186 `mem£t (& ¤v_sock‘ -> addr , 0, ( sockaddr_š6 )); 187 ¤v_sock‘ -> addr . v6 . sš6_çmžy = AF_INET6 ; 188 ià( ho¡ =ð NULL ) { 189 ¤v_sock‘ -> addr . v6 . sš6_addr = š6addr_ªy ; 191  addršfo hšts , * »s ; 192  r ; 194 `mem£t (& hšts , 0, (hints)); 196 hšts . ai_çmžy = AF_INET6 ; 197 hšts . ai_sockty³ = SOCK_STREAM ; 198 hšts . ai_´ÙocÞ = IPPROTO_TCP ; 200 ià(0 !ð( r = `g‘addršfo ( ho¡ , NULL , & hšts , & »s ))) { 201 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 203 `gai_¡»¼Ü ( r ), "'", ho¡ , "'"); 208 `memýy (&( ¤v_sock‘ -> addr ), »s -> ai_addr ,„es-> ai_add¾’ ); 210 `ä“addršfo ( »s ); 212 ¤v_sock‘ -> addr . v6 . sš6_pÜt = `htÚs ( pÜt ); 213 addr_Ën = ( sockaddr_š6 ); 216  AF_INET : 217 `mem£t (& ¤v_sock‘ -> addr , 0, ( sockaddr_š )); 218 ¤v_sock‘ -> addr . v4 . sš_çmžy = AF_INET ; 219 ià( ho¡ =ð NULL ) { 220 ¤v_sock‘ -> addr . v4 . sš_addr . s_addr = `htÚl ( INADDR_ANY ); 222  ho¡’t * he ; 223 ià( NULL =ð( he = `g‘ho¡byÇme ( ho¡ ))) { 224 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 226 h_”ºo , ho¡ ); 230 ià( he -> h_add¹y³ !ð AF_INET ) { 231 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "addr-ty³ !ðAF_INET: ", he -> h_add¹y³ ); 235 ià( he -> h_Ëngth !ð( š_addr )) { 236 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "addr-Ëngth !ðsizeof(š_addr): ", he -> h_Ëngth ); 240 `memýy (&( ¤v_sock‘ -> addr . v4 . sš_addr . s_addr ), he -> h_addr_li¡ [0], he-> h_Ëngth ); 242 ¤v_sock‘ -> addr . v4 . sš_pÜt = `htÚs ( pÜt ); 244 addr_Ën = ( sockaddr_š ); 247  AF_UNIX : 248 ¤v_sock‘ -> addr . un . sun_çmžy = AF_UNIX ; 249 `¡rýy ( ¤v_sock‘ -> addr . un . sun_·th , ho¡ ); 251 #ifdeà SUN_LEN 252 addr_Ën = `SUN_LEN (& ¤v_sock‘ -> addr . un ); 255 addr_Ën = `¡¾’ ( ho¡ è+ 1 + ( ¤v_sock‘ -> addr . un . sun_çmžy ); 259 ià(-1 !ð( fd = `cÚÃù ( ¤v_sock‘ ->fd, ( sockaddr *è&(¤v_sock‘-> addr ), addr_Ën ))) { 260 `þo£ ( fd ); 262 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 264 ho¡ ); 271  ”ºo ) { 272  ECONNREFUSED : 273 `uÆšk ( ho¡ ); 275  ENOENT : 278 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 280 ho¡ , `¡»¼Ü ( ”ºo )); 287 addr_Ën = 0; 292 ià(0 !ð `bšd ( ¤v_sock‘ -> fd , ( sockaddr *è&(¤v_sock‘-> addr ), addr_Ën )) { 293  ¤v_sock‘ -> addr . ¶aš . §_çmžy ) { 294  AF_UNIX : 295 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 297 ho¡ , `¡»¼Ü ( ”ºo )); 300 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssds", 302 ho¡ , pÜt , `¡»¼Ü ( ”ºo )); 308 ià(-1 =ð `li¡’ ( ¤v_sock‘ -> fd , 128 * 8)) { 309 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "li¡’ fažed: ", `¡»¼Ü ( ”ºo )); 313 ià( s -> is_s¦ ) { 314 #ifdeà USE_OPENSSL 315 ià( ¤v -> s¦_is_š™ == 0) { 316 `SSL_lßd_”rÜ_¡ršgs (); 317 `SSL_lib¿ry_š™ (); 318 ¤v -> s¦_is_š™ = 1; 320 ià(0 =ð `RAND_¡©us ()) { 321 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "SSL:", 327 ià( NULL =ð( s -> s¦_ùx = `SSL_CTX_Ãw ( `SSLv23_£rv”_m‘hod ()))) { 328 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "SSL:", 329 `ERR_”rÜ_¡ršg ( `ERR_g‘_”rÜ (), NULL )); 333 ià(! s -> s¦_u£_s¦v2 ) { 335 ià( SSL_OP_NO_SSLv2 !ð `SSL_CTX_£t_ÝtiÚs ( s -> s¦_ùx , SSL_OP_NO_SSLv2)) { 336 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "SSL:", 337 `ERR_”rÜ_¡ršg ( `ERR_g‘_”rÜ (), NULL )); 342 ià(! `bufãr_is_em±y ( s -> s¦_ch”_li¡ )) { 344 ià( `SSL_CTX_£t_ch”_li¡ ( s -> s¦_ùx , s-> s¦_ch”_li¡ -> ±r ) != 1) { 345 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "SSL:", 346 `ERR_”rÜ_¡ršg ( `ERR_g‘_”rÜ (), NULL )); 351 ià( `bufãr_is_em±y ( s -> s¦_³mfže )) { 352 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "ssl.pemfile haso be set"); 356 ià(! `bufãr_is_em±y ( s -> s¦_ÿ_fže )) { 357 ià(1 !ð `SSL_CTX_lßd_v”ify_loÿtiÚs ( s -> s¦_ùx , s-> s¦_ÿ_fže -> ±r , NULL )) { 358 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssb", "SSL:", 359 `ERR_”rÜ_¡ršg ( `ERR_g‘_”rÜ (), NULL ), s -> s¦_ÿ_fže ); 364 ià( `SSL_CTX_u£_û¹ifiÿ‹_fže ( s -> s¦_ùx , s-> s¦_³mfže -> ±r , SSL_FILETYPE_PEM ) < 0) { 365 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssb", "SSL:", 366 `ERR_”rÜ_¡ršg ( `ERR_g‘_”rÜ (), NULL ), s -> s¦_³mfže ); 370 ià( `SSL_CTX_u£_Priv©eKey_fže ( s -> s¦_ùx , s-> s¦_³mfže -> ±r , SSL_FILETYPE_PEM ) < 0) { 371 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssb", "SSL:", 372 `ERR_”rÜ_¡ršg ( `ERR_g‘_”rÜ (), NULL ), s -> s¦_³mfže ); 376 ià( `SSL_CTX_check_´iv©e_key ( s -> s¦_ùx ) != 1) { 377 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sssb", "SSL:", 379 `ERR_”rÜ_¡ršg ( `ERR_g‘_”rÜ (), NULL ), 380 s -> s¦_³mfže ); 383 `SSL_CTX_£t_deçuÉ_»ad_ah—d ( s -> s¦_ùx , 1); 384 `SSL_CTX_£t_mode ( s -> s¦_ùx , `SSL_CTX_g‘_mode (s->s¦_ùxè| SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER ); 386 ¤v_sock‘ -> s¦_ùx = s ->ssl_ctx; 389 `bufãr_ä“ ( ¤v_sock‘ -> ¤v_tok’ ); 390 `ä“ ( ¤v_sock‘ ); 392 `bufãr_ä“ ( b ); 394 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "SSL:", 400 #ifdeà SO_ACCEPTFILTER 405 `mem£t (& aç , 0, (afa)); 406 `¡rýy ( aç . af_Çme , "httpready"); 407 ià( `£tsockÝt ( ¤v_sock‘ -> fd , SOL_SOCKET , SO_ACCEPTFILTER , & aç , (afa)) < 0) { 408 ià( ”ºo !ð ENOENT ) { 409 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "ÿn'ˆ£ˆacû±-fž‹¸'h‰´—dy': ", `¡»¼Ü ( ”ºo )); 415 ¤v_sock‘ -> is_s¦ = s ->is_ssl; 416 ¤v_sock‘ -> fde_ndx = -1; 418 ià( ¤v -> ¤v_sock‘s . size == 0) { 419 ¤v -> ¤v_sock‘s . size = 4; 420 ¤v -> ¤v_sock‘s . u£d = 0; 421 ¤v -> ¤v_sock‘s . ±r = `m®loc (¤v->¤v_sock‘s. size * ( £rv”_sock‘ )); 422 } ià( ¤v -> ¤v_sock‘s . u£d =ð¤v->¤v_sock‘s. size ) { 423 ¤v -> ¤v_sock‘s . size += 4; 424 ¤v -> ¤v_sock‘s . ±r = `»®loc (¤v->¤v_sock‘s.±r, srv->¤v_sock‘s. size * ( £rv”_sock‘ )); 427 ¤v -> ¤v_sock‘s . ±r [¤v->¤v_sock‘s. u£d ++] = ¤v_sock‘ ; 429 `bufãr_ä“ ( b ); 432 } } 434  $ÃtwÜk_þo£ ( £rv” * ¤v ) { 435 size_t i ; 436  i = 0; i < ¤v -> ¤v_sock‘s . u£d ; i++) { 437 £rv”_sock‘ * ¤v_sock‘ = ¤v -> ¤v_sock‘s . ±r [ i ]; 439 ià( ¤v_sock‘ -> fd != -1) { 441 ià( ¤v_sock‘ -> fde_ndx != -1) { 442 `fdev’t_ev’t_d– ( ¤v -> ev , &( ¤v_sock‘ -> fde_ndx ), srv_sock‘-> fd ); 443 `fdev’t_uÄegi¡” ( ¤v -> ev , ¤v_sock‘ -> fd ); 446 `þo£ ( ¤v_sock‘ -> fd ); 449 `bufãr_ä“ ( ¤v_sock‘ -> ¤v_tok’ ); 451 `ä“ ( ¤v_sock‘ ); 454 `ä“ ( ¤v -> ¤v_sock‘s . ±r ); 457 } } 460 mNETWORK_BACKEND_UNSET , 461 mNETWORK_BACKEND_WRITE , 462 mNETWORK_BACKEND_WRITEV , 463 mNETWORK_BACKEND_LINUX_SENDFILE , 464 mNETWORK_BACKEND_FREEBSD_SENDFILE , 465 mNETWORK_BACKEND_SOLARIS_SENDFILEV 466 } tÃtwÜk_back’d_t ; 468  $ÃtwÜk_š™ ( £rv” * ¤v ) { 469 bufãr * b ; 470 size_t i ; 471 ÃtwÜk_back’d_t back’d ; 473  snb_m­ { 474 ÃtwÜk_back’d_t nb ; 475 cÚ¡ * Çme ; 476 } ÃtwÜk_back’ds [] = { 478 #ià defšed USE_LINUX_SENDFILE 479 { NETWORK_BACKEND_LINUX_SENDFILE , "linux-sendfile" }, 481 #ià defšed USE_FREEBSD_SENDFILE 482 { NETWORK_BACKEND_FREEBSD_SENDFILE , "freebsd-sendfile" }, 484 #ià defšed USE_SOLARIS_SENDFILEV 485 { NETWORK_BACKEND_SOLARIS_SENDFILEV , "solaris-sendfilev" }, 487 #ià defšed USE_WRITEV 488 { NETWORK_BACKEND_WRITEV , "writev" }, 490 { NETWORK_BACKEND_WRITE , "write" }, 491 { NETWORK_BACKEND_UNSET , NULL } 494 b = `bufãr_š™ (); 496 `bufãr_cÝy_¡ršg_bufãr ( b , ¤v -> ¤vcÚf . bšdho¡ ); 497 `bufãr_­³nd_¡ršg ( b , ":"); 498 `bufãr_­³nd_lÚg ( b , ¤v -> ¤vcÚf . pÜt ); 500 ià(0 !ð `ÃtwÜk_£rv”_š™ ( ¤v , b , srv-> cÚfig_¡Üage [0])) { 503 `bufãr_ä“ ( b ); 505 #ifdeà USE_OPENSSL 506 ¤v -> ÃtwÜk_s¦_back’d_wr™e = ÃtwÜk_wr™e_chunkqueue_Ý’s¦ ; 510 back’d = ÃtwÜk_back’ds [0]. nb ; 513 ià(! `bufãr_is_em±y ( ¤v -> ¤vcÚf . ÃtwÜk_back’d )) { 514  i = 0; ÃtwÜk_back’ds [i]. Çme ; i++) { 516 ià( `bufãr_is_equ®_¡ršg ( ¤v -> ¤vcÚf . ÃtwÜk_back’d , ÃtwÜk_back’ds [ i ]. Çme , `¡¾’ (network_backends[i].name))) { 517 back’d = ÃtwÜk_back’ds [ i ]. nb ; 521 ià( NULL =ð ÃtwÜk_back’ds [ i ]. Çme ) { 524 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 526 ¤v -> ¤vcÚf . ÃtwÜk_back’d ); 532  back’d ) { 533  NETWORK_BACKEND_WRITE : 534 ¤v -> ÃtwÜk_back’d_wr™e = ÃtwÜk_wr™e_chunkqueue_wr™e ; 536 #ifdeà USE_WRITEV 537  NETWORK_BACKEND_WRITEV : 538 ¤v -> ÃtwÜk_back’d_wr™e = ÃtwÜk_wr™e_chunkqueue_wr™ev ; 541 #ifdeà USE_LINUX_SENDFILE 542  NETWORK_BACKEND_LINUX_SENDFILE : 543 ¤v -> ÃtwÜk_back’d_wr™e = ÃtwÜk_wr™e_chunkqueue_lšux£ndfže ; 546 #ifdeà USE_FREEBSD_SENDFILE 547  NETWORK_BACKEND_FREEBSD_SENDFILE : 548 ¤v -> ÃtwÜk_back’d_wr™e = ÃtwÜk_wr™e_chunkqueue_ä“bsd£ndfže ; 551 #ifdeà USE_SOLARIS_SENDFILEV 552  NETWORK_BACKEND_SOLARIS_SENDFILEV : 553 ¤v -> ÃtwÜk_back’d_wr™e = ÃtwÜk_wr™e_chunkqueue_sÞ¬is£ndfžev ; 561  i = 1; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 562 d©a_cÚfig * dc = (d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ]; 563 ¥ecific_cÚfig * s = ¤v -> cÚfig_¡Üage [ i ]; 564 size_t j ; 567 ià( COMP_SERVER_SOCKET !ð dc -> comp ) ; 569 ià( dc -> cÚd !ð CONFIG_COND_EQ ) { 570 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "only == is‡llowed for $SERVER[\"socket\"]."); 577  j = 0; j < ¤v -> ¤v_sock‘s . u£d ; j++) { 578 ià( `bufãr_is_equ® ( ¤v -> ¤v_sock‘s . ±r [ j ]-> ¤v_tok’ , dc -> ¡ršg )) { 583 ià( j =ð ¤v -> ¤v_sock‘s . u£d ) { 584 ià(0 !ð `ÃtwÜk_£rv”_š™ ( ¤v , dc -> ¡ršg , s ))  -1; 589 } } 591  $ÃtwÜk_»gi¡”_fdev’ts ( £rv” * ¤v ) { 592 size_t i ; 594 ià(-1 =ð `fdev’t_»£t ( ¤v -> ev )) { 599  i = 0; i < ¤v -> ¤v_sock‘s . u£d ; i++) { 600 £rv”_sock‘ * ¤v_sock‘ = ¤v -> ¤v_sock‘s . ±r [ i ]; 602 `fdev’t_»gi¡” ( ¤v -> ev , ¤v_sock‘ -> fd , ÃtwÜk_£rv”_hªdË_fdev’t , srv_socket); 603 `fdev’t_ev’t_add ( ¤v -> ev , &( ¤v_sock‘ -> fde_ndx ), srv_sock‘-> fd , FDEVENT_IN ); 606 } } 608  $ÃtwÜk_wr™e_chunkqueue ( £rv” * ¤v , cÚÃùiÚ * cÚ , chunkqueue * cq ) { 609  »t = -1; 610 off_t wr™‹n = 0; 611 #ifdeà TCP_CORK 612  cÜked = 0; 614 £rv”_sock‘ * ¤v_sock‘ = cÚ ->srv_socket; 616 ià( cÚ -> cÚf . glob®_kby‹s_³r_£cÚd && 617 *( cÚ -> cÚf . glob®_by‹s_³r_£cÚd_út_±r è> cÚ->cÚf. glob®_kby‹s_³r_£cÚd * 1024) { 620 cÚ -> Œaffic_lim™_»ached = 1; 621 `jobli¡_­³nd ( ¤v , cÚ ); 626 wr™‹n = cq -> by‹s_out ; 628 #ifdeà TCP_CORK 632 ià( cq -> fœ¡ && cq->fœ¡-> Ãxt ) { 633 cÜked = 1; 634 `£tsockÝt ( cÚ -> fd , IPPROTO_TCP , TCP_CORK , & cÜked , (corked)); 638 ià( ¤v_sock‘ -> is_s¦ ) { 639 #ifdeà USE_OPENSSL 640 »t = ¤v -> `ÃtwÜk_s¦_back’d_wr™e (¤v, cÚ , cÚ-> s¦ , cq ); 643 »t = ¤v -> `ÃtwÜk_back’d_wr™e (¤v, cÚ , cÚ-> fd , cq ); 646 ià( »t >= 0) { 647 `chunkqueue_»move_fšished_chunks ( cq ); 648 »t = `chunkqueue_is_em±y ( cq ) ? 0 : 1; 651 #ifdeà TCP_CORK 652 ià( cÜked ) { 653 cÜked = 0; 654 `£tsockÝt ( cÚ -> fd , IPPROTO_TCP , TCP_CORK , & cÜked , (corked)); 658 wr™‹n = cq -> by‹s_out - written; 659 cÚ -> by‹s_wr™‹n +ð wr™‹n ; 660 cÚ -> by‹s_wr™‹n_cur_£cÚd +ð wr™‹n ; 662 *( cÚ -> cÚf . glob®_by‹s_³r_£cÚd_út_±r è+ð wr™‹n ; 664 ià( cÚ -> cÚf . kby‹s_³r_£cÚd && 665 ( cÚ -> by‹s_wr™‹n_cur_£cÚd > cÚ-> cÚf . kby‹s_³r_£cÚd * 1024)) { 668 cÚ -> Œaffic_lim™_»ached = 1; 669 `jobli¡_­³nd ( ¤v , cÚ ); 671  »t ; 672 } } @src/network.h 1 #iâdeà _NETWORK_H_ 2  #_NETWORK_H_ ) 4  ~"£rv”.h " 6  ÃtwÜk_wr™e_chunkqueue ( £rv” * ¤v , cÚÃùiÚ * cÚ , chunkqueue * c ); 8  ÃtwÜk_š™ ( £rv” * ¤v ); 9  ÃtwÜk_þo£ ( £rv” * ¤v ); 11  ÃtwÜk_»gi¡”_fdev’ts ( £rv” * ¤v ); @src/network_backends.h 1 #iâdeà _NETWORK_BACKENDS_H_ 2  #_NETWORK_BACKENDS_H_ ) 4 #ifdeà HAVE_CONFIG_H 5  ~"cÚfig.h " 8  ~ 11 #ià defšed HAVE_SYS_SENDFILE_H && defšed HAVE_SENDFILE && (!defšed _LARGEFILE_SOURCE || defšed HAVE_SENDFILE64 è&& defšed HAVE_WRITEV && defšed( __lšux__ è&& !defšed HAVE_SENDFILE_BROKEN 12  #USE_LINUX_SENDFILE ) 13  ~ 14  ~ 17 #ià defšed HAVE_SYS_UIO_H && defšed HAVE_SENDFILE && defšed HAVE_WRITEV && (defšed( __F»eBSD__ è|| defšed( __D¿gÚFly__ )) 18  #USE_FREEBSD_SENDFILE ) 19  ~ 22 #ià defšed HAVE_SYS_SENDFILE_H && defšed HAVE_SENDFILEV && defšed HAVE_WRITEV && defšed( __sun ) 23  #USE_SOLARIS_SENDFILEV ) 24  ~ 25  ~ 28 #ià defšed HAVE_SYS_UIO_H && defšed HAVE_WRITEV 29  #USE_WRITEV ) 30  ~ 33 #ià defšed HAVE_SYS_MMAN_H && defšed HAVE_MMAP 34  #USE_MMAP ) 35  ~ 37 #iâdeà MAP_FAILED 38  #MAP_FAILED -1 ) 42 #ià defšed HAVE_SYS_UIO_H && defšed HAVE_WRITEV && defšed HAVE_SEND_FILE && defšed( __aix ) 43  #USE_AIX_SENDFILE ) 46  ~"ba£.h " 49  ÃtwÜk_wr™e_chunkqueue_wr™e ( £rv” * ¤v , cÚÃùiÚ * cÚ ,  fd , chunkqueue * cq ); 50  ÃtwÜk_wr™e_chunkqueue_wr™ev ( £rv” * ¤v , cÚÃùiÚ * cÚ ,  fd , chunkqueue * cq ); 51  ÃtwÜk_wr™e_chunkqueue_lšux£ndfže ( £rv” * ¤v , cÚÃùiÚ * cÚ ,  fd , chunkqueue * cq ); 52  ÃtwÜk_wr™e_chunkqueue_ä“bsd£ndfže ( £rv” * ¤v , cÚÃùiÚ * cÚ ,  fd , chunkqueue * cq ); 53  ÃtwÜk_wr™e_chunkqueue_sÞ¬is£ndfžev ( £rv” * ¤v , cÚÃùiÚ * cÚ ,  fd , chunkqueue * cq ); 54 #ifdeà USE_OPENSSL 55  ÃtwÜk_wr™e_chunkqueue_Ý’s¦ ( £rv” * ¤v , cÚÃùiÚ * cÚ , SSL * s¦ , chunkqueue * cq ); @src/network_freebsd_sendfile.c 1  ~"ÃtwÜk_back’ds.h " 3 #ifdeà USE_FREEBSD_SENDFILE 5  ~ 6  ~ 7  ~ 8  ~ 9  ~ 11  ~<Ãtš‘/š.h > 12  ~<Ãtš‘/tý.h > 14  ~<”ºo.h > 15  ~ 16  ~ 17  ~<Ãtdb.h > 18  ~<¡ršg.h > 19  ~<¡dlib.h > 21  ~"ÃtwÜk.h " 22  ~"fdev’t.h " 23  ~"log.h " 24  ~"¡©_ÿche.h " 27 #iâdeà UIO_MAXIOV 28 #ià defšed ( __F»eBSD__ è|| defšed( __D¿gÚFly__ ) 30  #UIO_MAXIOV 1024 ) 34  $ÃtwÜk_wr™e_chunkqueue_ä“bsd£ndfže ( £rv” * ¤v , cÚÃùiÚ * cÚ ,  fd , chunkqueue * cq ) { 35 chunk * c ; 36 size_t chunks_wr™‹n = 0; 38  c = cq -> fœ¡ ; c; c = c-> Ãxt , chunks_wr™‹n ++) { 39  chunk_fšished = 0; 41  c -> ty³ ) { 42  MEM_CHUNK : { 43 * off£t ; 44 size_t toS’d ; 45 ssize_t r ; 47 size_t num_chunks , i ; 48  iovec chunks [ UIO_MAXIOV ]; 49 chunk * tc ; 50 size_t num_by‹s = 0; 59  num_chunks = 0, tc = c ;ø&&c-> ty³ =ð MEM_CHUNK &&‚um_chunk < UIO_MAXIOV ;‚um_chunks++,øðtc-> Ãxt ); 61  tc = c , i = 0; i < num_chunks ;øðtc-> Ãxt , i++) { 62 ià( tc -> mem -> u£d == 0) { 63 chunks [ i ]. iov_ba£ = tc -> mem -> ±r ; 64 chunks [ i ]. iov_Ën = 0; 66 off£t = tc -> mem -> ±r +c->offset; 67 toS’d = tc -> mem -> u£d - 1 -c-> off£t ; 69 chunks [ i ]. iov_ba£ = off£t ; 72 ià( toS’d > SSIZE_MAX || 73 num_by‹s + toS’d > SSIZE_MAX ) { 74 chunks [ i ]. iov_Ën = SSIZE_MAX - num_by‹s ; 76 num_chunks = i + 1; 79 chunks [ i ]. iov_Ën = toS’d ; 82 num_by‹s +ð toS’d ; 86 ià(( r = `wr™ev ( fd , chunks , num_chunks )) < 0) { 87  ”ºo ) { 88  EAGAIN : 89  EINTR : 90 r = 0; 92  ENOTCONN : 93  EPIPE : 94  ECONNRESET : 97 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", 98 "wr™ev fažed:", `¡»¼Ü ( ”ºo ), fd ); 103 r = 0; 107 cq -> by‹s_out +ð r ; 109  i = 0, tc = c ; i < num_chunks ; i++,øðtc-> Ãxt ) { 110 ià( r >ð( ssize_t ) chunks [ i ]. iov_Ën ) { 112 r -ð chunks [ i ]. iov_Ën ; 113 tc -> off£t +ð chunks [ i ]. iov_Ën ; 115 ià( chunk_fšished ) { 117 chunks_wr™‹n ++; 118 c = c-> Ãxt ; 121 chunk_fšished ++; 126 tc -> off£t +ð r ; 127 chunk_fšished = 0; 135  FILE_CHUNK : { 136 off_t off£t , r ; 137 size_t toS’d ; 138 ¡©_ÿche_’Œy * sû = NULL ; 140 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , c -> fže . Çme , & sû )) { 141 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 142 `¡»¼Ü ( ”ºo ), c -> fže . Çme ); 146 off£t = c -> fže . ¡¬t + c->offset; 148 toS’d = c -> fže . Ëngth - c-> off£t > ((1 << 30) - 1) ? 149 ((1 << 30è- 1è: c -> fže . Ëngth - c-> off£t ; 151 ià(-1 =ð c -> fže . fd ) { 152 ià(-1 =ð( c -> fže . fd = `Ý’ (c->fže. Çme -> ±r , O_RDONLY ))) { 153 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "Ý’ fažed: ", `¡»¼Ü ( ”ºo )); 158 #ifdeà FD_CLOEXEC 159 `fúŽ ( c -> fže . fd , F_SETFD , FD_CLOEXEC ); 163 r = 0; 166 ià(-1 =ð `£ndfže ( c -> fže . fd , fd, off£t , toS’d , NULL , & r , 0)) { 167  ”ºo ) { 168  EAGAIN : 170  ENOTCONN : 173 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", "£ndfže: ", `¡»¼Ü ( ”ºo ),ƒrrno); 178 ià( r == 0) { 179  Û¼no = ”ºo ; 185 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , c -> fže . Çme , & sû )) { 190 ià( off£t >ð sû -> ¡ . ¡_size ) { 192 ”ºo = Û¼no ; 197 ”ºo = Û¼no ; 201 c -> off£t +ð r ; 202 cq -> by‹s_out +ð r ; 204 ià( c -> off£t =ðc-> fže . Ëngth ) { 205 chunk_fšished = 1; 212 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ds", c , "type‚ot known"); 217 ià(! chunk_fšished ) { 224  chunks_wr™‹n ; 225 } } @src/network_linux_sendfile.c 1  ~"ÃtwÜk_back’ds.h " 3 #ifdeà USE_LINUX_SENDFILE 4  ~ 5  ~ 6  ~ 7  ~ 8  ~ 10  ~<Ãtš‘/š.h > 11  ~<Ãtš‘/tý.h > 13  ~<”ºo.h > 14  ~ 15  ~ 16  ~<Ãtdb.h > 17  ~<¡ršg.h > 18  ~<¡dlib.h > 19  ~ 21  ~"ÃtwÜk.h " 22  ~"fdev’t.h " 23  ~"log.h " 24  ~"¡©_ÿche.h " 27 #undeà HAVE_POSIX_FADVISE 29  $ÃtwÜk_wr™e_chunkqueue_lšux£ndfže ( £rv” * ¤v , cÚÃùiÚ * cÚ ,  fd , chunkqueue * cq ) { 30 chunk * c ; 31 size_t chunks_wr™‹n = 0; 33  c = cq -> fœ¡ ; c; c = c-> Ãxt , chunks_wr™‹n ++) { 34  chunk_fšished = 0; 36  c -> ty³ ) { 37  MEM_CHUNK : { 38 * off£t ; 39 size_t toS’d ; 40 ssize_t r ; 42 size_t num_chunks , i ; 43  iovec chunks [ UIO_MAXIOV ]; 44 chunk * tc ; 45 size_t num_by‹s = 0; 54  num_chunks = 0, tc = c ; 55 tc &&c-> ty³ =ð MEM_CHUNK && num_chunks < UIO_MAXIOV ; 56 tc =c-> Ãxt , num_chunks ++); 58  tc = c , i = 0; i < num_chunks ;øðtc-> Ãxt , i++) { 59 ià( tc -> mem -> u£d == 0) { 60 chunks [ i ]. iov_ba£ = tc -> mem -> ±r ; 61 chunks [ i ]. iov_Ën = 0; 63 off£t = tc -> mem -> ±r +c->offset; 64 toS’d = tc -> mem -> u£d - 1 -c-> off£t ; 66 chunks [ i ]. iov_ba£ = off£t ; 69 ià( toS’d > SSIZE_MAX || 70 num_by‹s + toS’d > SSIZE_MAX ) { 71 chunks [ i ]. iov_Ën = SSIZE_MAX - num_by‹s ; 73 num_chunks = i + 1; 76 chunks [ i ]. iov_Ën = toS’d ; 79 num_by‹s +ð toS’d ; 83 ià(( r = `wr™ev ( fd , chunks , num_chunks )) < 0) { 84  ”ºo ) { 85  EAGAIN : 86  EINTR : 87 r = 0; 89  EPIPE : 90  ECONNRESET : 93 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", 94 "wr™ev fažed:", `¡»¼Ü ( ”ºo ), fd ); 101 cq -> by‹s_out +ð r ; 103  i = 0, tc = c ; i < num_chunks ; i++,øðtc-> Ãxt ) { 104 ià( r >ð( ssize_t ) chunks [ i ]. iov_Ën ) { 106 r -ð chunks [ i ]. iov_Ën ; 107 tc -> off£t +ð chunks [ i ]. iov_Ën ; 109 ià( chunk_fšished ) { 111 chunks_wr™‹n ++; 112 c = c-> Ãxt ; 115 chunk_fšished ++; 120 tc -> off£t +ð r ; 121 chunk_fšished = 0; 129  FILE_CHUNK : { 130 ssize_t r ; 131 off_t off£t ; 132 size_t toS’d ; 133 ¡©_ÿche_’Œy * sû = NULL ; 135 off£t = c -> fže . ¡¬t + c->offset; 137 toS’d = c -> fže . Ëngth - c-> off£t > ((1 << 30) - 1) ? 138 ((1 << 30è- 1è: c -> fže . Ëngth - c-> off£t ; 141 ià(-1 =ð c -> fže . fd ) { 142 ià(-1 =ð( c -> fže . fd = `Ý’ (c->fže. Çme -> ±r , O_RDONLY ))) { 143 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "Ý’ fažed: ", `¡»¼Ü ( ”ºo )); 147 #ifdeà FD_CLOEXEC 148 `fúŽ ( c -> fže . fd , F_SETFD , FD_CLOEXEC ); 150 #ifdeà HAVE_POSIX_FADVISE 152 ià(-1 =ð `posix_çdvi£ ( c -> fže . fd , 0, 0, POSIX_FADV_SEQUENTIAL )) { 153 ià( ENOSYS !𠔺o ) { 154 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", 155 "posix_çdvi£ fažed:", `¡»¼Ü ( ”ºo ), c -> fže . fd ); 161 ià(-1 =ð( r = `£ndfže ( fd , c -> fže .fd, & off£t , toS’d ))) { 162  ”ºo ) { 163  EAGAIN : 164  EINTR : 166 r = 0; 168  EPIPE : 169  ECONNRESET : 172 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", 173 "£ndfžçžed:", `¡»¼Ü ( ”ºo ), fd ); 176 } ià( r == 0) { 177  Û¼no = ”ºo ; 183 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , c -> fže . Çme , & sû )) { 188 ià( off£t > sû -> ¡ . ¡_size ) { 190 ”ºo = Û¼no ; 195 ”ºo = Û¼no ; 199 #ifdeà HAVE_POSIX_FADVISE 201  #K * 1024 ) 202  #M * 1024 K ) 203  #READ_AHEAD 4 M ) 205 ià(( c -> off£t & ~( READ_AHEAD - 1)è!ð((c->off£ˆ+ r ) & ~(READ_AHEAD - 1))) { 207 ià(-1 =ð `posix_çdvi£ ( c -> fže . fd , (c-> off£t + r è& ~( READ_AHEAD - 1), READ_AHEAD, POSIX_FADV_NOREUSE )) { 208 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", 209 "posix_çdvi£ fažed:", `¡»¼Ü ( ”ºo ), c -> fže . fd ); 215 c -> off£t +ð r ; 216 cq -> by‹s_out +ð r ; 218 ià( c -> off£t =ðc-> fže . Ëngth ) { 219 chunk_fšished = 1; 223 ià( c -> fže . fd != -1) { 224 `þo£ ( c -> fže . fd ); 225 c -> fže . fd = -1; 233 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ds", c , "type‚ot known"); 238 ià(! chunk_fšished ) { 245  chunks_wr™‹n ; 246 } } 250 $ÃtwÜk_lšux£ndfže_š™ () { 251 p -> wr™e = ÃtwÜk_lšux£ndfže_wr™e_chunk£t ; 252 } } @src/network_openssl.c 1  ~"ÃtwÜk_back’ds.h " 3 #ifdeà USE_OPENSSL 4  ~ 5  ~ 6  ~ 7  ~ 8  ~ 10  ~<Ãtš‘/š.h > 11  ~<Ãtš‘/tý.h > 13  ~<”ºo.h > 14  ~ 15  ~ 16  ~<Ãtdb.h > 17  ~<¡ršg.h > 18  ~<¡dlib.h > 19  ~ 21  ~"ÃtwÜk.h " 22  ~"fdev’t.h " 23  ~"log.h " 24  ~"¡©_ÿche.h " 26  ~<Ý’s¦/s¦.h > 27  ~<Ý’s¦/”r.h > 29  $ÃtwÜk_wr™e_chunkqueue_Ý’s¦ ( £rv” * ¤v , cÚÃùiÚ * cÚ , SSL * s¦ , chunkqueue * cq ) { 30  s¦_r ; 31 chunk * c ; 32 size_t chunks_wr™‹n = 0; 49  #LOCAL_SEND_BUFSIZE (64 * 1024) ) 50 * loÿl_£nd_bufãr = NULL ; 57 ià( cÚ -> k“p_®ive == 0) { 58 `SSL_£t_shutdown ( s¦ , SSL_RECEIVED_SHUTDOWN ); 61  c = cq -> fœ¡ ; c; c = c-> Ãxt ) { 62  chunk_fšished = 0; 64  c -> ty³ ) { 65  MEM_CHUNK : { 66 * off£t ; 67 size_t toS’d ; 68 ssize_t r ; 70 ià( c -> mem -> u£d == 0 || c->mem->used == 1) { 71 chunk_fšished = 1; 75 off£t = c -> mem -> ±r + c->offset; 76 toS’d = c -> mem -> u£d - 1 - c-> off£t ; 88 ià(( r = `SSL_wr™e ( s¦ , off£t , toS’d )) <= 0) { 89  ”r ; 91 ( s¦_r = `SSL_g‘_”rÜ ( s¦ , r ))) { 92  SSL_ERROR_WANT_WRITE : 94  SSL_ERROR_SYSCALL : 96 ià(0 !ð( ”r = `ERR_g‘_”rÜ ())) { 98 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdds", "SSL:", 99 s¦_r , r , 100 `ERR_”rÜ_¡ršg ( ”r , NULL )); 101 } ( ”r = `ERR_g‘_”rÜ ())); 102 } ià( r == -1) { 104  ”ºo ) { 105  EPIPE : 106  ECONNRESET : 109 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sddds", "SSL:", 110 s¦_r , r , ”ºo , 111 `¡»¼Ü ( ”ºo )); 116 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sddds", "SSL (error):", 117 s¦_r , r , ”ºo , 118 `¡»¼Ü ( ”ºo )); 122  SSL_ERROR_ZERO_RETURN : 125 ià( r == 0)  -2; 129 ( ”r = `ERR_g‘_”rÜ ())) { 130 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdds", "SSL:", 131 s¦_r , r , 132 `ERR_”rÜ_¡ršg ( ”r , NULL )); 138 c -> off£t +ð r ; 139 cq -> by‹s_out +ð r ; 142 ià( c -> off£t =ð( off_t )c-> mem -> u£d - 1) { 143 chunk_fšished = 1; 148  FILE_CHUNK : { 149 * s ; 150 ssize_t r ; 151 ¡©_ÿche_’Œy * sû = NULL ; 152  ifd ; 153  wr™e_wa™ = 0; 155 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , c -> fže . Çme , & sû )) { 156 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 157 `¡»¼Ü ( ”ºo ), c -> fže . Çme ); 161 ià( NULL =ð loÿl_£nd_bufãr ) { 162 loÿl_£nd_bufãr = `m®loc ( LOCAL_SEND_BUFSIZE ); 163 `as£¹ ( loÿl_£nd_bufãr ); 167 off_t off£t = c -> fže . ¡¬t + c->offset; 168 off_t toS’d = c -> fže . Ëngth - c-> off£t ; 170 ià( toS’d > LOCAL_SEND_BUFSIZE )oSend = LOCAL_SEND_BUFSIZE; 172 ià(-1 =ð( ifd = `Ý’ ( c -> fže . Çme -> ±r , O_RDONLY ))) { 173 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "Ý’ fažed:", `¡»¼Ü ( ”ºo )); 179 `l£ek ( ifd , off£t , SEEK_SET ); 180 ià(-1 =ð( toS’d = `»ad ( ifd , loÿl_£nd_bufãr ,oSend))) { 181 `þo£ ( ifd ); 182 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "»ad fažed:", `¡»¼Ü ( ”ºo )); 186 s = loÿl_£nd_bufãr ; 188 `þo£ ( ifd ); 190 ià(( r = `SSL_wr™e ( s¦ , s , toS’d )) <= 0) { 191  ”r ; 193 ( s¦_r = `SSL_g‘_”rÜ ( s¦ , r ))) { 194  SSL_ERROR_WANT_WRITE : 195 wr™e_wa™ = 1; 197  SSL_ERROR_SYSCALL : 199 ià(0 !ð( ”r = `ERR_g‘_”rÜ ())) { 201 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdds", "SSL:", 202 s¦_r , r , 203 `ERR_”rÜ_¡ršg ( ”r , NULL )); 204 } ( ”r = `ERR_g‘_”rÜ ())); 205 } ià( r == -1) { 207  ”ºo ) { 208  EPIPE : 209  ECONNRESET : 212 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sddds", "SSL:", 213 s¦_r , r , ”ºo , 214 `¡»¼Ü ( ”ºo )); 219 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sddds", "SSL (error):", 220 s¦_r , r , ”ºo , 221 `¡»¼Ü ( ”ºo )); 225  SSL_ERROR_ZERO_RETURN : 228 ià( r == 0)  -2; 232 ( ”r = `ERR_g‘_”rÜ ())) { 233 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdds", "SSL:", 234 s¦_r , r , 235 `ERR_”rÜ_¡ršg ( ”r , NULL )); 241 c -> off£t +ð r ; 242 cq -> by‹s_out +ð r ; 245 ià( c -> off£t =ðc-> fže . Ëngth ) { 246 chunk_fšished = 1; 248 } ! chunk_fšished && ! wr™e_wa™ ); 253 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "type‚ot known"); 258 ià(! chunk_fšished ) { 264 chunks_wr™‹n ++; 267  chunks_wr™‹n ; 268 } } 272 $ÃtwÜk_Ý’s¦_š™ () { 273 p -> wr™e_s¦ = ÃtwÜk_Ý’s¦_wr™e_chunk£t ; 274 } } @src/network_solaris_sendfilev.c 1  ~"ÃtwÜk_back’ds.h " 3 #ifdeà USE_SOLARIS_SENDFILEV 5  ~ 6  ~ 7  ~ 8  ~ 9  ~ 11  ~<Ãtš‘/š.h > 12  ~<Ãtš‘/tý.h > 14  ~<”ºo.h > 15  ~ 16  ~ 17  ~<Ãtdb.h > 18  ~<¡ršg.h > 19  ~<¡dlib.h > 20  ~ 22  ~"ÃtwÜk.h " 23  ~"fdev’t.h " 24  ~"log.h " 25  ~"¡©_ÿche.h " 27 #iâdeà UIO_MAXIOV 28  #UIO_MAXIOV IOV_MAX ) 41  $ÃtwÜk_wr™e_chunkqueue_sÞ¬is£ndfžev ( £rv” * ¤v , cÚÃùiÚ * cÚ ,  fd , chunkqueue * cq ) { 42 chunk * c ; 43 size_t chunks_wr™‹n = 0; 45  c = cq -> fœ¡ ; c; c = c-> Ãxt , chunks_wr™‹n ++) { 46  chunk_fšished = 0; 48  c -> ty³ ) { 49  MEM_CHUNK : { 50 * off£t ; 51 size_t toS’d ; 52 ssize_t r ; 54 size_t num_chunks , i ; 55  iovec chunks [ UIO_MAXIOV ]; 56 chunk * tc ; 58 size_t num_by‹s = 0; 67  num_chunks = 0, tc = c ;ø&&c-> ty³ =ð MEM_CHUNK &&‚um_chunk < UIO_MAXIOV ;‚um_chunks++,øðtc-> Ãxt ); 69  tc = c , i = 0; i < num_chunks ;øðtc-> Ãxt , i++) { 70 ià( tc -> mem -> u£d == 0) { 71 chunks [ i ]. iov_ba£ = tc -> mem -> ±r ; 72 chunks [ i ]. iov_Ën = 0; 74 off£t = tc -> mem -> ±r +c->offset; 75 toS’d = tc -> mem -> u£d - 1 -c-> off£t ; 77 chunks [ i ]. iov_ba£ = off£t ; 80 ià( toS’d > SSIZE_MAX || 81 num_by‹s + toS’d > SSIZE_MAX ) { 82 chunks [ i ]. iov_Ën = SSIZE_MAX - num_by‹s ; 84 num_chunks = i + 1; 87 chunks [ i ]. iov_Ën = toS’d ; 90 num_by‹s +ð toS’d ; 94 ià(( r = `wr™ev ( fd , chunks , num_chunks )) < 0) { 95  ”ºo ) { 96  EAGAIN : 97  EINTR : 98 r = 0; 100  EPIPE : 101  ECONNRESET : 104 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", 105 "wr™ev fažed:", `¡»¼Ü ( ”ºo ), fd ); 112 cq -> by‹s_out +ð r ; 114  i = 0, tc = c ; i < num_chunks ; i++,øðtc-> Ãxt ) { 115 ià( r >ð( ssize_t ) chunks [ i ]. iov_Ën ) { 117 r -ð chunks [ i ]. iov_Ën ; 118 tc -> off£t +ð chunks [ i ]. iov_Ën ; 120 ià( chunk_fšished ) { 122 chunks_wr™‹n ++; 123 c = c-> Ãxt ; 126 chunk_fšished ++; 131 tc -> off£t +ð r ; 132 chunk_fšished = 0; 140  FILE_CHUNK : { 141 ssize_t r ; 142 off_t off£t ; 143 size_t toS’d , wr™‹n ; 144 £ndfževec_t fvec ; 145 ¡©_ÿche_’Œy * sû = NULL ; 146  ifd ; 148 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , c -> fže . Çme , & sû )) { 149 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 150 `¡»¼Ü ( ”ºo ), c -> fže . Çme ); 154 off£t = c -> fže . ¡¬t + c->offset; 155 toS’d = c -> fže . Ëngth - c-> off£t ; 157 ià( off£t > sû -> ¡ . ¡_size ) { 158 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "fžwa shršked:", c -> fže . Çme ); 163 ià(-1 =ð( ifd = `Ý’ ( c -> fže . Çme -> ±r , O_RDONLY ))) { 164 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "Ý’ fažed: ", `¡»¼Ü ( ”ºo )); 169 fvec . sfv_fd = ifd ; 170 fvec . sfv_æag = 0; 171 fvec . sfv_off = off£t ; 172 fvec . sfv_Ën = toS’d ; 175 ià(-1 =ð( r = `£ndfžev ( fd , & fvec , 1, & wr™‹n ))) { 176 ià( ”ºo !ð EAGAIN ) { 177 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", "£ndfže: ", `¡»¼Ü ( ”ºo ),ƒrrno); 179 `þo£ ( ifd ); 183 r = 0; 186 `þo£ ( ifd ); 187 c -> off£t +ð wr™‹n ; 188 cq -> by‹s_out +ð wr™‹n ; 190 ià( c -> off£t =ðc-> fže . Ëngth ) { 191 chunk_fšished = 1; 198 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ds", c , "type‚ot known"); 203 ià(! chunk_fšished ) { 210  chunks_wr™‹n ; 211 } } @src/network_write.c 1  ~ 2  ~ 3  ~ 4  ~<”ºo.h > 5  ~ 6  ~ 7  ~<¡ršg.h > 8  ~<¡dlib.h > 10  ~"ÃtwÜk.h " 11  ~"fdev’t.h " 12  ~"log.h " 13  ~"¡©_ÿche.h " 15  ~"sys-sock‘.h " 17  ~"ÃtwÜk_back’ds.h " 19 #ifdeà HAVE_SYS_FILIO_H 20  ~ 23 #ifdeà HAVE_SYS_RESOURCE_H 24  ~ 27  $ÃtwÜk_wr™e_chunkqueue_wr™e ( £rv” * ¤v , cÚÃùiÚ * cÚ ,  fd , chunkqueue * cq ) { 28 chunk * c ; 29 size_t chunks_wr™‹n = 0; 31  c = cq -> fœ¡ ; c; c = c-> Ãxt ) { 32  chunk_fšished = 0; 34  c -> ty³ ) { 35  MEM_CHUNK : { 36 * off£t ; 37 size_t toS’d ; 38 ssize_t r ; 40 ià( c -> mem -> u£d == 0) { 41 chunk_fšished = 1; 45 off£t = c -> mem -> ±r + c->offset; 46 toS’d = c -> mem -> u£d - 1 - c-> off£t ; 47 #ifdeà __WIN32 48 ià(( r = `£nd ( fd , off£t , toS’d , 0)) < 0) { 49 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", "wr™çžed: ", `¡»¼Ü ( ”ºo ), fd ); 54 ià(( r = `wr™e ( fd , off£t , toS’d )) < 0) { 55 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", "wr™çžed: ", `¡»¼Ü ( ”ºo ), fd ); 61 c -> off£t +ð r ; 62 cq -> by‹s_out +ð r ; 64 ià( c -> off£t =ð( off_t )c-> mem -> u£d - 1) { 65 chunk_fšished = 1; 70  FILE_CHUNK : { 71 #ifdeà USE_MMAP 72 * p = NULL ; 74 ssize_t r ; 75 off_t off£t ; 76 size_t toS’d ; 77 ¡©_ÿche_’Œy * sû = NULL ; 78  ifd ; 80 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , c -> fže . Çme , & sû )) { 81 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 82 `¡»¼Ü ( ”ºo ), c -> fže . Çme ); 86 off£t = c -> fže . ¡¬t + c->offset; 87 toS’d = c -> fže . Ëngth - c-> off£t ; 89 ià( off£t > sû -> ¡ . ¡_size ) { 90 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "fžwa shršked:", c -> fže . Çme ); 95 ià(-1 =ð( ifd = `Ý’ ( c -> fže . Çme -> ±r , O_RDONLY ))) { 96 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "Ý’ fažed: ", `¡»¼Ü ( ”ºo )); 101 #ià defšed USE_MMAP 102 ià( MAP_FAILED =ð( p = `mm­ (0, sû -> ¡ . ¡_size , PROT_READ , MAP_SHARED , ifd , 0))) { 103 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "mm­ fažed: ", `¡»¼Ü ( ”ºo )); 105 `þo£ ( ifd ); 109 `þo£ ( ifd ); 111 ià(( r = `wr™e ( fd , p + off£t , toS’d )) <= 0) { 112 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "wr™çžed: ", `¡»¼Ü ( ”ºo )); 113 `munm­ ( p , sû -> ¡ . ¡_size ); 117 `munm­ ( p , sû -> ¡ . ¡_size ); 119 `bufãr_´•¬e_cÝy ( ¤v -> tmp_buf , toS’d ); 121 `l£ek ( ifd , off£t , SEEK_SET ); 122 ià(-1 =ð( toS’d = `»ad ( ifd , ¤v -> tmp_buf -> ±r ,oSend))) { 123 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "»ad: ", `¡»¼Ü ( ”ºo )); 124 `þo£ ( ifd ); 128 `þo£ ( ifd ); 130 ià(-1 =ð( r = `£nd ( fd , ¤v -> tmp_buf -> ±r , toS’d , 0))) { 131 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "wr™e: ", `¡»¼Ü ( ”ºo )); 136 c -> off£t +ð r ; 137 cq -> by‹s_out +ð r ; 139 ià( c -> off£t =ðc-> fže . Ëngth ) { 140 chunk_fšished = 1; 147 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ds", c , "type‚ot known"); 152 ià(! chunk_fšished ) { 158 chunks_wr™‹n ++; 161  chunks_wr™‹n ; 162 } } 165 $ÃtwÜk_wr™e_š™ () { 166 p -> wr™e = ÃtwÜk_wr™e_wr™e_chunk£t ; 167 } } @src/network_writev.c 1  ~"ÃtwÜk_back’ds.h " 3 #ifdeà USE_WRITEV 5  ~ 6  ~ 7  ~ 8  ~ 9  ~ 10  ~ 11  ~<Ãtš‘/š.h > 12  ~<Ãtš‘/tý.h > 14  ~<”ºo.h > 15  ~ 16  ~ 17  ~<Ãtdb.h > 18  ~<¡ršg.h > 19  ~<¡dlib.h > 20  ~ 21  ~<¡dio.h > 22  ~ 24  ~"ÃtwÜk.h " 25  ~"fdev’t.h " 26  ~"log.h " 27  ~"¡©_ÿche.h " 30  #LOCAL_BUFFERING 1 ) 33  $ÃtwÜk_wr™e_chunkqueue_wr™ev ( £rv” * ¤v , cÚÃùiÚ * cÚ ,  fd , chunkqueue * cq ) { 34 chunk * c ; 35 size_t chunks_wr™‹n = 0; 37  c = cq -> fœ¡ ; c; c = c-> Ãxt ) { 38  chunk_fšished = 0; 40  c -> ty³ ) { 41  MEM_CHUNK : { 42 * off£t ; 43 size_t toS’d ; 44 ssize_t r ; 46 size_t num_chunks , i ; 47  iovec * chunks ; 48 chunk * tc ; 49 size_t num_by‹s = 0; 50 #ià `defšed ( _SC_IOV_MAX ) 51 cÚ¡ size_t max_chunks = `syscÚf ( _SC_IOV_MAX ); 52 #–ià `defšed ( IOV_MAX ) 53 cÚ¡ size_t max_chunks = IOV_MAX ; 54 #–ià `defšed ( MAX_IOVEC ) 55 cÚ¡ size_t max_chunks = MAX_IOVEC ; 56 #–ià `defšed ( UIO_MAXIOV ) 57 cÚ¡ size_t max_chunks = UIO_MAXIOV ; 58 #–ià( `defšed ( __F»eBSD__ è&& __F»eBSD_v”siÚ < 500000è|| defšed( __D¿gÚFly__ è|| defšed( __APPLE__ ) 63 cÚ¡ size_t max_chunks = 1024; 75  num_chunks = 0, tc = c ;ø&&c-> ty³ =ð MEM_CHUNK &&‚um_chunk < max_chunks ;‚um_chunks++,øðtc-> Ãxt ); 77 chunks = `ÿÎoc ( num_chunks , (*chunks)); 79  tc = c , i = 0; i < num_chunks ;øðtc-> Ãxt , i++) { 80 ià( tc -> mem -> u£d == 0) { 81 chunks [ i ]. iov_ba£ = tc -> mem -> ±r ; 82 chunks [ i ]. iov_Ën = 0; 84 off£t = tc -> mem -> ±r +c->offset; 85 toS’d = tc -> mem -> u£d - 1 -c-> off£t ; 87 chunks [ i ]. iov_ba£ = off£t ; 90 ià( toS’d > SSIZE_MAX || 91 num_by‹s + toS’d > SSIZE_MAX ) { 92 chunks [ i ]. iov_Ën = SSIZE_MAX - num_by‹s ; 94 num_chunks = i + 1; 97 chunks [ i ]. iov_Ën = toS’d ; 100 num_by‹s +ð toS’d ; 104 ià(( r = `wr™ev ( fd , chunks , num_chunks )) < 0) { 105  ”ºo ) { 106  EAGAIN : 107  EINTR : 108 r = 0; 110  EPIPE : 111  ECONNRESET : 112 `ä“ ( chunks ); 115 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", 116 "wr™ev fažed:", `¡»¼Ü ( ”ºo ), fd ); 118 `ä“ ( chunks ); 123 cq -> by‹s_out +ð r ; 127  i = 0, tc = c ; i < num_chunks ; i++,øðtc-> Ãxt ) { 128 ià( r >ð( ssize_t ) chunks [ i ]. iov_Ën ) { 130 r -ð chunks [ i ]. iov_Ën ; 131 tc -> off£t +ð chunks [ i ]. iov_Ën ; 133 ià( chunk_fšished ) { 135 chunks_wr™‹n ++; 136 c = c-> Ãxt ; 139 chunk_fšished ++; 144 tc -> off£t +ð r ; 145 chunk_fšished = 0; 150 `ä“ ( chunks ); 154  FILE_CHUNK : { 155 ssize_t r ; 156 off_t abs_off£t ; 157 off_t toS’d ; 158 ¡©_ÿche_’Œy * sû = NULL ; 160  #KBy‹ * 1024 ) 161  #MBy‹ * 1024 KBy‹ ) 162  #GBy‹ * 1024 MBy‹ ) 163 cÚ¡ off_t we_wªt_to_mm­ = 512 KBy‹ ; 164 * ¡¬t = NULL ; 166 ià( HANDLER_ERROR =ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , c -> fže . Çme , & sû )) { 167 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 168 `¡»¼Ü ( ”ºo ), c -> fže . Çme ); 172 abs_off£t = c -> fže . ¡¬t + c-> off£t ; 174 ià( abs_off£t > sû -> ¡ . ¡_size ) { 175 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 176 "fžwa shršked:", c -> fže . Çme ); 184 ià( c -> fže . mm­ . ¡¬t =ð MAP_FAILED || 185 abs_off£t =ð( off_t )( c -> fže . mm­ . off£t + c->fže.mm­. Ëngth )) { 209 off_t we_wªt_to_£nd ; 210 size_t to_mm­ ; 213 ià( c -> fže . mm­ . ¡¬t !ð MAP_FAILED ) { 214 `munm­ ( c -> fže . mm­ . ¡¬t , c->fže.mm­. Ëngth ); 215 c -> fže . mm­ . off£t +ð we_wªt_to_mm­ ; 218 c -> fže . mm­ . off£t = 0; 220  c -> fže . mm­ . off£t + we_wªt_to_mm­ < c->fže. ¡¬t ) { 221 c -> fže . mm­ . off£t +ð we_wªt_to_mm­ ; 226 we_wªt_to_£nd = c -> fže . Ëngth - c-> off£t ; 227 to_mm­ = ( c -> fže . ¡¬t + c->fže. Ëngth è- c->fže. mm­ . off£t ; 230 ià( abs_off£t + we_wªt_to_£nd > c -> fže . mm­ . off£t + we_wªt_to_mm­ ) { 231 we_wªt_to_£nd = ( c -> fže . mm­ . off£t + we_wªt_to_mm­ è- abs_off£t ; 232 to_mm­ = we_wªt_to_mm­ ; 235 ià(-1 =ð c -> fže . fd ) { 236 ià(-1 =ð( c -> fže . fd = `Ý’ (c->fže. Çme -> ±r , O_RDONLY ))) { 237 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", "Ý’ fažed fÜ:", c -> fže . Çme , `¡»¼Ü ( ”ºo )); 241 #ifdeà FD_CLOEXEC 242 `fúŽ ( c -> fže . fd , F_SETFD , FD_CLOEXEC ); 246 ià( MAP_FAILED =ð( c -> fže . mm­ . ¡¬t = `mm­ (0, to_mm­ , PROT_READ , MAP_SHARED , c->fže. fd , c->fže.mm­. off£t ))) { 249 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbd", "mmap failed:", 250 `¡»¼Ü ( ”ºo ), c -> fže . Çme , c->fže. fd ); 255 c -> fže . mm­ . Ëngth = to_mm­ ; 256 #ifdeà LOCAL_BUFFERING 257 `bufãr_cÝy_¡ršg_Ën ( c -> mem , c-> fže . mm­ . ¡¬t , c->fže.mm­. Ëngth ); 259 #ifdeà HAVE_MADVISE 261 ià( c -> fže . mm­ . Ëngth > (64 KBy‹ )) { 266 `madvi£ ( c -> fže . mm­ . ¡¬t , c->fže.mm­. Ëngth , MADV_WILLNEED ); 275 toS’d = ( c -> fže . mm­ . off£t + c->fže.mm­. Ëngth è- ( abs_off£t ); 277 ià( toS’d < 0) { 278 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "soooo", 280 toS’d , 281 c -> fže . mm­ . Ëngth , 282 abs_off£t , 283 c -> fže . mm­ . off£t ); 284 `as£¹ ( toS’d < 0); 287 #ifdeà LOCAL_BUFFERING 288 ¡¬t = c -> mem -> ±r ; 290 ¡¬t = c -> fže . mm­ .start; 293 ià(( r = `wr™e ( fd , ¡¬t + ( abs_off£t - c -> fže . mm­ . off£t ), toS’d )) < 0) { 294  ”ºo ) { 295  EAGAIN : 296  EINTR : 297 r = 0; 299  EPIPE : 300  ECONNRESET : 303 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssd", 304 "wr™çžed:", `¡»¼Ü ( ”ºo ), fd ); 310 c -> off£t +ð r ; 311 cq -> by‹s_out +ð r ; 313 ià( c -> off£t =ðc-> fže . Ëngth ) { 314 chunk_fšished = 1; 317 ià( c -> fže . mm­ . ¡¬t !ð MAP_FAILED ) { 318 `munm­ ( c -> fže . mm­ . ¡¬t , c->fže.mm­. Ëngth ); 319 c -> fže . mm­ . ¡¬t = MAP_FAILED ; 327 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ds", c , "type‚ot known"); 332 ià(! chunk_fšished ) { 338 chunks_wr™‹n ++; 341  chunks_wr™‹n ; 342 } } @src/plugin.c 1  ~<¡ršg.h > 2  ~<¡dlib.h > 4  ~<¡dio.h > 6  ~"¶ugš.h " 7  ~"log.h " 8 #ifdeà HAVE_CONFIG_H 9  ~"cÚfig.h " 12 #ifdeà HAVE_VALGRIND_VALGRIND_H 13  ~ 16 #iâdeà __WIN32 17  ~ 30 mPLUGIN_DATA ; 31 } t¶ugš_d©a ; 34 mPLUGIN_FUNC_UNSET , 35 mPLUGIN_FUNC_HANDLE_URI_CLEAN , 36 mPLUGIN_FUNC_HANDLE_URI_RAW , 37 mPLUGIN_FUNC_HANDLE_REQUEST_DONE , 38 mPLUGIN_FUNC_HANDLE_CONNECTION_CLOSE , 39 mPLUGIN_FUNC_HANDLE_TRIGGER , 40 mPLUGIN_FUNC_HANDLE_SIGHUP , 41 mPLUGIN_FUNC_HANDLE_SUBREQUEST , 42 mPLUGIN_FUNC_HANDLE_SUBREQUEST_START , 43 mPLUGIN_FUNC_HANDLE_JOBLIST , 44 mPLUGIN_FUNC_HANDLE_DOCROOT , 45 mPLUGIN_FUNC_HANDLE_PHYSICAL , 46 mPLUGIN_FUNC_CONNECTION_RESET , 47 mPLUGIN_FUNC_INIT , 48 mPLUGIN_FUNC_CLEANUP , 49 mPLUGIN_FUNC_SET_DEFAULTS , 51 mPLUGIN_FUNC_SIZEOF 52 } t¶ugš_t ; 54  ¶ugš * $¶ugš_š™ () { 55 ¶ugš * p ; 57 p = `ÿÎoc (1, (*p)); 59  p ; 60 } } 62  $¶ugš_ä“ ( ¶ugš * p ) { 63  u£_dlþo£ = 1; 64 ià( p -> Çme è `bufãr_ä“ (p->name); 65 #ifdeà HAVE_VALGRIND_VALGRIND_H 69 #iâdeà LIGHTTPD_STATIC 70 ià( u£_dlþo£ && p -> lib ) { 71 #ifdeà __WIN32 72 `F»eLib¿ry ( p -> lib ); 74 `dlþo£ ( p -> lib ); 79 `ä“ ( p ); 80 } } 82  $¶ugšs_»gi¡” ( £rv” * ¤v , ¶ugš * p ) { 83 ¶ugš ** ps ; 84 ià(0 =ð ¤v -> ¶ugšs . size ) { 85 ¤v -> ¶ugšs . size = 4; 86 ¤v -> ¶ugšs . ±r = `m®loc (¤v->¶ugšs. size * (* ps )); 87 ¤v -> ¶ugšs . u£d = 0; 88 } ià( ¤v -> ¶ugšs . u£d =ð¤v->¶ugšs. size ) { 89 ¤v -> ¶ugšs . size += 4; 90 ¤v -> ¶ugšs . ±r = `»®loc (¤v->¶ugšs.±r, srv->¶ugšs. size * (* ps )); 93 ps = ¤v -> ¶ugšs . ±r ; 94 ps [ ¤v -> ¶ugšs . u£d ++] = p ; 97 } } 105 #ifdeà LIGHTTPD_STATIC 106  $¶ugšs_lßd ( £rv” * ¤v ) { 107 ¶ugš * p ; 108  #PLUGIN_INIT ( x )\ 109 p = `¶ugš_š™ (); \ 110 ià( x ## `_¶ugš_š™ ( p )) { \ 111 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", #x, "plugin init failed" ); \ 112 `¶ugš_ä“ ( p ); \ 115 `¶ugšs_»gi¡” ( ¤v , p ); ) 117  ~"¶ugš-¡©ic.h " 120 } } 122  $¶ugšs_lßd ( £rv” * ¤v ) { 123 ¶ugš * p ; 124 (* š™ )( ¶ugš * ¶ ); 125 cÚ¡ * ”rÜ ; 126 size_t i ; 128  i = 0; i < ¤v -> ¤vcÚf . moduËs -> u£d ; i++) { 129 d©a_¡ršg * d = (d©a_¡ršg *) ¤v -> ¤vcÚf . moduËs -> d©a [ i ]; 130 * moduËs = d -> v®ue -> ±r ; 132 `bufãr_cÝy_¡ršg_bufãr ( ¤v -> tmp_buf , srv-> ¤vcÚf . moduËs_dœ ); 134 `bufãr_­³nd_¡ršg ( ¤v -> tmp_buf , "/"); 135 `bufãr_­³nd_¡ršg ( ¤v -> tmp_buf , moduËs ); 136 #ià `defšed ( __WIN32 è|| defšed( __CYGWIN__ ) 137 `bufãr_­³nd_¡ršg ( ¤v -> tmp_buf , ".dll"); 139 `bufãr_­³nd_¡ršg ( ¤v -> tmp_buf , ".so"); 142 p = `¶ugš_š™ (); 143 #ifdeà __WIN32 144 ià( NULL =ð( p -> lib = `LßdLib¿ry ( ¤v -> tmp_buf -> ±r ))) { 145 LPVOID ÍMsgBuf ; 146 `FÜm©Mes§ge ( 147 FORMAT_MESSAGE_ALLOCATE_BUFFER | 148 FORMAT_MESSAGE_FROM_SYSTEM , 149 NULL , 150 `G‘La¡E¼Ü (), 151 `MAKELANGID ( LANG_NEUTRAL , SUBLANG_DEFAULT ), 152 ( LPTSTR è& ÍMsgBuf , 153 0, NULL ); 155 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssb", "LoadLibrary() failed", 156 ÍMsgBuf , ¤v -> tmp_buf ); 158 `¶ugš_ä“ ( p ); 164 ià( NULL =ð( p -> lib = `dlÝ’ ( ¤v -> tmp_buf -> ±r , RTLD_NOW | RTLD_GLOBAL ))) { 165 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", "dlopen() failed for:", 166 ¤v -> tmp_buf , `dË¼Ü ()); 168 `¶ugš_ä“ ( p ); 174 `bufãr_»£t ( ¤v -> tmp_buf ); 175 `bufãr_cÝy_¡ršg ( ¤v -> tmp_buf , moduËs ); 176 `bufãr_­³nd_¡ršg ( ¤v -> tmp_buf , "_plugin_init"); 178 #ifdeà __WIN32 179 š™ = `G‘ProcAdd»ss ( p -> lib , ¤v -> tmp_buf -> ±r ); 181 ià( š™ =ð NULL ) { 182 LPVOID ÍMsgBuf ; 183 `FÜm©Mes§ge ( 184 FORMAT_MESSAGE_ALLOCATE_BUFFER | 185 FORMAT_MESSAGE_FROM_SYSTEM , 186 NULL , 187 `G‘La¡E¼Ü (), 188 `MAKELANGID ( LANG_NEUTRAL , SUBLANG_DEFAULT ), 189 ( LPTSTR è& ÍMsgBuf , 190 0, NULL ); 192 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", "g‘´oÿdd»s çžed:", srv-> tmp_buf , ÍMsgBuf ); 194 `¶ugš_ä“ ( p ); 200 š™ = ((*)( ¶ugš *)) `dlsym ( p -> lib , ¤v -> tmp_buf -> ±r ); 202 *(**)(& š™ èð `dlsym ( p -> lib , ¤v -> tmp_buf -> ±r ); 204 ià(( ”rÜ = `dË¼Ü ()è!ð NULL ) { 205 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", ”rÜ ); 207 `¶ugš_ä“ ( p ); 212 ià((* š™ )( p )) { 213 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", moduËs , "plugin init failed" ); 215 `¶ugš_ä“ ( p ); 219 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", moduËs , "plugin†oaded" ); 221 `¶ugšs_»gi¡” ( ¤v , p ); 225 } } 228  #PLUGIN_TO_SLOT ( x , y ) \ 229 hªdËr_t ¶ugšs_ÿÎ_ ## `y ( £rv” * ¤v , cÚÃùiÚ * cÚ ) {\ 230 ¶ugš ** ¦Ù ;\ 231 size_t j ;\ 232 ià(! ¤v -> ¶ugš_¦Ùs è HANDLER_GO_ON ;\ 233 ¦Ù = (( ¶ugš ***)( ¤v -> ¶ugš_¦Ùs ))[ x ];\ 234 ià(! ¦Ù è HANDLER_GO_ON ;\ 235  j = 0; j < ¤v -> ¶ugšs . u£d && ¦Ù [j]; j++) { \ 236 ¶ugš * p = ¦Ù [ j ];\ 237 hªdËr_t r ;\ 238  r = p -> `y ( ¤v , cÚ ,…-> d©a )) {\ 239  HANDLER_GO_ON :\ 241  HANDLER_FINISHED :\ 242  HANDLER_COMEBACK :\ 243  HANDLER_WAIT_FOR_EVENT :\ 244  HANDLER_WAIT_FOR_FD :\ 245  HANDLER_ERROR :\ 246  r ;\ 248 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", #x, p -> Çme , "unknown state");\ 249  HANDLER_ERROR ;\ 252  HANDLER_GO_ON ;\ 253 } ) 263 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_URI_CLEAN , hªdË_uri_þ—n ) 264 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_URI_RAW , hªdË_uri_¿w ) 265 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_REQUEST_DONE , hªdË_»que¡_dÚe ) 266 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_CONNECTION_CLOSE , hªdË_cÚÃùiÚ_þo£ ) 267 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_SUBREQUEST , hªdË_sub»que¡ ) 268 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_SUBREQUEST_START , hªdË_sub»que¡_¡¬t ) 269 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_JOBLIST , hªdË_jobli¡ ) 270 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_DOCROOT , hªdË_doüoÙ ) 271 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_PHYSICAL , hªdË_physiÿl ) 272 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_CONNECTION_RESET , cÚÃùiÚ_»£t ) 274 #undeà PLUGIN_TO_SLOT 276  #PLUGIN_TO_SLOT ( x , y ) \ 277 hªdËr_t ¶ugšs_ÿÎ_ ## `y ( £rv” * ¤v ) {\ 278 ¶ugš ** ¦Ù ;\ 279 size_t j ;\ 280 ià(! ¤v -> ¶ugš_¦Ùs è HANDLER_GO_ON ;\ 281 ¦Ù = (( ¶ugš ***)( ¤v -> ¶ugš_¦Ùs ))[ x ];\ 282 ià(! ¦Ù è HANDLER_GO_ON ;\ 283  j = 0; j < ¤v -> ¶ugšs . u£d && ¦Ù [j]; j++) { \ 284 ¶ugš * p = ¦Ù [ j ];\ 285 hªdËr_t r ;\ 286  r = p -> `y ( ¤v ,…-> d©a )) {\ 287  HANDLER_GO_ON :\ 289  HANDLER_FINISHED :\ 290  HANDLER_COMEBACK :\ 291  HANDLER_WAIT_FOR_EVENT :\ 292  HANDLER_WAIT_FOR_FD :\ 293  HANDLER_ERROR :\ 294  r ;\ 296 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsd", #x, p -> Çme , "unknowÀ¡©e:", r );\ 297  HANDLER_ERROR ;\ 300  HANDLER_GO_ON ;\ 301 } ) } 310 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_TRIGGER , hªdË_Œigg” ) 311 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_SIGHUP , hªdË_sighup ) 312 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_CLEANUP , þ—nup ) 313 $PLUGIN_TO_SLOT ( PLUGIN_FUNC_SET_DEFAULTS , £t_deçuÉs ) 315 #undeà PLUGIN_TO_SLOT 323 hªdËr_t $¶ugšs_ÿÎ_hªdË_fdev’t ( £rv” * ¤v , cÚ¡ fd_cÚn * fdc ) { 324 size_t i ; 325 ¶ugš ** ps ; 327 ps = ¤v -> ¶ugšs . ±r ; 329  i = 0; i < ¤v -> ¶ugšs . u£d ; i++) { 330 ¶ugš * p = ps [ i ]; 331 ià( p -> hªdË_fdev’t ) { 332 hªdËr_t r ; 333  r = p -> `hªdË_fdev’t ( ¤v , fdc ,…-> d©a )) { 334  HANDLER_GO_ON : 336  HANDLER_FINISHED : 337  HANDLER_COMEBACK : 338  HANDLER_WAIT_FOR_EVENT : 339  HANDLER_ERROR : 340  r ; 342 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "d", r ); 348  HANDLER_GO_ON ; 349 } } 359 hªdËr_t $¶ugšs_ÿÎ_š™ ( £rv” * ¤v ) { 360 size_t i ; 361 ¶ugš ** ps ; 363 ps = ¤v -> ¶ugšs . ±r ; 367 ¤v -> ¶ugš_¦Ùs = `ÿÎoc ( PLUGIN_FUNC_SIZEOF , ( ps )); 369  i = 0; i < ¤v -> ¶ugšs . u£d ; i++) { 370 size_t j ; 373 ¶ugš * p = ps [ i ]; 375  #PLUGIN_TO_SLOT ( x , y ) \ 376 ià( p -> y ) { \ 377 ¶ugš ** ¦Ù = (Õlugš ***)( ¤v -> ¶ugš_¦Ùs ))[ x ]; \ 378 ià(! ¦Ù ) { \ 379 ¦Ù = `ÿÎoc ( ¤v -> ¶ugšs . u£d , (*slot));\ 380 (( ¶ugš ***)( ¤v -> ¶ugš_¦Ùs ))[ x ] = ¦Ù ; \ 382  j = 0; j < ¤v -> ¶ugšs . u£d ; j++) { \ 383 ià( ¦Ù [ j ]) ;\ 384 ¦Ù [ j ] = p ;\ 387 } ) 390 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_URI_CLEAN , hªdË_uri_þ—n ); 391 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_URI_RAW , hªdË_uri_¿w ); 392 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_REQUEST_DONE , hªdË_»que¡_dÚe ); 393 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_CONNECTION_CLOSE , hªdË_cÚÃùiÚ_þo£ ); 394 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_TRIGGER , hªdË_Œigg” ); 395 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_SIGHUP , hªdË_sighup ); 396 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_SUBREQUEST , hªdË_sub»que¡ ); 397 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_SUBREQUEST_START , hªdË_sub»que¡_¡¬t ); 398 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_JOBLIST , hªdË_jobli¡ ); 399 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_DOCROOT , hªdË_doüoÙ ); 400 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_HANDLE_PHYSICAL , hªdË_physiÿl ); 401 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_CONNECTION_RESET , cÚÃùiÚ_»£t ); 402 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_CLEANUP , þ—nup ); 403 `PLUGIN_TO_SLOT ( PLUGIN_FUNC_SET_DEFAULTS , £t_deçuÉs ); 404 #undeà PLUGIN_TO_SLOT 406 ià( p -> š™ ) { 407 ià( NULL =ð( p -> d©a =…-> `š™ ())) { 408 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 409 "¶ugš-š™ fažed fÜ moduË", p -> Çme ); 410  HANDLER_ERROR ; 414 (( ¶ugš_d©a *)( p -> d©a ))-> id = i + 1; 416 ià( p -> v”siÚ !ð LIGHTTPD_VERSION_ID ) { 417 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 418 "¶ugš-v”siÚ dÛ¢'ˆm©ch†igh‰pd-v”siÚ fÜ", p -> Çme ); 419  HANDLER_ERROR ; 422 p -> d©a = NULL ; 426  HANDLER_GO_ON ; 427 } } 429  $¶ugšs_ä“ ( £rv” * ¤v ) { 430 size_t i ; 431 `¶ugšs_ÿÎ_þ—nup ( ¤v ); 433  i = 0; i < ¤v -> ¶ugšs . u£d ; i++) { 434 ¶ugš * p = (Õlugš **) ¤v -> ¶ugšs . ±r )[ i ]; 436 `¶ugš_ä“ ( p ); 439  i = 0; ¤v -> ¶ugš_¦Ùs && i < PLUGIN_FUNC_SIZEOF ; i++) { 440 ¶ugš ** ¦Ù = (Õlugš ***)( ¤v -> ¶ugš_¦Ùs ))[ i ]; 442 ià( ¦Ù è `ä“ (slot); 445 `ä“ ( ¤v -> ¶ugš_¦Ùs ); 446 ¤v -> ¶ugš_¦Ùs = NULL ; 448 `ä“ ( ¤v -> ¶ugšs . ±r ); 449 ¤v -> ¶ugšs . ±r = NULL ; 450 ¤v -> ¶ugšs . u£d = 0; 451 } } @src/plugin.h 1 #iâdeà _PLUGIN_H_ 2  #_PLUGIN_H_ ) 4  ~"ba£.h " 5  ~"bufãr.h " 7  #SERVER_FUNC ( x ) \ 8  hªdËr_t `x ( £rv” * ¤v , * p_d ) ) 10  #CONNECTION_FUNC ( x ) \ 11  hªdËr_t `x ( £rv” * ¤v , cÚÃùiÚ * cÚ , * p_d ) ) 13  #INIT_FUNC ( x ) \ 14 * `x () ) 16  #FREE_FUNC SERVER_FUNC ) 17  #TRIGGER_FUNC SERVER_FUNC ) 18  #SETDEFAULTS_FUNC SERVER_FUNC ) 19  #SIGHUP_FUNC SERVER_FUNC ) 21  #SUBREQUEST_FUNC CONNECTION_FUNC ) 22  #JOBLIST_FUNC CONNECTION_FUNC ) 23  #PHYSICALPATH_FUNC CONNECTION_FUNC ) 24  #REQUESTDONE_FUNC CONNECTION_FUNC ) 25  #URIHANDLER_FUNC CONNECTION_FUNC ) 27  #PLUGIN_DATA size_t id ) 30 size_t mv”siÚ ; 32 bufãr * mÇme ; 34 *(* mš™ ) (); 35 hªdËr_t (* £t_deçuÉs è( £rv” * m¤v , * mp_d ); 36 hªdËr_t (* þ—nup è( £rv” * m¤v , * mp_d ); 38 hªdËr_t (* hªdË_Œigg” è( £rv” * m¤v , * mp_d ); 39 hªdËr_t (* hªdË_sighup è( £rv” * m¤v , * mp_d ); 41 hªdËr_t (* hªdË_uri_¿w è( £rv” * m¤v , cÚÃùiÚ * mcÚ , * mp_d ); 42 hªdËr_t (* hªdË_uri_þ—n è( £rv” * m¤v , cÚÃùiÚ * mcÚ , * mp_d ); 43 hªdËr_t (* hªdË_doüoÙ è( £rv” * m¤v , cÚÃùiÚ * mcÚ , * mp_d ); 44 hªdËr_t (* hªdË_physiÿl è( £rv” * m¤v , cÚÃùiÚ * mcÚ , * mp_d ); 45 hªdËr_t (* hªdË_»que¡_dÚe è( £rv” * m¤v , cÚÃùiÚ * mcÚ , * mp_d ); 46 hªdËr_t (* hªdË_cÚÃùiÚ_þo£ )( £rv” * m¤v , cÚÃùiÚ * mcÚ , * mp_d ); 47 hªdËr_t (* hªdË_jobli¡ è( £rv” * m¤v , cÚÃùiÚ * mcÚ , * mp_d ); 51 hªdËr_t (* hªdË_sub»que¡_¡¬t )( £rv” * m¤v , cÚÃùiÚ * mcÚ , * mp_d ); 56 hªdËr_t (* hªdË_sub»que¡ è( £rv” * m¤v , cÚÃùiÚ * mcÚ , * mp_d ); 57 hªdËr_t (* cÚÃùiÚ_»£t è( £rv” * m¤v , cÚÃùiÚ * mcÚ , * mp_d ); 58 * md©a ; 61 * mlib ; 62 } t¶ugš ; 64  ¶ugšs_lßd ( £rv” * ¤v ); 65  ¶ugšs_ä“ ( £rv” * ¤v ); 67 hªdËr_t ¶ugšs_ÿÎ_hªdË_uri_¿w ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 68 hªdËr_t ¶ugšs_ÿÎ_hªdË_uri_þ—n ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 69 hªdËr_t ¶ugšs_ÿÎ_hªdË_sub»que¡_¡¬t ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 70 hªdËr_t ¶ugšs_ÿÎ_hªdË_sub»que¡ ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 71 hªdËr_t ¶ugšs_ÿÎ_hªdË_»que¡_dÚe ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 72 hªdËr_t ¶ugšs_ÿÎ_hªdË_doüoÙ ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 73 hªdËr_t ¶ugšs_ÿÎ_hªdË_physiÿl ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 74 hªdËr_t ¶ugšs_ÿÎ_hªdË_cÚÃùiÚ_þo£ ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 75 hªdËr_t ¶ugšs_ÿÎ_hªdË_jobli¡ ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 76 hªdËr_t ¶ugšs_ÿÎ_cÚÃùiÚ_»£t ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 78 hªdËr_t ¶ugšs_ÿÎ_hªdË_Œigg” ( £rv” * ¤v ); 79 hªdËr_t ¶ugšs_ÿÎ_hªdË_sighup ( £rv” * ¤v ); 81 hªdËr_t ¶ugšs_ÿÎ_š™ ( £rv” * ¤v ); 82 hªdËr_t ¶ugšs_ÿÎ_£t_deçuÉs ( £rv” * ¤v ); 83 hªdËr_t ¶ugšs_ÿÎ_þ—nup ( £rv” * ¤v ); 85  cÚfig_š£¹_v®ues_glob® ( £rv” * ¤v , ¬¿y * ÿ , cÚ¡ cÚfig_v®ues_t * cv ); 86  cÚfig_š£¹_v®ues_š‹º® ( £rv” * ¤v , ¬¿y * ÿ , cÚ¡ cÚfig_v®ues_t * cv ); 87  cÚfig_£tup_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 88  cÚfig_·tch_cÚÃùiÚ ( £rv” * ¤v , cÚÃùiÚ * cÚ , comp_key_t comp ); 89  cÚfig_check_cÚd ( £rv” * ¤v , cÚÃùiÚ * cÚ , d©a_cÚfig * dc ); 90  cÚfig_­³nd_cÚd_m©ch_bufãr ( cÚÃùiÚ * cÚ , d©a_cÚfig * dc , bufãr * buf ,  n ); @src/proc_open.c 1  ~<¡dlib.h > 2  ~<¡dio.h > 3  ~<ùy³.h > 4  ~<”ºo.h > 5  ~"´oc_Ý’.h " 7 #ifdeà WIN32 8  ~ 9  ~ 11  ~ 12  ~ 16 #ifdeà WIN32 18  #SHELLENV "ComS³c" ) 19  #SECURITY_DC , SECURITY_ATTRIBUTES * £cur™y ) 20  #SECURITY_CC , £cur™y ) 21  #pe ( ·œ è( `C»©ePe (&·œ[0], &·œ[1], £cur™y , 2048Lè? 0 : -1) ) 22  šlše HANDLE $dup_hªdË ( HANDLE ¤c , BOOL šh”™ , BOOL þo£Üig ) 24 HANDLE cÝy , £lf = `G‘Cu¼’tProûss (); 26 ià(! `Du¶iÿ‹HªdË ( £lf , ¤c , s–f, & cÝy , 0, šh”™ , DUPLICATE_SAME_ACCESS | 27 ( þo£Üig ? DUPLICATE_CLOSE_SOURCE : 0))) 28  NULL ; 29  cÝy ; 30 } } 31  #þo£_desütÜ ( fd è `Clo£HªdË (fd) ) 32  $pe_þo£_·»Á ( pe_t * p ) { 34 p -> ·»Á = `dup_hªdË Õ->·»Á, FALSE , TRUE ); 35 } } 36  $pe_þo£_chžd ( pe_t * p ) { 37 `þo£_desütÜ ( p -> chžd ); 38 p -> fd = `_Ý’_osfhªdË ((í-> ·»Á , 39 ( p -> fd =ð0 ? O_RDONLY : O_WRONLY )| O_BINARY ); 40 } } 44  #SHELLENV "SHELL" ) 45  #SECURITY_DC ) 46  #SECURITY_CC ) 47  #þo£_desütÜ ( fd è `þo£ (fd) ) 48  $pe_þo£_·»Á ( pe_t * p ) { 50 `þo£_desütÜ ( p -> ·»Á ); 51 ià( `dup2 ( p -> chžd ,…-> fd ) !=…->fd) { 52 `³¼Ü ("pipe_child dup2"); 54 `þo£_desütÜ ( p -> chžd ); 55 p -> chžd =…-> fd ; 57 } } 58  $pe_þo£_chžd ( pe_t * p ) { 59 `þo£_desütÜ ( p -> chžd ); 60 p -> fd =…-> ·»Á ; 61 } } 66  $pe_þo£ ( pe_t * p ) { 67 `þo£_desütÜ ( p -> ·»Á ); 68 `þo£_desütÜ ( p -> chžd ); 69 #ifdeà WIN32 70 `þo£ ( p -> fd ); 72 } } 75  $pe_Ý’ ( pe_t * p ,  fd SECURITY_DC ) { 76 desütÜ_t Ãwpe [2]; 78 ià(0 !ð `pe ( Ãwpe )) { 79 `årštf ( ¡d”r , "can't open…ipe"); 82 ià(0 =ð fd ) { 83 p -> ·»Á = Ãwpe [1]; 84 p -> chžd = Ãwpe [0]; 86 p -> ·»Á = Ãwpe [0]; 87 p -> chžd = Ãwpe [1]; 89 p -> fd = fd; 92 } } 96  $´oc_Ý’_pes ( ´oc_hªdËr_t * ´oc SECURITY_DC ) { 97 ià( `pe_Ý’ (&( ´oc -> š ), 0 SECURITY_CC ) != 0) { 100 ià( `pe_Ý’ (&( ´oc -> out ), 1 SECURITY_CC ) != 0) { 103 ià( `pe_Ý’ (&( ´oc -> ”r ), 2 SECURITY_CC ) != 0) { 107 } } 110  $´oc_þo£_pes ( ´oc_hªdËr_t * ´oc ) { 111 `pe_þo£ (& ´oc -> š ); 112 `pe_þo£ (& ´oc -> out ); 113 `pe_þo£ (& ´oc -> ”r ); 114 } } 117  $´oc_þo£_·»Ás ( ´oc_hªdËr_t * ´oc ) { 118 `pe_þo£_·»Á (& ´oc -> š ); 119 `pe_þo£_·»Á (& ´oc -> out ); 120 `pe_þo£_·»Á (& ´oc -> ”r ); 121 } } 124  $´oc_þo£_chžds ( ´oc_hªdËr_t * ´oc ) { 125 `pe_þo£_chžd (& ´oc -> š ); 126 `pe_þo£_chžd (& ´oc -> out ); 127 `pe_þo£_chžd (& ´oc -> ”r ); 128 } } 131 #ifdeà WIN32 133  $´oc_þo£ ( ´oc_hªdËr_t * ´oc ) { 134 ´oc_pid_t chžd = ´oc ->child; 135 DWORD w¡©us ; 137 `´oc_þo£_pes ( ´oc ); 138 `Wa™FÜSšgËObjeù ( chžd , INFINITE ); 139 `G‘Ex™CodeProûss ( chžd , & w¡©us ); 140 `Clo£HªdË ( chžd ); 142  w¡©us ; 143 } } 146  $´oc_Ý’ ( ´oc_hªdËr_t * ´oc , cÚ¡ * commªd ) { 147 PROCESS_INFORMATION pi ; 148 STARTUPINFO si ; 149 BOOL ´ocok ; 150 SECURITY_ATTRIBUTES £cur™y ; 151 cÚ¡ * sh–l = NULL ; 152 cÚ¡ * wšdœ = NULL ; 153 bufãr * cmdlše ; 155 ià( NULL =ð( sh–l = `g‘’v ( SHELLENV )) && 156 NULL =ð( wšdœ = `g‘’v ("SystemRoot")) && 157 NULL =ð( wšdœ = `g‘’v ("windir"))) { 158 `årštf ( ¡d”r , "Oà oà%s,%%Sy¡emRoÙ,%%wšdœ i »quœed", SHELLENV ); 163 `mem£t (& £cur™y , 0, (security)); 164 £cur™y . nL’gth = (security); 165 £cur™y . bInh”™HªdË = TRUE ; 166 £cur™y . ÍSecur™yDesütÜ = NULL ; 168 ià( `´oc_Ý’_pes ( ´oc , & £cur™y ) != 0) { 171 `´oc_þo£_·»Ás ( ´oc ); 173 `mem£t (& si , 0, (si)); 174 si . cb = (si); 175 si . dwFÏgs = STARTF_USESTDHANDLES ; 176 si . hStdIÅut = ´oc -> š . chžd ; 177 si . hStdOuut = ´oc -> out . chžd ; 178 si . hStdE¼Ü = ´oc -> ”r . chžd ; 180 `mem£t (& pi , 0, (pi)); 182 cmdlše = `bufãr_š™ (); 183 ià( sh–l ) { 184 `bufãr_­³nd_¡ršg ( cmdlše , sh–l ); 186 `bufãr_­³nd_¡ršg ( cmdlše , wšdœ ); 187 `bufãr_­³nd_¡ršg ( cmdlše , "\\system32\\cmd.exe"); 189 `bufãr_­³nd_¡ršg_Ën ( cmdlše , `CONST_STR_LEN (" /c ")); 190 `bufãr_­³nd_¡ršg ( cmdlše , commªd ); 191 ´ocok = `C»©eProûss ( NULL , cmdlše -> ±r , & £cur™y , &£cur™y, TRUE , 192 NORMAL_PRIORITY_CLASS , NULL , NULL, & si , & pi ); 194 ià( FALSE =ð ´ocok ) { 195 `årštf ( ¡d”r , "çžedØC»©eProûss: %s", cmdlše -> ±r ); 196 `bufãr_ä“ ( cmdlše ); 199 `bufãr_ä“ ( cmdlše ); 201 ´oc -> chžd = pi . hProûss ; 202 `Clo£HªdË ( pi . hTh»ad ); 204 `´oc_þo£_chžds ( ´oc ); 207 } } 211  $´oc_þo£ ( ´oc_hªdËr_t * ´oc ) { 212 pid_t chžd = ´oc ->child; 213  w¡©us ; 214 pid_t wa™_pid ; 216 `´oc_þo£_pes ( ´oc ); 219 wa™_pid = `wa™pid ( chžd , & w¡©us , 0); 220 }  wa™_pid =ð-1 && ”ºo =ð EINTR ); 222 ià( wa™_pid == -1) { 225 ià( `WIFEXITED ( w¡©us )) 226 w¡©us = `WEXITSTATUS (wstatus); 229  w¡©us ; 230 } } 233  $´oc_Ý’ ( ´oc_hªdËr_t * ´oc , cÚ¡ * commªd ) { 234 pid_t chžd ; 235 cÚ¡ * sh–l ; 237 ià( NULL =ð( sh–l = `g‘’v ( SHELLENV ))) { 238 sh–l = "/bin/sh"; 241 ià( `´oc_Ý’_pes ( ´oc ) != 0) { 247 chžd = `fÜk (); 249 ià( chžd == 0) { 256 `´oc_þo£_·»Ás ( ´oc ); 258 `exeþ ( sh–l , sh–l, "-c", commªd , (*) NULL ); 259 `_ex™ (127); 261 } ià( chžd < 0) { 262 `årštf ( ¡d”r , "failedo forking"); 263 `´oc_þo£ ( ´oc ); 267 ´oc -> chžd = child; 268 `´oc_þo£_chžds ( ´oc ); 271 } } 276  $´oc_»ad_fd_to_bufãr ( fd , bufãr * b ) { 277 ssize_t s ; 280 `bufãr_´•¬e_­³nd ( b , 512); 281 ià(( s = `»ad ( fd , (*)( b -> ±r + b-> u£d ), 512 - 1)) <= 0) { 284 b -> u£d +ð s ; 286 b -> ±r [b-> u£d ] = '\0'; 287 } } 290  $´oc_Ý’_bufãr ( ´oc_hªdËr_t * ´oc , cÚ¡ * commªd , bufãr * š , bufã¸* out , bufã¸* ”r ) { 292 `UNUSED ( ”r ); 294 ià( `´oc_Ý’ ( ´oc , commªd ) != 0) { 298 ià( š ) { 299 ià( `wr™e ( ´oc -> š . fd , (*)š-> ±r , in-> u£d ) < 0) { 300 `³¼Ü ("error writing…ipe"); 304 `pe_þo£ (& ´oc -> š ); 306 ià( out ) { 307 `´oc_»ad_fd_to_bufãr ( ´oc -> out . fd , out); 309 `pe_þo£ (& ´oc -> out ); 311 ià( ”r ) { 312 `´oc_»ad_fd_to_bufãr ( ´oc -> ”r . fd ,ƒrr); 314 `pe_þo£ (& ´oc -> ”r ); 317 } } 321 #ifdeà DEBUG_PROC_OPEN 322  $maš () { 323 ´oc_hªdËr_t ´oc ; 324 bufãr * š = `bufãr_š™ (), * out = bufãr_š™(), * ”r = buffer_init(); 325  w¡©us ; 327  #FREE () do { \ 328 `bufãr_ä“ ( š ); \ 329 `bufãr_ä“ ( out ); \ 330 `bufãr_ä“ ( ”r ); \ 331 } 0) ) 333  #RESET () do { \ 334 `bufãr_»£t ( š ); \ 335 `bufãr_»£t ( out ); \ 336 `bufãr_»£t ( ”r ); \ 337 w¡©us = `´oc_þo£ (& ´oc ); \ 338 ià(0&& w¡©us != 0) { \ 339 `årštf ( ¡dout , "ex™¡©u %d\n", w¡©us ); \ 340  __LINE__ - 200; \ 342 } 0) ) 344  #ERROR_OUT () do { \ 345 `årštf ( ¡dout , "failed opening…roc\n"); \ 346 w¡©us = `´oc_þo£ (& ´oc ); \ 347 `årštf ( ¡dout , "ex™¡©u %d\n", w¡©us ); \ 348 `FREE (); \ 349  __LINE__ - 300; \ 350 } 0) ) 352 #ifdeà WIN32 353  #CMD_CAT "·u£" ) 355  #CMD_CAT "ÿt" ) 359 `årštf ( ¡dout , "test:ƒcho 123 without„ead\n"); 360 ià( `´oc_Ý’ (& ´oc , "echo 321") != 0) { 361 `ERROR_OUT (); 363 `þo£_desütÜ ( ´oc . š . ·»Á ); 364 `þo£_desütÜ ( ´oc . out . ·»Á ); 365 `þo£_desütÜ ( ´oc . ”r . ·»Á ); 366 `RESET (); 368 `årštf ( ¡dout , "‹¡:ƒchØ321 w™h„—d\n"); `fæush (stdout); 369 ià( `´oc_Ý’_bufãr (& ´oc , "echØ321", NULL , out , ”r ) != 0) { 370 `ERROR_OUT (); 372 `årštf ( ¡dout , "»suÉ: ->%s<-\n\n", out -> ±r ); `fæush (stdout); 373 `RESET (); 375 `årštf ( ¡dout , "‹¡:ƒchØ123 | " CMD_CAT "\n"); `fæush (stdout); 376 `bufãr_cÝy_¡ršg_Ën ( š , `CONST_STR_LEN ("123\n")); 377 ià( `´oc_Ý’_bufãr (& ´oc , CMD_CAT , š , out , ”r ) != 0) { 378 `ERROR_OUT (); 380 `årštf ( ¡dout , "»suÉ: ->%s<-\n\n", out -> ±r ); `fæush (stdout); 381 `RESET (); 384 #undeà RESET 385 #undeà ERROR_OUT 387 `årštf ( ¡dout , "ok\n"); 389 `FREE (); 391 } } @src/proc_open.h 2  ~"bufãr.h " 4 #ifdeà WIN32 5  ~ 6  HANDLE tdesütÜ_t ; 7  HANDLE t´oc_pid_t ; 9  tdesütÜ_t ; 10  pid_t t´oc_pid_t ; 14 desütÜ_t m·»Á , mchžd ; 15  mfd ; 16 } tpe_t ; 19 pe_t mš , mout , m”r ; 20 ´oc_pid_t mchžd ; 21 } t´oc_hªdËr_t ; 23  ´oc_þo£ ( ´oc_hªdËr_t * ht ); 24  ´oc_Ý’ ( ´oc_hªdËr_t * ht , cÚ¡ * commªd ); 25  ´oc_Ý’_bufãr ( ´oc_hªdËr_t * ht , cÚ¡ * commªd , bufãr * š , bufã¸* out , bufã¸* ”r ); @src/request.c 1  ~ 3  ~ 4  ~<¡dlib.h > 5  ~<¡ršg.h > 6  ~<¡dio.h > 7  ~<ùy³.h > 9  ~"»que¡.h " 10  ~"keyv®ue.h " 11  ~"log.h " 13  $»que¡_check_ho¡Çme ( £rv” * ¤v , cÚÃùiÚ * cÚ , bufãr * ho¡ ) { 14 ’um { DOMAINLABEL , TOPLABEL } ¡age = TOPLABEL; 15 size_t i ; 16  Ïb–_Ën = 0; 17 size_t ho¡_Ën ; 18 * cÞÚ ; 19  is_ = -1; 20  Ëv– = 0; 22 `UNUSED ( ¤v ); 23 `UNUSED ( cÚ ); 37 ià(! ho¡ || ho¡-> u£d == 0)  0; 39 ho¡_Ën = ho¡ -> u£d - 1; 42 ià( ho¡ -> ±r [0] == '[') { 43 * c = ho¡ -> ±r + 1; 44  cÞÚ_út = 0; 47 ; * c && *c != ']'; c++) { 48 ià(* c == ':') { 49 ià(++ cÞÚ_út > 7) { 52 } ià(! `light_isxdig™ (* c )) { 58 ià(!* c ) { 63 ià(*( c +1) == ':') { 64  c += 2; *c; c++) { 65 ià(! `light_isdig™ (* c )) { 73 ià( NULL !ð( cÞÚ = `memchr ( ho¡ -> ±r , ':', ho¡_Ën ))) { 74 * c = cÞÚ + 1; 77 ; * c ; c++) { 78 ià(! `light_isdig™ (* c ))  -1; 82 ho¡_Ën = cÞÚ - ho¡ -> ±r ; 86 ià( ho¡_Ën == 0)  -1; 89 ià( ho¡ -> ±r [ ho¡_Ën -1] == '.') host_len -= 1; 92  i = ho¡_Ën - 1; i + 1 > 0; i--) { 93 cÚ¡  c = ho¡ -> ±r [ i ]; 95  ¡age ) { 96  TOPLABEL : 97 ià( c == '.') { 99 ià( i !ð ho¡_Ën - 1) { 100 ià( Ïb–_Ën == 0) { 105 ià( is_ == 0) { 106 ià(! `light_i§Íha ( ho¡ -> ±r [ i +1])) { 109 } ià(! `light_isdig™ ( ho¡ -> ±r [ i +1])) { 110 is_ = 0; 111 } ià('-' =ð ho¡ -> ±r [ i +1]) { 115 is_ = 1; 118 ¡age = DOMAINLABEL ; 120 Ïb–_Ën = 0; 121 Ëv– ++; 122 } ià( i == 0) { 126 } ià( i == 0) { 128 ià(! `light_i§Íha ( c )) { 131 Ïb–_Ën ++; 133 ià( c !ð'-' && ! `light_i§Êum (c)) { 136 ià( is_ == -1) { 137 ià(! `light_isdig™ ( c )è is_ = 0; 139 Ïb–_Ën ++; 143  DOMAINLABEL : 144 ià( is_ == 1) { 145 ià( c == '.') { 146 ià( Ïb–_Ën == 0) { 150 Ïb–_Ën = 0; 151 Ëv– ++; 152 } ià(! `light_isdig™ ( c )) { 155 Ïb–_Ën ++; 158 ià( c == '.') { 159 ià( Ïb–_Ën == 0) { 164 ià('-' =ð ho¡ -> ±r [ i +1]) { 168 Ïb–_Ën = 0; 169 Ëv– ++; 170 } ià( i == 0) { 171 ià(! `light_i§Êum ( c )) { 174 Ïb–_Ën ++; 176 ià( c !ð'-' && ! `light_i§Êum (c)) { 179 Ïb–_Ën ++; 188 ià( is_ =ð1 && Ëv– != 3) { 192 ià( Ïb–_Ën == 0) { 197 } } 200  #DUMP_HEADER ) 203  $h‰p_»que¡_¥l™_v®ue ( ¬¿y * v®s , bufãr * b ) { 204 * s ; 205 size_t i ; 206  ¡©e = 0; 215 ià( b -> u£d == 0)  0; 217 s = b -> ±r ; 219  i =0; i < b -> u£d - 1; ) { 220 * ¡¬t = NULL , * ’d = NULL; 221 d©a_¡ršg * ds ; 223  ¡©e ) { 227 ; (* s =ð' ' || * =ð'\t'è&& i < b -> u£d - 1; i++, s++); 230 ¡©e = 1; 233 ¡¬t = s ; 235 ; * s !ð',' && i < b -> u£d - 1; i++, s++); 236 ’d = s - 1; 238 ; (* ’d =ð' ' || *’d =ð'\t'è&&ƒnd > ¡¬t ;ƒnd--); 240 ià( NULL =ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( v®s , TYPE_STRING ))) { 241 ds = `d©a_¡ršg_š™ (); 244 `bufãr_cÝy_¡ršg_Ën ( ds -> v®ue , ¡¬t , ’d -start+1); 245 `¬¿y_š£¹_unique ( v®s , ( d©a_un£t *) ds ); 247 ià(* s == ',') { 248 ¡©e = 0; 249 i ++; 250 s ++; 254 ¡©e = 2; 258 i ++; 263 } } 265  $»que¡_uri_is_v®id_ch¬ ( c ) { 266 ià( c <= 32)  0; 267 ià( c == 127)  0; 268 ià( c == 255)  0; 271 } } 273  $h‰p_»que¡_·r£ ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 274 * uri = NULL , * ´Ùo = NULL, * m‘hod = NULL, cÚ_Ëngth_£t ; 275  is_key = 1, key_Ën = 0, is_ws_aá”_key = 0, š_fÞdšg ; 276 * v®ue = NULL , * key = NULL; 278 ’um { HTTP_CONNECTION_UNSET , HTTP_CONNECTION_KEEPALIVE , HTTP_CONNECTION_CLOSE } k“p_®ive_£t = HTTP_CONNECTION_UNSET; 280  lše = 0; 282  »que¡_lše_¡age = 0; 283 size_t i , fœ¡ ; 285  dÚe = 0; 293 ià( cÚ -> cÚf . log_»que¡_h—d” ) { 294 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdsdSb", 295 "fd:", cÚ -> fd , 296 "»que¡-Ën:", cÚ -> »que¡ .»que¡-> u£d , 297 "\n", cÚ -> »que¡ .request); 300 ià( cÚ -> »que¡_couÁ > 1 && 301 cÚ -> »que¡ .»que¡-> ±r [0] == '\r' && 302 cÚ -> »que¡ .»que¡-> ±r [1] == '\n') { 305 `bufãr_cÝy_¡ršg_Ën ( cÚ -> ·r£_»que¡ , cÚ-> »que¡ .»que¡-> ±r + 2, cÚ->»que¡.»que¡-> u£d - 1 - 2); 308 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> ·r£_»que¡ , cÚ-> »que¡ .request); 311 k“p_®ive_£t = 0; 312 cÚ_Ëngth_£t = 0; 320  i = 0, fœ¡ = 0; i < cÚ -> ·r£_»que¡ -> u£d && lše == 0; i++) { 321 * cur = cÚ -> ·r£_»que¡ -> ±r + i ; 323 * cur ) { 325 ià( cÚ -> ·r£_»que¡ -> ±r [ i +1] == '\n') { 326 h‰p_m‘hod_t r ; 327 * nuri = NULL ; 328 size_t j ; 331 cÚ -> ·r£_»que¡ -> ±r [ i ] = '\0'; 332 cÚ -> ·r£_»que¡ -> ±r [ i +1] = '\0'; 334 `bufãr_cÝy_¡ršg_Ën ( cÚ -> »que¡ . »que¡_lše , cÚ-> ·r£_»que¡ -> ±r , i ); 336 ià( »que¡_lše_¡age != 2) { 337 cÚ -> h‰p_¡©us = 400; 338 cÚ -> »¥Ú£ . k“p_®ive = 0; 339 cÚ -> k“p_®ive = 0; 341 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 342 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "incomplete„equest†ine -> 400"); 343 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 345 cÚ -> »que¡ .request); 350 ´Ùo = cÚ -> ·r£_»que¡ -> ±r + fœ¡ ; 352 *( uri - 1) = '\0'; 353 *( ´Ùo - 1) = '\0'; 356 ià(-1 =ð( r = `g‘_h‰p_m‘hod_key ( m‘hod ))) { 357 cÚ -> h‰p_¡©us = 501; 358 cÚ -> »¥Ú£ . k“p_®ive = 0; 359 cÚ -> k“p_®ive = 0; 361 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 362 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "unknown http-method -> 501"); 363 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 365 cÚ -> »que¡ .request); 371 cÚ -> »que¡ . h‰p_m‘hod = r ; 379 ià(0 =ð `¡ºcmp ( ´Ùo , "HTTP/", ("HTTP/") - 1)) { 380 * majÜ = ´Ùo + ("HTTP/") - 1; 381 * mšÜ = `¡rchr ( majÜ , '.'); 382 * ”r = NULL ; 383  majÜ_num = 0, mšÜ_num = 0; 385  šv®id_v”siÚ = 0; 387 ià( NULL =ð mšÜ || 388 mšÜ =ð majÜ || 389 *( mšÜ + 1) == '\0' ) { 390 šv®id_v”siÚ = 1; 392 * mšÜ = '\0'; 393 majÜ_num = `¡¹Þ ( majÜ , & ”r , 10); 395 ià(* ”r !ð'\0'è šv®id_v”siÚ = 1; 397 * mšÜ ++ = '.'; 398 mšÜ_num = `¡¹Þ ( mšÜ , & ”r , 10); 400 ià(* ”r !ð'\0'è šv®id_v”siÚ = 1; 403 ià( šv®id_v”siÚ ) { 404 cÚ -> h‰p_¡©us = 400; 405 cÚ -> k“p_®ive = 0; 407 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 408 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "unknown…rotocol -> 400"); 409 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 411 cÚ -> »que¡ .request); 416 ià( majÜ_num =ð1 && mšÜ_num == 1) { 417 cÚ -> »que¡ . h‰p_v”siÚ = cÚ-> cÚf . ®low_h‰p11 ? HTTP_VERSION_1_1 : HTTP_VERSION_1_0 ; 418 } ià( majÜ_num =ð1 && mšÜ_num == 0) { 419 cÚ -> »que¡ . h‰p_v”siÚ = HTTP_VERSION_1_0 ; 421 cÚ -> h‰p_¡©us = 505; 423 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 424 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "unknown HTTP version -> 505"); 425 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 427 cÚ -> »que¡ .request); 432 cÚ -> h‰p_¡©us = 400; 433 cÚ -> k“p_®ive = 0; 435 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 436 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "unknown…rotocol -> 400"); 437 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 439 cÚ -> »que¡ .request); 444 ià(0 =ð `¡ºcmp ( uri , "http://", 7) && 445 NULL !ð( nuri = `¡rchr ( uri + 7, '/'))) { 448 `bufãr_cÝy_¡ršg_Ën ( cÚ -> »que¡ . uri , nuri , ´Ùo -‚uri - 1); 451 `bufãr_cÝy_¡ršg_Ën ( cÚ -> »que¡ . uri , uri, ´Ùo - uri - 1); 455  j = 0; j < cÚ -> »que¡ . uri -> u£d - 1; j++) { 456 ià(! `»que¡_uri_is_v®id_ch¬ ( cÚ -> »que¡ . uri -> ±r [ j ])) { 457  buf [2]; 458 cÚ -> h‰p_¡©us = 400; 459 cÚ -> k“p_®ive = 0; 461 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 462 buf [0] = cÚ -> »que¡ . uri -> ±r [ j ]; 463 buf [1] = '\0'; 465 ià( cÚ -> »que¡ . uri -> ±r [ j ] > 32 && 466 cÚ -> »que¡ . uri -> ±r [ j ] != 127) { 468 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 470 buf ); 473 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 475 cÚ -> »que¡ . uri -> ±r [ j ]); 478 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 480 cÚ -> »que¡ .request); 487 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> »que¡ . Üig_uri , cÚ->»que¡. uri ); 489 cÚ -> h‰p_¡©us = 0; 491 i ++; 492 lše ++; 493 fœ¡ = i +1; 497  »que¡_lše_¡age ) { 500 m‘hod = cÚ -> ·r£_»que¡ -> ±r + fœ¡ ; 501 fœ¡ = i + 1; 505 uri = cÚ -> ·r£_»que¡ -> ±r + fœ¡ ; 506 fœ¡ = i + 1; 510 cÚ -> h‰p_¡©us = 400; 511 cÚ -> »¥Ú£ . k“p_®ive = 0; 512 cÚ -> k“p_®ive = 0; 514 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 515 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "overlong„equest†ine -> 400"); 516 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 518 cÚ -> »que¡ .request); 523 »que¡_lše_¡age ++; 528 š_fÞdšg = 0; 530 ià( cÚ -> »que¡ . uri -> u£d == 1) { 531 cÚ -> h‰p_¡©us = 400; 532 cÚ -> »¥Ú£ . k“p_®ive = 0; 533 cÚ -> k“p_®ive = 0; 535 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "no uri specified -> 400"); 536 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 537 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 539 cÚ -> »que¡ .request); 545 ; i < cÚ -> ·r£_»que¡ -> u£d && ! dÚe ; i++) { 546 * cur = cÚ -> ·r£_»que¡ -> ±r + i ; 548 ià( is_key ) { 549 size_t j ; 550  gÙ_cÞÚ = 0; 557 * cur ) { 559 is_key = 0; 561 v®ue = cur + 1; 563 ià( is_ws_aá”_key == 0) { 564 key_Ën = i - fœ¡ ; 566 is_ws_aá”_key = 0; 585 cÚ -> h‰p_¡©us = 400; 586 cÚ -> k“p_®ive = 0; 587 cÚ -> »¥Ú£ . k“p_®ive = 0; 589 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsds", 590 "šv®id ch¬aù” iÀkey", cÚ -> »que¡ .»que¡, cur , *cur, "-> 400"); 594 ià( i =ð fœ¡ ) { 595 is_key = 0; 596 š_fÞdšg = 1; 597 v®ue = cur ; 603 key_Ën = i - fœ¡ ; 606  j = 1; ! gÙ_cÞÚ ; j++) { 607  cÚ -> ·r£_»que¡ -> ±r [ j + i ]) { 615 i +ð j - 1; 616 gÙ_cÞÚ = 1; 622 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 623 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "WS character in key -> 400"); 624 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 626 cÚ -> »que¡ .request); 629 cÚ -> h‰p_¡©us = 400; 630 cÚ -> »¥Ú£ . k“p_®ive = 0; 631 cÚ -> k“p_®ive = 0; 639 ià( cÚ -> ·r£_»que¡ -> ±r [ i +1] =ð'\n' && i =ð fœ¡ ) { 641 cÚ -> ·r£_»que¡ -> ±r [ i ] = '\0'; 642 cÚ -> ·r£_»que¡ -> ±r [ i +1] = '\0'; 644 i ++; 646 dÚe = 1; 650 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 651 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "CR without LF -> 400"); 652 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 654 cÚ -> »que¡ .request); 657 cÚ -> h‰p_¡©us = 400; 658 cÚ -> k“p_®ive = 0; 659 cÚ -> »¥Ú£ . k“p_®ive = 0; 694 cÚ -> h‰p_¡©us = 400; 695 cÚ -> k“p_®ive = 0; 696 cÚ -> »¥Ú£ . k“p_®ive = 0; 698 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 699 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsds", 700 "CTL ch¬aù” iÀkey", cÚ -> »que¡ .»que¡, cur , *cur, "-> 400"); 702 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 704 cÚ -> »que¡ .request); 713 * cur ) { 715 ià( cÚ -> ·r£_»que¡ -> ±r [ i +1] == '\n') { 716 d©a_¡ršg * ds = NULL ; 719 cÚ -> ·r£_»que¡ -> ±r [ i ] = '\0'; 720 cÚ -> ·r£_»que¡ -> ±r [ i +1] = '\0'; 722 ià( š_fÞdšg ) { 723 bufãr * key_b ; 733 ià(! key || ! key_Ën ) { 736 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 737 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "WS‡the start of first†ine -> 400"); 739 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 741 cÚ -> »que¡ .request); 745 cÚ -> h‰p_¡©us = 400; 746 cÚ -> k“p_®ive = 0; 747 cÚ -> »¥Ú£ . k“p_®ive = 0; 751 key_b = `bufãr_š™ (); 752 `bufãr_cÝy_¡ršg_Ën ( key_b , key , key_Ën ); 754 ià( NULL !ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_–em’t ( cÚ -> »que¡ . h—d”s , key_b -> ±r ))) { 755 `bufãr_­³nd_¡ršg ( ds -> v®ue , value); 758 `bufãr_ä“ ( key_b ); 760  s_Ën ; 761 key = cÚ -> ·r£_»que¡ -> ±r + fœ¡ ; 763 s_Ën = cur - v®ue ; 766 ; s_Ën > 0 && 767 ( v®ue [ s_Ën - 1] == ' ' || 768 v®ue [ s_Ën - 1] == '\t'); s_len--); 770 v®ue [ s_Ën ] = '\0'; 772 ià( s_Ën > 0) { 773  cmp = 0; 774 ià( NULL =ð( ds = ( d©a_¡ršg *) `¬¿y_g‘_unu£d_–em’t ( cÚ -> »que¡ . h—d”s , TYPE_STRING ))) { 775 ds = `d©a_¡ršg_š™ (); 777 `bufãr_cÝy_¡ršg_Ën ( ds -> key , key, key_Ën ); 778 `bufãr_cÝy_¡ršg_Ën ( ds -> v®ue , v®ue, s_Ën ); 786 ià(0 =ð( cmp = `bufãr_ÿ£Ëss_com·» ( `CONST_BUF_LEN ( ds -> key ), `CONST_STR_LEN ("Connection")))) { 787 ¬¿y * v®s ; 788 size_t vi ; 792 v®s = ¤v -> ¥l™_v®s ; 794 `¬¿y_»£t ( v®s ); 796 `h‰p_»que¡_¥l™_v®ue ( v®s , ds -> v®ue ); 798  vi = 0; v˜< v®s -> u£d ; vi++) { 799 d©a_¡ršg * dsv = (d©a_¡ršg *) v®s -> d©a [ vi ]; 801 ià(0 =ð `bufãr_ÿ£Ëss_com·» ( `CONST_BUF_LEN ( dsv -> v®ue ), `CONST_STR_LEN ("keep-alive"))) { 802 k“p_®ive_£t = HTTP_CONNECTION_KEEPALIVE ; 805 } ià(0 =ð `bufãr_ÿ£Ëss_com·» ( `CONST_BUF_LEN ( dsv -> v®ue ), `CONST_STR_LEN ("close"))) { 806 k“p_®ive_£t = HTTP_CONNECTION_CLOSE ; 812 } ià( cmp > 0 && 0 =ð(cm°ð `bufãr_ÿ£Ëss_com·» ( `CONST_BUF_LEN ( ds -> key ), `CONST_STR_LEN ("Content-Length")))) { 813 * ”r ; 814  r ; 815 size_t j ; 817 ià( cÚ_Ëngth_£t ) { 818 cÚ -> h‰p_¡©us = 400; 819 cÚ -> k“p_®ive = 0; 821 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 822 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 824 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 826 cÚ -> »que¡ .request); 831 ià( ds -> v®ue -> u£d =ð0è `SEGFAULT (); 833  j = 0; j < ds -> v®ue -> u£d - 1; j++) { 834  c = ds -> v®ue -> ±r [ j ]; 835 ià(! `isdig™ (() c )) { 836 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 837 "cÚ‹Á-Ëngth brok’:", ds -> v®ue , "-> 400"); 839 cÚ -> h‰p_¡©us = 400; 840 cÚ -> k“p_®ive = 0; 842 `¬¿y_š£¹_unique ( cÚ -> »que¡ . h—d”s , ( d©a_un£t *) ds ); 847 r = `¡¹oul ( ds -> v®ue -> ±r , & ”r , 10); 849 ià(* ”r == '\0') { 850 cÚ_Ëngth_£t = 1; 851 cÚ -> »que¡ . cÚ‹Á_Ëngth = r ; 853 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 854 "cÚ‹Á-Ëngth brok’:", ds -> v®ue , "-> 400"); 856 cÚ -> h‰p_¡©us = 400; 857 cÚ -> k“p_®ive = 0; 859 `¬¿y_š£¹_unique ( cÚ -> »que¡ . h—d”s , ( d©a_un£t *) ds ); 862 } ià( cmp > 0 && 0 =ð(cm°ð `bufãr_ÿ£Ëss_com·» ( `CONST_BUF_LEN ( ds -> key ), `CONST_STR_LEN ("Content-Type")))) { 864 ià(! cÚ -> »que¡ . h‰p_cÚ‹Á_ty³ ) { 865 cÚ -> »que¡ . h‰p_cÚ‹Á_ty³ = ds -> v®ue -> ±r ; 867 cÚ -> h‰p_¡©us = 400; 868 cÚ -> k“p_®ive = 0; 870 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 871 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 873 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 875 cÚ -> »que¡ .request); 879 } ià( cmp > 0 && 0 =ð(cm°ð `bufãr_ÿ£Ëss_com·» ( `CONST_BUF_LEN ( ds -> key ), `CONST_STR_LEN ("Expect")))) { 895 cÚ -> h‰p_¡©us = 417; 896 cÚ -> k“p_®ive = 0; 898 `¬¿y_š£¹_unique ( cÚ -> »que¡ . h—d”s , ( d©a_un£t *) ds ); 900 } ià( cmp > 0 && 0 =ð(cm°ð `bufãr_ÿ£Ëss_com·» ( `CONST_BUF_LEN ( ds -> key ), `CONST_STR_LEN ("Host")))) { 901 ià(! cÚ -> »que¡ . h‰p_ho¡ ) { 902 cÚ -> »que¡ . h‰p_ho¡ = ds -> v®ue ; 904 cÚ -> h‰p_¡©us = 400; 905 cÚ -> k“p_®ive = 0; 907 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 908 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 910 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 912 cÚ -> »que¡ .request); 916 } ià( cmp > 0 && 0 =ð(cm°ð `bufãr_ÿ£Ëss_com·» ( `CONST_BUF_LEN ( ds -> key ), `CONST_STR_LEN ("If-Modified-Since")))) { 920 ià(! cÚ -> »que¡ . h‰p_if_modif›d_sšû ) { 921 cÚ -> »que¡ . h‰p_if_modif›d_sšû = ds -> v®ue -> ±r ; 922 } ià(0 =ð `¡rÿ£cmp ( cÚ -> »que¡ . h‰p_if_modif›d_sšû , 923 ds -> v®ue -> ±r )) { 926 ds -> `ä“ (( d©a_un£t *)ds); 927 ds = NULL ; 929 cÚ -> h‰p_¡©us = 400; 930 cÚ -> k“p_®ive = 0; 932 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 933 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 935 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 937 cÚ -> »que¡ .request); 941 } ià( cmp > 0 && 0 =ð(cm°ð `bufãr_ÿ£Ëss_com·» ( `CONST_BUF_LEN ( ds -> key ), `CONST_STR_LEN ("If-None-Match")))) { 943 ià(! cÚ -> »que¡ . h‰p_if_nÚe_m©ch ) { 944 cÚ -> »que¡ . h‰p_if_nÚe_m©ch = ds -> v®ue -> ±r ; 946 cÚ -> h‰p_¡©us = 400; 947 cÚ -> k“p_®ive = 0; 949 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 950 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 952 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 954 cÚ -> »que¡ .request); 958 } ià( cmp > 0 && 0 =ð(cm°ð `bufãr_ÿ£Ëss_com·» ( `CONST_BUF_LEN ( ds -> key ), `CONST_STR_LEN ("Range")))) { 959 ià(! cÚ -> »que¡ . h‰p_¿nge ) { 962 ià(0 =ð `¡ºÿ£cmp ( ds -> v®ue -> ±r , "bytes=", 6) && 963 NULL !ð `¡rchr ( ds -> v®ue -> ±r +6, '-')) { 966 cÚ -> »que¡ . h‰p_¿nge = ds -> v®ue -> ±r + 6; 969 cÚ -> h‰p_¡©us = 400; 970 cÚ -> k“p_®ive = 0; 972 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 973 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 975 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 977 cÚ -> »que¡ .request); 983 ià( ds è `¬¿y_š£¹_unique ( cÚ -> »que¡ . h—d”s , ( d©a_un£t *)ds); 989 i ++; 990 fœ¡ = i +1; 991 is_key = 1; 992 v®ue = 0; 997 key_Ën = 0; 999 š_fÞdšg = 0; 1001 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 1002 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 1003 "CR w™houˆLF", cÚ -> »que¡ .request, "-> 400"); 1006 cÚ -> h‰p_¡©us = 400; 1007 cÚ -> k“p_®ive = 0; 1008 cÚ -> »¥Ú£ . k“p_®ive = 0; 1015 ià( v®ue =ð cur ) value = cur+1; 1017 ià(* cur >= 0 && *cur < 32) { 1018 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 1019 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1020 "šv®id ch¬ iÀh—d”", ()* cur , "-> 400"); 1023 cÚ -> h‰p_¡©us = 400; 1024 cÚ -> k“p_®ive = 0; 1033 cÚ -> h—d”_Ën = i ; 1037 ià( cÚ -> »que¡ . h‰p_v”siÚ =ð HTTP_VERSION_1_1 ) { 1038 ià( k“p_®ive_£t !ð HTTP_CONNECTION_CLOSE ) { 1042 cÚ -> k“p_®ive = 1; 1044 cÚ -> k“p_®ive = 0; 1048 ià( cÚ -> »que¡ . h‰p_ho¡ =ð NULL || 1049 `bufãr_is_em±y ( cÚ -> »que¡ . h‰p_ho¡ )) { 1050 cÚ -> h‰p_¡©us = 400; 1051 cÚ -> »¥Ú£ . k“p_®ive = 0; 1052 cÚ -> k“p_®ive = 0; 1054 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 1055 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "HTTP/1.1 but Host missing -> 400"); 1056 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 1058 cÚ -> »que¡ .request); 1063 ià( k“p_®ive_£t =ð HTTP_CONNECTION_KEEPALIVE ) { 1067 cÚ -> k“p_®ive = 1; 1069 cÚ -> k“p_®ive = 0; 1074 ià( NULL !ð cÚ -> »que¡ . h‰p_ho¡ && 1075 0 !ð `»que¡_check_ho¡Çme ( ¤v , cÚ , cÚ-> »que¡ . h‰p_ho¡ )) { 1077 ià( ¤v -> ¤vcÚf . log_»que¡_h—d”_Ú_”rÜ ) { 1078 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1080 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "Sb", 1082 cÚ -> »que¡ .request); 1085 cÚ -> h‰p_¡©us = 400; 1086 cÚ -> »¥Ú£ . k“p_®ive = 0; 1087 cÚ -> k“p_®ive = 0; 1092  cÚ -> »que¡ . h‰p_m‘hod ) { 1093  HTTP_METHOD_GET : 1094  HTTP_METHOD_HEAD : 1096 ià( cÚ_Ëngth_£t && cÚ -> »que¡ . cÚ‹Á_Ëngth != 0) { 1098 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1101 cÚ -> k“p_®ive = 0; 1102 cÚ -> h‰p_¡©us = 400; 1106  HTTP_METHOD_POST : 1108 ià(! cÚ_Ëngth_£t ) { 1110 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1113 cÚ -> k“p_®ive = 0; 1114 cÚ -> h‰p_¡©us = 411; 1126 ià( cÚ_Ëngth_£t ) { 1128 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth > SSIZE_MAX ) { 1129 cÚ -> h‰p_¡©us = 413; 1130 cÚ -> k“p_®ive = 0; 1132 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1133 "»que¡-siztoØlÚg:", cÚ -> »que¡ . cÚ‹Á_Ëngth , "-> 413"); 1138 ià( ¤v -> ¤vcÚf . max_»que¡_size != 0 && 1139 ( cÚ -> »que¡ . cÚ‹Á_Ëngth >> 10è> ¤v -> ¤vcÚf . max_»que¡_size ) { 1144 cÚ -> h‰p_¡©us = 413; 1145 cÚ -> k“p_®ive = 0; 1147 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sds", 1148 "»que¡-siztoØlÚg:", cÚ -> »que¡ . cÚ‹Á_Ëngth , "-> 413"); 1154 ià( cÚ -> »que¡ . cÚ‹Á_Ëngth != 0) { 1160 } } 1162  $h‰p_»que¡_h—d”_fšished ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 1163 `UNUSED ( ¤v ); 1165 ià( cÚ -> »que¡ .»que¡-> u£d < 5)  0; 1167 ià(0 =ð `memcmp ( cÚ -> »que¡ .»que¡-> ±r + cÚ->»que¡.»que¡-> u£d - 5, "\r\n\r\n", 4))  1; 1168 ià( NULL !ð `¡r¡r ( cÚ -> »que¡ .»que¡-> ±r , "\r\n\r\n"))  1; 1171 } } @src/request.h 1 #iâdeà _REQUEST_H_ 2  #_REQUEST_H_ ) 4  ~"£rv”.h " 6  h‰p_»que¡_·r£ ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 7  h‰p_»que¡_h—d”_fšished ( £rv” * ¤v , cÚÃùiÚ * cÚ ); @src/response.c 1  ~ 2  ~ 4  ~ 5  ~<”ºo.h > 6  ~ 7  ~<¡dlib.h > 8  ~<¡ršg.h > 9  ~ 10  ~ 11  ~<ùy³.h > 12  ~ 14  ~<¡dio.h > 16  ~"»¥Ú£.h " 17  ~"keyv®ue.h " 18  ~"log.h " 19  ~"¡©_ÿche.h " 20  ~"chunk.h " 22  ~"cÚfigfže.h " 23  ~"cÚÃùiÚs.h " 25  ~"¶ugš.h " 27  ~"sys-sock‘.h " 29  $h‰p_»¥Ú£_wr™e_h—d” ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 30 bufãr * b ; 31 size_t i ; 32  have_d©e = 0; 33  have_£rv” = 0; 35 b = `chunkqueue_g‘_´•’d_bufãr ( cÚ -> wr™e_queue ); 37 ià( cÚ -> »que¡ . h‰p_v”siÚ =ð HTTP_VERSION_1_1 ) { 38 `BUFFER_COPY_STRING_CONST ( b , "HTTP/1.1 "); 40 `BUFFER_COPY_STRING_CONST ( b , "HTTP/1.0 "); 42 `bufãr_­³nd_lÚg ( b , cÚ -> h‰p_¡©us ); 43 `BUFFER_APPEND_STRING_CONST ( b , " "); 44 `bufãr_­³nd_¡ršg ( b , `g‘_h‰p_¡©us_Çme ( cÚ -> h‰p_¡©us )); 46 ià( cÚ -> »que¡ . h‰p_v”siÚ !ð HTTP_VERSION_1_1 || cÚ-> k“p_®ive == 0) { 47 `BUFFER_APPEND_STRING_CONST ( b , "\r\nConnection: "); 48 `bufãr_­³nd_¡ršg ( b , cÚ -> k“p_®ive ? "keep-alive" : "close"); 51 ià( cÚ -> »¥Ú£ . Œªsãr_’codšg & HTTP_TRANSFER_ENCODING_CHUNKED ) { 52 `BUFFER_APPEND_STRING_CONST ( b , "\r\nTransfer-Encoding: chunked"); 57  i = 0; i < cÚ -> »¥Ú£ . h—d”s -> u£d ; i++) { 58 d©a_¡ršg * ds ; 60 ds = ( d©a_¡ršg *) cÚ -> »¥Ú£ . h—d”s -> d©a [ i ]; 62 ià( ds -> v®ue -> u£d && ds-> key ->used && 63 0 !ð `¡ºcmp ( ds -> key -> ±r , "X-LIGHTTPD-", ("X-LIGHTTPD-") - 1) && 64 0 !ð `¡ºcmp ( ds -> key -> ±r , "X-Sendfile", ("X-Sendfile") - 1)) { 65 ià( `bufãr_is_equ®_¡ršg ( ds -> key , `CONST_STR_LEN ("D©e"))è have_d©e = 1; 66 ià( `bufãr_is_equ®_¡ršg ( ds -> key , `CONST_STR_LEN ("S”v”"))è have_£rv” = 1; 68 `BUFFER_APPEND_STRING_CONST ( b , "\r\n"); 69 `bufãr_­³nd_¡ršg_bufãr ( b , ds -> key ); 70 `BUFFER_APPEND_STRING_CONST ( b , ": "); 75 `bufãr_­³nd_¡ršg_’coded ( b , `CONST_BUF_LEN ( ds -> v®ue ), ENCODING_HTTP_HEADER ); 77 `bufãr_­³nd_¡ršg_bufãr ( b , ds -> v®ue ); 82 ià(! have_d©e ) { 84 `BUFFER_APPEND_STRING_CONST ( b , "\r\nDate: "); 87 ià( ¤v -> cur_ts !ð¤v-> Ï¡_g’”©ed_d©e_ts ) { 88 `bufãr_´•¬e_cÝy ( ¤v -> ts_d©e_¡r , 255); 90 `¡ráime ( ¤v -> ts_d©e_¡r -> ±r , srv->ts_d©e_¡r-> size - 1, 91 "%a, %d %b %Y %H:%M:%S GMT", `gmtime (&( ¤v -> cur_ts ))); 93 ¤v -> ts_d©e_¡r -> u£d = `¡¾’ (¤v->ts_d©e_¡r-> ±r ) + 1; 95 ¤v -> Ï¡_g’”©ed_d©e_ts = srv-> cur_ts ; 98 `bufãr_­³nd_¡ršg_bufãr ( b , ¤v -> ts_d©e_¡r ); 101 ià(! have_£rv” ) { 102 ià( `bufãr_is_em±y ( cÚ -> cÚf . £rv”_g )) { 103 `BUFFER_APPEND_STRING_CONST ( b , "\r\nS”v”: " PACKAGE_NAME "/" PACKAGE_VERSION ); 105 `BUFFER_APPEND_STRING_CONST ( b , "\r\nServer: "); 106 `bufãr_­³nd_¡ršg_’coded ( b , `CONST_BUF_LEN ( cÚ -> cÚf . £rv”_g ), ENCODING_HTTP_HEADER ); 110 `BUFFER_APPEND_STRING_CONST ( b , "\r\n\r\n"); 113 cÚ -> by‹s_h—d” = b -> u£d - 1; 115 ià( cÚ -> cÚf . log_»¥Ú£_h—d” ) { 116 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sSb", "Re¥Ú£-H—d”:", "\n", b ); 120 } } 124 hªdËr_t $h‰p_»¥Ú£_´•¬e ( £rv” * ¤v , cÚÃùiÚ * cÚ ) { 125 hªdËr_t r ; 128 ià( cÚ -> mode =ð DIRECT && 129 ( cÚ -> h‰p_¡©us != 0 && con->http_status != 200)) { 131 ià( cÚ -> fže_fšished == 0) { 132 `chunkqueue_»£t ( cÚ -> wr™e_queue ); 135  HANDLER_FINISHED ; 139 ià( cÚ -> mode =ð DIRECT && cÚ-> physiÿl . ·th -> u£d == 0) { 140 * q¡r ; 154 `cÚfig_cÚd_ÿche_»£t ( ¤v , cÚ ); 155 `cÚfig_£tup_cÚÃùiÚ ( ¤v , cÚ ); 157 ià( cÚ -> cÚf . log_cÚd™iÚ_hªdlšg ) { 158 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "run condition"); 160 `cÚfig_·tch_cÚÃùiÚ ( ¤v , cÚ , COMP_SERVER_SOCKET ); 184 `bufãr_cÝy_¡ršg ( cÚ -> uri . scheme , cÚ-> cÚf . is_s¦ ? "https" : "http"); 185 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> uri . authÜ™y , cÚ-> »que¡ . h‰p_ho¡ ); 186 `bufãr_to_low” ( cÚ -> uri . authÜ™y ); 188 `cÚfig_·tch_cÚÃùiÚ ( ¤v , cÚ , COMP_HTTP_SCHEME ); 189 `cÚfig_·tch_cÚÃùiÚ ( ¤v , cÚ , COMP_HTTP_HOST ); 190 `cÚfig_·tch_cÚÃùiÚ ( ¤v , cÚ , COMP_HTTP_REMOTE_IP ); 191 `cÚfig_·tch_cÚÃùiÚ ( ¤v , cÚ , COMP_HTTP_REFERER ); 192 `cÚfig_·tch_cÚÃùiÚ ( ¤v , cÚ , COMP_HTTP_USER_AGENT ); 193 `cÚfig_·tch_cÚÃùiÚ ( ¤v , cÚ , COMP_HTTP_COOKIE ); 194 `cÚfig_·tch_cÚÃùiÚ ( ¤v , cÚ , COMP_HTTP_REQUEST_METHOD ); 197 ià( NULL !ð( q¡r = `¡rchr ( cÚ -> »que¡ . uri -> ±r , '#'))) { 198 cÚ -> »que¡ . uri -> u£d = q¡r - cÚ->»que¡.uri-> ±r ; 199 cÚ -> »que¡ . uri -> ±r [cÚ->»que¡.uri-> u£d ++] = '\0'; 203 ià( NULL !ð( q¡r = `¡rchr ( cÚ -> »que¡ . uri -> ±r , '?'))) { 204 `bufãr_cÝy_¡ršg ( cÚ -> uri . qu”y , q¡r + 1); 205 `bufãr_cÝy_¡ršg_Ën ( cÚ -> uri . ·th_¿w , cÚ-> »que¡ .uri-> ±r , q¡r - con->request.uri->ptr); 207 `bufãr_»£t ( cÚ -> uri . qu”y ); 208 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> uri . ·th_¿w , cÚ-> »que¡ .uri); 211 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 212 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "-- splitting Request-URI"); 213 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "Reque¡-URI : ", cÚ -> »que¡ . uri ); 214 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "URI-schem : ", cÚ -> uri . scheme ); 215 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "URI-authÜ™y: ", cÚ -> uri . authÜ™y ); 216 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "URI-·th : ", cÚ -> uri . ·th_¿w ); 217 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "URI-qu”y : ", cÚ -> uri . qu”y ); 222 ià( cÚ -> »que¡_couÁ > cÚ-> cÚf . max_k“p_®ive_»que¡s ) { 223 cÚ -> k“p_®ive = 0; 235  r = `¶ugšs_ÿÎ_hªdË_uri_¿w ( ¤v , cÚ )) { 236  HANDLER_GO_ON : 238  HANDLER_FINISHED : 239  HANDLER_COMEBACK : 240  HANDLER_WAIT_FOR_EVENT : 241  HANDLER_ERROR : 242  r ; 244 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "hªdË_uri_¿w: unknowÀ»tuº v®ue", r ); 256 ià( cÚ -> »que¡ . h‰p_m‘hod =ð HTTP_METHOD_OPTIONS && 257 cÚ -> uri . ·th_¿w -> ±r [0] == '*' && con->uri.path_raw->ptr[1] == '\0') { 259 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> uri . ·th , cÚ->uri. ·th_¿w ); 261 `bufãr_cÝy_¡ršg_bufãr ( ¤v -> tmp_buf , cÚ -> uri . ·th_¿w ); 262 `bufãr_u¾decode_·th ( ¤v -> tmp_buf ); 263 `bufãr_·th_sim¶ify ( cÚ -> uri . ·th , ¤v -> tmp_buf ); 266 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 267 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "-- sanatising URI"); 268 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "URI-·th : ", cÚ -> uri . ·th ); 279 `cÚfig_·tch_cÚÃùiÚ ( ¤v , cÚ , COMP_HTTP_URL ); 280 `cÚfig_·tch_cÚÃùiÚ ( ¤v , cÚ , COMP_HTTP_QUERY_STRING ); 283 ià(! cÚ -> cÚf . ®low_h‰p11 ) { 284 cÚ -> »que¡ . h‰p_v”siÚ = HTTP_VERSION_1_0 ; 287  r = `¶ugšs_ÿÎ_hªdË_uri_þ—n ( ¤v , cÚ )) { 288  HANDLER_GO_ON : 290  HANDLER_FINISHED : 291  HANDLER_COMEBACK : 292  HANDLER_WAIT_FOR_EVENT : 293  HANDLER_ERROR : 294  r ; 296 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , ""); 300 ià( cÚ -> »que¡ . h‰p_m‘hod =ð HTTP_METHOD_OPTIONS && 301 cÚ -> uri . ·th -> ±r [0] =ð'*' && cÚ->uri. ·th_¿w ->ptr[1] == '\0') { 304 `»¥Ú£_h—d”_š£¹ ( ¤v , cÚ , `CONST_STR_LEN ("Allow"), CONST_STR_LEN("OPTIONS, GET, HEAD, POST")); 306 cÚ -> h‰p_¡©us = 200; 307 cÚ -> fže_fšished = 1; 309  HANDLER_FINISHED ; 342 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . doc_roÙ , cÚ-> cÚf . docum’t_roÙ ); 343 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . »l_·th , cÚ-> uri . ·th ); 345 #ià `defšed ( __WIN32 è|| defšed( __CYGWIN__ ) 359 ià( cÚ -> physiÿl . »l_·th -> u£d > 1) { 360 bufãr * b = cÚ -> physiÿl . »l_·th ; 361 size_t i ; 363 ià( b -> u£d > 2 && 364 b -> ±r [b-> u£d -2] == '/' && 365 ( b -> ±r [b-> u£d -3] == ' ' || 366 b -> ±r [b-> u£d -3] == '.')) { 367 b -> ±r [b-> u£d --] = '\0'; 370  i = b -> u£d - 2; b->used > 1; i--) { 371 ià( b -> ±r [ i ] == ' ' || 372 b -> ±r [ i ] == '.') { 373 b -> ±r [b-> u£d --] = '\0'; 381 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 382 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "-- before doc_root"); 383 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "Doc-RoÙ :", cÚ -> physiÿl . doc_roÙ ); 384 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "R–-P©h :", cÚ -> physiÿl . »l_·th ); 385 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©h :", cÚ -> physiÿl . ·th ); 390  r = `¶ugšs_ÿÎ_hªdË_doüoÙ ( ¤v , cÚ )) { 391  HANDLER_GO_ON : 393  HANDLER_FINISHED : 394  HANDLER_COMEBACK : 395  HANDLER_WAIT_FOR_EVENT : 396  HANDLER_ERROR : 397  r ; 399 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , ""); 407 ià( cÚ -> cÚf . fÜû_low”ÿ£_fž’ames ) { 408 `bufãr_to_low” ( cÚ -> physiÿl . »l_·th ); 412 ià( `bufãr_is_em±y ( cÚ -> £rv”_Çme )) { 413 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> £rv”_Çme , cÚ-> uri . authÜ™y ); 422 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ·th , cÚ->physiÿl. doc_roÙ ); 423 `BUFFER_APPEND_SLASH ( cÚ -> physiÿl . ·th ); 424 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ba£dœ , cÚ->physiÿl. ·th ); 425 ià( cÚ -> physiÿl . »l_·th -> u£d && 426 cÚ -> physiÿl . »l_·th -> ±r [0] == '/') { 427 `bufãr_­³nd_¡ršg_Ën ( cÚ -> physiÿl . ·th , cÚ->physiÿl. »l_·th -> ±r + 1, cÚ->physiÿl.»l_·th-> u£d - 2); 429 `bufãr_­³nd_¡ršg_bufãr ( cÚ -> physiÿl . ·th , cÚ->physiÿl. »l_·th ); 432 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 433 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "--‡fter doc_root"); 434 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "Doc-RoÙ :", cÚ -> physiÿl . doc_roÙ ); 435 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "R–-P©h :", cÚ -> physiÿl . »l_·th ); 436 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©h :", cÚ -> physiÿl . ·th ); 439  r = `¶ugšs_ÿÎ_hªdË_physiÿl ( ¤v , cÚ )) { 440  HANDLER_GO_ON : 442  HANDLER_FINISHED : 443  HANDLER_COMEBACK : 444  HANDLER_WAIT_FOR_EVENT : 445  HANDLER_ERROR : 446  r ; 448 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , ""); 452 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 453 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "--†ogical ->…hysical"); 454 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "Doc-RoÙ :", cÚ -> physiÿl . doc_roÙ ); 455 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "R–-P©h :", cÚ -> physiÿl . »l_·th ); 456 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©h :", cÚ -> physiÿl . ·th ); 466 ià( cÚ -> mode =ð DIRECT ) { 467 * ¦ash = NULL ; 468 * ·thšfo = NULL ; 469  found = 0; 470 ¡©_ÿche_’Œy * sû = NULL ; 472 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 473 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "-- handling…hysical…ath"); 474 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©h :", cÚ -> physiÿl . ·th ); 477 ià( HANDLER_ERROR !ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , cÚ-> physiÿl . ·th , & sû )) { 480 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 481 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "-- file found"); 482 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©h :", cÚ -> physiÿl . ·th ); 484 #ifdeà HAVE_LSTAT 485 ià(( sû -> is_symlšk !ð0è&& ! cÚ -> cÚf . fÞlow_symlšk ) { 486 cÚ -> h‰p_¡©us = 403; 488 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 489 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "--‡ccess denied due symlink„estriction"); 490 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©h :", cÚ -> physiÿl . ·th ); 493 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 494  HANDLER_FINISHED ; 497 ià( `S_ISDIR ( sû -> ¡ . ¡_mode )) { 498 ià( cÚ -> physiÿl . ·th -> ±r [cÚ->physiÿl.·th-> u£d - 2] != '/') { 501 `h‰p_»¥Ú£_»dœeù_to_dœeùÜy ( ¤v , cÚ ); 503  HANDLER_FINISHED ; 505 #ifdeà HAVE_LSTAT 506 } ià(! `S_ISREG ( sû -> ¡ . ¡_mode è&& !sû-> is_symlšk ) { 508 } ià(! `S_ISREG ( sû -> ¡ . ¡_mode )) { 515  ”ºo ) { 516  EACCES : 517 cÚ -> h‰p_¡©us = 403; 519 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 520 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "--‡ccess denied"); 521 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©h :", cÚ -> physiÿl . ·th ); 524 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 525  HANDLER_FINISHED ; 526  ENOENT : 527 cÚ -> h‰p_¡©us = 404; 529 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 530 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "-- file‚ot found"); 531 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©h :", cÚ -> physiÿl . ·th ); 534 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 535  HANDLER_FINISHED ; 536  ENOTDIR : 541 cÚ -> h‰p_¡©us = 500; 542 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 544 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ssbsb", 545 "fžnÙ found ... o¸so: ", `¡»¼Ü ( ”ºo ), 546 cÚ -> uri . ·th , 547 "->", cÚ -> physiÿl . ·th ); 549  HANDLER_FINISHED ; 554 `bufãr_cÝy_¡ršg_bufãr ( ¤v -> tmp_buf , cÚ -> physiÿl . ·th ); 557 ià( ¦ash ) { 558 `bufãr_cÝy_¡ršg_Ën ( cÚ -> physiÿl . ·th , ¤v -> tmp_buf -> ±r , ¦ash - srv->tmp_buf->ptr); 560 `bufãr_cÝy_¡ršg_bufãr ( cÚ -> physiÿl . ·th , ¤v -> tmp_buf ); 563 ià( HANDLER_ERROR !ð `¡©_ÿche_g‘_’Œy ( ¤v , cÚ , cÚ-> physiÿl . ·th , & sû )) { 564 found = `S_ISREG ( sû -> ¡ . ¡_mode ); 568 ià( ·thšfo !ð NULL ) { 569 * ·thšfo = '\0'; 571 ¦ash = `¡¼chr ( ¤v -> tmp_buf -> ±r , '/'); 573 ià( ·thšfo !ð NULL ) { 575 * ·thšfo = '/'; 578 ià( ¦ash è ·thšfo = slash; 579 } ( found =ð0è&& ( ¦ash !ð NULL è&& (( size_t )(¦ash - ¤v -> tmp_buf -> ±r è> ( cÚ -> physiÿl . ba£dœ -> u£d - 2))); 581 ià( found == 0) { 583 cÚ -> h‰p_¡©us = 404; 585 ià( cÚ -> cÚf . log_fže_nÙ_found ) { 586 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsb", 587 "fžnÙ found:", cÚ -> uri . ·th , 588 "->", cÚ -> physiÿl . ·th ); 591 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 593  HANDLER_FINISHED ; 596 #ifdeà HAVE_LSTAT 597 ià(( sû -> is_symlšk !ð0è&& ! cÚ -> cÚf . fÞlow_symlšk ) { 598 cÚ -> h‰p_¡©us = 403; 600 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 601 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "--‡ccess denied due symlink„estriction"); 602 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©h :", cÚ -> physiÿl . ·th ); 605 `bufãr_»£t ( cÚ -> physiÿl . ·th ); 606  HANDLER_FINISHED ; 611 ià( ·thšfo ) { 612 `bufãr_cÝy_¡ršg ( cÚ -> »que¡ . ·thšfo ,…athinfo); 618 cÚ -> uri . ·th -> u£d -ð `¡¾’ ( ·thšfo ); 619 cÚ -> uri . ·th -> ±r [cÚ->uri.·th-> u£d - 1] = '\0'; 622 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 623 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "--‡fter…athinfo check"); 624 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©h :", cÚ -> physiÿl . ·th ); 625 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "URI :", cÚ -> uri . ·th ); 626 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©hšfØ :", cÚ -> »que¡ . ·thšfo ); 630 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 631 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "-- handling subrequest"); 632 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", "P©h :", cÚ -> physiÿl . ·th ); 636  r = `¶ugšs_ÿÎ_hªdË_sub»que¡_¡¬t ( ¤v , cÚ )) { 637  HANDLER_GO_ON : 640  HANDLER_FINISHED : 642 ià( cÚ -> cÚf . log_»que¡_hªdlšg ) { 643 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "-- subrequest finished"); 647  r ; 652 ià( cÚ -> mode =ð DIRECT && cÚ-> h‰p_¡©us == 0) { 653  cÚ -> »que¡ . h‰p_m‘hod ) { 654  HTTP_METHOD_OPTIONS : 655 cÚ -> h‰p_¡©us = 200; 658 cÚ -> h‰p_¡©us = 403; 661  HANDLER_FINISHED ; 666  r = `¶ugšs_ÿÎ_hªdË_sub»que¡ ( ¤v , cÚ )) { 667  HANDLER_GO_ON : 669  HANDLER_FINISHED ; 670  HANDLER_FINISHED : 674  r ; 678  HANDLER_COMEBACK ; 679 } } @src/response.h 1 #iâdeà _RESPONSE_H_ 2  #_RESPONSE_H_ ) 4  ~ 6  ~"£rv”.h " 8  h‰p_»¥Ú£_·r£ ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 9  h‰p_»¥Ú£_wr™e_h—d” ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 11  »¥Ú£_h—d”_š£¹ ( £rv” * ¤v , cÚÃùiÚ * cÚ , cÚ¡ * key , size_t keyËn , cÚ¡ * v®ue , size_ˆ v®Ën ); 12  »¥Ú£_h—d”_ov”wr™e ( £rv” * ¤v , cÚÃùiÚ * cÚ , cÚ¡ * key , size_t keyËn , cÚ¡ * v®ue , size_ˆ v®Ën ); 14 hªdËr_t h‰p_»¥Ú£_´•¬e ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 15  h‰p_»¥Ú£_»dœeù_to_dœeùÜy ( £rv” * ¤v , cÚÃùiÚ * cÚ ); 16  h‰p_»¥Ú£_hªdË_ÿchabË ( £rv” * ¤v , cÚÃùiÚ * cÚ , bufãr * mtime ); 18 bufãr * ¡ráime_ÿche_g‘ ( £rv” * ¤v , time_t Ï¡_mod ); @src/server.c 1  ~ 2  ~ 3  ~ 5  ~<¡ršg.h > 6  ~<”ºo.h > 7  ~ 8  ~ 9  ~<¡dlib.h > 10  ~ 11  ~ 12  ~ 13  ~ 15  ~<¡dio.h > 17  ~"£rv”.h " 18  ~"bufãr.h " 19  ~"ÃtwÜk.h " 20  ~"log.h " 21  ~"keyv®ue.h " 22  ~"»¥Ú£.h " 23  ~"»que¡.h " 24  ~"chunk.h " 25  ~"h‰p_chunk.h " 26  ~"fdev’t.h " 27  ~"cÚÃùiÚs.h " 28  ~"¡©_ÿche.h " 29  ~"¶ugš.h " 30  ~"jobli¡.h " 31  ~"ÃtwÜk_back’ds.h " 33 #ifdeà HAVE_GETOPT_H 34  ~ 37 #ifdeà HAVE_VALGRIND_VALGRIND_H 38  ~ 41 #ifdeà HAVE_SYS_WAIT_H 42  ~ 45 #ifdeà HAVE_PWD_H 46  ~ 47  ~ 50 #ifdeà HAVE_SYS_RESOURCE_H 51  ~ 54 #ifdeà HAVE_SYS_PRCTL_H 55  ~ 58 #ifdeà USE_OPENSSL 59  ~<Ý’s¦/”r.h > 62 #iâdeà __sgi 67 vÞ©ž sig_©omic_t g¤v_shutdown = 0; 68 vÞ©ž sig_©omic_t gg¿ûful_shutdown = 0; 69 vÞ©ž sig_©omic_t ghªdË_sig_®¬m = 1; 70 vÞ©ž sig_©omic_t ghªdË_sig_hup = 0; 71 vÞ©ž sig_©omic_t gfÜw¬ded_sig_hup = 0; 73 #ià defšed ( HAVE_SIGACTION è&& defšed( SA_SIGINFO ) 74 vÞ©ž sigšfo_t gÏ¡_sig‹rm_šfo ; 75 vÞ©ž sigšfo_t gÏ¡_sighup_šfo ; 77  $sigaùiÚ_hªdËr ( sig , sigšfo_t * si , * cÚ‹xt ) { 78 `UNUSED ( cÚ‹xt ); 80  sig ) { 81  SIGTERM : 82 ¤v_shutdown = 1; 83 `memýy (& Ï¡_sig‹rm_šfo , si , (*si)); 85  SIGINT : 86 ià( g¿ûful_shutdown ) { 87 ¤v_shutdown = 1; 89 g¿ûful_shutdown = 1; 91 `memýy (& Ï¡_sig‹rm_šfo , si , (*si)); 94  SIGALRM : 95 hªdË_sig_®¬m = 1; 97  SIGHUP : 105 ià(! fÜw¬ded_sig_hup ) { 106 hªdË_sig_hup = 1; 107 `memýy (& Ï¡_sighup_šfo , si , (*si)); 109 fÜw¬ded_sig_hup = 0; 112  SIGCHLD : 115 } } 116 #–ià defšed ( HAVE_SIGNAL è|| defšed( HAVE_SIGACTION ) 117  $sigÇl_hªdËr ( sig ) { 118  sig ) { 119  SIGTERM : ¤v_shutdown = 1; ; 120  SIGINT : 121 ià( g¿ûful_shutdown è ¤v_shutdown = 1; 122 g¿ûful_shutdown = 1; 125  SIGALRM : hªdË_sig_®¬m = 1; ; 126  SIGHUP : hªdË_sig_hup = 1; ; 127  SIGCHLD : ; 129 } } 132 #ifdeà HAVE_FORK 133  $d«mÚize () { 134 #ifdeà SIGTTOU 135 `sigÇl ( SIGTTOU , SIG_IGN ); 137 #ifdeà SIGTTIN 138 `sigÇl ( SIGTTIN , SIG_IGN ); 140 #ifdeà SIGTSTP 141 `sigÇl ( SIGTSTP , SIG_IGN ); 143 ià(0 !ð `fÜk ()è `ex™ (0); 145 ià(-1 =ð `£tsid ()è `ex™ (0); 147 `sigÇl ( SIGHUP , SIG_IGN ); 149 ià(0 !ð `fÜk ()è `ex™ (0); 151 ià(0 !ð `chdœ ("/")è `ex™ (0); 152 } } 155  £rv” * $£rv”_š™ () { 156  i ; 158 £rv” * ¤v = `ÿÎoc (1, (*srv)); 159 `as£¹ ( ¤v ); 160  #CLEAN ( x ) \ 161 ¤v -> x = `bufãr_š™ (); ) 163 `CLEAN ( »¥Ú£_h—d” ); 164 `CLEAN ( ·r£_fuÎ_·th ); 165 `CLEAN ( ts_debug_¡r ); 166 `CLEAN ( ts_d©e_¡r ); 167 `CLEAN ( ”rÜlog_buf ); 168 `CLEAN ( »¥Ú£_¿nge ); 169 `CLEAN ( tmp_buf ); 170 ¤v -> em±y_¡ršg = `bufãr_š™_¡ršg (""); 171 `CLEAN ( cÚd_check_buf ); 173 `CLEAN ( ¤vcÚf . ”rÜlog_fže ); 174 `CLEAN ( ¤vcÚf . grou²ame ); 175 `CLEAN ( ¤vcÚf . u£ºame ); 176 `CLEAN ( ¤vcÚf . chªg”oÙ ); 177 `CLEAN ( ¤vcÚf . bšdho¡ ); 178 `CLEAN ( ¤vcÚf . ev’t_hªdËr ); 179 `CLEAN ( ¤vcÚf . pid_fže ); 181 `CLEAN ( tmp_chunk_Ën ); 182 #undeà CLEAN 184  #CLEAN ( x ) \ 185 ¤v -> x = `¬¿y_š™ (); ) 187 `CLEAN ( cÚfig_cÚ‹xt ); 188 `CLEAN ( cÚfig_touched ); 189 `CLEAN ( ¡©us ); 190 #undeà CLEAN 192  i = 0; i < FILE_CACHE_MAX ; i++) { 193 ¤v -> mtime_ÿche [ i ]. mtime = ( time_t )-1; 194 ¤v -> mtime_ÿche [ i ]. ¡r = `bufãr_š™ (); 197 ¤v -> cur_ts = `time ( NULL ); 198 ¤v -> ¡¬tup_ts = srv-> cur_ts ; 200 ¤v -> cÚns = `ÿÎoc (1, (*srv->conns)); 201 `as£¹ ( ¤v -> cÚns ); 203 ¤v -> jobli¡ = `ÿÎoc (1, (*srv->joblist)); 204 `as£¹ ( ¤v -> jobli¡ ); 206 ¤v -> fdwa™queue = `ÿÎoc (1, (*srv->fdwaitqueue)); 207 `as£¹ ( ¤v -> fdwa™queue ); 209 ¤v -> ¤vcÚf . moduËs = `¬¿y_š™ (); 210 ¤v -> ¤vcÚf . moduËs_dœ = `bufãr_š™_¡ršg ( LIBRARY_DIR ); 211 ¤v -> ¤vcÚf . ÃtwÜk_back’d = `bufãr_š™ (); 212 ¤v -> ¤vcÚf . u¶ßd_‹mpdœs = `¬¿y_š™ (); 215 ¤v -> ”rÜlog_fd = -1; 216 ¤v -> ”rÜlog_mode = ERRORLOG_STDERR ; 218 ¤v -> ¥l™_v®s = `¬¿y_š™ (); 220  ¤v ; 221 } } 223  $£rv”_ä“ ( £rv” * ¤v ) { 224 size_t i ; 226  i = 0; i < FILE_CACHE_MAX ; i++) { 227 `bufãr_ä“ ( ¤v -> mtime_ÿche [ i ]. ¡r ); 230  #CLEAN ( x ) \ 231 `bufãr_ä“ ( ¤v -> x ); ) 233 `CLEAN ( »¥Ú£_h—d” ); 234 `CLEAN ( ·r£_fuÎ_·th ); 235 `CLEAN ( ts_debug_¡r ); 236 `CLEAN ( ts_d©e_¡r ); 237 `CLEAN ( ”rÜlog_buf ); 238 `CLEAN ( »¥Ú£_¿nge ); 239 `CLEAN ( tmp_buf ); 240 `CLEAN ( em±y_¡ršg ); 241 `CLEAN ( cÚd_check_buf ); 243 `CLEAN ( ¤vcÚf . ”rÜlog_fže ); 244 `CLEAN ( ¤vcÚf . grou²ame ); 245 `CLEAN ( ¤vcÚf . u£ºame ); 246 `CLEAN ( ¤vcÚf . chªg”oÙ ); 247 `CLEAN ( ¤vcÚf . bšdho¡ ); 248 `CLEAN ( ¤vcÚf . ev’t_hªdËr ); 249 `CLEAN ( ¤vcÚf . pid_fže ); 250 `CLEAN ( ¤vcÚf . moduËs_dœ ); 251 `CLEAN ( ¤vcÚf . ÃtwÜk_back’d ); 253 `CLEAN ( tmp_chunk_Ën ); 254 #undeà CLEAN 257 `fdev’t_uÄegi¡” ( ¤v -> ev , srv-> fd ); 259 `fdev’t_ä“ ( ¤v -> ev ); 261 `ä“ ( ¤v -> cÚns ); 263 ià( ¤v -> cÚfig_¡Üage ) { 264  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 265 ¥ecific_cÚfig * s = ¤v -> cÚfig_¡Üage [ i ]; 267 ià(! s ) ; 269 `bufãr_ä“ ( s -> docum’t_roÙ ); 270 `bufãr_ä“ ( s -> £rv”_Çme ); 271 `bufãr_ä“ ( s -> £rv”_g ); 272 `bufãr_ä“ ( s -> s¦_³mfže ); 273 `bufãr_ä“ ( s -> s¦_ÿ_fže ); 274 `bufãr_ä“ ( s -> s¦_ch”_li¡ ); 275 `bufãr_ä“ ( s -> ”rÜ_hªdËr ); 276 `bufãr_ä“ ( s -> ”rÜfže_´efix ); 277 `¬¿y_ä“ ( s -> mim‘y³s ); 278 #ifdeà USE_OPENSSL 279 `SSL_CTX_ä“ ( s -> s¦_ùx ); 281 `ä“ ( s ); 283 `ä“ ( ¤v -> cÚfig_¡Üage ); 284 ¤v -> cÚfig_¡Üage = NULL ; 287  #CLEAN ( x ) \ 288 `¬¿y_ä“ ( ¤v -> x ); ) 290 `CLEAN ( cÚfig_cÚ‹xt ); 291 `CLEAN ( cÚfig_touched ); 292 `CLEAN ( ¡©us ); 293 `CLEAN ( ¤vcÚf . u¶ßd_‹mpdœs ); 294 #undeà CLEAN 296 `jobli¡_ä“ ( ¤v , srv-> jobli¡ ); 297 `fdwa™queue_ä“ ( ¤v , srv-> fdwa™queue ); 299 ià( ¤v -> ¡©_ÿche ) { 300 `¡©_ÿche_ä“ ( ¤v -> ¡©_ÿche ); 303 `¬¿y_ä“ ( ¤v -> ¤vcÚf . moduËs ); 304 `¬¿y_ä“ ( ¤v -> ¥l™_v®s ); 306 #ifdeà USE_OPENSSL 307 ià( ¤v -> s¦_is_š™ ) { 308 `CRYPTO_þ—nup_®l_ex_d©a (); 309 `ERR_ä“_¡ršgs (); 310 `ERR_»move_¡©e (0); 311 `EVP_þ—nup (); 315 `ä“ ( ¤v ); 316 } } 318  $show_v”siÚ () { 319 #ifdeà USE_OPENSSL 320  #TEXT_SSL " (s¦)" ) 322  #TEXT_SSL ) 324 * b = PACKAGE_NAME "-" PACKAGE_VERSION TEXT_SSL \ 326 "Bužd-D©e: " __DATE__ " " __TIME__ "\n"; 328 #undeà TEXT_SSL 329 `wr™e ( STDOUT_FILENO , b , `¡¾’ (b)); 330 } } 332  $show_ã©u»s () { 333 cÚ¡  ã©u»s [] = "" 334 #ifdeà USE_SELECT 339 #ifdeà USE_POLL 344 #ifdeà USE_LINUX_SIGIO 349 #ifdeà USE_LINUX_EPOLL 354 #ifdeà USE_SOLARIS_DEVPOLL 359 #ifdeà USE_FREEBSD_KQUEUE 365 #ià `defšed ( USE_LINUX_SENDFILE è|| defšed( USE_FREEBSD_SENDFILE è|| defšed( USE_SOLARIS_SENDFILEV è|| defšed( USE_AIX_SENDFILE ) 368 #ifdeà USE_WRITEV 373 #ifdeà USE_MMAP 380 #ifdeà HAVE_IPV6 385 #ià defšed HAVE_ZLIB_H && defšed HAVE_LIBZ 390 #ià defšed HAVE_BZLIB_H && defšed HAVE_LIBBZ2 395 #ifdeà HAVE_LIBCRYPT 400 #ifdeà USE_OPENSSL 405 #ifdeà HAVE_LIBPCRE 410 #ifdeà HAVE_MYSQL 415 #ià `defšed ( HAVE_LDAP_H è&& defšed( HAVE_LBER_H è&& defšed( HAVE_LIBLDAP è&& defšed( HAVE_LIBLBER ) 420 #ifdeà HAVE_MEMCACHE_H 425 #ifdeà HAVE_FAM_H 430 #ifdeà HAVE_LUA_H 435 #ifdeà HAVE_LIBXML_H 440 #ifdeà HAVE_SQLITE3_H 445 #ifdeà HAVE_GDBM_H 451 `show_v”siÚ (); 452 `´štf ("\nEv’ˆHªdËrs:\n\n%s", ã©u»s ); 453 } } 455  $show_h–p () { 456 #ifdeà USE_OPENSSL 457  #TEXT_SSL " (s¦)" ) 459  #TEXT_SSL ) 461 * b = PACKAGE_NAME "-" PACKAGE_VERSION TEXT_SSL " (" __DATE__ " " __TIME__ ")" \ 465 " -m <Çme> moduË dœeùÜy (deçuÉ: " LIBRARY_DIR ")\n" \ 474 #undeà TEXT_SSL 475 #undeà TEXT_IPV6 476 `wr™e ( STDOUT_FILENO , b , `¡¾’ (b)); 477 } } 479  $maš ( ¬gc , ** ¬gv ) { 480 £rv” * ¤v = NULL ; 481  ´št_cÚfig = 0; 482  ‹¡_cÚfig = 0; 483  i_am_roÙ ; 484  o ; 485  num_chžds = 0; 486  pid_fd = -1, fd ; 487 size_t i ; 488 #ifdeà HAVE_SIGACTION 489  sigaùiÚ aù ; 491 #ifdeà HAVE_GETRLIMIT 492  ¾im™ ¾im ; 495 #ifdeà USE_ALARM 496  ™im”v® š‹rv® ; 498 š‹rv® . ™_š‹rv® . tv_£c = 1; 499 š‹rv® . ™_š‹rv® . tv_u£c = 0; 500 š‹rv® . ™_v®ue . tv_£c = 1; 501 š‹rv® . ™_v®ue . tv_u£c = 0; 506 `£ŽoÿË ( LC_TIME , "C"); 508 ià( NULL =ð( ¤v = `£rv”_š™ ())) { 509 `årštf ( ¡d”r , "didhis„eally happen?\n"); 515 ¤v -> ¤vcÚf . pÜt = 0; 516 #ifdeà HAVE_GETUID 517 i_am_roÙ = ( `g‘uid () == 0); 519 i_am_roÙ = 0; 521 ¤v -> ¤vcÚf . dÚt_d«mÚize = 0; 523 -1 !ð( o = `g‘Ýt ( ¬gc , ¬gv , "f:m:hvVDpt"))) { 524  o ) { 526 ià( `cÚfig_»ad ( ¤v , Ýrg )) { 527 `£rv”_ä“ ( ¤v ); 532 `bufãr_cÝy_¡ršg ( ¤v -> ¤vcÚf . moduËs_dœ , Ýrg ); 534 'p': ´št_cÚfig = 1; ; 535 't': ‹¡_cÚfig = 1; ; 536 'D': ¤v -> ¤vcÚf . dÚt_d«mÚize = 1; ; 537 'v': `show_v”siÚ ();  0; 538 'V': `show_ã©u»s ();  0; 539 'h': `show_h–p ();  0; 541 `show_h–p (); 542 `£rv”_ä“ ( ¤v ); 547 ià(! ¤v -> cÚfig_¡Üage ) { 548 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 551 `£rv”_ä“ ( ¤v ); 555 ià( ´št_cÚfig ) { 556 d©a_un£t * dc = ¤v -> cÚfig_cÚ‹xt -> d©a [0]; 557 ià( dc ) { 558 dc -> `´št (dc, 0); 559 `årštf ( ¡dout , "\n"); 562 `årštf ( ¡d”r , "global config‚ot found\n"); 566 ià( ‹¡_cÚfig ) { 567 `´štf ("Syntax OK\n"); 570 ià( ‹¡_cÚfig || ´št_cÚfig ) { 571 `£rv”_ä“ ( ¤v ); 577 ià(-1 !ð( fd = `Ý’ ("/dev/nuÎ", O_RDONLY ))) { 578 `þo£ ( STDIN_FILENO ); 579 `dup2 ( fd , STDIN_FILENO ); 580 `þo£ ( fd ); 584 ià(-1 !ð( fd = `Ý’ ("/dev/nuÎ", O_WRONLY ))) { 585 `þo£ ( STDOUT_FILENO ); 586 `dup2 ( fd , STDOUT_FILENO ); 587 `þo£ ( fd ); 590 ià(0 !ð `cÚfig_£t_deçuÉs ( ¤v )) { 591 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 593 `£rv”_ä“ ( ¤v ); 598 #ifdeà HAVE_GETUID 599 ià(! i_am_roÙ && ( `g‘euid (è=ð0 || `g‘egid () == 0)) { 602 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 605 `£rv”_ä“ ( ¤v ); 611 ià( ¤v -> cÚfig_¡Üage [0]-> docum’t_roÙ -> u£d <= 1) { 612 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 615 `£rv”_ä“ ( ¤v ); 620 ià( `¶ugšs_lßd ( ¤v )) { 621 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 624 `¶ugšs_ä“ ( ¤v ); 625 `£rv”_ä“ ( ¤v ); 631 ià( ¤v -> ¤vcÚf . pid_fže -> u£d ) { 632 ià(-1 =ð( pid_fd = `Ý’ ( ¤v -> ¤vcÚf . pid_fže -> ±r , O_WRONLY | O_CREAT | O_EXCL | O_TRUNC , S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH ))) { 633  ¡© ¡ ; 634 ià( ”ºo !ð EEXIST ) { 635 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 636 "Ý’šg…id-fžçžed:", ¤v -> ¤vcÚf . pid_fže , `¡»¼Ü ( ”ºo )); 640 ià(0 !ð `¡© ( ¤v -> ¤vcÚf . pid_fže -> ±r , & ¡ )) { 641 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 642 "¡©šgƒxi¡šg…id-fžçžed:", ¤v -> ¤vcÚf . pid_fže , `¡»¼Ü ( ”ºo )); 645 ià(! `S_ISREG ( ¡ . ¡_mode )) { 646 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 647 "pid-fžexi¡ ªd i¢'ˆ»guϸfže:", ¤v -> ¤vcÚf . pid_fže ); 651 ià(-1 =ð( pid_fd = `Ý’ ( ¤v -> ¤vcÚf . pid_fže -> ±r , O_WRONLY | O_CREAT | O_TRUNC , S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH ))) { 652 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 653 "Ý’šg…id-fžçžed:", ¤v -> ¤vcÚf . pid_fže , `¡»¼Ü ( ”ºo )); 659 ià( ¤v -> ev’t_hªdËr =ð FDEVENT_HANDLER_SELECT ) { 664 ¤v -> max_fds = FD_SETSIZE - 200; 666 ¤v -> max_fds = 4096; 669 ià( i_am_roÙ ) { 670  group * g½ = NULL ; 671  ·sswd * pwd = NULL ; 672  u£_¾im™ = 1; 674 #ifdeà HAVE_VALGRIND_VALGRIND_H 675 ià( RUNNING_ON_VALGRIND è u£_¾im™ = 0; 678 #ifdeà HAVE_GETRLIMIT 679 ià(0 !ð `g‘¾im™ ( RLIMIT_NOFILE , & ¾im )) { 680 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 682 `¡»¼Ü ( ”ºo )); 686 ià( u£_¾im™ && ¤v -> ¤vcÚf . max_fds ) { 689 ¾im . ¾im_cur = ¤v -> ¤vcÚf . max_fds ; 690 ¾im . ¾im_max = ¤v -> ¤vcÚf . max_fds ; 692 ià(0 !ð `£Œlim™ ( RLIMIT_NOFILE , & ¾im )) { 693 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 695 `¡»¼Ü ( ”ºo )); 700 ià( ¤v -> ev’t_hªdËr =ð FDEVENT_HANDLER_SELECT ) { 701 ¤v -> max_fds = ¾im . ¾im_cur < FD_SETSIZE - 200 ?„lim.rlim_cur : FD_SETSIZE - 200; 703 ¤v -> max_fds = ¾im . ¾im_cur ; 707 ià( u£_¾im™ && ¤v -> ¤vcÚf . ’abË_cÜes && `g‘¾im™ ( RLIMIT_CORE , & ¾im ) == 0) { 708 ¾im . ¾im_cur =„lim. ¾im_max ; 709 `£Œlim™ ( RLIMIT_CORE , & ¾im ); 712 ià( ¤v -> ev’t_hªdËr =ð FDEVENT_HANDLER_SELECT ) { 714 ià( ¤v -> max_fds > FD_SETSIZE - 200) { 715 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 716 "ÿn'ˆ¿i£ max fžedesütÜ above", FD_SETSIZE - 200, 723 #ifdeà HAVE_PWD_H 725 ià( ¤v -> ¤vcÚf . u£ºame -> u£d ) { 726 ià( NULL =ð( pwd = `g‘pwÇm ( ¤v -> ¤vcÚf . u£ºame -> ±r ))) { 727 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 728 "ÿn'ˆfšd u£ºame", ¤v -> ¤vcÚf . u£ºame ); 732 ià( pwd -> pw_uid == 0) { 733 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 739 ià( ¤v -> ¤vcÚf . grou²ame -> u£d ) { 740 ià( NULL =ð( g½ = `g‘gºam ( ¤v -> ¤vcÚf . grou²ame -> ±r ))) { 741 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 742 "ÿn'ˆfšd grou²ame", ¤v -> ¤vcÚf . grou²ame ); 745 ià( g½ -> gr_gid == 0) { 746 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 753 ià(0 !ð `ÃtwÜk_š™ ( ¤v )) { 754 `¶ugšs_ä“ ( ¤v ); 755 `£rv”_ä“ ( ¤v ); 759 #ifdeà HAVE_PWD_H 764 ià( ¤v -> ¤vcÚf . grou²ame -> u£d ) { 765 `£tgid ( g½ -> gr_gid ); 766 `£tgroups (0, NULL ); 767 ià( ¤v -> ¤vcÚf . u£ºame -> u£d ) { 768 `š™groups ( ¤v -> ¤vcÚf . u£ºame -> ±r , g½ -> gr_gid ); 772 #ifdeà HAVE_CHROOT 773 ià( ¤v -> ¤vcÚf . chªg”oÙ -> u£d ) { 774 `tz£t (); 776 ià(-1 =ð `chroÙ ( ¤v -> ¤vcÚf . chªg”oÙ -> ±r )) { 777 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "chroÙ fažed: ", `¡»¼Ü ( ”ºo )); 780 ià(-1 =ð `chdœ ("/")) { 781 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "chdœ fažed: ", `¡»¼Ü ( ”ºo )); 786 #ifdeà HAVE_PWD_H 788 ià( ¤v -> ¤vcÚf . u£ºame -> u£d ) { 789 `£tuid ( pwd -> pw_uid ); 792 #ià `defšed ( HAVE_SYS_PRCTL_H è&& defšed( PR_SET_DUMPABLE ) 796 ià( ¤v -> ¤vcÚf . ’abË_cÜes ) { 797 `´ùl ( PR_SET_DUMPABLE , 1, 0, 0, 0); 802 #ifdeà HAVE_GETRLIMIT 803 ià(0 !ð `g‘¾im™ ( RLIMIT_NOFILE , & ¾im )) { 804 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 806 `¡»¼Ü ( ”ºo )); 813 ià( ¤v -> ¤vcÚf . max_fds && srv->¤vcÚf.max_fd < ¾im . ¾im_cur ) { 816 ¾im . ¾im_cur = ¤v -> ¤vcÚf . max_fds ; 818 ià(0 !ð `£Œlim™ ( RLIMIT_NOFILE , & ¾im )) { 819 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 821 `¡»¼Ü ( ”ºo )); 826 ià( ¤v -> ev’t_hªdËr =ð FDEVENT_HANDLER_SELECT ) { 827 ¤v -> max_fds = ¾im . ¾im_cur < FD_SETSIZE - 200 ?„lim.rlim_cur : FD_SETSIZE - 200; 829 ¤v -> max_fds = ¾im . ¾im_cur ; 833 ià( ¤v -> ¤vcÚf . ’abË_cÜes && `g‘¾im™ ( RLIMIT_CORE , & ¾im ) == 0) { 834 ¾im . ¾im_cur =„lim. ¾im_max ; 835 `£Œlim™ ( RLIMIT_CORE , & ¾im ); 839 ià( ¤v -> ev’t_hªdËr =ð FDEVENT_HANDLER_SELECT ) { 841 ià( ¤v -> max_fds > FD_SETSIZE - 200) { 842 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 843 "ÿn'ˆ¿i£ max fžedesütÜ above", FD_SETSIZE - 200, 849 ià(0 !ð `ÃtwÜk_š™ ( ¤v )) { 850 `¶ugšs_ä“ ( ¤v ); 851 `£rv”_ä“ ( ¤v ); 858 ià( ¤v -> ¤vcÚf . max_cÚns > srv-> max_fds ) { 860 ¤v -> max_cÚns = srv-> max_fds ; 861 } ià( ¤v -> ¤vcÚf . max_cÚns ) { 863 ¤v -> max_cÚns = srv-> ¤vcÚf .max_conns; 866 ¤v -> max_cÚns = srv-> max_fds ; 869 ià( HANDLER_GO_ON !ð `¶ugšs_ÿÎ_š™ ( ¤v )) { 870 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "Initialization of…lugins failed. Going down."); 872 `¶ugšs_ä“ ( ¤v ); 873 `ÃtwÜk_þo£ ( ¤v ); 874 `£rv”_ä“ ( ¤v ); 879 #ifdeà HAVE_FORK 881 ià( ¤v -> ¤vcÚf . dÚt_d«mÚize =ð0è `d«mÚize (); 884 ¤v -> gid = `g‘gid (); 885 ¤v -> uid = `g‘uid (); 888 ià( pid_fd != -1) { 889 `bufãr_cÝy_lÚg ( ¤v -> tmp_buf , `g‘pid ()); 890 `bufãr_­³nd_¡ršg ( ¤v -> tmp_buf , "\n"); 891 `wr™e ( pid_fd , ¤v -> tmp_buf -> ±r , srv->tmp_buf-> u£d - 1); 892 `þo£ ( pid_fd ); 893 pid_fd = -1; 898 ià(-1 =ð `log_”rÜ_Ý’ ( ¤v )) { 899 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "Openingƒrrorlog failed. Going down."); 901 `¶ugšs_ä“ ( ¤v ); 902 `ÃtwÜk_þo£ ( ¤v ); 903 `£rv”_ä“ ( ¤v ); 907 ià( HANDLER_GO_ON !ð `¶ugšs_ÿÎ_£t_deçuÉs ( ¤v )) { 908 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "Configuration of…lugins failed. Going down."); 910 `¶ugšs_ä“ ( ¤v ); 911 `ÃtwÜk_þo£ ( ¤v ); 912 `£rv”_ä“ ( ¤v ); 918  i = 0; i < ¤v -> cÚfig_cÚ‹xt -> u£d ; i++) { 919 ¬¿y * cÚfig = (( d©a_cÚfig *) ¤v -> cÚfig_cÚ‹xt -> d©a [ i ])-> v®ue ; 920 size_t j ; 922  j = 0; cÚfig && j < cÚfig-> u£d ; j++) { 923 d©a_un£t * du = cÚfig -> d©a [ j ]; 926 ià( `¡ºcmp ( du -> key -> ±r , "var.", ("var.") - 1) == 0) { 930 ià( NULL =ð `¬¿y_g‘_–em’t ( ¤v -> cÚfig_touched , du -> key -> ±r )) { 931 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 933 du -> key , 939 ià( ¤v -> cÚfig_unsuµÜ‹d ) { 940 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 944 ià( ¤v -> cÚfig_d•»ÿ‹d ) { 945 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 949 ià( ¤v -> cÚfig_unsuµÜ‹d || srv-> cÚfig_d•»ÿ‹d ) { 950 `¶ugšs_ä“ ( ¤v ); 951 `ÃtwÜk_þo£ ( ¤v ); 952 `£rv”_ä“ ( ¤v ); 960 #ifdeà HAVE_SIGACTION 961 `mem£t (& aù , 0, (act)); 962 aù . §_hªdËr = SIG_IGN ; 963 `sigaùiÚ ( SIGPIPE , & aù , NULL ); 964 `sigaùiÚ ( SIGUSR1 , & aù , NULL ); 965 #ià `defšed ( SA_SIGINFO ) 966 aù . §_sigaùiÚ = sigaùiÚ_hªdËr ; 967 `sigem±y£t (& aù . §_mask ); 968 aù . §_æags = SA_SIGINFO ; 970 aù . §_hªdËr = sigÇl_hªdËr ; 971 `sigem±y£t (& aù . §_mask ); 972 aù . §_æags = 0; 974 `sigaùiÚ ( SIGINT , & aù , NULL ); 975 `sigaùiÚ ( SIGTERM , & aù , NULL ); 976 `sigaùiÚ ( SIGHUP , & aù , NULL ); 977 `sigaùiÚ ( SIGALRM , & aù , NULL ); 978 `sigaùiÚ ( SIGCHLD , & aù , NULL ); 980 #–ià `defšed ( HAVE_SIGNAL ) 982 `sigÇl ( SIGPIPE , SIG_IGN ); 983 `sigÇl ( SIGUSR1 , SIG_IGN ); 984 `sigÇl ( SIGALRM , sigÇl_hªdËr ); 985 `sigÇl ( SIGTERM , sigÇl_hªdËr ); 986 `sigÇl ( SIGHUP , sigÇl_hªdËr ); 987 `sigÇl ( SIGCHLD , sigÇl_hªdËr ); 988 `sigÇl ( SIGINT , sigÇl_hªdËr ); 991 #ifdeà USE_ALARM 992 `sigÇl ( SIGALRM , sigÇl_hªdËr ); 995 ià( `£t™im” ( ITIMER_REAL , & š‹rv® , NULL )) { 996 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "settingimer failed"); 1000 `g‘™im” ( ITIMER_REAL , & š‹rv® ); 1003 #ifdeà HAVE_FORK 1005 num_chžds = ¤v -> ¤vcÚf . max_wÜk” ; 1006 ià( num_chžds > 0) { 1007  chžd = 0; 1008 ! chžd && ! ¤v_shutdown && ! g¿ûful_shutdown ) { 1009 ià( num_chžds > 0) { 1010  `fÜk ()) { 1014 chžd = 1; 1017 num_chžds --; 1021  ¡©us ; 1023 ià(-1 !ð `wa™ (& ¡©us )) { 1027 num_chžds ++; 1029  ”ºo ) { 1030  EINTR : 1035 ià( hªdË_sig_hup ) { 1036 hªdË_sig_hup = 0; 1038 `log_”rÜ_cyþe ( ¤v ); 1045 ià(! fÜw¬ded_sig_hup ) { 1046 fÜw¬ded_sig_hup = 1; 1047 `kžl (0, SIGHUP ); 1061 ià(! chžd ) { 1065 ià( g¿ûful_shutdown ) { 1066 `kžl (0, SIGINT ); 1067 } ià( ¤v_shutdown ) { 1068 `kžl (0, SIGTERM ); 1071 `log_”rÜ_þo£ ( ¤v ); 1072 `ÃtwÜk_þo£ ( ¤v ); 1073 `cÚÃùiÚs_ä“ ( ¤v ); 1074 `¶ugšs_ä“ ( ¤v ); 1075 `£rv”_ä“ ( ¤v ); 1081 ià( NULL =ð( ¤v -> ev = `fdev’t_š™ (¤v-> max_fds + 1, srv-> ev’t_hªdËr ))) { 1082 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , 1091 ià(0 !ð `ÃtwÜk_»gi¡”_fdev’ts ( ¤v )) { 1092 `¶ugšs_ä“ ( ¤v ); 1093 `ÃtwÜk_þo£ ( ¤v ); 1094 `£rv”_ä“ ( ¤v ); 1100 ià( NULL =ð( ¤v -> ¡©_ÿche = `¡©_ÿche_š™ ())) { 1101 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1106 #ifdeà HAVE_FAM_H 1108 ià( ¤v -> ¤vcÚf . ¡©_ÿche_’gše =ð STAT_CACHE_ENGINE_FAM ) { 1109 ià(0 !ð `FAMO³n2 ( ¤v -> ¡©_ÿche -> çm , "lighttpd")) { 1110 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1114 #ifdeà HAVE_FAMNOEXISTS 1115 `FAMNoExi¡s ( ¤v -> ¡©_ÿche -> çm ); 1118 ¤v -> ¡©_ÿche -> çm_fcû_ndx = -1; 1119 `fdev’t_»gi¡” ( ¤v -> ev , `FAMCONNECTION_GETFD (¤v-> ¡©_ÿche -> çm ), ¡©_ÿche_hªdË_fdev’t , NULL ); 1120 `fdev’t_ev’t_add ( ¤v -> ev , &(¤v-> ¡©_ÿche -> çm_fcû_ndx ), `FAMCONNECTION_GETFD (¤v->¡©_ÿche-> çm ), FDEVENT_IN ); 1126 ¤v -> cur_fds = `Ý’ ("/dev/nuÎ", O_RDONLY ); 1127 `þo£ ( ¤v -> cur_fds ); 1129  i = 0; i < ¤v -> ¤v_sock‘s . u£d ; i++) { 1130 £rv”_sock‘ * ¤v_sock‘ = ¤v -> ¤v_sock‘s . ±r [ i ]; 1131 ià(-1 =ð `fdev’t_fúŽ_£t ( ¤v -> ev , ¤v_sock‘ -> fd )) { 1132 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", "fúŽ fažed:", `¡»¼Ü ( ”ºo )); 1138 ! ¤v_shutdown ) { 1139  n ; 1140 size_t ndx ; 1141 time_t mš_ts ; 1143 ià( hªdË_sig_hup ) { 1144 hªdËr_t r ; 1147 hªdË_sig_hup = 0; 1152  r = `¶ugšs_ÿÎ_hªdË_sighup ( ¤v )) { 1153  HANDLER_GO_ON : 1156 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", "sighup-hªd˸»tuº w™h‡À”rÜ", r ); 1160 ià(-1 =ð `log_”rÜ_cyþe ( ¤v )) { 1161 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "cyclingƒrrorlog failed, dying"); 1165 #ifdeà HAVE_SIGACTION 1166 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdsd", 1168 Ï¡_sighup_šfo . si_uid , 1170 Ï¡_sighup_šfo . si_pid ); 1172 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1178 ià( hªdË_sig_®¬m ) { 1181 #ifdeà USE_ALARM 1183 hªdË_sig_®¬m = 0; 1187 mš_ts = `time ( NULL ); 1189 ià( mš_ts !ð ¤v -> cur_ts ) { 1190  cs = 0; 1191 cÚÃùiÚs * cÚns = ¤v ->conns; 1192 hªdËr_t r ; 1194  r = `¶ugšs_ÿÎ_hªdË_Œigg” ( ¤v )) { 1195  HANDLER_GO_ON : 1197  HANDLER_ERROR : 1198 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "one ofheriggers failed"); 1201 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "d", r ); 1206 ¤v -> cur_ts = mš_ts ; 1209 `¡©_ÿche_Œigg”_þ—nup ( ¤v ); 1214  ndx = 0;‚dx < cÚns -> u£d ;‚dx++) { 1215  chªged = 0; 1216 cÚÃùiÚ * cÚ ; 1217  t_diff ; 1219 cÚ = cÚns -> ±r [ ndx ]; 1221 ià( cÚ -> ¡©e =ð CON_STATE_READ || 1222 cÚ -> ¡©e =ð CON_STATE_READ_POST ) { 1223 ià( cÚ -> »que¡_couÁ == 1) { 1224 ià( ¤v -> cur_ts - cÚ -> »ad_idË_ts > cÚ-> cÚf . max_»ad_idË ) { 1227 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1228 "cÚÃùiÚ clo£d -„—d-timeout:", cÚ -> fd ); 1230 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 1231 chªged = 1; 1234 ià( ¤v -> cur_ts - cÚ -> »ad_idË_ts > cÚ-> cÚf . max_k“p_®ive_idË ) { 1237 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1238 "cÚÃùiÚ clo£d -„—d-timeout:", cÚ -> fd ); 1240 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 1241 chªged = 1; 1246 ià(( cÚ -> ¡©e =ð CON_STATE_WRITE ) && 1247 ( cÚ -> wr™e_»que¡_ts != 0)) { 1249 ià( ¤v -> cur_ts - cÚ -> wr™e_»que¡_ts > 60) { 1250 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdd", 1251 "cÚÃùiÚ clo£d -…»-wr™e-»que¡-timeout:", cÚ -> fd , ¤v -> cur_ts - cÚ-> wr™e_»que¡_ts ); 1255 ià( ¤v -> cur_ts - cÚ -> wr™e_»que¡_ts > cÚ-> cÚf . max_wr™e_idË ) { 1258 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsosds", 1260 cÚ -> »que¡ . uri , 1262 cÚ -> by‹s_wr™‹n , 1264 () cÚ -> cÚf . max_wr™e_idË , 1267 `cÚÃùiÚ_£t_¡©e ( ¤v , cÚ , CON_STATE_ERROR ); 1268 chªged = 1; 1272 ià(0 =ð( t_diff = ¤v -> cur_ts - cÚ -> cÚÃùiÚ_¡¬t ))_diff = 1; 1274 ià( cÚ -> Œaffic_lim™_»ached && 1275 ( cÚ -> cÚf . kby‹s_³r_£cÚd == 0 || 1276 (( cÚ -> by‹s_wr™‹n / t_diff è< cÚ-> cÚf . kby‹s_³r_£cÚd * 1024))) { 1278 cÚ -> Œaffic_lim™_»ached = 0; 1280 chªged = 1; 1283 ià( chªged ) { 1284 `cÚÃùiÚ_¡©e_machše ( ¤v , cÚ ); 1286 cÚ -> by‹s_wr™‹n_cur_£cÚd = 0; 1287 *( cÚ -> cÚf . glob®_by‹s_³r_£cÚd_út_±r ) = 0; 1290 ià( cs == 0) { 1291 `årštf ( ¡d”r , "connection-state: "); 1292 cs = 1; 1295 `årštf ( ¡d”r , "c[%d,%d]: %s ", 1296 cÚ -> fd , 1297 cÚ -> fcgi . fd , 1298 `cÚÃùiÚ_g‘_¡©e ( cÚ -> ¡©e )); 1302 ià( cs =ð1è `årštf ( ¡d”r , "\n"); 1306 ià( ¤v -> sock‘s_di§bËd ) { 1309 ià(( ¤v -> cur_fds + srv-> wªt_fds < srv-> max_fds * 0.8) && 1310 ( ¤v -> cÚns -> u£d < srv-> max_cÚns * 0.9) && 1311 (0 =ð g¿ûful_shutdown )) { 1312  i = 0; i < ¤v -> ¤v_sock‘s . u£d ; i++) { 1313 £rv”_sock‘ * ¤v_sock‘ = ¤v -> ¤v_sock‘s . ±r [ i ]; 1314 `fdev’t_ev’t_add ( ¤v -> ev , &( ¤v_sock‘ -> fde_ndx ), srv_sock‘-> fd , FDEVENT_IN ); 1317 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "[note] socketsƒnabled‡gain"); 1319 ¤v -> sock‘s_di§bËd = 0; 1322 ià(( ¤v -> cur_fds + srv-> wªt_fds > srv-> max_fds * 0.9) || 1323 ( ¤v -> cÚns -> u£d > srv-> max_cÚns ) || 1324 ( g¿ûful_shutdown )) { 1328  i = 0; i < ¤v -> ¤v_sock‘s . u£d ; i++) { 1329 £rv”_sock‘ * ¤v_sock‘ = ¤v -> ¤v_sock‘s . ±r [ i ]; 1330 `fdev’t_ev’t_d– ( ¤v -> ev , &( ¤v_sock‘ -> fde_ndx ), srv_sock‘-> fd ); 1332 ià( g¿ûful_shutdown ) { 1339 `fdev’t_uÄegi¡” ( ¤v -> ev , ¤v_sock‘ -> fd ); 1340 `þo£ ( ¤v_sock‘ -> fd ); 1341 ¤v_sock‘ -> fd = -1; 1345 ià( ¤v -> ¤vcÚf . pid_fže -> u£d && 1346 ¤v -> ¤vcÚf . chªg”oÙ -> u£d == 0) { 1347 ià(0 !ð `uÆšk ( ¤v -> ¤vcÚf . pid_fže -> ±r )) { 1348 ià( ”ºo !ð EACCES &&ƒ¼nØ!ð EPERM ) { 1349 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbds", 1351 ¤v -> ¤vcÚf . pid_fže , 1352 ”ºo , 1353 `¡»¼Ü ( ”ºo )); 1360 ià( g¿ûful_shutdown ) { 1361 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "[note] graceful shutdown started"); 1362 } ià( ¤v -> cÚns -> u£d > srv-> max_cÚns ) { 1363 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "[note] sockets disabled, connection†imit„eached"); 1365 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "[note] sockets disabled, out-of-fds"); 1368 ¤v -> sock‘s_di§bËd = 1; 1372 ià( g¿ûful_shutdown && ¤v -> cÚns -> u£d == 0) { 1375 ¤v_shutdown = 1; 1379 ià( ¤v -> wªt_fds ) { 1381  ä“_fds = ¤v -> max_fds - srv-> cur_fds - 16; 1382 cÚÃùiÚ * cÚ ; 1384 ; ä“_fds > 0 && NULL !ð( cÚ = `fdwa™queue_unshiá ( ¤v , srv-> fdwa™queue )); free_fds--) { 1385 `cÚÃùiÚ_¡©e_machše ( ¤v , cÚ ); 1387 ¤v -> wªt_fds --; 1391 ià(( n = `fdev’t_pÞl ( ¤v -> ev , 1000)) > 0) { 1393  »v’ts ; 1394  fd_ndx ; 1396 ià( n > 0) { 1397 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sd", 1398 "pÞls:", n ); 1401 fd_ndx = -1; 1403 fdev’t_hªdËr hªdËr ; 1404 * cÚ‹xt ; 1405 hªdËr_t r ; 1407 fd_ndx = `fdev’t_ev’t_Ãxt_fdndx ( ¤v -> ev , fd_ndx); 1408 »v’ts = `fdev’t_ev’t_g‘_»v’t ( ¤v -> ev , fd_ndx ); 1409 fd = `fdev’t_ev’t_g‘_fd ( ¤v -> ev , fd_ndx ); 1410 hªdËr = `fdev’t_g‘_hªdËr ( ¤v -> ev , fd ); 1411 cÚ‹xt = `fdev’t_g‘_cÚ‹xt ( ¤v -> ev , fd ); 1415 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdd", 1416 "ev’ˆfÜ", fd , »v’ts ); 1418  r = (* hªdËr )( ¤v , cÚ‹xt , »v’ts )) { 1419  HANDLER_FINISHED : 1420  HANDLER_GO_ON : 1421  HANDLER_WAIT_FOR_EVENT : 1422  HANDLER_WAIT_FOR_FD : 1424  HANDLER_ERROR : 1426 `SEGFAULT (); 1429 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "d", r ); 1432 } -- n > 0); 1433 } ià( n < 0 && ”ºo !ð EINTR ) { 1434 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "ss", 1436 `¡»¼Ü ( ”ºo )); 1439  ndx = 0;‚dx < ¤v -> jobli¡ -> u£d ;‚dx++) { 1440 cÚÃùiÚ * cÚ = ¤v -> jobli¡ -> ±r [ ndx ]; 1441 hªdËr_t r ; 1443 `cÚÃùiÚ_¡©e_machše ( ¤v , cÚ ); 1445  r = `¶ugšs_ÿÎ_hªdË_jobli¡ ( ¤v , cÚ )) { 1446  HANDLER_FINISHED : 1447  HANDLER_GO_ON : 1450 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "d", r ); 1454 cÚ -> š_jobli¡ = 0; 1457 ¤v -> jobli¡ -> u£d = 0; 1460 ià( ¤v -> ¤vcÚf . pid_fže -> u£d && 1461 ¤v -> ¤vcÚf . chªg”oÙ -> u£d == 0 && 1462 0 =ð g¿ûful_shutdown ) { 1463 ià(0 !ð `uÆšk ( ¤v -> ¤vcÚf . pid_fže -> ±r )) { 1464 ià( ”ºo !ð EACCES &&ƒ¼nØ!ð EPERM ) { 1465 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbds", 1467 ¤v -> ¤vcÚf . pid_fže , 1468 ”ºo , 1469 `¡»¼Ü ( ”ºo )); 1474 #ifdeà HAVE_SIGACTION 1475 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sdsd", 1477 Ï¡_sig‹rm_šfo . si_uid , 1479 Ï¡_sig‹rm_šfo . si_pid ); 1481 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", 1486 `log_”rÜ_þo£ ( ¤v ); 1487 `ÃtwÜk_þo£ ( ¤v ); 1488 `cÚÃùiÚs_ä“ ( ¤v ); 1489 `¶ugšs_ä“ ( ¤v ); 1490 `£rv”_ä“ ( ¤v ); 1493 } } @src/server.h 1 #iâdeà _SERVER_H_ 2  #_SERVER_H_ ) 4  ~"ba£.h " 7 * mkey ; 8 * mv®ue ; 9 } ttwo_¡ršgs ; 11 ’um { mCONFIG_UNSET , mCONFIG_DOCUMENT_ROOT } tcÚfig_v¬_t ; 13  cÚfig_»ad ( £rv” * ¤v , cÚ¡ * â ); 14  cÚfig_£t_deçuÉs ( £rv” * ¤v ); 15 bufãr * cÚfig_g‘_v®ue_bufãr ( £rv” * ¤v , cÚÃùiÚ * cÚ , cÚfig_v¬_t f›ld ); @src/settings.h 1 #iâdeà _LIGHTTPD_SETTINGS_H_ 2  #_LIGHTTPD_SETTINGS_H_ ) 4  #BV ( x è(1 << x) ) 6  #INET_NTOP_CACHE_MAX 4 ) 7  #FILE_CACHE_MAX 16 ) 15  #BUFFER_MAX_REUSE_SIZE (4 * 1024) ) 23  #MAX_HTTP_REQUEST_HEADER (32 * 1024) ) 25 ’um { mHANDLER_UNSET , 26 mHANDLER_GO_ON , 27 mHANDLER_FINISHED , 28 mHANDLER_COMEBACK , 29 mHANDLER_WAIT_FOR_EVENT , 30 mHANDLER_ERROR , 31 mHANDLER_WAIT_FOR_FD 32 } thªdËr_t ; 36 #ifdeà TRUE 37 #undeà TRUE 40 #ifdeà FALSE 41 #undeà FALSE @src/spawn-fcgi.c 1  ~ 2  ~ 3  ~ 5  ~<¡dlib.h > 6  ~<¡ršg.h > 7  ~<”ºo.h > 8  ~<¡dio.h > 9  ~ 10  ~ 12 #ifdeà HAVE_CONFIG_H 13  ~"cÚfig.h " 17 #ifdeà HAVE_PWD_H 18  ~ 19  ~ 22 #ifdeà HAVE_GETOPT_H 23  ~ 26  #FCGI_LISTENSOCK_FILENO 0 ) 28  ~"sys-sock‘.h " 30 #ifdeà HAVE_SYS_WAIT_H 31  ~ 35 #iâdeà HAVE_SOCKLEN_T 36  tsockËn_t ; 39 #ifdeà HAVE_SYS_UN_H 40  $fcgi_¥awn_cÚÃùiÚ (* ­pP©h , ** ­pArgv , * addr ,  pÜt , cÚ¡ * unixsock‘ ,  chžd_couÁ ,  pid_fd ,  nofÜk ) { 41  fcgi_fd ; 42  sock‘_ty³ , ¡©us ; 43  timev® tv = { 0, 100 * 1000 }; 45  sockaddr_un fcgi_addr_un ; 46  sockaddr_š fcgi_addr_š ; 47  sockaddr * fcgi_addr ; 49 sockËn_t £rvËn ; 51 pid_t chžd ; 52  v® ; 54 ià( chžd_couÁ < 2) { 55 chžd_couÁ = 5; 58 ià( chžd_couÁ > 256) { 59 chžd_couÁ = 256; 63 ià( unixsock‘ ) { 64 `mem£t (& fcgi_addr , 0, (fcgi_addr)); 66 fcgi_addr_un . sun_çmžy = AF_UNIX ; 67 `¡rýy ( fcgi_addr_un . sun_·th , unixsock‘ ); 69 #ifdeà SUN_LEN 70 £rvËn = `SUN_LEN (& fcgi_addr_un ); 73 £rvËn = `¡¾’ ( fcgi_addr_un . sun_·th è+ (fcgi_addr_un. sun_çmžy ); 75 sock‘_ty³ = AF_UNIX ; 76 fcgi_addr = ( sockaddr *è& fcgi_addr_un ; 81 ià(-1 =ð( fcgi_fd = `sock‘ ( sock‘_ty³ , SOCK_STREAM , 0))) { 82 `årštf ( ¡d”r , "%s.%d\n", 83 __FILE__ , __LINE__ ); 87 ià(-1 !ð `cÚÃù ( fcgi_fd , fcgi_addr , £rvËn )) { 88 `årštf ( ¡d”r , "%s.%d: socket is‡lready used, can't spawn\n", 89 __FILE__ , __LINE__ ); 94 `uÆšk ( unixsock‘ ); 95 `þo£ ( fcgi_fd ); 97 fcgi_addr_š . sš_çmžy = AF_INET ; 98 ià( addr !ð NULL ) { 99 fcgi_addr_š . sš_addr . s_addr = `š‘_addr ( addr ); 101 fcgi_addr_š . sš_addr . s_addr = `htÚl ( INADDR_ANY ); 103 fcgi_addr_š . sš_pÜt = `htÚs ( pÜt ); 104 £rvËn = ( fcgi_addr_š ); 106 sock‘_ty³ = AF_INET ; 107 fcgi_addr = ( sockaddr *è& fcgi_addr_š ; 111 ià(-1 =ð( fcgi_fd = `sock‘ ( sock‘_ty³ , SOCK_STREAM , 0))) { 112 `årštf ( ¡d”r , "%s.%d\n", 113 __FILE__ , __LINE__ ); 117 v® = 1; 118 ià( `£tsockÝt ( fcgi_fd , SOL_SOCKET , SO_REUSEADDR , & v® , (val)) < 0) { 119 `årštf ( ¡d”r , "%s.%d\n", 120 __FILE__ , __LINE__ ); 125 ià(-1 =ð `bšd ( fcgi_fd , fcgi_addr , £rvËn )) { 126 `årštf ( ¡d”r , "%s.%d: bind failed: %s\n", 127 __FILE__ , __LINE__ , 128 `¡»¼Ü ( ”ºo )); 132 ià(-1 =ð `li¡’ ( fcgi_fd , 1024)) { 133 `årštf ( ¡d”r , "%s.%d: fd = -1\n", 134 __FILE__ , __LINE__ ); 138 ià(! nofÜk ) { 139 chžd = `fÜk (); 141 chžd = 0; 144  chžd ) { 146  cgi_chžds [64]; 148  i = 0; 151 `¥rštf ( cgi_chžds , "PHP_FCGI_CHILDREN=%d", chžd_couÁ ); 153 if( fcgi_fd !ð FCGI_LISTENSOCK_FILENO ) { 154 `þo£ ( FCGI_LISTENSOCK_FILENO ); 155 `dup2 ( fcgi_fd , FCGI_LISTENSOCK_FILENO ); 156 `þo£ ( fcgi_fd ); 160  i = 3; i < 256; i++) { 161 `þo£ ( i ); 166 `pu‹nv ( cgi_chžds ); 169 ià( ­pArgv ) { 170 `execv ( ­pArgv [0],‡ppArgv); 173 * b = `m®loc ( `¡¾’ ("exeø"è+ sŒËn( ­pP©h ) + 1); 174 `¡rýy ( b , "exec "); 175 `¡rÿt ( b , ­pP©h ); 178 `exeþ ("/bš/sh", "sh", "-c", b , (*) NULL ); 181 `ex™ ( ”ºo ); 192 `£Ëù (0, NULL , NULL, NULL, & tv ); 194  `wa™pid ( chžd , & ¡©us , WNOHANG )) { 196 `årštf ( ¡d”r , "%s.%d: child spawned successfully: PID: %d\n", 197 __FILE__ , __LINE__ , 198 chžd ); 201 ià( pid_fd != -1) { 203  pidbuf [12]; 205 `¢´štf ( pidbuf , Õidbufè- 1, "%d", chžd ); 207 `wr™e ( pid_fd , pidbuf , `¡¾’ (pidbuf)); 208 `þo£ ( pid_fd ); 209 pid_fd = -1; 216 ià( `WIFEXITED ( ¡©us )) { 217 `årštf ( ¡d”r , "%s.%d: childƒxited with: %d, %s\n", 218 __FILE__ , __LINE__ , 219 `WEXITSTATUS ( ¡©us ), `¡»¼Ü (WEXITSTATUS(status))); 220 } ià( `WIFSIGNALED ( ¡©us )) { 221 `årštf ( ¡d”r , "%s.%d: child signaled: %d\n", 222 __FILE__ , __LINE__ , 223 `WTERMSIG ( ¡©us )); 225 `årštf ( ¡d”r , "%s.%d: child died somehow: %d\n", 226 __FILE__ , __LINE__ , 227 ¡©us ); 234 `þo£ ( fcgi_fd ); 237 } } 240  $show_v”siÚ () { 241 * b = "¥awn-fcgi" "-" PACKAGE_VERSION \ 244 `wr™e (1, b , `¡¾’ (b)); 245 } } 247  $show_h–p () { 248 * b = \ 251 "¥awn-fcg˜v" PACKAGE_VERSION " - spawns fastcgi…rocesses\n" \ 268 `wr™e (1, b , `¡¾’ (b)); 269 } } 272  $maš ( ¬gc , ** ¬gv ) { 273 * fcgi_­p = NULL , * chªg”oÙ = NULL, * u£ºame = NULL, 274 * grou²ame = NULL , * unixsock‘ = NULL, * pid_fže = NULL, 275 * addr = NULL ; 276 ** fcgi_­p_¬gv = { NULL }; 277  pÜt = 0; 278  chžd_couÁ = 5; 279  i_am_roÙ , o ; 280  pid_fd = -1; 281  nofÜk = 0; 282  sockaddr_un un ; 283 cÚ¡ size_t sun_·th_Ën = ( un . sun_·th ); 285 i_am_roÙ = ( `g‘uid () == 0); 287 -1 !ð( o = `g‘Ýt ( ¬gc , ¬gv , "c:f:g:hna:p:u:vC:s:P:"))) { 288  o ) { 289 'f': fcgi_­p = Ýrg ; ; 290 'a': addr = Ýrg ; ; 291 'p': pÜt = `¡¹Þ ( Ýrg , NULL , 10); ; 292 'C': chžd_couÁ = `¡¹Þ ( Ýrg , NULL , 10); ; 293 's': unixsock‘ = Ýrg ; ; 294 'c': ià( i_am_roÙ è{ chªg”oÙ = Ýrg ; } ; 295 'u': ià( i_am_roÙ è{ u£ºame = Ýrg ; } ; 296 'g': ià( i_am_roÙ è{ grou²ame = Ýrg ; } ; 297 'n': nofÜk = 1; ; 298 'P': pid_fže = Ýrg ; ; 299 'v': `show_v”siÚ ();  0; 300 'h': `show_h–p ();  0; 302 `show_h–p (); 307 ià( Ýtšd < ¬gc ) { 308 fcgi_­p_¬gv = & ¬gv [ Ýtšd ]; 311 ià(( fcgi_­p =ð NULL && fcgi_­p_¬gv =ðNULLè|| ( pÜt =ð0 && unixsock‘ == NULL)) { 312 `show_h–p (); 316 ià( unixsock‘ && pÜt ) { 317 `årštf ( ¡d”r , "%s.%d: %s\n", 318 __FILE__ , __LINE__ , 324 ià( unixsock‘ && `¡¾’ (unixsock‘è> sun_·th_Ën - 1) { 325 `årštf ( ¡d”r , "%s.%d: %s\n", 326 __FILE__ , __LINE__ , 333 ià(! i_am_roÙ && ( `g‘euid (è=ð0 || `g‘egid () == 0)) { 336 `årštf ( ¡d”r , "%s.%d: %s\n", 337 __FILE__ , __LINE__ , 343 ià( pid_fže && 344 (-1 =ð( pid_fd = `Ý’ ( pid_fže , O_WRONLY | O_CREAT | O_EXCL | O_TRUNC , S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH )))) { 345  ¡© ¡ ; 346 ià( ”ºo !ð EEXIST ) { 347 `årštf ( ¡d”r , "%s.%d: opening…id-file '%s' failed: %s\n", 348 __FILE__ , __LINE__ , 349 pid_fže , `¡»¼Ü ( ”ºo )); 356 ià(0 !ð `¡© ( pid_fže , & ¡ )) { 357 `årštf ( ¡d”r , "%s.%d: stating…id-file '%s' failed: %s\n", 358 __FILE__ , __LINE__ , 359 pid_fže , `¡»¼Ü ( ”ºo )); 366 ià(! `S_ISREG ( ¡ . ¡_mode )) { 367 `årštf ( ¡d”r , "%s.%d:…id-fileƒxists‡nd isn't„egular file: '%s'\n", 368 __FILE__ , __LINE__ , 369 pid_fže ); 374 ià(-1 =ð( pid_fd = `Ý’ ( pid_fže , O_WRONLY | O_CREAT | O_TRUNC , S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH ))) { 375 `årštf ( ¡d”r , "%s.%d: opening…id-file '%s' failed: %s\n", 376 __FILE__ , __LINE__ , 377 pid_fže , `¡»¼Ü ( ”ºo )); 383 ià( i_am_roÙ ) { 384  group * g½ = NULL ; 385  ·sswd * pwd = NULL ; 389 ià( u£ºame ) { 390 ià( NULL =ð( pwd = `g‘pwÇm ( u£ºame ))) { 391 `årštf ( ¡d”r , "%s.%d: %s, %s\n", 392 __FILE__ , __LINE__ , 393 "ÿn'ˆfšd u£ºame", u£ºame ); 397 ià( pwd -> pw_uid == 0) { 398 `årštf ( ¡d”r , "%s.%d: %s\n", 399 __FILE__ , __LINE__ , 405 ià( grou²ame ) { 406 ià( NULL =ð( g½ = `g‘gºam ( grou²ame ))) { 407 `årštf ( ¡d”r , "%s.%d: %s %s\n", 408 __FILE__ , __LINE__ , 410 grou²ame ); 413 ià( g½ -> gr_gid == 0) { 414 `årštf ( ¡d”r , "%s.%d: %s\n", 415 __FILE__ , __LINE__ , 425 ià( grou²ame ) { 426 `£tgid ( g½ -> gr_gid ); 427 `£tgroups (0, NULL ); 428 ià( u£ºame ) { 429 `š™groups ( u£ºame , g½ -> gr_gid ); 433 ià( chªg”oÙ ) { 434 ià(-1 =ð `chroÙ ( chªg”oÙ )) { 435 `årštf ( ¡d”r , "%s.%d: %s %s\n", 436 __FILE__ , __LINE__ , 437 "chroÙ fažed: ", `¡»¼Ü ( ”ºo )); 440 ià(-1 =ð `chdœ ("/")) { 441 `årštf ( ¡d”r , "%s.%d: %s %s\n", 442 __FILE__ , __LINE__ , 443 "chdœ fažed: ", `¡»¼Ü ( ”ºo )); 449 ià( u£ºame ) { 450 `£tuid ( pwd -> pw_uid ); 454  `fcgi_¥awn_cÚÃùiÚ ( fcgi_­p , fcgi_­p_¬gv , addr , pÜt , unixsock‘ , chžd_couÁ , pid_fd , nofÜk ); 455 } } 457  $maš () { 459 } } @src/splaytree.c 49  ~<¡dlib.h > 50  ~ 51  ~"¥ÏyŒ“.h " 53  #com·» ( i , j è((i)-(j)) ) 57  #node_size ¥ÏyŒ“_size ) 62 ¥Ïy_Œ“ * $¥ÏyŒ“_¥Ïy ( ¥Ïy_Œ“ * t ,  i ) { 63 ¥Ïy_Œ“ N , * l , * r , * y ; 64  comp , roÙ_size , l_size , r_size ; 66 ià( t =ð NULL ) ; 67 N . Ëá = N. right = NULL ; 68 l = r = & N ; 69 roÙ_size = `node_size ( t ); 70 l_size = r_size = 0; 73 comp = `com·» ( i , t -> key ); 74 ià( comp < 0) { 75 ià( t -> Ëá =ð NULL ) ; 76 ià( `com·» ( i , t -> Ëá -> key ) < 0) { 77 y = t -> Ëá ; 78 t -> Ëá = y -> right ; 79 y -> right = t ; 80 t -> size = `node_size Ñ-> Ëá è+‚ode_sizeÑ-> right ) + 1; 81 t = y ; 82 ià( t -> Ëá =ð NULL ) ; 84 r -> Ëá = t ; 85 r = t ; 86 t =-> Ëá ; 87 r_size +ð1+ `node_size ( r -> right ); 88 } ià( comp > 0) { 89 ià( t -> right =ð NULL ) ; 90 ià( `com·» ( i , t -> right -> key ) > 0) { 91 y = t -> right ; 92 t -> right = y -> Ëá ; 93 y -> Ëá = t ; 94 t -> size = `node_size Ñ-> Ëá è+‚ode_sizeÑ-> right ) + 1; 95 t = y ; 96 ià( t -> right =ð NULL ) ; 98 l -> right = t ; 99 l = t ; 100 t =-> right ; 101 l_size +ð1+ `node_size ( l -> Ëá ); 106 l_size +ð `node_size ( t -> Ëá ); 107 r_size +ð `node_size ( t -> right ); 108 t -> size = l_size + r_size + 1; 110 l -> right = r -> Ëá = NULL ; 115  y = N . right ; y !ð NULL ; y = y->right) { 116 y -> size = l_size ; 117 l_size -ð1+ `node_size ( y -> Ëá ); 119  y = N . Ëá ; y !ð NULL ; y = y->left) { 120 y -> size = r_size ; 121 r_size -ð1+ `node_size ( y -> right ); 124 l -> right = t -> Ëá ; 125 r -> Ëá = t -> right ; 126 t -> Ëá = N . right ; 127 t -> right = N . Ëá ; 129  t ; 130 } } 132 ¥Ïy_Œ“ * $¥ÏyŒ“_š£¹ ( ¥Ïy_Œ“ * t ,  i , * d©a ) { 135 ¥Ïy_Œ“ * Ãw ; 137 ià( t !ð NULL ) { 138 t = `¥ÏyŒ“_¥Ïy Ñ, i ); 139 ià( `com·» ( i , t -> key )==0) { 140  t ; 143 Ãw = ( ¥Ïy_Œ“ *è `m®loc ( (splay_tree)); 144 `as£¹ ( Ãw ); 145 ià( t =ð NULL ) { 146 Ãw -> Ëá =‚ew-> right = NULL ; 147 } ià( `com·» ( i , t -> key ) < 0) { 148 Ãw -> Ëá = t ->left; 149 Ãw -> right = t ; 150 t -> Ëá = NULL ; 151 t -> size = 1+ `node_size Ñ-> right ); 153 Ãw -> right = t ->right; 154 Ãw -> Ëá = t ; 155 t -> right = NULL ; 156 t -> size = 1+ `node_size Ñ-> Ëá ); 158 Ãw -> key = i ; 159 Ãw -> d©a = data; 160 Ãw -> size = 1 + `node_size Òew-> Ëá è+‚ode_sizeÒew-> right ); 161  Ãw ; 162 } } 164 ¥Ïy_Œ“ * $¥ÏyŒ“_d–‘e ( ¥Ïy_Œ“ * t ,  i ) { 167 ¥Ïy_Œ“ * x ; 168  tsize ; 170 ià( t == NULL )  NULL; 171 tsize = t -> size ; 172 t = `¥ÏyŒ“_¥Ïy Ñ, i ); 173 ià( `com·» ( i , t -> key ) == 0) { 174 ià( t -> Ëá =ð NULL ) { 175 x = t -> right ; 177 x = `¥ÏyŒ“_¥Ïy ( t -> Ëá , i ); 178 x -> right = t ->right; 180 `ä“ ( t ); 181 ià( x !ð NULL ) { 182 x -> size = tsize -1; 184  x ; 186  t ; 188 } } 190 ¥Ïy_Œ“ * $fšd_¿nk ( r , ¥Ïy_Œ“ * t ) { 195  lsize ; 196 ià(( r < 0è|| (¸>ð `node_size ( t ))è NULL ; 198 lsize = `node_size ( t -> Ëá ); 199 ià( r < lsize ) { 200 t =-> Ëá ; 201 } ià( r > lsize ) { 202 r =„ - lsize -1; 203 t =-> right ; 205  t ; 208 } } @src/splaytree.h 1 #iâdeà _SPLAY_TREE_H_ 2  #_SPLAY_TREE_H_ ) 4  sŒ“_node { 5  Œ“_node * mËá , * mright ; 6  mkey ; 7  msize ; 9 * md©a ; 10 } t¥Ïy_Œ“ ; 13 ¥Ïy_Œ“ * ¥ÏyŒ“_¥Ïy (¥Ïy_Œ“ * t ,  key ); 14 ¥Ïy_Œ“ * ¥ÏyŒ“_š£¹ (¥Ïy_Œ“ * t ,  key , * d©a ); 15 ¥Ïy_Œ“ * ¥ÏyŒ“_d–‘e (¥Ïy_Œ“ * t ,  key ); 16 ¥Ïy_Œ“ * ¥ÏyŒ“_size (¥Ïy_Œ“ * t ); 18  #¥ÏyŒ“_size ( x è(((x)== NULL è? 0 : ((x)-> size )) ) @src/stat_cache.c 1  #_GNU_SOURCE ) 3  ~ 4  ~ 6  ~<¡dlib.h > 7  ~<¡ršg.h > 8  ~<”ºo.h > 9  ~ 10  ~<¡dio.h > 11  ~ 12  ~ 14  ~"log.h " 15  ~"¡©_ÿche.h " 16  ~"fdev’t.h " 17  ~"‘ag.h " 19 #ifdeà HAVE_ATTR_ATTRIBUTES_H 20  ~<©Œ/©Œibu‹s.h > 23 #ifdeà HAVE_FAM_H 24  ~<çm.h > 27  ~"sys-mm­.h " 30 #iâdeà MAP_FAILED 31  #MAP_FAILED -1 ) 34 #iâdeà O_LARGEFILE 35  #O_LARGEFILE 0 ) 38 #iâdeà HAVE_LSTAT 39  #l¡© ¡© ) 44  #DEBUG_STAT_CACHE ) 71 #ifdeà HAVE_FAM_H 73 FAMReque¡ * m»q ; 74 FAMCÚÃùiÚ * mfc ; 76 bufãr * mÇme ; 78  mv”siÚ ; 79 } tçm_dœ_’Œy ; 95 #ifdeà DEBUG_STAT_CACHE 97 * m±r ; 99 size_t mu£d ; 100 size_t msize ; 101 } tçke_keys ; 103  çke_keys gù¾ ; 106 ¡©_ÿche * $¡©_ÿche_š™ () { 107 ¡©_ÿche * fc = NULL ; 109 fc = `ÿÎoc (1, (*fc)); 111 fc -> dœ_Çme = `bufãr_š™ (); 112 fc -> hash_key = `bufãr_š™ (); 113 #ifdeà HAVE_FAM_H 114 fc -> çm = `ÿÎoc (1, (*fc->fam)); 117 #ifdeà DEBUG_STAT_CACHE 118 ù¾ . size = 0; 121  fc ; 122 } } 124  ¡©_ÿche_’Œy * $¡©_ÿche_’Œy_š™ () { 125 ¡©_ÿche_’Œy * sû = NULL ; 127 sû = `ÿÎoc (1, (*sce)); 129 sû -> Çme = `bufãr_š™ (); 130 sû -> ‘ag = `bufãr_š™ (); 131 sû -> cÚ‹Á_ty³ = `bufãr_š™ (); 133  sû ; 134 } } 136  $¡©_ÿche_’Œy_ä“ (* d©a ) { 137 ¡©_ÿche_’Œy * sû = d©a ; 138 ià(! sû ) ; 140 `bufãr_ä“ ( sû -> ‘ag ); 141 `bufãr_ä“ ( sû -> Çme ); 142 `bufãr_ä“ ( sû -> cÚ‹Á_ty³ ); 144 `ä“ ( sû ); 145 } } 147 #ifdeà HAVE_FAM_H 148  çm_dœ_’Œy * $çm_dœ_’Œy_š™ () { 149 çm_dœ_’Œy * çm_dœ = NULL ; 151 çm_dœ = `ÿÎoc (1, (*fam_dir)); 153 çm_dœ -> Çme = `bufãr_š™ (); 155  çm_dœ ; 156 } } 158  $çm_dœ_’Œy_ä“ (* d©a ) { 159 çm_dœ_’Œy * çm_dœ = d©a ; 161 ià(! çm_dœ ) ; 163 `FAMCªûlMÚ™Ü ( çm_dœ -> fc , fam_dœ-> »q ); 165 `bufãr_ä“ ( çm_dœ -> Çme ); 166 `ä“ ( çm_dœ -> »q ); 168 `ä“ ( çm_dœ ); 169 } } 172  $¡©_ÿche_ä“ ( ¡©_ÿche * sc ) { 173  sc -> fžes ) { 174  osize ; 175 ¥Ïy_Œ“ * node = sc -> fžes ; 177 osize = sc -> fžes -> size ; 179 `¡©_ÿche_’Œy_ä“ ( node -> d©a ); 180 sc -> fžes = `¥ÏyŒ“_d–‘e (sc->fžes, node -> key ); 182 `as£¹ ( osize - 1 =ð `¥ÏyŒ“_size ( sc -> fžes )); 185 `bufãr_ä“ ( sc -> dœ_Çme ); 186 `bufãr_ä“ ( sc -> hash_key ); 188 #ifdeà HAVE_FAM_H 189  sc -> dœs ) { 190  osize ; 191 ¥Ïy_Œ“ * node = sc -> dœs ; 193 osize = sc -> dœs -> size ; 195 `çm_dœ_’Œy_ä“ ( node -> d©a ); 196 sc -> dœs = `¥ÏyŒ“_d–‘e (sc->dœs, node -> key ); 198 ià( osize == 1) { 199 `as£¹ ( NULL =ð sc -> dœs ); 201 `as£¹ ( osize =ð( sc -> dœs -> size + 1)); 205 ià( sc -> çm ) { 206 `FAMClo£ ( sc -> çm ); 207 `ä“ ( sc -> çm ); 210 `ä“ ( sc ); 211 } } 213 #ifdeà HAVE_XATTR 214  $¡©_ÿche_©Œ_g‘ ( bufãr * buf , * Çme ) { 215  ©ŒËn ; 216  »t ; 218 ©ŒËn = 1024; 219 `bufãr_´•¬e_cÝy ( buf , ©ŒËn ); 220 ©ŒËn --; 221 if(0 =ð( »t = `©Œ_g‘ ( Çme , "CÚ‹Á-Ty³", buf -> ±r , & ©ŒËn , 0))) { 222 buf -> u£d = ©ŒËn + 1; 223 buf -> ±r [ ©ŒËn ] = '\0'; 225  »t ; 226 } } 230  ušt32_t $hashme ( bufãr * ¡r ) { 231 ušt32_t hash = 5381; 232 cÚ¡ * s ; 233  s = ¡r -> ±r ; *s; s++) { 234 hash = ((hash << 5è+ hashè+ * s ; 237 hash &= ~(1 << 31); 239  hash ; 240 } } 242 #ifdeà HAVE_FAM_H 243 hªdËr_t $¡©_ÿche_hªdË_fdev’t (* _¤v , * _fû ,  »v’t ) { 244 size_t i ; 245 £rv” * ¤v = _¤v ; 246 ¡©_ÿche * sc = ¤v ->stat_cache; 247 size_t ev’ts ; 249 `UNUSED ( _fû ); 252 ià(( »v’t & FDEVENT_IN ) && 253 sc -> çm ) { 255 ev’ts = `FAMP’dšg ( sc -> çm ); 257  i = 0; i < ev’ts ; i++) { 258 FAMEv’t ã ; 259 çm_dœ_’Œy * çm_dœ ; 260 ¥Ïy_Œ“ * node ; 261  ndx , j ; 263 `FAMNextEv’t ( sc -> çm , & ã ); 267  ã . code ) { 268  FAMChªged : 269  FAMD–‘ed : 270  FAMMoved : 273 çm_dœ = ã . u£rd©a ; 274 çm_dœ -> v”siÚ ++; 277 ià( ã . code =ð FAMChªged ) ; 281  j = 0; j < 2; j++) { 282 `bufãr_cÝy_¡ršg ( sc -> hash_key , ã . fž’ame ); 283 `bufãr_­³nd_lÚg ( sc -> hash_key , j ); 285 ndx = `hashme ( sc -> hash_key ); 287 sc -> dœs = `¥ÏyŒ“_¥Ïy (sc->dœs, ndx ); 288 node = sc -> dœs ; 290 ià( node && (node-> key =ð ndx )) { 291  osize = `¥ÏyŒ“_size ( sc -> dœs ); 293 `çm_dœ_’Œy_ä“ ( node -> d©a ); 294 sc -> dœs = `¥ÏyŒ“_d–‘e (sc->dœs, ndx ); 296 `as£¹ ( osize - 1 =ð `¥ÏyŒ“_size ( sc -> dœs )); 306 ià( »v’t & FDEVENT_HUP ) { 308 ¤v -> ¡©_ÿche -> çm_fcû_ndx = -1; 310 `fdev’t_ev’t_d– ( ¤v -> ev , &( sc -> çm_fcû_ndx ), `FAMCONNECTION_GETFD (sc-> çm )); 311 `fdev’t_uÄegi¡” ( ¤v -> ev , `FAMCONNECTION_GETFD ( sc -> çm )); 313 `FAMClo£ ( sc -> çm ); 314 `ä“ ( sc -> çm ); 316 sc -> çm = NULL ; 319  HANDLER_GO_ON ; 320 } } 322  $bufãr_cÝy_dœÇme ( bufãr * d¡ , bufã¸* fže ) { 323 size_t i ; 325 ià( `bufãr_is_em±y ( fže ))  -1; 327  i = fže -> u£d - 1; i+1 > 0; i--) { 328 ià( fže -> ±r [ i ] == '/') { 329 `bufãr_cÝy_¡ršg_Ën ( d¡ , fže -> ±r , i ); 335 } } 338 #ifdeà HAVE_LSTAT 339  $¡©_ÿche_l¡© ( £rv” * ¤v , bufãr * dÇme ,  ¡© * l¡ ) { 340 ià( `l¡© ( dÇme -> ±r , l¡ ) == 0) { 341  `S_ISLNK ( l¡ -> ¡_mode ) ? 0 : 1; 344 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 346 dÇme , `¡»¼Ü ( ”ºo )); 349 } } 361 hªdËr_t $¡©_ÿche_g‘_’Œy ( £rv” * ¤v , cÚÃùiÚ * cÚ , bufãr * Çme , ¡©_ÿche_’Œy ** »t_sû ) { 362 #ifdeà HAVE_FAM_H 363 çm_dœ_’Œy * çm_dœ = NULL ; 364  dœ_ndx = -1; 365 ¥Ïy_Œ“ * dœ_node = NULL ; 367 ¡©_ÿche_’Œy * sû = NULL ; 368 ¡©_ÿche * sc ; 369  ¡© ¡ ; 370 size_t k ; 371  fd ; 372  ¡© l¡ ; 373 #ifdeà DEBUG_STAT_CACHE 374 size_t i ; 377  fže_ndx ; 378 ¥Ïy_Œ“ * fže_node = NULL ; 380 * »t_sû = NULL ; 386 sc = ¤v -> ¡©_ÿche ; 388 `bufãr_cÝy_¡ršg_bufãr ( sc -> hash_key , Çme ); 389 `bufãr_­³nd_lÚg ( sc -> hash_key , cÚ -> cÚf . fÞlow_symlšk ); 391 fže_ndx = `hashme ( sc -> hash_key ); 392 sc -> fžes = `¥ÏyŒ“_¥Ïy (sc->fžes, fže_ndx ); 394 #ifdeà DEBUG_STAT_CACHE 395  i = 0; i < ù¾ . u£d ; i++) { 396 ià( ù¾ . ±r [ i ] =ð fže_ndx ) ; 400 ià( sc -> fžes && (sc->fžes-> key =ð fže_ndx )) { 401 #ifdeà DEBUG_STAT_CACHE 403 `as£¹ ( i < ù¾ . u£d ); 409 fže_node = sc -> fžes ; 411 sû = fže_node -> d©a ; 415 ià( `bufãr_is_equ® ( Çme , sû ->name)) { 416 ià( ¤v -> ¤vcÚf . ¡©_ÿche_’gše =ð STAT_CACHE_ENGINE_SIMPLE ) { 417 ià( sû -> ¡©_ts =ð ¤v -> cur_ts ) { 418 * »t_sû = sû ; 419  HANDLER_GO_ON ; 433 fže_node = NULL ; 436 #ifdeà DEBUG_STAT_CACHE 437 ià( i !ð ù¾ . u£d ) { 438 `årštf ( ¡d”r , "%s.%d: %08x wa ®»ady in£¹ed buˆnÙ found iÀÿche, %s\n", __FILE__ , __LINE__ , fže_ndx , Çme -> ±r ); 440 `as£¹ ( i =ð ù¾ . u£d ); 444 #ifdeà HAVE_FAM_H 446 ià( ¤v -> ¤vcÚf . ¡©_ÿche_’gše =ð STAT_CACHE_ENGINE_FAM ) { 447 ià(0 !ð `bufãr_cÝy_dœÇme ( sc -> dœ_Çme , Çme )) { 448 `SEGFAULT (); 451 `bufãr_cÝy_¡ršg_bufãr ( sc -> hash_key , sc-> dœ_Çme ); 452 `bufãr_­³nd_lÚg ( sc -> hash_key , cÚ -> cÚf . fÞlow_symlšk ); 454 dœ_ndx = `hashme ( sc -> hash_key ); 456 sc -> dœs = `¥ÏyŒ“_¥Ïy (sc->dœs, dœ_ndx ); 458 ià( sc -> dœs && (sc->dœs-> key =ð dœ_ndx )) { 459 dœ_node = sc -> dœs ; 462 ià( dœ_node && fže_node ) { 465 sû = fže_node -> d©a ; 466 çm_dœ = dœ_node -> d©a ; 468 ià( çm_dœ -> v”siÚ =ð sû -> dœ_v”siÚ ) { 471 * »t_sû = sû ; 472  HANDLER_GO_ON ; 484 ià(-1 =ð `¡© ( Çme -> ±r , & ¡ )) { 485  HANDLER_ERROR ; 489 ià( `S_ISREG ( ¡ . ¡_mode )) { 491 ià(-1 =ð( fd = `Ý’ ( Çme -> ±r , O_RDONLY ))) { 492  HANDLER_ERROR ; 494 `þo£ ( fd ); 497 ià( NULL =ð sû ) { 498  osize = 0; 500 ià( sc -> fžes ) { 501 osize = sc -> fžes -> size ; 504 sû = `¡©_ÿche_’Œy_š™ (); 505 `bufãr_cÝy_¡ršg_bufãr ( sû -> Çme ,‚ame); 507 sc -> fžes = `¥ÏyŒ“_š£¹ (sc->fžes, fže_ndx , sû ); 508 #ifdeà DEBUG_STAT_CACHE 509 ià( ù¾ . size == 0) { 510 ù¾ . size = 16; 511 ù¾ . u£d = 0; 512 ù¾ . ±r = `m®loc (ù¾. size * (*ctrl.ptr)); 513 } ià( ù¾ . size =ðù¾. u£d ) { 514 ù¾ . size += 16; 515 ù¾ . ±r = `»®loc (ù¾.±r, cŒl. size * (*ctrl.ptr)); 518 ù¾ . ±r [ù¾. u£d ++] = fže_ndx ; 520 `as£¹ ( sc -> fžes ); 521 `as£¹ ( sc -> fžes -> d©a =ð sû ); 522 `as£¹ ( osize + 1 =ð `¥ÏyŒ“_size ( sc -> fžes )); 526 sû -> ¡ = st; 527 sû -> ¡©_ts = ¤v -> cur_ts ; 541 #ifdeà HAVE_LSTAT 542 sû -> is_symlšk = 0; 546 ià(! cÚ -> cÚf . fÞlow_symlšk ) { 547 ià( `¡©_ÿche_l¡© ( ¤v , Çme , & l¡ ) == 0) { 548 #ifdeà DEBUG_STAT_CACHE 549 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 550 "found symlšk", Çme ); 552 sû -> is_symlšk = 1; 559 ià(( Çme -> u£d > 2)) { 560 bufãr * dÇme ; 561 * s_cur ; 563 dÇme = `bufãr_š™ (); 564 `bufãr_cÝy_¡ršg_bufãr ( dÇme , Çme ); 566 ( s_cur = `¡¼chr ( dÇme -> ±r ,'/'))) { 567 * s_cur = '\0'; 568 dÇme -> u£d = s_cur - dÇme-> ±r + 1; 569 ià( dÇme -> ±r =ð s_cur ) { 570 #ifdeà DEBUG_STAT_CACHE 571 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "s", "reached /"); 575 #ifdeà DEBUG_STAT_CACHE 576 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbs", 577 "checkšg if", dÇme , "is‡ symlink"); 579 ià( `¡©_ÿche_l¡© ( ¤v , dÇme , & l¡ ) == 0) { 580 sû -> is_symlšk = 1; 581 #ifdeà DEBUG_STAT_CACHE 582 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sb", 583 "found symlšk", dÇme ); 588 `bufãr_ä“ ( dÇme ); 593 ià( `S_ISREG ( ¡ . ¡_mode )) { 595 `bufãr_»£t ( sû -> cÚ‹Á_ty³ ); 597  k = 0; k < cÚ -> cÚf . mim‘y³s -> u£d ; k++) { 598 d©a_¡ršg * ds = (d©a_¡ršg *) cÚ -> cÚf . mim‘y³s -> d©a [ k ]; 599 bufãr * ty³ = ds -> key ; 601 ià( ty³ -> u£d == 0) ; 604 ià( ty³ -> u£d > Çme ->used) ; 606 ià(0 =ð `¡ºÿ£cmp ( Çme -> ±r +‚ame-> u£d - ty³ ->used,ype->ptr,ype->used - 1)) { 607 `bufãr_cÝy_¡ršg_bufãr ( sû -> cÚ‹Á_ty³ , ds -> v®ue ); 611 `‘ag_ü—‹ ( sû -> ‘ag , &(sû-> ¡ ), cÚ -> ‘ag_æags ); 612 #ifdeà HAVE_XATTR 613 ià( cÚ -> cÚf . u£_x©Œ && `bufãr_is_em±y ( sû -> cÚ‹Á_ty³ )) { 614 `¡©_ÿche_©Œ_g‘ ( sû -> cÚ‹Á_ty³ , Çme -> ±r ); 617 } ià( `S_ISDIR ( ¡ . ¡_mode )) { 618 `‘ag_ü—‹ ( sû -> ‘ag , &(sû-> ¡ ), cÚ -> ‘ag_æags ); 621 #ifdeà HAVE_FAM_H 622 ià( sc -> çm && 623 ( ¤v -> ¤vcÚf . ¡©_ÿche_’gše =ð STAT_CACHE_ENGINE_FAM )) { 625 ià(! dœ_node ) { 626 çm_dœ = `çm_dœ_’Œy_š™ (); 627 çm_dœ -> fc = sc -> çm ; 629 `bufãr_cÝy_¡ršg_bufãr ( çm_dœ -> Çme , sc -> dœ_Çme ); 631 çm_dœ -> v”siÚ = 1; 633 çm_dœ -> »q = `ÿÎoc (1, ( FAMReque¡ )); 635 ià(0 !ð `FAMMÚ™ÜDœeùÜy ( sc -> çm , çm_dœ -> Çme -> ±r , 636 çm_dœ -> »q , fam_dir)) { 638 `log_”rÜ_wr™e ( ¤v , __FILE__ , __LINE__ , "sbsbs", 640 çm_dœ -> Çme , 641 "fže:", Çme , 642 FamE¼li¡ [ FAME¼no ]); 644 `çm_dœ_’Œy_ä“ ( çm_dœ ); 646  osize = 0; 648 ià( sc -> dœs ) { 649 osize = sc -> dœs -> size ; 652 sc -> dœs = `¥ÏyŒ“_š£¹ (sc->dœs, dœ_ndx , çm_dœ ); 653 `as£¹ ( sc -> dœs ); 654 `as£¹ ( sc -> dœs -> d©a =ð çm_dœ ); 655 `as£¹ ( osize =ð( sc -> dœs -> size - 1)); 658 çm_dœ = dœ_node -> d©a ; 663 ià( çm_dœ ) { 664 sû -> dœ_v”siÚ = çm_dœ -> v”siÚ ; 665 sû -> dœ_ndx = dir_ndx; 670 * »t_sû = sû ; 672  HANDLER_GO_ON ; 673 } } 684  $¡©_ÿche_g_Þd_’Œ›s ( £rv” * ¤v , ¥Ïy_Œ“ * t , * keys , size_t * ndx ) { 685 ¡©_ÿche_’Œy * sû ; 687 ià(! t )  0; 689 `¡©_ÿche_g_Þd_’Œ›s ( ¤v , t -> Ëá , keys , ndx ); 690 `¡©_ÿche_g_Þd_’Œ›s ( ¤v , t -> right , keys , ndx ); 692 sû = t -> d©a ; 694 ià( ¤v -> cur_ts - sû -> ¡©_ts > 2) { 695 keys [(* ndx )++] = t -> key ; 699 } } 701  $¡©_ÿche_Œigg”_þ—nup ( £rv” * ¤v ) { 702 ¡©_ÿche * sc ; 703 size_t max_ndx = 0, i ; 704 * keys ; 706 sc = ¤v -> ¡©_ÿche ; 708 ià(! sc -> fžes )  0; 710 keys = `ÿÎoc (1, ( size_t è* sc -> fžes -> size ); 712 `¡©_ÿche_g_Þd_’Œ›s ( ¤v , sc -> fžes , keys , & max_ndx ); 714  i = 0; i < max_ndx ; i++) { 715  ndx = keys [ i ]; 716 ¥Ïy_Œ“ * node ; 718 sc -> fžes = `¥ÏyŒ“_¥Ïy (sc->fžes, ndx ); 720 node = sc -> fžes ; 722 ià( node && (node-> key =ð ndx )) { 723 #ifdeà DEBUG_STAT_CACHE 724 size_t j ; 725  osize = `¥ÏyŒ“_size ( sc -> fžes ); 726 ¡©_ÿche_’Œy * sû = node -> d©a ; 728 `¡©_ÿche_’Œy_ä“ ( node -> d©a ); 729 sc -> fžes = `¥ÏyŒ“_d–‘e (sc->fžes, ndx ); 731 #ifdeà DEBUG_STAT_CACHE 732  j = 0; j < ù¾ . u£d ; j++) { 733 ià( ù¾ . ±r [ j ] =ð ndx ) { 734 ù¾ . ±r [ j ] = cŒl.±r[--ù¾. u£d ]; 739 `as£¹ ( osize - 1 =ð `¥ÏyŒ“_size ( sc -> fžes )); 744 `ä“ ( keys ); 747 } } @src/stat_cache.h 1 #iâdeà _FILE_CACHE_H_ 2  #_FILE_CACHE_H_ ) 4  ~"ba£.h " 6 ¡©_ÿche * ¡©_ÿche_š™ (); 7  ¡©_ÿche_ä“ ( ¡©_ÿche * fc ); 9 hªdËr_t ¡©_ÿche_g‘_’Œy ( £rv” * ¤v , cÚÃùiÚ * cÚ , bufãr * Çme , ¡©_ÿche_’Œy ** fû ); 10 hªdËr_t ¡©_ÿche_hªdË_fdev’t (* _¤v , * _fû ,  »v’t ); 12  ¡©_ÿche_Œigg”_þ—nup ( £rv” * ¤v ); @src/status_counter.c 1  ~<¡dlib.h > 3  ~"¡©us_couÁ”.h " 18 d©a_š‹g” * $¡©us_couÁ”_g‘_couÁ” ( £rv” * ¤v , cÚ¡ * s , size_t Ën ) { 19 d©a_š‹g” * di ; 21 ià( NULL =ð( di = ( d©a_š‹g” *) `¬¿y_g‘_–em’t ( ¤v -> ¡©us , s ))) { 24 ià( NULL =ð( di = ( d©a_š‹g” *) `¬¿y_g‘_unu£d_–em’t ( ¤v -> ¡©us , TYPE_INTEGER ))) { 25 di = `d©a_š‹g”_š™ (); 27 `bufãr_cÝy_¡ršg_Ën ( di -> key , s , Ën ); 28 di -> v®ue = 0; 30 `¬¿y_š£¹_unique ( ¤v -> ¡©us , ( d©a_un£t *) di ); 32  di ; 33 } } 37  $¡©us_couÁ”_šc ( £rv” * ¤v , cÚ¡ * s , size_t Ën ) { 38 d©a_š‹g” * di = `¡©us_couÁ”_g‘_couÁ” ( ¤v , s , Ën ); 40 di -> v®ue ++; 43 } } 45  $¡©us_couÁ”_dec ( £rv” * ¤v , cÚ¡ * s , size_t Ën ) { 46 d©a_š‹g” * di = `¡©us_couÁ”_g‘_couÁ” ( ¤v , s , Ën ); 48 ià( di -> v®ue > 0) di->value--; 51 } } 53  $¡©us_couÁ”_£t ( £rv” * ¤v , cÚ¡ * s , size_t Ën ,  v® ) { 54 d©a_š‹g” * di = `¡©us_couÁ”_g‘_couÁ” ( ¤v , s , Ën ); 56 di -> v®ue = v® ; 59 } } @src/status_counter.h 1 #iâdeà _STATUS_COUNTER_H_ 2  #_STATUS_COUNTER_H_ ) 4  ~ 6  ~"¬¿y.h " 7  ~"ba£.h " 9 d©a_š‹g” * ¡©us_couÁ”_g‘_couÁ” ( £rv” * ¤v , cÚ¡ * s , size_t Ën ); 10  ¡©us_couÁ”_šc ( £rv” * ¤v , cÚ¡ * s , size_t Ën ); 11  ¡©us_couÁ”_dec ( £rv” * ¤v , cÚ¡ * s , size_t Ën ); 12  ¡©us_couÁ”_£t ( £rv” * ¤v , cÚ¡ * s , size_t Ën ,  v® ); @src/stream.c 1  ~ 2  ~ 4  ~ 5  ~ 7  ~"¡»am.h " 8 #ifdeà HAVE_CONFIG_H 9  ~"cÚfig.h " 12  ~"sys-mm­.h " 14 #iâdeà O_BINARY 15  #O_BINARY 0 ) 18  $¡»am_Ý’ ( ¡»am * f , bufãr * â ) { 19  ¡© ¡ ; 20 #ifdeà HAVE_MMAP 21  fd ; 22 #–ià defšed __WIN32 23 HANDLE * fh , * mh ; 24 * p ; 27 f -> ¡¬t = NULL ; 29 ià(-1 =ð `¡© ( â -> ±r , & ¡ )) { 33 f -> size = ¡ . ¡_size ; 35 #ifdeà HAVE_MMAP 36 ià(-1 =ð( fd = `Ý’ ( â -> ±r , O_RDONLY | O_BINARY ))) { 40 f -> ¡¬t = `mm­ (0, f-> size , PROT_READ , MAP_SHARED , fd , 0); 42 `þo£ ( fd ); 44 ià( MAP_FAILED =ð f -> ¡¬t ) { 48 #–ià defšed __WIN32 49 fh = `C»©eFže ( â -> ±r , 50 GENERIC_READ , 51 FILE_SHARE_READ , 52 NULL , 53 OPEN_EXISTING , 54 FILE_ATTRIBUTE_READONLY , 55 NULL ); 57 ià(! fh )  -1; 59 mh = `C»©eFžeM­pšg Ð fh , 60 NULL , 61 PAGE_READONLY , 62 (( off_t è> 4è? f -> size >> 32 : 0, 63 f -> size & 0xffffffff, 64 NULL ); 66 ià(! mh ) { 81 p = `M­V›wOfFže ( mh , 82 FILE_MAP_READ , 86 `Clo£HªdË ( mh ); 87 `Clo£HªdË ( fh ); 89 f -> ¡¬t = p ; 91 #”rÜ no mm­ found 95 } } 97  $¡»am_þo£ ( ¡»am * f ) { 98 #ifdeà HAVE_MMAP 99 ià( f -> ¡¬t è `munm­ (f->¡¬t, f-> size ); 100 #–ià `defšed ( __WIN32 ) 101 ià( f -> ¡¬t è `Unm­V›wOfFže (f->start); 104 f -> ¡¬t = NULL ; 107 } } @src/stream.h 1 #iâdeà _STREAM_H_ 2  #_STREAM_H_ ) 4  ~"bufãr.h " 7 * m¡¬t ; 8 off_t msize ; 9 } t¡»am ; 11  ¡»am_Ý’ ( ¡»am * f , bufãr * â ); 12  ¡»am_þo£ ( ¡»am * f ); @src/sys-mmap.h 1 #iâdeà WIN32_MMAP_H 2  #WIN32_MMAP_H ) 4 #ifdeà __WIN32 6  #MAP_FAILED -1 ) 7  #PROT_SHARED 0 ) 8  #MAP_SHARED 0 ) 9  #PROT_READ 0 ) 11  #mm­ ( a , b , c , d , e , f è(-1) ) 12  #munm­ ( a , b è(-1) ) 14  ~ 17  ~ 19 #iâdeà MAP_FAILED 20  #MAP_FAILED -1 ) @src/sys-socket.h 1 #iâdeà WIN32_SOCKET_H 2  #WIN32_SOCKET_H ) 4 #ifdeà __WIN32 6  ~ 8  #ECONNRESET WSAECONNRESET ) 9  #EINPROGRESS WSAEINPROGRESS ) 10  #EALREADY WSAEALREADY ) 11  #ECONNABORTED WSAECONNABORTED ) 12  #ioùl ioùlsock‘ ) 13  #h¡»¼Ü ( x è"" ) 15  ~ 16  ~ 17  ~<Ãtš‘/š.h > 18  ~<Ãtš‘/tý.h > 19  ~ 20  ~<¬·/š‘.h > 22  ~<Ãtdb.h > @tests/fcgi-auth.c 1 #ifdeà HAVE_CONFIG_H 2  ~"cÚfig.h " 4 #ifdeà HAVE_FASTCGI_FASTCGI_H 5  ~<ç¡cgi/fcgi_¡dio.h > 7  ~ 9  ~<¡dlib.h > 10  ~ 11  ~<¡ršg.h > 13  $maš () { 14 * p ; 16  `FCGI_Acû± () >= 0) { 19 `´štf ("Content-type:ext/html\r\n"); 21 ià((( p = `g‘’v ("QUERY_STRING")è=ð NULL ) || 22 `¡rcmp ( p , "ok") != 0) { 23 `´štf ("Status: 403 Forbidden\r\n\r\n"); 25 `´štf ("\r\n"); 29 `´štf ("foobar\r\n"); 33 } } @tests/fcgi-responder.c 1 #ifdeà HAVE_CONFIG_H 2  ~"cÚfig.h " 4 #ifdeà HAVE_FASTCGI_FASTCGI_H 5  ~<ç¡cgi/fcgi_¡dio.h > 7  ~ 9  ~<¡dlib.h > 10  ~ 11  ~<¡ršg.h > 13  $maš () { 14  num_»que¡s = 2; 16  num_»que¡s > 0 && 17 `FCGI_Acû± () >= 0) { 18 * p ; 20 ià( NULL !ð( p = `g‘’v ("QUERY_STRING"))) { 21 ià(0 =ð `¡rcmp ( p , "lf")) { 22 `´štf ("Status: 200 OK\n\n"); 23 } ià(0 =ð `¡rcmp ( p , "crlf")) { 24 `´štf ("Status: 200 OK\r\n\r\n"); 25 } ià(0 =ð `¡rcmp ( p , "slow-lf")) { 26 `´štf ("Status: 200 OK\n"); 27 `fæush ( ¡dout ); 28 `´štf ("\n"); 29 } ià(0 =ð `¡rcmp ( p ,"slow-crlf")) { 30 `´štf ("Status: 200 OK\r\n"); 31 `fæush ( ¡dout ); 32 `´štf ("\r\n"); 33 } ià(0 =ð `¡rcmp ( p , "die-at-end")) { 34 `´štf ("Status: 200 OK\r\n\r\n"); 35 num_»que¡s --; 37 `´štf ("Status: 200 OK\r\n\r\n"); 40 `´štf ("Status: 500 Internal Foo\r\n\r\n"); 43 `´štf ("test123"); 47 } } @/usr/include/arpa/inet.h 19 #iâdeà _ARPA_INET_H 20  #_ARPA_INET_H 1 ) 22  ~<ã©u»s.h > 23  ~<Ãtš‘/š.h > 26 #iâdeà __sockËn_t_defšed 27  __sockËn_t tsockËn_t ; 28  #__sockËn_t_defšed ) 31 __BEGIN_DECLS 35 š_addr_t $š‘_addr ( __cÚ¡ * __ý è __THROW ; 38 š_addr_t $š‘_Êaof ( š_addr __š è __THROW ; 42  š_addr $š‘_mak—ddr ( š_addr_t __Ãt , in_addr_ˆ __ho¡ ) 43 __THROW ; 46 š_addr_t $š‘_Ãtof ( š_addr __š è __THROW ; 50 š_addr_t $š‘_ÃtwÜk ( __cÚ¡ * __ý è __THROW ; 54 * $š‘_Áß ( š_addr __š è __THROW ; 59  $š‘_±Ú ( __af , __cÚ¡ * __»¡riù __ý , 60 * __»¡riù __buf è __THROW ; 65 __cÚ¡ * $š‘_ÁÝ ( __af , __cÚ¡ * __»¡riù __ý , 66 * __»¡riù __buf , sockËn_t __Ën ) 67 __THROW ; 71 #ifdeà __USE_MISC 74  $š‘_©Ú ( __cÚ¡ * __ý ,  š_addr * __šp è __THROW ; 78 * $š‘_à ( š_addr_t __Ãt , * __buf , size_t __Ën è __THROW ; 83 * $š‘_Ãt_ÁÝ ( __af , __cÚ¡ * __ý ,  __b™s , 84 * __buf , size_t __Ën è __THROW ; 89  $š‘_Ãt_±Ú ( __af , __cÚ¡ * __ý , 90 * __buf , size_t __Ën è __THROW ; 95  $š‘_n§p_addr ( __cÚ¡ * __ý , 96 * __buf ,  __Ën è __THROW ; 100 * $š‘_n§p_Áß ( __Ën , __cÚ¡ * __ý , 101 * __buf è __THROW ; 104 __END_DECLS @/usr/include/assert.h 24 #ifdef _ASSERT_H 26 #undeà _ASSERT_H 27 #undeà as£¹ 28 #undeà __ASSERT_VOID_CAST 30 #ifdef __USE_GNU 31 #undeà as£¹_³¼Ü 36  #_ASSERT_H 1 ) 37  ~<ã©u»s.h > 39 #ià defšed __ýlu¥lus && __GNUC_PREREQ (2,95) 40  #__ASSERT_VOID_CAST ¡©ic_ÿ¡ <> ) 42  #__ASSERT_VOID_CAST () ) 50 #ifdef NDEBUG 52  #as£¹ ( ex´ è( `__ASSERT_VOID_CAST (0)) ) 60 #ifdef __USE_GNU 61  #as£¹_³¼Ü ( ”ºum è( `__ASSERT_VOID_CAST (0)) ) 66 #iâdeà _ASSERT_H_DECLS 67  #_ASSERT_H_DECLS ) 68 __BEGIN_DECLS 71  $__as£¹_çž ( __cÚ¡ * __as£¹iÚ , __cÚ¡ * __fže , 72  __lše , __cÚ¡ * __funùiÚ ) 73 __THROW `__©Œibu‹__ (( __nÜ‘uº__ )); 76  $__as£¹_³¼Ü_çž ( __”ºum , __cÚ¡ * __fže , 77  __lše , 78 __cÚ¡ * __funùiÚ ) 79 __THROW `__©Œibu‹__ (( __nÜ‘uº__ )); 84  $__as£¹ (cÚ¡ * __as£¹iÚ , cÚ¡ * __fže ,  __lše ) 85 __THROW `__©Œibu‹__ (( __nÜ‘uº__ )); 88 __END_DECLS 91  #as£¹ ( ex´ ) \ 92 (( ex´ ) \ 93 ? `__ASSERT_VOID_CAST (0) \ 94 : `__as£¹_çž ( `__STRING ( ex´ ), __FILE__ , __LINE__ , __ASSERT_FUNCTION )) ) 96 #ifdef __USE_GNU 97  #as£¹_³¼Ü ( ”ºum ) \ 98 (!( ”ºum ) \ 99 ? `__ASSERT_VOID_CAST (0) \ 100 : `__as£¹_³¼Ü_çž (( ”ºum ), __FILE__ , __LINE__ , __ASSERT_FUNCTION )) ) 108 #ià defšed __ýlu¥lus ? `__GNUC_PREREQ (2, 6) : __GNUC_PREREQ (2, 4) 109  #__ASSERT_FUNCTION __PRETTY_FUNCTION__ ) 111 #ià defšed __STDC_VERSION__ && __STDC_VERSION__ >= 199901L 112  #__ASSERT_FUNCTION __func__ ) 114  #__ASSERT_FUNCTION (( __cÚ¡ *è0) ) @/usr/include/bzlib.h 22 #iâdeà _BZLIB_H 23  #_BZLIB_H ) 25 #ifdeà __ýlu¥lus 29  #BZ_RUN 0 ) 30  #BZ_FLUSH 1 ) 31  #BZ_FINISH 2 ) 33  #BZ_OK 0 ) 34  #BZ_RUN_OK 1 ) 35  #BZ_FLUSH_OK 2 ) 36  #BZ_FINISH_OK 3 ) 37  #BZ_STREAM_END 4 ) 38  #BZ_SEQUENCE_ERROR (-1) ) 39  #BZ_PARAM_ERROR (-2) ) 40  #BZ_MEM_ERROR (-3) ) 41  #BZ_DATA_ERROR (-4) ) 42  #BZ_DATA_ERROR_MAGIC (-5) ) 43  #BZ_IO_ERROR (-6) ) 44  #BZ_UNEXPECTED_EOF (-7) ) 45  #BZ_OUTBUFF_FULL (-8) ) 46  #BZ_CONFIG_ERROR (-9) ) 50 * Ãxt_š ; 51  avaž_š ; 52  tÙ®_š_lo32 ; 53  tÙ®_š_hi32 ; 55 * Ãxt_out ; 56  avaž_out ; 57  tÙ®_out_lo32 ; 58  tÙ®_out_hi32 ; 60 * ¡©e ; 62 *(* bz®loc )(*,,); 63 (* bzä“ )(*,*); 64 * Ýaque ; 66 tbz_¡»am ; 69 #iâdeà BZ_IMPORT 70  #BZ_EXPORT ) 73 #iâdeà BZ_NO_STDIO 75  ~<¡dio.h > 78 #ifdeà _WIN32 79  ~ 80 #ifdeà sm®l 82 #undeà sm®l 84 #ifdeà BZ_EXPORT 85  #BZ_API ( func è WINAPI ) func 86  #BZ_EXTERN ) 89  #BZ_API ( func è( WINAPI * func) ) 90  #BZ_EXTERN ) 93  #BZ_API ( func è ) func 94  #BZ_EXTERN ) 100 BZ_EXTERN  BZ_API ( BZ2_bzCom´essIn™ ) ( 101 bz_¡»am * ¡rm , 102  blockSize100k , 103  v”bos™y , 104  wÜkFaùÜ 107 BZ_EXTERN  BZ_API ( BZ2_bzCom´ess ) ( 108 bz_¡»am * g¡rm , 109  gaùiÚ 112 BZ_EXTERN  BZ_API ( BZ2_bzCom´essEnd ) ( 113 bz_¡»am * g¡rm 116 BZ_EXTERN  BZ_API ( BZ2_bzDecom´essIn™ ) ( 117 bz_¡»am * g¡rm , 118  gv”bos™y , 119  gsm®l 122 BZ_EXTERN  BZ_API ( BZ2_bzDecom´ess ) ( 123 bz_¡»am * g¡rm 126 BZ_EXTERN  BZ_API ( BZ2_bzDecom´essEnd ) ( 127 bz_¡»am * g¡rm 134 #iâdeà BZ_NO_STDIO 135  #BZ_MAX_UNUSED 5000 ) 137  tBZFILE ; 139 BZ_EXTERN BZFILE * BZ_API ( BZ2_bzR—dO³n ) ( 140 * gbz”rÜ , 141 FILE * gf , 142  gv”bos™y , 143  gsm®l , 144 * gunu£d , 145  gnUnu£d 148 BZ_EXTERN  BZ_API ( BZ2_bzR—dClo£ ) ( 149 * gbz”rÜ , 150 BZFILE * gb 153 BZ_EXTERN  BZ_API ( BZ2_bzR—dG‘Unu£d ) ( 154 * gbz”rÜ , 155 BZFILE * gb , 156 ** gunu£d , 157 * gnUnu£d 160 BZ_EXTERN  BZ_API ( BZ2_bzR—d ) ( 161 * gbz”rÜ , 162 BZFILE * gb , 163 * gbuf , 164  gËn 167 BZ_EXTERN BZFILE * BZ_API ( BZ2_bzWr™eO³n ) ( 168 * gbz”rÜ , 169 FILE * gf , 170  gblockSize100k , 171  gv”bos™y , 172  gwÜkFaùÜ 175 BZ_EXTERN  BZ_API ( BZ2_bzWr™e ) ( 176 * gbz”rÜ , 177 BZFILE * gb , 178 * gbuf , 179  gËn 182 BZ_EXTERN  BZ_API ( BZ2_bzWr™eClo£ ) ( 183 * gbz”rÜ , 184 BZFILE * gb , 185  gabªdÚ , 186 * gnby‹s_š , 187 * gnby‹s_out 190 BZ_EXTERN  BZ_API ( BZ2_bzWr™eClo£64 ) ( 191 * gbz”rÜ , 192 BZFILE * gb , 193  gabªdÚ , 194 * gnby‹s_š_lo32 , 195 * gnby‹s_š_hi32 , 196 * gnby‹s_out_lo32 , 197 * gnby‹s_out_hi32 204 BZ_EXTERN  BZ_API ( BZ2_bzBuffToBuffCom´ess ) ( 205 * gde¡ , 206 * gde¡L’ , 207 * gsourû , 208  gsourûL’ , 209  gblockSize100k , 210  gv”bos™y , 211  gwÜkFaùÜ 214 BZ_EXTERN  BZ_API ( BZ2_bzBuffToBuffDecom´ess ) ( 215 * gde¡ , 216 * gde¡L’ , 217 * gsourû , 218  gsourûL’ , 219  gsm®l , 220  gv”bos™y 233 BZ_EXTERN cÚ¡ * BZ_API ( BZ2_bzlibV”siÚ ) ( 237 #iâdeà BZ_NO_STDIO 238 BZ_EXTERN BZFILE * BZ_API ( BZ2_bzÝ’ ) ( 239 cÚ¡ * g·th , 240 cÚ¡ * gmode 243 BZ_EXTERN BZFILE * BZ_API ( BZ2_bzdÝ’ ) ( 244  gfd , 245 cÚ¡ * gmode 248 BZ_EXTERN  BZ_API ( BZ2_bz»ad ) ( 249 BZFILE * gb , 250 * gbuf , 251  gËn 254 BZ_EXTERN  BZ_API ( BZ2_bzwr™e ) ( 255 BZFILE * gb , 256 * gbuf , 257  gËn 260 BZ_EXTERN  BZ_API ( BZ2_bzæush ) ( 261 BZFILE * gb 264 BZ_EXTERN  BZ_API ( BZ2_bzþo£ ) ( 265 BZFILE * gb 268 BZ_EXTERN cÚ¡ * BZ_API ( BZ2_bz”rÜ ) ( 269 BZFILE * gb , 270 * g”ºum 274 #ifdeà __ýlu¥lus @/usr/include/crypt.h 25 #iâdeà _CRYPT_H 26  #_CRYPT_H 1 ) 28  ~<ã©u»s.h > 30 __BEGIN_DECLS 33 * $üy± ( __cÚ¡ * __key , __cÚ¡ * __§É ) 34 __THROW `__nÚnuÎ ((1, 2)); 37  $£tkey ( __cÚ¡ * __key è __THROW `__nÚnuÎ ((1)); 41  $’üy± (* __block ,  __edæag è __THROW `__nÚnuÎ ((1)); 43 #ifdeà __USE_GNU 46  süy±_d©a 48  keysched [16 * 8]; 49  sb0 [32768]; 50  sb1 [32768]; 51  sb2 [32768]; 52  sb3 [32768]; 54  üy±_3_buf [14]; 55  cu¼’t_§É [2]; 56  cu¼’t_§Éb™s ; 57  dœeùiÚ , š™Ÿlized ; 60 * $üy±_r ( __cÚ¡ * __key , __cÚ¡ * __§É , 61  üy±_d©a * __»¡riù __d©a ) 62 __THROW `__nÚnuÎ ((1, 2, 3)); 64  $£tkey_r ( __cÚ¡ * __key , 65  üy±_d©a * __»¡riù __d©a ) 66 __THROW `__nÚnuÎ ((1, 2)); 68  $’üy±_r (* __block ,  __edæag , 69  üy±_d©a * __»¡riù __d©a ) 70 __THROW `__nÚnuÎ ((1, 3)); 73 __END_DECLS @/usr/include/ctype.h 24 #iâdef _CTYPE_H 25  #_CTYPE_H 1 ) 27  ~<ã©u»s.h > 28  ~ 30 g__BEGIN_DECLS 32 #iâdeà _ISb™ 41  ~<’dŸn.h > 42 #ià __BYTE_ORDER =ð __BIG_ENDIAN 43  #_ISb™ ( b™ è(1 << (b™)) ) 45  #_ISb™ ( b™ è((b™è< 8 ? ((1 << (b™)è<< 8è: ((1 << (b™)è>> 8)) ) 50 m_ISuµ” = _ISb™ (0), 51 m_ISlow” = _ISb™ (1), 52 m_IS®pha = _ISb™ (2), 53 m_ISdig™ = _ISb™ (3), 54 m_ISxdig™ = _ISb™ (4), 55 m_IS¥aû = _ISb™ (5), 56 m_IS´št = _ISb™ (6), 57 m_ISg¿ph = _ISb™ (7), 58 m_ISbÏnk = _ISb™ (8), 59 m_ISúŒl = _ISb™ (9), 60 m_ISpunù = _ISb™ (10), 61 m_IS®num = _ISb™ (11) 81 __cÚ¡ ** $__ùy³_b_loc () 82 `__©Œibu‹__ (( __cÚ¡ )); 83 __cÚ¡ __št32_t ** $__ùy³_tÞow”_loc () 84 `__©Œibu‹__ (( __cÚ¡ )); 85 __cÚ¡ __št32_t ** $__ùy³_touµ”_loc () 86 `__©Œibu‹__ (( __cÚ¡ )); 88  #__isùy³ ( c , ty³ ) \ 89 ((* `__ùy³_b_loc ())[(è( c )] & (è ty³ ) ) 91  #__i§scii ( c è(((cè& ~0x7fè=ð0è ) 92  #__tßscii ( c è((cè& 0x7fè ) 94  #__exùy³ ( Çme è  `Çme (è __THROW ) 96 __BEGIN_NAMESPACE_STD 102 `__exùy³ ( i§Êum ); 103 `__exùy³ ( i§Íha ); 104 `__exùy³ ( isúŒl ); 105 `__exùy³ ( isdig™ ); 106 `__exùy³ ( i¦ow” ); 107 `__exùy³ ( isg¿ph ); 108 `__exùy³ ( i¥ršt ); 109 `__exùy³ ( i¥unù ); 110 `__exùy³ ( is¥aû ); 111 `__exùy³ ( isuµ” ); 112 `__exùy³ ( isxdig™ ); 116  $tÞow” ( __c è __THROW ; 119  $touµ” ( __c è __THROW ; 121 __END_NAMESPACE_STD 125 #ifdef __USE_ISOC99 126 __BEGIN_NAMESPACE_C99 128 `__exùy³ ( isbÏnk ); 130 __END_NAMESPACE_C99 133 #ifdeà __USE_GNU 135  $isùy³ ( __c ,  __mask è __THROW ; 138 #ià defšed __USE_SVID || defšed __USE_MISC || defšed __USE_XOPEN 142  $i§scii ( __c è __THROW ; 146  $tßscii ( __c è __THROW ; 150 `__exùy³ ( _touµ” ); 151 `__exùy³ ( _tÞow” ); 155  #__tobody ( c , f , a , ¬gs ) \ 156 ( __ex‹nsiÚ__ \ 157 ({  __»s ; \ 158 ià( ( c ) > 1) \ 160 ià( `__bužtš_cÚ¡ªt_p ( c )) \ 162  __c = ( c ); \ 163 __»s = __c < -128 || __ø> 255 ? __ø: ( a )[__c]; \ 166 __»s = f ¬gs ; \ 169 __»s = ( a )[(è( c )]; \ 170 __»s ; } })) ) 172 #ià! defšed __NO_CTYPE && !defšed __ýlu¥lus 173  #i§Êum ( c è `__isùy³ ((c), _IS®num ) ) 174  #i§Íha ( c è `__isùy³ ((c), _IS®pha ) ) 175  #isúŒl ( c è `__isùy³ ((c), _ISúŒl ) ) 176  #isdig™ ( c è `__isùy³ ((c), _ISdig™ ) ) 177  #i¦ow” ( c è `__isùy³ ((c), _ISlow” ) ) 178  #isg¿ph ( c è `__isùy³ ((c), _ISg¿ph ) ) 179  #i¥ršt ( c è `__isùy³ ((c), _IS´št ) ) 180  #i¥unù ( c è `__isùy³ ((c), _ISpunù ) ) 181  #is¥aû ( c è `__isùy³ ((c), _IS¥aû ) ) 182  #isuµ” ( c è `__isùy³ ((c), _ISuµ” ) ) 183  #isxdig™ ( c è `__isùy³ ((c), _ISxdig™ ) ) 185 #ifdeà __USE_ISOC99 186  #isbÏnk ( c è `__isùy³ ((c), _ISbÏnk ) ) 189 #ifdeà __USE_EXTERN_INLINES 190 __ex‹º_šlše  191 __NTH ( $tÞow” ( __c )) 193  __c >ð-128 && __ø< 256 ? (* `__ùy³_tÞow”_loc ())[__c] : __c; 194 } } 196 __ex‹º_šlše  197 __NTH ( $touµ” ( __c )) 199  __c >ð-128 && __ø< 256 ? (* `__ùy³_touµ”_loc ())[__c] : __c; 200 } } 203 #ià __GNUC__ >ð2 && defšed __OPTIMIZE__ && !defšed __ýlu¥lus 204  #tÞow” ( c è `__tobody (c, tÞow” , * `__ùy³_tÞow”_loc (), (c)) ) 205  #touµ” ( c è `__tobody (c, touµ” , * `__ùy³_touµ”_loc (), (c)) ) 208 #ià defšed __USE_SVID || defšed __USE_MISC || defšed __USE_XOPEN 209  #i§scii ( c è `__i§scii (c) ) 210  #tßscii ( c è `__tßscii (c) ) 212  #_tÞow” ( c è((è(* `__ùy³_tÞow”_loc ())[(è(c)]) ) 213  #_touµ” ( c è((è(* `__ùy³_touµ”_loc ())[(è(c)]) ) 219 #ifdeà __USE_GNU 233  ~ 237  #__isùy³_l ( c , ty³ , loÿË ) \ 238 (( loÿË )-> __ùy³_b [(è( c )] & (è ty³ ) ) 240  #__exùy³_l ( Çme ) \ 241  `Çme (, __loÿË_t è __THROW ) 247 __exùy³_l ( i§Êum_l ); 248 __exùy³_l ( i§Íha_l ); 249 __exùy³_l ( isúŒl_l ); 250 __exùy³_l ( isdig™_l ); 251 __exùy³_l ( i¦ow”_l ); 252 __exùy³_l ( isg¿ph_l ); 253 __exùy³_l ( i¥ršt_l ); 254 __exùy³_l ( i¥unù_l ); 255 __exùy³_l ( is¥aû_l ); 256 __exùy³_l ( isuµ”_l ); 257 __exùy³_l ( isxdig™_l ); 259 __exùy³_l ( isbÏnk_l ); 263  $__tÞow”_l ( __c , __loÿË_t __l è __THROW ; 264  $tÞow”_l ( __c , __loÿË_t __l è __THROW ; 267  $__touµ”_l ( __c , __loÿË_t __l è __THROW ; 268  $touµ”_l ( __c , __loÿË_t __l è __THROW ; 270 #ià __GNUC__ >ð2 && defšed __OPTIMIZE__ && !defšed __ýlu¥lus 271  #__tÞow”_l ( c , loÿË ) \ 272 `__tobody ( c , __tÞow”_l , ( loÿË )-> __ùy³_tÞow” , (c,†oÿË)) ) 273  #__touµ”_l ( c , loÿË ) \ 274 `__tobody ( c , __touµ”_l , ( loÿË )-> __ùy³_touµ” , (c,†oÿË)) ) 275  #tÞow”_l ( c , loÿË è `__tÞow”_l ((c), (loÿË)) ) 276  #touµ”_l ( c , loÿË è `__touµ”_l ((c), (loÿË)) ) 280 #iâdeà __NO_CTYPE 281  #__i§Êum_l ( c , l è `__isùy³_l ((c), _IS®num , (l)) ) 282  #__i§Íha_l ( c , l è `__isùy³_l ((c), _IS®pha , (l)) ) 283  #__isúŒl_l ( c , l è `__isùy³_l ((c), _ISúŒl , (l)) ) 284  #__isdig™_l ( c , l è `__isùy³_l ((c), _ISdig™ , (l)) ) 285  #__i¦ow”_l ( c , l è `__isùy³_l ((c), _ISlow” , (l)) ) 286  #__isg¿ph_l ( c , l è `__isùy³_l ((c), _ISg¿ph , (l)) ) 287  #__i¥ršt_l ( c , l è `__isùy³_l ((c), _IS´št , (l)) ) 288  #__i¥unù_l ( c , l è `__isùy³_l ((c), _ISpunù , (l)) ) 289  #__is¥aû_l ( c , l è `__isùy³_l ((c), _IS¥aû , (l)) ) 290  #__isuµ”_l ( c , l è `__isùy³_l ((c), _ISuµ” , (l)) ) 291  #__isxdig™_l ( c , l è `__isùy³_l ((c), _ISxdig™ , (l)) ) 293  #__isbÏnk_l ( c , l è `__isùy³_l ((c), _ISbÏnk , (l)) ) 295 #ià defšed __USE_SVID || defšed __USE_MISC || defšed __USE_XOPEN 296  #__i§scii_l ( c , l è(Ö), `__i§scii (c)) ) 297  #__tßscii_l ( c , l è(Ö), `__tßscii (c)) ) 300  #i§Êum_l ( c , l è `__i§Êum_l ((c), (l)) ) 301  #i§Íha_l ( c , l è `__i§Íha_l ((c), (l)) ) 302  #isúŒl_l ( c , l è `__isúŒl_l ((c), (l)) ) 303  #isdig™_l ( c , l è `__isdig™_l ((c), (l)) ) 304  #i¦ow”_l ( c , l è `__i¦ow”_l ((c), (l)) ) 305  #isg¿ph_l ( c , l è `__isg¿ph_l ((c), (l)) ) 306  #i¥ršt_l ( c , l è `__i¥ršt_l ((c), (l)) ) 307  #i¥unù_l ( c , l è `__i¥unù_l ((c), (l)) ) 308  #is¥aû_l ( c , l è `__is¥aû_l ((c), (l)) ) 309  #isuµ”_l ( c , l è `__isuµ”_l ((c), (l)) ) 310  #isxdig™_l ( c , l è `__isxdig™_l ((c), (l)) ) 312  #isbÏnk_l ( c , l è `__isbÏnk_l ((c), (l)) ) 314 #ià defšed __USE_SVID || defšed __USE_MISC || defšed __USE_XOPEN 315  #i§scii_l ( c , l è `__i§scii_l ((c), (l)) ) 316  #tßscii_l ( c , l è `__tßscii_l ((c), (l)) ) 323 __END_DECLS @/usr/include/dirent.h 23 #iâdef _DIRENT_H 24  #_DIRENT_H 1 ) 26  ~<ã©u»s.h > 28 g__BEGIN_DECLS 30  ~ 32 #ifdeà __USE_XOPEN 33 #iâdeà __šo_t_defšed 34 #iâdeà __USE_FILE_OFFSET64 35  __šo_t tšo_t ; 37  __šo64_t tšo_t ; 39  #__šo_t_defšed ) 41 #ià defšed __USE_LARGEFILE64 && !defšed __šo64_t_defšed 42  __šo64_t tšo64_t ; 43  #__šo64_t_defšed ) 62  ~ 64 #ià( defšed __USE_BSD || defšed __USE_MISC è&& !defšed d_fž’o 65  #d_šo d_fž’o ) 82 #ifdeà _DIRENT_HAVE_D_NAMLEN 83  #_D_EXACT_NAMLEN ( d è((d)-> d_ÇmËn ) ) 84  #_D_ALLOC_NAMLEN ( d è( `_D_EXACT_NAMLEN (dè+ 1) ) 86  #_D_EXACT_NAMLEN ( d è( `¡¾’ ((d)-> d_Çme )) ) 87 #ifdeà _DIRENT_HAVE_D_RECLEN 88  #_D_ALLOC_NAMLEN ( d è(((*è(dè+ (d)-> d_»þ’ è- &(d)-> d_Çme [0]) ) 90  #_D_ALLOC_NAMLEN ( d è( (d)-> d_Çme > 1 ?  (d)->d_name : \ 91 `_D_EXACT_NAMLEN ( d è+ 1) ) 96 #ifdeà __USE_BSD 100 mDT_UNKNOWN = 0, 101  #DT_UNKNOWN DT_UNKNOWN ) 102 mDT_FIFO = 1, 103  #DT_FIFO DT_FIFO ) 104 mDT_CHR = 2, 105  #DT_CHR DT_CHR ) 106 mDT_DIR = 4, 107  #DT_DIR DT_DIR ) 108 mDT_BLK = 6, 109  #DT_BLK DT_BLK ) 110 mDT_REG = 8, 111  #DT_REG DT_REG ) 112 mDT_LNK = 10, 113  #DT_LNK DT_LNK ) 114 mDT_SOCK = 12, 115  #DT_SOCK DT_SOCK ) 116 mDT_WHT = 14 117  #DT_WHT DT_WHT ) 121  #IFTODT ( mode è(((modeè& 0170000è>> 12) ) 122  #DTTOIF ( dœty³ è((dœty³è<< 12) ) 128  __dœ¡»am tDIR ; 135 DIR * $Ý’dœ ( __cÚ¡ * __Çme è `__nÚnuÎ ((1)); 137 #ifdeà __USE_GNU 142 DIR * `fdÝ’dœ ( __fd ); 150  $þo£dœ ( DIR * __dœp è `__nÚnuÎ ((1)); 162 #iâdeà __USE_FILE_OFFSET64 163  dœ’t * $»addœ ( DIR * __dœp è `__nÚnuÎ ((1)); 165 #ifdeà __REDIRECT 166  dœ’t * `__REDIRECT ( »addœ , ( DIR * __dœp ), »addœ64 ) 167 `__nÚnuÎ ((1)); 169  #»addœ »addœ64 ) 173 #ifdeà __USE_LARGEFILE64 174  dœ’t64 * $»addœ64 ( DIR * __dœp è `__nÚnuÎ ((1)); 177 #ià defšed __USE_POSIX || defšed __USE_MISC 183 #iâdeà __USE_FILE_OFFSET64 184  $»addœ_r ( DIR * __»¡riù __dœp , 185  dœ’t * __»¡riù __’Œy , 186  dœ’t ** __»¡riù __»suÉ ) 187 `__nÚnuÎ ((1, 2, 3)); 189 #ifdeà __REDIRECT 190  `__REDIRECT ( »addœ_r , 191 ( DIR * __»¡riù __dœp , 192  dœ’t * __»¡riù __’Œy , 193  dœ’t ** __»¡riù __»suÉ ), 194 »addœ64_r è `__nÚnuÎ ((1, 2, 3)); 196  #»addœ_r »addœ64_r ) 200 #ifdeà __USE_LARGEFILE64 201  $»addœ64_r ( DIR * __»¡riù __dœp , 202  dœ’t64 * __»¡riù __’Œy , 203  dœ’t64 ** __»¡riù __»suÉ ) 204 `__nÚnuÎ ((1, 2, 3)); 209  $»wšddœ ( DIR * __dœp è __THROW `__nÚnuÎ ((1)); 211 #ià defšed __USE_BSD || defšed __USE_MISC || defšed __USE_XOPEN 212  ~ 215  $£ekdœ ( DIR * __dœp ,  __pos è __THROW `__nÚnuÎ ((1)); 218  $‹Îdœ ( DIR * __dœp è __THROW `__nÚnuÎ ((1)); 221 #ià defšed __USE_BSD || defšed __USE_MISC 224  $dœfd ( DIR * __dœp è __THROW `__nÚnuÎ ((1)); 226 #ià defšed __OPTIMIZE__ && defšed _DIR_dœfd 227  #dœfd ( dœp è `_DIR_dœfd (dœp) ) 230 #iâdeà MAXNAMLEN 232  ~ 235 #ifdeà NAME_MAX 236  #MAXNAMLEN NAME_MAX ) 238  #MAXNAMLEN 255 ) 242  #__Ãed_size_t ) 243  ~<¡ddef.h > 249 #iâdeà __USE_FILE_OFFSET64 250  `sÿndœ ( __cÚ¡ * __»¡riù __dœ , 251  dœ’t *** __»¡riù __Çm–i¡ , 252 (* __£ËùÜ è( __cÚ¡  dœ’t *), 253 (* __cmp è( __cÚ¡ *, __const *)) 254 `__nÚnuÎ ((1, 2)); 256 #ifdeà __REDIRECT 257  `__REDIRECT ( sÿndœ , 258 ( __cÚ¡ * __»¡riù __dœ , 259  dœ’t *** __»¡riù __Çm–i¡ , 260 (* __£ËùÜ è( __cÚ¡  dœ’t *), 261 (* __cmp è( __cÚ¡ *, __const *)), 262 sÿndœ64 è `__nÚnuÎ ((1, 2)); 264  #sÿndœ sÿndœ64 ) 268 #ià defšed __USE_GNU && defšed __USE_LARGEFILE64 271  `sÿndœ64 ( __cÚ¡ * __»¡riù __dœ , 272  dœ’t64 *** __»¡riù __Çm–i¡ , 273 (* __£ËùÜ è( __cÚ¡  dœ’t64 *), 274 (* __cmp è( __cÚ¡ *, __const *)) 275 `__nÚnuÎ ((1, 2)); 279 #iâdeà __USE_FILE_OFFSET64 280  $®phasÜt ( __cÚ¡ * __e1 , __cÚ¡ * __e2 ) 281 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 283 #ifdeà __REDIRECT 284  `__REDIRECT_NTH ( ®phasÜt , 285 ( __cÚ¡ * __e1 , __cÚ¡ * __e2 ), 286 ®phasÜt64 è __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 288  #®phasÜt ®phasÜt64 ) 292 #ià defšed __USE_GNU && defšed __USE_LARGEFILE64 293  $®phasÜt64 ( __cÚ¡ * __e1 , __cÚ¡ * __e2 ) 294 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 297 #ifdeà __USE_GNU 299 #iâdeà __USE_FILE_OFFSET64 300  $v”siÚsÜt ( __cÚ¡ * __e1 , __cÚ¡ * __e2 ) 301 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 303 #ifdeà __REDIRECT 304  `__REDIRECT_NTH ( v”siÚsÜt , 305 ( __cÚ¡ * __e1 , __cÚ¡ * __e2 ), 306 v”siÚsÜt64 ) 307 __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 309  #v”siÚsÜt v”siÚsÜt64 ) 313 #ifdeà __USE_LARGEFILE64 314  $v”siÚsÜt64 ( __cÚ¡ * __e1 , __cÚ¡ * __e2 ) 315 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 323 #iâdeà __USE_FILE_OFFSET64 324 __ssize_t $g‘dœ’Œ›s ( __fd , * __»¡riù __buf , 325 size_t __nby‹s , 326 __off_t * __»¡riù __ba£p ) 327 __THROW `__nÚnuÎ ((2, 4)); 329 #ifdeà __REDIRECT 330 __ssize_t `__REDIRECT_NTH ( g‘dœ’Œ›s , 331 ( __fd , * __»¡riù __buf , 332 size_t __nby‹s , 333 __off64_t * __»¡riù __ba£p ), 334 g‘dœ’Œ›s64 è `__nÚnuÎ ((2, 4)); 336  #g‘dœ’Œ›s g‘dœ’Œ›s64 ) 340 #ifdeà __USE_LARGEFILE64 341 __ssize_t $g‘dœ’Œ›s64 ( __fd , * __»¡riù __buf , 342 size_t __nby‹s , 343 __off64_t * __»¡riù __ba£p ) 344 __THROW `__nÚnuÎ ((2, 4)); 349 __END_DECLS @/usr/include/dlfcn.h 21 #iâdef _DLFCN_H 22  #_DLFCN_H 1 ) 24  ~<ã©u»s.h > 25  #__Ãed_size_t ) 26  ~<¡ddef.h > 29  ~ 32 #ifdeà __USE_GNU 37  #RTLD_NEXT ((*è-1l) ) 42  #RTLD_DEFAULT ((*è0) ) 46  tLmid_t ; 49  #LM_ID_BASE 0 ) 50  #LM_ID_NEWLM -1 ) 54 __BEGIN_DECLS 58 * $dlÝ’ ( __cÚ¡ * __fže ,  __mode è __THROW ; 62  $dlþo£ (* __hªdË è __THROW `__nÚnuÎ ((1)); 66 * $dlsym (* __»¡riù __hªdË , 67 __cÚ¡ * __»¡riù __Çme è __THROW `__nÚnuÎ ((2)); 69 #ifdeà __USE_GNU 71 * $dlmÝ’ ( Lmid_t __nsid , __cÚ¡ * __fže ,  __mode è __THROW ; 75 * $dlvsym (* __»¡riù __hªdË , 76 __cÚ¡ * __»¡riù __Çme , 77 __cÚ¡ * __»¡riù __v”siÚ ) 78 __THROW `__nÚnuÎ ((2, 3)); 84 * $dË¼Ü (è __THROW ; 87 #ifdeà __USE_GNU 92 __cÚ¡ * dli_âame ; 93 * dli_fba£ ; 94 __cÚ¡ * dli_¢ame ; 95 * dli_§ddr ; 96 } tDl_šfo ; 100  $dÏddr ( __cÚ¡ * __add»ss , Dl_šfo * __šfo ) 101 __THROW `__nÚnuÎ ((2)); 104  $dÏddr1 ( __cÚ¡ * __add»ss , Dl_šfo * __šfo , 105 ** __exŒa_šfo ,  __æags è __THROW `__nÚnuÎ ((2)); 113 RTLD_DL_SYMENT = 1, 116 RTLD_DL_LINKMAP = 2 125  $dlšfo (* __»¡riù __hªdË , 126  __»que¡ , * __»¡riù __¬g ) 127 __THROW `__nÚnuÎ ((1, 3)); 133 RTLD_DI_LMID = 1, 137 RTLD_DI_LINKMAP = 2, 139 RTLD_DI_CONFIGADDR = 3, 146 RTLD_DI_SERINFO = 4, 147 RTLD_DI_SERINFOSIZE = 5, 151 RTLD_DI_ORIGIN = 6, 153 RTLD_DI_PROFILENAME = 7, 154 RTLD_DI_PROFILEOUT = 8, 159 RTLD_DI_TLS_MODID = 9, 165 RTLD_DI_TLS_DATA = 10, 167 RTLD_DI_MAX = 10, 175 * dls_Çme ; 176  dls_æags ; 177 } tDl_£½©h ; 183 size_t dls_size ; 184  dls_út ; 185 Dl_£½©h dls_£½©h [1]; 186 } tDl_£ršfo ; 190 __END_DECLS @/usr/include/errno.h 23 #iâdef _ERRNO_H 27 #iâdef __Ãed_Em©h 28  #_ERRNO_H 1 ) 29  ~<ã©u»s.h > 32 g__BEGIN_DECLS 36  ~ 37 #undeà __Ãed_Em©h 39 #ifdef _ERRNO_H 46 #iâdef ”ºo 47  ”ºo ; 50 #ifdeà __USE_GNU 55 * ´og¿m_švoÿtiÚ_Çme , * ´og¿m_švoÿtiÚ_shÜt_Çme ; 59 g__END_DECLS 67 #ià defšed __USE_GNU || defšed __Ãed_”rÜ_t 68 #iâdeà __”rÜ_t_defšed 69  t”rÜ_t ; 70  #__”rÜ_t_defšed 1 ) 72 #undeà __Ãed_”rÜ_t @/usr/include/fcntl.h 24 #iâdef _FCNTL_H 25  #_FCNTL_H 1 ) 27  ~<ã©u»s.h > 30 g__BEGIN_DECLS 34  ~ 37 #ifdeà __USE_XOPEN 38  ~ 41 #ifdef __USE_MISC 42 #iâdeà R_OK 45  #R_OK 4 ) 46  #W_OK 2 ) 47  #X_OK 1 ) 48  #F_OK 0 ) 53 #ifdeà __USE_XOPEN 54  #SEEK_SET 0 ) 55  #SEEK_CUR 1 ) 56  #SEEK_END 2 ) 59 #ifdeà __USE_ATFILE 60  #AT_FDCWD -100 ) 63  #AT_SYMLINK_NOFOLLOW 0x100 ) 64  #AT_REMOVEDIR 0x200 ) 66  #AT_SYMLINK_FOLLOW 0x400 ) 67  #AT_EACCESS 0x200 ) 76  fúŽ ( __fd ,  __cmd , ...); 84 #iâdeà __USE_FILE_OFFSET64 85  $Ý’ ( __cÚ¡ * __fže ,  __oæag , ...è `__nÚnuÎ ((1)); 87 #ifdeà __REDIRECT 88  `__REDIRECT ( Ý’ , ( __cÚ¡ * __fže ,  __oæag , ...), Ý’64 ) 89 `__nÚnuÎ ((1)); 91  #Ý’ Ý’64 ) 94 #ifdeà __USE_LARGEFILE64 95  $Ý’64 ( __cÚ¡ * __fže ,  __oæag , ...è `__nÚnuÎ ((1)); 98 #ifdeà __USE_ATFILE 108 #iâdeà __USE_FILE_OFFSET64 109  $Ý’© ( __fd , __cÚ¡ * __fže ,  __oæag , ...) 110 `__nÚnuÎ ((2)); 112 #ifdeà __REDIRECT 113  `__REDIRECT ( Ý’© , ( __fd , __cÚ¡ * __fže ,  __oæag , 114 ...), Ý’©64 è `__nÚnuÎ ((2)); 116  #Ý’© Ý’©64 ) 120  $Ý’©64 ( __fd , __cÚ¡ * __fže ,  __oæag , ...) 121 `__nÚnuÎ ((2)); 129 #iâdeà __USE_FILE_OFFSET64 130  $ü—t ( __cÚ¡ * __fže , __mode_t __mode è `__nÚnuÎ ((1)); 132 #ifdeà __REDIRECT 133  `__REDIRECT ( ü—t , ( __cÚ¡ * __fže , __mode_t __mode ), 134 ü—t64 è `__nÚnuÎ ((1)); 136  #ü—t ü—t64 ) 139 #ifdeà __USE_LARGEFILE64 140  $ü—t64 ( __cÚ¡ * __fže , __mode_t __mode è `__nÚnuÎ ((1)); 143 #ià! defšed F_LOCK && (defšed __USE_MISC || (defšed __USE_XOPEN_EXTENDED \ 144 && ! defšed __USE_POSIX )) 153  #F_ULOCK 0 ) 154  #F_LOCK 1 ) 155  #F_TLOCK 2 ) 156  #F_TEST 3 ) 158 #iâdeà __USE_FILE_OFFSET64 159  `lockf ( __fd ,  __cmd , __off_t __Ën ); 161 #ifdeà __REDIRECT 162  `__REDIRECT ( lockf , ( __fd ,  __cmd , __off64_t __Ën ), lockf64 ); 164  #lockf lockf64 ) 167 #ifdeà __USE_LARGEFILE64 168  `lockf64 ( __fd ,  __cmd , __off64_t __Ën ); 172 #ifdeà __USE_XOPEN2K 175 #iâdeà __USE_FILE_OFFSET64 176  $posix_çdvi£ ( __fd , __off_t __off£t , __off_ˆ __Ën , 177  __advi£ è __THROW ; 179 #ifdeà __REDIRECT_NTH 180  `__REDIRECT_NTH ( posix_çdvi£ , ( __fd , __off64_t __off£t , 181 __off64_t __Ën ,  __advi£ ), 182 posix_çdvi£64 ); 184  #posix_çdvi£ posix_çdvi£64 ) 187 #ifdeà __USE_LARGEFILE64 188  $posix_çdvi£64 ( __fd , __off64_t __off£t , __off64_ˆ __Ën , 189  __advi£ è __THROW ; 197 #iâdeà __USE_FILE_OFFSET64 198  `posix_çÎoÿ‹ ( __fd , __off_t __off£t , __off_ˆ __Ën ); 200 #ifdeà __REDIRECT 201  `__REDIRECT ( posix_çÎoÿ‹ , ( __fd , __off64_t __off£t , 202 __off64_t __Ën ), 203 posix_çÎoÿ‹64 ); 205  #posix_çÎoÿ‹ posix_çÎoÿ‹64 ) 208 #ifdeà __USE_LARGEFILE64 209  `posix_çÎoÿ‹64 ( __fd , __off64_t __off£t , __off64_ˆ __Ën ); 215 #ià __USE_FORTIFY_LEVEL > 0 && defšed __ex‹º_®ways_šlše \ 216 && defšed __va_¬g_·ck_Ën 217  ~ 220 __END_DECLS @/usr/include/gdbm.h 30 #iâdeà _GDBM_H_ 31  #_GDBM_H_ ) 35  #GDBM_READER 0 ) 36  #GDBM_WRITER 1 ) 37  #GDBM_WRCREAT 2 ) 38  #GDBM_NEWDB 3 ) 39  #GDBM_FAST 0x10 ) 40  #GDBM_SYNC 0x20 ) 41  #GDBM_NOLOCK 0x40 ) 45  #GDBM_INSERT 0 ) 46  #GDBM_REPLACE 1 ) 49  #GDBM_CACHESIZE 1 ) 50  #GDBM_FASTMODE 2 ) 51  #GDBM_SYNCMODE 3 ) 52  #GDBM_CENTFREE 4 ) 53  #GDBM_COALESCEBLKS 5 ) 57 * md±r ; 58  mdsize ; 59 } td©um ; 63 ¡ruù { mdummy [10];} * tGDBM_FILE ; 66 #iâdeà __P 67 #ià defšed ( __STDC__ è|| defšed( __ýlu¥lus è|| defšed( c_¶u¥lus ) 68  #__P ( x è ) x 70  #__P ( x è() ) 75 * gdbm_v”siÚ ; 79 #ià defšed ( __ýlu¥lus è|| defšed( c_¶u¥lus ) 85 GDBM_FILE gdbm_Ý’ __P ((*, , , , (*)())); 86  gdbm_þo£ __P (( GDBM_FILE )); 87  gdbm_¡Üe __P (( GDBM_FILE , d©um , datum, )); 88 d©um gdbm_ãtch __P (( GDBM_FILE , datum)); 89  gdbm_d–‘e __P (( GDBM_FILE , d©um )); 90 d©um gdbm_fœ¡key __P (( GDBM_FILE )); 91 d©um gdbm_Ãxtkey __P (( GDBM_FILE , datum)); 92  gdbm_»Ügªize __P (( GDBM_FILE )); 93  gdbm_sync __P (( GDBM_FILE )); 94  gdbm_exi¡s __P (( GDBM_FILE , d©um )); 95  gdbm_£tÝt __P (( GDBM_FILE , , *, )); 96  gdbm_fdesc __P (( GDBM_FILE )); 98 #ià defšed ( __ýlu¥lus è|| defšed( c_¶u¥lus ) 102  #GDBM_NO_ERROR 0 ) 103  #GDBM_MALLOC_ERROR 1 ) 104  #GDBM_BLOCK_SIZE_ERROR 2 ) 105  #GDBM_FILE_OPEN_ERROR 3 ) 106  #GDBM_FILE_WRITE_ERROR 4 ) 107  #GDBM_FILE_SEEK_ERROR 5 ) 108  #GDBM_FILE_READ_ERROR 6 ) 109  #GDBM_BAD_MAGIC_NUMBER 7 ) 110  #GDBM_EMPTY_DATABASE 8 ) 111  #GDBM_CANT_BE_READER 9 ) 112  #GDBM_CANT_BE_WRITER 10 ) 113  #GDBM_READER_CANT_DELETE 11 ) 114  #GDBM_READER_CANT_STORE 12 ) 115  #GDBM_READER_CANT_REORGANIZE 13 ) 116  #GDBM_UNKNOWN_UPDATE 14 ) 117  #GDBM_ITEM_NOT_FOUND 15 ) 118  #GDBM_REORGANIZE_FAILED 16 ) 119  #GDBM_CANNOT_REPLACE 17 ) 120  #GDBM_ILLEGAL_DATA 18 ) 121  #GDBM_OPT_ALREADY_SET 19 ) 122  #GDBM_OPT_ILLEGAL 20 ) 123  tgdbm_”rÜ ; 124 gdbm_”rÜ gdbm_”ºo ; 129 #ià defšed ( __ýlu¥lus è|| defšed( c_¶u¥lus ) 133 * gdbm_¡»¼Ü __P (( gdbm_”rÜ )); 135 #ià defšed ( __ýlu¥lus è|| defšed( c_¶u¥lus ) @/usr/include/getopt.h 21 #iâdeà _GETOPT_H 23 #iâdeà __Ãed_g‘Ýt 24  #_GETOPT_H 1 ) 34 #ià! defšed __GNU_LIBRARY__ 35  ~<ùy³.h > 38 #iâdeà __THROW 39 #iâdeà __GNUC_PREREQ 40  #__GNUC_PREREQ ( maj , mš è(0) ) 42 #ià defšed __ýlu¥lus && __GNUC_PREREQ (2,8) 43  #__THROW `throw () ) 45  #__THROW ) 49 #ifdef __ýlu¥lus 59 * Ýrg ; 73  Ýtšd ; 78  Ý‹¼ ; 82  ÝtÝt ; 84 #iâdeà __Ãed_g‘Ýt 106  sÝtiÚ 108 cÚ¡ * gÇme ; 111  ghas_¬g ; 112 * gæag ; 113  gv® ; 118  #no_¬gum’t 0 ) 119  #»quœed_¬gum’t 1 ) 120  #ÝtiÚ®_¬gum’t 2 ) 148 #ifdeà __GNU_LIBRARY__ 152  g‘Ýt ( ___¬gc , *cÚ¡ * ___¬gv , cÚ¡ * __shÜtÝts ) 153 __THROW ; 155  g‘Ýt (); 158 #iâdeà __Ãed_g‘Ýt 159  g‘Ýt_lÚg ( ___¬gc , *cÚ¡ * ___¬gv , 160 cÚ¡ * __shÜtÝts , 161 cÚ¡  ÝtiÚ * __lÚgÝts , * __lÚgšd ) 162 __THROW ; 163  g‘Ýt_lÚg_Úly ( ___¬gc , *cÚ¡ * ___¬gv , 164 cÚ¡ * __shÜtÝts , 165 cÚ¡  ÝtiÚ * __lÚgÝts , * __lÚgšd ) 166 __THROW ; 170 #ifdef __ýlu¥lus 175 #undeà __Ãed_g‘Ýt @/usr/include/grp.h 23 #iâdef _GRP_H 24  #_GRP_H 1 ) 26  ~<ã©u»s.h > 28 g__BEGIN_DECLS 30  ~ 32  #__Ãed_size_t ) 33  ~<¡ddef.h > 37 #ià( defšed __USE_XOPEN || defšed __USE_XOPEN2K è&& !defšed __gid_t_defšed 38  __gid_t tgid_t ; 39  #__gid_t_defšed ) 43  sgroup 45 * mgr_Çme ; 46 * mgr_·sswd ; 47 __gid_t mgr_gid ; 48 ** mgr_mem ; 52 #ià defšed __USE_SVID || defšed __USE_GNU 53  #__Ãed_FILE ) 54  ~<¡dio.h > 58 #ià defšed __USE_SVID || defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 63  £tg»Á (); 69  ’dg»Á (); 75  group * g‘g»Á (); 78 #ifdef __USE_SVID 85  group * fg‘g»Á ( FILE * __¡»am ); 88 #ifdeà __USE_GNU 95  putg»Á ( __cÚ¡  group * __»¡riù __p , 96 FILE * __»¡riù __f ); 103  group * g‘grgid ( __gid_t __gid ); 109  group * g‘gºam ( __cÚ¡ * __Çme ); 111 #ià defšed __USE_POSIX || defšed __USE_MISC 113 #ifdeà __USE_MISC 116  #NSS_BUFLEN_GROUP 1024 ) 132 #ifdeà __USE_GNU 133  g‘g»Á_r ( group * __»¡riù __»suÉbuf , 134 * __»¡riù __bufãr , size_t __buæ’ , 135  group ** __»¡riù __»suÉ ); 142  g‘grgid_r ( __gid_t __gid ,  group * __»¡riù __»suÉbuf , 143 * __»¡riù __bufãr , size_t __buæ’ , 144  group ** __»¡riù __»suÉ ); 150  g‘gºam_r ( __cÚ¡ * __»¡riù __Çme , 151  group * __»¡riù __»suÉbuf , 152 * __»¡riù __bufãr , size_t __buæ’ , 153  group ** __»¡riù __»suÉ ); 155 #ifdef __USE_SVID 163  fg‘g»Á_r ( FILE * __»¡riù __¡»am , 164  group * __»¡riù __»suÉbuf , 165 * __»¡riù __bufãr , size_t __buæ’ , 166  group ** __»¡riù __»suÉ ); 172 #ifdef __USE_BSD 174  #__Ãed_size_t ) 175  ~<¡ddef.h > 178  $£tgroups ( size_t __n , __cÚ¡ __gid_t * __groups è __THROW ; 188  `g‘grou¶i¡ ( __cÚ¡ * __u£r , __gid_t __group , 189 __gid_t * __groups , * __ngroups ); 199  `š™groups ( __cÚ¡ * __u£r , __gid_t __group ); 203 __END_DECLS @/usr/include/inttypes.h 23 #iâdeà _INTTYPES_H 24  #_INTTYPES_H 1 ) 26  ~<ã©u»s.h > 28  ~<¡dšt.h > 31 #iâdeà ____gwch¬_t_defšed 32 #ifdeà __ýlu¥lus 33  #__gwch¬_t wch¬_t ) 34 #–ià defšed __WCHAR_TYPE__ 35  __WCHAR_TYPE__ t__gwch¬_t ; 37  #__Ãed_wch¬_t ) 38  ~<¡ddef.h > 39  wch¬_t t__gwch¬_t ; 41  #____gwch¬_t_defšed 1 ) 47 #ià! defšed __ýlu¥lus || defšed __STDC_FORMAT_MACROS 49 #ià __WORDSIZE == 64 50  #__PRI64_PREFIX "l" ) 51  #__PRIPTR_PREFIX "l" ) 53  #__PRI64_PREFIX "Î" ) 54  #__PRIPTR_PREFIX ) 60  #PRId8 "d" ) 61  #PRId16 "d" ) 62  #PRId32 "d" ) 63  #PRId64 __PRI64_PREFIX "d" ) 65  #PRIdLEAST8 "d" ) 66  #PRIdLEAST16 "d" ) 67  #PRIdLEAST32 "d" ) 68  #PRIdLEAST64 __PRI64_PREFIX "d" ) 70  #PRIdFAST8 "d" ) 71  #PRIdFAST16 __PRIPTR_PREFIX "d" ) 72  #PRIdFAST32 __PRIPTR_PREFIX "d" ) 73  #PRIdFAST64 __PRI64_PREFIX "d" ) 76  #PRIi8 "i" ) 77  #PRIi16 "i" ) 78  #PRIi32 "i" ) 79  #PRIi64 __PRI64_PREFIX "i" ) 81  #PRIiLEAST8 "i" ) 82  #PRIiLEAST16 "i" ) 83  #PRIiLEAST32 "i" ) 84  #PRIiLEAST64 __PRI64_PREFIX "i" ) 86  #PRIiFAST8 "i" ) 87  #PRIiFAST16 __PRIPTR_PREFIX "i" ) 88  #PRIiFAST32 __PRIPTR_PREFIX "i" ) 89  #PRIiFAST64 __PRI64_PREFIX "i" ) 92  #PRIo8 "o" ) 93  #PRIo16 "o" ) 94  #PRIo32 "o" ) 95  #PRIo64 __PRI64_PREFIX "o" ) 97  #PRIoLEAST8 "o" ) 98  #PRIoLEAST16 "o" ) 99  #PRIoLEAST32 "o" ) 100  #PRIoLEAST64 __PRI64_PREFIX "o" ) 102  #PRIoFAST8 "o" ) 103  #PRIoFAST16 __PRIPTR_PREFIX "o" ) 104  #PRIoFAST32 __PRIPTR_PREFIX "o" ) 105  #PRIoFAST64 __PRI64_PREFIX "o" ) 108  #PRIu8 "u" ) 109  #PRIu16 "u" ) 110  #PRIu32 "u" ) 111  #PRIu64 __PRI64_PREFIX "u" ) 113  #PRIuLEAST8 "u" ) 114  #PRIuLEAST16 "u" ) 115  #PRIuLEAST32 "u" ) 116  #PRIuLEAST64 __PRI64_PREFIX "u" ) 118  #PRIuFAST8 "u" ) 119  #PRIuFAST16 __PRIPTR_PREFIX "u" ) 120  #PRIuFAST32 __PRIPTR_PREFIX "u" ) 121  #PRIuFAST64 __PRI64_PREFIX "u" ) 124  #PRIx8 "x" ) 125  #PRIx16 "x" ) 126  #PRIx32 "x" ) 127  #PRIx64 __PRI64_PREFIX "x" ) 129  #PRIxLEAST8 "x" ) 130  #PRIxLEAST16 "x" ) 131  #PRIxLEAST32 "x" ) 132  #PRIxLEAST64 __PRI64_PREFIX "x" ) 134  #PRIxFAST8 "x" ) 135  #PRIxFAST16 __PRIPTR_PREFIX "x" ) 136  #PRIxFAST32 __PRIPTR_PREFIX "x" ) 137  #PRIxFAST64 __PRI64_PREFIX "x" ) 140  #PRIX8 "X" ) 141  #PRIX16 "X" ) 142  #PRIX32 "X" ) 143  #PRIX64 __PRI64_PREFIX "X" ) 145  #PRIXLEAST8 "X" ) 146  #PRIXLEAST16 "X" ) 147  #PRIXLEAST32 "X" ) 148  #PRIXLEAST64 __PRI64_PREFIX "X" ) 150  #PRIXFAST8 "X" ) 151  #PRIXFAST16 __PRIPTR_PREFIX "X" ) 152  #PRIXFAST32 __PRIPTR_PREFIX "X" ) 153  #PRIXFAST64 __PRI64_PREFIX "X" ) 157  #PRIdMAX __PRI64_PREFIX "d" ) 158  #PRIiMAX __PRI64_PREFIX "i" ) 159  #PRIoMAX __PRI64_PREFIX "o" ) 160  #PRIuMAX __PRI64_PREFIX "u" ) 161  #PRIxMAX __PRI64_PREFIX "x" ) 162  #PRIXMAX __PRI64_PREFIX "X" ) 166  #PRIdPTR __PRIPTR_PREFIX "d" ) 167  #PRIiPTR __PRIPTR_PREFIX "i" ) 168  #PRIoPTR __PRIPTR_PREFIX "o" ) 169  #PRIuPTR __PRIPTR_PREFIX "u" ) 170  #PRIxPTR __PRIPTR_PREFIX "x" ) 171  #PRIXPTR __PRIPTR_PREFIX "X" ) 177  #SCNd8 "hhd" ) 178  #SCNd16 "hd" ) 179  #SCNd32 "d" ) 180  #SCNd64 __PRI64_PREFIX "d" ) 182  #SCNdLEAST8 "hhd" ) 183  #SCNdLEAST16 "hd" ) 184  #SCNdLEAST32 "d" ) 185  #SCNdLEAST64 __PRI64_PREFIX "d" ) 187  #SCNdFAST8 "hhd" ) 188  #SCNdFAST16 __PRIPTR_PREFIX "d" ) 189  #SCNdFAST32 __PRIPTR_PREFIX "d" ) 190  #SCNdFAST64 __PRI64_PREFIX "d" ) 193  #SCNi8 "hhi" ) 194  #SCNi16 "hi" ) 195  #SCNi32 "i" ) 196  #SCNi64 __PRI64_PREFIX "i" ) 198  #SCNiLEAST8 "hhi" ) 199  #SCNiLEAST16 "hi" ) 200  #SCNiLEAST32 "i" ) 201  #SCNiLEAST64 __PRI64_PREFIX "i" ) 203  #SCNiFAST8 "hhi" ) 204  #SCNiFAST16 __PRIPTR_PREFIX "i" ) 205  #SCNiFAST32 __PRIPTR_PREFIX "i" ) 206  #SCNiFAST64 __PRI64_PREFIX "i" ) 209  #SCNu8 "hhu" ) 210  #SCNu16 "hu" ) 211  #SCNu32 "u" ) 212  #SCNu64 __PRI64_PREFIX "u" ) 214  #SCNuLEAST8 "hhu" ) 215  #SCNuLEAST16 "hu" ) 216  #SCNuLEAST32 "u" ) 217  #SCNuLEAST64 __PRI64_PREFIX "u" ) 219  #SCNuFAST8 "hhu" ) 220  #SCNuFAST16 __PRIPTR_PREFIX "u" ) 221  #SCNuFAST32 __PRIPTR_PREFIX "u" ) 222  #SCNuFAST64 __PRI64_PREFIX "u" ) 225  #SCNo8 "hho" ) 226  #SCNo16 "ho" ) 227  #SCNo32 "o" ) 228  #SCNo64 __PRI64_PREFIX "o" ) 230  #SCNoLEAST8 "hho" ) 231  #SCNoLEAST16 "ho" ) 232  #SCNoLEAST32 "o" ) 233  #SCNoLEAST64 __PRI64_PREFIX "o" ) 235  #SCNoFAST8 "hho" ) 236  #SCNoFAST16 __PRIPTR_PREFIX "o" ) 237  #SCNoFAST32 __PRIPTR_PREFIX "o" ) 238  #SCNoFAST64 __PRI64_PREFIX "o" ) 241  #SCNx8 "hhx" ) 242  #SCNx16 "hx" ) 243  #SCNx32 "x" ) 244  #SCNx64 __PRI64_PREFIX "x" ) 246  #SCNxLEAST8 "hhx" ) 247  #SCNxLEAST16 "hx" ) 248  #SCNxLEAST32 "x" ) 249  #SCNxLEAST64 __PRI64_PREFIX "x" ) 251  #SCNxFAST8 "hhx" ) 252  #SCNxFAST16 __PRIPTR_PREFIX "x" ) 253  #SCNxFAST32 __PRIPTR_PREFIX "x" ) 254  #SCNxFAST64 __PRI64_PREFIX "x" ) 258  #SCNdMAX __PRI64_PREFIX "d" ) 259  #SCNiMAX __PRI64_PREFIX "i" ) 260  #SCNoMAX __PRI64_PREFIX "o" ) 261  #SCNuMAX __PRI64_PREFIX "u" ) 262  #SCNxMAX __PRI64_PREFIX "x" ) 265  #SCNdPTR __PRIPTR_PREFIX "d" ) 266  #SCNiPTR __PRIPTR_PREFIX "i" ) 267  #SCNoPTR __PRIPTR_PREFIX "o" ) 268  #SCNuPTR __PRIPTR_PREFIX "u" ) 269  #SCNxPTR __PRIPTR_PREFIX "x" ) 274 g__BEGIN_DECLS 276 #ià __WORDSIZE == 64 281  mquÙ ; 282  m»m ; 283 } timaxdiv_t ; 290  mquÙ ; 291  m»m ; 292 } timaxdiv_t ; 298 štmax_t $imaxabs ( štmax_t __n è __THROW `__©Œibu‹__ (( __cÚ¡__ )); 301 imaxdiv_t $imaxdiv ( štmax_t __num” , iÁmax_ˆ __d’om ) 302 __THROW `__©Œibu‹__ (( __cÚ¡__ )); 305 štmax_t $¡¹oimax ( __cÚ¡ * __»¡riù __ÅŒ , 306 ** __»¡riù __’d±r ,  __ba£ è __THROW ; 309 uštmax_t $¡¹oumax ( __cÚ¡ * __»¡riù __ÅŒ , 310 ** __»¡riù __’d±r ,  __ba£ è __THROW ; 313 štmax_t $wc¡oimax ( __cÚ¡ __gwch¬_t * __»¡riù __ÅŒ , 314 __gwch¬_t ** __»¡riù __’d±r ,  __ba£ ) 315 __THROW ; 318 uštmax_t $wc¡oumax ( __cÚ¡ __gwch¬_t * __»¡riù __ÅŒ , 319 __gwch¬_t ** __»¡riù __’d±r ,  __ba£ ) 320 __THROW ; 322 #ifdeà __USE_EXTERN_INLINES 324 #ià __WORDSIZE == 64 326  $__¡¹Þ_š‹º® ( __cÚ¡ * __»¡riù __ÅŒ , 327 ** __»¡riù __’d±r , 328  __ba£ ,  __group ) 329 __THROW `__nÚnuÎ ((1)è __wur ; 331 __ex‹º_šlše štmax_t 332 `__NTH ( $¡¹oimax ( __cÚ¡ * __»¡riù ÅŒ , **__»¡riù ’d±r , 333  ba£ )) 335  `__¡¹Þ_š‹º® ( ÅŒ , ’d±r , ba£ , 0); 336 } } 338  $__¡¹oul_š‹º® ( __cÚ¡ * 339 __»¡riù __ÅŒ , 340 ** __»¡riù __’d±r , 341  __ba£ ,  __group ) 342 __THROW `__nÚnuÎ ((1)è __wur ; 344 __ex‹º_šlše uštmax_t 345 `__NTH ( $¡¹oumax ( __cÚ¡ * __»¡riù ÅŒ , **__»¡riù ’d±r , 346  ba£ )) 348  `__¡¹oul_š‹º® ( ÅŒ , ’d±r , ba£ , 0); 349 } } 351  $__wc¡Þ_š‹º® ( __cÚ¡ __gwch¬_t * __»¡riù __ÅŒ , 352 __gwch¬_t ** __»¡riù __’d±r , 353  __ba£ ,  __group ) 354 __THROW `__nÚnuÎ ((1)è __wur ; 356 __ex‹º_šlše štmax_t 357 `__NTH ( $wc¡oimax ( __cÚ¡ __gwch¬_t * __»¡riù ÅŒ , 358 __gwch¬_t ** __»¡riù ’d±r ,  ba£ )) 360  `__wc¡Þ_š‹º® ( ÅŒ , ’d±r , ba£ , 0); 361 } } 363  $__wc¡oul_š‹º® ( __cÚ¡ __gwch¬_t * 364 __»¡riù __ÅŒ , 365 __gwch¬_t ** 366 __»¡riù __’d±r , 367  __ba£ ,  __group ) 368 __THROW `__nÚnuÎ ((1)è __wur ; 370 __ex‹º_šlše uštmax_t 371 `__NTH ( $wc¡oumax ( __cÚ¡ __gwch¬_t * __»¡riù ÅŒ , 372 __gwch¬_t ** __»¡riù ’d±r ,  ba£ )) 374  `__wc¡oul_š‹º® ( ÅŒ , ’d±r , ba£ , 0); 375 } } 379 __ex‹nsiÚ__ 380  $__¡¹Þl_š‹º® ( __cÚ¡ * __»¡riù __ÅŒ , 381 ** __»¡riù __’d±r , 382  __ba£ ,  __group ) 383 __THROW `__nÚnuÎ ((1)è __wur ; 385 __ex‹º_šlše štmax_t 386 `__NTH ( $¡¹oimax ( __cÚ¡ * __»¡riù ÅŒ , **__»¡riù ’d±r , 387  ba£ )) 389  `__¡¹Þl_š‹º® ( ÅŒ , ’d±r , ba£ , 0); 390 } } 392 __ex‹nsiÚ__ 393  $__¡¹ouÎ_š‹º® ( __cÚ¡ * 394 __»¡riù __ÅŒ , 396 __»¡riù __’d±r , 397  __ba£ , 398  __group ) 399 __THROW `__nÚnuÎ ((1)è __wur ; 401 __ex‹º_šlše uštmax_t 402 `__NTH ( $¡¹oumax ( __cÚ¡ * __»¡riù ÅŒ , **__»¡riù ’d±r , 403  ba£ )) 405  `__¡¹ouÎ_š‹º® ( ÅŒ , ’d±r , ba£ , 0); 406 } } 408 __ex‹nsiÚ__ 409  $__wc¡Þl_š‹º® ( __cÚ¡ __gwch¬_t * 410 __»¡riù __ÅŒ , 411 __gwch¬_t ** __»¡riù __’d±r , 412  __ba£ ,  __group ) 413 __THROW `__nÚnuÎ ((1)è __wur ; 415 __ex‹º_šlše štmax_t 416 `__NTH ( $wc¡oimax ( __cÚ¡ __gwch¬_t * __»¡riù ÅŒ , 417 __gwch¬_t ** __»¡riù ’d±r ,  ba£ )) 419  `__wc¡Þl_š‹º® ( ÅŒ , ’d±r , ba£ , 0); 420 } } 423 __ex‹nsiÚ__ 424  $__wc¡ouÎ_š‹º® ( __cÚ¡ __gwch¬_t * 425 __»¡riù __ÅŒ , 426 __gwch¬_t ** 427 __»¡riù __’d±r , 428  __ba£ , 429  __group ) 430 __THROW `__nÚnuÎ ((1)è __wur ; 432 __ex‹º_šlše uštmax_t 433 `__NTH ( $wc¡oumax ( __cÚ¡ __gwch¬_t * __»¡riù ÅŒ , 434 __gwch¬_t ** __»¡riù ’d±r ,  ba£ )) 436  `__wc¡ouÎ_š‹º® ( ÅŒ , ’d±r , ba£ , 0); 437 } } 442 g__END_DECLS @/usr/include/ldap.h 26 #iâdeà _LDAP_H 27  #_LDAP_H ) 30  ~ 33  ~ 35 gLDAP_BEGIN_DECL 37  #LDAP_VERSION1 1 ) 38  #LDAP_VERSION2 2 ) 39  #LDAP_VERSION3 3 ) 41  #LDAP_VERSION_MIN LDAP_VERSION2 ) 42  #LDAP_VERSION LDAP_VERSION2 ) 43  #LDAP_VERSION_MAX LDAP_VERSION3 ) 51  #LDAP_API_VERSION 3001 ) 52  #LDAP_VENDOR_NAME "O³nLDAP" ) 55  #LDAP_API_FEATURE_X_OPENLDAP LDAP_VENDOR_VERSION ) 57 #ià defšed Ð LDAP_API_FEATURE_X_OPENLDAP_REENTRANT ) || \ 58 Ð defšed Ð LDAP_THREAD_SAFE ) && \ 59 $defšed Ð LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE ) ) 62  #LDAP_API_FEATURE_THREAD_SAFE 1 ) 64 #ià `defšed Ð LDAP_THREAD_SAFE ) && \ 65 $defšed Ð LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE ) 71  #LDAP_PORT 389 ) 72  #LDAPS_PORT 636 ) 74  #LDAP_ROOT_DSE "" ) 75  #LDAP_NO_ATTRS "1.1" ) 76  #LDAP_ALL_USER_ATTRIBUTES "*" ) 77  #LDAP_ALL_OPERATIONAL_ATTRIBUTES "+" ) 80  #LDAP_MAXINT (2147483647) ) 89  #LDAP_OPT_API_INFO 0x0000 ) 90  #LDAP_OPT_DESC 0x0001 ) 91  #LDAP_OPT_DEREF 0x0002 ) 92  #LDAP_OPT_SIZELIMIT 0x0003 ) 93  #LDAP_OPT_TIMELIMIT 0x0004 ) 95  #LDAP_OPT_REFERRALS 0x0008 ) 96  #LDAP_OPT_RESTART 0x0009 ) 98  #LDAP_OPT_PROTOCOL_VERSION 0x0011 ) 99  #LDAP_OPT_SERVER_CONTROLS 0x0012 ) 100  #LDAP_OPT_CLIENT_CONTROLS 0x0013 ) 102  #LDAP_OPT_API_FEATURE_INFO 0x0015 ) 104  #LDAP_OPT_HOST_NAME 0x0030 ) 105  #LDAP_OPT_RESULT_CODE 0x0031 ) 106  #LDAP_OPT_ERROR_NUMBER LDAP_OPT_RESULT_CODE ) 107  #LDAP_OPT_DIAGNOSTIC_MESSAGE 0x0032 ) 108  #LDAP_OPT_ERROR_STRING LDAP_OPT_DIAGNOSTIC_MESSAGE ) 109  #LDAP_OPT_MATCHED_DN 0x0033 ) 113  #LDAP_OPT_API_EXTENSION_BASE 0x4000 ) 117  #LDAP_OPT_DEBUG_LEVEL 0x5001 ) 118  #LDAP_OPT_TIMEOUT 0x5002 ) 119  #LDAP_OPT_REFHOPLIMIT 0x5003 ) 120  #LDAP_OPT_NETWORK_TIMEOUT 0x5005 ) 121  #LDAP_OPT_URI 0x5006 ) 122  #LDAP_OPT_REFERRAL_URLS 0x5007 ) 123  #LDAP_OPT_SOCKBUF 0x5008 ) 124  #LDAP_OPT_DEFBASE 0x5009 ) 125  #LDAP_OPT_CONNECT_ASYNC 0x5010 ) 128  #LDAP_OPT_X_TLS 0x6000 ) 129  #LDAP_OPT_X_TLS_CTX 0x6001 ) 130  #LDAP_OPT_X_TLS_CACERTFILE 0x6002 ) 131  #LDAP_OPT_X_TLS_CACERTDIR 0x6003 ) 132  #LDAP_OPT_X_TLS_CERTFILE 0x6004 ) 133  #LDAP_OPT_X_TLS_KEYFILE 0x6005 ) 134  #LDAP_OPT_X_TLS_REQUIRE_CERT 0x6006 ) 136  #LDAP_OPT_X_TLS_CIPHER_SUITE 0x6008 ) 137  #LDAP_OPT_X_TLS_RANDOM_FILE 0x6009 ) 138  #LDAP_OPT_X_TLS_SSL_CTX 0x600a ) 139  #LDAP_OPT_X_TLS_CRLCHECK 0x600b ) 140  #LDAP_OPT_X_TLS_CONNECT_CB 0x600c ) 141  #LDAP_OPT_X_TLS_CONNECT_ARG 0x600d ) 142  #LDAP_OPT_X_TLS_DHFILE 0x600e ) 143  #LDAP_OPT_X_TLS_NEWCTX 0x600f ) 144  #LDAP_OPT_X_TLS_CRLFILE 0x6010 ) 146  #LDAP_OPT_X_TLS_NEVER 0 ) 147  #LDAP_OPT_X_TLS_HARD 1 ) 148  #LDAP_OPT_X_TLS_DEMAND 2 ) 149  #LDAP_OPT_X_TLS_ALLOW 3 ) 150  #LDAP_OPT_X_TLS_TRY 4 ) 152  #LDAP_OPT_X_TLS_CRL_NONE 0 ) 153  #LDAP_OPT_X_TLS_CRL_PEER 1 ) 154  #LDAP_OPT_X_TLS_CRL_ALL 2 ) 157  #LDAP_OPT_X_SASL_MECH 0x6100 ) 158  #LDAP_OPT_X_SASL_REALM 0x6101 ) 159  #LDAP_OPT_X_SASL_AUTHCID 0x6102 ) 160  #LDAP_OPT_X_SASL_AUTHZID 0x6103 ) 161  #LDAP_OPT_X_SASL_SSF 0x6104 ) 162  #LDAP_OPT_X_SASL_SSF_EXTERNAL 0x6105 ) 163  #LDAP_OPT_X_SASL_SECPROPS 0x6106 ) 164  #LDAP_OPT_X_SASL_SSF_MIN 0x6107 ) 165  #LDAP_OPT_X_SASL_SSF_MAX 0x6108 ) 166  #LDAP_OPT_X_SASL_MAXBUFSIZE 0x6109 ) 169  #LDAP_OPT_PRIVATE_EXTENSION_BASE 0x7000 ) 177  #LDAP_OPT_SUCCESS 0 ) 178  #LDAP_OPT_ERROR (-1) ) 181  #LDAP_OPT_ON ((*è& b”_pvt_Ýt_Ú ) ) 182  #LDAP_OPT_OFF ((*è0) ) 184  sld­­išfo { 185  ld­ai_šfo_v”siÚ ; 186  #LDAP_API_INFO_VERSION (1) ) 187  ld­ai_­i_v”siÚ ; 188  ld­ai_´ÙocÞ_v”siÚ ; 189 ** ld­ai_ex‹nsiÚs ; 190 * ld­ai_v’dÜ_Çme ; 191  ld­ai_v’dÜ_v”siÚ ; 192 } tLDAPAPIInfo ; 194  sld­_­iã©u»_šfo { 195  ld­aif_šfo_v”siÚ ; 196  #LDAP_FEATURE_INFO_VERSION (1è ) 197 * ld­aif_Çme ; 198  ld­aif_v”siÚ ; 199 } tLDAPAPIF—tu»Info ; 204  sld­cÚŒÞ { 205 * ldùl_oid ; 206  b”v® ldùl_v®ue ; 207  ldùl_isü™iÿl ; 208 } tLDAPCÚŒÞ ; 212  #LDAP_CONTROL_MANAGEDSAIT "2.16.840.1.113730.3.4.2" ) 213  #LDAP_CONTROL_PROXY_AUTHZ "2.16.840.1.113730.3.4.18" ) 214  #LDAP_CONTROL_SUBENTRIES "1.3.6.1.4.1.4203.1.10.1" ) 216  #LDAP_CONTROL_VALUESRETURNFILTER "1.2.826.0.1.3344810.2.3" ) 218  #LDAP_CONTROL_ASSERT "1.3.6.1.1.12" ) 219  #LDAP_CONTROL_PRE_READ "1.3.6.1.1.13.1" ) 220  #LDAP_CONTROL_POST_READ "1.3.6.1.1.13.2" ) 223  #LDAP_CONTROL_SORTREQUEST "1.2.840.113556.1.4.473" ) 224  #LDAP_CONTROL_SORTRESPONSE "1.2.840.113556.1.4.474" ) 227  #LDAP_CONTROL_PAGEDRESULTS "1.2.840.113556.1.4.319" ) 230  #LDAP_SYNC_OID "1.3.6.1.4.1.4203.1.9.1" ) 231  #LDAP_CONTROL_SYNC LDAP_SYNC_OID ".1" ) 232  #LDAP_CONTROL_SYNC_STATE LDAP_SYNC_OID ".2" ) 233  #LDAP_CONTROL_SYNC_DONE LDAP_SYNC_OID ".3" ) 234  #LDAP_SYNC_INFO LDAP_SYNC_OID ".4" ) 236  #LDAP_SYNC_NONE 0x00 ) 237  #LDAP_SYNC_REFRESH_ONLY 0x01 ) 238  #LDAP_SYNC_RESERVED 0x02 ) 239  #LDAP_SYNC_REFRESH_AND_PERSIST 0x03 ) 241  #LDAP_SYNC_REFRESH_PRESENTS 0 ) 242  #LDAP_SYNC_REFRESH_DELETES 1 ) 244  #LDAP_TAG_SYNC_NEW_COOKIE (( b”_g_t è0x80U) ) 245  #LDAP_TAG_SYNC_REFRESH_DELETE (( b”_g_t è0xa1U) ) 246  #LDAP_TAG_SYNC_REFRESH_PRESENT (( b”_g_t è0xa2U) ) 247  #LDAP_TAG_SYNC_ID_SET (( b”_g_t è0xa3U) ) 249  #LDAP_TAG_SYNC_COOKIE (( b”_g_t è0x04U) ) 250  #LDAP_TAG_REFRESHDELETES (( b”_g_t è0x01U) ) 251  #LDAP_TAG_REFRESHDONE (( b”_g_t è0x01U) ) 252  #LDAP_TAG_RELOAD_HINT (( b”_g_t è0x01U) ) 254  #LDAP_SYNC_PRESENT 0 ) 255  #LDAP_SYNC_ADD 1 ) 256  #LDAP_SYNC_MODIFY 2 ) 257  #LDAP_SYNC_DELETE 3 ) 262  #LDAP_CONTROL_PASSWORDPOLICYREQUEST "1.3.6.1.4.1.42.2.27.8.5.1" ) 263  #LDAP_CONTROL_PASSWORDPOLICYRESPONSE "1.3.6.1.4.1.42.2.27.8.5.1" ) 266  #LDAP_CONTROL_NOOP "1.3.6.1.4.1.4203.666.5.2" ) 267  #LDAP_CONTROL_NO_SUBORDINATES "1.3.6.1.4.1.4203.666.5.11" ) 268  #LDAP_CONTROL_RELAX "1.3.6.1.4.1.4203.666.5.12" ) 269  #LDAP_CONTROL_MANAGEDIT LDAP_CONTROL_RELAX ) 270  #LDAP_CONTROL_SLURP "1.3.6.1.4.1.4203.666.5.13" ) 271  #LDAP_CONTROL_VALSORT "1.3.6.1.4.1.4203.666.5.14" ) 272  #LDAP_CONTROL_DONTUSECOPY "1.3.6.1.4.1.4203.666.5.15" ) 278  #LDAP_CONTROL_X_CHAINING_BEHAVIOR "1.3.6.1.4.1.4203.666.11.3" ) 280  #LDAP_CHAINING_PREFERRED 0 ) 281  #LDAP_CHAINING_REQUIRED 1 ) 282  #LDAP_REFERRALS_PREFERRED 2 ) 283  #LDAP_REFERRALS_REQUIRED 3 ) 286  #LDAP_CONTROL_X_INCREMENTAL_VALUES "1.2.840.113556.1.4.802" ) 287  #LDAP_CONTROL_X_DOMAIN_SCOPE "1.2.840.113556.1.4.1339" ) 288  #LDAP_CONTROL_X_PERMISSIVE_MODIFY "1.2.840.113556.1.4.1413" ) 289  #LDAP_CONTROL_X_SEARCH_OPTIONS "1.2.840.113556.1.4.1340" ) 290  #LDAP_SEARCH_FLAG_DOMAIN_SCOPE 1 ) 291  #LDAP_SEARCH_FLAG_PHANTOM_ROOT 2 ) 292  #LDAP_CONTROL_X_TREE_DELETE "1.2.840.113556.1.4.805" ) 295  #LDAP_CONTROL_X_EXTENDED_DN "1.2.840.113556.1.4.529" ) 297 #ifdeà LDAP_DEVEL 299  #LDAP_CONTROL_X_SESSION_TRACKING "1.3.6.1.4.1.21008.108.63.1" ) 300  #LDAP_CONTROL_X_SESSION_TRACKING_RADIUS_ACCT_SESSION_ID \ 301 LDAP_CONTROL_X_SESSION_TRACKING ".1" ) 302  #LDAP_CONTROL_X_SESSION_TRACKING_RADIUS_ACCT_MULTI_SESSION_ID \ 303 LDAP_CONTROL_X_SESSION_TRACKING ".2" ) 304  #LDAP_CONTROL_X_SESSION_TRACKING_USERNAME \ 305 LDAP_CONTROL_X_SESSION_TRACKING ".3" ) 310  #LDAP_CONTROL_DUPENT_REQUEST "2.16.840.1.113719.1.27.101.1" ) 311  #LDAP_CONTROL_DUPENT_RESPONSE "2.16.840.1.113719.1.27.101.2" ) 312  #LDAP_CONTROL_DUPENT_ENTRY "2.16.840.1.113719.1.27.101.3" ) 313  #LDAP_CONTROL_DUPENT LDAP_CONTROL_DUPENT_REQUEST ) 316  #LDAP_CONTROL_PERSIST_REQUEST "2.16.840.1.113730.3.4.3" ) 317  #LDAP_CONTROL_PERSIST_ENTRY_CHANGE_NOTICE "2.16.840.1.113730.3.4.7" ) 318  #LDAP_CONTROL_PERSIST_ENTRY_CHANGE_ADD 0x1 ) 319  #LDAP_CONTROL_PERSIST_ENTRY_CHANGE_DELETE 0x2 ) 320  #LDAP_CONTROL_PERSIST_ENTRY_CHANGE_MODIFY 0x4 ) 321  #LDAP_CONTROL_PERSIST_ENTRY_CHANGE_RENAME 0x8 ) 324  #LDAP_CONTROL_VLVREQUEST "2.16.840.1.113730.3.4.9" ) 325  #LDAP_CONTROL_VLVRESPONSE "2.16.840.1.113730.3.4.10" ) 329  #LDAP_NOTICE_OF_DISCONNECTION "1.3.6.1.4.1.1466.20036" ) 330  #LDAP_NOTICE_DISCONNECT LDAP_NOTICE_OF_DISCONNECTION ) 333  #LDAP_EXOP_START_TLS "1.3.6.1.4.1.1466.20037" ) 335  #LDAP_EXOP_MODIFY_PASSWD "1.3.6.1.4.1.4203.1.11.1" ) 336  #LDAP_TAG_EXOP_MODIFY_PASSWD_ID (( b”_g_t è0x80U) ) 337  #LDAP_TAG_EXOP_MODIFY_PASSWD_OLD (( b”_g_t è0x81U) ) 338  #LDAP_TAG_EXOP_MODIFY_PASSWD_NEW (( b”_g_t è0x82U) ) 339  #LDAP_TAG_EXOP_MODIFY_PASSWD_GEN (( b”_g_t è0x80U) ) 341  #LDAP_EXOP_CANCEL "1.3.6.1.1.8" ) 342  #LDAP_EXOP_X_CANCEL LDAP_EXOP_CANCEL ) 344  #LDAP_EXOP_REFRESH "1.3.6.1.4.1.1466.101.119.1" ) 345  #LDAP_TAG_EXOP_REFRESH_REQ_DN (( b”_g_t è0x80U) ) 346  #LDAP_TAG_EXOP_REFRESH_REQ_TTL (( b”_g_t è0x81U) ) 347  #LDAP_TAG_EXOP_REFRESH_RES_TTL (( b”_g_t è0x80U) ) 349  #LDAP_EXOP_WHO_AM_I "1.3.6.1.4.1.4203.1.11.3" ) 350  #LDAP_EXOP_X_WHO_AM_I LDAP_EXOP_WHO_AM_I ) 353  #LDAP_EXOP_TURN "1.3.6.1.1.19" ) 354  #LDAP_EXOP_X_TURN LDAP_EXOP_TURN ) 358  #LDAP_X_DISTPROC_BASE "1.3.6.1.4.1.4203.666.11.6" ) 359  #LDAP_EXOP_X_CHAINEDREQUEST LDAP_X_DISTPROC_BASE ".1" ) 360  #LDAP_FEATURE_X_CANCHAINOPS LDAP_X_DISTPROC_BASE ".2" ) 361  #LDAP_CONTROL_X_RETURNCONTREF LDAP_X_DISTPROC_BASE ".3" ) 362  #LDAP_URLEXT_X_LOCALREFOID LDAP_X_DISTPROC_BASE ".4" ) 363  #LDAP_URLEXT_X_REFTYPEOID LDAP_X_DISTPROC_BASE ".5" ) 364  #LDAP_URLEXT_X_SEARCHEDSUBTREEOID \ 365 LDAP_X_DISTPROC_BASE ".6" ) 366  #LDAP_URLEXT_X_FAILEDNAMEOID LDAP_X_DISTPROC_BASE ".7" ) 367  #LDAP_URLEXT_X_LOCALREF "x-loÿlReã»nû" ) 368  #LDAP_URLEXT_X_REFTYPE "x-»ã»nûTy³" ) 369  #LDAP_URLEXT_X_SEARCHEDSUBTREE "x-£¬chedSubŒ“" ) 370  #LDAP_URLEXT_X_FAILEDNAME "x-çžedName" ) 372 #ifdeà LDAP_DEVEL 373  #LDAP_X_TXN "1.3.6.1.4.1.4203.666.11.7" ) 374  #LDAP_EXOP_X_TXN_START LDAP_X_TXN ".1" ) 375  #LDAP_CONTROL_X_TXN_SPEC LDAP_X_TXN ".2" ) 376  #LDAP_EXOP_X_TXN_END LDAP_X_TXN ".3" ) 377  #LDAP_EXOP_X_TXN_ABORTED_NOTICE LDAP_X_TXN ".4" ) 381  #LDAP_FEATURE_ALL_OP_ATTRS "1.3.6.1.4.1.4203.1.5.1" ) 382  #LDAP_FEATURE_OBJECTCLASS_ATTRS \ 383 "1.3.6.1.4.1.4203.1.5.2" ) 384  #LDAP_FEATURE_ABSOLUTE_FILTERS "1.3.6.1.4.1.4203.1.5.3" ) 385  #LDAP_FEATURE_LANGUAGE_TAG_OPTIONS "1.3.6.1.4.1.4203.1.5.4" ) 386  #LDAP_FEATURE_LANGUAGE_RANGE_OPTIONS "1.3.6.1.4.1.4203.1.5.5" ) 387  #LDAP_FEATURE_MODIFY_INCREMENT "1.3.6.1.1.14" ) 390  #LDAP_FEATURE_SUBORDINATE_SCOPE \ 391 "1.3.6.1.4.1.4203.666.8.1" ) 392  #LDAP_FEATURE_CHILDREN_SCOPE LDAP_FEATURE_SUBORDINATE_SCOPE ) 416  #LDAP_TAG_MESSAGE (( b”_g_t è0x30Uè ) 417  #LDAP_TAG_MSGID (( b”_g_t è0x02Uè ) 419  #LDAP_TAG_LDAPDN (( b”_g_t è0x04Uè ) 420  #LDAP_TAG_LDAPCRED (( b”_g_t è0x04Uè ) 422  #LDAP_TAG_CONTROLS (( b”_g_t è0xa0Uè ) 423  #LDAP_TAG_REFERRAL (( b”_g_t è0xa3Uè ) 425  #LDAP_TAG_NEWSUPERIOR (( b”_g_t è0x80Uè ) 427  #LDAP_TAG_EXOP_REQ_OID (( b”_g_t è0x80Uè ) 428  #LDAP_TAG_EXOP_REQ_VALUE (( b”_g_t è0x81Uè ) 429  #LDAP_TAG_EXOP_RES_OID (( b”_g_t è0x8aUè ) 430  #LDAP_TAG_EXOP_RES_VALUE (( b”_g_t è0x8bUè ) 432  #LDAP_TAG_IM_RES_OID (( b”_g_t è0x80Uè ) 433  #LDAP_TAG_IM_RES_VALUE (( b”_g_t è0x81Uè ) 435  #LDAP_TAG_SASL_RES_CREDS (( b”_g_t è0x87Uè ) 438  #LDAP_REQ_BIND (( b”_g_t è0x60Uè ) 439  #LDAP_REQ_UNBIND (( b”_g_t è0x42Uè ) 440  #LDAP_REQ_SEARCH (( b”_g_t è0x63Uè ) 441  #LDAP_REQ_MODIFY (( b”_g_t è0x66Uè ) 442  #LDAP_REQ_ADD (( b”_g_t è0x68Uè ) 443  #LDAP_REQ_DELETE (( b”_g_t è0x4aUè ) 444  #LDAP_REQ_MODDN (( b”_g_t è0x6cUè ) 445  #LDAP_REQ_MODRDN LDAP_REQ_MODDN ) 446  #LDAP_REQ_RENAME LDAP_REQ_MODDN ) 447  #LDAP_REQ_COMPARE (( b”_g_t è0x6eUè ) 448  #LDAP_REQ_ABANDON (( b”_g_t è0x50Uè ) 449  #LDAP_REQ_EXTENDED (( b”_g_t è0x77Uè ) 452  #LDAP_RES_BIND (( b”_g_t è0x61Uè ) 453  #LDAP_RES_SEARCH_ENTRY (( b”_g_t è0x64Uè ) 454  #LDAP_RES_SEARCH_REFERENCE (( b”_g_t è0x73Uè ) 455  #LDAP_RES_SEARCH_RESULT (( b”_g_t è0x65Uè ) 456  #LDAP_RES_MODIFY (( b”_g_t è0x67Uè ) 457  #LDAP_RES_ADD (( b”_g_t è0x69Uè ) 458  #LDAP_RES_DELETE (( b”_g_t è0x6bUè ) 459  #LDAP_RES_MODDN (( b”_g_t è0x6dUè ) 460  #LDAP_RES_MODRDN LDAP_RES_MODDN ) 461  #LDAP_RES_RENAME LDAP_RES_MODDN ) 462  #LDAP_RES_COMPARE (( b”_g_t è0x6fUè ) 463  #LDAP_RES_EXTENDED (( b”_g_t è0x78Uè ) 464  #LDAP_RES_INTERMEDIATE (( b”_g_t è0x79Uè ) 466  #LDAP_RES_ANY (-1) ) 467  #LDAP_RES_UNSOLICITED (0) ) 471  #LDAP_SASL_SIMPLE ((*)0) ) 472  #LDAP_SASL_NULL ("") ) 476  #LDAP_AUTH_NONE (( b”_g_t è0x00Uè ) 477  #LDAP_AUTH_SIMPLE (( b”_g_t è0x80Uè ) 478  #LDAP_AUTH_SASL (( b”_g_t è0xa3Uè ) 479  #LDAP_AUTH_KRBV4 (( b”_g_t è0xffUè ) 480  #LDAP_AUTH_KRBV41 (( b”_g_t è0x81Uè ) 481  #LDAP_AUTH_KRBV42 (( b”_g_t è0x82Uè ) 485  #LDAP_FILTER_AND (( b”_g_t è0xa0Uè ) 486  #LDAP_FILTER_OR (( b”_g_t è0xa1Uè ) 487  #LDAP_FILTER_NOT (( b”_g_t è0xa2Uè ) 488  #LDAP_FILTER_EQUALITY (( b”_g_t è0xa3Uè ) 489  #LDAP_FILTER_SUBSTRINGS (( b”_g_t è0xa4Uè ) 490  #LDAP_FILTER_GE (( b”_g_t è0xa5Uè ) 491  #LDAP_FILTER_LE (( b”_g_t è0xa6Uè ) 492  #LDAP_FILTER_PRESENT (( b”_g_t è0x87Uè ) 493  #LDAP_FILTER_APPROX (( b”_g_t è0xa8Uè ) 494  #LDAP_FILTER_EXT (( b”_g_t è0xa9Uè ) 497  #LDAP_FILTER_EXT_OID (( b”_g_t è0x81Uè ) 498  #LDAP_FILTER_EXT_TYPE (( b”_g_t è0x82Uè ) 499  #LDAP_FILTER_EXT_VALUE (( b”_g_t è0x83Uè ) 500  #LDAP_FILTER_EXT_DNATTRS (( b”_g_t è0x84Uè ) 503  #LDAP_SUBSTRING_INITIAL (( b”_g_t è0x80Uè ) 504  #LDAP_SUBSTRING_ANY (( b”_g_t è0x81Uè ) 505  #LDAP_SUBSTRING_FINAL (( b”_g_t è0x82Uè ) 508  #LDAP_SCOPE_BASE (( b”_št_t è0x0000) ) 509  #LDAP_SCOPE_BASEOBJECT LDAP_SCOPE_BASE ) 510  #LDAP_SCOPE_ONELEVEL (( b”_št_t è0x0001) ) 511  #LDAP_SCOPE_ONE LDAP_SCOPE_ONELEVEL ) 512  #LDAP_SCOPE_SUBTREE (( b”_št_t è0x0002) ) 513  #LDAP_SCOPE_SUB LDAP_SCOPE_SUBTREE ) 514  #LDAP_SCOPE_SUBORDINATE (( b”_št_t è0x0003è ) 515  #LDAP_SCOPE_CHILDREN LDAP_SCOPE_SUBORDINATE ) 516  #LDAP_SCOPE_DEFAULT (( b”_št_t è-1è ) 519  #LDAP_SUBSTRING_INITIAL (( b”_g_t è0x80Uè ) 520  #LDAP_SUBSTRING_ANY (( b”_g_t è0x81Uè ) 521  #LDAP_SUBSTRING_FINAL (( b”_g_t è0x82Uè ) 526  #LDAP_SUCCESS 0x00 ) 528  #LDAP_RANGE ( n , x , y è(((xè<ðÒ)è&& (Òè<ð(y))) ) 530  #LDAP_OPERATIONS_ERROR 0x01 ) 531  #LDAP_PROTOCOL_ERROR 0x02 ) 532  #LDAP_TIMELIMIT_EXCEEDED 0x03 ) 533  #LDAP_SIZELIMIT_EXCEEDED 0x04 ) 534  #LDAP_COMPARE_FALSE 0x05 ) 535  #LDAP_COMPARE_TRUE 0x06 ) 536  #LDAP_AUTH_METHOD_NOT_SUPPORTED 0x07 ) 537  #LDAP_STRONG_AUTH_NOT_SUPPORTED LDAP_AUTH_METHOD_NOT_SUPPORTED ) 538  #LDAP_STRONG_AUTH_REQUIRED 0x08 ) 539  #LDAP_STRONGER_AUTH_REQUIRED LDAP_STRONG_AUTH_REQUIRED ) 540  #LDAP_PARTIAL_RESULTS 0x09 ) 542  #LDAP_REFERRAL 0x0¨ ) 543  #LDAP_ADMINLIMIT_EXCEEDED 0x0b ) 544  #LDAP_UNAVAILABLE_CRITICAL_EXTENSION 0x0ø ) 545  #LDAP_CONFIDENTIALITY_REQUIRED 0x0d ) 546  #LDAP_SASL_BIND_IN_PROGRESS 0x0 ) 548  #LDAP_ATTR_ERROR ( n è `LDAP_RANGE (Ò),0x10,0x15è ) 550  #LDAP_NO_SUCH_ATTRIBUTE 0x10 ) 551  #LDAP_UNDEFINED_TYPE 0x11 ) 552  #LDAP_INAPPROPRIATE_MATCHING 0x12 ) 553  #LDAP_CONSTRAINT_VIOLATION 0x13 ) 554  #LDAP_TYPE_OR_VALUE_EXISTS 0x14 ) 555  #LDAP_INVALID_SYNTAX 0x15 ) 557  #LDAP_NAME_ERROR ( n è `LDAP_RANGE (Ò),0x20,0x24è ) 559  #LDAP_NO_SUCH_OBJECT 0x20 ) 560  #LDAP_ALIAS_PROBLEM 0x21 ) 561  #LDAP_INVALID_DN_SYNTAX 0x22 ) 562  #LDAP_IS_LEAF 0x23 ) 563  #LDAP_ALIAS_DEREF_PROBLEM 0x24 ) 565  #LDAP_SECURITY_ERROR ( n è `LDAP_RANGE (Ò),0x2F,0x32è ) 567  #LDAP_X_PROXY_AUTHZ_FAILURE 0x2F ) 568  #LDAP_INAPPROPRIATE_AUTH 0x30 ) 569  #LDAP_INVALID_CREDENTIALS 0x31 ) 570  #LDAP_INSUFFICIENT_ACCESS 0x32 ) 572  #LDAP_SERVICE_ERROR ( n è `LDAP_RANGE (Ò),0x33,0x36è ) 574  #LDAP_BUSY 0x33 ) 575  #LDAP_UNAVAILABLE 0x34 ) 576  #LDAP_UNWILLING_TO_PERFORM 0x35 ) 577  #LDAP_LOOP_DETECT 0x36 ) 579  #LDAP_UPDATE_ERROR ( n è `LDAP_RANGE (Ò),0x40,0x47è ) 581  #LDAP_NAMING_VIOLATION 0x40 ) 582  #LDAP_OBJECT_CLASS_VIOLATION 0x41 ) 583  #LDAP_NOT_ALLOWED_ON_NONLEAF 0x42 ) 584  #LDAP_NOT_ALLOWED_ON_RDN 0x43 ) 585  #LDAP_ALREADY_EXISTS 0x44 ) 586  #LDAP_NO_OBJECT_CLASS_MODS 0x45 ) 587  #LDAP_RESULTS_TOO_LARGE 0x46 ) 588  #LDAP_AFFECTS_MULTIPLE_DSAS 0x47 ) 590  #LDAP_OTHER 0x50 ) 593  #LDAP_CUP_RESOURCES_EXHAUSTED 0x71 ) 594  #LDAP_CUP_SECURITY_VIOLATION 0x72 ) 595  #LDAP_CUP_INVALID_DATA 0x73 ) 596  #LDAP_CUP_UNSUPPORTED_SCHEME 0x74 ) 597  #LDAP_CUP_RELOAD_REQUIRED 0x75 ) 600  #LDAP_CANCELLED 0x76 ) 601  #LDAP_NO_SUCH_OPERATION 0x77 ) 602  #LDAP_TOO_LATE 0x78 ) 603  #LDAP_CANNOT_CANCEL 0x79 ) 606  #LDAP_ASSERTION_FAILED 0x7A ) 609  #LDAP_PROXIED_AUTHORIZATION_DENIED 0x7B ) 612  #LDAP_E_ERROR ( n è `LDAP_RANGE (Ò),0x1000,0x3FFF) ) 615  #LDAP_SYNC_REFRESH_REQUIRED 0x1000 ) 619  #LDAP_X_ERROR ( n è `LDAP_RANGE (Ò),0x4000,0xFFFF) ) 621  #LDAP_X_SYNC_REFRESH_REQUIRED 0x4100 ) 622  #LDAP_X_ASSERTION_FAILED 0x410à ) 625  #LDAP_X_NO_OPERATION 0x410e ) 629 #ifdeà LDAP_CONTROL_X_CHAINING_BEHAVIOR 630  #LDAP_X_NO_REFERRALS_FOUND 0x4110 ) 631  #LDAP_X_CANNOT_CHAIN 0x4111 ) 635 #ifdeà LDAP_X_DISTPROC_BASE 636  #LDAP_X_INVALIDREFERENCE 0x4112 ) 639 #ifdeà LDAP_X_TXN 640  #LDAP_X_TXN_SPECIFY_OKAY 0x4120 ) 641  #LDAP_X_TXN_ID_INVALID 0x4121 ) 649  #LDAP_API_ERROR ( n è(Ò)<0) ) 650  #LDAP_API_RESULT ( n è(Ò)<=0) ) 652  #LDAP_SERVER_DOWN (-1) ) 653  #LDAP_LOCAL_ERROR (-2) ) 654  #LDAP_ENCODING_ERROR (-3) ) 655  #LDAP_DECODING_ERROR (-4) ) 656  #LDAP_TIMEOUT (-5) ) 657  #LDAP_AUTH_UNKNOWN (-6) ) 658  #LDAP_FILTER_ERROR (-7) ) 659  #LDAP_USER_CANCELLED (-8) ) 660  #LDAP_PARAM_ERROR (-9) ) 661  #LDAP_NO_MEMORY (-10) ) 662  #LDAP_CONNECT_ERROR (-11) ) 663  #LDAP_NOT_SUPPORTED (-12) ) 664  #LDAP_CONTROL_NOT_FOUND (-13) ) 665  #LDAP_NO_RESULTS_RETURNED (-14) ) 666  #LDAP_MORE_RESULTS_TO_RETURN (-15è ) 667  #LDAP_CLIENT_LOOP (-16) ) 668  #LDAP_REFERRAL_LIMIT_EXCEEDED (-17) ) 669  #LDAP_X_CONNECTING (-18) ) 678  ld­msg tLDAPMes§ge ; 681  sld­mod { 682  mod_Ý ; 684  #LDAP_MOD_OP (0x0007) ) 685  #LDAP_MOD_ADD (0x0000) ) 686  #LDAP_MOD_DELETE (0x0001) ) 687  #LDAP_MOD_REPLACE (0x0002) ) 688  #LDAP_MOD_INCREMENT (0x0003è ) 689  #LDAP_MOD_BVALUES (0x0080) ) 695 * mod_ty³ ; 696  umod_v®s_u { 697 ** modv_¡rv®s ; 698  b”v® ** modv_bv®s ; 699 } mod_v®s ; 700  #mod_v®ues mod_v®s . modv_¡rv®s ) 701  #mod_bv®ues mod_v®s . modv_bv®s ) 702 } tLDAPMod ; 709  ld­ tLDAP ; 711  #LDAP_DEREF_NEVER 0x00 ) 712  #LDAP_DEREF_SEARCHING 0x01 ) 713  #LDAP_DEREF_FINDING 0x02 ) 714  #LDAP_DEREF_ALWAYS 0x03 ) 716  #LDAP_NO_LIMIT 0 ) 719  #LDAP_MSG_ONE 0x00 ) 720  #LDAP_MSG_ALL 0x01 ) 721  #LDAP_MSG_RECEIVED 0x02 ) 726  sld­_u¾_desc { 727  ld­_u¾_desc * lud_Ãxt ; 728 * lud_scheme ; 729 * lud_ho¡ ; 730  lud_pÜt ; 731 * lud_dn ; 732 ** lud_©Œs ; 733  lud_scÝe ; 734 * lud_fž‹r ; 735 ** lud_exts ; 736  lud_ü™_exts ; 737 } tLDAPURLDesc ; 739  #LDAP_URL_SUCCESS 0x00 ) 740  #LDAP_URL_ERR_MEM 0x01 ) 741  #LDAP_URL_ERR_PARAM 0x02 ) 743  #LDAP_URL_ERR_BADSCHEME 0x03 ) 744  #LDAP_URL_ERR_BADENCLOSURE 0x04 ) 745  #LDAP_URL_ERR_BADURL 0x05 ) 746  #LDAP_URL_ERR_BADHOST 0x06 ) 747  #LDAP_URL_ERR_BADATTRS 0x07 ) 748  #LDAP_URL_ERR_BADSCOPE 0x08 ) 749  #LDAP_URL_ERR_BADFILTER 0x09 ) 750  #LDAP_URL_ERR_BADEXTS 0x0¨ ) 756  ld­_sync_t tld­_sync_t ; 760 LDAP_SYNC_CAPI_NONE = -1, 762 LDAP_SYNC_CAPI_PHASE_FLAG = 0x10U, 763 LDAP_SYNC_CAPI_IDSET_FLAG = 0x20U, 764 LDAP_SYNC_CAPI_DONE_FLAG = 0x40U, 767 LDAP_SYNC_CAPI_PRESENT = LDAP_SYNC_PRESENT , 768 LDAP_SYNC_CAPI_ADD = LDAP_SYNC_ADD , 769 LDAP_SYNC_CAPI_MODIFY = LDAP_SYNC_MODIFY , 770 LDAP_SYNC_CAPI_DELETE = LDAP_SYNC_DELETE , 773 LDAP_SYNC_CAPI_PRESENTS = ( LDAP_SYNC_CAPI_PHASE_FLAG | LDAP_SYNC_CAPI_PRESENT ), 774 LDAP_SYNC_CAPI_DELETES = ( LDAP_SYNC_CAPI_PHASE_FLAG | LDAP_SYNC_CAPI_DELETE ), 776 LDAP_SYNC_CAPI_PRESENTS_IDSET = ( LDAP_SYNC_CAPI_PRESENTS | LDAP_SYNC_CAPI_IDSET_FLAG ), 777 LDAP_SYNC_CAPI_DELETES_IDSET = ( LDAP_SYNC_CAPI_DELETES | LDAP_SYNC_CAPI_IDSET_FLAG ), 779 LDAP_SYNC_CAPI_DONE = ( LDAP_SYNC_CAPI_DONE_FLAG | LDAP_SYNC_CAPI_PRESENTS ) 780 } tld­_sync_»äesh_t ; 790 (* tld­_sync_£¬ch_’Œy_f è tLDAP_P (( 791 tld­_sync_t * tls , 792 tLDAPMes§ge * tmsg , 793  tb”v® * t’ŒyUUID , 794 tld­_sync_»äesh_t tpha£ )); 800 (* tld­_sync_£¬ch_»ã»nû_f è tLDAP_P (( 801 tld­_sync_t * tls , 802 tLDAPMes§ge * tmsg )); 817 (* tld­_sync_š‹rmedŸ‹_f è tLDAP_P (( 818 tld­_sync_t * tls , 819 tLDAPMes§ge * tmsg , 820 tB”V¬¿y tsyncUUIDs , 821 tld­_sync_»äesh_t tpha£ )); 828 (* tld­_sync_£¬ch_»suÉ_f è tLDAP_P (( 829 tld­_sync_t * tls , 830 tLDAPMes§ge * tmsg , 831  t»äeshD–‘es )); 837  sld­_sync_t { 839 * ls_ba£ ; 840  ls_scÝe ; 841 * ls_fž‹r ; 842 ** ls_©Œs ; 843  ls_tim–im™ ; 844  ls_siz–im™ ; 847  ls_timeout ; 850 ld­_sync_£¬ch_’Œy_f ls_£¬ch_’Œy ; 851 ld­_sync_£¬ch_»ã»nû_f ls_£¬ch_»ã»nû ; 852 ld­_sync_š‹rmedŸ‹_f ls_š‹rmedŸ‹ ; 853 ld­_sync_£¬ch_»suÉ_f ls_£¬ch_»suÉ ; 856 * ls_´iv©e ; 859 LDAP * ls_ld ; 867  ls_msgid ; 871  ls_»lßdHšt ; 874  b”v® ls_cook› ; 877 ld­_sync_»äesh_t ls_»äeshPha£ ; 888  timev® ; 893 $LDAP_F ( ) 894 ld­_g‘_ÝtiÚ `LDAP_P (( 895 LDAP * ld , 896  ÝtiÚ , 897 * outv®ue )); 899 $LDAP_F ( ) 900 ld­_£t_ÝtiÚ `LDAP_P (( 901 LDAP * ld , 902  ÝtiÚ , 903 LDAP_CONST * šv®ue )); 906 ( tLDAP_REBIND_PROC è tLDAP_P (( 907 tLDAP * tld , tLDAP_CONST * tu¾ , 908 tb”_g_t t»que¡ , tb”_št_t tmsgid , 909 * t·¿ms )); 911 $LDAP_F ( ) 912 ld­_£t_»bšd_´oc `LDAP_P (( 913 LDAP * ld , 914 LDAP_REBIND_PROC * »bšd_´oc , 915 * ·¿ms )); 918 ( tLDAP_NEXTREF_PROC è tLDAP_P (( 919 tLDAP * tld , *** t»f¥ , * tú , 920 * t·¿ms )); 922 $LDAP_F ( ) 923 ld­_£t_ÃxŒef_´oc `LDAP_P (( 924 LDAP * ld , 925 LDAP_NEXTREF_PROC * ÃxŒef_´oc , 926 * ·¿ms )); 929 ( tLDAP_URLLIST_PROC è tLDAP_P (( 930 tLDAP * tld , 931 tLDAPURLDesc ** tu¾li¡ , 932 tLDAPURLDesc ** tu¾ , 933 * t·¿ms )); 935 $LDAP_F ( ) 936 ld­_£t_u¾li¡_´oc `LDAP_P (( 937 LDAP * ld , 938 LDAP_URLLIST_PROC * u¾li¡_´oc , 939 * ·¿ms )); 944 #ià LDAP_DEPRECATED 945 $LDAP_F ( ) 946 ld­_ü—‹_cÚŒÞ `LDAP_P (( 947 LDAP_CONST * »que¡OID , 948 B”EËm’t * b” , 949  isü™iÿl , 950 LDAPCÚŒÞ ** ù¾p )); 952 $LDAP_F Ð LDAPCÚŒÞ * ) 953 ld­_fšd_cÚŒÞ `LDAP_P (( 954 LDAP_CONST * oid , 955 LDAPCÚŒÞ ** ù¾s )); 958 $LDAP_F ( ) 959 ld­_cÚŒÞ_ü—‹ `LDAP_P (( 960 LDAP_CONST * »que¡OID , 961  isü™iÿl , 962  b”v® * v®ue , 963  dupv® , 964 LDAPCÚŒÞ ** ù¾p )); 966 $LDAP_F Ð LDAPCÚŒÞ * ) 967 ld­_cÚŒÞ_fšd `LDAP_P (( 968 LDAP_CONST * oid , 969 LDAPCÚŒÞ ** ù¾s , 970 LDAPCÚŒÞ *** Ãxtù¾p )); 972 $LDAP_F ( ) 973 ld­_cÚŒÞ_ä“ `LDAP_P (( 974 LDAPCÚŒÞ * ù¾ )); 976 $LDAP_F ( ) 977 ld­_cÚŒÞs_ä“ `LDAP_P (( 978 LDAPCÚŒÞ ** ù¾s )); 980 $LDAP_F Ð LDAPCÚŒÞ ** ) 981 ld­_cÚŒÞs_dup `LDAP_P (( 982 LDAPCÚŒÞ * LDAP_CONST * cÚŒÞs )); 984 $LDAP_F Ð LDAPCÚŒÞ * ) 985 ld­_cÚŒÞ_dup `LDAP_P (( 986 LDAP_CONST LDAPCÚŒÞ * c )); 991 $LDAP_F ( ) 992 ld­_domaš2dn `LDAP_P (( 993 LDAP_CONST * domaš , 994 ** dn )); 996 $LDAP_F ( ) 997 ld­_dn2domaš `LDAP_P (( 998 LDAP_CONST * dn , 999 ** domaš )); 1001 $LDAP_F ( ) 1002 ld­_domaš2ho¡li¡ `LDAP_P (( 1003 LDAP_CONST * domaš , 1004 ** ho¡li¡ )); 1009 $LDAP_F ( ) 1010 ld­_ex‹nded_Ý”©iÚ `LDAP_P (( 1011 LDAP * ld , 1012 LDAP_CONST * »qoid , 1013  b”v® * »qd©a , 1014 LDAPCÚŒÞ ** £rv”ù¾s , 1015 LDAPCÚŒÞ ** þ›Áù¾s , 1016 * msgidp )); 1018 $LDAP_F ( ) 1019 ld­_ex‹nded_Ý”©iÚ_s `LDAP_P (( 1020 LDAP * ld , 1021 LDAP_CONST * »qoid , 1022  b”v® * »qd©a , 1023 LDAPCÚŒÞ ** £rv”ù¾s , 1024 LDAPCÚŒÞ ** þ›Áù¾s , 1025 ** »toidp , 1026  b”v® ** »td©­ )); 1028 $LDAP_F ( ) 1029 ld­_·r£_ex‹nded_»suÉ `LDAP_P (( 1030 LDAP * ld , 1031 LDAPMes§ge * »s , 1032 ** »toidp , 1033  b”v® ** »td©­ , 1034  ä“™ )); 1036 $LDAP_F ( ) 1037 ld­_·r£_š‹rmedŸ‹ `LDAP_P (( 1038 LDAP * ld , 1039 LDAPMes§ge * »s , 1040 ** »toidp , 1041  b”v® ** »td©­ , 1042 LDAPCÚŒÞ *** £rv”ù¾s , 1043  ä“™ )); 1049 $LDAP_F ( ) 1050 ld­_abªdÚ_ext `LDAP_P (( 1051 LDAP * ld , 1052  msgid , 1053 LDAPCÚŒÞ ** £rv”ù¾s , 1054 LDAPCÚŒÞ ** þ›Áù¾s )); 1056 #ià LDAP_DEPRECATED 1057 $LDAP_F ( ) 1058 ld­_abªdÚ `LDAP_P (( 1059 LDAP * ld , 1060  msgid )); 1066 $LDAP_F ( ) 1067 ld­_add_ext `LDAP_P (( 1068 LDAP * ld , 1069 LDAP_CONST * dn , 1070 LDAPMod ** ©Œs , 1071 LDAPCÚŒÞ ** £rv”ù¾s , 1072 LDAPCÚŒÞ ** þ›Áù¾s , 1073 * msgidp )); 1075 $LDAP_F ( ) 1076 ld­_add_ext_s `LDAP_P (( 1077 LDAP * ld , 1078 LDAP_CONST * dn , 1079 LDAPMod ** ©Œs , 1080 LDAPCÚŒÞ ** £rv”ù¾s , 1081 LDAPCÚŒÞ ** þ›Áù¾s )); 1083 #ià LDAP_DEPRECATED 1084 $LDAP_F ( ) 1085 ld­_add `LDAP_P (( 1086 LDAP * ld , 1087 LDAP_CONST * dn , 1088 LDAPMod ** ©Œs )); 1090 $LDAP_F ( ) 1091 ld­_add_s `LDAP_P (( 1092 LDAP * ld , 1093 LDAP_CONST * dn , 1094 LDAPMod ** ©Œs )); 1101 $LDAP_F ( ) 1102 ld­_§¦_bšd `LDAP_P (( 1103 LDAP * ld , 1104 LDAP_CONST * dn , 1105 LDAP_CONST * mechªism , 1106  b”v® * üed , 1107 LDAPCÚŒÞ ** £rv”ù¾s , 1108 LDAPCÚŒÞ ** þ›Áù¾s , 1109 * msgidp )); 1116  #LDAP_SASL_AUTOMATIC 0U ) 1117  #LDAP_SASL_INTERACTIVE 1U ) 1118  #LDAP_SASL_QUIET 2U ) 1125 ( tLDAP_SASL_INTERACT_PROC è tLDAP_P (( 1126 tLDAP * tld ,  tæags , * tdeçuÉs , * tš‹¿ù )); 1128 $LDAP_F ( ) 1129 ld­_§¦_š‹¿ùive_bšd_s `LDAP_P (( 1130 LDAP * ld , 1131 LDAP_CONST * dn , 1132 LDAP_CONST * §¦Mechªism , 1133 LDAPCÚŒÞ ** £rv”CÚŒÞs , 1134 LDAPCÚŒÞ ** þ›ÁCÚŒÞs , 1137  æags , 1138 LDAP_SASL_INTERACT_PROC * ´oc , 1139 * deçuÉs )); 1141 $LDAP_F ( ) 1142 ld­_§¦_bšd_s `LDAP_P (( 1143 LDAP * ld , 1144 LDAP_CONST * dn , 1145 LDAP_CONST * mechªism , 1146  b”v® * üed , 1147 LDAPCÚŒÞ ** £rv”ù¾s , 1148 LDAPCÚŒÞ ** þ›Áù¾s , 1149  b”v® ** £rv”üedp )); 1151 $LDAP_F ( ) 1152 ld­_·r£_§¦_bšd_»suÉ `LDAP_P (( 1153 LDAP * ld , 1154 LDAPMes§ge * »s , 1155  b”v® ** £rv”üedp , 1156  ä“™ )); 1158 #ià LDAP_DEPRECATED 1163 $LDAP_F ( ) 1164 ld­_bšd `LDAP_P (( 1165 LDAP * ld , 1166 LDAP_CONST * who , 1167 LDAP_CONST * ·sswd , 1168  authm‘hod )); 1170 $LDAP_F ( ) 1171 ld­_bšd_s `LDAP_P (( 1172 LDAP * ld , 1173 LDAP_CONST * who , 1174 LDAP_CONST * üed , 1175  authm‘hod )); 1180 $LDAP_F ( ) 1181 ld­_sim¶e_bšd `LDAP_P (( 1182 LDAP * ld , 1183 LDAP_CONST * who , 1184 LDAP_CONST * ·sswd )); 1186 $LDAP_F ( ) 1187 ld­_sim¶e_bšd_s `LDAP_P (( 1188 LDAP * ld , 1189 LDAP_CONST * who , 1190 LDAP_CONST * ·sswd )); 1198 $LDAP_F ( ) 1199 ld­_com·»_ext `LDAP_P (( 1200 LDAP * ld , 1201 LDAP_CONST * dn , 1202 LDAP_CONST * ©Œ , 1203  b”v® * bv®ue , 1204 LDAPCÚŒÞ ** £rv”ù¾s , 1205 LDAPCÚŒÞ ** þ›Áù¾s , 1206 * msgidp )); 1208 $LDAP_F ( ) 1209 ld­_com·»_ext_s `LDAP_P (( 1210 LDAP * ld , 1211 LDAP_CONST * dn , 1212 LDAP_CONST * ©Œ , 1213  b”v® * bv®ue , 1214 LDAPCÚŒÞ ** £rv”ù¾s , 1215 LDAPCÚŒÞ ** þ›Áù¾s )); 1217 #ià LDAP_DEPRECATED 1218 $LDAP_F ( ) 1219 ld­_com·» `LDAP_P (( 1220 LDAP * ld , 1221 LDAP_CONST * dn , 1222 LDAP_CONST * ©Œ , 1223 LDAP_CONST * v®ue )); 1225 $LDAP_F ( ) 1226 ld­_com·»_s `LDAP_P (( 1227 LDAP * ld , 1228 LDAP_CONST * dn , 1229 LDAP_CONST * ©Œ , 1230 LDAP_CONST * v®ue )); 1237 $LDAP_F ( ) 1238 ld­_d–‘e_ext `LDAP_P (( 1239 LDAP * ld , 1240 LDAP_CONST * dn , 1241 LDAPCÚŒÞ ** £rv”ù¾s , 1242 LDAPCÚŒÞ ** þ›Áù¾s , 1243 * msgidp )); 1245 $LDAP_F ( ) 1246 ld­_d–‘e_ext_s `LDAP_P (( 1247 LDAP * ld , 1248 LDAP_CONST * dn , 1249 LDAPCÚŒÞ ** £rv”ù¾s , 1250 LDAPCÚŒÞ ** þ›Áù¾s )); 1252 #ià LDAP_DEPRECATED 1253 $LDAP_F ( ) 1254 ld­_d–‘e `LDAP_P (( 1255 LDAP * ld , 1256 LDAP_CONST * dn )); 1258 $LDAP_F ( ) 1259 ld­_d–‘e_s `LDAP_P (( 1260 LDAP * ld , 1261 LDAP_CONST * dn )); 1268 $LDAP_F ( ) 1269 ld­_·r£_»suÉ `LDAP_P (( 1270 LDAP * ld , 1271 LDAPMes§ge * »s , 1272 * ”rcod• , 1273 ** m©cheddÅ , 1274 ** ”rmsgp , 1275 *** »ã¼®¥ , 1276 LDAPCÚŒÞ *** £rv”ù¾s , 1277  ä“™ )); 1279 $LDAP_F ( * ) 1280 ld­_”r2¡ršg `LDAP_P (( 1281  ”r )); 1283 #ià LDAP_DEPRECATED 1284 $LDAP_F ( ) 1285 ld­_»suÉ2”rÜ `LDAP_P (( 1286 LDAP * ld , 1287 LDAPMes§ge * r , 1288  ä“™ )); 1290 $LDAP_F ( ) 1291 ld­_³¼Ü `LDAP_P (( 1292 LDAP * ld , 1293 LDAP_CONST * s )); 1300 $LDAP_F ( ) 1301 ld­_modify_ext `LDAP_P (( 1302 LDAP * ld , 1303 LDAP_CONST * dn , 1304 LDAPMod ** mods , 1305 LDAPCÚŒÞ ** £rv”ù¾s , 1306 LDAPCÚŒÞ ** þ›Áù¾s , 1307 * msgidp )); 1309 $LDAP_F ( ) 1310 ld­_modify_ext_s `LDAP_P (( 1311 LDAP * ld , 1312 LDAP_CONST * dn , 1313 LDAPMod ** mods , 1314 LDAPCÚŒÞ ** £rv”ù¾s , 1315 LDAPCÚŒÞ ** þ›Áù¾s )); 1317 #ià LDAP_DEPRECATED 1318 $LDAP_F ( ) 1319 ld­_modify `LDAP_P (( 1320 LDAP * ld , 1321 LDAP_CONST * dn , 1322 LDAPMod ** mods )); 1324 $LDAP_F ( ) 1325 ld­_modify_s `LDAP_P (( 1326 LDAP * ld , 1327 LDAP_CONST * dn , 1328 LDAPMod ** mods )); 1335 $LDAP_F ( ) 1336 ld­_»Çme `LDAP_P (( 1337 LDAP * ld , 1338 LDAP_CONST * dn , 1339 LDAP_CONST * Ãwrdn , 1340 LDAP_CONST * ÃwSu³riÜ , 1341  d–‘eÞdrdn , 1342 LDAPCÚŒÞ ** sù¾s , 1343 LDAPCÚŒÞ ** cù¾s , 1344 * msgidp )); 1346 $LDAP_F ( ) 1347 ld­_»Çme_s `LDAP_P (( 1348 LDAP * ld , 1349 LDAP_CONST * dn , 1350 LDAP_CONST * Ãwrdn , 1351 LDAP_CONST * ÃwSu³riÜ , 1352  d–‘eÞdrdn , 1353 LDAPCÚŒÞ ** sù¾s , 1354 LDAPCÚŒÞ ** cù¾s )); 1356 #ià LDAP_DEPRECATED 1357 $LDAP_F ( ) 1358 ld­_»Çme2 `LDAP_P (( 1359 LDAP * ld , 1360 LDAP_CONST * dn , 1361 LDAP_CONST * Ãwrdn , 1362 LDAP_CONST * ÃwSu³riÜ , 1363  d–‘eÞdrdn )); 1365 $LDAP_F ( ) 1366 ld­_»Çme2_s `LDAP_P (( 1367 LDAP * ld , 1368 LDAP_CONST * dn , 1369 LDAP_CONST * Ãwrdn , 1370 LDAP_CONST * ÃwSu³riÜ , 1371  d–‘eÞdrdn )); 1373 $LDAP_F ( ) 1374 ld­_modrdn `LDAP_P (( 1375 LDAP * ld , 1376 LDAP_CONST * dn , 1377 LDAP_CONST * Ãwrdn )); 1379 $LDAP_F ( ) 1380 ld­_modrdn_s `LDAP_P (( 1381 LDAP * ld , 1382 LDAP_CONST * dn , 1383 LDAP_CONST * Ãwrdn )); 1385 $LDAP_F ( ) 1386 ld­_modrdn2 `LDAP_P (( 1387 LDAP * ld , 1388 LDAP_CONST * dn , 1389 LDAP_CONST * Ãwrdn , 1390  d–‘eÞdrdn )); 1392 $LDAP_F ( ) 1393 ld­_modrdn2_s `LDAP_P (( 1394 LDAP * ld , 1395 LDAP_CONST * dn , 1396 LDAP_CONST * Ãwrdn , 1397  d–‘eÞdrdn )); 1404 #ià LDAP_DEPRECATED 1405 $LDAP_F Ð LDAP * ) 1406 ld­_š™ `LDAP_P (( 1407 LDAP_CONST * ho¡ , 1408  pÜt )); 1410 $LDAP_F Ð LDAP * ) 1411 ld­_Ý’ `LDAP_P (( 1412 LDAP_CONST * ho¡ , 1413  pÜt )); 1416 $LDAP_F ( ) 1417 ld­_ü—‹ `LDAP_P (( 1418 LDAP ** ldp )); 1420 $LDAP_F ( ) 1421 ld­_š™Ÿlize `LDAP_P (( 1422 LDAP ** ldp , 1423 LDAP_CONST * u¾ )); 1429 $LDAP_F ( ) 1430 ld­_Žs_š¶aû `LDAP_P (( 1431 LDAP * ld )); 1433 $LDAP_F ( ) 1434 ld­_¡¬t_Žs `LDAP_P (( 1435 LDAP * ld , 1436 LDAPCÚŒÞ ** £rv”ù¾s , 1437 LDAPCÚŒÞ ** þ›Áù¾s , 1438 * msgidp )); 1440 $LDAP_F ( ) 1441 ld­_š¡®l_Žs `LDAP_P (( 1442 LDAP * ld )); 1444 $LDAP_F ( ) 1445 ld­_¡¬t_Žs_s `LDAP_P (( 1446 LDAP * ld , 1447 LDAPCÚŒÞ ** £rv”ù¾s , 1448 LDAPCÚŒÞ ** þ›Áù¾s )); 1453 $LDAP_F Ð LDAPMes§ge * ) 1454 ld­_fœ¡_mes§ge `LDAP_P (( 1455 LDAP * ld , 1456 LDAPMes§ge * chaš )); 1458 $LDAP_F Ð LDAPMes§ge * ) 1459 ld­_Ãxt_mes§ge `LDAP_P (( 1460 LDAP * ld , 1461 LDAPMes§ge * msg )); 1463 $LDAP_F ( ) 1464 ld­_couÁ_mes§ges `LDAP_P (( 1465 LDAP * ld , 1466 LDAPMes§ge * chaš )); 1471 $LDAP_F Ð LDAPMes§ge * ) 1472 ld­_fœ¡_»ã»nû `LDAP_P (( 1473 LDAP * ld , 1474 LDAPMes§ge * chaš )); 1476 $LDAP_F Ð LDAPMes§ge * ) 1477 ld­_Ãxt_»ã»nû `LDAP_P (( 1478 LDAP * ld , 1479 LDAPMes§ge * »f )); 1481 $LDAP_F ( ) 1482 ld­_couÁ_»ã»nûs `LDAP_P (( 1483 LDAP * ld , 1484 LDAPMes§ge * chaš )); 1486 $LDAP_F ( ) 1487 ld­_·r£_»ã»nû `LDAP_P (( 1488 LDAP * ld , 1489 LDAPMes§ge * »f , 1490 *** »ã¼®¥ , 1491 LDAPCÚŒÞ *** £rv”ù¾s , 1492  ä“™ )); 1498 $LDAP_F Ð LDAPMes§ge * ) 1499 ld­_fœ¡_’Œy `LDAP_P (( 1500 LDAP * ld , 1501 LDAPMes§ge * chaš )); 1503 $LDAP_F Ð LDAPMes§ge * ) 1504 ld­_Ãxt_’Œy `LDAP_P (( 1505 LDAP * ld , 1506 LDAPMes§ge * ’Œy )); 1508 $LDAP_F ( ) 1509 ld­_couÁ_’Œ›s `LDAP_P (( 1510 LDAP * ld , 1511 LDAPMes§ge * chaš )); 1513 $LDAP_F ( ) 1514 ld­_g‘_’Œy_cÚŒÞs `LDAP_P (( 1515 LDAP * ld , 1516 LDAPMes§ge * ’Œy , 1517 LDAPCÚŒÞ *** £rv”ù¾s )); 1523 $LDAP_F Ð LDAPMes§ge * ) 1524 ld­_d–‘e_»suÉ_’Œy `LDAP_P (( 1525 LDAPMes§ge ** li¡ , 1526 LDAPMes§ge * e )); 1528 $LDAP_F ( ) 1529 ld­_add_»suÉ_’Œy `LDAP_P (( 1530 LDAPMes§ge ** li¡ , 1531 LDAPMes§ge * e )); 1537 $LDAP_F ( * ) 1538 ld­_g‘_dn `LDAP_P (( 1539 LDAP * ld , 1540 LDAPMes§ge * ’Œy )); 1542  sld­_ava { 1543  b”v® Ï_©Œ ; 1544  b”v® Ï_v®ue ; 1545  Ï_æags ; 1546  #LDAP_AVA_NULL 0x0000U ) 1547  #LDAP_AVA_STRING 0x0001U ) 1548  #LDAP_AVA_BINARY 0x0002U ) 1549  #LDAP_AVA_NONPRINTABLE 0x0004U ) 1550  #LDAP_AVA_FREE_ATTR 0x0010U ) 1551  #LDAP_AVA_FREE_VALUE 0x0020U ) 1553 * Ï_´iv©e ; 1554 } tLDAPAVA ; 1556  LDAPAVA ** tLDAPRDN ; 1557  LDAPRDN * tLDAPDN ; 1560  #LDAP_DN_FORMAT_LDAP 0x0000U ) 1561  #LDAP_DN_FORMAT_LDAPV3 0x0010U ) 1562  #LDAP_DN_FORMAT_LDAPV2 0x0020U ) 1563  #LDAP_DN_FORMAT_DCE 0x0030U ) 1564  #LDAP_DN_FORMAT_UFN 0x0040U ) 1565  #LDAP_DN_FORMAT_AD_CANONICAL 0x0050U ) 1566  #LDAP_DN_FORMAT_LBER 0x00F0U ) 1567  #LDAP_DN_FORMAT_MASK 0x00F0U ) 1570  #LDAP_DN_PRETTY 0x0100U ) 1571  #LDAP_DN_SKIP 0x0200U ) 1572  #LDAP_DN_P_NOLEADTRAILSPACES 0x1000U ) 1573  #LDAP_DN_P_NOSPACEAFTERRDN 0x2000U ) 1574  #LDAP_DN_PEDANTIC 0xF000U ) 1576 $LDAP_F Ðè ld­_rdnä“ `LDAP_P (Ð LDAPRDN rdn )); 1577 $LDAP_F Ðè ld­_dnä“ `LDAP_P (Ð LDAPDN dn )); 1579 $LDAP_F ( ) 1580 ld­_bv2dn `LDAP_P (( 1581  b”v® * bv , 1582 LDAPDN * dn , 1583  æags )); 1585 $LDAP_F ( ) 1586 ld­_¡r2dn `LDAP_P (( 1587 LDAP_CONST * ¡r , 1588 LDAPDN * dn , 1589  æags )); 1591 $LDAP_F ( ) 1592 ld­_dn2bv `LDAP_P (( 1593 LDAPDN dn , 1594  b”v® * bv , 1595  æags )); 1597 $LDAP_F ( ) 1598 ld­_dn2¡r `LDAP_P (( 1599 LDAPDN dn , 1600 ** ¡r , 1601  æags )); 1603 $LDAP_F ( ) 1604 ld­_bv2rdn `LDAP_P (( 1605  b”v® * bv , 1606 LDAPRDN * rdn , 1607 ** Ãxt , 1608  æags )); 1610 $LDAP_F ( ) 1611 ld­_¡r2rdn `LDAP_P (( 1612 LDAP_CONST * ¡r , 1613 LDAPRDN * rdn , 1614 ** Ãxt , 1615  æags )); 1617 $LDAP_F ( ) 1618 ld­_rdn2bv `LDAP_P (( 1619 LDAPRDN rdn , 1620  b”v® * bv , 1621  æags )); 1623 $LDAP_F ( ) 1624 ld­_rdn2¡r `LDAP_P (( 1625 LDAPRDN rdn , 1626 ** ¡r , 1627  æags )); 1629 $LDAP_F ( ) 1630 ld­_dn_nÜm®ize `LDAP_P (( 1631 LDAP_CONST * š ,  iæags , 1632 ** out ,  oæags )); 1634 $LDAP_F ( * ) 1635 ld­_dn2uâ `LDAP_P (( 1636 LDAP_CONST * dn )); 1638 $LDAP_F ( ** ) 1639 ld­_ex¶ode_dn `LDAP_P (( 1640 LDAP_CONST * dn , 1641  nÙy³s )); 1643 $LDAP_F ( ** ) 1644 ld­_ex¶ode_rdn `LDAP_P (( 1645 LDAP_CONST * rdn , 1646  nÙy³s )); 1648  tLDAPDN_»wr™e_func 1649 tLDAP_P (Ð tLDAPDN tdn ,  tæags , * tùx )); 1651 $LDAP_F ( ) 1652 ld­_X509dn2bv `LDAP_P (Ð* x509_Çme ,  b”v® * dn , 1653 LDAPDN_»wr™e_func * func ,  æags )); 1655 $LDAP_F ( * ) 1656 ld­_dn2dûdn `LDAP_P (( 1657 LDAP_CONST * dn )); 1659 $LDAP_F ( * ) 1660 ld­_dûdn2dn `LDAP_P (( 1661 LDAP_CONST * dû )); 1663 $LDAP_F ( * ) 1664 ld­_dn2ad_ÿnÚiÿl `LDAP_P (( 1665 LDAP_CONST * dn )); 1667 $LDAP_F ( ) 1668 ld­_g‘_dn_b” `LDAP_P (( 1669 LDAP * ld , LDAPMes§ge * e , B”EËm’t ** b”out ,  b”v® * dn )); 1671 $LDAP_F ( ) 1672 ld­_g‘_©Œibu‹_b” `LDAP_P (( 1673 LDAP * ld , LDAPMes§ge * e , B”EËm’t * b” ,  b”v® * ©Œ , 1674  b”v® ** v®s )); 1679 $LDAP_F ( * ) 1680 ld­_fœ¡_©Œibu‹ `LDAP_P (( 1681 LDAP * ld , 1682 LDAPMes§ge * ’Œy , 1683 B”EËm’t ** b” )); 1685 $LDAP_F ( * ) 1686 ld­_Ãxt_©Œibu‹ `LDAP_P (( 1687 LDAP * ld , 1688 LDAPMes§ge * ’Œy , 1689 B”EËm’t * b” )); 1695 $LDAP_F Ð b”v® ** ) 1696 ld­_g‘_v®ues_Ën `LDAP_P (( 1697 LDAP * ld , 1698 LDAPMes§ge * ’Œy , 1699 LDAP_CONST * rg‘ )); 1701 $LDAP_F ( ) 1702 ld­_couÁ_v®ues_Ën `LDAP_P (( 1703  b”v® ** v®s )); 1705 $LDAP_F ( ) 1706 ld­_v®ue_ä“_Ën `LDAP_P (( 1707  b”v® ** v®s )); 1709 #ià LDAP_DEPRECATED 1710 $LDAP_F ( ** ) 1711 ld­_g‘_v®ues `LDAP_P (( 1712 LDAP * ld , 1713 LDAPMes§ge * ’Œy , 1714 LDAP_CONST * rg‘ )); 1716 $LDAP_F ( ) 1717 ld­_couÁ_v®ues `LDAP_P (( 1718 ** v®s )); 1720 $LDAP_F ( ) 1721 ld­_v®ue_ä“ `LDAP_P (( 1722 ** v®s )); 1728 $LDAP_F ( ) 1729 ld­_»suÉ `LDAP_P (( 1730 LDAP * ld , 1731  msgid , 1732  ®l , 1733  timev® * timeout , 1734 LDAPMes§ge ** »suÉ )); 1736 $LDAP_F ( ) 1737 ld­_msgty³ `LDAP_P (( 1738 LDAPMes§ge * lm )); 1740 $LDAP_F ( ) 1741 ld­_msgid `LDAP_P (( 1742 LDAPMes§ge * lm )); 1744 $LDAP_F ( ) 1745 ld­_msgä“ `LDAP_P (( 1746 LDAPMes§ge * lm )); 1748 $LDAP_F ( ) 1749 ld­_msgd–‘e `LDAP_P (( 1750 LDAP * ld , 1751  msgid )); 1757 $LDAP_F ( ) 1758 ld­_bv2esÿ³d_fž‹r_v®ue `LDAP_P (( 1759  b”v® * š , 1760  b”v® * out )); 1762 $LDAP_F ( ) 1763 ld­_£¬ch_ext `LDAP_P (( 1764 LDAP * ld , 1765 LDAP_CONST * ba£ , 1766  scÝe , 1767 LDAP_CONST * fž‹r , 1768 ** ©Œs , 1769  ©ŒsÚly , 1770 LDAPCÚŒÞ ** £rv”ù¾s , 1771 LDAPCÚŒÞ ** þ›Áù¾s , 1772  timev® * timeout , 1773  siz–im™ , 1774 * msgidp )); 1776 $LDAP_F ( ) 1777 ld­_£¬ch_ext_s `LDAP_P (( 1778 LDAP * ld , 1779 LDAP_CONST * ba£ , 1780  scÝe , 1781 LDAP_CONST * fž‹r , 1782 ** ©Œs , 1783  ©ŒsÚly , 1784 LDAPCÚŒÞ ** £rv”ù¾s , 1785 LDAPCÚŒÞ ** þ›Áù¾s , 1786  timev® * timeout , 1787  siz–im™ , 1788 LDAPMes§ge ** »s )); 1790 #ià LDAP_DEPRECATED 1791 $LDAP_F ( ) 1792 ld­_£¬ch `LDAP_P (( 1793 LDAP * ld , 1794 LDAP_CONST * ba£ , 1795  scÝe , 1796 LDAP_CONST * fž‹r , 1797 ** ©Œs , 1798  ©ŒsÚly )); 1800 $LDAP_F ( ) 1801 ld­_£¬ch_s `LDAP_P (( 1802 LDAP * ld , 1803 LDAP_CONST * ba£ , 1804  scÝe , 1805 LDAP_CONST * fž‹r , 1806 ** ©Œs , 1807  ©ŒsÚly , 1808 LDAPMes§ge ** »s )); 1810 $LDAP_F ( ) 1811 ld­_£¬ch_¡ `LDAP_P (( 1812 LDAP * ld , 1813 LDAP_CONST * ba£ , 1814  scÝe , 1815 LDAP_CONST * fž‹r , 1816 ** ©Œs , 1817  ©ŒsÚly , 1818  timev® * timeout , 1819 LDAPMes§ge ** »s )); 1825 $LDAP_F ( ) 1826 ld­_unbšd_ext `LDAP_P (( 1827 LDAP * ld , 1828 LDAPCÚŒÞ ** £rv”ù¾s , 1829 LDAPCÚŒÞ ** þ›Áù¾s )); 1831 $LDAP_F ( ) 1832 ld­_unbšd_ext_s `LDAP_P (( 1833 LDAP * ld , 1834 LDAPCÚŒÞ ** £rv”ù¾s , 1835 LDAPCÚŒÞ ** þ›Áù¾s )); 1837 #ià LDAP_DEPRECATED 1838 $LDAP_F ( ) 1839 ld­_unbšd `LDAP_P (( 1840 LDAP * ld )); 1842 $LDAP_F ( ) 1843 ld­_unbšd_s `LDAP_P (( 1844 LDAP * ld )); 1850 $LDAP_F ( ) 1851 ld­_put_vrFž‹r `LDAP_P (( 1852 B”EËm’t * b” , 1853 cÚ¡ * vrf )); 1859 $LDAP_F ( * ) 1860 ld­_mem®loc `LDAP_P (( 1861 b”_Ën_t s )); 1863 $LDAP_F ( * ) 1864 ld­_mem»®loc `LDAP_P (( 1865 * p , 1866 b”_Ën_t s )); 1868 $LDAP_F ( * ) 1869 ld­_memÿÎoc `LDAP_P (( 1870 b”_Ën_t n , 1871 b”_Ën_t s )); 1873 $LDAP_F ( ) 1874 ld­_memä“ `LDAP_P (( 1875 * p )); 1877 $LDAP_F ( ) 1878 ld­_memvä“ `LDAP_P (( 1879 ** v )); 1881 $LDAP_F ( * ) 1882 ld­_¡rdup `LDAP_P (( 1883 LDAP_CONST * )); 1885 $LDAP_F ( ) 1886 ld­_mods_ä“ `LDAP_P (( 1887 LDAPMod ** mods , 1888  ä“mods )); 1891 #ià LDAP_DEPRECATED 1895 ( tLDAP_SORT_AD_CMP_PROC è tLDAP_P (( 1896 tLDAP_CONST * tËá , 1897 tLDAP_CONST * tright )); 1899 ( tLDAP_SORT_AV_CMP_PROC è tLDAP_P (( 1900 tLDAP_CONST * tËá , 1901 tLDAP_CONST * tright )); 1903 $LDAP_F ( ) 1904 ld­_sÜt_’Œ›s `LDAP_P (Ð LDAP * ld , 1905 LDAPMes§ge ** chaš , 1906 LDAP_CONST * ©Œ , 1907 LDAP_SORT_AD_CMP_PROC * cmp )); 1909 $LDAP_F ( ) 1910 ld­_sÜt_v®ues `LDAP_P (( 1911 LDAP * ld , 1912 ** v®s , 1913 LDAP_SORT_AV_CMP_PROC * cmp )); 1915 $LDAP_F ( ) 1916 ld­_sÜt_¡rÿ£cmp `LDAP_P (( 1917 LDAP_CONST * a , 1918 LDAP_CONST * b )); 1924 $LDAP_F ( ) 1925 ld­_is_ld­_u¾ `LDAP_P (( 1926 LDAP_CONST * u¾ )); 1928 $LDAP_F ( ) 1929 ld­_is_ld­s_u¾ `LDAP_P (( 1930 LDAP_CONST * u¾ )); 1932 $LDAP_F ( ) 1933 ld­_is_ld­i_u¾ `LDAP_P (( 1934 LDAP_CONST * u¾ )); 1936 $LDAP_F ( ) 1937 ld­_u¾_·r£ `LDAP_P (( 1938 LDAP_CONST * u¾ , 1939 LDAPURLDesc ** ludµ )); 1941 $LDAP_F ( * ) 1942 ld­_u¾_desc2¡r `LDAP_P (( 1943 LDAPURLDesc * ludp )); 1945 $LDAP_F ( ) 1946 ld­_ä“_u¾desc `LDAP_P (( 1947 LDAPURLDesc * ludp )); 1954  #LDAP_API_FEATURE_CANCEL 1000 ) 1956 $LDAP_F ( ) 1957 ld­_ÿnûl `LDAP_P (Ð LDAP * ld , 1958  ÿnûlid , 1959 LDAPCÚŒÞ ** sù¾s , 1960 LDAPCÚŒÞ ** cù¾s , 1961 * msgidp )); 1963 $LDAP_F ( ) 1964 ld­_ÿnûl_s `LDAP_P (Ð LDAP * ld , 1965  ÿnûlid , 1966 LDAPCÚŒÞ ** sù¾ , 1967 LDAPCÚŒÞ ** cù¾ )); 1973  #LDAP_API_FEATURE_TURN 1000 ) 1975 $LDAP_F ( ) 1976 ld­_tuº `LDAP_P (Ð LDAP * ld , 1977  mutu® , 1978 LDAP_CONST * id’tif›r , 1979 LDAPCÚŒÞ ** sù¾s , 1980 LDAPCÚŒÞ ** cù¾s , 1981 * msgidp )); 1983 $LDAP_F ( ) 1984 ld­_tuº_s `LDAP_P (Ð LDAP * ld , 1985  mutu® , 1986 LDAP_CONST * id’tif›r , 1987 LDAPCÚŒÞ ** sù¾ , 1988 LDAPCÚŒÞ ** cù¾ )); 1994  #LDAP_API_FEATURE_PAGED_RESULTS 2000 ) 1996 $LDAP_F ( ) 1997 ld­_ü—‹_·ge_cÚŒÞ_v®ue `LDAP_P (( 1998 LDAP * ld , 1999 b”_št_t ·gesize , 2000  b”v® * cook› , 2001  b”v® * v®ue )); 2003 $LDAP_F ( ) 2004 ld­_ü—‹_·ge_cÚŒÞ `LDAP_P (( 2005 LDAP * ld , 2006 b”_št_t ·gesize , 2007  b”v® * cook› , 2008  isü™iÿl , 2009 LDAPCÚŒÞ ** ù¾p )); 2011 #ià LDAP_DEPRECATED 2012 $LDAP_F ( ) 2013 ld­_·r£_·ge_cÚŒÞ `LDAP_P (( 2015 LDAP * ld , 2016 LDAPCÚŒÞ ** ù¾s , 2017 b”_št_t * couÁ , 2018  b”v® ** cook› )); 2021 $LDAP_F ( ) 2022 ld­_·r£_·g”e¥Ú£_cÚŒÞ `LDAP_P (( 2023 LDAP * ld , 2024 LDAPCÚŒÞ * ù¾ , 2025 b”_št_t * couÁ , 2026  b”v® * cook› )); 2032  #LDAP_API_FEATURE_SERVER_SIDE_SORT 2000 ) 2035  sld­sÜtkey { 2036 * ©Œibu‹Ty³ ; 2037 * Üd”šgRuË ; 2038  »v”£Ord” ; 2039 } tLDAPSÜtKey ; 2041 $LDAP_F ( ) 2042 ld­_ü—‹_sÜt_keyli¡ `LDAP_P (( 2043 LDAPSÜtKey *** sÜtKeyLi¡ , 2044 * keySŒšg )); 2046 $LDAP_F ( ) 2047 ld­_ä“_sÜt_keyli¡ `LDAP_P (( 2048 LDAPSÜtKey ** sÜtkeyli¡ )); 2050 $LDAP_F ( ) 2051 ld­_ü—‹_sÜt_cÚŒÞ_v®ue `LDAP_P (( 2052 LDAP * ld , 2053 LDAPSÜtKey ** keyLi¡ , 2054  b”v® * v®ue )); 2056 $LDAP_F ( ) 2057 ld­_ü—‹_sÜt_cÚŒÞ `LDAP_P (( 2058 LDAP * ld , 2059 LDAPSÜtKey ** keyLi¡ , 2060  isü™iÿl , 2061 LDAPCÚŒÞ ** ù¾p )); 2063 $LDAP_F ( ) 2064 ld­_·r£_sÜŒe¥Ú£_cÚŒÞ `LDAP_P (( 2065 LDAP * ld , 2066 LDAPCÚŒÞ * ù¾ , 2067 b”_št_t * »suÉ , 2068 ** ©Œibu‹ )); 2074  #LDAP_API_FEATURE_VIRTUAL_LIST_VIEW 2000 ) 2077  sld­vlvšfo { 2078 b”_št_t ldvlv_v”siÚ ; 2079 b”_št_t ldvlv_befÜe_couÁ ; 2080 b”_št_t ldvlv_aá”_couÁ ; 2081 b”_št_t ldvlv_off£t ; 2082 b”_št_t ldvlv_couÁ ; 2083  b”v® * ldvlv_©Œv®ue ; 2084  b”v® * ldvlv_cÚ‹xt ; 2085 * ldvlv_exŒad©a ; 2086 } tLDAPVLVInfo ; 2088 $LDAP_F ( ) 2089 ld­_ü—‹_vlv_cÚŒÞ_v®ue `LDAP_P (( 2090 LDAP * ld , 2091 LDAPVLVInfo * ldvli¡p , 2092  b”v® * v®ue )); 2094 $LDAP_F ( ) 2095 ld­_ü—‹_vlv_cÚŒÞ `LDAP_P (( 2096 LDAP * ld , 2097 LDAPVLVInfo * ldvli¡p , 2098 LDAPCÚŒÞ ** ù¾p )); 2100 $LDAP_F ( ) 2101 ld­_·r£_vlv»¥Ú£_cÚŒÞ `LDAP_P (( 2102 LDAP * ld , 2103 LDAPCÚŒÞ * ù¾s , 2104 b”_št_t * rg‘_po¥ , 2105 b”_št_t * li¡_couÁp , 2106  b”v® ** cÚ‹x , 2107 * ”rcod• )); 2113  #LDAP_API_FEATURE_WHOAMI 1000 ) 2115 $LDAP_F ( ) 2116 ld­_·r£_whßmi `LDAP_P (( 2117 LDAP * ld , 2118 LDAPMes§ge * »s , 2119  b”v® ** authzid )); 2121 $LDAP_F ( ) 2122 ld­_whßmi `LDAP_P (Ð LDAP * ld , 2123 LDAPCÚŒÞ ** sù¾s , 2124 LDAPCÚŒÞ ** cù¾s , 2125 * msgidp )); 2127 $LDAP_F ( ) 2128 ld­_whßmi_s `LDAP_P (( 2129 LDAP * ld , 2130  b”v® ** authzid , 2131 LDAPCÚŒÞ ** sù¾s , 2132 LDAPCÚŒÞ ** cù¾s )); 2138  #LDAP_API_FEATURE_PASSWD_MODIFY 1000 ) 2140 $LDAP_F ( ) 2141 ld­_·r£_·sswd `LDAP_P (( 2142 LDAP * ld , 2143 LDAPMes§ge * »s , 2144  b”v® * Ãw·sswd )); 2146 $LDAP_F ( ) 2147 ld­_·sswd `LDAP_P (Ð LDAP * ld , 2148  b”v® * u£r , 2149  b”v® * Þdpw , 2150  b”v® * Ãwpw , 2151 LDAPCÚŒÞ ** sù¾s , 2152 LDAPCÚŒÞ ** cù¾s , 2153 * msgidp )); 2155 $LDAP_F ( ) 2156 ld­_·sswd_s `LDAP_P (( 2157 LDAP * ld , 2158  b”v® * u£r , 2159  b”v® * Þdpw , 2160  b”v® * Ãwpw , 2161  b”v® * Ãw·sswd , 2162 LDAPCÚŒÞ ** sù¾s , 2163 LDAPCÚŒÞ ** cù¾s )); 2165 #ifdeà LDAP_CONTROL_PASSWORDPOLICYREQUEST 2170  #LDAP_API_FEATURE_PASSWORD_POLICY 1000 ) 2172  e·s¥Þicy”rÜ_’um { 2173 PP_·sswÜdExpœed = 0, 2174 PP_accouÁLocked = 1, 2175 PP_chªgeAá”Re£t = 2, 2176 PP_·sswÜdModNÙAÎowed = 3, 2177 PP_mu¡SuµlyOldPasswÜd = 4, 2178 PP_šsuffic›ÁPasswÜdQu®™y = 5, 2179 PP_·sswÜdTooShÜt = 6, 2180 PP_·sswÜdTooYoung = 7, 2181 PP_·sswÜdInHi¡Üy = 8, 2182 PP_noE¼Ü = 65535 2183 } tLDAPPasswÜdPÞicyE¼Ü ; 2185 $LDAP_F ( ) 2186 ld­_ü—‹_·sswÜdpÞicy_cÚŒÞ `LDAP_P (( 2187 LDAP * ld , 2188 LDAPCÚŒÞ ** ù¾p )); 2190 $LDAP_F ( ) 2191 ld­_·r£_·sswÜdpÞicy_cÚŒÞ `LDAP_P (( 2192 LDAP * ld , 2193 LDAPCÚŒÞ * ù¾ , 2194 b”_št_t * expœ• , 2195 b”_št_t * g¿ûp , 2196 LDAPPasswÜdPÞicyE¼Ü * ”rÜp )); 2198 $LDAP_F ( const * ) 2199 ld­_·sswÜdpÞicy_”r2txt `LDAP_P (Ð LDAPPasswÜdPÞicyE¼Ü )); 2206  #LDAP_API_FEATURE_REFRESH 1000 ) 2208 $LDAP_F ( ) 2209 ld­_·r£_»äesh `LDAP_P (( 2210 LDAP * ld , 2211 LDAPMes§ge * »s , 2212 b”_št_t * Ãw‰l )); 2214 $LDAP_F ( ) 2215 ld­_»äesh `LDAP_P (Ð LDAP * ld , 2216  b”v® * dn , 2217 b”_št_t ‰l , 2218 LDAPCÚŒÞ ** sù¾s , 2219 LDAPCÚŒÞ ** cù¾s , 2220 * msgidp )); 2222 $LDAP_F ( ) 2223 ld­_»äesh_s `LDAP_P (( 2224 LDAP * ld , 2225  b”v® * dn , 2226 b”_št_t ‰l , 2227 b”_št_t * Ãw‰l , 2228 LDAPCÚŒÞ ** sù¾s , 2229 LDAPCÚŒÞ ** cù¾s )); 2234 #ifdeà LDAP_X_TXN 2235 $LDAP_F ( ) 2236 ld­_txn_¡¬t `LDAP_P (Ð LDAP * ld , 2237 LDAPCÚŒÞ ** sù¾s , 2238 LDAPCÚŒÞ ** cù¾s , 2239 * msgidp )); 2241 $LDAP_F ( ) 2242 ld­_txn_¡¬t_s `LDAP_P (Ð LDAP * ld , 2243 LDAPCÚŒÞ ** sù¾ , 2244 LDAPCÚŒÞ ** cù¾ , 2245  b”v® ** »‰xnid )); 2247 $LDAP_F ( ) 2248 ld­_txn_’d `LDAP_P (Ð LDAP * ld , 2249  comm™ , 2250  b”v® * txnid , 2251 LDAPCÚŒÞ ** sù¾s , 2252 LDAPCÚŒÞ ** cù¾s , 2253 * msgidp )); 2255 $LDAP_F ( ) 2256 ld­_txn_’d_s `LDAP_P (Ð LDAP * ld , 2257  comm™ , 2258  b”v® * txnid , 2259 LDAPCÚŒÞ ** sù¾ , 2260 LDAPCÚŒÞ ** cù¾ , 2261 * »tidp )); 2271 $LDAP_F Ð ld­_sync_t * ) 2272 ld­_sync_š™Ÿlize `LDAP_P (( 2273 ld­_sync_t * ls )); 2278 $LDAP_F ( ) 2279 ld­_sync_de¡roy `LDAP_P (( 2280 ld­_sync_t * ls , 2281  ä“™ )); 2286 $LDAP_F ( ) 2287 ld­_sync_š™ `LDAP_P (( 2288 ld­_sync_t * ls , 2289  mode )); 2294 $LDAP_F ( ) 2295 ld­_sync_š™_»äesh_Úly `LDAP_P (( 2296 ld­_sync_t * ls )); 2301 $LDAP_F ( ) 2302 ld­_sync_š™_»äesh_ªd_³rsi¡ `LDAP_P (( 2303 ld­_sync_t * ls )); 2308 $LDAP_F ( ) 2309 ld­_sync_pÞl `LDAP_P (( 2310 ld­_sync_t * ls )); 2312 #ifdeà LDAP_CONTROL_X_SESSION_TRACKING 2317 $LDAP_F ( ) 2318 ld­_ü—‹_£ssiÚ_Œackšg_v®ue `LDAP_P (( 2319 LDAP * ld , 2320 * £ssiÚSourûIp , 2321 * £ssiÚSourûName , 2322 * fÜm©OID , 2323  b”v® * £ssiÚT¿ckšgId’tif›r , 2324  b”v® * v®ue )); 2326 $LDAP_F ( ) 2327 ld­_ü—‹_£ssiÚ_Œackšg `LDAP_P (( 2328 LDAP * ld , 2329 * £ssiÚSourûIp , 2330 * £ssiÚSourûName , 2331 * fÜm©OID , 2332  b”v® * £ssiÚT¿ckšgId’tif›r , 2333 LDAPCÚŒÞ ** ù¾p )); 2335 $LDAP_F ( ) 2336 ld­_·r£_£ssiÚ_Œackšg_cÚŒÞ `LDAP_P (( 2337 LDAP * ld , 2338 LDAPCÚŒÞ * ù¾ , 2339  b”v® * , 2340  b”v® * Çme , 2341  b”v® * oid , 2342  b”v® * id )); 2349  #LDAP_AUTH_NTLM_REQUEST (( b”_g_t è0x8aU) ) 2350  #LDAP_AUTH_NTLM_RESPONSE (( b”_g_t è0x8bU) ) 2351 $LDAP_F ( ) 2352 ld­_Álm_bšd `LDAP_P (( 2353 LDAP * ld , 2354 LDAP_CONST * dn , 2355 b”_g_t g , 2356  b”v® * üed , 2357 LDAPCÚŒÞ ** sù¾s , 2358 LDAPCÚŒÞ ** cù¾s , 2359 * msgidp )); 2360 $LDAP_F ( ) 2361 ld­_·r£_Álm_bšd_»suÉ `LDAP_P (( 2362 LDAP * ld , 2363 LDAPMes§ge * »s , 2364  b”v® * ch®Ënge )); 2366 LDAP_END_DECL @/usr/include/limits.h 24 #iâdeà _LIBC_LIMITS_H_ 25  #_LIBC_LIMITS_H_ 1 ) 27  ~<ã©u»s.h > 33  #MB_LEN_MAX 16 ) 38 #ià! defšed __GNUC__ || __GNUC__ < 2 43 #iâdeà _LIMITS_H 44  #_LIMITS_H 1 ) 46  ~ 55  #CHAR_BIT 8 ) 58  #SCHAR_MIN (-128) ) 59  #SCHAR_MAX 127 ) 62  #UCHAR_MAX 255 ) 65 #ifdeà __CHAR_UNSIGNED__ 66  #CHAR_MIN 0 ) 67  #CHAR_MAX UCHAR_MAX ) 69  #CHAR_MIN SCHAR_MIN ) 70  #CHAR_MAX SCHAR_MAX ) 74  #SHRT_MIN (-32768) ) 75  #SHRT_MAX 32767 ) 78  #USHRT_MAX 65535 ) 81  #INT_MIN (- INT_MAX - 1) ) 82  #INT_MAX 2147483647 ) 85  #UINT_MAX 4294967295U ) 88 #ià __WORDSIZE == 64 89  #LONG_MAX 9223372036854775807L ) 91  #LONG_MAX 2147483647L ) 93  #LONG_MIN (- LONG_MAX - 1L) ) 96 #ià __WORDSIZE == 64 97  #ULONG_MAX 18446744073709551615UL ) 99  #ULONG_MAX 4294967295UL ) 102 #ifdeà __USE_ISOC99 105  #LLONG_MAX 9223372036854775807LL ) 106  #LLONG_MIN (- LLONG_MAX - 1LL) ) 109  #ULLONG_MAX 18446744073709551615ULL ) 123 #ià defšed __GNUC__ && !defšed _GCC_LIMITS_H_ 125 #šþude_Ãxˆ< lim™s . h > 131 #ià defšed __USE_ISOC99 && defšed __GNUC__ 132 #iâdeà LLONG_MIN 133  #LLONG_MIN (- LLONG_MAX -1) ) 135 #iâdeà LLONG_MAX 136  #LLONG_MAX __LONG_LONG_MAX__ ) 138 #iâdeà ULLONG_MAX 139  #ULLONG_MAX ( LLONG_MAX * 2ULL + 1) ) 143 #ifdef __USE_POSIX 145  ~ 148 #ifdef __USE_POSIX2 149  ~ 152 #ifdef __USE_XOPEN 153  ~ @/usr/include/locale.h 23 #iâdef _LOCALE_H 24  #_LOCALE_H 1 ) 26  ~<ã©u»s.h > 28  #__Ãed_NULL ) 29  ~<¡ddef.h > 30  ~ 32 g__BEGIN_DECLS 36  #LC_CTYPE __LC_CTYPE ) 37  #LC_NUMERIC __LC_NUMERIC ) 38  #LC_TIME __LC_TIME ) 39  #LC_COLLATE __LC_COLLATE ) 40  #LC_MONETARY __LC_MONETARY ) 41  #LC_MESSAGES __LC_MESSAGES ) 42  #LC_ALL __LC_ALL ) 43  #LC_PAPER __LC_PAPER ) 44  #LC_NAME __LC_NAME ) 45  #LC_ADDRESS __LC_ADDRESS ) 46  #LC_TELEPHONE __LC_TELEPHONE ) 47  #LC_MEASUREMENT __LC_MEASUREMENT ) 48  #LC_IDENTIFICATION __LC_IDENTIFICATION ) 51 __BEGIN_NAMESPACE_STD 54  slcÚv 58 * mdecim®_pošt ; 59 * mthou§nds_£p ; 65 * mgroupšg ; 71 * mšt_cu¼_symbÞ ; 72 * mcu¼’cy_symbÞ ; 73 * mmÚ_decim®_pošt ; 74 * mmÚ_thou§nds_£p ; 75 * mmÚ_groupšg ; 76 * mpos™ive_sign ; 77 * mÃg©ive_sign ; 78  mšt_äac_dig™s ; 79  mäac_dig™s ; 81  mp_cs_´eûdes ; 83  mp_£p_by_¥aû ; 85  mn_cs_´eûdes ; 87  mn_£p_by_¥aû ; 94  mp_sign_po¢ ; 95  mn_sign_po¢ ; 96 #ifdeà __USE_ISOC99 98  mšt_p_cs_´eûdes ; 100  mšt_p_£p_by_¥aû ; 102  mšt_n_cs_´eûdes ; 104  mšt_n_£p_by_¥aû ; 111  mšt_p_sign_po¢ ; 112  mšt_n_sign_po¢ ; 114  m__št_p_cs_´eûdes ; 115  m__št_p_£p_by_¥aû ; 116  m__št_n_cs_´eûdes ; 117  m__št_n_£p_by_¥aû ; 118  m__št_p_sign_po¢ ; 119  m__št_n_sign_po¢ ; 125 * $£ŽoÿË ( __ÿ‹gÜy , __cÚ¡ * __loÿË è __THROW ; 128  lcÚv * $loÿËcÚv (è __THROW ; 130 __END_NAMESPACE_STD 133 #ifdef __USE_GNU 146  ~ 148  __loÿË_t tloÿË_t ; 154 __loÿË_t $ÃwloÿË ( __ÿ‹gÜy_mask , __cÚ¡ * __loÿË , 155 __loÿË_t __ba£ è __THROW ; 161  #LC_CTYPE_MASK (1 << __LC_CTYPE ) ) 162  #LC_NUMERIC_MASK (1 << __LC_NUMERIC ) ) 163  #LC_TIME_MASK (1 << __LC_TIME ) ) 164  #LC_COLLATE_MASK (1 << __LC_COLLATE ) ) 165  #LC_MONETARY_MASK (1 << __LC_MONETARY ) ) 166  #LC_MESSAGES_MASK (1 << __LC_MESSAGES ) ) 167  #LC_PAPER_MASK (1 << __LC_PAPER ) ) 168  #LC_NAME_MASK (1 << __LC_NAME ) ) 169  #LC_ADDRESS_MASK (1 << __LC_ADDRESS ) ) 170  #LC_TELEPHONE_MASK (1 << __LC_TELEPHONE ) ) 171  #LC_MEASUREMENT_MASK (1 << __LC_MEASUREMENT ) ) 172  #LC_IDENTIFICATION_MASK (1 << __LC_IDENTIFICATION ) ) 173  #LC_ALL_MASK ( LC_CTYPE_MASK \ 174 | LC_NUMERIC_MASK \ 175 | LC_TIME_MASK \ 176 | LC_COLLATE_MASK \ 177 | LC_MONETARY_MASK \ 178 | LC_MESSAGES_MASK \ 179 | LC_PAPER_MASK \ 180 | LC_NAME_MASK \ 181 | LC_ADDRESS_MASK \ 182 | LC_TELEPHONE_MASK \ 183 | LC_MEASUREMENT_MASK \ 184 | LC_IDENTIFICATION_MASK \ 185 ) ) 189 __loÿË_t $du¶oÿË ( __loÿË_t __d©a£t è __THROW ; 193  $ä“loÿË ( __loÿË_t __d©a£t è __THROW ; 200 __loÿË_t $u£loÿË ( __loÿË_t __d©a£t è __THROW ; 204  #LC_GLOBAL_LOCALE (( __loÿË_t è-1L) ) 208 __END_DECLS @/usr/include/netdb.h 23 #iâdef _NETDB_H 24  #_NETDB_H 1 ) 26  ~<ã©u»s.h > 28  ~<Ãtš‘/š.h > 29  ~<¡dšt.h > 30 #ifdeà __USE_MISC 33  ~<½c/Ãtdb.h > 36 #ifdeà __USE_GNU 37  #__Ãed_sigev’t_t ) 38  ~ 39  #__Ãed_time¥ec ) 40  ~ 43  ~ 46  #_PATH_HEQUIV "/‘c/ho¡s.equiv" ) 47  #_PATH_HOSTS "/‘c/ho¡s" ) 48  #_PATH_NETWORKS "/‘c/ÃtwÜks" ) 49  #_PATH_NSSWITCH_CONF "/‘c/nssw™ch.cÚf" ) 50  #_PATH_PROTOCOLS "/‘c/´ÙocÞs" ) 51  #_PATH_SERVICES "/‘c/£rviûs" ) 54 g__BEGIN_DECLS 58  #h_”ºo (* `__h_”ºo_loÿtiÚ ()) ) 61 * $__h_”ºo_loÿtiÚ (è __THROW `__©Œibu‹__ (( __cÚ¡__ )); 65  #NETDB_INTERNAL -1 ) 66  #NETDB_SUCCESS 0 ) 67  #HOST_NOT_FOUND 1 ) 68  #TRY_AGAIN 2 ) 70  #NO_RECOVERY 3 ) 72  #NO_DATA 4 ) 74  #NO_ADDRESS NO_DATA ) 76 #ifdeà __USE_XOPEN2K 78  #IPPORT_RESERVED 1024 ) 81 #ifdeà __USE_GNU 83  #SCOPE_DELIMITER '%' ) 88  $h”rÜ ( __cÚ¡ * __¡r è __THROW ; 91 __cÚ¡ * $h¡»¼Ü ( __”r_num è __THROW ; 96  sho¡’t 98 * h_Çme ; 99 ** h_®Ÿ£s ; 100  h_add¹y³ ; 101  h_Ëngth ; 102 ** h_addr_li¡ ; 103  #h_addr h_addr_li¡ [0] ) 111  `£tho¡’t ( __¡ay_Ý’ ); 117  `’dho¡’t (); 124  ho¡’t * `g‘ho¡’t (); 131  ho¡’t * `g‘ho¡byaddr ( __cÚ¡ * __addr , __sockËn_t __Ën , 132  __ty³ ); 138  ho¡’t * `g‘ho¡byÇme ( __cÚ¡ * __Çme ); 140 #ifdeà __USE_MISC 149  ho¡’t * `g‘ho¡byÇme2 ( __cÚ¡ * __Çme ,  __af ); 161  `g‘ho¡’t_r ( ho¡’t * __»¡riù __»suÉ_buf , 162 * __»¡riù __buf , size_t __buæ’ , 163  ho¡’t ** __»¡riù __»suÉ , 164 * __»¡riù __h_”ºÝ ); 166  `g‘ho¡byaddr_r ( __cÚ¡ * __»¡riù __addr , __sockËn_t __Ën , 167  __ty³ , 168  ho¡’t * __»¡riù __»suÉ_buf , 169 * __»¡riù __buf , size_t __buæ’ , 170  ho¡’t ** __»¡riù __»suÉ , 171 * __»¡riù __h_”ºÝ ); 173  `g‘ho¡byÇme_r ( __cÚ¡ * __»¡riù __Çme , 174  ho¡’t * __»¡riù __»suÉ_buf , 175 * __»¡riù __buf , size_t __buæ’ , 176  ho¡’t ** __»¡riù __»suÉ , 177 * __»¡riù __h_”ºÝ ); 179  `g‘ho¡byÇme2_r ( __cÚ¡ * __»¡riù __Çme ,  __af , 180  ho¡’t * __»¡riù __»suÉ_buf , 181 * __»¡riù __buf , size_t __buæ’ , 182  ho¡’t ** __»¡riù __»suÉ , 183 * __»¡riù __h_”ºÝ ); 192  `£Š‘’t ( __¡ay_Ý’ ); 198  `’dËÁ (); 205  ËÁ * `g‘ËÁ (); 212  ËÁ * `g‘Ãtbyaddr ( ušt32_t __Ãt ,  __ty³ ); 218  ËÁ * `g‘ÃtbyÇme ( __cÚ¡ * __Çme ); 220 #ifdef __USE_MISC 231  `g‘ËÁ_r ( ËÁ * __»¡riù __»suÉ_buf , 232 * __»¡riù __buf , size_t __buæ’ , 233  ËÁ ** __»¡riù __»suÉ , 234 * __»¡riù __h_”ºÝ ); 236  `g‘Ãtbyaddr_r ( ušt32_t __Ãt ,  __ty³ , 237  ËÁ * __»¡riù __»suÉ_buf , 238 * __»¡riù __buf , size_t __buæ’ , 239  ËÁ ** __»¡riù __»suÉ , 240 * __»¡riù __h_”ºÝ ); 242  `g‘ÃtbyÇme_r ( __cÚ¡ * __»¡riù __Çme , 243  ËÁ * __»¡riù __»suÉ_buf , 244 * __»¡riù __buf , size_t __buæ’ , 245  ËÁ ** __»¡riù __»suÉ , 246 * __»¡riù __h_”ºÝ ); 251  s£rv’t 253 * s_Çme ; 254 ** s_®Ÿ£s ; 255  s_pÜt ; 256 * s_´Ùo ; 264  `£t£rv’t ( __¡ay_Ý’ ); 270  `’d£rv’t (); 277  £rv’t * `g‘£rv’t (); 284  £rv’t * `g‘£rvbyÇme ( __cÚ¡ * __Çme , 285 __cÚ¡ * __´Ùo ); 292  £rv’t * `g‘£rvbypÜt ( __pÜt , __cÚ¡ * __´Ùo ); 295 #ifdef __USE_MISC 303  `g‘£rv’t_r ( £rv’t * __»¡riù __»suÉ_buf , 304 * __»¡riù __buf , size_t __buæ’ , 305  £rv’t ** __»¡riù __»suÉ ); 307  `g‘£rvbyÇme_r ( __cÚ¡ * __»¡riù __Çme , 308 __cÚ¡ * __»¡riù __´Ùo , 309  £rv’t * __»¡riù __»suÉ_buf , 310 * __»¡riù __buf , size_t __buæ’ , 311  £rv’t ** __»¡riù __»suÉ ); 313  `g‘£rvbypÜt_r ( __pÜt , __cÚ¡ * __»¡riù __´Ùo , 314  £rv’t * __»¡riù __»suÉ_buf , 315 * __»¡riù __buf , size_t __buæ’ , 316  £rv’t ** __»¡riù __»suÉ ); 321  s´ÙÛÁ 323 * p_Çme ; 324 ** p_®Ÿ£s ; 325  p_´Ùo ; 333  `£rÙÛÁ ( __¡ay_Ý’ ); 339  `’d´ÙÛÁ (); 346  ´ÙÛÁ * `g‘´ÙÛÁ (); 352  ´ÙÛÁ * `g‘´ÙobyÇme ( __cÚ¡ * __Çme ); 358  ´ÙÛÁ * `g‘´Ùobynumb” ( __´Ùo ); 361 #ifdef __USE_MISC 369  `g‘´ÙÛÁ_r ( ´ÙÛÁ * __»¡riù __»suÉ_buf , 370 * __»¡riù __buf , size_t __buæ’ , 371  ´ÙÛÁ ** __»¡riù __»suÉ ); 373  `g‘´ÙobyÇme_r ( __cÚ¡ * __»¡riù __Çme , 374  ´ÙÛÁ * __»¡riù __»suÉ_buf , 375 * __»¡riù __buf , size_t __buæ’ , 376  ´ÙÛÁ ** __»¡riù __»suÉ ); 378  `g‘´Ùobynumb”_r ( __´Ùo , 379  ´ÙÛÁ * __»¡riù __»suÉ_buf , 380 * __»¡riù __buf , size_t __buæ’ , 381  ´ÙÛÁ ** __»¡riù __»suÉ ); 390  `£Š‘g»Á ( __cÚ¡ * __Ãtgroup ); 398  `’dÃtg»Á (); 407  `g‘Ãtg»Á (** __»¡riù __ho¡p , 408 ** __»¡riù __u£½ , 409 ** __»¡riù __domašp ); 418  `šÃtgr ( __cÚ¡ * __Ãtgroup , __cÚ¡ * __ho¡ , 419 __cÚ¡ * __u£r , __cÚ¡ * domaš ); 427  `g‘Ãtg»Á_r (** __»¡riù __ho¡p , 428 ** __»¡riù __u£½ , 429 ** __»¡riù __domašp , 430 * __»¡riù __bufãr , size_t __buæ’ ); 434 #ifdeà __USE_BSD 446  `rcmd (** __»¡riù __aho¡ ,  __½Üt , 447 __cÚ¡ * __»¡riù __locu£r , 448 __cÚ¡ * __»¡riù __»mu£r , 449 __cÚ¡ * __»¡riù __cmd , *__»¡riù __fd2p ); 458  `rcmd_af (** __»¡riù __aho¡ ,  __½Üt , 459 __cÚ¡ * __»¡riù __locu£r , 460 __cÚ¡ * __»¡riù __»mu£r , 461 __cÚ¡ * __»¡riù __cmd , *__»¡riù __fd2p , 462 §_çmžy_t __af ); 474  `»xec (** __»¡riù __aho¡ ,  __½Üt , 475 __cÚ¡ * __»¡riù __Çme , 476 __cÚ¡ * __»¡riù __·ss , 477 __cÚ¡ * __»¡riù __cmd , *__»¡riù __fd2p ); 486  `»xec_af (** __»¡riù __aho¡ ,  __½Üt , 487 __cÚ¡ * __»¡riù __Çme , 488 __cÚ¡ * __»¡riù __·ss , 489 __cÚ¡ * __»¡riù __cmd , *__»¡riù __fd2p , 490 §_çmžy_t __af ); 500  `ru£rok ( __cÚ¡ * __rho¡ ,  __su£r , 501 __cÚ¡ * __»mu£r , __cÚ¡ * __locu£r ); 510  `ru£rok_af ( __cÚ¡ * __rho¡ ,  __su£r , 511 __cÚ¡ * __»mu£r , __cÚ¡ * __locu£r , 512 §_çmžy_t __af ); 522  `¼esvpÜt (* __®pÜt ); 531  `¼esvpÜt_af (* __®pÜt , §_çmžy_t __af ); 536 #ifdef __USE_POSIX 538  saddršfo 540  ai_æags ; 541  ai_çmžy ; 542  ai_sockty³ ; 543  ai_´ÙocÞ ; 544 sockËn_t ai_add¾’ ; 545  sockaddr * ai_addr ; 546 * ai_ÿnÚÇme ; 547  addršfo * ai_Ãxt ; 550 #ifdeà __USE_GNU 552  sgaicb 554 cÚ¡ * ¬_Çme ; 555 cÚ¡ * ¬_£rviû ; 556 cÚ¡  addršfo * ¬_»que¡ ; 557  addršfo * ¬_»suÉ ; 559  __»tuº ; 560  __unu£d [5]; 564  #GAI_WAIT 0 ) 565  #GAI_NOWAIT 1 ) 569  #AI_PASSIVE 0x0001 ) 570  #AI_CANONNAME 0x0002 ) 571  #AI_NUMERICHOST 0x0004 ) 572  #AI_V4MAPPED 0x0008 ) 573  #AI_ALL 0x0010 ) 574  #AI_ADDRCONFIG 0x0020 ) 576 #ifdeà __USE_GNU 577  #AI_IDN 0x0040 ) 580  #AI_CANONIDN 0x0080 ) 581  #AI_IDN_ALLOW_UNASSIGNED 0x0100 ) 583  #AI_IDN_USE_STD3_ASCII_RULES 0x0200 ) 586  #AI_NUMERICSERV 0x0400 ) 589  #EAI_BADFLAGS -1 ) 590  #EAI_NONAME -2 ) 591  #EAI_AGAIN -3 ) 592  #EAI_FAIL -4 ) 593  #EAI_NODATA -5 ) 594  #EAI_FAMILY -6 ) 595  #EAI_SOCKTYPE -7 ) 596  #EAI_SERVICE -8 ) 597  #EAI_ADDRFAMILY -9 ) 598  #EAI_MEMORY -10 ) 599  #EAI_SYSTEM -11 ) 600  #EAI_OVERFLOW -12 ) 601 #ifdeà __USE_GNU 602  #EAI_INPROGRESS -100 ) 603  #EAI_CANCELED -101 ) 604  #EAI_NOTCANCELED -102 ) 605  #EAI_ALLDONE -103 ) 606  #EAI_INTR -104 ) 607  #EAI_IDN_ENCODE -105 ) 610  #NI_MAXHOST 1025 ) 611  #NI_MAXSERV 32 ) 613  #NI_NUMERICHOST 1 ) 614  #NI_NUMERICSERV 2 ) 615  #NI_NOFQDN 4 ) 616  #NI_NAMEREQD 8 ) 617  #NI_DGRAM 16 ) 618 #ifdeà __USE_GNU 619  #NI_IDN 32 ) 620  #NI_IDN_ALLOW_UNASSIGNED 64 ) 622  #NI_IDN_USE_STD3_ASCII_RULES 128 ) 631  `g‘addršfo ( __cÚ¡ * __»¡riù __Çme , 632 __cÚ¡ * __»¡riù __£rviû , 633 __cÚ¡  addršfo * __»¡riù __»q , 634  addršfo ** __»¡riù __·i ); 637  $ä“addršfo ( addršfo * __ai è __THROW ; 640 __cÚ¡ * $gai_¡»¼Ü ( __ecode è __THROW ; 646  `g‘Çmešfo ( __cÚ¡  sockaddr * __»¡riù __§ , 647 sockËn_t __§Ën , * __»¡riù __ho¡ , 648 sockËn_t __ho¡Ën , * __»¡riù __£rv , 649 sockËn_t __£rvËn ,  __æags ); 652 #ifdeà __USE_GNU 661  `g‘addršfo_a ( __mode ,  gaicb * __li¡ [ __»¡riù_¬r ], 662  __’t ,  sigev’t * __»¡riù __sig ); 672  `gai_su¥’d ( __cÚ¡  gaicb *__cÚ¡ __li¡ [],  __’t , 673 __cÚ¡  time¥ec * __timeout ); 676  $gai_”rÜ ( gaicb * __»q è __THROW ; 679  $gai_ÿnûl ( gaicb * __gaicbp è __THROW ; 682 __END_DECLS @/usr/include/netinet/in.h 20 #iâdef _NETINET_IN_H 21  #_NETINET_IN_H 1 ) 23  ~<ã©u»s.h > 24  ~<¡dšt.h > 25  ~ 26  ~ 29 __BEGIN_DECLS 34 mIPPROTO_IP = 0, 35  #IPPROTO_IP IPPROTO_IP ) 36 mIPPROTO_HOPOPTS = 0, 37  #IPPROTO_HOPOPTS IPPROTO_HOPOPTS ) 38 mIPPROTO_ICMP = 1, 39  #IPPROTO_ICMP IPPROTO_ICMP ) 40 mIPPROTO_IGMP = 2, 41  #IPPROTO_IGMP IPPROTO_IGMP ) 42 mIPPROTO_IPIP = 4, 43  #IPPROTO_IPIP IPPROTO_IPIP ) 44 mIPPROTO_TCP = 6, 45  #IPPROTO_TCP IPPROTO_TCP ) 46 mIPPROTO_EGP = 8, 47  #IPPROTO_EGP IPPROTO_EGP ) 48 mIPPROTO_PUP = 12, 49  #IPPROTO_PUP IPPROTO_PUP ) 50 mIPPROTO_UDP = 17, 51  #IPPROTO_UDP IPPROTO_UDP ) 52 mIPPROTO_IDP = 22, 53  #IPPROTO_IDP IPPROTO_IDP ) 54 mIPPROTO_TP = 29, 55  #IPPROTO_TP IPPROTO_TP ) 56 mIPPROTO_IPV6 = 41, 57  #IPPROTO_IPV6 IPPROTO_IPV6 ) 58 mIPPROTO_ROUTING = 43, 59  #IPPROTO_ROUTING IPPROTO_ROUTING ) 60 mIPPROTO_FRAGMENT = 44, 61  #IPPROTO_FRAGMENT IPPROTO_FRAGMENT ) 62 mIPPROTO_RSVP = 46, 63  #IPPROTO_RSVP IPPROTO_RSVP ) 64 mIPPROTO_GRE = 47, 65  #IPPROTO_GRE IPPROTO_GRE ) 66 mIPPROTO_ESP = 50, 67  #IPPROTO_ESP IPPROTO_ESP ) 68 mIPPROTO_AH = 51, 69  #IPPROTO_AH IPPROTO_AH ) 70 mIPPROTO_ICMPV6 = 58, 71  #IPPROTO_ICMPV6 IPPROTO_ICMPV6 ) 72 mIPPROTO_NONE = 59, 73  #IPPROTO_NONE IPPROTO_NONE ) 74 mIPPROTO_DSTOPTS = 60, 75  #IPPROTO_DSTOPTS IPPROTO_DSTOPTS ) 76 mIPPROTO_MTP = 92, 77  #IPPROTO_MTP IPPROTO_MTP ) 78 mIPPROTO_ENCAP = 98, 79  #IPPROTO_ENCAP IPPROTO_ENCAP ) 80 mIPPROTO_PIM = 103, 81  #IPPROTO_PIM IPPROTO_PIM ) 82 mIPPROTO_COMP = 108, 83  #IPPROTO_COMP IPPROTO_COMP ) 84 mIPPROTO_SCTP = 132, 85  #IPPROTO_SCTP IPPROTO_SCTP ) 86 mIPPROTO_RAW = 255, 87  #IPPROTO_RAW IPPROTO_RAW ) 88 mIPPROTO_MAX 93  ušt16_t tš_pÜt_t ; 98 mIPPORT_ECHO = 7, 99 mIPPORT_DISCARD = 9, 100 mIPPORT_SYSTAT = 11, 101 mIPPORT_DAYTIME = 13, 102 mIPPORT_NETSTAT = 15, 103 mIPPORT_FTP = 21, 104 mIPPORT_TELNET = 23, 105 mIPPORT_SMTP = 25, 106 mIPPORT_TIMESERVER = 37, 107 mIPPORT_NAMESERVER = 42, 108 mIPPORT_WHOIS = 43, 109 mIPPORT_MTP = 57, 111 mIPPORT_TFTP = 69, 112 mIPPORT_RJE = 77, 113 mIPPORT_FINGER = 79, 114 mIPPORT_TTYLINK = 87, 115 mIPPORT_SUPDUP = 95, 118 mIPPORT_EXECSERVER = 512, 119 mIPPORT_LOGINSERVER = 513, 120 mIPPORT_CMDSERVER = 514, 121 mIPPORT_EFSSERVER = 520, 124 mIPPORT_BIFFUDP = 512, 125 mIPPORT_WHOSERVER = 513, 126 mIPPORT_ROUTESERVER = 520, 129 mIPPORT_RESERVED = 1024, 132 mIPPORT_USERRESERVED = 5000 137  ušt32_t tš_addr_t ; 138  sš_addr 140 š_addr_t ms_addr ; 149  #IN_CLASSA ( a è(((( š_addr_t )×)è& 0x80000000è=ð0) ) 150  #IN_CLASSA_NET 0xff000000 ) 151  #IN_CLASSA_NSHIFT 24 ) 152  #IN_CLASSA_HOST (0xfffffffà& ~ IN_CLASSA_NET ) ) 153  #IN_CLASSA_MAX 128 ) 155  #IN_CLASSB ( a è(((( š_addr_t )×)è& 0xc0000000è=ð0x80000000) ) 156  #IN_CLASSB_NET 0xffff0000 ) 157  #IN_CLASSB_NSHIFT 16 ) 158  #IN_CLASSB_HOST (0xfffffffà& ~ IN_CLASSB_NET ) ) 159  #IN_CLASSB_MAX 65536 ) 161  #IN_CLASSC ( a è(((( š_addr_t )×)è& 0xe0000000è=ð0xc0000000) ) 162  #IN_CLASSC_NET 0xffffff00 ) 163  #IN_CLASSC_NSHIFT 8 ) 164  #IN_CLASSC_HOST (0xfffffffà& ~ IN_CLASSC_NET ) ) 166  #IN_CLASSD ( a è(((( š_addr_t )×)è& 0xf0000000è=ð0xe0000000) ) 167  #IN_MULTICAST ( a è `IN_CLASSD ×) ) 169  #IN_EXPERIMENTAL ( a è(((( š_addr_t )×)è& 0xe0000000è=ð0xe0000000) ) 170  #IN_BADCLASS ( a è(((( š_addr_t )×)è& 0xf0000000è=ð0xf0000000) ) 173  #INADDR_ANY (( š_addr_t è0x00000000) ) 175  #INADDR_BROADCAST (( š_addr_t è0xffffffff) ) 177  #INADDR_NONE (( š_addr_t è0xffffffff) ) 180  #IN_LOOPBACKNET 127 ) 182 #iâdeà INADDR_LOOPBACK 183  #INADDR_LOOPBACK (( š_addr_t è0x7f000001è ) 187  #INADDR_UNSPEC_GROUP (( š_addr_t è0xe0000000è ) 188  #INADDR_ALLHOSTS_GROUP (( š_addr_t è0xe0000001è ) 189  #INADDR_ALLRTRS_GROUP (( š_addr_t è0xe0000002è ) 190  #INADDR_MAX_LOCAL_GROUP (( š_addr_t è0xe00000ffè ) 194  sš6_addr 198 ušt8_t mu6_addr8 [16]; 199 ušt16_t mu6_addr16 [8]; 200 ušt32_t mu6_addr32 [4]; 201 } mš6_u ; 202  #s6_addr š6_u . u6_addr8 ) 203  #s6_addr16 š6_u . u6_addr16 ) 204  #s6_addr32 š6_u . u6_addr32 ) 207 cÚ¡  š6_addr š6addr_ªy ; 208 cÚ¡  š6_addr š6addr_loÝback ; 209  #IN6ADDR_ANY_INIT { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } } } ) 210  #IN6ADDR_LOOPBACK_INIT { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } } } ) 212  #INET_ADDRSTRLEN 16 ) 213  #INET6_ADDRSTRLEN 46 ) 217  ssockaddr_š 219 __SOCKADDR_COMMON ( sš_ ); 220 š_pÜt_t msš_pÜt ; 221  š_addr msš_addr ; 224  msš_z”o [ ( sockaddr ) - 225 __SOCKADDR_COMMON_SIZE - 226  ( š_pÜt_t ) - 227  ( š_addr )]; 231  ssockaddr_š6 233 __SOCKADDR_COMMON ( sš6_ ); 234 š_pÜt_t msš6_pÜt ; 235 ušt32_t msš6_æowšfo ; 236  š6_addr msš6_addr ; 237 ušt32_t msš6_scÝe_id ; 242  s_m»q 245  š_addr mimr_muÉŸddr ; 248  š_addr mimr_š‹rçû ; 251  s_m»q_sourû 254  š_addr mimr_muÉŸddr ; 257  š_addr mimr_š‹rçû ; 260  š_addr mimr_sourûaddr ; 264  sv6_m»q 267  š6_addr mv6mr_muÉŸddr ; 270  mv6mr_š‹rçû ; 275  sgroup_»q 278 ušt32_t mgr_š‹rçû ; 281  sockaddr_¡Üage mgr_group ; 284  sgroup_sourû_»q 287 ušt32_t mg¤_š‹rçû ; 290  sockaddr_¡Üage mg¤_group ; 293  sockaddr_¡Üage mg¤_sourû ; 298  s_msfž‹r 301  š_addr mimsf_muÉŸddr ; 304  š_addr mimsf_š‹rçû ; 307 ušt32_t mimsf_fmode ; 310 ušt32_t mimsf_num¤c ; 312  š_addr mimsf_¦i¡ [1]; 315  #IP_MSFILTER_SIZE ( num¤c è( ( _msfž‹r ) \ 316 -  ( š_addr ) \ 317 + ( num¤c è*  ( š_addr )) ) 319  sgroup_fž‹r 322 ušt32_t mgf_š‹rçû ; 325  sockaddr_¡Üage mgf_group ; 328 ušt32_t mgf_fmode ; 331 ušt32_t mgf_num¤c ; 333  sockaddr_¡Üage mgf_¦i¡ [1]; 336  #GROUP_FILTER_SIZE ( num¤c è( ( group_fž‹r ) \ 337 -  ( sockaddr_¡Üage ) \ 338 + (( num¤c ) \ 339 *  ( sockaddr_¡Üage ))) ) 343  ~ 352 ušt32_t $Áohl ( ušt32_t __ÃŽÚg è __THROW `__©Œibu‹__ (( __cÚ¡__ )); 353 ušt16_t $Áohs ( ušt16_t __ÃtshÜt ) 354 __THROW `__©Œibu‹__ (( __cÚ¡__ )); 355 ušt32_t $htÚl ( ušt32_t __ho¡lÚg ) 356 __THROW `__©Œibu‹__ (( __cÚ¡__ )); 357 ušt16_t $htÚs ( ušt16_t __ho¡shÜt ) 358 __THROW `__©Œibu‹__ (( __cÚ¡__ )); 360  ~<’dŸn.h > 363  ~ 365 #ifdeà __OPTIMIZE__ 369 #ià __BYTE_ORDER =ð __BIG_ENDIAN 372  #Áohl ( x è(x) ) 373  #Áohs ( x è(x) ) 374  #htÚl ( x è(x) ) 375  #htÚs ( x è(x) ) 377 #ià __BYTE_ORDER =ð __LITTLE_ENDIAN 378  #Áohl ( x è `__bsw­_32 (x) ) 379  #Áohs ( x è `__bsw­_16 (x) ) 380  #htÚl ( x è `__bsw­_32 (x) ) 381  #htÚs ( x è `__bsw­_16 (x) ) 386  #IN6_IS_ADDR_UNSPECIFIED ( a ) \ 387 ((( __cÚ¡ ušt32_t *è( a ))[0] == 0 \ 388 && (( __cÚ¡ ušt32_t *è( a ))[1] == 0 \ 389 && (( __cÚ¡ ušt32_t *è( a ))[2] == 0 \ 390 && (( __cÚ¡ ušt32_t *è( a ))[3] =ð0) ) 392  #IN6_IS_ADDR_LOOPBACK ( a ) \ 393 ((( __cÚ¡ ušt32_t *è( a ))[0] == 0 \ 394 && (( __cÚ¡ ušt32_t *è( a ))[1] == 0 \ 395 && (( __cÚ¡ ušt32_t *è( a ))[2] == 0 \ 396 && (( __cÚ¡ ušt32_t *è( a ))[3] =ð `htÚl (1)) ) 398  #IN6_IS_ADDR_MULTICAST ( a è((( __cÚ¡ ušt8_t *è×))[0] =ð0xff) ) 400  #IN6_IS_ADDR_LINKLOCAL ( a ) \ 401 (((( __cÚ¡ ušt32_t *è( a ))[0] & `htÚl (0xffc00000)) \ 402 =ð `htÚl (0xã800000)) ) 404  #IN6_IS_ADDR_SITELOCAL ( a ) \ 405 (((( __cÚ¡ ušt32_t *è( a ))[0] & `htÚl (0xffc00000)) \ 406 =ð `htÚl (0xãc00000)) ) 408  #IN6_IS_ADDR_V4MAPPED ( a ) \ 409 (((( __cÚ¡ ušt32_t *è( a ))[0] == 0) \ 410 && ((( __cÚ¡ ušt32_t *è( a ))[1] == 0) \ 411 && ((( __cÚ¡ ušt32_t *è( a ))[2] =ð `htÚl (0xffff))) ) 413  #IN6_IS_ADDR_V4COMPAT ( a ) \ 414 (((( __cÚ¡ ušt32_t *è( a ))[0] == 0) \ 415 && ((( __cÚ¡ ušt32_t *è( a ))[1] == 0) \ 416 && ((( __cÚ¡ ušt32_t *è( a ))[2] == 0) \ 417 && ( `Áohl ((( __cÚ¡ ušt32_t *è( a ))[3]è> 1)) ) 419  #IN6_ARE_ADDR_EQUAL ( a , b ) \ 420 (((( __cÚ¡ ušt32_t *è( a ))[0] =ð((__cÚ¡ ušt32_ˆ*è( b ))[0]) \ 421 && ((( __cÚ¡ ušt32_t *è( a ))[1] =ð((__cÚ¡ ušt32_ˆ*è( b ))[1]) \ 422 && ((( __cÚ¡ ušt32_t *è( a ))[2] =ð((__cÚ¡ ušt32_ˆ*è( b ))[2]) \ 423 && ((( __cÚ¡ ušt32_t *è( a ))[3] =ð((__cÚ¡ ušt32_ˆ*è( b ))[3])) ) 426  $bšd»svpÜt ( __sockfd ,  sockaddr_š * __sock_š è __THROW ; 429  $bšd»svpÜt6 ( __sockfd ,  sockaddr_š6 * __sock_š ) 430 __THROW ; 433  #IN6_IS_ADDR_MC_NODELOCAL ( a ) \ 434 ( `IN6_IS_ADDR_MULTICAST ( a ) \ 435 && (((( __cÚ¡ ušt8_t *è( a ))[1] & 0xfè=ð0x1)) ) 437  #IN6_IS_ADDR_MC_LINKLOCAL ( a ) \ 438 ( `IN6_IS_ADDR_MULTICAST ( a ) \ 439 && (((( __cÚ¡ ušt8_t *è( a ))[1] & 0xfè=ð0x2)) ) 441  #IN6_IS_ADDR_MC_SITELOCAL ( a ) \ 442 ( `IN6_IS_ADDR_MULTICAST ( a ) \ 443 && (((( __cÚ¡ ušt8_t *è( a ))[1] & 0xfè=ð0x5)) ) 445  #IN6_IS_ADDR_MC_ORGLOCAL ( a ) \ 446 ( `IN6_IS_ADDR_MULTICAST ( a ) \ 447 && (((( __cÚ¡ ušt8_t *è( a ))[1] & 0xfè=ð0x8)) ) 449  #IN6_IS_ADDR_MC_GLOBAL ( a ) \ 450 ( `IN6_IS_ADDR_MULTICAST ( a ) \ 451 && (((( __cÚ¡ ušt8_t *è( a ))[1] & 0xfè=ð0xe)) ) 454  sš6_pktšfo 456  š6_addr i6_addr ; 457  i6_ifšdex ; 461  s6_mtušfo 463  sockaddr_š6 6m_addr ; 464 ušt32_t 6m_mtu ; 468 #ifdeà __USE_GNU 470  $š‘6_ÝtiÚ_¥aû ( __nby‹s ) 471 __THROW __©Œibu‹_d•»ÿ‹d__ ; 472  $š‘6_ÝtiÚ_š™ (* __bp ,  cmsghdr ** __cmsgp , 473  __ty³ è __THROW __©Œibu‹_d•»ÿ‹d__ ; 474  $š‘6_ÝtiÚ_­³nd ( cmsghdr * __cmsg , 475 __cÚ¡ ušt8_t * __ty³p ,  __muÉx , 476  __¶usy è __THROW __©Œibu‹_d•»ÿ‹d__ ; 477 ušt8_t * $š‘6_ÝtiÚ_®loc ( cmsghdr * __cmsg ,  __d©®’ , 478  __muÉx ,  __¶usy ) 479 __THROW __©Œibu‹_d•»ÿ‹d__ ; 480  $š‘6_ÝtiÚ_Ãxt ( __cÚ¡  cmsghdr * __cmsg , 481 ušt8_t ** __Œp ) 482 __THROW __©Œibu‹_d•»ÿ‹d__ ; 483  $š‘6_ÝtiÚ_fšd ( __cÚ¡  cmsghdr * __cmsg , 484 ušt8_t ** __Œp ,  __ty³ ) 485 __THROW __©Œibu‹_d•»ÿ‹d__ ; 489  $š‘6_Ýt_š™ (* __extbuf , sockËn_t __exŽ’ è __THROW ; 490  $š‘6_Ýt_­³nd (* __extbuf , sockËn_t __exŽ’ ,  __off£t , 491 ušt8_t __ty³ , sockËn_t __Ën , ušt8_ˆ __®ign , 492 ** __d©abuå è __THROW ; 493  $š‘6_Ýt_fšish (* __extbuf , sockËn_t __exŽ’ ,  __off£t ) 494 __THROW ; 495  $š‘6_Ýt_£t_v® (* __d©abuf ,  __off£t , * __v® , 496 sockËn_t __v®Ën è __THROW ; 497  $š‘6_Ýt_Ãxt (* __extbuf , sockËn_t __exŽ’ ,  __off£t , 498 ušt8_t * __ty³p , sockËn_t * __ËÅ , 499 ** __d©abuå è __THROW ; 500  $š‘6_Ýt_fšd (* __extbuf , sockËn_t __exŽ’ ,  __off£t , 501 ušt8_t __ty³ , sockËn_t * __ËÅ , 502 ** __d©abuå è __THROW ; 503  $š‘6_Ýt_g‘_v® (* __d©abuf ,  __off£t , * __v® , 504 sockËn_t __v®Ën è __THROW ; 508 sockËn_t $š‘6_¹h_¥aû ( __ty³ ,  __£gm’ts è __THROW ; 509 * $š‘6_¹h_š™ (* __bp , sockËn_t __bp_Ën ,  __ty³ , 510  __£gm’ts è __THROW ; 511  $š‘6_¹h_add (* __bp , __cÚ¡  š6_addr * __addr è __THROW ; 512  $š‘6_¹h_»v”£ ( __cÚ¡ * __š , * __out è __THROW ; 513  $š‘6_¹h_£gm’ts ( __cÚ¡ * __bp è __THROW ; 514  š6_addr * $š‘6_¹h_g‘addr ( __cÚ¡ * __bp ,  __šdex ) 515 __THROW ; 521  $g‘v4sourûfž‹r ( __s ,  š_addr __š‹rçû_addr , 522  š_addr __group , ušt32_t * __fmode , 523 ušt32_t * __num¤c ,  š_addr * __¦i¡ ) 524 __THROW ; 527  $£tv4sourûfž‹r ( __s ,  š_addr __š‹rçû_addr , 528  š_addr __group , ušt32_t __fmode , 529 ušt32_t __num¤c , 530 __cÚ¡  š_addr * __¦i¡ ) 531 __THROW ; 535  $g‘sourûfž‹r ( __s , ušt32_t __š‹rçû_addr , 536 __cÚ¡  sockaddr * __group , 537 sockËn_t __grou¶’ , ušt32_t * __fmode , 538 ušt32_t * __num¤c , 539  sockaddr_¡Üage * __¦i¡ è __THROW ; 542  $£tsourûfž‹r ( __s , ušt32_t __š‹rçû_addr , 543 __cÚ¡  sockaddr * __group , 544 sockËn_t __grou¶’ , ušt32_t __fmode , 545 ušt32_t __num¤c , 546 __cÚ¡  sockaddr_¡Üage * __¦i¡ è __THROW ; 549 __END_DECLS @/usr/include/netinet/tcp.h 32 #iâdeà _NETINET_TCP_H 33  #_NETINET_TCP_H 1 ) 35  ~<ã©u»s.h > 40  #TCP_NODELAY 1 ) 41  #TCP_MAXSEG 2 ) 42  #TCP_CORK 3 ) 43  #TCP_KEEPIDLE 4 ) 44  #TCP_KEEPINTVL 5 ) 45  #TCP_KEEPCNT 6 ) 46  #TCP_SYNCNT 7 ) 47  #TCP_LINGER2 8 ) 48  #TCP_DEFER_ACCEPT 9 ) 49  #TCP_WINDOW_CLAMP 10 ) 50  #TCP_INFO 11 ) 51  #TCP_QUICKACK 12 ) 52  #TCP_CONGESTION 13 ) 53  #TCP_MD5SIG 14 ) 55 #ifdeà __USE_MISC 56  ~ 57  ~ 59 #ifdeà __FAVOR_BSD 60  u_št32_t ttý_£q ; 65  stýhdr 67 u_št16_t mth_¥Üt ; 68 u_št16_t mth_dpÜt ; 69 tý_£q mth_£q ; 70 tý_£q mth_ack ; 71 #ià __BYTE_ORDER =ð __LITTLE_ENDIAN 72 u_št8_t mth_x2 :4; 73 u_št8_t mth_off :4; 75 #ià __BYTE_ORDER =ð __BIG_ENDIAN 76 u_št8_t mth_off :4; 77 u_št8_t mth_x2 :4; 79 u_št8_t mth_æags ; 80  #TH_FIN 0x01 ) 81  #TH_SYN 0x02 ) 82  #TH_RST 0x04 ) 83  #TH_PUSH 0x08 ) 84  #TH_ACK 0x10 ) 85  #TH_URG 0x20 ) 86 u_št16_t mth_wš ; 87 u_št16_t mth_sum ; 88 u_št16_t mth_u½ ; 92  stýhdr 94 u_št16_t msourû ; 95 u_št16_t mde¡ ; 96 u_št32_t m£q ; 97 u_št32_t mack_£q ; 98 #ià __BYTE_ORDER =ð __LITTLE_ENDIAN 99 u_št16_t m»s1 :4; 100 u_št16_t mdoff :4; 101 u_št16_t mfš :1; 102 u_št16_t msyn :1; 103 u_št16_t mr¡ :1; 104 u_št16_t mpsh :1; 105 u_št16_t mack :1; 106 u_št16_t murg :1; 107 u_št16_t m»s2 :2; 108 #–ià __BYTE_ORDER =ð __BIG_ENDIAN 109 u_št16_t mdoff :4; 110 u_št16_t m»s1 :4; 111 u_št16_t m»s2 :2; 112 u_št16_t murg :1; 113 u_št16_t mack :1; 114 u_št16_t mpsh :1; 115 u_št16_t mr¡ :1; 116 u_št16_t msyn :1; 117 u_št16_t mfš :1; 121 u_št16_t mwšdow ; 122 u_št16_t mcheck ; 123 u_št16_t murg_±r ; 129 mTCP_ESTABLISHED = 1, 130 mTCP_SYN_SENT , 131 mTCP_SYN_RECV , 132 mTCP_FIN_WAIT1 , 133 mTCP_FIN_WAIT2 , 134 mTCP_TIME_WAIT , 135 mTCP_CLOSE , 136 mTCP_CLOSE_WAIT , 137 mTCP_LAST_ACK , 138 mTCP_LISTEN , 139 mTCP_CLOSING 142  #TCPOPT_EOL 0 ) 143  #TCPOPT_NOP 1 ) 144  #TCPOPT_MAXSEG 2 ) 145  #TCPOLEN_MAXSEG 4 ) 146  #TCPOPT_WINDOW 3 ) 147  #TCPOLEN_WINDOW 3 ) 148  #TCPOPT_SACK_PERMITTED 4 ) 149  #TCPOLEN_SACK_PERMITTED 2 ) 150  #TCPOPT_SACK 5 ) 151  #TCPOPT_TIMESTAMP 8 ) 152  #TCPOLEN_TIMESTAMP 10 ) 153  #TCPOLEN_TSTAMP_APPA ( TCPOLEN_TIMESTAMP +2è ) 155  #TCPOPT_TSTAMP_HDR \ 156 ( TCPOPT_NOP <<24|TCPOPT_NOP<<16| TCPOPT_TIMESTAMP <<8| TCPOLEN_TIMESTAMP ) ) 164  #TCP_MSS 512 ) 166  #TCP_MAXWIN 65535 ) 168  #TCP_MAX_WINSHIFT 14 ) 170  #SOL_TCP 6 ) 173  #TCPI_OPT_TIMESTAMPS 1 ) 174  #TCPI_OPT_SACK 2 ) 175  #TCPI_OPT_WSCALE 4 ) 176  #TCPI_OPT_ECN 8 ) 179 etý_ÿ_¡©e 181 mTCP_CA_O³n = 0, 182 mTCP_CA_DisÜd” = 1, 183 mTCP_CA_CWR = 2, 184 mTCP_CA_Recov”y = 3, 185 mTCP_CA_Loss = 4 188  stý_šfo 190 u_št8_t mtýi_¡©e ; 191 u_št8_t mtýi_ÿ_¡©e ; 192 u_št8_t mtýi_»Œªsm™s ; 193 u_št8_t mtýi_´obes ; 194 u_št8_t mtýi_backoff ; 195 u_št8_t mtýi_ÝtiÚs ; 196 u_št8_t mtýi_¢d_wsÿË : 4, mtýi_rcv_wsÿË : 4; 198 u_št32_t mtýi_¹o ; 199 u_št32_t mtýi_©o ; 200 u_št32_t mtýi_¢d_mss ; 201 u_št32_t mtýi_rcv_mss ; 203 u_št32_t mtýi_uÇcked ; 204 u_št32_t mtýi_§cked ; 205 u_št32_t mtýi_lo¡ ; 206 u_št32_t mtýi_»Œªs ; 207 u_št32_t mtýi_çck‘s ; 210 u_št32_t mtýi_Ï¡_d©a_£Á ; 211 u_št32_t mtýi_Ï¡_ack_£Á ; 212 u_št32_t mtýi_Ï¡_d©a_»cv ; 213 u_št32_t mtýi_Ï¡_ack_»cv ; 216 u_št32_t mtýi_pmtu ; 217 u_št32_t mtýi_rcv_s¡h»sh ; 218 u_št32_t mtýi_¹t ; 219 u_št32_t mtýi_¹tv¬ ; 220 u_št32_t mtýi_¢d_s¡h»sh ; 221 u_št32_t mtýi_¢d_cwnd ; 222 u_št32_t mtýi_advmss ; 223 u_št32_t mtýi_»Üd”šg ; 225 u_št32_t mtýi_rcv_¹t ; 226 u_št32_t mtýi_rcv_¥aû ; 228 u_št32_t mtýi_tÙ®_»Œªs ; 233  #TCP_MD5SIG_MAXKEYLEN 80 ) 235  stý_md5sig 237  sockaddr_¡Üage mtým_addr ; 238 u_št16_t m__tým_·d1 ; 239 u_št16_t mtým_keyËn ; 240 u_št32_t m__tým_·d2 ; 241 u_št8_t mtým_key [ TCP_MD5SIG_MAXKEYLEN ]; @/usr/include/openssl/err.h 59 #iâdeà HEADER_ERR_H 60  #HEADER_ERR_H ) 62  ~<Ý’s¦/e_os2.h > 64 #iâdeà OPENSSL_NO_FP_API 65  ~<¡dio.h > 66  ~<¡dlib.h > 69  ~<Ý’s¦/os¦_typ.h > 70 #iâdeà OPENSSL_NO_BIO 71  ~<Ý’s¦/bio.h > 73 #iâdeà OPENSSL_NO_LHASH 74  ~<Ý’s¦/lhash.h > 77 #ifdef __ýlu¥lus 81 #iâdeà OPENSSL_NO_ERR 82  #ERR_PUT_”rÜ ( a , b , c , d , e è `ERR_put_”rÜ ×,b,c,d,e) ) 84  #ERR_PUT_”rÜ ( a , b , c , d , e è `ERR_put_”rÜ ×,b,c, NULL ,0) ) 87  ~<”ºo.h > 89  #ERR_TXT_MALLOCED 0x01 ) 90  #ERR_TXT_STRING 0x02 ) 92  #ERR_FLAG_MARK 0x01 ) 94  #ERR_NUM_ERRORS 16 ) 95  s”r_¡©e_¡ 97  pid ; 98  ”r_æags [ ERR_NUM_ERRORS ]; 99  ”r_bufãr [ ERR_NUM_ERRORS ]; 100 * ”r_d©a [ ERR_NUM_ERRORS ]; 101  ”r_d©a_æags [ ERR_NUM_ERRORS ]; 102 cÚ¡ * ”r_fže [ ERR_NUM_ERRORS ]; 103  ”r_lše [ ERR_NUM_ERRORS ]; 104  tÝ , bÙtom ; 105 } tERR_STATE ; 108  #ERR_LIB_NONE 1 ) 109  #ERR_LIB_SYS 2 ) 110  #ERR_LIB_BN 3 ) 111  #ERR_LIB_RSA 4 ) 112  #ERR_LIB_DH 5 ) 113  #ERR_LIB_EVP 6 ) 114  #ERR_LIB_BUF 7 ) 115  #ERR_LIB_OBJ 8 ) 116  #ERR_LIB_PEM 9 ) 117  #ERR_LIB_DSA 10 ) 118  #ERR_LIB_X509 11 ) 120  #ERR_LIB_ASN1 13 ) 121  #ERR_LIB_CONF 14 ) 122  #ERR_LIB_CRYPTO 15 ) 123  #ERR_LIB_EC 16 ) 124  #ERR_LIB_SSL 20 ) 130  #ERR_LIB_BIO 32 ) 131  #ERR_LIB_PKCS7 33 ) 132  #ERR_LIB_X509V3 34 ) 133  #ERR_LIB_PKCS12 35 ) 134  #ERR_LIB_RAND 36 ) 135  #ERR_LIB_DSO 37 ) 136  #ERR_LIB_ENGINE 38 ) 137  #ERR_LIB_OCSP 39 ) 138  #ERR_LIB_UI 40 ) 139  #ERR_LIB_COMP 41 ) 140  #ERR_LIB_ECDSA 42 ) 141  #ERR_LIB_ECDH 43 ) 142  #ERR_LIB_STORE 44 ) 144  #ERR_LIB_USER 128 ) 146  #SYS”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_SYS ,(f),Ô), __FILE__ , __LINE__ ) ) 147  #BN”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_BN ,(f),Ô), __FILE__ , __LINE__ ) ) 148  #RSA”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_RSA ,(f),Ô), __FILE__ , __LINE__ ) ) 149  #DH”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_DH ,(f),Ô), __FILE__ , __LINE__ ) ) 150  #EVP”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_EVP ,(f),Ô), __FILE__ , __LINE__ ) ) 151  #BUF”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_BUF ,(f),Ô), __FILE__ , __LINE__ ) ) 152  #OBJ”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_OBJ ,(f),Ô), __FILE__ , __LINE__ ) ) 153  #PEM”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_PEM ,(f),Ô), __FILE__ , __LINE__ ) ) 154  #DSA”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_DSA ,(f),Ô), __FILE__ , __LINE__ ) ) 155  #X509”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_X509 ,(f),Ô), __FILE__ , __LINE__ ) ) 156  #ASN1”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_ASN1 ,(f),Ô), __FILE__ , __LINE__ ) ) 157  #CONF”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_CONF ,(f),Ô), __FILE__ , __LINE__ ) ) 158  #CRYPTO”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_CRYPTO ,(f),Ô), __FILE__ , __LINE__ ) ) 159  #EC”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_EC ,(f),Ô), __FILE__ , __LINE__ ) ) 160  #SSL”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_SSL ,(f),Ô), __FILE__ , __LINE__ ) ) 161  #BIO”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_BIO ,(f),Ô), __FILE__ , __LINE__ ) ) 162  #PKCS7”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_PKCS7 ,(f),Ô), __FILE__ , __LINE__ ) ) 163  #X509V3”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_X509V3 ,(f),Ô), __FILE__ , __LINE__ ) ) 164  #PKCS12”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_PKCS12 ,(f),Ô), __FILE__ , __LINE__ ) ) 165  #RAND”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_RAND ,(f),Ô), __FILE__ , __LINE__ ) ) 166  #DSO”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_DSO ,(f),Ô), __FILE__ , __LINE__ ) ) 167  #ENGINE”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_ENGINE ,(f),Ô), __FILE__ , __LINE__ ) ) 168  #OCSP”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_OCSP ,(f),Ô), __FILE__ , __LINE__ ) ) 169  #UI”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_UI ,(f),Ô), __FILE__ , __LINE__ ) ) 170  #COMP”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_COMP ,(f),Ô), __FILE__ , __LINE__ ) ) 171  #ECDSA”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_ECDSA ,(f),Ô), __FILE__ , __LINE__ ) ) 172  #ECDH”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_ECDH ,(f),Ô), __FILE__ , __LINE__ ) ) 173  #STORE”r ( f , r è `ERR_PUT_”rÜ ( ERR_LIB_STORE ,(f),Ô), __FILE__ , __LINE__ ) ) 177  #ERR_PACK ( l , f , r ) ((((()l)&0xffL)*0x1000000)| \ 178 (((() f )&0xfffL)*0x1000)| \ 179 (((() r )&0xfffL))) ) 180  #ERR_GET_LIB ( l è()((((î)>>24L)&0xffL) ) 181  #ERR_GET_FUNC ( l è()((((î)>>12L)&0xfffL) ) 182  #ERR_GET_REASON ( l è()(Ö)&0xfffL) ) 183  #ERR_FATAL_ERROR ( l è()(Ö)& ERR_R_FATAL ) ) 187  #SYS_F_FOPEN 1 ) 188  #SYS_F_CONNECT 2 ) 189  #SYS_F_GETSERVBYNAME 3 ) 190  #SYS_F_SOCKET 4 ) 191  #SYS_F_IOCTLSOCKET 5 ) 192  #SYS_F_BIND 6 ) 193  #SYS_F_LISTEN 7 ) 194  #SYS_F_ACCEPT 8 ) 195  #SYS_F_WSASTARTUP 9 ) 196  #SYS_F_OPENDIR 10 ) 197  #SYS_F_FREAD 11 ) 201  #ERR_R_SYS_LIB ERR_LIB_SYS ) 202  #ERR_R_BN_LIB ERR_LIB_BN ) 203  #ERR_R_RSA_LIB ERR_LIB_RSA ) 204  #ERR_R_DH_LIB ERR_LIB_DH ) 205  #ERR_R_EVP_LIB ERR_LIB_EVP ) 206  #ERR_R_BUF_LIB ERR_LIB_BUF ) 207  #ERR_R_OBJ_LIB ERR_LIB_OBJ ) 208  #ERR_R_PEM_LIB ERR_LIB_PEM ) 209  #ERR_R_DSA_LIB ERR_LIB_DSA ) 210  #ERR_R_X509_LIB ERR_LIB_X509 ) 211  #ERR_R_ASN1_LIB ERR_LIB_ASN1 ) 212  #ERR_R_CONF_LIB ERR_LIB_CONF ) 213  #ERR_R_CRYPTO_LIB ERR_LIB_CRYPTO ) 214  #ERR_R_EC_LIB ERR_LIB_EC ) 215  #ERR_R_SSL_LIB ERR_LIB_SSL ) 216  #ERR_R_BIO_LIB ERR_LIB_BIO ) 217  #ERR_R_PKCS7_LIB ERR_LIB_PKCS7 ) 218  #ERR_R_X509V3_LIB ERR_LIB_X509V3 ) 219  #ERR_R_PKCS12_LIB ERR_LIB_PKCS12 ) 220  #ERR_R_RAND_LIB ERR_LIB_RAND ) 221  #ERR_R_DSO_LIB ERR_LIB_DSO ) 222  #ERR_R_ENGINE_LIB ERR_LIB_ENGINE ) 223  #ERR_R_OCSP_LIB ERR_LIB_OCSP ) 224  #ERR_R_UI_LIB ERR_LIB_UI ) 225  #ERR_R_COMP_LIB ERR_LIB_COMP ) 226  #ERR_R_ECDSA_LIB ERR_LIB_ECDSA ) 227  #ERR_R_ECDH_LIB ERR_LIB_ECDH ) 228  #ERR_R_STORE_LIB ERR_LIB_STORE ) 230  #ERR_R_NESTED_ASN1_ERROR 58 ) 231  #ERR_R_BAD_ASN1_OBJECT_HEADER 59 ) 232  #ERR_R_BAD_GET_ASN1_OBJECT_CALL 60 ) 233  #ERR_R_EXPECTING_AN_ASN1_SEQUENCE 61 ) 234  #ERR_R_ASN1_LENGTH_MISMATCH 62 ) 235  #ERR_R_MISSING_ASN1_EOS 63 ) 238  #ERR_R_FATAL 64 ) 239  #ERR_R_MALLOC_FAILURE (1| ERR_R_FATAL ) ) 240  #ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED (2| ERR_R_FATAL ) ) 241  #ERR_R_PASSED_NULL_PARAMETER (3| ERR_R_FATAL ) ) 242  #ERR_R_INTERNAL_ERROR (4| ERR_R_FATAL ) ) 243  #ERR_R_DISABLED (5| ERR_R_FATAL ) ) 249  sERR_¡ršg_d©a_¡ 251  ”rÜ ; 252 cÚ¡ * ¡ršg ; 253 } tERR_STRING_DATA ; 255  ERR_put_”rÜ ( lib ,  func , »asÚ ,cÚ¡ * fže , lše ); 256  ERR_£t_”rÜ_d©a (* d©a , æags ); 258  ERR_g‘_”rÜ (); 259  ERR_g‘_”rÜ_lše (cÚ¡ ** fže ,* lše ); 260  ERR_g‘_”rÜ_lše_d©a (cÚ¡ ** fže ,* lše , 261 cÚ¡ ** d©a , * æags ); 262  ERR_³ek_”rÜ (); 263  ERR_³ek_”rÜ_lše (cÚ¡ ** fže ,* lše ); 264  ERR_³ek_”rÜ_lše_d©a (cÚ¡ ** fže ,* lše , 265 cÚ¡ ** d©a ,* æags ); 266  ERR_³ek_Ï¡_”rÜ (); 267  ERR_³ek_Ï¡_”rÜ_lše (cÚ¡ ** fže ,* lše ); 268  ERR_³ek_Ï¡_”rÜ_lše_d©a (cÚ¡ ** fže ,* lše , 269 cÚ¡ ** d©a ,* æags ); 270  ERR_þ—r_”rÜ (); 271 * ERR_”rÜ_¡ršg ( e ,* buf ); 272  ERR_”rÜ_¡ršg_n ( e , * buf , size_t Ën ); 273 cÚ¡ * ERR_lib_”rÜ_¡ršg ( e ); 274 cÚ¡ * ERR_func_”rÜ_¡ršg ( e ); 275 cÚ¡ * ERR_»asÚ_”rÜ_¡ršg ( e ); 276  ERR_´št_”rÜs_cb ((* cb )(cÚ¡ * ¡r , size_t Ën , * u ), 277 * u ); 278 #iâdeà OPENSSL_NO_FP_API 279  ERR_´št_”rÜs_å ( FILE * å ); 281 #iâdeà OPENSSL_NO_BIO 282  ERR_´št_”rÜs ( BIO * bp ); 283  ERR_add_”rÜ_d©a ( num , ...); 285  ERR_lßd_¡ršgs ( lib , ERR_STRING_DATA ¡r []); 286  ERR_uÆßd_¡ršgs ( lib , ERR_STRING_DATA ¡r []); 287  ERR_lßd_ERR_¡ršgs (); 288  ERR_lßd_üy±o_¡ršgs (); 289  ERR_ä“_¡ršgs (); 291  ERR_»move_¡©e ( pid ); 292 ERR_STATE * ERR_g‘_¡©e (); 294 #iâdeà OPENSSL_NO_LHASH 295 LHASH * ERR_g‘_¡ršg_bË (); 296 LHASH * ERR_g‘_”r_¡©e_bË (); 297  ERR_»Ëa£_”r_¡©e_bË ( LHASH ** hash ); 300  ERR_g‘_Ãxt_”rÜ_lib¿ry (); 302  ERR_£t_m¬k (); 303  ERR_pÝ_to_m¬k (); 309 cÚ¡ ERR_FNS * ERR_g‘_im¶em’tiÚ (); 312  ERR_£t_im¶em’tiÚ (cÚ¡ ERR_FNS * âs ); 314 #ifdef __ýlu¥lus @/usr/include/openssl/md5.h 59 #iâdeà HEADER_MD5_H 60  #HEADER_MD5_H ) 62  ~<Ý’s¦/e_os2.h > 63  ~<¡ddef.h > 65 #ifdeà __ýlu¥lus 69 #ifdeà OPENSSL_NO_MD5 70 #”rÜ MD5 is di§bËd . 80 #ià defšed ( OPENSSL_SYS_WIN16 è|| defšed( __LP32__ ) 81  #MD5_LONG  ) 82 #–ià defšed ( OPENSSL_SYS_CRAY è|| defšed( __ILP64__ ) 83  #MD5_LONG  ) 84  #MD5_LONG_LOG2 3 ) 93  #MD5_LONG  ) 96  #MD5_CBLOCK 64 ) 97  #MD5_LBLOCK ( MD5_CBLOCK /4) ) 98  #MD5_DIGEST_LENGTH 16 ) 100  sMD5¡©e_¡ 102 MD5_LONG A , B , C , D ; 103 MD5_LONG Nl , Nh ; 104 MD5_LONG d©a [ MD5_LBLOCK ]; 105  num ; 106 } tMD5_CTX ; 108  MD5_In™ ( MD5_CTX * c ); 109  MD5_Upd©e ( MD5_CTX * c , cÚ¡ * d©a , size_t Ën ); 110  MD5_Fš® (* md , MD5_CTX * c ); 111 * MD5 (cÚ¡ * d , size_t n , * md ); 112  MD5_T¿nsfÜm ( MD5_CTX * c , cÚ¡ * b ); 113 #ifdeà __ýlu¥lus @/usr/include/openssl/rand.h 59 #iâdeà HEADER_RAND_H 60  #HEADER_RAND_H ) 62  ~<¡dlib.h > 63  ~<Ý’s¦/os¦_typ.h > 64  ~<Ý’s¦/e_os2.h > 66 #ià defšed ( OPENSSL_SYS_WINDOWS ) 67  ~ 70 #ifdeà __ýlu¥lus 74 #ià defšed ( OPENSSL_FIPS ) 75  #FIPS_RAND_SIZE_T size_t ) 81  s¿nd_m‘h_¡ 83 (* £ed )(cÚ¡ * buf ,  num ); 84 (* by‹s )(* buf ,  num ); 85 (* þ—nup )(); 86 (* add )(cÚ¡ * buf ,  num ,  ’ŒÝy ); 87 (* p£udܪd )(* buf ,  num ); 88 (* ¡©us )(); 91 #ifdeà BN_DEBUG 92  ¿nd_´ediùabË ; 95  RAND_£t_¿nd_m‘hod (cÚ¡ RAND_METHOD * m‘h ); 96 cÚ¡ RAND_METHOD * RAND_g‘_¿nd_m‘hod (); 97 #iâdeà OPENSSL_NO_ENGINE 98  RAND_£t_¿nd_’gše ( ENGINE * ’gše ); 100 RAND_METHOD * RAND_SSL—y (); 101  RAND_þ—nup (); 102  RAND_by‹s (* buf , num ); 103  RAND_p£udo_by‹s (* buf , num ); 104  RAND_£ed (cÚ¡ * buf , num ); 105  RAND_add (cÚ¡ * buf , num , ’ŒÝy ); 106  RAND_lßd_fže (cÚ¡ * fže , max_by‹s ); 107  RAND_wr™e_fže (cÚ¡ * fže ); 108 cÚ¡ * RAND_fže_Çme (* fže , size_t num ); 109  RAND_¡©us (); 110  RAND_qu”y_egd_by‹s (cÚ¡ * ·th , * buf ,  by‹s ); 111  RAND_egd (cÚ¡ * ·th ); 112  RAND_egd_by‹s (cÚ¡ * ·th , by‹s ); 113  RAND_pÞl (); 115 #ià defšed ( OPENSSL_SYS_WINDOWS è|| defšed( OPENSSL_SYS_WIN32 ) 117  RAND_sü“n (); 118  RAND_ev’t ( UINT , WPARAM , LPARAM ); 126  ERR_lßd_RAND_¡ršgs (); 131  #RAND_F_RAND_GET_RAND_METHOD 101 ) 132  #RAND_F_SSLEAY_RAND_BYTES 100 ) 135  #RAND_R_PRNG_NOT_SEEDED 100 ) 137 #ifdeà __ýlu¥lus @/usr/include/openssl/ssl.h 170 #iâdeà HEADER_SSL_H 171  #HEADER_SSL_H ) 173  ~<Ý’s¦/e_os2.h > 175 #iâdeà OPENSSL_NO_COMP 176  ~<Ý’s¦/comp.h > 178 #iâdeà OPENSSL_NO_BIO 179  ~<Ý’s¦/bio.h > 181 #iâdeà OPENSSL_NO_DEPRECATED 182 #iâdeà OPENSSL_NO_X509 183  ~<Ý’s¦/x509.h > 185  ~<Ý’s¦/üy±o.h > 186  ~<Ý’s¦/lhash.h > 187  ~<Ý’s¦/bufãr.h > 189  ~<Ý’s¦/³m.h > 191  ~<Ý’s¦/ks¦.h > 192  ~<Ý’s¦/§ã¡ack.h > 193  ~<Ý’s¦/symhacks.h > 195 #ifdeà __ýlu¥lus 203  #SSL_SESSION_ASN1_VERSION 0x0001 ) 206  #SSL_TXT_NULL_WITH_MD5 SSL2_TXT_NULL_WITH_MD5 ) 207  #SSL_TXT_RC4_128_WITH_MD5 SSL2_TXT_RC4_128_WITH_MD5 ) 208  #SSL_TXT_RC4_128_EXPORT40_WITH_MD5 SSL2_TXT_RC4_128_EXPORT40_WITH_MD5 ) 209  #SSL_TXT_RC2_128_CBC_WITH_MD5 SSL2_TXT_RC2_128_CBC_WITH_MD5 ) 210  #SSL_TXT_RC2_128_CBC_EXPORT40_WITH_MD5 SSL2_TXT_RC2_128_CBC_EXPORT40_WITH_MD5 ) 211  #SSL_TXT_IDEA_128_CBC_WITH_MD5 SSL2_TXT_IDEA_128_CBC_WITH_MD5 ) 212  #SSL_TXT_DES_64_CBC_WITH_MD5 SSL2_TXT_DES_64_CBC_WITH_MD5 ) 213  #SSL_TXT_DES_64_CBC_WITH_SHA SSL2_TXT_DES_64_CBC_WITH_SHA ) 214  #SSL_TXT_DES_192_EDE3_CBC_WITH_MD5 SSL2_TXT_DES_192_EDE3_CBC_WITH_MD5 ) 215  #SSL_TXT_DES_192_EDE3_CBC_WITH_SHA SSL2_TXT_DES_192_EDE3_CBC_WITH_SHA ) 219  #SSL_TXT_KRB5_DES_64_CBC_SHA SSL3_TXT_KRB5_DES_64_CBC_SHA ) 220  #SSL_TXT_KRB5_DES_192_CBC3_SHA SSL3_TXT_KRB5_DES_192_CBC3_SHA ) 221  #SSL_TXT_KRB5_RC4_128_SHA SSL3_TXT_KRB5_RC4_128_SHA ) 222  #SSL_TXT_KRB5_IDEA_128_CBC_SHA SSL3_TXT_KRB5_IDEA_128_CBC_SHA ) 223  #SSL_TXT_KRB5_DES_64_CBC_MD5 SSL3_TXT_KRB5_DES_64_CBC_MD5 ) 224  #SSL_TXT_KRB5_DES_192_CBC3_MD5 SSL3_TXT_KRB5_DES_192_CBC3_MD5 ) 225  #SSL_TXT_KRB5_RC4_128_MD5 SSL3_TXT_KRB5_RC4_128_MD5 ) 226  #SSL_TXT_KRB5_IDEA_128_CBC_MD5 SSL3_TXT_KRB5_IDEA_128_CBC_MD5 ) 228  #SSL_TXT_KRB5_DES_40_CBC_SHA SSL3_TXT_KRB5_DES_40_CBC_SHA ) 229  #SSL_TXT_KRB5_RC2_40_CBC_SHA SSL3_TXT_KRB5_RC2_40_CBC_SHA ) 230  #SSL_TXT_KRB5_RC4_40_SHA SSL3_TXT_KRB5_RC4_40_SHA ) 231  #SSL_TXT_KRB5_DES_40_CBC_MD5 SSL3_TXT_KRB5_DES_40_CBC_MD5 ) 232  #SSL_TXT_KRB5_RC2_40_CBC_MD5 SSL3_TXT_KRB5_RC2_40_CBC_MD5 ) 233  #SSL_TXT_KRB5_RC4_40_MD5 SSL3_TXT_KRB5_RC4_40_MD5 ) 235  #SSL_TXT_KRB5_DES_40_CBC_SHA SSL3_TXT_KRB5_DES_40_CBC_SHA ) 236  #SSL_TXT_KRB5_DES_40_CBC_MD5 SSL3_TXT_KRB5_DES_40_CBC_MD5 ) 237  #SSL_TXT_KRB5_DES_64_CBC_SHA SSL3_TXT_KRB5_DES_64_CBC_SHA ) 238  #SSL_TXT_KRB5_DES_64_CBC_MD5 SSL3_TXT_KRB5_DES_64_CBC_MD5 ) 239  #SSL_TXT_KRB5_DES_192_CBC3_SHA SSL3_TXT_KRB5_DES_192_CBC3_SHA ) 240  #SSL_TXT_KRB5_DES_192_CBC3_MD5 SSL3_TXT_KRB5_DES_192_CBC3_MD5 ) 241  #SSL_MAX_KRB5_PRINCIPAL_LENGTH 256 ) 243  #SSL_MAX_SSL_SESSION_ID_LENGTH 32 ) 244  #SSL_MAX_SID_CTX_LENGTH 32 ) 246  #SSL_MIN_RSA_MODULUS_LENGTH_IN_BYTES (512/8) ) 247  #SSL_MAX_KEY_ARG_LENGTH 8 ) 248  #SSL_MAX_MASTER_KEY_LENGTH 48 ) 251  #SSL_TXT_LOW "LOW" ) 252  #SSL_TXT_MEDIUM "MEDIUM" ) 253  #SSL_TXT_HIGH "HIGH" ) 254  #SSL_TXT_kFZA "kFZA" ) 255  #SSL_TXT_aFZA "aFZA" ) 256  #SSL_TXT_eFZA "eFZA" ) 257  #SSL_TXT_FZA "FZA" ) 259  #SSL_TXT_aNULL "aNULL" ) 260  #SSL_TXT_eNULL "eNULL" ) 261  #SSL_TXT_NULL "NULL" ) 263  #SSL_TXT_kKRB5 "kKRB5" ) 264  #SSL_TXT_aKRB5 "aKRB5" ) 265  #SSL_TXT_KRB5 "KRB5" ) 267  #SSL_TXT_kRSA "kRSA" ) 268  #SSL_TXT_kDHr "kDHr" ) 269  #SSL_TXT_kDHd "kDHd" ) 270  #SSL_TXT_kEDH "kEDH" ) 271  #SSL_TXT_aRSA "aRSA" ) 272  #SSL_TXT_aDSS "aDSS" ) 273  #SSL_TXT_aDH "aDH" ) 274  #SSL_TXT_DSS "DSS" ) 275  #SSL_TXT_DH "DH" ) 276  #SSL_TXT_EDH "EDH" ) 277  #SSL_TXT_ADH "ADH" ) 278  #SSL_TXT_RSA "RSA" ) 279  #SSL_TXT_DES "DES" ) 280  #SSL_TXT_3DES "3DES" ) 281  #SSL_TXT_RC4 "RC4" ) 282  #SSL_TXT_RC2 "RC2" ) 283  #SSL_TXT_IDEA "IDEA" ) 284  #SSL_TXT_SEED "SEED" ) 285  #SSL_TXT_AES "AES" ) 286  #SSL_TXT_CAMELLIA "CAMELLIA" ) 287  #SSL_TXT_MD5 "MD5" ) 288  #SSL_TXT_SHA1 "SHA1" ) 289  #SSL_TXT_SHA "SHA" ) 290  #SSL_TXT_EXP "EXP" ) 291  #SSL_TXT_EXPORT "EXPORT" ) 292  #SSL_TXT_EXP40 "EXPORT40" ) 293  #SSL_TXT_EXP56 "EXPORT56" ) 294  #SSL_TXT_SSLV2 "SSLv2" ) 295  #SSL_TXT_SSLV3 "SSLv3" ) 296  #SSL_TXT_TLSV1 "TLSv1" ) 297  #SSL_TXT_ALL "ALL" ) 298  #SSL_TXT_ECC "ECCd¿á" ) 314  #SSL_TXT_CMPALL "COMPLEMENTOFALL" ) 315  #SSL_TXT_CMPDEF "COMPLEMENTOFDEFAULT" ) 320  #SSL_DEFAULT_CIPHER_LIST "AES:ALL:!aNULL:!eNULL:+RC4:@STRENGTH" ) 323  #SSL_SENT_SHUTDOWN 1 ) 324  #SSL_RECEIVED_SHUTDOWN 2 ) 326 #ifdeà __ýlu¥lus 330 #ifdeà __ýlu¥lus 334 #ià( defšed ( OPENSSL_NO_RSA è|| defšed( OPENSSL_NO_MD5 )è&& !defšed( OPENSSL_NO_SSL2 ) 335  #OPENSSL_NO_SSL2 ) 338  #SSL_FILETYPE_ASN1 X509_FILETYPE_ASN1 ) 339  #SSL_FILETYPE_PEM X509_FILETYPE_PEM ) 344  s¦_¡ * ts¦_üock_¡ ; 347  ss¦_ch”_¡ 349  v®id ; 350 cÚ¡ * Çme ; 351  id ; 352  ®gÜ™hms ; 353  ®go_¡»ngth ; 354  ®gÜ™hm2 ; 355  ¡»ngth_b™s ; 356  ®g_b™s ; 357  mask ; 358  mask_¡»ngth ; 359 } tSSL_CIPHER ; 361 DECLARE_STACK_OF ( SSL_CIPHER ) 363  s¦_¡ tSSL ; 364  s¦_ùx_¡ tSSL_CTX ; 367  ss¦_m‘hod_¡ 369  v”siÚ ; 370 (* s¦_Ãw )( SSL * s ); 371 (* s¦_þ—r )( SSL * s ); 372 (* s¦_ä“ )( SSL * s ); 373 (* s¦_acû± )( SSL * s ); 374 (* s¦_cÚÃù )( SSL * s ); 375 (* s¦_»ad )( SSL * s ,* buf , Ën ); 376 (* s¦_³ek )( SSL * s ,* buf , Ën ); 377 (* s¦_wr™e )( SSL * s ,cÚ¡ * buf , Ën ); 378 (* s¦_shutdown )( SSL * s ); 379 (* s¦_»ÃgÙŸ‹ )( SSL * s ); 380 (* s¦_»ÃgÙŸ‹_check )( SSL * s ); 381 (* s¦_g‘_mes§ge )( SSL * s ,  ¡1 ,  ¡n ,  mt ,  382 max , * ok ); 383 (* s¦_»ad_by‹s )( SSL * s ,  ty³ , * buf ,  Ën , 384  ³ek ); 385 (* s¦_wr™e_by‹s )( SSL * s ,  ty³ , cÚ¡ * buf_ ,  Ën ); 386 (* s¦_di¥©ch_®”t )( SSL * s ); 387 (* s¦_ù¾ )( SSL * s , cmd , Ïrg ,* ·rg ); 388 (* s¦_ùx_ù¾ )( SSL_CTX * ùx , cmd , Ïrg ,* ·rg ); 389 SSL_CIPHER *(* g‘_ch”_by_ch¬ )(cÚ¡ * ±r ); 390 (* put_ch”_by_ch¬ )(cÚ¡ SSL_CIPHER * ch” ,* ±r ); 391 (* s¦_³ndšg )(cÚ¡ SSL * s ); 392 (* num_ch”s )(); 393 SSL_CIPHER *(* g‘_ch” )( nch” ); 394  s¦_m‘hod_¡ *(* g‘_s¦_m‘hod )( v”siÚ ); 395 (* g‘_timeout )(); 396  s¦3_’c_m‘hod * s¦3_’c ; 397 (* s¦_v”siÚ )(); 398 (* s¦_ÿÎback_ù¾ )( SSL * s ,  cb_id , (* å )()); 399 (* s¦_ùx_ÿÎback_ù¾ )( SSL_CTX * s ,  cb_id , (* å )()); 400 } tSSL_METHOD ; 421  ss¦_£ssiÚ_¡ 423  s¦_v”siÚ ; 427  key_¬g_Ëngth ; 428  key_¬g [ SSL_MAX_KEY_ARG_LENGTH ]; 429  ma¡”_key_Ëngth ; 430  ma¡”_key [ SSL_MAX_MASTER_KEY_LENGTH ]; 432  £ssiÚ_id_Ëngth ; 433  £ssiÚ_id [ SSL_MAX_SSL_SESSION_ID_LENGTH ]; 437  sid_ùx_Ëngth ; 438  sid_ùx [ SSL_MAX_SID_CTX_LENGTH ]; 440 #iâdeà OPENSSL_NO_KRB5 441  krb5_þ›Á_´šc_Ën ; 442  krb5_þ›Á_´šc [ SSL_MAX_KRB5_PRINCIPAL_LENGTH ]; 445  nÙ_»sumabË ; 448  £ss_û¹_¡ * £ss_û¹ ; 454 X509 * ³” ; 457  v”ify_»suÉ ; 459  »ã»nûs ; 460  timeout ; 461  time ; 463  com´ess_m‘h ; 465 SSL_CIPHER * ch” ; 466  ch”_id ; 470 STACK_OF ( SSL_CIPHER è* ch”s ; 472 CRYPTO_EX_DATA ex_d©a ; 476  s¦_£ssiÚ_¡ * ´ev ,* Ãxt ; 477 #iâdeà OPENSSL_NO_TLSEXT 478 * Ž£xt_ho¡Çme ; 480 * Ž£xt_tick ; 481 size_t Ž£xt_tickËn ; 482  Ž£xt_tick_liãtime_hšt ; 484 } tSSL_SESSION ; 487  #SSL_OP_MICROSOFT_SESS_ID_BUG 0x00000001L ) 488  #SSL_OP_NETSCAPE_CHALLENGE_BUG 0x00000002L ) 489  #SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG 0x00000008L ) 490  #SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG 0x00000010L ) 491  #SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER 0x00000020L ) 492  #SSL_OP_MSIE_SSLV2_RSA_PADDING 0x00000040L ) 493  #SSL_OP_SSLEAY_080_CLIENT_DH_BUG 0x00000080L ) 494  #SSL_OP_TLS_D5_BUG 0x00000100L ) 495  #SSL_OP_TLS_BLOCK_PADDING_BUG 0x00000200L ) 502  #SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS 0x00000800L ) 506  #SSL_OP_ALL 0x00000FFFL ) 509  #SSL_OP_NO_QUERY_MTU 0x00001000L ) 511  #SSL_OP_COOKIE_EXCHANGE 0x00002000L ) 513  #SSL_OP_NO_TICKET 0x00004000L ) 516  #SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION 0x00010000L ) 518  #SSL_OP_SINGLE_ECDH_USE 0x00080000L ) 520  #SSL_OP_SINGLE_DH_USE 0x00100000L ) 523  #SSL_OP_EPHEMERAL_RSA 0x00200000L ) 526  #SSL_OP_CIPHER_SERVER_PREFERENCE 0x00400000L ) 531  #SSL_OP_TLS_ROLLBACK_BUG 0x00800000L ) 533  #SSL_OP_NO_SSLv2 0x01000000L ) 534  #SSL_OP_NO_SSLv3 0x02000000L ) 535  #SSL_OP_NO_TLSv1 0x04000000L ) 539  #SSL_OP_PKCS1_CHECK_1 0x08000000L ) 540  #SSL_OP_PKCS1_CHECK_2 0x10000000L ) 541  #SSL_OP_NETSCAPE_CA_DN_BUG 0x20000000L ) 542  #SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG 0x40000000L ) 547  #SSL_MODE_ENABLE_PARTIAL_WRITE 0x00000001L ) 552  #SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER 0x00000002L ) 555  #SSL_MODE_AUTO_RETRY 0x00000004L ) 557  #SSL_MODE_NO_AUTO_CHAIN 0x00000008L ) 563  #SSL_CTX_£t_ÝtiÚs ( ùx , Ý ) \ 564 `SSL_CTX_ù¾ (( ùx ), SSL_CTRL_OPTIONS ,( Ý ), NULL ) ) 565  #SSL_CTX_g‘_ÝtiÚs ( ùx ) \ 566 `SSL_CTX_ù¾ (( ùx ), SSL_CTRL_OPTIONS ,0, NULL ) ) 567  #SSL_£t_ÝtiÚs ( s¦ , Ý ) \ 568 `SSL_ù¾ (( s¦ ), SSL_CTRL_OPTIONS ,( Ý ), NULL ) ) 569  #SSL_g‘_ÝtiÚs ( s¦ ) \ 570 `SSL_ù¾ (( s¦ ), SSL_CTRL_OPTIONS ,0, NULL ) ) 572  #SSL_CTX_£t_mode ( ùx , Ý ) \ 573 `SSL_CTX_ù¾ (( ùx ), SSL_CTRL_MODE ,( Ý ), NULL ) ) 574  #SSL_CTX_g‘_mode ( ùx ) \ 575 `SSL_CTX_ù¾ (( ùx ), SSL_CTRL_MODE ,0, NULL ) ) 576  #SSL_£t_mode ( s¦ , Ý ) \ 577 `SSL_ù¾ (( s¦ ), SSL_CTRL_MODE ,( Ý ), NULL ) ) 578  #SSL_g‘_mode ( s¦ ) \ 579 `SSL_ù¾ (( s¦ ), SSL_CTRL_MODE ,0, NULL ) ) 580  #SSL_£t_mtu ( s¦ , mtu ) \ 581 `SSL_ù¾ (( s¦ ), SSL_CTRL_SET_MTU ,( mtu ), NULL ) ) 584  SSL_CTX_£t_msg_ÿÎback ( SSL_CTX * ùx , (* cb )( wr™e_p ,  v”siÚ ,  cÚ‹Á_ty³ , cÚ¡ * buf , size_t Ën , SSL * s¦ , * ¬g )); 585  SSL_£t_msg_ÿÎback ( SSL * s¦ , (* cb )( wr™e_p ,  v”siÚ ,  cÚ‹Á_ty³ , cÚ¡ * buf , size_t Ën , SSL *s¦, * ¬g )); 586  #SSL_CTX_£t_msg_ÿÎback_¬g ( ùx , ¬g è `SSL_CTX_ù¾ ((ùx), SSL_CTRL_SET_MSG_CALLBACK_ARG , 0, (¬g)) ) 587  #SSL_£t_msg_ÿÎback_¬g ( s¦ , ¬g è `SSL_ù¾ ((s¦), SSL_CTRL_SET_MSG_CALLBACK_ARG , 0, (¬g)) ) 591 #ià defšed ( OPENSSL_SYS_MSDOS è&& !defšed( OPENSSL_SYS_WIN32 ) 592  #SSL_MAX_CERT_LIST_DEFAULT 1024*30 ) 594  #SSL_MAX_CERT_LIST_DEFAULT 1024*100 ) 597  #SSL_SESSION_CACHE_MAX_SIZE_DEFAULT (1024*20) ) 612 (* GEN_SESSION_CB )(cÚ¡ tSSL * ts¦ , * tid , 613 * tid_Ën ); 615  ss¦_comp_¡ 617  id ; 618 cÚ¡ * Çme ; 619 #iâdeà OPENSSL_NO_COMP 620 COMP_METHOD * m‘hod ; 622 * m‘hod ; 624 } tSSL_COMP ; 626 DECLARE_STACK_OF ( SSL_COMP ) 628  ss¦_ùx_¡ 630 SSL_METHOD * m‘hod ; 632 STACK_OF ( SSL_CIPHER è* ch”_li¡ ; 634 STACK_OF ( SSL_CIPHER è* ch”_li¡_by_id ; 636  x509_¡Üe_¡ * û¹_¡Üe ; 637  lhash_¡ * £ssiÚs ; 640  £ssiÚ_ÿche_size ; 641  s¦_£ssiÚ_¡ * £ssiÚ_ÿche_h—d ; 642  s¦_£ssiÚ_¡ * £ssiÚ_ÿche_ž ; 649  £ssiÚ_ÿche_mode ; 654  £ssiÚ_timeout ; 664 (* Ãw_£ssiÚ_cb )( s¦_¡ * s¦ , SSL_SESSION * £ss ); 665 (* »move_£ssiÚ_cb )( s¦_ùx_¡ * ùx , SSL_SESSION * £ss ); 666 SSL_SESSION *(* g‘_£ssiÚ_cb )( s¦_¡ * s¦ , 667 * d©a , Ën ,* cÝy ); 671  £ss_cÚÃù ; 672  £ss_cÚÃù_»ÃgÙŸ‹ ; 673  £ss_cÚÃù_good ; 674  £ss_acû± ; 675  £ss_acû±_»ÃgÙŸ‹ ; 676  £ss_acû±_good ; 677  £ss_miss ; 678  £ss_timeout ; 679  £ss_ÿche_fuÎ ; 680  £ss_h™ ; 681  £ss_cb_h™ ; 687 } ¡©s ; 689  »ã»nûs ; 692 (* ­p_v”ify_ÿÎback )( X509_STORE_CTX *, *); 693 * ­p_v”ify_¬g ; 698 ³m_·sswÜd_cb * deçuÉ_·sswd_ÿÎback ; 701 * deçuÉ_·sswd_ÿÎback_u£rd©a ; 704 (* þ›Á_û¹_cb )( SSL * s¦ , X509 ** x509 , EVP_PKEY ** pkey ); 707 (* ­p_g’_cook›_cb )( SSL * s¦ , * cook› , 708 * cook›_Ën ); 711 (* ­p_v”ify_cook›_cb )( SSL * s¦ , * cook› , 712  cook›_Ën ); 714 CRYPTO_EX_DATA ex_d©a ; 716 cÚ¡ EVP_MD * r§_md5 ; 717 cÚ¡ EVP_MD * md5 ; 718 cÚ¡ EVP_MD * sha1 ; 720 STACK_OF ( X509 è* exŒa_û¹s ; 721 STACK_OF ( SSL_COMP è* comp_m‘hods ; 726 (* šfo_ÿÎback )(cÚ¡ SSL * s¦ , ty³ , v® ); 729 STACK_OF ( X509_NAME è* þ›Á_CA ; 734  ÝtiÚs ; 735  mode ; 736  max_û¹_li¡ ; 738  û¹_¡ * û¹ ; 739  »ad_ah—d ; 742 (* msg_ÿÎback )( wr™e_p ,  v”siÚ ,  cÚ‹Á_ty³ , cÚ¡ * buf , size_t Ën , SSL * s¦ , * ¬g ); 743 * msg_ÿÎback_¬g ; 745  v”ify_mode ; 746  sid_ùx_Ëngth ; 747  sid_ùx [ SSL_MAX_SID_CTX_LENGTH ]; 748 (* deçuÉ_v”ify_ÿÎback )( ok , X509_STORE_CTX * ùx ); 751 GEN_SESSION_CB g’”©e_£ssiÚ_id ; 753 X509_VERIFY_PARAM * ·¿m ; 756  pu½o£ ; 757  Œu¡ ; 760  qu›t_shutdown ; 762 #iâdeà OPENSSL_NO_TLSEXT 764 (* Ž£xt_£rv”Çme_ÿÎback )( SSL *, *, *); 765 * Ž£xt_£rv”Çme_¬g ; 767  Ž£xt_tick_key_Çme [16]; 768  Ž£xt_tick_hmac_key [16]; 769  Ž£xt_tick_«s_key [16]; 774  #SSL_SESS_CACHE_OFF 0x0000 ) 775  #SSL_SESS_CACHE_CLIENT 0x0001 ) 776  #SSL_SESS_CACHE_SERVER 0x0002 ) 777  #SSL_SESS_CACHE_BOTH ( SSL_SESS_CACHE_CLIENT | SSL_SESS_CACHE_SERVER ) ) 778  #SSL_SESS_CACHE_NO_AUTO_CLEAR 0x0080 ) 780  #SSL_SESS_CACHE_NO_INTERNAL_LOOKUP 0x0100 ) 781  #SSL_SESS_CACHE_NO_INTERNAL_STORE 0x0200 ) 782  #SSL_SESS_CACHE_NO_INTERNAL \ 783 ( SSL_SESS_CACHE_NO_INTERNAL_LOOKUP | SSL_SESS_CACHE_NO_INTERNAL_STORE ) ) 785  lhash_¡ * SSL_CTX_£ssiÚs ( SSL_CTX * ùx ); 786  #SSL_CTX_£ss_numb” ( ùx ) \ 787 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SESS_NUMBER ,0, NULL ) ) 788  #SSL_CTX_£ss_cÚÃù ( ùx ) \ 789 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SESS_CONNECT ,0, NULL ) ) 790  #SSL_CTX_£ss_cÚÃù_good ( ùx ) \ 791 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SESS_CONNECT_GOOD ,0, NULL ) ) 792  #SSL_CTX_£ss_cÚÃù_»ÃgÙŸ‹ ( ùx ) \ 793 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SESS_CONNECT_RENEGOTIATE ,0, NULL ) ) 794  #SSL_CTX_£ss_acû± ( ùx ) \ 795 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SESS_ACCEPT ,0, NULL ) ) 796  #SSL_CTX_£ss_acû±_»ÃgÙŸ‹ ( ùx ) \ 797 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SESS_ACCEPT_RENEGOTIATE ,0, NULL ) ) 798  #SSL_CTX_£ss_acû±_good ( ùx ) \ 799 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SESS_ACCEPT_GOOD ,0, NULL ) ) 800  #SSL_CTX_£ss_h™s ( ùx ) \ 801 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SESS_HIT ,0, NULL ) ) 802  #SSL_CTX_£ss_cb_h™s ( ùx ) \ 803 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SESS_CB_HIT ,0, NULL ) ) 804  #SSL_CTX_£ss_mis£s ( ùx ) \ 805 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SESS_MISSES ,0, NULL ) ) 806  #SSL_CTX_£ss_timeouts ( ùx ) \ 807 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SESS_TIMEOUTS ,0, NULL ) ) 808  #SSL_CTX_£ss_ÿche_fuÎ ( ùx ) \ 809 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SESS_CACHE_FULL ,0, NULL ) ) 811  SSL_CTX_£ss_£t_Ãw_cb ( SSL_CTX * ùx , (* Ãw_£ssiÚ_cb )( s¦_¡ * s¦ , SSL_SESSION * £ss )); 812 (* SSL_CTX_£ss_g‘_Ãw_cb ( SSL_CTX * ùx ))( s¦_¡ * s¦ , SSL_SESSION * £ss ); 813  SSL_CTX_£ss_£t_»move_cb ( SSL_CTX * ùx , (* »move_£ssiÚ_cb )( s¦_ùx_¡ *ùx, SSL_SESSION * £ss )); 814 (* SSL_CTX_£ss_g‘_»move_cb ( SSL_CTX * ùx ))( s¦_ùx_¡ *ùx, SSL_SESSION * £ss ); 815  SSL_CTX_£ss_£t_g‘_cb ( SSL_CTX * ùx , SSL_SESSION *(* g‘_£ssiÚ_cb )( s¦_¡ * s¦ , * d©a , Ën ,* cÝy )); 816 SSL_SESSION *(* SSL_CTX_£ss_g‘_g‘_cb ( SSL_CTX * ùx ))( s¦_¡ * s¦ , * D©a ,  Ën , * cÝy ); 817  SSL_CTX_£t_šfo_ÿÎback ( SSL_CTX * ùx , (* cb )(cÚ¡ SSL * s¦ , ty³ , v® )); 818 (* SSL_CTX_g‘_šfo_ÿÎback ( SSL_CTX * ùx ))(cÚ¡ SSL * s¦ , ty³ , v® ); 819  SSL_CTX_£t_þ›Á_û¹_cb ( SSL_CTX * ùx , (* þ›Á_û¹_cb )( SSL * s¦ , X509 ** x509 , EVP_PKEY ** pkey )); 820 (* SSL_CTX_g‘_þ›Á_û¹_cb ( SSL_CTX * ùx ))( SSL * s¦ , X509 ** x509 , EVP_PKEY ** pkey ); 821  SSL_CTX_£t_cook›_g’”©e_cb ( SSL_CTX * ùx , (* ­p_g’_cook›_cb )( SSL * s¦ , * cook› , * cook›_Ën )); 822  SSL_CTX_£t_cook›_v”ify_cb ( SSL_CTX * ùx , (* ­p_v”ify_cook›_cb )( SSL * s¦ , * cook› ,  cook›_Ën )); 824  #SSL_NOTHING 1 ) 825  #SSL_WRITING 2 ) 826  #SSL_READING 3 ) 827  #SSL_X509_LOOKUP 4 ) 830  #SSL_wªt_nÙhšg ( s è( `SSL_wªt (sè=ð SSL_NOTHING ) ) 831  #SSL_wªt_»ad ( s è( `SSL_wªt (sè=ð SSL_READING ) ) 832  #SSL_wªt_wr™e ( s è( `SSL_wªt (sè=ð SSL_WRITING ) ) 833  #SSL_wªt_x509_lookup ( s è( `SSL_wªt (sè=ð SSL_X509_LOOKUP ) ) 835  ss¦_¡ 840  v”siÚ ; 841  ty³ ; 843 SSL_METHOD * m‘hod ; 849 #iâdeà OPENSSL_NO_BIO 850 BIO * rbio ; 851 BIO * wbio ; 852 BIO * bbio ; 855 * rbio ; 856 * wbio ; 857 * bbio ; 863  rw¡©e ; 866  š_hªdshake ; 867 (* hªdshake_func )( SSL *); 877  £rv” ; 879  Ãw_£ssiÚ ; 885  qu›t_shutdown ; 886  shutdown ; 888  ¡©e ; 889  r¡©e ; 891 BUF_MEM * š™_buf ; 892 * š™_msg ; 893  š™_num ; 894  š™_off ; 897 * ·ck‘ ; 898  ·ck‘_Ëngth ; 900  s¦2_¡©e_¡ * s2 ; 901  s¦3_¡©e_¡ * s3 ; 902  dŽs1_¡©e_¡ * d1 ; 904  »ad_ah—d ; 908 (* msg_ÿÎback )( wr™e_p ,  v”siÚ ,  cÚ‹Á_ty³ , cÚ¡ * buf , size_t Ën , SSL * s¦ , * ¬g ); 909 * msg_ÿÎback_¬g ; 911  h™ ; 913 X509_VERIFY_PARAM * ·¿m ; 916  pu½o£ ; 917  Œu¡ ; 921 STACK_OF ( SSL_CIPHER è* ch”_li¡ ; 922 STACK_OF ( SSL_CIPHER è* ch”_li¡_by_id ; 927 EVP_CIPHER_CTX * ’c_»ad_ùx ; 928 cÚ¡ EVP_MD * »ad_hash ; 929 #iâdeà OPENSSL_NO_COMP 930 COMP_CTX * ex·nd ; 932 * ex·nd ; 935 EVP_CIPHER_CTX * ’c_wr™e_ùx ; 936 cÚ¡ EVP_MD * wr™e_hash ; 937 #iâdeà OPENSSL_NO_COMP 938 COMP_CTX * com´ess ; 940 * com´ess ; 947  û¹_¡ * û¹ ; 951  sid_ùx_Ëngth ; 952  sid_ùx [ SSL_MAX_SID_CTX_LENGTH ]; 955 SSL_SESSION * £ssiÚ ; 958 GEN_SESSION_CB g’”©e_£ssiÚ_id ; 961  v”ify_mode ; 963 (* v”ify_ÿÎback )( ok , X509_STORE_CTX * ùx ); 965 (* šfo_ÿÎback )(cÚ¡ SSL * s¦ , ty³ , v® ); 967  ”rÜ ; 968  ”rÜ_code ; 970 #iâdeà OPENSSL_NO_KRB5 971 KSSL_CTX * ks¦_ùx ; 974 SSL_CTX * ùx ; 977  debug ; 980  v”ify_»suÉ ; 981 CRYPTO_EX_DATA ex_d©a ; 984 STACK_OF ( X509_NAME è* þ›Á_CA ; 986  »ã»nûs ; 987  ÝtiÚs ; 988  mode ; 989  max_û¹_li¡ ; 990  fœ¡_·ck‘ ; 991  þ›Á_v”siÚ ; 993 #iâdeà OPENSSL_NO_TLSEXT 995 (* Ž£xt_debug_cb )( SSL * s ,  þ›Á_£rv” ,  ty³ , 996 * d©a ,  Ën , 997 * ¬g ); 998 * Ž£xt_debug_¬g ; 999 * Ž£xt_ho¡Çme ; 1000  £rv”Çme_dÚe ; 1006  Ž£xt_tick‘_ex³ùed ; 1007 SSL_CTX * š™Ÿl_ùx ; 1008  #£ssiÚ_ùx š™Ÿl_ùx ) 1010  #£ssiÚ_ùx ùx ) 1014 #ifdeà __ýlu¥lus 1018  ~<Ý’s¦/s¦2.h > 1019  ~<Ý’s¦/s¦3.h > 1020  ~<Ý’s¦/Žs1.h > 1021  ~<Ý’s¦/dŽs1.h > 1022  ~<Ý’s¦/s¦23.h > 1024 #ifdeà __ýlu¥lus 1029  #SSL_£t_­p_d©a ( s , ¬g è( `SSL_£t_ex_d©a (s,0,(*ïrg)) ) 1030  #SSL_g‘_­p_d©a ( s è( `SSL_g‘_ex_d©a (s,0)) ) 1031  #SSL_SESSION_£t_­p_d©a ( s , a è( `SSL_SESSION_£t_ex_d©a (s,0,(*ï)) ) 1032  #SSL_SESSION_g‘_­p_d©a ( s è( `SSL_SESSION_g‘_ex_d©a (s,0)) ) 1033  #SSL_CTX_g‘_­p_d©a ( ùx è( `SSL_CTX_g‘_ex_d©a (ùx,0)) ) 1034  #SSL_CTX_£t_­p_d©a ( ùx , ¬g è( `SSL_CTX_£t_ex_d©a (ùx,0,(*ïrg)) ) 1043  #SSL_ST_CONNECT 0x1000 ) 1044  #SSL_ST_ACCEPT 0x2000 ) 1045  #SSL_ST_MASK 0x0FFF ) 1046  #SSL_ST_INIT ( SSL_ST_CONNECT | SSL_ST_ACCEPT ) ) 1047  #SSL_ST_BEFORE 0x4000 ) 1048  #SSL_ST_OK 0x03 ) 1049  #SSL_ST_RENEGOTIATE (0x04| SSL_ST_INIT ) ) 1051  #SSL_CB_LOOP 0x01 ) 1052  #SSL_CB_EXIT 0x02 ) 1053  #SSL_CB_READ 0x04 ) 1054  #SSL_CB_WRITE 0x08 ) 1055  #SSL_CB_ALERT 0x4000 ) 1056  #SSL_CB_READ_ALERT ( SSL_CB_ALERT | SSL_CB_READ ) ) 1057  #SSL_CB_WRITE_ALERT ( SSL_CB_ALERT | SSL_CB_WRITE ) ) 1058  #SSL_CB_ACCEPT_LOOP ( SSL_ST_ACCEPT | SSL_CB_LOOP ) ) 1059  #SSL_CB_ACCEPT_EXIT ( SSL_ST_ACCEPT | SSL_CB_EXIT ) ) 1060  #SSL_CB_CONNECT_LOOP ( SSL_ST_CONNECT | SSL_CB_LOOP ) ) 1061  #SSL_CB_CONNECT_EXIT ( SSL_ST_CONNECT | SSL_CB_EXIT ) ) 1062  #SSL_CB_HANDSHAKE_START 0x10 ) 1063  #SSL_CB_HANDSHAKE_DONE 0x20 ) 1066  #SSL_g‘_¡©e ( a è `SSL_¡©e ×) ) 1067  #SSL_is_š™_fšished ( a è( `SSL_¡©e ×è=ð SSL_ST_OK ) ) 1068  #SSL_š_š™ ( a è( `SSL_¡©e ×)& SSL_ST_INIT ) ) 1069  #SSL_š_befÜe ( a è( `SSL_¡©e ×)& SSL_ST_BEFORE ) ) 1070  #SSL_š_cÚÃù_š™ ( a è( `SSL_¡©e ×)& SSL_ST_CONNECT ) ) 1071  #SSL_š_acû±_š™ ( a è( `SSL_¡©e ×)& SSL_ST_ACCEPT ) ) 1075  #SSL_ST_READ_HEADER 0xF0 ) 1076  #SSL_ST_READ_BODY 0xF1 ) 1077  #SSL_ST_READ_DONE 0xF2 ) 1083 size_t SSL_g‘_fšished (cÚ¡ SSL * s , * buf , size_ˆ couÁ ); 1084 size_t SSL_g‘_³”_fšished (cÚ¡ SSL * s , * buf , size_ˆ couÁ ); 1088  #SSL_VERIFY_NONE 0x00 ) 1089  #SSL_VERIFY_PEER 0x01 ) 1090  #SSL_VERIFY_FAIL_IF_NO_PEER_CERT 0x02 ) 1091  #SSL_VERIFY_CLIENT_ONCE 0x04 ) 1093  #O³nSSL_add_s¦_®gÜ™hms (è `SSL_lib¿ry_š™ () ) 1094  #SSL—y_add_s¦_®gÜ™hms (è `SSL_lib¿ry_š™ () ) 1098  #SSL_CTX_£t_deçuÉ_v”ify ( a , b , c è `SSL_CTX_£t_v”ify ×,b,c) ) 1099  #SSL_£t_´ef_ch” ( c , n è `SSL_£t_ch”_li¡ (c,n) ) 1100  #SSL_add_£ssiÚ ( a , b è `SSL_CTX_add_£ssiÚ (×),(b)) ) 1101  #SSL_»move_£ssiÚ ( a , b è `SSL_CTX_»move_£ssiÚ (×),(b)) ) 1102  #SSL_æush_£ssiÚs ( a , b è `SSL_CTX_æush_£ssiÚs (×),(b)) ) 1105  #SSL_g‘_ch” ( s ) \ 1106 `SSL_CIPHER_g‘_Çme ( `SSL_g‘_cu¼’t_ch” ( s )) ) 1107  #SSL_g‘_ch”_b™s ( s , Å ) \ 1108 `SSL_CIPHER_g‘_b™s ( `SSL_g‘_cu¼’t_ch” ( s ), Å ) ) 1109  #SSL_g‘_ch”_v”siÚ ( s ) \ 1110 `SSL_CIPHER_g‘_v”siÚ ( `SSL_g‘_cu¼’t_ch” ( s )) ) 1111  #SSL_g‘_ch”_Çme ( s ) \ 1112 `SSL_CIPHER_g‘_Çme ( `SSL_g‘_cu¼’t_ch” ( s )) ) 1113  #SSL_g‘_time ( a è `SSL_SESSION_g‘_time ×) ) 1114  #SSL_£t_time ( a , b è `SSL_SESSION_£t_time (×),(b)) ) 1115  #SSL_g‘_timeout ( a è `SSL_SESSION_g‘_timeout ×) ) 1116  #SSL_£t_timeout ( a , b è `SSL_SESSION_£t_timeout (×),(b)) ) 1119  #d2i_SSL_SESSION_bio ( bp , s_id è `ASN1_d2i_bio_of ( SSL_SESSION , SSL_SESSION_Ãw , d2i_SSL_SESSION ,bp,s_id) ) 1120  #i2d_SSL_SESSION_bio ( bp , s_id è `ASN1_i2d_bio_of ( SSL_SESSION , i2d_SSL_SESSION ,bp,s_id) ) 1121  #PEM_»ad_SSL_SESSION ( å , x , cb , u è( SSL_SESSION *) `PEM_ASN1_»ad ( \ 1122 (*(*)()) d2i_SSL_SESSION , PEM_STRING_SSL_SESSION , å ,(**) x , cb , u ) ) 1123  #PEM_»ad_bio_SSL_SESSION ( bp , x , cb , u è `PEM_ASN1_»ad_bio_of ( SSL_SESSION , d2i_SSL_SESSION , PEM_STRING_SSL_SESSION ,bp,x,cb,u) ) 1124  #PEM_wr™e_SSL_SESSION ( å , x ) \ 1125 `PEM_ASN1_wr™e (((*)()) i2d_SSL_SESSION , \ 1126 PEM_STRING_SSL_SESSION , å , (*) x , NULL ,NULL,0,NULL,NULL) ) 1127  #PEM_wr™e_bio_SSL_SESSION ( bp , x ) \ 1128 `PEM_ASN1_wr™e_bio_of ( SSL_SESSION , i2d_SSL_SESSION , PEM_STRING_SSL_SESSION , bp , x , NULL ,NULL,0,NULL,NULL) ) 1131  #SSL_AD_REASON_OFFSET 1000 ) 1133  #SSL_AD_CLOSE_NOTIFY SSL3_AD_CLOSE_NOTIFY ) 1134  #SSL_AD_UNEXPECTED_MESSAGE SSL3_AD_UNEXPECTED_MESSAGE ) 1135  #SSL_AD_BAD_RECORD_MAC SSL3_AD_BAD_RECORD_MAC ) 1136  #SSL_AD_DECRYPTION_FAILED TLS1_AD_DECRYPTION_FAILED ) 1137  #SSL_AD_RECORD_OVERFLOW TLS1_AD_RECORD_OVERFLOW ) 1138  #SSL_AD_DECOMPRESSION_FAILURE SSL3_AD_DECOMPRESSION_FAILURE ) 1139  #SSL_AD_HANDSHAKE_FAILURE SSL3_AD_HANDSHAKE_FAILURE ) 1140  #SSL_AD_NO_CERTIFICATE SSL3_AD_NO_CERTIFICATE ) 1141  #SSL_AD_BAD_CERTIFICATE SSL3_AD_BAD_CERTIFICATE ) 1142  #SSL_AD_UNSUPPORTED_CERTIFICATE SSL3_AD_UNSUPPORTED_CERTIFICATE ) 1143  #SSL_AD_CERTIFICATE_REVOKED SSL3_AD_CERTIFICATE_REVOKED ) 1144  #SSL_AD_CERTIFICATE_EXPIRED SSL3_AD_CERTIFICATE_EXPIRED ) 1145  #SSL_AD_CERTIFICATE_UNKNOWN SSL3_AD_CERTIFICATE_UNKNOWN ) 1146  #SSL_AD_ILLEGAL_PARAMETER SSL3_AD_ILLEGAL_PARAMETER ) 1147  #SSL_AD_UNKNOWN_CA TLS1_AD_UNKNOWN_CA ) 1148  #SSL_AD_ACCESS_DENIED TLS1_AD_ACCESS_DENIED ) 1149  #SSL_AD_DECODE_ERROR TLS1_AD_DECODE_ERROR ) 1150  #SSL_AD_DECRYPT_ERROR TLS1_AD_DECRYPT_ERROR ) 1151  #SSL_AD_EXPORT_RESTRICTION TLS1_AD_EXPORT_RESTRICTION ) 1152  #SSL_AD_PROTOCOL_VERSION TLS1_AD_PROTOCOL_VERSION ) 1153  #SSL_AD_INSUFFICIENT_SECURITY TLS1_AD_INSUFFICIENT_SECURITY ) 1154  #SSL_AD_INTERNAL_ERROR TLS1_AD_INTERNAL_ERROR ) 1155  #SSL_AD_USER_CANCELLED TLS1_AD_USER_CANCELLED ) 1156  #SSL_AD_NO_RENEGOTIATION TLS1_AD_NO_RENEGOTIATION ) 1157  #SSL_AD_UNSUPPORTED_EXTENSION TLS1_AD_UNSUPPORTED_EXTENSION ) 1158  #SSL_AD_CERTIFICATE_UNOBTAINABLE TLS1_AD_CERTIFICATE_UNOBTAINABLE ) 1159  #SSL_AD_UNRECOGNIZED_NAME TLS1_AD_UNRECOGNIZED_NAME ) 1161  #SSL_ERROR_NONE 0 ) 1162  #SSL_ERROR_SSL 1 ) 1163  #SSL_ERROR_WANT_READ 2 ) 1164  #SSL_ERROR_WANT_WRITE 3 ) 1165  #SSL_ERROR_WANT_X509_LOOKUP 4 ) 1166  #SSL_ERROR_SYSCALL 5 ) 1167  #SSL_ERROR_ZERO_RETURN 6 ) 1168  #SSL_ERROR_WANT_CONNECT 7 ) 1169  #SSL_ERROR_WANT_ACCEPT 8 ) 1171  #SSL_CTRL_NEED_TMP_RSA 1 ) 1172  #SSL_CTRL_SET_TMP_RSA 2 ) 1173  #SSL_CTRL_SET_TMP_DH 3 ) 1174  #SSL_CTRL_SET_TMP_ECDH 4 ) 1175  #SSL_CTRL_SET_TMP_RSA_CB 5 ) 1176  #SSL_CTRL_SET_TMP_DH_CB 6 ) 1177  #SSL_CTRL_SET_TMP_ECDH_CB 7 ) 1179  #SSL_CTRL_GET_SESSION_REUSED 8 ) 1180  #SSL_CTRL_GET_CLIENT_CERT_REQUEST 9 ) 1181  #SSL_CTRL_GET_NUM_RENEGOTIATIONS 10 ) 1182  #SSL_CTRL_CLEAR_NUM_RENEGOTIATIONS 11 ) 1183  #SSL_CTRL_GET_TOTAL_RENEGOTIATIONS 12 ) 1184  #SSL_CTRL_GET_FLAGS 13 ) 1185  #SSL_CTRL_EXTRA_CHAIN_CERT 14 ) 1187  #SSL_CTRL_SET_MSG_CALLBACK 15 ) 1188  #SSL_CTRL_SET_MSG_CALLBACK_ARG 16 ) 1191  #SSL_CTRL_SET_MTU 17 ) 1193  #SSL_CTRL_SESS_NUMBER 20 ) 1194  #SSL_CTRL_SESS_CONNECT 21 ) 1195  #SSL_CTRL_SESS_CONNECT_GOOD 22 ) 1196  #SSL_CTRL_SESS_CONNECT_RENEGOTIATE 23 ) 1197  #SSL_CTRL_SESS_ACCEPT 24 ) 1198  #SSL_CTRL_SESS_ACCEPT_GOOD 25 ) 1199  #SSL_CTRL_SESS_ACCEPT_RENEGOTIATE 26 ) 1200  #SSL_CTRL_SESS_HIT 27 ) 1201  #SSL_CTRL_SESS_CB_HIT 28 ) 1202  #SSL_CTRL_SESS_MISSES 29 ) 1203  #SSL_CTRL_SESS_TIMEOUTS 30 ) 1204  #SSL_CTRL_SESS_CACHE_FULL 31 ) 1205  #SSL_CTRL_OPTIONS 32 ) 1206  #SSL_CTRL_MODE 33 ) 1208  #SSL_CTRL_GET_READ_AHEAD 40 ) 1209  #SSL_CTRL_SET_READ_AHEAD 41 ) 1210  #SSL_CTRL_SET_SESS_CACHE_SIZE 42 ) 1211  #SSL_CTRL_GET_SESS_CACHE_SIZE 43 ) 1212  #SSL_CTRL_SET_SESS_CACHE_MODE 44 ) 1213  #SSL_CTRL_GET_SESS_CACHE_MODE 45 ) 1215  #SSL_CTRL_GET_MAX_CERT_LIST 50 ) 1216  #SSL_CTRL_SET_MAX_CERT_LIST 51 ) 1219 #iâdeà OPENSSL_NO_TLSEXT 1220  #SSL_CTRL_SET_TLSEXT_SERVERNAME_CB 53 ) 1221  #SSL_CTRL_SET_TLSEXT_SERVERNAME_ARG 54 ) 1222  #SSL_CTRL_SET_TLSEXT_HOSTNAME 55 ) 1223  #SSL_CTRL_SET_TLSEXT_DEBUG_CB 56 ) 1224  #SSL_CTRL_SET_TLSEXT_DEBUG_ARG 57 ) 1225  #SSL_CTRL_GET_TLSEXT_TICKET_KEYS 58 ) 1226  #SSL_CTRL_SET_TLSEXT_TICKET_KEYS 59 ) 1229  #SSL_£ssiÚ_»u£d ( s¦ ) \ 1230 `SSL_ù¾ (( s¦ ), SSL_CTRL_GET_SESSION_REUSED ,0, NULL ) ) 1231  #SSL_num_»ÃgÙŸtiÚs ( s¦ ) \ 1232 `SSL_ù¾ (( s¦ ), SSL_CTRL_GET_NUM_RENEGOTIATIONS ,0, NULL ) ) 1233  #SSL_þ—r_num_»ÃgÙŸtiÚs ( s¦ ) \ 1234 `SSL_ù¾ (( s¦ ), SSL_CTRL_CLEAR_NUM_RENEGOTIATIONS ,0, NULL ) ) 1235  #SSL_tÙ®_»ÃgÙŸtiÚs ( s¦ ) \ 1236 `SSL_ù¾ (( s¦ ), SSL_CTRL_GET_TOTAL_RENEGOTIATIONS ,0, NULL ) ) 1238  #SSL_CTX_Ãed_tmp_RSA ( ùx ) \ 1239 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_NEED_TMP_RSA ,0, NULL ) ) 1240  #SSL_CTX_£t_tmp_r§ ( ùx , r§ ) \ 1241 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SET_TMP_RSA ,0,(*) r§ ) ) 1242  #SSL_CTX_£t_tmp_dh ( ùx , dh ) \ 1243 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SET_TMP_DH ,0,(*) dh ) ) 1244  #SSL_CTX_£t_tmp_ecdh ( ùx , ecdh ) \ 1245 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SET_TMP_ECDH ,0,(*) ecdh ) ) 1247  #SSL_Ãed_tmp_RSA ( s¦ ) \ 1248 `SSL_ù¾ ( s¦ , SSL_CTRL_NEED_TMP_RSA ,0, NULL ) ) 1249  #SSL_£t_tmp_r§ ( s¦ , r§ ) \ 1250 `SSL_ù¾ ( s¦ , SSL_CTRL_SET_TMP_RSA ,0,(*) r§ ) ) 1251  #SSL_£t_tmp_dh ( s¦ , dh ) \ 1252 `SSL_ù¾ ( s¦ , SSL_CTRL_SET_TMP_DH ,0,(*) dh ) ) 1253  #SSL_£t_tmp_ecdh ( s¦ , ecdh ) \ 1254 `SSL_ù¾ ( s¦ , SSL_CTRL_SET_TMP_ECDH ,0,(*) ecdh ) ) 1256  #SSL_CTX_add_exŒa_chaš_û¹ ( ùx , x509 ) \ 1257 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_EXTRA_CHAIN_CERT ,0,(*) x509 ) ) 1259 #iâdeà OPENSSL_NO_BIO 1260 BIO_METHOD * BIO_f_s¦ (); 1261 BIO * BIO_Ãw_s¦ ( SSL_CTX * ùx , þ›Á ); 1262 BIO * BIO_Ãw_s¦_cÚÃù ( SSL_CTX * ùx ); 1263 BIO * BIO_Ãw_bufãr_s¦_cÚÃù ( SSL_CTX * ùx ); 1264  BIO_s¦_cÝy_£ssiÚ_id ( BIO * to ,BIO * äom ); 1265  BIO_s¦_shutdown ( BIO * s¦_bio ); 1269  SSL_CTX_£t_ch”_li¡ ( SSL_CTX *,cÚ¡ * ¡r ); 1270 SSL_CTX * SSL_CTX_Ãw ( SSL_METHOD * m‘h ); 1271  SSL_CTX_ä“ ( SSL_CTX *); 1272  SSL_CTX_£t_timeout ( SSL_CTX * ùx , t ); 1273  SSL_CTX_g‘_timeout (cÚ¡ SSL_CTX * ùx ); 1274 X509_STORE * SSL_CTX_g‘_û¹_¡Üe (cÚ¡ SSL_CTX *); 1275  SSL_CTX_£t_û¹_¡Üe ( SSL_CTX *, X509_STORE *); 1276  SSL_wªt (cÚ¡ SSL * s ); 1277  SSL_þ—r ( SSL * s ); 1279  SSL_CTX_æush_£ssiÚs ( SSL_CTX * ùx , tm ); 1281 SSL_CIPHER * SSL_g‘_cu¼’t_ch” (cÚ¡ SSL * s ); 1282  SSL_CIPHER_g‘_b™s (cÚ¡ SSL_CIPHER * c ,* ®g_b™s ); 1283 * SSL_CIPHER_g‘_v”siÚ (cÚ¡ SSL_CIPHER * c ); 1284 cÚ¡ * SSL_CIPHER_g‘_Çme (cÚ¡ SSL_CIPHER * c ); 1286  SSL_g‘_fd (cÚ¡ SSL * s ); 1287  SSL_g‘_rfd (cÚ¡ SSL * s ); 1288  SSL_g‘_wfd (cÚ¡ SSL * s ); 1289 cÚ¡ * SSL_g‘_ch”_li¡ (cÚ¡ SSL * s , n ); 1290 * SSL_g‘_sh¬ed_ch”s (cÚ¡ SSL * s , * buf ,  Ën ); 1291  SSL_g‘_»ad_ah—d (cÚ¡ SSL * s ); 1292  SSL_³ndšg (cÚ¡ SSL * s ); 1293 #iâdeà OPENSSL_NO_SOCK 1294  SSL_£t_fd ( SSL * s ,  fd ); 1295  SSL_£t_rfd ( SSL * s ,  fd ); 1296  SSL_£t_wfd ( SSL * s ,  fd ); 1298 #iâdeà OPENSSL_NO_BIO 1299  SSL_£t_bio ( SSL * s , BIO * rbio ,BIO * wbio ); 1300 BIO * SSL_g‘_rbio (cÚ¡ SSL * s ); 1301 BIO * SSL_g‘_wbio (cÚ¡ SSL * s ); 1303  SSL_£t_ch”_li¡ ( SSL * s , cÚ¡ * ¡r ); 1304  SSL_£t_»ad_ah—d ( SSL * s ,  yes ); 1305  SSL_g‘_v”ify_mode (cÚ¡ SSL * s ); 1306  SSL_g‘_v”ify_d•th (cÚ¡ SSL * s ); 1307 (* SSL_g‘_v”ify_ÿÎback (cÚ¡ SSL * s ))(, X509_STORE_CTX *); 1308  SSL_£t_v”ify ( SSL * s ,  mode , 1309 (* ÿÎback )( ok , X509_STORE_CTX * ùx )); 1310  SSL_£t_v”ify_d•th ( SSL * s ,  d•th ); 1311 #iâdeà OPENSSL_NO_RSA 1312  SSL_u£_RSAPriv©eKey ( SSL * s¦ , RSA * r§ ); 1314  SSL_u£_RSAPriv©eKey_ASN1 ( SSL * s¦ , * d ,  Ën ); 1315  SSL_u£_Priv©eKey ( SSL * s¦ , EVP_PKEY * pkey ); 1316  SSL_u£_Priv©eKey_ASN1 ( pk , SSL * s¦ , cÚ¡ * d ,  Ën ); 1317  SSL_u£_û¹ifiÿ‹ ( SSL * s¦ , X509 * x ); 1318  SSL_u£_û¹ifiÿ‹_ASN1 ( SSL * s¦ , cÚ¡ * d ,  Ën ); 1320 #iâdeà OPENSSL_NO_STDIO 1321  SSL_u£_RSAPriv©eKey_fže ( SSL * s¦ , cÚ¡ * fže ,  ty³ ); 1322  SSL_u£_Priv©eKey_fže ( SSL * s¦ , cÚ¡ * fže ,  ty³ ); 1323  SSL_u£_û¹ifiÿ‹_fže ( SSL * s¦ , cÚ¡ * fže ,  ty³ ); 1324  SSL_CTX_u£_RSAPriv©eKey_fže ( SSL_CTX * ùx , cÚ¡ * fže ,  ty³ ); 1325  SSL_CTX_u£_Priv©eKey_fže ( SSL_CTX * ùx , cÚ¡ * fže ,  ty³ ); 1326  SSL_CTX_u£_û¹ifiÿ‹_fže ( SSL_CTX * ùx , cÚ¡ * fže ,  ty³ ); 1327  SSL_CTX_u£_û¹ifiÿ‹_chaš_fže ( SSL_CTX * ùx , cÚ¡ * fže ); 1328 STACK_OF ( X509_NAME è* SSL_lßd_þ›Á_CA_fže (cÚ¡ * fže ); 1329  SSL_add_fže_û¹_subjeùs_to_¡ack ( STACK_OF ( X509_NAME è* ¡ackCAs , 1330 cÚ¡ * fže ); 1331 #iâdeà OPENSSL_SYS_VMS 1332 #iâdeà OPENSSL_SYS_MACINTOSH_CLASSIC 1333  SSL_add_dœ_û¹_subjeùs_to_¡ack ( STACK_OF ( X509_NAME è* ¡ackCAs , 1334 cÚ¡ * dœ ); 1340  SSL_lßd_”rÜ_¡ršgs (); 1341 cÚ¡ * SSL_¡©e_¡ršg (cÚ¡ SSL * s ); 1342 cÚ¡ * SSL_r¡©e_¡ršg (cÚ¡ SSL * s ); 1343 cÚ¡ * SSL_¡©e_¡ršg_lÚg (cÚ¡ SSL * s ); 1344 cÚ¡ * SSL_r¡©e_¡ršg_lÚg (cÚ¡ SSL * s ); 1345  SSL_SESSION_g‘_time (cÚ¡ SSL_SESSION * s ); 1346  SSL_SESSION_£t_time ( SSL_SESSION * s ,  t ); 1347  SSL_SESSION_g‘_timeout (cÚ¡ SSL_SESSION * s ); 1348  SSL_SESSION_£t_timeout ( SSL_SESSION * s ,  t ); 1349  SSL_cÝy_£ssiÚ_id ( SSL * to ,cÚ¡ SSL * äom ); 1351 SSL_SESSION * SSL_SESSION_Ãw (); 1352  SSL_SESSION_hash (cÚ¡ SSL_SESSION * a ); 1353  SSL_SESSION_cmp (cÚ¡ SSL_SESSION * a ,cÚ¡ SSL_SESSION * b ); 1354 cÚ¡ * SSL_SESSION_g‘_id (cÚ¡ SSL_SESSION * s , * Ën ); 1355 #iâdeà OPENSSL_NO_FP_API 1356  SSL_SESSION_´št_å ( FILE * å ,cÚ¡ SSL_SESSION * £s ); 1358 #iâdeà OPENSSL_NO_BIO 1359  SSL_SESSION_´št ( BIO * å ,cÚ¡ SSL_SESSION * £s ); 1361  SSL_SESSION_ä“ ( SSL_SESSION * £s ); 1362  i2d_SSL_SESSION ( SSL_SESSION * š ,** µ ); 1363  SSL_£t_£ssiÚ ( SSL * to , SSL_SESSION * £ssiÚ ); 1364  SSL_CTX_add_£ssiÚ ( SSL_CTX * s , SSL_SESSION * c ); 1365  SSL_CTX_»move_£ssiÚ ( SSL_CTX *, SSL_SESSION * c ); 1366  SSL_CTX_£t_g’”©e_£ssiÚ_id ( SSL_CTX *, GEN_SESSION_CB ); 1367  SSL_£t_g’”©e_£ssiÚ_id ( SSL *, GEN_SESSION_CB ); 1368  SSL_has_m©chšg_£ssiÚ_id (cÚ¡ SSL * s¦ , cÚ¡ * id , 1369  id_Ën ); 1370 SSL_SESSION * d2i_SSL_SESSION (SSL_SESSION ** a ,cÚ¡ ** µ , 1371  Ëngth ); 1373 #ifdeà HEADER_X509_H 1374 X509 * SSL_g‘_³”_û¹ifiÿ‹ (cÚ¡ SSL * s ); 1377 STACK_OF ( X509 è* SSL_g‘_³”_û¹_chaš (cÚ¡ SSL * s ); 1379  SSL_CTX_g‘_v”ify_mode (cÚ¡ SSL_CTX * ùx ); 1380  SSL_CTX_g‘_v”ify_d•th (cÚ¡ SSL_CTX * ùx ); 1381 (* SSL_CTX_g‘_v”ify_ÿÎback (cÚ¡ SSL_CTX * ùx ))(, X509_STORE_CTX *); 1382  SSL_CTX_£t_v”ify ( SSL_CTX * ùx , mode , 1383 (* ÿÎback )(, X509_STORE_CTX *)); 1384  SSL_CTX_£t_v”ify_d•th ( SSL_CTX * ùx , d•th ); 1385  SSL_CTX_£t_û¹_v”ify_ÿÎback ( SSL_CTX * ùx , (* cb )( X509_STORE_CTX *,*), * ¬g ); 1386 #iâdeà OPENSSL_NO_RSA 1387  SSL_CTX_u£_RSAPriv©eKey ( SSL_CTX * ùx , RSA * r§ ); 1389  SSL_CTX_u£_RSAPriv©eKey_ASN1 ( SSL_CTX * ùx , cÚ¡ * d ,  Ën ); 1390  SSL_CTX_u£_Priv©eKey ( SSL_CTX * ùx , EVP_PKEY * pkey ); 1391  SSL_CTX_u£_Priv©eKey_ASN1 ( pk , SSL_CTX * ùx , 1392 cÚ¡ * d ,  Ën ); 1393  SSL_CTX_u£_û¹ifiÿ‹ ( SSL_CTX * ùx , X509 * x ); 1394  SSL_CTX_u£_û¹ifiÿ‹_ASN1 ( SSL_CTX * ùx ,  Ën , cÚ¡ * d ); 1396  SSL_CTX_£t_deçuÉ_·sswd_cb ( SSL_CTX * ùx , ³m_·sswÜd_cb * cb ); 1397  SSL_CTX_£t_deçuÉ_·sswd_cb_u£rd©a ( SSL_CTX * ùx , * u ); 1399  SSL_CTX_check_´iv©e_key (cÚ¡ SSL_CTX * ùx ); 1400  SSL_check_´iv©e_key (cÚ¡ SSL * ùx ); 1402  SSL_CTX_£t_£ssiÚ_id_cÚ‹xt ( SSL_CTX * ùx ,cÚ¡ * sid_ùx , 1403  sid_ùx_Ën ); 1405 SSL * SSL_Ãw ( SSL_CTX * ùx ); 1406  SSL_£t_£ssiÚ_id_cÚ‹xt ( SSL * s¦ ,cÚ¡ * sid_ùx , 1407  sid_ùx_Ën ); 1409  SSL_CTX_£t_pu½o£ ( SSL_CTX * s ,  pu½o£ ); 1410  SSL_£t_pu½o£ ( SSL * s ,  pu½o£ ); 1411  SSL_CTX_£t_Œu¡ ( SSL_CTX * s ,  Œu¡ ); 1412  SSL_£t_Œu¡ ( SSL * s ,  Œu¡ ); 1414  SSL_ä“ ( SSL * s¦ ); 1415  SSL_acû± ( SSL * s¦ ); 1416  SSL_cÚÃù ( SSL * s¦ ); 1417  SSL_»ad ( SSL * s¦ ,* buf , num ); 1418  SSL_³ek ( SSL * s¦ ,* buf , num ); 1419  SSL_wr™e ( SSL * s¦ ,cÚ¡ * buf , num ); 1420  SSL_ù¾ ( SSL * s¦ , cmd ,  Ïrg , * ·rg ); 1421  SSL_ÿÎback_ù¾ ( SSL *, , (*)()); 1422  SSL_CTX_ù¾ ( SSL_CTX * ùx , cmd ,  Ïrg , * ·rg ); 1423  SSL_CTX_ÿÎback_ù¾ ( SSL_CTX *, , (*)()); 1425  SSL_g‘_”rÜ (cÚ¡ SSL * s , »t_code ); 1426 cÚ¡ * SSL_g‘_v”siÚ (cÚ¡ SSL * s ); 1429  SSL_CTX_£t_s¦_v”siÚ ( SSL_CTX * ùx , SSL_METHOD * m‘h ); 1431 SSL_METHOD * SSLv2_m‘hod (); 1432 SSL_METHOD * SSLv2_£rv”_m‘hod (); 1433 SSL_METHOD * SSLv2_þ›Á_m‘hod (); 1435 SSL_METHOD * SSLv3_m‘hod (); 1436 SSL_METHOD * SSLv3_£rv”_m‘hod (); 1437 SSL_METHOD * SSLv3_þ›Á_m‘hod (); 1439 SSL_METHOD * SSLv23_m‘hod (); 1440 SSL_METHOD * SSLv23_£rv”_m‘hod (); 1441 SSL_METHOD * SSLv23_þ›Á_m‘hod (); 1443 SSL_METHOD * TLSv1_m‘hod (); 1444 SSL_METHOD * TLSv1_£rv”_m‘hod (); 1445 SSL_METHOD * TLSv1_þ›Á_m‘hod (); 1447 SSL_METHOD * DTLSv1_m‘hod (); 1448 SSL_METHOD * DTLSv1_£rv”_m‘hod (); 1449 SSL_METHOD * DTLSv1_þ›Á_m‘hod (); 1451 STACK_OF ( SSL_CIPHER è* SSL_g‘_ch”s (cÚ¡ SSL * s ); 1453  SSL_do_hªdshake ( SSL * s ); 1454  SSL_»ÃgÙŸ‹ ( SSL * s ); 1455  SSL_»ÃgÙŸ‹_³ndšg ( SSL * s ); 1456  SSL_shutdown ( SSL * s ); 1458 SSL_METHOD * SSL_g‘_s¦_m‘hod ( SSL * s ); 1459  SSL_£t_s¦_m‘hod ( SSL * s , SSL_METHOD * m‘hod ); 1460 cÚ¡ * SSL_®”t_ty³_¡ršg_lÚg ( v®ue ); 1461 cÚ¡ * SSL_®”t_ty³_¡ršg ( v®ue ); 1462 cÚ¡ * SSL_®”t_desc_¡ršg_lÚg ( v®ue ); 1463 cÚ¡ * SSL_®”t_desc_¡ršg ( v®ue ); 1465  SSL_£t_þ›Á_CA_li¡ ( SSL * s , STACK_OF ( X509_NAME è* Çme_li¡ ); 1466  SSL_CTX_£t_þ›Á_CA_li¡ ( SSL_CTX * ùx , STACK_OF ( X509_NAME è* Çme_li¡ ); 1467 STACK_OF ( X509_NAME è* SSL_g‘_þ›Á_CA_li¡ (cÚ¡ SSL * s ); 1468 STACK_OF ( X509_NAME è* SSL_CTX_g‘_þ›Á_CA_li¡ (cÚ¡ SSL_CTX * s ); 1469  SSL_add_þ›Á_CA ( SSL * s¦ , X509 * x ); 1470  SSL_CTX_add_þ›Á_CA ( SSL_CTX * ùx , X509 * x ); 1472  SSL_£t_cÚÃù_¡©e ( SSL * s ); 1473  SSL_£t_acû±_¡©e ( SSL * s ); 1475  SSL_g‘_deçuÉ_timeout (cÚ¡ SSL * s ); 1477  SSL_lib¿ry_š™ (); 1479 * SSL_CIPHER_desütiÚ ( SSL_CIPHER *,* buf , size ); 1480 STACK_OF ( X509_NAME è* SSL_dup_CA_li¡ (STACK_OF(X509_NAMEè* sk ); 1482 SSL * SSL_dup (SSL * s¦ ); 1484 X509 * SSL_g‘_û¹ifiÿ‹ (cÚ¡ SSL * s¦ ); 1485  evp_pkey_¡ * SSL_g‘_´iv©ekey ( SSL * s¦ ); 1487  SSL_CTX_£t_qu›t_shutdown ( SSL_CTX * ùx , mode ); 1488  SSL_CTX_g‘_qu›t_shutdown (cÚ¡ SSL_CTX * ùx ); 1489  SSL_£t_qu›t_shutdown ( SSL * s¦ , mode ); 1490  SSL_g‘_qu›t_shutdown (cÚ¡ SSL * s¦ ); 1491  SSL_£t_shutdown ( SSL * s¦ , mode ); 1492  SSL_g‘_shutdown (cÚ¡ SSL * s¦ ); 1493  SSL_v”siÚ (cÚ¡ SSL * s¦ ); 1494  SSL_CTX_£t_deçuÉ_v”ify_·ths ( SSL_CTX * ùx ); 1495  SSL_CTX_lßd_v”ify_loÿtiÚs ( SSL_CTX * ùx , cÚ¡ * CAfže , 1496 cÚ¡ * CA·th ); 1497  #SSL_g‘0_£ssiÚ SSL_g‘_£ssiÚ ) 1498 SSL_SESSION * SSL_g‘_£ssiÚ (cÚ¡ SSL * s¦ ); 1499 SSL_SESSION * SSL_g‘1_£ssiÚ ( SSL * s¦ ); 1500 SSL_CTX * SSL_g‘_SSL_CTX (cÚ¡ SSL * s¦ ); 1501 SSL_CTX * SSL_£t_SSL_CTX ( SSL * s¦ , SSL_CTX* ùx ); 1502  SSL_£t_šfo_ÿÎback ( SSL * s¦ , 1503 (* cb )(cÚ¡ SSL * s¦ , ty³ , v® )); 1504 (* SSL_g‘_šfo_ÿÎback (cÚ¡ SSL * s¦ ))(cÚ¡ SSL *s¦, ty³ , v® ); 1505  SSL_¡©e (cÚ¡ SSL * s¦ ); 1507  SSL_£t_v”ify_»suÉ ( SSL * s¦ , v ); 1508  SSL_g‘_v”ify_»suÉ (cÚ¡ SSL * s¦ ); 1510  SSL_£t_ex_d©a ( SSL * s¦ , idx ,* d©a ); 1511 * SSL_g‘_ex_d©a (cÚ¡ SSL * s¦ , idx ); 1512  SSL_g‘_ex_Ãw_šdex ( ¬gl , * ¬gp , CRYPTO_EX_Ãw * Ãw_func , 1513 CRYPTO_EX_dup * dup_func , CRYPTO_EX_ä“ * ä“_func ); 1515  SSL_SESSION_£t_ex_d©a ( SSL_SESSION * ss , idx ,* d©a ); 1516 * SSL_SESSION_g‘_ex_d©a (cÚ¡ SSL_SESSION * ss , idx ); 1517  SSL_SESSION_g‘_ex_Ãw_šdex ( ¬gl , * ¬gp , CRYPTO_EX_Ãw * Ãw_func , 1518 CRYPTO_EX_dup * dup_func , CRYPTO_EX_ä“ * ä“_func ); 1520  SSL_CTX_£t_ex_d©a ( SSL_CTX * s¦ , idx ,* d©a ); 1521 * SSL_CTX_g‘_ex_d©a (cÚ¡ SSL_CTX * s¦ , idx ); 1522  SSL_CTX_g‘_ex_Ãw_šdex ( ¬gl , * ¬gp , CRYPTO_EX_Ãw * Ãw_func , 1523 CRYPTO_EX_dup * dup_func , CRYPTO_EX_ä“ * ä“_func ); 1525  SSL_g‘_ex_d©a_X509_STORE_CTX_idx (); 1527  #SSL_CTX_£ss_£t_ÿche_size ( ùx , t ) \ 1528 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SET_SESS_CACHE_SIZE , t , NULL ) ) 1529  #SSL_CTX_£ss_g‘_ÿche_size ( ùx ) \ 1530 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_GET_SESS_CACHE_SIZE ,0, NULL ) ) 1531  #SSL_CTX_£t_£ssiÚ_ÿche_mode ( ùx , m ) \ 1532 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SET_SESS_CACHE_MODE , m , NULL ) ) 1533  #SSL_CTX_g‘_£ssiÚ_ÿche_mode ( ùx ) \ 1534 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_GET_SESS_CACHE_MODE ,0, NULL ) ) 1536  #SSL_CTX_g‘_deçuÉ_»ad_ah—d ( ùx è `SSL_CTX_g‘_»ad_ah—d (ùx) ) 1537  #SSL_CTX_£t_deçuÉ_»ad_ah—d ( ùx , m è `SSL_CTX_£t_»ad_ah—d (ùx,m) ) 1538  #SSL_CTX_g‘_»ad_ah—d ( ùx ) \ 1539 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_GET_READ_AHEAD ,0, NULL ) ) 1540  #SSL_CTX_£t_»ad_ah—d ( ùx , m ) \ 1541 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SET_READ_AHEAD , m , NULL ) ) 1542  #SSL_CTX_g‘_max_û¹_li¡ ( ùx ) \ 1543 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_GET_MAX_CERT_LIST ,0, NULL ) ) 1544  #SSL_CTX_£t_max_û¹_li¡ ( ùx , m ) \ 1545 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SET_MAX_CERT_LIST , m , NULL ) ) 1546  #SSL_g‘_max_û¹_li¡ ( s¦ ) \ 1547 `SSL_ù¾ ( s¦ , SSL_CTRL_GET_MAX_CERT_LIST ,0, NULL ) ) 1548  #SSL_£t_max_û¹_li¡ ( s¦ , m ) \ 1549 `SSL_ù¾ ( s¦ , SSL_CTRL_SET_MAX_CERT_LIST , m , NULL ) ) 1552 #iâdeà OPENSSL_NO_RSA 1553  SSL_CTX_£t_tmp_r§_ÿÎback ( SSL_CTX * ùx , 1554 RSA *(* cb )( SSL * s¦ , is_expÜt , 1555  keyËngth )); 1557  SSL_£t_tmp_r§_ÿÎback ( SSL * s¦ , 1558 RSA *(* cb )( SSL * s¦ , is_expÜt , 1559  keyËngth )); 1561 #iâdeà OPENSSL_NO_DH 1562  SSL_CTX_£t_tmp_dh_ÿÎback ( SSL_CTX * ùx , 1563 DH *(* dh )( SSL * s¦ , is_expÜt , 1564  keyËngth )); 1565  SSL_£t_tmp_dh_ÿÎback ( SSL * s¦ , 1566 DH *(* dh )( SSL * s¦ , is_expÜt , 1567  keyËngth )); 1569 #iâdeà OPENSSL_NO_ECDH 1570  SSL_CTX_£t_tmp_ecdh_ÿÎback ( SSL_CTX * ùx , 1571 EC_KEY *(* ecdh )( SSL * s¦ , is_expÜt , 1572  keyËngth )); 1573  SSL_£t_tmp_ecdh_ÿÎback ( SSL * s¦ , 1574 EC_KEY *(* ecdh )( SSL * s¦ , is_expÜt , 1575  keyËngth )); 1578 #iâdeà OPENSSL_NO_COMP 1579 cÚ¡ COMP_METHOD * SSL_g‘_cu¼’t_com´essiÚ ( SSL * s ); 1580 cÚ¡ COMP_METHOD * SSL_g‘_cu¼’t_ex·nsiÚ ( SSL * s ); 1581 cÚ¡ * SSL_COMP_g‘_Çme (cÚ¡ COMP_METHOD * comp ); 1582 STACK_OF ( SSL_COMP è* SSL_COMP_g‘_com´essiÚ_m‘hods (); 1583  SSL_COMP_add_com´essiÚ_m‘hod ( id , COMP_METHOD * cm ); 1585 cÚ¡ * SSL_g‘_cu¼’t_com´essiÚ ( SSL * s ); 1586 cÚ¡ * SSL_g‘_cu¼’t_ex·nsiÚ ( SSL * s ); 1587 cÚ¡ * SSL_COMP_g‘_Çme (cÚ¡ * comp ); 1588 * SSL_COMP_g‘_com´essiÚ_m‘hods (); 1589  SSL_COMP_add_com´essiÚ_m‘hod ( id ,* cm ); 1596  ERR_lßd_SSL_¡ršgs (); 1601  #SSL_F_CLIENT_CERTIFICATE 100 ) 1602  #SSL_F_CLIENT_FINISHED 167 ) 1603  #SSL_F_CLIENT_HELLO 101 ) 1604  #SSL_F_CLIENT_MASTER_KEY 102 ) 1605  #SSL_F_D2I_SSL_SESSION 103 ) 1606  #SSL_F_DO_DTLS1_WRITE 245 ) 1607  #SSL_F_DO_SSL3_WRITE 104 ) 1608  #SSL_F_DTLS1_ACCEPT 246 ) 1609  #SSL_F_DTLS1_BUFFER_RECORD 247 ) 1610  #SSL_F_DTLS1_CLIENT_HELLO 248 ) 1611  #SSL_F_DTLS1_CONNECT 249 ) 1612  #SSL_F_DTLS1_ENC 250 ) 1613  #SSL_F_DTLS1_GET_HELLO_VERIFY 251 ) 1614  #SSL_F_DTLS1_GET_MESSAGE 252 ) 1615  #SSL_F_DTLS1_GET_MESSAGE_FRAGMENT 253 ) 1616  #SSL_F_DTLS1_GET_RECORD 254 ) 1617  #SSL_F_DTLS1_OUTPUT_CERT_CHAIN 255 ) 1618  #SSL_F_DTLS1_PREPROCESS_FRAGMENT 277 ) 1619  #SSL_F_DTLS1_PROCESS_OUT_OF_SEQ_MESSAGE 256 ) 1620  #SSL_F_DTLS1_PROCESS_RECORD 257 ) 1621  #SSL_F_DTLS1_READ_BYTES 258 ) 1622  #SSL_F_DTLS1_READ_FAILED 259 ) 1623  #SSL_F_DTLS1_SEND_CERTIFICATE_REQUEST 260 ) 1624  #SSL_F_DTLS1_SEND_CLIENT_CERTIFICATE 261 ) 1625  #SSL_F_DTLS1_SEND_CLIENT_KEY_EXCHANGE 262 ) 1626  #SSL_F_DTLS1_SEND_CLIENT_VERIFY 263 ) 1627  #SSL_F_DTLS1_SEND_HELLO_VERIFY_REQUEST 264 ) 1628  #SSL_F_DTLS1_SEND_SERVER_CERTIFICATE 265 ) 1629  #SSL_F_DTLS1_SEND_SERVER_HELLO 266 ) 1630  #SSL_F_DTLS1_SEND_SERVER_KEY_EXCHANGE 267 ) 1631  #SSL_F_DTLS1_WRITE_APP_DATA_BYTES 268 ) 1632  #SSL_F_GET_CLIENT_FINISHED 105 ) 1633  #SSL_F_GET_CLIENT_HELLO 106 ) 1634  #SSL_F_GET_CLIENT_MASTER_KEY 107 ) 1635  #SSL_F_GET_SERVER_FINISHED 108 ) 1636  #SSL_F_GET_SERVER_HELLO 109 ) 1637  #SSL_F_GET_SERVER_VERIFY 110 ) 1638  #SSL_F_I2D_SSL_SESSION 111 ) 1639  #SSL_F_READ_N 112 ) 1640  #SSL_F_REQUEST_CERTIFICATE 113 ) 1641  #SSL_F_SERVER_FINISH 239 ) 1642  #SSL_F_SERVER_HELLO 114 ) 1643  #SSL_F_SERVER_VERIFY 240 ) 1644  #SSL_F_SSL23_ACCEPT 115 ) 1645  #SSL_F_SSL23_CLIENT_HELLO 116 ) 1646  #SSL_F_SSL23_CONNECT 117 ) 1647  #SSL_F_SSL23_GET_CLIENT_HELLO 118 ) 1648  #SSL_F_SSL23_GET_SERVER_HELLO 119 ) 1649  #SSL_F_SSL23_PEEK 237 ) 1650  #SSL_F_SSL23_READ 120 ) 1651  #SSL_F_SSL23_WRITE 121 ) 1652  #SSL_F_SSL2_ACCEPT 122 ) 1653  #SSL_F_SSL2_CONNECT 123 ) 1654  #SSL_F_SSL2_ENC_INIT 124 ) 1655  #SSL_F_SSL2_GENERATE_KEY_MATERIAL 241 ) 1656  #SSL_F_SSL2_PEEK 234 ) 1657  #SSL_F_SSL2_READ 125 ) 1658  #SSL_F_SSL2_READ_INTERNAL 236 ) 1659  #SSL_F_SSL2_SET_CERTIFICATE 126 ) 1660  #SSL_F_SSL2_WRITE 127 ) 1661  #SSL_F_SSL3_ACCEPT 128 ) 1662  #SSL_F_SSL3_CALLBACK_CTRL 233 ) 1663  #SSL_F_SSL3_CHANGE_CIPHER_STATE 129 ) 1664  #SSL_F_SSL3_CHECK_CERT_AND_ALGORITHM 130 ) 1665  #SSL_F_SSL3_CLIENT_HELLO 131 ) 1666  #SSL_F_SSL3_CONNECT 132 ) 1667  #SSL_F_SSL3_CTRL 213 ) 1668  #SSL_F_SSL3_CTX_CTRL 133 ) 1669  #SSL_F_SSL3_ENC 134 ) 1670  #SSL_F_SSL3_GENERATE_KEY_BLOCK 238 ) 1671  #SSL_F_SSL3_GET_CERTIFICATE_REQUEST 135 ) 1672  #SSL_F_SSL3_GET_CERT_VERIFY 136 ) 1673  #SSL_F_SSL3_GET_CLIENT_CERTIFICATE 137 ) 1674  #SSL_F_SSL3_GET_CLIENT_HELLO 138 ) 1675  #SSL_F_SSL3_GET_CLIENT_KEY_EXCHANGE 139 ) 1676  #SSL_F_SSL3_GET_FINISHED 140 ) 1677  #SSL_F_SSL3_GET_KEY_EXCHANGE 141 ) 1678  #SSL_F_SSL3_GET_MESSAGE 142 ) 1679  #SSL_F_SSL3_GET_NEW_SESSION_TICKET 283 ) 1680  #SSL_F_SSL3_GET_RECORD 143 ) 1681  #SSL_F_SSL3_GET_SERVER_CERTIFICATE 144 ) 1682  #SSL_F_SSL3_GET_SERVER_DONE 145 ) 1683  #SSL_F_SSL3_GET_SERVER_HELLO 146 ) 1684  #SSL_F_SSL3_NEW_SESSION_TICKET 284 ) 1685  #SSL_F_SSL3_OUTPUT_CERT_CHAIN 147 ) 1686  #SSL_F_SSL3_PEEK 235 ) 1687  #SSL_F_SSL3_READ_BYTES 148 ) 1688  #SSL_F_SSL3_READ_N 149 ) 1689  #SSL_F_SSL3_SEND_CERTIFICATE_REQUEST 150 ) 1690  #SSL_F_SSL3_SEND_CLIENT_CERTIFICATE 151 ) 1691  #SSL_F_SSL3_SEND_CLIENT_KEY_EXCHANGE 152 ) 1692  #SSL_F_SSL3_SEND_CLIENT_VERIFY 153 ) 1693  #SSL_F_SSL3_SEND_SERVER_CERTIFICATE 154 ) 1694  #SSL_F_SSL3_SEND_SERVER_HELLO 242 ) 1695  #SSL_F_SSL3_SEND_SERVER_KEY_EXCHANGE 155 ) 1696  #SSL_F_SSL3_SETUP_BUFFERS 156 ) 1697  #SSL_F_SSL3_SETUP_KEY_BLOCK 157 ) 1698  #SSL_F_SSL3_WRITE_BYTES 158 ) 1699  #SSL_F_SSL3_WRITE_PENDING 159 ) 1700  #SSL_F_SSL_ADD_CLIENTHELLO_TLSEXT 272 ) 1701  #SSL_F_SSL_ADD_DIR_CERT_SUBJECTS_TO_STACK 215 ) 1702  #SSL_F_SSL_ADD_FILE_CERT_SUBJECTS_TO_STACK 216 ) 1703  #SSL_F_SSL_ADD_SERVERHELLO_TLSEXT 273 ) 1704  #SSL_F_SSL_BAD_METHOD 160 ) 1705  #SSL_F_SSL_BYTES_TO_CIPHER_LIST 161 ) 1706  #SSL_F_SSL_CERT_DUP 221 ) 1707  #SSL_F_SSL_CERT_INST 222 ) 1708  #SSL_F_SSL_CERT_INSTANTIATE 214 ) 1709  #SSL_F_SSL_CERT_NEW 162 ) 1710  #SSL_F_SSL_CHECK_PRIVATE_KEY 163 ) 1711  #SSL_F_SSL_CHECK_SERVERHELLO_TLSEXT 274 ) 1712  #SSL_F_SSL_CIPHER_PROCESS_RULESTR 230 ) 1713  #SSL_F_SSL_CIPHER_STRENGTH_SORT 231 ) 1714  #SSL_F_SSL_CLEAR 164 ) 1715  #SSL_F_SSL_COMP_ADD_COMPRESSION_METHOD 165 ) 1716  #SSL_F_SSL_CREATE_CIPHER_LIST 166 ) 1717  #SSL_F_SSL_CTRL 232 ) 1718  #SSL_F_SSL_CTX_CHECK_PRIVATE_KEY 168 ) 1719  #SSL_F_SSL_CTX_NEW 169 ) 1720  #SSL_F_SSL_CTX_SET_CIPHER_LIST 269 ) 1721  #SSL_F_SSL_CTX_SET_PURPOSE 226 ) 1722  #SSL_F_SSL_CTX_SET_SESSION_ID_CONTEXT 219 ) 1723  #SSL_F_SSL_CTX_SET_SSL_VERSION 170 ) 1724  #SSL_F_SSL_CTX_SET_TRUST 229 ) 1725  #SSL_F_SSL_CTX_USE_CERTIFICATE 171 ) 1726  #SSL_F_SSL_CTX_USE_CERTIFICATE_ASN1 172 ) 1727  #SSL_F_SSL_CTX_USE_CERTIFICATE_CHAIN_FILE 220 ) 1728  #SSL_F_SSL_CTX_USE_CERTIFICATE_FILE 173 ) 1729  #SSL_F_SSL_CTX_USE_PRIVATEKEY 174 ) 1730  #SSL_F_SSL_CTX_USE_PRIVATEKEY_ASN1 175 ) 1731  #SSL_F_SSL_CTX_USE_PRIVATEKEY_FILE 176 ) 1732  #SSL_F_SSL_CTX_USE_RSAPRIVATEKEY 177 ) 1733  #SSL_F_SSL_CTX_USE_RSAPRIVATEKEY_ASN1 178 ) 1734  #SSL_F_SSL_CTX_USE_RSAPRIVATEKEY_FILE 179 ) 1735  #SSL_F_SSL_DO_HANDSHAKE 180 ) 1736  #SSL_F_SSL_GET_NEW_SESSION 181 ) 1737  #SSL_F_SSL_GET_PREV_SESSION 217 ) 1738  #SSL_F_SSL_GET_SERVER_SEND_CERT 182 ) 1739  #SSL_F_SSL_GET_SIGN_PKEY 183 ) 1740  #SSL_F_SSL_INIT_WBIO_BUFFER 184 ) 1741  #SSL_F_SSL_LOAD_CLIENT_CA_FILE 185 ) 1742  #SSL_F_SSL_NEW 186 ) 1743  #SSL_F_SSL_PEEK 270 ) 1744  #SSL_F_SSL_PREPARE_CLIENTHELLO_TLSEXT 275 ) 1745  #SSL_F_SSL_PREPARE_SERVERHELLO_TLSEXT 276 ) 1746  #SSL_F_SSL_READ 223 ) 1747  #SSL_F_SSL_RSA_PRIVATE_DECRYPT 187 ) 1748  #SSL_F_SSL_RSA_PUBLIC_ENCRYPT 188 ) 1749  #SSL_F_SSL_SESSION_NEW 189 ) 1750  #SSL_F_SSL_SESSION_PRINT_FP 190 ) 1751  #SSL_F_SSL_SESS_CERT_NEW 225 ) 1752  #SSL_F_SSL_SET_CERT 191 ) 1753  #SSL_F_SSL_SET_CIPHER_LIST 271 ) 1754  #SSL_F_SSL_SET_FD 192 ) 1755  #SSL_F_SSL_SET_PKEY 193 ) 1756  #SSL_F_SSL_SET_PURPOSE 227 ) 1757  #SSL_F_SSL_SET_RFD 194 ) 1758  #SSL_F_SSL_SET_SESSION 195 ) 1759  #SSL_F_SSL_SET_SESSION_ID_CONTEXT 218 ) 1760  #SSL_F_SSL_SET_TRUST 228 ) 1761  #SSL_F_SSL_SET_WFD 196 ) 1762  #SSL_F_SSL_SHUTDOWN 224 ) 1763  #SSL_F_SSL_UNDEFINED_CONST_FUNCTION 243 ) 1764  #SSL_F_SSL_UNDEFINED_FUNCTION 197 ) 1765  #SSL_F_SSL_UNDEFINED_VOID_FUNCTION 244 ) 1766  #SSL_F_SSL_USE_CERTIFICATE 198 ) 1767  #SSL_F_SSL_USE_CERTIFICATE_ASN1 199 ) 1768  #SSL_F_SSL_USE_CERTIFICATE_FILE 200 ) 1769  #SSL_F_SSL_USE_PRIVATEKEY 201 ) 1770  #SSL_F_SSL_USE_PRIVATEKEY_ASN1 202 ) 1771  #SSL_F_SSL_USE_PRIVATEKEY_FILE 203 ) 1772  #SSL_F_SSL_USE_RSAPRIVATEKEY 204 ) 1773  #SSL_F_SSL_USE_RSAPRIVATEKEY_ASN1 205 ) 1774  #SSL_F_SSL_USE_RSAPRIVATEKEY_FILE 206 ) 1775  #SSL_F_SSL_VERIFY_CERT_CHAIN 207 ) 1776  #SSL_F_SSL_WRITE 208 ) 1777  #SSL_F_TLS1_CHANGE_CIPHER_STATE 209 ) 1778  #SSL_F_TLS1_ENC 210 ) 1779  #SSL_F_TLS1_SETUP_KEY_BLOCK 211 ) 1780  #SSL_F_WRITE_PENDING 212 ) 1783  #SSL_R_APP_DATA_IN_HANDSHAKE 100 ) 1784  #SSL_R_ATTEMPT_TO_REUSE_SESSION_IN_DIFFERENT_CONTEXT 272 ) 1785  #SSL_R_BAD_ALERT_RECORD 101 ) 1786  #SSL_R_BAD_AUTHENTICATION_TYPE 102 ) 1787  #SSL_R_BAD_CHANGE_CIPHER_SPEC 103 ) 1788  #SSL_R_BAD_CHECKSUM 104 ) 1789  #SSL_R_BAD_DATA_RETURNED_BY_CALLBACK 106 ) 1790  #SSL_R_BAD_DECOMPRESSION 107 ) 1791  #SSL_R_BAD_DH_G_LENGTH 108 ) 1792  #SSL_R_BAD_DH_PUB_KEY_LENGTH 109 ) 1793  #SSL_R_BAD_DH_P_LENGTH 110 ) 1794  #SSL_R_BAD_DIGEST_LENGTH 111 ) 1795  #SSL_R_BAD_DSA_SIGNATURE 112 ) 1796  #SSL_R_BAD_ECC_CERT 304 ) 1797  #SSL_R_BAD_ECDSA_SIGNATURE 305 ) 1798  #SSL_R_BAD_ECPOINT 306 ) 1799  #SSL_R_BAD_HELLO_REQUEST 105 ) 1800  #SSL_R_BAD_LENGTH 271 ) 1801  #SSL_R_BAD_MAC_DECODE 113 ) 1802  #SSL_R_BAD_MESSAGE_TYPE 114 ) 1803  #SSL_R_BAD_PACKET_LENGTH 115 ) 1804  #SSL_R_BAD_PROTOCOL_VERSION_NUMBER 116 ) 1805  #SSL_R_BAD_RESPONSE_ARGUMENT 117 ) 1806  #SSL_R_BAD_RSA_DECRYPT 118 ) 1807  #SSL_R_BAD_RSA_ENCRYPT 119 ) 1808  #SSL_R_BAD_RSA_E_LENGTH 120 ) 1809  #SSL_R_BAD_RSA_MODULUS_LENGTH 121 ) 1810  #SSL_R_BAD_RSA_SIGNATURE 122 ) 1811  #SSL_R_BAD_SIGNATURE 123 ) 1812  #SSL_R_BAD_SSL_FILETYPE 124 ) 1813  #SSL_R_BAD_SSL_SESSION_ID_LENGTH 125 ) 1814  #SSL_R_BAD_STATE 126 ) 1815  #SSL_R_BAD_WRITE_RETRY 127 ) 1816  #SSL_R_BIO_NOT_SET 128 ) 1817  #SSL_R_BLOCK_CIPHER_PAD_IS_WRONG 129 ) 1818  #SSL_R_BN_LIB 130 ) 1819  #SSL_R_CA_DN_LENGTH_MISMATCH 131 ) 1820  #SSL_R_CA_DN_TOO_LONG 132 ) 1821  #SSL_R_CCS_RECEIVED_EARLY 133 ) 1822  #SSL_R_CERTIFICATE_VERIFY_FAILED 134 ) 1823  #SSL_R_CERT_LENGTH_MISMATCH 135 ) 1824  #SSL_R_CHALLENGE_IS_DIFFERENT 136 ) 1825  #SSL_R_CIPHER_CODE_WRONG_LENGTH 137 ) 1826  #SSL_R_CIPHER_OR_HASH_UNAVAILABLE 138 ) 1827  #SSL_R_CIPHER_TABLE_SRC_ERROR 139 ) 1828  #SSL_R_CLIENTHELLO_TLSEXT 157 ) 1829  #SSL_R_COMPRESSED_LENGTH_TOO_LONG 140 ) 1830  #SSL_R_COMPRESSION_FAILURE 141 ) 1831  #SSL_R_COMPRESSION_ID_NOT_WITHIN_PRIVATE_RANGE 307 ) 1832  #SSL_R_COMPRESSION_LIBRARY_ERROR 142 ) 1833  #SSL_R_CONNECTION_ID_IS_DIFFERENT 143 ) 1834  #SSL_R_CONNECTION_TYPE_NOT_SET 144 ) 1835  #SSL_R_COOKIE_MISMATCH 308 ) 1836  #SSL_R_DATA_BETWEEN_CCS_AND_FINISHED 145 ) 1837  #SSL_R_DATA_LENGTH_TOO_LONG 146 ) 1838  #SSL_R_DECRYPTION_FAILED 147 ) 1839  #SSL_R_DECRYPTION_FAILED_OR_BAD_RECORD_MAC 281 ) 1840  #SSL_R_DH_PUBLIC_VALUE_LENGTH_IS_WRONG 148 ) 1841  #SSL_R_DIGEST_CHECK_FAILED 149 ) 1842  #SSL_R_DUPLICATE_COMPRESSION_ID 309 ) 1843  #SSL_R_ECGROUP_TOO_LARGE_FOR_CIPHER 310 ) 1844  #SSL_R_ENCRYPTED_LENGTH_TOO_LONG 150 ) 1845  #SSL_R_ERROR_GENERATING_TMP_RSA_KEY 282 ) 1846  #SSL_R_ERROR_IN_RECEIVED_CIPHER_LIST 151 ) 1847  #SSL_R_EXCESSIVE_MESSAGE_SIZE 152 ) 1848  #SSL_R_EXTRA_DATA_IN_MESSAGE 153 ) 1849  #SSL_R_GOT_A_FIN_BEFORE_A_CCS 154 ) 1850  #SSL_R_HTTPS_PROXY_REQUEST 155 ) 1851  #SSL_R_HTTP_REQUEST 156 ) 1852  #SSL_R_ILLEGAL_PADDING 283 ) 1853  #SSL_R_INVALID_CHALLENGE_LENGTH 158 ) 1854  #SSL_R_INVALID_COMMAND 280 ) 1855  #SSL_R_INVALID_PURPOSE 278 ) 1856  #SSL_R_INVALID_TICKET_KEYS_LENGTH 275 ) 1857  #SSL_R_INVALID_TRUST 279 ) 1858  #SSL_R_KEY_ARG_TOO_LONG 284 ) 1859  #SSL_R_KRB5 285 ) 1860  #SSL_R_KRB5_C_CC_PRINC 286 ) 1861  #SSL_R_KRB5_C_GET_CRED 287 ) 1862  #SSL_R_KRB5_C_INIT 288 ) 1863  #SSL_R_KRB5_C_MK_REQ 289 ) 1864  #SSL_R_KRB5_S_BAD_TICKET 290 ) 1865  #SSL_R_KRB5_S_INIT 291 ) 1866  #SSL_R_KRB5_S_RD_REQ 292 ) 1867  #SSL_R_KRB5_S_TKT_EXPIRED 293 ) 1868  #SSL_R_KRB5_S_TKT_NYV 294 ) 1869  #SSL_R_KRB5_S_TKT_SKEW 295 ) 1870  #SSL_R_LENGTH_MISMATCH 159 ) 1871  #SSL_R_LENGTH_TOO_SHORT 160 ) 1872  #SSL_R_LIBRARY_BUG 274 ) 1873  #SSL_R_LIBRARY_HAS_NO_CIPHERS 161 ) 1874  #SSL_R_MESSAGE_TOO_LONG 296 ) 1875  #SSL_R_MISSING_DH_DSA_CERT 162 ) 1876  #SSL_R_MISSING_DH_KEY 163 ) 1877  #SSL_R_MISSING_DH_RSA_CERT 164 ) 1878  #SSL_R_MISSING_DSA_SIGNING_CERT 165 ) 1879  #SSL_R_MISSING_EXPORT_TMP_DH_KEY 166 ) 1880  #SSL_R_MISSING_EXPORT_TMP_RSA_KEY 167 ) 1881  #SSL_R_MISSING_RSA_CERTIFICATE 168 ) 1882  #SSL_R_MISSING_RSA_ENCRYPTING_CERT 169 ) 1883  #SSL_R_MISSING_RSA_SIGNING_CERT 170 ) 1884  #SSL_R_MISSING_TMP_DH_KEY 171 ) 1885  #SSL_R_MISSING_TMP_ECDH_KEY 311 ) 1886  #SSL_R_MISSING_TMP_RSA_KEY 172 ) 1887  #SSL_R_MISSING_TMP_RSA_PKEY 173 ) 1888  #SSL_R_MISSING_VERIFY_MESSAGE 174 ) 1889  #SSL_R_NON_SSLV2_INITIAL_PACKET 175 ) 1890  #SSL_R_NO_CERTIFICATES_RETURNED 176 ) 1891  #SSL_R_NO_CERTIFICATE_ASSIGNED 177 ) 1892  #SSL_R_NO_CERTIFICATE_RETURNED 178 ) 1893  #SSL_R_NO_CERTIFICATE_SET 179 ) 1894  #SSL_R_NO_CERTIFICATE_SPECIFIED 180 ) 1895  #SSL_R_NO_CIPHERS_AVAILABLE 181 ) 1896  #SSL_R_NO_CIPHERS_PASSED 182 ) 1897  #SSL_R_NO_CIPHERS_SPECIFIED 183 ) 1898  #SSL_R_NO_CIPHER_LIST 184 ) 1899  #SSL_R_NO_CIPHER_MATCH 185 ) 1900  #SSL_R_NO_CLIENT_CERT_RECEIVED 186 ) 1901  #SSL_R_NO_COMPRESSION_SPECIFIED 187 ) 1902  #SSL_R_NO_METHOD_SPECIFIED 188 ) 1903  #SSL_R_NO_PRIVATEKEY 189 ) 1904  #SSL_R_NO_PRIVATE_KEY_ASSIGNED 190 ) 1905  #SSL_R_NO_PROTOCOLS_AVAILABLE 191 ) 1906  #SSL_R_NO_PUBLICKEY 192 ) 1907  #SSL_R_NO_SHARED_CIPHER 193 ) 1908  #SSL_R_NO_VERIFY_CALLBACK 194 ) 1909  #SSL_R_NULL_SSL_CTX 195 ) 1910  #SSL_R_NULL_SSL_METHOD_PASSED 196 ) 1911  #SSL_R_OLD_SESSION_CIPHER_NOT_RETURNED 197 ) 1912  #SSL_R_ONLY_TLS_ALLOWED_IN_FIPS_MODE 297 ) 1913  #SSL_R_PACKET_LENGTH_TOO_LONG 198 ) 1914  #SSL_R_PARSE_TLSEXT 223 ) 1915  #SSL_R_PATH_TOO_LONG 270 ) 1916  #SSL_R_PEER_DID_NOT_RETURN_A_CERTIFICATE 199 ) 1917  #SSL_R_PEER_ERROR 200 ) 1918  #SSL_R_PEER_ERROR_CERTIFICATE 201 ) 1919  #SSL_R_PEER_ERROR_NO_CERTIFICATE 202 ) 1920  #SSL_R_PEER_ERROR_NO_CIPHER 203 ) 1921  #SSL_R_PEER_ERROR_UNSUPPORTED_CERTIFICATE_TYPE 204 ) 1922  #SSL_R_PRE_MAC_LENGTH_TOO_LONG 205 ) 1923  #SSL_R_PROBLEMS_MAPPING_CIPHER_FUNCTIONS 206 ) 1924  #SSL_R_PROTOCOL_IS_SHUTDOWN 207 ) 1925  #SSL_R_PUBLIC_KEY_ENCRYPT_ERROR 208 ) 1926  #SSL_R_PUBLIC_KEY_IS_NOT_RSA 209 ) 1927  #SSL_R_PUBLIC_KEY_NOT_RSA 210 ) 1928  #SSL_R_READ_BIO_NOT_SET 211 ) 1929  #SSL_R_READ_TIMEOUT_EXPIRED 312 ) 1930  #SSL_R_READ_WRONG_PACKET_TYPE 212 ) 1931  #SSL_R_RECORD_LENGTH_MISMATCH 213 ) 1932  #SSL_R_RECORD_TOO_LARGE 214 ) 1933  #SSL_R_RECORD_TOO_SMALL 298 ) 1934  #SSL_R_REQUIRED_CIPHER_MISSING 215 ) 1935  #SSL_R_REUSE_CERT_LENGTH_NOT_ZERO 216 ) 1936  #SSL_R_REUSE_CERT_TYPE_NOT_ZERO 217 ) 1937  #SSL_R_REUSE_CIPHER_LIST_NOT_ZERO 218 ) 1938  #SSL_R_SERVERHELLO_TLSEXT 224 ) 1939  #SSL_R_SESSION_ID_CONTEXT_UNINITIALIZED 277 ) 1940  #SSL_R_SHORT_READ 219 ) 1941  #SSL_R_SIGNATURE_FOR_NON_SIGNING_CERTIFICATE 220 ) 1942  #SSL_R_SSL23_DOING_SESSION_ID_REUSE 221 ) 1943  #SSL_R_SSL2_CONNECTION_ID_TOO_LONG 299 ) 1944  #SSL_R_SSL3_EXT_INVALID_SERVERNAME 225 ) 1945  #SSL_R_SSL3_EXT_INVALID_SERVERNAME_TYPE 226 ) 1946  #SSL_R_SSL3_SESSION_ID_TOO_LONG 300 ) 1947  #SSL_R_SSL3_SESSION_ID_TOO_SHORT 222 ) 1948  #SSL_R_SSLV3_ALERT_BAD_CERTIFICATE 1042 ) 1949  #SSL_R_SSLV3_ALERT_BAD_RECORD_MAC 1020 ) 1950  #SSL_R_SSLV3_ALERT_CERTIFICATE_EXPIRED 1045 ) 1951  #SSL_R_SSLV3_ALERT_CERTIFICATE_REVOKED 1044 ) 1952  #SSL_R_SSLV3_ALERT_CERTIFICATE_UNKNOWN 1046 ) 1953  #SSL_R_SSLV3_ALERT_DECOMPRESSION_FAILURE 1030 ) 1954  #SSL_R_SSLV3_ALERT_HANDSHAKE_FAILURE 1040 ) 1955  #SSL_R_SSLV3_ALERT_ILLEGAL_PARAMETER 1047 ) 1956  #SSL_R_SSLV3_ALERT_NO_CERTIFICATE 1041 ) 1957  #SSL_R_SSLV3_ALERT_UNEXPECTED_MESSAGE 1010 ) 1958  #SSL_R_SSLV3_ALERT_UNSUPPORTED_CERTIFICATE 1043 ) 1959  #SSL_R_SSL_CTX_HAS_NO_DEFAULT_SSL_VERSION 228 ) 1960  #SSL_R_SSL_HANDSHAKE_FAILURE 229 ) 1961  #SSL_R_SSL_LIBRARY_HAS_NO_CIPHERS 230 ) 1962  #SSL_R_SSL_SESSION_ID_CALLBACK_FAILED 301 ) 1963  #SSL_R_SSL_SESSION_ID_CONFLICT 302 ) 1964  #SSL_R_SSL_SESSION_ID_CONTEXT_TOO_LONG 273 ) 1965  #SSL_R_SSL_SESSION_ID_HAS_BAD_LENGTH 303 ) 1966  #SSL_R_SSL_SESSION_ID_IS_DIFFERENT 231 ) 1967  #SSL_R_TLSV1_ALERT_ACCESS_DENIED 1049 ) 1968  #SSL_R_TLSV1_ALERT_DECODE_ERROR 1050 ) 1969  #SSL_R_TLSV1_ALERT_DECRYPTION_FAILED 1021 ) 1970  #SSL_R_TLSV1_ALERT_DECRYPT_ERROR 1051 ) 1971  #SSL_R_TLSV1_ALERT_EXPORT_RESTRICTION 1060 ) 1972  #SSL_R_TLSV1_ALERT_INSUFFICIENT_SECURITY 1071 ) 1973  #SSL_R_TLSV1_ALERT_INTERNAL_ERROR 1080 ) 1974  #SSL_R_TLSV1_ALERT_NO_RENEGOTIATION 1100 ) 1975  #SSL_R_TLSV1_ALERT_PROTOCOL_VERSION 1070 ) 1976  #SSL_R_TLSV1_ALERT_RECORD_OVERFLOW 1022 ) 1977  #SSL_R_TLSV1_ALERT_UNKNOWN_CA 1048 ) 1978  #SSL_R_TLSV1_ALERT_USER_CANCELLED 1090 ) 1979  #SSL_R_TLS_CLIENT_CERT_REQ_WITH_ANON_CIPHER 232 ) 1980  #SSL_R_TLS_INVALID_ECPOINTFORMAT_LIST 227 ) 1981  #SSL_R_TLS_PEER_DID_NOT_RESPOND_WITH_CERTIFICATE_LIST 233 ) 1982  #SSL_R_TLS_RSA_ENCRYPTED_VALUE_LENGTH_IS_WRONG 234 ) 1983  #SSL_R_TRIED_TO_USE_UNSUPPORTED_CIPHER 235 ) 1984  #SSL_R_UNABLE_TO_DECODE_DH_CERTS 236 ) 1985  #SSL_R_UNABLE_TO_DECODE_ECDH_CERTS 313 ) 1986  #SSL_R_UNABLE_TO_EXTRACT_PUBLIC_KEY 237 ) 1987  #SSL_R_UNABLE_TO_FIND_DH_PARAMETERS 238 ) 1988  #SSL_R_UNABLE_TO_FIND_ECDH_PARAMETERS 314 ) 1989  #SSL_R_UNABLE_TO_FIND_PUBLIC_KEY_PARAMETERS 239 ) 1990  #SSL_R_UNABLE_TO_FIND_SSL_METHOD 240 ) 1991  #SSL_R_UNABLE_TO_LOAD_SSL2_MD5_ROUTINES 241 ) 1992  #SSL_R_UNABLE_TO_LOAD_SSL3_MD5_ROUTINES 242 ) 1993  #SSL_R_UNABLE_TO_LOAD_SSL3_SHA1_ROUTINES 243 ) 1994  #SSL_R_UNEXPECTED_MESSAGE 244 ) 1995  #SSL_R_UNEXPECTED_RECORD 245 ) 1996  #SSL_R_UNINITIALIZED 276 ) 1997  #SSL_R_UNKNOWN_ALERT_TYPE 246 ) 1998  #SSL_R_UNKNOWN_CERTIFICATE_TYPE 247 ) 1999  #SSL_R_UNKNOWN_CIPHER_RETURNED 248 ) 2000  #SSL_R_UNKNOWN_CIPHER_TYPE 249 ) 2001  #SSL_R_UNKNOWN_KEY_EXCHANGE_TYPE 250 ) 2002  #SSL_R_UNKNOWN_PKEY_TYPE 251 ) 2003  #SSL_R_UNKNOWN_PROTOCOL 252 ) 2004  #SSL_R_UNKNOWN_REMOTE_ERROR_TYPE 253 ) 2005  #SSL_R_UNKNOWN_SSL_VERSION 254 ) 2006  #SSL_R_UNKNOWN_STATE 255 ) 2007  #SSL_R_UNSUPPORTED_CIPHER 256 ) 2008  #SSL_R_UNSUPPORTED_COMPRESSION_ALGORITHM 257 ) 2009  #SSL_R_UNSUPPORTED_ELLIPTIC_CURVE 315 ) 2010  #SSL_R_UNSUPPORTED_PROTOCOL 258 ) 2011  #SSL_R_UNSUPPORTED_SSL_VERSION 259 ) 2012  #SSL_R_WRITE_BIO_NOT_SET 260 ) 2013  #SSL_R_WRONG_CIPHER_RETURNED 261 ) 2014  #SSL_R_WRONG_MESSAGE_TYPE 262 ) 2015  #SSL_R_WRONG_NUMBER_OF_KEY_BITS 263 ) 2016  #SSL_R_WRONG_SIGNATURE_LENGTH 264 ) 2017  #SSL_R_WRONG_SIGNATURE_SIZE 265 ) 2018  #SSL_R_WRONG_SSL_VERSION 266 ) 2019  #SSL_R_WRONG_VERSION_NUMBER 267 ) 2020  #SSL_R_X509_LIB 268 ) 2021  #SSL_R_X509_VERIFICATION_SETUP_PROBLEMS 269 ) 2023 #ifdeà __ýlu¥lus @/usr/include/pcre.h 39 #iâdeà _PCRE_H 40  #_PCRE_H ) 44  #PCRE_MAJOR 7 ) 45  #PCRE_MINOR 6 ) 46  #PCRE_PRERELEASE ) 47  #PCRE_DATE 2008-01-28 ) 54 #ià defšed ( _WIN32 è&& !defšed( PCRE_STATIC ) 55 #iâdeà PCRE_EXP_DECL 56  #PCRE_EXP_DECL `__deþ¥ec ( dÎimpÜt ) ) 58 #ifdeà __ýlu¥lus 59 #iâdeà PCRECPP_EXP_DECL 60  #PCRECPP_EXP_DECL `__deþ¥ec ( dÎimpÜt ) ) 62 #iâdeà PCRECPP_EXP_DEFN 63  #PCRECPP_EXP_DEFN `__deþ¥ec ( dÎimpÜt ) ) 70 #iâdeà PCRE_EXP_DECL 71 #ifdeà __ýlu¥lus 72  #PCRE_EXP_DECL "C" ) 74  #PCRE_EXP_DECL ) 78 #ifdeà __ýlu¥lus 79 #iâdeà PCRECPP_EXP_DECL 80  #PCRECPP_EXP_DECL ) 82 #iâdeà PCRECPP_EXP_DEFN 83  #PCRECPP_EXP_DEFN ) 90  ~<¡dlib.h > 94 #ifdeà __ýlu¥lus 100  #PCRE_CASELESS 0x00000001 ) 101  #PCRE_MULTILINE 0x00000002 ) 102  #PCRE_DOTALL 0x00000004 ) 103  #PCRE_EXTENDED 0x00000008 ) 104  #PCRE_ANCHORED 0x00000010 ) 105  #PCRE_DOLLAR_ENDONLY 0x00000020 ) 106  #PCRE_EXTRA 0x00000040 ) 107  #PCRE_NOTBOL 0x00000080 ) 108  #PCRE_NOTEOL 0x00000100 ) 109  #PCRE_UNGREEDY 0x00000200 ) 110  #PCRE_NOTEMPTY 0x00000400 ) 111  #PCRE_UTF8 0x00000800 ) 112  #PCRE_NO_AUTO_CAPTURE 0x00001000 ) 113  #PCRE_NO_UTF8_CHECK 0x00002000 ) 114  #PCRE_AUTO_CALLOUT 0x00004000 ) 115  #PCRE_PARTIAL 0x00008000 ) 116  #PCRE_DFA_SHORTEST 0x00010000 ) 117  #PCRE_DFA_RESTART 0x00020000 ) 118  #PCRE_FIRSTLINE 0x00040000 ) 119  #PCRE_DUPNAMES 0x00080000 ) 120  #PCRE_NEWLINE_CR 0x00100000 ) 121  #PCRE_NEWLINE_LF 0x00200000 ) 122  #PCRE_NEWLINE_CRLF 0x00300000 ) 123  #PCRE_NEWLINE_ANY 0x00400000 ) 124  #PCRE_NEWLINE_ANYCRLF 0x00500000 ) 125  #PCRE_BSR_ANYCRLF 0x00800000 ) 126  #PCRE_BSR_UNICODE 0x01000000 ) 130  #PCRE_ERROR_NOMATCH (-1) ) 131  #PCRE_ERROR_NULL (-2) ) 132  #PCRE_ERROR_BADOPTION (-3) ) 133  #PCRE_ERROR_BADMAGIC (-4) ) 134  #PCRE_ERROR_UNKNOWN_OPCODE (-5) ) 135  #PCRE_ERROR_UNKNOWN_NODE (-5è ) 136  #PCRE_ERROR_NOMEMORY (-6) ) 137  #PCRE_ERROR_NOSUBSTRING (-7) ) 138  #PCRE_ERROR_MATCHLIMIT (-8) ) 139  #PCRE_ERROR_CALLOUT (-9è ) 140  #PCRE_ERROR_BADUTF8 (-10) ) 141  #PCRE_ERROR_BADUTF8_OFFSET (-11) ) 142  #PCRE_ERROR_PARTIAL (-12) ) 143  #PCRE_ERROR_BADPARTIAL (-13) ) 144  #PCRE_ERROR_INTERNAL (-14) ) 145  #PCRE_ERROR_BADCOUNT (-15) ) 146  #PCRE_ERROR_DFA_UITEM (-16) ) 147  #PCRE_ERROR_DFA_UCOND (-17) ) 148  #PCRE_ERROR_DFA_UMLIMIT (-18) ) 149  #PCRE_ERROR_DFA_WSSIZE (-19) ) 150  #PCRE_ERROR_DFA_RECURSE (-20) ) 151  #PCRE_ERROR_RECURSIONLIMIT (-21) ) 152  #PCRE_ERROR_NULLWSLIMIT (-22è ) 153  #PCRE_ERROR_BADNEWLINE (-23) ) 157  #PCRE_INFO_OPTIONS 0 ) 158  #PCRE_INFO_SIZE 1 ) 159  #PCRE_INFO_CAPTURECOUNT 2 ) 160  #PCRE_INFO_BACKREFMAX 3 ) 161  #PCRE_INFO_FIRSTBYTE 4 ) 162  #PCRE_INFO_FIRSTCHAR 4 ) 163  #PCRE_INFO_FIRSTTABLE 5 ) 164  #PCRE_INFO_LASTLITERAL 6 ) 165  #PCRE_INFO_NAMEENTRYSIZE 7 ) 166  #PCRE_INFO_NAMECOUNT 8 ) 167  #PCRE_INFO_NAMETABLE 9 ) 168  #PCRE_INFO_STUDYSIZE 10 ) 169  #PCRE_INFO_DEFAULT_TABLES 11 ) 170  #PCRE_INFO_OKPARTIAL 12 ) 171  #PCRE_INFO_JCHANGED 13 ) 172  #PCRE_INFO_HASCRORLF 14 ) 177  #PCRE_CONFIG_UTF8 0 ) 178  #PCRE_CONFIG_NEWLINE 1 ) 179  #PCRE_CONFIG_LINK_SIZE 2 ) 180  #PCRE_CONFIG_POSIX_MALLOC_THRESHOLD 3 ) 181  #PCRE_CONFIG_MATCH_LIMIT 4 ) 182  #PCRE_CONFIG_STACKRECURSE 5 ) 183  #PCRE_CONFIG_UNICODE_PROPERTIES 6 ) 184  #PCRE_CONFIG_MATCH_LIMIT_RECURSION 7 ) 185  #PCRE_CONFIG_BSR 8 ) 190  #PCRE_EXTRA_STUDY_DATA 0x0001 ) 191  #PCRE_EXTRA_MATCH_LIMIT 0x0002 ) 192  #PCRE_EXTRA_CALLOUT_DATA 0x0004 ) 193  #PCRE_EXTRA_TABLES 0x0008 ) 194  #PCRE_EXTRA_MATCH_LIMIT_RECURSION 0x0010 ) 198  »®_püe ; 199  »®_püe tpüe ; 205 #iâdeà PCRE_SPTR 206  #PCRE_SPTR cÚ¡ * ) 213  spüe_exŒa { 214  æags ; 215 * ¡udy_d©a ; 216  m©ch_lim™ ; 217 * ÿÎout_d©a ; 218 cÚ¡ * bËs ; 219  m©ch_lim™_»cursiÚ ; 220 } tpüe_exŒa ; 227  spüe_ÿÎout_block { 228  v”siÚ ; 230  ÿÎout_numb” ; 231 * off£t_veùÜ ; 232 PCRE_SPTR subjeù ; 233  subjeù_Ëngth ; 234  ¡¬t_m©ch ; 235  cu¼’t_pos™iÚ ; 236  ÿ±u»_tÝ ; 237  ÿ±u»_Ï¡ ; 238 * ÿÎout_d©a ; 240  ·‰”n_pos™iÚ ; 241  Ãxt_™em_Ëngth ; 243 } tpüe_ÿÎout_block ; 251 #iâdeà VPCOMPAT 252 PCRE_EXP_DECL *(* püe_m®loc )( size_t ); 253 PCRE_EXP_DECL (* püe_ä“ )(*); 254 PCRE_EXP_DECL *(* püe_¡ack_m®loc )( size_t ); 255 PCRE_EXP_DECL (* püe_¡ack_ä“ )(*); 256 PCRE_EXP_DECL (* püe_ÿÎout )( püe_ÿÎout_block *); 258 PCRE_EXP_DECL * püe_m®loc ( size_t ); 259 PCRE_EXP_DECL  püe_ä“ (*); 260 PCRE_EXP_DECL * püe_¡ack_m®loc ( size_t ); 261 PCRE_EXP_DECL  püe_¡ack_ä“ (*); 262 PCRE_EXP_DECL  püe_ÿÎout ( püe_ÿÎout_block *); 267 PCRE_EXP_DECL püe * püe_compže (const *, , const **, *, 269 PCRE_EXP_DECL püe * püe_compže2 (const *, , *, const **, 271 PCRE_EXP_DECL  püe_cÚfig (, *); 272 PCRE_EXP_DECL  püe_cÝy_Çmed_sub¡ršg (cÚ¡ püe *, const *, 274 PCRE_EXP_DECL  püe_cÝy_sub¡ršg (const *, *, , , *, 276 PCRE_EXP_DECL  püe_dç_exec (cÚ¡ püe *, cÚ¡ püe_exŒa *, 278 PCRE_EXP_DECL  püe_exec (cÚ¡ püe *, cÚ¡ püe_exŒa *, PCRE_SPTR , 280 PCRE_EXP_DECL  püe_ä“_sub¡ršg (const *); 281 PCRE_EXP_DECL  püe_ä“_sub¡ršg_li¡ (const **); 282 PCRE_EXP_DECL  püe_fuΚfo (cÚ¡ püe *, cÚ¡ püe_exŒa *, , 284 PCRE_EXP_DECL  püe_g‘_Çmed_sub¡ršg (cÚ¡ püe *, const *, 286 PCRE_EXP_DECL  püe_g‘_¡ršgnumb” (cÚ¡ püe *, const *); 287 PCRE_EXP_DECL  püe_g‘_¡ršgbË_’Œ›s (cÚ¡ püe *, const *, 289 PCRE_EXP_DECL  püe_g‘_sub¡ršg (const *, *, , , 291 PCRE_EXP_DECL  püe_g‘_sub¡ršg_li¡ (const *, *, , 293 PCRE_EXP_DECL  püe_šfo (cÚ¡ püe *, *, *); 294 PCRE_EXP_DECL cÚ¡ * püe_mak‘abËs (); 295 PCRE_EXP_DECL  püe_»fcouÁ ( püe *, ); 296 PCRE_EXP_DECL püe_exŒa * püe_¡udy (cÚ¡ püe *, , const **); 297 PCRE_EXP_DECL cÚ¡ * püe_v”siÚ (); 299 #ifdeà __ýlu¥lus @/usr/include/poll.h 1  ~ @/usr/include/pwd.h 23 #iâdef _PWD_H 24  #_PWD_H 1 ) 26  ~<ã©u»s.h > 28 g__BEGIN_DECLS 30  ~ 32  #__Ãed_size_t ) 33  ~<¡ddef.h > 35 #ià defšed __USE_XOPEN || defšed __USE_XOPEN2K 38 #iâdeà __gid_t_defšed 39  __gid_t tgid_t ; 40  #__gid_t_defšed ) 43 #iâdeà __uid_t_defšed 44  __uid_t tuid_t ; 45  #__uid_t_defšed ) 50  s·sswd 52 * mpw_Çme ; 53 * mpw_·sswd ; 54 __uid_t mpw_uid ; 55 __gid_t mpw_gid ; 56 * mpw_gecos ; 57 * mpw_dœ ; 58 * mpw_sh–l ; 62 #ià defšed __USE_SVID || defšed __USE_GNU 63  #__Ãed_FILE ) 64  ~<¡dio.h > 68 #ià defšed __USE_SVID || defšed __USE_MISC || defšed __USE_XOPEN_EXTENDED 73  £w’t (); 79  ’dpw’t (); 85  ·sswd * g‘pw’t (); 88 #ifdef __USE_SVID 95  ·sswd * fg‘pw’t ( FILE * __¡»am ); 103  puw’t ( __cÚ¡  ·sswd * __»¡riù __p , 104 FILE * __»¡riù __f ); 111  ·sswd * g‘pwuid ( __uid_t __uid ); 117  ·sswd * g‘pwÇm ( __cÚ¡ * __Çme ); 119 #ià defšed __USE_POSIX || defšed __USE_MISC 121 #ifdeà __USE_MISC 124  #NSS_BUFLEN_PASSWD 1024 ) 135 #ià defšed __USE_SVID || defšed __USE_MISC 140  g‘pw’t_r ( ·sswd * __»¡riù __»suÉbuf , 141 * __»¡riù __bufãr , size_t __buæ’ , 142  ·sswd ** __»¡riù __»suÉ ); 145  g‘pwuid_r ( __uid_t __uid , 146  ·sswd * __»¡riù __»suÉbuf , 147 * __»¡riù __bufãr , size_t __buæ’ , 148  ·sswd ** __»¡riù __»suÉ ); 150  g‘pwÇm_r ( __cÚ¡ * __»¡riù __Çme , 151  ·sswd * __»¡riù __»suÉbuf , 152 * __»¡riù __bufãr , size_t __buæ’ , 153  ·sswd ** __»¡riù __»suÉ ); 156 #ifdef __USE_SVID 164  fg‘pw’t_r ( FILE * __»¡riù __¡»am , 165  ·sswd * __»¡riù __»suÉbuf , 166 * __»¡riù __bufãr , size_t __buæ’ , 167  ·sswd ** __»¡riù __»suÉ ); 172 #ifdeà __USE_GNU 181  g‘pw ( __uid_t __uid , * __bufãr ); 184 g__END_DECLS @/usr/include/setjmp.h 23 #iâdef _SETJMP_H 24  #_SETJMP_H 1 ) 26  ~<ã©u»s.h > 28 g__BEGIN_DECLS 30  ~ 31  ~ 35  s__jmp_buf_g 41 __jmp_buf m__jmpbuf ; 42  m__mask_was_§ved ; 43 __sig£t_t m__§ved_mask ; 47 __BEGIN_NAMESPACE_STD 49  __jmp_buf_g tjmp_buf [1]; 53  $£tjmp ( jmp_buf __’v è __THROW ; 55 __END_NAMESPACE_STD 60  $__sig£tjmp ( __jmp_buf_g __’v [1],  __§vemask è __THROW ; 62 #iâdef __FAVOR_BSD 65  $_£tjmp ( __jmp_buf_g __’v [1]è __THROW ; 69  #£tjmp ( ’v è `_£tjmp (’v) ) 74  #£tjmp ( ’v è `£tjmp (’v) ) 78 __BEGIN_NAMESPACE_STD 82  $lÚgjmp ( __jmp_buf_g __’v [1],  __v® ) 83 __THROW `__©Œibu‹__ (( __nÜ‘uº__ )); 85 __END_NAMESPACE_STD 87 #ià defšed __USE_BSD || defšed __USE_XOPEN 91  $_lÚgjmp ( __jmp_buf_g __’v [1],  __v® ) 92 __THROW `__©Œibu‹__ (( __nÜ‘uº__ )); 96 #ifdef __USE_POSIX 100  __jmp_buf_g tsigjmp_buf [1]; 104  #sig£tjmp ( ’v , §vemask è `__sig£tjmp (’v, savemask) ) 110  $siglÚgjmp ( sigjmp_buf __’v ,  __v® ) 111 __THROW `__©Œibu‹__ (( __nÜ‘uº__ )); 114 __END_DECLS @/usr/include/signal.h 23 #iâdef _SIGNAL_H 25 #ià! defšed __Ãed_sig_©omic_t && !defšed __Ãed_sig£t_t 26  #_SIGNAL_H ) 29  ~<ã©u»s.h > 31 g__BEGIN_DECLS 33  ~ 37 #ià defšed __Ãed_sig_©omic_t || defšed _SIGNAL_H 38 #iâdeà __sig_©omic_t_defšed 39  #__sig_©omic_t_defšed ) 40 __BEGIN_NAMESPACE_STD 41  __sig_©omic_t tsig_©omic_t ; 42 g__END_NAMESPACE_STD 44 #undeà __Ãed_sig_©omic_t 47 #ià defšed __Ãed_sig£t_t || (defšed _SIGNAL_H && defšed __USE_POSIX ) 48 #iâdeà __sig£t_t_defšed 49  #__sig£t_t_defšed ) 50  __sig£t_t tsig£t_t ; 52 #undeà __Ãed_sig£t_t 55 #ifdeà _SIGNAL_H 57  ~ 58  ~ 60 #ià defšed __USE_XOPEN || defšed __USE_XOPEN2K 61 #iâdeà __pid_t_defšed 62  __pid_t tpid_t ; 63  #__pid_t_defšed ) 65 #ifdeà __USE_XOPEN 67 #iâdeà __uid_t_defšed 68  __uid_t tuid_t ; 69  #__uid_t_defšed ) 75 (* t__sighªdËr_t ) (); 80 __sighªdËr_t $__sysv_sigÇl ( __sig , __sighªdËr_t __hªdËr ) 81 __THROW ; 82 #ifdeà __USE_GNU 83 __sighªdËr_t $sysv_sigÇl ( __sig , __sighªdËr_t __hªdËr ) 84 __THROW ; 90 __BEGIN_NAMESPACE_STD 91 #ifdeà __USE_BSD 92 __sighªdËr_t $sigÇl ( __sig , __sighªdËr_t __hªdËr ) 93 __THROW ; 96 #ifdeà __REDIRECT_NTH 97 __sighªdËr_t `__REDIRECT_NTH ( sigÇl , 98 ( __sig , __sighªdËr_t __hªdËr ), 99 __sysv_sigÇl ); 101  #sigÇl __sysv_sigÇl ) 104 __END_NAMESPACE_STD 106 #ifdeà __USE_XOPEN 109 __sighªdËr_t $bsd_sigÇl ( __sig , __sighªdËr_t __hªdËr ) 110 __THROW ; 116 #ifdeà __USE_POSIX 117  $kžl ( __pid_t __pid ,  __sig è __THROW ; 120 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 124  $kžÍg ( __pid_t __pg½ ,  __sig è __THROW ; 127 __BEGIN_NAMESPACE_STD 129  $¿i£ ( __sig è __THROW ; 130 __END_NAMESPACE_STD 132 #ifdeà __USE_SVID 134 __sighªdËr_t $ssigÇl ( __sig , __sighªdËr_t __hªdËr ) 135 __THROW ; 136  $gsigÇl ( __sig è __THROW ; 139 #ifdeà __USE_MISC 141  `psigÇl ( __sig , __cÚ¡ * __s ); 153  `__sig·u£ ( __sig_Ü_mask ,  __is_sig ); 155 #ifdeà __FAVOR_BSD 158  $sig·u£ ( __mask è __THROW __©Œibu‹_d•»ÿ‹d__ ; 160 #ifdeà __USE_XOPEN 161 #ifdeà __GNUC__ 162  $sig·u£ ( __sig è `__asm__ ("__xpg_sigpause"); 165  #sig·u£ ( sig è `__sig·u£ ((sig), 1) ) 171 #ifdeà __USE_BSD 178  #sigmask ( sig è `__sigmask (sig) ) 181  $sigblock ( __mask è __THROW __©Œibu‹_d•»ÿ‹d__ ; 184  $sig£tmask ( __mask è __THROW __©Œibu‹_d•»ÿ‹d__ ; 187  $sigg‘mask (è __THROW __©Œibu‹_d•»ÿ‹d__ ; 191 #ifdeà __USE_MISC 192  #NSIG _NSIG ) 195 #ifdeà __USE_GNU 196  __sighªdËr_t tsighªdËr_t ; 200 #ifdeà __USE_BSD 201  __sighªdËr_t tsig_t ; 204 #ifdeà __USE_POSIX 206 #ifdeà __USE_POSIX199309 208  #__Ãed_time¥ec ) 209  ~ 212  ~ 216  $sigem±y£t ( sig£t_t * __£t è __THROW `__nÚnuÎ ((1)); 219  $sigfžl£t ( sig£t_t * __£t è __THROW `__nÚnuÎ ((1)); 222  $sigadd£t ( sig£t_t * __£t ,  __signo è __THROW `__nÚnuÎ ((1)); 225  $sigd–£t ( sig£t_t * __£t ,  __signo è __THROW `__nÚnuÎ ((1)); 228  $sigismemb” ( __cÚ¡ sig£t_t * __£t ,  __signo ) 229 __THROW `__nÚnuÎ ((1)); 231 #ifdeà __USE_GNU 233  $sigi£m±y£t ( __cÚ¡ sig£t_t * __£t è __THROW `__nÚnuÎ ((1)); 236  $sigªd£t ( sig£t_t * __£t , __cÚ¡ sig£t_ˆ* __Ëá , 237 __cÚ¡ sig£t_t * __right è __THROW `__nÚnuÎ ((1, 2, 3)); 240  $sigÜ£t ( sig£t_t * __£t , __cÚ¡ sig£t_ˆ* __Ëá , 241 __cÚ¡ sig£t_t * __right è __THROW `__nÚnuÎ ((1, 2, 3)); 246  ~ 249  $sig´ocmask ( __how , __cÚ¡ sig£t_t * __»¡riù __£t , 250 sig£t_t * __»¡riù __o£t è __THROW ; 257  $sigsu¥’d ( __cÚ¡ sig£t_t * __£t è `__nÚnuÎ ((1)); 260  $sigaùiÚ ( __sig , __cÚ¡  sigaùiÚ * __»¡riù __aù , 261  sigaùiÚ * __»¡riù __ßù è __THROW ; 264  $sig³ndšg ( sig£t_t * __£t è __THROW `__nÚnuÎ ((1)); 271  $sigwa™ ( __cÚ¡ sig£t_t * __»¡riù __£t , *__»¡riù __sig ) 272 `__nÚnuÎ ((1, 2)); 274 #ifdeà __USE_POSIX199309 279  $sigwa™šfo ( __cÚ¡ sig£t_t * __»¡riù __£t , 280 sigšfo_t * __»¡riù __šfo è `__nÚnuÎ ((1)); 287  $sigtimedwa™ ( __cÚ¡ sig£t_t * __»¡riù __£t , 288 sigšfo_t * __»¡riù __šfo , 289 __cÚ¡  time¥ec * __»¡riù __timeout ) 290 `__nÚnuÎ ((1)); 294  $sigqueue ( __pid_t __pid ,  __sig , __cÚ¡  sigv® __v® ) 295 __THROW ; 300 #ifdeà __USE_BSD 304 __cÚ¡ *__cÚ¡ _sys_sigli¡ [ _NSIG ]; 305 __cÚ¡ *__cÚ¡ sys_sigli¡ [ _NSIG ]; 308  ssigvec 310 __sighªdËr_t sv_hªdËr ; 311  sv_mask ; 313  sv_æags ; 314  #sv_Ú¡ack sv_æags ) 318  #SV_ONSTACK (1 << 0) ) 319  #SV_INTERRUPT (1 << 1) ) 320  #SV_RESETHAND (1 << 2) ) 328  $sigvec ( __sig , __cÚ¡  sigvec * __vec , 329  sigvec * __ovec è __THROW ; 333  ~ 336  $sig»tuº ( sigcÚ‹xt * __sý è __THROW ; 341 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 342  #__Ãed_size_t ) 343  ~<¡ddef.h > 348  $sigš‹¼u± ( __sig ,  __š‹¼u± è __THROW ; 350  ~ 351 #ifdeà __USE_XOPEN 353  ~ 359  $sig¡ack ( sig¡ack * __ss , sig¡ack * __oss ) 360 __THROW __©Œibu‹_d•»ÿ‹d__ ; 364  $sig®t¡ack ( __cÚ¡  sig®t¡ack * __»¡riù __ss , 365  sig®t¡ack * __»¡riù __oss è __THROW ; 369 #ifdeà __USE_XOPEN_EXTENDED 373  $sighÞd ( __sig è __THROW ; 376  $sig»l£ ( __sig è __THROW ; 379  $sigignÜe ( __sig è __THROW ; 382 __sighªdËr_t $sig£t ( __sig , __sighªdËr_t __di¥ è __THROW ; 385 #ià defšed __USE_POSIX199506 || defšed __USE_UNIX98 388  ~ 389  ~ 396  $__libc_cu¼’t_sig¹mš (è __THROW ; 398  $__libc_cu¼’t_sig¹max (è __THROW ; 402 __END_DECLS @/usr/include/sqlite3.h 35 #iâdeà _SQLITE3_H_ 36  #_SQLITE3_H_ ) 37  ~<¡d¬g.h > 42 #ifdeà __ýlu¥lus 50 #iâdeà SQLITE_EXTERN 51  #SQLITE_EXTERN ) 58 #ifdeà SQLITE_VERSION 59 #undeà SQLITE_VERSION 61 #ifdeà SQLITE_VERSION_NUMBER 62 #undeà SQLITE_VERSION_NUMBER 96  #SQLITE_VERSION "3.5.9" ) 97  #SQLITE_VERSION_NUMBER 3005009 ) 126 SQLITE_EXTERN cÚ¡  sql™e3_v”siÚ []; 127 cÚ¡ * sql™e3_libv”siÚ (); 128  sql™e3_libv”siÚ_numb” (); 154  sql™e3_th»ad§ã (); 169  sql™e3 tsql™e3 ; 191 #ifdeà SQLITE_INT64_TYPE 192  SQLITE_INT64_TYPE tsql™e_št64 ; 193  tSQLITE_INT64_TYPE tsql™e_ušt64 ; 194 #–ià defšed ( _MSC_VER è|| defšed( __BORLANDC__ ) 195  __št64 tsql™e_št64 ; 196  t__št64 tsql™e_ušt64 ; 198  tsql™e_št64 ; 199  tsql™e_ušt64 ; 201  sql™e_št64 tsql™e3_št64 ; 202  sql™e_ušt64 tsql™e3_ušt64 ; 208 #ifdeà SQLITE_OMIT_FLOATING_POINT 209  sql™e3_št64 ) 251  sql™e3_þo£ ( sql™e3 *); 258 (* sql™e3_ÿÎback )(*,,**, **); 355  sql™e3_exec ( 356 sql™e3 *, 357 cÚ¡ * sql , 358 (* ÿÎback )(*,,**,**), 360 ** ”rmsg 372  #SQLITE_OK 0 ) 374  #SQLITE_ERROR 1 ) 375  #SQLITE_INTERNAL 2 ) 376  #SQLITE_PERM 3 ) 377  #SQLITE_ABORT 4 ) 378  #SQLITE_BUSY 5 ) 379  #SQLITE_LOCKED 6 ) 380  #SQLITE_NOMEM 7 ) 381  #SQLITE_READONLY 8 ) 382  #SQLITE_INTERRUPT 9 ) 383  #SQLITE_IOERR 10 ) 384  #SQLITE_CORRUPT 11 ) 385  #SQLITE_NOTFOUND 12 ) 386  #SQLITE_FULL 13 ) 387  #SQLITE_CANTOPEN 14 ) 388  #SQLITE_PROTOCOL 15 ) 389  #SQLITE_EMPTY 16 ) 390  #SQLITE_SCHEMA 17 ) 391  #SQLITE_TOOBIG 18 ) 392  #SQLITE_CONSTRAINT 19 ) 393  #SQLITE_MISMATCH 20 ) 394  #SQLITE_MISUSE 21 ) 395  #SQLITE_NOLFS 22 ) 396  #SQLITE_AUTH 23 ) 397  #SQLITE_FORMAT 24 ) 398  #SQLITE_RANGE 25 ) 399  #SQLITE_NOTADB 26 ) 400  #SQLITE_ROW 100 ) 401  #SQLITE_DONE 101 ) 440  #SQLITE_IOERR_READ ( SQLITE_IOERR | (1<<8)) ) 441  #SQLITE_IOERR_SHORT_READ ( SQLITE_IOERR | (2<<8)) ) 442  #SQLITE_IOERR_WRITE ( SQLITE_IOERR | (3<<8)) ) 443  #SQLITE_IOERR_FSYNC ( SQLITE_IOERR | (4<<8)) ) 444  #SQLITE_IOERR_DIR_FSYNC ( SQLITE_IOERR | (5<<8)) ) 445  #SQLITE_IOERR_TRUNCATE ( SQLITE_IOERR | (6<<8)) ) 446  #SQLITE_IOERR_FSTAT ( SQLITE_IOERR | (7<<8)) ) 447  #SQLITE_IOERR_UNLOCK ( SQLITE_IOERR | (8<<8)) ) 448  #SQLITE_IOERR_RDLOCK ( SQLITE_IOERR | (9<<8)) ) 449  #SQLITE_IOERR_DELETE ( SQLITE_IOERR | (10<<8)) ) 450  #SQLITE_IOERR_BLOCKED ( SQLITE_IOERR | (11<<8)) ) 451  #SQLITE_IOERR_NOMEM ( SQLITE_IOERR | (12<<8)) ) 461  #SQLITE_OPEN_READONLY 0x00000001 ) 462  #SQLITE_OPEN_READWRITE 0x00000002 ) 463  #SQLITE_OPEN_CREATE 0x00000004 ) 464  #SQLITE_OPEN_DELETEONCLOSE 0x00000008 ) 465  #SQLITE_OPEN_EXCLUSIVE 0x00000010 ) 466  #SQLITE_OPEN_MAIN_DB 0x00000100 ) 467  #SQLITE_OPEN_TEMP_DB 0x00000200 ) 468  #SQLITE_OPEN_TRANSIENT_DB 0x00000400 ) 469  #SQLITE_OPEN_MAIN_JOURNAL 0x00000800 ) 470  #SQLITE_OPEN_TEMP_JOURNAL 0x00001000 ) 471  #SQLITE_OPEN_SUBJOURNAL 0x00002000 ) 472  #SQLITE_OPEN_MASTER_JOURNAL 0x00004000 ) 494  #SQLITE_IOCAP_ATOMIC 0x00000001 ) 495  #SQLITE_IOCAP_ATOMIC512 0x00000002 ) 496  #SQLITE_IOCAP_ATOMIC1K 0x00000004 ) 497  #SQLITE_IOCAP_ATOMIC2K 0x00000008 ) 498  #SQLITE_IOCAP_ATOMIC4K 0x00000010 ) 499  #SQLITE_IOCAP_ATOMIC8K 0x00000020 ) 500  #SQLITE_IOCAP_ATOMIC16K 0x00000040 ) 501  #SQLITE_IOCAP_ATOMIC32K 0x00000080 ) 502  #SQLITE_IOCAP_ATOMIC64K 0x00000100 ) 503  #SQLITE_IOCAP_SAFE_APPEND 0x00000200 ) 504  #SQLITE_IOCAP_SEQUENTIAL 0x00000400 ) 513  #SQLITE_LOCK_NONE 0 ) 514  #SQLITE_LOCK_SHARED 1 ) 515  #SQLITE_LOCK_RESERVED 2 ) 516  #SQLITE_LOCK_PENDING 3 ) 517  #SQLITE_LOCK_EXCLUSIVE 4 ) 532  #SQLITE_SYNC_NORMAL 0x00002 ) 533  #SQLITE_SYNC_FULL 0x00003 ) 534  #SQLITE_SYNC_DATAONLY 0x00010 ) 547  sql™e3_fže tsql™e3_fže ; 548  ssql™e3_fže { 549 cÚ¡  sql™e3_io_m‘hods * pM‘hods ; 628  sql™e3_io_m‘hods tsql™e3_io_m‘hods ; 629  ssql™e3_io_m‘hods { 630  iV”siÚ ; 631 (* xClo£ )( sql™e3_fže *); 632 (* xR—d )( sql™e3_fže *, *,  iAmt , sql™e3_št64 iOf¡ ); 633 (* xWr™e )( sql™e3_fže *, cÚ¡ *,  iAmt , sql™e3_št64 iOf¡ ); 634 (* xTrunÿ‹ )( sql™e3_fže *, sql™e3_št64 size ); 635 (* xSync )( sql™e3_fže *,  æags ); 636 (* xFžeSize )( sql™e3_fže *, sql™e3_št64 * pSize ); 637 (* xLock )( sql™e3_fže *, ); 638 (* xUÆock )( sql™e3_fže *, ); 639 (* xCheckRe£rvedLock )( sql™e3_fže *); 640 (* xFžeCÚŒÞ )( sql™e3_fže *,  Ý , * pArg ); 641 (* xSeùÜSize )( sql™e3_fže *); 642 (* xDeviûCh¬aù”i¡ics )( sql™e3_fže *); 661  #SQLITE_FCNTL_LOCKSTATE 1 ) 673  sql™e3_mu‹x tsql™e3_mu‹x ; 787  sql™e3_vfs tsql™e3_vfs ; 788  ssql™e3_vfs { 789  iV”siÚ ; 790  szOsFže ; 791  mxP©hÇme ; 792 sql™e3_vfs * pNext ; 793 cÚ¡ * zName ; 794 * pAµD©a ; 795 (* xO³n )( sql™e3_vfs *, cÚ¡ * zName , sql™e3_fže *, 796  æags , * pOutFÏgs ); 797 (* xD–‘e )( sql™e3_vfs *, cÚ¡ * zName ,  syncDœ ); 798 (* xAcûss )( sql™e3_vfs *, cÚ¡ * zName ,  æags ); 799 (* xG‘Tem²ame )( sql™e3_vfs *,  nOut , * zOut ); 800 (* xFuÎP©hÇme )( sql™e3_vfs *, cÚ¡ * zName ,  nOut , * zOut ); 801 *(* xDlO³n )( sql™e3_vfs *, cÚ¡ * zFž’ame ); 802 (* xDlE¼Ü )( sql™e3_vfs *,  nBy‹ , * zE¼Msg ); 803 *(* xDlSym )( sql™e3_vfs *,*, cÚ¡ * zSymbÞ ); 804 (* xDlClo£ )( sql™e3_vfs *, *); 805 (* xRªdomÃss )( sql™e3_vfs *,  nBy‹ , * zOut ); 806 (* xSË• )( sql™e3_vfs *,  miüo£cÚds ); 807 (* xCu¼’tTime )( sql™e3_vfs *, *); 825  #SQLITE_ACCESS_EXISTS 0 ) 826  #SQLITE_ACCESS_READWRITE 1 ) 827  #SQLITE_ACCESS_READ 2 ) 848  sql™e3_ex‹nded_»suÉ_codes ( sql™e3 *,  Úoff ); 905 sql™e3_št64 sql™e3_Ï¡_š£¹_rowid ( sql™e3 *); 971  sql™e3_chªges ( sql™e3 *); 1012  sql™e3_tÙ®_chªges ( sql™e3 *); 1053  sql™e3_š‹¼u± ( sql™e3 *); 1088  sql™e3_com¶‘e (cÚ¡ * sql ); 1089  sql™e3_com¶‘e16 (cÚ¡ * sql ); 1177  sql™e3_busy_hªdËr ( sql™e3 *, (*)(*,), *); 1213  sql™e3_busy_timeout ( sql™e3 *,  ms ); 1308  sql™e3_g‘_bË ( 1309 sql™e3 *, 1310 cÚ¡ * sql , 1311 *** pResuÉ , 1312 * Äow , 1313 * ncÞumn , 1314 ** ”rmsg 1316  sql™e3_ä“_bË (** »suÉ ); 1429 * sql™e3_m´štf (const *,...); 1430 * sql™e3_vm´štf (cÚ¡ *, va_li¡ ); 1431 * sql™e3_¢´štf (,*,const *, ...); 1557 * sql™e3_m®loc (); 1558 * sql™e3_»®loc (*, ); 1559  sql™e3_ä“ (*); 1590 sql™e3_št64 sql™e3_memÜy_u£d (); 1591 sql™e3_št64 sql™e3_memÜy_highw©” ( »£tFÏg ); 1616  sql™e3_¿ndomÃss ( N , * P ); 1735  sql™e3_£t_authÜiz” ( 1736 sql™e3 *, 1737 (* xAuth )(*,,const *,const *,const *,const *), 1738 * pU£rD©a 1750  #SQLITE_DENY 1 ) 1751  #SQLITE_IGNORE 2 ) 1795  #SQLITE_CREATE_INDEX 1 ) 1796  #SQLITE_CREATE_TABLE 2 ) 1797  #SQLITE_CREATE_TEMP_INDEX 3 ) 1798  #SQLITE_CREATE_TEMP_TABLE 4 ) 1799  #SQLITE_CREATE_TEMP_TRIGGER 5 ) 1800  #SQLITE_CREATE_TEMP_VIEW 6 ) 1801  #SQLITE_CREATE_TRIGGER 7 ) 1802  #SQLITE_CREATE_VIEW 8 ) 1803  #SQLITE_DELETE 9 ) 1804  #SQLITE_DROP_INDEX 10 ) 1805  #SQLITE_DROP_TABLE 11 ) 1806  #SQLITE_DROP_TEMP_INDEX 12 ) 1807  #SQLITE_DROP_TEMP_TABLE 13 ) 1808  #SQLITE_DROP_TEMP_TRIGGER 14 ) 1809  #SQLITE_DROP_TEMP_VIEW 15 ) 1810  #SQLITE_DROP_TRIGGER 16 ) 1811  #SQLITE_DROP_VIEW 17 ) 1812  #SQLITE_INSERT 18 ) 1813  #SQLITE_PRAGMA 19 ) 1814  #SQLITE_READ 20 ) 1815  #SQLITE_SELECT 21 ) 1816  #SQLITE_TRANSACTION 22 ) 1817  #SQLITE_UPDATE 23 ) 1818  #SQLITE_ATTACH 24 ) 1819  #SQLITE_DETACH 25 ) 1820  #SQLITE_ALTER_TABLE 26 ) 1821  #SQLITE_REINDEX 27 ) 1822  #SQLITE_ANALYZE 28 ) 1823  #SQLITE_CREATE_VTABLE 29 ) 1824  #SQLITE_DROP_VTABLE 30 ) 1825  #SQLITE_FUNCTION 31 ) 1826  #SQLITE_COPY 0 ) 1889 * sql™e3_Œaû ( sql™e3 *, (* xT¿û )(*,const *), *); 1890 * sql™e3_´ofže ( sql™e3 *, 1891 (* xProfže )(*,cÚ¡ *, sql™e3_ušt64 ), *); 1937  sql™e3_´og»ss_hªdËr ( sql™e3 *, , (*)(*), *); 2078  sql™e3_Ý’ ( 2079 cÚ¡ * fž’ame , 2080 sql™e3 ** µDb 2082  sql™e3_Ý’16 ( 2083 cÚ¡ * fž’ame , 2084 sql™e3 ** µDb 2086  sql™e3_Ý’_v2 ( 2087 cÚ¡ * fž’ame , 2088 sql™e3 ** µDb , 2089  æags , 2090 cÚ¡ * zVfs 2137  sql™e3_”rcode ( sql™e3 * db ); 2138 cÚ¡ * sql™e3_”rmsg ( sql™e3 *); 2139 cÚ¡ * sql™e3_”rmsg16 ( sql™e3 *); 2165  sql™e3_¡mt tsql™e3_¡mt ; 2215  sql™e3_lim™ ( sql™e3 *,  id ,  ÃwV® ); 2263  #SQLITE_LIMIT_LENGTH 0 ) 2264  #SQLITE_LIMIT_SQL_LENGTH 1 ) 2265  #SQLITE_LIMIT_COLUMN 2 ) 2266  #SQLITE_LIMIT_EXPR_DEPTH 3 ) 2267  #SQLITE_LIMIT_COMPOUND_SELECT 4 ) 2268  #SQLITE_LIMIT_VDBE_OP 5 ) 2269  #SQLITE_LIMIT_FUNCTION_ARG 6 ) 2270  #SQLITE_LIMIT_ATTACHED 7 ) 2271  #SQLITE_LIMIT_LIKE_PATTERN_LENGTH 8 ) 2272  #SQLITE_LIMIT_VARIABLE_NUMBER 9 ) 2384  sql™e3_´•¬e ( 2385 sql™e3 * db , 2386 cÚ¡ * zSql , 2387  nBy‹ , 2388 sql™e3_¡mt ** µStmt , 2389 cÚ¡ ** pzTaž 2391  sql™e3_´•¬e_v2 ( 2392 sql™e3 * db , 2393 cÚ¡ * zSql , 2394  nBy‹ , 2395 sql™e3_¡mt ** µStmt , 2396 cÚ¡ ** pzTaž 2398  sql™e3_´•¬e16 ( 2399 sql™e3 * db , 2400 cÚ¡ * zSql , 2401  nBy‹ , 2402 sql™e3_¡mt ** µStmt , 2403 cÚ¡ ** pzTaž 2405  sql™e3_´•¬e16_v2 ( 2406 sql™e3 * db , 2407 cÚ¡ * zSql , 2408  nBy‹ , 2409 sql™e3_¡mt ** µStmt , 2410 cÚ¡ ** pzTaž 2438 cÚ¡ * sql™e3_sql ( sql™e3_¡mt * pStmt ); 2476  Mem tsql™e3_v®ue ; 2485  sql™e3_cÚ‹xt tsql™e3_cÚ‹xt ; 2640  sql™e3_bšd_blob ( sql™e3_¡mt *, , cÚ¡ *,  n , (*)(*)); 2641  sql™e3_bšd_doubË ( sql™e3_¡mt *, , ); 2642  sql™e3_bšd_št ( sql™e3_¡mt *, , ); 2643  sql™e3_bšd_št64 ( sql™e3_¡mt *, , sql™e3_št64 ); 2644  sql™e3_bšd_nuÎ ( sql™e3_¡mt *, ); 2645  sql™e3_bšd_‹xt ( sql™e3_¡mt *, , cÚ¡ *,  n , (*)(*)); 2646  sql™e3_bšd_‹xt16 ( sql™e3_¡mt *, , const *, , (*)(*)); 2647  sql™e3_bšd_v®ue ( sql™e3_¡mt *, , cÚ¡ sql™e3_v®ue *); 2648  sql™e3_bšd_z”oblob ( sql™e3_¡mt *, ,  n ); 2675  sql™e3_bšd_·¿m‘”_couÁ ( sql™e3_¡mt *); 2709 cÚ¡ * sql™e3_bšd_·¿m‘”_Çme ( sql™e3_¡mt *, ); 2732  sql™e3_bšd_·¿m‘”_šdex ( sql™e3_¡mt *, cÚ¡ * zName ); 2748  sql™e3_þ—r_bšdšgs ( sql™e3_¡mt *); 2765  sql™e3_cÞumn_couÁ ( sql™e3_¡mt * pStmt ); 2824 cÚ¡ * sql™e3_cÞumn_Çme ( sql™e3_¡mt *,  N ); 2825 cÚ¡ * sql™e3_cÞumn_Çme16 ( sql™e3_¡mt *,  N ); 2927 cÚ¡ * sql™e3_cÞumn_d©aba£_Çme ( sql™e3_¡mt *,); 2928 cÚ¡ * sql™e3_cÞumn_d©aba£_Çme16 ( sql™e3_¡mt *,); 2929 cÚ¡ * sql™e3_cÞumn_bË_Çme ( sql™e3_¡mt *,); 2930 cÚ¡ * sql™e3_cÞumn_bË_Çme16 ( sql™e3_¡mt *,); 2931 cÚ¡ * sql™e3_cÞumn_Üigš_Çme ( sql™e3_¡mt *,); 2932 cÚ¡ * sql™e3_cÞumn_Üigš_Çme16 ( sql™e3_¡mt *,); 2985 cÚ¡ * sql™e3_cÞumn_deþty³ ( sql™e3_¡mt *,); 2986 cÚ¡ * sql™e3_cÞumn_deþty³16 ( sql™e3_¡mt *,); 3085  sql™e3_¡• ( sql™e3_¡mt *); 3106  sql™e3_d©a_couÁ ( sql™e3_¡mt * pStmt ); 3129  #SQLITE_INTEGER 1 ) 3130  #SQLITE_FLOAT 2 ) 3131  #SQLITE_BLOB 4 ) 3132  #SQLITE_NULL 5 ) 3133 #ifdeà SQLITE_TEXT 3134 #undeà SQLITE_TEXT 3136  #SQLITE_TEXT 3 ) 3138  #SQLITE3_TEXT 3 ) 3351 cÚ¡ * sql™e3_cÞumn_blob ( sql™e3_¡mt *,  iCÞ ); 3352  sql™e3_cÞumn_by‹s ( sql™e3_¡mt *,  iCÞ ); 3353  sql™e3_cÞumn_by‹s16 ( sql™e3_¡mt *,  iCÞ ); 3354  sql™e3_cÞumn_doubË ( sql™e3_¡mt *,  iCÞ ); 3355  sql™e3_cÞumn_št ( sql™e3_¡mt *,  iCÞ ); 3356 sql™e3_št64 sql™e3_cÞumn_št64 ( sql™e3_¡mt *,  iCÞ ); 3357 cÚ¡ * sql™e3_cÞumn_‹xt ( sql™e3_¡mt *,  iCÞ ); 3358 cÚ¡ * sql™e3_cÞumn_‹xt16 ( sql™e3_¡mt *,  iCÞ ); 3359  sql™e3_cÞumn_ty³ ( sql™e3_¡mt *,  iCÞ ); 3360 sql™e3_v®ue * sql™e3_cÞumn_v®ue ( sql™e3_¡mt *,  iCÞ ); 3390  sql™e3_fš®ize ( sql™e3_¡mt * pStmt ); 3417  sql™e3_»£t ( sql™e3_¡mt * pStmt ); 3544  sql™e3_ü—‹_funùiÚ ( 3545 sql™e3 * db , 3546 cÚ¡ * zFunùiÚName , 3547  nArg , 3548  eTextR• , 3549 * pAµ , 3550 (* xFunc )( sql™e3_cÚ‹xt *,, sql™e3_v®ue **), 3551 (* xS‹p )( sql™e3_cÚ‹xt *,, sql™e3_v®ue **), 3552 (* xFš® )( sql™e3_cÚ‹xt *) 3554  sql™e3_ü—‹_funùiÚ16 ( 3555 sql™e3 * db , 3556 cÚ¡ * zFunùiÚName , 3557  nArg , 3558  eTextR• , 3559 * pAµ , 3560 (* xFunc )( sql™e3_cÚ‹xt *,, sql™e3_v®ue **), 3561 (* xS‹p )( sql™e3_cÚ‹xt *,, sql™e3_v®ue **), 3562 (* xFš® )( sql™e3_cÚ‹xt *) 3571  #SQLITE_UTF8 1 ) 3572  #SQLITE_UTF16LE 2 ) 3573  #SQLITE_UTF16BE 3 ) 3574  #SQLITE_UTF16 4 ) 3575  #SQLITE_ANY 5 ) 3576  #SQLITE_UTF16_ALIGNED 8 ) 3587  sql™e3_agg»g©e_couÁ ( sql™e3_cÚ‹xt *); 3588  sql™e3_expœed ( sql™e3_¡mt *); 3589  sql™e3_Œªsãr_bšdšgs ( sql™e3_¡mt *, sqlite3_stmt*); 3590  sql™e3_glob®_»cov” (); 3591  sql™e3_th»ad_þ—nup (); 3592  sql™e3_memÜy_®¬m ((*)(*, sql™e3_št64 ,),*,sqlite3_int64); 3703 cÚ¡ * sql™e3_v®ue_blob ( sql™e3_v®ue *); 3704  sql™e3_v®ue_by‹s ( sql™e3_v®ue *); 3705  sql™e3_v®ue_by‹s16 ( sql™e3_v®ue *); 3706  sql™e3_v®ue_doubË ( sql™e3_v®ue *); 3707  sql™e3_v®ue_št ( sql™e3_v®ue *); 3708 sql™e3_št64 sql™e3_v®ue_št64 ( sql™e3_v®ue *); 3709 cÚ¡ * sql™e3_v®ue_‹xt ( sql™e3_v®ue *); 3710 cÚ¡ * sql™e3_v®ue_‹xt16 ( sql™e3_v®ue *); 3711 cÚ¡ * sql™e3_v®ue_‹xt16Ë ( sql™e3_v®ue *); 3712 cÚ¡ * sql™e3_v®ue_‹xt16be ( sql™e3_v®ue *); 3713  sql™e3_v®ue_ty³ ( sql™e3_v®ue *); 3714  sql™e3_v®ue_num”ic_ty³ ( sql™e3_v®ue *); 3761 * sql™e3_agg»g©e_cÚ‹xt ( sql™e3_cÚ‹xt *,  nBy‹s ); 3783 * sql™e3_u£r_d©a ( sql™e3_cÚ‹xt *); 3802 sql™e3 * sql™e3_cÚ‹xt_db_hªdË ( sql™e3_cÚ‹xt *); 3875 * sql™e3_g‘_auxd©a ( sql™e3_cÚ‹xt *,  N ); 3876  sql™e3_£t_auxd©a ( sql™e3_cÚ‹xt *,  N , *, (*)(*)); 3893 (* sql™e3_de¡ruùÜ_ty³ )(*); 3894  #SQLITE_STATIC (( sql™e3_de¡ruùÜ_ty³ )0) ) 3895  #SQLITE_TRANSIENT (( sql™e3_de¡ruùÜ_ty³ )-1) ) 4100  sql™e3_»suÉ_blob ( sql™e3_cÚ‹xt *, const *, , (*)(*)); 4101  sql™e3_»suÉ_doubË ( sql™e3_cÚ‹xt *, ); 4102  sql™e3_»suÉ_”rÜ ( sql™e3_cÚ‹xt *, const *, ); 4103  sql™e3_»suÉ_”rÜ16 ( sql™e3_cÚ‹xt *, const *, ); 4104  sql™e3_»suÉ_”rÜ_toobig ( sql™e3_cÚ‹xt *); 4105  sql™e3_»suÉ_”rÜ_nomem ( sql™e3_cÚ‹xt *); 4106  sql™e3_»suÉ_”rÜ_code ( sql™e3_cÚ‹xt *, ); 4107  sql™e3_»suÉ_št ( sql™e3_cÚ‹xt *, ); 4108  sql™e3_»suÉ_št64 ( sql™e3_cÚ‹xt *, sql™e3_št64 ); 4109  sql™e3_»suÉ_nuÎ ( sql™e3_cÚ‹xt *); 4110  sql™e3_»suÉ_‹xt ( sql™e3_cÚ‹xt *, const *, , (*)(*)); 4111  sql™e3_»suÉ_‹xt16 ( sql™e3_cÚ‹xt *, const *, , (*)(*)); 4112  sql™e3_»suÉ_‹xt16Ë ( sql™e3_cÚ‹xt *, const *, ,(*)(*)); 4113  sql™e3_»suÉ_‹xt16be ( sql™e3_cÚ‹xt *, const *, ,(*)(*)); 4114  sql™e3_»suÉ_v®ue ( sql™e3_cÚ‹xt *, sql™e3_v®ue *); 4115  sql™e3_»suÉ_z”oblob ( sql™e3_cÚ‹xt *,  n ); 4210  sql™e3_ü—‹_cÞÏtiÚ ( 4211 sql™e3 *, 4212 cÚ¡ * zName , 4213  eTextR• , 4215 (* xCom·» )(*,,const *,,const *) 4217  sql™e3_ü—‹_cÞÏtiÚ_v2 ( 4218 sql™e3 *, 4219 cÚ¡ * zName , 4220  eTextR• , 4222 (* xCom·» )(*,,const *,,const *), 4223 (* xDe¡roy )(*) 4225  sql™e3_ü—‹_cÞÏtiÚ16 ( 4226 sql™e3 *, 4227 cÚ¡ * zName , 4228  eTextR• , 4230 (* xCom·» )(*,,const *,,const *) 4281  sql™e3_cÞÏtiÚ_Ãeded ( 4282 sql™e3 *, 4284 (*)(*, sql™e3 *, eTextR• ,const *) 4286  sql™e3_cÞÏtiÚ_Ãeded16 ( 4287 sql™e3 *, 4289 (*)(*, sql™e3 *, eTextR• ,const *) 4299  sql™e3_key ( 4300 sql™e3 * db , 4301 cÚ¡ * pKey ,  nKey 4312  sql™e3_»key ( 4313 sql™e3 * db , 4314 cÚ¡ * pKey ,  nKey 4343  sql™e3_¦“p (); 4359 SQLITE_EXTERN * sql™e3_‹mp_dœeùÜy ; 4397  sql™e3_g‘_autocomm™ ( sql™e3 *); 4416 sql™e3 * sql™e3_db_hªdË ( sql™e3_¡mt *); 4487 * sql™e3_comm™_hook ( sql™e3 *, (*)(*), *); 4488 * sql™e3_rÞlback_hook ( sql™e3 *, (*)(*), *); 4551 * sql™e3_upd©e_hook ( 4552 sql™e3 *, 4553 (*)(*,,cÚ¡ *,cÚ¡ *, sql™e3_št64 ), 4601  sql™e3_’abË_sh¬ed_ÿche (); 4624  sql™e3_»Ëa£_memÜy (); 4686  sql™e3_soá_h—p_lim™ (); 4752  sql™e3_bË_cÞumn_m‘ad©a ( 4753 sql™e3 * db , 4754 cÚ¡ * zDbName , 4755 cÚ¡ * zTabËName , 4756 cÚ¡ * zCÞumnName , 4757 cÚ¡ ** pzD©aTy³ , 4758 cÚ¡ ** pzCÞlSeq , 4759 * pNÙNuÎ , 4760 * pPrim¬yKey , 4761 * pAutošc 4787  sql™e3_lßd_ex‹nsiÚ ( 4788 sql™e3 * db , 4789 cÚ¡ * zFže , 4790 cÚ¡ * zProc , 4791 ** pzE¼Msg 4807  sql™e3_’abË_lßd_ex‹nsiÚ ( sql™e3 * db ,  Úoff ); 4835  sql™e3_auto_ex‹nsiÚ (* xEÁryPošt ); 4851  sql™e3_»£t_auto_ex‹nsiÚ (); 4868  sql™e3_vb tsql™e3_vb ; 4869  sql™e3_šdex_šfo tsql™e3_šdex_šfo ; 4870  sql™e3_vb_cursÜ tsql™e3_vb_cursÜ ; 4871  sql™e3_moduË tsql™e3_moduË ; 4881  ssql™e3_moduË { 4882  iV”siÚ ; 4883 (* xC»©e )( sql™e3 *, * pAux , 4884  ¬gc , cÚ¡ *cÚ¡* ¬gv , 4885 sql™e3_vb ** µVTab , **); 4886 (* xCÚÃù )( sql™e3 *, * pAux , 4887  ¬gc , cÚ¡ *cÚ¡* ¬gv , 4888 sql™e3_vb ** µVTab , **); 4889 (* xBe¡Index )( sql™e3_vb * pVTab , sql™e3_šdex_šfo *); 4890 (* xDiscÚÃù )( sql™e3_vb * pVTab ); 4891 (* xDe¡roy )( sql™e3_vb * pVTab ); 4892 (* xO³n )( sql™e3_vb * pVTab , sql™e3_vb_cursÜ ** µCursÜ ); 4893 (* xClo£ )( sql™e3_vb_cursÜ *); 4894 (* xFž‹r )( sql™e3_vb_cursÜ *,  idxNum , cÚ¡ * idxSŒ , 4895  ¬gc , sql™e3_v®ue ** ¬gv ); 4896 (* xNext )( sql™e3_vb_cursÜ *); 4897 (* xEof )( sql™e3_vb_cursÜ *); 4898 (* xCÞumn )( sql™e3_vb_cursÜ *, sql™e3_cÚ‹xt *, ); 4899 (* xRowid )( sql™e3_vb_cursÜ *, sql™e3_št64 * pRowid ); 4900 (* xUpd©e )( sql™e3_vb *, , sql™e3_v®ue **, sql™e3_št64 *); 4901 (* xBegš )( sql™e3_vb * pVTab ); 4902 (* xSync )( sql™e3_vb * pVTab ); 4903 (* xComm™ )( sql™e3_vb * pVTab ); 4904 (* xRÞlback )( sql™e3_vb * pVTab ); 4905 (* xFšdFunùiÚ )( sql™e3_vb * pVb ,  nArg , cÚ¡ * zName , 4906 (** pxFunc )( sql™e3_cÚ‹xt *,, sql™e3_v®ue **), 4907 ** µArg ); 4909 (* xR’ame )( sql™e3_vb * pVb , cÚ¡ * zNew ); 4962  ssql™e3_šdex_šfo { 4964  nCÚ¡¿št ; 4965  ssql™e3_šdex_cÚ¡¿št { 4966  iCÞumn ; 4967  Ý ; 4968  u§bË ; 4969  iT”mOff£t ; 4970 } * aCÚ¡¿št ; 4971  nOrd”By ; 4972  ssql™e3_šdex_Üd”by { 4973  iCÞumn ; 4974  desc ; 4975 } * aOrd”By ; 4978  ssql™e3_šdex_cÚ¡¿št_u§ge { 4979  ¬gvIndex ; 4980  om™ ; 4981 } * aCÚ¡¿štU§ge ; 4982  idxNum ; 4983 * idxSŒ ; 4984  ÃedToF»eIdxSŒ ; 4985  Üd”ByCÚsumed ; 4986  e¡im©edCo¡ ; 4988  #SQLITE_INDEX_CONSTRAINT_EQ 2 ) 4989  #SQLITE_INDEX_CONSTRAINT_GT 4 ) 4990  #SQLITE_INDEX_CONSTRAINT_LE 8 ) 4991  #SQLITE_INDEX_CONSTRAINT_LT 16 ) 4992  #SQLITE_INDEX_CONSTRAINT_GE 32 ) 4993  #SQLITE_INDEX_CONSTRAINT_MATCH 64 ) 5003  sql™e3_ü—‹_moduË ( 5004 sql™e3 * db , 5005 cÚ¡ * zName , 5006 cÚ¡ sql™e3_moduË *, 5017  sql™e3_ü—‹_moduË_v2 ( 5018 sql™e3 * db , 5019 cÚ¡ * zName , 5020 cÚ¡ sql™e3_moduË *, 5022 (* xDe¡roy )(*) 5045  ssql™e3_vb { 5046 cÚ¡ sql™e3_moduË * pModuË ; 5047  nRef ; 5048 * zE¼Msg ; 5065  ssql™e3_vb_cursÜ { 5066 sql™e3_vb * pVb ; 5077  sql™e3_deþ¬e_vb ( sql™e3 *, cÚ¡ * zC»©eTabË ); 5097  sql™e3_ov”lßd_funùiÚ ( sql™e3 *, cÚ¡ * zFuncName ,  nArg ); 5123  sql™e3_blob tsql™e3_blob ; 5175  sql™e3_blob_Ý’ ( 5176 sql™e3 *, 5177 cÚ¡ * zDb , 5178 cÚ¡ * zTabË , 5179 cÚ¡ * zCÞumn , 5180 sql™e3_št64 iRow , 5181  æags , 5182 sql™e3_blob ** µBlob 5221  sql™e3_blob_þo£ ( sql™e3_blob *); 5235  sql™e3_blob_by‹s ( sql™e3_blob *); 5280  sql™e3_blob_»ad ( sql™e3_blob *, * Z ,  N ,  iOff£t ); 5334  sql™e3_blob_wr™e ( sql™e3_blob *, cÚ¡ * z ,  n ,  iOff£t ); 5393 sql™e3_vfs * sql™e3_vfs_fšd (cÚ¡ * zVfsName ); 5394  sql™e3_vfs_»gi¡” ( sql™e3_vfs *,  makeDæt ); 5395  sql™e3_vfs_uÄegi¡” ( sql™e3_vfs *); 5506 sql™e3_mu‹x * sql™e3_mu‹x_®loc (); 5507  sql™e3_mu‹x_ä“ ( sql™e3_mu‹x *); 5508  sql™e3_mu‹x_’‹r ( sql™e3_mu‹x *); 5509  sql™e3_mu‹x_Œy ( sql™e3_mu‹x *); 5510  sql™e3_mu‹x_Ëave ( sql™e3_mu‹x *); 5543  sql™e3_mu‹x_h–d ( sql™e3_mu‹x *); 5544  sql™e3_mu‹x_nÙh–d ( sql™e3_mu‹x *); 5552  #SQLITE_MUTEX_FAST 0 ) 5553  #SQLITE_MUTEX_RECURSIVE 1 ) 5554  #SQLITE_MUTEX_STATIC_MASTER 2 ) 5555  #SQLITE_MUTEX_STATIC_MEM 3 ) 5556  #SQLITE_MUTEX_STATIC_MEM2 4 ) 5557  #SQLITE_MUTEX_STATIC_PRNG 5 ) 5558  #SQLITE_MUTEX_STATIC_LRU 6 ) 5559  #SQLITE_MUTEX_STATIC_LRU2 7 ) 5585  sql™e3_fže_cÚŒÞ ( sql™e3 *, cÚ¡ * zDbName ,  Ý , *); 5604  sql™e3_‹¡_cÚŒÞ ( Ý , ...); 5617  #SQLITE_TESTCTRL_FAULT_CONFIG 1 ) 5618  #SQLITE_TESTCTRL_FAULT_FAILURES 2 ) 5619  #SQLITE_TESTCTRL_FAULT_BENIGN_FAILURES 3 ) 5620  #SQLITE_TESTCTRL_FAULT_PENDING 4 ) 5621  #SQLITE_TESTCTRL_PRNG_SAVE 5 ) 5622  #SQLITE_TESTCTRL_PRNG_RESTORE 6 ) 5623  #SQLITE_TESTCTRL_PRNG_RESET 7 ) 5624  #SQLITE_TESTCTRL_BITVEC_TEST 8 ) 5631 #ifdeà SQLITE_OMIT_FLOATING_POINT 5635 #ifdeà __ýlu¥lus @/usr/include/stdint.h 23 #iâdeà _STDINT_H 24  #_STDINT_H 1 ) 26  ~<ã©u»s.h > 27  ~ 28  ~ 35 #iâdeà __št8_t_defšed 36  #__št8_t_defšed ) 37 sigÃd  tšt8_t ; 38  tšt16_t ; 39  tšt32_t ; 40 #ià __WORDSIZE == 64 41  tšt64_t ; 43 __ex‹nsiÚ__ 44  tšt64_t ; 49  tušt8_t ; 50  tušt16_t ; 51 #iâdeà __ušt32_t_defšed 52  tušt32_t ; 53  #__ušt32_t_defšed ) 55 #ià __WORDSIZE == 64 56  tušt64_t ; 58 __ex‹nsiÚ__ 59  tušt64_t ; 66 sigÃd  tšt_Ëa¡8_t ; 67  tšt_Ëa¡16_t ; 68  tšt_Ëa¡32_t ; 69 #ià __WORDSIZE == 64 70  tšt_Ëa¡64_t ; 72 __ex‹nsiÚ__ 73  tšt_Ëa¡64_t ; 77  tušt_Ëa¡8_t ; 78  tušt_Ëa¡16_t ; 79  tušt_Ëa¡32_t ; 80 #ià __WORDSIZE == 64 81  tušt_Ëa¡64_t ; 83 __ex‹nsiÚ__ 84  tušt_Ëa¡64_t ; 91 sigÃd  tšt_ç¡8_t ; 92 #ià __WORDSIZE == 64 93  tšt_ç¡16_t ; 94  tšt_ç¡32_t ; 95  tšt_ç¡64_t ; 97  tšt_ç¡16_t ; 98  tšt_ç¡32_t ; 99 __ex‹nsiÚ__ 100  tšt_ç¡64_t ; 104  tušt_ç¡8_t ; 105 #ià __WORDSIZE == 64 106  tušt_ç¡16_t ; 107  tušt_ç¡32_t ; 108  tušt_ç¡64_t ; 110  tušt_ç¡16_t ; 111  tušt_ç¡32_t ; 112 __ex‹nsiÚ__ 113  tušt_ç¡64_t ; 118 #ià __WORDSIZE == 64 119 #iâdeà __šŒ_t_defšed 120  tšŒ_t ; 121  #__šŒ_t_defšed ) 123  tušŒ_t ; 125 #iâdeà __šŒ_t_defšed 126  tšŒ_t ; 127  #__šŒ_t_defšed ) 129  tušŒ_t ; 134 #ià __WORDSIZE == 64 135  tštmax_t ; 136  tuštmax_t ; 138 __ex‹nsiÚ__ 139  tštmax_t ; 140 __ex‹nsiÚ__ 141  tuštmax_t ; 147 #ià! defšed __ýlu¥lus || defšed __STDC_LIMIT_MACROS 149 #ià __WORDSIZE == 64 150  #__INT64_C ( c èø## L ) 151  #__UINT64_C ( c èø## UL ) 153  #__INT64_C ( c èø## LL ) 154  #__UINT64_C ( c èø## ULL ) 160  #INT8_MIN (-128) ) 161  #INT16_MIN (-32767-1) ) 162  #INT32_MIN (-2147483647-1) ) 163  #INT64_MIN (- `__INT64_C (9223372036854775807)-1) ) 165  #INT8_MAX (127) ) 166  #INT16_MAX (32767) ) 167  #INT32_MAX (2147483647) ) 168  #INT64_MAX ( `__INT64_C (9223372036854775807)) ) 171  #UINT8_MAX (255) ) 172  #UINT16_MAX (65535) ) 173  #UINT32_MAX (4294967295U) ) 174  #UINT64_MAX ( `__UINT64_C (18446744073709551615)) ) 178  #INT_LEAST8_MIN (-128) ) 179  #INT_LEAST16_MIN (-32767-1) ) 180  #INT_LEAST32_MIN (-2147483647-1) ) 181  #INT_LEAST64_MIN (- `__INT64_C (9223372036854775807)-1) ) 183  #INT_LEAST8_MAX (127) ) 184  #INT_LEAST16_MAX (32767) ) 185  #INT_LEAST32_MAX (2147483647) ) 186  #INT_LEAST64_MAX ( `__INT64_C (9223372036854775807)) ) 189  #UINT_LEAST8_MAX (255) ) 190  #UINT_LEAST16_MAX (65535) ) 191  #UINT_LEAST32_MAX (4294967295U) ) 192  #UINT_LEAST64_MAX ( `__UINT64_C (18446744073709551615)) ) 196  #INT_FAST8_MIN (-128) ) 197 #ià __WORDSIZE == 64 198  #INT_FAST16_MIN (-9223372036854775807L-1) ) 199  #INT_FAST32_MIN (-9223372036854775807L-1) ) 201  #INT_FAST16_MIN (-2147483647-1) ) 202  #INT_FAST32_MIN (-2147483647-1) ) 204  #INT_FAST64_MIN (- `__INT64_C (9223372036854775807)-1) ) 206  #INT_FAST8_MAX (127) ) 207 #ià __WORDSIZE == 64 208  #INT_FAST16_MAX (9223372036854775807L) ) 209  #INT_FAST32_MAX (9223372036854775807L) ) 211  #INT_FAST16_MAX (2147483647) ) 212  #INT_FAST32_MAX (2147483647) ) 214  #INT_FAST64_MAX ( `__INT64_C (9223372036854775807)) ) 217  #UINT_FAST8_MAX (255) ) 218 #ià __WORDSIZE == 64 219  #UINT_FAST16_MAX (18446744073709551615UL) ) 220  #UINT_FAST32_MAX (18446744073709551615UL) ) 222  #UINT_FAST16_MAX (4294967295U) ) 223  #UINT_FAST32_MAX (4294967295U) ) 225  #UINT_FAST64_MAX ( `__UINT64_C (18446744073709551615)) ) 229 #ià __WORDSIZE == 64 230  #INTPTR_MIN (-9223372036854775807L-1) ) 231  #INTPTR_MAX (9223372036854775807L) ) 232  #UINTPTR_MAX (18446744073709551615UL) ) 234  #INTPTR_MIN (-2147483647-1) ) 235  #INTPTR_MAX (2147483647) ) 236  #UINTPTR_MAX (4294967295U) ) 241  #INTMAX_MIN (- `__INT64_C (9223372036854775807)-1) ) 243  #INTMAX_MAX ( `__INT64_C (9223372036854775807)) ) 246  #UINTMAX_MAX ( `__UINT64_C (18446744073709551615)) ) 252 #ià __WORDSIZE == 64 253  #PTRDIFF_MIN (-9223372036854775807L-1) ) 254  #PTRDIFF_MAX (9223372036854775807L) ) 256  #PTRDIFF_MIN (-2147483647-1) ) 257  #PTRDIFF_MAX (2147483647) ) 261  #SIG_ATOMIC_MIN (-2147483647-1) ) 262  #SIG_ATOMIC_MAX (2147483647) ) 265 #ià __WORDSIZE == 64 266  #SIZE_MAX (18446744073709551615UL) ) 268  #SIZE_MAX (4294967295U) ) 272 #iâdeà WCHAR_MIN 274  #WCHAR_MIN __WCHAR_MIN ) 275  #WCHAR_MAX __WCHAR_MAX ) 279  #WINT_MIN (0u) ) 280  #WINT_MAX (4294967295u) ) 287 #ià! defšed __ýlu¥lus || defšed __STDC_CONSTANT_MACROS 290  #INT8_C ( c è ) c 291  #INT16_C ( c è ) c 292  #INT32_C ( c è ) c 293 #ià __WORDSIZE == 64 294  #INT64_C ( c èø## L ) 296  #INT64_C ( c èø## LL ) 300  #UINT8_C ( c è ) c 301  #UINT16_C ( c è ) c 302  #UINT32_C ( c èø## U ) 303 #ià __WORDSIZE == 64 304  #UINT64_C ( c èø## UL ) 306  #UINT64_C ( c èø## ULL ) 310 #ià __WORDSIZE == 64 311  #INTMAX_C ( c èø## L ) 312  #UINTMAX_C ( c èø## UL ) 314  #INTMAX_C ( c èø## LL ) 315  #UINTMAX_C ( c èø## ULL ) @/usr/include/stdio.h 24 #iâdeà _STDIO_H 26 #ià! defšed __Ãed_FILE && !defšed __Ãed___FILE 27  #_STDIO_H 1 ) 28  ~<ã©u»s.h > 30 g__BEGIN_DECLS 32  #__Ãed_size_t ) 33  #__Ãed_NULL ) 34  ~<¡ddef.h > 36  ~ 37  #__Ãed_FILE ) 38  #__Ãed___FILE ) 42 #ià! defšed __FILE_defšed && defšed __Ãed_FILE 45  g_IO_FILE ; 47 __BEGIN_NAMESPACE_STD 49  _IO_FILE tFILE ; 50 g__END_NAMESPACE_STD 51 #ià defšed __USE_LARGEFILE64 || defšed __USE_SVID || defšed __USE_POSIX \ 52 || defšed g__USE_BSD || defšed g__USE_ISOC99 || defšed g__USE_XOPEN \ 53 || defšed __USE_POSIX2 54 $__USING_NAMESPACE_STD ( FILE ) 57  #__FILE_defšed 1 ) 59 #undeà __Ãed_FILE 62 #ià! defšed ____FILE_defšed && defšed __Ãed___FILE 65  _IO_FILE t__FILE ; 67  #____FILE_defšed 1 ) 69 #undeà __Ãed___FILE 72 #ifdef _STDIO_H 73  #_STDIO_USES_IOSTREAM ) 75  ~ 77 #ifdeà __USE_XOPEN 78 #ifdeà __GNUC__ 79 #iâdeà _VA_LIST_DEFINED 80  _G_va_li¡ tva_li¡ ; 81  #_VA_LIST_DEFINED ) 84  ~<¡d¬g.h > 89 __BEGIN_NAMESPACE_STD 90 #iâdeà __USE_FILE_OFFSET64 91  _G_åos_t tåos_t ; 93  _G_åos64_t tåos_t ; 95 __END_NAMESPACE_STD 96 #ifdeà __USE_LARGEFILE64 97  _G_åos64_t tåos64_t ; 101  #_IOFBF 0 ) 102  #_IOLBF 1 ) 103  #_IONBF 2 ) 107 #iâdeà BUFSIZ 108  #BUFSIZ _IO_BUFSIZ ) 114 #iâdeà EOF 115  #EOF (-1) ) 121  #SEEK_SET 0 ) 122  #SEEK_CUR 1 ) 123  #SEEK_END 2 ) 126 #ià defšed __USE_SVID || defšed __USE_XOPEN 128  #P_tmpdœ "/tmp" ) 141  ~ 145  _IO_FILE * ¡dš ; 146  _IO_FILE * ¡dout ; 147  _IO_FILE * ¡d”r ; 149  #¡dš ¡dš ) 150  #¡dout ¡dout ) 151  #¡d”r ¡d”r ) 153 __BEGIN_NAMESPACE_STD 155  $»move ( __cÚ¡ * __fž’ame è __THROW ; 157  $»Çme ( __cÚ¡ * __Þd , __cÚ¡ * __Ãw è __THROW ; 158 __END_NAMESPACE_STD 160 #ifdeà __USE_ATFILE 162  $»Çm—t ( __Þdfd , __cÚ¡ * __Þd ,  __Ãwfd , 163 __cÚ¡ * __Ãw è __THROW ; 166 __BEGIN_NAMESPACE_STD 171 #iâdeà __USE_FILE_OFFSET64 172 FILE * $tmpfže (è __wur ; 174 #ifdeà __REDIRECT 175 FILE * `__REDIRECT ( tmpfže , (), tmpfže64 è __wur ; 177  #tmpfže tmpfže64 ) 181 #ifdeà __USE_LARGEFILE64 182 FILE * $tmpfže64 (è __wur ; 186 * $tm²am (* __s è __THROW __wur ; 187 __END_NAMESPACE_STD 189 #ifdeà __USE_MISC 192 * $tm²am_r (* __s è __THROW __wur ; 196 #ià defšed __USE_SVID || defšed __USE_XOPEN 204 * $‹m²am ( __cÚ¡ * __dœ , __cÚ¡ * __pfx ) 205 __THROW __©Œibu‹_m®loc__ __wur ; 209 __BEGIN_NAMESPACE_STD 214  `fþo£ ( FILE * __¡»am ); 219  `fæush ( FILE * __¡»am ); 220 __END_NAMESPACE_STD 222 #ifdeà __USE_MISC 229  `fæush_uÆocked ( FILE * __¡»am ); 232 #ifdeà __USE_GNU 239  `fþo£®l (); 243 __BEGIN_NAMESPACE_STD 244 #iâdeà __USE_FILE_OFFSET64 249 FILE * $fÝ’ ( __cÚ¡ * __»¡riù __fž’ame , 250 __cÚ¡ * __»¡riù __modes è __wur ; 255 FILE * $äeÝ’ ( __cÚ¡ * __»¡riù __fž’ame , 256 __cÚ¡ * __»¡riù __modes , 257 FILE * __»¡riù __¡»am è __wur ; 259 #ifdeà __REDIRECT 260 FILE * `__REDIRECT ( fÝ’ , ( __cÚ¡ * __»¡riù __fž’ame , 261 __cÚ¡ * __»¡riù __modes ), fÝ’64 ) 262 __wur ; 263 FILE * `__REDIRECT ( äeÝ’ , ( __cÚ¡ * __»¡riù __fž’ame , 264 __cÚ¡ * __»¡riù __modes , 265 FILE * __»¡riù __¡»am ), äeÝ’64 ) 266 __wur ; 268  #fÝ’ fÝ’64 ) 269  #äeÝ’ äeÝ’64 ) 272 __END_NAMESPACE_STD 273 #ifdeà __USE_LARGEFILE64 274 FILE * $fÝ’64 ( __cÚ¡ * __»¡riù __fž’ame , 275 __cÚ¡ * __»¡riù __modes è __wur ; 276 FILE * $äeÝ’64 ( __cÚ¡ * __»¡riù __fž’ame , 277 __cÚ¡ * __»¡riù __modes , 278 FILE * __»¡riù __¡»am è __wur ; 281 #ifdef __USE_POSIX 283 FILE * $fdÝ’ ( __fd , __cÚ¡ * __modes è __THROW __wur ; 286 #ifdef __USE_GNU 289 FILE * $fÝ’cook› (* __»¡riù __magic_cook› , 290 __cÚ¡ * __»¡riù __modes , 291 _IO_cook›_io_funùiÚs_t __io_funcs è __THROW __wur ; 294 FILE * $fmemÝ’ (* __s , size_t __Ën , __cÚ¡ * __modes ) 295 __THROW __wur ; 300 FILE * $Ý’_mem¡»am (** __buæoc , size_t * __siz–oc è __THROW __wur ; 304 __BEGIN_NAMESPACE_STD 307  $£tbuf ( FILE * __»¡riù __¡»am , *__»¡riù __buf è __THROW ; 311  $£tvbuf ( FILE * __»¡riù __¡»am , *__»¡riù __buf , 312  __modes , size_t __n è __THROW ; 313 __END_NAMESPACE_STD 315 #ifdef __USE_BSD 318  $£tbufãr ( FILE * __»¡riù __¡»am , *__»¡riù __buf , 319 size_t __size è __THROW ; 322  $£Žšebuf ( FILE * __¡»am è __THROW ; 326 __BEGIN_NAMESPACE_STD 331  `årštf ( FILE * __»¡riù __¡»am , 332 __cÚ¡ * __»¡riù __fÜm© , ...); 337  `´štf ( __cÚ¡ * __»¡riù __fÜm© , ...); 339  $¥rštf (* __»¡riù __s , 340 __cÚ¡ * __»¡riù __fÜm© , ...è __THROW ; 346  `vårštf ( FILE * __»¡riù __s , __cÚ¡ *__»¡riù __fÜm© , 347 _G_va_li¡ __¬g ); 352  `v´štf ( __cÚ¡ * __»¡riù __fÜm© , _G_va_li¡ __¬g ); 354  $v¥rštf (* __»¡riù __s , __cÚ¡ *__»¡riù __fÜm© , 355 _G_va_li¡ __¬g è __THROW ; 356 __END_NAMESPACE_STD 358 #ià defšed __USE_BSD || defšed __USE_ISOC99 || defšed __USE_UNIX98 359 __BEGIN_NAMESPACE_C99 361  $¢´štf (* __»¡riù __s , size_t __maxËn , 362 __cÚ¡ * __»¡riù __fÜm© , ...) 363 __THROW `__©Œibu‹__ (( `__fÜm©__ ( __´štf__ , 3, 4))); 365  $v¢´štf (* __»¡riù __s , size_t __maxËn , 366 __cÚ¡ * __»¡riù __fÜm© , _G_va_li¡ __¬g ) 367 __THROW `__©Œibu‹__ (( `__fÜm©__ ( __´štf__ , 3, 0))); 368 __END_NAMESPACE_C99 371 #ifdeà __USE_GNU 374  $va¥rštf (** __»¡riù __±r , __cÚ¡ *__»¡riù __f , 375 _G_va_li¡ __¬g ) 376 __THROW `__©Œibu‹__ (( $__fÜm©__ ( __´štf__ , 2, 0))è __wur ; 377  $__a¥rštf (** __»¡riù __±r , 378 __cÚ¡ * __»¡riù __fmt , ...) 379 __THROW `__©Œibu‹__ (( $__fÜm©__ ( __´štf__ , 2, 3))è __wur ; 380  $a¥rštf (** __»¡riù __±r , 381 __cÚ¡ * __»¡riù __fmt , ...) 382 __THROW `__©Œibu‹__ (( $__fÜm©__ ( __´štf__ , 2, 3))è __wur ; 390  $vd´štf ( __fd , __cÚ¡ * __»¡riù __fmt , 391 _G_va_li¡ __¬g ) 392 `__©Œibu‹__ (( `__fÜm©__ ( __´štf__ , 2, 0))); 393  $d´štf ( __fd , __cÚ¡ * __»¡riù __fmt , ...) 394 `__©Œibu‹__ (( `__fÜm©__ ( __´štf__ , 2, 3))); 398 __BEGIN_NAMESPACE_STD 403  $fsÿnf ( FILE * __»¡riù __¡»am , 404 __cÚ¡ * __»¡riù __fÜm© , ...è __wur ; 409  $sÿnf ( __cÚ¡ * __»¡riù __fÜm© , ...è __wur ; 411  $ssÿnf ( __cÚ¡ * __»¡riù __s , 412 __cÚ¡ * __»¡riù __fÜm© , ...è __THROW ; 414 #ià defšed __USE_ISOC99 && !defšed __USE_GNU \ 415 && (! defšed __LDBL_COMPAT || !defšed __REDIRECT ) \ 416 && ( defšed __STRICT_ANSI__ || defšed __USE_XOPEN2K ) 417 #ifdeà __REDIRECT 421  `__REDIRECT ( fsÿnf , ( FILE * __»¡riù __¡»am , 422 __cÚ¡ * __»¡riù __fÜm© , ...), 423 __isoc99_fsÿnf è __wur ; 424  `__REDIRECT ( sÿnf , ( __cÚ¡ * __»¡riù __fÜm© , ...), 425 __isoc99_sÿnf è __wur ; 426  `__REDIRECT ( ssÿnf , ( __cÚ¡ * __»¡riù __s , 427 __cÚ¡ * __»¡riù __fÜm© , ...), 428 __isoc99_ssÿnf è __THROW ; 430  $__isoc99_fsÿnf ( FILE * __»¡riù __¡»am , 431 __cÚ¡ * __»¡riù __fÜm© , ...è __wur ; 432  $__isoc99_sÿnf ( __cÚ¡ * __»¡riù __fÜm© , ...è __wur ; 433  $__isoc99_ssÿnf ( __cÚ¡ * __»¡riù __s , 434 __cÚ¡ * __»¡riù __fÜm© , ...è __THROW ; 435  #fsÿnf __isoc99_fsÿnf ) 436  #sÿnf __isoc99_sÿnf ) 437  #ssÿnf __isoc99_ssÿnf ) 441 __END_NAMESPACE_STD 443 #ifdef __USE_ISOC99 444 __BEGIN_NAMESPACE_C99 449  $vfsÿnf ( FILE * __»¡riù __s , __cÚ¡ *__»¡riù __fÜm© , 450 _G_va_li¡ __¬g ) 451 `__©Œibu‹__ (( $__fÜm©__ ( __sÿnf__ , 2, 0))è __wur ; 457  $vsÿnf ( __cÚ¡ * __»¡riù __fÜm© , _G_va_li¡ __¬g ) 458 `__©Œibu‹__ (( $__fÜm©__ ( __sÿnf__ , 1, 0))è __wur ; 461  $vssÿnf ( __cÚ¡ * __»¡riù __s , 462 __cÚ¡ * __»¡riù __fÜm© , _G_va_li¡ __¬g ) 463 __THROW `__©Œibu‹__ (( `__fÜm©__ ( __sÿnf__ , 2, 0))); 465 #ià! defšed __USE_GNU \ 466 && (! defšed __LDBL_COMPAT || !defšed __REDIRECT ) \ 467 && ( defšed __STRICT_ANSI__ || defšed __USE_XOPEN2K ) 468 #ifdeà __REDIRECT 472  `__REDIRECT ( vfsÿnf , 473 ( FILE * __»¡riù __s , 474 __cÚ¡ * __»¡riù __fÜm© , _G_va_li¡ __¬g ), 475 __isoc99_vfsÿnf ) 476 `__©Œibu‹__ (( $__fÜm©__ ( __sÿnf__ , 2, 0))è __wur ; 477  `__REDIRECT ( vsÿnf , ( __cÚ¡ * __»¡riù __fÜm© , 478 _G_va_li¡ __¬g ), __isoc99_vfsÿnf ) 479 `__©Œibu‹__ (( $__fÜm©__ ( __sÿnf__ , 1, 0))è __wur ; 480  `__REDIRECT ( vssÿnf , 481 ( __cÚ¡ * __»¡riù __s , 482 __cÚ¡ * __»¡riù __fÜm© , _G_va_li¡ __¬g ), 483 __isoc99_vssÿnf ) 484 __THROW `__©Œibu‹__ (( `__fÜm©__ ( __sÿnf__ , 2, 0))); 486  $__isoc99_vfsÿnf ( FILE * __»¡riù __s , 487 __cÚ¡ * __»¡riù __fÜm© , 488 _G_va_li¡ __¬g è __wur ; 489  $__isoc99_vsÿnf ( __cÚ¡ * __»¡riù __fÜm© , 490 _G_va_li¡ __¬g è __wur ; 491  $__isoc99_vssÿnf ( __cÚ¡ * __»¡riù __s , 492 __cÚ¡ * __»¡riù __fÜm© , 493 _G_va_li¡ __¬g è __THROW ; 494  #vfsÿnf __isoc99_vfsÿnf ) 495  #vsÿnf __isoc99_vssÿnf ) 496  #vssÿnf __isoc99_vssÿnf ) 500 __END_NAMESPACE_C99 504 __BEGIN_NAMESPACE_STD 509  `fg‘c ( FILE * __¡»am ); 510  `g‘c ( FILE * __¡»am ); 516  `g‘ch¬ (); 517 __END_NAMESPACE_STD 521  #g‘c ( _å è `_IO_g‘c (_å) ) 523 #ià defšed __USE_POSIX || defšed __USE_MISC 528  `g‘c_uÆocked ( FILE * __¡»am ); 529  `g‘ch¬_uÆocked (); 532 #ifdeà __USE_MISC 539  `fg‘c_uÆocked ( FILE * __¡»am ); 543 __BEGIN_NAMESPACE_STD 551  `åutc ( __c , FILE * __¡»am ); 552  `putc ( __c , FILE * __¡»am ); 558  `putch¬ ( __c ); 559 __END_NAMESPACE_STD 563  #putc ( _ch , _å è `_IO_putc (_ch, _å) ) 565 #ifdeà __USE_MISC 572  `åutc_uÆocked ( __c , FILE * __¡»am ); 575 #ià defšed __USE_POSIX || defšed __USE_MISC 580  `putc_uÆocked ( __c , FILE * __¡»am ); 581  `putch¬_uÆocked ( __c ); 585 #ià defšed __USE_SVID || defšed __USE_MISC \ 586 || ( defšed __USE_XOPEN && !defšed __USE_XOPEN2K ) 588  `g‘w ( FILE * __¡»am ); 591  `putw ( __w , FILE * __¡»am ); 595 __BEGIN_NAMESPACE_STD 600 * $fg‘s (* __»¡riù __s ,  __n , FILE *__»¡riù __¡»am ) 601 __wur ; 608 * $g‘s (* __s è __wur ; 609 __END_NAMESPACE_STD 611 #ifdeà __USE_GNU 618 * $fg‘s_uÆocked (* __»¡riù __s ,  __n , 619 FILE * __»¡riù __¡»am è __wur ; 623 #ifdef __USE_GNU 634 _IO_ssize_t $__g‘d–im (** __»¡riù __lš•Œ , 635 size_t * __»¡riù __n ,  __d–im™” , 636 FILE * __»¡riù __¡»am è __wur ; 637 _IO_ssize_t $g‘d–im (** __»¡riù __lš•Œ , 638 size_t * __»¡riù __n ,  __d–im™” , 639 FILE * __»¡riù __¡»am è __wur ; 647 _IO_ssize_t $g‘lše (** __»¡riù __lš•Œ , 648 size_t * __»¡riù __n , 649 FILE * __»¡riù __¡»am è __wur ; 653 __BEGIN_NAMESPACE_STD 658  `åuts ( __cÚ¡ * __»¡riù __s , FILE *__»¡riù __¡»am ); 664  `puts ( __cÚ¡ * __s ); 671  `ung‘c ( __c , FILE * __¡»am ); 678 size_t $ä—d (* __»¡riù __±r , size_t __size , 679 size_t __n , FILE * __»¡riù __¡»am è __wur ; 684 size_t $fwr™e ( __cÚ¡ * __»¡riù __±r , size_t __size , 685 size_t __n , FILE * __»¡riù __s è __wur ; 686 __END_NAMESPACE_STD 688 #ifdeà __USE_GNU 695  `åuts_uÆocked ( __cÚ¡ * __»¡riù __s , 696 FILE * __»¡riù __¡»am ); 699 #ifdeà __USE_MISC 706 size_t $ä—d_uÆocked (* __»¡riù __±r , size_t __size , 707 size_t __n , FILE * __»¡riù __¡»am è __wur ; 708 size_t $fwr™e_uÆocked ( __cÚ¡ * __»¡riù __±r , size_t __size , 709 size_t __n , FILE * __»¡riù __¡»am è __wur ; 713 __BEGIN_NAMESPACE_STD 718  `f£ek ( FILE * __¡»am ,  __off ,  __wh’û ); 723  $á–l ( FILE * __¡»am è __wur ; 728  `»wšd ( FILE * __¡»am ); 729 __END_NAMESPACE_STD 736 #ià defšed __USE_LARGEFILE || defšed __USE_XOPEN2K 737 #iâdeà __USE_FILE_OFFSET64 742  `f£eko ( FILE * __¡»am , __off_t __off ,  __wh’û ); 747 __off_t $á–lo ( FILE * __¡»am è __wur ; 749 #ifdeà __REDIRECT 750  `__REDIRECT ( f£eko , 751 ( FILE * __¡»am , __off64_t __off ,  __wh’û ), 752 f£eko64 ); 753 __off64_t `__REDIRECT ( á–lo , ( FILE * __¡»am ), á–lo64 ); 755  #f£eko f£eko64 ) 756  #á–lo á–lo64 ) 761 __BEGIN_NAMESPACE_STD 762 #iâdeà __USE_FILE_OFFSET64 767  `fg‘pos ( FILE * __»¡riù __¡»am , åos_t *__»¡riù __pos ); 772  `f£os ( FILE * __¡»am , __cÚ¡ åos_t * __pos ); 774 #ifdeà __REDIRECT 775  `__REDIRECT ( fg‘pos , ( FILE * __»¡riù __¡»am , 776 åos_t * __»¡riù __pos ), fg‘pos64 ); 777  `__REDIRECT ( f£os , 778 ( FILE * __¡»am , __cÚ¡ åos_t * __pos ), f£os64 ); 780  #fg‘pos fg‘pos64 ) 781  #f£os f£os64 ) 784 __END_NAMESPACE_STD 786 #ifdeà __USE_LARGEFILE64 787  `f£eko64 ( FILE * __¡»am , __off64_t __off ,  __wh’û ); 788 __off64_t $á–lo64 ( FILE * __¡»am è __wur ; 789  `fg‘pos64 ( FILE * __»¡riù __¡»am , åos64_t *__»¡riù __pos ); 790  `f£os64 ( FILE * __¡»am , __cÚ¡ åos64_t * __pos ); 793 __BEGIN_NAMESPACE_STD 795  $þ—»¼ ( FILE * __¡»am è __THROW ; 797  $ãof ( FILE * __¡»am è __THROW __wur ; 799  $ã¼Ü ( FILE * __¡»am è __THROW __wur ; 800 __END_NAMESPACE_STD 802 #ifdeà __USE_MISC 804  $þ—»¼_uÆocked ( FILE * __¡»am è __THROW ; 805  $ãof_uÆocked ( FILE * __¡»am è __THROW __wur ; 806  $ã¼Ü_uÆocked ( FILE * __¡»am è __THROW __wur ; 810 __BEGIN_NAMESPACE_STD 815  `³¼Ü ( __cÚ¡ * __s ); 816 __END_NAMESPACE_STD 822  ~ 825 #ifdef __USE_POSIX 827  $fž’o ( FILE * __¡»am è __THROW __wur ; 830 #ifdeà __USE_MISC 832  $fž’o_uÆocked ( FILE * __¡»am è __THROW __wur ; 836 #ià( defšed __USE_POSIX2 || defšed __USE_SVID || defšed __USE_BSD || \ 837 defšed __USE_MISC ) 842 FILE * $pÝ’ ( __cÚ¡ * __commªd , __cÚ¡ * __modes è __wur ; 848  `pþo£ ( FILE * __¡»am ); 852 #ifdef __USE_POSIX 854 * $ù”mid (* __s è __THROW ; 858 #ifdeà __USE_XOPEN 860 * `cu£rid (* __s ); 864 #ifdef __USE_GNU 865  ob¡ack ; 868  $ob¡ack_´štf ( ob¡ack * __»¡riù __ob¡ack , 869 __cÚ¡ * __»¡riù __fÜm© , ...) 870 __THROW `__©Œibu‹__ (( `__fÜm©__ ( __´štf__ , 2, 3))); 871  $ob¡ack_v´štf ( ob¡ack * __»¡riù __ob¡ack , 872 __cÚ¡ * __»¡riù __fÜm© , 873 _G_va_li¡ __¬gs ) 874 __THROW `__©Œibu‹__ (( `__fÜm©__ ( __´štf__ , 2, 0))); 878 #ià defšed __USE_POSIX || defšed __USE_MISC 882  $æockfže ( FILE * __¡»am è __THROW ; 886  $árylockfže ( FILE * __¡»am è __THROW __wur ; 889  $fuÆockfže ( FILE * __¡»am è __THROW ; 892 #ià defšed __USE_XOPEN && !defšed __USE_XOPEN2K && !defšed __USE_GNU 896  #__Ãed_g‘Ýt ) 897  ~ 902 #ifdeà __USE_EXTERN_INLINES 903  ~ 905 #ià __USE_FORTIFY_LEVEL > 0 && defšed __ex‹º_®ways_šlše 906  ~ 908 #ifdeà __LDBL_COMPAT 909  ~ 912 __END_DECLS @/usr/include/stdlib.h 23 #iâdef _STDLIB_H 25  ~<ã©u»s.h > 28  #__Ãed_size_t ) 29 #iâdeà __Ãed_m®loc_ªd_ÿÎoc 30  #__Ãed_wch¬_t ) 31  #__Ãed_NULL ) 33  ~<¡ddef.h > 35 g__BEGIN_DECLS 37 #iâdeà __Ãed_m®loc_ªd_ÿÎoc 38  #_STDLIB_H 1 ) 40 #ià defšed __USE_XOPEN && !defšed _SYS_WAIT_H 42  ~ 43  ~ 45 #ifdeà __USE_BSD 50 #ià defšed __GNUC__ && !defšed __ýlu¥lus 51  #__WAIT_INT ( ¡©us ) \ 52 ( `__ex‹nsiÚ__ ({ uniÚ { `__ty³of ( ¡©us è __š ;  __i ; } __u ; \ 53 __u . __š = ( ¡©us ); __u. __i ; })) ) 55  #__WAIT_INT ( ¡©us è(*(*è&(¡©us)) ) 63 #ià! defšed __GNUC__ || __GNUC__ < 2 || defšed __ýlu¥lus 64  #__WAIT_STATUS * ) 65  #__WAIT_STATUS_DEFN * ) 70  wa™ * m__u±r ; 71 * m__Œ ; 72 } t__WAIT_STATUS t__©Œibu‹__ (( t__Œª¥¬’t_uniÚ__ )); 73  #__WAIT_STATUS_DEFN * ) 78  #__WAIT_INT ( ¡©us è(¡©us) ) 79  #__WAIT_STATUS * ) 80  #__WAIT_STATUS_DEFN * ) 85  #WEXITSTATUS ( ¡©us è `__WEXITSTATUS ( `__WAIT_INT (¡©us)) ) 86  #WTERMSIG ( ¡©us è `__WTERMSIG ( `__WAIT_INT (¡©us)) ) 87  #WSTOPSIG ( ¡©us è `__WSTOPSIG ( `__WAIT_INT (¡©us)) ) 88  #WIFEXITED ( ¡©us è `__WIFEXITED ( `__WAIT_INT (¡©us)) ) 89  #WIFSIGNALED ( ¡©us è `__WIFSIGNALED ( `__WAIT_INT (¡©us)) ) 90  #WIFSTOPPED ( ¡©us è `__WIFSTOPPED ( `__WAIT_INT (¡©us)) ) 91 #ifdeà __WIFCONTINUED 92  #WIFCONTINUED ( ¡©us è `__WIFCONTINUED ( `__WAIT_INT (¡©us)) ) 96 __BEGIN_NAMESPACE_STD 100  mquÙ ; 101  m»m ; 102 } tdiv_t ; 105 #iâdeà __ldiv_t_defšed 108  mquÙ ; 109  m»m ; 110 } tldiv_t ; 111  #__ldiv_t_defšed 1 ) 113 g__END_NAMESPACE_STD 115 #ià defšed __USE_ISOC99 && !defšed __Îdiv_t_defšed 116 __BEGIN_NAMESPACE_C99 118 __ex‹nsiÚ__ struct 120  mquÙ ; 121  m»m ; 122 } tÎdiv_t ; 123  #__Îdiv_t_defšed 1 ) 124 g__END_NAMESPACE_C99 129  #RAND_MAX 2147483647 ) 134  #EXIT_FAILURE 1 ) 135  #EXIT_SUCCESS 0 ) 139  #MB_CUR_MAX ( `__ùy³_g‘_mb_cur_max ()) ) 140 size_t $__ùy³_g‘_mb_cur_max (è __THROW __wur ; 143 __BEGIN_NAMESPACE_STD 145  $©of ( __cÚ¡ * __ÅŒ ) 146 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)è __wur ; 148  $©oi ( __cÚ¡ * __ÅŒ ) 149 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)è __wur ; 151  $©Þ ( __cÚ¡ * __ÅŒ ) 152 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)è __wur ; 153 __END_NAMESPACE_STD 155 #ià defšed __USE_ISOC99 || (defšed __GLIBC_HAVE_LONG_LONG && defšed __USE_MISC ) 156 __BEGIN_NAMESPACE_C99 158 __ex‹nsiÚ__  $©Þl ( __cÚ¡ * __ÅŒ ) 159 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)è __wur ; 160 __END_NAMESPACE_C99 163 __BEGIN_NAMESPACE_STD 165  $¡¹od ( __cÚ¡ * __»¡riù __ÅŒ , 166 ** __»¡riù __’d±r ) 167 __THROW `__nÚnuÎ ((1)è __wur ; 168 __END_NAMESPACE_STD 170 #ifdef __USE_ISOC99 171 __BEGIN_NAMESPACE_C99 173  $¡¹of ( __cÚ¡ * __»¡riù __ÅŒ , 174 ** __»¡riù __’d±r è __THROW `__nÚnuÎ ((1)è __wur ; 176  $¡¹Þd ( __cÚ¡ * __»¡riù __ÅŒ , 177 ** __»¡riù __’d±r ) 178 __THROW `__nÚnuÎ ((1)è __wur ; 179 __END_NAMESPACE_C99 182 __BEGIN_NAMESPACE_STD 184  $¡¹Þ ( __cÚ¡ * __»¡riù __ÅŒ , 185 ** __»¡riù __’d±r ,  __ba£ ) 186 __THROW `__nÚnuÎ ((1)è __wur ; 188  $¡¹oul ( __cÚ¡ * __»¡riù __ÅŒ , 189 ** __»¡riù __’d±r ,  __ba£ ) 190 __THROW `__nÚnuÎ ((1)è __wur ; 191 __END_NAMESPACE_STD 193 #ià defšed __GLIBC_HAVE_LONG_LONG && defšed __USE_BSD 195 __ex‹nsiÚ__ 196  $¡¹oq ( __cÚ¡ * __»¡riù __ÅŒ , 197 ** __»¡riù __’d±r ,  __ba£ ) 198 __THROW `__nÚnuÎ ((1)è __wur ; 200 __ex‹nsiÚ__ 201  $¡¹ouq ( __cÚ¡ * __»¡riù __ÅŒ , 202 ** __»¡riù __’d±r ,  __ba£ ) 203 __THROW `__nÚnuÎ ((1)è __wur ; 206 #ià defšed __USE_ISOC99 || (defšed __GLIBC_HAVE_LONG_LONG && defšed __USE_MISC ) 207 __BEGIN_NAMESPACE_C99 209 __ex‹nsiÚ__ 210  $¡¹Þl ( __cÚ¡ * __»¡riù __ÅŒ , 211 ** __»¡riù __’d±r ,  __ba£ ) 212 __THROW `__nÚnuÎ ((1)è __wur ; 214 __ex‹nsiÚ__ 215  $¡¹ouÎ ( __cÚ¡ * __»¡riù __ÅŒ , 216 ** __»¡riù __’d±r ,  __ba£ ) 217 __THROW `__nÚnuÎ ((1)è __wur ; 218 __END_NAMESPACE_C99 222 #ifdeà __USE_GNU 236  ~ 240  $¡¹Þ_l ( __cÚ¡ * __»¡riù __ÅŒ , 241 ** __»¡riù __’d±r ,  __ba£ , 242 __loÿË_t __loc è __THROW `__nÚnuÎ ((1, 4)è __wur ; 244  $¡¹oul_l ( __cÚ¡ * __»¡riù __ÅŒ , 245 ** __»¡riù __’d±r , 246  __ba£ , __loÿË_t __loc ) 247 __THROW `__nÚnuÎ ((1, 4)è __wur ; 249 __ex‹nsiÚ__ 250  $¡¹Þl_l ( __cÚ¡ * __»¡riù __ÅŒ , 251 ** __»¡riù __’d±r ,  __ba£ , 252 __loÿË_t __loc ) 253 __THROW `__nÚnuÎ ((1, 4)è __wur ; 255 __ex‹nsiÚ__ 256  $¡¹ouÎ_l ( __cÚ¡ * __»¡riù __ÅŒ , 257 ** __»¡riù __’d±r , 258  __ba£ , __loÿË_t __loc ) 259 __THROW `__nÚnuÎ ((1, 4)è __wur ; 261  $¡¹od_l ( __cÚ¡ * __»¡riù __ÅŒ , 262 ** __»¡riù __’d±r , __loÿË_t __loc ) 263 __THROW `__nÚnuÎ ((1, 3)è __wur ; 265  $¡¹of_l ( __cÚ¡ * __»¡riù __ÅŒ , 266 ** __»¡riù __’d±r , __loÿË_t __loc ) 267 __THROW `__nÚnuÎ ((1, 3)è __wur ; 269  $¡¹Þd_l ( __cÚ¡ * __»¡riù __ÅŒ , 270 ** __»¡riù __’d±r , 271 __loÿË_t __loc ) 272 __THROW `__nÚnuÎ ((1, 3)è __wur ; 276 #ifdeà __USE_EXTERN_INLINES 277 __BEGIN_NAMESPACE_STD 278 __ex‹º_šlše  279 `__NTH ( $©of ( __cÚ¡ * __ÅŒ )) 281  `¡¹od ( __ÅŒ , (**è NULL ); 282 } } 283 __ex‹º_šlše  284 __NTH ( $©oi ( __cÚ¡ * __ÅŒ )) 286  (è `¡¹Þ ( __ÅŒ , (**è NULL , 10); 287 } } 288 __ex‹º_šlše  289 __NTH ( $©Þ ( __cÚ¡ * __ÅŒ )) 291  `¡¹Þ ( __ÅŒ , (**è NULL , 10); 292 } } 293 g__END_NAMESPACE_STD 295 #ià defšed __USE_MISC || defšed __USE_ISOC99 296 __BEGIN_NAMESPACE_C99 297 __ex‹nsiÚ__ __ex‹º_šlše  298 __NTH ( $©Þl ( __cÚ¡ * __ÅŒ )) 300  `¡¹Þl ( __ÅŒ , (**è NULL , 10); 301 } } 302 g__END_NAMESPACE_C99 307 #ià defšed __USE_SVID || defšed __USE_XOPEN_EXTENDED 311 * $l64a ( __n è __THROW __wur ; 314  $a64l ( __cÚ¡ * __s ) 315 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)è __wur ; 319 #ià defšed __USE_SVID || defšed __USE_XOPEN_EXTENDED || defšed __USE_BSD 320  ~ 327  $¿ndom (è __THROW ; 330  $¤ªdom ( __£ed è __THROW ; 336 * $š™¡©e ( __£ed , * __¡©ebuf , 337 size_t __¡©–’ è __THROW `__nÚnuÎ ((2)); 341 * $£t¡©e (* __¡©ebuf è __THROW `__nÚnuÎ ((1)); 344 #ifdeà __USE_MISC 349  s¿ndom_d©a 351 št32_t * åŒ ; 352 št32_t * ½Œ ; 353 št32_t * ¡©e ; 354  ¿nd_ty³ ; 355  ¿nd_deg ; 356  ¿nd_£p ; 357 št32_t * ’d_±r ; 360  $¿ndom_r ( ¿ndom_d©a * __»¡riù __buf , 361 št32_t * __»¡riù __»suÉ è __THROW `__nÚnuÎ ((1, 2)); 363  $¤ªdom_r ( __£ed ,  ¿ndom_d©a * __buf ) 364 __THROW `__nÚnuÎ ((2)); 366  $š™¡©e_r ( __£ed , * __»¡riù __¡©ebuf , 367 size_t __¡©–’ , 368  ¿ndom_d©a * __»¡riù __buf ) 369 __THROW `__nÚnuÎ ((2, 4)); 371  $£t¡©e_r (* __»¡riù __¡©ebuf , 372  ¿ndom_d©a * __»¡riù __buf ) 373 __THROW `__nÚnuÎ ((1, 2)); 378 __BEGIN_NAMESPACE_STD 380  $¿nd (è __THROW ; 382  $¤ªd ( __£ed è __THROW ; 383 __END_NAMESPACE_STD 385 #ifdeà __USE_POSIX 387  $¿nd_r (* __£ed è __THROW ; 391 #ià defšed __USE_SVID || defšed __USE_XOPEN 395  $d¿nd48 (è __THROW ; 396  $”ªd48 ( __xsubi [3]è __THROW `__nÚnuÎ ((1)); 399  $̪d48 (è __THROW ; 400  $Īd48 ( __xsubi [3]) 401 __THROW `__nÚnuÎ ((1)); 404  $m¿nd48 (è __THROW ; 405  $j¿nd48 ( __xsubi [3]) 406 __THROW `__nÚnuÎ ((1)); 409  $¤ªd48 ( __£edv® è __THROW ; 410 * $£ed48 ( __£ed16v [3]) 411 __THROW `__nÚnuÎ ((1)); 412  $lcÚg48 ( __·¿m [7]è __THROW `__nÚnuÎ ((1)); 414 #ifdeà __USE_MISC 418  sd¿nd48_d©a 420  __x [3]; 421  __Þd_x [3]; 422  __c ; 423  __š™ ; 424  __a ; 428  $d¿nd48_r ( d¿nd48_d©a * __»¡riù __bufãr , 429 * __»¡riù __»suÉ è __THROW `__nÚnuÎ ((1, 2)); 430  $”ªd48_r ( __xsubi [3], 431  d¿nd48_d©a * __»¡riù __bufãr , 432 * __»¡riù __»suÉ è __THROW `__nÚnuÎ ((1, 2)); 435  $̪d48_r ( d¿nd48_d©a * __»¡riù __bufãr , 436 * __»¡riù __»suÉ ) 437 __THROW `__nÚnuÎ ((1, 2)); 438  $Īd48_r ( __xsubi [3], 439  d¿nd48_d©a * __»¡riù __bufãr , 440 * __»¡riù __»suÉ ) 441 __THROW `__nÚnuÎ ((1, 2)); 444  $m¿nd48_r ( d¿nd48_d©a * __»¡riù __bufãr , 445 * __»¡riù __»suÉ ) 446 __THROW `__nÚnuÎ ((1, 2)); 447  $j¿nd48_r ( __xsubi [3], 448  d¿nd48_d©a * __»¡riù __bufãr , 449 * __»¡riù __»suÉ ) 450 __THROW `__nÚnuÎ ((1, 2)); 453  $¤ªd48_r ( __£edv® ,  d¿nd48_d©a * __bufãr ) 454 __THROW `__nÚnuÎ ((2)); 456  $£ed48_r ( __£ed16v [3], 457  d¿nd48_d©a * __bufãr è __THROW `__nÚnuÎ ((1, 2)); 459  $lcÚg48_r ( __·¿m [7], 460  d¿nd48_d©a * __bufãr ) 461 __THROW `__nÚnuÎ ((1, 2)); 467 #iâdeà __m®loc_ªd_ÿÎoc_defšed 468  #__m®loc_ªd_ÿÎoc_defšed ) 469 __BEGIN_NAMESPACE_STD 471 * $m®loc ( size_t __size è __THROW __©Œibu‹_m®loc__ __wur ; 473 * $ÿÎoc ( size_t __nmemb , size_ˆ __size ) 474 __THROW __©Œibu‹_m®loc__ __wur ; 475 __END_NAMESPACE_STD 478 #iâdeà __Ãed_m®loc_ªd_ÿÎoc 479 __BEGIN_NAMESPACE_STD 485 * $»®loc (* __±r , size_t __size ) 486 __THROW __©Œibu‹_w¬n_unu£d_»suÉ__ ; 488  $ä“ (* __±r è __THROW ; 489 __END_NAMESPACE_STD 491 #ifdef __USE_MISC 493  $cä“ (* __±r è __THROW ; 496 #ià defšed __USE_GNU || defšed __USE_BSD || defšed __USE_MISC 497  ~<®loÿ.h > 500 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 502 * $v®loc ( size_t __size è __THROW __©Œibu‹_m®loc__ __wur ; 505 #ifdeà __USE_XOPEN2K 507  $posix_mem®ign (** __mem±r , size_t __®ignm’t , size_ˆ __size ) 508 __THROW `__nÚnuÎ ((1)è __wur ; 511 __BEGIN_NAMESPACE_STD 513  $abÜt (è __THROW `__©Œibu‹__ (( __nÜ‘uº__ )); 517  `©ex™ ((* __func è()è __THROW `__nÚnuÎ ((1)); 518 __END_NAMESPACE_STD 520 #ifdef __USE_MISC 523  `Ú_ex™ ((* __func è( __¡©us , * __¬g ), *__arg) 524 __THROW `__nÚnuÎ ((1)); 527 __BEGIN_NAMESPACE_STD 531  $ex™ ( __¡©us è __THROW `__©Œibu‹__ (( __nÜ‘uº__ )); 532 __END_NAMESPACE_STD 534 #ifdeà __USE_ISOC99 535 __BEGIN_NAMESPACE_C99 538  $_Ex™ ( __¡©us è __THROW `__©Œibu‹__ (( __nÜ‘uº__ )); 539 __END_NAMESPACE_C99 543 __BEGIN_NAMESPACE_STD 545 * $g‘’v ( __cÚ¡ * __Çme è __THROW `__nÚnuÎ ((1)è __wur ; 546 __END_NAMESPACE_STD 550 * $__£cu»_g‘’v ( __cÚ¡ * __Çme ) 551 __THROW `__nÚnuÎ ((1)è __wur ; 553 #ià defšed __USE_SVID || defšed __USE_XOPEN 557  $pu‹nv (* __¡ršg è __THROW `__nÚnuÎ ((1)); 560 #ià defšed __USE_BSD || defšed __USE_XOPEN2K 563  $£‹nv ( __cÚ¡ * __Çme , __cÚ¡ * __v®ue ,  __»¶aû ) 564 __THROW `__nÚnuÎ ((2)); 567  $un£‹nv ( __cÚ¡ * __Çme è __THROW ; 570 #ifdef __USE_MISC 574  $þ—»nv (è __THROW ; 578 #ià defšed __USE_MISC || defšed __USE_XOPEN_EXTENDED 583 * $mk‹mp (* __‹m¶©e è __THROW `__nÚnuÎ ((1)è __wur ; 593 #iâdeà __USE_FILE_OFFSET64 594  $mk¡emp (* __‹m¶©e è `__nÚnuÎ ((1)è __wur ; 596 #ifdeà __REDIRECT 597  `__REDIRECT ( mk¡emp , (* __‹m¶©e ), mk¡emp64 ) 598 `__nÚnuÎ ((1)è __wur ; 600  #mk¡emp mk¡emp64 ) 603 #ifdeà __USE_LARGEFILE64 604  $mk¡emp64 (* __‹m¶©e è `__nÚnuÎ ((1)è __wur ; 608 #ifdeà __USE_BSD 614 * $mkd‹mp (* __‹m¶©e è __THROW `__nÚnuÎ ((1)è __wur ; 617 #ifdeà __USE_GNU 624 #iâdeà __USE_FILE_OFFSET64 625  $mko¡emp (* __‹m¶©e ,  __æags è `__nÚnuÎ ((1)è __wur ; 627 #ifdeà __REDIRECT 628  `__REDIRECT ( mko¡emp , (* __‹m¶©e ,  __æags ), mko¡emp64 ) 629 `__nÚnuÎ ((1)è __wur ; 631  #mko¡emp mko¡emp64 ) 634 #ifdeà __USE_LARGEFILE64 635  $mko¡emp64 (* __‹m¶©e ,  __æags è `__nÚnuÎ ((1)è __wur ; 640 __BEGIN_NAMESPACE_STD 645  $sy¡em ( __cÚ¡ * __commªd è __wur ; 646 __END_NAMESPACE_STD 649 #ifdef __USE_GNU 652 * $ÿnÚiÿlize_fže_Çme ( __cÚ¡ * __Çme ) 653 __THROW `__nÚnuÎ ((1)è __wur ; 656 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 662 * $»®·th ( __cÚ¡ * __»¡riù __Çme , 663 * __»¡riù __»sÞved è __THROW __wur ; 668 #iâdeà __COMPAR_FN_T 669  #__COMPAR_FN_T ) 670 (* t__com·r_â_t è( t__cÚ¡ *, __const *); 672 #ifdef __USE_GNU 673  __com·r_â_t tcom·risÚ_â_t ; 677 __BEGIN_NAMESPACE_STD 680 * $b£¬ch ( __cÚ¡ * __key , __cÚ¡ * __ba£ , 681 size_t __nmemb , size_ˆ __size , __com·r_â_t __com·r ) 682 `__nÚnuÎ ((1, 2, 5)è __wur ; 686  $qsÜt (* __ba£ , size_t __nmemb , size_ˆ __size , 687 __com·r_â_t __com·r è `__nÚnuÎ ((1, 4)); 691  $abs ( __x è __THROW `__©Œibu‹__ (( __cÚ¡__ )è __wur ; 692  $Ïbs ( __x è __THROW `__©Œibu‹__ (( __cÚ¡__ )è __wur ; 693 __END_NAMESPACE_STD 695 #ifdeà __USE_ISOC99 696 __ex‹nsiÚ__  $Îabs ( __x ) 697 __THROW `__©Œibu‹__ (( __cÚ¡__ )è __wur ; 701 __BEGIN_NAMESPACE_STD 705 div_t $div ( __num” ,  __d’om ) 706 __THROW `__©Œibu‹__ (( __cÚ¡__ )è __wur ; 707 ldiv_t $ldiv ( __num” ,  __d’om ) 708 __THROW `__©Œibu‹__ (( __cÚ¡__ )è __wur ; 709 __END_NAMESPACE_STD 711 #ifdeà __USE_ISOC99 712 __BEGIN_NAMESPACE_C99 713 __ex‹nsiÚ__ Îdiv_t $Îdiv ( __num” , 714  __d’om ) 715 __THROW `__©Œibu‹__ (( __cÚ¡__ )è __wur ; 716 __END_NAMESPACE_C99 720 #ià defšed __USE_SVID || defšed __USE_XOPEN_EXTENDED 727 * $ecvt ( __v®ue ,  __ndig™ , * __»¡riù __deýt , 728 * __»¡riù __sign è __THROW `__nÚnuÎ ((3, 4)è __wur ; 733 * $fcvt ( __v®ue ,  __ndig™ , * __»¡riù __deýt , 734 * __»¡riù __sign è __THROW `__nÚnuÎ ((3, 4)è __wur ; 739 * $gcvt ( __v®ue ,  __ndig™ , * __buf ) 740 __THROW `__nÚnuÎ ((3)è __wur ; 743 #ifdeà __USE_MISC 745 * $qecvt ( __v®ue ,  __ndig™ , 746 * __»¡riù __deýt , *__»¡riù __sign ) 747 __THROW `__nÚnuÎ ((3, 4)è __wur ; 748 * $qfcvt ( __v®ue ,  __ndig™ , 749 * __»¡riù __deýt , *__»¡riù __sign ) 750 __THROW `__nÚnuÎ ((3, 4)è __wur ; 751 * $qgcvt ( __v®ue ,  __ndig™ , * __buf ) 752 __THROW `__nÚnuÎ ((3)è __wur ; 757  $ecvt_r ( __v®ue ,  __ndig™ , * __»¡riù __deýt , 758 * __»¡riù __sign , *__»¡riù __buf , 759 size_t __Ën è __THROW `__nÚnuÎ ((3, 4, 5)); 760  $fcvt_r ( __v®ue ,  __ndig™ , * __»¡riù __deýt , 761 * __»¡riù __sign , *__»¡riù __buf , 762 size_t __Ën è __THROW `__nÚnuÎ ((3, 4, 5)); 764  $qecvt_r ( __v®ue ,  __ndig™ , 765 * __»¡riù __deýt , *__»¡riù __sign , 766 * __»¡riù __buf , size_t __Ën ) 767 __THROW `__nÚnuÎ ((3, 4, 5)); 768  $qfcvt_r ( __v®ue ,  __ndig™ , 769 * __»¡riù __deýt , *__»¡riù __sign , 770 * __»¡riù __buf , size_t __Ën ) 771 __THROW `__nÚnuÎ ((3, 4, 5)); 776 __BEGIN_NAMESPACE_STD 779  $mbËn ( __cÚ¡ * __s , size_t __n è __THROW __wur ; 782  $mbtowc ( wch¬_t * __»¡riù __pwc , 783 __cÚ¡ * __»¡riù __s , size_t __n è __THROW __wur ; 786  $wùomb (* __s , wch¬_t __wch¬ è __THROW __wur ; 790 size_t $mb¡owcs ( wch¬_t * __»¡riù __pwcs , 791 __cÚ¡ * __»¡riù __s , size_t __n è __THROW ; 793 size_t $wc¡ombs (* __»¡riù __s , 794 __cÚ¡ wch¬_t * __»¡riù __pwcs , size_t __n ) 795 __THROW ; 796 __END_NAMESPACE_STD 799 #ifdeà __USE_SVID 804  $½m©ch ( __cÚ¡ * __»¥Ú£ è __THROW `__nÚnuÎ ((1)è __wur ; 808 #ifdeà __USE_XOPEN_EXTENDED 815  $g‘subÝt (** __»¡riù __ÝtiÚp , 816 * __cÚ¡ * __»¡riù __tok’s , 817 ** __»¡riù __v®u• ) 818 __THROW `__nÚnuÎ ((1, 2, 3)è __wur ; 822 #ifdeà __USE_XOPEN 824  $£tkey ( __cÚ¡ * __key è __THROW `__nÚnuÎ ((1)); 830 #ifdeà __USE_XOPEN2K 832  $posix_Ý’± ( __oæag è __wur ; 835 #ifdeà __USE_XOPEN 840  $g¿Á± ( __fd è __THROW ; 844  $uÆock± ( __fd è __THROW ; 849 * $±¢ame ( __fd è __THROW __wur ; 852 #ifdeà __USE_GNU 856  $±¢ame_r ( __fd , * __buf , size_t __buæ’ ) 857 __THROW `__nÚnuÎ ((2)); 860  `g‘± (); 863 #ifdeà __USE_BSD 867  $g‘lßdavg ( __lßdavg [],  __ÃËm ) 868 __THROW `__nÚnuÎ ((1)); 873 #ià __USE_FORTIFY_LEVEL > 0 && defšed __ex‹º_®ways_šlše 874  ~ 876 #ifdeà __LDBL_COMPAT 877  ~ 881 #undeà __Ãed_m®loc_ªd_ÿÎoc 883 __END_DECLS @/usr/include/string.h 23 #iâdef _STRING_H 24  #_STRING_H 1 ) 26  ~<ã©u»s.h > 28 g__BEGIN_DECLS 31  #__Ãed_size_t ) 32  #__Ãed_NULL ) 33  ~<¡ddef.h > 36 __BEGIN_NAMESPACE_STD 38 * $memýy (* __»¡riù __de¡ , 39 __cÚ¡ * __»¡riù __¤c , size_t __n ) 40 __THROW `__nÚnuÎ ((1, 2)); 43 * $memmove (* __de¡ , __cÚ¡ * __¤c , size_t __n ) 44 __THROW `__nÚnuÎ ((1, 2)); 45 __END_NAMESPACE_STD 50 #ià defšed __USE_SVID || defšed __USE_BSD || defšed __USE_XOPEN 51 * $memcýy (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c , 52  __c , size_t __n ) 53 __THROW `__nÚnuÎ ((1, 2)); 57 __BEGIN_NAMESPACE_STD 59 * $mem£t (* __s ,  __c , size_t __n è __THROW `__nÚnuÎ ((1)); 62  $memcmp ( __cÚ¡ * __s1 , __cÚ¡ * __s2 , size_t __n ) 63 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 66 * $memchr ( __cÚ¡ * __s ,  __c , size_t __n ) 67 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)); 68 __END_NAMESPACE_STD 70 #ifdeà __USE_GNU 73 * $¿wmemchr ( __cÚ¡ * __s ,  __c ) 74 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)); 77 * $memrchr ( __cÚ¡ * __s ,  __c , size_t __n ) 78 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)); 82 __BEGIN_NAMESPACE_STD 84 * $¡rýy (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c ) 85 __THROW `__nÚnuÎ ((1, 2)); 87 * $¡ºýy (* __»¡riù __de¡ , 88 __cÚ¡ * __»¡riù __¤c , size_t __n ) 89 __THROW `__nÚnuÎ ((1, 2)); 92 * $¡rÿt (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c ) 93 __THROW `__nÚnuÎ ((1, 2)); 95 * $¡ºÿt (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c , 96 size_t __n è __THROW `__nÚnuÎ ((1, 2)); 99  $¡rcmp ( __cÚ¡ * __s1 , __cÚ¡ * __s2 ) 100 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 102  $¡ºcmp ( __cÚ¡ * __s1 , __cÚ¡ * __s2 , size_t __n ) 103 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 106  $¡rcÞl ( __cÚ¡ * __s1 , __cÚ¡ * __s2 ) 107 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 109 size_t $¡rxäm (* __»¡riù __de¡ , 110 __cÚ¡ * __»¡riù __¤c , size_t __n ) 111 __THROW `__nÚnuÎ ((2)); 112 __END_NAMESPACE_STD 114 #ifdeà __USE_GNU 118  ~ 121  $¡rcÞl_l ( __cÚ¡ * __s1 , __cÚ¡ * __s2 , __loÿË_t __l ) 122 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2, 3)); 124 size_t $¡rxäm_l (* __de¡ , __cÚ¡ * __¤c , size_t __n , 125 __loÿË_t __l è __THROW `__nÚnuÎ ((2, 4)); 128 #ià defšed __USE_SVID || defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 130 * $¡rdup ( __cÚ¡ * __s ) 131 __THROW __©Œibu‹_m®loc__ `__nÚnuÎ ((1)); 137 #ià defšed __USE_GNU 138 * $¡ºdup ( __cÚ¡ * __¡ršg , size_t __n ) 139 __THROW __©Œibu‹_m®loc__ `__nÚnuÎ ((1)); 142 #ià defšed __USE_GNU && defšed __GNUC__ 144  #¡rdu· ( s ) \ 145 ( __ex‹nsiÚ__ \ 147 __cÚ¡ * __Þd = ( s ); \ 148 size_t __Ën = `¡¾’ ( __Þd ) + 1; \ 149 * __Ãw = (*è `__bužtš_®loÿ ( __Ën ); \ 150 (*è `memýy ( __Ãw , __Þd , __Ën ); \ 151 } })) ) 154  #¡ºdu· ( s , n ) \ 155 ( __ex‹nsiÚ__ \ 157 __cÚ¡ * __Þd = ( s ); \ 158 size_t __Ën = `¡ºËn ( __Þd , ( n )); \ 159 * __Ãw = (*è `__bužtš_®loÿ ( __Ën + 1); \ 160 __Ãw [ __Ën ] = '\0'; \ 161 (*è `memýy ( __Ãw , __Þd , __Ën ); \ 162 })) ) 165 __BEGIN_NAMESPACE_STD 167 * $¡rchr ( __cÚ¡ * __s ,  __c ) 168 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)); 170 * $¡¼chr ( __cÚ¡ * __s ,  __c ) 171 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)); 172 __END_NAMESPACE_STD 174 #ifdeà __USE_GNU 177 * $¡rchºul ( __cÚ¡ * __s ,  __c ) 178 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)); 181 __BEGIN_NAMESPACE_STD 184 size_t $¡rc¥n ( __cÚ¡ * __s , __cÚ¡ * __»jeù ) 185 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 188 size_t $¡r¥n ( __cÚ¡ * __s , __cÚ¡ * __acû± ) 189 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 191 * $¡½brk ( __cÚ¡ * __s , __cÚ¡ * __acû± ) 192 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 194 * $¡r¡r ( __cÚ¡ * __hay¡ack , __cÚ¡ * __ÃedË ) 195 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 199 * $¡¹ok (* __»¡riù __s , __cÚ¡ *__»¡riù __d–im ) 200 __THROW `__nÚnuÎ ((2)); 201 __END_NAMESPACE_STD 205 * $__¡¹ok_r (* __»¡riù __s , 206 __cÚ¡ * __»¡riù __d–im , 207 ** __»¡riù __§ve_±r ) 208 __THROW `__nÚnuÎ ((2, 3)); 209 #ià defšed __USE_POSIX || defšed __USE_MISC 210 * $¡¹ok_r (* __»¡riù __s , __cÚ¡ *__»¡riù __d–im , 211 ** __»¡riù __§ve_±r ) 212 __THROW `__nÚnuÎ ((2, 3)); 215 #ifdeà __USE_GNU 217 * $¡rÿ£¡r ( __cÚ¡ * __hay¡ack , __cÚ¡ * __ÃedË ) 218 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 221 #ifdeà __USE_GNU 225 * $memmem ( __cÚ¡ * __hay¡ack , size_t __hay¡ackËn , 226 __cÚ¡ * __ÃedË , size_t __ÃedËËn ) 227 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 3)); 231 * $__mempýy (* __»¡riù __de¡ , 232 __cÚ¡ * __»¡riù __¤c , size_t __n ) 233 __THROW `__nÚnuÎ ((1, 2)); 234 * $mempýy (* __»¡riù __de¡ , 235 __cÚ¡ * __»¡riù __¤c , size_t __n ) 236 __THROW `__nÚnuÎ ((1, 2)); 240 __BEGIN_NAMESPACE_STD 242 size_t $¡¾’ ( __cÚ¡ * __s ) 243 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)); 244 __END_NAMESPACE_STD 246 #ifdef __USE_GNU 249 size_t $¡ºËn ( __cÚ¡ * __¡ršg , size_t __maxËn ) 250 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)); 254 __BEGIN_NAMESPACE_STD 256 * $¡»¼Ü ( __”ºum è __THROW ; 257 __END_NAMESPACE_STD 258 #ià defšed __USE_XOPEN2K || defšed __USE_MISC 266 #ià defšed __USE_XOPEN2K && !defšed __USE_GNU 269 #ifdeà __REDIRECT_NTH 270  `__REDIRECT_NTH ( ¡»¼Ü_r , 271 ( __”ºum , * __buf , size_t __buæ’ ), 272 __xpg_¡»¼Ü_r è `__nÚnuÎ ((2)); 274  $__xpg_¡»¼Ü_r ( __”ºum , * __buf , size_t __buæ’ ) 275 __THROW `__nÚnuÎ ((2)); 276  #¡»¼Ü_r __xpg_¡»¼Ü_r ) 281 * $¡»¼Ü_r ( __”ºum , * __buf , size_t __buæ’ ) 282 __THROW `__nÚnuÎ ((2)); 286 #ifdeà __USE_GNU 288 * $¡»¼Ü_l ( __”ºum , __loÿË_t __l è __THROW ; 294  $__bz”o (* __s , size_t __n è __THROW `__nÚnuÎ ((1)); 296 #ifdeà __USE_BSD 298  $bcÝy ( __cÚ¡ * __¤c , * __de¡ , size_t __n ) 299 __THROW `__nÚnuÎ ((1, 2)); 302  $bz”o (* __s , size_t __n è __THROW `__nÚnuÎ ((1)); 305  $bcmp ( __cÚ¡ * __s1 , __cÚ¡ * __s2 , size_t __n ) 306 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 309 * $šdex ( __cÚ¡ * __s ,  __c ) 310 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)); 313 * $ršdex ( __cÚ¡ * __s ,  __c ) 314 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1)); 318  $ffs ( __i è __THROW `__©Œibu‹__ (( __cÚ¡__ )); 322 #ifdef __USE_GNU 323  $ff¦ ( __l è __THROW `__©Œibu‹__ (( __cÚ¡__ )); 324 #ifdeà __GNUC__ 325 __ex‹nsiÚ__  $ff¦l ( __Î ) 326 __THROW `__©Œibu‹__ (( __cÚ¡__ )); 331  $¡rÿ£cmp ( __cÚ¡ * __s1 , __cÚ¡ * __s2 ) 332 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 335  $¡ºÿ£cmp ( __cÚ¡ * __s1 , __cÚ¡ * __s2 , size_t __n ) 336 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 339 #ifdef __USE_GNU 342  $¡rÿ£cmp_l ( __cÚ¡ * __s1 , __cÚ¡ * __s2 , 343 __loÿË_t __loc ) 344 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2, 3)); 346  $¡ºÿ£cmp_l ( __cÚ¡ * __s1 , __cÚ¡ * __s2 , 347 size_t __n , __loÿË_t __loc ) 348 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2, 4)); 351 #ifdef __USE_BSD 354 * $¡r£p (** __»¡riù __¡ršgp , 355 __cÚ¡ * __»¡riù __d–im ) 356 __THROW `__nÚnuÎ ((1, 2)); 359 #ifdef __USE_GNU 361  $¡rv”scmp ( __cÚ¡ * __s1 , __cÚ¡ * __s2 ) 362 __THROW __©Œibu‹_pu»__ `__nÚnuÎ ((1, 2)); 365 * $¡rsigÇl ( __sig è __THROW ; 368 * $__¡pýy (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c ) 369 __THROW `__nÚnuÎ ((1, 2)); 370 * $¡pýy (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c ) 371 __THROW `__nÚnuÎ ((1, 2)); 375 * $__¡²ýy (* __»¡riù __de¡ , 376 __cÚ¡ * __»¡riù __¤c , size_t __n ) 377 __THROW `__nÚnuÎ ((1, 2)); 378 * $¡²ýy (* __»¡riù __de¡ , 379 __cÚ¡ * __»¡riù __¤c , size_t __n ) 380 __THROW `__nÚnuÎ ((1, 2)); 383 * $¡räy (* __¡ršg è __THROW `__nÚnuÎ ((1)); 386 * $memäob (* __s , size_t __n è __THROW `__nÚnuÎ ((1)); 388 #iâdeà ba£Çme 393 * $ba£Çme ( __cÚ¡ * __fž’ame è __THROW `__nÚnuÎ ((1)); 398 #ià defšed __GNUC__ && __GNUC__ >= 2 399 #ià defšed __OPTIMIZE__ && !defšed __OPTIMIZE_SIZE__ \ 400 && ! defšed __NO_INLINE__ && !defšed __ýlu¥lus 420  ~ 423  ~ 426 #ià __USE_FORTIFY_LEVEL > 0 && defšed __ex‹º_®ways_šlše 428  ~ 432 __END_DECLS @/usr/include/strings.h 19 #iâdef _STRINGS_H 20  #_STRINGS_H 1 ) 25 #ià! defšed _STRING_H || !defšed __USE_BSD 27  ~<ã©u»s.h > 28  #__Ãed_size_t ) 29  ~<¡ddef.h > 31 __BEGIN_DECLS 34  $bcmp ( __cÚ¡ * __s1 , __cÚ¡ * __s2 , size_t __n ) 35 __THROW __©Œibu‹_pu»__ ; 38  $bcÝy ( __cÚ¡ * __¤c , * __de¡ , size_t __n è __THROW ; 41  $bz”o (* __s , size_t __n è __THROW ; 45  $ffs ( __i è __THROW `__©Œibu‹__ ((const)); 48 * $šdex ( __cÚ¡ * __s ,  __c è __THROW __©Œibu‹_pu»__ ; 51 * $ršdex ( __cÚ¡ * __s ,  __c è __THROW __©Œibu‹_pu»__ ; 54  $¡rÿ£cmp ( __cÚ¡ * __s1 , __cÚ¡ * __s2 ) 55 __THROW __©Œibu‹_pu»__ ; 58  $¡ºÿ£cmp ( __cÚ¡ * __s1 , __cÚ¡ * __s2 , size_t __n ) 59 __THROW __©Œibu‹_pu»__ ; 61 __END_DECLS @/usr/include/sys/epoll.h 19 #iâdef _SYS_EPOLL_H 20  #_SYS_EPOLL_H 1 ) 22  ~<¡dšt.h > 23  ~ 26  ~ 28 #iâdeà __sig£t_t_defšed 29  #__sig£t_t_defšed ) 30  __sig£t_t tsig£t_t ; 34 eEPOLL_EVENTS 36 mEPOLLIN = 0x001, 37  #EPOLLIN EPOLLIN ) 38 mEPOLLPRI = 0x002, 39  #EPOLLPRI EPOLLPRI ) 40 mEPOLLOUT = 0x004, 41  #EPOLLOUT EPOLLOUT ) 42 mEPOLLRDNORM = 0x040, 43  #EPOLLRDNORM EPOLLRDNORM ) 44 mEPOLLRDBAND = 0x080, 45  #EPOLLRDBAND EPOLLRDBAND ) 46 mEPOLLWRNORM = 0x100, 47  #EPOLLWRNORM EPOLLWRNORM ) 48 mEPOLLWRBAND = 0x200, 49  #EPOLLWRBAND EPOLLWRBAND ) 50 mEPOLLMSG = 0x400, 51  #EPOLLMSG EPOLLMSG ) 52 mEPOLLERR = 0x008, 53  #EPOLLERR EPOLLERR ) 54 mEPOLLHUP = 0x010, 55  #EPOLLHUP EPOLLHUP ) 56 mEPOLLRDHUP = 0x2000, 57  #EPOLLRDHUP EPOLLRDHUP ) 58 mEPOLLONESHOT = (1 << 30), 59  #EPOLLONESHOT EPOLLONESHOT ) 60 mEPOLLET = (1 << 31) 61  #EPOLLET EPOLLET ) 66  #EPOLL_CTL_ADD 1 ) 67  #EPOLL_CTL_DEL 2 ) 68  #EPOLL_CTL_MOD 3 ) 71  u•Þl_d©a 73 * m±r ; 74  mfd ; 75 ušt32_t mu32 ; 76 ušt64_t mu64 ; 77 } t•Þl_d©a_t ; 79  s•Þl_ev’t 81 ušt32_t mev’ts ; 82 •Þl_d©a_t md©a ; 83 } __©Œibu‹__ (( __·cked__ )); 86 __BEGIN_DECLS 92  $•Þl_ü—‹ ( __size è __THROW ; 101  $•Þl_ùl ( __•fd ,  __Ý ,  __fd , 102  •Þl_ev’t * __ev’t è __THROW ; 115  `•Þl_wa™ ( __•fd ,  •Þl_ev’t * __ev’ts , 116  __maxev’ts ,  __timeout ); 124  `•Þl_pwa™ ( __•fd ,  •Þl_ev’t * __ev’ts , 125  __maxev’ts ,  __timeout , 126 __cÚ¡ __sig£t_t * __ss ); 128 __END_DECLS @/usr/include/sys/ioctl.h 19 #iâdef _SYS_IOCTL_H 20  #_SYS_IOCTL_H 1 ) 22  ~<ã©u»s.h > 24 g__BEGIN_DECLS 27  ~ 30  ~ 37  ~ 42  $ioùl ( __fd ,  __»que¡ , ...è __THROW ; 44 __END_DECLS @/usr/include/sys/mman.h 20 #iâdef _SYS_MMAN_H 21  #_SYS_MMAN_H 1 ) 23  ~<ã©u»s.h > 24  ~ 25  #__Ãed_size_t ) 26  ~<¡ddef.h > 28 #iâdeà __off_t_defšed 29 #iâdeà __USE_FILE_OFFSET64 30  __off_t toff_t ; 32  __off64_t toff_t ; 34  #__off_t_defšed ) 37 #iâdeà __mode_t_defšed 38  __mode_t tmode_t ; 39  #__mode_t_defšed ) 42  ~ 45  #MAP_FAILED ((*è-1) ) 47 g__BEGIN_DECLS 57 #iâdeà __USE_FILE_OFFSET64 58 * $mm­ (* __addr , size_t __Ën ,  __´Ù , 59  __æags ,  __fd , __off_t __off£t è __THROW ; 61 #ifdeà __REDIRECT_NTH 62 * `__REDIRECT_NTH ( mm­ , 63 (* __addr , size_t __Ën ,  __´Ù , 64  __æags ,  __fd , __off64_t __off£t ), 65 mm­64 ); 67  #mm­ mm­64 ) 70 #ifdeà __USE_LARGEFILE64 71 * $mm­64 (* __addr , size_t __Ën ,  __´Ù , 72  __æags ,  __fd , __off64_t __off£t è __THROW ; 77  $munm­ (* __addr , size_t __Ën è __THROW ; 82  $m´Ùeù (* __addr , size_t __Ën ,  __´Ù è __THROW ; 90  `msync (* __addr , size_t __Ën ,  __æags ); 92 #ifdeà __USE_BSD 95  $madvi£ (* __addr , size_t __Ën ,  __adviû è __THROW ; 97 #ifdeà __USE_XOPEN2K 99  $posix_madvi£ (* __addr , size_t __Ën ,  __adviû è __THROW ; 104  $mlock ( __cÚ¡ * __addr , size_t __Ën è __THROW ; 107  $muÆock ( __cÚ¡ * __addr , size_t __Ën è __THROW ; 112  $mlock®l ( __æags è __THROW ; 116  $muÆock®l (è __THROW ; 118 #ifdeà __USE_MISC 124  $mšcÜe (* __¡¬t , size_t __Ën , * __vec ) 125 __THROW ; 128 #ifdeà __USE_GNU 134 * $m»m­ (* __addr , size_t __Þd_Ën , size_ˆ __Ãw_Ën , 135  __æags , ...è __THROW ; 139  $»m­_fže_·ges (* __¡¬t , size_t __size ,  __´Ù , 140 size_t __pgoff ,  __æags è __THROW ; 145  `shm_Ý’ ( __cÚ¡ * __Çme ,  __oæag , mode_t __mode ); 148  `shm_uÆšk ( __cÚ¡ * __Çme ); 150 __END_DECLS @/usr/include/sys/poll.h 20 #iâdef _SYS_POLL_H 21  #_SYS_POLL_H 1 ) 23  ~<ã©u»s.h > 26  ~ 27 #ifdeà __USE_GNU 29  ~ 31  #__Ãed_time¥ec ) 32  ~ 37  tnfds_t ; 40  spÞlfd 42  mfd ; 43  mev’ts ; 44  m»v’ts ; 48 __BEGIN_DECLS 58  pÞl ( pÞlfd * __fds , nfds_t __nfds ,  __timeout ); 60 #ifdeà __USE_GNU 67  µÞl ( pÞlfd * __fds , nfds_t __nfds , 68 __cÚ¡  time¥ec * __timeout , 69 __cÚ¡ __sig£t_t * __ss ); 72 g__END_DECLS @/usr/include/sys/prctl.h 19 #iâdeà _SYS_PRCTL_H 20  #_SYS_PRCTL_H 1 ) 22  ~<ã©u»s.h > 23  ~ 25 __BEGIN_DECLS 28  $´ùl ( __ÝtiÚ , ...è __THROW ; 30 __END_DECLS @/usr/include/sys/resource.h 19 #iâdef _SYS_RESOURCE_H 20  #_SYS_RESOURCE_H 1 ) 22  ~<ã©u»s.h > 25  ~ 27 #iâdeà __id_t_defšed 28  __id_t tid_t ; 29  #__id_t_defšed ) 32 g__BEGIN_DECLS 38 #ià defšed __USE_GNU && !defšed __ýlu¥lus 39  __¾im™_»sourû t__¾im™_»sourû_t ; 40  __ru§ge_who t__ru§ge_who_t ; 41  __´iÜ™y_which t__´iÜ™y_which_t ; 43  t__¾im™_»sourû_t ; 44  t__ru§ge_who_t ; 45  t__´iÜ™y_which_t ; 50 #iâdeà __USE_FILE_OFFSET64 51  $g‘¾im™ ( __¾im™_»sourû_t __»sourû , 52  ¾im™ * __¾im™s è __THROW ; 54 #ifdeà __REDIRECT_NTH 55  `__REDIRECT_NTH ( g‘¾im™ , ( __¾im™_»sourû_t __»sourû , 56  ¾im™ * __¾im™s ), g‘¾im™64 ); 58  #g‘¾im™ g‘¾im™64 ) 61 #ifdeà __USE_LARGEFILE64 62  $g‘¾im™64 ( __¾im™_»sourû_t __»sourû , 63  ¾im™64 * __¾im™s è __THROW ; 69 #iâdeà __USE_FILE_OFFSET64 70  $£Œlim™ ( __¾im™_»sourû_t __»sourû , 71 __cÚ¡  ¾im™ * __¾im™s è __THROW ; 73 #ifdeà __REDIRECT_NTH 74  `__REDIRECT_NTH ( £Œlim™ , ( __¾im™_»sourû_t __»sourû , 75 __cÚ¡  ¾im™ * __¾im™s ), 76 £Œlim™64 ); 78  #£Œlim™ £Œlim™64 ) 81 #ifdeà __USE_LARGEFILE64 82  $£Œlim™64 ( __¾im™_»sourû_t __»sourû , 83 __cÚ¡  ¾im™64 * __¾im™s è __THROW ; 88  $g‘ru§ge ( __ru§ge_who_t __who ,  ru§ge * __u§ge è __THROW ; 94  $g‘´iÜ™y ( __´iÜ™y_which_t __which , id_t __who è __THROW ; 98  $£riÜ™y ( __´iÜ™y_which_t __which , id_t __who ,  __´io ) 99 __THROW ; 101 __END_DECLS @/usr/include/sys/select.h 22 #iâdeà _SYS_SELECT_H 23  #_SYS_SELECT_H 1 ) 25  ~<ã©u»s.h > 28  ~ 31  ~ 34  ~ 36 #iâdeà __sig£t_t_defšed 37  #__sig£t_t_defšed ) 38  __sig£t_t tsig£t_t ; 42  #__Ãed_time_t ) 43  #__Ãed_time¥ec ) 44  ~ 45  #__Ãed_timev® ) 46  ~ 48 #iâdeà __su£cÚds_t_defšed 49  __su£cÚds_t tsu£cÚds_t ; 50  #__su£cÚds_t_defšed ) 55  t__fd_mask ; 58 #undeà __NFDBITS 59 #undeà __FDELT 60 #undeà __FDMASK 62  #__NFDBITS (8 *  ( __fd_mask )) ) 63  #__FDELT ( d è((dè/ __NFDBITS ) ) 64  #__FDMASK ( d è(( __fd_mask è1 << ((dè% __NFDBITS )) ) 71 #ifdeà __USE_XOPEN 72 __fd_mask mfds_b™s [ __FD_SETSIZE / __NFDBITS ]; 73  #__FDS_BITS ( £t è((£t)-> fds_b™s ) ) 75 __fd_mask m__fds_b™s [ __FD_SETSIZE / __NFDBITS ]; 76  #__FDS_BITS ( £t è((£t)-> __fds_b™s ) ) 78 } tfd_£t ; 81  #FD_SETSIZE __FD_SETSIZE ) 83 #ifdeà __USE_MISC 85  __fd_mask tfd_mask ; 88  #NFDBITS __NFDBITS ) 93  #FD_SET ( fd , fd£ è `__FD_SET (fd, fd£) ) 94  #FD_CLR ( fd , fd£ è `__FD_CLR (fd, fd£) ) 95  #FD_ISSET ( fd , fd£ è `__FD_ISSET (fd, fd£) ) 96  #FD_ZERO ( fd£ è `__FD_ZERO (fd£) ) 99 __BEGIN_DECLS 109  £Ëù ( __nfds , fd_£t * __»¡riù __»adfds , 110 fd_£t * __»¡riù __wr™efds , 111 fd_£t * __»¡riù __exû±fds , 112  timev® * __»¡riù __timeout ); 114 #ifdeà __USE_XOPEN2K 121  p£Ëù ( __nfds , fd_£t * __»¡riù __»adfds , 122 fd_£t * __»¡riù __wr™efds , 123 fd_£t * __»¡riù __exû±fds , 124 cÚ¡  time¥ec * __»¡riù __timeout , 125 cÚ¡ __sig£t_t * __»¡riù __sigmask ); 128 g__END_DECLS @/usr/include/sys/sendfile.h 20 #iâdeà _SYS_SENDFILE_H 21  #_SYS_SENDFILE_H 1 ) 23  ~<ã©u»s.h > 24  ~ 26 g__BEGIN_DECLS 33 #iâdeà __USE_FILE_OFFSET64 34 ssize_t $£ndfže ( __out_fd ,  __š_fd , off_t * __off£t , 35 size_t __couÁ è __THROW ; 37 #ifdeà __REDIRECT_NTH 38 ssize_t `__REDIRECT_NTH ( £ndfže , 39 ( __out_fd ,  __š_fd , __off64_t * __off£t , 40 size_t __couÁ ), £ndfže64 ); 42  #£ndfže £ndfže64 ) 45 #ifdeà __USE_LARGEFILE64 46 ssize_t $£ndfže64 ( __out_fd ,  __š_fd , __off64_t * __off£t , 47 size_t __couÁ è __THROW ; 50 __END_DECLS @/usr/include/sys/socket.h 21 #iâdef _SYS_SOCKET_H 22  #_SYS_SOCKET_H 1 ) 24  ~<ã©u»s.h > 26 g__BEGIN_DECLS 28  ~ 29  #__Ãed_size_t ) 30  ~<¡ddef.h > 36  ~ 38 #ifdeà __USE_BSD 41  sosockaddr 43  m§_çmžy ; 44  m§_d©a [14]; 52 mSHUT_RD = 0, 53  #SHUT_RD SHUT_RD ) 54 mSHUT_WR , 55  #SHUT_WR SHUT_WR ) 56 mSHUT_RDWR 57  #SHUT_RDWR SHUT_RDWR ) 66 #ià defšed __ýlu¥lus || ! __GNUC_PREREQ (2, 7è|| !defšed __USE_GNU 67  #__SOCKADDR_ARG  sockaddr * __»¡riù ) 68  #__CONST_SOCKADDR_ARG __cÚ¡  sockaddr * ) 72  #__SOCKADDR_ALLTYPES \ 73 `__SOCKADDR_ONETYPE ( sockaddr ) \ 74 `__SOCKADDR_ONETYPE ( sockaddr_© ) \ 75 `__SOCKADDR_ONETYPE ( sockaddr_ax25 ) \ 76 `__SOCKADDR_ONETYPE ( sockaddr_dl ) \ 77 `__SOCKADDR_ONETYPE ( sockaddr_eÚ ) \ 78 `__SOCKADDR_ONETYPE ( sockaddr_š ) \ 79 `__SOCKADDR_ONETYPE ( sockaddr_š6 ) \ 80 `__SOCKADDR_ONETYPE ( sockaddr_š¬p ) \ 81 `__SOCKADDR_ONETYPE ( sockaddr_x ) \ 82 `__SOCKADDR_ONETYPE ( sockaddr_iso ) \ 83 `__SOCKADDR_ONETYPE ( sockaddr_ns ) \ 84 `__SOCKADDR_ONETYPE ( sockaddr_un ) \ 85 `__SOCKADDR_ONETYPE ( sockaddr_x25 ) ) 87  #__SOCKADDR_ONETYPE ( ty³ èty³ * __»¡riù __ ##ty³##__; ) 88 uniÚ { m__SOCKADDR_ALLTYPES 89 } t__SOCKADDR_ARG t__©Œibu‹__ (( t__Œª¥¬’t_uniÚ__ )); 90 #undeà __SOCKADDR_ONETYPE 91  #__SOCKADDR_ONETYPE ( ty³ è __cÚ¡ ty³ * __»¡riù __ ##ty³##__; ) 92 uniÚ { m__SOCKADDR_ALLTYPES 93 } t__CONST_SOCKADDR_ARG t__©Œibu‹__ (( t__Œª¥¬’t_uniÚ__ )); 94 #undeà __SOCKADDR_ONETYPE 101  $sock‘ ( __domaš ,  __ty³ ,  __´ÙocÞ è __THROW ; 107  $sock‘·œ ( __domaš ,  __ty³ ,  __´ÙocÞ , 108  __fds [2]è __THROW ; 111  $bšd ( __fd , __CONST_SOCKADDR_ARG __addr , sockËn_t __Ën ) 112 __THROW ; 115  $g‘sockÇme ( __fd , __SOCKADDR_ARG __addr , 116 sockËn_t * __»¡riù __Ën è __THROW ; 125  `cÚÃù ( __fd , __CONST_SOCKADDR_ARG __addr , sockËn_t __Ën ); 129  $g‘³”Çme ( __fd , __SOCKADDR_ARG __addr , 130 sockËn_t * __»¡riù __Ën è __THROW ; 137 ssize_t `£nd ( __fd , __cÚ¡ * __buf , size_t __n ,  __æags ); 144 ssize_t `»cv ( __fd , * __buf , size_t __n ,  __æags ); 151 ssize_t `£ndto ( __fd , __cÚ¡ * __buf , size_t __n , 152  __æags , __CONST_SOCKADDR_ARG __addr , 153 sockËn_t __addr_Ën ); 162 ssize_t `»cväom ( __fd , * __»¡riù __buf , size_t __n , 163  __æags , __SOCKADDR_ARG __addr , 164 sockËn_t * __»¡riù __addr_Ën ); 172 ssize_t `£ndmsg ( __fd , __cÚ¡  msghdr * __mes§ge , 173  __æags ); 180 ssize_t `»cvmsg ( __fd ,  msghdr * __mes§ge ,  __æags ); 186  $g‘sockÝt ( __fd ,  __Ëv– ,  __ÝŠame , 187 * __»¡riù __Ýtv® , 188 sockËn_t * __»¡riù __ÝŽ’ è __THROW ; 193  $£tsockÝt ( __fd ,  __Ëv– ,  __ÝŠame , 194 __cÚ¡ * __Ýtv® , sockËn_t __ÝŽ’ è __THROW ; 200  $li¡’ ( __fd ,  __n è __THROW ; 210  `acû± ( __fd , __SOCKADDR_ARG __addr , 211 sockËn_t * __»¡riù __addr_Ën ); 219  $shutdown ( __fd ,  __how è __THROW ; 222 #ifdeà __USE_XOPEN2K 224  $sock©m¬k ( __fd è __THROW ; 228 #ifdeà __USE_MISC 232  $isfdty³ ( __fd ,  __fdty³ è __THROW ; 237 #ià __USE_FORTIFY_LEVEL > 0 && defšed __ex‹º_®ways_šlše 238  ~ 241 __END_DECLS @/usr/include/sys/stat.h 24 #iâdef _SYS_STAT_H 25  #_SYS_STAT_H 1 ) 27  ~<ã©u»s.h > 29  ~ 31 #ià defšed __USE_XOPEN || defšed __USE_XOPEN2K || defšed __USE_MISC \ 32 || defšed g__USE_ATFILE 33 #ià defšed __USE_XOPEN || defšed __USE_XOPEN2K 34  #__Ãed_time_t ) 36 #ià defšed __USE_MISC || defšed __USE_ATFILE 37  #__Ãed_time¥ec ) 39  ~ 42 #ià defšed __USE_XOPEN || defšed __USE_XOPEN2K 45 #iâdeà __dev_t_defšed 46  __dev_t tdev_t ; 47  #__dev_t_defšed ) 50 #iâdeà __gid_t_defšed 51  __gid_t tgid_t ; 52  #__gid_t_defšed ) 55 #iâdeà __šo_t_defšed 56 #iâdeà __USE_FILE_OFFSET64 57  __šo_t tšo_t ; 59  __šo64_t tšo_t ; 61  #__šo_t_defšed ) 64 #iâdeà __mode_t_defšed 65  __mode_t tmode_t ; 66  #__mode_t_defšed ) 69 #iâdeà __Æšk_t_defšed 70  __Æšk_t tÆšk_t ; 71  #__Æšk_t_defšed ) 74 #iâdeà __off_t_defšed 75 #iâdeà __USE_FILE_OFFSET64 76  __off_t toff_t ; 78  __off64_t toff_t ; 80  #__off_t_defšed ) 83 #iâdeà __uid_t_defšed 84  __uid_t tuid_t ; 85  #__uid_t_defšed ) 89 #ifdeà __USE_UNIX98 90 #iâdeà __blkút_t_defšed 91 #iâdeà __USE_FILE_OFFSET64 92  __blkút_t tblkút_t ; 94  __blkút64_t tblkút_t ; 96  #__blkút_t_defšed ) 99 #iâdeà __blksize_t_defšed 100  __blksize_t tblksize_t ; 101  #__blksize_t_defšed ) 105 g__BEGIN_DECLS 107  ~ 109 #ià defšed __USE_BSD || defšed __USE_MISC || defšed __USE_XOPEN 110  #S_IFMT __S_IFMT ) 111  #S_IFDIR __S_IFDIR ) 112  #S_IFCHR __S_IFCHR ) 113  #S_IFBLK __S_IFBLK ) 114  #S_IFREG __S_IFREG ) 115 #ifdeà __S_IFIFO 116  #S_IFIFO __S_IFIFO ) 118 #ifdeà __S_IFLNK 119  #S_IFLNK __S_IFLNK ) 121 #ià( defšed __USE_BSD || defšed __USE_MISC || defšed __USE_UNIX98 ) \ 122 && defšed g__S_IFSOCK 123  #S_IFSOCK __S_IFSOCK ) 129  #__S_ISTYPE ( mode , mask è(((modeè& __S_IFMT è=ð(mask)) ) 131  #S_ISDIR ( mode è `__S_ISTYPE ((mode), __S_IFDIR ) ) 132  #S_ISCHR ( mode è `__S_ISTYPE ((mode), __S_IFCHR ) ) 133  #S_ISBLK ( mode è `__S_ISTYPE ((mode), __S_IFBLK ) ) 134  #S_ISREG ( mode è `__S_ISTYPE ((mode), __S_IFREG ) ) 135 #ifdeà __S_IFIFO 136  #S_ISFIFO ( mode è `__S_ISTYPE ((mode), __S_IFIFO ) ) 138 #ifdeà __S_IFLNK 139  #S_ISLNK ( mode è `__S_ISTYPE ((mode), __S_IFLNK ) ) 142 #ià defšed __USE_BSD && !defšed __S_IFLNK 143  #S_ISLNK ( mode è0 ) 146 #ià( defšed __USE_BSD || defšed __USE_UNIX98 ) \ 147 && defšed g__S_IFSOCK 148  #S_ISSOCK ( mode è `__S_ISTYPE ((mode), __S_IFSOCK ) ) 155 #ifdef __USE_POSIX199309 156  #S_TYPEISMQ ( buf è `__S_TYPEISMQ (buf) ) 157  #S_TYPEISSEM ( buf è `__S_TYPEISSEM (buf) ) 158  #S_TYPEISSHM ( buf è `__S_TYPEISSHM (buf) ) 164  #S_ISUID __S_ISUID ) 165  #S_ISGID __S_ISGID ) 167 #ià defšed __USE_BSD || defšed __USE_MISC || defšed __USE_XOPEN 169  #S_ISVTX __S_ISVTX ) 172  #S_IRUSR __S_IREAD ) 173  #S_IWUSR __S_IWRITE ) 174  #S_IXUSR __S_IEXEC ) 176  #S_IRWXU ( __S_IREAD | __S_IWRITE | __S_IEXEC ) ) 178 #ià defšed __USE_MISC && defšed __USE_BSD 179  #S_IREAD S_IRUSR ) 180  #S_IWRITE S_IWUSR ) 181  #S_IEXEC S_IXUSR ) 184  #S_IRGRP ( S_IRUSR >> 3è ) 185  #S_IWGRP ( S_IWUSR >> 3è ) 186  #S_IXGRP ( S_IXUSR >> 3è ) 188  #S_IRWXG ( S_IRWXU >> 3) ) 190  #S_IROTH ( S_IRGRP >> 3è ) 191  #S_IWOTH ( S_IWGRP >> 3è ) 192  #S_IXOTH ( S_IXGRP >> 3è ) 194  #S_IRWXO ( S_IRWXG >> 3) ) 197 #ifdef __USE_BSD 199  #ACCESSPERMS ( S_IRWXU | S_IRWXG | S_IRWXO è ) 200  #ALLPERMS ( S_ISUID | S_ISGID | S_ISVTX | S_IRWXU | S_IRWXG | S_IRWXO ) ) 201  #DEFFILEMODE ( S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH ) ) 203  #S_BLKSIZE 512 ) 207 #iâdeà __USE_FILE_OFFSET64 209  $¡© ( __cÚ¡ * __»¡riù __fže , 210  ¡© * __»¡riù __buf è __THROW `__nÚnuÎ ((1, 2)); 214  $f¡© ( __fd ,  ¡© * __buf è __THROW `__nÚnuÎ ((2)); 216 #ifdeà __REDIRECT_NTH 217  `__REDIRECT_NTH ( ¡© , ( __cÚ¡ * __»¡riù __fže , 218  ¡© * __»¡riù __buf ), ¡©64 ) 219 `__nÚnuÎ ((1, 2)); 220  `__REDIRECT_NTH ( f¡© , ( __fd ,  ¡© * __buf ), f¡©64 ) 221 `__nÚnuÎ ((2)); 223  #¡© ¡©64 ) 224  #f¡© f¡©64 ) 227 #ifdeà __USE_LARGEFILE64 228  $¡©64 ( __cÚ¡ * __»¡riù __fže , 229  ¡©64 * __»¡riù __buf è __THROW `__nÚnuÎ ((1, 2)); 230  $f¡©64 ( __fd ,  ¡©64 * __buf è __THROW `__nÚnuÎ ((2)); 233 #ifdeà __USE_ATFILE 237 #iâdeà __USE_FILE_OFFSET64 238  $f¡©© ( __fd , __cÚ¡ * __»¡riù __fže , 239  ¡© * __»¡riù __buf ,  __æag ) 240 __THROW `__nÚnuÎ ((2, 3)); 242 #ifdeà __REDIRECT_NTH 243  `__REDIRECT_NTH ( f¡©© , ( __fd , __cÚ¡ * __»¡riù __fže , 244  ¡© * __»¡riù __buf , 245  __æag ), 246 f¡©©64 è `__nÚnuÎ ((2, 3)); 248  #f¡©© f¡©©64 ) 252  $f¡©©64 ( __fd , __cÚ¡ * __»¡riù __fže , 253  ¡©64 * __»¡riù __buf ,  __æag ) 254 __THROW `__nÚnuÎ ((2, 3)); 257 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 258 #iâdeà __USE_FILE_OFFSET64 261  $l¡© ( __cÚ¡ * __»¡riù __fže , 262  ¡© * __»¡riù __buf è __THROW `__nÚnuÎ ((1, 2)); 264 #ifdeà __REDIRECT_NTH 265  `__REDIRECT_NTH ( l¡© , 266 ( __cÚ¡ * __»¡riù __fže , 267  ¡© * __»¡riù __buf ), l¡©64 ) 268 `__nÚnuÎ ((1, 2)); 270  #l¡© l¡©64 ) 273 #ifdeà __USE_LARGEFILE64 274  $l¡©64 ( __cÚ¡ * __»¡riù __fže , 275  ¡©64 * __»¡riù __buf ) 276 __THROW `__nÚnuÎ ((1, 2)); 282  $chmod ( __cÚ¡ * __fže , __mode_t __mode ) 283 __THROW `__nÚnuÎ ((1)); 285 #ifdeà __USE_BSD 289  $lchmod ( __cÚ¡ * __fže , __mode_t __mode ) 290 __THROW `__nÚnuÎ ((1)); 294 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 295  $fchmod ( __fd , __mode_t __mode è __THROW ; 298 #ifdeà __USE_ATFILE 301  $fchmod© ( __fd , __cÚ¡ * __fže , __mode_t mode ,  __æag ) 302 __THROW `__nÚnuÎ ((2)è __wur ; 309 __mode_t $umask ( __mode_t __mask è __THROW ; 311 #ifdef __USE_GNU 314 __mode_t $g‘umask (è __THROW ; 318  $mkdœ ( __cÚ¡ * __·th , __mode_t __mode ) 319 __THROW `__nÚnuÎ ((1)); 321 #ifdeà __USE_ATFILE 325  $mkdœ© ( __fd , __cÚ¡ * __·th , __mode_t __mode ) 326 __THROW `__nÚnuÎ ((2)); 332 #ià defšed __USE_MISC || defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 333  $mknod ( __cÚ¡ * __·th , __mode_t __mode , __dev_t __dev ) 334 __THROW `__nÚnuÎ ((1)); 337 #ifdeà __USE_ATFILE 341  $mknod© ( __fd , __cÚ¡ * __·th , __mode_t __mode , 342 __dev_t __dev è __THROW `__nÚnuÎ ((2)); 347  $mkfifo ( __cÚ¡ * __·th , __mode_t __mode ) 348 __THROW `__nÚnuÎ ((1)); 350 #ifdeà __USE_ATFILE 354  $mkfifßt ( __fd , __cÚ¡ * __·th , __mode_t __mode ) 355 __THROW `__nÚnuÎ ((2)); 358 #ifdeà __USE_ATFILE 361  $utim’§t ( __fd , __cÚ¡ * __·th , 362 __cÚ¡  time¥ec __times [2], 363  __æags ) 364 __THROW `__nÚnuÎ ((2)); 367 #ifdeà __USE_GNU 370  $futim’s ( __fd , __cÚ¡  time¥ec __times [2]è __THROW ; 388 #iâdeà _STAT_VER 389  #_STAT_VER 0 ) 391 #iâdeà _MKNOD_VER 392  #_MKNOD_VER 0 ) 396 #iâdeà __USE_FILE_OFFSET64 397  $__fx¡© ( __v” ,  __fždes ,  ¡© * __¡©_buf ) 398 __THROW `__nÚnuÎ ((3)); 399  $__x¡© ( __v” , __cÚ¡ * __fž’ame , 400  ¡© * __¡©_buf è __THROW `__nÚnuÎ ((2, 3)); 401  $__lx¡© ( __v” , __cÚ¡ * __fž’ame , 402  ¡© * __¡©_buf è __THROW `__nÚnuÎ ((2, 3)); 403  $__fx¡©© ( __v” ,  __fždes , __cÚ¡ * __fž’ame , 404  ¡© * __¡©_buf ,  __æag ) 405 __THROW `__nÚnuÎ ((3, 4)); 407 #ifdeà __REDIRECT_NTH 408  `__REDIRECT_NTH ( __fx¡© , ( __v” ,  __fždes , 409  ¡© * __¡©_buf ), __fx¡©64 ) 410 `__nÚnuÎ ((3)); 411  `__REDIRECT_NTH ( __x¡© , ( __v” , __cÚ¡ * __fž’ame , 412  ¡© * __¡©_buf ), __x¡©64 ) 413 `__nÚnuÎ ((2, 3)); 414  `__REDIRECT_NTH ( __lx¡© , ( __v” , __cÚ¡ * __fž’ame , 415  ¡© * __¡©_buf ), __lx¡©64 ) 416 `__nÚnuÎ ((2, 3)); 417  `__REDIRECT_NTH ( __fx¡©© , ( __v” ,  __fždes , 418 __cÚ¡ * __fž’ame , 419  ¡© * __¡©_buf ,  __æag ), 420 __fx¡©©64 è `__nÚnuÎ ((3, 4)); 423  #__fx¡© __fx¡©64 ) 424  #__x¡© __x¡©64 ) 425  #__lx¡© __lx¡©64 ) 429 #ifdeà __USE_LARGEFILE64 430  $__fx¡©64 ( __v” ,  __fždes ,  ¡©64 * __¡©_buf ) 431 __THROW `__nÚnuÎ ((3)); 432  $__x¡©64 ( __v” , __cÚ¡ * __fž’ame , 433  ¡©64 * __¡©_buf è __THROW `__nÚnuÎ ((2, 3)); 434  $__lx¡©64 ( __v” , __cÚ¡ * __fž’ame , 435  ¡©64 * __¡©_buf è __THROW `__nÚnuÎ ((2, 3)); 436  $__fx¡©©64 ( __v” ,  __fždes , __cÚ¡ * __fž’ame , 437  ¡©64 * __¡©_buf ,  __æag ) 438 __THROW `__nÚnuÎ ((3, 4)); 440  $__xmknod ( __v” , __cÚ¡ * __·th , __mode_t __mode , 441 __dev_t * __dev è __THROW `__nÚnuÎ ((2, 4)); 443  $__xmknod© ( __v” ,  __fd , __cÚ¡ * __·th , 444 __mode_t __mode , __dev_t * __dev ) 445 __THROW `__nÚnuÎ ((3, 5)); 447 #ià defšed __GNUC__ && __GNUC__ >ð2 && defšed __USE_EXTERN_INLINES 450 __ex‹º_šlše  451 `__NTH ( $¡© ( __cÚ¡ * __·th ,  ¡© * __¡©buf )) 453  `__x¡© ( _STAT_VER , __·th , __¡©buf ); 454 } } 456 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 457 __ex‹º_šlše  458 __NTH ( $l¡© ( __cÚ¡ * __·th ,  ¡© * __¡©buf )) 460  `__lx¡© ( _STAT_VER , __·th , __¡©buf ); 461 } } 464 __ex‹º_šlše  465 __NTH ( $f¡© ( __fd ,  ¡© * __¡©buf )) 467  `__fx¡© ( _STAT_VER , __fd , __¡©buf ); 468 } } 470 #ifdeà __USE_ATFILE 471 __ex‹º_šlše  472 __NTH ( $f¡©© ( __fd , __cÚ¡ * __fž’ame ,  ¡© * __¡©buf , 473  __æag )) 475  `__fx¡©© ( _STAT_VER , __fd , __fž’ame , __¡©buf , __æag ); 476 } } 479 #ià defšed __USE_MISC || defšed __USE_BSD 480 __ex‹º_šlše  481 __NTH ( $mknod ( __cÚ¡ * __·th , __mode_t __mode , __dev_t __dev )) 483  `__xmknod ( _MKNOD_VER , __·th , __mode , & __dev ); 484 } } 487 #ifdeà __USE_ATFILE 488 __ex‹º_šlše  489 __NTH ( $mknod© ( __fd , __cÚ¡ * __·th , __mode_t __mode , 490 __dev_t __dev )) 492  `__xmknod© ( _MKNOD_VER , __fd , __·th , __mode , & __dev ); 493 } } 496 #ià defšed __USE_LARGEFILE64 \ 497 && (! defšed g__USE_FILE_OFFSET64 \ 498 || ( defšed g__REDIRECT_NTH && defšed g__OPTIMIZE__ )) 499 __ex‹º_šlše  500 __NTH ( $¡©64 ( __cÚ¡ * __·th ,  ¡©64 * __¡©buf )) 502  `__x¡©64 ( _STAT_VER , __·th , __¡©buf ); 503 } } 505 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 506 __ex‹º_šlše  507 __NTH ( $l¡©64 ( __cÚ¡ * __·th ,  ¡©64 * __¡©buf )) 509  `__lx¡©64 ( _STAT_VER , __·th , __¡©buf ); 510 } } 513 __ex‹º_šlše  514 __NTH ( $f¡©64 ( __fd ,  ¡©64 * __¡©buf )) 516  `__fx¡©64 ( _STAT_VER , __fd , __¡©buf ); 517 } } 519 #ifdeà __USE_GNU 520 __ex‹º_šlše  521 __NTH ( $f¡©©64 ( __fd , __cÚ¡ * __fž’ame ,  ¡©64 * __¡©buf , 522  __æag )) 524  `__fx¡©©64 ( _STAT_VER , __fd , __fž’ame , __¡©buf , __æag ); 525 } } 532 g__END_DECLS @/usr/include/sys/time.h 20 #iâdeà _SYS_TIME_H 21  #_SYS_TIME_H 1 ) 23  ~<ã©u»s.h > 25  ~ 26  #__Ãed_time_t ) 27  ~ 28  #__Ãed_timev® ) 29  ~ 31  ~ 33 #iâdeà __su£cÚds_t_defšed 34  __su£cÚds_t tsu£cÚds_t ; 35  #__su£cÚds_t_defšed ) 39 g__BEGIN_DECLS 41 #ifdeà __USE_GNU 43  #TIMEVAL_TO_TIMESPEC ( tv , ts ) { \ 44 ( ts )-> tv_£c = ( tv )->tv_sec; \ 45 ( ts )-> tv_n£c = ( tv )-> tv_u£c * 1000; \ 46 } ) 47  #TIMESPEC_TO_TIMEVAL ( tv , ts ) { \ 48 ( tv )-> tv_£c = ( ts )->tv_sec; \ 49 ( tv )-> tv_u£c = ( ts )-> tv_n£c / 1000; \ 50 } ) 54 #ifdeà __USE_BSD 57  stimezÚe 59  mtz_mšu‹swe¡ ; 60  mtz_d¡time ; 63  timezÚe * t__»¡riù t__timezÚe_±r_t ; 65 * t__»¡riù t__timezÚe_±r_t ; 73  $g‘timeofday ( timev® * __»¡riù __tv , 74 __timezÚe_±r_t __tz è __THROW `__nÚnuÎ ((1)); 76 #ifdeà __USE_BSD 79  $£‰imeofday ( __cÚ¡  timev® * __tv , 80 __cÚ¡  timezÚe * __tz ) 81 __THROW `__nÚnuÎ ((1)); 87  $adjtime ( __cÚ¡  timev® * __d– , 88  timev® * __Þdd– è __THROW ; 93 e__™im”_which 96 ITIMER_REAL = 0, 97  #ITIMER_REAL ITIMER_REAL ) 99 ITIMER_VIRTUAL = 1, 100  #ITIMER_VIRTUAL ITIMER_VIRTUAL ) 103 ITIMER_PROF = 2 104  #ITIMER_PROF ITIMER_PROF ) 109  s™im”v® 112  timev® ™_š‹rv® ; 114  timev® ™_v®ue ; 117 #ià defšed __USE_GNU && !defšed __ýlu¥lus 120  __™im”_which t__™im”_which_t ; 122  t__™im”_which_t ; 127  $g‘™im” ( __™im”_which_t __which , 128  ™im”v® * __v®ue è __THROW ; 133  $£t™im” ( __™im”_which_t __which , 134 __cÚ¡  ™im”v® * __»¡riù __Ãw , 135  ™im”v® * __»¡riù __Þd è __THROW ; 140  $utimes ( __cÚ¡ * __fže , __cÚ¡  timev® __tvp [2]) 141 __THROW `__nÚnuÎ ((1)); 143 #ifdeà __USE_BSD 145  $lutimes ( __cÚ¡ * __fže , __cÚ¡  timev® __tvp [2]) 146 __THROW `__nÚnuÎ ((1)); 149  $futimes ( __fd , __cÚ¡  timev® __tvp [2]è __THROW ; 152 #ifdeà __USE_ATFILE 156  $futime§t ( __fd , __cÚ¡ * __fže , 157 __cÚ¡  timev® __tvp [2]è __THROW ; 161 #ifdeà __USE_BSD 164  #tim”is£t ( tvp è(Ñvp)-> tv_£c || (tvp)-> tv_u£c ) ) 165  #tim”þ—r ( tvp è(Ñvp)-> tv_£c = (tvp)-> tv_u£c = 0) ) 166  #tim”cmp ( a , b , CMP ) \ 167 ((( a )-> tv_£c =ð( b )->tv_sec) ? \ 168 (( a )-> tv_u£c `CMP ( b )->tv_usec) : \ 169 (( a )-> tv_£c `CMP ( b )->tv_£c)) ) 170  #tim”add ( a , b , »suÉ ) \ 172 ( »suÉ )-> tv_£c = ( a )->tv_£ø+ ( b )->tv_sec; \ 173 ( »suÉ )-> tv_u£c = ( a )->tv_u£ø+ ( b )->tv_usec; \ 174 ià(( »suÉ )-> tv_u£c >= 1000000) \ 176 ++( »suÉ )-> tv_£c ; \ 177 ( »suÉ )-> tv_u£c -= 1000000; \ 179 } } 0) ) 180  #tim”sub ( a , b , »suÉ ) \ 182 ( »suÉ )-> tv_£c = ( a )->tv_£ø- ( b )->tv_sec; \ 183 ( »suÉ )-> tv_u£c = ( a )->tv_u£ø- ( b )->tv_usec; \ 184 ià(( »suÉ )-> tv_u£c < 0) { \ 185 --( »suÉ )-> tv_£c ; \ 186 ( »suÉ )-> tv_u£c += 1000000; \ 188 } 0) ) 191 g__END_DECLS @/usr/include/sys/types.h 24 #iâdef _SYS_TYPES_H 25  #_SYS_TYPES_H 1 ) 27  ~<ã©u»s.h > 29 g__BEGIN_DECLS 31  ~ 33 #ifdef __USE_BSD 34 #iâdeà __u_ch¬_defšed 35  __u_ch¬ tu_ch¬ ; 36  __u_shÜt tu_shÜt ; 37  __u_št tu_št ; 38  __u_lÚg tu_lÚg ; 39  __quad_t tquad_t ; 40  __u_quad_t tu_quad_t ; 41  __fsid_t tfsid_t ; 42  #__u_ch¬_defšed ) 46  __loff_t tloff_t ; 48 #iâdeà __šo_t_defšed 49 #iâdeà __USE_FILE_OFFSET64 50  __šo_t tšo_t ; 52  __šo64_t tšo_t ; 54  #__šo_t_defšed ) 56 #ià defšed __USE_LARGEFILE64 && !defšed __šo64_t_defšed 57  __šo64_t tšo64_t ; 58  #__šo64_t_defšed ) 61 #iâdeà __dev_t_defšed 62  __dev_t tdev_t ; 63  #__dev_t_defšed ) 66 #iâdeà __gid_t_defšed 67  __gid_t tgid_t ; 68  #__gid_t_defšed ) 71 #iâdeà __mode_t_defšed 72  __mode_t tmode_t ; 73  #__mode_t_defšed ) 76 #iâdeà __Æšk_t_defšed 77  __Æšk_t tÆšk_t ; 78  #__Æšk_t_defšed ) 81 #iâdeà __uid_t_defšed 82  __uid_t tuid_t ; 83  #__uid_t_defšed ) 86 #iâdeà __off_t_defšed 87 #iâdeà __USE_FILE_OFFSET64 88  __off_t toff_t ; 90  __off64_t toff_t ; 92  #__off_t_defšed ) 94 #ià defšed __USE_LARGEFILE64 && !defšed __off64_t_defšed 95  __off64_t toff64_t ; 96  #__off64_t_defšed ) 99 #iâdeà __pid_t_defšed 100  __pid_t tpid_t ; 101  #__pid_t_defšed ) 104 #ià( defšed __USE_SVID || defšed __USE_XOPEN è&& !defšed __id_t_defšed 105  __id_t tid_t ; 106  #__id_t_defšed ) 109 #iâdeà __ssize_t_defšed 110  __ssize_t tssize_t ; 111  #__ssize_t_defšed ) 114 #ifdef __USE_BSD 115 #iâdeà __daddr_t_defšed 116  __daddr_t tdaddr_t ; 117  __ÿddr_t tÿddr_t ; 118  #__daddr_t_defšed ) 122 #ià( defšed __USE_SVID || defšed __USE_XOPEN è&& !defšed __key_t_defšed 123  __key_t tkey_t ; 124  #__key_t_defšed ) 127 #ifdeà __USE_XOPEN 128  #__Ãed_þock_t ) 130  #__Ãed_time_t ) 131  #__Ãed_tim”_t ) 132  #__Ãed_þockid_t ) 133  ~ 135 #ifdeà __USE_XOPEN 136 #iâdeà __u£cÚds_t_defšed 137  __u£cÚds_t tu£cÚds_t ; 138  #__u£cÚds_t_defšed ) 140 #iâdeà __su£cÚds_t_defšed 141  __su£cÚds_t tsu£cÚds_t ; 142  #__su£cÚds_t_defšed ) 146  #__Ãed_size_t ) 147  ~<¡ddef.h > 149 #ifdeà __USE_MISC 151  tulÚg ; 152  tushÜt ; 153  tušt ; 158 #ià! __GNUC_PREREQ (2, 7) 161 #iâdeà __št8_t_defšed 162  #__št8_t_defšed ) 163  tšt8_t ; 164  tšt16_t ; 165  tšt32_t ; 166 #ià __WORDSIZE == 64 167  tšt64_t ; 168 #–ià __GLIBC_HAVE_LONG_LONG 169 __ex‹nsiÚ__  tšt64_t ; 174  tu_št8_t ; 175  tu_št16_t ; 176  tu_št32_t ; 177 #ià __WORDSIZE == 64 178  tu_št64_t ; 179 #–ià __GLIBC_HAVE_LONG_LONG 180 __ex‹nsiÚ__  tu_št64_t ; 183  t»gi¡”_t ; 188  #__štN_t ( N , MODE ) \ 189 ## tN ## t_t t__©Œibu‹__ (( t__mode__ ( tMODE ))) ) 190  t__u_štN_t ( tN , tMODE ) \ 191  tu_št ## tN ## t_t t__©Œibu‹__ (( t__mode__ ( tMODE ))) ) 193 #iâdeà t__št8_t_defšed 194  t__št8_t_defšed ) 195 t__štN_t (8, t__QI__ ); 196 __štN_t (16, __HI__ ); 197 __štN_t (32, __SI__ ); 198 __štN_t (64, __DI__ ); 201 __u_štN_t (8, __QI__ ); 202 __u_štN_t (16, __HI__ ); 203 __u_štN_t (32, __SI__ ); 204 __u_štN_t (64, __DI__ ); 206  t»gi¡”_t t__©Œibu‹__ (( t__mode__ ( t__wÜd__ ))); 212  #__BIT_TYPES_DEFINED__ 1 ) 215 #ifdef __USE_BSD 217  ~<’dŸn.h > 220  ~ 223  ~ 227 #ià defšed __USE_UNIX98 && !defšed __blksize_t_defšed 228  __blksize_t tblksize_t ; 229  #__blksize_t_defšed ) 233 #iâdeà __USE_FILE_OFFSET64 234 #iâdeà __blkút_t_defšed 235  __blkút_t tblkút_t ; 236  #__blkút_t_defšed ) 238 #iâdeà __fsblkút_t_defšed 239  __fsblkút_t tfsblkút_t ; 240  #__fsblkút_t_defšed ) 242 #iâdeà __fsfžút_t_defšed 243  __fsfžút_t tfsfžút_t ; 244  #__fsfžút_t_defšed ) 247 #iâdeà __blkút_t_defšed 248  __blkút64_t tblkút_t ; 249  #__blkút_t_defšed ) 251 #iâdeà __fsblkút_t_defšed 252  __fsblkút64_t tfsblkút_t ; 253  #__fsblkút_t_defšed ) 255 #iâdeà __fsfžút_t_defšed 256  __fsfžút64_t tfsfžút_t ; 257  #__fsfžút_t_defšed ) 261 #ifdeà __USE_LARGEFILE64 262  __blkút64_t tblkút64_t ; 263  __fsblkút64_t tfsblkút64_t ; 264  __fsfžút64_t tfsfžút64_t ; 269 #ià defšed __USE_POSIX199506 || defšed __USE_UNIX98 270  ~ 273 g__END_DECLS @/usr/include/sys/uio.h 19 #iâdeà _SYS_UIO_H 20  #_SYS_UIO_H 1 ) 22  ~<ã©u»s.h > 24  ~ 26 g__BEGIN_DECLS 29  ~ 40 ssize_t »adv ( __fd , __cÚ¡  iovec * __iovec ,  __couÁ ); 50 ssize_t wr™ev ( __fd , __cÚ¡  iovec * __iovec ,  __couÁ ); 52 g__END_DECLS @/usr/include/sys/un.h 19 #iâdef _SYS_UN_H 20  #_SYS_UN_H 1 ) 22  ~ 25  ~ 27 __BEGIN_DECLS 30  ssockaddr_un 32 __SOCKADDR_COMMON ( sun_ ); 33  msun_·th [108]; 37 #ifdeà __USE_MISC 38  ~<¡ršg.h > 41  #SUN_LEN ( ±r è(( size_t è((( sockaddr_un *è0)-> sun_·th ) \ 42 + `¡¾’ (( ±r )-> sun_·th )) ) 45 g__END_DECLS @/usr/include/sys/wait.h 24 #iâdef _SYS_WAIT_H 25  #_SYS_WAIT_H 1 ) 27  ~<ã©u»s.h > 29 g__BEGIN_DECLS 31  ~ 32  ~ 35 #ià! defšed _STDLIB_H || !defšed __USE_XOPEN 38  ~ 40 #ifdef __USE_BSD 45 #ià defšed __GNUC__ && !defšed __ýlu¥lus 46  #__WAIT_INT ( ¡©us ) \ 47 ( `__ex‹nsiÚ__ (((uniÚ { `__ty³of ( ¡©us è __š ;  __i ; }) \ 48 { . __š = ( ¡©us è}). __i )) ) 50  #__WAIT_INT ( ¡©us è(*( __cÚ¡ *è&(¡©us)) ) 58 #ià! defšed __GNUC__ || __GNUC__ < 2 || defšed __ýlu¥lus 59  #__WAIT_STATUS * ) 60  #__WAIT_STATUS_DEFN * ) 65  wa™ * m__u±r ; 66 * m__Œ ; 67 } t__WAIT_STATUS t__©Œibu‹__ (( t__Œª¥¬’t_uniÚ__ )); 68  #__WAIT_STATUS_DEFN * ) 73  #__WAIT_INT ( ¡©us è(¡©us) ) 74  #__WAIT_STATUS * ) 75  #__WAIT_STATUS_DEFN * ) 80  ~ 82  #WEXITSTATUS ( ¡©us è `__WEXITSTATUS ( `__WAIT_INT (¡©us)) ) 83  #WTERMSIG ( ¡©us è `__WTERMSIG ( `__WAIT_INT (¡©us)) ) 84  #WSTOPSIG ( ¡©us è `__WSTOPSIG ( `__WAIT_INT (¡©us)) ) 85  #WIFEXITED ( ¡©us è `__WIFEXITED ( `__WAIT_INT (¡©us)) ) 86  #WIFSIGNALED ( ¡©us è `__WIFSIGNALED ( `__WAIT_INT (¡©us)) ) 87  #WIFSTOPPED ( ¡©us è `__WIFSTOPPED ( `__WAIT_INT (¡©us)) ) 88 #ifdeà __WIFCONTINUED 89  #WIFCONTINUED ( ¡©us è `__WIFCONTINUED ( `__WAIT_INT (¡©us)) ) 93 #ifdef __USE_BSD 94  #WCOREFLAG __WCOREFLAG ) 95  #WCOREDUMP ( ¡©us è `__WCOREDUMP ( `__WAIT_INT (¡©us)) ) 96  #W_EXITCODE ( »t , sig è `__W_EXITCODE Ô‘, sig) ) 97  #W_STOPCODE ( sig è `__W_STOPCODE (sig) ) 101 #ià defšed __USE_SVID || defšed __USE_XOPEN 104 mP_ALL , 105 mP_PID , 106 mP_PGID 107 } tidty³_t ; 116 __pid_t wa™ ( __WAIT_STATUS __¡©_loc ); 118 #ifdef __USE_BSD 120  #WAIT_ANY (-1è ) 121  #WAIT_MYPGRP 0 ) 139 __pid_t wa™pid (__pid_ˆ __pid , * __¡©_loc ,  __ÝtiÚs ); 141 #ià defšed __USE_SVID || defšed __USE_XOPEN 142  #__Ãed_sigšfo_t ) 143  ~ 155  wa™id ( idty³_t __idty³ , __id_t __id , sigšfo_t * __šfÝ , 156  __ÝtiÚs ); 159 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 162  gru§ge ; 169 __pid_t $wa™3 ( __WAIT_STATUS __¡©_loc ,  __ÝtiÚs , 170  ru§ge * __u§ge è __THROW ; 173 #ifdeà __USE_BSD 175 __pid_t $wa™4 ( __pid_t __pid , __WAIT_STATUS __¡©_loc ,  __ÝtiÚs , 176  ru§ge * __u§ge è __THROW ; 180 __END_DECLS @/usr/include/syslog.h 1  ~ @/usr/include/time.h 24 #iâdef _TIME_H 26 #ià(! defšed __Ãed_time_t && !defšed __Ãed_þock_t && \ 27 ! defšed g__Ãed_time¥ec ) 28  #_TIME_H 1 ) 29  ~<ã©u»s.h > 31 g__BEGIN_DECLS 35 #ifdef _TIME_H 37  #__Ãed_size_t ) 38  #__Ãed_NULL ) 39  ~<¡ddef.h > 43  ~ 46 #ià! defšed __STRICT_ANSI__ && !defšed __USE_XOPEN2K 47 #iâdeà CLK_TCK 48  #CLK_TCK CLOCKS_PER_SEC ) 54 #ià! defšed __þock_t_defšed && (defšed _TIME_H || defšed __Ãed_þock_t ) 55  #__þock_t_defšed 1 ) 57  ~ 59 __BEGIN_NAMESPACE_STD 61  __þock_t tþock_t ; 62 g__END_NAMESPACE_STD 63 #ià defšed __USE_XOPEN || defšed __USE_POSIX || defšed __USE_MISC 64 $__USING_NAMESPACE_STD ( þock_t ) 68 #undeà __Ãed_þock_t 70 #ià! defšed __time_t_defšed && (defšed _TIME_H || defšed __Ãed_time_t ) 71  #__time_t_defšed 1 ) 73  ~ 75 __BEGIN_NAMESPACE_STD 77  __time_t ttime_t ; 78 __END_NAMESPACE_STD 79 #ià defšed __USE_POSIX || defšed __USE_MISC || defšed __USE_SVID 80 $__USING_NAMESPACE_STD ( time_t ) 84 #undeà __Ãed_time_t 86 #ià! defšed __þockid_t_defšed && \ 87 (( defšed _TIME_H && defšed __USE_POSIX199309 è|| defšed __Ãed_þockid_t ) 88  #__þockid_t_defšed 1 ) 90  ~ 93  __þockid_t tþockid_t ; 96 #undeà __þockid_time_t 98 #ià! defšed __tim”_t_defšed && \ 99 (( defšed _TIME_H && defšed __USE_POSIX199309 è|| defšed __Ãed_tim”_t ) 100  #__tim”_t_defšed 1 ) 102  ~ 105  __tim”_t ttim”_t ; 108 #undeà __Ãed_tim”_t 111 #ià! defšed __time¥ec_defšed && \ 112 (( defšed _TIME_H && \ 113 ( defšed __USE_POSIX199309 || defšed __USE_MISC )) || \ 114 defšed __Ãed_time¥ec ) 115  #__time¥ec_defšed 1 ) 117  ~ 121  stime¥ec 123 __time_t tv_£c ; 124  tv_n£c ; 128 #undeà __Ãed_time¥ec 131 #ifdef _TIME_H 132 __BEGIN_NAMESPACE_STD 134  stm 136  tm_£c ; 137  tm_mš ; 138  tm_hour ; 139  tm_mday ; 140  tm_mÚ ; 141  tm_y—r ; 142  tm_wday ; 143  tm_yday ; 144  tm_isd¡ ; 146 #ifdef __USE_BSD 147  tm_gmtoff ; 148 __cÚ¡ * tm_zÚe ; 150  __tm_gmtoff ; 151 __cÚ¡ * __tm_zÚe ; 154 __END_NAMESPACE_STD 155 #ià defšed __USE_XOPEN || defšed __USE_POSIX || defšed __USE_MISC 156 $__USING_NAMESPACE_STD ( tm ) 160 #ifdeà __USE_POSIX199309 162  s™im”¥ec 164  time¥ec ™_š‹rv® ; 165  time¥ec ™_v®ue ; 169  sigev’t ; 173 #ifdeà __USE_XOPEN2K 174 #iâdeà __pid_t_defšed 175  __pid_t tpid_t ; 176  #__pid_t_defšed ) 181 __BEGIN_NAMESPACE_STD 184 þock_t $þock (è __THROW ; 187 time_t $time ( time_t * __tim” è __THROW ; 190  $difáime ( time_t __time1 ,ime_ˆ __time0 ) 191 __THROW `__©Œibu‹__ (( __cÚ¡__ )); 194 time_t $mktime ( tm * __ è __THROW ; 200 size_t $¡ráime (* __»¡riù __s , size_t __maxsize , 201 __cÚ¡ * __»¡riù __fÜm© , 202 __cÚ¡  tm * __»¡riù __ è __THROW ; 203 __END_NAMESPACE_STD 205 #ifdeà __USE_XOPEN 208 * $¡½time ( __cÚ¡ * __»¡riù __s , 209 __cÚ¡ * __»¡riù __fmt ,  tm * __ ) 210 __THROW ; 213 #ifdeà __USE_GNU 216  ~ 218 size_t $¡ráime_l (* __»¡riù __s , size_t __maxsize , 219 __cÚ¡ * __»¡riù __fÜm© , 220 __cÚ¡  tm * __»¡riù __ , 221 __loÿË_t __loc è __THROW ; 223 * $¡½time_l ( __cÚ¡ * __»¡riù __s , 224 __cÚ¡ * __»¡riù __fmt ,  tm * __ , 225 __loÿË_t __loc è __THROW ; 229 __BEGIN_NAMESPACE_STD 232  tm * $gmtime ( __cÚ¡ time_t * __tim” è __THROW ; 236  tm * $loÿÉime ( __cÚ¡ time_t * __tim” è __THROW ; 237 __END_NAMESPACE_STD 239 #ià defšed __USE_POSIX || defšed __USE_MISC 242  tm * $gmtime_r ( __cÚ¡ time_t * __»¡riù __tim” , 243  tm * __»¡riù __ è __THROW ; 247  tm * $loÿÉime_r ( __cÚ¡ time_t * __»¡riù __tim” , 248  tm * __»¡riù __ è __THROW ; 251 __BEGIN_NAMESPACE_STD 254 * $asùime ( __cÚ¡  tm * __ è __THROW ; 257 * $ùime ( __cÚ¡ time_t * __tim” è __THROW ; 258 __END_NAMESPACE_STD 260 #ià defšed __USE_POSIX || defšed __USE_MISC 265 * $asùime_r ( __cÚ¡  tm * __»¡riù __ , 266 * __»¡riù __buf è __THROW ; 269 * $ùime_r ( __cÚ¡ time_t * __»¡riù __tim” , 270 * __»¡riù __buf è __THROW ; 275 * __tzÇme [2]; 276  __daylight ; 277  __timezÚe ; 280 #ifdef __USE_POSIX 282 * tzÇme [2]; 286  $tz£t (è __THROW ; 289 #ià defšed __USE_SVID || defšed __USE_XOPEN 290  daylight ; 291  timezÚe ; 294 #ifdeà __USE_SVID 297  $¡ime ( __cÚ¡ time_t * __wh’ è __THROW ; 303  #__i¦—p ( y—r ) \ 304 (( y—r è% 4 =ð0 && ((y—rè% 100 !ð0 || (y—rè% 400 =ð0)) ) 307 #ifdeà __USE_MISC 312 time_t $timegm ( tm * __ è __THROW ; 315 time_t $tim–oÿl ( tm * __ è __THROW ; 318  $dysize ( __y—r è __THROW `__©Œibu‹__ (( __cÚ¡__ )); 322 #ifdeà __USE_POSIX199309 327  `Çno¦“p ( __cÚ¡  time¥ec * __»que¡ed_time , 328  time¥ec * __»maššg ); 332  $þock_g‘»s ( þockid_t __þock_id ,  time¥ec * __»s è __THROW ; 335  $þock_g‘time ( þockid_t __þock_id ,  time¥ec * __ è __THROW ; 338  $þock_£‰ime ( þockid_t __þock_id , __cÚ¡  time¥ec * __ ) 339 __THROW ; 341 #ifdeà __USE_XOPEN2K 346  `þock_Çno¦“p ( þockid_t __þock_id ,  __æags , 347 __cÚ¡  time¥ec * __»q , 348  time¥ec * __»m ); 351  $þock_g‘ýuþockid ( pid_t __pid , þockid_t * __þock_id è __THROW ; 356  $tim”_ü—‹ ( þockid_t __þock_id , 357  sigev’t * __»¡riù __evp , 358 tim”_t * __»¡riù __tim”id è __THROW ; 361  $tim”_d–‘e ( tim”_t __tim”id è __THROW ; 364  $tim”_£‰ime ( tim”_t __tim”id ,  __æags , 365 __cÚ¡  ™im”¥ec * __»¡riù __v®ue , 366  ™im”¥ec * __»¡riù __ov®ue è __THROW ; 369  $tim”_g‘time ( tim”_t __tim”id ,  ™im”¥ec * __v®ue ) 370 __THROW ; 373  $tim”_g‘ov”run ( tim”_t __tim”id è __THROW ; 377 #ifdeà __USE_XOPEN_EXTENDED 389  g‘d©e_”r ; 398  tm * `g‘d©e ( __cÚ¡ * __¡ršg ); 401 #ifdeà __USE_GNU 412  `g‘d©e_r ( __cÚ¡ * __»¡riù __¡ršg , 413  tm * __»¡riù __»sbuå ); 416 __END_DECLS @/usr/include/unistd.h 23 #iâdef _UNISTD_H 24  #_UNISTD_H 1 ) 26  ~<ã©u»s.h > 28 g__BEGIN_DECLS 34  #_POSIX_VERSION 200112L ) 40  #_POSIX2_VERSION 200112L ) 44  #_POSIX2_C_BIND 200112L ) 48  #_POSIX2_C_DEV 200112L ) 52  #_POSIX2_SW_DEV 200112L ) 56  #_POSIX2_LOCALEDEF 200112L ) 59 #ifdeà __USE_XOPEN2K 60  #_XOPEN_VERSION 600 ) 61 #–ià defšed __USE_UNIX98 62  #_XOPEN_VERSION 500 ) 64  #_XOPEN_VERSION 4 ) 68  #_XOPEN_XCU_VERSION 4 ) 71  #_XOPEN_XPG2 1 ) 72  #_XOPEN_XPG3 1 ) 73  #_XOPEN_XPG4 1 ) 76  #_XOPEN_UNIX 1 ) 79  #_XOPEN_CRYPT 1 ) 83  #_XOPEN_ENH_I18N 1 ) 86  #_XOPEN_LEGACY 1 ) 173  ~ 176 #ifdeà __USE_UNIX98 177  ~ 181  #STDIN_FILENO 0 ) 182  #STDOUT_FILENO 1 ) 183  #STDERR_FILENO 2 ) 188  ~ 190 #iâdef __ssize_t_defšed 191  __ssize_t tssize_t ; 192  #__ssize_t_defšed ) 195  #__Ãed_size_t ) 196  #__Ãed_NULL ) 197  ~<¡ddef.h > 199 #ià defšed __USE_XOPEN || defšed __USE_XOPEN2K 202 #iâdeà __gid_t_defšed 203  __gid_t tgid_t ; 204  #__gid_t_defšed ) 207 #iâdeà __uid_t_defšed 208  __uid_t tuid_t ; 209  #__uid_t_defšed ) 212 #iâdeà __off_t_defšed 213 #iâdeà __USE_FILE_OFFSET64 214  __off_t toff_t ; 216  __off64_t toff_t ; 218  #__off_t_defšed ) 220 #ià defšed __USE_LARGEFILE64 && !defšed __off64_t_defšed 221  __off64_t toff64_t ; 222  #__off64_t_defšed ) 225 #iâdeà __u£cÚds_t_defšed 226  __u£cÚds_t tu£cÚds_t ; 227  #__u£cÚds_t_defšed ) 230 #iâdeà __pid_t_defšed 231  __pid_t tpid_t ; 232  #__pid_t_defšed ) 236 #ià defšed __USE_MISC || defšed __USE_XOPEN_EXTENDED 237 #iâdeà __šŒ_t_defšed 238  __šŒ_t tšŒ_t ; 239  #__šŒ_t_defšed ) 243 #ià defšed __USE_BSD || defšed __USE_XOPEN 244 #iâdeà __sockËn_t_defšed 245  __sockËn_t tsockËn_t ; 246  #__sockËn_t_defšed ) 252  #R_OK 4 ) 253  #W_OK 2 ) 254  #X_OK 1 ) 255  #F_OK 0 ) 258  $acûss ( __cÚ¡ * __Çme ,  __ty³ è __THROW `__nÚnuÎ ((1)); 260 #ifdeà __USE_GNU 263  $euidacûss ( __cÚ¡ * __Çme ,  __ty³ ) 264 __THROW `__nÚnuÎ ((1)); 267  $—cûss ( __cÚ¡ * __Çme ,  __ty³ ) 268 __THROW `__nÚnuÎ ((1)); 271 #ifdeà __USE_ATFILE 275  $çcûs§t ( __fd , __cÚ¡ * __fže ,  __ty³ ,  __æag ) 276 __THROW `__nÚnuÎ ((2)è __wur ; 281 #iâdef _STDIO_H 282  #SEEK_SET 0 ) 283  #SEEK_CUR 1 ) 284  #SEEK_END 2 ) 287 #ià defšed __USE_BSD && !defšed L_SET 289  #L_SET SEEK_SET ) 290  #L_INCR SEEK_CUR ) 291  #L_XTND SEEK_END ) 300 #iâdeà __USE_FILE_OFFSET64 301 __off_t $l£ek ( __fd , __off_t __off£t ,  __wh’û è __THROW ; 303 #ifdeà __REDIRECT_NTH 304 __off64_t `__REDIRECT_NTH ( l£ek , 305 ( __fd , __off64_t __off£t ,  __wh’û ), 306 l£ek64 ); 308  #l£ek l£ek64 ) 311 #ifdeà __USE_LARGEFILE64 312 __off64_t $l£ek64 ( __fd , __off64_t __off£t ,  __wh’û ) 313 __THROW ; 320  `þo£ ( __fd ); 327 ssize_t $»ad ( __fd , * __buf , size_t __nby‹s è __wur ; 333 ssize_t $wr™e ( __fd , __cÚ¡ * __buf , size_t __n è __wur ; 335 #ifdeà __USE_UNIX98 336 #iâdeà __USE_FILE_OFFSET64 343 ssize_t $´—d ( __fd , * __buf , size_t __nby‹s , 344 __off_t __off£t è __wur ; 351 ssize_t $pwr™e ( __fd , __cÚ¡ * __buf , size_t __n , 352 __off_t __off£t è __wur ; 354 #ifdeà __REDIRECT 355 ssize_t `__REDIRECT ( ´—d , ( __fd , * __buf , size_t __nby‹s , 356 __off64_t __off£t ), 357 ´—d64 è __wur ; 358 ssize_t `__REDIRECT ( pwr™e , ( __fd , __cÚ¡ * __buf , 359 size_t __nby‹s , __off64_t __off£t ), 360 pwr™e64 è __wur ; 362  #´—d ´—d64 ) 363  #pwr™e pwr™e64 ) 367 #ifdeà __USE_LARGEFILE64 371 ssize_t $´—d64 ( __fd , * __buf , size_t __nby‹s , 372 __off64_t __off£t è __wur ; 375 ssize_t $pwr™e64 ( __fd , __cÚ¡ * __buf , size_t __n , 376 __off64_t __off£t è __wur ; 384  $pe ( __pedes [2]è __THROW __wur ; 393  $®¬m ( __£cÚds è __THROW ; 405  `¦“p ( __£cÚds ); 407 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 412 __u£cÚds_t $u®¬m ( __u£cÚds_t __v®ue , __u£cÚds_ˆ __š‹rv® ) 413 __THROW ; 420  `u¦“p ( __u£cÚds_t __u£cÚds ); 429  `·u£ (); 433  $chown ( __cÚ¡ * __fže , __uid_t __owÃr , __gid_t __group ) 434 __THROW `__nÚnuÎ ((1)è __wur ; 436 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 438  $fchown ( __fd , __uid_t __owÃr , __gid_t __group è __THROW __wur ; 443  $lchown ( __cÚ¡ * __fže , __uid_t __owÃr , __gid_t __group ) 444 __THROW `__nÚnuÎ ((1)è __wur ; 448 #ifdeà __USE_ATFILE 451  $fchowÇt ( __fd , __cÚ¡ * __fže , __uid_t __owÃr , 452 __gid_t __group ,  __æag ) 453 __THROW `__nÚnuÎ ((2)è __wur ; 457  $chdœ ( __cÚ¡ * __·th è __THROW `__nÚnuÎ ((1)è __wur ; 459 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 461  $fchdœ ( __fd è __THROW __wur ; 471 * $g‘cwd (* __buf , size_t __size è __THROW __wur ; 473 #ifdef __USE_GNU 477 * $g‘_cu¼’t_dœ_Çme (è __THROW ; 480 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 484 * $g‘wd (* __buf ) 485 __THROW `__nÚnuÎ ((1)è __©Œibu‹_d•»ÿ‹d__ __wur ; 490  $dup ( __fd è __THROW __wur ; 493  $dup2 ( __fd ,  __fd2 è __THROW ; 496 ** __’vœÚ ; 497 #ifdeà __USE_GNU 498 ** ’vœÚ ; 504  $execve ( __cÚ¡ * __·th , *__cÚ¡ __¬gv [], 505 * __cÚ¡ __’vp []è __THROW `__nÚnuÎ ((1)); 507 #ifdeà __USE_GNU 510  $ãxecve ( __fd , * __cÚ¡ __¬gv [], *__cÚ¡ __’vp []) 511 __THROW ; 516  $execv ( __cÚ¡ * __·th , *__cÚ¡ __¬gv []) 517 __THROW `__nÚnuÎ ((1)); 521  $exeþe ( __cÚ¡ * __·th , __cÚ¡ * __¬g , ...) 522 __THROW `__nÚnuÎ ((1)); 526  $exeþ ( __cÚ¡ * __·th , __cÚ¡ * __¬g , ...) 527 __THROW `__nÚnuÎ ((1)); 531  $execvp ( __cÚ¡ * __fže , *__cÚ¡ __¬gv []) 532 __THROW `__nÚnuÎ ((1)); 537  $exeþp ( __cÚ¡ * __fže , __cÚ¡ * __¬g , ...) 538 __THROW `__nÚnuÎ ((1)); 541 #ià defšed __USE_MISC || defšed __USE_XOPEN 543  $niû ( __šc è __THROW __wur ; 548  $_ex™ ( __¡©us è `__©Œibu‹__ (( __nÜ‘uº__ )); 554  ~ 557  $·thcÚf ( __cÚ¡ * __·th ,  __Çme ) 558 __THROW `__nÚnuÎ ((1)); 561  $å©hcÚf ( __fd ,  __Çme è __THROW ; 564  $syscÚf ( __Çme è __THROW ; 566 #ifdef __USE_POSIX2 568 size_t $cÚf¡r ( __Çme , * __buf , size_t __Ën è __THROW ; 573 __pid_t $g‘pid (è __THROW ; 576 __pid_t $g‘µid (è __THROW ; 580 #iâdeà __FAVOR_BSD 581 __pid_t $g‘pg½ (è __THROW ; 583 #ifdeà __REDIRECT_NTH 584 __pid_t `__REDIRECT_NTH ( g‘pg½ , (__pid_ˆ __pid ), __g‘pgid ); 586  #g‘pg½ __g‘pgid ) 591 __pid_t $__g‘pgid ( __pid_t __pid è __THROW ; 592 #ifdeà __USE_XOPEN_EXTENDED 593 __pid_t $g‘pgid ( __pid_t __pid è __THROW ; 600  $£gid ( __pid_t __pid , __pid_ˆ __pgid è __THROW ; 602 #ià defšed __USE_SVID || defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 613 #iâdeà __FAVOR_BSD 617  $£g½ (è __THROW ; 622 #ifdeà __REDIRECT_NTH 623  `__REDIRECT_NTH ( £g½ , ( __pid_t __pid , __pid_ˆ __pg½ ), £gid ); 625  #£g½ £gid ) 634 __pid_t $£tsid (è __THROW ; 636 #ifdeà __USE_XOPEN_EXTENDED 638 __pid_t $g‘sid ( __pid_t __pid è __THROW ; 642 __uid_t $g‘uid (è __THROW ; 645 __uid_t $g‘euid (è __THROW ; 648 __gid_t $g‘gid (è __THROW ; 651 __gid_t $g‘egid (è __THROW ; 656  $g‘groups ( __size , __gid_t __li¡ []è __THROW __wur ; 658 #ifdef __USE_GNU 660  $group_memb” ( __gid_t __gid è __THROW ; 667  $£tuid ( __uid_t __uid è __THROW ; 669 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 672  $£Œeuid ( __uid_t __ruid , __uid_ˆ __euid è __THROW ; 675 #ià defšed __USE_BSD || defšed __USE_XOPEN2K 677  $£‹uid ( __uid_t __uid è __THROW ; 684  $£tgid ( __gid_t __gid è __THROW ; 686 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 689  $£Œegid ( __gid_t __rgid , __gid_ˆ __egid è __THROW ; 692 #ià defšed __USE_BSD || defšed __USE_XOPEN2K 694  $£‹gid ( __gid_t __gid è __THROW ; 697 #ifdeà __USE_GNU 700  $g‘»suid ( __uid_t * __ruid , __uid_ˆ* __euid , __uid_ˆ* __suid ) 701 __THROW ; 705  $g‘»sgid ( __gid_t * __rgid , __gid_ˆ* __egid , __gid_ˆ* __sgid ) 706 __THROW ; 710  $£Œesuid ( __uid_t __ruid , __uid_ˆ __euid , __uid_ˆ __suid ) 711 __THROW ; 715  $£Œesgid ( __gid_t __rgid , __gid_ˆ __egid , __gid_ˆ __sgid ) 716 __THROW ; 723 __pid_t $fÜk (è __THROW ; 725 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 730 __pid_t $vfÜk (è __THROW ; 736 * $‰yÇme ( __fd è __THROW ; 740  $‰yÇme_r ( __fd , * __buf , size_t __buæ’ ) 741 __THROW `__nÚnuÎ ((2)è __wur ; 745  $i§‰y ( __fd è __THROW ; 747 #ià defšed __USE_BSD \ 748 || ( defšed __USE_XOPEN_EXTENDED && !defšed __USE_UNIX98 ) 751  $‰y¦Ù (è __THROW ; 756  $lšk ( __cÚ¡ * __äom , __cÚ¡ * __to ) 757 __THROW `__nÚnuÎ ((1, 2)è __wur ; 759 #ifdeà __USE_ATFILE 762  $lšk© ( __äomfd , __cÚ¡ * __äom ,  __tofd , 763 __cÚ¡ * __to ,  __æags ) 764 __THROW `__nÚnuÎ ((2, 4)è __wur ; 767 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED || defšed __USE_XOPEN2K 769  $symlšk ( __cÚ¡ * __äom , __cÚ¡ * __to ) 770 __THROW `__nÚnuÎ ((1, 2)è __wur ; 775 ssize_t $»adlšk ( __cÚ¡ * __»¡riù __·th , 776 * __»¡riù __buf , size_t __Ën ) 777 __THROW `__nÚnuÎ ((1, 2)è __wur ; 780 #ifdeà __USE_ATFILE 782  $symlšk© ( __cÚ¡ * __äom ,  __tofd , 783 __cÚ¡ * __to è __THROW `__nÚnuÎ ((1, 3)è __wur ; 786 ssize_t $»adlšk© ( __fd , __cÚ¡ * __»¡riù __·th , 787 * __»¡riù __buf , size_t __Ën ) 788 __THROW `__nÚnuÎ ((2, 3)è __wur ; 792  $uÆšk ( __cÚ¡ * __Çme è __THROW `__nÚnuÎ ((1)); 794 #ifdeà __USE_ATFILE 796  $uÆšk© ( __fd , __cÚ¡ * __Çme ,  __æag ) 797 __THROW `__nÚnuÎ ((2)); 801  $rmdœ ( __cÚ¡ * __·th è __THROW `__nÚnuÎ ((1)); 805 __pid_t $tcg‘pg½ ( __fd è __THROW ; 808  $tc£g½ ( __fd , __pid_t __pg½_id è __THROW ; 815 * `g‘logš (); 816 #ià defšed __USE_REENTRANT || defšed __USE_POSIX199506 823  $g‘logš_r (* __Çme , size_t __Çme_Ën è `__nÚnuÎ ((1)); 826 #ifdef __USE_BSD 828  $£Žogš ( __cÚ¡ * __Çme è __THROW `__nÚnuÎ ((1)); 832 #ifdef __USE_POSIX2 836  #__Ãed_g‘Ýt ) 837  ~ 841 #ià defšed __USE_BSD || defšed __USE_UNIX98 845  $g‘ho¡Çme (* __Çme , size_t __Ën è __THROW `__nÚnuÎ ((1)); 849 #ià defšed __USE_BSD || (defšed __USE_XOPEN && !defšed __USE_UNIX98 ) 852  $£tho¡Çme ( __cÚ¡ * __Çme , size_t __Ën ) 853 __THROW `__nÚnuÎ ((1)è __wur ; 857  $£tho¡id ( __id è __THROW __wur ; 863  $g‘domašÇme (* __Çme , size_t __Ën ) 864 __THROW `__nÚnuÎ ((1)è __wur ; 865  $£tdomašÇme ( __cÚ¡ * __Çme , size_t __Ën ) 866 __THROW `__nÚnuÎ ((1)è __wur ; 872  $vhªgup (è __THROW ; 875  $»voke ( __cÚ¡ * __fže è __THROW `__nÚnuÎ ((1)è __wur ; 883  $´ofž (* __§m¶e_bufãr , size_t __size , 884 size_t __off£t ,  __sÿË ) 885 __THROW `__nÚnuÎ ((1)); 891  $acù ( __cÚ¡ * __Çme è __THROW ; 895 * $g‘u£rsh–l (è __THROW ; 896  $’du£rsh–l (è __THROW ; 897  $£tu£rsh–l (è __THROW ; 903  $d«mÚ ( __nochdœ ,  __noþo£ è __THROW __wur ; 907 #ià defšed __USE_BSD || (defšed __USE_XOPEN && !defšed __USE_XOPEN2K ) 910  $chroÙ ( __cÚ¡ * __·th è __THROW `__nÚnuÎ ((1)è __wur ; 914 * $g‘·ss ( __cÚ¡ * __´om± è `__nÚnuÎ ((1)); 918 #ià defšed __USE_BSD || defšed __USE_XOPEN 923  `fsync ( __fd ); 927 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 930  `g‘ho¡id (); 933  $sync (è __THROW ; 938  $g‘·gesize (è __THROW `__©Œibu‹__ (( __cÚ¡__ )); 943  $g‘dbËsize (è __THROW ; 947 #iâdeà __USE_FILE_OFFSET64 948  $Œunÿ‹ ( __cÚ¡ * __fže , __off_t __Ëngth ) 949 __THROW `__nÚnuÎ ((1)è __wur ; 951 #ifdeà __REDIRECT_NTH 952  `__REDIRECT_NTH ( Œunÿ‹ , 953 ( __cÚ¡ * __fže , __off64_t __Ëngth ), 954 Œunÿ‹64 è `__nÚnuÎ ((1)è __wur ; 956  #Œunÿ‹ Œunÿ‹64 ) 959 #ifdeà __USE_LARGEFILE64 960  $Œunÿ‹64 ( __cÚ¡ * __fže , __off64_t __Ëngth ) 961 __THROW `__nÚnuÎ ((1)è __wur ; 966 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED || defšed __USE_XOPEN2K 969 #iâdeà __USE_FILE_OFFSET64 970  $árunÿ‹ ( __fd , __off_t __Ëngth è __THROW __wur ; 972 #ifdeà __REDIRECT_NTH 973  `__REDIRECT_NTH ( árunÿ‹ , ( __fd , __off64_t __Ëngth ), 974 árunÿ‹64 è __wur ; 976  #árunÿ‹ árunÿ‹64 ) 979 #ifdeà __USE_LARGEFILE64 980  $árunÿ‹64 ( __fd , __off64_t __Ëngth è __THROW __wur ; 986 #ià defšed __USE_MISC || defšed __USE_XOPEN_EXTENDED 990  $brk (* __addr è __THROW __wur ; 996 * $sbrk ( šŒ_t __d– è __THROW ; 1000 #ifdeà __USE_MISC 1011  $sysÿÎ ( __sy¢o , ...è __THROW ; 1016 #ià( defšed __USE_MISC || defšed __USE_XOPEN_EXTENDED è&& !defšed F_LOCK 1028  #F_ULOCK 0 ) 1029  #F_LOCK 1 ) 1030  #F_TLOCK 2 ) 1031  #F_TEST 3 ) 1033 #iâdeà __USE_FILE_OFFSET64 1034  $lockf ( __fd ,  __cmd , __off_t __Ën è __wur ; 1036 #ifdeà __REDIRECT 1037  `__REDIRECT ( lockf , ( __fd ,  __cmd , __off64_t __Ën ), 1038 lockf64 è __wur ; 1040  #lockf lockf64 ) 1043 #ifdeà __USE_LARGEFILE64 1044  $lockf64 ( __fd ,  __cmd , __off64_t __Ën è __wur ; 1049 #ifdeà __USE_GNU 1054  #TEMP_FAILURE_RETRY ( ex´essiÚ ) \ 1055 ( __ex‹nsiÚ__ \ 1056 ({  __»suÉ ; \ 1057 dØ __»suÉ = (è( ex´essiÚ ); \ 1058  __»suÉ =ð-1L && ”ºo =ð EINTR ); \ 1059 __»suÉ ; } })) ) 1062 #ià defšed __USE_POSIX199309 || defšed __USE_UNIX98 1065  fd©async ( __fždes ); 1071 #ifdef __USE_XOPEN 1073 * $üy± ( __cÚ¡ * __key , __cÚ¡ * __§É ) 1074 __THROW `__nÚnuÎ ((1, 2)); 1078  $’üy± (* __block ,  __edæag è __THROW `__nÚnuÎ ((1)); 1085  $swab ( __cÚ¡ * __»¡riù __äom , *__»¡riù __to , 1086 ssize_t __n è __THROW `__nÚnuÎ ((1, 2)); 1092 #ifdeà __USE_XOPEN 1094 * $ù”mid (* __s è __THROW ; 1099 #ià __USE_FORTIFY_LEVEL > 0 && defšed __ex‹º_®ways_šlše 1100  ~ 1103 __END_DECLS @/usr/include/uuid/uuid.h 35 #iâdeà _UUID_UUID_H 36  #_UUID_UUID_H ) 38  ~ 39  ~ 40  ~ 42  tuuid_t [16]; 45  #UUID_VARIANT_NCS 0 ) 46  #UUID_VARIANT_DCE 1 ) 47  #UUID_VARIANT_MICROSOFT 2 ) 48  #UUID_VARIANT_OTHER 3 ) 51  #UUID_TYPE_DCE_TIME 1 ) 52  #UUID_TYPE_DCE_RANDOM 4 ) 55 #ifdeà __GNUC__ 56  #UUID_DEFINE ( Çme , u0 , u1 , u2 , u3 , u4 , u5 , u6 , u7 , u8 , u9 , u10 , u11 , u12 , u13 , u14 , u15 ) \ 57 cÚ¡ uuid_t Çme `__©Œibu‹__ (( unu£d )èð{ u0 , u1 , u2 , u3 , u4 , u5 , u6 , u7 , u8 , u9 , u10 , u11 , u12 , u13 , u14 , u15 } ) 59  #UUID_DEFINE ( Çme , u0 , u1 , u2 , u3 , u4 , u5 , u6 , u7 , u8 , u9 , u10 , u11 , u12 , u13 , u14 , u15 ) \ 60 cÚ¡ uuid_t Çme = { u0 , u1 , u2 , u3 , u4 , u5 , u6 , u7 , u8 , u9 , u10 , u11 , u12 , u13 , u14 , u15 } ) 63 #ifdeà __ýlu¥lus 68  uuid_þ—r ( uuid_t uu ); 71  uuid_com·» (cÚ¡ uuid_t uu1 , cÚ¡ uuid_ˆ uu2 ); 74  uuid_cÝy ( uuid_t d¡ , cÚ¡ uuid_ˆ ¤c ); 77  uuid_g’”©e ( uuid_t out ); 78  uuid_g’”©e_¿ndom ( uuid_t out ); 79  uuid_g’”©e_time ( uuid_t out ); 82  uuid_is_nuÎ (cÚ¡ uuid_t uu ); 85  uuid_·r£ (cÚ¡ * š , uuid_t uu ); 88  uuid_uŬ£ (cÚ¡ uuid_t uu , * out ); 89  uuid_uŬ£_low” (cÚ¡ uuid_t uu , * out ); 90  uuid_uŬ£_uµ” (cÚ¡ uuid_t uu , * out ); 93 time_t uuid_time (cÚ¡ uuid_t uu ,  timev® * »t_tv ); 94  uuid_ty³ (cÚ¡ uuid_t uu ); 95  uuid_v¬ŸÁ (cÚ¡ uuid_t uu ); 97 #ifdeà __ýlu¥lus @/usr/include/valgrind/valgrind.h 73 #iâdeà __VALGRIND_H 74  #__VALGRIND_H ) 76  ~<¡d¬g.h > 88 #undeà PLAT_x86_lšux 89 #undeà PLAT_amd64_lšux 90 #undeà PLAT_µc32_lšux 91 #undeà PLAT_µc64_lšux 92 #undeà PLAT_µc32_aix5 93 #undeà PLAT_µc64_aix5 95 #ià! defšed ( _AIX è&& defšed( __i386__ ) 96  #PLAT_x86_lšux 1 ) 97 #–ià! defšed ( _AIX è&& defšed( __x86_64__ ) 98  #PLAT_amd64_lšux 1 ) 99 #–ià! defšed ( _AIX è&& defšed( __pow”pc__ è&& !defšed( __pow”pc64__ ) 100  #PLAT_µc32_lšux 1 ) 101 #–ià! defšed ( _AIX è&& defšed( __pow”pc__ è&& defšed( __pow”pc64__ ) 102  #PLAT_µc64_lšux 1 ) 103 #–ià defšed ( _AIX è&& defšed( __64BIT__ ) 104  #PLAT_µc64_aix5 1 ) 105 #–ià defšed ( _AIX è&& !defšed( __64BIT__ ) 106  #PLAT_µc32_aix5 1 ) 112 #ià! defšed ( PLAT_x86_lšux è&& !defšed( PLAT_amd64_lšux ) \ 113 && ! defšed ( PLAT_µc32_lšux è&& !defšed( PLAT_µc64_lšux ) \ 114 && ! defšed ( PLAT_µc32_aix5 è&& ! $defšed ( PLAT_µc64_aix5 ) 115 #ià! `defšed ( NVALGRIND ) 116  #NVALGRIND 1 ) 126 #ià `defšed ( NVALGRIND ) 131  #VALGRIND_DO_CLIENT_REQUEST ( \ 132 _zzq_¾v® , _zzq_deçuÉ , _zzq_»que¡ , \ 133 _zzq_¬g1 , _zzq_¬g2 , _zzq_¬g3 , _zzq_¬g4 , _zzq_¬g5 ) \ 135 ( _zzq_¾v® èð( _zzq_deçuÉ ); \ 136 } ) } 177 #ià defšed ( PLAT_x86_lšux ) 181  mÄaddr ; 183 tOrigFn ; 185  #__SPECIAL_INSTRUCTION_PREAMBLE \ 187 "rÞÈ$29, %%ed˜;„ÞÈ$19, %%edi\n\t" ) 189  #VALGRIND_DO_CLIENT_REQUEST ( \ 190 _zzq_¾v® , _zzq_deçuÉ , _zzq_»que¡ , \ 191 _zzq_¬g1 , _zzq_¬g2 , _zzq_¬g3 , _zzq_¬g4 , _zzq_¬g5 ) \ 192 { vÞ©ž _zzq_¬gs [6]; \ 193 vÞ©ž _zzq_»suÉ ; \ 194 _zzq_¬gs [0] = ()( _zzq_»que¡ ); \ 195 _zzq_¬gs [1] = ()( _zzq_¬g1 ); \ 196 _zzq_¬gs [2] = ()( _zzq_¬g2 ); \ 197 _zzq_¬gs [3] = ()( _zzq_¬g3 ); \ 198 _zzq_¬gs [4] = ()( _zzq_¬g4 ); \ 199 _zzq_¬gs [5] = ()( _zzq_¬g5 ); \ 200 __asm__ vÞ©že( __SPECIAL_INSTRUCTION_PREAMBLE \ 203 : "=d" ( _zzq_»suÉ ) \ 204 : "a" (& _zzq_¬gs [0]), "0" ( _zzq_deçuÉ ) \ 207 _zzq_¾v® = _zzq_»suÉ ; \ 208 } ) 210  #VALGRIND_GET_NR_CONTEXT ( _zzq_¾v® ) \ 211 { vÞ©ž OrigFn * _zzq_Üig = &( _zzq_¾v® ); \ 212 vÞ©ž __addr ; \ 213 __asm__ vÞ©že( __SPECIAL_INSTRUCTION_PREAMBLE \ 216 : "÷" ( __addr ) \ 220 _zzq_Üig -> Äaddr = __addr ; \ 221 } ) 223  #VALGRIND_CALL_NOREDIR_EAX \ 224 __SPECIAL_INSTRUCTION_PREAMBLE \ 226 "xchgÈ%%edx,%%edx\n\t" ) 231 #ià defšed ( PLAT_amd64_lšux ) 235  mÄaddr ; 237 tOrigFn ; 239  #__SPECIAL_INSTRUCTION_PREAMBLE \ 241 "rÞq $61, %%rd˜;„Þq $51, %%rdi\n\t" ) 243  #VALGRIND_DO_CLIENT_REQUEST ( \ 244 _zzq_¾v® , _zzq_deçuÉ , _zzq_»que¡ , \ 245 _zzq_¬g1 , _zzq_¬g2 , _zzq_¬g3 , _zzq_¬g4 , _zzq_¬g5 ) \ 246 { vÞ©ž _zzq_¬gs [6]; \ 247 vÞ©ž _zzq_»suÉ ; \ 248 _zzq_¬gs [0] = ()( _zzq_»que¡ ); \ 249 _zzq_¬gs [1] = ()( _zzq_¬g1 ); \ 250 _zzq_¬gs [2] = ()( _zzq_¬g2 ); \ 251 _zzq_¬gs [3] = ()( _zzq_¬g3 ); \ 252 _zzq_¬gs [4] = ()( _zzq_¬g4 ); \ 253 _zzq_¬gs [5] = ()( _zzq_¬g5 ); \ 254 __asm__ vÞ©že( __SPECIAL_INSTRUCTION_PREAMBLE \ 257 : "=d" ( _zzq_»suÉ ) \ 258 : "a" (& _zzq_¬gs [0]), "0" ( _zzq_deçuÉ ) \ 261 _zzq_¾v® = _zzq_»suÉ ; \ 262 } ) 264  #VALGRIND_GET_NR_CONTEXT ( _zzq_¾v® ) \ 265 { vÞ©ž OrigFn * _zzq_Üig = &( _zzq_¾v® ); \ 266 vÞ©ž __addr ; \ 267 __asm__ vÞ©že( __SPECIAL_INSTRUCTION_PREAMBLE \ 270 : "÷" ( __addr ) \ 274 _zzq_Üig -> Äaddr = __addr ; \ 275 } ) 277  #VALGRIND_CALL_NOREDIR_RAX \ 278 __SPECIAL_INSTRUCTION_PREAMBLE \ 280 "xchgq %%rdx,%%rdx\n\t" ) 285 #ià defšed ( PLAT_µc32_lšux ) 289  mÄaddr ; 291 tOrigFn ; 293  #__SPECIAL_INSTRUCTION_PREAMBLE \ 295 "¾wšm 0,0,29,0,0 ;„lwšm 0,0,19,0,0\n\t" ) 297  #VALGRIND_DO_CLIENT_REQUEST ( \ 298 _zzq_¾v® , _zzq_deçuÉ , _zzq_»que¡ , \ 299 _zzq_¬g1 , _zzq_¬g2 , _zzq_¬g3 , _zzq_¬g4 , _zzq_¬g5 ) \ 301 {  _zzq_¬gs [6]; \ 302  _zzq_»suÉ ; \ 303 * _zzq_±r ; \ 304 _zzq_¬gs [0] = ()( _zzq_»que¡ ); \ 305 _zzq_¬gs [1] = ()( _zzq_¬g1 ); \ 306 _zzq_¬gs [2] = ()( _zzq_¬g2 ); \ 307 _zzq_¬gs [3] = ()( _zzq_¬g3 ); \ 308 _zzq_¬gs [4] = ()( _zzq_¬g4 ); \ 309 _zzq_¬gs [5] = ()( _zzq_¬g5 ); \ 310 _zzq_±r = _zzq_¬gs ; \ 311 __asm__ volatile("mr 3,%1\n\t" \ 313 __SPECIAL_INSTRUCTION_PREAMBLE \ 317 : "=b" ( _zzq_»suÉ ) \ 318 : "b" ( _zzq_deçuÉ ), "b" ( _zzq_±r ) \ 320 _zzq_¾v® = _zzq_»suÉ ; \ 321 } ) 323  #VALGRIND_GET_NR_CONTEXT ( _zzq_¾v® ) \ 324 { vÞ©ž OrigFn * _zzq_Üig = &( _zzq_¾v® ); \ 325  __addr ; \ 326 __asm__ vÞ©že( __SPECIAL_INSTRUCTION_PREAMBLE \ 330 : "=b" ( __addr ) \ 334 _zzq_Üig -> Äaddr = __addr ; \ 335 } ) 337  #VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 338 __SPECIAL_INSTRUCTION_PREAMBLE \ 340 "Ü 3,3,3\n\t" ) 345 #ià defšed ( PLAT_µc64_lšux ) 349  mÄaddr ; 350  mr2 ; 352 tOrigFn ; 354  #__SPECIAL_INSTRUCTION_PREAMBLE \ 356 "rÙld˜0,0,61 ;„Ùld˜0,0,51\n\t" ) 358  #VALGRIND_DO_CLIENT_REQUEST ( \ 359 _zzq_¾v® , _zzq_deçuÉ , _zzq_»que¡ , \ 360 _zzq_¬g1 , _zzq_¬g2 , _zzq_¬g3 , _zzq_¬g4 , _zzq_¬g5 ) \ 362 {  _zzq_¬gs [6]; \ 363  _zzq_»suÉ `__asm__ ("r3"); \ 364 * _zzq_±r `__asm__ ("r4"); \ 365 _zzq_¬gs [0] = ()( _zzq_»que¡ ); \ 366 _zzq_¬gs [1] = ()( _zzq_¬g1 ); \ 367 _zzq_¬gs [2] = ()( _zzq_¬g2 ); \ 368 _zzq_¬gs [3] = ()( _zzq_¬g3 ); \ 369 _zzq_¬gs [4] = ()( _zzq_¬g4 ); \ 370 _zzq_¬gs [5] = ()( _zzq_¬g5 ); \ 371 _zzq_±r = _zzq_¬gs ; \ 372 __asm__ vÞ©že( __SPECIAL_INSTRUCTION_PREAMBLE \ 375 : "ô" ( _zzq_»suÉ ) \ 376 : "0" ( _zzq_deçuÉ ), "r" ( _zzq_±r ) \ 378 _zzq_¾v® = _zzq_»suÉ ; \ 379 } ) 381  #VALGRIND_GET_NR_CONTEXT ( _zzq_¾v® ) \ 382 { vÞ©ž OrigFn * _zzq_Üig = &( _zzq_¾v® ); \ 383  __addr `__asm__ ("r3"); \ 384 __asm__ vÞ©že( __SPECIAL_INSTRUCTION_PREAMBLE \ 387 : "ô" ( __addr ) \ 391 _zzq_Üig -> Äaddr = __addr ; \ 392 __asm__ vÞ©že( __SPECIAL_INSTRUCTION_PREAMBLE \ 395 : "ô" ( __addr ) \ 399 _zzq_Üig -> r2 = __addr ; \ 400 } ) 402  #VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 403 __SPECIAL_INSTRUCTION_PREAMBLE \ 405 "Ü 3,3,3\n\t" ) 411 #ià defšed ( PLAT_µc32_aix5 ) 415  mÄaddr ; 416  mr2 ; 418 tOrigFn ; 420  #__SPECIAL_INSTRUCTION_PREAMBLE \ 422 "¾wšm 0,0,29,0,0 ;„lwšm 0,0,19,0,0\n\t" ) 424  #VALGRIND_DO_CLIENT_REQUEST ( \ 425 _zzq_¾v® , _zzq_deçuÉ , _zzq_»que¡ , \ 426 _zzq_¬g1 , _zzq_¬g2 , _zzq_¬g3 , _zzq_¬g4 , _zzq_¬g5 ) \ 428 {  _zzq_¬gs [7]; \ 429  _zzq_»suÉ ; \ 430 * _zzq_±r ; \ 431 _zzq_¬gs [0] = ()( _zzq_»que¡ ); \ 432 _zzq_¬gs [1] = ()( _zzq_¬g1 ); \ 433 _zzq_¬gs [2] = ()( _zzq_¬g2 ); \ 434 _zzq_¬gs [3] = ()( _zzq_¬g3 ); \ 435 _zzq_¬gs [4] = ()( _zzq_¬g4 ); \ 436 _zzq_¬gs [5] = ()( _zzq_¬g5 ); \ 437 _zzq_¬gs [6] = ()( _zzq_deçuÉ ); \ 438 _zzq_±r = _zzq_¬gs ; \ 439 __asm__ volatile("mr 4,%1\n\t" \ 441 __SPECIAL_INSTRUCTION_PREAMBLE \ 445 : "=b" ( _zzq_»suÉ ) \ 446 : "b" ( _zzq_±r ) \ 448 _zzq_¾v® = _zzq_»suÉ ; \ 449 } ) 451  #VALGRIND_GET_NR_CONTEXT ( _zzq_¾v® ) \ 452 { vÞ©ž OrigFn * _zzq_Üig = &( _zzq_¾v® ); \ 453  __addr ; \ 454 __asm__ vÞ©že( __SPECIAL_INSTRUCTION_PREAMBLE \ 458 : "=b" ( __addr ) \ 462 _zzq_Üig -> Äaddr = __addr ; \ 463 __asm__ vÞ©že( __SPECIAL_INSTRUCTION_PREAMBLE \ 467 : "=b" ( __addr ) \ 471 _zzq_Üig -> r2 = __addr ; \ 472 } ) 474  #VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 475 __SPECIAL_INSTRUCTION_PREAMBLE \ 477 "Ü 3,3,3\n\t" ) 483 #ià defšed ( PLAT_µc64_aix5 ) 487  mÄaddr ; 488  mr2 ; 490 tOrigFn ; 492  #__SPECIAL_INSTRUCTION_PREAMBLE \ 494 "rÙld˜0,0,61 ;„Ùld˜0,0,51\n\t" ) 496  #VALGRIND_DO_CLIENT_REQUEST ( \ 497 _zzq_¾v® , _zzq_deçuÉ , _zzq_»que¡ , \ 498 _zzq_¬g1 , _zzq_¬g2 , _zzq_¬g3 , _zzq_¬g4 , _zzq_¬g5 ) \ 500 {  _zzq_¬gs [7]; \ 501  _zzq_»suÉ ; \ 502 * _zzq_±r ; \ 503 _zzq_¬gs [0] = ()( _zzq_»que¡ ); \ 504 _zzq_¬gs [1] = ()( _zzq_¬g1 ); \ 505 _zzq_¬gs [2] = ()( _zzq_¬g2 ); \ 506 _zzq_¬gs [3] = ()( _zzq_¬g3 ); \ 507 _zzq_¬gs [4] = ()( _zzq_¬g4 ); \ 508 _zzq_¬gs [5] = ()( _zzq_¬g5 ); \ 509 _zzq_¬gs [6] = ()( _zzq_deçuÉ ); \ 510 _zzq_±r = _zzq_¬gs ; \ 511 __asm__ volatile("mr 4,%1\n\t" \ 513 __SPECIAL_INSTRUCTION_PREAMBLE \ 517 : "=b" ( _zzq_»suÉ ) \ 518 : "b" ( _zzq_±r ) \ 520 _zzq_¾v® = _zzq_»suÉ ; \ 521 } ) 523  #VALGRIND_GET_NR_CONTEXT ( _zzq_¾v® ) \ 524 { vÞ©ž OrigFn * _zzq_Üig = &( _zzq_¾v® ); \ 525  __addr ; \ 526 __asm__ vÞ©že( __SPECIAL_INSTRUCTION_PREAMBLE \ 530 : "=b" ( __addr ) \ 534 _zzq_Üig -> Äaddr = __addr ; \ 535 __asm__ vÞ©že( __SPECIAL_INSTRUCTION_PREAMBLE \ 539 : "=b" ( __addr ) \ 543 _zzq_Üig -> r2 = __addr ; \ 544 } ) 546  #VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 547 __SPECIAL_INSTRUCTION_PREAMBLE \ 549 "Ü 3,3,3\n\t" ) 584  #I_WRAP_SONAME_FNNAME_ZU ( sÚame , âÇme ) \ 585 _vgwZU_ ## sÚame ## _ ## âÇme ) 587  #I_WRAP_SONAME_FNNAME_ZZ ( sÚame , âÇme ) \ 588 _vgwZZ_ ## sÚame ## _ ## âÇme ) 594  #VALGRIND_GET_ORIG_FN ( _lv® è `VALGRIND_GET_NR_CONTEXT (_lv®) ) 599  #CALL_FN_v_v ( â±r ) \ 600 dØ{ vÞ©ž _junk ; \ 601 `CALL_FN_W_v ( _junk , â±r ); } 0) ) 603  #CALL_FN_v_W ( â±r , ¬g1 ) \ 604 dØ{ vÞ©ž _junk ; \ 605 `CALL_FN_W_W ( _junk , â±r , ¬g1 ); } 0) ) 607  #CALL_FN_v_WW ( â±r , ¬g1 , ¬g2 ) \ 608 dØ{ vÞ©ž _junk ; \ 609 `CALL_FN_W_WW ( _junk , â±r , ¬g1 , ¬g2 ); } 0) ) 611  #CALL_FN_v_WWW ( â±r , ¬g1 , ¬g2 , ¬g3 ) \ 612 dØ{ vÞ©ž _junk ; \ 613 `CALL_FN_W_WWW ( _junk , â±r , ¬g1 , ¬g2 , ¬g3 ); } 0) ) 617 #ià defšed ( PLAT_x86_lšux ) 621  #__CALLER_SAVED_REGS "ecx", "edx" ) 626  #CALL_FN_W_v ( lv® , Üig ) \ 628 vÞ©ž OrigFn _Üig = ( Üig ); \ 629 vÞ©ž _¬gvec [1]; \ 630 vÞ©ž _»s ; \ 631 _¬gvec [0] = () _Üig . Äaddr ; \ 632 __asm__ volatile( \ 634 VALGRIND_CALL_NOREDIR_EAX \ 635 : "÷" ( _»s ) \ 636 : "a" (& _¬gvec [0]) \ 637 : "cc", "memÜy", __CALLER_SAVED_REGS \ 639 lv® = ( `__ty³of__ Öv®)è _»s ; \ 640 } 0) ) 642  #CALL_FN_W_W ( lv® , Üig , ¬g1 ) \ 644 vÞ©ž OrigFn _Üig = ( Üig ); \ 645 vÞ©ž _¬gvec [2]; \ 646 vÞ©ž _»s ; \ 647 _¬gvec [0] = () _Üig . Äaddr ; \ 648 _¬gvec [1] = ()( ¬g1 ); \ 649 __asm__ volatile( \ 652 VALGRIND_CALL_NOREDIR_EAX \ 654 : "÷" ( _»s ) \ 655 : "a" (& _¬gvec [0]) \ 656 : "cc", "memÜy", __CALLER_SAVED_REGS \ 658 lv® = ( `__ty³of__ Öv®)è _»s ; \ 659 } 0) ) 661  #CALL_FN_W_WW ( lv® , Üig , ¬g1 , ¬g2 ) \ 663 vÞ©ž OrigFn _Üig = ( Üig ); \ 664 vÞ©ž _¬gvec [3]; \ 665 vÞ©ž _»s ; \ 666 _¬gvec [0] = () _Üig . Äaddr ; \ 667 _¬gvec [1] = ()( ¬g1 ); \ 668 _¬gvec [2] = ()( ¬g2 ); \ 669 __asm__ volatile( \ 673 VALGRIND_CALL_NOREDIR_EAX \ 675 : "÷" ( _»s ) \ 676 : "a" (& _¬gvec [0]) \ 677 : "cc", "memÜy", __CALLER_SAVED_REGS \ 679 lv® = ( `__ty³of__ Öv®)è _»s ; \ 680 } 0) ) 682  #CALL_FN_W_WWW ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 ) \ 684 vÞ©ž OrigFn _Üig = ( Üig ); \ 685 vÞ©ž _¬gvec [4]; \ 686 vÞ©ž _»s ; \ 687 _¬gvec [0] = () _Üig . Äaddr ; \ 688 _¬gvec [1] = ()( ¬g1 ); \ 689 _¬gvec [2] = ()( ¬g2 ); \ 690 _¬gvec [3] = ()( ¬g3 ); \ 691 __asm__ volatile( \ 696 VALGRIND_CALL_NOREDIR_EAX \ 698 : "÷" ( _»s ) \ 699 : "a" (& _¬gvec [0]) \ 700 : "cc", "memÜy", __CALLER_SAVED_REGS \ 702 lv® = ( `__ty³of__ Öv®)è _»s ; \ 703 } 0) ) 705  #CALL_FN_W_WWWW ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 ) \ 707 vÞ©ž OrigFn _Üig = ( Üig ); \ 708 vÞ©ž _¬gvec [5]; \ 709 vÞ©ž _»s ; \ 710 _¬gvec [0] = () _Üig . Äaddr ; \ 711 _¬gvec [1] = ()( ¬g1 ); \ 712 _¬gvec [2] = ()( ¬g2 ); \ 713 _¬gvec [3] = ()( ¬g3 ); \ 714 _¬gvec [4] = ()( ¬g4 ); \ 715 __asm__ volatile( \ 721 VALGRIND_CALL_NOREDIR_EAX \ 723 : "÷" ( _»s ) \ 724 : "a" (& _¬gvec [0]) \ 725 : "cc", "memÜy", __CALLER_SAVED_REGS \ 727 lv® = ( `__ty³of__ Öv®)è _»s ; \ 728 } 0) ) 730  #CALL_FN_W_5W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 ) \ 732 vÞ©ž OrigFn _Üig = ( Üig ); \ 733 vÞ©ž _¬gvec [6]; \ 734 vÞ©ž _»s ; \ 735 _¬gvec [0] = () _Üig . Äaddr ; \ 736 _¬gvec [1] = ()( ¬g1 ); \ 737 _¬gvec [2] = ()( ¬g2 ); \ 738 _¬gvec [3] = ()( ¬g3 ); \ 739 _¬gvec [4] = ()( ¬g4 ); \ 740 _¬gvec [5] = ()( ¬g5 ); \ 741 __asm__ volatile( \ 748 VALGRIND_CALL_NOREDIR_EAX \ 750 : "÷" ( _»s ) \ 751 : "a" (& _¬gvec [0]) \ 752 : "cc", "memÜy", __CALLER_SAVED_REGS \ 754 lv® = ( `__ty³of__ Öv®)è _»s ; \ 755 } 0) ) 757  #CALL_FN_W_6W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 ) \ 759 vÞ©ž OrigFn _Üig = ( Üig ); \ 760 vÞ©ž _¬gvec [7]; \ 761 vÞ©ž _»s ; \ 762 _¬gvec [0] = () _Üig . Äaddr ; \ 763 _¬gvec [1] = ()( ¬g1 ); \ 764 _¬gvec [2] = ()( ¬g2 ); \ 765 _¬gvec [3] = ()( ¬g3 ); \ 766 _¬gvec [4] = ()( ¬g4 ); \ 767 _¬gvec [5] = ()( ¬g5 ); \ 768 _¬gvec [6] = ()( ¬g6 ); \ 769 __asm__ volatile( \ 777 VALGRIND_CALL_NOREDIR_EAX \ 779 : "÷" ( _»s ) \ 780 : "a" (& _¬gvec [0]) \ 781 : "cc", "memÜy", __CALLER_SAVED_REGS \ 783 lv® = ( `__ty³of__ Öv®)è _»s ; \ 784 } 0) ) 786  #CALL_FN_W_7W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 787 ¬g7 ) \ 789 vÞ©ž OrigFn _Üig = ( Üig ); \ 790 vÞ©ž _¬gvec [8]; \ 791 vÞ©ž _»s ; \ 792 _¬gvec [0] = () _Üig . Äaddr ; \ 793 _¬gvec [1] = ()( ¬g1 ); \ 794 _¬gvec [2] = ()( ¬g2 ); \ 795 _¬gvec [3] = ()( ¬g3 ); \ 796 _¬gvec [4] = ()( ¬g4 ); \ 797 _¬gvec [5] = ()( ¬g5 ); \ 798 _¬gvec [6] = ()( ¬g6 ); \ 799 _¬gvec [7] = ()( ¬g7 ); \ 800 __asm__ volatile( \ 809 VALGRIND_CALL_NOREDIR_EAX \ 811 : "÷" ( _»s ) \ 812 : "a" (& _¬gvec [0]) \ 813 : "cc", "memÜy", __CALLER_SAVED_REGS \ 815 lv® = ( `__ty³of__ Öv®)è _»s ; \ 816 } 0) ) 818  #CALL_FN_W_8W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 819 ¬g7 , ¬g8 ) \ 821 vÞ©ž OrigFn _Üig = ( Üig ); \ 822 vÞ©ž _¬gvec [9]; \ 823 vÞ©ž _»s ; \ 824 _¬gvec [0] = () _Üig . Äaddr ; \ 825 _¬gvec [1] = ()( ¬g1 ); \ 826 _¬gvec [2] = ()( ¬g2 ); \ 827 _¬gvec [3] = ()( ¬g3 ); \ 828 _¬gvec [4] = ()( ¬g4 ); \ 829 _¬gvec [5] = ()( ¬g5 ); \ 830 _¬gvec [6] = ()( ¬g6 ); \ 831 _¬gvec [7] = ()( ¬g7 ); \ 832 _¬gvec [8] = ()( ¬g8 ); \ 833 __asm__ volatile( \ 843 VALGRIND_CALL_NOREDIR_EAX \ 845 : "÷" ( _»s ) \ 846 : "a" (& _¬gvec [0]) \ 847 : "cc", "memÜy", __CALLER_SAVED_REGS \ 849 lv® = ( `__ty³of__ Öv®)è _»s ; \ 850 } 0) ) 852  #CALL_FN_W_9W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 853 ¬g7 , ¬g8 , ¬g9 ) \ 855 vÞ©ž OrigFn _Üig = ( Üig ); \ 856 vÞ©ž _¬gvec [10]; \ 857 vÞ©ž _»s ; \ 858 _¬gvec [0] = () _Üig . Äaddr ; \ 859 _¬gvec [1] = ()( ¬g1 ); \ 860 _¬gvec [2] = ()( ¬g2 ); \ 861 _¬gvec [3] = ()( ¬g3 ); \ 862 _¬gvec [4] = ()( ¬g4 ); \ 863 _¬gvec [5] = ()( ¬g5 ); \ 864 _¬gvec [6] = ()( ¬g6 ); \ 865 _¬gvec [7] = ()( ¬g7 ); \ 866 _¬gvec [8] = ()( ¬g8 ); \ 867 _¬gvec [9] = ()( ¬g9 ); \ 868 __asm__ volatile( \ 879 VALGRIND_CALL_NOREDIR_EAX \ 881 : "÷" ( _»s ) \ 882 : "a" (& _¬gvec [0]) \ 883 : "cc", "memÜy", __CALLER_SAVED_REGS \ 885 lv® = ( `__ty³of__ Öv®)è _»s ; \ 886 } 0) ) 888  #CALL_FN_W_10W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 889 ¬g7 , ¬g8 , ¬g9 , ¬g10 ) \ 891 vÞ©ž OrigFn _Üig = ( Üig ); \ 892 vÞ©ž _¬gvec [11]; \ 893 vÞ©ž _»s ; \ 894 _¬gvec [0] = () _Üig . Äaddr ; \ 895 _¬gvec [1] = ()( ¬g1 ); \ 896 _¬gvec [2] = ()( ¬g2 ); \ 897 _¬gvec [3] = ()( ¬g3 ); \ 898 _¬gvec [4] = ()( ¬g4 ); \ 899 _¬gvec [5] = ()( ¬g5 ); \ 900 _¬gvec [6] = ()( ¬g6 ); \ 901 _¬gvec [7] = ()( ¬g7 ); \ 902 _¬gvec [8] = ()( ¬g8 ); \ 903 _¬gvec [9] = ()( ¬g9 ); \ 904 _¬gvec [10] = ()( ¬g10 ); \ 905 __asm__ volatile( \ 917 VALGRIND_CALL_NOREDIR_EAX \ 919 : "÷" ( _»s ) \ 920 : "a" (& _¬gvec [0]) \ 921 : "cc", "memÜy", __CALLER_SAVED_REGS \ 923 lv® = ( `__ty³of__ Öv®)è _»s ; \ 924 } 0) ) 926  #CALL_FN_W_11W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , \ 927 ¬g6 , ¬g7 , ¬g8 , ¬g9 , ¬g10 , \ 928 ¬g11 ) \ 930 vÞ©ž OrigFn _Üig = ( Üig ); \ 931 vÞ©ž _¬gvec [12]; \ 932 vÞ©ž _»s ; \ 933 _¬gvec [0] = () _Üig . Äaddr ; \ 934 _¬gvec [1] = ()( ¬g1 ); \ 935 _¬gvec [2] = ()( ¬g2 ); \ 936 _¬gvec [3] = ()( ¬g3 ); \ 937 _¬gvec [4] = ()( ¬g4 ); \ 938 _¬gvec [5] = ()( ¬g5 ); \ 939 _¬gvec [6] = ()( ¬g6 ); \ 940 _¬gvec [7] = ()( ¬g7 ); \ 941 _¬gvec [8] = ()( ¬g8 ); \ 942 _¬gvec [9] = ()( ¬g9 ); \ 943 _¬gvec [10] = ()( ¬g10 ); \ 944 _¬gvec [11] = ()( ¬g11 ); \ 945 __asm__ volatile( \ 958 VALGRIND_CALL_NOREDIR_EAX \ 960 : "÷" ( _»s ) \ 961 : "a" (& _¬gvec [0]) \ 962 : "cc", "memÜy", __CALLER_SAVED_REGS \ 964 lv® = ( `__ty³of__ Öv®)è _»s ; \ 965 } 0) ) 967  #CALL_FN_W_12W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , \ 968 ¬g6 , ¬g7 , ¬g8 , ¬g9 , ¬g10 , \ 969 ¬g11 , ¬g12 ) \ 971 vÞ©ž OrigFn _Üig = ( Üig ); \ 972 vÞ©ž _¬gvec [13]; \ 973 vÞ©ž _»s ; \ 974 _¬gvec [0] = () _Üig . Äaddr ; \ 975 _¬gvec [1] = ()( ¬g1 ); \ 976 _¬gvec [2] = ()( ¬g2 ); \ 977 _¬gvec [3] = ()( ¬g3 ); \ 978 _¬gvec [4] = ()( ¬g4 ); \ 979 _¬gvec [5] = ()( ¬g5 ); \ 980 _¬gvec [6] = ()( ¬g6 ); \ 981 _¬gvec [7] = ()( ¬g7 ); \ 982 _¬gvec [8] = ()( ¬g8 ); \ 983 _¬gvec [9] = ()( ¬g9 ); \ 984 _¬gvec [10] = ()( ¬g10 ); \ 985 _¬gvec [11] = ()( ¬g11 ); \ 986 _¬gvec [12] = ()( ¬g12 ); \ 987 __asm__ volatile( \ 1001 VALGRIND_CALL_NOREDIR_EAX \ 1003 : "÷" ( _»s ) \ 1004 : "a" (& _¬gvec [0]) \ 1005 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1007 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1008 } 0) ) 1014 #ià defšed ( PLAT_amd64_lšux ) 1019  #__CALLER_SAVED_REGS "rcx", "rdx", "rsi", \ 1020 "rdi", "r8", "r9", "r10", "r11" ) 1046  #CALL_FN_W_v ( lv® , Üig ) \ 1048 vÞ©ž OrigFn _Üig = ( Üig ); \ 1049 vÞ©ž _¬gvec [1]; \ 1050 vÞ©ž _»s ; \ 1051 _¬gvec [0] = () _Üig . Äaddr ; \ 1052 __asm__ volatile( \ 1055 VALGRIND_CALL_NOREDIR_RAX \ 1057 : "÷" ( _»s ) \ 1058 : "a" (& _¬gvec [0]) \ 1059 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1061 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1062 } 0) ) 1064  #CALL_FN_W_W ( lv® , Üig , ¬g1 ) \ 1066 vÞ©ž OrigFn _Üig = ( Üig ); \ 1067 vÞ©ž _¬gvec [2]; \ 1068 vÞ©ž _»s ; \ 1069 _¬gvec [0] = () _Üig . Äaddr ; \ 1070 _¬gvec [1] = ()( ¬g1 ); \ 1071 __asm__ volatile( \ 1075 VALGRIND_CALL_NOREDIR_RAX \ 1077 : "÷" ( _»s ) \ 1078 : "a" (& _¬gvec [0]) \ 1079 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1081 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1082 } 0) ) 1084  #CALL_FN_W_WW ( lv® , Üig , ¬g1 , ¬g2 ) \ 1086 vÞ©ž OrigFn _Üig = ( Üig ); \ 1087 vÞ©ž _¬gvec [3]; \ 1088 vÞ©ž _»s ; \ 1089 _¬gvec [0] = () _Üig . Äaddr ; \ 1090 _¬gvec [1] = ()( ¬g1 ); \ 1091 _¬gvec [2] = ()( ¬g2 ); \ 1092 __asm__ volatile( \ 1097 VALGRIND_CALL_NOREDIR_RAX \ 1099 : "÷" ( _»s ) \ 1100 : "a" (& _¬gvec [0]) \ 1101 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1103 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1104 } 0) ) 1106  #CALL_FN_W_WWW ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 ) \ 1108 vÞ©ž OrigFn _Üig = ( Üig ); \ 1109 vÞ©ž _¬gvec [4]; \ 1110 vÞ©ž _»s ; \ 1111 _¬gvec [0] = () _Üig . Äaddr ; \ 1112 _¬gvec [1] = ()( ¬g1 ); \ 1113 _¬gvec [2] = ()( ¬g2 ); \ 1114 _¬gvec [3] = ()( ¬g3 ); \ 1115 __asm__ volatile( \ 1121 VALGRIND_CALL_NOREDIR_RAX \ 1123 : "÷" ( _»s ) \ 1124 : "a" (& _¬gvec [0]) \ 1125 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1127 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1128 } 0) ) 1130  #CALL_FN_W_WWWW ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 ) \ 1132 vÞ©ž OrigFn _Üig = ( Üig ); \ 1133 vÞ©ž _¬gvec [5]; \ 1134 vÞ©ž _»s ; \ 1135 _¬gvec [0] = () _Üig . Äaddr ; \ 1136 _¬gvec [1] = ()( ¬g1 ); \ 1137 _¬gvec [2] = ()( ¬g2 ); \ 1138 _¬gvec [3] = ()( ¬g3 ); \ 1139 _¬gvec [4] = ()( ¬g4 ); \ 1140 __asm__ volatile( \ 1147 VALGRIND_CALL_NOREDIR_RAX \ 1149 : "÷" ( _»s ) \ 1150 : "a" (& _¬gvec [0]) \ 1151 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1153 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1154 } 0) ) 1156  #CALL_FN_W_5W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 ) \ 1158 vÞ©ž OrigFn _Üig = ( Üig ); \ 1159 vÞ©ž _¬gvec [6]; \ 1160 vÞ©ž _»s ; \ 1161 _¬gvec [0] = () _Üig . Äaddr ; \ 1162 _¬gvec [1] = ()( ¬g1 ); \ 1163 _¬gvec [2] = ()( ¬g2 ); \ 1164 _¬gvec [3] = ()( ¬g3 ); \ 1165 _¬gvec [4] = ()( ¬g4 ); \ 1166 _¬gvec [5] = ()( ¬g5 ); \ 1167 __asm__ volatile( \ 1175 VALGRIND_CALL_NOREDIR_RAX \ 1177 : "÷" ( _»s ) \ 1178 : "a" (& _¬gvec [0]) \ 1179 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1181 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1182 } 0) ) 1184  #CALL_FN_W_6W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 ) \ 1186 vÞ©ž OrigFn _Üig = ( Üig ); \ 1187 vÞ©ž _¬gvec [7]; \ 1188 vÞ©ž _»s ; \ 1189 _¬gvec [0] = () _Üig . Äaddr ; \ 1190 _¬gvec [1] = ()( ¬g1 ); \ 1191 _¬gvec [2] = ()( ¬g2 ); \ 1192 _¬gvec [3] = ()( ¬g3 ); \ 1193 _¬gvec [4] = ()( ¬g4 ); \ 1194 _¬gvec [5] = ()( ¬g5 ); \ 1195 _¬gvec [6] = ()( ¬g6 ); \ 1196 __asm__ volatile( \ 1206 VALGRIND_CALL_NOREDIR_RAX \ 1207 : "÷" ( _»s ) \ 1208 : "a" (& _¬gvec [0]) \ 1209 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1211 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1212 } 0) ) 1214  #CALL_FN_W_7W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 1215 ¬g7 ) \ 1217 vÞ©ž OrigFn _Üig = ( Üig ); \ 1218 vÞ©ž _¬gvec [8]; \ 1219 vÞ©ž _»s ; \ 1220 _¬gvec [0] = () _Üig . Äaddr ; \ 1221 _¬gvec [1] = ()( ¬g1 ); \ 1222 _¬gvec [2] = ()( ¬g2 ); \ 1223 _¬gvec [3] = ()( ¬g3 ); \ 1224 _¬gvec [4] = ()( ¬g4 ); \ 1225 _¬gvec [5] = ()( ¬g5 ); \ 1226 _¬gvec [6] = ()( ¬g6 ); \ 1227 _¬gvec [7] = ()( ¬g7 ); \ 1228 __asm__ volatile( \ 1238 VALGRIND_CALL_NOREDIR_RAX \ 1241 : "÷" ( _»s ) \ 1242 : "a" (& _¬gvec [0]) \ 1243 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1245 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1246 } 0) ) 1248  #CALL_FN_W_8W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 1249 ¬g7 , ¬g8 ) \ 1251 vÞ©ž OrigFn _Üig = ( Üig ); \ 1252 vÞ©ž _¬gvec [9]; \ 1253 vÞ©ž _»s ; \ 1254 _¬gvec [0] = () _Üig . Äaddr ; \ 1255 _¬gvec [1] = ()( ¬g1 ); \ 1256 _¬gvec [2] = ()( ¬g2 ); \ 1257 _¬gvec [3] = ()( ¬g3 ); \ 1258 _¬gvec [4] = ()( ¬g4 ); \ 1259 _¬gvec [5] = ()( ¬g5 ); \ 1260 _¬gvec [6] = ()( ¬g6 ); \ 1261 _¬gvec [7] = ()( ¬g7 ); \ 1262 _¬gvec [8] = ()( ¬g8 ); \ 1263 __asm__ volatile( \ 1274 VALGRIND_CALL_NOREDIR_RAX \ 1277 : "÷" ( _»s ) \ 1278 : "a" (& _¬gvec [0]) \ 1279 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1281 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1282 } 0) ) 1284  #CALL_FN_W_9W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 1285 ¬g7 , ¬g8 , ¬g9 ) \ 1287 vÞ©ž OrigFn _Üig = ( Üig ); \ 1288 vÞ©ž _¬gvec [10]; \ 1289 vÞ©ž _»s ; \ 1290 _¬gvec [0] = () _Üig . Äaddr ; \ 1291 _¬gvec [1] = ()( ¬g1 ); \ 1292 _¬gvec [2] = ()( ¬g2 ); \ 1293 _¬gvec [3] = ()( ¬g3 ); \ 1294 _¬gvec [4] = ()( ¬g4 ); \ 1295 _¬gvec [5] = ()( ¬g5 ); \ 1296 _¬gvec [6] = ()( ¬g6 ); \ 1297 _¬gvec [7] = ()( ¬g7 ); \ 1298 _¬gvec [8] = ()( ¬g8 ); \ 1299 _¬gvec [9] = ()( ¬g9 ); \ 1300 __asm__ volatile( \ 1312 VALGRIND_CALL_NOREDIR_RAX \ 1315 : "÷" ( _»s ) \ 1316 : "a" (& _¬gvec [0]) \ 1317 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1319 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1320 } 0) ) 1322  #CALL_FN_W_10W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 1323 ¬g7 , ¬g8 , ¬g9 , ¬g10 ) \ 1325 vÞ©ž OrigFn _Üig = ( Üig ); \ 1326 vÞ©ž _¬gvec [11]; \ 1327 vÞ©ž _»s ; \ 1328 _¬gvec [0] = () _Üig . Äaddr ; \ 1329 _¬gvec [1] = ()( ¬g1 ); \ 1330 _¬gvec [2] = ()( ¬g2 ); \ 1331 _¬gvec [3] = ()( ¬g3 ); \ 1332 _¬gvec [4] = ()( ¬g4 ); \ 1333 _¬gvec [5] = ()( ¬g5 ); \ 1334 _¬gvec [6] = ()( ¬g6 ); \ 1335 _¬gvec [7] = ()( ¬g7 ); \ 1336 _¬gvec [8] = ()( ¬g8 ); \ 1337 _¬gvec [9] = ()( ¬g9 ); \ 1338 _¬gvec [10] = ()( ¬g10 ); \ 1339 __asm__ volatile( \ 1352 VALGRIND_CALL_NOREDIR_RAX \ 1355 : "÷" ( _»s ) \ 1356 : "a" (& _¬gvec [0]) \ 1357 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1359 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1360 } 0) ) 1362  #CALL_FN_W_11W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 1363 ¬g7 , ¬g8 , ¬g9 , ¬g10 , ¬g11 ) \ 1365 vÞ©ž OrigFn _Üig = ( Üig ); \ 1366 vÞ©ž _¬gvec [12]; \ 1367 vÞ©ž _»s ; \ 1368 _¬gvec [0] = () _Üig . Äaddr ; \ 1369 _¬gvec [1] = ()( ¬g1 ); \ 1370 _¬gvec [2] = ()( ¬g2 ); \ 1371 _¬gvec [3] = ()( ¬g3 ); \ 1372 _¬gvec [4] = ()( ¬g4 ); \ 1373 _¬gvec [5] = ()( ¬g5 ); \ 1374 _¬gvec [6] = ()( ¬g6 ); \ 1375 _¬gvec [7] = ()( ¬g7 ); \ 1376 _¬gvec [8] = ()( ¬g8 ); \ 1377 _¬gvec [9] = ()( ¬g9 ); \ 1378 _¬gvec [10] = ()( ¬g10 ); \ 1379 _¬gvec [11] = ()( ¬g11 ); \ 1380 __asm__ volatile( \ 1394 VALGRIND_CALL_NOREDIR_RAX \ 1397 : "÷" ( _»s ) \ 1398 : "a" (& _¬gvec [0]) \ 1399 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1401 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1402 } 0) ) 1404  #CALL_FN_W_12W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 1405 ¬g7 , ¬g8 , ¬g9 , ¬g10 , ¬g11 , ¬g12 ) \ 1407 vÞ©ž OrigFn _Üig = ( Üig ); \ 1408 vÞ©ž _¬gvec [13]; \ 1409 vÞ©ž _»s ; \ 1410 _¬gvec [0] = () _Üig . Äaddr ; \ 1411 _¬gvec [1] = ()( ¬g1 ); \ 1412 _¬gvec [2] = ()( ¬g2 ); \ 1413 _¬gvec [3] = ()( ¬g3 ); \ 1414 _¬gvec [4] = ()( ¬g4 ); \ 1415 _¬gvec [5] = ()( ¬g5 ); \ 1416 _¬gvec [6] = ()( ¬g6 ); \ 1417 _¬gvec [7] = ()( ¬g7 ); \ 1418 _¬gvec [8] = ()( ¬g8 ); \ 1419 _¬gvec [9] = ()( ¬g9 ); \ 1420 _¬gvec [10] = ()( ¬g10 ); \ 1421 _¬gvec [11] = ()( ¬g11 ); \ 1422 _¬gvec [12] = ()( ¬g12 ); \ 1423 __asm__ volatile( \ 1438 VALGRIND_CALL_NOREDIR_RAX \ 1441 : "÷" ( _»s ) \ 1442 : "a" (& _¬gvec [0]) \ 1443 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1445 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1446 } 0) ) 1452 #ià defšed ( PLAT_µc32_lšux ) 1478  #__CALLER_SAVED_REGS \ 1482 "r11", "r12", "r13" ) 1487  #CALL_FN_W_v ( lv® , Üig ) \ 1489 vÞ©ž OrigFn _Üig = ( Üig ); \ 1490 vÞ©ž _¬gvec [1]; \ 1491 vÞ©ž _»s ; \ 1492 _¬gvec [0] = () _Üig . Äaddr ; \ 1493 __asm__ volatile( \ 1496 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1498 : "ô" ( _»s ) \ 1499 : "r" (& _¬gvec [0]) \ 1500 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1502 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1503 } 0) ) 1505  #CALL_FN_W_W ( lv® , Üig , ¬g1 ) \ 1507 vÞ©ž OrigFn _Üig = ( Üig ); \ 1508 vÞ©ž _¬gvec [2]; \ 1509 vÞ©ž _»s ; \ 1510 _¬gvec [0] = () _Üig . Äaddr ; \ 1511 _¬gvec [1] = () ¬g1 ; \ 1512 __asm__ volatile( \ 1516 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1518 : "ô" ( _»s ) \ 1519 : "r" (& _¬gvec [0]) \ 1520 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1522 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1523 } 0) ) 1525  #CALL_FN_W_WW ( lv® , Üig , ¬g1 , ¬g2 ) \ 1527 vÞ©ž OrigFn _Üig = ( Üig ); \ 1528 vÞ©ž _¬gvec [3]; \ 1529 vÞ©ž _»s ; \ 1530 _¬gvec [0] = () _Üig . Äaddr ; \ 1531 _¬gvec [1] = () ¬g1 ; \ 1532 _¬gvec [2] = () ¬g2 ; \ 1533 __asm__ volatile( \ 1538 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1540 : "ô" ( _»s ) \ 1541 : "r" (& _¬gvec [0]) \ 1542 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1544 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1545 } 0) ) 1547  #CALL_FN_W_WWW ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 ) \ 1549 vÞ©ž OrigFn _Üig = ( Üig ); \ 1550 vÞ©ž _¬gvec [4]; \ 1551 vÞ©ž _»s ; \ 1552 _¬gvec [0] = () _Üig . Äaddr ; \ 1553 _¬gvec [1] = () ¬g1 ; \ 1554 _¬gvec [2] = () ¬g2 ; \ 1555 _¬gvec [3] = () ¬g3 ; \ 1556 __asm__ volatile( \ 1562 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1564 : "ô" ( _»s ) \ 1565 : "r" (& _¬gvec [0]) \ 1566 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1568 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1569 } 0) ) 1571  #CALL_FN_W_WWWW ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 ) \ 1573 vÞ©ž OrigFn _Üig = ( Üig ); \ 1574 vÞ©ž _¬gvec [5]; \ 1575 vÞ©ž _»s ; \ 1576 _¬gvec [0] = () _Üig . Äaddr ; \ 1577 _¬gvec [1] = () ¬g1 ; \ 1578 _¬gvec [2] = () ¬g2 ; \ 1579 _¬gvec [3] = () ¬g3 ; \ 1580 _¬gvec [4] = () ¬g4 ; \ 1581 __asm__ volatile( \ 1588 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1590 : "ô" ( _»s ) \ 1591 : "r" (& _¬gvec [0]) \ 1592 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1594 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1595 } 0) ) 1597  #CALL_FN_W_5W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 ) \ 1599 vÞ©ž OrigFn _Üig = ( Üig ); \ 1600 vÞ©ž _¬gvec [6]; \ 1601 vÞ©ž _»s ; \ 1602 _¬gvec [0] = () _Üig . Äaddr ; \ 1603 _¬gvec [1] = () ¬g1 ; \ 1604 _¬gvec [2] = () ¬g2 ; \ 1605 _¬gvec [3] = () ¬g3 ; \ 1606 _¬gvec [4] = () ¬g4 ; \ 1607 _¬gvec [5] = () ¬g5 ; \ 1608 __asm__ volatile( \ 1616 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1618 : "ô" ( _»s ) \ 1619 : "r" (& _¬gvec [0]) \ 1620 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1622 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1623 } 0) ) 1625  #CALL_FN_W_6W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 ) \ 1627 vÞ©ž OrigFn _Üig = ( Üig ); \ 1628 vÞ©ž _¬gvec [7]; \ 1629 vÞ©ž _»s ; \ 1630 _¬gvec [0] = () _Üig . Äaddr ; \ 1631 _¬gvec [1] = () ¬g1 ; \ 1632 _¬gvec [2] = () ¬g2 ; \ 1633 _¬gvec [3] = () ¬g3 ; \ 1634 _¬gvec [4] = () ¬g4 ; \ 1635 _¬gvec [5] = () ¬g5 ; \ 1636 _¬gvec [6] = () ¬g6 ; \ 1637 __asm__ volatile( \ 1646 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1648 : "ô" ( _»s ) \ 1649 : "r" (& _¬gvec [0]) \ 1650 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1652 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1653 } 0) ) 1655  #CALL_FN_W_7W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 1656 ¬g7 ) \ 1658 vÞ©ž OrigFn _Üig = ( Üig ); \ 1659 vÞ©ž _¬gvec [8]; \ 1660 vÞ©ž _»s ; \ 1661 _¬gvec [0] = () _Üig . Äaddr ; \ 1662 _¬gvec [1] = () ¬g1 ; \ 1663 _¬gvec [2] = () ¬g2 ; \ 1664 _¬gvec [3] = () ¬g3 ; \ 1665 _¬gvec [4] = () ¬g4 ; \ 1666 _¬gvec [5] = () ¬g5 ; \ 1667 _¬gvec [6] = () ¬g6 ; \ 1668 _¬gvec [7] = () ¬g7 ; \ 1669 __asm__ volatile( \ 1679 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1681 : "ô" ( _»s ) \ 1682 : "r" (& _¬gvec [0]) \ 1683 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1685 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1686 } 0) ) 1688  #CALL_FN_W_8W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 1689 ¬g7 , ¬g8 ) \ 1691 vÞ©ž OrigFn _Üig = ( Üig ); \ 1692 vÞ©ž _¬gvec [9]; \ 1693 vÞ©ž _»s ; \ 1694 _¬gvec [0] = () _Üig . Äaddr ; \ 1695 _¬gvec [1] = () ¬g1 ; \ 1696 _¬gvec [2] = () ¬g2 ; \ 1697 _¬gvec [3] = () ¬g3 ; \ 1698 _¬gvec [4] = () ¬g4 ; \ 1699 _¬gvec [5] = () ¬g5 ; \ 1700 _¬gvec [6] = () ¬g6 ; \ 1701 _¬gvec [7] = () ¬g7 ; \ 1702 _¬gvec [8] = () ¬g8 ; \ 1703 __asm__ volatile( \ 1714 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1716 : "ô" ( _»s ) \ 1717 : "r" (& _¬gvec [0]) \ 1718 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1720 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1721 } 0) ) 1723  #CALL_FN_W_9W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 1724 ¬g7 , ¬g8 , ¬g9 ) \ 1726 vÞ©ž OrigFn _Üig = ( Üig ); \ 1727 vÞ©ž _¬gvec [10]; \ 1728 vÞ©ž _»s ; \ 1729 _¬gvec [0] = () _Üig . Äaddr ; \ 1730 _¬gvec [1] = () ¬g1 ; \ 1731 _¬gvec [2] = () ¬g2 ; \ 1732 _¬gvec [3] = () ¬g3 ; \ 1733 _¬gvec [4] = () ¬g4 ; \ 1734 _¬gvec [5] = () ¬g5 ; \ 1735 _¬gvec [6] = () ¬g6 ; \ 1736 _¬gvec [7] = () ¬g7 ; \ 1737 _¬gvec [8] = () ¬g8 ; \ 1738 _¬gvec [9] = () ¬g9 ; \ 1739 __asm__ volatile( \ 1755 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1758 : "ô" ( _»s ) \ 1759 : "r" (& _¬gvec [0]) \ 1760 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1762 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1763 } 0) ) 1765  #CALL_FN_W_10W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 1766 ¬g7 , ¬g8 , ¬g9 , ¬g10 ) \ 1768 vÞ©ž OrigFn _Üig = ( Üig ); \ 1769 vÞ©ž _¬gvec [11]; \ 1770 vÞ©ž _»s ; \ 1771 _¬gvec [0] = () _Üig . Äaddr ; \ 1772 _¬gvec [1] = () ¬g1 ; \ 1773 _¬gvec [2] = () ¬g2 ; \ 1774 _¬gvec [3] = () ¬g3 ; \ 1775 _¬gvec [4] = () ¬g4 ; \ 1776 _¬gvec [5] = () ¬g5 ; \ 1777 _¬gvec [6] = () ¬g6 ; \ 1778 _¬gvec [7] = () ¬g7 ; \ 1779 _¬gvec [8] = () ¬g8 ; \ 1780 _¬gvec [9] = () ¬g9 ; \ 1781 _¬gvec [10] = () ¬g10 ; \ 1782 __asm__ volatile( \ 1801 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1804 : "ô" ( _»s ) \ 1805 : "r" (& _¬gvec [0]) \ 1806 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1808 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1809 } 0) ) 1811  #CALL_FN_W_11W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 1812 ¬g7 , ¬g8 , ¬g9 , ¬g10 , ¬g11 ) \ 1814 vÞ©ž OrigFn _Üig = ( Üig ); \ 1815 vÞ©ž _¬gvec [12]; \ 1816 vÞ©ž _»s ; \ 1817 _¬gvec [0] = () _Üig . Äaddr ; \ 1818 _¬gvec [1] = () ¬g1 ; \ 1819 _¬gvec [2] = () ¬g2 ; \ 1820 _¬gvec [3] = () ¬g3 ; \ 1821 _¬gvec [4] = () ¬g4 ; \ 1822 _¬gvec [5] = () ¬g5 ; \ 1823 _¬gvec [6] = () ¬g6 ; \ 1824 _¬gvec [7] = () ¬g7 ; \ 1825 _¬gvec [8] = () ¬g8 ; \ 1826 _¬gvec [9] = () ¬g9 ; \ 1827 _¬gvec [10] = () ¬g10 ; \ 1828 _¬gvec [11] = () ¬g11 ; \ 1829 __asm__ volatile( \ 1851 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1854 : "ô" ( _»s ) \ 1855 : "r" (& _¬gvec [0]) \ 1856 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1858 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1859 } 0) ) 1861  #CALL_FN_W_12W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 1862 ¬g7 , ¬g8 , ¬g9 , ¬g10 , ¬g11 , ¬g12 ) \ 1864 vÞ©ž OrigFn _Üig = ( Üig ); \ 1865 vÞ©ž _¬gvec [13]; \ 1866 vÞ©ž _»s ; \ 1867 _¬gvec [0] = () _Üig . Äaddr ; \ 1868 _¬gvec [1] = () ¬g1 ; \ 1869 _¬gvec [2] = () ¬g2 ; \ 1870 _¬gvec [3] = () ¬g3 ; \ 1871 _¬gvec [4] = () ¬g4 ; \ 1872 _¬gvec [5] = () ¬g5 ; \ 1873 _¬gvec [6] = () ¬g6 ; \ 1874 _¬gvec [7] = () ¬g7 ; \ 1875 _¬gvec [8] = () ¬g8 ; \ 1876 _¬gvec [9] = () ¬g9 ; \ 1877 _¬gvec [10] = () ¬g10 ; \ 1878 _¬gvec [11] = () ¬g11 ; \ 1879 _¬gvec [12] = () ¬g12 ; \ 1880 __asm__ volatile( \ 1905 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1908 : "ô" ( _»s ) \ 1909 : "r" (& _¬gvec [0]) \ 1910 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1912 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1913 } 0) ) 1919 #ià defšed ( PLAT_µc64_lšux ) 1924  #__CALLER_SAVED_REGS \ 1928 "r11", "r12", "r13" ) 1933  #CALL_FN_W_v ( lv® , Üig ) \ 1935 vÞ©ž OrigFn _Üig = ( Üig ); \ 1936 vÞ©ž _¬gvec [3+0]; \ 1937 vÞ©ž _»s ; \ 1939 _¬gvec [1] = () _Üig . r2 ; \ 1940 _¬gvec [2] = () _Üig . Äaddr ; \ 1941 __asm__ volatile( \ 1946 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1950 : "ô" ( _»s ) \ 1951 : "r" (& _¬gvec [2]) \ 1952 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1954 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1955 } 0) ) 1957  #CALL_FN_W_W ( lv® , Üig , ¬g1 ) \ 1959 vÞ©ž OrigFn _Üig = ( Üig ); \ 1960 vÞ©ž _¬gvec [3+1]; \ 1961 vÞ©ž _»s ; \ 1963 _¬gvec [1] = () _Üig . r2 ; \ 1964 _¬gvec [2] = () _Üig . Äaddr ; \ 1965 _¬gvec [2+1] = () ¬g1 ; \ 1966 __asm__ volatile( \ 1972 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 1976 : "ô" ( _»s ) \ 1977 : "r" (& _¬gvec [2]) \ 1978 : "cc", "memÜy", __CALLER_SAVED_REGS \ 1980 lv® = ( `__ty³of__ Öv®)è _»s ; \ 1981 } 0) ) 1983  #CALL_FN_W_WW ( lv® , Üig , ¬g1 , ¬g2 ) \ 1985 vÞ©ž OrigFn _Üig = ( Üig ); \ 1986 vÞ©ž _¬gvec [3+2]; \ 1987 vÞ©ž _»s ; \ 1989 _¬gvec [1] = () _Üig . r2 ; \ 1990 _¬gvec [2] = () _Üig . Äaddr ; \ 1991 _¬gvec [2+1] = () ¬g1 ; \ 1992 _¬gvec [2+2] = () ¬g2 ; \ 1993 __asm__ volatile( \ 2000 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2004 : "ô" ( _»s ) \ 2005 : "r" (& _¬gvec [2]) \ 2006 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2008 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2009 } 0) ) 2011  #CALL_FN_W_WWW ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 ) \ 2013 vÞ©ž OrigFn _Üig = ( Üig ); \ 2014 vÞ©ž _¬gvec [3+3]; \ 2015 vÞ©ž _»s ; \ 2017 _¬gvec [1] = () _Üig . r2 ; \ 2018 _¬gvec [2] = () _Üig . Äaddr ; \ 2019 _¬gvec [2+1] = () ¬g1 ; \ 2020 _¬gvec [2+2] = () ¬g2 ; \ 2021 _¬gvec [2+3] = () ¬g3 ; \ 2022 __asm__ volatile( \ 2030 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2034 : "ô" ( _»s ) \ 2035 : "r" (& _¬gvec [2]) \ 2036 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2038 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2039 } 0) ) 2041  #CALL_FN_W_WWWW ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 ) \ 2043 vÞ©ž OrigFn _Üig = ( Üig ); \ 2044 vÞ©ž _¬gvec [3+4]; \ 2045 vÞ©ž _»s ; \ 2047 _¬gvec [1] = () _Üig . r2 ; \ 2048 _¬gvec [2] = () _Üig . Äaddr ; \ 2049 _¬gvec [2+1] = () ¬g1 ; \ 2050 _¬gvec [2+2] = () ¬g2 ; \ 2051 _¬gvec [2+3] = () ¬g3 ; \ 2052 _¬gvec [2+4] = () ¬g4 ; \ 2053 __asm__ volatile( \ 2062 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2066 : "ô" ( _»s ) \ 2067 : "r" (& _¬gvec [2]) \ 2068 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2070 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2071 } 0) ) 2073  #CALL_FN_W_5W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 ) \ 2075 vÞ©ž OrigFn _Üig = ( Üig ); \ 2076 vÞ©ž _¬gvec [3+5]; \ 2077 vÞ©ž _»s ; \ 2079 _¬gvec [1] = () _Üig . r2 ; \ 2080 _¬gvec [2] = () _Üig . Äaddr ; \ 2081 _¬gvec [2+1] = () ¬g1 ; \ 2082 _¬gvec [2+2] = () ¬g2 ; \ 2083 _¬gvec [2+3] = () ¬g3 ; \ 2084 _¬gvec [2+4] = () ¬g4 ; \ 2085 _¬gvec [2+5] = () ¬g5 ; \ 2086 __asm__ volatile( \ 2096 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2100 : "ô" ( _»s ) \ 2101 : "r" (& _¬gvec [2]) \ 2102 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2104 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2105 } 0) ) 2107  #CALL_FN_W_6W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 ) \ 2109 vÞ©ž OrigFn _Üig = ( Üig ); \ 2110 vÞ©ž _¬gvec [3+6]; \ 2111 vÞ©ž _»s ; \ 2113 _¬gvec [1] = () _Üig . r2 ; \ 2114 _¬gvec [2] = () _Üig . Äaddr ; \ 2115 _¬gvec [2+1] = () ¬g1 ; \ 2116 _¬gvec [2+2] = () ¬g2 ; \ 2117 _¬gvec [2+3] = () ¬g3 ; \ 2118 _¬gvec [2+4] = () ¬g4 ; \ 2119 _¬gvec [2+5] = () ¬g5 ; \ 2120 _¬gvec [2+6] = () ¬g6 ; \ 2121 __asm__ volatile( \ 2132 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2136 : "ô" ( _»s ) \ 2137 : "r" (& _¬gvec [2]) \ 2138 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2140 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2141 } 0) ) 2143  #CALL_FN_W_7W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 2144 ¬g7 ) \ 2146 vÞ©ž OrigFn _Üig = ( Üig ); \ 2147 vÞ©ž _¬gvec [3+7]; \ 2148 vÞ©ž _»s ; \ 2150 _¬gvec [1] = () _Üig . r2 ; \ 2151 _¬gvec [2] = () _Üig . Äaddr ; \ 2152 _¬gvec [2+1] = () ¬g1 ; \ 2153 _¬gvec [2+2] = () ¬g2 ; \ 2154 _¬gvec [2+3] = () ¬g3 ; \ 2155 _¬gvec [2+4] = () ¬g4 ; \ 2156 _¬gvec [2+5] = () ¬g5 ; \ 2157 _¬gvec [2+6] = () ¬g6 ; \ 2158 _¬gvec [2+7] = () ¬g7 ; \ 2159 __asm__ volatile( \ 2171 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2175 : "ô" ( _»s ) \ 2176 : "r" (& _¬gvec [2]) \ 2177 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2179 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2180 } 0) ) 2182  #CALL_FN_W_8W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 2183 ¬g7 , ¬g8 ) \ 2185 vÞ©ž OrigFn _Üig = ( Üig ); \ 2186 vÞ©ž _¬gvec [3+8]; \ 2187 vÞ©ž _»s ; \ 2189 _¬gvec [1] = () _Üig . r2 ; \ 2190 _¬gvec [2] = () _Üig . Äaddr ; \ 2191 _¬gvec [2+1] = () ¬g1 ; \ 2192 _¬gvec [2+2] = () ¬g2 ; \ 2193 _¬gvec [2+3] = () ¬g3 ; \ 2194 _¬gvec [2+4] = () ¬g4 ; \ 2195 _¬gvec [2+5] = () ¬g5 ; \ 2196 _¬gvec [2+6] = () ¬g6 ; \ 2197 _¬gvec [2+7] = () ¬g7 ; \ 2198 _¬gvec [2+8] = () ¬g8 ; \ 2199 __asm__ volatile( \ 2212 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2216 : "ô" ( _»s ) \ 2217 : "r" (& _¬gvec [2]) \ 2218 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2220 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2221 } 0) ) 2223  #CALL_FN_W_9W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 2224 ¬g7 , ¬g8 , ¬g9 ) \ 2226 vÞ©ž OrigFn _Üig = ( Üig ); \ 2227 vÞ©ž _¬gvec [3+9]; \ 2228 vÞ©ž _»s ; \ 2230 _¬gvec [1] = () _Üig . r2 ; \ 2231 _¬gvec [2] = () _Üig . Äaddr ; \ 2232 _¬gvec [2+1] = () ¬g1 ; \ 2233 _¬gvec [2+2] = () ¬g2 ; \ 2234 _¬gvec [2+3] = () ¬g3 ; \ 2235 _¬gvec [2+4] = () ¬g4 ; \ 2236 _¬gvec [2+5] = () ¬g5 ; \ 2237 _¬gvec [2+6] = () ¬g6 ; \ 2238 _¬gvec [2+7] = () ¬g7 ; \ 2239 _¬gvec [2+8] = () ¬g8 ; \ 2240 _¬gvec [2+9] = () ¬g9 ; \ 2241 __asm__ volatile( \ 2259 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2264 : "ô" ( _»s ) \ 2265 : "r" (& _¬gvec [2]) \ 2266 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2268 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2269 } 0) ) 2271  #CALL_FN_W_10W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 2272 ¬g7 , ¬g8 , ¬g9 , ¬g10 ) \ 2274 vÞ©ž OrigFn _Üig = ( Üig ); \ 2275 vÞ©ž _¬gvec [3+10]; \ 2276 vÞ©ž _»s ; \ 2278 _¬gvec [1] = () _Üig . r2 ; \ 2279 _¬gvec [2] = () _Üig . Äaddr ; \ 2280 _¬gvec [2+1] = () ¬g1 ; \ 2281 _¬gvec [2+2] = () ¬g2 ; \ 2282 _¬gvec [2+3] = () ¬g3 ; \ 2283 _¬gvec [2+4] = () ¬g4 ; \ 2284 _¬gvec [2+5] = () ¬g5 ; \ 2285 _¬gvec [2+6] = () ¬g6 ; \ 2286 _¬gvec [2+7] = () ¬g7 ; \ 2287 _¬gvec [2+8] = () ¬g8 ; \ 2288 _¬gvec [2+9] = () ¬g9 ; \ 2289 _¬gvec [2+10] = () ¬g10 ; \ 2290 __asm__ volatile( \ 2311 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2316 : "ô" ( _»s ) \ 2317 : "r" (& _¬gvec [2]) \ 2318 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2320 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2321 } 0) ) 2323  #CALL_FN_W_11W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 2324 ¬g7 , ¬g8 , ¬g9 , ¬g10 , ¬g11 ) \ 2326 vÞ©ž OrigFn _Üig = ( Üig ); \ 2327 vÞ©ž _¬gvec [3+11]; \ 2328 vÞ©ž _»s ; \ 2330 _¬gvec [1] = () _Üig . r2 ; \ 2331 _¬gvec [2] = () _Üig . Äaddr ; \ 2332 _¬gvec [2+1] = () ¬g1 ; \ 2333 _¬gvec [2+2] = () ¬g2 ; \ 2334 _¬gvec [2+3] = () ¬g3 ; \ 2335 _¬gvec [2+4] = () ¬g4 ; \ 2336 _¬gvec [2+5] = () ¬g5 ; \ 2337 _¬gvec [2+6] = () ¬g6 ; \ 2338 _¬gvec [2+7] = () ¬g7 ; \ 2339 _¬gvec [2+8] = () ¬g8 ; \ 2340 _¬gvec [2+9] = () ¬g9 ; \ 2341 _¬gvec [2+10] = () ¬g10 ; \ 2342 _¬gvec [2+11] = () ¬g11 ; \ 2343 __asm__ volatile( \ 2367 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2372 : "ô" ( _»s ) \ 2373 : "r" (& _¬gvec [2]) \ 2374 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2376 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2377 } 0) ) 2379  #CALL_FN_W_12W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 2380 ¬g7 , ¬g8 , ¬g9 , ¬g10 , ¬g11 , ¬g12 ) \ 2382 vÞ©ž OrigFn _Üig = ( Üig ); \ 2383 vÞ©ž _¬gvec [3+12]; \ 2384 vÞ©ž _»s ; \ 2386 _¬gvec [1] = () _Üig . r2 ; \ 2387 _¬gvec [2] = () _Üig . Äaddr ; \ 2388 _¬gvec [2+1] = () ¬g1 ; \ 2389 _¬gvec [2+2] = () ¬g2 ; \ 2390 _¬gvec [2+3] = () ¬g3 ; \ 2391 _¬gvec [2+4] = () ¬g4 ; \ 2392 _¬gvec [2+5] = () ¬g5 ; \ 2393 _¬gvec [2+6] = () ¬g6 ; \ 2394 _¬gvec [2+7] = () ¬g7 ; \ 2395 _¬gvec [2+8] = () ¬g8 ; \ 2396 _¬gvec [2+9] = () ¬g9 ; \ 2397 _¬gvec [2+10] = () ¬g10 ; \ 2398 _¬gvec [2+11] = () ¬g11 ; \ 2399 _¬gvec [2+12] = () ¬g12 ; \ 2400 __asm__ volatile( \ 2427 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2432 : "ô" ( _»s ) \ 2433 : "r" (& _¬gvec [2]) \ 2434 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2436 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2437 } 0) ) 2443 #ià defšed ( PLAT_µc32_aix5 ) 2448  #__CALLER_SAVED_REGS \ 2452 "r11", "r12", "r13" ) 2457  #VG_EXPAND_FRAME_BY_Œashes_r3 ( _n_ä ) \ 2460 "¡w 3,0(1)\n\t" ) 2462  #VG_CONTRACT_FRAME_BY ( _n_ä ) \ 2463 "add˜1,1," #_n_ä "\n\t" ) 2468  #CALL_FN_W_v ( lv® , Üig ) \ 2470 vÞ©ž OrigFn _Üig = ( Üig ); \ 2471 vÞ©ž _¬gvec [3+0]; \ 2472 vÞ©ž _»s ; \ 2474 _¬gvec [1] = () _Üig . r2 ; \ 2475 _¬gvec [2] = () _Üig . Äaddr ; \ 2476 __asm__ volatile( \ 2478 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2482 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2486 `VG_CONTRACT_FRAME_BY (512) \ 2487 : "ô" ( _»s ) \ 2488 : "r" (& _¬gvec [2]) \ 2489 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2491 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2492 } 0) ) 2494  #CALL_FN_W_W ( lv® , Üig , ¬g1 ) \ 2496 vÞ©ž OrigFn _Üig = ( Üig ); \ 2497 vÞ©ž _¬gvec [3+1]; \ 2498 vÞ©ž _»s ; \ 2500 _¬gvec [1] = () _Üig . r2 ; \ 2501 _¬gvec [2] = () _Üig . Äaddr ; \ 2502 _¬gvec [2+1] = () ¬g1 ; \ 2503 __asm__ volatile( \ 2505 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2510 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2514 `VG_CONTRACT_FRAME_BY (512) \ 2515 : "ô" ( _»s ) \ 2516 : "r" (& _¬gvec [2]) \ 2517 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2519 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2520 } 0) ) 2522  #CALL_FN_W_WW ( lv® , Üig , ¬g1 , ¬g2 ) \ 2524 vÞ©ž OrigFn _Üig = ( Üig ); \ 2525 vÞ©ž _¬gvec [3+2]; \ 2526 vÞ©ž _»s ; \ 2528 _¬gvec [1] = () _Üig . r2 ; \ 2529 _¬gvec [2] = () _Üig . Äaddr ; \ 2530 _¬gvec [2+1] = () ¬g1 ; \ 2531 _¬gvec [2+2] = () ¬g2 ; \ 2532 __asm__ volatile( \ 2534 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2540 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2544 `VG_CONTRACT_FRAME_BY (512) \ 2545 : "ô" ( _»s ) \ 2546 : "r" (& _¬gvec [2]) \ 2547 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2549 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2550 } 0) ) 2552  #CALL_FN_W_WWW ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 ) \ 2554 vÞ©ž OrigFn _Üig = ( Üig ); \ 2555 vÞ©ž _¬gvec [3+3]; \ 2556 vÞ©ž _»s ; \ 2558 _¬gvec [1] = () _Üig . r2 ; \ 2559 _¬gvec [2] = () _Üig . Äaddr ; \ 2560 _¬gvec [2+1] = () ¬g1 ; \ 2561 _¬gvec [2+2] = () ¬g2 ; \ 2562 _¬gvec [2+3] = () ¬g3 ; \ 2563 __asm__ volatile( \ 2565 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2572 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2576 `VG_CONTRACT_FRAME_BY (512) \ 2577 : "ô" ( _»s ) \ 2578 : "r" (& _¬gvec [2]) \ 2579 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2581 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2582 } 0) ) 2584  #CALL_FN_W_WWWW ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 ) \ 2586 vÞ©ž OrigFn _Üig = ( Üig ); \ 2587 vÞ©ž _¬gvec [3+4]; \ 2588 vÞ©ž _»s ; \ 2590 _¬gvec [1] = () _Üig . r2 ; \ 2591 _¬gvec [2] = () _Üig . Äaddr ; \ 2592 _¬gvec [2+1] = () ¬g1 ; \ 2593 _¬gvec [2+2] = () ¬g2 ; \ 2594 _¬gvec [2+3] = () ¬g3 ; \ 2595 _¬gvec [2+4] = () ¬g4 ; \ 2596 __asm__ volatile( \ 2598 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2606 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2610 `VG_CONTRACT_FRAME_BY (512) \ 2611 : "ô" ( _»s ) \ 2612 : "r" (& _¬gvec [2]) \ 2613 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2615 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2616 } 0) ) 2618  #CALL_FN_W_5W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 ) \ 2620 vÞ©ž OrigFn _Üig = ( Üig ); \ 2621 vÞ©ž _¬gvec [3+5]; \ 2622 vÞ©ž _»s ; \ 2624 _¬gvec [1] = () _Üig . r2 ; \ 2625 _¬gvec [2] = () _Üig . Äaddr ; \ 2626 _¬gvec [2+1] = () ¬g1 ; \ 2627 _¬gvec [2+2] = () ¬g2 ; \ 2628 _¬gvec [2+3] = () ¬g3 ; \ 2629 _¬gvec [2+4] = () ¬g4 ; \ 2630 _¬gvec [2+5] = () ¬g5 ; \ 2631 __asm__ volatile( \ 2633 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2642 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2646 `VG_CONTRACT_FRAME_BY (512) \ 2647 : "ô" ( _»s ) \ 2648 : "r" (& _¬gvec [2]) \ 2649 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2651 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2652 } 0) ) 2654  #CALL_FN_W_6W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 ) \ 2656 vÞ©ž OrigFn _Üig = ( Üig ); \ 2657 vÞ©ž _¬gvec [3+6]; \ 2658 vÞ©ž _»s ; \ 2660 _¬gvec [1] = () _Üig . r2 ; \ 2661 _¬gvec [2] = () _Üig . Äaddr ; \ 2662 _¬gvec [2+1] = () ¬g1 ; \ 2663 _¬gvec [2+2] = () ¬g2 ; \ 2664 _¬gvec [2+3] = () ¬g3 ; \ 2665 _¬gvec [2+4] = () ¬g4 ; \ 2666 _¬gvec [2+5] = () ¬g5 ; \ 2667 _¬gvec [2+6] = () ¬g6 ; \ 2668 __asm__ volatile( \ 2670 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2680 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2684 `VG_CONTRACT_FRAME_BY (512) \ 2685 : "ô" ( _»s ) \ 2686 : "r" (& _¬gvec [2]) \ 2687 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2689 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2690 } 0) ) 2692  #CALL_FN_W_7W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 2693 ¬g7 ) \ 2695 vÞ©ž OrigFn _Üig = ( Üig ); \ 2696 vÞ©ž _¬gvec [3+7]; \ 2697 vÞ©ž _»s ; \ 2699 _¬gvec [1] = () _Üig . r2 ; \ 2700 _¬gvec [2] = () _Üig . Äaddr ; \ 2701 _¬gvec [2+1] = () ¬g1 ; \ 2702 _¬gvec [2+2] = () ¬g2 ; \ 2703 _¬gvec [2+3] = () ¬g3 ; \ 2704 _¬gvec [2+4] = () ¬g4 ; \ 2705 _¬gvec [2+5] = () ¬g5 ; \ 2706 _¬gvec [2+6] = () ¬g6 ; \ 2707 _¬gvec [2+7] = () ¬g7 ; \ 2708 __asm__ volatile( \ 2710 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2721 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2725 `VG_CONTRACT_FRAME_BY (512) \ 2726 : "ô" ( _»s ) \ 2727 : "r" (& _¬gvec [2]) \ 2728 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2730 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2731 } 0) ) 2733  #CALL_FN_W_8W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 2734 ¬g7 , ¬g8 ) \ 2736 vÞ©ž OrigFn _Üig = ( Üig ); \ 2737 vÞ©ž _¬gvec [3+8]; \ 2738 vÞ©ž _»s ; \ 2740 _¬gvec [1] = () _Üig . r2 ; \ 2741 _¬gvec [2] = () _Üig . Äaddr ; \ 2742 _¬gvec [2+1] = () ¬g1 ; \ 2743 _¬gvec [2+2] = () ¬g2 ; \ 2744 _¬gvec [2+3] = () ¬g3 ; \ 2745 _¬gvec [2+4] = () ¬g4 ; \ 2746 _¬gvec [2+5] = () ¬g5 ; \ 2747 _¬gvec [2+6] = () ¬g6 ; \ 2748 _¬gvec [2+7] = () ¬g7 ; \ 2749 _¬gvec [2+8] = () ¬g8 ; \ 2750 __asm__ volatile( \ 2752 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2764 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2768 `VG_CONTRACT_FRAME_BY (512) \ 2769 : "ô" ( _»s ) \ 2770 : "r" (& _¬gvec [2]) \ 2771 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2773 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2774 } 0) ) 2776  #CALL_FN_W_9W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 2777 ¬g7 , ¬g8 , ¬g9 ) \ 2779 vÞ©ž OrigFn _Üig = ( Üig ); \ 2780 vÞ©ž _¬gvec [3+9]; \ 2781 vÞ©ž _»s ; \ 2783 _¬gvec [1] = () _Üig . r2 ; \ 2784 _¬gvec [2] = () _Üig . Äaddr ; \ 2785 _¬gvec [2+1] = () ¬g1 ; \ 2786 _¬gvec [2+2] = () ¬g2 ; \ 2787 _¬gvec [2+3] = () ¬g3 ; \ 2788 _¬gvec [2+4] = () ¬g4 ; \ 2789 _¬gvec [2+5] = () ¬g5 ; \ 2790 _¬gvec [2+6] = () ¬g6 ; \ 2791 _¬gvec [2+7] = () ¬g7 ; \ 2792 _¬gvec [2+8] = () ¬g8 ; \ 2793 _¬gvec [2+9] = () ¬g9 ; \ 2794 __asm__ volatile( \ 2796 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2799 `VG_EXPAND_FRAME_BY_Œashes_r3 (64) \ 2813 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2817 `VG_CONTRACT_FRAME_BY (64) \ 2818 `VG_CONTRACT_FRAME_BY (512) \ 2819 : "ô" ( _»s ) \ 2820 : "r" (& _¬gvec [2]) \ 2821 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2823 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2824 } 0) ) 2826  #CALL_FN_W_10W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 2827 ¬g7 , ¬g8 , ¬g9 , ¬g10 ) \ 2829 vÞ©ž OrigFn _Üig = ( Üig ); \ 2830 vÞ©ž _¬gvec [3+10]; \ 2831 vÞ©ž _»s ; \ 2833 _¬gvec [1] = () _Üig . r2 ; \ 2834 _¬gvec [2] = () _Üig . Äaddr ; \ 2835 _¬gvec [2+1] = () ¬g1 ; \ 2836 _¬gvec [2+2] = () ¬g2 ; \ 2837 _¬gvec [2+3] = () ¬g3 ; \ 2838 _¬gvec [2+4] = () ¬g4 ; \ 2839 _¬gvec [2+5] = () ¬g5 ; \ 2840 _¬gvec [2+6] = () ¬g6 ; \ 2841 _¬gvec [2+7] = () ¬g7 ; \ 2842 _¬gvec [2+8] = () ¬g8 ; \ 2843 _¬gvec [2+9] = () ¬g9 ; \ 2844 _¬gvec [2+10] = () ¬g10 ; \ 2845 __asm__ volatile( \ 2847 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2850 `VG_EXPAND_FRAME_BY_Œashes_r3 (64) \ 2867 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2871 `VG_CONTRACT_FRAME_BY (64) \ 2872 `VG_CONTRACT_FRAME_BY (512) \ 2873 : "ô" ( _»s ) \ 2874 : "r" (& _¬gvec [2]) \ 2875 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2877 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2878 } 0) ) 2880  #CALL_FN_W_11W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 2881 ¬g7 , ¬g8 , ¬g9 , ¬g10 , ¬g11 ) \ 2883 vÞ©ž OrigFn _Üig = ( Üig ); \ 2884 vÞ©ž _¬gvec [3+11]; \ 2885 vÞ©ž _»s ; \ 2887 _¬gvec [1] = () _Üig . r2 ; \ 2888 _¬gvec [2] = () _Üig . Äaddr ; \ 2889 _¬gvec [2+1] = () ¬g1 ; \ 2890 _¬gvec [2+2] = () ¬g2 ; \ 2891 _¬gvec [2+3] = () ¬g3 ; \ 2892 _¬gvec [2+4] = () ¬g4 ; \ 2893 _¬gvec [2+5] = () ¬g5 ; \ 2894 _¬gvec [2+6] = () ¬g6 ; \ 2895 _¬gvec [2+7] = () ¬g7 ; \ 2896 _¬gvec [2+8] = () ¬g8 ; \ 2897 _¬gvec [2+9] = () ¬g9 ; \ 2898 _¬gvec [2+10] = () ¬g10 ; \ 2899 _¬gvec [2+11] = () ¬g11 ; \ 2900 __asm__ volatile( \ 2902 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2905 `VG_EXPAND_FRAME_BY_Œashes_r3 (72) \ 2925 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2929 `VG_CONTRACT_FRAME_BY (72) \ 2930 `VG_CONTRACT_FRAME_BY (512) \ 2931 : "ô" ( _»s ) \ 2932 : "r" (& _¬gvec [2]) \ 2933 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2935 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2936 } 0) ) 2938  #CALL_FN_W_12W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 2939 ¬g7 , ¬g8 , ¬g9 , ¬g10 , ¬g11 , ¬g12 ) \ 2941 vÞ©ž OrigFn _Üig = ( Üig ); \ 2942 vÞ©ž _¬gvec [3+12]; \ 2943 vÞ©ž _»s ; \ 2945 _¬gvec [1] = () _Üig . r2 ; \ 2946 _¬gvec [2] = () _Üig . Äaddr ; \ 2947 _¬gvec [2+1] = () ¬g1 ; \ 2948 _¬gvec [2+2] = () ¬g2 ; \ 2949 _¬gvec [2+3] = () ¬g3 ; \ 2950 _¬gvec [2+4] = () ¬g4 ; \ 2951 _¬gvec [2+5] = () ¬g5 ; \ 2952 _¬gvec [2+6] = () ¬g6 ; \ 2953 _¬gvec [2+7] = () ¬g7 ; \ 2954 _¬gvec [2+8] = () ¬g8 ; \ 2955 _¬gvec [2+9] = () ¬g9 ; \ 2956 _¬gvec [2+10] = () ¬g10 ; \ 2957 _¬gvec [2+11] = () ¬g11 ; \ 2958 _¬gvec [2+12] = () ¬g12 ; \ 2959 __asm__ volatile( \ 2961 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 2964 `VG_EXPAND_FRAME_BY_Œashes_r3 (72) \ 2987 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 2991 `VG_CONTRACT_FRAME_BY (72) \ 2992 `VG_CONTRACT_FRAME_BY (512) \ 2993 : "ô" ( _»s ) \ 2994 : "r" (& _¬gvec [2]) \ 2995 : "cc", "memÜy", __CALLER_SAVED_REGS \ 2997 lv® = ( `__ty³of__ Öv®)è _»s ; \ 2998 } 0) ) 3004 #ià defšed ( PLAT_µc64_aix5 ) 3009  #__CALLER_SAVED_REGS \ 3013 "r11", "r12", "r13" ) 3018  #VG_EXPAND_FRAME_BY_Œashes_r3 ( _n_ä ) \ 3021 "¡d 3,0(1)\n\t" ) 3023  #VG_CONTRACT_FRAME_BY ( _n_ä ) \ 3024 "add˜1,1," #_n_ä "\n\t" ) 3029  #CALL_FN_W_v ( lv® , Üig ) \ 3031 vÞ©ž OrigFn _Üig = ( Üig ); \ 3032 vÞ©ž _¬gvec [3+0]; \ 3033 vÞ©ž _»s ; \ 3035 _¬gvec [1] = () _Üig . r2 ; \ 3036 _¬gvec [2] = () _Üig . Äaddr ; \ 3037 __asm__ volatile( \ 3039 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3043 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3047 `VG_CONTRACT_FRAME_BY (512) \ 3048 : "ô" ( _»s ) \ 3049 : "r" (& _¬gvec [2]) \ 3050 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3052 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3053 } 0) ) 3055  #CALL_FN_W_W ( lv® , Üig , ¬g1 ) \ 3057 vÞ©ž OrigFn _Üig = ( Üig ); \ 3058 vÞ©ž _¬gvec [3+1]; \ 3059 vÞ©ž _»s ; \ 3061 _¬gvec [1] = () _Üig . r2 ; \ 3062 _¬gvec [2] = () _Üig . Äaddr ; \ 3063 _¬gvec [2+1] = () ¬g1 ; \ 3064 __asm__ volatile( \ 3066 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3071 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3075 `VG_CONTRACT_FRAME_BY (512) \ 3076 : "ô" ( _»s ) \ 3077 : "r" (& _¬gvec [2]) \ 3078 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3080 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3081 } 0) ) 3083  #CALL_FN_W_WW ( lv® , Üig , ¬g1 , ¬g2 ) \ 3085 vÞ©ž OrigFn _Üig = ( Üig ); \ 3086 vÞ©ž _¬gvec [3+2]; \ 3087 vÞ©ž _»s ; \ 3089 _¬gvec [1] = () _Üig . r2 ; \ 3090 _¬gvec [2] = () _Üig . Äaddr ; \ 3091 _¬gvec [2+1] = () ¬g1 ; \ 3092 _¬gvec [2+2] = () ¬g2 ; \ 3093 __asm__ volatile( \ 3095 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3101 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3105 `VG_CONTRACT_FRAME_BY (512) \ 3106 : "ô" ( _»s ) \ 3107 : "r" (& _¬gvec [2]) \ 3108 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3110 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3111 } 0) ) 3113  #CALL_FN_W_WWW ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 ) \ 3115 vÞ©ž OrigFn _Üig = ( Üig ); \ 3116 vÞ©ž _¬gvec [3+3]; \ 3117 vÞ©ž _»s ; \ 3119 _¬gvec [1] = () _Üig . r2 ; \ 3120 _¬gvec [2] = () _Üig . Äaddr ; \ 3121 _¬gvec [2+1] = () ¬g1 ; \ 3122 _¬gvec [2+2] = () ¬g2 ; \ 3123 _¬gvec [2+3] = () ¬g3 ; \ 3124 __asm__ volatile( \ 3126 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3133 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3137 `VG_CONTRACT_FRAME_BY (512) \ 3138 : "ô" ( _»s ) \ 3139 : "r" (& _¬gvec [2]) \ 3140 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3142 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3143 } 0) ) 3145  #CALL_FN_W_WWWW ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 ) \ 3147 vÞ©ž OrigFn _Üig = ( Üig ); \ 3148 vÞ©ž _¬gvec [3+4]; \ 3149 vÞ©ž _»s ; \ 3151 _¬gvec [1] = () _Üig . r2 ; \ 3152 _¬gvec [2] = () _Üig . Äaddr ; \ 3153 _¬gvec [2+1] = () ¬g1 ; \ 3154 _¬gvec [2+2] = () ¬g2 ; \ 3155 _¬gvec [2+3] = () ¬g3 ; \ 3156 _¬gvec [2+4] = () ¬g4 ; \ 3157 __asm__ volatile( \ 3159 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3167 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3171 `VG_CONTRACT_FRAME_BY (512) \ 3172 : "ô" ( _»s ) \ 3173 : "r" (& _¬gvec [2]) \ 3174 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3176 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3177 } 0) ) 3179  #CALL_FN_W_5W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 ) \ 3181 vÞ©ž OrigFn _Üig = ( Üig ); \ 3182 vÞ©ž _¬gvec [3+5]; \ 3183 vÞ©ž _»s ; \ 3185 _¬gvec [1] = () _Üig . r2 ; \ 3186 _¬gvec [2] = () _Üig . Äaddr ; \ 3187 _¬gvec [2+1] = () ¬g1 ; \ 3188 _¬gvec [2+2] = () ¬g2 ; \ 3189 _¬gvec [2+3] = () ¬g3 ; \ 3190 _¬gvec [2+4] = () ¬g4 ; \ 3191 _¬gvec [2+5] = () ¬g5 ; \ 3192 __asm__ volatile( \ 3194 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3203 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3207 `VG_CONTRACT_FRAME_BY (512) \ 3208 : "ô" ( _»s ) \ 3209 : "r" (& _¬gvec [2]) \ 3210 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3212 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3213 } 0) ) 3215  #CALL_FN_W_6W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 ) \ 3217 vÞ©ž OrigFn _Üig = ( Üig ); \ 3218 vÞ©ž _¬gvec [3+6]; \ 3219 vÞ©ž _»s ; \ 3221 _¬gvec [1] = () _Üig . r2 ; \ 3222 _¬gvec [2] = () _Üig . Äaddr ; \ 3223 _¬gvec [2+1] = () ¬g1 ; \ 3224 _¬gvec [2+2] = () ¬g2 ; \ 3225 _¬gvec [2+3] = () ¬g3 ; \ 3226 _¬gvec [2+4] = () ¬g4 ; \ 3227 _¬gvec [2+5] = () ¬g5 ; \ 3228 _¬gvec [2+6] = () ¬g6 ; \ 3229 __asm__ volatile( \ 3231 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3241 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3245 `VG_CONTRACT_FRAME_BY (512) \ 3246 : "ô" ( _»s ) \ 3247 : "r" (& _¬gvec [2]) \ 3248 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3250 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3251 } 0) ) 3253  #CALL_FN_W_7W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 3254 ¬g7 ) \ 3256 vÞ©ž OrigFn _Üig = ( Üig ); \ 3257 vÞ©ž _¬gvec [3+7]; \ 3258 vÞ©ž _»s ; \ 3260 _¬gvec [1] = () _Üig . r2 ; \ 3261 _¬gvec [2] = () _Üig . Äaddr ; \ 3262 _¬gvec [2+1] = () ¬g1 ; \ 3263 _¬gvec [2+2] = () ¬g2 ; \ 3264 _¬gvec [2+3] = () ¬g3 ; \ 3265 _¬gvec [2+4] = () ¬g4 ; \ 3266 _¬gvec [2+5] = () ¬g5 ; \ 3267 _¬gvec [2+6] = () ¬g6 ; \ 3268 _¬gvec [2+7] = () ¬g7 ; \ 3269 __asm__ volatile( \ 3271 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3282 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3286 `VG_CONTRACT_FRAME_BY (512) \ 3287 : "ô" ( _»s ) \ 3288 : "r" (& _¬gvec [2]) \ 3289 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3291 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3292 } 0) ) 3294  #CALL_FN_W_8W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 3295 ¬g7 , ¬g8 ) \ 3297 vÞ©ž OrigFn _Üig = ( Üig ); \ 3298 vÞ©ž _¬gvec [3+8]; \ 3299 vÞ©ž _»s ; \ 3301 _¬gvec [1] = () _Üig . r2 ; \ 3302 _¬gvec [2] = () _Üig . Äaddr ; \ 3303 _¬gvec [2+1] = () ¬g1 ; \ 3304 _¬gvec [2+2] = () ¬g2 ; \ 3305 _¬gvec [2+3] = () ¬g3 ; \ 3306 _¬gvec [2+4] = () ¬g4 ; \ 3307 _¬gvec [2+5] = () ¬g5 ; \ 3308 _¬gvec [2+6] = () ¬g6 ; \ 3309 _¬gvec [2+7] = () ¬g7 ; \ 3310 _¬gvec [2+8] = () ¬g8 ; \ 3311 __asm__ volatile( \ 3313 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3325 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3329 `VG_CONTRACT_FRAME_BY (512) \ 3330 : "ô" ( _»s ) \ 3331 : "r" (& _¬gvec [2]) \ 3332 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3334 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3335 } 0) ) 3337  #CALL_FN_W_9W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 3338 ¬g7 , ¬g8 , ¬g9 ) \ 3340 vÞ©ž OrigFn _Üig = ( Üig ); \ 3341 vÞ©ž _¬gvec [3+9]; \ 3342 vÞ©ž _»s ; \ 3344 _¬gvec [1] = () _Üig . r2 ; \ 3345 _¬gvec [2] = () _Üig . Äaddr ; \ 3346 _¬gvec [2+1] = () ¬g1 ; \ 3347 _¬gvec [2+2] = () ¬g2 ; \ 3348 _¬gvec [2+3] = () ¬g3 ; \ 3349 _¬gvec [2+4] = () ¬g4 ; \ 3350 _¬gvec [2+5] = () ¬g5 ; \ 3351 _¬gvec [2+6] = () ¬g6 ; \ 3352 _¬gvec [2+7] = () ¬g7 ; \ 3353 _¬gvec [2+8] = () ¬g8 ; \ 3354 _¬gvec [2+9] = () ¬g9 ; \ 3355 __asm__ volatile( \ 3357 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3360 `VG_EXPAND_FRAME_BY_Œashes_r3 (128) \ 3374 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3378 `VG_CONTRACT_FRAME_BY (128) \ 3379 `VG_CONTRACT_FRAME_BY (512) \ 3380 : "ô" ( _»s ) \ 3381 : "r" (& _¬gvec [2]) \ 3382 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3384 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3385 } 0) ) 3387  #CALL_FN_W_10W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 3388 ¬g7 , ¬g8 , ¬g9 , ¬g10 ) \ 3390 vÞ©ž OrigFn _Üig = ( Üig ); \ 3391 vÞ©ž _¬gvec [3+10]; \ 3392 vÞ©ž _»s ; \ 3394 _¬gvec [1] = () _Üig . r2 ; \ 3395 _¬gvec [2] = () _Üig . Äaddr ; \ 3396 _¬gvec [2+1] = () ¬g1 ; \ 3397 _¬gvec [2+2] = () ¬g2 ; \ 3398 _¬gvec [2+3] = () ¬g3 ; \ 3399 _¬gvec [2+4] = () ¬g4 ; \ 3400 _¬gvec [2+5] = () ¬g5 ; \ 3401 _¬gvec [2+6] = () ¬g6 ; \ 3402 _¬gvec [2+7] = () ¬g7 ; \ 3403 _¬gvec [2+8] = () ¬g8 ; \ 3404 _¬gvec [2+9] = () ¬g9 ; \ 3405 _¬gvec [2+10] = () ¬g10 ; \ 3406 __asm__ volatile( \ 3408 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3411 `VG_EXPAND_FRAME_BY_Œashes_r3 (128) \ 3428 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3432 `VG_CONTRACT_FRAME_BY (128) \ 3433 `VG_CONTRACT_FRAME_BY (512) \ 3434 : "ô" ( _»s ) \ 3435 : "r" (& _¬gvec [2]) \ 3436 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3438 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3439 } 0) ) 3441  #CALL_FN_W_11W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 3442 ¬g7 , ¬g8 , ¬g9 , ¬g10 , ¬g11 ) \ 3444 vÞ©ž OrigFn _Üig = ( Üig ); \ 3445 vÞ©ž _¬gvec [3+11]; \ 3446 vÞ©ž _»s ; \ 3448 _¬gvec [1] = () _Üig . r2 ; \ 3449 _¬gvec [2] = () _Üig . Äaddr ; \ 3450 _¬gvec [2+1] = () ¬g1 ; \ 3451 _¬gvec [2+2] = () ¬g2 ; \ 3452 _¬gvec [2+3] = () ¬g3 ; \ 3453 _¬gvec [2+4] = () ¬g4 ; \ 3454 _¬gvec [2+5] = () ¬g5 ; \ 3455 _¬gvec [2+6] = () ¬g6 ; \ 3456 _¬gvec [2+7] = () ¬g7 ; \ 3457 _¬gvec [2+8] = () ¬g8 ; \ 3458 _¬gvec [2+9] = () ¬g9 ; \ 3459 _¬gvec [2+10] = () ¬g10 ; \ 3460 _¬gvec [2+11] = () ¬g11 ; \ 3461 __asm__ volatile( \ 3463 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3466 `VG_EXPAND_FRAME_BY_Œashes_r3 (144) \ 3486 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3490 `VG_CONTRACT_FRAME_BY (144) \ 3491 `VG_CONTRACT_FRAME_BY (512) \ 3492 : "ô" ( _»s ) \ 3493 : "r" (& _¬gvec [2]) \ 3494 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3496 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3497 } 0) ) 3499  #CALL_FN_W_12W ( lv® , Üig , ¬g1 , ¬g2 , ¬g3 , ¬g4 , ¬g5 , ¬g6 , \ 3500 ¬g7 , ¬g8 , ¬g9 , ¬g10 , ¬g11 , ¬g12 ) \ 3502 vÞ©ž OrigFn _Üig = ( Üig ); \ 3503 vÞ©ž _¬gvec [3+12]; \ 3504 vÞ©ž _»s ; \ 3506 _¬gvec [1] = () _Üig . r2 ; \ 3507 _¬gvec [2] = () _Üig . Äaddr ; \ 3508 _¬gvec [2+1] = () ¬g1 ; \ 3509 _¬gvec [2+2] = () ¬g2 ; \ 3510 _¬gvec [2+3] = () ¬g3 ; \ 3511 _¬gvec [2+4] = () ¬g4 ; \ 3512 _¬gvec [2+5] = () ¬g5 ; \ 3513 _¬gvec [2+6] = () ¬g6 ; \ 3514 _¬gvec [2+7] = () ¬g7 ; \ 3515 _¬gvec [2+8] = () ¬g8 ; \ 3516 _¬gvec [2+9] = () ¬g9 ; \ 3517 _¬gvec [2+10] = () ¬g10 ; \ 3518 _¬gvec [2+11] = () ¬g11 ; \ 3519 _¬gvec [2+12] = () ¬g12 ; \ 3520 __asm__ volatile( \ 3522 `VG_EXPAND_FRAME_BY_Œashes_r3 (512) \ 3525 `VG_EXPAND_FRAME_BY_Œashes_r3 (144) \ 3548 VALGRIND_BRANCH_AND_LINK_TO_NOREDIR_R11 \ 3552 `VG_CONTRACT_FRAME_BY (144) \ 3553 `VG_CONTRACT_FRAME_BY (512) \ 3554 : "ô" ( _»s ) \ 3555 : "r" (& _¬gvec [2]) \ 3556 : "cc", "memÜy", __CALLER_SAVED_REGS \ 3558 lv® = ( `__ty³of__ Öv®)è _»s ; \ 3559 } 0) ) 3579  #VG_USERREQ_TOOL_BASE ( a , b ) \ 3580 (()((( a )&0xffè<< 24 | (( b )&0xffè<< 16)) ) 3581  #VG_IS_TOOL_USERREQ ( a , b , v ) \ 3582 ( `VG_USERREQ_TOOL_BASE ( a , b è=ð(( v è& 0xffff0000)) ) 3589 ’um { mVG_USERREQ__RUNNING_ON_VALGRIND = 0x1001, 3590 mVG_USERREQ__DISCARD_TRANSLATIONS = 0x1002, 3597 mVG_USERREQ__CLIENT_CALL0 = 0x1101, 3598 mVG_USERREQ__CLIENT_CALL1 = 0x1102, 3599 mVG_USERREQ__CLIENT_CALL2 = 0x1103, 3600 mVG_USERREQ__CLIENT_CALL3 = 0x1104, 3605 mVG_USERREQ__COUNT_ERRORS = 0x1201, 3609 mVG_USERREQ__MALLOCLIKE_BLOCK = 0x1301, 3610 mVG_USERREQ__FREELIKE_BLOCK = 0x1302, 3612 mVG_USERREQ__CREATE_MEMPOOL = 0x1303, 3613 mVG_USERREQ__DESTROY_MEMPOOL = 0x1304, 3614 mVG_USERREQ__MEMPOOL_ALLOC = 0x1305, 3615 mVG_USERREQ__MEMPOOL_FREE = 0x1306, 3616 mVG_USERREQ__MEMPOOL_TRIM = 0x1307, 3617 mVG_USERREQ__MOVE_MEMPOOL = 0x1308, 3618 mVG_USERREQ__MEMPOOL_CHANGE = 0x1309, 3619 mVG_USERREQ__MEMPOOL_EXISTS = 0x130a, 3622 mVG_USERREQ__PRINTF = 0x1401, 3623 mVG_USERREQ__PRINTF_BACKTRACE = 0x1402, 3626 mVG_USERREQ__STACK_REGISTER = 0x1501, 3627 mVG_USERREQ__STACK_DEREGISTER = 0x1502, 3628 mVG_USERREQ__STACK_CHANGE = 0x1503 3629 } tVg_Cl›ÁReque¡ ; 3631 #ià! defšed ( __GNUC__ ) 3632  #__ex‹nsiÚ__ ) 3639  #RUNNING_ON_VALGRIND __ex‹nsiÚ__ \ 3640 ({ _qzz_»s ; \ 3641 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0 , \ 3642 VG_USERREQ__RUNNING_ON_VALGRIND , \ 3644 _qzz_»s ; \ 3645 }) ) 3652  #VALGRIND_DISCARD_TRANSLATIONS ( _qzz_addr , _qzz_Ën ) \ 3653 { _qzz_»s ; \ 3654 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3655 VG_USERREQ__DISCARD_TRANSLATIONS , \ 3656 _qzz_addr , _qzz_Ën , 0, 0, 0); \ 3657 } ) 3663 #ià defšed ( NVALGRIND ) 3665  #VALGRIND_PRINTF (...) ) 3666  #VALGRIND_PRINTF_BACKTRACE (...) ) 3672  $VALGRIND_PRINTF (cÚ¡ * fÜm© , ...) 3673 `__©Œibu‹__ (( `fÜm© ( __´štf__ , 1, 2), __unu£d__ )); 3675 $VALGRIND_PRINTF (cÚ¡ * fÜm© , ...) 3677  _qzz_»s ; 3678 va_li¡ v¬gs ; 3679 `va_¡¬t ( v¬gs , fÜm© ); 3680 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, VG_USERREQ__PRINTF , 3681 () fÜm© , () v¬gs , 3683 `va_’d ( v¬gs ); 3684  () _qzz_»s ; 3685 } } 3687  $VALGRIND_PRINTF_BACKTRACE (cÚ¡ * fÜm© , ...) 3688 `__©Œibu‹__ (( `fÜm© ( __´štf__ , 1, 2), __unu£d__ )); 3690 $VALGRIND_PRINTF_BACKTRACE (cÚ¡ * fÜm© , ...) 3692  _qzz_»s ; 3693 va_li¡ v¬gs ; 3694 `va_¡¬t ( v¬gs , fÜm© ); 3695 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, VG_USERREQ__PRINTF_BACKTRACE , 3696 () fÜm© , () v¬gs , 3698 `va_’d ( v¬gs ); 3699  () _qzz_»s ; 3700 } } 3728  #VALGRIND_NON_SIMD_CALL0 ( _qyy_â ) \ 3729 __ex‹nsiÚ__ \ 3730 ({ _qyy_»s ; \ 3731 `VALGRIND_DO_CLIENT_REQUEST ( _qyy_»s , 0 , \ 3732 VG_USERREQ__CLIENT_CALL0 , \ 3733 _qyy_â , \ 3735 _qyy_»s ; \ 3736 }) ) 3738  #VALGRIND_NON_SIMD_CALL1 ( _qyy_â , _qyy_¬g1 ) \ 3739 __ex‹nsiÚ__ \ 3740 ({ _qyy_»s ; \ 3741 `VALGRIND_DO_CLIENT_REQUEST ( _qyy_»s , 0 , \ 3742 VG_USERREQ__CLIENT_CALL1 , \ 3743 _qyy_â , \ 3744 _qyy_¬g1 , 0, 0, 0); \ 3745 _qyy_»s ; \ 3746 }) ) 3748  #VALGRIND_NON_SIMD_CALL2 ( _qyy_â , _qyy_¬g1 , _qyy_¬g2 ) \ 3749 __ex‹nsiÚ__ \ 3750 ({ _qyy_»s ; \ 3751 `VALGRIND_DO_CLIENT_REQUEST ( _qyy_»s , 0 , \ 3752 VG_USERREQ__CLIENT_CALL2 , \ 3753 _qyy_â , \ 3754 _qyy_¬g1 , _qyy_¬g2 , 0, 0); \ 3755 _qyy_»s ; \ 3756 }) ) 3758  #VALGRIND_NON_SIMD_CALL3 ( _qyy_â , _qyy_¬g1 , _qyy_¬g2 , _qyy_¬g3 ) \ 3759 __ex‹nsiÚ__ \ 3760 ({ _qyy_»s ; \ 3761 `VALGRIND_DO_CLIENT_REQUEST ( _qyy_»s , 0 , \ 3762 VG_USERREQ__CLIENT_CALL3 , \ 3763 _qyy_â , \ 3764 _qyy_¬g1 , _qyy_¬g2 , \ 3765 _qyy_¬g3 , 0); \ 3766 _qyy_»s ; \ 3767 }) ) 3773  #VALGRIND_COUNT_ERRORS \ 3774 __ex‹nsiÚ__ \ 3775 ({ _qyy_»s ; \ 3776 `VALGRIND_DO_CLIENT_REQUEST ( _qyy_»s , 0 , \ 3777 VG_USERREQ__COUNT_ERRORS , \ 3779 _qyy_»s ; \ 3780 }) ) 3807  #VALGRIND_MALLOCLIKE_BLOCK ( addr , sizeB , rzB , is_z”Ûd ) \ 3808 { _qzz_»s ; \ 3809 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3810 VG_USERREQ__MALLOCLIKE_BLOCK , \ 3811 addr , sizeB , rzB , is_z”Ûd , 0); \ 3812 } ) 3818  #VALGRIND_FREELIKE_BLOCK ( addr , rzB ) \ 3819 { _qzz_»s ; \ 3820 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3821 VG_USERREQ__FREELIKE_BLOCK , \ 3822 addr , rzB , 0, 0, 0); \ 3823 } ) 3826  #VALGRIND_CREATE_MEMPOOL ( poÞ , rzB , is_z”Ûd ) \ 3827 { _qzz_»s ; \ 3828 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3829 VG_USERREQ__CREATE_MEMPOOL , \ 3830 poÞ , rzB , is_z”Ûd , 0, 0); \ 3831 } ) 3834  #VALGRIND_DESTROY_MEMPOOL ( poÞ ) \ 3835 { _qzz_»s ; \ 3836 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3837 VG_USERREQ__DESTROY_MEMPOOL , \ 3838 poÞ , 0, 0, 0, 0); \ 3839 } ) 3842  #VALGRIND_MEMPOOL_ALLOC ( poÞ , addr , size ) \ 3843 { _qzz_»s ; \ 3844 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3845 VG_USERREQ__MEMPOOL_ALLOC , \ 3846 poÞ , addr , size , 0, 0); \ 3847 } ) 3850  #VALGRIND_MEMPOOL_FREE ( poÞ , addr ) \ 3851 { _qzz_»s ; \ 3852 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3853 VG_USERREQ__MEMPOOL_FREE , \ 3854 poÞ , addr , 0, 0, 0); \ 3855 } ) 3858  #VALGRIND_MEMPOOL_TRIM ( poÞ , addr , size ) \ 3859 { _qzz_»s ; \ 3860 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3861 VG_USERREQ__MEMPOOL_TRIM , \ 3862 poÞ , addr , size , 0, 0); \ 3863 } ) 3866  #VALGRIND_MOVE_MEMPOOL ( poÞA , poÞB ) \ 3867 { _qzz_»s ; \ 3868 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3869 VG_USERREQ__MOVE_MEMPOOL , \ 3870 poÞA , poÞB , 0, 0, 0); \ 3871 } ) 3874  #VALGRIND_MEMPOOL_CHANGE ( poÞ , addrA , addrB , size ) \ 3875 { _qzz_»s ; \ 3876 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3877 VG_USERREQ__MEMPOOL_CHANGE , \ 3878 poÞ , addrA , addrB , size , 0); \ 3879 } ) 3882  #VALGRIND_MEMPOOL_EXISTS ( poÞ ) \ 3883 ({ _qzz_»s ; \ 3884 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3885 VG_USERREQ__MEMPOOL_EXISTS , \ 3886 poÞ , 0, 0, 0, 0); \ 3887 _qzz_»s ; \ 3888 }) ) 3891  #VALGRIND_STACK_REGISTER ( ¡¬t , ’d ) \ 3892 ({ _qzz_»s ; \ 3893 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3894 VG_USERREQ__STACK_REGISTER , \ 3895 ¡¬t , ’d , 0, 0, 0); \ 3896 _qzz_»s ; \ 3897 }) ) 3901  #VALGRIND_STACK_DEREGISTER ( id ) \ 3902 { _qzz_»s ; \ 3903 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3904 VG_USERREQ__STACK_DEREGISTER , \ 3905 id , 0, 0, 0, 0); \ 3906 } ) 3909  #VALGRIND_STACK_CHANGE ( id , ¡¬t , ’d ) \ 3910 { _qzz_»s ; \ 3911 `VALGRIND_DO_CLIENT_REQUEST ( _qzz_»s , 0, \ 3912 VG_USERREQ__STACK_CHANGE , \ 3913 id , ¡¬t , ’d , 0, 0); \ 3914 } ) 3917 #undeà PLAT_x86_lšux 3918 #undeà PLAT_amd64_lšux 3919 #undeà PLAT_µc32_lšux 3920 #undeà PLAT_µc64_lšux 3921 #undeà PLAT_µc32_aix5 3922 #undeà PLAT_µc64_aix5 @/usr/include/zlib.h 31 #iâdeà ZLIB_H 32  #ZLIB_H ) 34  ~"zcÚf.h " 36 #ifdeà __ýlu¥lus 40  #ZLIB_VERSION "1.2.3.3" ) 41  #ZLIB_VERNUM 0x1233 ) 42  #ZLIB_VER_MAJOR 1 ) 43  #ZLIB_VER_MINOR 2 ) 44  #ZLIB_VER_REVISION 3 ) 80  voidpf (* t®loc_func è tOF (( tvoidpf tÝaque , tuIÁ t™ems , uIÁ tsize )); 81 (* ä“_func è tOF (( tvoidpf tÝaque , voidpà tadd»ss )); 83  š‹º®_¡©e ; 85  sz_¡»am_s { 86 By‹f * Ãxt_š ; 87 uIÁ avaž_š ; 88 uLÚg tÙ®_š ; 90 By‹f * Ãxt_out ; 91 uIÁ avaž_out ; 92 uLÚg tÙ®_out ; 94 * msg ; 95  š‹º®_¡©e FAR * ¡©e ; 97 ®loc_func z®loc ; 98 ä“_func zä“ ; 99 voidpf Ýaque ; 101  d©a_ty³ ; 102 uLÚg adËr ; 103 uLÚg »£rved ; 104 } tz_¡»am ; 106  z_¡»am tFAR * tz_¡»amp ; 112  sgz_h—d”_s { 113  ‹xt ; 114 uLÚg time ; 115  xæags ; 116  os ; 117 By‹f * exŒa ; 118 uIÁ exŒa_Ën ; 119 uIÁ exŒa_max ; 120 By‹f * Çme ; 121 uIÁ Çme_max ; 122 By‹f * comm’t ; 123 uIÁ comm_max ; 124  hüc ; 125  dÚe ; 127 } tgz_h—d” ; 129  gz_h—d” tFAR * tgz_h—d”p ; 165  #Z_NO_FLUSH 0 ) 166  #Z_PARTIAL_FLUSH 1 ) 167  #Z_SYNC_FLUSH 2 ) 168  #Z_FULL_FLUSH 3 ) 169  #Z_FINISH 4 ) 170  #Z_BLOCK 5 ) 173  #Z_OK 0 ) 174  #Z_STREAM_END 1 ) 175  #Z_NEED_DICT 2 ) 176  #Z_ERRNO (-1) ) 177  #Z_STREAM_ERROR (-2) ) 178  #Z_DATA_ERROR (-3) ) 179  #Z_MEM_ERROR (-4) ) 180  #Z_BUF_ERROR (-5) ) 181  #Z_VERSION_ERROR (-6) ) 186  #Z_NO_COMPRESSION 0 ) 187  #Z_BEST_SPEED 1 ) 188  #Z_BEST_COMPRESSION 9 ) 189  #Z_DEFAULT_COMPRESSION (-1) ) 192  #Z_FILTERED 1 ) 193  #Z_HUFFMAN_ONLY 2 ) 194  #Z_RLE 3 ) 195  #Z_FIXED 4 ) 196  #Z_DEFAULT_STRATEGY 0 ) 199  #Z_BINARY 0 ) 200  #Z_TEXT 1 ) 201  #Z_ASCII Z_TEXT ) 202  #Z_UNKNOWN 2 ) 205  #Z_DEFLATED 8 ) 208  #Z_NULL 0 ) 210  #zlib_v”siÚ `zlibV”siÚ () ) 215 ZEXTERN cÚ¡ * ZEXPORT zlibV”siÚ OF (()); 245 ZEXTERN  ZEXPORT deæ©e OF (( z_¡»amp ¡rm ,  æush )); 331 ZEXTERN  ZEXPORT deæ©eEnd OF (( z_¡»amp ¡rm )); 370 ZEXTERN  ZEXPORT šæ©e OF (( z_¡»amp ¡rm ,  æush )); 469 ZEXTERN  ZEXPORT šæ©eEnd OF (( z_¡»amp ¡rm )); 545 ZEXTERN  ZEXPORT deæ©eS‘DiùiÚ¬y OF (( z_¡»amp ¡rm , 546 cÚ¡ By‹f * diùiÚ¬y , 547 uIÁ diùL’gth )); 584 ZEXTERN  ZEXPORT deæ©eCÝy OF (( z_¡»amp de¡ , 585 z_¡»amp sourû )); 602 ZEXTERN  ZEXPORT deæ©eRe£t OF (( z_¡»amp ¡rm )); 613 ZEXTERN  ZEXPORT deæ©eP¬ams OF (( z_¡»amp ¡rm , 614  Ëv– , 615  ¡¿‹gy )); 634 ZEXTERN  ZEXPORT deæ©eTuà OF (( z_¡»amp ¡rm , 635  good_Ëngth , 636  max_Ïzy , 637  niû_Ëngth , 638  max_chaš )); 651 ZEXTERN uLÚg ZEXPORT deæ©eBound OF (( z_¡»amp ¡rm , 652 uLÚg sourûL’ )); 661 ZEXTERN  ZEXPORT deæ©ePrime OF (( z_¡»amp ¡rm , 662  b™s , 663  v®ue )); 677 ZEXTERN  ZEXPORT deæ©eS‘H—d” OF (( z_¡»amp ¡rm , 678 gz_h—d”p h—d )); 748 ZEXTERN  ZEXPORT šæ©eS‘DiùiÚ¬y OF (( z_¡»amp ¡rm , 749 cÚ¡ By‹f * diùiÚ¬y , 750 uIÁ diùL’gth )); 770 ZEXTERN  ZEXPORT šæ©eSync OF (( z_¡»amp ¡rm )); 785 ZEXTERN  ZEXPORT šæ©eCÝy OF (( z_¡»amp de¡ , 786 z_¡»amp sourû )); 801 ZEXTERN  ZEXPORT šæ©eRe£t OF (( z_¡»amp ¡rm )); 811 ZEXTERN  ZEXPORT šæ©ePrime OF (( z_¡»amp ¡rm , 812  b™s , 813  v®ue )); 827 ZEXTERN  ZEXPORT šæ©eG‘H—d” OF (( z_¡»amp ¡rm , 828 gz_h—d”p h—d )); 889 (* š_func è tOF (( tFAR *, FAR * FAR *)); 890 (* out_func è tOF (( tFAR *, FAR *, )); 892 ZEXTERN  ZEXPORT šæ©eBack OF (( z_¡»amp ¡rm , 893 š_func š ,  FAR * š_desc , 894 out_func out ,  FAR * out_desc )); 961 ZEXTERN  ZEXPORT šæ©eBackEnd OF (( z_¡»amp ¡rm )); 969 ZEXTERN uLÚg ZEXPORT zlibCompžeFÏgs OF (()); 1021 ZEXTERN  ZEXPORT com´ess OF (( By‹f * de¡ , uLÚgf * de¡L’ , 1022 cÚ¡ By‹f * sourû , uLÚg sourûL’ )); 1036 ZEXTERN  ZEXPORT com´ess2 OF (( By‹f * de¡ , uLÚgf * de¡L’ , 1037 cÚ¡ By‹f * sourû , uLÚg sourûL’ , 1038  Ëv– )); 1052 ZEXTERN uLÚg ZEXPORT com´essBound OF ((uLÚg sourûL’ )); 1059 ZEXTERN  ZEXPORT uncom´ess OF (( By‹f * de¡ , uLÚgf * de¡L’ , 1060 cÚ¡ By‹f * sourû , uLÚg sourûL’ )); 1078  voidp tgzFže ; 1098 ZEXTERN gzFže ZEXPORT gzdÝ’ OF (( fd , cÚ¡ * mode )); 1111 ZEXTERN  ZEXPORT gz£¬ams OF (( gzFže fže ,  Ëv– ,  ¡¿‹gy )); 1119 ZEXTERN  ZEXPORT gz»ad OF (( gzFže fže , voidp buf ,  Ën )); 1127 ZEXTERN  ZEXPORT gzwr™e OF (( gzFže fže , 1128 voidpc buf ,  Ën )); 1135 ZEXTERN  ZEXPORTVA gz´štf OF (( gzFže fže , cÚ¡ * fÜm© , ...)); 1148 ZEXTERN  ZEXPORT gzputs OF (( gzFže fže , cÚ¡ * s )); 1155 ZEXTERN * ZEXPORT gzg‘s OF (( gzFže fže , * buf ,  Ën )); 1164 ZEXTERN  ZEXPORT gzputc OF (( gzFže fže ,  c )); 1170 ZEXTERN  ZEXPORT gzg‘c OF (( gzFže fže )); 1176 ZEXTERN  ZEXPORT gzung‘c OF (( c , gzFže fže )); 1186 ZEXTERN  ZEXPORT gzæush OF (( gzFže fže ,  æush )); 1215 ZEXTERN  ZEXPORT gz»wšd OF (( gzFže fže )); 1232 ZEXTERN  ZEXPORT gzeof OF (( gzFže fže )); 1238 ZEXTERN  ZEXPORT gzdœeù OF (( gzFže fže )); 1244 ZEXTERN  ZEXPORT gzþo£ OF (( gzFže fže )); 1252 ZEXTERN cÚ¡ * ZEXPORT gz”rÜ OF (( gzFže fže , * ”ºum )); 1264 ZEXTERN  ZEXPORT gzþ—»¼ OF (( gzFže fže )); 1279 ZEXTERN uLÚg ZEXPORT adËr32 OF ((uLÚg adËr , cÚ¡ By‹f * buf , uIÁ Ën )); 1305 ZEXTERN uLÚg ZEXPORT üc32 OF ((uLÚg üc , cÚ¡ By‹f * buf , uIÁ Ën )); 1337 ZEXTERN  ZEXPORT deæ©eIn™_ OF (( z_¡»amp ¡rm ,  Ëv– , 1338 cÚ¡ * v”siÚ ,  ¡»am_size )); 1339 ZEXTERN  ZEXPORT šæ©eIn™_ OF (( z_¡»amp ¡rm , 1340 cÚ¡ * v”siÚ ,  ¡»am_size )); 1341 ZEXTERN  ZEXPORT deæ©eIn™2_ OF (( z_¡»amp ¡rm ,  Ëv– ,  m‘hod , 1342  wšdowB™s ,  memLev– , 1343  ¡¿‹gy , cÚ¡ * v”siÚ , 1344  ¡»am_size )); 1345 ZEXTERN  ZEXPORT šæ©eIn™2_ OF (( z_¡»amp ¡rm ,  wšdowB™s , 1346 cÚ¡ * v”siÚ ,  ¡»am_size )); 1347 ZEXTERN  ZEXPORT šæ©eBackIn™_ OF (( z_¡»amp ¡rm ,  wšdowB™s , 1348  FAR * wšdow , 1349 cÚ¡ * v”siÚ , 1350  ¡»am_size )); 1351  #deæ©eIn™ ( ¡rm , Ëv– ) \ 1352 `deæ©eIn™_ (( ¡rm ), ( Ëv– ), ZLIB_VERSION , ( z_¡»am )) ) 1353  #šæ©eIn™ ( ¡rm ) \ 1354 `šæ©eIn™_ (( ¡rm ), ZLIB_VERSION , ( z_¡»am )) ) 1355  #deæ©eIn™2 ( ¡rm , Ëv– , m‘hod , wšdowB™s , memLev– , ¡¿‹gy ) \ 1356 `deæ©eIn™2_ (( ¡rm ),( Ëv– ),( m‘hod ),( wšdowB™s ),( memLev– ),\ 1357 ( ¡¿‹gy ), ZLIB_VERSION , ( z_¡»am )) ) 1358  #šæ©eIn™2 ( ¡rm , wšdowB™s ) \ 1359 `šæ©eIn™2_ (( ¡rm ), ( wšdowB™s ), ZLIB_VERSION , ( z_¡»am )) ) 1360  #šæ©eBackIn™ ( ¡rm , wšdowB™s , wšdow ) \ 1361 `šæ©eBackIn™_ (( ¡rm ), ( wšdowB™s ), ( wšdow ), \ 1362 ZLIB_VERSION , ( z_¡»am )) ) 1364 #ifdeà _LARGEFILE64_SOURCE 1365 ZEXTERN gzFže ZEXPORT gzÝ’64 OF ((const *, const *)); 1366 ZEXTERN off64_t ZEXPORT gz£ek64 OF (( gzFže , off64_t, )); 1367 ZEXTERN off64_t ZEXPORT gz‹Î64 OF (( gzFže )); 1368 ZEXTERN uLÚg ZEXPORT adËr32_combše64 OF ((uLÚg, uLÚg, off64_t )); 1369 ZEXTERN uLÚg ZEXPORT üc32_combše64 OF ((uLÚg, uLÚg, off64_t )); 1372 #ià _FILE_OFFSET_BITS == 64 1373  #gzÝ’ gzÝ’64 ) 1374  #gz£ek gz£ek64 ) 1375  #gz‹Î gz‹Î64 ) 1376  #adËr32_combše adËr32_combše64 ) 1377  #üc32_combše üc32_combše64 ) 1379 ZEXTERN gzFže ZEXPORT gzÝ’ OF ((const *, const *)); 1380 ZEXTERN z_off_t ZEXPORT gz£ek OF (( gzFže , z_off_t, )); 1381 ZEXTERN z_off_t ZEXPORT gz‹Î OF (( gzFže )); 1382 ZEXTERN uLÚg ZEXPORT adËr32_combše OF ((uLÚg, uLÚg, z_off_t )); 1383 ZEXTERN uLÚg ZEXPORT üc32_combše OF ((uLÚg, uLÚg, z_off_t )); 1386 #ià! defšed ( ZUTIL_H è&& !defšed( NO_DUMMY_DECL ) 1387  sš‹º®_¡©e { dummy ;}; 1390 ZEXTERN cÚ¡ * ZEXPORT zE¼Ü OF (()); 1391 ZEXTERN  ZEXPORT šæ©eSyncPošt OF (( z_¡»amp )); 1392 ZEXTERN cÚ¡ uLÚgf * ZEXPORT g‘_üc_bË OF (()); 1393 ZEXTERN  ZEXPORT šæ©eUnd”mše OF (( z_¡»amp , )); 1395 #ifdeà __ýlu¥lus @/usr/include/alloca.h 19 #iâdef _ALLOCA_H 20  #_ALLOCA_H 1 ) 22  ~<ã©u»s.h > 24  #__Ãed_size_t ) 25  ~<¡ddef.h > 27 g__BEGIN_DECLS 30 #undeà ®loÿ 33 * $®loÿ ( size_t __size è __THROW ; 35 #ifdef __GNUC__ 36  #®loÿ ( size è `__bužtš_®loÿ (size) ) 39 __END_DECLS @/usr/include/bits/byteswap.h 21 #ià! defšed _BYTESWAP_H && !defšed _NETINET_IN_H 25 #iâdeà _BITS_BYTESWAP_H 26  #_BITS_BYTESWAP_H 1 ) 28  ~ 31  #__bsw­_cÚ¡ªt_16 ( x ) \ 32 (((( x è>> 8è& 0xffè| (((xè& 0xffè<< 8)) ) 34 #ià defšed __GNUC__ && __GNUC__ >= 2 35  #__bsw­_16 ( x ) \ 36 ( __ex‹nsiÚ__ \ 37 ({  __v , __x = ( x ); \ 38 ià( `__bužtš_cÚ¡ªt_p ( __x )) \ 39 __v = `__bsw­_cÚ¡ªt_16 ( __x ); \ 41 `__asm__ ("rorw $8, %w0" \ 42 : "ô" ( __v ) \ 43 : "0" ( __x ) \ 45 __v ; })) ) 48  #__bsw­_16 ( x ) \ 49 ( __ex‹nsiÚ__ \ 50 ({  __x = ( x ); `__bsw­_cÚ¡ªt_16 (__x); })) ) 55  #__bsw­_cÚ¡ªt_32 ( x ) \ 56 (((( x ) & 0xff000000) >> 24) | (((x) & 0x00ff0000) >> 8) | \ 57 ((( x è& 0x0000ff00è<< 8è| (((xè& 0x000000ffè<< 24)) ) 59 #ià defšed __GNUC__ && __GNUC__ >= 2 60 #ià __WORDSIZE =ð64 || ( defšed __i486__ || defšed __³Áium__ \ 61 || defšed g__³Áium´o__ || defšed g__³Áium4__ \ 62 || defšed g__k8__ || defšed g__©hlÚ__ \ 63 || defšed g__k6__ || defšed g__nocÚa__ \ 64 || defšed g__cÜe2__ || defšed g__geode__ \ 65 || defšed g__amdçm10__ ) 68  #__bsw­_32 ( x ) \ 69 ( __ex‹nsiÚ__ \ 70 ({  __v , __x = ( x ); \ 71 ià( `__bužtš_cÚ¡ªt_p ( __x )) \ 72 __v = `__bsw­_cÚ¡ªt_32 ( __x ); \ 74 `__asm__ ("bsw­ %0" : "ô" ( __v è: "0" ( __x )); \ 75 __v ; })) ) 77  #__bsw­_32 ( x ) \ 78 ( __ex‹nsiÚ__ \ 79 ({  __v , __x = ( x ); \ 80 ià( `__bužtš_cÚ¡ªt_p ( __x )) \ 81 __v = `__bsw­_cÚ¡ªt_32 ( __x ); \ 83 `__asm__ ("rorw $8, %w0;" \ 86 : "ô" ( __v ) \ 87 : "0" ( __x ) \ 89 __v ; })) ) 92  #__bsw­_32 ( x ) \ 93 ( __ex‹nsiÚ__ \ 94 ({  __x = ( x ); `__bsw­_cÚ¡ªt_32 (__x); })) ) 98 #ià defšed __GNUC__ && __GNUC__ >= 2 100  #__bsw­_cÚ¡ªt_64 ( x ) \ 101 (((( x ) & 0xff00000000000000ull) >> 56) \ 102 | ((( x ) & 0x00ff000000000000ull) >> 40) \ 103 | ((( x ) & 0x0000ff0000000000ull) >> 24) \ 104 | ((( x ) & 0x000000ff00000000ull) >> 8) \ 105 | ((( x ) & 0x00000000ff000000ull) << 8) \ 106 | ((( x ) & 0x0000000000ff0000ull) << 24) \ 107 | ((( x ) & 0x000000000000ff00ull) << 40) \ 108 | ((( x è& 0x00000000000000ffuÎè<< 56)) ) 110 #ià __WORDSIZE == 64 111  #__bsw­_64 ( x ) \ 112 ( __ex‹nsiÚ__ \ 113 ({  __v , __x = ( x ); \ 114 ià( `__bužtš_cÚ¡ªt_p ( __x )) \ 115 __v = `__bsw­_cÚ¡ªt_64 ( __x ); \ 117 `__asm__ ("bsw­ %q0" : "ô" ( __v è: "0" ( __x )); \ 118 __v ; })) ) 120  #__bsw­_64 ( x ) \ 121 ( __ex‹nsiÚ__ \ 122 ({ uniÚ { __ex‹nsiÚ__  __Î ; \ 123  __l [2]; } __w , __r ; \ 124 ià( `__bužtš_cÚ¡ªt_p ( x )) \ 125 __r . __Î = `__bsw­_cÚ¡ªt_64 ( x ); \ 128 __w . __Î = ( x ); \ 129 __r . __l [0] = `__bsw­_32 ( __w .__l[1]); \ 130 __r . __l [1] = `__bsw­_32 ( __w .__l[0]); \ 132 __r . __Î ; })) ) @/usr/include/bits/confname.h 21 #iâdeà _UNISTD_H 28 m_PC_LINK_MAX , 29  #_PC_LINK_MAX _PC_LINK_MAX ) 30 m_PC_MAX_CANON , 31  #_PC_MAX_CANON _PC_MAX_CANON ) 32 m_PC_MAX_INPUT , 33  #_PC_MAX_INPUT _PC_MAX_INPUT ) 34 m_PC_NAME_MAX , 35  #_PC_NAME_MAX _PC_NAME_MAX ) 36 m_PC_PATH_MAX , 37  #_PC_PATH_MAX _PC_PATH_MAX ) 38 m_PC_PIPE_BUF , 39  #_PC_PIPE_BUF _PC_PIPE_BUF ) 40 m_PC_CHOWN_RESTRICTED , 41  #_PC_CHOWN_RESTRICTED _PC_CHOWN_RESTRICTED ) 42 m_PC_NO_TRUNC , 43  #_PC_NO_TRUNC _PC_NO_TRUNC ) 44 m_PC_VDISABLE , 45  #_PC_VDISABLE _PC_VDISABLE ) 46 m_PC_SYNC_IO , 47  #_PC_SYNC_IO _PC_SYNC_IO ) 48 m_PC_ASYNC_IO , 49  #_PC_ASYNC_IO _PC_ASYNC_IO ) 50 m_PC_PRIO_IO , 51  #_PC_PRIO_IO _PC_PRIO_IO ) 52 m_PC_SOCK_MAXBUF , 53  #_PC_SOCK_MAXBUF _PC_SOCK_MAXBUF ) 54 m_PC_FILESIZEBITS , 55  #_PC_FILESIZEBITS _PC_FILESIZEBITS ) 56 m_PC_REC_INCR_XFER_SIZE , 57  #_PC_REC_INCR_XFER_SIZE _PC_REC_INCR_XFER_SIZE ) 58 m_PC_REC_MAX_XFER_SIZE , 59  #_PC_REC_MAX_XFER_SIZE _PC_REC_MAX_XFER_SIZE ) 60 m_PC_REC_MIN_XFER_SIZE , 61  #_PC_REC_MIN_XFER_SIZE _PC_REC_MIN_XFER_SIZE ) 62 m_PC_REC_XFER_ALIGN , 63  #_PC_REC_XFER_ALIGN _PC_REC_XFER_ALIGN ) 64 m_PC_ALLOC_SIZE_MIN , 65  #_PC_ALLOC_SIZE_MIN _PC_ALLOC_SIZE_MIN ) 66 m_PC_SYMLINK_MAX , 67  #_PC_SYMLINK_MAX _PC_SYMLINK_MAX ) 68 m_PC_2_SYMLINKS 69  #_PC_2_SYMLINKS _PC_2_SYMLINKS ) 75 m_SC_ARG_MAX , 76  #_SC_ARG_MAX _SC_ARG_MAX ) 77 m_SC_CHILD_MAX , 78  #_SC_CHILD_MAX _SC_CHILD_MAX ) 79 m_SC_CLK_TCK , 80  #_SC_CLK_TCK _SC_CLK_TCK ) 81 m_SC_NGROUPS_MAX , 82  #_SC_NGROUPS_MAX _SC_NGROUPS_MAX ) 83 m_SC_OPEN_MAX , 84  #_SC_OPEN_MAX _SC_OPEN_MAX ) 85 m_SC_STREAM_MAX , 86  #_SC_STREAM_MAX _SC_STREAM_MAX ) 87 m_SC_TZNAME_MAX , 88  #_SC_TZNAME_MAX _SC_TZNAME_MAX ) 89 m_SC_JOB_CONTROL , 90  #_SC_JOB_CONTROL _SC_JOB_CONTROL ) 91 m_SC_SAVED_IDS , 92  #_SC_SAVED_IDS _SC_SAVED_IDS ) 93 m_SC_REALTIME_SIGNALS , 94  #_SC_REALTIME_SIGNALS _SC_REALTIME_SIGNALS ) 95 m_SC_PRIORITY_SCHEDULING , 96  #_SC_PRIORITY_SCHEDULING _SC_PRIORITY_SCHEDULING ) 97 m_SC_TIMERS , 98  #_SC_TIMERS _SC_TIMERS ) 99 m_SC_ASYNCHRONOUS_IO , 100  #_SC_ASYNCHRONOUS_IO _SC_ASYNCHRONOUS_IO ) 101 m_SC_PRIORITIZED_IO , 102  #_SC_PRIORITIZED_IO _SC_PRIORITIZED_IO ) 103 m_SC_SYNCHRONIZED_IO , 104  #_SC_SYNCHRONIZED_IO _SC_SYNCHRONIZED_IO ) 105 m_SC_FSYNC , 106  #_SC_FSYNC _SC_FSYNC ) 107 m_SC_MAPPED_FILES , 108  #_SC_MAPPED_FILES _SC_MAPPED_FILES ) 109 m_SC_MEMLOCK , 110  #_SC_MEMLOCK _SC_MEMLOCK ) 111 m_SC_MEMLOCK_RANGE , 112  #_SC_MEMLOCK_RANGE _SC_MEMLOCK_RANGE ) 113 m_SC_MEMORY_PROTECTION , 114  #_SC_MEMORY_PROTECTION _SC_MEMORY_PROTECTION ) 115 m_SC_MESSAGE_PASSING , 116  #_SC_MESSAGE_PASSING _SC_MESSAGE_PASSING ) 117 m_SC_SEMAPHORES , 118  #_SC_SEMAPHORES _SC_SEMAPHORES ) 119 m_SC_SHARED_MEMORY_OBJECTS , 120  #_SC_SHARED_MEMORY_OBJECTS _SC_SHARED_MEMORY_OBJECTS ) 121 m_SC_AIO_LISTIO_MAX , 122  #_SC_AIO_LISTIO_MAX _SC_AIO_LISTIO_MAX ) 123 m_SC_AIO_MAX , 124  #_SC_AIO_MAX _SC_AIO_MAX ) 125 m_SC_AIO_PRIO_DELTA_MAX , 126  #_SC_AIO_PRIO_DELTA_MAX _SC_AIO_PRIO_DELTA_MAX ) 127 m_SC_DELAYTIMER_MAX , 128  #_SC_DELAYTIMER_MAX _SC_DELAYTIMER_MAX ) 129 m_SC_MQ_OPEN_MAX , 130  #_SC_MQ_OPEN_MAX _SC_MQ_OPEN_MAX ) 131 m_SC_MQ_PRIO_MAX , 132  #_SC_MQ_PRIO_MAX _SC_MQ_PRIO_MAX ) 133 m_SC_VERSION , 134  #_SC_VERSION _SC_VERSION ) 135 m_SC_PAGESIZE , 136  #_SC_PAGESIZE _SC_PAGESIZE ) 137  #_SC_PAGE_SIZE _SC_PAGESIZE ) 138 m_SC_RTSIG_MAX , 139  #_SC_RTSIG_MAX _SC_RTSIG_MAX ) 140 m_SC_SEM_NSEMS_MAX , 141  #_SC_SEM_NSEMS_MAX _SC_SEM_NSEMS_MAX ) 142 m_SC_SEM_VALUE_MAX , 143  #_SC_SEM_VALUE_MAX _SC_SEM_VALUE_MAX ) 144 m_SC_SIGQUEUE_MAX , 145  #_SC_SIGQUEUE_MAX _SC_SIGQUEUE_MAX ) 146 m_SC_TIMER_MAX , 147  #_SC_TIMER_MAX _SC_TIMER_MAX ) 151 m_SC_BC_BASE_MAX , 152  #_SC_BC_BASE_MAX _SC_BC_BASE_MAX ) 153 m_SC_BC_DIM_MAX , 154  #_SC_BC_DIM_MAX _SC_BC_DIM_MAX ) 155 m_SC_BC_SCALE_MAX , 156  #_SC_BC_SCALE_MAX _SC_BC_SCALE_MAX ) 157 m_SC_BC_STRING_MAX , 158  #_SC_BC_STRING_MAX _SC_BC_STRING_MAX ) 159 m_SC_COLL_WEIGHTS_MAX , 160  #_SC_COLL_WEIGHTS_MAX _SC_COLL_WEIGHTS_MAX ) 161 m_SC_EQUIV_CLASS_MAX , 162  #_SC_EQUIV_CLASS_MAX _SC_EQUIV_CLASS_MAX ) 163 m_SC_EXPR_NEST_MAX , 164  #_SC_EXPR_NEST_MAX _SC_EXPR_NEST_MAX ) 165 m_SC_LINE_MAX , 166  #_SC_LINE_MAX _SC_LINE_MAX ) 167 m_SC_RE_DUP_MAX , 168  #_SC_RE_DUP_MAX _SC_RE_DUP_MAX ) 169 m_SC_CHARCLASS_NAME_MAX , 170  #_SC_CHARCLASS_NAME_MAX _SC_CHARCLASS_NAME_MAX ) 172 m_SC_2_VERSION , 173  #_SC_2_VERSION _SC_2_VERSION ) 174 m_SC_2_C_BIND , 175  #_SC_2_C_BIND _SC_2_C_BIND ) 176 m_SC_2_C_DEV , 177  #_SC_2_C_DEV _SC_2_C_DEV ) 178 m_SC_2_FORT_DEV , 179  #_SC_2_FORT_DEV _SC_2_FORT_DEV ) 180 m_SC_2_FORT_RUN , 181  #_SC_2_FORT_RUN _SC_2_FORT_RUN ) 182 m_SC_2_SW_DEV , 183  #_SC_2_SW_DEV _SC_2_SW_DEV ) 184 m_SC_2_LOCALEDEF , 185  #_SC_2_LOCALEDEF _SC_2_LOCALEDEF ) 187 m_SC_PII , 188  #_SC_PII _SC_PII ) 189 m_SC_PII_XTI , 190  #_SC_PII_XTI _SC_PII_XTI ) 191 m_SC_PII_SOCKET , 192  #_SC_PII_SOCKET _SC_PII_SOCKET ) 193 m_SC_PII_INTERNET , 194  #_SC_PII_INTERNET _SC_PII_INTERNET ) 195 m_SC_PII_OSI , 196  #_SC_PII_OSI _SC_PII_OSI ) 197 m_SC_POLL , 198  #_SC_POLL _SC_POLL ) 199 m_SC_SELECT , 200  #_SC_SELECT _SC_SELECT ) 201 m_SC_UIO_MAXIOV , 202  #_SC_UIO_MAXIOV _SC_UIO_MAXIOV ) 203 m_SC_IOV_MAX = _SC_UIO_MAXIOV , 204  #_SC_IOV_MAX _SC_IOV_MAX ) 205 m_SC_PII_INTERNET_STREAM , 206  #_SC_PII_INTERNET_STREAM _SC_PII_INTERNET_STREAM ) 207 m_SC_PII_INTERNET_DGRAM , 208  #_SC_PII_INTERNET_DGRAM _SC_PII_INTERNET_DGRAM ) 209 m_SC_PII_OSI_COTS , 210  #_SC_PII_OSI_COTS _SC_PII_OSI_COTS ) 211 m_SC_PII_OSI_CLTS , 212  #_SC_PII_OSI_CLTS _SC_PII_OSI_CLTS ) 213 m_SC_PII_OSI_M , 214  #_SC_PII_OSI_M _SC_PII_OSI_M ) 215 m_SC_T_IOV_MAX , 216  #_SC_T_IOV_MAX _SC_T_IOV_MAX ) 219 m_SC_THREADS , 220  #_SC_THREADS _SC_THREADS ) 221 m_SC_THREAD_SAFE_FUNCTIONS , 222  #_SC_THREAD_SAFE_FUNCTIONS _SC_THREAD_SAFE_FUNCTIONS ) 223 m_SC_GETGR_R_SIZE_MAX , 224  #_SC_GETGR_R_SIZE_MAX _SC_GETGR_R_SIZE_MAX ) 225 m_SC_GETPW_R_SIZE_MAX , 226  #_SC_GETPW_R_SIZE_MAX _SC_GETPW_R_SIZE_MAX ) 227 m_SC_LOGIN_NAME_MAX , 228  #_SC_LOGIN_NAME_MAX _SC_LOGIN_NAME_MAX ) 229 m_SC_TTY_NAME_MAX , 230  #_SC_TTY_NAME_MAX _SC_TTY_NAME_MAX ) 231 m_SC_THREAD_DESTRUCTOR_ITERATIONS , 232  #_SC_THREAD_DESTRUCTOR_ITERATIONS _SC_THREAD_DESTRUCTOR_ITERATIONS ) 233 m_SC_THREAD_KEYS_MAX , 234  #_SC_THREAD_KEYS_MAX _SC_THREAD_KEYS_MAX ) 235 m_SC_THREAD_STACK_MIN , 236  #_SC_THREAD_STACK_MIN _SC_THREAD_STACK_MIN ) 237 m_SC_THREAD_THREADS_MAX , 238  #_SC_THREAD_THREADS_MAX _SC_THREAD_THREADS_MAX ) 239 m_SC_THREAD_ATTR_STACKADDR , 240  #_SC_THREAD_ATTR_STACKADDR _SC_THREAD_ATTR_STACKADDR ) 241 m_SC_THREAD_ATTR_STACKSIZE , 242  #_SC_THREAD_ATTR_STACKSIZE _SC_THREAD_ATTR_STACKSIZE ) 243 m_SC_THREAD_PRIORITY_SCHEDULING , 244  #_SC_THREAD_PRIORITY_SCHEDULING _SC_THREAD_PRIORITY_SCHEDULING ) 245 m_SC_THREAD_PRIO_INHERIT , 246  #_SC_THREAD_PRIO_INHERIT _SC_THREAD_PRIO_INHERIT ) 247 m_SC_THREAD_PRIO_PROTECT , 248  #_SC_THREAD_PRIO_PROTECT _SC_THREAD_PRIO_PROTECT ) 249 m_SC_THREAD_PROCESS_SHARED , 250  #_SC_THREAD_PROCESS_SHARED _SC_THREAD_PROCESS_SHARED ) 252 m_SC_NPROCESSORS_CONF , 253  #_SC_NPROCESSORS_CONF _SC_NPROCESSORS_CONF ) 254 m_SC_NPROCESSORS_ONLN , 255  #_SC_NPROCESSORS_ONLN _SC_NPROCESSORS_ONLN ) 256 m_SC_PHYS_PAGES , 257  #_SC_PHYS_PAGES _SC_PHYS_PAGES ) 258 m_SC_AVPHYS_PAGES , 259  #_SC_AVPHYS_PAGES _SC_AVPHYS_PAGES ) 260 m_SC_ATEXIT_MAX , 261  #_SC_ATEXIT_MAX _SC_ATEXIT_MAX ) 262 m_SC_PASS_MAX , 263  #_SC_PASS_MAX _SC_PASS_MAX ) 265 m_SC_XOPEN_VERSION , 266  #_SC_XOPEN_VERSION _SC_XOPEN_VERSION ) 267 m_SC_XOPEN_XCU_VERSION , 268  #_SC_XOPEN_XCU_VERSION _SC_XOPEN_XCU_VERSION ) 269 m_SC_XOPEN_UNIX , 270  #_SC_XOPEN_UNIX _SC_XOPEN_UNIX ) 271 m_SC_XOPEN_CRYPT , 272  #_SC_XOPEN_CRYPT _SC_XOPEN_CRYPT ) 273 m_SC_XOPEN_ENH_I18N , 274  #_SC_XOPEN_ENH_I18N _SC_XOPEN_ENH_I18N ) 275 m_SC_XOPEN_SHM , 276  #_SC_XOPEN_SHM _SC_XOPEN_SHM ) 278 m_SC_2_CHAR_TERM , 279  #_SC_2_CHAR_TERM _SC_2_CHAR_TERM ) 280 m_SC_2_C_VERSION , 281  #_SC_2_C_VERSION _SC_2_C_VERSION ) 282 m_SC_2_UPE , 283  #_SC_2_UPE _SC_2_UPE ) 285 m_SC_XOPEN_XPG2 , 286  #_SC_XOPEN_XPG2 _SC_XOPEN_XPG2 ) 287 m_SC_XOPEN_XPG3 , 288  #_SC_XOPEN_XPG3 _SC_XOPEN_XPG3 ) 289 m_SC_XOPEN_XPG4 , 290  #_SC_XOPEN_XPG4 _SC_XOPEN_XPG4 ) 292 m_SC_CHAR_BIT , 293  #_SC_CHAR_BIT _SC_CHAR_BIT ) 294 m_SC_CHAR_MAX , 295  #_SC_CHAR_MAX _SC_CHAR_MAX ) 296 m_SC_CHAR_MIN , 297  #_SC_CHAR_MIN _SC_CHAR_MIN ) 298 m_SC_INT_MAX , 299  #_SC_INT_MAX _SC_INT_MAX ) 300 m_SC_INT_MIN , 301  #_SC_INT_MIN _SC_INT_MIN ) 302 m_SC_LONG_BIT , 303  #_SC_LONG_BIT _SC_LONG_BIT ) 304 m_SC_WORD_BIT , 305  #_SC_WORD_BIT _SC_WORD_BIT ) 306 m_SC_MB_LEN_MAX , 307  #_SC_MB_LEN_MAX _SC_MB_LEN_MAX ) 308 m_SC_NZERO , 309  #_SC_NZERO _SC_NZERO ) 310 m_SC_SSIZE_MAX , 311  #_SC_SSIZE_MAX _SC_SSIZE_MAX ) 312 m_SC_SCHAR_MAX , 313  #_SC_SCHAR_MAX _SC_SCHAR_MAX ) 314 m_SC_SCHAR_MIN , 315  #_SC_SCHAR_MIN _SC_SCHAR_MIN ) 316 m_SC_SHRT_MAX , 317  #_SC_SHRT_MAX _SC_SHRT_MAX ) 318 m_SC_SHRT_MIN , 319  #_SC_SHRT_MIN _SC_SHRT_MIN ) 320 m_SC_UCHAR_MAX , 321  #_SC_UCHAR_MAX _SC_UCHAR_MAX ) 322 m_SC_UINT_MAX , 323  #_SC_UINT_MAX _SC_UINT_MAX ) 324 m_SC_ULONG_MAX , 325  #_SC_ULONG_MAX _SC_ULONG_MAX ) 326 m_SC_USHRT_MAX , 327  #_SC_USHRT_MAX _SC_USHRT_MAX ) 329 m_SC_NL_ARGMAX , 330  #_SC_NL_ARGMAX _SC_NL_ARGMAX ) 331 m_SC_NL_LANGMAX , 332  #_SC_NL_LANGMAX _SC_NL_LANGMAX ) 333 m_SC_NL_MSGMAX , 334  #_SC_NL_MSGMAX _SC_NL_MSGMAX ) 335 m_SC_NL_NMAX , 336  #_SC_NL_NMAX _SC_NL_NMAX ) 337 m_SC_NL_SETMAX , 338  #_SC_NL_SETMAX _SC_NL_SETMAX ) 339 m_SC_NL_TEXTMAX , 340  #_SC_NL_TEXTMAX _SC_NL_TEXTMAX ) 342 m_SC_XBS5_ILP32_OFF32 , 343  #_SC_XBS5_ILP32_OFF32 _SC_XBS5_ILP32_OFF32 ) 344 m_SC_XBS5_ILP32_OFFBIG , 345  #_SC_XBS5_ILP32_OFFBIG _SC_XBS5_ILP32_OFFBIG ) 346 m_SC_XBS5_LP64_OFF64 , 347  #_SC_XBS5_LP64_OFF64 _SC_XBS5_LP64_OFF64 ) 348 m_SC_XBS5_LPBIG_OFFBIG , 349  #_SC_XBS5_LPBIG_OFFBIG _SC_XBS5_LPBIG_OFFBIG ) 351 m_SC_XOPEN_LEGACY , 352  #_SC_XOPEN_LEGACY _SC_XOPEN_LEGACY ) 353 m_SC_XOPEN_REALTIME , 354  #_SC_XOPEN_REALTIME _SC_XOPEN_REALTIME ) 355 m_SC_XOPEN_REALTIME_THREADS , 356  #_SC_XOPEN_REALTIME_THREADS _SC_XOPEN_REALTIME_THREADS ) 358 m_SC_ADVISORY_INFO , 359  #_SC_ADVISORY_INFO _SC_ADVISORY_INFO ) 360 m_SC_BARRIERS , 361  #_SC_BARRIERS _SC_BARRIERS ) 362 m_SC_BASE , 363  #_SC_BASE _SC_BASE ) 364 m_SC_C_LANG_SUPPORT , 365  #_SC_C_LANG_SUPPORT _SC_C_LANG_SUPPORT ) 366 m_SC_C_LANG_SUPPORT_R , 367  #_SC_C_LANG_SUPPORT_R _SC_C_LANG_SUPPORT_R ) 368 m_SC_CLOCK_SELECTION , 369  #_SC_CLOCK_SELECTION _SC_CLOCK_SELECTION ) 370 m_SC_CPUTIME , 371  #_SC_CPUTIME _SC_CPUTIME ) 372 m_SC_THREAD_CPUTIME , 373  #_SC_THREAD_CPUTIME _SC_THREAD_CPUTIME ) 374 m_SC_DEVICE_IO , 375  #_SC_DEVICE_IO _SC_DEVICE_IO ) 376 m_SC_DEVICE_SPECIFIC , 377  #_SC_DEVICE_SPECIFIC _SC_DEVICE_SPECIFIC ) 378 m_SC_DEVICE_SPECIFIC_R , 379  #_SC_DEVICE_SPECIFIC_R _SC_DEVICE_SPECIFIC_R ) 380 m_SC_FD_MGMT , 381  #_SC_FD_MGMT _SC_FD_MGMT ) 382 m_SC_FIFO , 383  #_SC_FIFO _SC_FIFO ) 384 m_SC_PIPE , 385  #_SC_PIPE _SC_PIPE ) 386 m_SC_FILE_ATTRIBUTES , 387  #_SC_FILE_ATTRIBUTES _SC_FILE_ATTRIBUTES ) 388 m_SC_FILE_LOCKING , 389  #_SC_FILE_LOCKING _SC_FILE_LOCKING ) 390 m_SC_FILE_SYSTEM , 391  #_SC_FILE_SYSTEM _SC_FILE_SYSTEM ) 392 m_SC_MONOTONIC_CLOCK , 393  #_SC_MONOTONIC_CLOCK _SC_MONOTONIC_CLOCK ) 394 m_SC_MULTI_PROCESS , 395  #_SC_MULTI_PROCESS _SC_MULTI_PROCESS ) 396 m_SC_SINGLE_PROCESS , 397  #_SC_SINGLE_PROCESS _SC_SINGLE_PROCESS ) 398 m_SC_NETWORKING , 399  #_SC_NETWORKING _SC_NETWORKING ) 400 m_SC_READER_WRITER_LOCKS , 401  #_SC_READER_WRITER_LOCKS _SC_READER_WRITER_LOCKS ) 402 m_SC_SPIN_LOCKS , 403  #_SC_SPIN_LOCKS _SC_SPIN_LOCKS ) 404 m_SC_REGEXP , 405  #_SC_REGEXP _SC_REGEXP ) 406 m_SC_REGEX_VERSION , 407  #_SC_REGEX_VERSION _SC_REGEX_VERSION ) 408 m_SC_SHELL , 409  #_SC_SHELL _SC_SHELL ) 410 m_SC_SIGNALS , 411  #_SC_SIGNALS _SC_SIGNALS ) 412 m_SC_SPAWN , 413  #_SC_SPAWN _SC_SPAWN ) 414 m_SC_SPORADIC_SERVER , 415  #_SC_SPORADIC_SERVER _SC_SPORADIC_SERVER ) 416 m_SC_THREAD_SPORADIC_SERVER , 417  #_SC_THREAD_SPORADIC_SERVER _SC_THREAD_SPORADIC_SERVER ) 418 m_SC_SYSTEM_DATABASE , 419  #_SC_SYSTEM_DATABASE _SC_SYSTEM_DATABASE ) 420 m_SC_SYSTEM_DATABASE_R , 421  #_SC_SYSTEM_DATABASE_R _SC_SYSTEM_DATABASE_R ) 422 m_SC_TIMEOUTS , 423  #_SC_TIMEOUTS _SC_TIMEOUTS ) 424 m_SC_TYPED_MEMORY_OBJECTS , 425  #_SC_TYPED_MEMORY_OBJECTS _SC_TYPED_MEMORY_OBJECTS ) 426 m_SC_USER_GROUPS , 427  #_SC_USER_GROUPS _SC_USER_GROUPS ) 428 m_SC_USER_GROUPS_R , 429  #_SC_USER_GROUPS_R _SC_USER_GROUPS_R ) 430 m_SC_2_PBS , 431  #_SC_2_PBS _SC_2_PBS ) 432 m_SC_2_PBS_ACCOUNTING , 433  #_SC_2_PBS_ACCOUNTING _SC_2_PBS_ACCOUNTING ) 434 m_SC_2_PBS_LOCATE , 435  #_SC_2_PBS_LOCATE _SC_2_PBS_LOCATE ) 436 m_SC_2_PBS_MESSAGE , 437  #_SC_2_PBS_MESSAGE _SC_2_PBS_MESSAGE ) 438 m_SC_2_PBS_TRACK , 439  #_SC_2_PBS_TRACK _SC_2_PBS_TRACK ) 440 m_SC_SYMLOOP_MAX , 441  #_SC_SYMLOOP_MAX _SC_SYMLOOP_MAX ) 442 m_SC_STREAMS , 443  #_SC_STREAMS _SC_STREAMS ) 444 m_SC_2_PBS_CHECKPOINT , 445  #_SC_2_PBS_CHECKPOINT _SC_2_PBS_CHECKPOINT ) 447 m_SC_V6_ILP32_OFF32 , 448  #_SC_V6_ILP32_OFF32 _SC_V6_ILP32_OFF32 ) 449 m_SC_V6_ILP32_OFFBIG , 450  #_SC_V6_ILP32_OFFBIG _SC_V6_ILP32_OFFBIG ) 451 m_SC_V6_LP64_OFF64 , 452  #_SC_V6_LP64_OFF64 _SC_V6_LP64_OFF64 ) 453 m_SC_V6_LPBIG_OFFBIG , 454  #_SC_V6_LPBIG_OFFBIG _SC_V6_LPBIG_OFFBIG ) 456 m_SC_HOST_NAME_MAX , 457  #_SC_HOST_NAME_MAX _SC_HOST_NAME_MAX ) 458 m_SC_TRACE , 459  #_SC_TRACE _SC_TRACE ) 460 m_SC_TRACE_EVENT_FILTER , 461  #_SC_TRACE_EVENT_FILTER _SC_TRACE_EVENT_FILTER ) 462 m_SC_TRACE_INHERIT , 463  #_SC_TRACE_INHERIT _SC_TRACE_INHERIT ) 464 m_SC_TRACE_LOG , 465  #_SC_TRACE_LOG _SC_TRACE_LOG ) 467 m_SC_LEVEL1_ICACHE_SIZE , 468  #_SC_LEVEL1_ICACHE_SIZE _SC_LEVEL1_ICACHE_SIZE ) 469 m_SC_LEVEL1_ICACHE_ASSOC , 470  #_SC_LEVEL1_ICACHE_ASSOC _SC_LEVEL1_ICACHE_ASSOC ) 471 m_SC_LEVEL1_ICACHE_LINESIZE , 472  #_SC_LEVEL1_ICACHE_LINESIZE _SC_LEVEL1_ICACHE_LINESIZE ) 473 m_SC_LEVEL1_DCACHE_SIZE , 474  #_SC_LEVEL1_DCACHE_SIZE _SC_LEVEL1_DCACHE_SIZE ) 475 m_SC_LEVEL1_DCACHE_ASSOC , 476  #_SC_LEVEL1_DCACHE_ASSOC _SC_LEVEL1_DCACHE_ASSOC ) 477 m_SC_LEVEL1_DCACHE_LINESIZE , 478  #_SC_LEVEL1_DCACHE_LINESIZE _SC_LEVEL1_DCACHE_LINESIZE ) 479 m_SC_LEVEL2_CACHE_SIZE , 480  #_SC_LEVEL2_CACHE_SIZE _SC_LEVEL2_CACHE_SIZE ) 481 m_SC_LEVEL2_CACHE_ASSOC , 482  #_SC_LEVEL2_CACHE_ASSOC _SC_LEVEL2_CACHE_ASSOC ) 483 m_SC_LEVEL2_CACHE_LINESIZE , 484  #_SC_LEVEL2_CACHE_LINESIZE _SC_LEVEL2_CACHE_LINESIZE ) 485 m_SC_LEVEL3_CACHE_SIZE , 486  #_SC_LEVEL3_CACHE_SIZE _SC_LEVEL3_CACHE_SIZE ) 487 m_SC_LEVEL3_CACHE_ASSOC , 488  #_SC_LEVEL3_CACHE_ASSOC _SC_LEVEL3_CACHE_ASSOC ) 489 m_SC_LEVEL3_CACHE_LINESIZE , 490  #_SC_LEVEL3_CACHE_LINESIZE _SC_LEVEL3_CACHE_LINESIZE ) 491 m_SC_LEVEL4_CACHE_SIZE , 492  #_SC_LEVEL4_CACHE_SIZE _SC_LEVEL4_CACHE_SIZE ) 493 m_SC_LEVEL4_CACHE_ASSOC , 494  #_SC_LEVEL4_CACHE_ASSOC _SC_LEVEL4_CACHE_ASSOC ) 495 m_SC_LEVEL4_CACHE_LINESIZE , 496  #_SC_LEVEL4_CACHE_LINESIZE _SC_LEVEL4_CACHE_LINESIZE ) 499 m_SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50, 500  #_SC_IPV6 _SC_IPV6 ) 501 m_SC_RAW_SOCKETS 502  #_SC_RAW_SOCKETS _SC_RAW_SOCKETS ) 508 m_CS_PATH , 509  #_CS_PATH _CS_PATH ) 511 m_CS_V6_WIDTH_RESTRICTED_ENVS , 512  #_CS_V6_WIDTH_RESTRICTED_ENVS _CS_V6_WIDTH_RESTRICTED_ENVS ) 513  #_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS _CS_V6_WIDTH_RESTRICTED_ENVS ) 515 m_CS_GNU_LIBC_VERSION , 516  #_CS_GNU_LIBC_VERSION _CS_GNU_LIBC_VERSION ) 517 m_CS_GNU_LIBPTHREAD_VERSION , 518  #_CS_GNU_LIBPTHREAD_VERSION _CS_GNU_LIBPTHREAD_VERSION ) 520 m_CS_LFS_CFLAGS = 1000, 521  #_CS_LFS_CFLAGS _CS_LFS_CFLAGS ) 522 m_CS_LFS_LDFLAGS , 523  #_CS_LFS_LDFLAGS _CS_LFS_LDFLAGS ) 524 m_CS_LFS_LIBS , 525  #_CS_LFS_LIBS _CS_LFS_LIBS ) 526 m_CS_LFS_LINTFLAGS , 527  #_CS_LFS_LINTFLAGS _CS_LFS_LINTFLAGS ) 528 m_CS_LFS64_CFLAGS , 529  #_CS_LFS64_CFLAGS _CS_LFS64_CFLAGS ) 530 m_CS_LFS64_LDFLAGS , 531  #_CS_LFS64_LDFLAGS _CS_LFS64_LDFLAGS ) 532 m_CS_LFS64_LIBS , 533  #_CS_LFS64_LIBS _CS_LFS64_LIBS ) 534 m_CS_LFS64_LINTFLAGS , 535  #_CS_LFS64_LINTFLAGS _CS_LFS64_LINTFLAGS ) 537 m_CS_XBS5_ILP32_OFF32_CFLAGS = 1100, 538  #_CS_XBS5_ILP32_OFF32_CFLAGS _CS_XBS5_ILP32_OFF32_CFLAGS ) 539 m_CS_XBS5_ILP32_OFF32_LDFLAGS , 540  #_CS_XBS5_ILP32_OFF32_LDFLAGS _CS_XBS5_ILP32_OFF32_LDFLAGS ) 541 m_CS_XBS5_ILP32_OFF32_LIBS , 542  #_CS_XBS5_ILP32_OFF32_LIBS _CS_XBS5_ILP32_OFF32_LIBS ) 543 m_CS_XBS5_ILP32_OFF32_LINTFLAGS , 544  #_CS_XBS5_ILP32_OFF32_LINTFLAGS _CS_XBS5_ILP32_OFF32_LINTFLAGS ) 545 m_CS_XBS5_ILP32_OFFBIG_CFLAGS , 546  #_CS_XBS5_ILP32_OFFBIG_CFLAGS _CS_XBS5_ILP32_OFFBIG_CFLAGS ) 547 m_CS_XBS5_ILP32_OFFBIG_LDFLAGS , 548  #_CS_XBS5_ILP32_OFFBIG_LDFLAGS _CS_XBS5_ILP32_OFFBIG_LDFLAGS ) 549 m_CS_XBS5_ILP32_OFFBIG_LIBS , 550  #_CS_XBS5_ILP32_OFFBIG_LIBS _CS_XBS5_ILP32_OFFBIG_LIBS ) 551 m_CS_XBS5_ILP32_OFFBIG_LINTFLAGS , 552  #_CS_XBS5_ILP32_OFFBIG_LINTFLAGS _CS_XBS5_ILP32_OFFBIG_LINTFLAGS ) 553 m_CS_XBS5_LP64_OFF64_CFLAGS , 554  #_CS_XBS5_LP64_OFF64_CFLAGS _CS_XBS5_LP64_OFF64_CFLAGS ) 555 m_CS_XBS5_LP64_OFF64_LDFLAGS , 556  #_CS_XBS5_LP64_OFF64_LDFLAGS _CS_XBS5_LP64_OFF64_LDFLAGS ) 557 m_CS_XBS5_LP64_OFF64_LIBS , 558  #_CS_XBS5_LP64_OFF64_LIBS _CS_XBS5_LP64_OFF64_LIBS ) 559 m_CS_XBS5_LP64_OFF64_LINTFLAGS , 560  #_CS_XBS5_LP64_OFF64_LINTFLAGS _CS_XBS5_LP64_OFF64_LINTFLAGS ) 561 m_CS_XBS5_LPBIG_OFFBIG_CFLAGS , 562  #_CS_XBS5_LPBIG_OFFBIG_CFLAGS _CS_XBS5_LPBIG_OFFBIG_CFLAGS ) 563 m_CS_XBS5_LPBIG_OFFBIG_LDFLAGS , 564  #_CS_XBS5_LPBIG_OFFBIG_LDFLAGS _CS_XBS5_LPBIG_OFFBIG_LDFLAGS ) 565 m_CS_XBS5_LPBIG_OFFBIG_LIBS , 566  #_CS_XBS5_LPBIG_OFFBIG_LIBS _CS_XBS5_LPBIG_OFFBIG_LIBS ) 567 m_CS_XBS5_LPBIG_OFFBIG_LINTFLAGS , 568  #_CS_XBS5_LPBIG_OFFBIG_LINTFLAGS _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS ) 570 m_CS_POSIX_V6_ILP32_OFF32_CFLAGS , 571  #_CS_POSIX_V6_ILP32_OFF32_CFLAGS _CS_POSIX_V6_ILP32_OFF32_CFLAGS ) 572 m_CS_POSIX_V6_ILP32_OFF32_LDFLAGS , 573  #_CS_POSIX_V6_ILP32_OFF32_LDFLAGS _CS_POSIX_V6_ILP32_OFF32_LDFLAGS ) 574 m_CS_POSIX_V6_ILP32_OFF32_LIBS , 575  #_CS_POSIX_V6_ILP32_OFF32_LIBS _CS_POSIX_V6_ILP32_OFF32_LIBS ) 576 m_CS_POSIX_V6_ILP32_OFF32_LINTFLAGS , 577  #_CS_POSIX_V6_ILP32_OFF32_LINTFLAGS _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS ) 578 m_CS_POSIX_V6_ILP32_OFFBIG_CFLAGS , 579  #_CS_POSIX_V6_ILP32_OFFBIG_CFLAGS _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS ) 580 m_CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS , 581  #_CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS ) 582 m_CS_POSIX_V6_ILP32_OFFBIG_LIBS , 583  #_CS_POSIX_V6_ILP32_OFFBIG_LIBS _CS_POSIX_V6_ILP32_OFFBIG_LIBS ) 584 m_CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS , 585  #_CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS ) 586 m_CS_POSIX_V6_LP64_OFF64_CFLAGS , 587  #_CS_POSIX_V6_LP64_OFF64_CFLAGS _CS_POSIX_V6_LP64_OFF64_CFLAGS ) 588 m_CS_POSIX_V6_LP64_OFF64_LDFLAGS , 589  #_CS_POSIX_V6_LP64_OFF64_LDFLAGS _CS_POSIX_V6_LP64_OFF64_LDFLAGS ) 590 m_CS_POSIX_V6_LP64_OFF64_LIBS , 591  #_CS_POSIX_V6_LP64_OFF64_LIBS _CS_POSIX_V6_LP64_OFF64_LIBS ) 592 m_CS_POSIX_V6_LP64_OFF64_LINTFLAGS , 593  #_CS_POSIX_V6_LP64_OFF64_LINTFLAGS _CS_POSIX_V6_LP64_OFF64_LINTFLAGS ) 594 m_CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS , 595  #_CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS ) 596 m_CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS , 597  #_CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS ) 598 m_CS_POSIX_V6_LPBIG_OFFBIG_LIBS , 599  #_CS_POSIX_V6_LPBIG_OFFBIG_LIBS _CS_POSIX_V6_LPBIG_OFFBIG_LIBS ) 600 m_CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS 601  #_CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS ) @/usr/include/bits/dirent.h 19 #iâdeà _DIRENT_H 23  sdœ’t 25 #iâdeà __USE_FILE_OFFSET64 26 __šo_t md_šo ; 27 __off_t md_off ; 29 __šo64_t md_šo ; 30 __off64_t md_off ; 32  md_»þ’ ; 33  md_ty³ ; 34  md_Çme [256]; 37 #ifdeà __USE_LARGEFILE64 38  sdœ’t64 40 __šo64_t md_šo ; 41 __off64_t md_off ; 42  md_»þ’ ; 43  md_ty³ ; 44  md_Çme [256]; 48  #d_fž’o d_šo ) 50 #undeà _DIRENT_HAVE_D_NAMLEN 51  #_DIRENT_HAVE_D_RECLEN ) 52  #_DIRENT_HAVE_D_OFF ) 53  #_DIRENT_HAVE_D_TYPE ) @/usr/include/bits/dlfcn.h 20 #iâdeà _DLFCN_H 25  #RTLD_LAZY 0x00001 ) 26  #RTLD_NOW 0x00002 ) 27  #RTLD_BINDING_MASK 0x3 ) 28  #RTLD_NOLOAD 0x00004 ) 29  #RTLD_DEEPBIND 0x00008 ) 34  #RTLD_GLOBAL 0x00100 ) 39  #RTLD_LOCAL 0 ) 42  #RTLD_NODELETE 0x01000 ) 44 #ifdeà __USE_GNU 55  #DL_CALL_FCT ( fùp , ¬gs ) \ 56 ( `_dl_mcouÁ_w¿µ”_check ((*è( fùp )), (*(fùp)è ¬gs ) ) 58 __BEGIN_DECLS 61  $_dl_mcouÁ_w¿µ”_check (* __£låc è __THROW ; 63 __END_DECLS @/usr/include/bits/environments.h 19 #iâdeà _UNISTD_H 23  ~ 41 #ià __WORDSIZE == 64 53  #_POSIX_V6_LPBIG_OFFBIG -1 ) 54  #_XBS5_LPBIG_OFFBIG -1 ) 57  #_POSIX_V6_LP64_OFF64 1 ) 58  #_XBS5_LP64_OFF64 1 ) 64  #_POSIX_V6_ILP32_OFF32 1 ) 65  #_POSIX_V6_ILP32_OFFBIG 1 ) 66  #_XBS5_ILP32_OFF32 1 ) 67  #_XBS5_ILP32_OFFBIG 1 ) 82  #__ILP32_OFF32_CFLAGS "-m32" ) 83  #__ILP32_OFFBIG_CFLAGS "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" ) 84  #__ILP32_OFF32_LDFLAGS "-m32" ) 85  #__ILP32_OFFBIG_LDFLAGS "-m32" ) 86  #__LP64_OFF64_CFLAGS "-m64" ) 87  #__LP64_OFF64_LDFLAGS "-m64" ) @/usr/include/bits/errno.h 20 #ifdeà _ERRNO_H 22 #undeà EDOM 23 #undeà EILSEQ 24 #undeà ERANGE 25  ~ 28  #ENOTSUP EOPNOTSUPP ) 31 #iâdeà ECANCELED 32  #ECANCELED 125 ) 36 #iâdeà EOWNERDEAD 37  #EOWNERDEAD 130 ) 38  #ENOTRECOVERABLE 131 ) 41 #iâdeà __ASSEMBLER__ 43 * $__”ºo_loÿtiÚ (è __THROW `__©Œibu‹__ (( __cÚ¡__ )); 45 #ià! defšed _LIBC || defšed _LIBC_REENTRANT 47  #”ºo (* `__”ºo_loÿtiÚ ()) ) 52 #ià! defšed _ERRNO_H && defšed __Ãed_Em©h 56  #EDOM 33 ) 57  #EILSEQ 84 ) 58  #ERANGE 34 ) @/usr/include/bits/fcntl.h 20 #iâdef _FCNTL_H 24  ~ 25  ~ 26 #ifdeà __USE_GNU 27  ~ 33  #O_ACCMODE 0003 ) 34  #O_RDONLY 00 ) 35  #O_WRONLY 01 ) 36  #O_RDWR 02 ) 37  #O_CREAT 0100 ) 38  #O_EXCL 0200 ) 39  #O_NOCTTY 0400 ) 40  #O_TRUNC 01000 ) 41  #O_APPEND 02000 ) 42  #O_NONBLOCK 04000 ) 43  #O_NDELAY O_NONBLOCK ) 44  #O_SYNC 010000 ) 45  #O_FSYNC O_SYNC ) 46  #O_ASYNC 020000 ) 48 #ifdeà __USE_GNU 49  #O_DIRECT 040000 ) 50  #O_DIRECTORY 0200000 ) 51  #O_NOFOLLOW 0400000 ) 52  #O_NOATIME 01000000 ) 53  #O_CLOEXEC 02000000 ) 59 #ià defšed __USE_POSIX199309 || defšed __USE_UNIX98 60  #O_DSYNC O_SYNC ) 61  #O_RSYNC O_SYNC ) 64 #ifdeà __USE_LARGEFILE64 65 #ià __WORDSIZE == 64 66  #O_LARGEFILE 0 ) 68  #O_LARGEFILE 0100000 ) 73  #F_DUPFD 0 ) 74  #F_GETFD 1 ) 75  #F_SETFD 2 ) 76  #F_GETFL 3 ) 77  #F_SETFL 4 ) 78 #ià __WORDSIZE == 64 79  #F_GETLK 5 ) 80  #F_SETLK 6 ) 81  #F_SETLKW 7 ) 83  #F_GETLK64 5 ) 84  #F_SETLK64 6 ) 85  #F_SETLKW64 7 ) 87 #iâdeà __USE_FILE_OFFSET64 88  #F_GETLK 5 ) 89  #F_SETLK 6 ) 90  #F_SETLKW 7 ) 92  #F_GETLK F_GETLK64 ) 93  #F_SETLK F_SETLK64 ) 94  #F_SETLKW F_SETLKW64 ) 96  #F_GETLK64 12 ) 97  #F_SETLK64 13 ) 98  #F_SETLKW64 14 ) 101 #ià defšed __USE_BSD || defšed __USE_UNIX98 102  #F_SETOWN 8 ) 103  #F_GETOWN 9 ) 106 #ifdeà __USE_GNU 107  #F_SETSIG 10 ) 108  #F_GETSIG 11 ) 111 #ifdeà __USE_GNU 112  #F_SETLEASE 1024 ) 113  #F_GETLEASE 1025 ) 114  #F_NOTIFY 1026 ) 115  #F_DUPFD_CLOEXEC 1030 ) 120  #FD_CLOEXEC 1 ) 123  #F_RDLCK 0 ) 124  #F_WRLCK 1 ) 125  #F_UNLCK 2 ) 128  #F_EXLCK 4 ) 129  #F_SHLCK 8 ) 131 #ifdeà __USE_BSD 133  #LOCK_SH 1 ) 134  #LOCK_EX 2 ) 135  #LOCK_NB 4 ) 137  #LOCK_UN 8 ) 140 #ifdeà __USE_GNU 141  #LOCK_MAND 32 ) 142  #LOCK_READ 64 ) 143  #LOCK_WRITE 128 ) 144  #LOCK_RW 192 ) 147 #ifdeà __USE_GNU 149  #DN_ACCESS 0x00000001 ) 150  #DN_MODIFY 0x00000002 ) 151  #DN_CREATE 0x00000004 ) 152  #DN_DELETE 0x00000008 ) 153  #DN_RENAME 0x00000010 ) 154  #DN_ATTRIB 0x00000020 ) 155  #DN_MULTISHOT 0x80000000 ) 158  sæock 160  ml_ty³ ; 161  ml_wh’û ; 162 #iâdeà __USE_FILE_OFFSET64 163 __off_t ml_¡¬t ; 164 __off_t ml_Ën ; 166 __off64_t ml_¡¬t ; 167 __off64_t ml_Ën ; 169 __pid_t ml_pid ; 172 #ifdeà __USE_LARGEFILE64 173  sæock64 175  ml_ty³ ; 176  ml_wh’û ; 177 __off64_t ml_¡¬t ; 178 __off64_t ml_Ën ; 179 __pid_t ml_pid ; 185 #ifdef __USE_BSD 186  #FAPPEND O_APPEND ) 187  #FFSYNC O_FSYNC ) 188  #FASYNC O_ASYNC ) 189  #FNONBLOCK O_NONBLOCK ) 190  #FNDELAY O_NDELAY ) 194 #ifdeà __USE_XOPEN2K 195  #POSIX_FADV_NORMAL 0 ) 196  #POSIX_FADV_RANDOM 1 ) 197  #POSIX_FADV_SEQUENTIAL 2 ) 198  #POSIX_FADV_WILLNEED 3 ) 199  #POSIX_FADV_DONTNEED 4 ) 200  #POSIX_FADV_NOREUSE 5 ) 204 #ifdeà __USE_GNU 206  #SYNC_FILE_RANGE_WAIT_BEFORE 1 ) 209  #SYNC_FILE_RANGE_WRITE 2 ) 212  #SYNC_FILE_RANGE_WAIT_AFTER 4 ) 217  #SPLICE_F_MOVE 1 ) 218  #SPLICE_F_NONBLOCK 2 ) 221  #SPLICE_F_MORE 4 ) 222  #SPLICE_F_GIFT 8 ) 225 g__BEGIN_DECLS 227 #ifdeà __USE_GNU 230 ssize_t $»adah—d ( __fd , __off64_t __off£t , size_t __couÁ ) 231 __THROW ; 235  `sync_fže_¿nge ( __fd , __off64_t __äom , __off64_ˆ __to , 236  __æags ); 240 ssize_t `vm¥liû ( __fdout , cÚ¡  iovec * __iov , 241 size_t __couÁ ,  __æags ); 244 ssize_t `¥liû ( __fdš , __off64_t * __offš ,  __fdout , 245 __off64_t * __offout , size_t __Ën , 246  __æags ); 249 ssize_t `‹e ( __fdš ,  __fdout , size_t __Ën , 250  __æags ); 254 __END_DECLS @/usr/include/bits/fcntl2.h 20 #iâdef _FCNTL_H 26 #iâdeà __USE_FILE_OFFSET64 27  $__Ý’_2 ( __cÚ¡ * __·th ,  __oæag è `__nÚnuÎ ((1)); 28  `__REDIRECT ( __Ý’_®Ÿs , ( __cÚ¡ * __·th ,  __oæag , ...), 29 Ý’ è `__nÚnuÎ ((1)); 31  `__REDIRECT ( __Ý’_2 , ( __cÚ¡ * __·th ,  __oæag ), 32 __Ý’64_2 è `__nÚnuÎ ((1)); 33  `__REDIRECT ( __Ý’_®Ÿs , ( __cÚ¡ * __·th ,  __oæag , ...), 34 Ý’64 è `__nÚnuÎ ((1)); 36 `__”rÜdeþ ( __Ý’_too_mªy_¬gs , 38 `__”rÜdeþ ( __Ý’_missšg_mode , 41 __ex‹º_®ways_šlše  42 $Ý’ ( __cÚ¡ * __·th ,  __oæag , ...) 44 ià( `__va_¬g_·ck_Ën () > 1) 45 `__Ý’_too_mªy_¬gs (); 47 ià( `__bužtš_cÚ¡ªt_p ( __oæag )) 49 ià(( __oæag & O_CREAT è!ð0 && `__va_¬g_·ck_Ën () < 1) 51 `__Ý’_missšg_mode (); 52  `__Ý’_2 ( __·th , __oæag ); 54  `__Ý’_®Ÿs ( __·th , __oæag , `__va_¬g_·ck ()); 57 ià( `__va_¬g_·ck_Ën () < 1) 58  `__Ý’_2 ( __·th , __oæag ); 60  `__Ý’_®Ÿs ( __·th , __oæag , `__va_¬g_·ck ()); 61 } } 64 #ifdeà __USE_LARGEFILE64 65  $__Ý’64_2 ( __cÚ¡ * __·th ,  __oæag è `__nÚnuÎ ((1)); 66  `__REDIRECT ( __Ý’64_®Ÿs , ( __cÚ¡ * __·th ,  __oæag , 67 ...), Ý’64 è `__nÚnuÎ ((1)); 68 `__”rÜdeþ ( __Ý’64_too_mªy_¬gs , 70 `__”rÜdeþ ( __Ý’64_missšg_mode , 73 __ex‹º_®ways_šlše  74 $Ý’64 ( __cÚ¡ * __·th ,  __oæag , ...) 76 ià( `__va_¬g_·ck_Ën () > 1) 77 `__Ý’64_too_mªy_¬gs (); 79 ià( `__bužtš_cÚ¡ªt_p ( __oæag )) 81 ià(( __oæag & O_CREAT è!ð0 && `__va_¬g_·ck_Ën () < 1) 83 `__Ý’64_missšg_mode (); 84  `__Ý’64_2 ( __·th , __oæag ); 86  `__Ý’64_®Ÿs ( __·th , __oæag , `__va_¬g_·ck ()); 89 ià( `__va_¬g_·ck_Ën () < 1) 90  `__Ý’64_2 ( __·th , __oæag ); 92  `__Ý’64_®Ÿs ( __·th , __oæag , `__va_¬g_·ck ()); 93 } } 97 #ifdeà __USE_ATFILE 98 #iâdeà __USE_FILE_OFFSET64 99  $__Ý’©_2 ( __fd , __cÚ¡ * __·th ,  __oæag ) 100 `__nÚnuÎ ((2)); 101  `__REDIRECT ( __Ý’©_®Ÿs , ( __fd , __cÚ¡ * __·th , 102  __oæag , ...), Ý’© ) 103 `__nÚnuÎ ((2)); 105  `__REDIRECT ( __Ý’©_2 , ( __fd , __cÚ¡ * __·th , 106  __oæag ), __Ý’©64_2 ) 107 `__nÚnuÎ ((2)); 108  `__REDIRECT ( __Ý’©_®Ÿs , ( __fd , __cÚ¡ * __·th , 109  __oæag , ...), Ý’©64 ) 110 `__nÚnuÎ ((2)); 112 `__”rÜdeþ ( __Ý’©_too_mªy_¬gs , 114 `__”rÜdeþ ( __Ý’©_missšg_mode , 117 __ex‹º_®ways_šlše  118 $Ý’© ( __fd , __cÚ¡ * __·th ,  __oæag , ...) 120 ià( `__va_¬g_·ck_Ën () > 1) 121 `__Ý’©_too_mªy_¬gs (); 123 ià( `__bužtš_cÚ¡ªt_p ( __oæag )) 125 ià(( __oæag & O_CREAT è!ð0 && `__va_¬g_·ck_Ën () < 1) 127 `__Ý’©_missšg_mode (); 128  `__Ý’©_2 ( __fd , __·th , __oæag ); 130  `__Ý’©_®Ÿs ( __fd , __·th , __oæag , `__va_¬g_·ck ()); 133 ià( `__va_¬g_·ck_Ën () < 1) 134  `__Ý’©_2 ( __fd , __·th , __oæag ); 136  `__Ý’©_®Ÿs ( __fd , __·th , __oæag , `__va_¬g_·ck ()); 137 } } 140 #ifdeà __USE_LARGEFILE64 141  $__Ý’©64_2 ( __fd , __cÚ¡ * __·th ,  __oæag ) 142 `__nÚnuÎ ((2)); 143  `__REDIRECT ( __Ý’©64_®Ÿs , ( __fd , __cÚ¡ * __·th , 144  __oæag , ...), Ý’©64 ) 145 `__nÚnuÎ ((2)); 146 `__”rÜdeþ ( __Ý’©64_too_mªy_¬gs , 148 `__”rÜdeþ ( __Ý’©64_missšg_mode , 151 __ex‹º_®ways_šlše  152 $Ý’©64 ( __fd , __cÚ¡ * __·th ,  __oæag , ...) 154 ià( `__va_¬g_·ck_Ën () > 1) 155 `__Ý’©64_too_mªy_¬gs (); 157 ià( `__bužtš_cÚ¡ªt_p ( __oæag )) 159 ià(( __oæag & O_CREAT è!ð0 && `__va_¬g_·ck_Ën () < 1) 161 `__Ý’©64_missšg_mode (); 162  `__Ý’©64_2 ( __fd , __·th , __oæag ); 164  `__Ý’©64_®Ÿs ( __fd , __·th , __oæag , `__va_¬g_·ck ()); 167 ià( `__va_¬g_·ck_Ën () < 1) 168  `__Ý’©64_2 ( __fd , __·th , __oæag ); 170  `__Ý’©64_®Ÿs ( __fd , __·th , __oæag , `__va_¬g_·ck ()); 171 } } @/usr/include/bits/in.h 21 #iâdeà _NETINET_IN_H 28  #IP_OPTIONS 4 ) 29  #IP_HDRINCL 3 ) 30  #IP_TOS 1 ) 31  #IP_TTL 2 ) 32  #IP_RECVOPTS 6 ) 34  #IP_RECVRETOPTS IP_RETOPTS ) 35  #IP_RETOPTS 7 ) 36  #IP_MULTICAST_IF 32 ) 37  #IP_MULTICAST_TTL 33 ) 38  #IP_MULTICAST_LOOP 34 ) 39  #IP_ADD_MEMBERSHIP 35 ) 40  #IP_DROP_MEMBERSHIP 36 ) 41  #IP_UNBLOCK_SOURCE 37 ) 42  #IP_BLOCK_SOURCE 38 ) 43  #IP_ADD_SOURCE_MEMBERSHIP 39 ) 44  #IP_DROP_SOURCE_MEMBERSHIP 40 ) 45  #IP_MSFILTER 41 ) 46  #MCAST_JOIN_GROUP 42 ) 47  #MCAST_BLOCK_SOURCE 43 ) 48  #MCAST_UNBLOCK_SOURCE 44 ) 49  #MCAST_LEAVE_GROUP 45 ) 50  #MCAST_JOIN_SOURCE_GROUP 46 ) 51  #MCAST_LEAVE_SOURCE_GROUP 47 ) 52  #MCAST_MSFILTER 48 ) 54  #MCAST_EXCLUDE 0 ) 55  #MCAST_INCLUDE 1 ) 57  #IP_ROUTER_ALERT 5 ) 58  #IP_PKTINFO 8 ) 59  #IP_PKTOPTIONS 9 ) 60  #IP_PMTUDISC 10 ) 61  #IP_MTU_DISCOVER 10 ) 62  #IP_RECVERR 11 ) 63  #IP_RECVTTL 12 ) 64  #IP_RECVTOS 13 ) 68  #IP_PMTUDISC_DONT 0 ) 69  #IP_PMTUDISC_WANT 1 ) 70  #IP_PMTUDISC_DO 2 ) 73  #SOL_IP 0 ) 75  #IP_DEFAULT_MULTICAST_TTL 1 ) 76  #IP_DEFAULT_MULTICAST_LOOP 1 ) 77  #IP_MAX_MEMBERSHIPS 20 ) 82  s_Ýts 84  š_addr m_d¡ ; 85  m_Ýts [40]; 89  s_m»qn 91  š_addr mimr_muÉŸddr ; 92  š_addr mimr_add»ss ; 93  mimr_ifšdex ; 97  sš_pktšfo 99  mi_ifšdex ; 100  š_addr mi_¥ec_d¡ ; 101  š_addr mi_addr ; 107  #IPV6_ADDRFORM 1 ) 108  #IPV6_2292PKTINFO 2 ) 109  #IPV6_2292HOPOPTS 3 ) 110  #IPV6_2292DSTOPTS 4 ) 111  #IPV6_2292RTHDR 5 ) 112  #IPV6_2292PKTOPTIONS 6 ) 113  #IPV6_CHECKSUM 7 ) 114  #IPV6_2292HOPLIMIT 8 ) 116  #SCM_SRCRT IPV6_RXSRCRT ) 118  #IPV6_NEXTHOP 9 ) 119  #IPV6_AUTHHDR 10 ) 120  #IPV6_UNICAST_HOPS 16 ) 121  #IPV6_MULTICAST_IF 17 ) 122  #IPV6_MULTICAST_HOPS 18 ) 123  #IPV6_MULTICAST_LOOP 19 ) 124  #IPV6_JOIN_GROUP 20 ) 125  #IPV6_LEAVE_GROUP 21 ) 126  #IPV6_ROUTER_ALERT 22 ) 127  #IPV6_MTU_DISCOVER 23 ) 128  #IPV6_MTU 24 ) 129  #IPV6_RECVERR 25 ) 130  #IPV6_V6ONLY 26 ) 131  #IPV6_JOIN_ANYCAST 27 ) 132  #IPV6_LEAVE_ANYCAST 28 ) 133  #IPV6_IPSEC_POLICY 34 ) 134  #IPV6_XFRM_POLICY 35 ) 136  #IPV6_RECVPKTINFO 49 ) 137  #IPV6_PKTINFO 50 ) 138  #IPV6_RECVHOPLIMIT 51 ) 139  #IPV6_HOPLIMIT 52 ) 140  #IPV6_RECVHOPOPTS 53 ) 141  #IPV6_HOPOPTS 54 ) 142  #IPV6_RTHDRDSTOPTS 55 ) 143  #IPV6_RECVRTHDR 56 ) 144  #IPV6_RTHDR 57 ) 145  #IPV6_RECVDSTOPTS 58 ) 146  #IPV6_DSTOPTS 59 ) 148  #IPV6_RECVTCLASS 66 ) 149  #IPV6_TCLASS 67 ) 152  #IPV6_ADD_MEMBERSHIP IPV6_JOIN_GROUP ) 153  #IPV6_DROP_MEMBERSHIP IPV6_LEAVE_GROUP ) 154  #IPV6_RXHOPOPTS IPV6_HOPOPTS ) 155  #IPV6_RXDSTOPTS IPV6_DSTOPTS ) 158  #IPV6_PMTUDISC_DONT 0 ) 159  #IPV6_PMTUDISC_WANT 1 ) 160  #IPV6_PMTUDISC_DO 2 ) 163  #SOL_IPV6 41 ) 164  #SOL_ICMPV6 58 ) 167  #IPV6_RTHDR_LOOSE 0 ) 168  #IPV6_RTHDR_STRICT 1 ) 170  #IPV6_RTHDR_TYPE_0 0 ) @/usr/include/bits/ioctl-types.h 20 #iâdeà _SYS_IOCTL_H 25  ~ 28  swšsize 30  mws_row ; 31  mws_cÞ ; 32  mws_xpix– ; 33  mws_ypix– ; 36  #NCC 8 ) 37  s‹rmio 39  mc_iæag ; 40  mc_oæag ; 41  mc_cæag ; 42  mc_læag ; 43  mc_lše ; 44  mc_cc [ NCC ]; 48  #TIOCM_LE 0x001 ) 49  #TIOCM_DTR 0x002 ) 50  #TIOCM_RTS 0x004 ) 51  #TIOCM_ST 0x008 ) 52  #TIOCM_SR 0x010 ) 53  #TIOCM_CTS 0x020 ) 54  #TIOCM_CAR 0x040 ) 55  #TIOCM_RNG 0x080 ) 56  #TIOCM_DSR 0x100 ) 57  #TIOCM_CD TIOCM_CAR ) 58  #TIOCM_RI TIOCM_RNG ) 63  #N_TTY 0 ) 64  #N_SLIP 1 ) 65  #N_MOUSE 2 ) 66  #N_PPP 3 ) 67  #N_STRIP 4 ) 68  #N_AX25 5 ) 69  #N_X25 6 ) 70  #N_6PACK 7 ) 71  #N_MASC 8 ) 72  #N_R3964 9 ) 73  #N_PROFIBUS_FDL 10 ) 74  #N_IRDA 11 ) 75  #N_SMSBLOCK 12 ) 76  #N_HDLC 13 ) 77  #N_SYNC_PPP 14 ) 78  #N_HCI 15 ) @/usr/include/bits/ioctls.h 19 #iâdeà _SYS_IOCTL_H 24  ~ 27  #SIOCADDRT 0x890B ) 28  #SIOCDELRT 0x890C ) 29  #SIOCRTMSG 0x890D ) 32  #SIOCGIFNAME 0x8910 ) 33  #SIOCSIFLINK 0x8911 ) 34  #SIOCGIFCONF 0x8912 ) 35  #SIOCGIFFLAGS 0x8913 ) 36  #SIOCSIFFLAGS 0x8914 ) 37  #SIOCGIFADDR 0x8915 ) 38  #SIOCSIFADDR 0x8916 ) 39  #SIOCGIFDSTADDR 0x8917 ) 40  #SIOCSIFDSTADDR 0x8918 ) 41  #SIOCGIFBRDADDR 0x8919 ) 42  #SIOCSIFBRDADDR 0x891¨ ) 43  #SIOCGIFNETMASK 0x891b ) 44  #SIOCSIFNETMASK 0x891ø ) 45  #SIOCGIFMETRIC 0x891d ) 46  #SIOCSIFMETRIC 0x891 ) 47  #SIOCGIFMEM 0x891à ) 48  #SIOCSIFMEM 0x8920 ) 49  #SIOCGIFMTU 0x8921 ) 50  #SIOCSIFMTU 0x8922 ) 51  #SIOCSIFNAME 0x8923 ) 52  #SIOCSIFHWADDR 0x8924 ) 53  #SIOCGIFENCAP 0x8925 ) 54  #SIOCSIFENCAP 0x8926 ) 55  #SIOCGIFHWADDR 0x8927 ) 56  #SIOCGIFSLAVE 0x8929 ) 57  #SIOCSIFSLAVE 0x8930 ) 58  #SIOCADDMULTI 0x8931 ) 59  #SIOCDELMULTI 0x8932 ) 60  #SIOCGIFINDEX 0x8933 ) 61  #SIOGIFINDEX SIOCGIFINDEX ) 62  #SIOCSIFPFLAGS 0x8934 ) 63  #SIOCGIFPFLAGS 0x8935 ) 64  #SIOCDIFADDR 0x8936 ) 65  #SIOCSIFHWBROADCAST 0x8937 ) 66  #SIOCGIFCOUNT 0x8938 ) 68  #SIOCGIFBR 0x8940 ) 69  #SIOCSIFBR 0x8941 ) 71  #SIOCGIFTXQLEN 0x8942 ) 72  #SIOCSIFTXQLEN 0x8943 ) 77  #SIOCDARP 0x8953 ) 78  #SIOCGARP 0x8954 ) 79  #SIOCSARP 0x8955 ) 82  #SIOCDRARP 0x8960 ) 83  #SIOCGRARP 0x8961 ) 84  #SIOCSRARP 0x8962 ) 88  #SIOCGIFMAP 0x8970 ) 89  #SIOCSIFMAP 0x8971 ) 93  #SIOCADDDLCI 0x8980 ) 94  #SIOCDELDLCI 0x8981 ) 103  #SIOCDEVPRIVATE 0x89F0 ) 109  #SIOCPROTOPRIVATE 0x89E0 ) @/usr/include/bits/locale.h 20 #ià! defšed _LOCALE_H && !defšed _LANGINFO_H 24 #iâdeà _BITS_LOCALE_H 25  #_BITS_LOCALE_H 1 ) 29 m__LC_CTYPE = 0, 30 m__LC_NUMERIC = 1, 31 m__LC_TIME = 2, 32 m__LC_COLLATE = 3, 33 m__LC_MONETARY = 4, 34 m__LC_MESSAGES = 5, 35 m__LC_ALL = 6, 36 m__LC_PAPER = 7, 37 m__LC_NAME = 8, 38 m__LC_ADDRESS = 9, 39 m__LC_TELEPHONE = 10, 40 m__LC_MEASUREMENT = 11, 41 m__LC_IDENTIFICATION = 12 @/usr/include/bits/mman.h 20 #iâdeà _SYS_MMAN_H 33  #PROT_READ 0x1 ) 34  #PROT_WRITE 0x2 ) 35  #PROT_EXEC 0x4 ) 36  #PROT_NONE 0x0 ) 37  #PROT_GROWSDOWN 0x01000000 ) 39  #PROT_GROWSUP 0x02000000 ) 43  #MAP_SHARED 0x01 ) 44  #MAP_PRIVATE 0x02 ) 45 #ifdeà __USE_MISC 46  #MAP_TYPE 0x0à ) 50  #MAP_FIXED 0x10 ) 51 #ifdeà __USE_MISC 52  #MAP_FILE 0 ) 53  #MAP_ANONYMOUS 0x20 ) 54  #MAP_ANON MAP_ANONYMOUS ) 55  #MAP_32BIT 0x40 ) 59 #ifdeà __USE_MISC 60  #MAP_GROWSDOWN 0x00100 ) 61  #MAP_DENYWRITE 0x00800 ) 62  #MAP_EXECUTABLE 0x01000 ) 63  #MAP_LOCKED 0x02000 ) 64  #MAP_NORESERVE 0x04000 ) 65  #MAP_POPULATE 0x08000 ) 66  #MAP_NONBLOCK 0x10000 ) 70  #MS_ASYNC 1 ) 71  #MS_SYNC 4 ) 72  #MS_INVALIDATE 2 ) 75  #MCL_CURRENT 1 ) 76  #MCL_FUTURE 2 ) 80 #ifdeà __USE_GNU 81  #MREMAP_MAYMOVE 1 ) 82  #MREMAP_FIXED 2 ) 86 #ifdeà __USE_BSD 87  #MADV_NORMAL 0 ) 88  #MADV_RANDOM 1 ) 89  #MADV_SEQUENTIAL 2 ) 90  #MADV_WILLNEED 3 ) 91  #MADV_DONTNEED 4 ) 92  #MADV_REMOVE 9 ) 93  #MADV_DONTFORK 10 ) 94  #MADV_DOFORK 11 ) 98 #ifdeà __USE_XOPEN2K 99  #POSIX_MADV_NORMAL 0 ) 100  #POSIX_MADV_RANDOM 1 ) 101  #POSIX_MADV_SEQUENTIAL 2 ) 102  #POSIX_MADV_WILLNEED 3 ) 103  #POSIX_MADV_DONTNEED 4 ) @/usr/include/bits/netdb.h 19 #iâdeà _NETDB_H 27  sËÁ 29 * mn_Çme ; 30 ** mn_®Ÿ£s ; 31  mn_add¹y³ ; 32 ušt32_t mn_Ãt ; @/usr/include/bits/poll.h 19 #iâdeà _SYS_POLL_H 26  #POLLIN 0x001 ) 27  #POLLPRI 0x002 ) 28  #POLLOUT 0x004 ) 30 #ifdeà __USE_XOPEN 32  #POLLRDNORM 0x040 ) 33  #POLLRDBAND 0x080 ) 34  #POLLWRNORM 0x100 ) 35  #POLLWRBAND 0x200 ) 38 #ifdeà __USE_GNU 40  #POLLMSG 0x400 ) 41  #POLLREMOVE 0x1000 ) 42  #POLLRDHUP 0x2000 ) 48  #POLLERR 0x008 ) 49  #POLLHUP 0x010 ) 50  #POLLNVAL 0x020 ) @/usr/include/bits/posix1_lim.h 25 #iâdef _BITS_POSIX1_LIM_H 26  #_BITS_POSIX1_LIM_H 1 ) 32  #_POSIX_AIO_LISTIO_MAX 2 ) 35  #_POSIX_AIO_MAX 1 ) 38  #_POSIX_ARG_MAX 4096 ) 41 #ifdeà __USE_XOPEN2K 42  #_POSIX_CHILD_MAX 25 ) 44  #_POSIX_CHILD_MAX 6 ) 48  #_POSIX_DELAYTIMER_MAX 32 ) 52  #_POSIX_HOST_NAME_MAX 255 ) 55  #_POSIX_LINK_MAX 8 ) 58  #_POSIX_LOGIN_NAME_MAX 9 ) 61  #_POSIX_MAX_CANON 255 ) 65  #_POSIX_MAX_INPUT 255 ) 68  #_POSIX_MQ_OPEN_MAX 8 ) 71  #_POSIX_MQ_PRIO_MAX 32 ) 74  #_POSIX_NAME_MAX 14 ) 77 #ifdeà __USE_XOPEN2K 78  #_POSIX_NGROUPS_MAX 8 ) 80  #_POSIX_NGROUPS_MAX 0 ) 84 #ifdeà __USE_XOPEN2K 85  #_POSIX_OPEN_MAX 20 ) 87  #_POSIX_OPEN_MAX 16 ) 92  #_POSIX_FD_SETSIZE _POSIX_OPEN_MAX ) 95  #_POSIX_PATH_MAX 256 ) 98  #_POSIX_PIPE_BUF 512 ) 102  #_POSIX_RE_DUP_MAX 255 ) 105  #_POSIX_RTSIG_MAX 8 ) 108  #_POSIX_SEM_NSEMS_MAX 256 ) 111  #_POSIX_SEM_VALUE_MAX 32767 ) 114  #_POSIX_SIGQUEUE_MAX 32 ) 117  #_POSIX_SSIZE_MAX 32767 ) 120  #_POSIX_STREAM_MAX 8 ) 123  #_POSIX_SYMLINK_MAX 255 ) 127  #_POSIX_SYMLOOP_MAX 8 ) 130  #_POSIX_TIMER_MAX 32 ) 133  #_POSIX_TTY_NAME_MAX 9 ) 136  #_POSIX_TZNAME_MAX 6 ) 139  #_POSIX_QLIMIT 1 ) 143  #_POSIX_HIWAT _POSIX_PIPE_BUF ) 146  #_POSIX_UIO_MAXIOV 16 ) 149  #_POSIX_CLOCKRES_MIN 20000000 ) 153  ~ 156 #iâdef SSIZE_MAX 157  #SSIZE_MAX LONG_MAX ) 164 #iâdef NGROUPS_MAX 165  #NGROUPS_MAX 8 ) @/usr/include/bits/posix2_lim.h 23 #iâdef _BITS_POSIX2_LIM_H 24  #_BITS_POSIX2_LIM_H 1 ) 28  #_POSIX2_BC_BASE_MAX 99 ) 31  #_POSIX2_BC_DIM_MAX 2048 ) 34  #_POSIX2_BC_SCALE_MAX 99 ) 37  #_POSIX2_BC_STRING_MAX 1000 ) 41  #_POSIX2_COLL_WEIGHTS_MAX 2 ) 45  #_POSIX2_EXPR_NEST_MAX 32 ) 48  #_POSIX2_LINE_MAX 2048 ) 52  #_POSIX2_RE_DUP_MAX 255 ) 56  #_POSIX2_CHARCLASS_NAME_MAX 14 ) 63 #iâdef BC_BASE_MAX 64  #BC_BASE_MAX _POSIX2_BC_BASE_MAX ) 66 #iâdef BC_DIM_MAX 67  #BC_DIM_MAX _POSIX2_BC_DIM_MAX ) 69 #iâdef BC_SCALE_MAX 70  #BC_SCALE_MAX _POSIX2_BC_SCALE_MAX ) 72 #iâdef BC_STRING_MAX 73  #BC_STRING_MAX _POSIX2_BC_STRING_MAX ) 75 #iâdef COLL_WEIGHTS_MAX 76  #COLL_WEIGHTS_MAX 255 ) 78 #iâdef EXPR_NEST_MAX 79  #EXPR_NEST_MAX _POSIX2_EXPR_NEST_MAX ) 81 #iâdef LINE_MAX 82  #LINE_MAX _POSIX2_LINE_MAX ) 84 #iâdef CHARCLASS_NAME_MAX 85  #CHARCLASS_NAME_MAX 2048 ) 89  #RE_DUP_MAX (0x7fff) ) @/usr/include/bits/posix_opt.h 20 #iâdef _POSIX_OPT_H 21  #_POSIX_OPT_H 1 ) 24  #_POSIX_JOB_CONTROL 1 ) 27  #_POSIX_SAVED_IDS 1 ) 30  #_POSIX_PRIORITY_SCHEDULING 200112L ) 33  #_POSIX_SYNCHRONIZED_IO 200112L ) 36  #_POSIX_FSYNC 200112L ) 39  #_POSIX_MAPPED_FILES 200112L ) 42  #_POSIX_MEMLOCK 200112L ) 45  #_POSIX_MEMLOCK_RANGE 200112L ) 48  #_POSIX_MEMORY_PROTECTION 200112L ) 51  #_POSIX_CHOWN_RESTRICTED 1 ) 55  #_POSIX_VDISABLE '\0' ) 58  #_POSIX_NO_TRUNC 1 ) 61  #_XOPEN_REALTIME 1 ) 64  #_XOPEN_REALTIME_THREADS 1 ) 67  #_XOPEN_SHM 1 ) 70  #_POSIX_THREADS 200112L ) 73  #_POSIX_REENTRANT_FUNCTIONS 1 ) 74  #_POSIX_THREAD_SAFE_FUNCTIONS 200112L ) 77  #_POSIX_THREAD_PRIORITY_SCHEDULING 200112L ) 80  #_POSIX_THREAD_ATTR_STACKSIZE 200112L ) 83  #_POSIX_THREAD_ATTR_STACKADDR 200112L ) 86  #_POSIX_THREAD_PRIO_INHERIT 200112L ) 90  #_POSIX_THREAD_PRIO_PROTECT 200112L ) 93  #_POSIX_SEMAPHORES 200112L ) 96  #_POSIX_REALTIME_SIGNALS 200112L ) 99  #_POSIX_ASYNCHRONOUS_IO 200112L ) 100  #_POSIX_ASYNC_IO 1 ) 102  #_LFS_ASYNCHRONOUS_IO 1 ) 104  #_POSIX_PRIORITIZED_IO 200112L ) 107  #_LFS64_ASYNCHRONOUS_IO 1 ) 110  #_LFS_LARGEFILE 1 ) 111  #_LFS64_LARGEFILE 1 ) 112  #_LFS64_STDIO 1 ) 115  #_POSIX_SHARED_MEMORY_OBJECTS 200112L ) 118  #_POSIX_CPUTIME 0 ) 121  #_POSIX_THREAD_CPUTIME 0 ) 124  #_POSIX_REGEXP 1 ) 127  #_POSIX_READER_WRITER_LOCKS 200112L ) 130  #_POSIX_SHELL 1 ) 133  #_POSIX_TIMEOUTS 200112L ) 136  #_POSIX_SPIN_LOCKS 200112L ) 139  #_POSIX_SPAWN 200112L ) 142  #_POSIX_TIMERS 200112L ) 145  #_POSIX_BARRIERS 200112L ) 148  #_POSIX_MESSAGE_PASSING 200112L ) 151  #_POSIX_THREAD_PROCESS_SHARED 200112L ) 154  #_POSIX_MONOTONIC_CLOCK 0 ) 157  #_POSIX_CLOCK_SELECTION 200112L ) 160  #_POSIX_ADVISORY_INFO 200112L ) 163  #_POSIX_IPV6 200112L ) 166  #_POSIX_RAW_SOCKETS 200112L ) 169  #_POSIX2_CHAR_TERM 200112L ) 172  #_POSIX_SPORADIC_SERVER -1 ) 173  #_POSIX_THREAD_SPORADIC_SERVER -1 ) 176  #_POSIX_TRACE -1 ) 177  #_POSIX_TRACE_EVENT_FILTER -1 ) 178  #_POSIX_TRACE_INHERIT -1 ) 179  #_POSIX_TRACE_LOG -1 ) 182  #_POSIX_TYPED_MEMORY_OBJECTS -1 ) @/usr/include/bits/pthreadtypes.h 20 #iâdeà _BITS_PTHREADTYPES_H 21  #_BITS_PTHREADTYPES_H 1 ) 23  ~ 25 #ià __WORDSIZE == 64 26  #__SIZEOF_PTHREAD_ATTR_T 56 ) 27  #__SIZEOF_PTHREAD_MUTEX_T 40 ) 28  #__SIZEOF_PTHREAD_MUTEXATTR_T 4 ) 29  #__SIZEOF_PTHREAD_COND_T 48 ) 30  #__SIZEOF_PTHREAD_CONDATTR_T 4 ) 31  #__SIZEOF_PTHREAD_RWLOCK_T 56 ) 32  #__SIZEOF_PTHREAD_RWLOCKATTR_T 8 ) 33  #__SIZEOF_PTHREAD_BARRIER_T 32 ) 34  #__SIZEOF_PTHREAD_BARRIERATTR_T 4 ) 36  #__SIZEOF_PTHREAD_ATTR_T 36 ) 37  #__SIZEOF_PTHREAD_MUTEX_T 24 ) 38  #__SIZEOF_PTHREAD_MUTEXATTR_T 4 ) 39  #__SIZEOF_PTHREAD_COND_T 48 ) 40  #__SIZEOF_PTHREAD_CONDATTR_T 4 ) 41  #__SIZEOF_PTHREAD_RWLOCK_T 32 ) 42  #__SIZEOF_PTHREAD_RWLOCKATTR_T 8 ) 43  #__SIZEOF_PTHREAD_BARRIER_T 20 ) 44  #__SIZEOF_PTHREAD_BARRIERATTR_T 4 ) 50  t±h»ad_t ; 55  m__size [ __SIZEOF_PTHREAD_ATTR_T ]; 56  m__®ign ; 57 } t±h»ad_©Œ_t ; 60 #ià __WORDSIZE == 64 61  s__±h»ad_š‹º®_li¡ 63  __±h»ad_š‹º®_li¡ * m__´ev ; 64  __±h»ad_š‹º®_li¡ * m__Ãxt ; 65 } t__±h»ad_li¡_t ; 67  s__±h»ad_š‹º®_¦i¡ 69  __±h»ad_š‹º®_¦i¡ * m__Ãxt ; 70 } t__±h»ad_¦i¡_t ; 78  s__±h»ad_mu‹x_s 80  m__lock ; 81  m__couÁ ; 82  m__owÃr ; 83 #ià __WORDSIZE == 64 84  m__nu£rs ; 88  m__kšd ; 89 #ià __WORDSIZE == 64 90  m__¥šs ; 91 __±h»ad_li¡_t m__li¡ ; 92  #__PTHREAD_MUTEX_HAVE_PREV 1 ) 94  m__nu£rs ; 95 __ex‹nsiÚ__ union 97  m__¥šs ; 98 __±h»ad_¦i¡_t m__li¡ ; 101 } m__d©a ; 102  m__size [ __SIZEOF_PTHREAD_MUTEX_T ]; 103  m__®ign ; 104 } t±h»ad_mu‹x_t ; 108  m__size [ __SIZEOF_PTHREAD_MUTEXATTR_T ]; 109  m__®ign ; 110 } t±h»ad_mu‹x©Œ_t ; 119  m__lock ; 120  m__fu‹x ; 121 __ex‹nsiÚ__  m__tÙ®_£q ; 122 __ex‹nsiÚ__  m__wakeup_£q ; 123 __ex‹nsiÚ__  m__wok’_£q ; 124 * m__mu‹x ; 125  m__nwa™”s ; 126  m__brßdÿ¡_£q ; 127 } m__d©a ; 128  m__size [ __SIZEOF_PTHREAD_COND_T ]; 129 __ex‹nsiÚ__  m__®ign ; 130 } t±h»ad_cÚd_t ; 134  m__size [ __SIZEOF_PTHREAD_CONDATTR_T ]; 135  m__®ign ; 136 } t±h»ad_cÚd©Œ_t ; 140  t±h»ad_key_t ; 144  t±h»ad_Úû_t ; 147 #ià defšed __USE_UNIX98 || defšed __USE_XOPEN2K 152 #ià __WORDSIZE == 64 155  m__lock ; 156  m__Ä_»ad”s ; 157  m__»ad”s_wakeup ; 158  m__wr™”_wakeup ; 159  m__Ä_»ad”s_queued ; 160  m__Ä_wr™”s_queued ; 161  m__wr™” ; 162  m__sh¬ed ; 163  m__·d1 ; 164  m__·d2 ; 167  m__æags ; 168 } m__d©a ; 172  m__lock ; 173  m__Ä_»ad”s ; 174  m__»ad”s_wakeup ; 175  m__wr™”_wakeup ; 176  m__Ä_»ad”s_queued ; 177  m__Ä_wr™”s_queued ; 180  m__æags ; 181  m__sh¬ed ; 182  m__·d1 ; 183  m__·d2 ; 184  m__wr™” ; 185 } m__d©a ; 187  m__size [ __SIZEOF_PTHREAD_RWLOCK_T ]; 188  m__®ign ; 189 } t±h»ad_rwlock_t ; 193  m__size [ __SIZEOF_PTHREAD_RWLOCKATTR_T ]; 194  m__®ign ; 195 } t±h»ad_rwlock©Œ_t ; 199 #ifdeà __USE_XOPEN2K 201 vÞ©ž t±h»ad_¥šlock_t ; 208  m__size [ __SIZEOF_PTHREAD_BARRIER_T ]; 209  m__®ign ; 210 } t±h»ad_b¬r›r_t ; 214  m__size [ __SIZEOF_PTHREAD_BARRIERATTR_T ]; 215  m__®ign ; 216 } t±h»ad_b¬r›¿‰r_t ; 220 #ià __WORDSIZE == 32 222  #__þ—nup_fù_©Œibu‹ `__©Œibu‹__ (( `__»g·rm__ (1))) ) @/usr/include/bits/resource.h 21 #iâdeà _SYS_RESOURCE_H 25  ~ 33 e__¾im™_»sourû 36 mRLIMIT_CPU = 0, 37  #RLIMIT_CPU RLIMIT_CPU ) 40 mRLIMIT_FSIZE = 1, 41  #RLIMIT_FSIZE RLIMIT_FSIZE ) 44 mRLIMIT_DATA = 2, 45  #RLIMIT_DATA RLIMIT_DATA ) 48 mRLIMIT_STACK = 3, 49  #RLIMIT_STACK RLIMIT_STACK ) 52 mRLIMIT_CORE = 4, 53  #RLIMIT_CORE RLIMIT_CORE ) 59 m__RLIMIT_RSS = 5, 60  #RLIMIT_RSS __RLIMIT_RSS ) 63 mRLIMIT_NOFILE = 7, 64 m__RLIMIT_OFILE = RLIMIT_NOFILE , 65  #RLIMIT_NOFILE RLIMIT_NOFILE ) 66  #RLIMIT_OFILE __RLIMIT_OFILE ) 69 mRLIMIT_AS = 9, 70  #RLIMIT_AS RLIMIT_AS ) 73 m__RLIMIT_NPROC = 6, 74  #RLIMIT_NPROC __RLIMIT_NPROC ) 77 m__RLIMIT_MEMLOCK = 8, 78  #RLIMIT_MEMLOCK __RLIMIT_MEMLOCK ) 81 m__RLIMIT_LOCKS = 10, 82  #RLIMIT_LOCKS __RLIMIT_LOCKS ) 85 m__RLIMIT_SIGPENDING = 11, 86  #RLIMIT_SIGPENDING __RLIMIT_SIGPENDING ) 89 m__RLIMIT_MSGQUEUE = 12, 90  #RLIMIT_MSGQUEUE __RLIMIT_MSGQUEUE ) 95 m__RLIMIT_NICE = 13, 96  #RLIMIT_NICE __RLIMIT_NICE ) 100 m__RLIMIT_RTPRIO = 14, 101  #RLIMIT_RTPRIO __RLIMIT_RTPRIO ) 103 m__RLIMIT_NLIMITS = 15, 104 m__RLIM_NLIMITS = __RLIMIT_NLIMITS 105  #RLIMIT_NLIMITS __RLIMIT_NLIMITS ) 106  #RLIM_NLIMITS __RLIM_NLIMITS ) 110 #iâdeà __USE_FILE_OFFSET64 111  #RLIM_INFINITY (()(~0UL)) ) 113  #RLIM_INFINITY 0xffffffffffffffffuLL ) 116 #ifdeà __USE_LARGEFILE64 117  #RLIM64_INFINITY 0xffffffffffffffffuLL ) 121  #RLIM_SAVED_MAX RLIM_INFINITY ) 122  #RLIM_SAVED_CUR RLIM_INFINITY ) 126 #iâdeà __USE_FILE_OFFSET64 127  __¾im_t t¾im_t ; 129  __¾im64_t t¾im_t ; 131 #ifdeà __USE_LARGEFILE64 132  __¾im64_t t¾im64_t ; 135  s¾im™ 138 ¾im_t m¾im_cur ; 140 ¾im_t m¾im_max ; 143 #ifdeà __USE_LARGEFILE64 144  s¾im™64 147 ¾im64_t m¾im_cur ; 149 ¾im64_t m¾im_max ; 154 e__ru§ge_who 157 mRUSAGE_SELF = 0, 158  #RUSAGE_SELF RUSAGE_SELF ) 161 mRUSAGE_CHILDREN = -1 162  #RUSAGE_CHILDREN RUSAGE_CHILDREN ) 165  #__Ãed_timev® ) 166  ~ 169  sru§ge 172  timev® mru_utime ; 174  timev® mru_¡ime ; 176  mru_maxrss ; 179  mru_ixrss ; 181  mru_idrss ; 183  mru_i¤ss ; 186  mru_mšæt ; 188  mru_majæt ; 190  mru_nsw­ ; 193  mru_šblock ; 195  mru_oublock ; 197  mru_msg¢d ; 199  mru_msgrcv ; 201  mru_nsigÇls ; 205  mru_nvcsw ; 208  mru_nivcsw ; 212  #PRIO_MIN -20 ) 213  #PRIO_MAX 20 ) 217 e__´iÜ™y_which 219 mPRIO_PROCESS = 0, 220  #PRIO_PROCESS PRIO_PROCESS ) 221 mPRIO_PGRP = 1, 222  #PRIO_PGRP PRIO_PGRP ) 223 mPRIO_USER = 2 224  #PRIO_USER PRIO_USER ) @/usr/include/bits/select.h 19 #iâdeà _SYS_SELECT_H 26  #__FD_ZERO ( s ) \ 28  __i ; \ 29 fd_£t * __¬r = ( s ); \ 30  __i = 0; __˜<  ( fd_£t è/  ( __fd_mask ); ++__i) \ 31 `__FDS_BITS ( __¬r )[ __i ] = 0; \ 32 } 0) ) 33  #__FD_SET ( d , s è( `__FDS_BITS (s)[ `__FDELT (d)] |ð `__FDMASK (d)) ) 34  #__FD_CLR ( d , s è( `__FDS_BITS (s)[ `__FDELT (d)] &ð~ `__FDMASK (d)) ) 35  #__FD_ISSET ( d , s è(( `__FDS_BITS (s)[ `__FDELT (d)] & `__FDMASK (d)è!ð0) ) @/usr/include/bits/setjmp.h 20 #iâdeà _BITS_SETJMP_H 21  #_BITS_SETJMP_H 1 ) 23 #ià! defšed _SETJMP_H && !defšed _PTHREAD_H 27  ~ 29 #iâdeà _ASM 31 #ià __WORDSIZE == 64 32  t__jmp_buf [8]; 34  t__jmp_buf [6]; @/usr/include/bits/sigaction.h 20 #iâdeà _SIGNAL_H 25  ssigaùiÚ 28 #ifdeà __USE_POSIX199309 32 __sighªdËr_t m§_hªdËr ; 34 (* m§_sigaùiÚ è(, msigšfo_t *, *); 36 m__sigaùiÚ_hªdËr ; 37  #§_hªdËr __sigaùiÚ_hªdËr . §_hªdËr ) 38  #§_sigaùiÚ __sigaùiÚ_hªdËr . §_sigaùiÚ ) 40 __sighªdËr_t m§_hªdËr ; 44 __sig£t_t m§_mask ; 47  m§_æags ; 50 (* m§_»¡Ü” ) (); 54  #SA_NOCLDSTOP 1 ) 55  #SA_NOCLDWAIT 2 ) 56  #SA_SIGINFO 4 ) 58 #ià defšed __USE_UNIX98 || defšed __USE_MISC 59  #SA_ONSTACK 0x08000000 ) 60  #SA_RESTART 0x10000000 ) 61  #SA_NODEFER 0x40000000 ) 63  #SA_RESETHAND 0x80000000 ) 65 #ifdeà __USE_MISC 66  #SA_INTERRUPT 0x20000000 ) 69  #SA_NOMASK SA_NODEFER ) 70  #SA_ONESHOT SA_RESETHAND ) 71  #SA_STACK SA_ONSTACK ) 75  #SIG_BLOCK 0 ) 76  #SIG_UNBLOCK 1 ) 77  #SIG_SETMASK 2 ) @/usr/include/bits/sigcontext.h 19 #iâdeà _BITS_SIGCONTEXT_H 20  #_BITS_SIGCONTEXT_H 1 ) 22 #ià! defšed _SIGNAL_H && !defšed _SYS_UCONTEXT_H 26  ~ 28  s_å»g 30  msignifiÿnd [4]; 31  mexpÚ’t ; 34  s_åx»g 36  msignifiÿnd [4]; 37  mexpÚ’t ; 38  m·ddšg [3]; 41  s_xmm»g 43 __ušt32_t m–em’t [4]; 48 #ià __WORDSIZE == 32 50  s_å¡©e 53 __ušt32_t mcw ; 54 __ušt32_t msw ; 55 __ušt32_t mg ; 56 __ušt32_t moff ; 57 __ušt32_t mcs£l ; 58 __ušt32_t md©aoff ; 59 __ušt32_t md©a£l ; 60  _å»g m_¡ [8]; 61  m¡©us ; 62  mmagic ; 65 __ušt32_t m_fx¤_’v [6]; 66 __ušt32_t mmxc¤ ; 67 __ušt32_t m»£rved ; 68  _åx»g m_fx¤_¡ [8]; 69  _xmm»g m_xmm [8]; 70 __ušt32_t m·ddšg [56]; 73 #iâdeà sigcÚ‹xt_¡ruù 78  #sigcÚ‹xt_¡ruù sigcÚ‹xt ) 81  ssigcÚ‹xt 83  mgs , m__gsh ; 84  mfs , m__fsh ; 85  mes , m__esh ; 86  mds , m__dsh ; 87  medi ; 88  mesi ; 89  mebp ; 90  me¥ ; 91  mebx ; 92  medx ; 93  mecx ; 94  m—x ; 95  mŒ­no ; 96  m”r ; 97  me ; 98  mcs , m__csh ; 99  meæags ; 100  me¥_©_sigÇl ; 101  mss , m__ssh ; 102  _å¡©e * må¡©e ; 103  mÞdmask ; 104  mü2 ; 109  s_å¡©e 112 __ušt16_t mcwd ; 113 __ušt16_t mswd ; 114 __ušt16_t máw ; 115 __ušt16_t mfÝ ; 116 __ušt64_t mr ; 117 __ušt64_t mrdp ; 118 __ušt32_t mmxc¤ ; 119 __ušt32_t mmxü_mask ; 120  _åx»g m_¡ [8]; 121  _xmm»g m_xmm [16]; 122 __ušt32_t m·ddšg [24]; 125  ssigcÚ‹xt 127  mr8 ; 128  mr9 ; 129  mr10 ; 130  mr11 ; 131  mr12 ; 132  mr13 ; 133  mr14 ; 134  mr15 ; 135  mrdi ; 136  mrsi ; 137  mrbp ; 138  mrbx ; 139  mrdx ; 140  m¿x ; 141  mrcx ; 142  mr¥ ; 143  mr ; 144  meæags ; 145  mcs ; 146  mgs ; 147  mfs ; 148  m__·d0 ; 149  m”r ; 150  mŒ­no ; 151  mÞdmask ; 152  mü2 ; 153  _å¡©e * må¡©e ; 154  m__»£rved1 [8]; @/usr/include/bits/siginfo.h 20 #ià! defšed _SIGNAL_H && !defšed __Ãed_sigšfo_t \ 21 && ! defšed g__Ãed_sigev’t_t 25  ~ 27 #ià(! defšed __have_sigv®_t \ 28 && ( defšed g_SIGNAL_H || defšed g__Ãed_sigšfo_t \ 29 || defšed g__Ãed_sigev’t_t )) 30  #__have_sigv®_t 1 ) 33  usigv® 35  msiv®_št ; 36 * msiv®_±r ; 37 } tsigv®_t ; 40 #ià(! defšed __have_sigšfo_t \ 41 && ( defšed g_SIGNAL_H || defšed g__Ãed_sigšfo_t )) 42  #__have_sigšfo_t 1 ) 44  #__SI_MAX_SIZE 128 ) 45 #ià __WORDSIZE == 64 46  #__SI_PAD_SIZE (( __SI_MAX_SIZE /  ()è- 4) ) 48  #__SI_PAD_SIZE (( __SI_MAX_SIZE /  ()è- 3) ) 51  ssigšfo 53  msi_signo ; 54  msi_”ºo ; 56  msi_code ; 60  m_·d [ __SI_PAD_SIZE ]; 65 __pid_t msi_pid ; 66 __uid_t msi_uid ; 67 } m_kžl ; 72  msi_tid ; 73  msi_ov”run ; 74 sigv®_t msi_sigv® ; 75 } m_tim” ; 80 __pid_t msi_pid ; 81 __uid_t msi_uid ; 82 sigv®_t msi_sigv® ; 83 } m_¹ ; 88 __pid_t msi_pid ; 89 __uid_t msi_uid ; 90  msi_¡©us ; 91 __þock_t msi_utime ; 92 __þock_t msi_¡ime ; 93 } m_sigchld ; 98 * msi_addr ; 99 } m_sigçuÉ ; 104  msi_bªd ; 105  msi_fd ; 106 } m_sigpÞl ; 107 } m_sif›lds ; 108 } tsigšfo_t ; 112  #si_pid _sif›lds . _kžl . si_pid ) 113  #si_uid _sif›lds . _kžl . si_uid ) 114  #si_tim”id _sif›lds . _tim” . si_tid ) 115  #si_ov”run _sif›lds . _tim” . si_ov”run ) 116  #si_¡©us _sif›lds . _sigchld . si_¡©us ) 117  #si_utime _sif›lds . _sigchld . si_utime ) 118  #si_¡ime _sif›lds . _sigchld . si_¡ime ) 119  #si_v®ue _sif›lds . _¹ . si_sigv® ) 120  #si_št _sif›lds . _¹ . si_sigv® . siv®_št ) 121  #si_±r _sif›lds . _¹ . si_sigv® . siv®_±r ) 122  #si_addr _sif›lds . _sigçuÉ . si_addr ) 123  #si_bªd _sif›lds . _sigpÞl . si_bªd ) 124  #si_fd _sif›lds . _sigpÞl . si_fd ) 131 mSI_ASYNCNL = -60, 132  #SI_ASYNCNL SI_ASYNCNL ) 133 mSI_TKILL = -6, 134  #SI_TKILL SI_TKILL ) 135 mSI_SIGIO , 136  #SI_SIGIO SI_SIGIO ) 137 mSI_ASYNCIO , 138  #SI_ASYNCIO SI_ASYNCIO ) 139 mSI_MESGQ , 140  #SI_MESGQ SI_MESGQ ) 141 mSI_TIMER , 142  #SI_TIMER SI_TIMER ) 143 mSI_QUEUE , 144  #SI_QUEUE SI_QUEUE ) 145 mSI_USER , 146  #SI_USER SI_USER ) 147 mSI_KERNEL = 0x80 148  #SI_KERNEL SI_KERNEL ) 155 mILL_ILLOPC = 1, 156  #ILL_ILLOPC ILL_ILLOPC ) 157 mILL_ILLOPN , 158  #ILL_ILLOPN ILL_ILLOPN ) 159 mILL_ILLADR , 160  #ILL_ILLADR ILL_ILLADR ) 161 mILL_ILLTRP , 162  #ILL_ILLTRP ILL_ILLTRP ) 163 mILL_PRVOPC , 164  #ILL_PRVOPC ILL_PRVOPC ) 165 mILL_PRVREG , 166  #ILL_PRVREG ILL_PRVREG ) 167 mILL_COPROC , 168  #ILL_COPROC ILL_COPROC ) 169 mILL_BADSTK 170  #ILL_BADSTK ILL_BADSTK ) 176 mFPE_INTDIV = 1, 177  #FPE_INTDIV FPE_INTDIV ) 178 mFPE_INTOVF , 179  #FPE_INTOVF FPE_INTOVF ) 180 mFPE_FLTDIV , 181  #FPE_FLTDIV FPE_FLTDIV ) 182 mFPE_FLTOVF , 183  #FPE_FLTOVF FPE_FLTOVF ) 184 mFPE_FLTUND , 185  #FPE_FLTUND FPE_FLTUND ) 186 mFPE_FLTRES , 187  #FPE_FLTRES FPE_FLTRES ) 188 mFPE_FLTINV , 189  #FPE_FLTINV FPE_FLTINV ) 190 mFPE_FLTSUB 191  #FPE_FLTSUB FPE_FLTSUB ) 197 mSEGV_MAPERR = 1, 198  #SEGV_MAPERR SEGV_MAPERR ) 199 mSEGV_ACCERR 200  #SEGV_ACCERR SEGV_ACCERR ) 206 mBUS_ADRALN = 1, 207  #BUS_ADRALN BUS_ADRALN ) 208 mBUS_ADRERR , 209  #BUS_ADRERR BUS_ADRERR ) 210 mBUS_OBJERR 211  #BUS_OBJERR BUS_OBJERR ) 217 mTRAP_BRKPT = 1, 218  #TRAP_BRKPT TRAP_BRKPT ) 219 mTRAP_TRACE 220  #TRAP_TRACE TRAP_TRACE ) 226 mCLD_EXITED = 1, 227  #CLD_EXITED CLD_EXITED ) 228 mCLD_KILLED , 229  #CLD_KILLED CLD_KILLED ) 230 mCLD_DUMPED , 231  #CLD_DUMPED CLD_DUMPED ) 232 mCLD_TRAPPED , 233  #CLD_TRAPPED CLD_TRAPPED ) 234 mCLD_STOPPED , 235  #CLD_STOPPED CLD_STOPPED ) 236 mCLD_CONTINUED 237  #CLD_CONTINUED CLD_CONTINUED ) 243 mPOLL_IN = 1, 244  #POLL_IN POLL_IN ) 245 mPOLL_OUT , 246  #POLL_OUT POLL_OUT ) 247 mPOLL_MSG , 248  #POLL_MSG POLL_MSG ) 249 mPOLL_ERR , 250  #POLL_ERR POLL_ERR ) 251 mPOLL_PRI , 252  #POLL_PRI POLL_PRI ) 253 mPOLL_HUP 254  #POLL_HUP POLL_HUP ) 257 #undeà __Ãed_sigšfo_t 261 #ià( defšed _SIGNAL_H || defšed __Ãed_sigev’t_t ) \ 262 && ! defšed g__have_sigev’t_t 263  #__have_sigev’t_t 1 ) 266  #__SIGEV_MAX_SIZE 64 ) 267 #ià __WORDSIZE == 64 268  #__SIGEV_PAD_SIZE (( __SIGEV_MAX_SIZE /  ()è- 4) ) 270  #__SIGEV_PAD_SIZE (( __SIGEV_MAX_SIZE /  ()è- 3) ) 273  ssigev’t 275 sigv®_t msigev_v®ue ; 276  msigev_signo ; 277  msigev_nÙify ; 281  m_·d [ __SIGEV_PAD_SIZE ]; 285 __pid_t m_tid ; 289 (* m_funùiÚ è( msigv®_t ); 290 * m_©Œibu‹ ; 291 } m_sigev_th»ad ; 292 } m_sigev_un ; 293 } tsigev’t_t ; 296  #sigev_nÙify_funùiÚ _sigev_un . _sigev_th»ad . _funùiÚ ) 297  #sigev_nÙify_©Œibu‹s _sigev_un . _sigev_th»ad . _©Œibu‹ ) 302 mSIGEV_SIGNAL = 0, 303  #SIGEV_SIGNAL SIGEV_SIGNAL ) 304 mSIGEV_NONE , 305  #SIGEV_NONE SIGEV_NONE ) 306 mSIGEV_THREAD , 307  #SIGEV_THREAD SIGEV_THREAD ) 309 mSIGEV_THREAD_ID = 4 310  #SIGEV_THREAD_ID SIGEV_THREAD_ID ) @/usr/include/bits/signum.h 20 #ifdef _SIGNAL_H 23  #SIG_ERR (( __sighªdËr_t è-1è ) 24  #SIG_DFL (( __sighªdËr_t è0è ) 25  #SIG_IGN (( __sighªdËr_t è1è ) 27 #ifdeà __USE_UNIX98 28  #SIG_HOLD (( __sighªdËr_t è2è ) 33  #SIGHUP 1 ) 34  #SIGINT 2 ) 35  #SIGQUIT 3 ) 36  #SIGILL 4 ) 37  #SIGTRAP 5 ) 38  #SIGABRT 6 ) 39  #SIGIOT 6 ) 40  #SIGBUS 7 ) 41  #SIGFPE 8 ) 42  #SIGKILL 9 ) 43  #SIGUSR1 10 ) 44  #SIGSEGV 11 ) 45  #SIGUSR2 12 ) 46  #SIGPIPE 13 ) 47  #SIGALRM 14 ) 48  #SIGTERM 15 ) 49  #SIGSTKFLT 16 ) 50  #SIGCLD SIGCHLD ) 51  #SIGCHLD 17 ) 52  #SIGCONT 18 ) 53  #SIGSTOP 19 ) 54  #SIGTSTP 20 ) 55  #SIGTTIN 21 ) 56  #SIGTTOU 22 ) 57  #SIGURG 23 ) 58  #SIGXCPU 24 ) 59  #SIGXFSZ 25 ) 60  #SIGVTALRM 26 ) 61  #SIGPROF 27 ) 62  #SIGWINCH 28 ) 63  #SIGPOLL SIGIO ) 64  #SIGIO 29 ) 65  #SIGPWR 30 ) 66  #SIGSYS 31 ) 67  #SIGUNUSED 31 ) 69  #_NSIG 65 ) 72  #SIGRTMIN ( `__libc_cu¼’t_sig¹mš ()) ) 73  #SIGRTMAX ( `__libc_cu¼’t_sig¹max ()) ) 77  #__SIGRTMIN 32 ) 78  #__SIGRTMAX ( _NSIG - 1) ) @/usr/include/bits/sigset.h 21 #iâdef _SIGSET_H_ty³s 22  #_SIGSET_H_ty³s 1 ) 24  t__sig_©omic_t ; 28  #_SIGSET_NWORDS (1024 / (8 *  ())) ) 31  m__v® [ _SIGSET_NWORDS ]; 32 } t__sig£t_t ; 43 #ià! defšed _SIGSET_H_âs && defšed _SIGNAL_H 44  #_SIGSET_H_âs 1 ) 46 #iâdeà _EXTERN_INLINE 47  #_EXTERN_INLINE __ex‹º_šlše ) 51  #__sigmask ( sig ) \ 52 (((è1è<< ((( sig è- 1è% (8 *  ()))) ) 55  #__sigwÜd ( sig è(((sigè- 1è/ (8 *  ())) ) 57 #ià defšed __GNUC__ && __GNUC__ >= 2 58  #__sigem±y£t ( £t ) \ 59 ( `__ex‹nsiÚ__ ({  __út = _SIGSET_NWORDS ; \ 60 sig£t_t * __£t = ( £t ); \ 61 -- __út >ð0è __£t -> __v® [__cnt] = 0; \ 62 0; })) ) 63  #__sigfžl£t ( £t ) \ 64 ( `__ex‹nsiÚ__ ({  __út = _SIGSET_NWORDS ; \ 65 sig£t_t * __£t = ( £t ); \ 66 -- __út >ð0è __£t -> __v® [__cnt] = ~0UL; \ 67 0; })) ) 69 #ifdeà __USE_GNU 73  #__sigi£m±y£t ( £t ) \ 74 ( `__ex‹nsiÚ__ ({  __út = _SIGSET_NWORDS ; \ 75 cÚ¡ sig£t_t * __£t = ( £t ); \ 76  __»t = __£t -> __v® [-- __út ]; \ 77 ! __»t && -- __út >= 0) \ 78 __»t = __£t -> __v® [ __út ]; \ 79 __»t =ð0; })) ) 80  #__sigªd£t ( de¡ , Ëá , right ) \ 81 ( `__ex‹nsiÚ__ ({  __út = _SIGSET_NWORDS ; \ 82 sig£t_t * __de¡ = ( de¡ ); \ 83 cÚ¡ sig£t_t * __Ëá = ( Ëá ); \ 84 cÚ¡ sig£t_t * __right = ( right ); \ 85 -- __út >= 0) \ 86 __de¡ -> __v® [ __út ] = ( __Ëá ->__val[__cnt] \ 87 & __right -> __v® [ __út ]); \ 88 0; })) ) 89  #__sigÜ£t ( de¡ , Ëá , right ) \ 90 ( `__ex‹nsiÚ__ ({  __út = _SIGSET_NWORDS ; \ 91 sig£t_t * __de¡ = ( de¡ ); \ 92 cÚ¡ sig£t_t * __Ëá = ( Ëá ); \ 93 cÚ¡ sig£t_t * __right = ( right ); \ 94 -- __út >= 0) \ 95 __de¡ -> __v® [ __út ] = ( __Ëá ->__val[__cnt] \ 96 | __right -> __v® [ __út ]); \ 97 0; })) ) 104  __sigismemb” ( __cÚ¡ __sig£t_t *, ); 105  __sigadd£t ( __sig£t_t *, ); 106  __sigd–£t ( __sig£t_t *, ); 108 #ifdeà __USE_EXTERN_INLINES 109  #__SIGSETFN ( NAME , BODY , CONST ) \ 110 _EXTERN_INLINE \ 111 `NAME ( CONST __sig£t_t * __£t ,  __sig ) \ 113  __mask = `__sigmask ( __sig ); \ 114  __wÜd = `__sigwÜd ( __sig ); \ 115  BODY ; \ 116 } ) 118 __SIGSETFN ( __sigismemb” , ( __£t -> __v® [ __wÜd ] & __mask è? 1 : 0, __cÚ¡ ) 119 __SIGSETFN ( __sigadd£t , (( __£t -> __v® [ __wÜd ] |ð __mask ), 0), ) 120 __SIGSETFN ( __sigd–£t , (( __£t -> __v® [ __wÜd ] &ð~ __mask ), 0), ) 122 #undeà __SIGSETFN @/usr/include/bits/sigstack.h 20 #iâdeà _SIGNAL_H 26  ssig¡ack 28 * mss_¥ ; 29  mss_Ú¡ack ; 36 mSS_ONSTACK = 1, 37  #SS_ONSTACK SS_ONSTACK ) 38 mSS_DISABLE 39  #SS_DISABLE SS_DISABLE ) 43  #MINSIGSTKSZ 2048 ) 46  #SIGSTKSZ 8192 ) 50  ssig®t¡ack 52 * mss_¥ ; 53  mss_æags ; 54 size_t mss_size ; 55 } t¡ack_t ; @/usr/include/bits/sigthread.h 20 #iâdeà _BITS_SIGTHREAD_H 21  #_BITS_SIGTHREAD_H 1 ) 23 #ià! defšed _SIGNAL_H && !defšed _PTHREAD_H 31  $±h»ad_sigmask ( __how , 32 __cÚ¡ __sig£t_t * __»¡riù __Ãwmask , 33 __sig£t_t * __»¡riù __Þdmask ) __THROW ; 36  $±h»ad_kžl ( ±h»ad_t __th»adid ,  __signo è __THROW ; @/usr/include/bits/sockaddr.h 24 #iâdeà _BITS_SOCKADDR_H 25  #_BITS_SOCKADDR_H 1 ) 29  t§_çmžy_t ; 35  #__SOCKADDR_COMMON ( §_´efix ) \ 36 §_çmžy_t §_´efix ## çmžy ) 38  #__SOCKADDR_COMMON_SIZE ( ()) ) @/usr/include/bits/socket.h 21 #iâdeà __BITS_SOCKET_H 22  #__BITS_SOCKET_H ) 24 #iâdeà _SYS_SOCKET_H 28  #__Ãed_size_t ) 29  #__Ãed_NULL ) 30  ~<¡ddef.h > 32  ~ 33  ~ 36 #iâdeà __sockËn_t_defšed 37  __sockËn_t tsockËn_t ; 38  #__sockËn_t_defšed ) 42 e__sock‘_ty³ 44 mSOCK_STREAM = 1, 46  #SOCK_STREAM SOCK_STREAM ) 47 mSOCK_DGRAM = 2, 49  #SOCK_DGRAM SOCK_DGRAM ) 50 mSOCK_RAW = 3, 51  #SOCK_RAW SOCK_RAW ) 52 mSOCK_RDM = 4, 53  #SOCK_RDM SOCK_RDM ) 54 mSOCK_SEQPACKET = 5, 56  #SOCK_SEQPACKET SOCK_SEQPACKET ) 57 mSOCK_PACKET = 10 60  #SOCK_PACKET SOCK_PACKET ) 64  #PF_UNSPEC 0 ) 65  #PF_LOCAL 1 ) 66  #PF_UNIX PF_LOCAL ) 67  #PF_FILE PF_LOCAL ) 68  #PF_INET 2 ) 69  #PF_AX25 3 ) 70  #PF_IPX 4 ) 71  #PF_APPLETALK 5 ) 72  #PF_NETROM 6 ) 73  #PF_BRIDGE 7 ) 74  #PF_ATMPVC 8 ) 75  #PF_X25 9 ) 76  #PF_INET6 10 ) 77  #PF_ROSE 11 ) 78  #PF_DECÃt 12 ) 79  #PF_NETBEUI 13 ) 80  #PF_SECURITY 14 ) 81  #PF_KEY 15 ) 82  #PF_NETLINK 16 ) 83  #PF_ROUTE PF_NETLINK ) 84  #PF_PACKET 17 ) 85  #PF_ASH 18 ) 86  #PF_ECONET 19 ) 87  #PF_ATMSVC 20 ) 88  #PF_SNA 22 ) 89  #PF_IRDA 23 ) 90  #PF_PPPOX 24 ) 91  #PF_WANPIPE 25 ) 92  #PF_BLUETOOTH 31 ) 93  #PF_IUCV 32 ) 94  #PF_RXRPC 33 ) 95  #PF_MAX 34 ) 98  #AF_UNSPEC PF_UNSPEC ) 99  #AF_LOCAL PF_LOCAL ) 100  #AF_UNIX PF_UNIX ) 101  #AF_FILE PF_FILE ) 102  #AF_INET PF_INET ) 103  #AF_AX25 PF_AX25 ) 104  #AF_IPX PF_IPX ) 105  #AF_APPLETALK PF_APPLETALK ) 106  #AF_NETROM PF_NETROM ) 107  #AF_BRIDGE PF_BRIDGE ) 108  #AF_ATMPVC PF_ATMPVC ) 109  #AF_X25 PF_X25 ) 110  #AF_INET6 PF_INET6 ) 111  #AF_ROSE PF_ROSE ) 112  #AF_DECÃt PF_DECÃt ) 113  #AF_NETBEUI PF_NETBEUI ) 114  #AF_SECURITY PF_SECURITY ) 115  #AF_KEY PF_KEY ) 116  #AF_NETLINK PF_NETLINK ) 117  #AF_ROUTE PF_ROUTE ) 118  #AF_PACKET PF_PACKET ) 119  #AF_ASH PF_ASH ) 120  #AF_ECONET PF_ECONET ) 121  #AF_ATMSVC PF_ATMSVC ) 122  #AF_SNA PF_SNA ) 123  #AF_IRDA PF_IRDA ) 124  #AF_PPPOX PF_PPPOX ) 125  #AF_WANPIPE PF_WANPIPE ) 126  #AF_BLUETOOTH PF_BLUETOOTH ) 127  #AF_IUCV PF_IUCV ) 128  #AF_RXRPC PF_RXRPC ) 129  #AF_MAX PF_MAX ) 135  #SOL_RAW 255 ) 136  #SOL_DECNET 261 ) 137  #SOL_X25 262 ) 138  #SOL_PACKET 263 ) 139  #SOL_ATM 264 ) 140  #SOL_AAL 265 ) 141  #SOL_IRDA 266 ) 144  #SOMAXCONN 128 ) 147  ~ 150  ssockaddr 152 __SOCKADDR_COMMON ( §_ ); 153  m§_d©a [14]; 159 #ià ULONG_MAX > 0xffffffff 160  #__ss_®igÁy³ __ušt64_t ) 162  #__ss_®igÁy³ __ušt32_t ) 164  #_SS_SIZE 128 ) 165  #_SS_PADSIZE ( _SS_SIZE - (2 *  ( __ss_®igÁy³ ))) ) 167  ssockaddr_¡Üage 169 __SOCKADDR_COMMON ( ss_ ); 170 __ss_®igÁy³ m__ss_®ign ; 171  m__ss_·ddšg [ _SS_PADSIZE ]; 178 mMSG_OOB = 0x01, 179  #MSG_OOB MSG_OOB ) 180 mMSG_PEEK = 0x02, 181  #MSG_PEEK MSG_PEEK ) 182 mMSG_DONTROUTE = 0x04, 183  #MSG_DONTROUTE MSG_DONTROUTE ) 184 #ifdeà __USE_GNU 186 mMSG_TRYHARD = MSG_DONTROUTE , 187  #MSG_TRYHARD MSG_DONTROUTE ) 189 mMSG_CTRUNC = 0x08, 190  #MSG_CTRUNC MSG_CTRUNC ) 191 mMSG_PROXY = 0x10, 192  #MSG_PROXY MSG_PROXY ) 193 mMSG_TRUNC = 0x20, 194  #MSG_TRUNC MSG_TRUNC ) 195 mMSG_DONTWAIT = 0x40, 196  #MSG_DONTWAIT MSG_DONTWAIT ) 197 mMSG_EOR = 0x80, 198  #MSG_EOR MSG_EOR ) 199 mMSG_WAITALL = 0x100, 200  #MSG_WAITALL MSG_WAITALL ) 201 mMSG_FIN = 0x200, 202  #MSG_FIN MSG_FIN ) 203 mMSG_SYN = 0x400, 204  #MSG_SYN MSG_SYN ) 205 mMSG_CONFIRM = 0x800, 206  #MSG_CONFIRM MSG_CONFIRM ) 207 mMSG_RST = 0x1000, 208  #MSG_RST MSG_RST ) 209 mMSG_ERRQUEUE = 0x2000, 210  #MSG_ERRQUEUE MSG_ERRQUEUE ) 211 mMSG_NOSIGNAL = 0x4000, 212  #MSG_NOSIGNAL MSG_NOSIGNAL ) 213 mMSG_MORE = 0x8000, 214  #MSG_MORE MSG_MORE ) 216 mMSG_CMSG_CLOEXEC = 0x40000000 219  #MSG_CMSG_CLOEXEC MSG_CMSG_CLOEXEC ) 225  smsghdr 227 * mmsg_Çme ; 228 sockËn_t mmsg_Çm–’ ; 230  iovec * mmsg_iov ; 231 size_t mmsg_iovËn ; 233 * mmsg_cÚŒÞ ; 234 size_t mmsg_cÚŒÞËn ; 239  mmsg_æags ; 243  scmsghdr 245 size_t mcmsg_Ën ; 250  mcmsg_Ëv– ; 251  mcmsg_ty³ ; 252 #ià(! defšed __STRICT_ANSI__ && __GNUC__ >ð2è|| __STDC_VERSION__ >= 199901L 253 __ex‹nsiÚ__  __cmsg_d©a m__æex¬r ; 258 #ià(! defšed __STRICT_ANSI__ && __GNUC__ >ð2è|| __STDC_VERSION__ >= 199901L 259  #CMSG_DATA ( cmsg è((cmsg)-> __cmsg_d©a ) ) 261  #CMSG_DATA ( cmsg è((*è(( cmsghdr *è(cmsgè+ 1)) ) 263  #CMSG_NXTHDR ( mhdr , cmsg è `__cmsg_nxthdr (mhdr, cmsg) ) 264  #CMSG_FIRSTHDR ( mhdr ) \ 265 (( size_t è( mhdr )-> msg_cÚŒÞËn >ð ( cmsghdr ) \ 266 ? ( cmsghdr *è( mhdr )-> msg_cÚŒÞ : (cmsghd¸*è NULL ) ) 267  #CMSG_ALIGN ( Ën è((Ö’è+  ( size_t ) - 1) \ 268 & ( size_t è~( (size_tè- 1)) ) 269  #CMSG_SPACE ( Ën è( `CMSG_ALIGN (len) \ 270 + `CMSG_ALIGN ( ( cmsghdr ))) ) 271  #CMSG_LEN ( Ën è( `CMSG_ALIGN ( ( cmsghdr )è+ (Ën)) ) 273  cmsghdr * $__cmsg_nxthdr ( msghdr * __mhdr , 274  cmsghdr * __cmsg è __THROW ; 275 #ifdeà __USE_EXTERN_INLINES 276 #iâdeà _EXTERN_INLINE 277  #_EXTERN_INLINE __ex‹º_šlše ) 279 _EXTERN_INLINE  cmsghdr * 280 `__NTH ( $__cmsg_nxthdr ( msghdr * __mhdr ,  cmsghdr * __cmsg )) 282 ià(( size_t è __cmsg -> cmsg_Ën <  ( cmsghdr )) 286 __cmsg = ( cmsghdr *) ((*) __cmsg 287 + `CMSG_ALIGN ( __cmsg -> cmsg_Ën )); 288 ià((*è( __cmsg + 1è> ((*è __mhdr -> msg_cÚŒÞ 289 + __mhdr -> msg_cÚŒÞËn ) 290 || ((*è __cmsg + `CMSG_ALIGN (__cmsg-> cmsg_Ën ) 291 > ((*è __mhdr -> msg_cÚŒÞ + __mhdr-> msg_cÚŒÞËn ))) 294  __cmsg ; 295 } } 302 mSCM_RIGHTS = 0x01 303  #SCM_RIGHTS SCM_RIGHTS ) 304 #ifdeà __USE_BSD 305 , mSCM_CREDENTIALS = 0x02 306  #SCM_CREDENTIALS SCM_CREDENTIALS ) 312  suüed 314 pid_t mpid ; 315 uid_t muid ; 316 gid_t mgid ; 320  ~ 324  slšg” 326  ml_Úoff ; 327  ml_lšg” ; @/usr/include/bits/socket2.h 20 #iâdeà _SYS_SOCKET_H 24 ssize_t __»cv_chk ( __fd , * __buf , size_t __n , size_ˆ __buæ’ , 25  __æags ); 26 ssize_t __REDIRECT ( __»cv_®Ÿs , ( __fd , * __buf , size_t __n , 27  __æags ), »cv ); 28 ssize_t __REDIRECT ( __»cv_chk_w¬n , 29 ( __fd , * __buf , size_t __n , size_ˆ __buæ’ , 30  __æags ), __»cv_chk ) 31 __w¬Ç‰r ("recv called with bigger†engthhan size of destination " 34 __ex‹º_®ways_šlše ssize_t 35 $»cv ( __fd , * __buf , size_t __n ,  __æags ) 37 ià( `__bos0 ( __buf è!ð( size_t ) -1) 39 ià(! `__bužtš_cÚ¡ªt_p ( __n )) 40  `__»cv_chk ( __fd , __buf , __n , `__bos0 (__buf), __æags ); 42 ià( __n > `__bos0 ( __buf )) 43  `__»cv_chk_w¬n ( __fd , __buf , __n , `__bos0 (__buf), __æags ); 45  `__»cv_®Ÿs ( __fd , __buf , __n , __æags ); 46 } } 48 ssize_t __»cväom_chk ( __fd , * __»¡riù __buf , size_t __n , 49 size_t __buæ’ ,  __æags , 50 __SOCKADDR_ARG __addr , 51 sockËn_t * __»¡riù __addr_Ën ); 52 ssize_t __REDIRECT ( __»cväom_®Ÿs , 53 ( __fd , * __»¡riù __buf , size_t __n , 54  __æags , __SOCKADDR_ARG __addr , 55 sockËn_t * __»¡riù __addr_Ën ), »cväom ); 56 ssize_t __REDIRECT ( __»cväom_chk_w¬n , 57 ( __fd , * __»¡riù __buf , size_t __n , 58 size_t __buæ’ ,  __æags , 59 __SOCKADDR_ARG __addr , 60 sockËn_t * __»¡riù __addr_Ën ), __»cväom_chk ) 61 __w¬Ç‰r ("recvfrom called with bigger†engthhan size of " 64 __ex‹º_®ways_šlše ssize_t 65 $»cväom ( __fd , * __»¡riù __buf , size_t __n ,  __æags , 66 __SOCKADDR_ARG __addr , sockËn_t * __»¡riù __addr_Ën ) 68 ià( `__bos0 ( __buf è!ð( size_t ) -1) 70 ià(! `__bužtš_cÚ¡ªt_p ( __n )) 71  `__»cväom_chk ( __fd , __buf , __n , `__bos0 (__buf), __æags , 72 __addr , __addr_Ën ); 73 ià( __n > `__bos0 ( __buf )) 74  `__»cväom_chk_w¬n ( __fd , __buf , __n , `__bos0 (__buf), __æags , 75 __addr , __addr_Ën ); 77  `__»cväom_®Ÿs ( __fd , __buf , __n , __æags , __addr , __addr_Ën ); 78 } } @/usr/include/bits/stat.h 19 #iâdeà _SYS_STAT_H 24  #_STAT_VER_KERNEL 0 ) 26 #ià __WORDSIZE == 32 27  #_STAT_VER_SVR4 2 ) 28  #_STAT_VER_LINUX 3 ) 31  #_MKNOD_VER_LINUX 1 ) 32  #_MKNOD_VER_SVR4 2 ) 33  #_MKNOD_VER _MKNOD_VER_LINUX ) 35  #_STAT_VER_LINUX 1 ) 38  #_MKNOD_VER_LINUX 0 ) 41  #_STAT_VER _STAT_VER_LINUX ) 43  s¡© 45 __dev_t m¡_dev ; 46 #ià __WORDSIZE == 32 47  m__·d1 ; 49 #ià __WORDSIZE =ð64 || ! defšed __USE_FILE_OFFSET64 50 __šo_t m¡_šo ; 52 __šo_t m__¡_šo ; 54 #ià __WORDSIZE == 32 55 __mode_t m¡_mode ; 56 __Æšk_t m¡_Æšk ; 58 __Æšk_t m¡_Æšk ; 59 __mode_t m¡_mode ; 61 __uid_t m¡_uid ; 62 __gid_t m¡_gid ; 63 #ià __WORDSIZE == 64 64  m·d0 ; 66 __dev_t m¡_rdev ; 67 #ià __WORDSIZE == 32 68  m__·d2 ; 70 #ià __WORDSIZE =ð64 || ! defšed __USE_FILE_OFFSET64 71 __off_t m¡_size ; 73 __off64_t m¡_size ; 75 __blksize_t m¡_blksize ; 76 #ià __WORDSIZE =ð64 || ! defšed __USE_FILE_OFFSET64 77 __blkút_t m¡_blocks ; 79 __blkút64_t m¡_blocks ; 81 #ifdeà __USE_MISC 88  time¥ec m¡_©im ; 89  time¥ec m¡_mtim ; 90  time¥ec m¡_ùim ; 91  #¡_©ime ¡_©im . tv_£c ) 92  #¡_mtime ¡_mtim . tv_£c ) 93  #¡_ùime ¡_ùim . tv_£c ) 95 __time_t m¡_©ime ; 96  m¡_©im’£c ; 97 __time_t m¡_mtime ; 98  m¡_mtim’£c ; 99 __time_t m¡_ùime ; 100  m¡_ùim’£c ; 102 #ià __WORDSIZE == 64 103  m__unu£d [3]; 105 #iâdeà __USE_FILE_OFFSET64 106  m__unu£d4 ; 107  m__unu£d5 ; 109 __šo64_t m¡_šo ; 114 #ifdeà __USE_LARGEFILE64 116  s¡©64 118 __dev_t m¡_dev ; 119 #ià __WORDSIZE == 64 120 __šo64_t m¡_šo ; 121 __Æšk_t m¡_Æšk ; 122 __mode_t m¡_mode ; 124  m__·d1 ; 125 __šo_t m__¡_šo ; 126 __mode_t m¡_mode ; 127 __Æšk_t m¡_Æšk ; 129 __uid_t m¡_uid ; 130 __gid_t m¡_gid ; 131 #ià __WORDSIZE == 64 132  m·d0 ; 133 __dev_t m¡_rdev ; 134 __off_t m¡_size ; 136 __dev_t m¡_rdev ; 137  m__·d2 ; 138 __off64_t m¡_size ; 140 __blksize_t m¡_blksize ; 141 __blkút64_t m¡_blocks ; 142 #ifdeà __USE_MISC 149  time¥ec m¡_©im ; 150  time¥ec m¡_mtim ; 151  time¥ec m¡_ùim ; 152  #¡_©ime ¡_©im . tv_£c ) 153  #¡_mtime ¡_mtim . tv_£c ) 154  #¡_ùime ¡_ùim . tv_£c ) 156 __time_t m¡_©ime ; 157  m¡_©im’£c ; 158 __time_t m¡_mtime ; 159  m¡_mtim’£c ; 160 __time_t m¡_ùime ; 161  m¡_ùim’£c ; 163 #ià __WORDSIZE == 64 164  m__unu£d [3]; 166 __šo64_t m¡_šo ; 172  #_STATBUF_ST_BLKSIZE ) 173  #_STATBUF_ST_RDEV ) 175  #_STATBUF_ST_NSEC ) 179  #__S_IFMT 0170000 ) 182  #__S_IFDIR 0040000 ) 183  #__S_IFCHR 0020000 ) 184  #__S_IFBLK 0060000 ) 185  #__S_IFREG 0100000 ) 186  #__S_IFIFO 0010000 ) 187  #__S_IFLNK 0120000 ) 188  #__S_IFSOCK 0140000 ) 192  #__S_TYPEISMQ ( buf è((buf)-> ¡_mode - (buf)->¡_mode) ) 193  #__S_TYPEISSEM ( buf è((buf)-> ¡_mode - (buf)->¡_mode) ) 194  #__S_TYPEISSHM ( buf è((buf)-> ¡_mode - (buf)->¡_mode) ) 198  #__S_ISUID 04000 ) 199  #__S_ISGID 02000 ) 200  #__S_ISVTX 01000 ) 201  #__S_IREAD 0400 ) 202  #__S_IWRITE 0200 ) 203  #__S_IEXEC 0100 ) 205 #ià defšed __USE_ATFILE || defšed __USE_GNU 207  #UTIME_NOW ((1È<< 30è- 1l) ) 208  #UTIME_OMIT ((1È<< 30è- 2l) ) @/usr/include/bits/stdio-ldbl.h 20 #iâdeà _STDIO_H 24 __BEGIN_NAMESPACE_STD 25 $__LDBL_REDIR_DECL ( årštf ) 26 $__LDBL_REDIR_DECL ( ´štf ) 27 $__LDBL_REDIR_DECL ( ¥rštf ) 28 $__LDBL_REDIR_DECL ( vårštf ) 29 $__LDBL_REDIR_DECL ( v´štf ) 30 $__LDBL_REDIR_DECL ( v¥rštf ) 31 #ià defšed __USE_ISOC99 && !defšed __USE_GNU \ 32 && ! defšed __REDIRECT \ 33 && ( defšed __STRICT_ANSI__ || defšed __USE_XOPEN2K ) 34 $__LDBL_REDIR1_DECL ( fsÿnf , __Ædbl___isoc99_fsÿnf ) 35 $__LDBL_REDIR1_DECL ( sÿnf , __Ædbl___isoc99_sÿnf ) 36 $__LDBL_REDIR1_DECL ( ssÿnf , __Ædbl___isoc99_ssÿnf ) 38 $__LDBL_REDIR_DECL ( fsÿnf ) 39 $__LDBL_REDIR_DECL ( sÿnf ) 40 $__LDBL_REDIR_DECL ( ssÿnf ) 42 __END_NAMESPACE_STD 44 #ià defšed __USE_BSD || defšed __USE_ISOC99 || defšed __USE_UNIX98 45 __BEGIN_NAMESPACE_C99 46 $__LDBL_REDIR_DECL ( ¢´štf ) 47 $__LDBL_REDIR_DECL ( v¢´štf ) 48 __END_NAMESPACE_C99 51 #ifdef __USE_ISOC99 52 __BEGIN_NAMESPACE_C99 53 #ià! defšed __USE_GNU && !defšed __REDIRECT \ 54 && ( defšed __STRICT_ANSI__ || defšed __USE_XOPEN2K ) 55 $__LDBL_REDIR1_DECL ( vfsÿnf , __Ædbl___isoc99_vfsÿnf ) 56 $__LDBL_REDIR1_DECL ( vsÿnf , __Ædbl___isoc99_vsÿnf ) 57 $__LDBL_REDIR1_DECL ( vssÿnf , __Ædbl___isoc99_vssÿnf ) 59 $__LDBL_REDIR_DECL ( vfsÿnf ) 60 $__LDBL_REDIR_DECL ( vssÿnf ) 61 $__LDBL_REDIR_DECL ( vsÿnf ) 63 __END_NAMESPACE_C99 66 #ifdeà __USE_GNU 67 $__LDBL_REDIR_DECL ( vd´štf ) 68 $__LDBL_REDIR_DECL ( d´štf ) 69 $__LDBL_REDIR_DECL ( va¥rštf ) 70 $__LDBL_REDIR_DECL ( __a¥rštf ) 71 $__LDBL_REDIR_DECL ( a¥rštf ) 72 $__LDBL_REDIR_DECL ( ob¡ack_´štf ) 73 $__LDBL_REDIR_DECL ( ob¡ack_v´štf ) 76 #ià __USE_FORTIFY_LEVEL > 0 && defšed __ex‹º_®ways_šlše 77 $__LDBL_REDIR_DECL ( __¥rštf_chk ) 78 $__LDBL_REDIR_DECL ( __v¥rštf_chk ) 79 #ià defšed __USE_BSD || defšed __USE_ISOC99 || defšed __USE_UNIX98 80 $__LDBL_REDIR_DECL ( __¢´štf_chk ) 81 $__LDBL_REDIR_DECL ( __v¢´štf_chk ) 83 #ià __USE_FORTIFY_LEVEL > 1 84 $__LDBL_REDIR_DECL ( __årštf_chk ) 85 $__LDBL_REDIR_DECL ( __´štf_chk ) 86 $__LDBL_REDIR_DECL ( __vårštf_chk ) 87 $__LDBL_REDIR_DECL ( __v´štf_chk ) @/usr/include/bits/stdio.h 20 #iâdeà _STDIO_H 24 #iâdeà __ex‹º_šlše 25  #__STDIO_INLINE šlše ) 27  #__STDIO_INLINE __ex‹º_šlše ) 31 #ifdeà __USE_EXTERN_INLINES 34 #ià!( __USE_FORTIFY_LEVEL > 0 && defšed __ex‹º_®ways_šlše ) 36 __STDIO_INLINE  37 $v´štf ( __cÚ¡ * __»¡riù __fmt , _G_va_li¡ __¬g ) 39  `vårštf ( ¡dout , __fmt , __¬g ); 40 } } 44 __STDIO_INLINE  45 $g‘ch¬ () 47  `_IO_g‘c ( ¡dš ); 48 } } 51 #ifdeà __USE_MISC 53 __STDIO_INLINE  54 $fg‘c_uÆocked ( FILE * __å ) 56  `_IO_g‘c_uÆocked ( __å ); 57 } } 61 #ià defšed __USE_POSIX || defšed __USE_MISC 63 __STDIO_INLINE  64 $g‘c_uÆocked ( FILE * __å ) 66  `_IO_g‘c_uÆocked ( __å ); 67 } } 70 __STDIO_INLINE  71 $g‘ch¬_uÆocked () 73  `_IO_g‘c_uÆocked ( ¡dš ); 74 } } 79 __STDIO_INLINE  80 $putch¬ ( __c ) 82  `_IO_putc ( __c , ¡dout ); 83 } } 86 #ifdeà __USE_MISC 88 __STDIO_INLINE  89 $åutc_uÆocked ( __c , FILE * __¡»am ) 91  `_IO_putc_uÆocked ( __c , __¡»am ); 92 } } 96 #ià defšed __USE_POSIX || defšed __USE_MISC 98 __STDIO_INLINE  99 $putc_uÆocked ( __c , FILE * __¡»am ) 101  `_IO_putc_uÆocked ( __c , __¡»am ); 102 } } 105 __STDIO_INLINE  106 $putch¬_uÆocked ( __c ) 108  `_IO_putc_uÆocked ( __c , ¡dout ); 109 } } 113 #ifdef __USE_GNU 115 __STDIO_INLINE _IO_ssize_t 116 $g‘lše (** __lš•Œ , size_t * __n , FILE * __¡»am ) 118  `__g‘d–im ( __lš•Œ , __n , '\n', __¡»am ); 119 } } 123 #ifdeà __USE_MISC 125 __STDIO_INLINE  126 __NTH ( $ãof_uÆocked ( FILE * __¡»am )) 128  `_IO_ãof_uÆocked ( __¡»am ); 129 } } 132 __STDIO_INLINE  133 __NTH ( $ã¼Ü_uÆocked ( FILE * __¡»am )) 135  `_IO_ã¼Ü_uÆocked ( __¡»am ); 136 } } 142 #ià defšed __USE_MISC && defšed __GNUC__ && defšed __OPTIMIZE__ \ 143 && ! defšed g__ýlu¥lus 145  #ä—d_uÆocked ( ±r , size , n , ¡»am ) \ 146 ( `__ex‹nsiÚ__ (( `__bužtš_cÚ¡ªt_p ( size è&& __bužtš_cÚ¡ªt_°( n ) \ 147 && ( size_t è( size è* (size_tè( n ) <= 8 \ 148 && ( size_t è( size ) != 0) \ 149 ? ({ * __±r = (*è( ±r ); \ 150 FILE * __¡»am = ( ¡»am ); \ 151 size_t __út ; \ 152  __út = ( size_t è( size è* (size_tè( n ); \ 153 __út > 0; --__cnt) \ 155  __c = `_IO_g‘c_uÆocked ( __¡»am ); \ 156 ià( __c =ð EOF ) \ 158 * __±r ++ = __c ; \ 160 (( size_t è( size è* (size_tè( n è- __út ) \ 161 / ( size_t è( size ); }) \ 162 : ((( `__bužtš_cÚ¡ªt_p ( size è&& ( size_t ) (size) == 0) \ 163 || ( `__bužtš_cÚ¡ªt_p ( n è&& ( size_t ) (n) == 0)) \ 165 ? ((è( ±r ), (è( ¡»am ), (è( size ), \ 166 (è( n ), ( size_t ) 0) \ 167 : `ä—d_uÆocked ( ±r , size , n , ¡»am )))) ) 169  #fwr™e_uÆocked ( ±r , size , n , ¡»am ) \ 170 ( `__ex‹nsiÚ__ (( `__bužtš_cÚ¡ªt_p ( size è&& __bužtš_cÚ¡ªt_°( n ) \ 171 && ( size_t è( size è* (size_tè( n ) <= 8 \ 172 && ( size_t è( size ) != 0) \ 173 ? ({ cÚ¡ * __±r = (cÚ¡ *è( ±r ); \ 174 FILE * __¡»am = ( ¡»am ); \ 175 size_t __út ; \ 176  __út = ( size_t è( size è* (size_tè( n ); \ 177 __út > 0; --__cnt) \ 178 ià( `_IO_putc_uÆocked (* __±r ++, __¡»am è=ð EOF ) \ 180 (( size_t è( size è* (size_tè( n è- __út ) \ 181 / ( size_t è( size ); }) \ 182 : ((( `__bužtš_cÚ¡ªt_p ( size è&& ( size_t ) (size) == 0) \ 183 || ( `__bužtš_cÚ¡ªt_p ( n è&& ( size_t ) (n) == 0)) \ 185 ? ((è( ±r ), (è( ¡»am ), (è( size ), \ 186 (è( n ), ( size_t ) 0) \ 187 : `fwr™e_uÆocked ( ±r , size , n , ¡»am )))) ) 191 #undeà __STDIO_INLINE @/usr/include/bits/stdio2.h 20 #iâdeà _STDIO_H 24  $__¥rštf_chk (* __»¡riù __s ,  __æag , size_t __¦’ , 25 __cÚ¡ * __»¡riù __fÜm© , ...è __THROW ; 26  $__v¥rštf_chk (* __»¡riù __s ,  __æag , size_t __¦’ , 27 __cÚ¡ * __»¡riù __fÜm© , 28 _G_va_li¡ __­ è __THROW ; 30 #ifdeà __va_¬g_·ck 31 __ex‹º_®ways_šlše  32 `__NTH ( $¥rštf (* __»¡riù __s , __cÚ¡ *__»¡riù __fmt , ...)) 34  `__bužtš___¥rštf_chk ( __s , __USE_FORTIFY_LEVEL - 1, 35 `__bos ( __s ), __fmt , `__va_¬g_·ck ()); 36 } } 37 #–ià! defšed __ýlu¥lus 38  #¥rštf ( ¡r , ...) \ 39 `__bužtš___¥rštf_chk ( ¡r , __USE_FORTIFY_LEVEL - 1, `__bos (str), \ 40 __VA_ARGS__ ) ) 43 __ex‹º_®ways_šlše  44 __NTH ( $v¥rštf (* __»¡riù __s , __cÚ¡ *__»¡riù __fmt , 45 _G_va_li¡ __­ )) 47  `__bužtš___v¥rštf_chk ( __s , __USE_FORTIFY_LEVEL - 1, 48 `__bos ( __s ), __fmt , __­ ); 49 } } 51 #ià defšed __USE_BSD || defšed __USE_ISOC99 || defšed __USE_UNIX98 53  $__¢´štf_chk (* __»¡riù __s , size_t __n ,  __æag , 54 size_t __¦’ , __cÚ¡ * __»¡riù __fÜm© , 55 ...è __THROW ; 56  $__v¢´štf_chk (* __»¡riù __s , size_t __n ,  __æag , 57 size_t __¦’ , __cÚ¡ * __»¡riù __fÜm© , 58 _G_va_li¡ __­ è __THROW ; 60 #ifdeà __va_¬g_·ck 61 __ex‹º_®ways_šlše  62 `__NTH ( $¢´štf (* __»¡riù __s , size_t __n , 63 __cÚ¡ * __»¡riù __fmt , ...)) 65  `__bužtš___¢´štf_chk ( __s , __n , __USE_FORTIFY_LEVEL - 1, 66 `__bos ( __s ), __fmt , `__va_¬g_·ck ()); 67 } } 68 #–ià! defšed __ýlu¥lus 69  #¢´štf ( ¡r , Ën , ...) \ 70 `__bužtš___¢´štf_chk ( ¡r , Ën , __USE_FORTIFY_LEVEL - 1, `__bos (str), \ 71 __VA_ARGS__ ) ) 74 __ex‹º_®ways_šlše  75 __NTH ( $v¢´štf (* __»¡riù __s , size_t __n , 76 __cÚ¡ * __»¡riù __fmt , _G_va_li¡ __­ )) 78  `__bužtš___v¢´štf_chk ( __s , __n , __USE_FORTIFY_LEVEL - 1, 79 `__bos ( __s ), __fmt , __­ ); 80 } } 84 #ià __USE_FORTIFY_LEVEL > 1 86  __årštf_chk ( FILE * __»¡riù __¡»am ,  __æag , 87 __cÚ¡ * __»¡riù __fÜm© , ...); 88  __´štf_chk ( __æag , __cÚ¡ * __»¡riù __fÜm© , ...); 89  __vårštf_chk ( FILE * __»¡riù __¡»am ,  __æag , 90 __cÚ¡ * __»¡riù __fÜm© , _G_va_li¡ __­ ); 91  __v´štf_chk ( __æag , __cÚ¡ * __»¡riù __fÜm© , 92 _G_va_li¡ __­ ); 94 #ifdeà __va_¬g_·ck 95 __ex‹º_®ways_šlše  96 $årštf ( FILE * __»¡riù __¡»am , __cÚ¡ *__»¡riù __fmt , ...) 98  `__årštf_chk ( __¡»am , __USE_FORTIFY_LEVEL - 1, __fmt , 99 `__va_¬g_·ck ()); 100 } } 102 __ex‹º_®ways_šlše  103 $´štf ( __cÚ¡ * __»¡riù __fmt , ...) 105  `__´štf_chk ( __USE_FORTIFY_LEVEL - 1, __fmt , `__va_¬g_·ck ()); 106 } } 107 #–ià! defšed __ýlu¥lus 108  #´štf (...) \ 109 `__´štf_chk ( __USE_FORTIFY_LEVEL - 1, __VA_ARGS__ ) ) 110  #årštf ( ¡»am , ...) \ 111 `__årštf_chk ( ¡»am , __USE_FORTIFY_LEVEL - 1, __VA_ARGS__ ) ) 114 __ex‹º_®ways_šlše  115 $v´štf ( __cÚ¡ * __»¡riù __fmt , _G_va_li¡ __­ ) 117 #ifdeà __USE_EXTERN_INLINES 118  `__vårštf_chk ( ¡dout , __USE_FORTIFY_LEVEL - 1, __fmt , __­ ); 120  `__v´štf_chk ( __USE_FORTIFY_LEVEL - 1, __fmt , __­ ); 122 } } 124 __ex‹º_®ways_šlše  125 $vårštf ( FILE * __»¡riù __¡»am , 126 __cÚ¡ * __»¡riù __fmt , _G_va_li¡ __­ ) 128  `__vårštf_chk ( __¡»am , __USE_FORTIFY_LEVEL - 1, __fmt , __­ ); 129 } } 133 * $__g‘s_chk (* __¡r , size_t è __wur ; 134 * `__REDIRECT ( __g‘s_w¬n , (* __¡r ), g‘s ) 135 __wur `__w¬Ç‰r ("please use fgets or getline instead, gets can't " 138 __ex‹º_®ways_šlše __wur * 139 $g‘s (* __¡r ) 141 ià( `__bos ( __¡r è!ð( size_t ) -1) 142  `__g‘s_chk ( __¡r , `__bos (__str)); 143  `__g‘s_w¬n ( __¡r ); 144 } } 146 * $__fg‘s_chk (* __»¡riù __s , size_t __size ,  __n , 147 FILE * __»¡riù __¡»am è __wur ; 148 * `__REDIRECT ( __fg‘s_®Ÿs , 149 (* __»¡riù __s ,  __n , 150 FILE * __»¡riù __¡»am ), fg‘s è __wur ; 151 * `__REDIRECT ( __fg‘s_chk_w¬n , 152 (* __»¡riù __s , size_t __size ,  __n , 153 FILE * __»¡riù __¡»am ), __fg‘s_chk ) 154 __wur `__w¬Ç‰r ("fgets called with bigger sizehan†ength " 157 __ex‹º_®ways_šlše __wur * 158 $fg‘s (* __»¡riù __s ,  __n , FILE *__»¡riù __¡»am ) 160 ià( `__bos ( __s è!ð( size_t ) -1) 162 ià(! `__bužtš_cÚ¡ªt_p ( __n ) || __n <= 0) 163  `__fg‘s_chk ( __s , `__bos (__s), __n , __¡»am ); 165 ià(( size_t è __n > `__bos ( __s )) 166  `__fg‘s_chk_w¬n ( __s , `__bos (__s), __n , __¡»am ); 168  `__fg‘s_®Ÿs ( __s , __n , __¡»am ); 169 } } 171 size_t $__ä—d_chk (* __»¡riù __±r , size_t __±¾’ , 172 size_t __size , size_ˆ __n , 173 FILE * __»¡riù __¡»am è __wur ; 174 size_t `__REDIRECT ( __ä—d_®Ÿs , 175 (* __»¡riù __±r , size_t __size , 176 size_t __n , FILE * __»¡riù __¡»am ), 177 ä—d è __wur ; 178 size_t `__REDIRECT ( __ä—d_chk_w¬n , 179 (* __»¡riù __±r , size_t __±¾’ , 180 size_t __size , size_ˆ __n , 181 FILE * __»¡riù __¡»am ), 182 __ä—d_chk ) 183 __wur `__w¬Ç‰r ("fread called with bigger size *‚membhan†ength " 186 __ex‹º_®ways_šlše __wur size_t 187 $ä—d (* __»¡riù __±r , size_t __size , size_ˆ __n , 188 FILE * __»¡riù __¡»am ) 190 ià( `__bos0 ( __±r è!ð( size_t ) -1) 192 ià(! `__bužtš_cÚ¡ªt_p ( __size ) 193 || ! `__bužtš_cÚ¡ªt_p ( __n ) 194 || ( __size | __n è>ð((( size_t ) 1) << (8 *  (size_t) / 2))) 195  `__ä—d_chk ( __±r , `__bos0 (__±r), __size , __n , __¡»am ); 197 ià( __size * __n > `__bos0 ( __±r )) 198  `__ä—d_chk_w¬n ( __±r , `__bos0 (__±r), __size , __n , __¡»am ); 200  `__ä—d_®Ÿs ( __±r , __size , __n , __¡»am ); 201 } } 203 #ifdeà __USE_GNU 204 * $__fg‘s_uÆocked_chk (* __»¡riù __s , size_t __size , 205  __n , FILE * __»¡riù __¡»am è __wur ; 206 * `__REDIRECT ( __fg‘s_uÆocked_®Ÿs , 207 (* __»¡riù __s ,  __n , 208 FILE * __»¡riù __¡»am ), fg‘s_uÆocked è __wur ; 209 * `__REDIRECT ( __fg‘s_uÆocked_chk_w¬n , 210 (* __»¡riù __s , size_t __size ,  __n , 211 FILE * __»¡riù __¡»am ), __fg‘s_uÆocked_chk ) 212 __wur `__w¬Ç‰r ("fgets_unlocked called with bigger sizehan†ength " 215 __ex‹º_®ways_šlše __wur * 216 $fg‘s_uÆocked (* __»¡riù __s ,  __n , FILE *__»¡riù __¡»am ) 218 ià( `__bos ( __s è!ð( size_t ) -1) 220 ià(! `__bužtš_cÚ¡ªt_p ( __n ) || __n <= 0) 221  `__fg‘s_uÆocked_chk ( __s , `__bos (__s), __n , __¡»am ); 223 ià(( size_t è __n > `__bos ( __s )) 224  `__fg‘s_uÆocked_chk_w¬n ( __s , `__bos (__s), __n , __¡»am ); 226  `__fg‘s_uÆocked_®Ÿs ( __s , __n , __¡»am ); 227 } } 230 #ifdeà __USE_MISC 231 #undeà ä—d_uÆocked 232 size_t $__ä—d_uÆocked_chk (* __»¡riù __±r , size_t __±¾’ , 233 size_t __size , size_ˆ __n , 234 FILE * __»¡riù __¡»am è __wur ; 235 size_t `__REDIRECT ( __ä—d_uÆocked_®Ÿs , 236 (* __»¡riù __±r , size_t __size , 237 size_t __n , FILE * __»¡riù __¡»am ), 238 ä—d_uÆocked è __wur ; 239 size_t `__REDIRECT ( __ä—d_uÆocked_chk_w¬n , 240 (* __»¡riù __±r , size_t __±¾’ , 241 size_t __size , size_ˆ __n , 242 FILE * __»¡riù __¡»am ), 243 __ä—d_uÆocked_chk ) 244 __wur `__w¬Ç‰r ("fread_unlocked called with bigger size *‚membhan " 247 __ex‹º_®ways_šlše __wur size_t 248 $ä—d_uÆocked (* __»¡riù __±r , size_t __size , size_ˆ __n , 249 FILE * __»¡riù __¡»am ) 251 ià( `__bos0 ( __±r è!ð( size_t ) -1) 253 ià(! `__bužtš_cÚ¡ªt_p ( __size ) 254 || ! `__bužtš_cÚ¡ªt_p ( __n ) 255 || ( __size | __n è>ð((( size_t ) 1) << (8 *  (size_t) / 2))) 256  `__ä—d_uÆocked_chk ( __±r , `__bos0 (__±r), __size , __n , 257 __¡»am ); 259 ià( __size * __n > `__bos0 ( __±r )) 260  `__ä—d_uÆocked_chk_w¬n ( __±r , `__bos0 (__±r), __size , __n , 261 __¡»am ); 264 #ifdeà __USE_EXTERN_INLINES 265 ià( `__bužtš_cÚ¡ªt_p ( __size ) 266 && `__bužtš_cÚ¡ªt_p ( __n ) 267 && ( __size | __n è< ((( size_t ) 1) << (8 *  (size_t) / 2)) 268 && __size * __n <= 8) 270 size_t __út = __size * __n ; 271 * __ýŒ = (*è __±r ; 272 ià( __út == 0) 275 ; __út > 0; --__cnt) 277  __c = `_IO_g‘c_uÆocked ( __¡»am ); 278 ià( __c =ð EOF ) 280 * __ýŒ ++ = __c ; 282  ( __ýŒ - (*è __±r è/ __size ; 285  `__ä—d_uÆocked_®Ÿs ( __±r , __size , __n , __¡»am ); 286 } } @/usr/include/bits/stdio_lim.h 19 #ià! defšed _STDIO_H && !defšed __Ãed_FOPEN_MAX && !defšed __Ãed_IOV_MAX 23 #ifdeà _STDIO_H 24  #L_tm²am 20 ) 25  #TMP_MAX 238328 ) 26  #FILENAME_MAX 4096 ) 28 #ifdeà __USE_POSIX 29  #L_ù”mid 9 ) 30  #L_cu£rid 9 ) 34 #ià defšed __Ãed_FOPEN_MAX || defšed _STDIO_H 35 #undeà FOPEN_MAX 36  #FOPEN_MAX 16 ) 39 #ià defšed __Ãed_IOV_MAX && !defšed IOV_MAX 40  #IOV_MAX 1024 ) @/usr/include/bits/stdlib-ldbl.h 20 #iâdeà _STDLIB_H 24 #ifdef __USE_ISOC99 25 __BEGIN_NAMESPACE_C99 26 $__LDBL_REDIR1_DECL ( ¡¹Þd , ¡¹od ) 27 __END_NAMESPACE_C99 30 #ifdeà __USE_GNU 31 $__LDBL_REDIR1_DECL ( ¡¹Þd_l , ¡¹od_l ) 34 #ià defšed __USE_SVID || defšed __USE_XOPEN_EXTENDED 35 #ifdeà __USE_MISC 36 $__LDBL_REDIR1_DECL ( qecvt , ecvt ) 37 $__LDBL_REDIR1_DECL ( qfcvt , fcvt ) 38 $__LDBL_REDIR1_DECL ( qgcvt , gcvt ) 39 $__LDBL_REDIR1_DECL ( qecvt_r , ecvt_r ) 40 $__LDBL_REDIR1_DECL ( qfcvt_r , fcvt_r ) @/usr/include/bits/stdlib.h 20 #iâdeà _STDLIB_H 24 * $__»®·th_chk ( __cÚ¡ * __»¡riù __Çme , 25 * __»¡riù __»sÞved , 26 size_t __»sÞvedËn è __THROW __wur ; 27 * `__REDIRECT_NTH ( __»®·th_®Ÿs , 28 ( __cÚ¡ * __»¡riù __Çme , 29 * __»¡riù __»sÞved ), »®·th è __wur ; 30 * `__REDIRECT_NTH ( __»®·th_chk_w¬n , 31 ( __cÚ¡ * __»¡riù __Çme , 32 * __»¡riù __»sÞved , 33 size_t __»sÞvedËn ), __»®·th_chk è __wur 34 `__w¬Ç‰r ("second‡rgument of„ealpath must beƒither NULL or‡t " 37 __ex‹º_®ways_šlše __wur * 38 `__NTH ( $»®·th ( __cÚ¡ * __»¡riù __Çme , *__»¡riù __»sÞved )) 40 ià( `__bos ( __»sÞved è!ð( size_t ) -1) 42 #ià defšed _LIBC_LIMITS_H_ && defšed PATH_MAX 43 ià( `__bos ( __»sÞved è< PATH_MAX ) 44  `__»®·th_chk_w¬n ( __Çme , __»sÞved , `__bos (__resolved)); 46  `__»®·th_chk ( __Çme , __»sÞved , `__bos (__resolved)); 49  `__»®·th_®Ÿs ( __Çme , __»sÞved ); 50 } } 53  $__±¢ame_r_chk ( __fd , * __buf , size_t __buæ’ , 54 size_t __Ä—l è __THROW `__nÚnuÎ ((2)); 55  `__REDIRECT_NTH ( __±¢ame_r_®Ÿs , ( __fd , * __buf , 56 size_t __buæ’ ), ±¢ame_r ) 57 `__nÚnuÎ ((2)); 58  `__REDIRECT_NTH ( __±¢ame_r_chk_w¬n , 59 ( __fd , * __buf , size_t __buæ’ , 60 size_t __Ä—l ), __±¢ame_r_chk ) 61 `__nÚnuÎ ((2)è `__w¬Ç‰r ("ptsname_r called with buflen biggerhan " 64 __ex‹º_®ways_šlše  65 `__NTH ( $±¢ame_r ( __fd , * __buf , size_t __buæ’ )) 67 ià( `__bos ( __buf è!ð( size_t ) -1) 69 ià(! `__bužtš_cÚ¡ªt_p ( __buæ’ )) 70  `__±¢ame_r_chk ( __fd , __buf , __buæ’ , `__bos (__buf)); 71 ià( __buæ’ > `__bos ( __buf )) 72  `__±¢ame_r_chk_w¬n ( __fd , __buf , __buæ’ , `__bos (__buf)); 74  `__±¢ame_r_®Ÿs ( __fd , __buf , __buæ’ ); 75 } } 78  $__wùomb_chk (* __s , wch¬_t __wch¬ , size_t __buæ’ ) 79 __THROW __wur ; 80  `__REDIRECT_NTH ( __wùomb_®Ÿs , (* __s , wch¬_t __wch¬ ), 81 wùomb è __wur ; 83 __ex‹º_®ways_šlše __wur  84 `__NTH ( $wùomb (* __s , wch¬_t __wch¬ )) 89  #__STDLIB_MB_LEN_MAX 16 ) 90 #ià defšed MB_LEN_MAX && MB_LEN_MAX !ð __STDLIB_MB_LEN_MAX 93 ià( `__bos ( __s è!ð( size_t è-1 && __STDLIB_MB_LEN_MAX > __bos (__s)) 94  `__wùomb_chk ( __s , __wch¬ , `__bos (__s)); 95  `__wùomb_®Ÿs ( __s , __wch¬ ); 96 } } 99 size_t $__mb¡owcs_chk ( wch¬_t * __»¡riù __d¡ , 100 __cÚ¡ * __»¡riù __¤c , 101 size_t __Ën , size_ˆ __d¡Ën è __THROW ; 102 size_t `__REDIRECT_NTH ( __mb¡owcs_®Ÿs , 103 ( wch¬_t * __»¡riù __d¡ , 104 __cÚ¡ * __»¡riù __¤c , 105 size_t __Ën ), mb¡owcs ); 106 size_t `__REDIRECT_NTH ( __mb¡owcs_chk_w¬n , 107 ( wch¬_t * __»¡riù __d¡ , 108 __cÚ¡ * __»¡riù __¤c , 109 size_t __Ën , size_ˆ __d¡Ën ), __mb¡owcs_chk ) 110 `__w¬Ç‰r ("mbstowcs called with dst buffer smallerhan†en " 113 __ex‹º_®ways_šlše size_t 114 `__NTH ( $mb¡owcs ( wch¬_t * __»¡riù __d¡ , __cÚ¡ *__»¡riù __¤c , 115 size_t __Ën )) 117 ià( `__bos ( __d¡ è!ð( size_t ) -1) 119 ià(! `__bužtš_cÚ¡ªt_p ( __Ën )) 120  `__mb¡owcs_chk ( __d¡ , __¤c , __Ën , 121 `__bos ( __d¡ è/  ( wch¬_t )); 123 ià( __Ën > `__bos ( __d¡ è/  ( wch¬_t )) 124  `__mb¡owcs_chk_w¬n ( __d¡ , __¤c , __Ën , 125 `__bos ( __d¡ è/  ( wch¬_t )); 127  `__mb¡owcs_®Ÿs ( __d¡ , __¤c , __Ën ); 128 } } 131 size_t $__wc¡ombs_chk (* __»¡riù __d¡ , 132 __cÚ¡ wch¬_t * __»¡riù __¤c , 133 size_t __Ën , size_ˆ __d¡Ën è __THROW ; 134 size_t `__REDIRECT_NTH ( __wc¡ombs_®Ÿs , 135 (* __»¡riù __d¡ , 136 __cÚ¡ wch¬_t * __»¡riù __¤c , 137 size_t __Ën ), wc¡ombs ); 138 size_t `__REDIRECT_NTH ( __wc¡ombs_chk_w¬n , 139 (* __»¡riù __d¡ , 140 __cÚ¡ wch¬_t * __»¡riù __¤c , 141 size_t __Ën , size_ˆ __d¡Ën ), __wc¡ombs_chk ) 142 `__w¬Ç‰r ("wcstombs called with dst buffer smallerhan†en"); 144 __ex‹º_®ways_šlše size_t 145 `__NTH ( $wc¡ombs (* __»¡riù __d¡ , __cÚ¡ wch¬_t *__»¡riù __¤c , 146 size_t __Ën )) 148 ià( `__bos ( __d¡ è!ð( size_t ) -1) 150 ià(! `__bužtš_cÚ¡ªt_p ( __Ën )) 151  `__wc¡ombs_chk ( __d¡ , __¤c , __Ën , `__bos (__dst)); 152 ià( __Ën > `__bos ( __d¡ )) 153  `__wc¡ombs_chk_w¬n ( __d¡ , __¤c , __Ën , `__bos (__dst)); 155  `__wc¡ombs_®Ÿs ( __d¡ , __¤c , __Ën ); 156 } } @/usr/include/bits/string.h 20 #iâdeà _STRING_H 26  #_STRING_ARCH_uÇligÃd 1 ) @/usr/include/bits/string2.h 21 #iâdeà _STRING_H 25 #ià! defšed __NO_STRING_INLINES && !defšed __BOUNDED_POINTERS__ 42 #iâdeà __STRING_INLINE 43 #ifdeà __ýlu¥lus 44  #__STRING_INLINE šlše ) 46  #__STRING_INLINE __ex‹º_šlše ) 50 #ià _STRING_ARCH_uÇligÃd 52  ~<’dŸn.h > 53  ~ 55 #ià __BYTE_ORDER =ð __LITTLE_ENDIAN 56  #__STRING2_SMALL_GET16 ( ¤c , idx ) \ 57 ((( __cÚ¡ *è(__cÚ¡ *è( ¤c ))[ idx + 1] << 8 \ 58 | (( __cÚ¡ *è(__cÚ¡ *è( ¤c ))[ idx ]) ) 59  #__STRING2_SMALL_GET32 ( ¤c , idx ) \ 60 ((((( __cÚ¡ *è(__cÚ¡ *è( ¤c ))[ idx + 3] << 8 \ 61 | (( __cÚ¡ *è(__cÚ¡ *è( ¤c ))[ idx + 2]) << 8 \ 62 | (( __cÚ¡ *è(__cÚ¡ *è( ¤c ))[ idx + 1]) << 8 \ 63 | (( __cÚ¡ *è(__cÚ¡ *è( ¤c ))[ idx ]) ) 65  #__STRING2_SMALL_GET16 ( ¤c , idx ) \ 66 ((( __cÚ¡ *è(__cÚ¡ *è( ¤c ))[ idx ] << 8 \ 67 | (( __cÚ¡ *è(__cÚ¡ *è( ¤c ))[ idx + 1]) ) 68  #__STRING2_SMALL_GET32 ( ¤c , idx ) \ 69 ((((( __cÚ¡ *è(__cÚ¡ *è( ¤c ))[ idx ] << 8 \ 70 | (( __cÚ¡ *è(__cÚ¡ *è( ¤c ))[ idx + 1]) << 8 \ 71 | (( __cÚ¡ *è(__cÚ¡ *è( ¤c ))[ idx + 2]) << 8 \ 72 | (( __cÚ¡ *è(__cÚ¡ *è( ¤c ))[ idx + 3]) ) 77  #__STRING2_COPY_TYPE ( N ) \ 78 ¡ruù {  __¬r [ N ]; } \ 79 t__©Œibu‹__ (( t__·cked__ )è t__STRING2_COPY_ARR ## tN ) 80 t__STRING2_COPY_TYPE (2); 81 __STRING2_COPY_TYPE (3); 82 __STRING2_COPY_TYPE (4); 83 __STRING2_COPY_TYPE (5); 84 __STRING2_COPY_TYPE (6); 85 __STRING2_COPY_TYPE (7); 86 __STRING2_COPY_TYPE (8); 87 #undeà __STRING2_COPY_TYPE 93  #__¡ršg2_1b±r_p ( __x ) \ 94 (( size_t )(cÚ¡ *)(( __x è+ 1è- (size_t)(cÚ¡ *)(__xè=ð1) ) 97 #ià! defšed _HAVE_STRING_ARCH_mem£t 98 #ià! __GNUC_PREREQ (3, 0) 99 #ià _STRING_ARCH_uÇligÃd 100  #mem£t ( s , c , n ) \ 101 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( n ) && (n) <= 16 \ 102 ? (( n ) == 1 \ 103 ? `__mem£t_1 ( s , c ) \ 104 : `__mem£t_gc ( s , c , n )) \ 105 : ( `__bužtš_cÚ¡ªt_p ( c ) && (c) == '\0' \ 106 ? ({ * __s = ( s ); `__bz”o (__s, n ); __s; }) \ 107 : `mem£t ( s , c , n )))) ) 109  #__mem£t_1 ( s , c è({ * __s = (s); \ 110 *(( __ušt8_t *è __s èð(__ušt8_tè c ; __s; }) ) 112  #__mem£t_gc ( s , c , n ) \ 113 ({ * __s = ( s ); \ 115  __ui ; \ 116  __usi ; \ 117  __uc ; \ 118 } * __u = __s ; \ 119 __ušt8_t __c = (__ušt8_tè( c ); \ 122 (è( n )) \ 125 __u -> __ui = __c * 0x01010101; \ 126 __u = `__ex‹nsiÚ__ ((*) __u + 4); \ 128 __u -> __ui = __c * 0x01010101; \ 129 __u = `__ex‹nsiÚ__ ((*) __u + 4); \ 131 __u -> __ui = __c * 0x01010101; \ 132 __u = `__ex‹nsiÚ__ ((*) __u + 4); \ 134 __u -> __usi = (è __c * 0x0101; \ 135 __u = `__ex‹nsiÚ__ ((*) __u + 2); \ 136 __u -> __uc = (è __c ; \ 140 __u -> __ui = __c * 0x01010101; \ 141 __u = `__ex‹nsiÚ__ ((*) __u + 4); \ 143 __u -> __ui = __c * 0x01010101; \ 144 __u = `__ex‹nsiÚ__ ((*) __u + 4); \ 146 __u -> __ui = __c * 0x01010101; \ 147 __u = `__ex‹nsiÚ__ ((*) __u + 4); \ 149 __u -> __usi = (è __c * 0x0101; \ 153 __u -> __ui = __c * 0x01010101; \ 154 __u = `__ex‹nsiÚ__ ((*) __u + 4); \ 156 __u -> __ui = __c * 0x01010101; \ 157 __u = `__ex‹nsiÚ__ ((*) __u + 4); \ 159 __u -> __ui = __c * 0x01010101; \ 160 __u = `__ex‹nsiÚ__ ((*) __u + 4); \ 162 __u -> __uc = (è __c ; \ 166 __u -> __ui = __c * 0x01010101; \ 167 __u = `__ex‹nsiÚ__ ((*) __u + 4); \ 169 __u -> __ui = __c * 0x01010101; \ 170 __u = `__ex‹nsiÚ__ ((*) __u + 4); \ 172 __u -> __ui = __c * 0x01010101; \ 173 __u = `__ex‹nsiÚ__ ((*) __u + 4); \ 175 __u -> __ui = __c * 0x01010101; \ 180 __s ; }) ) 182  #mem£t ( s , c , n ) \ 183 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( c ) && (c) == '\0' \ 184 ? ({ * __s = ( s ); `__bz”o (__s, n ); __s; }) \ 185 : `mem£t ( s , c , n ))) ) 194 #ià __GNUC_PREREQ (2, 91) 195  #__bz”o ( s , n è `__bužtš_mem£t (s, '\0',‚) ) 203 #ifdeà __USE_GNU 204 #ià! defšed _HAVE_STRING_ARCH_mempýy || defšed _FORCE_INLINES 205 #iâdeà _HAVE_STRING_ARCH_mempýy 206 #ià __GNUC_PREREQ (3, 4) 207  #__mempýy ( de¡ , ¤c , n è `__bužtš_mempýy (de¡, src,‚) ) 208 #–ià __GNUC_PREREQ (3, 0) 209  #__mempýy ( de¡ , ¤c , n ) \ 210 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( ¤c è&& __bužtš_cÚ¡ªt_°( n ) \ 211 && `__¡ršg2_1b±r_p ( ¤c è&& n <= 8 \ 212 ? `__bužtš_memýy ( de¡ , ¤c , n ) + (n) \ 213 : `__mempýy ( de¡ , ¤c , n ))) ) 215  #__mempýy ( de¡ , ¤c , n ) \ 216 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( ¤c è&& __bužtš_cÚ¡ªt_°( n ) \ 217 && `__¡ršg2_1b±r_p ( ¤c è&& n <= 8 \ 218 ? `__mempýy_sm®l ( de¡ , `__mempýy_¬gs ( ¤c ), n ) \ 219 : `__mempýy ( de¡ , ¤c , n ))) ) 223  #mempýy ( de¡ , ¤c , n è `__mempýy (de¡, src,‚) ) 226 #ià! __GNUC_PREREQ (3, 0è|| defšed _FORCE_INLINES 227 #ià _STRING_ARCH_uÇligÃd 228 #iâdeà _FORCE_INLINES 229  #__mempýy_¬gs ( ¤c ) \ 230 (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[2], \ 231 (( __cÚ¡ *è( ¤c ))[4], ((__const *) (src))[6], \ 232 __ex‹nsiÚ__ `__STRING2_SMALL_GET16 ( ¤c , 0), \ 233 __ex‹nsiÚ__ `__STRING2_SMALL_GET16 ( ¤c , 4), \ 234 __ex‹nsiÚ__ `__STRING2_SMALL_GET32 ( ¤c , 0), \ 235 __ex‹nsiÚ__ `__STRING2_SMALL_GET32 ( ¤c , 4) ) 237 __STRING_INLINE * __mempýy_sm®l (*, , , , , 238 __ušt16_t , __ušt16_t, __ušt32_t , 239 __ušt32_t , size_t ); 240 __STRING_INLINE * 241 $__mempýy_sm®l (* __de¡1 , 242  __¤c0_1 ,  __¤c2_1 ,  __¤c4_1 ,  __¤c6_1 , 243 __ušt16_t __¤c0_2 , __ušt16_ˆ __¤c4_2 , 244 __ušt32_t __¤c0_4 , __ušt32_ˆ __¤c4_4 , 245 size_t __¤þ’ ) 248 __ušt32_t __ui ; 249 __ušt16_t __usi ; 250  __uc ; 251  __c ; 252 } * __u = __de¡1 ; 253 (è __¤þ’ ) 256 __u -> __c = __¤c0_1 ; 257 __u = `__ex‹nsiÚ__ ((*) __u + 1); 260 __u -> __usi = __¤c0_2 ; 261 __u = `__ex‹nsiÚ__ ((*) __u + 2); 264 __u -> __usi = __¤c0_2 ; 265 __u = `__ex‹nsiÚ__ ((*) __u + 2); 266 __u -> __c = __¤c2_1 ; 267 __u = `__ex‹nsiÚ__ ((*) __u + 1); 270 __u -> __ui = __¤c0_4 ; 271 __u = `__ex‹nsiÚ__ ((*) __u + 4); 274 __u -> __ui = __¤c0_4 ; 275 __u = `__ex‹nsiÚ__ ((*) __u + 4); 276 __u -> __c = __¤c4_1 ; 277 __u = `__ex‹nsiÚ__ ((*) __u + 1); 280 __u -> __ui = __¤c0_4 ; 281 __u = `__ex‹nsiÚ__ ((*) __u + 4); 282 __u -> __usi = __¤c4_2 ; 283 __u = `__ex‹nsiÚ__ ((*) __u + 2); 286 __u -> __ui = __¤c0_4 ; 287 __u = `__ex‹nsiÚ__ ((*) __u + 4); 288 __u -> __usi = __¤c4_2 ; 289 __u = `__ex‹nsiÚ__ ((*) __u + 2); 290 __u -> __c = __¤c6_1 ; 291 __u = `__ex‹nsiÚ__ ((*) __u + 1); 294 __u -> __ui = __¤c0_4 ; 295 __u = `__ex‹nsiÚ__ ((*) __u + 4); 296 __u -> __ui = __¤c4_4 ; 297 __u = `__ex‹nsiÚ__ ((*) __u + 4); 300  (*è __u ; 301 } } 303 #iâdeà _FORCE_INLINES 304  #__mempýy_¬gs ( ¤c ) \ 305 (( __cÚ¡ *è( ¤c ))[0], \ 306 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR2 ) \ 307 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1] } }), \ 308 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR3 ) \ 309 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 310 (( __cÚ¡ *è( ¤c ))[2] } }), \ 311 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR4 ) \ 312 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 313 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3] } }), \ 314 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR5 ) \ 315 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 316 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3], \ 317 (( __cÚ¡ *è( ¤c ))[4] } }), \ 318 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR6 ) \ 319 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 320 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3], \ 321 (( __cÚ¡ *è( ¤c ))[4], ((__const *) (src))[5] } }), \ 322 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR7 ) \ 323 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 324 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3], \ 325 (( __cÚ¡ *è( ¤c ))[4], ((__const *) (src))[5], \ 326 (( __cÚ¡ *è( ¤c ))[6] } }), \ 327 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR8 ) \ 328 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 329 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3], \ 330 (( __cÚ¡ *è( ¤c ))[4], ((__const *) (src))[5], \ 331 (( __cÚ¡ *è( ¤c ))[6], ((__cÚ¡ *è(¤c))[7] } }) ) 333 __STRING_INLINE * __mempýy_sm®l (*, , __STRING2_COPY_ARR2 , 334 __STRING2_COPY_ARR3 , 335 __STRING2_COPY_ARR4 , 336 __STRING2_COPY_ARR5 , 337 __STRING2_COPY_ARR6 , 338 __STRING2_COPY_ARR7 , 339 __STRING2_COPY_ARR8 , size_t ); 340 __STRING_INLINE * 341 $__mempýy_sm®l (* __de¡ ,  __¤c1 , 342 __STRING2_COPY_ARR2 __¤c2 , __STRING2_COPY_ARR3 __¤c3 , 343 __STRING2_COPY_ARR4 __¤c4 , __STRING2_COPY_ARR5 __¤c5 , 344 __STRING2_COPY_ARR6 __¤c6 , __STRING2_COPY_ARR7 __¤c7 , 345 __STRING2_COPY_ARR8 __¤c8 , size_t __¤þ’ ) 348  __c ; 349 __STRING2_COPY_ARR2 __sÿ2 ; 350 __STRING2_COPY_ARR3 __sÿ3 ; 351 __STRING2_COPY_ARR4 __sÿ4 ; 352 __STRING2_COPY_ARR5 __sÿ5 ; 353 __STRING2_COPY_ARR6 __sÿ6 ; 354 __STRING2_COPY_ARR7 __sÿ7 ; 355 __STRING2_COPY_ARR8 __sÿ8 ; 356 } * __u = __de¡ ; 357 (è __¤þ’ ) 360 __u -> __c = __¤c1 ; 363 __ex‹nsiÚ__ __u -> __sÿ2 = __¤c2 ; 366 __ex‹nsiÚ__ __u -> __sÿ3 = __¤c3 ; 369 __ex‹nsiÚ__ __u -> __sÿ4 = __¤c4 ; 372 __ex‹nsiÚ__ __u -> __sÿ5 = __¤c5 ; 375 __ex‹nsiÚ__ __u -> __sÿ6 = __¤c6 ; 378 __ex‹nsiÚ__ __u -> __sÿ7 = __¤c7 ; 381 __ex‹nsiÚ__ __u -> __sÿ8 = __¤c8 ; 384  `__ex‹nsiÚ__ ((*è __u + __¤þ’ ); 385 } } 393 #iâdeà _HAVE_STRING_ARCH_¡rchr 394 * __¿wmemchr (cÚ¡ * __s ,  __c ); 395 #ià __GNUC_PREREQ (3, 2) 396  #¡rchr ( s , c ) \ 397 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( c è&& !__bužtš_cÚ¡ªt_°( s ) \ 398 && ( c ) == '\0' \ 399 ? (*è `__¿wmemchr ( s , c ) \ 400 : `__bužtš_¡rchr ( s , c ))) ) 402  #¡rchr ( s , c ) \ 403 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( c ) && (c) == '\0' \ 404 ? (*è `__¿wmemchr ( s , c ) \ 405 : `¡rchr ( s , c ))) ) 411 #ià(! defšed _HAVE_STRING_ARCH_¡rýy && ! __GNUC_PREREQ (3, 0)) \ 412 || defšed g_FORCE_INLINES 413 #ià! defšed _HAVE_STRING_ARCH_¡rýy && ! __GNUC_PREREQ (3, 0) 414  #¡rýy ( de¡ , ¤c ) \ 415 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( ¤c ) \ 416 ? ( `__¡ršg2_1b±r_p ( ¤c è&& `¡¾’ (src) + 1 <= 8 \ 417 ? `__¡rýy_sm®l ( de¡ , `__¡rýy_¬gs ( ¤c ), \ 418 `¡¾’ ( ¤c ) + 1) \ 419 : (*è `memýy ( de¡ , ¤c , `¡¾’ (src) + 1)) \ 420 : `¡rýy ( de¡ , ¤c ))) ) 423 #ià _STRING_ARCH_uÇligÃd 424 #iâdeà _FORCE_INLINES 425  #__¡rýy_¬gs ( ¤c ) \ 426 __ex‹nsiÚ__ `__STRING2_SMALL_GET16 ( ¤c , 0), \ 427 __ex‹nsiÚ__ `__STRING2_SMALL_GET16 ( ¤c , 4), \ 428 __ex‹nsiÚ__ `__STRING2_SMALL_GET32 ( ¤c , 0), \ 429 __ex‹nsiÚ__ `__STRING2_SMALL_GET32 ( ¤c , 4) ) 431 __STRING_INLINE * __¡rýy_sm®l (*, __ušt16_t , __uint16_t, 432 __ušt32_t , __ušt32_t, size_t ); 433 __STRING_INLINE * 434 $__¡rýy_sm®l (* __de¡ , 435 __ušt16_t __¤c0_2 , __ušt16_ˆ __¤c4_2 , 436 __ušt32_t __¤c0_4 , __ušt32_ˆ __¤c4_4 , 437 size_t __¤þ’ ) 440 __ušt32_t __ui ; 441 __ušt16_t __usi ; 442  __uc ; 443 } * __u = (*è __de¡ ; 444 (è __¤þ’ ) 447 __u -> __uc = '\0'; 450 __u -> __usi = __¤c0_2 ; 453 __u -> __usi = __¤c0_2 ; 454 __u = `__ex‹nsiÚ__ ((*) __u + 2); 455 __u -> __uc = '\0'; 458 __u -> __ui = __¤c0_4 ; 461 __u -> __ui = __¤c0_4 ; 462 __u = `__ex‹nsiÚ__ ((*) __u + 4); 463 __u -> __uc = '\0'; 466 __u -> __ui = __¤c0_4 ; 467 __u = `__ex‹nsiÚ__ ((*) __u + 4); 468 __u -> __usi = __¤c4_2 ; 471 __u -> __ui = __¤c0_4 ; 472 __u = `__ex‹nsiÚ__ ((*) __u + 4); 473 __u -> __usi = __¤c4_2 ; 474 __u = `__ex‹nsiÚ__ ((*) __u + 2); 475 __u -> __uc = '\0'; 478 __u -> __ui = __¤c0_4 ; 479 __u = `__ex‹nsiÚ__ ((*) __u + 4); 480 __u -> __ui = __¤c4_4 ; 483  __de¡ ; 484 } } 486 #iâdeà _FORCE_INLINES 487  #__¡rýy_¬gs ( ¤c ) \ 488 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR2 ) \ 489 { { (( __cÚ¡ *è( ¤c ))[0], '\0' } }), \ 490 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR3 ) \ 491 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 493 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR4 ) \ 494 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 495 (( __cÚ¡ *è( ¤c ))[2], '\0' } }), \ 496 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR5 ) \ 497 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 498 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3], \ 500 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR6 ) \ 501 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 502 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3], \ 503 (( __cÚ¡ *è( ¤c ))[4], '\0' } }), \ 504 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR7 ) \ 505 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 506 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3], \ 507 (( __cÚ¡ *è( ¤c ))[4], ((__const *) (src))[5], \ 509 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR8 ) \ 510 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 511 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3], \ 512 (( __cÚ¡ *è( ¤c ))[4], ((__const *) (src))[5], \ 513 (( __cÚ¡ *è( ¤c ))[6], '\0' } }) ) 515 __STRING_INLINE * __¡rýy_sm®l (*, __STRING2_COPY_ARR2 , 516 __STRING2_COPY_ARR3 , 517 __STRING2_COPY_ARR4 , 518 __STRING2_COPY_ARR5 , 519 __STRING2_COPY_ARR6 , 520 __STRING2_COPY_ARR7 , 521 __STRING2_COPY_ARR8 , size_t ); 522 __STRING_INLINE * 523 $__¡rýy_sm®l (* __de¡ , 524 __STRING2_COPY_ARR2 __¤c2 , __STRING2_COPY_ARR3 __¤c3 , 525 __STRING2_COPY_ARR4 __¤c4 , __STRING2_COPY_ARR5 __¤c5 , 526 __STRING2_COPY_ARR6 __¤c6 , __STRING2_COPY_ARR7 __¤c7 , 527 __STRING2_COPY_ARR8 __¤c8 , size_t __¤þ’ ) 530  __c ; 531 __STRING2_COPY_ARR2 __sÿ2 ; 532 __STRING2_COPY_ARR3 __sÿ3 ; 533 __STRING2_COPY_ARR4 __sÿ4 ; 534 __STRING2_COPY_ARR5 __sÿ5 ; 535 __STRING2_COPY_ARR6 __sÿ6 ; 536 __STRING2_COPY_ARR7 __sÿ7 ; 537 __STRING2_COPY_ARR8 __sÿ8 ; 538 } * __u = (*è __de¡ ; 539 (è __¤þ’ ) 542 __u -> __c = '\0'; 545 __ex‹nsiÚ__ __u -> __sÿ2 = __¤c2 ; 548 __ex‹nsiÚ__ __u -> __sÿ3 = __¤c3 ; 551 __ex‹nsiÚ__ __u -> __sÿ4 = __¤c4 ; 554 __ex‹nsiÚ__ __u -> __sÿ5 = __¤c5 ; 557 __ex‹nsiÚ__ __u -> __sÿ6 = __¤c6 ; 560 __ex‹nsiÚ__ __u -> __sÿ7 = __¤c7 ; 563 __ex‹nsiÚ__ __u -> __sÿ8 = __¤c8 ; 566  __de¡ ; 567 } } 573 #ifdeà __USE_GNU 574 #ià! defšed _HAVE_STRING_ARCH_¡pýy || defšed _FORCE_INLINES 575 #iâdeà _HAVE_STRING_ARCH_¡pýy 576 #ià __GNUC_PREREQ (3, 4) 577  #__¡pýy ( de¡ , ¤c è `__bužtš_¡pýy (de¡, src) ) 578 #–ià __GNUC_PREREQ (3, 0) 579  #__¡pýy ( de¡ , ¤c ) \ 580 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( ¤c ) \ 581 ? ( `__¡ršg2_1b±r_p ( ¤c è&& `¡¾’ (src) + 1 <= 8 \ 582 ? `__bužtš_¡rýy ( de¡ , ¤c è+ `¡¾’ (src) \ 583 : ((*è( __mempýy è( de¡ , ¤c , `¡¾’ (src) + 1) \ 585 : `__¡pýy ( de¡ , ¤c ))) ) 587  #__¡pýy ( de¡ , ¤c ) \ 588 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( ¤c ) \ 589 ? ( `__¡ršg2_1b±r_p ( ¤c è&& `¡¾’ (src) + 1 <= 8 \ 590 ? `__¡pýy_sm®l ( de¡ , `__¡pýy_¬gs ( ¤c ), \ 591 `¡¾’ ( ¤c ) + 1) \ 592 : ((*è( __mempýy è( de¡ , ¤c , `¡¾’ (src) + 1) \ 594 : `__¡pýy ( de¡ , ¤c ))) ) 598  #¡pýy ( de¡ , ¤c è `__¡pýy (de¡, src) ) 601 #ià! __GNUC_PREREQ (3, 0è|| defšed _FORCE_INLINES 602 #ià _STRING_ARCH_uÇligÃd 603 #iâdeà _FORCE_INLINES 604  #__¡pýy_¬gs ( ¤c ) \ 605 __ex‹nsiÚ__ `__STRING2_SMALL_GET16 ( ¤c , 0), \ 606 __ex‹nsiÚ__ `__STRING2_SMALL_GET16 ( ¤c , 4), \ 607 __ex‹nsiÚ__ `__STRING2_SMALL_GET32 ( ¤c , 0), \ 608 __ex‹nsiÚ__ `__STRING2_SMALL_GET32 ( ¤c , 4) ) 610 __STRING_INLINE * __¡pýy_sm®l (*, __ušt16_t , __uint16_t, 611 __ušt32_t , __ušt32_t, size_t ); 612 __STRING_INLINE * 613 $__¡pýy_sm®l (* __de¡ , 614 __ušt16_t __¤c0_2 , __ušt16_ˆ __¤c4_2 , 615 __ušt32_t __¤c0_4 , __ušt32_ˆ __¤c4_4 , 616 size_t __¤þ’ ) 619  __ui ; 620  __usi ; 621  __uc ; 622  __c ; 623 } * __u = (*è __de¡ ; 624 (è __¤þ’ ) 627 __u -> __uc = '\0'; 630 __u -> __usi = __¤c0_2 ; 631 __u = `__ex‹nsiÚ__ ((*) __u + 1); 634 __u -> __usi = __¤c0_2 ; 635 __u = `__ex‹nsiÚ__ ((*) __u + 2); 636 __u -> __uc = '\0'; 639 __u -> __ui = __¤c0_4 ; 640 __u = `__ex‹nsiÚ__ ((*) __u + 3); 643 __u -> __ui = __¤c0_4 ; 644 __u = `__ex‹nsiÚ__ ((*) __u + 4); 645 __u -> __uc = '\0'; 648 __u -> __ui = __¤c0_4 ; 649 __u = `__ex‹nsiÚ__ ((*) __u + 4); 650 __u -> __usi = __¤c4_2 ; 651 __u = `__ex‹nsiÚ__ ((*) __u + 1); 654 __u -> __ui = __¤c0_4 ; 655 __u = `__ex‹nsiÚ__ ((*) __u + 4); 656 __u -> __usi = __¤c4_2 ; 657 __u = `__ex‹nsiÚ__ ((*) __u + 2); 658 __u -> __uc = '\0'; 661 __u -> __ui = __¤c0_4 ; 662 __u = `__ex‹nsiÚ__ ((*) __u + 4); 663 __u -> __ui = __¤c4_4 ; 664 __u = `__ex‹nsiÚ__ ((*) __u + 3); 667  & __u -> __c ; 668 } } 670 #iâdeà _FORCE_INLINES 671  #__¡pýy_¬gs ( ¤c ) \ 672 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR2 ) \ 673 { { (( __cÚ¡ *è( ¤c ))[0], '\0' } }), \ 674 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR3 ) \ 675 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 677 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR4 ) \ 678 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 679 (( __cÚ¡ *è( ¤c ))[2], '\0' } }), \ 680 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR5 ) \ 681 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 682 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3], \ 684 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR6 ) \ 685 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 686 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3], \ 687 (( __cÚ¡ *è( ¤c ))[4], '\0' } }), \ 688 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR7 ) \ 689 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 690 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3], \ 691 (( __cÚ¡ *è( ¤c ))[4], ((__const *) (src))[5], \ 693 `__ex‹nsiÚ__ (( __STRING2_COPY_ARR8 ) \ 694 { { (( __cÚ¡ *è( ¤c ))[0], ((__const *) (src))[1], \ 695 (( __cÚ¡ *è( ¤c ))[2], ((__const *) (src))[3], \ 696 (( __cÚ¡ *è( ¤c ))[4], ((__const *) (src))[5], \ 697 (( __cÚ¡ *è( ¤c ))[6], '\0' } }) ) 699 __STRING_INLINE * __¡pýy_sm®l (*, __STRING2_COPY_ARR2 , 700 __STRING2_COPY_ARR3 , 701 __STRING2_COPY_ARR4 , 702 __STRING2_COPY_ARR5 , 703 __STRING2_COPY_ARR6 , 704 __STRING2_COPY_ARR7 , 705 __STRING2_COPY_ARR8 , size_t ); 706 __STRING_INLINE * 707 $__¡pýy_sm®l (* __de¡ , 708 __STRING2_COPY_ARR2 __¤c2 , __STRING2_COPY_ARR3 __¤c3 , 709 __STRING2_COPY_ARR4 __¤c4 , __STRING2_COPY_ARR5 __¤c5 , 710 __STRING2_COPY_ARR6 __¤c6 , __STRING2_COPY_ARR7 __¤c7 , 711 __STRING2_COPY_ARR8 __¤c8 , size_t __¤þ’ ) 714  __c ; 715 __STRING2_COPY_ARR2 __sÿ2 ; 716 __STRING2_COPY_ARR3 __sÿ3 ; 717 __STRING2_COPY_ARR4 __sÿ4 ; 718 __STRING2_COPY_ARR5 __sÿ5 ; 719 __STRING2_COPY_ARR6 __sÿ6 ; 720 __STRING2_COPY_ARR7 __sÿ7 ; 721 __STRING2_COPY_ARR8 __sÿ8 ; 722 } * __u = (*è __de¡ ; 723 (è __¤þ’ ) 726 __u -> __c = '\0'; 729 __ex‹nsiÚ__ __u -> __sÿ2 = __¤c2 ; 732 __ex‹nsiÚ__ __u -> __sÿ3 = __¤c3 ; 735 __ex‹nsiÚ__ __u -> __sÿ4 = __¤c4 ; 738 __ex‹nsiÚ__ __u -> __sÿ5 = __¤c5 ; 741 __ex‹nsiÚ__ __u -> __sÿ6 = __¤c6 ; 744 __ex‹nsiÚ__ __u -> __sÿ7 = __¤c7 ; 747 __ex‹nsiÚ__ __u -> __sÿ8 = __¤c8 ; 750  __de¡ + __¤þ’ - 1; 751 } } 759 #iâdeà _HAVE_STRING_ARCH_¡ºýy 760 #ià __GNUC_PREREQ (3, 2) 761  #¡ºýy ( de¡ , ¤c , n è `__bužtš_¡ºýy (de¡, src,‚) ) 763  #¡ºýy ( de¡ , ¤c , n ) \ 764 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( ¤c è&& __bužtš_cÚ¡ªt_°( n ) \ 765 ? ( `¡¾’ ( ¤c è+ 1 >ð(( size_t è( n )) \ 766 ? (*è `memýy ( de¡ , ¤c , n ) \ 767 : `¡ºýy ( de¡ , ¤c , n )) \ 768 : `¡ºýy ( de¡ , ¤c , n ))) ) 774 #iâdeà _HAVE_STRING_ARCH_¡ºÿt 775 #ifdeà _USE_STRING_ARCH_¡rchr 776  #¡ºÿt ( de¡ , ¤c , n ) \ 777 ( `__ex‹nsiÚ__ ({ * __de¡ = ( de¡ ); \ 778 `__bužtš_cÚ¡ªt_p ( ¤c è&& __bužtš_cÚ¡ªt_°( n ) \ 779 ? ( `¡¾’ ( ¤c è< (( size_t è( n )) \ 780 ? `¡rÿt ( __de¡ , ¤c ) \ 781 : (*((*è `__mempýy ( `¡rchr ( __de¡ , '\0'), \ 782 ¤c , n )èð'\0', __de¡ )) \ 783 : `¡ºÿt ( de¡ , ¤c , n ); })) ) 784 #–ià __GNUC_PREREQ (3, 2) 785  #¡ºÿt ( de¡ , ¤c , n è `__bužtš_¡ºÿt (de¡, src,‚) ) 787  #¡ºÿt ( de¡ , ¤c , n ) \ 788 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( ¤c è&& __bužtš_cÚ¡ªt_°( n ) \ 789 ? ( `¡¾’ ( ¤c è< (( size_t è( n )) \ 790 ? `¡rÿt ( de¡ , ¤c ) \ 791 : `¡ºÿt ( de¡ , ¤c , n )) \ 792 : `¡ºÿt ( de¡ , ¤c , n ))) ) 798 #iâdeà _HAVE_STRING_ARCH_¡rcmp 799 #ià __GNUC_PREREQ (3, 2) 800  #¡rcmp ( s1 , s2 ) \ 801 __ex‹nsiÚ__ \ 802 ({ size_t __s1_Ën , __s2_Ën ; \ 803 ( `__bužtš_cÚ¡ªt_p ( s1 è&& __bužtš_cÚ¡ªt_°( s2 ) \ 804 && ( __s1_Ën = `¡¾’ ( s1 ), __s2_Ën = sŒËÀ( s2 ), \ 805 (! `__¡ršg2_1b±r_p ( s1 è|| __s1_Ën >= 4) \ 806 && (! `__¡ršg2_1b±r_p ( s2 è|| __s2_Ën >= 4)) \ 807 ? `__bužtš_¡rcmp ( s1 , s2 ) \ 808 : ( `__bužtš_cÚ¡ªt_p ( s1 è&& `__¡ršg2_1b±r_p (s1) \ 809 && ( __s1_Ën = `¡¾’ ( s1 ), __s1_len < 4) \ 810 ? ( `__bužtš_cÚ¡ªt_p ( s2 è&& `__¡ršg2_1b±r_p (s2) \ 811 ? `__bužtš_¡rcmp ( s1 , s2 ) \ 812 : `__¡rcmp_cg ( s1 , s2 , __s1_Ën )) \ 813 : ( `__bužtš_cÚ¡ªt_p ( s2 è&& `__¡ršg2_1b±r_p (s2) \ 814 && ( __s2_Ën = `¡¾’ ( s2 ), __s2_len < 4) \ 815 ? ( `__bužtš_cÚ¡ªt_p ( s1 è&& `__¡ršg2_1b±r_p (s1) \ 816 ? `__bužtš_¡rcmp ( s1 , s2 ) \ 817 : `__¡rcmp_gc ( s1 , s2 , __s2_Ën )) \ 818 : `__bužtš_¡rcmp ( s1 , s2 )))); }) ) 820  #¡rcmp ( s1 , s2 ) \ 821 __ex‹nsiÚ__ \ 822 ({ size_t __s1_Ën , __s2_Ën ; \ 823 ( `__bužtš_cÚ¡ªt_p ( s1 è&& __bužtš_cÚ¡ªt_°( s2 ) \ 824 && ( __s1_Ën = `¡¾’ ( s1 ), __s2_Ën = sŒËÀ( s2 ), \ 825 (! `__¡ršg2_1b±r_p ( s1 è|| __s1_Ën >= 4) \ 826 && (! `__¡ršg2_1b±r_p ( s2 è|| __s2_Ën >= 4)) \ 827 ? `memcmp (( __cÚ¡ *è( s1 ), (__cÚ¡ *è( s2 ), \ 828 ( __s1_Ën < __s2_Ën ? __s1_len : __s2_len) + 1) \ 829 : ( `__bužtš_cÚ¡ªt_p ( s1 è&& `__¡ršg2_1b±r_p (s1) \ 830 && ( __s1_Ën = `¡¾’ ( s1 ), __s1_len < 4) \ 831 ? ( `__bužtš_cÚ¡ªt_p ( s2 è&& `__¡ršg2_1b±r_p (s2) \ 832 ? `__¡rcmp_cc ( s1 , s2 , __s1_Ën ) \ 833 : `__¡rcmp_cg ( s1 , s2 , __s1_Ën )) \ 834 : ( `__bužtš_cÚ¡ªt_p ( s2 è&& `__¡ršg2_1b±r_p (s2) \ 835 && ( __s2_Ën = `¡¾’ ( s2 ), __s2_len < 4) \ 836 ? ( `__bužtš_cÚ¡ªt_p ( s1 è&& `__¡ršg2_1b±r_p (s1) \ 837 ? `__¡rcmp_cc ( s1 , s2 , __s2_Ën ) \ 838 : `__¡rcmp_gc ( s1 , s2 , __s2_Ën )) \ 839 : `¡rcmp ( s1 , s2 )))); }) ) 842  #__¡rcmp_cc ( s1 , s2 , l ) \ 843 ( `__ex‹nsiÚ__ ({  __»suÉ = \ 844 ((( __cÚ¡ *è(__cÚ¡ *è( s1 ))[0] \ 845 - (( __cÚ¡ *è(__cÚ¡ *)( s2 ))[0]);\ 846 ià( l > 0 && __»suÉ == 0) \ 848 __»suÉ = ((( __cÚ¡ *) \ 849 ( __cÚ¡ *è( s1 ))[1] \ 850 - (( __cÚ¡ *) \ 851 ( __cÚ¡ *è( s2 ))[1]); \ 852 ià( l > 1 && __»suÉ == 0) \ 854 __»suÉ = \ 855 ((( __cÚ¡ *) \ 856 ( __cÚ¡ *è( s1 ))[2] \ 857 - (( __cÚ¡ *) \ 858 ( __cÚ¡ *è( s2 ))[2]); \ 859 ià( l > 2 && __»suÉ == 0) \ 860 __»suÉ = \ 861 ((( __cÚ¡ *) \ 862 ( __cÚ¡ *è( s1 ))[3] \ 863 - (( __cÚ¡ *) \ 864 ( __cÚ¡ *è( s2 ))[3]); \ 867 __»suÉ ; })) ) 869  #__¡rcmp_cg ( s1 , s2 , l1 ) \ 870 ( `__ex‹nsiÚ__ ({ __cÚ¡ * __s2 = \ 871 ( __cÚ¡ *è(__cÚ¡ *è( s2 ); \ 872  __»suÉ = \ 873 ((( __cÚ¡ *è(__cÚ¡ *è( s1 ))[0] \ 874 - __s2 [0]); \ 875 ià( l1 > 0 && __»suÉ == 0) \ 877 __»suÉ = ((( __cÚ¡ *) \ 878 ( __cÚ¡ *è( s1 ))[1] - __s2 [1]); \ 879 ià( l1 > 1 && __»suÉ == 0) \ 881 __»suÉ = ((( __cÚ¡ *) \ 882 ( __cÚ¡ *è( s1 ))[2] - __s2 [2]);\ 883 ià( l1 > 2 && __»suÉ == 0) \ 884 __»suÉ = ((( __cÚ¡ *) \ 885 ( __cÚ¡ *è( s1 ))[3] \ 886 - __s2 [3]); \ 889 __»suÉ ; })) ) 891  #__¡rcmp_gc ( s1 , s2 , l2 ) \ 892 ( `__ex‹nsiÚ__ ({ __cÚ¡ * __s1 = \ 893 ( __cÚ¡ *è(__cÚ¡ *è( s1 ); \ 894  __»suÉ = \ 895 __s1 [0] - (( __cÚ¡ *) \ 896 ( __cÚ¡ *è( s2 ))[0]; \ 897 ià( l2 > 0 && __»suÉ == 0) \ 899 __»suÉ = ( __s1 [1] \ 900 - (( __cÚ¡ *) \ 901 ( __cÚ¡ *è( s2 ))[1]); \ 902 ià( l2 > 1 && __»suÉ == 0) \ 904 __»suÉ = \ 905 ( __s1 [2] - (( __cÚ¡ *) \ 906 ( __cÚ¡ *è( s2 ))[2]); \ 907 ià( l2 > 2 && __»suÉ == 0) \ 908 __»suÉ = \ 909 ( __s1 [3] \ 910 - (( __cÚ¡ *) \ 911 ( __cÚ¡ *è( s2 ))[3]); \ 914 __»suÉ ; })) ) 919 #iâdeà _HAVE_STRING_ARCH_¡ºcmp 920  #¡ºcmp ( s1 , s2 , n ) \ 921 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( n ) \ 922 && (( `__bužtš_cÚ¡ªt_p ( s1 ) \ 923 && `¡¾’ ( s1 è< (( size_t è( n ))) \ 924 || ( `__bužtš_cÚ¡ªt_p ( s2 ) \ 925 && `¡¾’ ( s2 è< (( size_t è( n )))) \ 926 ? `¡rcmp ( s1 , s2 è: `¡ºcmp (s1, s2, n ))) ) 932 #ià! defšed _HAVE_STRING_ARCH_¡rc¥n || defšed _FORCE_INLINES 933 #iâdeà _HAVE_STRING_ARCH_¡rc¥n 934 #ià __GNUC_PREREQ (3, 2) 935  #¡rc¥n ( s , »jeù ) \ 936 __ex‹nsiÚ__ \ 937 ({  __r0 , __r1 , __r2 ; \ 938 ( `__bužtš_cÚ¡ªt_p ( »jeù è&& `__¡ršg2_1b±r_p (reject) \ 939 ? (( `__bužtš_cÚ¡ªt_p ( s è&& `__¡ršg2_1b±r_p (s)) \ 940 ? `__bužtš_¡rc¥n ( s , »jeù ) \ 941 : (( __r0 = (( __cÚ¡ *è( »jeù ))[0], __r0 == '\0') \ 942 ? `¡¾’ ( s ) \ 943 : (( __r1 = (( __cÚ¡ *è( »jeù ))[1], __r1 == '\0') \ 944 ? `__¡rc¥n_c1 ( s , __r0 ) \ 945 : (( __r2 = (( __cÚ¡ *è( »jeù ))[2], __r2 == '\0') \ 946 ? `__¡rc¥n_c2 ( s , __r0 , __r1 ) \ 947 : ((( __cÚ¡ *è( »jeù ))[3] == '\0' \ 948 ? `__¡rc¥n_c3 ( s , __r0 , __r1 , __r2 ) \ 949 : `__bužtš_¡rc¥n ( s , »jeù )))))) \ 950 : `__bužtš_¡rc¥n ( s , »jeù )); }) ) 952  #¡rc¥n ( s , »jeù ) \ 953 __ex‹nsiÚ__ \ 954 ({  __r0 , __r1 , __r2 ; \ 955 ( `__bužtš_cÚ¡ªt_p ( »jeù è&& `__¡ršg2_1b±r_p (reject) \ 956 ? (( __r0 = (( __cÚ¡ *è( »jeù ))[0], __r0 == '\0') \ 957 ? `¡¾’ ( s ) \ 958 : (( __r1 = (( __cÚ¡ *è( »jeù ))[1], __r1 == '\0') \ 959 ? `__¡rc¥n_c1 ( s , __r0 ) \ 960 : (( __r2 = (( __cÚ¡ *è( »jeù ))[2], __r2 == '\0') \ 961 ? `__¡rc¥n_c2 ( s , __r0 , __r1 ) \ 962 : ((( __cÚ¡ *è( »jeù ))[3] == '\0' \ 963 ? `__¡rc¥n_c3 ( s , __r0 , __r1 , __r2 ) \ 964 : `¡rc¥n ( s , »jeù ))))) \ 965 : `¡rc¥n ( s , »jeù )); }) ) 969 __STRING_INLINE size_t __¡rc¥n_c1 ( __cÚ¡ * __s ,  __»jeù ); 970 __STRING_INLINE size_t 971 $__¡rc¥n_c1 ( __cÚ¡ * __s ,  __»jeù ) 973  size_t __»suÉ = 0; 974  __s [ __»suÉ ] !ð'\0' && __s[__»suÉ] !ð __»jeù ) 975 ++ __»suÉ ; 976  __»suÉ ; 977 } } 979 __STRING_INLINE size_t __¡rc¥n_c2 ( __cÚ¡ * __s ,  __»jeù1 , 980  __»jeù2 ); 981 __STRING_INLINE size_t 982 $__¡rc¥n_c2 ( __cÚ¡ * __s ,  __»jeù1 ,  __»jeù2 ) 984  size_t __»suÉ = 0; 985  __s [ __»suÉ ] !ð'\0' && __s[__»suÉ] !ð __»jeù1 986 && __s [ __»suÉ ] !ð __»jeù2 ) 987 ++ __»suÉ ; 988  __»suÉ ; 989 } } 991 __STRING_INLINE size_t __¡rc¥n_c3 ( __cÚ¡ * __s ,  __»jeù1 , 992  __»jeù2 ,  __»jeù3 ); 993 __STRING_INLINE size_t 994 $__¡rc¥n_c3 ( __cÚ¡ * __s ,  __»jeù1 ,  __»jeù2 , 995  __»jeù3 ) 997  size_t __»suÉ = 0; 998  __s [ __»suÉ ] !ð'\0' && __s[__»suÉ] !ð __»jeù1 999 && __s [ __»suÉ ] !ð __»jeù2 && __s[__»suÉ] !ð __»jeù3 ) 1000 ++ __»suÉ ; 1001  __»suÉ ; 1002 } } 1008 #ià! defšed _HAVE_STRING_ARCH_¡r¥n || defšed _FORCE_INLINES 1009 #iâdeà _HAVE_STRING_ARCH_¡r¥n 1010 #ià __GNUC_PREREQ (3, 2) 1011  #¡r¥n ( s , acû± ) \ 1012 __ex‹nsiÚ__ \ 1013 ({  __a0 , __a1 , __a2 ; \ 1014 ( `__bužtš_cÚ¡ªt_p ( acû± è&& `__¡ršg2_1b±r_p (accept) \ 1015 ? (( `__bužtš_cÚ¡ªt_p ( s è&& `__¡ršg2_1b±r_p (s)) \ 1016 ? `__bužtš_¡r¥n ( s , acû± ) \ 1017 : (( __a0 = (( __cÚ¡ *è( acû± ))[0], __a0 == '\0') \ 1018 ? ((è( s ), 0) \ 1019 : (( __a1 = (( __cÚ¡ *è( acû± ))[1], __a1 == '\0') \ 1020 ? `__¡r¥n_c1 ( s , __a0 ) \ 1021 : (( __a2 = (( __cÚ¡ *è( acû± ))[2], __a2 == '\0') \ 1022 ? `__¡r¥n_c2 ( s , __a0 , __a1 ) \ 1023 : ((( __cÚ¡ *è( acû± ))[3] == '\0' \ 1024 ? `__¡r¥n_c3 ( s , __a0 , __a1 , __a2 ) \ 1025 : `__bužtš_¡r¥n ( s , acû± )))))) \ 1026 : `__bužtš_¡r¥n ( s , acû± )); }) ) 1028  #¡r¥n ( s , acû± ) \ 1029 __ex‹nsiÚ__ \ 1030 ({  __a0 , __a1 , __a2 ; \ 1031 ( `__bužtš_cÚ¡ªt_p ( acû± è&& `__¡ršg2_1b±r_p (accept) \ 1032 ? (( __a0 = (( __cÚ¡ *è( acû± ))[0], __a0 == '\0') \ 1033 ? ((è( s ), 0) \ 1034 : (( __a1 = (( __cÚ¡ *è( acû± ))[1], __a1 == '\0') \ 1035 ? `__¡r¥n_c1 ( s , __a0 ) \ 1036 : (( __a2 = (( __cÚ¡ *è( acû± ))[2], __a2 == '\0') \ 1037 ? `__¡r¥n_c2 ( s , __a0 , __a1 ) \ 1038 : ((( __cÚ¡ *è( acû± ))[3] == '\0' \ 1039 ? `__¡r¥n_c3 ( s , __a0 , __a1 , __a2 ) \ 1040 : `¡r¥n ( s , acû± ))))) \ 1041 : `¡r¥n ( s , acû± )); }) ) 1045 __STRING_INLINE size_t __¡r¥n_c1 ( __cÚ¡ * __s ,  __acû± ); 1046 __STRING_INLINE size_t 1047 $__¡r¥n_c1 ( __cÚ¡ * __s ,  __acû± ) 1049  size_t __»suÉ = 0; 1051  __s [ __»suÉ ] =ð __acû± ) 1052 ++ __»suÉ ; 1053  __»suÉ ; 1054 } } 1056 __STRING_INLINE size_t __¡r¥n_c2 ( __cÚ¡ * __s ,  __acû±1 , 1057  __acû±2 ); 1058 __STRING_INLINE size_t 1059 $__¡r¥n_c2 ( __cÚ¡ * __s ,  __acû±1 ,  __acû±2 ) 1061  size_t __»suÉ = 0; 1063  __s [ __»suÉ ] =ð __acû±1 || __s[__»suÉ] =ð __acû±2 ) 1064 ++ __»suÉ ; 1065  __»suÉ ; 1066 } } 1068 __STRING_INLINE size_t __¡r¥n_c3 ( __cÚ¡ * __s ,  __acû±1 , 1069  __acû±2 ,  __acû±3 ); 1070 __STRING_INLINE size_t 1071 $__¡r¥n_c3 ( __cÚ¡ * __s ,  __acû±1 ,  __acû±2 ,  __acû±3 ) 1073  size_t __»suÉ = 0; 1075  __s [ __»suÉ ] =ð __acû±1 || __s[__»suÉ] =ð __acû±2 1076 || __s [ __»suÉ ] =ð __acû±3 ) 1077 ++ __»suÉ ; 1078  __»suÉ ; 1079 } } 1084 #ià! defšed _HAVE_STRING_ARCH_¡½brk || defšed _FORCE_INLINES 1085 #iâdeà _HAVE_STRING_ARCH_¡½brk 1086 #ià __GNUC_PREREQ (3, 2) 1087  #¡½brk ( s , acû± ) \ 1088 __ex‹nsiÚ__ \ 1089 ({  __a0 , __a1 , __a2 ; \ 1090 ( `__bužtš_cÚ¡ªt_p ( acû± è&& `__¡ršg2_1b±r_p (accept) \ 1091 ? (( `__bužtš_cÚ¡ªt_p ( s è&& `__¡ršg2_1b±r_p (s)) \ 1092 ? `__bužtš_¡½brk ( s , acû± ) \ 1093 : (( __a0 = (( __cÚ¡ *è( acû± ))[0], __a0 == '\0') \ 1094 ? ((è( s ), (*è NULL ) \ 1095 : (( __a1 = (( __cÚ¡ *è( acû± ))[1], __a1 == '\0') \ 1096 ? `__bužtš_¡rchr ( s , __a0 ) \ 1097 : (( __a2 = (( __cÚ¡ *è( acû± ))[2], __a2 == '\0') \ 1098 ? `__¡½brk_c2 ( s , __a0 , __a1 ) \ 1099 : ((( __cÚ¡ *è( acû± ))[3] == '\0' \ 1100 ? `__¡½brk_c3 ( s , __a0 , __a1 , __a2 ) \ 1101 : `__bužtš_¡½brk ( s , acû± )))))) \ 1102 : `__bužtš_¡½brk ( s , acû± )); }) ) 1104  #¡½brk ( s , acû± ) \ 1105 __ex‹nsiÚ__ \ 1106 ({  __a0 , __a1 , __a2 ; \ 1107 ( `__bužtš_cÚ¡ªt_p ( acû± è&& `__¡ršg2_1b±r_p (accept) \ 1108 ? (( __a0 = (( __cÚ¡ *è( acû± ))[0], __a0 == '\0') \ 1109 ? ((è( s ), (*è NULL ) \ 1110 : (( __a1 = (( __cÚ¡ *è( acû± ))[1], __a1 == '\0') \ 1111 ? `¡rchr ( s , __a0 ) \ 1112 : (( __a2 = (( __cÚ¡ *è( acû± ))[2], __a2 == '\0') \ 1113 ? `__¡½brk_c2 ( s , __a0 , __a1 ) \ 1114 : ((( __cÚ¡ *è( acû± ))[3] == '\0' \ 1115 ? `__¡½brk_c3 ( s , __a0 , __a1 , __a2 ) \ 1116 : `¡½brk ( s , acû± ))))) \ 1117 : `¡½brk ( s , acû± )); }) ) 1121 __STRING_INLINE * __¡½brk_c2 ( __cÚ¡ * __s ,  __acû±1 , 1122  __acû±2 ); 1123 __STRING_INLINE * 1124 $__¡½brk_c2 ( __cÚ¡ * __s ,  __acû±1 ,  __acû±2 ) 1127 * __s !ð'\0' && *__ !ð __acû±1 && *__ !ð __acû±2 ) 1128 ++ __s ; 1129  * __s =ð'\0' ? NULL : (*è( size_t ) __s; 1130 } } 1132 __STRING_INLINE * __¡½brk_c3 ( __cÚ¡ * __s ,  __acû±1 , 1133  __acû±2 ,  __acû±3 ); 1134 __STRING_INLINE * 1135 $__¡½brk_c3 ( __cÚ¡ * __s ,  __acû±1 ,  __acû±2 , 1136  __acû±3 ) 1139 * __s !ð'\0' && *__ !ð __acû±1 && *__ !ð __acû±2 1140 && * __s !ð __acû±3 ) 1141 ++ __s ; 1142  * __s =ð'\0' ? NULL : (*è( size_t ) __s; 1143 } } 1149 #ià! defšed _HAVE_STRING_ARCH_¡r¡r && ! __GNUC_PREREQ (2, 97) 1150  #¡r¡r ( hay¡ack , ÃedË ) \ 1151 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( ÃedË è&& `__¡ršg2_1b±r_p (needle) \ 1152 ? ((( __cÚ¡ *è( ÃedË ))[0] == '\0' \ 1153 ? (*è( size_t è( hay¡ack ) \ 1154 : ((( __cÚ¡ *è( ÃedË ))[1] == '\0' \ 1155 ? `¡rchr ( hay¡ack , \ 1156 (( __cÚ¡ *è( ÃedË ))[0]) \ 1157 : `¡r¡r ( hay¡ack , ÃedË ))) \ 1158 : `¡r¡r ( hay¡ack , ÃedË ))) ) 1162 #ià! defšed _HAVE_STRING_ARCH_¡¹ok_r || defšed _FORCE_INLINES 1163 #iâdeà _HAVE_STRING_ARCH_¡¹ok_r 1164  #__¡¹ok_r ( s , £p , Ãx ) \ 1165 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( £p è&& `__¡ršg2_1b±r_p (sep) \ 1166 ? ((( __cÚ¡ *è( £p ))[0] != '\0' \ 1167 && (( __cÚ¡ *è( £p ))[1] == '\0' \ 1168 ? `__¡¹ok_r_1c ( s , (( __cÚ¡ *è( £p ))[0], Ãx ) \ 1169 : `__¡¹ok_r ( s , £p , Ãx )) \ 1170 : `__¡¹ok_r ( s , £p , Ãx ))) ) 1173 __STRING_INLINE * __¡¹ok_r_1c (* __s ,  __£p , ** __Ãx ); 1174 __STRING_INLINE * 1175 $__¡¹ok_r_1c (* __s ,  __£p , ** __Ãx ) 1177 * __»suÉ ; 1178 ià( __s =ð NULL ) 1179 __s = * __Ãx ; 1180 * __s =ð __£p ) 1181 ++ __s ; 1182 __»suÉ = NULL ; 1183 ià(* __s != '\0') 1185 __»suÉ = __s ++; 1186 * __s != '\0') 1187 ià(* __s ++ =ð __£p ) 1189 __s [-1] = '\0'; 1192 * __Ãx = __s ; 1194  __»suÉ ; 1195 } } 1196 #ià defšed __USE_POSIX || defšed __USE_MISC 1197  #¡¹ok_r ( s , £p , Ãx è `__¡¹ok_r (s, s•,‚ex) ) 1202 #ià! defšed _HAVE_STRING_ARCH_¡r£p || defšed _FORCE_INLINES 1203 #iâdeà _HAVE_STRING_ARCH_¡r£p 1205 * __¡r£p_g (** __¡ršgp , __cÚ¡ * __d–im ); 1206  #__¡r£p ( s , »jeù ) \ 1207 __ex‹nsiÚ__ \ 1208 ({  __r0 , __r1 , __r2 ; \ 1209 ( `__bužtš_cÚ¡ªt_p ( »jeù è&& `__¡ršg2_1b±r_p (reject) \ 1210 && ( __r0 = (( __cÚ¡ *è( »jeù ))[0], \ 1211 (( __cÚ¡ *è( »jeù ))[0] != '\0') \ 1212 ? (( __r1 = (( __cÚ¡ *è( »jeù ))[1], \ 1213 (( __cÚ¡ *è( »jeù ))[1] == '\0') \ 1214 ? `__¡r£p_1c ( s , __r0 ) \ 1215 : (( __r2 = (( __cÚ¡ *è( »jeù ))[2], __r2 == '\0') \ 1216 ? `__¡r£p_2c ( s , __r0 , __r1 ) \ 1217 : ((( __cÚ¡ *è( »jeù ))[3] == '\0' \ 1218 ? `__¡r£p_3c ( s , __r0 , __r1 , __r2 ) \ 1219 : `__¡r£p_g ( s , »jeù )))) \ 1220 : `__¡r£p_g ( s , »jeù )); }) ) 1223 __STRING_INLINE * __¡r£p_1c (** __s ,  __»jeù ); 1224 __STRING_INLINE * 1225 $__¡r£p_1c (** __s ,  __»jeù ) 1227 * __»tv® = * __s ; 1228 ià( __»tv® !ð NULL && (* __s = `¡rchr (__»tv®, __»jeù )) != NULL) 1229 *(* __s )++ = '\0'; 1230  __»tv® ; 1231 } } 1233 __STRING_INLINE * __¡r£p_2c (** __s ,  __»jeù1 ,  __»jeù2 ); 1234 __STRING_INLINE * 1235 $__¡r£p_2c (** __s ,  __»jeù1 ,  __»jeù2 ) 1237 * __»tv® = * __s ; 1238 ià( __»tv® !ð NULL ) 1240 * __ý = __»tv® ; 1243 ià(* __ý == '\0') 1245 __ý = NULL ; 1248 ià(* __ý =ð __»jeù1 || *__ý =ð __»jeù2 ) 1250 * __ý ++ = '\0'; 1253 ++ __ý ; 1255 * __s = __ý ; 1257  __»tv® ; 1258 } } 1260 __STRING_INLINE * __¡r£p_3c (** __s ,  __»jeù1 ,  __»jeù2 , 1261  __»jeù3 ); 1262 __STRING_INLINE * 1263 $__¡r£p_3c (** __s ,  __»jeù1 ,  __»jeù2 ,  __»jeù3 ) 1265 * __»tv® = * __s ; 1266 ià( __»tv® !ð NULL ) 1268 * __ý = __»tv® ; 1271 ià(* __ý == '\0') 1273 __ý = NULL ; 1276 ià(* __ý =ð __»jeù1 || *__ý =ð __»jeù2 || *__ý =ð __»jeù3 ) 1278 * __ý ++ = '\0'; 1281 ++ __ý ; 1283 * __s = __ý ; 1285  __»tv® ; 1286 } } 1287 #ifdeà __USE_BSD 1288  #¡r£p ( s , »jeù è `__¡r£p (s,„ejeù) ) 1295 #ifdeà __USE_MISC 1297 #ià! defšed _HAVE_STRING_ARCH_¡rdup || !defšed _HAVE_STRING_ARCH_¡ºdup 1298  #__Ãed_m®loc_ªd_ÿÎoc ) 1299  ~<¡dlib.h > 1302 #iâdeà _HAVE_STRING_ARCH_¡rdup 1304 * $__¡rdup ( __cÚ¡ * __¡ršg è __THROW __©Œibu‹_m®loc__ ; 1305  #__¡rdup ( s ) \ 1306 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( s è&& `__¡ršg2_1b±r_p (s) \ 1307 ? ((( __cÚ¡ *è( s ))[0] == '\0' \ 1308 ? (*è `ÿÎoc (( size_t ) 1, (size_t) 1) \ 1309 : ({ size_t __Ën = `¡¾’ ( s ) + 1; \ 1310 * __»tv® = (*è `m®loc ( __Ën ); \ 1311 ià( __»tv® !ð NULL ) \ 1312 __»tv® = (*è `memýy (__»tv®, s , __Ën ); \ 1313 __»tv® ; } })) \ 1314 : `__¡rdup ( s ))) ) 1316 #ià defšed __USE_SVID || defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 1317  #¡rdup ( s è `__¡rdup (s) ) 1321 #iâdeà _HAVE_STRING_ARCH_¡ºdup 1323 * $__¡ºdup ( __cÚ¡ * __¡ršg , size_t __n ) 1324 __THROW __©Œibu‹_m®loc__ ; 1325  #__¡ºdup ( s , n ) \ 1326 ( `__ex‹nsiÚ__ ( `__bužtš_cÚ¡ªt_p ( s è&& `__¡ršg2_1b±r_p (s) \ 1327 ? ((( __cÚ¡ *è( s ))[0] == '\0' \ 1328 ? (*è `ÿÎoc (( size_t ) 1, (size_t) 1) \ 1329 : ({ size_t __Ën = `¡¾’ ( s ) + 1; \ 1330 size_t __n = ( n ); \ 1331 * __»tv® ; \ 1332 ià( __n < __Ën ) \ 1333 __Ën = __n + 1; \ 1334 __»tv® = (*è `m®loc ( __Ën ); \ 1335 ià( __»tv® !ð NULL ) \ 1337 __»tv® [ __Ën - 1] = '\0'; \ 1338 __»tv® = (*è `memýy (__»tv®, s , \ 1339 __Ën - 1); \ 1341 __»tv® ; } })) \ 1342 : `__¡ºdup ( s , n ))) ) 1344 #ifdeà __USE_GNU 1345  #¡ºdup ( s , n è `__¡ºdup (s,‚) ) 1351 #iâdeà _FORCE_INLINES 1352 #undeà __STRING_INLINE @/usr/include/bits/string3.h 19 #iâdeà _STRING_H 23 __w¬ndeþ ( __w¬n_mem£t_z”o_Ën , 26 #iâdeà __ýlu¥lus 30 #undeà memýy 31 #undeà memmove 32 #undeà mem£t 33 #undeà ¡rÿt 34 #undeà ¡rýy 35 #undeà ¡ºÿt 36 #undeà ¡ºýy 37 #ifdeà __USE_GNU 38 #undeà mempýy 39 #undeà ¡pýy 41 #ifdeà __USE_BSD 42 #undeà bcÝy 43 #undeà bz”o 48 __ex‹º_®ways_šlše * 49 __NTH ( $memýy (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c , 50 size_t __Ën )) 52  `__bužtš___memýy_chk ( __de¡ , __¤c , __Ën , `__bos0 (__dest)); 53 } } 55 __ex‹º_®ways_šlše * 56 __NTH ( $memmove (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c , 57 size_t __Ën )) 59  `__bužtš___memmove_chk ( __de¡ , __¤c , __Ën , `__bos0 (__dest)); 60 } } 62 #ifdeà __USE_GNU 63 __ex‹º_®ways_šlše * 64 __NTH ( $mempýy (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c , 65 size_t __Ën )) 67  `__bužtš___mempýy_chk ( __de¡ , __¤c , __Ën , `__bos0 (__dest)); 68 } } 77 __ex‹º_®ways_šlše * 78 __NTH ( $mem£t (* __de¡ ,  __ch , size_t __Ën )) 80 ià( `__bužtš_cÚ¡ªt_p ( __Ën ) && __len == 0) 82 `__w¬n_mem£t_z”o_Ën (); 83  __de¡ ; 85  `__bužtš___mem£t_chk ( __de¡ , __ch , __Ën , `__bos0 (__dest)); 86 } } 88 #ifdeà __USE_BSD 89 __ex‹º_®ways_šlše  90 __NTH ( $bcÝy ( __cÚ¡ * __»¡riù __¤c , *__»¡riù __de¡ , 91 size_t __Ën )) 93 (è `__bužtš___memmove_chk ( __de¡ , __¤c , __Ën , `__bos0 (__dest)); 94 } } 96 __ex‹º_®ways_šlše  97 __NTH ( $bz”o (* __de¡ , size_t __Ën )) 99 (è `__bužtš___mem£t_chk ( __de¡ , '\0', __Ën , `__bos0 (__dest)); 100 } } 103 __ex‹º_®ways_šlše * 104 __NTH ( $¡rýy (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c )) 106  `__bužtš___¡rýy_chk ( __de¡ , __¤c , `__bos (__dest)); 107 } } 109 #ifdeà __USE_GNU 110 __ex‹º_®ways_šlše * 111 __NTH ( $¡pýy (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c )) 113  `__bužtš___¡pýy_chk ( __de¡ , __¤c , `__bos (__dest)); 114 } } 118 __ex‹º_®ways_šlše * 119 __NTH ( $¡ºýy (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c , 120 size_t __Ën )) 122  `__bužtš___¡ºýy_chk ( __de¡ , __¤c , __Ën , `__bos (__dest)); 123 } } 126 * $__¡²ýy_chk (* __de¡ , __cÚ¡ * __¤c , size_t __n , 127 size_t __de¡Ën è __THROW ; 128 * `__REDIRECT_NTH ( __¡²ýy_®Ÿs , (* __de¡ , 129 __cÚ¡ * __¤c , 130 size_t __n ), ¡²ýy ); 132 __ex‹º_®ways_šlše * 133 `__NTH ( $¡²ýy (* __de¡ , __cÚ¡ * __¤c , size_t __n )) 135 ià( `__bos ( __de¡ è!ð( size_t ) -1 136 && (! `__bužtš_cÚ¡ªt_p ( __n è|| __À<ð `__bos ( __de¡ ))) 137  `__¡²ýy_chk ( __de¡ , __¤c , __n , `__bos (__dest)); 138  `__¡²ýy_®Ÿs ( __de¡ , __¤c , __n ); 139 } } 142 __ex‹º_®ways_šlše * 143 __NTH ( $¡rÿt (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c )) 145  `__bužtš___¡rÿt_chk ( __de¡ , __¤c , `__bos (__dest)); 146 } } 149 __ex‹º_®ways_šlše * 150 __NTH ( $¡ºÿt (* __»¡riù __de¡ , __cÚ¡ *__»¡riù __¤c , 151 size_t __Ën )) 153  `__bužtš___¡ºÿt_chk ( __de¡ , __¤c , __Ën , `__bos (__dest)); 154 } } @/usr/include/bits/sys_errlist.h 20 #iâdeà _STDIO_H 26 #ifdeà __USE_BSD 27  sys_ü ; 28 __cÚ¡ *__cÚ¡ sys_”¾i¡ []; 30 #ifdeà __USE_GNU 31  _sys_ü ; 32 __cÚ¡ *__cÚ¡ _sys_”¾i¡ []; @/usr/include/bits/time.h 24 #iâdeà __Ãed_timev® 25 #iâdeà _BITS_TIME_H 26  #_BITS_TIME_H 1 ) 34  #CLOCKS_PER_SEC 1000000l ) 36 #ià! defšed __STRICT_ANSI__ && !defšed __USE_XOPEN2K 39  ~ 40  __syscÚf (); 41  #CLK_TCK (( __þock_t è `__syscÚf (2)è ) 44 #ifdeà __USE_POSIX199309 46  #CLOCK_REALTIME 0 ) 48  #CLOCK_MONOTONIC 1 ) 50  #CLOCK_PROCESS_CPUTIME_ID 2 ) 52  #CLOCK_THREAD_CPUTIME_ID 3 ) 55  #TIMER_ABSTIME 1 ) 61 #ifdeà __Ãed_timev® 62 #undeà __Ãed_timev® 63 #iâdeà _STRUCT_TIMEVAL 64  #_STRUCT_TIMEVAL 1 ) 65  ~ 69  stimev® 71 __time_t mtv_£c ; 72 __su£cÚds_t mtv_u£c ; @/usr/include/bits/types.h 24 #iâdef _BITS_TYPES_H 25  #_BITS_TYPES_H 1 ) 27  ~<ã©u»s.h > 28  ~ 31  t__u_ch¬ ; 32  t__u_shÜt ; 33  t__u_št ; 34  t__u_lÚg ; 37 sigÃd  t__št8_t ; 38  t__ušt8_t ; 39 sigÃd  t__št16_t ; 40  t__ušt16_t ; 41 sigÃd  t__št32_t ; 42  t__ušt32_t ; 43 #ià __WORDSIZE == 64 44 sigÃd  t__št64_t ; 45  t__ušt64_t ; 46 #–ià defšed __GLIBC_HAVE_LONG_LONG 47 __ex‹nsiÚ__ sigÃd  t__št64_t ; 48 __ex‹nsiÚ__  t__ušt64_t ; 52 #ià __WORDSIZE == 64 53  t__quad_t ; 54  t__u_quad_t ; 55 #–ià defšed __GLIBC_HAVE_LONG_LONG 56 __ex‹nsiÚ__  t__quad_t ; 57 __ex‹nsiÚ__  t__u_quad_t ; 61  m__v® [2]; 62 } t__quad_t ; 65 __u_lÚg m__v® [2]; 66 } t__u_quad_t ; 99  #__S16_TYPE  ) 100  #__U16_TYPE  ) 101  #__S32_TYPE  ) 102  #__U32_TYPE  ) 103  #__SLONGWORD_TYPE  ) 104  #__ULONGWORD_TYPE  ) 105 #ià __WORDSIZE == 32 106  #__SQUAD_TYPE __quad_t ) 107  #__UQUAD_TYPE __u_quad_t ) 108  #__SWORD_TYPE  ) 109  #__UWORD_TYPE  ) 110  #__SLONG32_TYPE  ) 111  #__ULONG32_TYPE  ) 112  #__S64_TYPE __quad_t ) 113  #__U64_TYPE __u_quad_t ) 116  #__STD_TYPE __ex‹nsiÚ__  ) 117 #–ià __WORDSIZE == 64 118  t__SQUAD_TYPE  ) 119  t__UQUAD_TYPE  ) 120  t__SWORD_TYPE  ) 121  t__UWORD_TYPE  ) 122  t__SLONG32_TYPE  ) 123  t__ULONG32_TYPE  ) 124  t__S64_TYPE  ) 125  t__U64_TYPE  ) 127  t__STD_TYPE  ) 131  ~ 134 __STD_TYPE t__DEV_T_TYPE t__dev_t ; 135 __STD_TYPE __UID_T_TYPE g__uid_t ; 136 __STD_TYPE __GID_T_TYPE g__gid_t ; 137 __STD_TYPE __INO_T_TYPE g__šo_t ; 138 __STD_TYPE __INO64_T_TYPE g__šo64_t ; 139 __STD_TYPE __MODE_T_TYPE g__mode_t ; 140 __STD_TYPE __NLINK_T_TYPE g__Æšk_t ; 141 __STD_TYPE __OFF_T_TYPE g__off_t ; 142 __STD_TYPE __OFF64_T_TYPE g__off64_t ; 143 __STD_TYPE __PID_T_TYPE g__pid_t ; 144 __STD_TYPE __FSID_T_TYPE g__fsid_t ; 145 __STD_TYPE __CLOCK_T_TYPE g__þock_t ; 146 __STD_TYPE __RLIM_T_TYPE g__¾im_t ; 147 __STD_TYPE __RLIM64_T_TYPE g__¾im64_t ; 148 __STD_TYPE __ID_T_TYPE g__id_t ; 149 __STD_TYPE __TIME_T_TYPE g__time_t ; 150 __STD_TYPE __USECONDS_T_TYPE g__u£cÚds_t ; 151 __STD_TYPE __SUSECONDS_T_TYPE g__su£cÚds_t ; 153 __STD_TYPE __DADDR_T_TYPE g__daddr_t ; 154 __STD_TYPE __SWBLK_T_TYPE g__swblk_t ; 155 __STD_TYPE __KEY_T_TYPE g__key_t ; 158 __STD_TYPE __CLOCKID_T_TYPE g__þockid_t ; 161 __STD_TYPE __TIMER_T_TYPE g__tim”_t ; 164 __STD_TYPE __BLKSIZE_T_TYPE g__blksize_t ; 169 __STD_TYPE __BLKCNT_T_TYPE g__blkút_t ; 170 __STD_TYPE __BLKCNT64_T_TYPE g__blkút64_t ; 173 __STD_TYPE __FSBLKCNT_T_TYPE g__fsblkút_t ; 174 __STD_TYPE __FSBLKCNT64_T_TYPE g__fsblkút64_t ; 177 __STD_TYPE __FSFILCNT_T_TYPE g__fsfžút_t ; 178 __STD_TYPE __FSFILCNT64_T_TYPE g__fsfžút64_t ; 180 __STD_TYPE __SSIZE_T_TYPE g__ssize_t ; 184  __off64_t t__loff_t ; 185  __quad_t * t__qaddr_t ; 186 * t__ÿddr_t ; 189 __STD_TYPE __SWORD_TYPE g__šŒ_t ; 192 __STD_TYPE __U32_TYPE g__sockËn_t ; 195 #undeà __STD_TYPE @/usr/include/bits/uio.h 19 #ià! defšed _SYS_UIO_H && !defšed _FCNTL_H 23 #iâdeà _BITS_UIO_H 24  #_BITS_UIO_H 1 ) 26  ~ 40  #UIO_MAXIOV 1024 ) 44  siovec 46 * miov_ba£ ; 47 size_t miov_Ën ; @/usr/include/bits/unistd.h 20 #iâdeà _UNISTD_H 24 ssize_t $__»ad_chk ( __fd , * __buf , size_t __nby‹s , 25 size_t __buæ’ è __wur ; 26 ssize_t `__REDIRECT ( __»ad_®Ÿs , ( __fd , * __buf , 27 size_t __nby‹s ), »ad è __wur ; 28 ssize_t `__REDIRECT ( __»ad_chk_w¬n , 29 ( __fd , * __buf , size_t __nby‹s , 30 size_t __buæ’ ), __»ad_chk ) 31 __wur `__w¬Ç‰r ("read called with bigger†engthhan size of " 34 __ex‹º_®ways_šlše __wur ssize_t 35 $»ad ( __fd , * __buf , size_t __nby‹s ) 37 ià( `__bos0 ( __buf è!ð( size_t ) -1) 39 ià(! `__bužtš_cÚ¡ªt_p ( __nby‹s )) 40  `__»ad_chk ( __fd , __buf , __nby‹s , `__bos0 (__buf)); 42 ià( __nby‹s > `__bos0 ( __buf )) 43  `__»ad_chk_w¬n ( __fd , __buf , __nby‹s , `__bos0 (__buf)); 45  `__»ad_®Ÿs ( __fd , __buf , __nby‹s ); 46 } } 48 #ifdeà __USE_UNIX98 49 ssize_t $__´—d_chk ( __fd , * __buf , size_t __nby‹s , 50 __off_t __off£t , size_t __bufsize è __wur ; 51 ssize_t $__´—d64_chk ( __fd , * __buf , size_t __nby‹s , 52 __off64_t __off£t , size_t __bufsize è __wur ; 53 ssize_t `__REDIRECT ( __´—d_®Ÿs , 54 ( __fd , * __buf , size_t __nby‹s , 55 __off_t __off£t ), ´—d è __wur ; 56 ssize_t `__REDIRECT ( __´—d64_®Ÿs , 57 ( __fd , * __buf , size_t __nby‹s , 58 __off64_t __off£t ), ´—d64 è __wur ; 59 ssize_t `__REDIRECT ( __´—d_chk_w¬n , 60 ( __fd , * __buf , size_t __nby‹s , 61 __off_t __off£t , size_t __bufsize ), __´—d_chk ) 62 __wur `__w¬Ç‰r ("pread called with bigger†engthhan size of " 64 ssize_t `__REDIRECT ( __´—d64_chk_w¬n , 65 ( __fd , * __buf , size_t __nby‹s , 66 __off64_t __off£t , size_t __bufsize ), 67 __´—d64_chk ) 68 __wur `__w¬Ç‰r ("pread64 called with bigger†engthhan size of " 71 #iâdeà __USE_FILE_OFFSET64 72 __ex‹º_®ways_šlše __wur ssize_t 73 $´—d ( __fd , * __buf , size_t __nby‹s , __off_t __off£t ) 75 ià( `__bos0 ( __buf è!ð( size_t ) -1) 77 ià(! `__bužtš_cÚ¡ªt_p ( __nby‹s )) 78  `__´—d_chk ( __fd , __buf , __nby‹s , __off£t , `__bos0 (__buf)); 80 iàÐ __nby‹s > `__bos0 ( __buf )) 81  `__´—d_chk_w¬n ( __fd , __buf , __nby‹s , __off£t , 82 `__bos0 ( __buf )); 84  `__´—d_®Ÿs ( __fd , __buf , __nby‹s , __off£t ); 85 } } 87 __ex‹º_®ways_šlše __wur ssize_t 88 $´—d ( __fd , * __buf , size_t __nby‹s , __off64_t __off£t ) 90 ià( `__bos0 ( __buf è!ð( size_t ) -1) 92 ià(! `__bužtš_cÚ¡ªt_p ( __nby‹s )) 93  `__´—d64_chk ( __fd , __buf , __nby‹s , __off£t , `__bos0 (__buf)); 95 iàÐ __nby‹s > `__bos0 ( __buf )) 96  `__´—d64_chk_w¬n ( __fd , __buf , __nby‹s , __off£t , 97 `__bos0 ( __buf )); 100  `__´—d64_®Ÿs ( __fd , __buf , __nby‹s , __off£t ); 101 } } 104 #ifdeà __USE_LARGEFILE64 105 __ex‹º_®ways_šlše __wur ssize_t 106 $´—d64 ( __fd , * __buf , size_t __nby‹s , __off64_t __off£t ) 108 ià( `__bos0 ( __buf è!ð( size_t ) -1) 110 ià(! `__bužtš_cÚ¡ªt_p ( __nby‹s )) 111  `__´—d64_chk ( __fd , __buf , __nby‹s , __off£t , `__bos0 (__buf)); 113 iàÐ __nby‹s > `__bos0 ( __buf )) 114  `__´—d64_chk_w¬n ( __fd , __buf , __nby‹s , __off£t , 115 `__bos0 ( __buf )); 118  `__´—d64_®Ÿs ( __fd , __buf , __nby‹s , __off£t ); 119 } } 123 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED || defšed __USE_XOPEN2K 124 ssize_t $__»adlšk_chk ( __cÚ¡ * __»¡riù __·th , 125 * __»¡riù __buf , size_t __Ën , 126 size_t __buæ’ ) 127 __THROW `__nÚnuÎ ((1, 2)è __wur ; 128 ssize_t `__REDIRECT_NTH ( __»adlšk_®Ÿs , 129 ( __cÚ¡ * __»¡riù __·th , 130 * __»¡riù __buf , size_t __Ën ), »adlšk ) 131 `__nÚnuÎ ((1, 2)è __wur ; 132 ssize_t `__REDIRECT_NTH ( __»adlšk_chk_w¬n , 133 ( __cÚ¡ * __»¡riù __·th , 134 * __»¡riù __buf , size_t __Ën , 135 size_t __buæ’ ), __»adlšk_chk ) 136 `__nÚnuÎ ((1, 2)è __wur `__w¬Ç‰r ("readlink called with bigger†ength " 139 __ex‹º_®ways_šlše `__nÚnuÎ ((1, 2)è __wur ssize_t 140 `__NTH ( $»adlšk ( __cÚ¡ * __»¡riù __·th , *__»¡riù __buf , 141 size_t __Ën )) 143 ià( `__bos ( __buf è!ð( size_t ) -1) 145 ià(! `__bužtš_cÚ¡ªt_p ( __Ën )) 146  `__»adlšk_chk ( __·th , __buf , __Ën , `__bos (__buf)); 148 iàÐ __Ën > `__bos ( __buf )) 149  `__»adlšk_chk_w¬n ( __·th , __buf , __Ën , `__bos (__buf)); 151  `__»adlšk_®Ÿs ( __·th , __buf , __Ën ); 152 } } 155 #ifdeà __USE_ATFILE 156 ssize_t $__»adlšk©_chk ( __fd , __cÚ¡ * __»¡riù __·th , 157 * __»¡riù __buf , size_t __Ën , 158 size_t __buæ’ ) 159 __THROW `__nÚnuÎ ((2, 3)è __wur ; 160 ssize_t `__REDIRECT_NTH ( __»adlšk©_®Ÿs , 161 ( __fd , __cÚ¡ * __»¡riù __·th , 162 * __»¡riù __buf , size_t __Ën ), 163 »adlšk© ) 164 `__nÚnuÎ ((2, 3)è __wur ; 165 ssize_t `__REDIRECT_NTH ( __»adlšk©_chk_w¬n , 166 ( __fd , __cÚ¡ * __»¡riù __·th , 167 * __»¡riù __buf , size_t __Ën , 168 size_t __buæ’ ), __»adlšk©_chk ) 169 `__nÚnuÎ ((2, 3)è __wur `__w¬Ç‰r ("readlinkat called with bigger " 173 __ex‹º_®ways_šlše `__nÚnuÎ ((2, 3)è __wur ssize_t 174 `__NTH ( $»adlšk© ( __fd , __cÚ¡ * __»¡riù __·th , 175 * __»¡riù __buf , size_t __Ën )) 177 ià( `__bos ( __buf è!ð( size_t ) -1) 179 ià(! `__bužtš_cÚ¡ªt_p ( __Ën )) 180  `__»adlšk©_chk ( __fd , __·th , __buf , __Ën , `__bos (__buf)); 182 ià( __Ën > `__bos ( __buf )) 183  `__»adlšk©_chk_w¬n ( __fd , __·th , __buf , __Ën , 184 `__bos ( __buf )); 186  `__»adlšk©_®Ÿs ( __fd , __·th , __buf , __Ën ); 187 } } 190 * $__g‘cwd_chk (* __buf , size_t __size , size_ˆ __buæ’ ) 191 __THROW __wur ; 192 * `__REDIRECT_NTH ( __g‘cwd_®Ÿs , 193 (* __buf , size_t __size ), g‘cwd è __wur ; 194 * `__REDIRECT_NTH ( __g‘cwd_chk_w¬n , 195 (* __buf , size_t __size , size_ˆ __buæ’ ), 196 __g‘cwd_chk ) 197 __wur `__w¬Ç‰r ("getcwd caller with bigger†engthhan size of " 200 __ex‹º_®ways_šlše __wur * 201 `__NTH ( $g‘cwd (* __buf , size_t __size )) 203 ià( `__bos ( __buf è!ð( size_t ) -1) 205 ià(! `__bužtš_cÚ¡ªt_p ( __size )) 206  `__g‘cwd_chk ( __buf , __size , `__bos (__buf)); 208 ià( __size > `__bos ( __buf )) 209  `__g‘cwd_chk_w¬n ( __buf , __size , `__bos (__buf)); 211  `__g‘cwd_®Ÿs ( __buf , __size ); 212 } } 214 #ià defšed __USE_BSD || defšed __USE_XOPEN_EXTENDED 215 * $__g‘wd_chk (* __buf , size_t buæ’ ) 216 __THROW `__nÚnuÎ ((1)è __wur ; 217 * `__REDIRECT_NTH ( __g‘wd_w¬n , (* __buf ), g‘wd ) 218 `__nÚnuÎ ((1)è __wur `__w¬Ç‰r ("please use getcwd instead,‡s getwd " 221 __ex‹º_®ways_šlše `__nÚnuÎ ((1)è __©Œibu‹_d•»ÿ‹d__ __wur * 222 `__NTH ( $g‘wd (* __buf )) 224 ià( `__bos ( __buf è!ð( size_t ) -1) 225  `__g‘wd_chk ( __buf , `__bos (__buf)); 226  `__g‘wd_w¬n ( __buf ); 227 } } 230 size_t $__cÚf¡r_chk ( __Çme , * __buf , size_t __Ën , 231 size_t __buæ’ è __THROW ; 232 size_t `__REDIRECT_NTH ( __cÚf¡r_®Ÿs , ( __Çme , * __buf , 233 size_t __Ën ), cÚf¡r ); 234 size_t `__REDIRECT_NTH ( __cÚf¡r_chk_w¬n , 235 ( __Çme , * __buf , size_t __Ën , 236 size_t __buæ’ ), __cÚf¡r_chk ) 237 `__w¬Ç‰r ("confstr called with bigger†engthhan size of destination " 240 __ex‹º_®ways_šlše size_t 241 `__NTH ( $cÚf¡r ( __Çme , * __buf , size_t __Ën )) 243 ià( `__bos ( __buf è!ð( size_t ) -1) 245 ià(! `__bužtš_cÚ¡ªt_p ( __Ën )) 246  `__cÚf¡r_chk ( __Çme , __buf , __Ën , `__bos (__buf)); 248 ià( `__bos ( __buf è< __Ën ) 249  `__cÚf¡r_chk_w¬n ( __Çme , __buf , __Ën , `__bos (__buf)); 251  `__cÚf¡r_®Ÿs ( __Çme , __buf , __Ën ); 252 } } 255  $__g‘groups_chk ( __size , __gid_t __li¡ [], size_t __li¡Ën ) 256 __THROW __wur ; 257  `__REDIRECT_NTH ( __g‘groups_®Ÿs , ( __size , __gid_t __li¡ []), 258 g‘groups è __wur ; 259  `__REDIRECT_NTH ( __g‘groups_chk_w¬n , 260 ( __size , __gid_t __li¡ [], size_t __li¡Ën ), 261 __g‘groups_chk ) 262 __wur `__w¬Ç‰r ("getgroups called with bigger group counthan what " 265 __ex‹º_®ways_šlše  266 `__NTH ( $g‘groups ( __size , __gid_t __li¡ [])) 268 ià( `__bos ( __li¡ è!ð( size_t ) -1) 270 ià(! `__bužtš_cÚ¡ªt_p ( __size )) 271  `__g‘groups_chk ( __size , __li¡ , `__bos (__list)); 273 ià( __size *  ( __gid_t è> `__bos ( __li¡ )) 274  `__g‘groups_chk_w¬n ( __size , __li¡ , `__bos (__list)); 276  `__g‘groups_®Ÿs ( __size , __li¡ ); 277 } } 280  $__‰yÇme_r_chk ( __fd , * __buf , size_t __buæ’ , 281 size_t __Ä—l è __THROW `__nÚnuÎ ((2)); 282  `__REDIRECT_NTH ( __‰yÇme_r_®Ÿs , ( __fd , * __buf , 283 size_t __buæ’ ), ‰yÇme_r ) 284 `__nÚnuÎ ((2)); 285  `__REDIRECT_NTH ( __‰yÇme_r_chk_w¬n , 286 ( __fd , * __buf , size_t __buæ’ , 287 size_t __Ä—l ), __‰yÇme_r_chk ) 288 `__nÚnuÎ ((2)è `__w¬Ç‰r ("ttyname_r called with bigger buflenhan " 291 __ex‹º_®ways_šlše  292 `__NTH ( $‰yÇme_r ( __fd , * __buf , size_t __buæ’ )) 294 ià( `__bos ( __buf è!ð( size_t ) -1) 296 ià(! `__bužtš_cÚ¡ªt_p ( __buæ’ )) 297  `__‰yÇme_r_chk ( __fd , __buf , __buæ’ , `__bos (__buf)); 299 ià( __buæ’ > `__bos ( __buf )) 300  `__‰yÇme_r_chk_w¬n ( __fd , __buf , __buæ’ , `__bos (__buf)); 302  `__‰yÇme_r_®Ÿs ( __fd , __buf , __buæ’ ); 303 } } 306 #ià defšed __USE_REENTRANT || defšed __USE_POSIX199506 307  $__g‘logš_r_chk (* __buf , size_t __buæ’ , size_ˆ __Ä—l ) 308 `__nÚnuÎ ((1)); 309  `__REDIRECT ( __g‘logš_r_®Ÿs , (* __buf , size_t __buæ’ ), 310 g‘logš_r è `__nÚnuÎ ((1)); 311  `__REDIRECT ( __g‘logš_r_chk_w¬n , 312 (* __buf , size_t __buæ’ , size_ˆ __Ä—l ), 313 __g‘logš_r_chk ) 314 `__nÚnuÎ ((1)è `__w¬Ç‰r ("getlogin_r called with bigger buflenhan " 317 __ex‹º_®ways_šlše  318 $g‘logš_r (* __buf , size_t __buæ’ ) 320 ià( `__bos ( __buf è!ð( size_t ) -1) 322 ià(! `__bužtš_cÚ¡ªt_p ( __buæ’ )) 323  `__g‘logš_r_chk ( __buf , __buæ’ , `__bos (__buf)); 325 ià( __buæ’ > `__bos ( __buf )) 326  `__g‘logš_r_chk_w¬n ( __buf , __buæ’ , `__bos (__buf)); 328  `__g‘logš_r_®Ÿs ( __buf , __buæ’ ); 329 } } 333 #ià defšed __USE_BSD || defšed __USE_UNIX98 334  $__g‘ho¡Çme_chk (* __buf , size_t __buæ’ , size_ˆ __Ä—l ) 335 __THROW `__nÚnuÎ ((1)); 336  `__REDIRECT_NTH ( __g‘ho¡Çme_®Ÿs , (* __buf , size_t __buæ’ ), 337 g‘ho¡Çme è `__nÚnuÎ ((1)); 338  `__REDIRECT_NTH ( __g‘ho¡Çme_chk_w¬n , 339 (* __buf , size_t __buæ’ , size_ˆ __Ä—l ), 340 __g‘ho¡Çme_chk ) 341 `__nÚnuÎ ((1)è `__w¬Ç‰r ("gethostname called with bigger buflenhan " 344 __ex‹º_®ways_šlše  345 `__NTH ( $g‘ho¡Çme (* __buf , size_t __buæ’ )) 347 ià( `__bos ( __buf è!ð( size_t ) -1) 349 ià(! `__bužtš_cÚ¡ªt_p ( __buæ’ )) 350  `__g‘ho¡Çme_chk ( __buf , __buæ’ , `__bos (__buf)); 352 ià( __buæ’ > `__bos ( __buf )) 353  `__g‘ho¡Çme_chk_w¬n ( __buf , __buæ’ , `__bos (__buf)); 355  `__g‘ho¡Çme_®Ÿs ( __buf , __buæ’ ); 356 } } 360 #ià defšed __USE_BSD || (defšed __USE_XOPEN && !defšed __USE_UNIX98 ) 361  $__g‘domašÇme_chk (* __buf , size_t __buæ’ , size_ˆ __Ä—l ) 362 __THROW `__nÚnuÎ ((1)è __wur ; 363  `__REDIRECT_NTH ( __g‘domašÇme_®Ÿs , (* __buf , 364 size_t __buæ’ ), 365 g‘domašÇme è `__nÚnuÎ ((1)è __wur ; 366  `__REDIRECT_NTH ( __g‘domašÇme_chk_w¬n , 367 (* __buf , size_t __buæ’ , size_ˆ __Ä—l ), 368 __g‘domašÇme_chk ) 369 `__nÚnuÎ ((1)è __wur `__w¬Ç‰r ("getdomainname called with bigger " 373 __ex‹º_®ways_šlše  374 `__NTH ( $g‘domašÇme (* __buf , size_t __buæ’ )) 376 ià( `__bos ( __buf è!ð( size_t ) -1) 378 ià(! `__bužtš_cÚ¡ªt_p ( __buæ’ )) 379  `__g‘domašÇme_chk ( __buf , __buæ’ , `__bos (__buf)); 381 ià( __buæ’ > `__bos ( __buf )) 382  `__g‘domašÇme_chk_w¬n ( __buf , __buæ’ , `__bos (__buf)); 384  `__g‘domašÇme_®Ÿs ( __buf , __buæ’ ); 385 } } @/usr/include/bits/waitflags.h 20 #ià! defšed _SYS_WAIT_H && !defšed _STDLIB_H 26  #WNOHANG 1 ) 27  #WUNTRACED 2 ) 30  #WSTOPPED 2 ) 31  #WEXITED 4 ) 32  #WCONTINUED 8 ) 33  #WNOWAIT 0x01000000 ) 35  #__WNOTHREAD 0x20000000 ) 37  #__WALL 0x40000000 ) 38  #__WCLONE 0x80000000 ) @/usr/include/bits/waitstatus.h 20 #ià! defšed _SYS_WAIT_H && !defšed _STDLIB_H 29  #__WEXITSTATUS ( ¡©us è(((¡©usè& 0xff00è>> 8) ) 32  #__WTERMSIG ( ¡©us è((¡©usè& 0x7f) ) 35  #__WSTOPSIG ( ¡©us è `__WEXITSTATUS (¡©us) ) 38  #__WIFEXITED ( ¡©us è( `__WTERMSIG (¡©usè=ð0) ) 41  #__WIFSIGNALED ( ¡©us ) \ 42 (((sigÃd è((( ¡©us è& 0x7fè+ 1è>> 1è> 0) ) 45  #__WIFSTOPPED ( ¡©us è(((¡©usè& 0xffè=ð0x7f) ) 49 #ifdeà WCONTINUED 50  #__WIFCONTINUED ( ¡©us è((¡©usè=ð __W_CONTINUED ) ) 54  #__WCOREDUMP ( ¡©us è((¡©usè& __WCOREFLAG ) ) 57  #__W_EXITCODE ( »t , sig è(Ô‘è<< 8 | (sig)) ) 58  #__W_STOPCODE ( sig è((sigè<< 8 | 0x7f) ) 59  #__W_CONTINUED 0xffff ) 60  #__WCOREFLAG 0x80 ) 63 #ifdef __USE_BSD 65  ~<’dŸn.h > 67  uwa™ 69  mw_¡©us ; 72 #if __BYTE_ORDER =ð __LITTLE_ENDIAN 73  m__w_‹rmsig :7; 74  m__w_cÜedump :1; 75  m__w_»tcode :8; 78 #if __BYTE_ORDER =ð __BIG_ENDIAN 80  m__w_»tcode :8; 81  m__w_cÜedump :1; 82  m__w_‹rmsig :7; 84 } m__wa™_‹rmš©ed ; 87 #if __BYTE_ORDER =ð __LITTLE_ENDIAN 88  m__w_¡Ýv® :8; 89  m__w_¡Ýsig :8; 92 #if __BYTE_ORDER =ð __BIG_ENDIAN 94  m__w_¡Ýsig :8; 95  m__w_¡Ýv® :8; 97 } m__wa™_¡Ý³d ; 100  #w_‹rmsig __wa™_‹rmš©ed . __w_‹rmsig ) 101  #w_cÜedump __wa™_‹rmš©ed . __w_cÜedump ) 102  #w_»tcode __wa™_‹rmš©ed . __w_»tcode ) 103  #w_¡Ýsig __wa™_¡Ý³d . __w_¡Ýsig ) 104  #w_¡Ýv® __wa™_¡Ý³d . __w_¡Ýv® ) @/usr/include/bits/wchar.h 20 #iâdeà _BITS_WCHAR_H 21  #_BITS_WCHAR_H 1 ) 23  #__WCHAR_MIN (-2147483647 - 1) ) 24  #__WCHAR_MAX (2147483647) ) @/usr/include/bits/wordsize.h 3 #ià defšed __x86_64__ 4  #__WORDSIZE 64 ) 5  #__WORDSIZE_COMPAT32 1 ) 7  #__WORDSIZE 32 ) @/usr/include/bits/xopen_lim.h 30 #iâdeà _XOPEN_LIM_H 31  #_XOPEN_LIM_H 1 ) 33  #__Ãed_IOV_MAX ) 34  ~ 66  #_XOPEN_IOV_MAX _POSIX_UIO_MAXIOV ) 71  #NL_ARGMAX _POSIX_ARG_MAX ) 74  #NL_LANGMAX _POSIX2_LINE_MAX ) 77  #NL_MSGMAX INT_MAX ) 81  #NL_NMAX INT_MAX ) 84  #NL_SETMAX INT_MAX ) 87  #NL_TEXTMAX INT_MAX ) 90  #NZERO 20 ) 94 #ifdeà INT_MAX 95 #ià INT_MAX == 32767 96  #WORD_BIT 16 ) 98 #ià INT_MAX == 2147483647 99  #WORD_BIT 32 ) 102  #WORD_BIT 64 ) 105 #–ià defšed __INT_MAX__ 106 #ià __INT_MAX__ == 32767 107  #WORD_BIT 16 ) 109 #ià __INT_MAX__ == 2147483647 110  #WORD_BIT 32 ) 113  #WORD_BIT 64 ) 117  #WORD_BIT 32 ) 121 #ifdeà LONG_MAX 122 #ià LONG_MAX == 2147483647 123  #LONG_BIT 32 ) 126  #LONG_BIT 64 ) 128 #–ià defšed __LONG_MAX__ 129 #ià __LONG_MAX__ == 2147483647 130  #LONG_BIT 32 ) 133  #LONG_BIT 64 ) 136  ~ 137 #ià __WORDSIZE == 64 138  #LONG_BIT 64 ) 140  #LONG_BIT 32 ) @/usr/include/endian.h 19 #iâdef _ENDIAN_H 20  #_ENDIAN_H 1 ) 22  ~<ã©u»s.h > 32  #__LITTLE_ENDIAN 1234 ) 33  #__BIG_ENDIAN 4321 ) 34  #__PDP_ENDIAN 3412 ) 37  ~ 41 #iâdeà __FLOAT_WORD_ORDER 42  #__FLOAT_WORD_ORDER __BYTE_ORDER ) 45 #ifdef __USE_BSD 46  #LITTLE_ENDIAN __LITTLE_ENDIAN ) 47  #BIG_ENDIAN __BIG_ENDIAN ) 48  #PDP_ENDIAN __PDP_ENDIAN ) 49  #BYTE_ORDER __BYTE_ORDER ) 52 #ià __BYTE_ORDER =ð __LITTLE_ENDIAN 53  #__LONG_LONG_PAIR ( HI , LO èLO, ) HI 54 #–ià __BYTE_ORDER =ð __BIG_ENDIAN 55  #__LONG_LONG_PAIR ( HI , LO èHI, ) LO @/usr/include/features.h 19 #iâdef _FEATURES_H 20  #_FEATURES_H 1 ) 93 #undeà __USE_ISOC99 94 #undeà __USE_ISOC95 95 #undeà __USE_POSIX 96 #undeà __USE_POSIX2 97 #undeà __USE_POSIX199309 98 #undeà __USE_POSIX199506 99 #undeà __USE_XOPEN 100 #undeà __USE_XOPEN_EXTENDED 101 #undeà __USE_UNIX98 102 #undeà __USE_XOPEN2K 103 #undeà __USE_LARGEFILE 104 #undeà __USE_LARGEFILE64 105 #undeà __USE_FILE_OFFSET64 106 #undeà __USE_BSD 107 #undeà __USE_SVID 108 #undeà __USE_MISC 109 #undeà __USE_ATFILE 110 #undeà __USE_GNU 111 #undeà __USE_REENTRANT 112 #undeà __USE_FORTIFY_LEVEL 113 #undeà __FAVOR_BSD 114 #undeà __KERNEL_STRICT_NAMES 118 #iâdeà _LOOSE_KERNEL_NAMES 119  #__KERNEL_STRICT_NAMES ) 123  #__USE_ANSI 1 ) 132 #ià defšed __GNUC__ && defšed __GNUC_MINOR__ 133  #__GNUC_PREREQ ( maj , mš ) \ 134 (( __GNUC__ << 16è+ __GNUC_MINOR__ >ð(( maj è<< 16è+ ( mš )) ) 136  #__GNUC_PREREQ ( maj , mš è0 ) 141 #ià defšed _BSD_SOURCE && \ 142 !( defšed g_POSIX_SOURCE || defšed g_POSIX_C_SOURCE || \ 143 defšed g_XOPEN_SOURCE || defšed g_XOPEN_SOURCE_EXTENDED || \ 144 defšed g_GNU_SOURCE || defšed g_SVID_SOURCE ) 145  #__FAVOR_BSD 1 ) 149 #ifdeà _GNU_SOURCE 150 #undeà _ISOC99_SOURCE 151  #_ISOC99_SOURCE 1 ) 152 #undeà _POSIX_SOURCE 153  #_POSIX_SOURCE 1 ) 154 #undeà _POSIX_C_SOURCE 155  #_POSIX_C_SOURCE 200112L ) 156 #undeà _XOPEN_SOURCE 157  #_XOPEN_SOURCE 600 ) 158 #undeà _XOPEN_SOURCE_EXTENDED 159  #_XOPEN_SOURCE_EXTENDED 1 ) 160 #undeà _LARGEFILE64_SOURCE 161  #_LARGEFILE64_SOURCE 1 ) 162 #undeà _BSD_SOURCE 163  #_BSD_SOURCE 1 ) 164 #undeà _SVID_SOURCE 165  #_SVID_SOURCE 1 ) 166 #undeà _ATFILE_SOURCE 167  #_ATFILE_SOURCE 1 ) 172 #ià(! defšed __STRICT_ANSI__ && !defšed _ISOC99_SOURCE && \ 173 ! defšed g_POSIX_SOURCE && !defšed g_POSIX_C_SOURCE && \ 174 ! defšed g_XOPEN_SOURCE && !defšed g_XOPEN_SOURCE_EXTENDED && \ 175 ! defšed g_BSD_SOURCE && !defšed g_SVID_SOURCE ) 176  #_BSD_SOURCE 1 ) 177  #_SVID_SOURCE 1 ) 184 #ià( defšed _ISOC99_SOURCE || defšed _ISOC9X_SOURCE \ 185 || ( defšed g__STDC_VERSION__ && __STDC_VERSION__ >= 199901L)) 186  #__USE_ISOC99 1 ) 190 #ià( defšed _ISOC99_SOURCE || defšed _ISOC9X_SOURCE \ 191 || ( defšed __STDC_VERSION__ && __STDC_VERSION__ >= 199409L)) 192  #__USE_ISOC95 1 ) 197 #ià((! defšed __STRICT_ANSI__ || ( _XOPEN_SOURCE - 0) >= 500) && \ 198 ! defšed _POSIX_SOURCE && !defšed _POSIX_C_SOURCE ) 199  #_POSIX_SOURCE 1 ) 200 #ià defšed _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 500 201  #_POSIX_C_SOURCE 2 ) 202 #–ià defšed _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 600 203  #_POSIX_C_SOURCE 199506L ) 205  #_POSIX_C_SOURCE 200112L ) 209 #ià defšed _POSIX_SOURCE || _POSIX_C_SOURCE >ð1 || defšed _XOPEN_SOURCE 210  #__USE_POSIX 1 ) 213 #ià defšed _POSIX_C_SOURCE && _POSIX_C_SOURCE >ð2 || defšed _XOPEN_SOURCE 214  #__USE_POSIX2 1 ) 217 #ià( _POSIX_C_SOURCE - 0) >= 199309L 218  #__USE_POSIX199309 1 ) 221 #ià( _POSIX_C_SOURCE - 0) >= 199506L 222  #__USE_POSIX199506 1 ) 225 #ià( _POSIX_C_SOURCE - 0) >= 200112L 226  #__USE_XOPEN2K 1 ) 229 #ifdef _XOPEN_SOURCE 230  #__USE_XOPEN 1 ) 231 #ià( _XOPEN_SOURCE - 0) >= 500 232  #__USE_XOPEN_EXTENDED 1 ) 233  #__USE_UNIX98 1 ) 234 #undeà _LARGEFILE_SOURCE 235  #_LARGEFILE_SOURCE 1 ) 236 #ià( _XOPEN_SOURCE - 0) >= 600 237  #__USE_XOPEN2K 1 ) 238 #undeà __USE_ISOC99 239  #__USE_ISOC99 1 ) 242 #ifdeà _XOPEN_SOURCE_EXTENDED 243  #__USE_XOPEN_EXTENDED 1 ) 248 #ifdeà _LARGEFILE_SOURCE 249  #__USE_LARGEFILE 1 ) 252 #ifdeà _LARGEFILE64_SOURCE 253  #__USE_LARGEFILE64 1 ) 256 #ià defšed _FILE_OFFSET_BITS && _FILE_OFFSET_BITS == 64 257  #__USE_FILE_OFFSET64 1 ) 260 #ià defšed _BSD_SOURCE || defšed _SVID_SOURCE 261  #__USE_MISC 1 ) 264 #ifdef _BSD_SOURCE 265  #__USE_BSD 1 ) 268 #ifdef _SVID_SOURCE 269  #__USE_SVID 1 ) 272 #ifdef _ATFILE_SOURCE 273  #__USE_ATFILE 1 ) 276 #ifdef _GNU_SOURCE 277  #__USE_GNU 1 ) 280 #ià defšed _REENTRANT || defšed _THREAD_SAFE 281  #__USE_REENTRANT 1 ) 284 #ià defšed _FORTIFY_SOURCE && _FORTIFY_SOURCE > 0 \ 285 && __GNUC_PREREQ (4, 1è&& defšed g__OPTIMIZE__ && __OPTIMIZE__ > 0 286 #ià _FORTIFY_SOURCE > 1 287  #__USE_FORTIFY_LEVEL 2 ) 289  #__USE_FORTIFY_LEVEL 1 ) 292  #__USE_FORTIFY_LEVEL 0 ) 296  #__STDC_IEC_559__ 1 ) 297  #__STDC_IEC_559_COMPLEX__ 1 ) 300  #__STDC_ISO_10646__ 200009L ) 308 #undeà __GNU_LIBRARY__ 309  #__GNU_LIBRARY__ 6 ) 313  #__GLIBC__ 2 ) 314  #__GLIBC_MINOR__ 7 ) 316  #__GLIBC_PREREQ ( maj , mš ) \ 317 (( __GLIBC__ << 16è+ __GLIBC_MINOR__ >ð(( maj è<< 16è+ ( mš )) ) 320 #ià defšed __GNUC__ \ 321 || ( defšed g__PGI && defšed g__i386__ ) \ 322 || ( defšed g__INTEL_COMPILER && (defšed g__i386__ || defšed g__Ÿ64__ )) \ 323 || ( defšed g__STDC_VERSION__ && __STDC_VERSION__ >= 199901L) 324  #__GLIBC_HAVE_LONG_LONG 1 ) 328 #iâdeà __ASSEMBLER__ 329 #iâdeà _SYS_CDEFS_H 330  ~ 335 #ià defšed __USE_FILE_OFFSET64 && !defšed __REDIRECT 336  #__USE_LARGEFILE 1 ) 337  #__USE_LARGEFILE64 1 ) 343 #ià __GNUC_PREREQ (2, 7è&& defšed __OPTIMIZE__ \ 344 && ! defšed g__OPTIMIZE_SIZE__ && !defšed g__NO_INLINE__ \ 345 && defšed g__ex‹º_šlše 346  #__USE_EXTERN_INLINES 1 ) 354  ~ @/usr/include/lber.h 26 #iâdeà _LBER_H 27  #_LBER_H ) 29  ~ 30  ~<¡ršg.h > 32 gLDAP_BEGIN_DECL 52  #LBER_CLASS_UNIVERSAL (( b”_g_t è0x00U) ) 53  #LBER_CLASS_APPLICATION (( b”_g_t è0x40U) ) 54  #LBER_CLASS_CONTEXT (( b”_g_t è0x80U) ) 55  #LBER_CLASS_PRIVATE (( b”_g_t è0xc0U) ) 56  #LBER_CLASS_MASK (( b”_g_t è0xc0U) ) 59  #LBER_PRIMITIVE (( b”_g_t è0x00U) ) 60  #LBER_CONSTRUCTED (( b”_g_t è0x20U) ) 61  #LBER_ENCODING_MASK (( b”_g_t è0x20U) ) 63  #LBER_BIG_TAG_MASK (( b”_g_t è0x1fU) ) 64  #LBER_MORE_TAG_MASK (( b”_g_t è0x80U) ) 71  #LBER_INVALID ( t è((Ñè& ( b”_g_t ) 0x080UL) \ 72 && ((( t è& ( b”_g_t è~ 0x0FF)) ) 74  #LBER_ERROR (( b”_g_t è-1) ) 75  #LBER_DEFAULT (( b”_g_t è-1) ) 78  #LBER_BOOLEAN (( b”_g_t è0x01UL) ) 79  #LBER_INTEGER (( b”_g_t è0x02UL) ) 80  #LBER_BITSTRING (( b”_g_t è0x03UL) ) 81  #LBER_OCTETSTRING (( b”_g_t è0x04UL) ) 82  #LBER_NULL (( b”_g_t è0x05UL) ) 83  #LBER_ENUMERATED (( b”_g_t è0x0aUL) ) 84  #LBER_SEQUENCE (( b”_g_t è0x30ULè ) 85  #LBER_SET (( b”_g_t è0x31ULè ) 88  #LBER_USE_DER 0x01 ) 91  #LBER_OPT_BER_OPTIONS 0x01 ) 92  #LBER_OPT_BER_DEBUG 0x02 ) 93  #LBER_OPT_BER_REMAINING_BYTES 0x03 ) 94  #LBER_OPT_BER_TOTAL_BYTES 0x04 ) 95  #LBER_OPT_BER_BYTES_TO_WRITE 0x05 ) 96  #LBER_OPT_BER_MEMCTX 0x06 ) 98  #LBER_OPT_DEBUG_LEVEL LBER_OPT_BER_DEBUG ) 99  #LBER_OPT_REMAINING_BYTES LBER_OPT_BER_REMAINING_BYTES ) 100  #LBER_OPT_TOTAL_BYTES LBER_OPT_BER_TOTAL_BYTES ) 101  #LBER_OPT_BYTES_TO_WRITE LBER_OPT_BER_BYTES_TO_WRITE ) 103  #LBER_OPT_LOG_PRINT_FN 0x8001 ) 104  #LBER_OPT_MEMORY_FNS 0x8002 ) 105  #LBER_OPT_ERROR_FN 0x8003 ) 106  #LBER_OPT_LOG_PRINT_FILE 0x8004 ) 109  #LBER_OPT_MEMORY_INUSE 0x8005 ) 110  #LBER_OPT_LOG_PROC 0x8006 ) 112 * (* tBER_ERRNO_FN è tLDAP_P (( )); 114 (* tBER_LOG_PRINT_FN è tLDAP_P (Ð tLDAP_CONST * tbuf )); 116 * ( tBER_MEMALLOC_FN è tLDAP_P (Ð tb”_Ën_t tsize , * tùx )); 117 * ( tBER_MEMCALLOC_FN è tLDAP_P (Ð tb”_Ën_t tn , b”_Ën_ˆ tsize , * tùx )); 118 * ( tBER_MEMREALLOC_FN è tLDAP_P (Ð* tp , tb”_Ën_t tsize , * tùx )); 119 ( tBER_MEMFREE_FN è tLDAP_P (Ð* tp , * tùx )); 121  slb”_memÜy_âs { 122 BER_MEMALLOC_FN * bmf_m®loc ; 123 BER_MEMCALLOC_FN * bmf_ÿÎoc ; 124 BER_MEMREALLOC_FN * bmf_»®loc ; 125 BER_MEMFREE_FN * bmf_ä“ ; 126 } tB”MemÜyFunùiÚs ; 129  #LBER_SB_OPT_GET_FD 1 ) 130  #LBER_SB_OPT_SET_FD 2 ) 131  #LBER_SB_OPT_HAS_IO 3 ) 132  #LBER_SB_OPT_SET_NONBLOCK 4 ) 133  #LBER_SB_OPT_GET_SSL 7 ) 134  #LBER_SB_OPT_DATA_READY 8 ) 135  #LBER_SB_OPT_SET_READAHEAD 9 ) 136  #LBER_SB_OPT_DRAIN 10 ) 137  #LBER_SB_OPT_NEEDS_READ 11 ) 138  #LBER_SB_OPT_NEEDS_WRITE 12 ) 139  #LBER_SB_OPT_GET_MAX_INCOMING 13 ) 140  #LBER_SB_OPT_SET_MAX_INCOMING 14 ) 143  #LBER_SB_OPT_UNGET_BUF 15 ) 146  #LBER_SB_OPT_OPT_MAX 15 ) 149  #LBER_SBIOD_LEVEL_PROVIDER 10 ) 150  #LBER_SBIOD_LEVEL_TRANSPORT 20 ) 151  #LBER_SBIOD_LEVEL_APPLICATION 30 ) 154  #LBER_OPT_SOCKBUF_DESC 0x1000 ) 155  #LBER_OPT_SOCKBUF_OPTIONS 0x1001 ) 156  #LBER_OPT_SOCKBUF_DEBUG 0x1002 ) 159 $LBER_V Ðè b”_pvt_Ýt_Ú ; 160  #LBER_OPT_ON ((*è& b”_pvt_Ýt_Ú ) ) 161  #LBER_OPT_OFF ((*è0) ) 163  #LBER_OPT_SUCCESS (0) ) 164  #LBER_OPT_ERROR (-1) ) 166  b”–em’t tB”EËm’t ; 167  sockbuf tSockbuf ; 168  £qÜ£t tSeqÜ£t ; 170  sockbuf_io tSockbuf_IO ; 173  ssockbuf_io_desc { 174  sbiod_Ëv– ; 175 Sockbuf * sbiod_sb ; 176 Sockbuf_IO * sbiod_io ; 177 * sbiod_pvt ; 178  sockbuf_io_desc * sbiod_Ãxt ; 179 } tSockbuf_IO_Desc ; 182  ssockbuf_io { 183 (* sbi_£tup )Ð Sockbuf_IO_Desc * sbiod , * ¬g ); 184 (* sbi_»move )Ð Sockbuf_IO_Desc * sbiod ); 185 (* sbi_ù¾ )Ð Sockbuf_IO_Desc * sbiod ,  Ýt , * ¬g ); 187 `b”_¦’_t (* sbi_»ad )Ð Sockbuf_IO_Desc * sbiod , * buf , 188 b”_Ën_t Ën ); 189 `b”_¦’_t (* sbi_wr™e )Ð Sockbuf_IO_Desc * sbiod , * buf , 190 b”_Ën_t Ën ); 192 (* sbi_þo£ )Ð Sockbuf_IO_Desc * sbiod ); 196  #LBER_SBIOD_READ_NEXT Ð sbiod , buf , Ën ) \ 197 Ð( sbiod )-> sbiod_Ãxt -> sbiod_io -> `sbi_»ad ( (sbiod)->sbiod_next, \ 198 buf , Ën ) ) ) 199  #LBER_SBIOD_WRITE_NEXT Ð sbiod , buf , Ën ) \ 200 Ð( sbiod )-> sbiod_Ãxt -> sbiod_io -> `sbi_wr™e ( (sbiod)->sbiod_next, \ 201 buf , Ën ) ) ) 202  #LBER_SBIOD_CTRL_NEXT Ð sbiod , Ýt , ¬g ) \ 203 Ð( sbiod )-> sbiod_Ãxt ? \ 204 Ð( sbiod )-> sbiod_Ãxt -> sbiod_io -> `sbi_ù¾ ( \ 205 ( sbiod )-> sbiod_Ãxt , Ýt , ¬g ) ) : 0 ) ) 208  sb”v® { 209 b”_Ën_t bv_Ën ; 210 * bv_v® ; 211 } tB”V®ue ; 213  B”V®ue * tB”V¬¿y ; 220 $LBER_F ( ) 221 b”_”rÜ_´št `LDAP_P (( 222 LDAP_CONST * d©a )); 224 $LBER_F ( ) 225 b”_b´št `LDAP_P (( 226 LDAP_CONST * d©a , b”_Ën_t Ën )); 228 $LBER_F ( ) 229 b”_dump `LDAP_P (( 230 B”EËm’t * b” ,  šout )); 232 $LBER_F ( ) 233 b”_sos_dump `LDAP_P (( 234 SeqÜ£t * sos )); 239 (* tBERDecodeC®lback è tLDAP_P (( 240 tB”EËm’t * tb” , 241 * td©a , 242  tmode )); 244 $LBER_F Ð b”_g_t ) 245 b”_g‘_g `LDAP_P (( 246 B”EËm’t * b” )); 248 $LBER_F Ð b”_g_t ) 249 b”_sk_g `LDAP_P (( 250 B”EËm’t * b” , 251 b”_Ën_t * Ën )); 253 $LBER_F Ð b”_g_t ) 254 b”_³ek_g `LDAP_P (( 255 B”EËm’t * b” , 256 b”_Ën_t * Ën )); 258 $LBER_F Ð b”_g_t ) 259 b”_g‘_št `LDAP_P (( 260 B”EËm’t * b” , 261 b”_št_t * num )); 263 $LBER_F Ð b”_g_t ) 264 b”_g‘_’um `LDAP_P (( 265 B”EËm’t * b” , 266 b”_št_t * num )); 268 $LBER_F Ð b”_g_t ) 269 b”_g‘_¡ršgb `LDAP_P (( 270 B”EËm’t * b” , 271 * buf , 272 b”_Ën_t * Ën )); 274  #LBER_BV_ALLOC 0x01 ) 275  #LBER_BV_NOTERM 0x02 ) 277 $LBER_F Ð b”_g_t ) 278 b”_g‘_¡ršgbv `LDAP_P (( 279 B”EËm’t * b” , 280  b”v® * bv , 281  ÝtiÚs )); 283 $LBER_F Ð b”_g_t ) 284 b”_g‘_¡ršga `LDAP_P (( 285 B”EËm’t * b” , 286 ** buf )); 288 $LBER_F Ð b”_g_t ) 289 b”_g‘_¡ršg® `LDAP_P (( 290 B”EËm’t * b” , 291  b”v® ** bv )); 293 $LBER_F Ð b”_g_t ) 294 b”_g‘_b™¡ršga `LDAP_P (( 295 B”EËm’t * b” , 296 ** buf , 297 b”_Ën_t * Ën )); 299 $LBER_F Ð b”_g_t ) 300 b”_g‘_nuÎ `LDAP_P (( 301 B”EËm’t * b” )); 303 $LBER_F Ð b”_g_t ) 304 b”_g‘_boÞ—n `LDAP_P (( 305 B”EËm’t * b” , 306 b”_št_t * boÞv® )); 308 $LBER_F Ð b”_g_t ) 309 b”_fœ¡_–em’t `LDAP_P (( 310 B”EËm’t * b” , 311 b”_Ën_t * Ën , 312 ** Ï¡ )); 314 $LBER_F Ð b”_g_t ) 315 b”_Ãxt_–em’t `LDAP_P (( 316 B”EËm’t * b” , 317 b”_Ën_t * Ën , 318 LDAP_CONST * Ï¡ )); 320 $LBER_F Ð b”_g_t ) 321 b”_sÿnf `LDAP_P (( 322 B”EËm’t * b” , 323 LDAP_CONST * fmt , 326 $LBER_F ( ) 327 b”_decode_oid `LDAP_P (( 328  b”v® * š , 329  b”v® * out )); 334 $LBER_F ( ) 335 b”_’code_oid `LDAP_P (( 336  b”v® * š , 337  b”v® * out )); 339 (* tBEREncodeC®lback è tLDAP_P (( 340 tB”EËm’t * tb” , 341 * td©a )); 343 $LBER_F ( ) 344 b”_put_’um `LDAP_P (( 345 B”EËm’t * b” , 346 b”_št_t num , 347 b”_g_t g )); 349 $LBER_F ( ) 350 b”_put_št `LDAP_P (( 351 B”EËm’t * b” , 352 b”_št_t num , 353 b”_g_t g )); 355 $LBER_F ( ) 356 b”_put_o¡ršg `LDAP_P (( 357 B”EËm’t * b” , 358 LDAP_CONST * ¡r , 359 b”_Ën_t Ën , 360 b”_g_t g )); 362 $LBER_F ( ) 363 b”_put_b”v® `LDAP_P (( 364 B”EËm’t * b” , 365  b”v® * bv , 366 b”_g_t g )); 368 $LBER_F ( ) 369 b”_put_¡ršg `LDAP_P (( 370 B”EËm’t * b” , 371 LDAP_CONST * ¡r , 372 b”_g_t g )); 374 $LBER_F ( ) 375 b”_put_b™¡ršg `LDAP_P (( 376 B”EËm’t * b” , 377 LDAP_CONST * ¡r , 378 b”_Ën_t b™Ën , 379 b”_g_t g )); 381 $LBER_F ( ) 382 b”_put_nuÎ `LDAP_P (( 383 B”EËm’t * b” , 384 b”_g_t g )); 386 $LBER_F ( ) 387 b”_put_boÞ—n `LDAP_P (( 388 B”EËm’t * b” , 389 b”_št_t boÞv® , 390 b”_g_t g )); 392 $LBER_F ( ) 393 b”_¡¬t_£q `LDAP_P (( 394 B”EËm’t * b” , 395 b”_g_t g )); 397 $LBER_F ( ) 398 b”_¡¬t_£t `LDAP_P (( 399 B”EËm’t * b” , 400 b”_g_t g )); 402 $LBER_F ( ) 403 b”_put_£q `LDAP_P (( 404 B”EËm’t * b” )); 406 $LBER_F ( ) 407 b”_put_£t `LDAP_P (( 408 B”EËm’t * b” )); 410 $LBER_F ( ) 411 b”_´štf `LDAP_P (( 412 B”EËm’t * b” , 413 LDAP_CONST * fmt , 421 $LBER_F Ð b”_¦’_t ) 422 b”_sk_d©a `LDAP_P (( 423 B”EËm’t * b” , 424 b”_Ën_t Ën )); 426 $LBER_F Ð b”_¦’_t ) 427 b”_»ad `LDAP_P (( 428 B”EËm’t * b” , 429 * buf , 430 b”_Ën_t Ën )); 432 $LBER_F Ð b”_¦’_t ) 433 b”_wr™e `LDAP_P (( 434 B”EËm’t * b” , 435 LDAP_CONST * buf , 436 b”_Ën_t Ën , 437  nosos )); 439 $LBER_F ( ) 440 b”_ä“ `LDAP_P (( 441 B”EËm’t * b” , 442  ä“buf )); 444 $LBER_F ( ) 445 b”_ä“_buf `LDAP_P (Ð B”EËm’t * b” )); 447 $LBER_F ( ) 448 b”_æush2 `LDAP_P (( 449 Sockbuf * sb , 450 B”EËm’t * b” , 451  ä“™ )); 452  #LBER_FLUSH_FREE_NEVER (0x0è ) 453  #LBER_FLUSH_FREE_ON_SUCCESS (0x1è ) 454  #LBER_FLUSH_FREE_ON_ERROR (0x2) ) 455  #LBER_FLUSH_FREE_ALWAYS ( LBER_FLUSH_FREE_ON_SUCCESS | LBER_FLUSH_FREE_ON_ERROR ) ) 457 $LBER_F ( ) 458 b”_æush `LDAP_P (( 459 Sockbuf * sb , 460 B”EËm’t * b” , 461  ä“™ )); 463 $LBER_F Ð B”EËm’t * ) 464 b”_®loc `LDAP_P (( )); 466 $LBER_F Ð B”EËm’t * ) 467 d”_®loc `LDAP_P (( )); 469 $LBER_F Ð B”EËm’t * ) 470 b”_®loc_t `LDAP_P (( 471  b”ÝtiÚs )); 473 $LBER_F Ð B”EËm’t * ) 474 b”_dup `LDAP_P (( 475 B”EËm’t * b” )); 477 $LBER_F Ð b”_g_t ) 478 b”_g‘_Ãxt `LDAP_P (( 479 Sockbuf * sb , 480 b”_Ën_t * Ën , 481 B”EËm’t * b” )); 483 $LBER_F ( ) 484 b”_š™2 `LDAP_P (( 485 B”EËm’t * b” , 486  b”v® * bv , 487  ÝtiÚs )); 489 $LBER_F ( ) 490 b”_š™_w_nuÎc `LDAP_P (( 491 B”EËm’t * b” , 492  ÝtiÚs )); 494 $LBER_F ( ) 495 b”_»£t `LDAP_P (( 496 B”EËm’t * b” , 497  was_wr™šg )); 499 $LBER_F Ð B”EËm’t * ) 500 b”_š™ `LDAP_P (( 501  b”v® * bv )); 503 $LBER_F ( ) 504 b”_æ©‹n `LDAP_P (( 505 B”EËm’t * b” , 506  b”v® ** bvPŒ )); 508 $LBER_F ( ) 509 b”_æ©‹n2 `LDAP_P (( 510 B”EËm’t * b” , 511  b”v® * bv , 512  ®loc )); 514 $LBER_F ( ) 515 b”_»maššg `LDAP_P (( 516 B”EËm’t * b” )); 522 $LBER_F ( ) 523 b”_g‘_ÝtiÚ `LDAP_P (( 524 * ™em , 525  ÝtiÚ , 526 * outv®ue )); 528 $LBER_F ( ) 529 b”_£t_ÝtiÚ `LDAP_P (( 530 * ™em , 531  ÝtiÚ , 532 LDAP_CONST * šv®ue )); 538 $LBER_F Ð Sockbuf * ) 539 b”_sockbuf_®loc `LDAP_P (( 542 $LBER_F ( ) 543 b”_sockbuf_ä“ `LDAP_P (( 544 Sockbuf * sb )); 546 $LBER_F ( ) 547 b”_sockbuf_add_io `LDAP_P (( 548 Sockbuf * sb , 549 Sockbuf_IO * sbio , 550  Ïy” , 551 * ¬g )); 553 $LBER_F ( ) 554 b”_sockbuf_»move_io `LDAP_P (( 555 Sockbuf * sb , 556 Sockbuf_IO * sbio , 557  Ïy” )); 559 $LBER_F ( ) 560 b”_sockbuf_ù¾ `LDAP_P (( 561 Sockbuf * sb , 562  Ýt , 563 * ¬g )); 565 $LBER_V Ð Sockbuf_IO ) b”_sockbuf_io_tý ; 566 $LBER_V Ð Sockbuf_IO ) b”_sockbuf_io_»adah—d ; 567 $LBER_V Ð Sockbuf_IO ) b”_sockbuf_io_fd ; 568 $LBER_V Ð Sockbuf_IO ) b”_sockbuf_io_debug ; 569 $LBER_V Ð Sockbuf_IO ) b”_sockbuf_io_udp ; 574 $LBER_F ( * ) 575 b”_mem®loc `LDAP_P (( 576 b”_Ën_t s )); 578 $LBER_F ( * ) 579 b”_mem»®loc `LDAP_P (( 580 * p , 581 b”_Ën_t s )); 583 $LBER_F ( * ) 584 b”_memÿÎoc `LDAP_P (( 585 b”_Ën_t n , 586 b”_Ën_t s )); 588 $LBER_F ( ) 589 b”_memä“ `LDAP_P (( 590 * p )); 592 $LBER_F ( ) 593 b”_memvä“ `LDAP_P (( 594 ** veùÜ )); 596 $LBER_F ( ) 597 b”_bvä“ `LDAP_P (( 598  b”v® * bv )); 600 $LBER_F ( ) 601 b”_bvecä“ `LDAP_P (( 602  b”v® ** bv )); 604 $LBER_F ( ) 605 b”_bveÿdd `LDAP_P (( 606  b”v® *** bvec , 607  b”v® * bv )); 609 $LBER_F Ð b”v® * ) 610 b”_dupbv `LDAP_P (( 611  b”v® * d¡ , b”v® * ¤c )); 613 $LBER_F Ð b”v® * ) 614 b”_bvdup `LDAP_P (( 615  b”v® * ¤c )); 617 $LBER_F Ð b”v® * ) 618 b”_mem2bv `LDAP_P (( 619 LDAP_CONST *, b”_Ën_t Ën ,  du¶iÿ‹ ,  b”v® * bv )); 621 $LBER_F Ð b”v® * ) 622 b”_¡r2bv `LDAP_P (( 623 LDAP_CONST *, b”_Ën_t Ën ,  du¶iÿ‹ ,  b”v® * bv )); 625  #b”_bv¡r ( a è(( b”_¡r2bv )(×), 0, 0, NULL )) ) 626  #b”_bv¡rdup ( a è(( b”_¡r2bv )(×), 0, 1, NULL )) ) 628 $LBER_F ( * ) 629 b”_¡rdup `LDAP_P (( 630 LDAP_CONST * )); 632 $LBER_F Ð b”v® * ) 633 b”_bv»¶aû `LDAP_P (( 634  b”v® * d¡ , LDAP_CONST b”v® * ¤c )); 636 $LBER_F ( ) 637 b”_bv¬¿y_ä“ `LDAP_P (Ð B”V¬¿y p )); 639 $LBER_F ( ) 640 b”_bv¬¿y_add `LDAP_P (Ð B”V¬¿y * p , B”V®ue * bv )); 642  #b”_bvcmp ( v1 , v2 ) \ 643 (( v1 )-> bv_Ën < ( v2 )->bv_len \ 644 ? -1 : (( v1 )-> bv_Ën > ( v2 )->bv_len \ 645 ? 1 : `memcmp (( v1 )-> bv_v® , ( v2 )->bv_v®, (v1)-> bv_Ën è)) ) 650 $LBER_F Ð* ) b”_”ºo_addr `LDAP_P (()); 651  #b”_”ºo (*( b”_”ºo_addr )()) ) 653  #LBER_ERROR_NONE 0 ) 654  #LBER_ERROR_PARAM 0x1 ) 655  #LBER_ERROR_MEMORY 0x2 ) 657 LDAP_END_DECL @/usr/include/ldap_features.h 21 #iâdeà _LDAP_FEATURES_H 22  #_LDAP_FEATURES_H 1 ) 25  #LDAP_VENDOR_VERSION 20407 ) 26  #LDAP_VENDOR_VERSION_MAJOR 2 ) 27  #LDAP_VENDOR_VERSION_MINOR 4 ) 28  #LDAP_VENDOR_VERSION_PATCH 7 ) 56  #LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE 1 ) @/usr/include/libio.h 29 #iâdeà _IO_STDIO_H 30  #_IO_STDIO_H ) 32  ~<_G_cÚfig.h > 34  #_IO_pos_t _G_åos_t ) 35  #_IO_åos_t _G_åos_t ) 36  #_IO_åos64_t _G_åos64_t ) 37  #_IO_size_t _G_size_t ) 38  #_IO_ssize_t _G_ssize_t ) 39  #_IO_off_t _G_off_t ) 40  #_IO_off64_t _G_off64_t ) 41  #_IO_pid_t _G_pid_t ) 42  #_IO_uid_t _G_uid_t ) 43  #_IO_icÚv_t _G_icÚv_t ) 44  #_IO_HAVE_SYS_WAIT _G_HAVE_SYS_WAIT ) 45  #_IO_HAVE_ST_BLKSIZE _G_HAVE_ST_BLKSIZE ) 46  #_IO_BUFSIZ _G_BUFSIZ ) 47  #_IO_va_li¡ _G_va_li¡ ) 48  #_IO_wšt_t _G_wšt_t ) 50 #ifdeà _G_NEED_STDARG_H 52  #__Ãed___va_li¡ ) 53  ~<¡d¬g.h > 54 #ifdeà __GNUC_VA_LIST 55 #undeà _IO_va_li¡ 56  #_IO_va_li¡ __gnuc_va_li¡ ) 60 #iâdeà __P 61 #ià _G_HAVE_SYS_CDEFS 62  ~ 64 #ifdeà __STDC__ 65  #__P ( p è ) p 66  #__PMT ( p è ) p 68  #__P ( p è() ) 69  #__PMT ( p è() ) 75 #iâdeà _PARAMS 76  #_PARAMS ( ´Ùos è `__P ÕrÙos) ) 79 #iâdeà __STDC__ 81 cÚ¡ ) 84  #_IO_UNIFIED_JUMPTABLES 1 ) 85 #iâdeà _G_HAVE_PRINTF_FP 86  #_IO_USE_DTOA 1 ) 89 #iâdeà EOF 90  #EOF (-1) ) 92 #iâdeà NULL 93 #ià defšed __GNUG__ && \ 94 ( g__GNUC__ > 2 || (__GNUC__ =ð2 && __GNUC_MINOR__ >= 8)) 95  #NULL ( __nuÎ ) ) 97 #ià! defšed ( __ýlu¥lus ) 98  #NULL ((*)0) ) 100  #NULL (0) ) 105  #_IOS_INPUT 1 ) 106  #_IOS_OUTPUT 2 ) 107  #_IOS_ATEND 4 ) 108  #_IOS_APPEND 8 ) 109  #_IOS_TRUNC 16 ) 110  #_IOS_NOCREATE 32 ) 111  #_IOS_NOREPLACE 64 ) 112  #_IOS_BIN 128 ) 120  #_IO_MAGIC 0xFBAD0000 ) 121  #_OLD_STDIO_MAGIC 0xFABC0000 ) 122  #_IO_MAGIC_MASK 0xFFFF0000 ) 123  #_IO_USER_BUF 1 ) 124  #_IO_UNBUFFERED 2 ) 125  #_IO_NO_READS 4 ) 126  #_IO_NO_WRITES 8 ) 127  #_IO_EOF_SEEN 0x10 ) 128  #_IO_ERR_SEEN 0x20 ) 129  #_IO_DELETE_DONT_CLOSE 0x40 ) 130  #_IO_LINKED 0x80 ) 131  #_IO_IN_BACKUP 0x100 ) 132  #_IO_LINE_BUF 0x200 ) 133  #_IO_TIED_PUT_GET 0x400 ) 134  #_IO_CURRENTLY_PUTTING 0x800 ) 135  #_IO_IS_APPENDING 0x1000 ) 136  #_IO_IS_FILEBUF 0x2000 ) 137  #_IO_BAD_SEEN 0x4000 ) 138  #_IO_USER_LOCK 0x8000 ) 140  #_IO_FLAGS2_MMAP 1 ) 141  #_IO_FLAGS2_NOTCANCEL 2 ) 142 #ifdeà _LIBC 143  #_IO_FLAGS2_FORTIFY 4 ) 145  #_IO_FLAGS2_USER_WBUF 8 ) 146 #ifdeà _LIBC 147  #_IO_FLAGS2_SCANF_STD 16 ) 151  #_IO_SKIPWS 01 ) 152  #_IO_LEFT 02 ) 153  #_IO_RIGHT 04 ) 154  #_IO_INTERNAL 010 ) 155  #_IO_DEC 020 ) 156  #_IO_OCT 040 ) 157  #_IO_HEX 0100 ) 158  #_IO_SHOWBASE 0200 ) 159  #_IO_SHOWPOINT 0400 ) 160  #_IO_UPPERCASE 01000 ) 161  #_IO_SHOWPOS 02000 ) 162  #_IO_SCIENTIFIC 04000 ) 163  #_IO_FIXED 010000 ) 164  #_IO_UNITBUF 020000 ) 165  #_IO_STDIO 040000 ) 166  #_IO_DONT_CLOSE 0100000 ) 167  #_IO_BOOLALPHA 0200000 ) 170  _IO_jump_t ;  g_IO_FILE ; 173 #ifdeà _IO_MTSAFE_IO 174 #ià defšed __GLIBC__ && __GLIBC__ >= 2 175  ~ 180  t_IO_lock_t ; 186  s_IO_m¬k” { 187  _IO_m¬k” * m_Ãxt ; 188  _IO_FILE * m_sbuf ; 192  m_pos ; 194  £t_¡»ampos ( ¡»ampos ¥ è{ m_¥os = sp; } 195  £t_off£t ( off£t è{ m_pos = off£t; m_¥os = ( ¡»ampos )(-2); } 196 mpublic : 197 ¡»amm¬k” ( ¡»ambuf * sb ); 198 ~ ¡»amm¬k” (); 199  §všg (è{  m_¥os == -2; } 200  d– ( ¡»amm¬k” &); 201  d– (); 206 e__codecvt_»suÉ 208 m__codecvt_ok , 209 m__codecvt_·¹Ÿl , 210 m__codecvt_”rÜ , 211 m__codecvt_nocÚv 214 #ià defšed _LIBC || defšed _GLIBCPP_USE_WCHAR_T 217  s_IO_codecvt 219 (* m__codecvt_de¡r è( m_IO_codecvt *); 220 __codecvt_»suÉ (* __codecvt_do_out è( m_IO_codecvt *, 221 m__mb¡©e_t *, 222 cÚ¡ mwch¬_t *, 223 cÚ¡ mwch¬_t *, 224 cÚ¡ mwch¬_t **, *, 226 __codecvt_»suÉ (* __codecvt_do_unshiá è( m_IO_codecvt *, 227 m__mb¡©e_t *, *, 229 __codecvt_»suÉ (* __codecvt_do_š è( m_IO_codecvt *, 230 m__mb¡©e_t *, 232 cÚ¡ **, mwch¬_t *, 233 mwch¬_t *, wchar_t **); 234 (* m__codecvt_do_’codšg è( m_IO_codecvt *); 235 (* m__codecvt_do_®ways_nocÚv è( m_IO_codecvt *); 236 (* m__codecvt_do_Ëngth è( m_IO_codecvt *, m__mb¡©e_t *, 237 cÚ¡ *, cÚ¡ *, m_IO_size_t ); 238 (* m__codecvt_do_max_Ëngth è( m_IO_codecvt *); 240 _IO_icÚv_t m__cd_š ; 241 _IO_icÚv_t m__cd_out ; 245  s_IO_wide_d©a 247 wch¬_t * m_IO_»ad_±r ; 248 wch¬_t * m_IO_»ad_’d ; 249 wch¬_t * m_IO_»ad_ba£ ; 250 wch¬_t * m_IO_wr™e_ba£ ; 251 wch¬_t * m_IO_wr™e_±r ; 252 wch¬_t * m_IO_wr™e_’d ; 253 wch¬_t * m_IO_buf_ba£ ; 254 wch¬_t * m_IO_buf_’d ; 256 wch¬_t * m_IO_§ve_ba£ ; 257 wch¬_t * m_IO_backup_ba£ ; 259 wch¬_t * m_IO_§ve_’d ; 261 __mb¡©e_t m_IO_¡©e ; 262 __mb¡©e_t m_IO_Ï¡_¡©e ; 263  _IO_codecvt m_codecvt ; 265 wch¬_t m_shÜtbuf [1]; 267 cÚ¡  _IO_jump_t * m_wide_vbË ; 271  s_IO_FILE { 272  m_æags ; 273  #_IO_fže_æags _æags ) 277 * m_IO_»ad_±r ; 278 * m_IO_»ad_’d ; 279 * m_IO_»ad_ba£ ; 280 * m_IO_wr™e_ba£ ; 281 * m_IO_wr™e_±r ; 282 * m_IO_wr™e_’d ; 283 * m_IO_buf_ba£ ; 284 * m_IO_buf_’d ; 286 * m_IO_§ve_ba£ ; 287 * m_IO_backup_ba£ ; 288 * m_IO_§ve_’d ; 290  _IO_m¬k” * m_m¬k”s ; 292  _IO_FILE * m_chaš ; 294  m_fž’o ; 296  m_blksize ; 298  m_æags2 ; 300 _IO_off_t m_Þd_off£t ; 302  #__HAVE_COLUMN ) 304  m_cur_cÞumn ; 305 sigÃd  m_vbË_off£t ; 306  m_shÜtbuf [1]; 310 _IO_lock_t * m_lock ; 311 #ifdeà _IO_USE_OLD_IO_FILE 314  s_IO_FILE_com¶‘e 316  _IO_FILE m_fže ; 318 #ià defšed _G_IO_IO_FILE_VERSION && _G_IO_IO_FILE_VERSION == 0x20001 319 _IO_off64_t m_off£t ; 320 #ià defšed _LIBC || defšed _GLIBCPP_USE_WCHAR_T 322  _IO_codecvt * m_codecvt ; 323  _IO_wide_d©a * m_wide_d©a ; 324  _IO_FILE * m_ä“»s_li¡ ; 325 * m_ä“»s_buf ; 326 size_t m_ä“»s_size ; 328 * m__·d1 ; 329 * m__·d2 ; 330 * m__·d3 ; 331 * m__·d4 ; 332 size_t m__·d5 ; 334  m_mode ; 336  m_unu£d2 [15 *  (è- 4 *  (*è-  ( size_t )]; 340 #iâdeà __ýlu¥lus 341  _IO_FILE t_IO_FILE ; 344  g_IO_FILE_¶us ; 346  _IO_FILE_¶us _IO_2_1_¡dš_ ; 347  _IO_FILE_¶us _IO_2_1_¡dout_ ; 348  _IO_FILE_¶us _IO_2_1_¡d”r_ ; 349 #iâdeà _LIBC 350  #_IO_¡dš (( _IO_FILE *)(& _IO_2_1_¡dš_ )) ) 351  #_IO_¡dout (( _IO_FILE *)(& _IO_2_1_¡dout_ )) ) 352  #_IO_¡d”r (( _IO_FILE *)(& _IO_2_1_¡d”r_ )) ) 354 _IO_FILE * _IO_¡dš ©Œibu‹_hidd’ ; 355 _IO_FILE * _IO_¡dout ©Œibu‹_hidd’ ; 356 _IO_FILE * _IO_¡d”r ©Œibu‹_hidd’ ; 364  __ssize_t t__io_»ad_â (* t__cook› , * t__buf , tsize_t t__nby‹s ); 372  __ssize_t t__io_wr™e_â (* t__cook› , t__cÚ¡ * t__buf , 373 tsize_t t__n ); 381  t__io_£ek_â (* t__cook› , t_IO_off64_t * t__pos ,  t__w ); 384  t__io_þo£_â (* t__cook› ); 387 #ifdeà _GNU_SOURCE 389  __io_»ad_â tcook›_»ad_funùiÚ_t ; 390  __io_wr™e_â tcook›_wr™e_funùiÚ_t ; 391  __io_£ek_â tcook›_£ek_funùiÚ_t ; 392  __io_þo£_â tcook›_þo£_funùiÚ_t ; 397 __io_»ad_â * m»ad ; 398 __io_wr™e_â * mwr™e ; 399 __io_£ek_â * m£ek ; 400 __io_þo£_â * mþo£ ; 401 } t_IO_cook›_io_funùiÚs_t ; 402  _IO_cook›_io_funùiÚs_t tcook›_io_funùiÚs_t ; 404  g_IO_cook›_fže ; 407  _IO_cook›_š™ ( _IO_cook›_fže * __cfže ,  __»ad_wr™e , 408 * __cook› , _IO_cook›_io_funùiÚs_t __âs ); 412 #ifdeà __ýlu¥lus 416  __und”æow ( _IO_FILE *); 417  __uæow ( _IO_FILE *); 418  __ov”æow ( _IO_FILE *, ); 419 #ià defšed _LIBC || defšed _GLIBCPP_USE_WCHAR_T 420 _IO_wšt_t __wund”æow ( _IO_FILE *); 421 _IO_wšt_t __wuæow ( _IO_FILE *); 422 _IO_wšt_t __wov”æow ( _IO_FILE *, _IO_wint_t); 425 #ià __GNUC__ >= 3 426  #_IO_BE ( ex´ , »s è `__bužtš_ex³ù (Óx´),„es) ) 428  #_IO_BE ( ex´ , »s èÓx´) ) 431  #_IO_g‘c_uÆocked ( _å ) \ 432 ( `_IO_BE (( _å )-> _IO_»ad_±r >ð(_å)-> _IO_»ad_’d , 0) \ 433 ? `__uæow ( _å è: *(*è(_å)-> _IO_»ad_±r ++) ) 434  #_IO_³ekc_uÆocked ( _å ) \ 435 ( `_IO_BE (( _å )-> _IO_»ad_±r >ð(_å)-> _IO_»ad_’d , 0) \ 436 && `__und”æow ( _å è=ð EOF ? EOF \ 437 : *(*è( _å )-> _IO_»ad_±r ) ) 438  #_IO_putc_uÆocked ( _ch , _å ) \ 439 ( `_IO_BE (( _å )-> _IO_wr™e_±r >ð(_å)-> _IO_wr™e_’d , 0) \ 440 ? `__ov”æow ( _å , (è( _ch )) \ 441 : (è(*( _å )-> _IO_wr™e_±r ++ = ( _ch ))) ) 443 #ià defšed _LIBC || defšed _GLIBCPP_USE_WCHAR_T 444  #_IO_g‘wc_uÆocked ( _å ) \ 445 ( `_IO_BE (( _å )-> _wide_d©a -> _IO_»ad_±r >ð(_å)->_wide_d©a-> _IO_»ad_’d ,\ 447 ? `__wuæow ( _å è: ( _IO_wšt_t è*(_å)-> _wide_d©a -> _IO_»ad_±r ++) ) 448  #_IO_putwc_uÆocked ( _wch , _å ) \ 449 ( `_IO_BE (( _å )-> _wide_d©a -> _IO_wr™e_±r \ 450 >ð( _å )-> _wide_d©a -> _IO_wr™e_’d , 0) \ 451 ? `__wov”æow ( _å , _wch ) \ 452 : ( _IO_wšt_t è(*( _å )-> _wide_d©a -> _IO_wr™e_±r ++ = ( _wch ))) ) 455  #_IO_ãof_uÆocked ( __å è(((__å)-> _æags & _IO_EOF_SEEN è!ð0) ) 456  #_IO_ã¼Ü_uÆocked ( __å è(((__å)-> _æags & _IO_ERR_SEEN è!ð0) ) 458  _IO_g‘c ( _IO_FILE * __å ); 459  _IO_putc ( __c , _IO_FILE * __å ); 460  _IO_ãof ( _IO_FILE * __å è __THROW ; 461  _IO_ã¼Ü ( _IO_FILE * __å è __THROW ; 463  _IO_³ekc_locked ( _IO_FILE * __å ); 466  #_IO_PENDING_OUTPUT_COUNT ( _å ) \ 467 (( _å )-> _IO_wr™e_±r - (_å)-> _IO_wr™e_ba£ ) ) 469  _IO_æockfže ( _IO_FILE *è __THROW ; 470  _IO_fuÆockfže ( _IO_FILE *è __THROW ; 471  _IO_árylockfže ( _IO_FILE *è __THROW ; 473 #ifdeà _IO_MTSAFE_IO 474  #_IO_³ekc ( _å è `_IO_³ekc_locked (_å) ) 475  #_IO_æockfže ( _å ) \ 476 ià((( _å )-> _æags & _IO_USER_LOCK è=ð0è `_IO_æockfže (_å) ) 477  #_IO_fuÆockfže ( _å ) \ 478 ià((( _å )-> _æags & _IO_USER_LOCK è=ð0è `_IO_fuÆockfže (_å) ) 480  #_IO_³ekc ( _å è `_IO_³ekc_uÆocked (_å) ) 481  #_IO_æockfže ( _å è ) 482  #_IO_fuÆockfže ( _å è ) 483  #_IO_árylockfže ( _å è ) 484  #_IO_þ—nup_»giÚ_¡¬t ( _fù , _å è ) 485  #_IO_þ—nup_»giÚ_’d ( _Do™ è ) 488  _IO_vfsÿnf ( _IO_FILE * __»¡riù , const * __restrict, 489 _IO_va_li¡ , * __»¡riù ); 490  _IO_vårštf ( _IO_FILE * __»¡riù , const *__restrict, 491 _IO_va_li¡ ); 492 _IO_ssize_t _IO_·dn ( _IO_FILE *, , _IO_ssize_t); 493 _IO_size_t _IO_sg‘n ( _IO_FILE *, *, _IO_size_t); 495 _IO_off64_t _IO_£ekoff ( _IO_FILE *, _IO_off64_t, , ); 496 _IO_off64_t _IO_£ekpos ( _IO_FILE *, _IO_off64_t, ); 498  _IO_ä“_backup_¬— ( _IO_FILE *è __THROW ; 500 #ià defšed _LIBC || defšed _GLIBCPP_USE_WCHAR_T 501 _IO_wšt_t _IO_g‘wc ( _IO_FILE * __å ); 502 _IO_wšt_t _IO_putwc ( wch¬_t __wc , _IO_FILE * __å ); 503  _IO_fwide ( _IO_FILE * __å ,  __mode è __THROW ; 504 #ià __GNUC__ >= 2 507 #ià defšed _LIBC && defšed SHARED 508  ~ 509 #ià SHLIB_COMPAT ( libc , GLIBC_2_0 , GLIBC_2_1 ) 510  #_IO_fwide_maybe_šcom·tibË \ 511 ( `__bužtš_ex³ù (& _IO_¡dš_u£d =ð NULL , 0)) ) 512 cÚ¡  _IO_¡dš_u£d ; 513 w—k_ex‹º ( _IO_¡dš_u£d ); 516 #iâdeà _IO_fwide_maybe_šcom·tibË 517  #_IO_fwide_maybe_šcom·tibË (0) ) 521  #_IO_fwide ( __å , __mode ) \ 522 ({  __»suÉ = ( __mode ); \ 523 ià( __»suÉ < 0 && ! _IO_fwide_maybe_šcom·tibË ) \ 525 ià(( __å )-> _mode == 0) \ 527 ( __å )-> _mode = -1; \ 528 __»suÉ = ( __å )-> _mode ; \ 530 ià( `__bužtš_cÚ¡ªt_p ( __mode ) && (__mode) == 0) \ 531 __»suÉ = _IO_fwide_maybe_šcom·tibË ? -1 : ( __å )-> _mode ; \ 533 __»suÉ = `_IO_fwide ( __å , __result); \ 534 __»suÉ ; }) ) 537  _IO_vfwsÿnf ( _IO_FILE * __»¡riù , cÚ¡ wch¬_t * __restrict, 538 _IO_va_li¡ , * __»¡riù ); 539  _IO_vfw´štf ( _IO_FILE * __»¡riù , cÚ¡ wch¬_t *__restrict, 540 _IO_va_li¡ ); 541 _IO_ssize_t _IO_w·dn ( _IO_FILE *, wšt_t , _IO_ssize_t); 542  _IO_ä“_wbackup_¬— ( _IO_FILE *è __THROW ; 545 #ifdeà __LDBL_COMPAT 546  ~ 549 #ifdeà __ýlu¥lus @/usr/include/linux/prctl.h 1 #iâdeà _LINUX_PRCTL_H 2  #_LINUX_PRCTL_H ) 6  #PR_SET_PDEATHSIG 1 ) 7  #PR_GET_PDEATHSIG 2 ) 10  #PR_GET_DUMPABLE 3 ) 11  #PR_SET_DUMPABLE 4 ) 14  #PR_GET_UNALIGN 5 ) 15  #PR_SET_UNALIGN 6 ) 16  #PR_UNALIGN_NOPRINT 1 ) 17  #PR_UNALIGN_SIGBUS 2 ) 20  #PR_GET_KEEPCAPS 7 ) 21  #PR_SET_KEEPCAPS 8 ) 24  #PR_GET_FPEMU 9 ) 25  #PR_SET_FPEMU 10 ) 26  #PR_FPEMU_NOPRINT 1 ) 27  #PR_FPEMU_SIGFPE 2 ) 30  #PR_GET_FPEXC 11 ) 31  #PR_SET_FPEXC 12 ) 32  #PR_FP_EXC_SW_ENABLE 0x80 ) 33  #PR_FP_EXC_DIV 0x010000 ) 34  #PR_FP_EXC_OVF 0x020000 ) 35  #PR_FP_EXC_UND 0x040000 ) 36  #PR_FP_EXC_RES 0x080000 ) 37  #PR_FP_EXC_INV 0x100000 ) 38  #PR_FP_EXC_DISABLED 0 ) 39  #PR_FP_EXC_NONRECOV 1 ) 40  #PR_FP_EXC_ASYNC 2 ) 41  #PR_FP_EXC_PRECISE 3 ) 45  #PR_GET_TIMING 13 ) 46  #PR_SET_TIMING 14 ) 47  #PR_TIMING_STATISTICAL 0 ) 49  #PR_TIMING_TIMESTAMP 1 ) 52  #PR_SET_NAME 15 ) 53  #PR_GET_NAME 16 ) 56  #PR_GET_ENDIAN 19 ) 57  #PR_SET_ENDIAN 20 ) 58  #PR_ENDIAN_BIG 0 ) 59  #PR_ENDIAN_LITTLE 1 ) 60  #PR_ENDIAN_PPC_LITTLE 2 ) 63  #PR_GET_SECCOMP 21 ) 64  #PR_SET_SECCOMP 22 ) 67  #PR_CAPBSET_READ 23 ) 68  #PR_CAPBSET_DROP 24 ) @/usr/include/openssl/bio.h 59 #iâdeà HEADER_BIO_H 60  #HEADER_BIO_H ) 62  ~<Ý’s¦/e_os2.h > 64 #iâdeà OPENSSL_NO_FP_API 65  ~<¡dio.h > 67  ~<¡d¬g.h > 69  ~<Ý’s¦/üy±o.h > 71 #ifdeà __ýlu¥lus 76  #BIO_TYPE_NONE 0 ) 77  #BIO_TYPE_MEM (1|0x0400) ) 78  #BIO_TYPE_FILE (2|0x0400) ) 80  #BIO_TYPE_FD (4|0x0400|0x0100) ) 81  #BIO_TYPE_SOCKET (5|0x0400|0x0100) ) 82  #BIO_TYPE_NULL (6|0x0400) ) 83  #BIO_TYPE_SSL (7|0x0200) ) 84  #BIO_TYPE_MD (8|0x0200è ) 85  #BIO_TYPE_BUFFER (9|0x0200è ) 86  #BIO_TYPE_CIPHER (10|0x0200è ) 87  #BIO_TYPE_BASE64 (11|0x0200è ) 88  #BIO_TYPE_CONNECT (12|0x0400|0x0100è ) 89  #BIO_TYPE_ACCEPT (13|0x0400|0x0100è ) 90  #BIO_TYPE_PROXY_CLIENT (14|0x0200è ) 91  #BIO_TYPE_PROXY_SERVER (15|0x0200è ) 92  #BIO_TYPE_NBIO_TEST (16|0x0200è ) 93  #BIO_TYPE_NULL_FILTER (17|0x0200) ) 94  #BIO_TYPE_BER (18|0x0200è ) 95  #BIO_TYPE_BIO (19|0x0400è ) 96  #BIO_TYPE_LINEBUFFER (20|0x0200è ) 97  #BIO_TYPE_DGRAM (21|0x0400|0x0100) ) 99  #BIO_TYPE_DESCRIPTOR 0x0100 ) 100  #BIO_TYPE_FILTER 0x0200 ) 101  #BIO_TYPE_SOURCE_SINK 0x0400 ) 105  #BIO_NOCLOSE 0x00 ) 106  #BIO_CLOSE 0x01 ) 110  #BIO_CTRL_RESET 1 ) 111  #BIO_CTRL_EOF 2 ) 112  #BIO_CTRL_INFO 3 ) 113  #BIO_CTRL_SET 4 ) 114  #BIO_CTRL_GET 5 ) 115  #BIO_CTRL_PUSH 6 ) 116  #BIO_CTRL_POP 7 ) 117  #BIO_CTRL_GET_CLOSE 8 ) 118  #BIO_CTRL_SET_CLOSE 9 ) 119  #BIO_CTRL_PENDING 10 ) 120  #BIO_CTRL_FLUSH 11 ) 121  #BIO_CTRL_DUP 12 ) 122  #BIO_CTRL_WPENDING 13 ) 124  #BIO_CTRL_SET_CALLBACK 14 ) 125  #BIO_CTRL_GET_CALLBACK 15 ) 127  #BIO_CTRL_SET_FILENAME 30 ) 130  #BIO_CTRL_DGRAM_CONNECT 31 ) 131  #BIO_CTRL_DGRAM_SET_CONNECTED 32 ) 134  #BIO_CTRL_DGRAM_SET_RECV_TIMEOUT 33 ) 135  #BIO_CTRL_DGRAM_GET_RECV_TIMEOUT 34 ) 136  #BIO_CTRL_DGRAM_SET_SEND_TIMEOUT 35 ) 137  #BIO_CTRL_DGRAM_GET_SEND_TIMEOUT 36 ) 139  #BIO_CTRL_DGRAM_GET_RECV_TIMER_EXP 37 ) 140  #BIO_CTRL_DGRAM_GET_SEND_TIMER_EXP 38 ) 143  #BIO_CTRL_DGRAM_MTU_DISCOVER 39 ) 146  #BIO_CTRL_DGRAM_QUERY_MTU 40 ) 147  #BIO_CTRL_DGRAM_GET_MTU 41 ) 148  #BIO_CTRL_DGRAM_SET_MTU 42 ) 153  #BIO_CTRL_DGRAM_MTU_EXCEEDED 43 ) 158  #BIO_CTRL_DGRAM_SET_PEER 44 ) 162  #BIO_FP_READ 0x02 ) 163  #BIO_FP_WRITE 0x04 ) 164  #BIO_FP_APPEND 0x08 ) 165  #BIO_FP_TEXT 0x10 ) 167  #BIO_FLAGS_READ 0x01 ) 168  #BIO_FLAGS_WRITE 0x02 ) 169  #BIO_FLAGS_IO_SPECIAL 0x04 ) 170  #BIO_FLAGS_RWS ( BIO_FLAGS_READ | BIO_FLAGS_WRITE | BIO_FLAGS_IO_SPECIAL ) ) 171  #BIO_FLAGS_SHOULD_RETRY 0x08 ) 172 #iâdef BIO_FLAGS_UPLINK 175  #BIO_FLAGS_UPLINK 0 ) 179  #BIO_GHBN_CTRL_HITS 1 ) 180  #BIO_GHBN_CTRL_MISSES 2 ) 181  #BIO_GHBN_CTRL_CACHE_SIZE 3 ) 182  #BIO_GHBN_CTRL_GET_ENTRY 4 ) 183  #BIO_GHBN_CTRL_FLUSH 5 ) 192  #BIO_FLAGS_BASE64_NO_NL 0x100 ) 197  #BIO_FLAGS_MEM_RDONLY 0x200 ) 199  bio_¡ tBIO ; 201  BIO_£t_æags ( BIO * b ,  æags ); 202  BIO_‹¡_æags (cÚ¡ BIO * b ,  æags ); 203  BIO_þ—r_æags ( BIO * b ,  æags ); 205  #BIO_g‘_æags ( b è `BIO_‹¡_æags (b, ~(0x0)) ) 206  #BIO_£t_»Œy_¥ecŸl ( b ) \ 207 `BIO_£t_æags ( b , ( BIO_FLAGS_IO_SPECIAL | BIO_FLAGS_SHOULD_RETRY )) ) 208  #BIO_£t_»Œy_»ad ( b ) \ 209 `BIO_£t_æags ( b , ( BIO_FLAGS_READ | BIO_FLAGS_SHOULD_RETRY )) ) 210  #BIO_£t_»Œy_wr™e ( b ) \ 211 `BIO_£t_æags ( b , ( BIO_FLAGS_WRITE | BIO_FLAGS_SHOULD_RETRY )) ) 214  #BIO_þ—r_»Œy_æags ( b ) \ 215 `BIO_þ—r_æags ( b , ( BIO_FLAGS_RWS | BIO_FLAGS_SHOULD_RETRY )) ) 216  #BIO_g‘_»Œy_æags ( b ) \ 217 `BIO_‹¡_æags ( b , ( BIO_FLAGS_RWS | BIO_FLAGS_SHOULD_RETRY )) ) 220  #BIO_should_»ad ( a è `BIO_‹¡_æags ×, BIO_FLAGS_READ ) ) 221  #BIO_should_wr™e ( a è `BIO_‹¡_æags ×, BIO_FLAGS_WRITE ) ) 222  #BIO_should_io_¥ecŸl ( a è `BIO_‹¡_æags ×, BIO_FLAGS_IO_SPECIAL ) ) 223  #BIO_»Œy_ty³ ( a è `BIO_‹¡_æags ×, BIO_FLAGS_RWS ) ) 224  #BIO_should_»Œy ( a è `BIO_‹¡_æags ×, BIO_FLAGS_SHOULD_RETRY ) ) 232  #BIO_RR_SSL_X509_LOOKUP 0x01 ) 234  #BIO_RR_CONNECT 0x02 ) 236  #BIO_RR_ACCEPT 0x03 ) 239  #BIO_CB_FREE 0x01 ) 240  #BIO_CB_READ 0x02 ) 241  #BIO_CB_WRITE 0x03 ) 242  #BIO_CB_PUTS 0x04 ) 243  #BIO_CB_GETS 0x05 ) 244  #BIO_CB_CTRL 0x06 ) 248  #BIO_CB_RETURN 0x80 ) 249  #BIO_CB_»tuº ( a è(×)| BIO_CB_RETURN )) ) 250  #BIO_cb_´e ( a è(!(×)& BIO_CB_RETURN )) ) 251  #BIO_cb_po¡ ( a è(×)& BIO_CB_RETURN ) ) 253 (* BIO_g‘_ÿÎback (cÚ¡ BIO * b )è( bio_¡ *,,const *,, ,); 254  BIO_£t_ÿÎback ( BIO * b , 255 (* ÿÎback )( bio_¡ *,,const *,, ,)); 256 * BIO_g‘_ÿÎback_¬g (cÚ¡ BIO * b ); 257  BIO_£t_ÿÎback_¬g ( BIO * b , * ¬g ); 259 cÚ¡ * BIO_m‘hod_Çme (cÚ¡ BIO * b ); 260  BIO_m‘hod_ty³ (cÚ¡ BIO * b ); 262  tbio_šfo_cb ( tbio_¡ *, , const *, , , ); 264 #iâdeà OPENSSL_SYS_WIN16 265  sbio_m‘hod_¡ 267  ty³ ; 268 cÚ¡ * Çme ; 269 (* bwr™e )( BIO *, const *, ); 270 (* b»ad )( BIO *, *, ); 271 (* bputs )( BIO *, const *); 272 (* bg‘s )( BIO *, *, ); 273 (* ù¾ )( BIO *, , , *); 274 (* ü—‹ )( BIO *); 275 (* de¡roy )( BIO *); 276 (* ÿÎback_ù¾ )( BIO *, , bio_šfo_cb *); 277 } tBIO_METHOD ; 279  sbio_m‘hod_¡ 281  ty³ ; 282 cÚ¡ * Çme ; 283 ( _çr * bwr™e )(); 284 ( _çr * b»ad )(); 285 ( _çr * bputs )(); 286 ( _çr * bg‘s )(); 287 ( _çr * ù¾ )(); 288 ( _çr * ü—‹ )(); 289 ( _çr * de¡roy )(); 290 ( _çr * ÿÎback_ù¾ )(); 291 } tBIO_METHOD ; 294  sbio_¡ 296 BIO_METHOD * m‘hod ; 298 (* ÿÎback )( bio_¡ *,,const *,, ,); 299 * cb_¬g ; 301  š™ ; 302  shutdown ; 303  æags ; 304  »Œy_»asÚ ; 305  num ; 306 * ±r ; 307  bio_¡ * Ãxt_bio ; 308  bio_¡ * ´ev_bio ; 309  »ã»nûs ; 310  num_»ad ; 311  num_wr™e ; 313 CRYPTO_EX_DATA ex_d©a ; 316 DECLARE_STACK_OF ( BIO ) 318  sbio_f_bufãr_ùx_¡ruù 321  ibuf_size ; 322  obuf_size ; 324 * ibuf ; 325  ibuf_Ën ; 326  ibuf_off ; 328 * obuf ; 329  obuf_Ën ; 330  obuf_off ; 331 } tBIO_F_BUFFER_CTX ; 334  #BIO_CONN_S_BEFORE 1 ) 335  #BIO_CONN_S_GET_IP 2 ) 336  #BIO_CONN_S_GET_PORT 3 ) 337  #BIO_CONN_S_CREATE_SOCKET 4 ) 338  #BIO_CONN_S_CONNECT 5 ) 339  #BIO_CONN_S_OK 6 ) 340  #BIO_CONN_S_BLOCKED_CONNECT 7 ) 341  #BIO_CONN_S_NBIO 8 ) 344  #BIO_C_SET_CONNECT 100 ) 345  #BIO_C_DO_STATE_MACHINE 101 ) 346  #BIO_C_SET_NBIO 102 ) 347  #BIO_C_SET_PROXY_PARAM 103 ) 348  #BIO_C_SET_FD 104 ) 349  #BIO_C_GET_FD 105 ) 350  #BIO_C_SET_FILE_PTR 106 ) 351  #BIO_C_GET_FILE_PTR 107 ) 352  #BIO_C_SET_FILENAME 108 ) 353  #BIO_C_SET_SSL 109 ) 354  #BIO_C_GET_SSL 110 ) 355  #BIO_C_SET_MD 111 ) 356  #BIO_C_GET_MD 112 ) 357  #BIO_C_GET_CIPHER_STATUS 113 ) 358  #BIO_C_SET_BUF_MEM 114 ) 359  #BIO_C_GET_BUF_MEM_PTR 115 ) 360  #BIO_C_GET_BUFF_NUM_LINES 116 ) 361  #BIO_C_SET_BUFF_SIZE 117 ) 362  #BIO_C_SET_ACCEPT 118 ) 363  #BIO_C_SSL_MODE 119 ) 364  #BIO_C_GET_MD_CTX 120 ) 365  #BIO_C_GET_PROXY_PARAM 121 ) 366  #BIO_C_SET_BUFF_READ_DATA 122 ) 367  #BIO_C_GET_CONNECT 123 ) 368  #BIO_C_GET_ACCEPT 124 ) 369  #BIO_C_SET_SSL_RENEGOTIATE_BYTES 125 ) 370  #BIO_C_GET_SSL_NUM_RENEGOTIATES 126 ) 371  #BIO_C_SET_SSL_RENEGOTIATE_TIMEOUT 127 ) 372  #BIO_C_FILE_SEEK 128 ) 373  #BIO_C_GET_CIPHER_CTX 129 ) 374  #BIO_C_SET_BUF_MEM_EOF_RETURN 130 ) 375  #BIO_C_SET_BIND_MODE 131 ) 376  #BIO_C_GET_BIND_MODE 132 ) 377  #BIO_C_FILE_TELL 133 ) 378  #BIO_C_GET_SOCKS 134 ) 379  #BIO_C_SET_SOCKS 135 ) 381  #BIO_C_SET_WRITE_BUF_SIZE 136 ) 382  #BIO_C_GET_WRITE_BUF_SIZE 137 ) 383  #BIO_C_MAKE_BIO_PAIR 138 ) 384  #BIO_C_DESTROY_BIO_PAIR 139 ) 385  #BIO_C_GET_WRITE_GUARANTEE 140 ) 386  #BIO_C_GET_READ_REQUEST 141 ) 387  #BIO_C_SHUTDOWN_WR 142 ) 388  #BIO_C_NREAD0 143 ) 389  #BIO_C_NREAD 144 ) 390  #BIO_C_NWRITE0 145 ) 391  #BIO_C_NWRITE 146 ) 392  #BIO_C_RESET_READ_REQUEST 147 ) 393  #BIO_C_SET_MD_CTX 148 ) 396  #BIO_£t_­p_d©a ( s , ¬g è `BIO_£t_ex_d©a (s,0,¬g) ) 397  #BIO_g‘_­p_d©a ( s è `BIO_g‘_ex_d©a (s,0) ) 400  #BIO_£t_cÚn_ho¡Çme ( b , Çme è `BIO_ù¾ (b, BIO_C_SET_CONNECT ,0,(*êame) ) 401  #BIO_£t_cÚn_pÜt ( b , pÜt è `BIO_ù¾ (b, BIO_C_SET_CONNECT ,1,(*íÜt) ) 402  #BIO_£t_cÚn_ ( b , è `BIO_ù¾ (b, BIO_C_SET_CONNECT ,2,(*)) ) 403  #BIO_£t_cÚn_št_pÜt ( b , pÜt è `BIO_ù¾ (b, BIO_C_SET_CONNECT ,3,(*íÜt) ) 404  #BIO_g‘_cÚn_ho¡Çme ( b è `BIO_±r_ù¾ (b, BIO_C_GET_CONNECT ,0) ) 405  #BIO_g‘_cÚn_pÜt ( b è `BIO_±r_ù¾ (b, BIO_C_GET_CONNECT ,1) ) 406  #BIO_g‘_cÚn_ ( b è `BIO_±r_ù¾ (b, BIO_C_GET_CONNECT ,2) ) 407  #BIO_g‘_cÚn_št_pÜt ( b è `BIO_št_ù¾ (b, BIO_C_GET_CONNECT ,3) ) 410  #BIO_£t_nbio ( b , n è `BIO_ù¾ (b, BIO_C_SET_NBIO ,Ò), NULL ) ) 413  #BIO_£t_acû±_pÜt ( b , Çme è `BIO_ù¾ (b, BIO_C_SET_ACCEPT ,0,(*êame) ) 414  #BIO_g‘_acû±_pÜt ( b è `BIO_±r_ù¾ (b, BIO_C_GET_ACCEPT ,0) ) 416  #BIO_£t_nbio_acû± ( b , n è `BIO_ù¾ (b, BIO_C_SET_ACCEPT ,1,Ò)?"a": NULL ) ) 417  #BIO_£t_acû±_bios ( b , bio è `BIO_ù¾ (b, BIO_C_SET_ACCEPT ,2,(*)bio) ) 419  #BIO_BIND_NORMAL 0 ) 420  #BIO_BIND_REUSEADDR_IF_UNUSED 1 ) 421  #BIO_BIND_REUSEADDR 2 ) 422  #BIO_£t_bšd_mode ( b , mode è `BIO_ù¾ (b, BIO_C_SET_BIND_MODE ,mode, NULL ) ) 423  #BIO_g‘_bšd_mode ( b , mode è `BIO_ù¾ (b, BIO_C_GET_BIND_MODE ,0, NULL ) ) 425  #BIO_do_cÚÃù ( b è `BIO_do_hªdshake (b) ) 426  #BIO_do_acû± ( b è `BIO_do_hªdshake (b) ) 427  #BIO_do_hªdshake ( b è `BIO_ù¾ (b, BIO_C_DO_STATE_MACHINE ,0, NULL ) ) 430  #BIO_£t_u¾ ( b , u¾ è `BIO_ù¾ (b, BIO_C_SET_PROXY_PARAM ,0,(*)(u¾)) ) 431  #BIO_£t_´ox›s ( b , p è `BIO_ù¾ (b, BIO_C_SET_PROXY_PARAM ,1,(*)Õ)) ) 433  #BIO_£t_fž‹r_bio ( b , s è `BIO_ù¾ (b, BIO_C_SET_PROXY_PARAM ,2,(*)(s)) ) 435  #BIO_£t_´oxy_cb ( b , cb è `BIO_ÿÎback_ù¾ (b, BIO_C_SET_PROXY_PARAM ,3,(*(*cb)())) ) 436  #BIO_£t_´oxy_h—d” ( b , sk è `BIO_ù¾ (b, BIO_C_SET_PROXY_PARAM ,4,(*)sk) ) 437  #BIO_£t_no_cÚÃù_»tuº ( b , boÞ è `BIO_št_ù¾ (b, BIO_C_SET_PROXY_PARAM ,5,boÞ) ) 439  #BIO_g‘_´oxy_h—d” ( b , skp è `BIO_ù¾ (b, BIO_C_GET_PROXY_PARAM ,0,(*)skp) ) 440  #BIO_g‘_´ox›s ( b , pxy_p è `BIO_ù¾ (b, BIO_C_GET_PROXY_PARAM ,1,(*)Õxy_p)) ) 441  #BIO_g‘_u¾ ( b , u¾ è `BIO_ù¾ (b, BIO_C_GET_PROXY_PARAM ,2,(*)(u¾)) ) 442  #BIO_g‘_no_cÚÃù_»tuº ( b è `BIO_ù¾ (b, BIO_C_GET_PROXY_PARAM ,5, NULL ) ) 444  #BIO_£t_fd ( b , fd , c è `BIO_št_ù¾ (b, BIO_C_SET_FD ,c,fd) ) 445  #BIO_g‘_fd ( b , c è `BIO_ù¾ (b, BIO_C_GET_FD ,0,(*)c) ) 447  #BIO_£t_å ( b , å , c è `BIO_ù¾ (b, BIO_C_SET_FILE_PTR ,c,(*)å) ) 448  #BIO_g‘_å ( b , åp è `BIO_ù¾ (b, BIO_C_GET_FILE_PTR ,0,(*)åp) ) 450  #BIO_£ek ( b , ofs è() `BIO_ù¾ (b, BIO_C_FILE_SEEK ,ofs, NULL ) ) 451  #BIO_‹Î ( b è() `BIO_ù¾ (b, BIO_C_FILE_TELL ,0, NULL ) ) 455 #ifdeà CONST_STRICT 459  BIO_»ad_fž’ame ( BIO * b ,cÚ¡ * Çme ); 461  #BIO_»ad_fž’ame ( b , Çme è `BIO_ù¾ (b, BIO_C_SET_FILENAME , \ 462 BIO_CLOSE | BIO_FP_READ ,(*) Çme ) ) 464  #BIO_wr™e_fž’ame ( b , Çme è `BIO_ù¾ (b, BIO_C_SET_FILENAME , \ 465 BIO_CLOSE | BIO_FP_WRITE , Çme ) ) 466  #BIO_­³nd_fž’ame ( b , Çme è `BIO_ù¾ (b, BIO_C_SET_FILENAME , \ 467 BIO_CLOSE | BIO_FP_APPEND , Çme ) ) 468  #BIO_rw_fž’ame ( b , Çme è `BIO_ù¾ (b, BIO_C_SET_FILENAME , \ 469 BIO_CLOSE | BIO_FP_READ | BIO_FP_WRITE , Çme ) ) 475  #BIO_£t_s¦ ( b , s¦ , c è `BIO_ù¾ (b, BIO_C_SET_SSL ,c,(*)s¦) ) 476  #BIO_g‘_s¦ ( b , s¦p è `BIO_ù¾ (b, BIO_C_GET_SSL ,0,(*)s¦p) ) 477  #BIO_£t_s¦_mode ( b , þ›Á è `BIO_ù¾ (b, BIO_C_SSL_MODE ,þ›Á, NULL ) ) 478  #BIO_£t_s¦_»ÃgÙŸ‹_by‹s ( b , num ) \ 479 `BIO_ù¾ ( b , BIO_C_SET_SSL_RENEGOTIATE_BYTES , num , NULL ); ) 480  #BIO_g‘_num_»ÃgÙŸ‹s ( b ) \ 481 `BIO_ù¾ ( b , BIO_C_GET_SSL_NUM_RENEGOTIATES ,0, NULL ); ) 482  #BIO_£t_s¦_»ÃgÙŸ‹_timeout ( b , £cÚds ) \ 483 `BIO_ù¾ ( b , BIO_C_SET_SSL_RENEGOTIATE_TIMEOUT , £cÚds , NULL ); ) 488  #BIO_g‘_mem_d©a ( b , µ è `BIO_ù¾ (b, BIO_CTRL_INFO ,0,(*íp) ) 489  #BIO_£t_mem_buf ( b , bm , c è `BIO_ù¾ (b, BIO_C_SET_BUF_MEM ,c,(*)bm) ) 490  #BIO_g‘_mem_±r ( b , µ è `BIO_ù¾ (b, BIO_C_GET_BUF_MEM_PTR ,0,(*íp) ) 491  #BIO_£t_mem_eof_»tuº ( b , v ) \ 492 `BIO_ù¾ ( b , BIO_C_SET_BUF_MEM_EOF_RETURN , v , NULL ) ) 495  #BIO_g‘_bufãr_num_lšes ( b è `BIO_ù¾ (b, BIO_C_GET_BUFF_NUM_LINES ,0, NULL ) ) 496  #BIO_£t_bufãr_size ( b , size è `BIO_ù¾ (b, BIO_C_SET_BUFF_SIZE ,size, NULL ) ) 497  #BIO_£t_»ad_bufãr_size ( b , size è `BIO_št_ù¾ (b, BIO_C_SET_BUFF_SIZE ,size,0) ) 498  #BIO_£t_wr™e_bufãr_size ( b , size è `BIO_št_ù¾ (b, BIO_C_SET_BUFF_SIZE ,size,1) ) 499  #BIO_£t_bufãr_»ad_d©a ( b , buf , num è `BIO_ù¾ (b, BIO_C_SET_BUFF_READ_DATA ,num,buf) ) 502  #BIO_dup_¡©e ( b , »t è `BIO_ù¾ (b, BIO_CTRL_DUP ,0,(*)Ô‘)) ) 504  #BIO_»£t ( b è() `BIO_ù¾ (b, BIO_CTRL_RESET ,0, NULL ) ) 505  #BIO_eof ( b è() `BIO_ù¾ (b, BIO_CTRL_EOF ,0, NULL ) ) 506  #BIO_£t_þo£ ( b , c è() `BIO_ù¾ (b, BIO_CTRL_SET_CLOSE ,(c), NULL ) ) 507  #BIO_g‘_þo£ ( b è() `BIO_ù¾ (b, BIO_CTRL_GET_CLOSE ,0, NULL ) ) 508  #BIO_³ndšg ( b è() `BIO_ù¾ (b, BIO_CTRL_PENDING ,0, NULL ) ) 509  #BIO_w³ndšg ( b è() `BIO_ù¾ (b, BIO_CTRL_WPENDING ,0, NULL ) ) 511 size_t BIO_ù¾_³ndšg ( BIO * b ); 512 size_t BIO_ù¾_w³ndšg ( BIO * b ); 513  #BIO_æush ( b è() `BIO_ù¾ (b, BIO_CTRL_FLUSH ,0, NULL ) ) 514  #BIO_g‘_šfo_ÿÎback ( b , cbp è() `BIO_ù¾ (b, BIO_CTRL_GET_CALLBACK ,0, \ 515 cbp ) ) 516  #BIO_£t_šfo_ÿÎback ( b , cb è() `BIO_ÿÎback_ù¾ (b, BIO_CTRL_SET_CALLBACK ,cb) ) 519  #BIO_bufãr_g‘_num_lšes ( b è `BIO_ù¾ (b, BIO_CTRL_GET ,0, NULL ) ) 522  #BIO_£t_wr™e_buf_size ( b , size è() `BIO_ù¾ (b, BIO_C_SET_WRITE_BUF_SIZE ,size, NULL ) ) 523  #BIO_g‘_wr™e_buf_size ( b , size è( size_t ) `BIO_ù¾ (b, BIO_C_GET_WRITE_BUF_SIZE ,size, NULL ) ) 524  #BIO_make_bio_·œ ( b1 , b2 è() `BIO_ù¾ (b1, BIO_C_MAKE_BIO_PAIR ,0,b2) ) 525  #BIO_de¡roy_bio_·œ ( b è() `BIO_ù¾ (b, BIO_C_DESTROY_BIO_PAIR ,0, NULL ) ) 526  #BIO_shutdown_wr ( b è() `BIO_ù¾ (b, BIO_C_SHUTDOWN_WR , 0, NULL ) ) 528  #BIO_g‘_wr™e_gu¬ª‹e ( b è() `BIO_ù¾ (b, BIO_C_GET_WRITE_GUARANTEE ,0, NULL ) ) 529  #BIO_g‘_»ad_»que¡ ( b è() `BIO_ù¾ (b, BIO_C_GET_READ_REQUEST ,0, NULL ) ) 530 size_t BIO_ù¾_g‘_wr™e_gu¬ª‹e ( BIO * b ); 531 size_t BIO_ù¾_g‘_»ad_»que¡ ( BIO * b ); 532  BIO_ù¾_»£t_»ad_»que¡ ( BIO * b ); 535  #BIO_ù¾_dg¿m_cÚÃù ( b , ³” ) \ 536 () `BIO_ù¾ ( b , BIO_CTRL_DGRAM_CONNECT ,0, (*) ³” ) ) 537  #BIO_ù¾_£t_cÚÃùed ( b , ¡©e , ³” ) \ 538 () `BIO_ù¾ ( b , BIO_CTRL_DGRAM_SET_CONNECTED , ¡©e , (*) ³” ) ) 539  #BIO_dg¿m_»cv_timedout ( b ) \ 540 () `BIO_ù¾ ( b , BIO_CTRL_DGRAM_GET_RECV_TIMER_EXP , 0, NULL ) ) 541  #BIO_dg¿m_£nd_timedout ( b ) \ 542 () `BIO_ù¾ ( b , BIO_CTRL_DGRAM_GET_SEND_TIMER_EXP , 0, NULL ) ) 543  #BIO_dg¿m_£t_³” ( b , ³” ) \ 544 () `BIO_ù¾ ( b , BIO_CTRL_DGRAM_SET_PEER , 0, (*) ³” ) ) 549  BIO_£t_ex_d©a ( BIO * bio , idx ,* d©a ); 550 * BIO_g‘_ex_d©a ( BIO * bio , idx ); 551  BIO_g‘_ex_Ãw_šdex ( ¬gl , * ¬gp , CRYPTO_EX_Ãw * Ãw_func , 552 CRYPTO_EX_dup * dup_func , CRYPTO_EX_ä“ * ä“_func ); 553  BIO_numb”_»ad ( BIO * bio ); 554  BIO_numb”_wr™‹n ( BIO * bio ); 556 #iâdeà OPENSSL_NO_FP_API 557 #ià defšed ( OPENSSL_SYS_WIN16 è&& defšed( _WINDLL ) 558 BIO_METHOD * BIO_s_fže_š‹º® (); 559 BIO * BIO_Ãw_fže_š‹º® (* fž’ame , * mode ); 560 BIO * BIO_Ãw_å_š‹º® ( FILE * ¡»am ,  þo£_æag ); 561  #BIO_s_fže BIO_s_fže_š‹º® ) 562  #BIO_Ãw_fže BIO_Ãw_fže_š‹º® ) 563  #BIO_Ãw_å BIO_Ãw_å_š‹º® ) 565 BIO_METHOD * BIO_s_fže (); 566 BIO * BIO_Ãw_fže (cÚ¡ * fž’ame , cÚ¡ * mode ); 567 BIO * BIO_Ãw_å ( FILE * ¡»am ,  þo£_æag ); 568  #BIO_s_fže_š‹º® BIO_s_fže ) 569  #BIO_Ãw_fže_š‹º® BIO_Ãw_fže ) 570  #BIO_Ãw_å_š‹º® BIO_s_fže ) 573 BIO * BIO_Ãw ( BIO_METHOD * ty³ ); 574  BIO_£t ( BIO * a , BIO_METHOD * ty³ ); 575  BIO_ä“ ( BIO * a ); 576  BIO_vä“ ( BIO * a ); 577  BIO_»ad ( BIO * b , * d©a ,  Ën ); 578  BIO_g‘s ( BIO * bp ,* buf ,  size ); 579  BIO_wr™e ( BIO * b , cÚ¡ * d©a ,  Ën ); 580  BIO_puts ( BIO * bp ,cÚ¡ * buf ); 581  BIO_šd’t ( BIO * b , šd’t , max ); 582  BIO_ù¾ ( BIO * bp , cmd , Ïrg ,* ·rg ); 583  BIO_ÿÎback_ù¾ ( BIO * b ,  cmd , (* å )( bio_¡ *, , const *, , , )); 584 * BIO_±r_ù¾ ( BIO * bp , cmd , Ïrg ); 585  BIO_št_ù¾ ( BIO * bp , cmd , Ïrg , Ÿrg ); 586 BIO * BIO_push (BIO * b ,BIO * ­³nd ); 587 BIO * BIO_pÝ (BIO * b ); 588  BIO_ä“_®l ( BIO * a ); 589 BIO * BIO_fšd_ty³ (BIO * b , bio_ty³ ); 590 BIO * BIO_Ãxt (BIO * b ); 591 BIO * BIO_g‘_»Œy_BIO (BIO * bio , * »asÚ ); 592  BIO_g‘_»Œy_»asÚ ( BIO * bio ); 593 BIO * BIO_dup_chaš (BIO * š ); 595  BIO_Ä—d0 ( BIO * bio , ** buf ); 596  BIO_Ä—d ( BIO * bio , ** buf ,  num ); 597  BIO_nwr™e0 ( BIO * bio , ** buf ); 598  BIO_nwr™e ( BIO * bio , ** buf ,  num ); 600 #iâdeà OPENSSL_SYS_WIN16 601  BIO_debug_ÿÎback ( BIO * bio , cmd ,cÚ¡ * ¬gp , ¬gi , 602  ¬gl , »t ); 604  _çr _lßdds BIO_debug_ÿÎback ( BIO * bio , cmd ,cÚ¡ * ¬gp , ¬gi , 605  ¬gl , »t ); 608 BIO_METHOD * BIO_s_mem (); 609 BIO * BIO_Ãw_mem_buf (* buf ,  Ën ); 610 BIO_METHOD * BIO_s_sock‘ (); 611 BIO_METHOD * BIO_s_cÚÃù (); 612 BIO_METHOD * BIO_s_acû± (); 613 BIO_METHOD * BIO_s_fd (); 614 #iâdeà OPENSSL_SYS_OS2 615 BIO_METHOD * BIO_s_log (); 617 BIO_METHOD * BIO_s_bio (); 618 BIO_METHOD * BIO_s_nuÎ (); 619 BIO_METHOD * BIO_f_nuÎ (); 620 BIO_METHOD * BIO_f_bufãr (); 621 #ifdeà OPENSSL_SYS_VMS 622 BIO_METHOD * BIO_f_lšebufãr (); 624 BIO_METHOD * BIO_f_nbio_‹¡ (); 625 #iâdeà OPENSSL_NO_DGRAM 626 BIO_METHOD * BIO_s_d©ag¿m (); 631  BIO_sock_should_»Œy ( i ); 632  BIO_sock_nÚ_çl_”rÜ ( ”rÜ ); 633  BIO_dg¿m_nÚ_çl_”rÜ ( ”rÜ ); 635  BIO_fd_should_»Œy ( i ); 636  BIO_fd_nÚ_çl_”rÜ ( ”rÜ ); 637  BIO_dump_cb ((* cb )(cÚ¡ * d©a , size_t Ën , * u ), 638 * u , cÚ¡ * s ,  Ën ); 639  BIO_dump_šd’t_cb ((* cb )(cÚ¡ * d©a , size_t Ën , * u ), 640 * u , cÚ¡ * s ,  Ën ,  šd’t ); 641  BIO_dump ( BIO * b ,cÚ¡ * by‹s , Ën ); 642  BIO_dump_šd’t ( BIO * b ,cÚ¡ * by‹s , Ën , šd’t ); 643 #iâdeà OPENSSL_NO_FP_API 644  BIO_dump_å ( FILE * å , cÚ¡ * s ,  Ën ); 645  BIO_dump_šd’t_å ( FILE * å , cÚ¡ * s ,  Ën ,  šd’t ); 647  ho¡’t * BIO_g‘ho¡byÇme (cÚ¡ * Çme ); 656  BIO_sock_”rÜ ( sock ); 657  BIO_sock‘_ioùl ( fd ,  ty³ , * ¬g ); 658  BIO_sock‘_nbio ( fd , mode ); 659  BIO_g‘_pÜt (cÚ¡ * ¡r , * pÜt_±r ); 660  BIO_g‘_ho¡_ (cÚ¡ * ¡r , * ); 661  BIO_g‘_acû±_sock‘ (* ho¡_pÜt , mode ); 662  BIO_acû± ( sock ,** _pÜt ); 663  BIO_sock_š™ (); 664  BIO_sock_þ—nup (); 665  BIO_£t_tý_nd–ay ( sock , tuº_Ú ); 667 BIO * BIO_Ãw_sock‘ ( sock ,  þo£_æag ); 668 BIO * BIO_Ãw_dg¿m ( fd ,  þo£_æag ); 669 BIO * BIO_Ãw_fd ( fd ,  þo£_æag ); 670 BIO * BIO_Ãw_cÚÃù (* ho¡_pÜt ); 671 BIO * BIO_Ãw_acû± (* ho¡_pÜt ); 673  BIO_Ãw_bio_·œ ( BIO ** bio1 , size_t wr™ebuf1 , 674 BIO ** bio2 , size_t wr™ebuf2 ); 680  BIO_cÝy_Ãxt_»Œy ( BIO * b ); 684 #ifdeà __GNUC__ 685  #__bio_h__©Œ__ __©Œibu‹__ ) 687  #__bio_h__©Œ__ ( x ) ) 689  BIO_´štf ( BIO * bio , cÚ¡ * fÜm© , ...) 690 __bio_h__©Œ__ (( __fÜm©__ ( __´štf__ ,2,3))); 691  BIO_v´štf ( BIO * bio , cÚ¡ * fÜm© , va_li¡ ¬gs ) 692 __bio_h__©Œ__ (( __fÜm©__ ( __´štf__ ,2,0))); 693  BIO_¢´štf (* buf , size_t n , cÚ¡ * fÜm© , ...) 694 __bio_h__©Œ__ (( __fÜm©__ ( __´štf__ ,3,4))); 695  BIO_v¢´štf (* buf , size_t n , cÚ¡ * fÜm© , va_li¡ ¬gs ) 696 __bio_h__©Œ__ (( __fÜm©__ ( __´štf__ ,3,0))); 697 #undeà __bio_h__©Œ__ 703  ERR_lßd_BIO_¡ršgs (); 708  #BIO_F_ACPT_STATE 100 ) 709  #BIO_F_BIO_ACCEPT 101 ) 710  #BIO_F_BIO_BER_GET_HEADER 102 ) 711  #BIO_F_BIO_CALLBACK_CTRL 131 ) 712  #BIO_F_BIO_CTRL 103 ) 713  #BIO_F_BIO_GETHOSTBYNAME 120 ) 714  #BIO_F_BIO_GETS 104 ) 715  #BIO_F_BIO_GET_ACCEPT_SOCKET 105 ) 716  #BIO_F_BIO_GET_HOST_IP 106 ) 717  #BIO_F_BIO_GET_PORT 107 ) 718  #BIO_F_BIO_MAKE_PAIR 121 ) 719  #BIO_F_BIO_NEW 108 ) 720  #BIO_F_BIO_NEW_FILE 109 ) 721  #BIO_F_BIO_NEW_MEM_BUF 126 ) 722  #BIO_F_BIO_NREAD 123 ) 723  #BIO_F_BIO_NREAD0 124 ) 724  #BIO_F_BIO_NWRITE 125 ) 725  #BIO_F_BIO_NWRITE0 122 ) 726  #BIO_F_BIO_PUTS 110 ) 727  #BIO_F_BIO_READ 111 ) 728  #BIO_F_BIO_SOCK_INIT 112 ) 729  #BIO_F_BIO_WRITE 113 ) 730  #BIO_F_BUFFER_CTRL 114 ) 731  #BIO_F_CONN_CTRL 127 ) 732  #BIO_F_CONN_STATE 115 ) 733  #BIO_F_FILE_CTRL 116 ) 734  #BIO_F_FILE_READ 130 ) 735  #BIO_F_LINEBUFFER_CTRL 129 ) 736  #BIO_F_MEM_READ 128 ) 737  #BIO_F_MEM_WRITE 117 ) 738  #BIO_F_SSL_NEW 118 ) 739  #BIO_F_WSASTARTUP 119 ) 742  #BIO_R_ACCEPT_ERROR 100 ) 743  #BIO_R_BAD_FOPEN_MODE 101 ) 744  #BIO_R_BAD_HOSTNAME_LOOKUP 102 ) 745  #BIO_R_BROKEN_PIPE 124 ) 746  #BIO_R_CONNECT_ERROR 103 ) 747  #BIO_R_EOF_ON_MEMORY_BIO 127 ) 748  #BIO_R_ERROR_SETTING_NBIO 104 ) 749  #BIO_R_ERROR_SETTING_NBIO_ON_ACCEPTED_SOCKET 105 ) 750  #BIO_R_ERROR_SETTING_NBIO_ON_ACCEPT_SOCKET 106 ) 751  #BIO_R_GETHOSTBYNAME_ADDR_IS_NOT_AF_INET 107 ) 752  #BIO_R_INVALID_ARGUMENT 125 ) 753  #BIO_R_INVALID_IP_ADDRESS 108 ) 754  #BIO_R_IN_USE 123 ) 755  #BIO_R_KEEPALIVE 109 ) 756  #BIO_R_NBIO_CONNECT_ERROR 110 ) 757  #BIO_R_NO_ACCEPT_PORT_SPECIFIED 111 ) 758  #BIO_R_NO_HOSTNAME_SPECIFIED 112 ) 759  #BIO_R_NO_PORT_DEFINED 113 ) 760  #BIO_R_NO_PORT_SPECIFIED 114 ) 761  #BIO_R_NO_SUCH_FILE 128 ) 762  #BIO_R_NULL_PARAMETER 115 ) 763  #BIO_R_TAG_MISMATCH 116 ) 764  #BIO_R_UNABLE_TO_BIND_SOCKET 117 ) 765  #BIO_R_UNABLE_TO_CREATE_SOCKET 118 ) 766  #BIO_R_UNABLE_TO_LISTEN_SOCKET 119 ) 767  #BIO_R_UNINITIALIZED 120 ) 768  #BIO_R_UNSUPPORTED_METHOD 121 ) 769  #BIO_R_WRITE_TO_READ_ONLY_BIO 126 ) 770  #BIO_R_WSASTARTUP 122 ) 772 #ifdeà __ýlu¥lus @/usr/include/openssl/buffer.h 59 #iâdeà HEADER_BUFFER_H 60  #HEADER_BUFFER_H ) 62  ~<Ý’s¦/os¦_typ.h > 64 #ifdeà __ýlu¥lus 68  ~<¡ddef.h > 70 #ià! defšed ( NO_SYS_TYPES_H ) 71  ~ 77  sbuf_mem_¡ 79  Ëngth ; 80 * d©a ; 81  max ; 84 BUF_MEM * BUF_MEM_Ãw (); 85  BUF_MEM_ä“ ( BUF_MEM * a ); 86  BUF_MEM_grow ( BUF_MEM * ¡r ,  Ën ); 87  BUF_MEM_grow_þ—n ( BUF_MEM * ¡r ,  Ën ); 88 * BUF_¡rdup (cÚ¡ * ¡r ); 89 * BUF_¡ºdup (cÚ¡ * ¡r , size_t siz ); 90 * BUF_memdup (cÚ¡ * d©a , size_t siz ); 93 size_t BUF_¡¾ýy (* d¡ ,cÚ¡ * ¤c ,size_ˆ siz ); 94 size_t BUF_¡¾ÿt (* d¡ ,cÚ¡ * ¤c ,size_ˆ siz ); 101  ERR_lßd_BUF_¡ršgs (); 106  #BUF_F_BUF_MEMDUP 103 ) 107  #BUF_F_BUF_MEM_GROW 100 ) 108  #BUF_F_BUF_MEM_GROW_CLEAN 105 ) 109  #BUF_F_BUF_MEM_NEW 101 ) 110  #BUF_F_BUF_STRDUP 102 ) 111  #BUF_F_BUF_STRNDUP 104 ) 115 #ifdeà __ýlu¥lus @/usr/include/openssl/comp.h 2 #iâdeà HEADER_COMP_H 3  #HEADER_COMP_H ) 5  ~<Ý’s¦/üy±o.h > 7 #ifdeà __ýlu¥lus 11  comp_ùx_¡ tCOMP_CTX ; 13  scomp_m‘hod_¡ 15  ty³ ; 16 cÚ¡ * Çme ; 17 (* š™ )( COMP_CTX * ùx ); 18 (* fšish )( COMP_CTX * ùx ); 19 (* com´ess )( COMP_CTX * ùx , 20 * out ,  Þ’ , 21 * š ,  ž’ ); 22 (* ex·nd )( COMP_CTX * ùx , 23 * out ,  Þ’ , 24 * š ,  ž’ ); 26 (* ù¾ )(); 27 (* ÿÎback_ù¾ )(); 28 } tCOMP_METHOD ; 30  scomp_ùx_¡ 32 COMP_METHOD * m‘h ; 33  com´ess_š ; 34  com´ess_out ; 35  ex·nd_š ; 36  ex·nd_out ; 38 CRYPTO_EX_DATA ex_d©a ; 42 COMP_CTX * COMP_CTX_Ãw ( COMP_METHOD * m‘h ); 43  COMP_CTX_ä“ ( COMP_CTX * ùx ); 44  COMP_com´ess_block ( COMP_CTX * ùx , * out ,  Þ’ , 45 * š ,  ž’ ); 46  COMP_ex·nd_block ( COMP_CTX * ùx , * out ,  Þ’ , 47 * š ,  ž’ ); 48 COMP_METHOD * COMP_¾e (); 49 COMP_METHOD * COMP_zlib (); 55  ERR_lßd_COMP_¡ršgs (); 63 #ifdeà __ýlu¥lus @/usr/include/openssl/crypto.h 117 #iâdeà HEADER_CRYPTO_H 118  #HEADER_CRYPTO_H ) 120  ~<¡dlib.h > 122  ~<Ý’s¦/e_os2.h > 124 #iâdeà OPENSSL_NO_FP_API 125  ~<¡dio.h > 128  ~<Ý’s¦/¡ack.h > 129  ~<Ý’s¦/§ã¡ack.h > 130  ~<Ý’s¦/Ý’s¦v.h > 131  ~<Ý’s¦/os¦_typ.h > 133 #ifdeà CHARSET_EBCDIC 134  ~<Ý’s¦/ebcdic.h > 139  ~<Ý’s¦/symhacks.h > 141 #ifdeà __ýlu¥lus 148  #SSLEAY_VERSION_NUMBER OPENSSL_VERSION_NUMBER ) 149  #SSLEAY_VERSION 0 ) 151  #SSLEAY_CFLAGS 2 ) 152  #SSLEAY_BUILT_ON 3 ) 153  #SSLEAY_PLATFORM 4 ) 154  #SSLEAY_DIR 5 ) 158  üy±o_ex_d©a_¡ tCRYPTO_EX_DATA ; 160  tCRYPTO_EX_Ãw (* t·»Á , * t±r , tCRYPTO_EX_DATA * tad , 161  tidx ,  t¬gl , * t¬gp ); 163  tCRYPTO_EX_ä“ (* t·»Á , * t±r , tCRYPTO_EX_DATA * tad , 164  tidx ,  t¬gl , * t¬gp ); 166  tCRYPTO_EX_dup ( tCRYPTO_EX_DATA * tto , CRYPTO_EX_DATA * täom , * täom_d , 167  tidx ,  t¬gl , * t¬gp ); 171  sÝ’s¦_™em_¡ 173  code ; 174 * v®ue ; 175 size_t v®ue_size ; 176 size_t * v®ue_Ëngth ; 177 } tOPENSSL_ITEM ; 184  #CRYPTO_LOCK_ERR 1 ) 185  #CRYPTO_LOCK_EX_DATA 2 ) 186  #CRYPTO_LOCK_X509 3 ) 187  #CRYPTO_LOCK_X509_INFO 4 ) 188  #CRYPTO_LOCK_X509_PKEY 5 ) 189  #CRYPTO_LOCK_X509_CRL 6 ) 190  #CRYPTO_LOCK_X509_REQ 7 ) 191  #CRYPTO_LOCK_DSA 8 ) 192  #CRYPTO_LOCK_RSA 9 ) 193  #CRYPTO_LOCK_EVP_PKEY 10 ) 194  #CRYPTO_LOCK_X509_STORE 11 ) 195  #CRYPTO_LOCK_SSL_CTX 12 ) 196  #CRYPTO_LOCK_SSL_CERT 13 ) 197  #CRYPTO_LOCK_SSL_SESSION 14 ) 198  #CRYPTO_LOCK_SSL_SESS_CERT 15 ) 199  #CRYPTO_LOCK_SSL 16 ) 200  #CRYPTO_LOCK_SSL_METHOD 17 ) 201  #CRYPTO_LOCK_RAND 18 ) 202  #CRYPTO_LOCK_RAND2 19 ) 203  #CRYPTO_LOCK_MALLOC 20 ) 204  #CRYPTO_LOCK_BIO 21 ) 205  #CRYPTO_LOCK_GETHOSTBYNAME 22 ) 206  #CRYPTO_LOCK_GETSERVBYNAME 23 ) 207  #CRYPTO_LOCK_READDIR 24 ) 208  #CRYPTO_LOCK_RSA_BLINDING 25 ) 209  #CRYPTO_LOCK_DH 26 ) 210  #CRYPTO_LOCK_MALLOC2 27 ) 211  #CRYPTO_LOCK_DSO 28 ) 212  #CRYPTO_LOCK_DYNLOCK 29 ) 213  #CRYPTO_LOCK_ENGINE 30 ) 214  #CRYPTO_LOCK_UI 31 ) 215  #CRYPTO_LOCK_ECDSA 32 ) 216  #CRYPTO_LOCK_EC 33 ) 217  #CRYPTO_LOCK_ECDH 34 ) 218  #CRYPTO_LOCK_BN 35 ) 219  #CRYPTO_LOCK_EC_PRE_COMP 36 ) 220  #CRYPTO_LOCK_STORE 37 ) 221  #CRYPTO_LOCK_COMP 38 ) 222  #CRYPTO_NUM_LOCKS 39 ) 224  #CRYPTO_LOCK 1 ) 225  #CRYPTO_UNLOCK 2 ) 226  #CRYPTO_READ 4 ) 227  #CRYPTO_WRITE 8 ) 229 #iâdeà OPENSSL_NO_LOCKING 230 #iâdeà CRYPTO_w_lock 231  #CRYPTO_w_lock ( ty³ ) \ 232 `CRYPTO_lock ( CRYPTO_LOCK | CRYPTO_WRITE , ty³ , __FILE__ , __LINE__ ) ) 233  #CRYPTO_w_uÆock ( ty³ ) \ 234 `CRYPTO_lock ( CRYPTO_UNLOCK | CRYPTO_WRITE , ty³ , __FILE__ , __LINE__ ) ) 235  #CRYPTO_r_lock ( ty³ ) \ 236 `CRYPTO_lock ( CRYPTO_LOCK | CRYPTO_READ , ty³ , __FILE__ , __LINE__ ) ) 237  #CRYPTO_r_uÆock ( ty³ ) \ 238 `CRYPTO_lock ( CRYPTO_UNLOCK | CRYPTO_READ , ty³ , __FILE__ , __LINE__ ) ) 239  #CRYPTO_add ( addr , amouÁ , ty³ ) \ 240 `CRYPTO_add_lock ( addr , amouÁ , ty³ , __FILE__ , __LINE__ ) ) 243  #CRYPTO_w_lock ( a ) ) 244  #CRYPTO_w_uÆock ( a ) ) 245  #CRYPTO_r_lock ( a ) ) 246  #CRYPTO_r_uÆock ( a ) ) 247  #CRYPTO_add ( a , b , c è((*×))+=(b)) ) 256  »ã»nûs ; 257  CRYPTO_dyÆock_v®ue * d©a ; 258 } tCRYPTO_dyÆock ; 264  #CRYPTO_MEM_CHECK_OFF 0x0 ) 265  #CRYPTO_MEM_CHECK_ON 0x1 ) 266  #CRYPTO_MEM_CHECK_ENABLE 0x2 ) 267  #CRYPTO_MEM_CHECK_DISABLE 0x3 ) 273  #V_CRYPTO_MDEBUG_TIME 0x1 ) 275  #V_CRYPTO_MDEBUG_THREAD 0x2 ) 277  #V_CRYPTO_MDEBUG_ALL ( V_CRYPTO_MDEBUG_TIME | V_CRYPTO_MDEBUG_THREAD ) ) 281  bio_¡ tBIO_dummy ; 283  süy±o_ex_d©a_¡ 285 STACK * sk ; 286  dummy ; 292  süy±o_ex_d©a_func_¡ 294  ¬gl ; 295 * ¬gp ; 296 CRYPTO_EX_Ãw * Ãw_func ; 297 CRYPTO_EX_ä“ * ä“_func ; 298 CRYPTO_EX_dup * dup_func ; 299 } tCRYPTO_EX_DATA_FUNCS ; 301 DECLARE_STACK_OF ( CRYPTO_EX_DATA_FUNCS ) 307  #CRYPTO_EX_INDEX_BIO 0 ) 308  #CRYPTO_EX_INDEX_SSL 1 ) 309  #CRYPTO_EX_INDEX_SSL_CTX 2 ) 310  #CRYPTO_EX_INDEX_SSL_SESSION 3 ) 311  #CRYPTO_EX_INDEX_X509_STORE 4 ) 312  #CRYPTO_EX_INDEX_X509_STORE_CTX 5 ) 313  #CRYPTO_EX_INDEX_RSA 6 ) 314  #CRYPTO_EX_INDEX_DSA 7 ) 315  #CRYPTO_EX_INDEX_DH 8 ) 316  #CRYPTO_EX_INDEX_ENGINE 9 ) 317  #CRYPTO_EX_INDEX_X509 10 ) 318  #CRYPTO_EX_INDEX_UI 11 ) 319  #CRYPTO_EX_INDEX_ECDSA 12 ) 320  #CRYPTO_EX_INDEX_ECDH 13 ) 321  #CRYPTO_EX_INDEX_COMP 14 ) 322  #CRYPTO_EX_INDEX_STORE 15 ) 326  #CRYPTO_EX_INDEX_USER 100 ) 333  #CRYPTO_m®loc_š™ (è `CRYPTO_£t_mem_funùiÚs (\ 334 m®loc , »®loc , ä“ ) ) 336 #ià defšed CRYPTO_MDEBUG_ALL || defšed CRYPTO_MDEBUG_TIME || defšed CRYPTO_MDEBUG_THREAD 337 #iâdeà CRYPTO_MDEBUG 338  #CRYPTO_MDEBUG ) 344  #CRYPTO_m®loc_debug_š™ () do {\ 345 `CRYPTO_£t_mem_debug_funùiÚs (\ 346 CRYPTO_dbg_m®loc ,\ 347 CRYPTO_dbg_»®loc ,\ 348 CRYPTO_dbg_ä“ ,\ 349 CRYPTO_dbg_£t_ÝtiÚs ,\ 350 CRYPTO_dbg_g‘_ÝtiÚs );\ 351 } 0) ) 353  CRYPTO_mem_ù¾ ( mode ); 354  CRYPTO_is_mem_check_Ú (); 357  #MemCheck_¡¬t (è `CRYPTO_mem_ù¾ ( CRYPTO_MEM_CHECK_ON ) ) 358  #MemCheck_¡Ý (è `CRYPTO_mem_ù¾ ( CRYPTO_MEM_CHECK_OFF ) ) 361  #MemCheck_Ú (è `CRYPTO_mem_ù¾ ( CRYPTO_MEM_CHECK_ENABLE ) ) 362  #MemCheck_off (è `CRYPTO_mem_ù¾ ( CRYPTO_MEM_CHECK_DISABLE ) ) 363  #is_MemCheck_Ú (è `CRYPTO_is_mem_check_Ú () ) 365  #OPENSSL_m®loc ( num è `CRYPTO_m®loc ((êum, __FILE__ , __LINE__ ) ) 366  #OPENSSL_»®loc ( addr , num ) \ 367 `CRYPTO_»®loc ((*) addr ,() num , __FILE__ , __LINE__ ) ) 368  #OPENSSL_»®loc_þ—n ( addr , Þd_num , num ) \ 369 `CRYPTO_»®loc_þ—n ( addr , Þd_num , num , __FILE__ , __LINE__ ) ) 370  #OPENSSL_»m®loc ( addr , num ) \ 371 `CRYPTO_»m®loc ((**) addr ,() num , __FILE__ , __LINE__ ) ) 372  #OPENSSL_ä“Func CRYPTO_ä“ ) 373  #OPENSSL_ä“ ( addr è `CRYPTO_ä“ ×ddr) ) 375  #OPENSSL_m®loc_locked ( num ) \ 376 `CRYPTO_m®loc_locked (() num , __FILE__ , __LINE__ ) ) 377  #OPENSSL_ä“_locked ( addr è `CRYPTO_ä“_locked ×ddr) ) 380 cÚ¡ * SSL—y_v”siÚ ( ty³ ); 381  SSL—y (); 383  OPENSSL_is£tugid (); 386  ¡_CRYPTO_EX_DATA_IMPL tCRYPTO_EX_DATA_IMPL ; 388 cÚ¡ CRYPTO_EX_DATA_IMPL * CRYPTO_g‘_ex_d©a_im¶em’tiÚ (); 390  CRYPTO_£t_ex_d©a_im¶em’tiÚ (cÚ¡ CRYPTO_EX_DATA_IMPL * i ); 392  CRYPTO_ex_d©a_Ãw_þass (); 394  CRYPTO_g‘_ex_Ãw_šdex ( þass_šdex ,  ¬gl , * ¬gp , 395 CRYPTO_EX_Ãw * Ãw_func , CRYPTO_EX_dup * dup_func , 396 CRYPTO_EX_ä“ * ä“_func ); 399  CRYPTO_Ãw_ex_d©a ( þass_šdex , * obj , CRYPTO_EX_DATA * ad ); 400  CRYPTO_dup_ex_d©a ( þass_šdex , CRYPTO_EX_DATA * to , 401 CRYPTO_EX_DATA * äom ); 402  CRYPTO_ä“_ex_d©a ( þass_šdex , * obj , CRYPTO_EX_DATA * ad ); 405  CRYPTO_£t_ex_d©a ( CRYPTO_EX_DATA * ad ,  idx , * v® ); 406 * CRYPTO_g‘_ex_d©a (cÚ¡ CRYPTO_EX_DATA * ad , idx ); 409  CRYPTO_þ—nup_®l_ex_d©a (); 411  CRYPTO_g‘_Ãw_lockid (* Çme ); 413  CRYPTO_num_locks (); 414  CRYPTO_lock ( mode ,  ty³ ,cÚ¡ * fže , lše ); 415  CRYPTO_£t_lockšg_ÿÎback ((* func )( mode , ty³ , 416 cÚ¡ * fže , lše )); 417 (* CRYPTO_g‘_lockšg_ÿÎback ())( mode , ty³ ,cÚ¡ * fže , 418  lše ); 419  CRYPTO_£t_add_lock_ÿÎback ((* func )(* num , mouÁ , ty³ , 420 cÚ¡ * fže ,  lše )); 421 (* CRYPTO_g‘_add_lock_ÿÎback ())(* num , mouÁ , ty³ , 422 cÚ¡ * fže , lše ); 423  CRYPTO_£t_id_ÿÎback ((* func )()); 424 (* CRYPTO_g‘_id_ÿÎback ())(); 425  CRYPTO_th»ad_id (); 426 cÚ¡ * CRYPTO_g‘_lock_Çme ( ty³ ); 427  CRYPTO_add_lock (* poš‹r , amouÁ , ty³ , cÚ¡ * fže , 428  lše ); 430  CRYPTO_g‘_Ãw_dyÆockid (); 431  CRYPTO_de¡roy_dyÆockid ( i ); 432  CRYPTO_dyÆock_v®ue * CRYPTO_g‘_dyÆock_v®ue ( i ); 433  CRYPTO_£t_dyÆock_ü—‹_ÿÎback ( CRYPTO_dyÆock_v®ue *(* dyn_ü—‹_funùiÚ )(cÚ¡ * fže ,  lše )); 434  CRYPTO_£t_dyÆock_lock_ÿÎback ((* dyn_lock_funùiÚ )( mode ,  CRYPTO_dyÆock_v®ue * l , cÚ¡ * fže ,  lše )); 435  CRYPTO_£t_dyÆock_de¡roy_ÿÎback ((* dyn_de¡roy_funùiÚ )( CRYPTO_dyÆock_v®ue * l , cÚ¡ * fže ,  lše )); 436  CRYPTO_dyÆock_v®ue *(* CRYPTO_g‘_dyÆock_ü—‹_ÿÎback ())(cÚ¡ * fže , lše ); 437 (* CRYPTO_g‘_dyÆock_lock_ÿÎback ())( mode ,  CRYPTO_dyÆock_v®ue * l , cÚ¡ * fže , lše ); 438 (* CRYPTO_g‘_dyÆock_de¡roy_ÿÎback ())( CRYPTO_dyÆock_v®ue * l , cÚ¡ * fže , lše ); 442  CRYPTO_£t_mem_funùiÚs (*(* m )( size_t ),*(* r )(*,size_t), (* f )(*)); 443  CRYPTO_£t_locked_mem_funùiÚs (*(* m )( size_t ), (* ä“_func )(*)); 444  CRYPTO_£t_mem_ex_funùiÚs (*(* m )( size_t ,const *,), 445 *(* r )(*, size_t ,const *,), 446 (* f )(*)); 447  CRYPTO_£t_locked_mem_ex_funùiÚs (*(* m )( size_t ,const *,), 448 (* ä“_func )(*)); 449  CRYPTO_£t_mem_debug_funùiÚs ((* m )(*,,const *,,), 450 (* r )(*,*,,const *,,), 451 (* f )(*,), 452 (* so )(), 453 (* go )()); 454  CRYPTO_g‘_mem_funùiÚs (*(** m )( size_t ),*(** r )(*, size_t), (** f )(*)); 455  CRYPTO_g‘_locked_mem_funùiÚs (*(** m )( size_t ), (** f )(*)); 456  CRYPTO_g‘_mem_ex_funùiÚs (*(** m )( size_t ,const *,), 457 *(** r )(*, size_t ,const *,), 458 (** f )(*)); 459  CRYPTO_g‘_locked_mem_ex_funùiÚs (*(** m )( size_t ,const *,), 460 (** f )(*)); 461  CRYPTO_g‘_mem_debug_funùiÚs ((** m )(*,,const *,,), 462 (** r )(*,*,,const *,,), 463 (** f )(*,), 464 (** so )(), 465 (** go )()); 467 * CRYPTO_m®loc_locked ( num , cÚ¡ * fže ,  lše ); 468  CRYPTO_ä“_locked (*); 469 * CRYPTO_m®loc ( num , cÚ¡ * fže ,  lše ); 470  CRYPTO_ä“ (*); 471 * CRYPTO_»®loc (* addr , num , cÚ¡ * fže ,  lše ); 472 * CRYPTO_»®loc_þ—n (* addr , Þd_num , num ,cÚ¡ * fže , 473  lše ); 474 * CRYPTO_»m®loc (* addr , num , cÚ¡ * fže ,  lše ); 476  OPENSSL_þ—n£ (* ±r , size_t Ën ); 478  CRYPTO_£t_mem_debug_ÝtiÚs ( b™s ); 479  CRYPTO_g‘_mem_debug_ÝtiÚs (); 481  #CRYPTO_push_šfo ( šfo ) \ 482 `CRYPTO_push_šfo_ ( šfo , __FILE__ , __LINE__ ); ) 483  CRYPTO_push_šfo_ (cÚ¡ * šfo , cÚ¡ * fže ,  lše ); 484  CRYPTO_pÝ_šfo (); 485  CRYPTO_»move_®l_šfo (); 495  CRYPTO_dbg_m®loc (* addr , num ,cÚ¡ * fže , lše , befÜe_p ); 496  CRYPTO_dbg_»®loc (* addr1 ,* addr2 , num ,cÚ¡ * fže , lše , befÜe_p ); 497  CRYPTO_dbg_ä“ (* addr , befÜe_p ); 506  CRYPTO_dbg_£t_ÝtiÚs ( b™s ); 507  CRYPTO_dbg_g‘_ÝtiÚs (); 510 #iâdeà OPENSSL_NO_FP_API 511  CRYPTO_mem_Ëaks_å ( FILE *); 513  CRYPTO_mem_Ëaks ( bio_¡ * bio ); 515 * tCRYPTO_MEM_LEAK_CB (, const *, , , *); 516  CRYPTO_mem_Ëaks_cb ( CRYPTO_MEM_LEAK_CB * cb ); 519  O³nSSLD› (cÚ¡ * fže , lše ,cÚ¡ * as£¹iÚ ); 520  #OPENSSL_as£¹ ( e è()(Óè? 0 : ( `O³nSSLD› ( __FILE__ , __LINE__ , #e),1)) ) 522 * OPENSSL_Ÿ32ÿp_loc (); 523  #OPENSSL_Ÿ32ÿp (*( `OPENSSL_Ÿ32ÿp_loc ())) ) 529  ERR_lßd_CRYPTO_¡ršgs (); 534  #CRYPTO_F_CRYPTO_GET_EX_NEW_INDEX 100 ) 535  #CRYPTO_F_CRYPTO_GET_NEW_DYNLOCKID 103 ) 536  #CRYPTO_F_CRYPTO_GET_NEW_LOCKID 101 ) 537  #CRYPTO_F_CRYPTO_SET_EX_DATA 102 ) 538  #CRYPTO_F_DEF_ADD_INDEX 104 ) 539  #CRYPTO_F_DEF_GET_CLASS 105 ) 540  #CRYPTO_F_INT_DUP_EX_DATA 106 ) 541  #CRYPTO_F_INT_FREE_EX_DATA 107 ) 542  #CRYPTO_F_INT_NEW_EX_DATA 108 ) 545  #CRYPTO_R_NO_DYNLOCK_CREATE_CALLBACK 100 ) 547 #ifdeà __ýlu¥lus @/usr/include/openssl/dtls1.h 60 #iâdeà HEADER_DTLS1_H 61  #HEADER_DTLS1_H ) 63  ~<Ý’s¦/bufãr.h > 64  ~<Ý’s¦/pqueue.h > 66 #ifdeà __ýlu¥lus 70  #DTLS1_VERSION 0xFEFF ) 71  #DTLS1_BAD_VER 0x0100 ) 73  #DTLS1_AD_MISSING_HANDSHAKE_MESSAGE 110 ) 76  #DTLS1_COOKIE_LENGTH 32 ) 78  #DTLS1_RT_HEADER_LENGTH 13 ) 80  #DTLS1_HM_HEADER_LENGTH 12 ) 82  #DTLS1_HM_BAD_FRAGMENT -2 ) 83  #DTLS1_HM_FRAGMENT_RETRY -3 ) 85  #DTLS1_CCS_HEADER_LENGTH 1 ) 87  #DTLS1_AL_HEADER_LENGTH 7 ) 90  sdŽs1_b™m­_¡ 92 PQ_64BIT m­ ; 93  Ëngth ; 94 PQ_64BIT max_£q_num ; 95 } tDTLS1_BITMAP ; 97  shm_h—d”_¡ 99  ty³ ; 100  msg_Ën ; 101  £q ; 102  äag_off ; 103  äag_Ën ; 104  is_ccs ; 107  sccs_h—d”_¡ 109  ty³ ; 110  £q ; 113  sdŽs1_timeout_¡ 116  »ad_timeouts ; 119  wr™e_timeouts ; 122  num_®”ts ; 125  s»cÜd_pqueue_¡ 127  •och ; 128 pqueue q ; 129 } t»cÜd_pqueue ; 131  shm_äagm’t_¡ 133  hm_h—d”_¡ msg_h—d” ; 134 * äagm’t ; 135 } thm_äagm’t ; 137  sdŽs1_¡©e_¡ 139  £nd_cook› ; 140  cook› [ DTLS1_COOKIE_LENGTH ]; 141  rcvd_cook› [ DTLS1_COOKIE_LENGTH ]; 142  cook›_Ën ; 149  r_•och ; 150  w_•och ; 153 DTLS1_BITMAP b™m­ ; 156 DTLS1_BITMAP Ãxt_b™m­ ; 159  hªdshake_wr™e_£q ; 160  Ãxt_hªdshake_wr™e_£q ; 162  hªdshake_»ad_£q ; 165 »cÜd_pqueue uÅroûs£d_rcds ; 166 »cÜd_pqueue ´oûs£d_rcds ; 169 pqueue bufã»d_mes§ges ; 172 pqueue £Á_mes§ges ; 174  mtu ; 176  hm_h—d”_¡ w_msg_hdr ; 177  hm_h—d”_¡ r_msg_hdr ; 179  dŽs1_timeout_¡ timeout ; 183  ®”t_äagm’t [ DTLS1_AL_HEADER_LENGTH ]; 184  ®”t_äagm’t_Ën ; 185  hªdshake_äagm’t [ DTLS1_HM_HEADER_LENGTH ]; 186  hªdshake_äagm’t_Ën ; 188  »Œªsm™tšg ; 190 } tDTLS1_STATE ; 192  sdŽs1_»cÜd_d©a_¡ 194 * ·ck‘ ; 195  ·ck‘_Ëngth ; 196 SSL3_BUFFER rbuf ; 197 SSL3_RECORD ¼ec ; 198 } tDTLS1_RECORD_DATA ; 202  #DTLS1_TMO_READ_COUNT 2 ) 203  #DTLS1_TMO_WRITE_COUNT 2 ) 205  #DTLS1_TMO_ALERT_COUNT 12 ) 207 #ifdeà __ýlu¥lus @/usr/include/openssl/e_os2.h 56  ~<Ý’s¦/Ý’s¦cÚf.h > 58 #iâdeà HEADER_E_OS2_H 59  #HEADER_E_OS2_H ) 61 #ifdeà __ýlu¥lus 71  #OPENSSL_SYS_UNIX ) 74 #ià defšed ( __MWERKS__ è&& defšed( macštosh è|| defšed( OPENSSL_SYSNAME_MAC ) 75 #undeà OPENSSL_SYS_UNIX 76  #OPENSSL_SYS_MACINTOSH_CLASSIC ) 80 #ià defšed ( NETWARE è|| defšed( OPENSSL_SYSNAME_NETWARE ) 81 #undeà OPENSSL_SYS_UNIX 82  #OPENSSL_SYS_NETWARE ) 89 #ià defšed ( OPENSSL_SYSNAME_MSDOS ) 90 #undeà OPENSSL_SYS_UNIX 91  #OPENSSL_SYS_MSDOS ) 96 #ià defšed ( OPENSSL_SYSNAME_UWIN ) 97 #undeà OPENSSL_SYS_UNIX 98  #OPENSSL_SYS_WIN32_UWIN ) 100 #ià defšed ( __CYGWIN32__ è|| defšed( OPENSSL_SYSNAME_CYGWIN32 ) 101 #undeà OPENSSL_SYS_UNIX 102  #OPENSSL_SYS_WIN32_CYGWIN ) 104 #ià defšed ( _WIN32 è|| defšed( OPENSSL_SYSNAME_WIN32 ) 105 #undeà OPENSSL_SYS_UNIX 106  #OPENSSL_SYS_WIN32 ) 108 #ià defšed ( OPENSSL_SYSNAME_WINNT ) 109 #undeà OPENSSL_SYS_UNIX 110  #OPENSSL_SYS_WINNT ) 112 #ià defšed ( OPENSSL_SYSNAME_WINCE ) 113 #undeà OPENSSL_SYS_UNIX 114  #OPENSSL_SYS_WINCE ) 120 #ià defšed ( OPENSSL_SYS_WIN32 è|| defšed( OPENSSL_SYS_WINNT è|| defšed( OPENSSL_SYS_WINCE ) 121 #undeà OPENSSL_SYS_UNIX 122  #OPENSSL_SYS_WINDOWS ) 123 #iâdeà OPENSSL_SYS_MSDOS 124  #OPENSSL_SYS_MSDOS ) 131 #ifdeà OPENSSL_SYS_WINDOWS 132 #iâdeà OPENSSL_OPT_WINDLL 133 #ià defšed ( _WINDLL ) 135  #OPENSSL_OPT_WINDLL ) 141 #ià defšed ( __VMS è|| defšed( VMS è|| defšed( OPENSSL_SYSNAME_VMS ) 142 #undeà OPENSSL_SYS_UNIX 143  #OPENSSL_SYS_VMS ) 144 #ià defšed ( __DECC ) 145  #OPENSSL_SYS_VMS_DECC ) 146 #–ià defšed ( __DECCXX ) 147  #OPENSSL_SYS_VMS_DECC ) 148  #OPENSSL_SYS_VMS_DECCXX ) 150  #OPENSSL_SYS_VMS_NODECC ) 155 #ià defšed ( __EMX__ è|| defšed( __OS2__ ) 156 #undeà OPENSSL_SYS_UNIX 157  #OPENSSL_SYS_OS2 ) 161 #ifdeà OPENSSL_SYS_UNIX 162 #ià defšed ( lšux è|| defšed( __lšux__ è|| defšed( OPENSSL_SYSNAME_LINUX ) 163  #OPENSSL_SYS_LINUX ) 165 #ifdeà OPENSSL_SYSNAME_MPE 166  #OPENSSL_SYS_MPE ) 168 #ifdeà OPENSSL_SYSNAME_SNI 169  #OPENSSL_SYS_SNI ) 171 #ifdeà OPENSSL_SYSNAME_ULTRASPARC 172  #OPENSSL_SYS_ULTRASPARC ) 174 #ifdeà OPENSSL_SYSNAME_NEWS4 175  #OPENSSL_SYS_NEWS4 ) 177 #ifdeà OPENSSL_SYSNAME_MACOSX 178  #OPENSSL_SYS_MACOSX ) 180 #ifdeà OPENSSL_SYSNAME_MACOSX_RHAPSODY 181  #OPENSSL_SYS_MACOSX_RHAPSODY ) 182  #OPENSSL_SYS_MACOSX ) 184 #ifdeà OPENSSL_SYSNAME_SUNOS 185  #OPENSSL_SYS_SUNOS ) 187 #ià defšed ( _CRAY è|| defšed( OPENSSL_SYSNAME_CRAY ) 188  #OPENSSL_SYS_CRAY ) 190 #ià defšed ( _AIX è|| defšed( OPENSSL_SYSNAME_AIX ) 191  #OPENSSL_SYS_AIX ) 196 #ifdeà OPENSSL_SYSNAME_VOS 197  #OPENSSL_SYS_VOS ) 201 #ifdeà OPENSSL_SYSNAME_VXWORKS 202  #OPENSSL_SYS_VXWORKS ) 211 #ifdeà OPENSSL_SYS_MSDOS 212  #OPENSSL_UNISTD_IO < io . h > ) 213  #OPENSSL_DECLARE_EXIT  `ex™ (); ) 215  #OPENSSL_UNISTD_IO OPENSSL_UNISTD ) 216  #OPENSSL_DECLARE_EXIT ) 238 #ià defšed ( OPENSSL_SYS_VMS_NODECC ) 239  #OPENSSL_EXPORT glob®»f ) 240  #OPENSSL_IMPORT glob®»f ) 241  #OPENSSL_GLOBAL glob®def ) 242 #–ià defšed ( OPENSSL_SYS_WINDOWS è&& defšed( OPENSSL_OPT_WINDLL ) 243  #OPENSSL_EXPORT `__deþ¥ec ( dÎexpÜt ) ) 244  #OPENSSL_IMPORT `__deþ¥ec ( dÎimpÜt ) ) 245  #OPENSSL_GLOBAL ) 247  #OPENSSL_EXPORT ) 248  #OPENSSL_IMPORT ) 249  #OPENSSL_GLOBAL ) 251  #OPENSSL_EXTERN OPENSSL_IMPORT ) 263 #ifdeà OPENSSL_EXPORT_VAR_AS_FUNCTION 264  #OPENSSL_IMPLEMENT_GLOBAL ( ty³ , Çme ) \ 265 ty³ _hide_ ## Çme ; \ 266 ty³ * _shadow_ ## `Çme (è{  & _hide_ ## Çme ; } \ 267  ty³ _hide_ ## Çme ) 268  #OPENSSL_DECLARE_GLOBAL ( ty³ , Çme èty³ * _shadow_ ## `Çme () ) 269  #OPENSSL_GLOBAL_REF ( Çme è(*( _shadow_ ## `Çme ())) ) 271  #OPENSSL_IMPLEMENT_GLOBAL ( ty³ , Çme è OPENSSL_GLOBAL y³ _shadow_ ## ) name 272  #OPENSSL_DECLARE_GLOBAL ( ty³ , Çme è OPENSSL_EXPORT y³ _shadow_ ## ) name 273  #OPENSSL_GLOBAL_REF ( Çme è _shadow_ ## ) name 276 #ifdeà __ýlu¥lus @/usr/include/openssl/kssl.h 63 #iâdef KSSL_H 64  #KSSL_H ) 66  ~<Ý’s¦/Ý’s¦cÚf.h > 68 #iâdeà OPENSSL_NO_KRB5 70  ~<¡dio.h > 71  ~<ùy³.h > 72  ~ 74 #ifdeà __ýlu¥lus 82 #ifdeà KRB5_HEIMDAL 83  tkrb5_où‘ ; 84  #FAR ) 87 #iâdeà FAR 88  #FAR ) 99 #iâdef KRB5SVC 100  #KRB5SVC "ho¡" ) 103 #iâdef KRB5KEYTAB 104  #KRB5KEYTAB "/‘c/krb5.keyb" ) 107 #iâdeà KRB5SENDAUTH 108  #KRB5SENDAUTH 1 ) 111 #iâdeà KRB5CHECKAUTH 112  #KRB5CHECKAUTH 1 ) 115 #iâdeà KSSL_CLOCKSKEW 116  #KSSL_CLOCKSKEW 300; ) 119  #KSSL_ERR_MAX 255 ) 120  sks¦_”r_¡ { 121  g»asÚ ; 122  g‹xt [ KSSL_ERR_MAX +1]; 123 } tKSSL_ERR ; 130  sks¦_ùx_¡ 133 * g£rviû_Çme ; 134 * g£rviû_ho¡ ; 135 * gþ›Á_´šc ; 136 * gkeyb_fže ; 137 * güed_ÿche ; 138 krb5_’ùy³ g’ùy³ ; 139  gËngth ; 140 krb5_où‘ FAR * gkey ; 141 } tKSSL_CTX ; 143  #KSSL_CLIENT 1 ) 144  #KSSL_SERVER 2 ) 145  #KSSL_SERVICE 3 ) 146  #KSSL_KEYTAB 4 ) 148  #KSSL_CTX_OK 0 ) 149  #KSSL_CTX_ERR 1 ) 150  #KSSL_NOMEM 2 ) 153 krb5_”rÜ_code ks¦_ùx_£t¡ršg ( KSSL_CTX * ks¦_ùx ,  which , * ‹xt ); 154 KSSL_CTX * ks¦_ùx_Ãw (); 155 KSSL_CTX * ks¦_ùx_ä“ (KSSL_CTX * ks¦_ùx ); 156  ks¦_ùx_show ( KSSL_CTX * ks¦_ùx ); 157 krb5_”rÜ_code ks¦_ùx_£ršc ( KSSL_CTX * ks¦_ùx ,  which , 158 krb5_d©a * »®m , krb5_d©¨* ’t™y ,  ÃÁ™›s ); 159 krb5_”rÜ_code ks¦_cg‘_tkt ( KSSL_CTX * ks¦_ùx , krb5_d©a ** ’c_tk , 160 krb5_d©a * auth’p , KSSL_ERR * ks¦_”r ); 161 krb5_”rÜ_code ks¦_sg‘_tkt ( KSSL_CTX * ks¦_ùx , krb5_d©a * šd©a , 162 krb5_tick‘_times * ‰imes , KSSL_ERR * ks¦_”r ); 163 krb5_”rÜ_code ks¦_ùx_£tkey ( KSSL_CTX * ks¦_ùx , krb5_keyblock * £ssiÚ ); 164  ks¦_”r_£t ( KSSL_ERR * ks¦_”r ,  »asÚ , * ‹xt ); 165  ks¦_krb5_ä“_d©a_cÚ‹Ás ( krb5_cÚ‹xt cÚ‹xt , krb5_d©a * d©a ); 166 krb5_”rÜ_code ks¦_bužd_´šc®_2 ( krb5_cÚ‹xt cÚ‹xt , 167 krb5_´šc® * ´šc ,  ¾’ , cÚ¡ * »®m , 168  ¦’ , cÚ¡ * svc ,  hËn , cÚ¡ * ho¡ ); 169 krb5_”rÜ_code ks¦_v®id©e_times ( krb5_time¡amp ©ime , 170 krb5_tick‘_times * ‰imes ); 171 krb5_”rÜ_code ks¦_check_auth’t ( KSSL_CTX * ks¦_ùx , krb5_d©a * auth’ , 172 krb5_time¡amp * ©im• , KSSL_ERR * ks¦_”r ); 173 * ks¦_sk_cÚfound ( krb5_’ùy³ ’ùy³ , * authn ); 175 #ifdeà __ýlu¥lus @/usr/include/openssl/lhash.h 63 #iâdeà HEADER_LHASH_H 64  #HEADER_LHASH_H ) 66  ~<Ý’s¦/e_os2.h > 67 #iâdeà OPENSSL_NO_FP_API 68  ~<¡dio.h > 71 #iâdeà OPENSSL_NO_BIO 72  ~<Ý’s¦/bio.h > 75 #ifdeà __ýlu¥lus 79  slhash_node_¡ 81 * d©a ; 82  lhash_node_¡ * Ãxt ; 83 #iâdeà OPENSSL_NO_HASH_COMP 84  hash ; 86 } tLHASH_NODE ; 88 (* LHASH_COMP_FN_TYPE )(const *, const *); 89 (* tLHASH_HASH_FN_TYPE )(const *); 90 (* LHASH_DOALL_FN_TYPE )(*); 91 (* LHASH_DOALL_ARG_FN_TYPE )(*, *); 101  #DECLARE_LHASH_HASH_FN ( f_Çme , o_ty³ ) \ 102  f_Çme ## `_LHASH_HASH (cÚ¡ *); ) 103  #IMPLEMENT_LHASH_HASH_FN ( f_Çme , o_ty³ ) \ 104  f_Çme ## `_LHASH_HASH (cÚ¡ * ¬g ) { \ 105 o_ty³ a = (o_ty³) ¬g ; \ 106  `f_Çme ( a ); } ) 107  #LHASH_HASH_FN ( f_Çme èf_Çme## _LHASH_HASH ) 110  #DECLARE_LHASH_COMP_FN ( f_Çme , o_ty³ ) \ 111  f_Çme ## `_LHASH_COMP (cÚ¡ *, cÚ¡ *); ) 112  #IMPLEMENT_LHASH_COMP_FN ( f_Çme , o_ty³ ) \ 113  f_Çme ## `_LHASH_COMP (cÚ¡ * ¬g1 , cÚ¡ * ¬g2 ) { \ 114 o_ty³ a = (o_ty³) ¬g1 ; \ 115 o_ty³ b = (o_ty³) ¬g2 ; \ 116  `f_Çme ( a , b ); } ) 117  #LHASH_COMP_FN ( f_Çme èf_Çme## _LHASH_COMP ) 120  #DECLARE_LHASH_DOALL_FN ( f_Çme , o_ty³ ) \ 121  f_Çme ## `_LHASH_DOALL (*); ) 122  #IMPLEMENT_LHASH_DOALL_FN ( f_Çme , o_ty³ ) \ 123  f_Çme ## `_LHASH_DOALL (* ¬g ) { \ 124 o_ty³ a = (o_ty³) ¬g ; \ 125 `f_Çme ( a ); } ) 126  #LHASH_DOALL_FN ( f_Çme èf_Çme## _LHASH_DOALL ) 129  #DECLARE_LHASH_DOALL_ARG_FN ( f_Çme , o_ty³ , a_ty³ ) \ 130  f_Çme ## `_LHASH_DOALL_ARG (*, *); ) 131  #IMPLEMENT_LHASH_DOALL_ARG_FN ( f_Çme , o_ty³ , a_ty³ ) \ 132  f_Çme ## `_LHASH_DOALL_ARG (* ¬g1 , * ¬g2 ) { \ 133 o_ty³ a = (o_ty³) ¬g1 ; \ 134 a_ty³ b = (a_ty³) ¬g2 ; \ 135 `f_Çme ( a , b ); } ) 136  #LHASH_DOALL_ARG_FN ( f_Çme èf_Çme## _LHASH_DOALL_ARG ) 138  slhash_¡ 140 LHASH_NODE ** b ; 141 LHASH_COMP_FN_TYPE comp ; 142 LHASH_HASH_FN_TYPE hash ; 143  num_nodes ; 144  num_®loc_nodes ; 145  p ; 146  pmax ; 147  up_lßd ; 148  down_lßd ; 149  num_™ems ; 151  num_ex·nds ; 152  num_ex·nd_»®locs ; 153  num_cÚŒaùs ; 154  num_cÚŒaù_»®locs ; 155  num_hash_ÿÎs ; 156  num_comp_ÿÎs ; 157  num_š£¹ ; 158  num_»¶aû ; 159  num_d–‘e ; 160  num_no_d–‘e ; 161  num_»Œ›ve ; 162  num_»Œ›ve_miss ; 163  num_hash_comps ; 165  ”rÜ ; 166 } tLHASH ; 168  #LH_LOAD_MULT 256 ) 172  #lh_”rÜ ( lh è(Öh)-> ”rÜ ) ) 174 LHASH * lh_Ãw ( LHASH_HASH_FN_TYPE h , LHASH_COMP_FN_TYPE c ); 175  lh_ä“ ( LHASH * lh ); 176 * lh_š£¹ ( LHASH * lh , * d©a ); 177 * lh_d–‘e ( LHASH * lh , cÚ¡ * d©a ); 178 * lh_»Œ›ve ( LHASH * lh , cÚ¡ * d©a ); 179  lh_dßÎ ( LHASH * lh , LHASH_DOALL_FN_TYPE func ); 180  lh_dßÎ_¬g ( LHASH * lh , LHASH_DOALL_ARG_FN_TYPE func , * ¬g ); 181  lh_¡rhash (cÚ¡ * c ); 182  lh_num_™ems (cÚ¡ LHASH * lh ); 184 #iâdeà OPENSSL_NO_FP_API 185  lh_¡©s (cÚ¡ LHASH * lh , FILE * out ); 186  lh_node_¡©s (cÚ¡ LHASH * lh , FILE * out ); 187  lh_node_u§ge_¡©s (cÚ¡ LHASH * lh , FILE * out ); 190 #iâdeà OPENSSL_NO_BIO 191  lh_¡©s_bio (cÚ¡ LHASH * lh , BIO * out ); 192  lh_node_¡©s_bio (cÚ¡ LHASH * lh , BIO * out ); 193  lh_node_u§ge_¡©s_bio (cÚ¡ LHASH * lh , BIO * out ); 195 #ifdeà __ýlu¥lus @/usr/include/openssl/ossl_typ.h 55 #iâdeà HEADER_OPENSSL_TYPES_H 56  #HEADER_OPENSSL_TYPES_H ) 58  ~<Ý’s¦/e_os2.h > 60 #ifdeà NO_ASN1_TYPEDEFS 61  #ASN1_INTEGER ASN1_STRING ) 62  #ASN1_ENUMERATED ASN1_STRING ) 63  #ASN1_BIT_STRING ASN1_STRING ) 64  #ASN1_OCTET_STRING ASN1_STRING ) 65  #ASN1_PRINTABLESTRING ASN1_STRING ) 66  #ASN1_T61STRING ASN1_STRING ) 67  #ASN1_IA5STRING ASN1_STRING ) 68  #ASN1_UTCTIME ASN1_STRING ) 69  #ASN1_GENERALIZEDTIME ASN1_STRING ) 70  #ASN1_TIME ASN1_STRING ) 71  #ASN1_GENERALSTRING ASN1_STRING ) 72  #ASN1_UNIVERSALSTRING ASN1_STRING ) 73  #ASN1_BMPSTRING ASN1_STRING ) 74  #ASN1_VISIBLESTRING ASN1_STRING ) 75  #ASN1_UTF8STRING ASN1_STRING ) 76  #ASN1_BOOLEAN  ) 77  #ASN1_NULL  ) 79  a¢1_¡ršg_¡ tASN1_INTEGER ; 80  a¢1_¡ršg_¡ tASN1_ENUMERATED ; 81  a¢1_¡ršg_¡ tASN1_BIT_STRING ; 82  a¢1_¡ršg_¡ tASN1_OCTET_STRING ; 83  a¢1_¡ršg_¡ tASN1_PRINTABLESTRING ; 84  a¢1_¡ršg_¡ tASN1_T61STRING ; 85  a¢1_¡ršg_¡ tASN1_IA5STRING ; 86  a¢1_¡ršg_¡ tASN1_GENERALSTRING ; 87  a¢1_¡ršg_¡ tASN1_UNIVERSALSTRING ; 88  a¢1_¡ršg_¡ tASN1_BMPSTRING ; 89  a¢1_¡ršg_¡ tASN1_UTCTIME ; 90  a¢1_¡ršg_¡ tASN1_TIME ; 91  a¢1_¡ršg_¡ tASN1_GENERALIZEDTIME ; 92  a¢1_¡ršg_¡ tASN1_VISIBLESTRING ; 93  a¢1_¡ršg_¡ tASN1_UTF8STRING ; 94  tASN1_BOOLEAN ; 95  tASN1_NULL ; 98 #ifdeà OPENSSL_SYS_WIN32 99 #undeà X509_NAME 100 #undeà X509_CERT_PAIR 101 #undeà PKCS7_ISSUER_AND_SERIAL 104 #ifdeà BIGNUM 105 #undeà BIGNUM 107  bignum_¡ tBIGNUM ; 108  bignum_ùx tBN_CTX ; 109  bn_blšdšg_¡ tBN_BLINDING ; 110  bn_mÚt_ùx_¡ tBN_MONT_CTX ; 111  bn_»ý_ùx_¡ tBN_RECP_CTX ; 112  bn_g’cb_¡ tBN_GENCB ; 114  buf_mem_¡ tBUF_MEM ; 116  evp_ch”_¡ tEVP_CIPHER ; 117  evp_ch”_ùx_¡ tEVP_CIPHER_CTX ; 118  ’v_md_¡ tEVP_MD ; 119  ’v_md_ùx_¡ tEVP_MD_CTX ; 120  evp_pkey_¡ tEVP_PKEY ; 122  dh_¡ tDH ; 123  dh_m‘hod tDH_METHOD ; 125  d§_¡ tDSA ; 126  d§_m‘hod tDSA_METHOD ; 128  r§_¡ tRSA ; 129  r§_m‘h_¡ tRSA_METHOD ; 131  ¿nd_m‘h_¡ tRAND_METHOD ; 133  ecdh_m‘hod tECDH_METHOD ; 134  ecd§_m‘hod tECDSA_METHOD ; 136  x509_¡ tX509 ; 137  X509_®gÜ_¡ tX509_ALGOR ; 138  X509_ül_¡ tX509_CRL ; 139  X509_Çme_¡ tX509_NAME ; 140  x509_¡Üe_¡ tX509_STORE ; 141  x509_¡Üe_ùx_¡ tX509_STORE_CTX ; 143  v3_ext_ùx tX509V3_CTX ; 144  cÚf_¡ tCONF ; 146  ¡Üe_¡ tSTORE ; 147  ¡Üe_m‘hod_¡ tSTORE_METHOD ; 149  ui_¡ tUI ; 150  ui_m‘hod_¡ tUI_METHOD ; 152  ¡_ERR_FNS tERR_FNS ; 154  ’gše_¡ tENGINE ; 156  X509_POLICY_NODE_¡ tX509_POLICY_NODE ; 157  X509_POLICY_LEVEL_¡ tX509_POLICY_LEVEL ; 158  X509_POLICY_TREE_¡ tX509_POLICY_TREE ; 159  X509_POLICY_CACHE_¡ tX509_POLICY_CACHE ; 162  #DECLARE_PKCS12_STACK_OF ( ty³ è ) 163  #IMPLEMENT_PKCS12_STACK_OF ( ty³ è ) 165  üy±o_ex_d©a_¡ tCRYPTO_EX_DATA ; 167  tCRYPTO_EX_Ãw (* t·»Á , * t±r , tCRYPTO_EX_DATA * tad , 168  tidx ,  t¬gl , * t¬gp ); 169  tCRYPTO_EX_ä“ (* t·»Á , * t±r , tCRYPTO_EX_DATA * tad , 170  tidx ,  t¬gl , * t¬gp ); 171  tCRYPTO_EX_dup ( tCRYPTO_EX_DATA * tto , CRYPTO_EX_DATA * täom , * täom_d , 172  tidx ,  t¬gl , * t¬gp ); @/usr/include/openssl/pem.h 59 #iâdeà HEADER_PEM_H 60  #HEADER_PEM_H ) 62  ~<Ý’s¦/e_os2.h > 63 #iâdeà OPENSSL_NO_BIO 64  ~<Ý’s¦/bio.h > 66 #iâdeà OPENSSL_NO_STACK 67  ~<Ý’s¦/¡ack.h > 69  ~<Ý’s¦/evp.h > 70  ~<Ý’s¦/x509.h > 71  ~<Ý’s¦/³m2.h > 73 #ifdeà __ýlu¥lus 77  #PEM_BUFSIZE 1024 ) 79  #PEM_OBJ_UNDEF 0 ) 80  #PEM_OBJ_X509 1 ) 81  #PEM_OBJ_X509_REQ 2 ) 82  #PEM_OBJ_CRL 3 ) 83  #PEM_OBJ_SSL_SESSION 4 ) 84  #PEM_OBJ_PRIV_KEY 10 ) 85  #PEM_OBJ_PRIV_RSA 11 ) 86  #PEM_OBJ_PRIV_DSA 12 ) 87  #PEM_OBJ_PRIV_DH 13 ) 88  #PEM_OBJ_PUB_RSA 14 ) 89  #PEM_OBJ_PUB_DSA 15 ) 90  #PEM_OBJ_PUB_DH 16 ) 91  #PEM_OBJ_DHPARAMS 17 ) 92  #PEM_OBJ_DSAPARAMS 18 ) 93  #PEM_OBJ_PRIV_RSA_PUBLIC 19 ) 94  #PEM_OBJ_PRIV_ECDSA 20 ) 95  #PEM_OBJ_PUB_ECDSA 21 ) 96  #PEM_OBJ_ECPARAMETERS 22 ) 98  #PEM_ERROR 30 ) 99  #PEM_DEK_DES_CBC 40 ) 100  #PEM_DEK_IDEA_CBC 45 ) 101  #PEM_DEK_DES_EDE 50 ) 102  #PEM_DEK_DES_ECB 60 ) 103  #PEM_DEK_RSA 70 ) 104  #PEM_DEK_RSA_MD2 80 ) 105  #PEM_DEK_RSA_MD5 90 ) 107  #PEM_MD_MD2 NID_md2 ) 108  #PEM_MD_MD5 NID_md5 ) 109  #PEM_MD_SHA NID_sha ) 110  #PEM_MD_MD2_RSA NID_md2W™hRSAEnüy±iÚ ) 111  #PEM_MD_MD5_RSA NID_md5W™hRSAEnüy±iÚ ) 112  #PEM_MD_SHA_RSA NID_sha1W™hRSAEnüy±iÚ ) 114  #PEM_STRING_X509_OLD "X509 CERTIFICATE" ) 115  #PEM_STRING_X509 "CERTIFICATE" ) 116  #PEM_STRING_X509_PAIR "CERTIFICATE PAIR" ) 117  #PEM_STRING_X509_TRUSTED "TRUSTED CERTIFICATE" ) 118  #PEM_STRING_X509_REQ_OLD "NEW CERTIFICATE REQUEST" ) 119  #PEM_STRING_X509_REQ "CERTIFICATE REQUEST" ) 120  #PEM_STRING_X509_CRL "X509 CRL" ) 121  #PEM_STRING_EVP_PKEY "ANY PRIVATE KEY" ) 122  #PEM_STRING_PUBLIC "PUBLIC KEY" ) 123  #PEM_STRING_RSA "RSA PRIVATE KEY" ) 124  #PEM_STRING_RSA_PUBLIC "RSA PUBLIC KEY" ) 125  #PEM_STRING_DSA "DSA PRIVATE KEY" ) 126  #PEM_STRING_DSA_PUBLIC "DSA PUBLIC KEY" ) 127  #PEM_STRING_PKCS7 "PKCS7" ) 128  #PEM_STRING_PKCS8 "ENCRYPTED PRIVATE KEY" ) 129  #PEM_STRING_PKCS8INF "PRIVATE KEY" ) 130  #PEM_STRING_DHPARAMS "DH PARAMETERS" ) 131  #PEM_STRING_SSL_SESSION "SSL SESSION PARAMETERS" ) 132  #PEM_STRING_DSAPARAMS "DSA PARAMETERS" ) 133  #PEM_STRING_ECDSA_PUBLIC "ECDSA PUBLIC KEY" ) 134  #PEM_STRING_ECPARAMETERS "EC PARAMETERS" ) 135  #PEM_STRING_ECPRIVATEKEY "EC PRIVATE KEY" ) 139  sPEM_Encode_S—l_¡ 141 EVP_ENCODE_CTX ’code ; 142 EVP_MD_CTX md ; 143 EVP_CIPHER_CTX ch” ; 144 } tPEM_ENCODE_SEAL_CTX ; 147  #PEM_TYPE_ENCRYPTED 10 ) 148  #PEM_TYPE_MIC_ONLY 20 ) 149  #PEM_TYPE_MIC_CLEAR 30 ) 150  #PEM_TYPE_CLEAR 40 ) 152  s³m_»c_¡ 154 * Çme ; 155 X509_NAME * dn ; 157  ch” ; 158  key_’c ; 160 } tPEM_USER ; 162  s³m_ùx_¡ 164  ty³ ; 167  v”siÚ ; 168  mode ; 169 } ´oc_ty³ ; 171 * domaš ; 174  ch” ; 177 } DEK_šfo ; 179 PEM_USER * Üigš©Ü ; 181  num_»c›Á ; 182 PEM_USER ** »c›Á ; 184 #iâdeà OPENSSL_NO_STACK 185 STACK * x509_chaš ; 187 * x509_chaš ; 189 EVP_MD * md ; 191  md_’c ; 192  md_Ën ; 193 * md_d©a ; 195 EVP_CIPHER * dec ; 196  key_Ën ; 197 * key ; 202  d©a_’c ; 203  d©a_Ën ; 204 * d©a ; 205 } tPEM_CTX ; 212 #ifdeà OPENSSL_NO_FP_API 214  #IMPLEMENT_PEM_»ad_å ( Çme , ty³ , ¡r , a¢1 è ) 215  #IMPLEMENT_PEM_wr™e_å ( Çme , ty³ , ¡r , a¢1 è ) 216  #IMPLEMENT_PEM_wr™e_cb_å ( Çme , ty³ , ¡r , a¢1 è ) 220  #IMPLEMENT_PEM_»ad_å ( Çme , ty³ , ¡r , a¢1 ) \ 221 ty³ * PEM_»ad_ ## `Çme ( FILE * å ,y³ ** x , ³m_·sswÜd_cb * cb , * u )\ 223  ( ty³ *) `PEM_ASN1_»ad ( `CHECKED_D2I_OF Ñy³, d2i_ ## a¢1 ), \ 224 ¡r , å , \ 225 `CHECKED_PPTR_OF ( ty³ , x ), \ 226 cb , u ); \ 227 } ) 229  #IMPLEMENT_PEM_wr™e_å ( Çme , ty³ , ¡r , a¢1 ) \ 230  PEM_wr™e_ ## `Çme ( FILE * å , ty³ * x ) \ 232  `PEM_ASN1_wr™e ( `CHECKED_I2D_OF ( ty³ , i2d_ ## a¢1 ), \ 233 ¡r , å , \ 234 `CHECKED_PTR_OF ( ty³ , x ), \ 235 NULL , NULL, 0, NULL, NULL); \ 236 } ) 238  #IMPLEMENT_PEM_wr™e_å_cÚ¡ ( Çme , ty³ , ¡r , a¢1 ) \ 239  PEM_wr™e_ ## `Çme ( FILE * å , cÚ¡ ty³ * x ) \ 241  `PEM_ASN1_wr™e ( `CHECKED_I2D_OF (cÚ¡ ty³ , i2d_ ## a¢1 ), \ 242 ¡r , å , \ 243 `CHECKED_PTR_OF (cÚ¡ ty³ , x ), \ 244 NULL , NULL, 0, NULL, NULL); \ 245 } ) 247  #IMPLEMENT_PEM_wr™e_cb_å ( Çme , ty³ , ¡r , a¢1 ) \ 248  PEM_wr™e_ ## `Çme ( FILE * å , ty³ * x , cÚ¡ EVP_CIPHER * ’c , \ 249 * k¡r ,  kËn , ³m_·sswÜd_cb * cb , \ 250 * u ) \ 252  `PEM_ASN1_wr™e ( `CHECKED_I2D_OF ( ty³ , i2d_ ## a¢1 ), \ 253 ¡r , å , \ 254 `CHECKED_PTR_OF ( ty³ , x ), \ 255 ’c , k¡r , kËn , cb , u ); \ 256 } ) 258  #IMPLEMENT_PEM_wr™e_cb_å_cÚ¡ ( Çme , ty³ , ¡r , a¢1 ) \ 259  PEM_wr™e_ ## `Çme ( FILE * å , ty³ * x , cÚ¡ EVP_CIPHER * ’c , \ 260 * k¡r ,  kËn , ³m_·sswÜd_cb * cb , \ 261 * u ) \ 263  `PEM_ASN1_wr™e ( `CHECKED_I2D_OF (cÚ¡ ty³ , i2d_ ## a¢1 ), \ 264 ¡r , å , \ 265 `CHECKED_PTR_OF (cÚ¡ ty³ , x ), \ 266 ’c , k¡r , kËn , cb , u ); \ 267 } ) 271  #IMPLEMENT_PEM_»ad_bio ( Çme , ty³ , ¡r , a¢1 ) \ 272 ty³ * PEM_»ad_bio_ ## `Çme ( BIO * bp ,y³ ** x , ³m_·sswÜd_cb * cb , * u )\ 274  ( ty³ *) `PEM_ASN1_»ad_bio ( `CHECKED_D2I_OF Ñy³, d2i_ ## a¢1 ), \ 275 ¡r , bp , \ 276 `CHECKED_PPTR_OF ( ty³ , x ), \ 277 cb , u ); \ 278 } ) 280  #IMPLEMENT_PEM_wr™e_bio ( Çme , ty³ , ¡r , a¢1 ) \ 281  PEM_wr™e_bio_ ## `Çme ( BIO * bp , ty³ * x ) \ 283  `PEM_ASN1_wr™e_bio ( `CHECKED_I2D_OF ( ty³ , i2d_ ## a¢1 ), \ 284 ¡r , bp , \ 285 `CHECKED_PTR_OF ( ty³ , x ), \ 286 NULL , NULL, 0, NULL, NULL); \ 287 } ) 289  #IMPLEMENT_PEM_wr™e_bio_cÚ¡ ( Çme , ty³ , ¡r , a¢1 ) \ 290  PEM_wr™e_bio_ ## `Çme ( BIO * bp , cÚ¡ ty³ * x ) \ 292  `PEM_ASN1_wr™e_bio ( `CHECKED_I2D_OF (cÚ¡ ty³ , i2d_ ## a¢1 ), \ 293 ¡r , bp , \ 294 `CHECKED_PTR_OF (cÚ¡ ty³ , x ), \ 295 NULL , NULL, 0, NULL, NULL); \ 296 } ) 298  #IMPLEMENT_PEM_wr™e_cb_bio ( Çme , ty³ , ¡r , a¢1 ) \ 299  PEM_wr™e_bio_ ## `Çme ( BIO * bp , ty³ * x , cÚ¡ EVP_CIPHER * ’c , \ 300 * k¡r ,  kËn , ³m_·sswÜd_cb * cb , * u ) \ 302  `PEM_ASN1_wr™e_bio ( `CHECKED_I2D_OF ( ty³ , i2d_ ## a¢1 ), \ 303 ¡r , bp , \ 304 `CHECKED_PTR_OF ( ty³ , x ), \ 305 ’c , k¡r , kËn , cb , u ); \ 306 } ) 308  #IMPLEMENT_PEM_wr™e_cb_bio_cÚ¡ ( Çme , ty³ , ¡r , a¢1 ) \ 309  PEM_wr™e_bio_ ## `Çme ( BIO * bp , ty³ * x , cÚ¡ EVP_CIPHER * ’c , \ 310 * k¡r ,  kËn , ³m_·sswÜd_cb * cb , * u ) \ 312  `PEM_ASN1_wr™e_bio ( `CHECKED_I2D_OF (cÚ¡ ty³ , i2d_ ## a¢1 ), \ 313 ¡r , bp , \ 314 `CHECKED_PTR_OF (cÚ¡ ty³ , x ), \ 315 ’c , k¡r , kËn , cb , u ); \ 316 } ) 318  #IMPLEMENT_PEM_wr™e ( Çme , ty³ , ¡r , a¢1 ) \ 319 `IMPLEMENT_PEM_wr™e_bio ( Çme , ty³ , ¡r , a¢1 ) \ 320 `IMPLEMENT_PEM_wr™e_å ( Çme , ty³ , ¡r , a¢1 ) ) 322  #IMPLEMENT_PEM_wr™e_cÚ¡ ( Çme , ty³ , ¡r , a¢1 ) \ 323 `IMPLEMENT_PEM_wr™e_bio_cÚ¡ ( Çme , ty³ , ¡r , a¢1 ) \ 324 `IMPLEMENT_PEM_wr™e_å_cÚ¡ ( Çme , ty³ , ¡r , a¢1 ) ) 326  #IMPLEMENT_PEM_wr™e_cb ( Çme , ty³ , ¡r , a¢1 ) \ 327 `IMPLEMENT_PEM_wr™e_cb_bio ( Çme , ty³ , ¡r , a¢1 ) \ 328 `IMPLEMENT_PEM_wr™e_cb_å ( Çme , ty³ , ¡r , a¢1 ) ) 330  #IMPLEMENT_PEM_wr™e_cb_cÚ¡ ( Çme , ty³ , ¡r , a¢1 ) \ 331 `IMPLEMENT_PEM_wr™e_cb_bio_cÚ¡ ( Çme , ty³ , ¡r , a¢1 ) \ 332 `IMPLEMENT_PEM_wr™e_cb_å_cÚ¡ ( Çme , ty³ , ¡r , a¢1 ) ) 334  #IMPLEMENT_PEM_»ad ( Çme , ty³ , ¡r , a¢1 ) \ 335 `IMPLEMENT_PEM_»ad_bio ( Çme , ty³ , ¡r , a¢1 ) \ 336 `IMPLEMENT_PEM_»ad_å ( Çme , ty³ , ¡r , a¢1 ) ) 338  #IMPLEMENT_PEM_rw ( Çme , ty³ , ¡r , a¢1 ) \ 339 `IMPLEMENT_PEM_»ad ( Çme , ty³ , ¡r , a¢1 ) \ 340 `IMPLEMENT_PEM_wr™e ( Çme , ty³ , ¡r , a¢1 ) ) 342  #IMPLEMENT_PEM_rw_cÚ¡ ( Çme , ty³ , ¡r , a¢1 ) \ 343 `IMPLEMENT_PEM_»ad ( Çme , ty³ , ¡r , a¢1 ) \ 344 `IMPLEMENT_PEM_wr™e_cÚ¡ ( Çme , ty³ , ¡r , a¢1 ) ) 346  #IMPLEMENT_PEM_rw_cb ( Çme , ty³ , ¡r , a¢1 ) \ 347 `IMPLEMENT_PEM_»ad ( Çme , ty³ , ¡r , a¢1 ) \ 348 `IMPLEMENT_PEM_wr™e_cb ( Çme , ty³ , ¡r , a¢1 ) ) 352 #ià defšed ( OPENSSL_SYS_WIN16 è|| defšed( OPENSSL_NO_FP_API ) 354  #DECLARE_PEM_»ad_å ( Çme , ty³ è ) 355  #DECLARE_PEM_wr™e_å ( Çme , ty³ è ) 356  #DECLARE_PEM_wr™e_cb_å ( Çme , ty³ è ) 360  #DECLARE_PEM_»ad_å ( Çme , ty³ ) \ 361 ty³ * PEM_»ad_ ## `Çme ( FILE * å ,y³ ** x , ³m_·sswÜd_cb * cb , * u ); ) 363  #DECLARE_PEM_wr™e_å ( Çme , ty³ ) \ 364  PEM_wr™e_ ## `Çme ( FILE * å , ty³ * x ); ) 366  #DECLARE_PEM_wr™e_å_cÚ¡ ( Çme , ty³ ) \ 367  PEM_wr™e_ ## `Çme ( FILE * å , cÚ¡ ty³ * x ); ) 369  #DECLARE_PEM_wr™e_cb_å ( Çme , ty³ ) \ 370  PEM_wr™e_ ## `Çme ( FILE * å , ty³ * x , cÚ¡ EVP_CIPHER * ’c , \ 371 * k¡r ,  kËn , ³m_·sswÜd_cb * cb , * u ); ) 375 #iâdeà OPENSSL_NO_BIO 376  #DECLARE_PEM_»ad_bio ( Çme , ty³ ) \ 377 ty³ * PEM_»ad_bio_ ## `Çme ( BIO * bp ,y³ ** x , ³m_·sswÜd_cb * cb , * u ); ) 379  #DECLARE_PEM_wr™e_bio ( Çme , ty³ ) \ 380  PEM_wr™e_bio_ ## `Çme ( BIO * bp , ty³ * x ); ) 382  #DECLARE_PEM_wr™e_bio_cÚ¡ ( Çme , ty³ ) \ 383  PEM_wr™e_bio_ ## `Çme ( BIO * bp , cÚ¡ ty³ * x ); ) 385  #DECLARE_PEM_wr™e_cb_bio ( Çme , ty³ ) \ 386  PEM_wr™e_bio_ ## `Çme ( BIO * bp , ty³ * x , cÚ¡ EVP_CIPHER * ’c , \ 387 * k¡r ,  kËn , ³m_·sswÜd_cb * cb , * u ); ) 391  #DECLARE_PEM_»ad_bio ( Çme , ty³ è ) 392  #DECLARE_PEM_wr™e_bio ( Çme , ty³ è ) 393  #DECLARE_PEM_wr™e_cb_bio ( Çme , ty³ è ) 397  #DECLARE_PEM_wr™e ( Çme , ty³ ) \ 398 `DECLARE_PEM_wr™e_bio ( Çme , ty³ ) \ 399 `DECLARE_PEM_wr™e_å ( Çme , ty³ ) ) 401  #DECLARE_PEM_wr™e_cÚ¡ ( Çme , ty³ ) \ 402 `DECLARE_PEM_wr™e_bio_cÚ¡ ( Çme , ty³ ) \ 403 `DECLARE_PEM_wr™e_å_cÚ¡ ( Çme , ty³ ) ) 405  #DECLARE_PEM_wr™e_cb ( Çme , ty³ ) \ 406 `DECLARE_PEM_wr™e_cb_bio ( Çme , ty³ ) \ 407 `DECLARE_PEM_wr™e_cb_å ( Çme , ty³ ) ) 409  #DECLARE_PEM_»ad ( Çme , ty³ ) \ 410 `DECLARE_PEM_»ad_bio ( Çme , ty³ ) \ 411 `DECLARE_PEM_»ad_å ( Çme , ty³ ) ) 413  #DECLARE_PEM_rw ( Çme , ty³ ) \ 414 `DECLARE_PEM_»ad ( Çme , ty³ ) \ 415 `DECLARE_PEM_wr™e ( Çme , ty³ ) ) 417  #DECLARE_PEM_rw_cÚ¡ ( Çme , ty³ ) \ 418 `DECLARE_PEM_»ad ( Çme , ty³ ) \ 419 `DECLARE_PEM_wr™e_cÚ¡ ( Çme , ty³ ) ) 421  #DECLARE_PEM_rw_cb ( Çme , ty³ ) \ 422 `DECLARE_PEM_»ad ( Çme , ty³ ) \ 423 `DECLARE_PEM_wr™e_cb ( Çme , ty³ ) ) 425 #ifdeà SSLEAY_MACROS 427  #PEM_wr™e_SSL_SESSION ( å , x ) \ 428 `PEM_ASN1_wr™e (((*)()) i2d_SSL_SESSION , \ 429 PEM_STRING_SSL_SESSION , å , (*) x , NULL ,NULL,0,NULL,NULL) ) 430  #PEM_wr™e_X509 ( å , x ) \ 431 `PEM_ASN1_wr™e (((*)()) i2d_X509 , PEM_STRING_X509 , å , \ 432 (*) x , NULL ,NULL,0,NULL,NULL) ) 433  #PEM_wr™e_X509_REQ ( å , x è `PEM_ASN1_wr™e ( \ 434 ((*)()) i2d_X509_REQ , PEM_STRING_X509_REQ , å ,(*) x , \ 435 NULL ,NULL,0,NULL,NULL) ) 436  #PEM_wr™e_X509_CRL ( å , x ) \ 437 `PEM_ASN1_wr™e (((*)()) i2d_X509_CRL , PEM_STRING_X509_CRL , \ 438 å ,(*) x , NULL ,NULL,0,NULL,NULL) ) 439  #PEM_wr™e_RSAPriv©eKey ( å , x , ’c , k¡r , kËn , cb , u ) \ 440 `PEM_ASN1_wr™e (((*)()) i2d_RSAPriv©eKey , PEM_STRING_RSA , å ,\ 441 (*) x , ’c , k¡r , kËn , cb , u ) ) 442  #PEM_wr™e_RSAPublicKey ( å , x ) \ 443 `PEM_ASN1_wr™e (((*)()) i2d_RSAPublicKey ,\ 444 PEM_STRING_RSA_PUBLIC , å ,(*) x , NULL ,NULL,0,NULL,NULL) ) 445  #PEM_wr™e_DSAPriv©eKey ( å , x , ’c , k¡r , kËn , cb , u ) \ 446 `PEM_ASN1_wr™e (((*)()) i2d_DSAPriv©eKey , PEM_STRING_DSA , å ,\ 447 (*) x , ’c , k¡r , kËn , cb , u ) ) 448  #PEM_wr™e_Priv©eKey ( bp , x , ’c , k¡r , kËn , cb , u ) \ 449 `PEM_ASN1_wr™e (((*)()) i2d_Priv©eKey ,\ 450 ((( x )-> ty³ =ð EVP_PKEY_DSA )? PEM_STRING_DSA : PEM_STRING_RSA ),\ 451 bp ,(*) x , ’c , k¡r , kËn , cb , u ) ) 452  #PEM_wr™e_PKCS7 ( å , x ) \ 453 `PEM_ASN1_wr™e (((*)()) i2d_PKCS7 , PEM_STRING_PKCS7 , å , \ 454 (*) x , NULL ,NULL,0,NULL,NULL) ) 455  #PEM_wr™e_DH·¿ms ( å , x ) \ 456 `PEM_ASN1_wr™e (((*)()) i2d_DH·¿ms , PEM_STRING_DHPARAMS , å ,\ 457 (*) x , NULL ,NULL,0,NULL,NULL) ) 459  #PEM_wr™e_NETSCAPE_CERT_SEQUENCE ( å , x ) \ 460 `PEM_ASN1_wr™e (((*)()) i2d_NETSCAPE_CERT_SEQUENCE , \ 461 PEM_STRING_X509 , å , \ 462 (*) x , NULL ,NULL,0,NULL,NULL) ) 464  #PEM_»ad_SSL_SESSION ( å , x , cb , u è( SSL_SESSION *) `PEM_ASN1_»ad ( \ 465 (*(*)()) d2i_SSL_SESSION , PEM_STRING_SSL_SESSION , å ,(**) x , cb , u ) ) 466  #PEM_»ad_X509 ( å , x , cb , u è( X509 *) `PEM_ASN1_»ad ( \ 467 (*(*)()) d2i_X509 , PEM_STRING_X509 , å ,(**) x , cb , u ) ) 468  #PEM_»ad_X509_REQ ( å , x , cb , u è( X509_REQ *) `PEM_ASN1_»ad ( \ 469 (*(*)()) d2i_X509_REQ , PEM_STRING_X509_REQ , å ,(**) x , cb , u ) ) 470  #PEM_»ad_X509_CRL ( å , x , cb , u è( X509_CRL *) `PEM_ASN1_»ad ( \ 471 (*(*)()) d2i_X509_CRL , PEM_STRING_X509_CRL , å ,(**) x , cb , u ) ) 472  #PEM_»ad_RSAPriv©eKey ( å , x , cb , u è( RSA *) `PEM_ASN1_»ad ( \ 473 (*(*)()) d2i_RSAPriv©eKey , PEM_STRING_RSA , å ,(**) x , cb , u ) ) 474  #PEM_»ad_RSAPublicKey ( å , x , cb , u è( RSA *) `PEM_ASN1_»ad ( \ 475 (*(*)()) d2i_RSAPublicKey , PEM_STRING_RSA_PUBLIC , å ,(**) x , cb , u ) ) 476  #PEM_»ad_DSAPriv©eKey ( å , x , cb , u è( DSA *) `PEM_ASN1_»ad ( \ 477 (*(*)()) d2i_DSAPriv©eKey , PEM_STRING_DSA , å ,(**) x , cb , u ) ) 478  #PEM_»ad_Priv©eKey ( å , x , cb , u è( EVP_PKEY *) `PEM_ASN1_»ad ( \ 479 (*(*)()) d2i_Priv©eKey , PEM_STRING_EVP_PKEY , å ,(**) x , cb , u ) ) 480  #PEM_»ad_PKCS7 ( å , x , cb , u è( PKCS7 *) `PEM_ASN1_»ad ( \ 481 (*(*)()) d2i_PKCS7 , PEM_STRING_PKCS7 , å ,(**) x , cb , u ) ) 482  #PEM_»ad_DH·¿ms ( å , x , cb , u è( DH *) `PEM_ASN1_»ad ( \ 483 (*(*)()) d2i_DH·¿ms , PEM_STRING_DHPARAMS , å ,(**) x , cb , u ) ) 485  #PEM_»ad_NETSCAPE_CERT_SEQUENCE ( å , x , cb , u ) \ 486 ( NETSCAPE_CERT_SEQUENCE *) `PEM_ASN1_»ad ( \ 487 (*(*)()) d2i_NETSCAPE_CERT_SEQUENCE , PEM_STRING_X509 , å ,\ 488 (**) x , cb , u ) ) 490  #PEM_wr™e_bio_X509 ( bp , x ) \ 491 `PEM_ASN1_wr™e_bio (((*)()) i2d_X509 , PEM_STRING_X509 , bp , \ 492 (*) x , NULL ,NULL,0,NULL,NULL) ) 493  #PEM_wr™e_bio_X509_REQ ( bp , x è `PEM_ASN1_wr™e_bio ( \ 494 ((*)()) i2d_X509_REQ , PEM_STRING_X509_REQ , bp ,(*) x , \ 495 NULL ,NULL,0,NULL,NULL) ) 496  #PEM_wr™e_bio_X509_CRL ( bp , x ) \ 497 `PEM_ASN1_wr™e_bio (((*)()) i2d_X509_CRL , PEM_STRING_X509_CRL ,\ 498 bp ,(*) x , NULL ,NULL,0,NULL,NULL) ) 499  #PEM_wr™e_bio_RSAPriv©eKey ( bp , x , ’c , k¡r , kËn , cb , u ) \ 500 `PEM_ASN1_wr™e_bio (((*)()) i2d_RSAPriv©eKey , PEM_STRING_RSA ,\ 501 bp ,(*) x , ’c , k¡r , kËn , cb , u ) ) 502  #PEM_wr™e_bio_RSAPublicKey ( bp , x ) \ 503 `PEM_ASN1_wr™e_bio (((*)()) i2d_RSAPublicKey , \ 504 PEM_STRING_RSA_PUBLIC ,\ 505 bp ,(*) x , NULL ,NULL,0,NULL,NULL) ) 506  #PEM_wr™e_bio_DSAPriv©eKey ( bp , x , ’c , k¡r , kËn , cb , u ) \ 507 `PEM_ASN1_wr™e_bio (((*)()) i2d_DSAPriv©eKey , PEM_STRING_DSA ,\ 508 bp ,(*) x , ’c , k¡r , kËn , cb , u ) ) 509  #PEM_wr™e_bio_Priv©eKey ( bp , x , ’c , k¡r , kËn , cb , u ) \ 510 `PEM_ASN1_wr™e_bio (((*)()) i2d_Priv©eKey ,\ 511 ((( x )-> ty³ =ð EVP_PKEY_DSA )? PEM_STRING_DSA : PEM_STRING_RSA ),\ 512 bp ,(*) x , ’c , k¡r , kËn , cb , u ) ) 513  #PEM_wr™e_bio_PKCS7 ( bp , x ) \ 514 `PEM_ASN1_wr™e_bio (((*)()) i2d_PKCS7 , PEM_STRING_PKCS7 , bp , \ 515 (*) x , NULL ,NULL,0,NULL,NULL) ) 516  #PEM_wr™e_bio_DH·¿ms ( bp , x ) \ 517 `PEM_ASN1_wr™e_bio (((*)()) i2d_DH·¿ms , PEM_STRING_DHPARAMS ,\ 518 bp ,(*) x , NULL ,NULL,0,NULL,NULL) ) 519  #PEM_wr™e_bio_DSA·¿ms ( bp , x ) \ 520 `PEM_ASN1_wr™e_bio (((*)()) i2d_DSA·¿ms , \ 521 PEM_STRING_DSAPARAMS , bp ,(*) x , NULL ,NULL,0,NULL,NULL) ) 523  #PEM_wr™e_bio_NETSCAPE_CERT_SEQUENCE ( bp , x ) \ 524 `PEM_ASN1_wr™e_bio (((*)()) i2d_NETSCAPE_CERT_SEQUENCE , \ 525 PEM_STRING_X509 , bp , \ 526 (*) x , NULL ,NULL,0,NULL,NULL) ) 528  #PEM_»ad_bio_X509 ( bp , x , cb , u è( X509 *) `PEM_ASN1_»ad_bio ( \ 529 (*(*)()) d2i_X509 , PEM_STRING_X509 , bp ,(**) x , cb , u ) ) 530  #PEM_»ad_bio_X509_REQ ( bp , x , cb , u è( X509_REQ *) `PEM_ASN1_»ad_bio ( \ 531 (*(*)()) d2i_X509_REQ , PEM_STRING_X509_REQ , bp ,(**) x , cb , u ) ) 532  #PEM_»ad_bio_X509_CRL ( bp , x , cb , u è( X509_CRL *) `PEM_ASN1_»ad_bio ( \ 533 (*(*)()) d2i_X509_CRL , PEM_STRING_X509_CRL , bp ,(**) x , cb , u ) ) 534  #PEM_»ad_bio_RSAPriv©eKey ( bp , x , cb , u è( RSA *) `PEM_ASN1_»ad_bio ( \ 535 (*(*)()) d2i_RSAPriv©eKey , PEM_STRING_RSA , bp ,(**) x , cb , u ) ) 536  #PEM_»ad_bio_RSAPublicKey ( bp , x , cb , u è( RSA *) `PEM_ASN1_»ad_bio ( \ 537 (*(*)()) d2i_RSAPublicKey , PEM_STRING_RSA_PUBLIC , bp ,(**) x , cb , u ) ) 538  #PEM_»ad_bio_DSAPriv©eKey ( bp , x , cb , u è( DSA *) `PEM_ASN1_»ad_bio ( \ 539 (*(*)()) d2i_DSAPriv©eKey , PEM_STRING_DSA , bp ,(**) x , cb , u ) ) 540  #PEM_»ad_bio_Priv©eKey ( bp , x , cb , u è( EVP_PKEY *) `PEM_ASN1_»ad_bio ( \ 541 (*(*)()) d2i_Priv©eKey , PEM_STRING_EVP_PKEY , bp ,(**) x , cb , u ) ) 543  #PEM_»ad_bio_PKCS7 ( bp , x , cb , u è( PKCS7 *) `PEM_ASN1_»ad_bio ( \ 544 (*(*)()) d2i_PKCS7 , PEM_STRING_PKCS7 , bp ,(**) x , cb , u ) ) 545  #PEM_»ad_bio_DH·¿ms ( bp , x , cb , u è( DH *) `PEM_ASN1_»ad_bio ( \ 546 (*(*)()) d2i_DH·¿ms , PEM_STRING_DHPARAMS , bp ,(**) x , cb , u ) ) 547  #PEM_»ad_bio_DSA·¿ms ( bp , x , cb , u è( DSA *) `PEM_ASN1_»ad_bio ( \ 548 (*(*)()) d2i_DSA·¿ms , PEM_STRING_DSAPARAMS , bp ,(**) x , cb , u ) ) 550  #PEM_»ad_bio_NETSCAPE_CERT_SEQUENCE ( bp , x , cb , u ) \ 551 ( NETSCAPE_CERT_SEQUENCE *) `PEM_ASN1_»ad_bio ( \ 552 (*(*)()) d2i_NETSCAPE_CERT_SEQUENCE , PEM_STRING_X509 , bp ,\ 553 (**) x , cb , u ) ) 559  t³m_·sswÜd_cb (* tbuf ,  tsize ,  trwæag , * tu£rd©a ); 562  t³m_·sswÜd_cb (* tbuf ,  tsize ,  trwæag ); 565  PEM_g‘_EVP_CIPHER_INFO (* h—d” , EVP_CIPHER_INFO * ch” ); 566  PEM_do_h—d” ( EVP_CIPHER_INFO * ch” , * d©a ,* Ën , 567 ³m_·sswÜd_cb * ÿÎback ,* u ); 569 #iâdeà OPENSSL_NO_BIO 570  PEM_»ad_bio ( BIO * bp , ** Çme , ** h—d” , 571 ** d©a ,* Ën ); 572  PEM_wr™e_bio ( BIO * bp ,cÚ¡ * Çme ,* hdr ,* d©a , 573  Ën ); 574  PEM_by‹s_»ad_bio (** pd©a , * ¶’ , ** ²m , cÚ¡ * Çme , BIO * bp , 575 ³m_·sswÜd_cb * cb , * u ); 576 * PEM_ASN1_»ad_bio ( d2i_of_void * d2i , cÚ¡ * Çme , BIO * bp , 577 ** x , ³m_·sswÜd_cb * cb , * u ); 579  #PEM_ASN1_»ad_bio_of ( ty³ , d2i , Çme , bp , x , cb , u ) \ 580 (( ty³ *) `PEM_ASN1_»ad_bio ( `CHECKED_D2I_OF Ñy³, d2i ), \ 581 Çme , bp , \ 582 `CHECKED_PPTR_OF ( ty³ , x ), \ 583 cb , u )) ) 585  PEM_ASN1_wr™e_bio ( i2d_of_void * i2d ,cÚ¡ * Çme , BIO * bp ,* x , 586 cÚ¡ EVP_CIPHER * ’c ,* k¡r , kËn , 587 ³m_·sswÜd_cb * cb , * u ); 589  #PEM_ASN1_wr™e_bio_of ( ty³ , i2d , Çme , bp , x , ’c , k¡r , kËn , cb , u ) \ 590 ( `PEM_ASN1_wr™e_bio ( `CHECKED_I2D_OF ( ty³ , i2d ), \ 591 Çme , bp , \ 592 `CHECKED_PTR_OF ( ty³ , x ), \ 593 ’c , k¡r , kËn , cb , u )) ) 595 STACK_OF ( X509_INFO è* PEM_X509_INFO_»ad_bio ( BIO * bp , STACK_OF(X509_INFOè* sk , ³m_·sswÜd_cb * cb , * u ); 596  PEM_X509_INFO_wr™e_bio ( BIO * bp , X509_INFO * xi , EVP_CIPHER * ’c , 597 * k¡r ,  kËn , ³m_·sswÜd_cb * cd , * u ); 600 #iâdeà OPENSSL_SYS_WIN16 601  PEM_»ad ( FILE * å , ** Çme , ** h—d” , 602 ** d©a ,* Ën ); 603  PEM_wr™e ( FILE * å ,* Çme ,* hdr ,* d©a , Ën ); 604 * PEM_ASN1_»ad ( d2i_of_void * d2i , cÚ¡ * Çme , FILE * å , ** x , 605 ³m_·sswÜd_cb * cb , * u ); 606  PEM_ASN1_wr™e ( i2d_of_void * i2d ,cÚ¡ * Çme , FILE * å , 607 * x ,cÚ¡ EVP_CIPHER * ’c ,* k¡r , 608  kËn , ³m_·sswÜd_cb * ÿÎback , * u ); 609 STACK_OF ( X509_INFO è* PEM_X509_INFO_»ad ( FILE * å , STACK_OF(X509_INFOè* sk , 610 ³m_·sswÜd_cb * cb , * u ); 613  PEM_S—lIn™ ( PEM_ENCODE_SEAL_CTX * ùx , EVP_CIPHER * ty³ , 614 EVP_MD * md_ty³ , ** ek , * ekl , 615 * iv , EVP_PKEY ** pubk ,  Åubk ); 616  PEM_S—lUpd©e ( PEM_ENCODE_SEAL_CTX * ùx , * out , * ouŽ , 617 * š ,  šl ); 618  PEM_S—lFš® ( PEM_ENCODE_SEAL_CTX * ùx , * sig ,* sigl , 619 * out , * ouŽ , EVP_PKEY * ´iv ); 621  PEM_SignIn™ ( EVP_MD_CTX * ùx , EVP_MD * ty³ ); 622  PEM_SignUpd©e ( EVP_MD_CTX * ùx ,* d , út ); 623  PEM_SignFš® ( EVP_MD_CTX * ùx , * sig»t , 624 * sigËn , EVP_PKEY * pkey ); 626  PEM_def_ÿÎback (* buf ,  num ,  w , * key ); 627  PEM_´oc_ty³ (* buf ,  ty³ ); 628  PEM_dek_šfo (* buf , cÚ¡ * ty³ ,  Ën , * ¡r ); 630 #iâdeà SSLEAY_MACROS 632  ~<Ý’s¦/symhacks.h > 634 DECLARE_PEM_rw ( X509 , X509) 636 DECLARE_PEM_rw ( X509_AUX , X509 ) 638 DECLARE_PEM_rw ( X509_CERT_PAIR , X509_CERT_PAIR) 640 DECLARE_PEM_rw ( X509_REQ , X509_REQ) 641 DECLARE_PEM_wr™e ( X509_REQ_NEW , X509_REQ ) 643 DECLARE_PEM_rw ( X509_CRL , X509_CRL) 645 DECLARE_PEM_rw ( PKCS7 , PKCS7) 647 DECLARE_PEM_rw ( NETSCAPE_CERT_SEQUENCE , NETSCAPE_CERT_SEQUENCE) 649 DECLARE_PEM_rw ( PKCS8 , X509_SIG ) 651 DECLARE_PEM_rw ( PKCS8_PRIV_KEY_INFO , PKCS8_PRIV_KEY_INFO) 653 #iâdeà OPENSSL_NO_RSA 655 DECLARE_PEM_rw_cb ( RSAPriv©eKey , RSA ) 657 DECLARE_PEM_rw_cÚ¡ ( RSAPublicKey , RSA ) 658 DECLARE_PEM_rw ( RSA_PUBKEY , RSA ) 662 #iâdeà OPENSSL_NO_DSA 664 DECLARE_PEM_rw_cb ( DSAPriv©eKey , DSA ) 666 DECLARE_PEM_rw ( DSA_PUBKEY , DSA ) 668 DECLARE_PEM_rw_cÚ¡ ( DSA·¿ms , DSA ) 672 #iâdeà OPENSSL_NO_EC 673 DECLARE_PEM_rw_cÚ¡ ( ECPKP¬am‘”s , EC_GROUP ) 674 DECLARE_PEM_rw_cb ( ECPriv©eKey , EC_KEY ) 675 DECLARE_PEM_rw ( EC_PUBKEY , EC_KEY ) 678 #iâdeà OPENSSL_NO_DH 680 DECLARE_PEM_rw_cÚ¡ ( DH·¿ms , DH ) 684 DECLARE_PEM_rw_cb ( Priv©eKey , EVP_PKEY ) 686 DECLARE_PEM_rw ( PUBKEY , EVP_PKEY ) 688  PEM_wr™e_bio_PKCS8Priv©eKey_nid ( BIO * bp , EVP_PKEY * x ,  nid , 689 * k¡r ,  kËn , 690 ³m_·sswÜd_cb * cb , * u ); 691  PEM_wr™e_bio_PKCS8Priv©eKey ( BIO *, EVP_PKEY *, cÚ¡ EVP_CIPHER *, 692 *, , ³m_·sswÜd_cb *, *); 693  i2d_PKCS8Priv©eKey_bio ( BIO * bp , EVP_PKEY * x , cÚ¡ EVP_CIPHER * ’c , 694 * k¡r ,  kËn , 695 ³m_·sswÜd_cb * cb , * u ); 696  i2d_PKCS8Priv©eKey_nid_bio ( BIO * bp , EVP_PKEY * x ,  nid , 697 * k¡r ,  kËn , 698 ³m_·sswÜd_cb * cb , * u ); 699 EVP_PKEY * d2i_PKCS8Priv©eKey_bio ( BIO * bp , EVP_PKEY ** x , ³m_·sswÜd_cb * cb , * u ); 701  i2d_PKCS8Priv©eKey_å ( FILE * å , EVP_PKEY * x , cÚ¡ EVP_CIPHER * ’c , 702 * k¡r ,  kËn , 703 ³m_·sswÜd_cb * cb , * u ); 704  i2d_PKCS8Priv©eKey_nid_å ( FILE * å , EVP_PKEY * x ,  nid , 705 * k¡r ,  kËn , 706 ³m_·sswÜd_cb * cb , * u ); 707  PEM_wr™e_PKCS8Priv©eKey_nid ( FILE * å , EVP_PKEY * x ,  nid , 708 * k¡r ,  kËn , 709 ³m_·sswÜd_cb * cb , * u ); 711 EVP_PKEY * d2i_PKCS8Priv©eKey_å ( FILE * å , EVP_PKEY ** x , ³m_·sswÜd_cb * cb , * u ); 713  PEM_wr™e_PKCS8Priv©eKey ( FILE * å , EVP_PKEY * x ,cÚ¡ EVP_CIPHER * ’c , 714 * k¡r , kËn , ³m_·sswÜd_cb * cd , * u ); 723  ERR_lßd_PEM_¡ršgs (); 728  #PEM_F_D2I_PKCS8PRIVATEKEY_BIO 120 ) 729  #PEM_F_D2I_PKCS8PRIVATEKEY_FP 121 ) 730  #PEM_F_DO_PK8PKEY 126 ) 731  #PEM_F_DO_PK8PKEY_FP 125 ) 732  #PEM_F_LOAD_IV 101 ) 733  #PEM_F_PEM_ASN1_READ 102 ) 734  #PEM_F_PEM_ASN1_READ_BIO 103 ) 735  #PEM_F_PEM_ASN1_WRITE 104 ) 736  #PEM_F_PEM_ASN1_WRITE_BIO 105 ) 737  #PEM_F_PEM_DEF_CALLBACK 100 ) 738  #PEM_F_PEM_DO_HEADER 106 ) 739  #PEM_F_PEM_F_PEM_WRITE_PKCS8PRIVATEKEY 118 ) 740  #PEM_F_PEM_GET_EVP_CIPHER_INFO 107 ) 741  #PEM_F_PEM_PK8PKEY 119 ) 742  #PEM_F_PEM_READ 108 ) 743  #PEM_F_PEM_READ_BIO 109 ) 744  #PEM_F_PEM_READ_BIO_PRIVATEKEY 123 ) 745  #PEM_F_PEM_READ_PRIVATEKEY 124 ) 746  #PEM_F_PEM_SEALFINAL 110 ) 747  #PEM_F_PEM_SEALINIT 111 ) 748  #PEM_F_PEM_SIGNFINAL 112 ) 749  #PEM_F_PEM_WRITE 113 ) 750  #PEM_F_PEM_WRITE_BIO 114 ) 751  #PEM_F_PEM_X509_INFO_READ 115 ) 752  #PEM_F_PEM_X509_INFO_READ_BIO 116 ) 753  #PEM_F_PEM_X509_INFO_WRITE_BIO 117 ) 756  #PEM_R_BAD_BASE64_DECODE 100 ) 757  #PEM_R_BAD_DECRYPT 101 ) 758  #PEM_R_BAD_END_LINE 102 ) 759  #PEM_R_BAD_IV_CHARS 103 ) 760  #PEM_R_BAD_PASSWORD_READ 104 ) 761  #PEM_R_ERROR_CONVERTING_PRIVATE_KEY 115 ) 762  #PEM_R_NOT_DEK_INFO 105 ) 763  #PEM_R_NOT_ENCRYPTED 106 ) 764  #PEM_R_NOT_PROC_TYPE 107 ) 765  #PEM_R_NO_START_LINE 108 ) 766  #PEM_R_PROBLEMS_GETTING_PASSWORD 109 ) 767  #PEM_R_PUBLIC_KEY_NO_RSA 110 ) 768  #PEM_R_READ_KEY 111 ) 769  #PEM_R_SHORT_HEADER 112 ) 770  #PEM_R_UNSUPPORTED_CIPHER 113 ) 771  #PEM_R_UNSUPPORTED_ENCRYPTION 114 ) 773 #ifdeà __ýlu¥lus @/usr/include/openssl/safestack.h 55 #iâdeà HEADER_SAFESTACK_H 56  #HEADER_SAFESTACK_H ) 58  ~<Ý’s¦/¡ack.h > 60 #ifdeà DEBUG_SAFESTACK 62 #iâdeà CHECKED_PTR_OF 63  #CHECKED_PTR_OF ( ty³ , p ) \ 64 ((*è(1 ? p : ( ty³ *)0)) ) 67  #CHECKED_SK_FREE_FUNC ( ty³ , p ) \ 68 (((*)(*)è((1 ? p : ((*)( ty³ *))0))) ) 70  #CHECKED_SK_CMP_FUNC ( ty³ , p ) \ 72 ((1 ? p : ((*)(cÚ¡ ty³ * cÚ¡ *, cÚ¡y³ * cÚ¡ *))0))) ) 74  #STACK_OF ( ty³ è ¡ack_¡_ ## ) type 75  #PREDECLARE_STACK_OF ( ty³ è `STACK_OF Ñy³); ) 77  #DECLARE_STACK_OF ( ty³ ) \ 78 `STACK_OF ( ty³ ) \ 80 STACK ¡ack ; \ 81 }; ) 83  #IMPLEMENT_STACK_OF ( ty³ è ) 87  #SKM_sk_Ãw ( ty³ , cmp ) \ 88 (( `STACK_OF ( ty³ è*) `sk_Ãw ( `CHECKED_SK_CMP_FUNC Ñy³, cmp ))) ) 89  #SKM_sk_Ãw_nuÎ ( ty³ ) \ 90 (( `STACK_OF ( ty³ è*) `sk_Ãw_nuÎ ()) ) 91  #SKM_sk_ä“ ( ty³ , ¡ ) \ 92 `sk_ä“ ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ )) ) 93  #SKM_sk_num ( ty³ , ¡ ) \ 94 `sk_num ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ )) ) 95  #SKM_sk_v®ue ( ty³ , ¡ , i ) \ 96 (( ty³ *) `sk_v®ue ( `CHECKED_PTR_OF ( `STACK_OF Ñy³), ¡ ), i )) ) 97  #SKM_sk_£t ( ty³ , ¡ , i , v® ) \ 98 `sk_£t ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ ), i , CHECKED_PTR_OFÑy³, v® )) ) 99  #SKM_sk_z”o ( ty³ , ¡ ) \ 100 `sk_z”o ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ )) ) 101  #SKM_sk_push ( ty³ , ¡ , v® ) \ 102 `sk_push ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ ), CHECKED_PTR_OFÑy³, v® )) ) 103  #SKM_sk_unshiá ( ty³ , ¡ , v® ) \ 104 `sk_unshiá ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ ), CHECKED_PTR_OFÑy³, v® )) ) 105  #SKM_sk_fšd ( ty³ , ¡ , v® ) \ 106 `sk_fšd ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ ), CHECKED_PTR_OFÑy³, v® )) ) 107  #SKM_sk_d–‘e ( ty³ , ¡ , i ) \ 108 ( ty³ *) `sk_d–‘e ( `CHECKED_PTR_OF ( `STACK_OF Ñy³), ¡ ), i ) ) 109  #SKM_sk_d–‘e_±r ( ty³ , ¡ , ±r ) \ 110 ( ty³ *) `sk_d–‘e_±r ( `CHECKED_PTR_OF ( `STACK_OF Ñy³), ¡ ), CHECKED_PTR_OFÑy³, ±r )) ) 111  #SKM_sk_š£¹ ( ty³ , ¡ , v® , i ) \ 112 `sk_š£¹ ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ ), CHECKED_PTR_OFÑy³, v® ), i ) ) 113  #SKM_sk_£t_cmp_func ( ty³ , ¡ , cmp ) \ 114 (((*)(cÚ¡ ty³ * const *,constype * const *)) \ 115 `sk_£t_cmp_func ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ ), `CHECKED_SK_CMP_FUNC Ñy³, cmp ))) ) 116  #SKM_sk_dup ( ty³ , ¡ ) \ 117 ( `STACK_OF ( ty³ è*) `sk_dup ( `CHECKED_PTR_OF (STACK_OFÑy³), ¡ )) ) 118  #SKM_sk_pÝ_ä“ ( ty³ , ¡ , ä“_func ) \ 119 `sk_pÝ_ä“ ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ ), `CHECKED_SK_FREE_FUNC Ñy³, ä“_func )) ) 120  #SKM_sk_shiá ( ty³ , ¡ ) \ 121 ( ty³ *) `sk_shiá ( `CHECKED_PTR_OF ( `STACK_OF Ñy³), ¡ )) ) 122  #SKM_sk_pÝ ( ty³ , ¡ ) \ 123 ( ty³ *) `sk_pÝ ( `CHECKED_PTR_OF ( `STACK_OF Ñy³), ¡ )) ) 124  #SKM_sk_sÜt ( ty³ , ¡ ) \ 125 `sk_sÜt ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ )) ) 126  #SKM_sk_is_sÜ‹d ( ty³ , ¡ ) \ 127 `sk_is_sÜ‹d ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ )) ) 129  #SKM_ASN1_SET_OF_d2i ( ty³ , ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 130 ( `STACK_OF ( ty³ è*) `d2i_ASN1_SET ( `CHECKED_PTR_OF (STACK_OFÑy³), ¡ ), \ 131 µ , Ëngth , \ 132 `CHECKED_D2I_OF ( ty³ , d2i_func ), \ 133 `CHECKED_SK_FREE_FUNC ( ty³ , ä“_func ), \ 134 ex_g , ex_þass ) ) 136  #SKM_ASN1_SET_OF_i2d ( ty³ , ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 137 `i2d_ASN1_SET ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ ), µ , \ 138 `CHECKED_I2D_OF ( ty³ , i2d_func ), \ 139 ex_g , ex_þass , is_£t ) ) 141  #SKM_ASN1_£q_·ck ( ty³ , ¡ , i2d_func , buf , Ën ) \ 142 `ASN1_£q_·ck ( `CHECKED_PTR_OF ( `STACK_OF ( ty³ ), ¡ ), \ 143 `CHECKED_I2D_OF ( ty³ , i2d_func ), buf , Ën ) ) 145  #SKM_ASN1_£q_uÅack ( ty³ , buf , Ën , d2i_func , ä“_func ) \ 146 ( `STACK_OF ( ty³ è*) `ASN1_£q_uÅack ( buf , Ën , `CHECKED_D2I_OF Ñy³, d2i_func ), `CHECKED_SK_FREE_FUNC Ñy³, ä“_func )) ) 148  #SKM_PKCS12_deüy±_d2i ( ty³ , ®gÜ , d2i_func , ä“_func , ·ss , ·s¦’ , où , £q ) \ 149 ( `STACK_OF ( ty³ è*) `PKCS12_deüy±_d2i ( ®gÜ , \ 150 `CHECKED_D2I_OF ( ty³ , d2i_func ), \ 151 `CHECKED_SK_FREE_FUNC ( ty³ , ä“_func ), \ 152 ·ss , ·s¦’ , où , £q ) ) 156  #STACK_OF ( ty³ è STACK ) 157  #PREDECLARE_STACK_OF ( ty³ è ) 158  #DECLARE_STACK_OF ( ty³ è ) 159  #IMPLEMENT_STACK_OF ( ty³ è ) 161  #SKM_sk_Ãw ( ty³ , cmp ) \ 162 `sk_Ãw (((*)(cÚ¡ * cÚ¡ *, cÚ¡ * cÚ¡ *))( cmp )) ) 163  #SKM_sk_Ãw_nuÎ ( ty³ ) \ 164 `sk_Ãw_nuÎ () ) 165  #SKM_sk_ä“ ( ty³ , ¡ ) \ 166 `sk_ä“ ( ¡ ) ) 167  #SKM_sk_num ( ty³ , ¡ ) \ 168 `sk_num ( ¡ ) ) 169  #SKM_sk_v®ue ( ty³ , ¡ , i ) \ 170 (( ty³ *) `sk_v®ue ( ¡ , i )) ) 171  #SKM_sk_£t ( ty³ , ¡ , i , v® ) \ 172 (( ty³ *) `sk_£t ( ¡ , i ,(*) v® )) ) 173  #SKM_sk_z”o ( ty³ , ¡ ) \ 174 `sk_z”o ( ¡ ) ) 175  #SKM_sk_push ( ty³ , ¡ , v® ) \ 176 `sk_push ( ¡ , (*) v® ) ) 177  #SKM_sk_unshiá ( ty³ , ¡ , v® ) \ 178 `sk_unshiá ( ¡ , v® ) ) 179  #SKM_sk_fšd ( ty³ , ¡ , v® ) \ 180 `sk_fšd ( ¡ , (*) v® ) ) 181  #SKM_sk_d–‘e ( ty³ , ¡ , i ) \ 182 (( ty³ *) `sk_d–‘e ( ¡ , i )) ) 183  #SKM_sk_d–‘e_±r ( ty³ , ¡ , ±r ) \ 184 (( ty³ *) `sk_d–‘e_±r ( ¡ ,(*) ±r )) ) 185  #SKM_sk_š£¹ ( ty³ , ¡ , v® , i ) \ 186 `sk_š£¹ ( ¡ , (*) v® , i ) ) 187  #SKM_sk_£t_cmp_func ( ty³ , ¡ , cmp ) \ 188 (((*)(cÚ¡ ty³ * const *,constype * const *)) \ 189 `sk_£t_cmp_func ( ¡ , ((*)(cÚ¡ * cÚ¡ *, cÚ¡ * cÚ¡ *))( cmp ))) ) 190  #SKM_sk_dup ( ty³ , ¡ ) \ 191 `sk_dup ( ¡ ) ) 192  #SKM_sk_pÝ_ä“ ( ty³ , ¡ , ä“_func ) \ 193 `sk_pÝ_ä“ ( ¡ , ((*)(*)) ä“_func ) ) 194  #SKM_sk_shiá ( ty³ , ¡ ) \ 195 (( ty³ *) `sk_shiá ( ¡ )) ) 196  #SKM_sk_pÝ ( ty³ , ¡ ) \ 197 (( ty³ *) `sk_pÝ ( ¡ )) ) 198  #SKM_sk_sÜt ( ty³ , ¡ ) \ 199 `sk_sÜt ( ¡ ) ) 200  #SKM_sk_is_sÜ‹d ( ty³ , ¡ ) \ 201 `sk_is_sÜ‹d ( ¡ ) ) 203  #SKM_ASN1_SET_OF_d2i ( ty³ , ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 204 `d2i_ASN1_SET ( ¡ , µ , Ëngth , (*(*)(** ,cÚ¡ ** ,)) d2i_func , ((*)(*)) ä“_func , ex_g , ex_þass ) ) 205  #SKM_ASN1_SET_OF_i2d ( ty³ , ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 206 `i2d_ASN1_SET ( ¡ , µ ,((*)(*, **)) i2d_func , ex_g , ex_þass , is_£t ) ) 208  #SKM_ASN1_£q_·ck ( ty³ , ¡ , i2d_func , buf , Ën ) \ 209 `ASN1_£q_·ck ( ¡ , ((*)(*, **)) i2d_func , buf , Ën ) ) 210  #SKM_ASN1_£q_uÅack ( ty³ , buf , Ën , d2i_func , ä“_func ) \ 211 `ASN1_£q_uÅack ( buf , Ën ,(*(*)(**,cÚ¡ **,)) d2i_func , ((*)(*)) ä“_func ) ) 213  #SKM_PKCS12_deüy±_d2i ( ty³ , ®gÜ , d2i_func , ä“_func , ·ss , ·s¦’ , où , £q ) \ 214 (( STACK *) `PKCS12_deüy±_d2i ( ®gÜ ,(*(*)()) d2i_func , ((*)(*)) ä“_func , ·ss , ·s¦’ , où , £q )) ) 219  #sk_ACCESS_DESCRIPTION_Ãw ( ¡ è `SKM_sk_Ãw ( ACCESS_DESCRIPTION , (¡)) ) 220  #sk_ACCESS_DESCRIPTION_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( ACCESS_DESCRIPTION ) ) 221  #sk_ACCESS_DESCRIPTION_ä“ ( ¡ è `SKM_sk_ä“ ( ACCESS_DESCRIPTION , (¡)) ) 222  #sk_ACCESS_DESCRIPTION_num ( ¡ è `SKM_sk_num ( ACCESS_DESCRIPTION , (¡)) ) 223  #sk_ACCESS_DESCRIPTION_v®ue ( ¡ , i è `SKM_sk_v®ue ( ACCESS_DESCRIPTION , (¡), (i)) ) 224  #sk_ACCESS_DESCRIPTION_£t ( ¡ , i , v® è `SKM_sk_£t ( ACCESS_DESCRIPTION , (¡), (i), (v®)) ) 225  #sk_ACCESS_DESCRIPTION_z”o ( ¡ è `SKM_sk_z”o ( ACCESS_DESCRIPTION , (¡)) ) 226  #sk_ACCESS_DESCRIPTION_push ( ¡ , v® è `SKM_sk_push ( ACCESS_DESCRIPTION , (¡), (v®)) ) 227  #sk_ACCESS_DESCRIPTION_unshiá ( ¡ , v® è `SKM_sk_unshiá ( ACCESS_DESCRIPTION , (¡), (v®)) ) 228  #sk_ACCESS_DESCRIPTION_fšd ( ¡ , v® è `SKM_sk_fšd ( ACCESS_DESCRIPTION , (¡), (v®)) ) 229  #sk_ACCESS_DESCRIPTION_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( ACCESS_DESCRIPTION , (¡), (v®)) ) 230  #sk_ACCESS_DESCRIPTION_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( ACCESS_DESCRIPTION , (¡), (i)) ) 231  #sk_ACCESS_DESCRIPTION_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( ACCESS_DESCRIPTION , (¡), (±r)) ) 232  #sk_ACCESS_DESCRIPTION_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( ACCESS_DESCRIPTION , (¡), (v®), (i)) ) 233  #sk_ACCESS_DESCRIPTION_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( ACCESS_DESCRIPTION , (¡), (cmp)) ) 234  #sk_ACCESS_DESCRIPTION_dup ( ¡ è `SKM_sk_dup ( ACCESS_DESCRIPTION , st) ) 235  #sk_ACCESS_DESCRIPTION_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( ACCESS_DESCRIPTION , (¡), (ä“_func)) ) 236  #sk_ACCESS_DESCRIPTION_shiá ( ¡ è `SKM_sk_shiá ( ACCESS_DESCRIPTION , (¡)) ) 237  #sk_ACCESS_DESCRIPTION_pÝ ( ¡ è `SKM_sk_pÝ ( ACCESS_DESCRIPTION , (¡)) ) 238  #sk_ACCESS_DESCRIPTION_sÜt ( ¡ è `SKM_sk_sÜt ( ACCESS_DESCRIPTION , (¡)) ) 239  #sk_ACCESS_DESCRIPTION_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( ACCESS_DESCRIPTION , (¡)) ) 241  #sk_ASIdOrRªge_Ãw ( ¡ è `SKM_sk_Ãw ( ASIdOrRªge , (¡)) ) 242  #sk_ASIdOrRªge_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( ASIdOrRªge ) ) 243  #sk_ASIdOrRªge_ä“ ( ¡ è `SKM_sk_ä“ ( ASIdOrRªge , (¡)) ) 244  #sk_ASIdOrRªge_num ( ¡ è `SKM_sk_num ( ASIdOrRªge , (¡)) ) 245  #sk_ASIdOrRªge_v®ue ( ¡ , i è `SKM_sk_v®ue ( ASIdOrRªge , (¡), (i)) ) 246  #sk_ASIdOrRªge_£t ( ¡ , i , v® è `SKM_sk_£t ( ASIdOrRªge , (¡), (i), (v®)) ) 247  #sk_ASIdOrRªge_z”o ( ¡ è `SKM_sk_z”o ( ASIdOrRªge , (¡)) ) 248  #sk_ASIdOrRªge_push ( ¡ , v® è `SKM_sk_push ( ASIdOrRªge , (¡), (v®)) ) 249  #sk_ASIdOrRªge_unshiá ( ¡ , v® è `SKM_sk_unshiá ( ASIdOrRªge , (¡), (v®)) ) 250  #sk_ASIdOrRªge_fšd ( ¡ , v® è `SKM_sk_fšd ( ASIdOrRªge , (¡), (v®)) ) 251  #sk_ASIdOrRªge_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( ASIdOrRªge , (¡), (v®)) ) 252  #sk_ASIdOrRªge_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( ASIdOrRªge , (¡), (i)) ) 253  #sk_ASIdOrRªge_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( ASIdOrRªge , (¡), (±r)) ) 254  #sk_ASIdOrRªge_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( ASIdOrRªge , (¡), (v®), (i)) ) 255  #sk_ASIdOrRªge_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( ASIdOrRªge , (¡), (cmp)) ) 256  #sk_ASIdOrRªge_dup ( ¡ è `SKM_sk_dup ( ASIdOrRªge , st) ) 257  #sk_ASIdOrRªge_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( ASIdOrRªge , (¡), (ä“_func)) ) 258  #sk_ASIdOrRªge_shiá ( ¡ è `SKM_sk_shiá ( ASIdOrRªge , (¡)) ) 259  #sk_ASIdOrRªge_pÝ ( ¡ è `SKM_sk_pÝ ( ASIdOrRªge , (¡)) ) 260  #sk_ASIdOrRªge_sÜt ( ¡ è `SKM_sk_sÜt ( ASIdOrRªge , (¡)) ) 261  #sk_ASIdOrRªge_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( ASIdOrRªge , (¡)) ) 263  #sk_ASN1_GENERALSTRING_Ãw ( ¡ è `SKM_sk_Ãw ( ASN1_GENERALSTRING , (¡)) ) 264  #sk_ASN1_GENERALSTRING_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( ASN1_GENERALSTRING ) ) 265  #sk_ASN1_GENERALSTRING_ä“ ( ¡ è `SKM_sk_ä“ ( ASN1_GENERALSTRING , (¡)) ) 266  #sk_ASN1_GENERALSTRING_num ( ¡ è `SKM_sk_num ( ASN1_GENERALSTRING , (¡)) ) 267  #sk_ASN1_GENERALSTRING_v®ue ( ¡ , i è `SKM_sk_v®ue ( ASN1_GENERALSTRING , (¡), (i)) ) 268  #sk_ASN1_GENERALSTRING_£t ( ¡ , i , v® è `SKM_sk_£t ( ASN1_GENERALSTRING , (¡), (i), (v®)) ) 269  #sk_ASN1_GENERALSTRING_z”o ( ¡ è `SKM_sk_z”o ( ASN1_GENERALSTRING , (¡)) ) 270  #sk_ASN1_GENERALSTRING_push ( ¡ , v® è `SKM_sk_push ( ASN1_GENERALSTRING , (¡), (v®)) ) 271  #sk_ASN1_GENERALSTRING_unshiá ( ¡ , v® è `SKM_sk_unshiá ( ASN1_GENERALSTRING , (¡), (v®)) ) 272  #sk_ASN1_GENERALSTRING_fšd ( ¡ , v® è `SKM_sk_fšd ( ASN1_GENERALSTRING , (¡), (v®)) ) 273  #sk_ASN1_GENERALSTRING_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( ASN1_GENERALSTRING , (¡), (v®)) ) 274  #sk_ASN1_GENERALSTRING_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( ASN1_GENERALSTRING , (¡), (i)) ) 275  #sk_ASN1_GENERALSTRING_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( ASN1_GENERALSTRING , (¡), (±r)) ) 276  #sk_ASN1_GENERALSTRING_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( ASN1_GENERALSTRING , (¡), (v®), (i)) ) 277  #sk_ASN1_GENERALSTRING_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( ASN1_GENERALSTRING , (¡), (cmp)) ) 278  #sk_ASN1_GENERALSTRING_dup ( ¡ è `SKM_sk_dup ( ASN1_GENERALSTRING , st) ) 279  #sk_ASN1_GENERALSTRING_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( ASN1_GENERALSTRING , (¡), (ä“_func)) ) 280  #sk_ASN1_GENERALSTRING_shiá ( ¡ è `SKM_sk_shiá ( ASN1_GENERALSTRING , (¡)) ) 281  #sk_ASN1_GENERALSTRING_pÝ ( ¡ è `SKM_sk_pÝ ( ASN1_GENERALSTRING , (¡)) ) 282  #sk_ASN1_GENERALSTRING_sÜt ( ¡ è `SKM_sk_sÜt ( ASN1_GENERALSTRING , (¡)) ) 283  #sk_ASN1_GENERALSTRING_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( ASN1_GENERALSTRING , (¡)) ) 285  #sk_ASN1_INTEGER_Ãw ( ¡ è `SKM_sk_Ãw ( ASN1_INTEGER , (¡)) ) 286  #sk_ASN1_INTEGER_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( ASN1_INTEGER ) ) 287  #sk_ASN1_INTEGER_ä“ ( ¡ è `SKM_sk_ä“ ( ASN1_INTEGER , (¡)) ) 288  #sk_ASN1_INTEGER_num ( ¡ è `SKM_sk_num ( ASN1_INTEGER , (¡)) ) 289  #sk_ASN1_INTEGER_v®ue ( ¡ , i è `SKM_sk_v®ue ( ASN1_INTEGER , (¡), (i)) ) 290  #sk_ASN1_INTEGER_£t ( ¡ , i , v® è `SKM_sk_£t ( ASN1_INTEGER , (¡), (i), (v®)) ) 291  #sk_ASN1_INTEGER_z”o ( ¡ è `SKM_sk_z”o ( ASN1_INTEGER , (¡)) ) 292  #sk_ASN1_INTEGER_push ( ¡ , v® è `SKM_sk_push ( ASN1_INTEGER , (¡), (v®)) ) 293  #sk_ASN1_INTEGER_unshiá ( ¡ , v® è `SKM_sk_unshiá ( ASN1_INTEGER , (¡), (v®)) ) 294  #sk_ASN1_INTEGER_fšd ( ¡ , v® è `SKM_sk_fšd ( ASN1_INTEGER , (¡), (v®)) ) 295  #sk_ASN1_INTEGER_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( ASN1_INTEGER , (¡), (v®)) ) 296  #sk_ASN1_INTEGER_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( ASN1_INTEGER , (¡), (i)) ) 297  #sk_ASN1_INTEGER_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( ASN1_INTEGER , (¡), (±r)) ) 298  #sk_ASN1_INTEGER_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( ASN1_INTEGER , (¡), (v®), (i)) ) 299  #sk_ASN1_INTEGER_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( ASN1_INTEGER , (¡), (cmp)) ) 300  #sk_ASN1_INTEGER_dup ( ¡ è `SKM_sk_dup ( ASN1_INTEGER , st) ) 301  #sk_ASN1_INTEGER_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( ASN1_INTEGER , (¡), (ä“_func)) ) 302  #sk_ASN1_INTEGER_shiá ( ¡ è `SKM_sk_shiá ( ASN1_INTEGER , (¡)) ) 303  #sk_ASN1_INTEGER_pÝ ( ¡ è `SKM_sk_pÝ ( ASN1_INTEGER , (¡)) ) 304  #sk_ASN1_INTEGER_sÜt ( ¡ è `SKM_sk_sÜt ( ASN1_INTEGER , (¡)) ) 305  #sk_ASN1_INTEGER_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( ASN1_INTEGER , (¡)) ) 307  #sk_ASN1_OBJECT_Ãw ( ¡ è `SKM_sk_Ãw ( ASN1_OBJECT , (¡)) ) 308  #sk_ASN1_OBJECT_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( ASN1_OBJECT ) ) 309  #sk_ASN1_OBJECT_ä“ ( ¡ è `SKM_sk_ä“ ( ASN1_OBJECT , (¡)) ) 310  #sk_ASN1_OBJECT_num ( ¡ è `SKM_sk_num ( ASN1_OBJECT , (¡)) ) 311  #sk_ASN1_OBJECT_v®ue ( ¡ , i è `SKM_sk_v®ue ( ASN1_OBJECT , (¡), (i)) ) 312  #sk_ASN1_OBJECT_£t ( ¡ , i , v® è `SKM_sk_£t ( ASN1_OBJECT , (¡), (i), (v®)) ) 313  #sk_ASN1_OBJECT_z”o ( ¡ è `SKM_sk_z”o ( ASN1_OBJECT , (¡)) ) 314  #sk_ASN1_OBJECT_push ( ¡ , v® è `SKM_sk_push ( ASN1_OBJECT , (¡), (v®)) ) 315  #sk_ASN1_OBJECT_unshiá ( ¡ , v® è `SKM_sk_unshiá ( ASN1_OBJECT , (¡), (v®)) ) 316  #sk_ASN1_OBJECT_fšd ( ¡ , v® è `SKM_sk_fšd ( ASN1_OBJECT , (¡), (v®)) ) 317  #sk_ASN1_OBJECT_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( ASN1_OBJECT , (¡), (v®)) ) 318  #sk_ASN1_OBJECT_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( ASN1_OBJECT , (¡), (i)) ) 319  #sk_ASN1_OBJECT_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( ASN1_OBJECT , (¡), (±r)) ) 320  #sk_ASN1_OBJECT_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( ASN1_OBJECT , (¡), (v®), (i)) ) 321  #sk_ASN1_OBJECT_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( ASN1_OBJECT , (¡), (cmp)) ) 322  #sk_ASN1_OBJECT_dup ( ¡ è `SKM_sk_dup ( ASN1_OBJECT , st) ) 323  #sk_ASN1_OBJECT_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( ASN1_OBJECT , (¡), (ä“_func)) ) 324  #sk_ASN1_OBJECT_shiá ( ¡ è `SKM_sk_shiá ( ASN1_OBJECT , (¡)) ) 325  #sk_ASN1_OBJECT_pÝ ( ¡ è `SKM_sk_pÝ ( ASN1_OBJECT , (¡)) ) 326  #sk_ASN1_OBJECT_sÜt ( ¡ è `SKM_sk_sÜt ( ASN1_OBJECT , (¡)) ) 327  #sk_ASN1_OBJECT_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( ASN1_OBJECT , (¡)) ) 329  #sk_ASN1_STRING_TABLE_Ãw ( ¡ è `SKM_sk_Ãw ( ASN1_STRING_TABLE , (¡)) ) 330  #sk_ASN1_STRING_TABLE_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( ASN1_STRING_TABLE ) ) 331  #sk_ASN1_STRING_TABLE_ä“ ( ¡ è `SKM_sk_ä“ ( ASN1_STRING_TABLE , (¡)) ) 332  #sk_ASN1_STRING_TABLE_num ( ¡ è `SKM_sk_num ( ASN1_STRING_TABLE , (¡)) ) 333  #sk_ASN1_STRING_TABLE_v®ue ( ¡ , i è `SKM_sk_v®ue ( ASN1_STRING_TABLE , (¡), (i)) ) 334  #sk_ASN1_STRING_TABLE_£t ( ¡ , i , v® è `SKM_sk_£t ( ASN1_STRING_TABLE , (¡), (i), (v®)) ) 335  #sk_ASN1_STRING_TABLE_z”o ( ¡ è `SKM_sk_z”o ( ASN1_STRING_TABLE , (¡)) ) 336  #sk_ASN1_STRING_TABLE_push ( ¡ , v® è `SKM_sk_push ( ASN1_STRING_TABLE , (¡), (v®)) ) 337  #sk_ASN1_STRING_TABLE_unshiá ( ¡ , v® è `SKM_sk_unshiá ( ASN1_STRING_TABLE , (¡), (v®)) ) 338  #sk_ASN1_STRING_TABLE_fšd ( ¡ , v® è `SKM_sk_fšd ( ASN1_STRING_TABLE , (¡), (v®)) ) 339  #sk_ASN1_STRING_TABLE_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( ASN1_STRING_TABLE , (¡), (v®)) ) 340  #sk_ASN1_STRING_TABLE_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( ASN1_STRING_TABLE , (¡), (i)) ) 341  #sk_ASN1_STRING_TABLE_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( ASN1_STRING_TABLE , (¡), (±r)) ) 342  #sk_ASN1_STRING_TABLE_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( ASN1_STRING_TABLE , (¡), (v®), (i)) ) 343  #sk_ASN1_STRING_TABLE_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( ASN1_STRING_TABLE , (¡), (cmp)) ) 344  #sk_ASN1_STRING_TABLE_dup ( ¡ è `SKM_sk_dup ( ASN1_STRING_TABLE , st) ) 345  #sk_ASN1_STRING_TABLE_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( ASN1_STRING_TABLE , (¡), (ä“_func)) ) 346  #sk_ASN1_STRING_TABLE_shiá ( ¡ è `SKM_sk_shiá ( ASN1_STRING_TABLE , (¡)) ) 347  #sk_ASN1_STRING_TABLE_pÝ ( ¡ è `SKM_sk_pÝ ( ASN1_STRING_TABLE , (¡)) ) 348  #sk_ASN1_STRING_TABLE_sÜt ( ¡ è `SKM_sk_sÜt ( ASN1_STRING_TABLE , (¡)) ) 349  #sk_ASN1_STRING_TABLE_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( ASN1_STRING_TABLE , (¡)) ) 351  #sk_ASN1_TYPE_Ãw ( ¡ è `SKM_sk_Ãw ( ASN1_TYPE , (¡)) ) 352  #sk_ASN1_TYPE_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( ASN1_TYPE ) ) 353  #sk_ASN1_TYPE_ä“ ( ¡ è `SKM_sk_ä“ ( ASN1_TYPE , (¡)) ) 354  #sk_ASN1_TYPE_num ( ¡ è `SKM_sk_num ( ASN1_TYPE , (¡)) ) 355  #sk_ASN1_TYPE_v®ue ( ¡ , i è `SKM_sk_v®ue ( ASN1_TYPE , (¡), (i)) ) 356  #sk_ASN1_TYPE_£t ( ¡ , i , v® è `SKM_sk_£t ( ASN1_TYPE , (¡), (i), (v®)) ) 357  #sk_ASN1_TYPE_z”o ( ¡ è `SKM_sk_z”o ( ASN1_TYPE , (¡)) ) 358  #sk_ASN1_TYPE_push ( ¡ , v® è `SKM_sk_push ( ASN1_TYPE , (¡), (v®)) ) 359  #sk_ASN1_TYPE_unshiá ( ¡ , v® è `SKM_sk_unshiá ( ASN1_TYPE , (¡), (v®)) ) 360  #sk_ASN1_TYPE_fšd ( ¡ , v® è `SKM_sk_fšd ( ASN1_TYPE , (¡), (v®)) ) 361  #sk_ASN1_TYPE_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( ASN1_TYPE , (¡), (v®)) ) 362  #sk_ASN1_TYPE_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( ASN1_TYPE , (¡), (i)) ) 363  #sk_ASN1_TYPE_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( ASN1_TYPE , (¡), (±r)) ) 364  #sk_ASN1_TYPE_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( ASN1_TYPE , (¡), (v®), (i)) ) 365  #sk_ASN1_TYPE_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( ASN1_TYPE , (¡), (cmp)) ) 366  #sk_ASN1_TYPE_dup ( ¡ è `SKM_sk_dup ( ASN1_TYPE , st) ) 367  #sk_ASN1_TYPE_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( ASN1_TYPE , (¡), (ä“_func)) ) 368  #sk_ASN1_TYPE_shiá ( ¡ è `SKM_sk_shiá ( ASN1_TYPE , (¡)) ) 369  #sk_ASN1_TYPE_pÝ ( ¡ è `SKM_sk_pÝ ( ASN1_TYPE , (¡)) ) 370  #sk_ASN1_TYPE_sÜt ( ¡ è `SKM_sk_sÜt ( ASN1_TYPE , (¡)) ) 371  #sk_ASN1_TYPE_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( ASN1_TYPE , (¡)) ) 373  #sk_ASN1_VALUE_Ãw ( ¡ è `SKM_sk_Ãw ( ASN1_VALUE , (¡)) ) 374  #sk_ASN1_VALUE_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( ASN1_VALUE ) ) 375  #sk_ASN1_VALUE_ä“ ( ¡ è `SKM_sk_ä“ ( ASN1_VALUE , (¡)) ) 376  #sk_ASN1_VALUE_num ( ¡ è `SKM_sk_num ( ASN1_VALUE , (¡)) ) 377  #sk_ASN1_VALUE_v®ue ( ¡ , i è `SKM_sk_v®ue ( ASN1_VALUE , (¡), (i)) ) 378  #sk_ASN1_VALUE_£t ( ¡ , i , v® è `SKM_sk_£t ( ASN1_VALUE , (¡), (i), (v®)) ) 379  #sk_ASN1_VALUE_z”o ( ¡ è `SKM_sk_z”o ( ASN1_VALUE , (¡)) ) 380  #sk_ASN1_VALUE_push ( ¡ , v® è `SKM_sk_push ( ASN1_VALUE , (¡), (v®)) ) 381  #sk_ASN1_VALUE_unshiá ( ¡ , v® è `SKM_sk_unshiá ( ASN1_VALUE , (¡), (v®)) ) 382  #sk_ASN1_VALUE_fšd ( ¡ , v® è `SKM_sk_fšd ( ASN1_VALUE , (¡), (v®)) ) 383  #sk_ASN1_VALUE_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( ASN1_VALUE , (¡), (v®)) ) 384  #sk_ASN1_VALUE_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( ASN1_VALUE , (¡), (i)) ) 385  #sk_ASN1_VALUE_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( ASN1_VALUE , (¡), (±r)) ) 386  #sk_ASN1_VALUE_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( ASN1_VALUE , (¡), (v®), (i)) ) 387  #sk_ASN1_VALUE_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( ASN1_VALUE , (¡), (cmp)) ) 388  #sk_ASN1_VALUE_dup ( ¡ è `SKM_sk_dup ( ASN1_VALUE , st) ) 389  #sk_ASN1_VALUE_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( ASN1_VALUE , (¡), (ä“_func)) ) 390  #sk_ASN1_VALUE_shiá ( ¡ è `SKM_sk_shiá ( ASN1_VALUE , (¡)) ) 391  #sk_ASN1_VALUE_pÝ ( ¡ è `SKM_sk_pÝ ( ASN1_VALUE , (¡)) ) 392  #sk_ASN1_VALUE_sÜt ( ¡ è `SKM_sk_sÜt ( ASN1_VALUE , (¡)) ) 393  #sk_ASN1_VALUE_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( ASN1_VALUE , (¡)) ) 395  #sk_BIO_Ãw ( ¡ è `SKM_sk_Ãw ( BIO , (¡)) ) 396  #sk_BIO_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( BIO ) ) 397  #sk_BIO_ä“ ( ¡ è `SKM_sk_ä“ ( BIO , (¡)) ) 398  #sk_BIO_num ( ¡ è `SKM_sk_num ( BIO , (¡)) ) 399  #sk_BIO_v®ue ( ¡ , i è `SKM_sk_v®ue ( BIO , (¡), (i)) ) 400  #sk_BIO_£t ( ¡ , i , v® è `SKM_sk_£t ( BIO , (¡), (i), (v®)) ) 401  #sk_BIO_z”o ( ¡ è `SKM_sk_z”o ( BIO , (¡)) ) 402  #sk_BIO_push ( ¡ , v® è `SKM_sk_push ( BIO , (¡), (v®)) ) 403  #sk_BIO_unshiá ( ¡ , v® è `SKM_sk_unshiá ( BIO , (¡), (v®)) ) 404  #sk_BIO_fšd ( ¡ , v® è `SKM_sk_fšd ( BIO , (¡), (v®)) ) 405  #sk_BIO_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( BIO , (¡), (v®)) ) 406  #sk_BIO_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( BIO , (¡), (i)) ) 407  #sk_BIO_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( BIO , (¡), (±r)) ) 408  #sk_BIO_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( BIO , (¡), (v®), (i)) ) 409  #sk_BIO_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( BIO , (¡), (cmp)) ) 410  #sk_BIO_dup ( ¡ è `SKM_sk_dup ( BIO , st) ) 411  #sk_BIO_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( BIO , (¡), (ä“_func)) ) 412  #sk_BIO_shiá ( ¡ è `SKM_sk_shiá ( BIO , (¡)) ) 413  #sk_BIO_pÝ ( ¡ è `SKM_sk_pÝ ( BIO , (¡)) ) 414  #sk_BIO_sÜt ( ¡ è `SKM_sk_sÜt ( BIO , (¡)) ) 415  #sk_BIO_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( BIO , (¡)) ) 417  #sk_CONF_IMODULE_Ãw ( ¡ è `SKM_sk_Ãw ( CONF_IMODULE , (¡)) ) 418  #sk_CONF_IMODULE_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( CONF_IMODULE ) ) 419  #sk_CONF_IMODULE_ä“ ( ¡ è `SKM_sk_ä“ ( CONF_IMODULE , (¡)) ) 420  #sk_CONF_IMODULE_num ( ¡ è `SKM_sk_num ( CONF_IMODULE , (¡)) ) 421  #sk_CONF_IMODULE_v®ue ( ¡ , i è `SKM_sk_v®ue ( CONF_IMODULE , (¡), (i)) ) 422  #sk_CONF_IMODULE_£t ( ¡ , i , v® è `SKM_sk_£t ( CONF_IMODULE , (¡), (i), (v®)) ) 423  #sk_CONF_IMODULE_z”o ( ¡ è `SKM_sk_z”o ( CONF_IMODULE , (¡)) ) 424  #sk_CONF_IMODULE_push ( ¡ , v® è `SKM_sk_push ( CONF_IMODULE , (¡), (v®)) ) 425  #sk_CONF_IMODULE_unshiá ( ¡ , v® è `SKM_sk_unshiá ( CONF_IMODULE , (¡), (v®)) ) 426  #sk_CONF_IMODULE_fšd ( ¡ , v® è `SKM_sk_fšd ( CONF_IMODULE , (¡), (v®)) ) 427  #sk_CONF_IMODULE_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( CONF_IMODULE , (¡), (v®)) ) 428  #sk_CONF_IMODULE_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( CONF_IMODULE , (¡), (i)) ) 429  #sk_CONF_IMODULE_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( CONF_IMODULE , (¡), (±r)) ) 430  #sk_CONF_IMODULE_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( CONF_IMODULE , (¡), (v®), (i)) ) 431  #sk_CONF_IMODULE_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( CONF_IMODULE , (¡), (cmp)) ) 432  #sk_CONF_IMODULE_dup ( ¡ è `SKM_sk_dup ( CONF_IMODULE , st) ) 433  #sk_CONF_IMODULE_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( CONF_IMODULE , (¡), (ä“_func)) ) 434  #sk_CONF_IMODULE_shiá ( ¡ è `SKM_sk_shiá ( CONF_IMODULE , (¡)) ) 435  #sk_CONF_IMODULE_pÝ ( ¡ è `SKM_sk_pÝ ( CONF_IMODULE , (¡)) ) 436  #sk_CONF_IMODULE_sÜt ( ¡ è `SKM_sk_sÜt ( CONF_IMODULE , (¡)) ) 437  #sk_CONF_IMODULE_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( CONF_IMODULE , (¡)) ) 439  #sk_CONF_MODULE_Ãw ( ¡ è `SKM_sk_Ãw ( CONF_MODULE , (¡)) ) 440  #sk_CONF_MODULE_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( CONF_MODULE ) ) 441  #sk_CONF_MODULE_ä“ ( ¡ è `SKM_sk_ä“ ( CONF_MODULE , (¡)) ) 442  #sk_CONF_MODULE_num ( ¡ è `SKM_sk_num ( CONF_MODULE , (¡)) ) 443  #sk_CONF_MODULE_v®ue ( ¡ , i è `SKM_sk_v®ue ( CONF_MODULE , (¡), (i)) ) 444  #sk_CONF_MODULE_£t ( ¡ , i , v® è `SKM_sk_£t ( CONF_MODULE , (¡), (i), (v®)) ) 445  #sk_CONF_MODULE_z”o ( ¡ è `SKM_sk_z”o ( CONF_MODULE , (¡)) ) 446  #sk_CONF_MODULE_push ( ¡ , v® è `SKM_sk_push ( CONF_MODULE , (¡), (v®)) ) 447  #sk_CONF_MODULE_unshiá ( ¡ , v® è `SKM_sk_unshiá ( CONF_MODULE , (¡), (v®)) ) 448  #sk_CONF_MODULE_fšd ( ¡ , v® è `SKM_sk_fšd ( CONF_MODULE , (¡), (v®)) ) 449  #sk_CONF_MODULE_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( CONF_MODULE , (¡), (v®)) ) 450  #sk_CONF_MODULE_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( CONF_MODULE , (¡), (i)) ) 451  #sk_CONF_MODULE_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( CONF_MODULE , (¡), (±r)) ) 452  #sk_CONF_MODULE_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( CONF_MODULE , (¡), (v®), (i)) ) 453  #sk_CONF_MODULE_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( CONF_MODULE , (¡), (cmp)) ) 454  #sk_CONF_MODULE_dup ( ¡ è `SKM_sk_dup ( CONF_MODULE , st) ) 455  #sk_CONF_MODULE_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( CONF_MODULE , (¡), (ä“_func)) ) 456  #sk_CONF_MODULE_shiá ( ¡ è `SKM_sk_shiá ( CONF_MODULE , (¡)) ) 457  #sk_CONF_MODULE_pÝ ( ¡ è `SKM_sk_pÝ ( CONF_MODULE , (¡)) ) 458  #sk_CONF_MODULE_sÜt ( ¡ è `SKM_sk_sÜt ( CONF_MODULE , (¡)) ) 459  #sk_CONF_MODULE_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( CONF_MODULE , (¡)) ) 461  #sk_CONF_VALUE_Ãw ( ¡ è `SKM_sk_Ãw ( CONF_VALUE , (¡)) ) 462  #sk_CONF_VALUE_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( CONF_VALUE ) ) 463  #sk_CONF_VALUE_ä“ ( ¡ è `SKM_sk_ä“ ( CONF_VALUE , (¡)) ) 464  #sk_CONF_VALUE_num ( ¡ è `SKM_sk_num ( CONF_VALUE , (¡)) ) 465  #sk_CONF_VALUE_v®ue ( ¡ , i è `SKM_sk_v®ue ( CONF_VALUE , (¡), (i)) ) 466  #sk_CONF_VALUE_£t ( ¡ , i , v® è `SKM_sk_£t ( CONF_VALUE , (¡), (i), (v®)) ) 467  #sk_CONF_VALUE_z”o ( ¡ è `SKM_sk_z”o ( CONF_VALUE , (¡)) ) 468  #sk_CONF_VALUE_push ( ¡ , v® è `SKM_sk_push ( CONF_VALUE , (¡), (v®)) ) 469  #sk_CONF_VALUE_unshiá ( ¡ , v® è `SKM_sk_unshiá ( CONF_VALUE , (¡), (v®)) ) 470  #sk_CONF_VALUE_fšd ( ¡ , v® è `SKM_sk_fšd ( CONF_VALUE , (¡), (v®)) ) 471  #sk_CONF_VALUE_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( CONF_VALUE , (¡), (v®)) ) 472  #sk_CONF_VALUE_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( CONF_VALUE , (¡), (i)) ) 473  #sk_CONF_VALUE_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( CONF_VALUE , (¡), (±r)) ) 474  #sk_CONF_VALUE_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( CONF_VALUE , (¡), (v®), (i)) ) 475  #sk_CONF_VALUE_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( CONF_VALUE , (¡), (cmp)) ) 476  #sk_CONF_VALUE_dup ( ¡ è `SKM_sk_dup ( CONF_VALUE , st) ) 477  #sk_CONF_VALUE_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( CONF_VALUE , (¡), (ä“_func)) ) 478  #sk_CONF_VALUE_shiá ( ¡ è `SKM_sk_shiá ( CONF_VALUE , (¡)) ) 479  #sk_CONF_VALUE_pÝ ( ¡ è `SKM_sk_pÝ ( CONF_VALUE , (¡)) ) 480  #sk_CONF_VALUE_sÜt ( ¡ è `SKM_sk_sÜt ( CONF_VALUE , (¡)) ) 481  #sk_CONF_VALUE_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( CONF_VALUE , (¡)) ) 483  #sk_CRYPTO_EX_DATA_FUNCS_Ãw ( ¡ è `SKM_sk_Ãw ( CRYPTO_EX_DATA_FUNCS , (¡)) ) 484  #sk_CRYPTO_EX_DATA_FUNCS_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( CRYPTO_EX_DATA_FUNCS ) ) 485  #sk_CRYPTO_EX_DATA_FUNCS_ä“ ( ¡ è `SKM_sk_ä“ ( CRYPTO_EX_DATA_FUNCS , (¡)) ) 486  #sk_CRYPTO_EX_DATA_FUNCS_num ( ¡ è `SKM_sk_num ( CRYPTO_EX_DATA_FUNCS , (¡)) ) 487  #sk_CRYPTO_EX_DATA_FUNCS_v®ue ( ¡ , i è `SKM_sk_v®ue ( CRYPTO_EX_DATA_FUNCS , (¡), (i)) ) 488  #sk_CRYPTO_EX_DATA_FUNCS_£t ( ¡ , i , v® è `SKM_sk_£t ( CRYPTO_EX_DATA_FUNCS , (¡), (i), (v®)) ) 489  #sk_CRYPTO_EX_DATA_FUNCS_z”o ( ¡ è `SKM_sk_z”o ( CRYPTO_EX_DATA_FUNCS , (¡)) ) 490  #sk_CRYPTO_EX_DATA_FUNCS_push ( ¡ , v® è `SKM_sk_push ( CRYPTO_EX_DATA_FUNCS , (¡), (v®)) ) 491  #sk_CRYPTO_EX_DATA_FUNCS_unshiá ( ¡ , v® è `SKM_sk_unshiá ( CRYPTO_EX_DATA_FUNCS , (¡), (v®)) ) 492  #sk_CRYPTO_EX_DATA_FUNCS_fšd ( ¡ , v® è `SKM_sk_fšd ( CRYPTO_EX_DATA_FUNCS , (¡), (v®)) ) 493  #sk_CRYPTO_EX_DATA_FUNCS_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( CRYPTO_EX_DATA_FUNCS , (¡), (v®)) ) 494  #sk_CRYPTO_EX_DATA_FUNCS_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( CRYPTO_EX_DATA_FUNCS , (¡), (i)) ) 495  #sk_CRYPTO_EX_DATA_FUNCS_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( CRYPTO_EX_DATA_FUNCS , (¡), (±r)) ) 496  #sk_CRYPTO_EX_DATA_FUNCS_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( CRYPTO_EX_DATA_FUNCS , (¡), (v®), (i)) ) 497  #sk_CRYPTO_EX_DATA_FUNCS_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( CRYPTO_EX_DATA_FUNCS , (¡), (cmp)) ) 498  #sk_CRYPTO_EX_DATA_FUNCS_dup ( ¡ è `SKM_sk_dup ( CRYPTO_EX_DATA_FUNCS , st) ) 499  #sk_CRYPTO_EX_DATA_FUNCS_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( CRYPTO_EX_DATA_FUNCS , (¡), (ä“_func)) ) 500  #sk_CRYPTO_EX_DATA_FUNCS_shiá ( ¡ è `SKM_sk_shiá ( CRYPTO_EX_DATA_FUNCS , (¡)) ) 501  #sk_CRYPTO_EX_DATA_FUNCS_pÝ ( ¡ è `SKM_sk_pÝ ( CRYPTO_EX_DATA_FUNCS , (¡)) ) 502  #sk_CRYPTO_EX_DATA_FUNCS_sÜt ( ¡ è `SKM_sk_sÜt ( CRYPTO_EX_DATA_FUNCS , (¡)) ) 503  #sk_CRYPTO_EX_DATA_FUNCS_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( CRYPTO_EX_DATA_FUNCS , (¡)) ) 505  #sk_CRYPTO_dyÆock_Ãw ( ¡ è `SKM_sk_Ãw ( CRYPTO_dyÆock , (¡)) ) 506  #sk_CRYPTO_dyÆock_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( CRYPTO_dyÆock ) ) 507  #sk_CRYPTO_dyÆock_ä“ ( ¡ è `SKM_sk_ä“ ( CRYPTO_dyÆock , (¡)) ) 508  #sk_CRYPTO_dyÆock_num ( ¡ è `SKM_sk_num ( CRYPTO_dyÆock , (¡)) ) 509  #sk_CRYPTO_dyÆock_v®ue ( ¡ , i è `SKM_sk_v®ue ( CRYPTO_dyÆock , (¡), (i)) ) 510  #sk_CRYPTO_dyÆock_£t ( ¡ , i , v® è `SKM_sk_£t ( CRYPTO_dyÆock , (¡), (i), (v®)) ) 511  #sk_CRYPTO_dyÆock_z”o ( ¡ è `SKM_sk_z”o ( CRYPTO_dyÆock , (¡)) ) 512  #sk_CRYPTO_dyÆock_push ( ¡ , v® è `SKM_sk_push ( CRYPTO_dyÆock , (¡), (v®)) ) 513  #sk_CRYPTO_dyÆock_unshiá ( ¡ , v® è `SKM_sk_unshiá ( CRYPTO_dyÆock , (¡), (v®)) ) 514  #sk_CRYPTO_dyÆock_fšd ( ¡ , v® è `SKM_sk_fšd ( CRYPTO_dyÆock , (¡), (v®)) ) 515  #sk_CRYPTO_dyÆock_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( CRYPTO_dyÆock , (¡), (v®)) ) 516  #sk_CRYPTO_dyÆock_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( CRYPTO_dyÆock , (¡), (i)) ) 517  #sk_CRYPTO_dyÆock_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( CRYPTO_dyÆock , (¡), (±r)) ) 518  #sk_CRYPTO_dyÆock_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( CRYPTO_dyÆock , (¡), (v®), (i)) ) 519  #sk_CRYPTO_dyÆock_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( CRYPTO_dyÆock , (¡), (cmp)) ) 520  #sk_CRYPTO_dyÆock_dup ( ¡ è `SKM_sk_dup ( CRYPTO_dyÆock , st) ) 521  #sk_CRYPTO_dyÆock_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( CRYPTO_dyÆock , (¡), (ä“_func)) ) 522  #sk_CRYPTO_dyÆock_shiá ( ¡ è `SKM_sk_shiá ( CRYPTO_dyÆock , (¡)) ) 523  #sk_CRYPTO_dyÆock_pÝ ( ¡ è `SKM_sk_pÝ ( CRYPTO_dyÆock , (¡)) ) 524  #sk_CRYPTO_dyÆock_sÜt ( ¡ è `SKM_sk_sÜt ( CRYPTO_dyÆock , (¡)) ) 525  #sk_CRYPTO_dyÆock_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( CRYPTO_dyÆock , (¡)) ) 527  #sk_DIST_POINT_Ãw ( ¡ è `SKM_sk_Ãw ( DIST_POINT , (¡)) ) 528  #sk_DIST_POINT_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( DIST_POINT ) ) 529  #sk_DIST_POINT_ä“ ( ¡ è `SKM_sk_ä“ ( DIST_POINT , (¡)) ) 530  #sk_DIST_POINT_num ( ¡ è `SKM_sk_num ( DIST_POINT , (¡)) ) 531  #sk_DIST_POINT_v®ue ( ¡ , i è `SKM_sk_v®ue ( DIST_POINT , (¡), (i)) ) 532  #sk_DIST_POINT_£t ( ¡ , i , v® è `SKM_sk_£t ( DIST_POINT , (¡), (i), (v®)) ) 533  #sk_DIST_POINT_z”o ( ¡ è `SKM_sk_z”o ( DIST_POINT , (¡)) ) 534  #sk_DIST_POINT_push ( ¡ , v® è `SKM_sk_push ( DIST_POINT , (¡), (v®)) ) 535  #sk_DIST_POINT_unshiá ( ¡ , v® è `SKM_sk_unshiá ( DIST_POINT , (¡), (v®)) ) 536  #sk_DIST_POINT_fšd ( ¡ , v® è `SKM_sk_fšd ( DIST_POINT , (¡), (v®)) ) 537  #sk_DIST_POINT_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( DIST_POINT , (¡), (v®)) ) 538  #sk_DIST_POINT_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( DIST_POINT , (¡), (i)) ) 539  #sk_DIST_POINT_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( DIST_POINT , (¡), (±r)) ) 540  #sk_DIST_POINT_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( DIST_POINT , (¡), (v®), (i)) ) 541  #sk_DIST_POINT_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( DIST_POINT , (¡), (cmp)) ) 542  #sk_DIST_POINT_dup ( ¡ è `SKM_sk_dup ( DIST_POINT , st) ) 543  #sk_DIST_POINT_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( DIST_POINT , (¡), (ä“_func)) ) 544  #sk_DIST_POINT_shiá ( ¡ è `SKM_sk_shiá ( DIST_POINT , (¡)) ) 545  #sk_DIST_POINT_pÝ ( ¡ è `SKM_sk_pÝ ( DIST_POINT , (¡)) ) 546  #sk_DIST_POINT_sÜt ( ¡ è `SKM_sk_sÜt ( DIST_POINT , (¡)) ) 547  #sk_DIST_POINT_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( DIST_POINT , (¡)) ) 549  #sk_ENGINE_Ãw ( ¡ è `SKM_sk_Ãw ( ENGINE , (¡)) ) 550  #sk_ENGINE_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( ENGINE ) ) 551  #sk_ENGINE_ä“ ( ¡ è `SKM_sk_ä“ ( ENGINE , (¡)) ) 552  #sk_ENGINE_num ( ¡ è `SKM_sk_num ( ENGINE , (¡)) ) 553  #sk_ENGINE_v®ue ( ¡ , i è `SKM_sk_v®ue ( ENGINE , (¡), (i)) ) 554  #sk_ENGINE_£t ( ¡ , i , v® è `SKM_sk_£t ( ENGINE , (¡), (i), (v®)) ) 555  #sk_ENGINE_z”o ( ¡ è `SKM_sk_z”o ( ENGINE , (¡)) ) 556  #sk_ENGINE_push ( ¡ , v® è `SKM_sk_push ( ENGINE , (¡), (v®)) ) 557  #sk_ENGINE_unshiá ( ¡ , v® è `SKM_sk_unshiá ( ENGINE , (¡), (v®)) ) 558  #sk_ENGINE_fšd ( ¡ , v® è `SKM_sk_fšd ( ENGINE , (¡), (v®)) ) 559  #sk_ENGINE_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( ENGINE , (¡), (v®)) ) 560  #sk_ENGINE_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( ENGINE , (¡), (i)) ) 561  #sk_ENGINE_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( ENGINE , (¡), (±r)) ) 562  #sk_ENGINE_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( ENGINE , (¡), (v®), (i)) ) 563  #sk_ENGINE_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( ENGINE , (¡), (cmp)) ) 564  #sk_ENGINE_dup ( ¡ è `SKM_sk_dup ( ENGINE , st) ) 565  #sk_ENGINE_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( ENGINE , (¡), (ä“_func)) ) 566  #sk_ENGINE_shiá ( ¡ è `SKM_sk_shiá ( ENGINE , (¡)) ) 567  #sk_ENGINE_pÝ ( ¡ è `SKM_sk_pÝ ( ENGINE , (¡)) ) 568  #sk_ENGINE_sÜt ( ¡ è `SKM_sk_sÜt ( ENGINE , (¡)) ) 569  #sk_ENGINE_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( ENGINE , (¡)) ) 571  #sk_ENGINE_CLEANUP_ITEM_Ãw ( ¡ è `SKM_sk_Ãw ( ENGINE_CLEANUP_ITEM , (¡)) ) 572  #sk_ENGINE_CLEANUP_ITEM_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( ENGINE_CLEANUP_ITEM ) ) 573  #sk_ENGINE_CLEANUP_ITEM_ä“ ( ¡ è `SKM_sk_ä“ ( ENGINE_CLEANUP_ITEM , (¡)) ) 574  #sk_ENGINE_CLEANUP_ITEM_num ( ¡ è `SKM_sk_num ( ENGINE_CLEANUP_ITEM , (¡)) ) 575  #sk_ENGINE_CLEANUP_ITEM_v®ue ( ¡ , i è `SKM_sk_v®ue ( ENGINE_CLEANUP_ITEM , (¡), (i)) ) 576  #sk_ENGINE_CLEANUP_ITEM_£t ( ¡ , i , v® è `SKM_sk_£t ( ENGINE_CLEANUP_ITEM , (¡), (i), (v®)) ) 577  #sk_ENGINE_CLEANUP_ITEM_z”o ( ¡ è `SKM_sk_z”o ( ENGINE_CLEANUP_ITEM , (¡)) ) 578  #sk_ENGINE_CLEANUP_ITEM_push ( ¡ , v® è `SKM_sk_push ( ENGINE_CLEANUP_ITEM , (¡), (v®)) ) 579  #sk_ENGINE_CLEANUP_ITEM_unshiá ( ¡ , v® è `SKM_sk_unshiá ( ENGINE_CLEANUP_ITEM , (¡), (v®)) ) 580  #sk_ENGINE_CLEANUP_ITEM_fšd ( ¡ , v® è `SKM_sk_fšd ( ENGINE_CLEANUP_ITEM , (¡), (v®)) ) 581  #sk_ENGINE_CLEANUP_ITEM_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( ENGINE_CLEANUP_ITEM , (¡), (v®)) ) 582  #sk_ENGINE_CLEANUP_ITEM_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( ENGINE_CLEANUP_ITEM , (¡), (i)) ) 583  #sk_ENGINE_CLEANUP_ITEM_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( ENGINE_CLEANUP_ITEM , (¡), (±r)) ) 584  #sk_ENGINE_CLEANUP_ITEM_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( ENGINE_CLEANUP_ITEM , (¡), (v®), (i)) ) 585  #sk_ENGINE_CLEANUP_ITEM_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( ENGINE_CLEANUP_ITEM , (¡), (cmp)) ) 586  #sk_ENGINE_CLEANUP_ITEM_dup ( ¡ è `SKM_sk_dup ( ENGINE_CLEANUP_ITEM , st) ) 587  #sk_ENGINE_CLEANUP_ITEM_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( ENGINE_CLEANUP_ITEM , (¡), (ä“_func)) ) 588  #sk_ENGINE_CLEANUP_ITEM_shiá ( ¡ è `SKM_sk_shiá ( ENGINE_CLEANUP_ITEM , (¡)) ) 589  #sk_ENGINE_CLEANUP_ITEM_pÝ ( ¡ è `SKM_sk_pÝ ( ENGINE_CLEANUP_ITEM , (¡)) ) 590  #sk_ENGINE_CLEANUP_ITEM_sÜt ( ¡ è `SKM_sk_sÜt ( ENGINE_CLEANUP_ITEM , (¡)) ) 591  #sk_ENGINE_CLEANUP_ITEM_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( ENGINE_CLEANUP_ITEM , (¡)) ) 593  #sk_GENERAL_NAME_Ãw ( ¡ è `SKM_sk_Ãw ( GENERAL_NAME , (¡)) ) 594  #sk_GENERAL_NAME_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( GENERAL_NAME ) ) 595  #sk_GENERAL_NAME_ä“ ( ¡ è `SKM_sk_ä“ ( GENERAL_NAME , (¡)) ) 596  #sk_GENERAL_NAME_num ( ¡ è `SKM_sk_num ( GENERAL_NAME , (¡)) ) 597  #sk_GENERAL_NAME_v®ue ( ¡ , i è `SKM_sk_v®ue ( GENERAL_NAME , (¡), (i)) ) 598  #sk_GENERAL_NAME_£t ( ¡ , i , v® è `SKM_sk_£t ( GENERAL_NAME , (¡), (i), (v®)) ) 599  #sk_GENERAL_NAME_z”o ( ¡ è `SKM_sk_z”o ( GENERAL_NAME , (¡)) ) 600  #sk_GENERAL_NAME_push ( ¡ , v® è `SKM_sk_push ( GENERAL_NAME , (¡), (v®)) ) 601  #sk_GENERAL_NAME_unshiá ( ¡ , v® è `SKM_sk_unshiá ( GENERAL_NAME , (¡), (v®)) ) 602  #sk_GENERAL_NAME_fšd ( ¡ , v® è `SKM_sk_fšd ( GENERAL_NAME , (¡), (v®)) ) 603  #sk_GENERAL_NAME_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( GENERAL_NAME , (¡), (v®)) ) 604  #sk_GENERAL_NAME_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( GENERAL_NAME , (¡), (i)) ) 605  #sk_GENERAL_NAME_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( GENERAL_NAME , (¡), (±r)) ) 606  #sk_GENERAL_NAME_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( GENERAL_NAME , (¡), (v®), (i)) ) 607  #sk_GENERAL_NAME_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( GENERAL_NAME , (¡), (cmp)) ) 608  #sk_GENERAL_NAME_dup ( ¡ è `SKM_sk_dup ( GENERAL_NAME , st) ) 609  #sk_GENERAL_NAME_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( GENERAL_NAME , (¡), (ä“_func)) ) 610  #sk_GENERAL_NAME_shiá ( ¡ è `SKM_sk_shiá ( GENERAL_NAME , (¡)) ) 611  #sk_GENERAL_NAME_pÝ ( ¡ è `SKM_sk_pÝ ( GENERAL_NAME , (¡)) ) 612  #sk_GENERAL_NAME_sÜt ( ¡ è `SKM_sk_sÜt ( GENERAL_NAME , (¡)) ) 613  #sk_GENERAL_NAME_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( GENERAL_NAME , (¡)) ) 615  #sk_GENERAL_SUBTREE_Ãw ( ¡ è `SKM_sk_Ãw ( GENERAL_SUBTREE , (¡)) ) 616  #sk_GENERAL_SUBTREE_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( GENERAL_SUBTREE ) ) 617  #sk_GENERAL_SUBTREE_ä“ ( ¡ è `SKM_sk_ä“ ( GENERAL_SUBTREE , (¡)) ) 618  #sk_GENERAL_SUBTREE_num ( ¡ è `SKM_sk_num ( GENERAL_SUBTREE , (¡)) ) 619  #sk_GENERAL_SUBTREE_v®ue ( ¡ , i è `SKM_sk_v®ue ( GENERAL_SUBTREE , (¡), (i)) ) 620  #sk_GENERAL_SUBTREE_£t ( ¡ , i , v® è `SKM_sk_£t ( GENERAL_SUBTREE , (¡), (i), (v®)) ) 621  #sk_GENERAL_SUBTREE_z”o ( ¡ è `SKM_sk_z”o ( GENERAL_SUBTREE , (¡)) ) 622  #sk_GENERAL_SUBTREE_push ( ¡ , v® è `SKM_sk_push ( GENERAL_SUBTREE , (¡), (v®)) ) 623  #sk_GENERAL_SUBTREE_unshiá ( ¡ , v® è `SKM_sk_unshiá ( GENERAL_SUBTREE , (¡), (v®)) ) 624  #sk_GENERAL_SUBTREE_fšd ( ¡ , v® è `SKM_sk_fšd ( GENERAL_SUBTREE , (¡), (v®)) ) 625  #sk_GENERAL_SUBTREE_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( GENERAL_SUBTREE , (¡), (v®)) ) 626  #sk_GENERAL_SUBTREE_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( GENERAL_SUBTREE , (¡), (i)) ) 627  #sk_GENERAL_SUBTREE_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( GENERAL_SUBTREE , (¡), (±r)) ) 628  #sk_GENERAL_SUBTREE_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( GENERAL_SUBTREE , (¡), (v®), (i)) ) 629  #sk_GENERAL_SUBTREE_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( GENERAL_SUBTREE , (¡), (cmp)) ) 630  #sk_GENERAL_SUBTREE_dup ( ¡ è `SKM_sk_dup ( GENERAL_SUBTREE , st) ) 631  #sk_GENERAL_SUBTREE_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( GENERAL_SUBTREE , (¡), (ä“_func)) ) 632  #sk_GENERAL_SUBTREE_shiá ( ¡ è `SKM_sk_shiá ( GENERAL_SUBTREE , (¡)) ) 633  #sk_GENERAL_SUBTREE_pÝ ( ¡ è `SKM_sk_pÝ ( GENERAL_SUBTREE , (¡)) ) 634  #sk_GENERAL_SUBTREE_sÜt ( ¡ è `SKM_sk_sÜt ( GENERAL_SUBTREE , (¡)) ) 635  #sk_GENERAL_SUBTREE_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( GENERAL_SUBTREE , (¡)) ) 637  #sk_IPAdd»ssFamžy_Ãw ( ¡ è `SKM_sk_Ãw ( IPAdd»ssFamžy , (¡)) ) 638  #sk_IPAdd»ssFamžy_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( IPAdd»ssFamžy ) ) 639  #sk_IPAdd»ssFamžy_ä“ ( ¡ è `SKM_sk_ä“ ( IPAdd»ssFamžy , (¡)) ) 640  #sk_IPAdd»ssFamžy_num ( ¡ è `SKM_sk_num ( IPAdd»ssFamžy , (¡)) ) 641  #sk_IPAdd»ssFamžy_v®ue ( ¡ , i è `SKM_sk_v®ue ( IPAdd»ssFamžy , (¡), (i)) ) 642  #sk_IPAdd»ssFamžy_£t ( ¡ , i , v® è `SKM_sk_£t ( IPAdd»ssFamžy , (¡), (i), (v®)) ) 643  #sk_IPAdd»ssFamžy_z”o ( ¡ è `SKM_sk_z”o ( IPAdd»ssFamžy , (¡)) ) 644  #sk_IPAdd»ssFamžy_push ( ¡ , v® è `SKM_sk_push ( IPAdd»ssFamžy , (¡), (v®)) ) 645  #sk_IPAdd»ssFamžy_unshiá ( ¡ , v® è `SKM_sk_unshiá ( IPAdd»ssFamžy , (¡), (v®)) ) 646  #sk_IPAdd»ssFamžy_fšd ( ¡ , v® è `SKM_sk_fšd ( IPAdd»ssFamžy , (¡), (v®)) ) 647  #sk_IPAdd»ssFamžy_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( IPAdd»ssFamžy , (¡), (v®)) ) 648  #sk_IPAdd»ssFamžy_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( IPAdd»ssFamžy , (¡), (i)) ) 649  #sk_IPAdd»ssFamžy_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( IPAdd»ssFamžy , (¡), (±r)) ) 650  #sk_IPAdd»ssFamžy_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( IPAdd»ssFamžy , (¡), (v®), (i)) ) 651  #sk_IPAdd»ssFamžy_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( IPAdd»ssFamžy , (¡), (cmp)) ) 652  #sk_IPAdd»ssFamžy_dup ( ¡ è `SKM_sk_dup ( IPAdd»ssFamžy , st) ) 653  #sk_IPAdd»ssFamžy_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( IPAdd»ssFamžy , (¡), (ä“_func)) ) 654  #sk_IPAdd»ssFamžy_shiá ( ¡ è `SKM_sk_shiá ( IPAdd»ssFamžy , (¡)) ) 655  #sk_IPAdd»ssFamžy_pÝ ( ¡ è `SKM_sk_pÝ ( IPAdd»ssFamžy , (¡)) ) 656  #sk_IPAdd»ssFamžy_sÜt ( ¡ è `SKM_sk_sÜt ( IPAdd»ssFamžy , (¡)) ) 657  #sk_IPAdd»ssFamžy_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( IPAdd»ssFamžy , (¡)) ) 659  #sk_IPAdd»ssOrRªge_Ãw ( ¡ è `SKM_sk_Ãw ( IPAdd»ssOrRªge , (¡)) ) 660  #sk_IPAdd»ssOrRªge_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( IPAdd»ssOrRªge ) ) 661  #sk_IPAdd»ssOrRªge_ä“ ( ¡ è `SKM_sk_ä“ ( IPAdd»ssOrRªge , (¡)) ) 662  #sk_IPAdd»ssOrRªge_num ( ¡ è `SKM_sk_num ( IPAdd»ssOrRªge , (¡)) ) 663  #sk_IPAdd»ssOrRªge_v®ue ( ¡ , i è `SKM_sk_v®ue ( IPAdd»ssOrRªge , (¡), (i)) ) 664  #sk_IPAdd»ssOrRªge_£t ( ¡ , i , v® è `SKM_sk_£t ( IPAdd»ssOrRªge , (¡), (i), (v®)) ) 665  #sk_IPAdd»ssOrRªge_z”o ( ¡ è `SKM_sk_z”o ( IPAdd»ssOrRªge , (¡)) ) 666  #sk_IPAdd»ssOrRªge_push ( ¡ , v® è `SKM_sk_push ( IPAdd»ssOrRªge , (¡), (v®)) ) 667  #sk_IPAdd»ssOrRªge_unshiá ( ¡ , v® è `SKM_sk_unshiá ( IPAdd»ssOrRªge , (¡), (v®)) ) 668  #sk_IPAdd»ssOrRªge_fšd ( ¡ , v® è `SKM_sk_fšd ( IPAdd»ssOrRªge , (¡), (v®)) ) 669  #sk_IPAdd»ssOrRªge_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( IPAdd»ssOrRªge , (¡), (v®)) ) 670  #sk_IPAdd»ssOrRªge_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( IPAdd»ssOrRªge , (¡), (i)) ) 671  #sk_IPAdd»ssOrRªge_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( IPAdd»ssOrRªge , (¡), (±r)) ) 672  #sk_IPAdd»ssOrRªge_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( IPAdd»ssOrRªge , (¡), (v®), (i)) ) 673  #sk_IPAdd»ssOrRªge_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( IPAdd»ssOrRªge , (¡), (cmp)) ) 674  #sk_IPAdd»ssOrRªge_dup ( ¡ è `SKM_sk_dup ( IPAdd»ssOrRªge , st) ) 675  #sk_IPAdd»ssOrRªge_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( IPAdd»ssOrRªge , (¡), (ä“_func)) ) 676  #sk_IPAdd»ssOrRªge_shiá ( ¡ è `SKM_sk_shiá ( IPAdd»ssOrRªge , (¡)) ) 677  #sk_IPAdd»ssOrRªge_pÝ ( ¡ è `SKM_sk_pÝ ( IPAdd»ssOrRªge , (¡)) ) 678  #sk_IPAdd»ssOrRªge_sÜt ( ¡ è `SKM_sk_sÜt ( IPAdd»ssOrRªge , (¡)) ) 679  #sk_IPAdd»ssOrRªge_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( IPAdd»ssOrRªge , (¡)) ) 681  #sk_KRB5_APREQBODY_Ãw ( ¡ è `SKM_sk_Ãw ( KRB5_APREQBODY , (¡)) ) 682  #sk_KRB5_APREQBODY_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( KRB5_APREQBODY ) ) 683  #sk_KRB5_APREQBODY_ä“ ( ¡ è `SKM_sk_ä“ ( KRB5_APREQBODY , (¡)) ) 684  #sk_KRB5_APREQBODY_num ( ¡ è `SKM_sk_num ( KRB5_APREQBODY , (¡)) ) 685  #sk_KRB5_APREQBODY_v®ue ( ¡ , i è `SKM_sk_v®ue ( KRB5_APREQBODY , (¡), (i)) ) 686  #sk_KRB5_APREQBODY_£t ( ¡ , i , v® è `SKM_sk_£t ( KRB5_APREQBODY , (¡), (i), (v®)) ) 687  #sk_KRB5_APREQBODY_z”o ( ¡ è `SKM_sk_z”o ( KRB5_APREQBODY , (¡)) ) 688  #sk_KRB5_APREQBODY_push ( ¡ , v® è `SKM_sk_push ( KRB5_APREQBODY , (¡), (v®)) ) 689  #sk_KRB5_APREQBODY_unshiá ( ¡ , v® è `SKM_sk_unshiá ( KRB5_APREQBODY , (¡), (v®)) ) 690  #sk_KRB5_APREQBODY_fšd ( ¡ , v® è `SKM_sk_fšd ( KRB5_APREQBODY , (¡), (v®)) ) 691  #sk_KRB5_APREQBODY_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( KRB5_APREQBODY , (¡), (v®)) ) 692  #sk_KRB5_APREQBODY_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( KRB5_APREQBODY , (¡), (i)) ) 693  #sk_KRB5_APREQBODY_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( KRB5_APREQBODY , (¡), (±r)) ) 694  #sk_KRB5_APREQBODY_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( KRB5_APREQBODY , (¡), (v®), (i)) ) 695  #sk_KRB5_APREQBODY_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( KRB5_APREQBODY , (¡), (cmp)) ) 696  #sk_KRB5_APREQBODY_dup ( ¡ è `SKM_sk_dup ( KRB5_APREQBODY , st) ) 697  #sk_KRB5_APREQBODY_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( KRB5_APREQBODY , (¡), (ä“_func)) ) 698  #sk_KRB5_APREQBODY_shiá ( ¡ è `SKM_sk_shiá ( KRB5_APREQBODY , (¡)) ) 699  #sk_KRB5_APREQBODY_pÝ ( ¡ è `SKM_sk_pÝ ( KRB5_APREQBODY , (¡)) ) 700  #sk_KRB5_APREQBODY_sÜt ( ¡ è `SKM_sk_sÜt ( KRB5_APREQBODY , (¡)) ) 701  #sk_KRB5_APREQBODY_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( KRB5_APREQBODY , (¡)) ) 703  #sk_KRB5_AUTHDATA_Ãw ( ¡ è `SKM_sk_Ãw ( KRB5_AUTHDATA , (¡)) ) 704  #sk_KRB5_AUTHDATA_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( KRB5_AUTHDATA ) ) 705  #sk_KRB5_AUTHDATA_ä“ ( ¡ è `SKM_sk_ä“ ( KRB5_AUTHDATA , (¡)) ) 706  #sk_KRB5_AUTHDATA_num ( ¡ è `SKM_sk_num ( KRB5_AUTHDATA , (¡)) ) 707  #sk_KRB5_AUTHDATA_v®ue ( ¡ , i è `SKM_sk_v®ue ( KRB5_AUTHDATA , (¡), (i)) ) 708  #sk_KRB5_AUTHDATA_£t ( ¡ , i , v® è `SKM_sk_£t ( KRB5_AUTHDATA , (¡), (i), (v®)) ) 709  #sk_KRB5_AUTHDATA_z”o ( ¡ è `SKM_sk_z”o ( KRB5_AUTHDATA , (¡)) ) 710  #sk_KRB5_AUTHDATA_push ( ¡ , v® è `SKM_sk_push ( KRB5_AUTHDATA , (¡), (v®)) ) 711  #sk_KRB5_AUTHDATA_unshiá ( ¡ , v® è `SKM_sk_unshiá ( KRB5_AUTHDATA , (¡), (v®)) ) 712  #sk_KRB5_AUTHDATA_fšd ( ¡ , v® è `SKM_sk_fšd ( KRB5_AUTHDATA , (¡), (v®)) ) 713  #sk_KRB5_AUTHDATA_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( KRB5_AUTHDATA , (¡), (v®)) ) 714  #sk_KRB5_AUTHDATA_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( KRB5_AUTHDATA , (¡), (i)) ) 715  #sk_KRB5_AUTHDATA_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( KRB5_AUTHDATA , (¡), (±r)) ) 716  #sk_KRB5_AUTHDATA_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( KRB5_AUTHDATA , (¡), (v®), (i)) ) 717  #sk_KRB5_AUTHDATA_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( KRB5_AUTHDATA , (¡), (cmp)) ) 718  #sk_KRB5_AUTHDATA_dup ( ¡ è `SKM_sk_dup ( KRB5_AUTHDATA , st) ) 719  #sk_KRB5_AUTHDATA_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( KRB5_AUTHDATA , (¡), (ä“_func)) ) 720  #sk_KRB5_AUTHDATA_shiá ( ¡ è `SKM_sk_shiá ( KRB5_AUTHDATA , (¡)) ) 721  #sk_KRB5_AUTHDATA_pÝ ( ¡ è `SKM_sk_pÝ ( KRB5_AUTHDATA , (¡)) ) 722  #sk_KRB5_AUTHDATA_sÜt ( ¡ è `SKM_sk_sÜt ( KRB5_AUTHDATA , (¡)) ) 723  #sk_KRB5_AUTHDATA_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( KRB5_AUTHDATA , (¡)) ) 725  #sk_KRB5_AUTHENTBODY_Ãw ( ¡ è `SKM_sk_Ãw ( KRB5_AUTHENTBODY , (¡)) ) 726  #sk_KRB5_AUTHENTBODY_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( KRB5_AUTHENTBODY ) ) 727  #sk_KRB5_AUTHENTBODY_ä“ ( ¡ è `SKM_sk_ä“ ( KRB5_AUTHENTBODY , (¡)) ) 728  #sk_KRB5_AUTHENTBODY_num ( ¡ è `SKM_sk_num ( KRB5_AUTHENTBODY , (¡)) ) 729  #sk_KRB5_AUTHENTBODY_v®ue ( ¡ , i è `SKM_sk_v®ue ( KRB5_AUTHENTBODY , (¡), (i)) ) 730  #sk_KRB5_AUTHENTBODY_£t ( ¡ , i , v® è `SKM_sk_£t ( KRB5_AUTHENTBODY , (¡), (i), (v®)) ) 731  #sk_KRB5_AUTHENTBODY_z”o ( ¡ è `SKM_sk_z”o ( KRB5_AUTHENTBODY , (¡)) ) 732  #sk_KRB5_AUTHENTBODY_push ( ¡ , v® è `SKM_sk_push ( KRB5_AUTHENTBODY , (¡), (v®)) ) 733  #sk_KRB5_AUTHENTBODY_unshiá ( ¡ , v® è `SKM_sk_unshiá ( KRB5_AUTHENTBODY , (¡), (v®)) ) 734  #sk_KRB5_AUTHENTBODY_fšd ( ¡ , v® è `SKM_sk_fšd ( KRB5_AUTHENTBODY , (¡), (v®)) ) 735  #sk_KRB5_AUTHENTBODY_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( KRB5_AUTHENTBODY , (¡), (v®)) ) 736  #sk_KRB5_AUTHENTBODY_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( KRB5_AUTHENTBODY , (¡), (i)) ) 737  #sk_KRB5_AUTHENTBODY_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( KRB5_AUTHENTBODY , (¡), (±r)) ) 738  #sk_KRB5_AUTHENTBODY_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( KRB5_AUTHENTBODY , (¡), (v®), (i)) ) 739  #sk_KRB5_AUTHENTBODY_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( KRB5_AUTHENTBODY , (¡), (cmp)) ) 740  #sk_KRB5_AUTHENTBODY_dup ( ¡ è `SKM_sk_dup ( KRB5_AUTHENTBODY , st) ) 741  #sk_KRB5_AUTHENTBODY_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( KRB5_AUTHENTBODY , (¡), (ä“_func)) ) 742  #sk_KRB5_AUTHENTBODY_shiá ( ¡ è `SKM_sk_shiá ( KRB5_AUTHENTBODY , (¡)) ) 743  #sk_KRB5_AUTHENTBODY_pÝ ( ¡ è `SKM_sk_pÝ ( KRB5_AUTHENTBODY , (¡)) ) 744  #sk_KRB5_AUTHENTBODY_sÜt ( ¡ è `SKM_sk_sÜt ( KRB5_AUTHENTBODY , (¡)) ) 745  #sk_KRB5_AUTHENTBODY_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( KRB5_AUTHENTBODY , (¡)) ) 747  #sk_KRB5_CHECKSUM_Ãw ( ¡ è `SKM_sk_Ãw ( KRB5_CHECKSUM , (¡)) ) 748  #sk_KRB5_CHECKSUM_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( KRB5_CHECKSUM ) ) 749  #sk_KRB5_CHECKSUM_ä“ ( ¡ è `SKM_sk_ä“ ( KRB5_CHECKSUM , (¡)) ) 750  #sk_KRB5_CHECKSUM_num ( ¡ è `SKM_sk_num ( KRB5_CHECKSUM , (¡)) ) 751  #sk_KRB5_CHECKSUM_v®ue ( ¡ , i è `SKM_sk_v®ue ( KRB5_CHECKSUM , (¡), (i)) ) 752  #sk_KRB5_CHECKSUM_£t ( ¡ , i , v® è `SKM_sk_£t ( KRB5_CHECKSUM , (¡), (i), (v®)) ) 753  #sk_KRB5_CHECKSUM_z”o ( ¡ è `SKM_sk_z”o ( KRB5_CHECKSUM , (¡)) ) 754  #sk_KRB5_CHECKSUM_push ( ¡ , v® è `SKM_sk_push ( KRB5_CHECKSUM , (¡), (v®)) ) 755  #sk_KRB5_CHECKSUM_unshiá ( ¡ , v® è `SKM_sk_unshiá ( KRB5_CHECKSUM , (¡), (v®)) ) 756  #sk_KRB5_CHECKSUM_fšd ( ¡ , v® è `SKM_sk_fšd ( KRB5_CHECKSUM , (¡), (v®)) ) 757  #sk_KRB5_CHECKSUM_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( KRB5_CHECKSUM , (¡), (v®)) ) 758  #sk_KRB5_CHECKSUM_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( KRB5_CHECKSUM , (¡), (i)) ) 759  #sk_KRB5_CHECKSUM_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( KRB5_CHECKSUM , (¡), (±r)) ) 760  #sk_KRB5_CHECKSUM_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( KRB5_CHECKSUM , (¡), (v®), (i)) ) 761  #sk_KRB5_CHECKSUM_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( KRB5_CHECKSUM , (¡), (cmp)) ) 762  #sk_KRB5_CHECKSUM_dup ( ¡ è `SKM_sk_dup ( KRB5_CHECKSUM , st) ) 763  #sk_KRB5_CHECKSUM_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( KRB5_CHECKSUM , (¡), (ä“_func)) ) 764  #sk_KRB5_CHECKSUM_shiá ( ¡ è `SKM_sk_shiá ( KRB5_CHECKSUM , (¡)) ) 765  #sk_KRB5_CHECKSUM_pÝ ( ¡ è `SKM_sk_pÝ ( KRB5_CHECKSUM , (¡)) ) 766  #sk_KRB5_CHECKSUM_sÜt ( ¡ è `SKM_sk_sÜt ( KRB5_CHECKSUM , (¡)) ) 767  #sk_KRB5_CHECKSUM_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( KRB5_CHECKSUM , (¡)) ) 769  #sk_KRB5_ENCDATA_Ãw ( ¡ è `SKM_sk_Ãw ( KRB5_ENCDATA , (¡)) ) 770  #sk_KRB5_ENCDATA_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( KRB5_ENCDATA ) ) 771  #sk_KRB5_ENCDATA_ä“ ( ¡ è `SKM_sk_ä“ ( KRB5_ENCDATA , (¡)) ) 772  #sk_KRB5_ENCDATA_num ( ¡ è `SKM_sk_num ( KRB5_ENCDATA , (¡)) ) 773  #sk_KRB5_ENCDATA_v®ue ( ¡ , i è `SKM_sk_v®ue ( KRB5_ENCDATA , (¡), (i)) ) 774  #sk_KRB5_ENCDATA_£t ( ¡ , i , v® è `SKM_sk_£t ( KRB5_ENCDATA , (¡), (i), (v®)) ) 775  #sk_KRB5_ENCDATA_z”o ( ¡ è `SKM_sk_z”o ( KRB5_ENCDATA , (¡)) ) 776  #sk_KRB5_ENCDATA_push ( ¡ , v® è `SKM_sk_push ( KRB5_ENCDATA , (¡), (v®)) ) 777  #sk_KRB5_ENCDATA_unshiá ( ¡ , v® è `SKM_sk_unshiá ( KRB5_ENCDATA , (¡), (v®)) ) 778  #sk_KRB5_ENCDATA_fšd ( ¡ , v® è `SKM_sk_fšd ( KRB5_ENCDATA , (¡), (v®)) ) 779  #sk_KRB5_ENCDATA_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( KRB5_ENCDATA , (¡), (v®)) ) 780  #sk_KRB5_ENCDATA_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( KRB5_ENCDATA , (¡), (i)) ) 781  #sk_KRB5_ENCDATA_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( KRB5_ENCDATA , (¡), (±r)) ) 782  #sk_KRB5_ENCDATA_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( KRB5_ENCDATA , (¡), (v®), (i)) ) 783  #sk_KRB5_ENCDATA_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( KRB5_ENCDATA , (¡), (cmp)) ) 784  #sk_KRB5_ENCDATA_dup ( ¡ è `SKM_sk_dup ( KRB5_ENCDATA , st) ) 785  #sk_KRB5_ENCDATA_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( KRB5_ENCDATA , (¡), (ä“_func)) ) 786  #sk_KRB5_ENCDATA_shiá ( ¡ è `SKM_sk_shiá ( KRB5_ENCDATA , (¡)) ) 787  #sk_KRB5_ENCDATA_pÝ ( ¡ è `SKM_sk_pÝ ( KRB5_ENCDATA , (¡)) ) 788  #sk_KRB5_ENCDATA_sÜt ( ¡ è `SKM_sk_sÜt ( KRB5_ENCDATA , (¡)) ) 789  #sk_KRB5_ENCDATA_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( KRB5_ENCDATA , (¡)) ) 791  #sk_KRB5_ENCKEY_Ãw ( ¡ è `SKM_sk_Ãw ( KRB5_ENCKEY , (¡)) ) 792  #sk_KRB5_ENCKEY_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( KRB5_ENCKEY ) ) 793  #sk_KRB5_ENCKEY_ä“ ( ¡ è `SKM_sk_ä“ ( KRB5_ENCKEY , (¡)) ) 794  #sk_KRB5_ENCKEY_num ( ¡ è `SKM_sk_num ( KRB5_ENCKEY , (¡)) ) 795  #sk_KRB5_ENCKEY_v®ue ( ¡ , i è `SKM_sk_v®ue ( KRB5_ENCKEY , (¡), (i)) ) 796  #sk_KRB5_ENCKEY_£t ( ¡ , i , v® è `SKM_sk_£t ( KRB5_ENCKEY , (¡), (i), (v®)) ) 797  #sk_KRB5_ENCKEY_z”o ( ¡ è `SKM_sk_z”o ( KRB5_ENCKEY , (¡)) ) 798  #sk_KRB5_ENCKEY_push ( ¡ , v® è `SKM_sk_push ( KRB5_ENCKEY , (¡), (v®)) ) 799  #sk_KRB5_ENCKEY_unshiá ( ¡ , v® è `SKM_sk_unshiá ( KRB5_ENCKEY , (¡), (v®)) ) 800  #sk_KRB5_ENCKEY_fšd ( ¡ , v® è `SKM_sk_fšd ( KRB5_ENCKEY , (¡), (v®)) ) 801  #sk_KRB5_ENCKEY_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( KRB5_ENCKEY , (¡), (v®)) ) 802  #sk_KRB5_ENCKEY_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( KRB5_ENCKEY , (¡), (i)) ) 803  #sk_KRB5_ENCKEY_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( KRB5_ENCKEY , (¡), (±r)) ) 804  #sk_KRB5_ENCKEY_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( KRB5_ENCKEY , (¡), (v®), (i)) ) 805  #sk_KRB5_ENCKEY_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( KRB5_ENCKEY , (¡), (cmp)) ) 806  #sk_KRB5_ENCKEY_dup ( ¡ è `SKM_sk_dup ( KRB5_ENCKEY , st) ) 807  #sk_KRB5_ENCKEY_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( KRB5_ENCKEY , (¡), (ä“_func)) ) 808  #sk_KRB5_ENCKEY_shiá ( ¡ è `SKM_sk_shiá ( KRB5_ENCKEY , (¡)) ) 809  #sk_KRB5_ENCKEY_pÝ ( ¡ è `SKM_sk_pÝ ( KRB5_ENCKEY , (¡)) ) 810  #sk_KRB5_ENCKEY_sÜt ( ¡ è `SKM_sk_sÜt ( KRB5_ENCKEY , (¡)) ) 811  #sk_KRB5_ENCKEY_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( KRB5_ENCKEY , (¡)) ) 813  #sk_KRB5_PRINCNAME_Ãw ( ¡ è `SKM_sk_Ãw ( KRB5_PRINCNAME , (¡)) ) 814  #sk_KRB5_PRINCNAME_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( KRB5_PRINCNAME ) ) 815  #sk_KRB5_PRINCNAME_ä“ ( ¡ è `SKM_sk_ä“ ( KRB5_PRINCNAME , (¡)) ) 816  #sk_KRB5_PRINCNAME_num ( ¡ è `SKM_sk_num ( KRB5_PRINCNAME , (¡)) ) 817  #sk_KRB5_PRINCNAME_v®ue ( ¡ , i è `SKM_sk_v®ue ( KRB5_PRINCNAME , (¡), (i)) ) 818  #sk_KRB5_PRINCNAME_£t ( ¡ , i , v® è `SKM_sk_£t ( KRB5_PRINCNAME , (¡), (i), (v®)) ) 819  #sk_KRB5_PRINCNAME_z”o ( ¡ è `SKM_sk_z”o ( KRB5_PRINCNAME , (¡)) ) 820  #sk_KRB5_PRINCNAME_push ( ¡ , v® è `SKM_sk_push ( KRB5_PRINCNAME , (¡), (v®)) ) 821  #sk_KRB5_PRINCNAME_unshiá ( ¡ , v® è `SKM_sk_unshiá ( KRB5_PRINCNAME , (¡), (v®)) ) 822  #sk_KRB5_PRINCNAME_fšd ( ¡ , v® è `SKM_sk_fšd ( KRB5_PRINCNAME , (¡), (v®)) ) 823  #sk_KRB5_PRINCNAME_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( KRB5_PRINCNAME , (¡), (v®)) ) 824  #sk_KRB5_PRINCNAME_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( KRB5_PRINCNAME , (¡), (i)) ) 825  #sk_KRB5_PRINCNAME_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( KRB5_PRINCNAME , (¡), (±r)) ) 826  #sk_KRB5_PRINCNAME_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( KRB5_PRINCNAME , (¡), (v®), (i)) ) 827  #sk_KRB5_PRINCNAME_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( KRB5_PRINCNAME , (¡), (cmp)) ) 828  #sk_KRB5_PRINCNAME_dup ( ¡ è `SKM_sk_dup ( KRB5_PRINCNAME , st) ) 829  #sk_KRB5_PRINCNAME_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( KRB5_PRINCNAME , (¡), (ä“_func)) ) 830  #sk_KRB5_PRINCNAME_shiá ( ¡ è `SKM_sk_shiá ( KRB5_PRINCNAME , (¡)) ) 831  #sk_KRB5_PRINCNAME_pÝ ( ¡ è `SKM_sk_pÝ ( KRB5_PRINCNAME , (¡)) ) 832  #sk_KRB5_PRINCNAME_sÜt ( ¡ è `SKM_sk_sÜt ( KRB5_PRINCNAME , (¡)) ) 833  #sk_KRB5_PRINCNAME_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( KRB5_PRINCNAME , (¡)) ) 835  #sk_KRB5_TKTBODY_Ãw ( ¡ è `SKM_sk_Ãw ( KRB5_TKTBODY , (¡)) ) 836  #sk_KRB5_TKTBODY_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( KRB5_TKTBODY ) ) 837  #sk_KRB5_TKTBODY_ä“ ( ¡ è `SKM_sk_ä“ ( KRB5_TKTBODY , (¡)) ) 838  #sk_KRB5_TKTBODY_num ( ¡ è `SKM_sk_num ( KRB5_TKTBODY , (¡)) ) 839  #sk_KRB5_TKTBODY_v®ue ( ¡ , i è `SKM_sk_v®ue ( KRB5_TKTBODY , (¡), (i)) ) 840  #sk_KRB5_TKTBODY_£t ( ¡ , i , v® è `SKM_sk_£t ( KRB5_TKTBODY , (¡), (i), (v®)) ) 841  #sk_KRB5_TKTBODY_z”o ( ¡ è `SKM_sk_z”o ( KRB5_TKTBODY , (¡)) ) 842  #sk_KRB5_TKTBODY_push ( ¡ , v® è `SKM_sk_push ( KRB5_TKTBODY , (¡), (v®)) ) 843  #sk_KRB5_TKTBODY_unshiá ( ¡ , v® è `SKM_sk_unshiá ( KRB5_TKTBODY , (¡), (v®)) ) 844  #sk_KRB5_TKTBODY_fšd ( ¡ , v® è `SKM_sk_fšd ( KRB5_TKTBODY , (¡), (v®)) ) 845  #sk_KRB5_TKTBODY_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( KRB5_TKTBODY , (¡), (v®)) ) 846  #sk_KRB5_TKTBODY_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( KRB5_TKTBODY , (¡), (i)) ) 847  #sk_KRB5_TKTBODY_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( KRB5_TKTBODY , (¡), (±r)) ) 848  #sk_KRB5_TKTBODY_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( KRB5_TKTBODY , (¡), (v®), (i)) ) 849  #sk_KRB5_TKTBODY_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( KRB5_TKTBODY , (¡), (cmp)) ) 850  #sk_KRB5_TKTBODY_dup ( ¡ è `SKM_sk_dup ( KRB5_TKTBODY , st) ) 851  #sk_KRB5_TKTBODY_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( KRB5_TKTBODY , (¡), (ä“_func)) ) 852  #sk_KRB5_TKTBODY_shiá ( ¡ è `SKM_sk_shiá ( KRB5_TKTBODY , (¡)) ) 853  #sk_KRB5_TKTBODY_pÝ ( ¡ è `SKM_sk_pÝ ( KRB5_TKTBODY , (¡)) ) 854  #sk_KRB5_TKTBODY_sÜt ( ¡ è `SKM_sk_sÜt ( KRB5_TKTBODY , (¡)) ) 855  #sk_KRB5_TKTBODY_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( KRB5_TKTBODY , (¡)) ) 857  #sk_MIME_HEADER_Ãw ( ¡ è `SKM_sk_Ãw ( MIME_HEADER , (¡)) ) 858  #sk_MIME_HEADER_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( MIME_HEADER ) ) 859  #sk_MIME_HEADER_ä“ ( ¡ è `SKM_sk_ä“ ( MIME_HEADER , (¡)) ) 860  #sk_MIME_HEADER_num ( ¡ è `SKM_sk_num ( MIME_HEADER , (¡)) ) 861  #sk_MIME_HEADER_v®ue ( ¡ , i è `SKM_sk_v®ue ( MIME_HEADER , (¡), (i)) ) 862  #sk_MIME_HEADER_£t ( ¡ , i , v® è `SKM_sk_£t ( MIME_HEADER , (¡), (i), (v®)) ) 863  #sk_MIME_HEADER_z”o ( ¡ è `SKM_sk_z”o ( MIME_HEADER , (¡)) ) 864  #sk_MIME_HEADER_push ( ¡ , v® è `SKM_sk_push ( MIME_HEADER , (¡), (v®)) ) 865  #sk_MIME_HEADER_unshiá ( ¡ , v® è `SKM_sk_unshiá ( MIME_HEADER , (¡), (v®)) ) 866  #sk_MIME_HEADER_fšd ( ¡ , v® è `SKM_sk_fšd ( MIME_HEADER , (¡), (v®)) ) 867  #sk_MIME_HEADER_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( MIME_HEADER , (¡), (v®)) ) 868  #sk_MIME_HEADER_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( MIME_HEADER , (¡), (i)) ) 869  #sk_MIME_HEADER_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( MIME_HEADER , (¡), (±r)) ) 870  #sk_MIME_HEADER_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( MIME_HEADER , (¡), (v®), (i)) ) 871  #sk_MIME_HEADER_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( MIME_HEADER , (¡), (cmp)) ) 872  #sk_MIME_HEADER_dup ( ¡ è `SKM_sk_dup ( MIME_HEADER , st) ) 873  #sk_MIME_HEADER_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( MIME_HEADER , (¡), (ä“_func)) ) 874  #sk_MIME_HEADER_shiá ( ¡ è `SKM_sk_shiá ( MIME_HEADER , (¡)) ) 875  #sk_MIME_HEADER_pÝ ( ¡ è `SKM_sk_pÝ ( MIME_HEADER , (¡)) ) 876  #sk_MIME_HEADER_sÜt ( ¡ è `SKM_sk_sÜt ( MIME_HEADER , (¡)) ) 877  #sk_MIME_HEADER_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( MIME_HEADER , (¡)) ) 879  #sk_MIME_PARAM_Ãw ( ¡ è `SKM_sk_Ãw ( MIME_PARAM , (¡)) ) 880  #sk_MIME_PARAM_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( MIME_PARAM ) ) 881  #sk_MIME_PARAM_ä“ ( ¡ è `SKM_sk_ä“ ( MIME_PARAM , (¡)) ) 882  #sk_MIME_PARAM_num ( ¡ è `SKM_sk_num ( MIME_PARAM , (¡)) ) 883  #sk_MIME_PARAM_v®ue ( ¡ , i è `SKM_sk_v®ue ( MIME_PARAM , (¡), (i)) ) 884  #sk_MIME_PARAM_£t ( ¡ , i , v® è `SKM_sk_£t ( MIME_PARAM , (¡), (i), (v®)) ) 885  #sk_MIME_PARAM_z”o ( ¡ è `SKM_sk_z”o ( MIME_PARAM , (¡)) ) 886  #sk_MIME_PARAM_push ( ¡ , v® è `SKM_sk_push ( MIME_PARAM , (¡), (v®)) ) 887  #sk_MIME_PARAM_unshiá ( ¡ , v® è `SKM_sk_unshiá ( MIME_PARAM , (¡), (v®)) ) 888  #sk_MIME_PARAM_fšd ( ¡ , v® è `SKM_sk_fšd ( MIME_PARAM , (¡), (v®)) ) 889  #sk_MIME_PARAM_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( MIME_PARAM , (¡), (v®)) ) 890  #sk_MIME_PARAM_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( MIME_PARAM , (¡), (i)) ) 891  #sk_MIME_PARAM_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( MIME_PARAM , (¡), (±r)) ) 892  #sk_MIME_PARAM_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( MIME_PARAM , (¡), (v®), (i)) ) 893  #sk_MIME_PARAM_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( MIME_PARAM , (¡), (cmp)) ) 894  #sk_MIME_PARAM_dup ( ¡ è `SKM_sk_dup ( MIME_PARAM , st) ) 895  #sk_MIME_PARAM_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( MIME_PARAM , (¡), (ä“_func)) ) 896  #sk_MIME_PARAM_shiá ( ¡ è `SKM_sk_shiá ( MIME_PARAM , (¡)) ) 897  #sk_MIME_PARAM_pÝ ( ¡ è `SKM_sk_pÝ ( MIME_PARAM , (¡)) ) 898  #sk_MIME_PARAM_sÜt ( ¡ è `SKM_sk_sÜt ( MIME_PARAM , (¡)) ) 899  #sk_MIME_PARAM_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( MIME_PARAM , (¡)) ) 901  #sk_NAME_FUNCS_Ãw ( ¡ è `SKM_sk_Ãw ( NAME_FUNCS , (¡)) ) 902  #sk_NAME_FUNCS_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( NAME_FUNCS ) ) 903  #sk_NAME_FUNCS_ä“ ( ¡ è `SKM_sk_ä“ ( NAME_FUNCS , (¡)) ) 904  #sk_NAME_FUNCS_num ( ¡ è `SKM_sk_num ( NAME_FUNCS , (¡)) ) 905  #sk_NAME_FUNCS_v®ue ( ¡ , i è `SKM_sk_v®ue ( NAME_FUNCS , (¡), (i)) ) 906  #sk_NAME_FUNCS_£t ( ¡ , i , v® è `SKM_sk_£t ( NAME_FUNCS , (¡), (i), (v®)) ) 907  #sk_NAME_FUNCS_z”o ( ¡ è `SKM_sk_z”o ( NAME_FUNCS , (¡)) ) 908  #sk_NAME_FUNCS_push ( ¡ , v® è `SKM_sk_push ( NAME_FUNCS , (¡), (v®)) ) 909  #sk_NAME_FUNCS_unshiá ( ¡ , v® è `SKM_sk_unshiá ( NAME_FUNCS , (¡), (v®)) ) 910  #sk_NAME_FUNCS_fšd ( ¡ , v® è `SKM_sk_fšd ( NAME_FUNCS , (¡), (v®)) ) 911  #sk_NAME_FUNCS_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( NAME_FUNCS , (¡), (v®)) ) 912  #sk_NAME_FUNCS_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( NAME_FUNCS , (¡), (i)) ) 913  #sk_NAME_FUNCS_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( NAME_FUNCS , (¡), (±r)) ) 914  #sk_NAME_FUNCS_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( NAME_FUNCS , (¡), (v®), (i)) ) 915  #sk_NAME_FUNCS_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( NAME_FUNCS , (¡), (cmp)) ) 916  #sk_NAME_FUNCS_dup ( ¡ è `SKM_sk_dup ( NAME_FUNCS , st) ) 917  #sk_NAME_FUNCS_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( NAME_FUNCS , (¡), (ä“_func)) ) 918  #sk_NAME_FUNCS_shiá ( ¡ è `SKM_sk_shiá ( NAME_FUNCS , (¡)) ) 919  #sk_NAME_FUNCS_pÝ ( ¡ è `SKM_sk_pÝ ( NAME_FUNCS , (¡)) ) 920  #sk_NAME_FUNCS_sÜt ( ¡ è `SKM_sk_sÜt ( NAME_FUNCS , (¡)) ) 921  #sk_NAME_FUNCS_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( NAME_FUNCS , (¡)) ) 923  #sk_OCSP_CERTID_Ãw ( ¡ è `SKM_sk_Ãw ( OCSP_CERTID , (¡)) ) 924  #sk_OCSP_CERTID_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( OCSP_CERTID ) ) 925  #sk_OCSP_CERTID_ä“ ( ¡ è `SKM_sk_ä“ ( OCSP_CERTID , (¡)) ) 926  #sk_OCSP_CERTID_num ( ¡ è `SKM_sk_num ( OCSP_CERTID , (¡)) ) 927  #sk_OCSP_CERTID_v®ue ( ¡ , i è `SKM_sk_v®ue ( OCSP_CERTID , (¡), (i)) ) 928  #sk_OCSP_CERTID_£t ( ¡ , i , v® è `SKM_sk_£t ( OCSP_CERTID , (¡), (i), (v®)) ) 929  #sk_OCSP_CERTID_z”o ( ¡ è `SKM_sk_z”o ( OCSP_CERTID , (¡)) ) 930  #sk_OCSP_CERTID_push ( ¡ , v® è `SKM_sk_push ( OCSP_CERTID , (¡), (v®)) ) 931  #sk_OCSP_CERTID_unshiá ( ¡ , v® è `SKM_sk_unshiá ( OCSP_CERTID , (¡), (v®)) ) 932  #sk_OCSP_CERTID_fšd ( ¡ , v® è `SKM_sk_fšd ( OCSP_CERTID , (¡), (v®)) ) 933  #sk_OCSP_CERTID_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( OCSP_CERTID , (¡), (v®)) ) 934  #sk_OCSP_CERTID_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( OCSP_CERTID , (¡), (i)) ) 935  #sk_OCSP_CERTID_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( OCSP_CERTID , (¡), (±r)) ) 936  #sk_OCSP_CERTID_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( OCSP_CERTID , (¡), (v®), (i)) ) 937  #sk_OCSP_CERTID_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( OCSP_CERTID , (¡), (cmp)) ) 938  #sk_OCSP_CERTID_dup ( ¡ è `SKM_sk_dup ( OCSP_CERTID , st) ) 939  #sk_OCSP_CERTID_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( OCSP_CERTID , (¡), (ä“_func)) ) 940  #sk_OCSP_CERTID_shiá ( ¡ è `SKM_sk_shiá ( OCSP_CERTID , (¡)) ) 941  #sk_OCSP_CERTID_pÝ ( ¡ è `SKM_sk_pÝ ( OCSP_CERTID , (¡)) ) 942  #sk_OCSP_CERTID_sÜt ( ¡ è `SKM_sk_sÜt ( OCSP_CERTID , (¡)) ) 943  #sk_OCSP_CERTID_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( OCSP_CERTID , (¡)) ) 945  #sk_OCSP_ONEREQ_Ãw ( ¡ è `SKM_sk_Ãw ( OCSP_ONEREQ , (¡)) ) 946  #sk_OCSP_ONEREQ_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( OCSP_ONEREQ ) ) 947  #sk_OCSP_ONEREQ_ä“ ( ¡ è `SKM_sk_ä“ ( OCSP_ONEREQ , (¡)) ) 948  #sk_OCSP_ONEREQ_num ( ¡ è `SKM_sk_num ( OCSP_ONEREQ , (¡)) ) 949  #sk_OCSP_ONEREQ_v®ue ( ¡ , i è `SKM_sk_v®ue ( OCSP_ONEREQ , (¡), (i)) ) 950  #sk_OCSP_ONEREQ_£t ( ¡ , i , v® è `SKM_sk_£t ( OCSP_ONEREQ , (¡), (i), (v®)) ) 951  #sk_OCSP_ONEREQ_z”o ( ¡ è `SKM_sk_z”o ( OCSP_ONEREQ , (¡)) ) 952  #sk_OCSP_ONEREQ_push ( ¡ , v® è `SKM_sk_push ( OCSP_ONEREQ , (¡), (v®)) ) 953  #sk_OCSP_ONEREQ_unshiá ( ¡ , v® è `SKM_sk_unshiá ( OCSP_ONEREQ , (¡), (v®)) ) 954  #sk_OCSP_ONEREQ_fšd ( ¡ , v® è `SKM_sk_fšd ( OCSP_ONEREQ , (¡), (v®)) ) 955  #sk_OCSP_ONEREQ_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( OCSP_ONEREQ , (¡), (v®)) ) 956  #sk_OCSP_ONEREQ_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( OCSP_ONEREQ , (¡), (i)) ) 957  #sk_OCSP_ONEREQ_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( OCSP_ONEREQ , (¡), (±r)) ) 958  #sk_OCSP_ONEREQ_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( OCSP_ONEREQ , (¡), (v®), (i)) ) 959  #sk_OCSP_ONEREQ_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( OCSP_ONEREQ , (¡), (cmp)) ) 960  #sk_OCSP_ONEREQ_dup ( ¡ è `SKM_sk_dup ( OCSP_ONEREQ , st) ) 961  #sk_OCSP_ONEREQ_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( OCSP_ONEREQ , (¡), (ä“_func)) ) 962  #sk_OCSP_ONEREQ_shiá ( ¡ è `SKM_sk_shiá ( OCSP_ONEREQ , (¡)) ) 963  #sk_OCSP_ONEREQ_pÝ ( ¡ è `SKM_sk_pÝ ( OCSP_ONEREQ , (¡)) ) 964  #sk_OCSP_ONEREQ_sÜt ( ¡ è `SKM_sk_sÜt ( OCSP_ONEREQ , (¡)) ) 965  #sk_OCSP_ONEREQ_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( OCSP_ONEREQ , (¡)) ) 967  #sk_OCSP_SINGLERESP_Ãw ( ¡ è `SKM_sk_Ãw ( OCSP_SINGLERESP , (¡)) ) 968  #sk_OCSP_SINGLERESP_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( OCSP_SINGLERESP ) ) 969  #sk_OCSP_SINGLERESP_ä“ ( ¡ è `SKM_sk_ä“ ( OCSP_SINGLERESP , (¡)) ) 970  #sk_OCSP_SINGLERESP_num ( ¡ è `SKM_sk_num ( OCSP_SINGLERESP , (¡)) ) 971  #sk_OCSP_SINGLERESP_v®ue ( ¡ , i è `SKM_sk_v®ue ( OCSP_SINGLERESP , (¡), (i)) ) 972  #sk_OCSP_SINGLERESP_£t ( ¡ , i , v® è `SKM_sk_£t ( OCSP_SINGLERESP , (¡), (i), (v®)) ) 973  #sk_OCSP_SINGLERESP_z”o ( ¡ è `SKM_sk_z”o ( OCSP_SINGLERESP , (¡)) ) 974  #sk_OCSP_SINGLERESP_push ( ¡ , v® è `SKM_sk_push ( OCSP_SINGLERESP , (¡), (v®)) ) 975  #sk_OCSP_SINGLERESP_unshiá ( ¡ , v® è `SKM_sk_unshiá ( OCSP_SINGLERESP , (¡), (v®)) ) 976  #sk_OCSP_SINGLERESP_fšd ( ¡ , v® è `SKM_sk_fšd ( OCSP_SINGLERESP , (¡), (v®)) ) 977  #sk_OCSP_SINGLERESP_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( OCSP_SINGLERESP , (¡), (v®)) ) 978  #sk_OCSP_SINGLERESP_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( OCSP_SINGLERESP , (¡), (i)) ) 979  #sk_OCSP_SINGLERESP_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( OCSP_SINGLERESP , (¡), (±r)) ) 980  #sk_OCSP_SINGLERESP_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( OCSP_SINGLERESP , (¡), (v®), (i)) ) 981  #sk_OCSP_SINGLERESP_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( OCSP_SINGLERESP , (¡), (cmp)) ) 982  #sk_OCSP_SINGLERESP_dup ( ¡ è `SKM_sk_dup ( OCSP_SINGLERESP , st) ) 983  #sk_OCSP_SINGLERESP_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( OCSP_SINGLERESP , (¡), (ä“_func)) ) 984  #sk_OCSP_SINGLERESP_shiá ( ¡ è `SKM_sk_shiá ( OCSP_SINGLERESP , (¡)) ) 985  #sk_OCSP_SINGLERESP_pÝ ( ¡ è `SKM_sk_pÝ ( OCSP_SINGLERESP , (¡)) ) 986  #sk_OCSP_SINGLERESP_sÜt ( ¡ è `SKM_sk_sÜt ( OCSP_SINGLERESP , (¡)) ) 987  #sk_OCSP_SINGLERESP_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( OCSP_SINGLERESP , (¡)) ) 989  #sk_PKCS12_SAFEBAG_Ãw ( ¡ è `SKM_sk_Ãw ( PKCS12_SAFEBAG , (¡)) ) 990  #sk_PKCS12_SAFEBAG_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( PKCS12_SAFEBAG ) ) 991  #sk_PKCS12_SAFEBAG_ä“ ( ¡ è `SKM_sk_ä“ ( PKCS12_SAFEBAG , (¡)) ) 992  #sk_PKCS12_SAFEBAG_num ( ¡ è `SKM_sk_num ( PKCS12_SAFEBAG , (¡)) ) 993  #sk_PKCS12_SAFEBAG_v®ue ( ¡ , i è `SKM_sk_v®ue ( PKCS12_SAFEBAG , (¡), (i)) ) 994  #sk_PKCS12_SAFEBAG_£t ( ¡ , i , v® è `SKM_sk_£t ( PKCS12_SAFEBAG , (¡), (i), (v®)) ) 995  #sk_PKCS12_SAFEBAG_z”o ( ¡ è `SKM_sk_z”o ( PKCS12_SAFEBAG , (¡)) ) 996  #sk_PKCS12_SAFEBAG_push ( ¡ , v® è `SKM_sk_push ( PKCS12_SAFEBAG , (¡), (v®)) ) 997  #sk_PKCS12_SAFEBAG_unshiá ( ¡ , v® è `SKM_sk_unshiá ( PKCS12_SAFEBAG , (¡), (v®)) ) 998  #sk_PKCS12_SAFEBAG_fšd ( ¡ , v® è `SKM_sk_fšd ( PKCS12_SAFEBAG , (¡), (v®)) ) 999  #sk_PKCS12_SAFEBAG_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( PKCS12_SAFEBAG , (¡), (v®)) ) 1000  #sk_PKCS12_SAFEBAG_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( PKCS12_SAFEBAG , (¡), (i)) ) 1001  #sk_PKCS12_SAFEBAG_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( PKCS12_SAFEBAG , (¡), (±r)) ) 1002  #sk_PKCS12_SAFEBAG_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( PKCS12_SAFEBAG , (¡), (v®), (i)) ) 1003  #sk_PKCS12_SAFEBAG_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( PKCS12_SAFEBAG , (¡), (cmp)) ) 1004  #sk_PKCS12_SAFEBAG_dup ( ¡ è `SKM_sk_dup ( PKCS12_SAFEBAG , st) ) 1005  #sk_PKCS12_SAFEBAG_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( PKCS12_SAFEBAG , (¡), (ä“_func)) ) 1006  #sk_PKCS12_SAFEBAG_shiá ( ¡ è `SKM_sk_shiá ( PKCS12_SAFEBAG , (¡)) ) 1007  #sk_PKCS12_SAFEBAG_pÝ ( ¡ è `SKM_sk_pÝ ( PKCS12_SAFEBAG , (¡)) ) 1008  #sk_PKCS12_SAFEBAG_sÜt ( ¡ è `SKM_sk_sÜt ( PKCS12_SAFEBAG , (¡)) ) 1009  #sk_PKCS12_SAFEBAG_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( PKCS12_SAFEBAG , (¡)) ) 1011  #sk_PKCS7_Ãw ( ¡ è `SKM_sk_Ãw ( PKCS7 , (¡)) ) 1012  #sk_PKCS7_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( PKCS7 ) ) 1013  #sk_PKCS7_ä“ ( ¡ è `SKM_sk_ä“ ( PKCS7 , (¡)) ) 1014  #sk_PKCS7_num ( ¡ è `SKM_sk_num ( PKCS7 , (¡)) ) 1015  #sk_PKCS7_v®ue ( ¡ , i è `SKM_sk_v®ue ( PKCS7 , (¡), (i)) ) 1016  #sk_PKCS7_£t ( ¡ , i , v® è `SKM_sk_£t ( PKCS7 , (¡), (i), (v®)) ) 1017  #sk_PKCS7_z”o ( ¡ è `SKM_sk_z”o ( PKCS7 , (¡)) ) 1018  #sk_PKCS7_push ( ¡ , v® è `SKM_sk_push ( PKCS7 , (¡), (v®)) ) 1019  #sk_PKCS7_unshiá ( ¡ , v® è `SKM_sk_unshiá ( PKCS7 , (¡), (v®)) ) 1020  #sk_PKCS7_fšd ( ¡ , v® è `SKM_sk_fšd ( PKCS7 , (¡), (v®)) ) 1021  #sk_PKCS7_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( PKCS7 , (¡), (v®)) ) 1022  #sk_PKCS7_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( PKCS7 , (¡), (i)) ) 1023  #sk_PKCS7_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( PKCS7 , (¡), (±r)) ) 1024  #sk_PKCS7_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( PKCS7 , (¡), (v®), (i)) ) 1025  #sk_PKCS7_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( PKCS7 , (¡), (cmp)) ) 1026  #sk_PKCS7_dup ( ¡ è `SKM_sk_dup ( PKCS7 , st) ) 1027  #sk_PKCS7_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( PKCS7 , (¡), (ä“_func)) ) 1028  #sk_PKCS7_shiá ( ¡ è `SKM_sk_shiá ( PKCS7 , (¡)) ) 1029  #sk_PKCS7_pÝ ( ¡ è `SKM_sk_pÝ ( PKCS7 , (¡)) ) 1030  #sk_PKCS7_sÜt ( ¡ è `SKM_sk_sÜt ( PKCS7 , (¡)) ) 1031  #sk_PKCS7_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( PKCS7 , (¡)) ) 1033  #sk_PKCS7_RECIP_INFO_Ãw ( ¡ è `SKM_sk_Ãw ( PKCS7_RECIP_INFO , (¡)) ) 1034  #sk_PKCS7_RECIP_INFO_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( PKCS7_RECIP_INFO ) ) 1035  #sk_PKCS7_RECIP_INFO_ä“ ( ¡ è `SKM_sk_ä“ ( PKCS7_RECIP_INFO , (¡)) ) 1036  #sk_PKCS7_RECIP_INFO_num ( ¡ è `SKM_sk_num ( PKCS7_RECIP_INFO , (¡)) ) 1037  #sk_PKCS7_RECIP_INFO_v®ue ( ¡ , i è `SKM_sk_v®ue ( PKCS7_RECIP_INFO , (¡), (i)) ) 1038  #sk_PKCS7_RECIP_INFO_£t ( ¡ , i , v® è `SKM_sk_£t ( PKCS7_RECIP_INFO , (¡), (i), (v®)) ) 1039  #sk_PKCS7_RECIP_INFO_z”o ( ¡ è `SKM_sk_z”o ( PKCS7_RECIP_INFO , (¡)) ) 1040  #sk_PKCS7_RECIP_INFO_push ( ¡ , v® è `SKM_sk_push ( PKCS7_RECIP_INFO , (¡), (v®)) ) 1041  #sk_PKCS7_RECIP_INFO_unshiá ( ¡ , v® è `SKM_sk_unshiá ( PKCS7_RECIP_INFO , (¡), (v®)) ) 1042  #sk_PKCS7_RECIP_INFO_fšd ( ¡ , v® è `SKM_sk_fšd ( PKCS7_RECIP_INFO , (¡), (v®)) ) 1043  #sk_PKCS7_RECIP_INFO_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( PKCS7_RECIP_INFO , (¡), (v®)) ) 1044  #sk_PKCS7_RECIP_INFO_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( PKCS7_RECIP_INFO , (¡), (i)) ) 1045  #sk_PKCS7_RECIP_INFO_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( PKCS7_RECIP_INFO , (¡), (±r)) ) 1046  #sk_PKCS7_RECIP_INFO_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( PKCS7_RECIP_INFO , (¡), (v®), (i)) ) 1047  #sk_PKCS7_RECIP_INFO_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( PKCS7_RECIP_INFO , (¡), (cmp)) ) 1048  #sk_PKCS7_RECIP_INFO_dup ( ¡ è `SKM_sk_dup ( PKCS7_RECIP_INFO , st) ) 1049  #sk_PKCS7_RECIP_INFO_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( PKCS7_RECIP_INFO , (¡), (ä“_func)) ) 1050  #sk_PKCS7_RECIP_INFO_shiá ( ¡ è `SKM_sk_shiá ( PKCS7_RECIP_INFO , (¡)) ) 1051  #sk_PKCS7_RECIP_INFO_pÝ ( ¡ è `SKM_sk_pÝ ( PKCS7_RECIP_INFO , (¡)) ) 1052  #sk_PKCS7_RECIP_INFO_sÜt ( ¡ è `SKM_sk_sÜt ( PKCS7_RECIP_INFO , (¡)) ) 1053  #sk_PKCS7_RECIP_INFO_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( PKCS7_RECIP_INFO , (¡)) ) 1055  #sk_PKCS7_SIGNER_INFO_Ãw ( ¡ è `SKM_sk_Ãw ( PKCS7_SIGNER_INFO , (¡)) ) 1056  #sk_PKCS7_SIGNER_INFO_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( PKCS7_SIGNER_INFO ) ) 1057  #sk_PKCS7_SIGNER_INFO_ä“ ( ¡ è `SKM_sk_ä“ ( PKCS7_SIGNER_INFO , (¡)) ) 1058  #sk_PKCS7_SIGNER_INFO_num ( ¡ è `SKM_sk_num ( PKCS7_SIGNER_INFO , (¡)) ) 1059  #sk_PKCS7_SIGNER_INFO_v®ue ( ¡ , i è `SKM_sk_v®ue ( PKCS7_SIGNER_INFO , (¡), (i)) ) 1060  #sk_PKCS7_SIGNER_INFO_£t ( ¡ , i , v® è `SKM_sk_£t ( PKCS7_SIGNER_INFO , (¡), (i), (v®)) ) 1061  #sk_PKCS7_SIGNER_INFO_z”o ( ¡ è `SKM_sk_z”o ( PKCS7_SIGNER_INFO , (¡)) ) 1062  #sk_PKCS7_SIGNER_INFO_push ( ¡ , v® è `SKM_sk_push ( PKCS7_SIGNER_INFO , (¡), (v®)) ) 1063  #sk_PKCS7_SIGNER_INFO_unshiá ( ¡ , v® è `SKM_sk_unshiá ( PKCS7_SIGNER_INFO , (¡), (v®)) ) 1064  #sk_PKCS7_SIGNER_INFO_fšd ( ¡ , v® è `SKM_sk_fšd ( PKCS7_SIGNER_INFO , (¡), (v®)) ) 1065  #sk_PKCS7_SIGNER_INFO_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( PKCS7_SIGNER_INFO , (¡), (v®)) ) 1066  #sk_PKCS7_SIGNER_INFO_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( PKCS7_SIGNER_INFO , (¡), (i)) ) 1067  #sk_PKCS7_SIGNER_INFO_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( PKCS7_SIGNER_INFO , (¡), (±r)) ) 1068  #sk_PKCS7_SIGNER_INFO_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( PKCS7_SIGNER_INFO , (¡), (v®), (i)) ) 1069  #sk_PKCS7_SIGNER_INFO_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( PKCS7_SIGNER_INFO , (¡), (cmp)) ) 1070  #sk_PKCS7_SIGNER_INFO_dup ( ¡ è `SKM_sk_dup ( PKCS7_SIGNER_INFO , st) ) 1071  #sk_PKCS7_SIGNER_INFO_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( PKCS7_SIGNER_INFO , (¡), (ä“_func)) ) 1072  #sk_PKCS7_SIGNER_INFO_shiá ( ¡ è `SKM_sk_shiá ( PKCS7_SIGNER_INFO , (¡)) ) 1073  #sk_PKCS7_SIGNER_INFO_pÝ ( ¡ è `SKM_sk_pÝ ( PKCS7_SIGNER_INFO , (¡)) ) 1074  #sk_PKCS7_SIGNER_INFO_sÜt ( ¡ è `SKM_sk_sÜt ( PKCS7_SIGNER_INFO , (¡)) ) 1075  #sk_PKCS7_SIGNER_INFO_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( PKCS7_SIGNER_INFO , (¡)) ) 1077  #sk_POLICYINFO_Ãw ( ¡ è `SKM_sk_Ãw ( POLICYINFO , (¡)) ) 1078  #sk_POLICYINFO_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( POLICYINFO ) ) 1079  #sk_POLICYINFO_ä“ ( ¡ è `SKM_sk_ä“ ( POLICYINFO , (¡)) ) 1080  #sk_POLICYINFO_num ( ¡ è `SKM_sk_num ( POLICYINFO , (¡)) ) 1081  #sk_POLICYINFO_v®ue ( ¡ , i è `SKM_sk_v®ue ( POLICYINFO , (¡), (i)) ) 1082  #sk_POLICYINFO_£t ( ¡ , i , v® è `SKM_sk_£t ( POLICYINFO , (¡), (i), (v®)) ) 1083  #sk_POLICYINFO_z”o ( ¡ è `SKM_sk_z”o ( POLICYINFO , (¡)) ) 1084  #sk_POLICYINFO_push ( ¡ , v® è `SKM_sk_push ( POLICYINFO , (¡), (v®)) ) 1085  #sk_POLICYINFO_unshiá ( ¡ , v® è `SKM_sk_unshiá ( POLICYINFO , (¡), (v®)) ) 1086  #sk_POLICYINFO_fšd ( ¡ , v® è `SKM_sk_fšd ( POLICYINFO , (¡), (v®)) ) 1087  #sk_POLICYINFO_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( POLICYINFO , (¡), (v®)) ) 1088  #sk_POLICYINFO_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( POLICYINFO , (¡), (i)) ) 1089  #sk_POLICYINFO_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( POLICYINFO , (¡), (±r)) ) 1090  #sk_POLICYINFO_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( POLICYINFO , (¡), (v®), (i)) ) 1091  #sk_POLICYINFO_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( POLICYINFO , (¡), (cmp)) ) 1092  #sk_POLICYINFO_dup ( ¡ è `SKM_sk_dup ( POLICYINFO , st) ) 1093  #sk_POLICYINFO_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( POLICYINFO , (¡), (ä“_func)) ) 1094  #sk_POLICYINFO_shiá ( ¡ è `SKM_sk_shiá ( POLICYINFO , (¡)) ) 1095  #sk_POLICYINFO_pÝ ( ¡ è `SKM_sk_pÝ ( POLICYINFO , (¡)) ) 1096  #sk_POLICYINFO_sÜt ( ¡ è `SKM_sk_sÜt ( POLICYINFO , (¡)) ) 1097  #sk_POLICYINFO_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( POLICYINFO , (¡)) ) 1099  #sk_POLICYQUALINFO_Ãw ( ¡ è `SKM_sk_Ãw ( POLICYQUALINFO , (¡)) ) 1100  #sk_POLICYQUALINFO_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( POLICYQUALINFO ) ) 1101  #sk_POLICYQUALINFO_ä“ ( ¡ è `SKM_sk_ä“ ( POLICYQUALINFO , (¡)) ) 1102  #sk_POLICYQUALINFO_num ( ¡ è `SKM_sk_num ( POLICYQUALINFO , (¡)) ) 1103  #sk_POLICYQUALINFO_v®ue ( ¡ , i è `SKM_sk_v®ue ( POLICYQUALINFO , (¡), (i)) ) 1104  #sk_POLICYQUALINFO_£t ( ¡ , i , v® è `SKM_sk_£t ( POLICYQUALINFO , (¡), (i), (v®)) ) 1105  #sk_POLICYQUALINFO_z”o ( ¡ è `SKM_sk_z”o ( POLICYQUALINFO , (¡)) ) 1106  #sk_POLICYQUALINFO_push ( ¡ , v® è `SKM_sk_push ( POLICYQUALINFO , (¡), (v®)) ) 1107  #sk_POLICYQUALINFO_unshiá ( ¡ , v® è `SKM_sk_unshiá ( POLICYQUALINFO , (¡), (v®)) ) 1108  #sk_POLICYQUALINFO_fšd ( ¡ , v® è `SKM_sk_fšd ( POLICYQUALINFO , (¡), (v®)) ) 1109  #sk_POLICYQUALINFO_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( POLICYQUALINFO , (¡), (v®)) ) 1110  #sk_POLICYQUALINFO_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( POLICYQUALINFO , (¡), (i)) ) 1111  #sk_POLICYQUALINFO_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( POLICYQUALINFO , (¡), (±r)) ) 1112  #sk_POLICYQUALINFO_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( POLICYQUALINFO , (¡), (v®), (i)) ) 1113  #sk_POLICYQUALINFO_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( POLICYQUALINFO , (¡), (cmp)) ) 1114  #sk_POLICYQUALINFO_dup ( ¡ è `SKM_sk_dup ( POLICYQUALINFO , st) ) 1115  #sk_POLICYQUALINFO_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( POLICYQUALINFO , (¡), (ä“_func)) ) 1116  #sk_POLICYQUALINFO_shiá ( ¡ è `SKM_sk_shiá ( POLICYQUALINFO , (¡)) ) 1117  #sk_POLICYQUALINFO_pÝ ( ¡ è `SKM_sk_pÝ ( POLICYQUALINFO , (¡)) ) 1118  #sk_POLICYQUALINFO_sÜt ( ¡ è `SKM_sk_sÜt ( POLICYQUALINFO , (¡)) ) 1119  #sk_POLICYQUALINFO_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( POLICYQUALINFO , (¡)) ) 1121  #sk_POLICY_MAPPING_Ãw ( ¡ è `SKM_sk_Ãw ( POLICY_MAPPING , (¡)) ) 1122  #sk_POLICY_MAPPING_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( POLICY_MAPPING ) ) 1123  #sk_POLICY_MAPPING_ä“ ( ¡ è `SKM_sk_ä“ ( POLICY_MAPPING , (¡)) ) 1124  #sk_POLICY_MAPPING_num ( ¡ è `SKM_sk_num ( POLICY_MAPPING , (¡)) ) 1125  #sk_POLICY_MAPPING_v®ue ( ¡ , i è `SKM_sk_v®ue ( POLICY_MAPPING , (¡), (i)) ) 1126  #sk_POLICY_MAPPING_£t ( ¡ , i , v® è `SKM_sk_£t ( POLICY_MAPPING , (¡), (i), (v®)) ) 1127  #sk_POLICY_MAPPING_z”o ( ¡ è `SKM_sk_z”o ( POLICY_MAPPING , (¡)) ) 1128  #sk_POLICY_MAPPING_push ( ¡ , v® è `SKM_sk_push ( POLICY_MAPPING , (¡), (v®)) ) 1129  #sk_POLICY_MAPPING_unshiá ( ¡ , v® è `SKM_sk_unshiá ( POLICY_MAPPING , (¡), (v®)) ) 1130  #sk_POLICY_MAPPING_fšd ( ¡ , v® è `SKM_sk_fšd ( POLICY_MAPPING , (¡), (v®)) ) 1131  #sk_POLICY_MAPPING_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( POLICY_MAPPING , (¡), (v®)) ) 1132  #sk_POLICY_MAPPING_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( POLICY_MAPPING , (¡), (i)) ) 1133  #sk_POLICY_MAPPING_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( POLICY_MAPPING , (¡), (±r)) ) 1134  #sk_POLICY_MAPPING_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( POLICY_MAPPING , (¡), (v®), (i)) ) 1135  #sk_POLICY_MAPPING_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( POLICY_MAPPING , (¡), (cmp)) ) 1136  #sk_POLICY_MAPPING_dup ( ¡ è `SKM_sk_dup ( POLICY_MAPPING , st) ) 1137  #sk_POLICY_MAPPING_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( POLICY_MAPPING , (¡), (ä“_func)) ) 1138  #sk_POLICY_MAPPING_shiá ( ¡ è `SKM_sk_shiá ( POLICY_MAPPING , (¡)) ) 1139  #sk_POLICY_MAPPING_pÝ ( ¡ è `SKM_sk_pÝ ( POLICY_MAPPING , (¡)) ) 1140  #sk_POLICY_MAPPING_sÜt ( ¡ è `SKM_sk_sÜt ( POLICY_MAPPING , (¡)) ) 1141  #sk_POLICY_MAPPING_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( POLICY_MAPPING , (¡)) ) 1143  #sk_SSL_CIPHER_Ãw ( ¡ è `SKM_sk_Ãw ( SSL_CIPHER , (¡)) ) 1144  #sk_SSL_CIPHER_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( SSL_CIPHER ) ) 1145  #sk_SSL_CIPHER_ä“ ( ¡ è `SKM_sk_ä“ ( SSL_CIPHER , (¡)) ) 1146  #sk_SSL_CIPHER_num ( ¡ è `SKM_sk_num ( SSL_CIPHER , (¡)) ) 1147  #sk_SSL_CIPHER_v®ue ( ¡ , i è `SKM_sk_v®ue ( SSL_CIPHER , (¡), (i)) ) 1148  #sk_SSL_CIPHER_£t ( ¡ , i , v® è `SKM_sk_£t ( SSL_CIPHER , (¡), (i), (v®)) ) 1149  #sk_SSL_CIPHER_z”o ( ¡ è `SKM_sk_z”o ( SSL_CIPHER , (¡)) ) 1150  #sk_SSL_CIPHER_push ( ¡ , v® è `SKM_sk_push ( SSL_CIPHER , (¡), (v®)) ) 1151  #sk_SSL_CIPHER_unshiá ( ¡ , v® è `SKM_sk_unshiá ( SSL_CIPHER , (¡), (v®)) ) 1152  #sk_SSL_CIPHER_fšd ( ¡ , v® è `SKM_sk_fšd ( SSL_CIPHER , (¡), (v®)) ) 1153  #sk_SSL_CIPHER_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( SSL_CIPHER , (¡), (v®)) ) 1154  #sk_SSL_CIPHER_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( SSL_CIPHER , (¡), (i)) ) 1155  #sk_SSL_CIPHER_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( SSL_CIPHER , (¡), (±r)) ) 1156  #sk_SSL_CIPHER_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( SSL_CIPHER , (¡), (v®), (i)) ) 1157  #sk_SSL_CIPHER_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( SSL_CIPHER , (¡), (cmp)) ) 1158  #sk_SSL_CIPHER_dup ( ¡ è `SKM_sk_dup ( SSL_CIPHER , st) ) 1159  #sk_SSL_CIPHER_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( SSL_CIPHER , (¡), (ä“_func)) ) 1160  #sk_SSL_CIPHER_shiá ( ¡ è `SKM_sk_shiá ( SSL_CIPHER , (¡)) ) 1161  #sk_SSL_CIPHER_pÝ ( ¡ è `SKM_sk_pÝ ( SSL_CIPHER , (¡)) ) 1162  #sk_SSL_CIPHER_sÜt ( ¡ è `SKM_sk_sÜt ( SSL_CIPHER , (¡)) ) 1163  #sk_SSL_CIPHER_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( SSL_CIPHER , (¡)) ) 1165  #sk_SSL_COMP_Ãw ( ¡ è `SKM_sk_Ãw ( SSL_COMP , (¡)) ) 1166  #sk_SSL_COMP_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( SSL_COMP ) ) 1167  #sk_SSL_COMP_ä“ ( ¡ è `SKM_sk_ä“ ( SSL_COMP , (¡)) ) 1168  #sk_SSL_COMP_num ( ¡ è `SKM_sk_num ( SSL_COMP , (¡)) ) 1169  #sk_SSL_COMP_v®ue ( ¡ , i è `SKM_sk_v®ue ( SSL_COMP , (¡), (i)) ) 1170  #sk_SSL_COMP_£t ( ¡ , i , v® è `SKM_sk_£t ( SSL_COMP , (¡), (i), (v®)) ) 1171  #sk_SSL_COMP_z”o ( ¡ è `SKM_sk_z”o ( SSL_COMP , (¡)) ) 1172  #sk_SSL_COMP_push ( ¡ , v® è `SKM_sk_push ( SSL_COMP , (¡), (v®)) ) 1173  #sk_SSL_COMP_unshiá ( ¡ , v® è `SKM_sk_unshiá ( SSL_COMP , (¡), (v®)) ) 1174  #sk_SSL_COMP_fšd ( ¡ , v® è `SKM_sk_fšd ( SSL_COMP , (¡), (v®)) ) 1175  #sk_SSL_COMP_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( SSL_COMP , (¡), (v®)) ) 1176  #sk_SSL_COMP_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( SSL_COMP , (¡), (i)) ) 1177  #sk_SSL_COMP_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( SSL_COMP , (¡), (±r)) ) 1178  #sk_SSL_COMP_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( SSL_COMP , (¡), (v®), (i)) ) 1179  #sk_SSL_COMP_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( SSL_COMP , (¡), (cmp)) ) 1180  #sk_SSL_COMP_dup ( ¡ è `SKM_sk_dup ( SSL_COMP , st) ) 1181  #sk_SSL_COMP_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( SSL_COMP , (¡), (ä“_func)) ) 1182  #sk_SSL_COMP_shiá ( ¡ è `SKM_sk_shiá ( SSL_COMP , (¡)) ) 1183  #sk_SSL_COMP_pÝ ( ¡ è `SKM_sk_pÝ ( SSL_COMP , (¡)) ) 1184  #sk_SSL_COMP_sÜt ( ¡ è `SKM_sk_sÜt ( SSL_COMP , (¡)) ) 1185  #sk_SSL_COMP_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( SSL_COMP , (¡)) ) 1187  #sk_STORE_OBJECT_Ãw ( ¡ è `SKM_sk_Ãw ( STORE_OBJECT , (¡)) ) 1188  #sk_STORE_OBJECT_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( STORE_OBJECT ) ) 1189  #sk_STORE_OBJECT_ä“ ( ¡ è `SKM_sk_ä“ ( STORE_OBJECT , (¡)) ) 1190  #sk_STORE_OBJECT_num ( ¡ è `SKM_sk_num ( STORE_OBJECT , (¡)) ) 1191  #sk_STORE_OBJECT_v®ue ( ¡ , i è `SKM_sk_v®ue ( STORE_OBJECT , (¡), (i)) ) 1192  #sk_STORE_OBJECT_£t ( ¡ , i , v® è `SKM_sk_£t ( STORE_OBJECT , (¡), (i), (v®)) ) 1193  #sk_STORE_OBJECT_z”o ( ¡ è `SKM_sk_z”o ( STORE_OBJECT , (¡)) ) 1194  #sk_STORE_OBJECT_push ( ¡ , v® è `SKM_sk_push ( STORE_OBJECT , (¡), (v®)) ) 1195  #sk_STORE_OBJECT_unshiá ( ¡ , v® è `SKM_sk_unshiá ( STORE_OBJECT , (¡), (v®)) ) 1196  #sk_STORE_OBJECT_fšd ( ¡ , v® è `SKM_sk_fšd ( STORE_OBJECT , (¡), (v®)) ) 1197  #sk_STORE_OBJECT_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( STORE_OBJECT , (¡), (v®)) ) 1198  #sk_STORE_OBJECT_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( STORE_OBJECT , (¡), (i)) ) 1199  #sk_STORE_OBJECT_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( STORE_OBJECT , (¡), (±r)) ) 1200  #sk_STORE_OBJECT_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( STORE_OBJECT , (¡), (v®), (i)) ) 1201  #sk_STORE_OBJECT_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( STORE_OBJECT , (¡), (cmp)) ) 1202  #sk_STORE_OBJECT_dup ( ¡ è `SKM_sk_dup ( STORE_OBJECT , st) ) 1203  #sk_STORE_OBJECT_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( STORE_OBJECT , (¡), (ä“_func)) ) 1204  #sk_STORE_OBJECT_shiá ( ¡ è `SKM_sk_shiá ( STORE_OBJECT , (¡)) ) 1205  #sk_STORE_OBJECT_pÝ ( ¡ è `SKM_sk_pÝ ( STORE_OBJECT , (¡)) ) 1206  #sk_STORE_OBJECT_sÜt ( ¡ è `SKM_sk_sÜt ( STORE_OBJECT , (¡)) ) 1207  #sk_STORE_OBJECT_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( STORE_OBJECT , (¡)) ) 1209  #sk_SXNETID_Ãw ( ¡ è `SKM_sk_Ãw ( SXNETID , (¡)) ) 1210  #sk_SXNETID_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( SXNETID ) ) 1211  #sk_SXNETID_ä“ ( ¡ è `SKM_sk_ä“ ( SXNETID , (¡)) ) 1212  #sk_SXNETID_num ( ¡ è `SKM_sk_num ( SXNETID , (¡)) ) 1213  #sk_SXNETID_v®ue ( ¡ , i è `SKM_sk_v®ue ( SXNETID , (¡), (i)) ) 1214  #sk_SXNETID_£t ( ¡ , i , v® è `SKM_sk_£t ( SXNETID , (¡), (i), (v®)) ) 1215  #sk_SXNETID_z”o ( ¡ è `SKM_sk_z”o ( SXNETID , (¡)) ) 1216  #sk_SXNETID_push ( ¡ , v® è `SKM_sk_push ( SXNETID , (¡), (v®)) ) 1217  #sk_SXNETID_unshiá ( ¡ , v® è `SKM_sk_unshiá ( SXNETID , (¡), (v®)) ) 1218  #sk_SXNETID_fšd ( ¡ , v® è `SKM_sk_fšd ( SXNETID , (¡), (v®)) ) 1219  #sk_SXNETID_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( SXNETID , (¡), (v®)) ) 1220  #sk_SXNETID_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( SXNETID , (¡), (i)) ) 1221  #sk_SXNETID_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( SXNETID , (¡), (±r)) ) 1222  #sk_SXNETID_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( SXNETID , (¡), (v®), (i)) ) 1223  #sk_SXNETID_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( SXNETID , (¡), (cmp)) ) 1224  #sk_SXNETID_dup ( ¡ è `SKM_sk_dup ( SXNETID , st) ) 1225  #sk_SXNETID_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( SXNETID , (¡), (ä“_func)) ) 1226  #sk_SXNETID_shiá ( ¡ è `SKM_sk_shiá ( SXNETID , (¡)) ) 1227  #sk_SXNETID_pÝ ( ¡ è `SKM_sk_pÝ ( SXNETID , (¡)) ) 1228  #sk_SXNETID_sÜt ( ¡ è `SKM_sk_sÜt ( SXNETID , (¡)) ) 1229  #sk_SXNETID_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( SXNETID , (¡)) ) 1231  #sk_UI_STRING_Ãw ( ¡ è `SKM_sk_Ãw ( UI_STRING , (¡)) ) 1232  #sk_UI_STRING_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( UI_STRING ) ) 1233  #sk_UI_STRING_ä“ ( ¡ è `SKM_sk_ä“ ( UI_STRING , (¡)) ) 1234  #sk_UI_STRING_num ( ¡ è `SKM_sk_num ( UI_STRING , (¡)) ) 1235  #sk_UI_STRING_v®ue ( ¡ , i è `SKM_sk_v®ue ( UI_STRING , (¡), (i)) ) 1236  #sk_UI_STRING_£t ( ¡ , i , v® è `SKM_sk_£t ( UI_STRING , (¡), (i), (v®)) ) 1237  #sk_UI_STRING_z”o ( ¡ è `SKM_sk_z”o ( UI_STRING , (¡)) ) 1238  #sk_UI_STRING_push ( ¡ , v® è `SKM_sk_push ( UI_STRING , (¡), (v®)) ) 1239  #sk_UI_STRING_unshiá ( ¡ , v® è `SKM_sk_unshiá ( UI_STRING , (¡), (v®)) ) 1240  #sk_UI_STRING_fšd ( ¡ , v® è `SKM_sk_fšd ( UI_STRING , (¡), (v®)) ) 1241  #sk_UI_STRING_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( UI_STRING , (¡), (v®)) ) 1242  #sk_UI_STRING_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( UI_STRING , (¡), (i)) ) 1243  #sk_UI_STRING_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( UI_STRING , (¡), (±r)) ) 1244  #sk_UI_STRING_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( UI_STRING , (¡), (v®), (i)) ) 1245  #sk_UI_STRING_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( UI_STRING , (¡), (cmp)) ) 1246  #sk_UI_STRING_dup ( ¡ è `SKM_sk_dup ( UI_STRING , st) ) 1247  #sk_UI_STRING_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( UI_STRING , (¡), (ä“_func)) ) 1248  #sk_UI_STRING_shiá ( ¡ è `SKM_sk_shiá ( UI_STRING , (¡)) ) 1249  #sk_UI_STRING_pÝ ( ¡ è `SKM_sk_pÝ ( UI_STRING , (¡)) ) 1250  #sk_UI_STRING_sÜt ( ¡ è `SKM_sk_sÜt ( UI_STRING , (¡)) ) 1251  #sk_UI_STRING_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( UI_STRING , (¡)) ) 1253  #sk_X509_Ãw ( ¡ è `SKM_sk_Ãw ( X509 , (¡)) ) 1254  #sk_X509_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509 ) ) 1255  #sk_X509_ä“ ( ¡ è `SKM_sk_ä“ ( X509 , (¡)) ) 1256  #sk_X509_num ( ¡ è `SKM_sk_num ( X509 , (¡)) ) 1257  #sk_X509_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509 , (¡), (i)) ) 1258  #sk_X509_£t ( ¡ , i , v® è `SKM_sk_£t ( X509 , (¡), (i), (v®)) ) 1259  #sk_X509_z”o ( ¡ è `SKM_sk_z”o ( X509 , (¡)) ) 1260  #sk_X509_push ( ¡ , v® è `SKM_sk_push ( X509 , (¡), (v®)) ) 1261  #sk_X509_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509 , (¡), (v®)) ) 1262  #sk_X509_fšd ( ¡ , v® è `SKM_sk_fšd ( X509 , (¡), (v®)) ) 1263  #sk_X509_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509 , (¡), (v®)) ) 1264  #sk_X509_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509 , (¡), (i)) ) 1265  #sk_X509_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509 , (¡), (±r)) ) 1266  #sk_X509_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509 , (¡), (v®), (i)) ) 1267  #sk_X509_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509 , (¡), (cmp)) ) 1268  #sk_X509_dup ( ¡ è `SKM_sk_dup ( X509 , st) ) 1269  #sk_X509_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509 , (¡), (ä“_func)) ) 1270  #sk_X509_shiá ( ¡ è `SKM_sk_shiá ( X509 , (¡)) ) 1271  #sk_X509_pÝ ( ¡ è `SKM_sk_pÝ ( X509 , (¡)) ) 1272  #sk_X509_sÜt ( ¡ è `SKM_sk_sÜt ( X509 , (¡)) ) 1273  #sk_X509_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509 , (¡)) ) 1275  #sk_X509V3_EXT_METHOD_Ãw ( ¡ è `SKM_sk_Ãw ( X509V3_EXT_METHOD , (¡)) ) 1276  #sk_X509V3_EXT_METHOD_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509V3_EXT_METHOD ) ) 1277  #sk_X509V3_EXT_METHOD_ä“ ( ¡ è `SKM_sk_ä“ ( X509V3_EXT_METHOD , (¡)) ) 1278  #sk_X509V3_EXT_METHOD_num ( ¡ è `SKM_sk_num ( X509V3_EXT_METHOD , (¡)) ) 1279  #sk_X509V3_EXT_METHOD_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509V3_EXT_METHOD , (¡), (i)) ) 1280  #sk_X509V3_EXT_METHOD_£t ( ¡ , i , v® è `SKM_sk_£t ( X509V3_EXT_METHOD , (¡), (i), (v®)) ) 1281  #sk_X509V3_EXT_METHOD_z”o ( ¡ è `SKM_sk_z”o ( X509V3_EXT_METHOD , (¡)) ) 1282  #sk_X509V3_EXT_METHOD_push ( ¡ , v® è `SKM_sk_push ( X509V3_EXT_METHOD , (¡), (v®)) ) 1283  #sk_X509V3_EXT_METHOD_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509V3_EXT_METHOD , (¡), (v®)) ) 1284  #sk_X509V3_EXT_METHOD_fšd ( ¡ , v® è `SKM_sk_fšd ( X509V3_EXT_METHOD , (¡), (v®)) ) 1285  #sk_X509V3_EXT_METHOD_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509V3_EXT_METHOD , (¡), (v®)) ) 1286  #sk_X509V3_EXT_METHOD_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509V3_EXT_METHOD , (¡), (i)) ) 1287  #sk_X509V3_EXT_METHOD_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509V3_EXT_METHOD , (¡), (±r)) ) 1288  #sk_X509V3_EXT_METHOD_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509V3_EXT_METHOD , (¡), (v®), (i)) ) 1289  #sk_X509V3_EXT_METHOD_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509V3_EXT_METHOD , (¡), (cmp)) ) 1290  #sk_X509V3_EXT_METHOD_dup ( ¡ è `SKM_sk_dup ( X509V3_EXT_METHOD , st) ) 1291  #sk_X509V3_EXT_METHOD_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509V3_EXT_METHOD , (¡), (ä“_func)) ) 1292  #sk_X509V3_EXT_METHOD_shiá ( ¡ è `SKM_sk_shiá ( X509V3_EXT_METHOD , (¡)) ) 1293  #sk_X509V3_EXT_METHOD_pÝ ( ¡ è `SKM_sk_pÝ ( X509V3_EXT_METHOD , (¡)) ) 1294  #sk_X509V3_EXT_METHOD_sÜt ( ¡ è `SKM_sk_sÜt ( X509V3_EXT_METHOD , (¡)) ) 1295  #sk_X509V3_EXT_METHOD_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509V3_EXT_METHOD , (¡)) ) 1297  #sk_X509_ALGOR_Ãw ( ¡ è `SKM_sk_Ãw ( X509_ALGOR , (¡)) ) 1298  #sk_X509_ALGOR_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_ALGOR ) ) 1299  #sk_X509_ALGOR_ä“ ( ¡ è `SKM_sk_ä“ ( X509_ALGOR , (¡)) ) 1300  #sk_X509_ALGOR_num ( ¡ è `SKM_sk_num ( X509_ALGOR , (¡)) ) 1301  #sk_X509_ALGOR_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_ALGOR , (¡), (i)) ) 1302  #sk_X509_ALGOR_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_ALGOR , (¡), (i), (v®)) ) 1303  #sk_X509_ALGOR_z”o ( ¡ è `SKM_sk_z”o ( X509_ALGOR , (¡)) ) 1304  #sk_X509_ALGOR_push ( ¡ , v® è `SKM_sk_push ( X509_ALGOR , (¡), (v®)) ) 1305  #sk_X509_ALGOR_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_ALGOR , (¡), (v®)) ) 1306  #sk_X509_ALGOR_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_ALGOR , (¡), (v®)) ) 1307  #sk_X509_ALGOR_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_ALGOR , (¡), (v®)) ) 1308  #sk_X509_ALGOR_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_ALGOR , (¡), (i)) ) 1309  #sk_X509_ALGOR_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_ALGOR , (¡), (±r)) ) 1310  #sk_X509_ALGOR_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_ALGOR , (¡), (v®), (i)) ) 1311  #sk_X509_ALGOR_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_ALGOR , (¡), (cmp)) ) 1312  #sk_X509_ALGOR_dup ( ¡ è `SKM_sk_dup ( X509_ALGOR , st) ) 1313  #sk_X509_ALGOR_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_ALGOR , (¡), (ä“_func)) ) 1314  #sk_X509_ALGOR_shiá ( ¡ è `SKM_sk_shiá ( X509_ALGOR , (¡)) ) 1315  #sk_X509_ALGOR_pÝ ( ¡ è `SKM_sk_pÝ ( X509_ALGOR , (¡)) ) 1316  #sk_X509_ALGOR_sÜt ( ¡ è `SKM_sk_sÜt ( X509_ALGOR , (¡)) ) 1317  #sk_X509_ALGOR_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_ALGOR , (¡)) ) 1319  #sk_X509_ATTRIBUTE_Ãw ( ¡ è `SKM_sk_Ãw ( X509_ATTRIBUTE , (¡)) ) 1320  #sk_X509_ATTRIBUTE_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_ATTRIBUTE ) ) 1321  #sk_X509_ATTRIBUTE_ä“ ( ¡ è `SKM_sk_ä“ ( X509_ATTRIBUTE , (¡)) ) 1322  #sk_X509_ATTRIBUTE_num ( ¡ è `SKM_sk_num ( X509_ATTRIBUTE , (¡)) ) 1323  #sk_X509_ATTRIBUTE_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_ATTRIBUTE , (¡), (i)) ) 1324  #sk_X509_ATTRIBUTE_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_ATTRIBUTE , (¡), (i), (v®)) ) 1325  #sk_X509_ATTRIBUTE_z”o ( ¡ è `SKM_sk_z”o ( X509_ATTRIBUTE , (¡)) ) 1326  #sk_X509_ATTRIBUTE_push ( ¡ , v® è `SKM_sk_push ( X509_ATTRIBUTE , (¡), (v®)) ) 1327  #sk_X509_ATTRIBUTE_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_ATTRIBUTE , (¡), (v®)) ) 1328  #sk_X509_ATTRIBUTE_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_ATTRIBUTE , (¡), (v®)) ) 1329  #sk_X509_ATTRIBUTE_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_ATTRIBUTE , (¡), (v®)) ) 1330  #sk_X509_ATTRIBUTE_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_ATTRIBUTE , (¡), (i)) ) 1331  #sk_X509_ATTRIBUTE_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_ATTRIBUTE , (¡), (±r)) ) 1332  #sk_X509_ATTRIBUTE_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_ATTRIBUTE , (¡), (v®), (i)) ) 1333  #sk_X509_ATTRIBUTE_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_ATTRIBUTE , (¡), (cmp)) ) 1334  #sk_X509_ATTRIBUTE_dup ( ¡ è `SKM_sk_dup ( X509_ATTRIBUTE , st) ) 1335  #sk_X509_ATTRIBUTE_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_ATTRIBUTE , (¡), (ä“_func)) ) 1336  #sk_X509_ATTRIBUTE_shiá ( ¡ è `SKM_sk_shiá ( X509_ATTRIBUTE , (¡)) ) 1337  #sk_X509_ATTRIBUTE_pÝ ( ¡ è `SKM_sk_pÝ ( X509_ATTRIBUTE , (¡)) ) 1338  #sk_X509_ATTRIBUTE_sÜt ( ¡ è `SKM_sk_sÜt ( X509_ATTRIBUTE , (¡)) ) 1339  #sk_X509_ATTRIBUTE_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_ATTRIBUTE , (¡)) ) 1341  #sk_X509_CRL_Ãw ( ¡ è `SKM_sk_Ãw ( X509_CRL , (¡)) ) 1342  #sk_X509_CRL_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_CRL ) ) 1343  #sk_X509_CRL_ä“ ( ¡ è `SKM_sk_ä“ ( X509_CRL , (¡)) ) 1344  #sk_X509_CRL_num ( ¡ è `SKM_sk_num ( X509_CRL , (¡)) ) 1345  #sk_X509_CRL_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_CRL , (¡), (i)) ) 1346  #sk_X509_CRL_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_CRL , (¡), (i), (v®)) ) 1347  #sk_X509_CRL_z”o ( ¡ è `SKM_sk_z”o ( X509_CRL , (¡)) ) 1348  #sk_X509_CRL_push ( ¡ , v® è `SKM_sk_push ( X509_CRL , (¡), (v®)) ) 1349  #sk_X509_CRL_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_CRL , (¡), (v®)) ) 1350  #sk_X509_CRL_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_CRL , (¡), (v®)) ) 1351  #sk_X509_CRL_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_CRL , (¡), (v®)) ) 1352  #sk_X509_CRL_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_CRL , (¡), (i)) ) 1353  #sk_X509_CRL_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_CRL , (¡), (±r)) ) 1354  #sk_X509_CRL_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_CRL , (¡), (v®), (i)) ) 1355  #sk_X509_CRL_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_CRL , (¡), (cmp)) ) 1356  #sk_X509_CRL_dup ( ¡ è `SKM_sk_dup ( X509_CRL , st) ) 1357  #sk_X509_CRL_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_CRL , (¡), (ä“_func)) ) 1358  #sk_X509_CRL_shiá ( ¡ è `SKM_sk_shiá ( X509_CRL , (¡)) ) 1359  #sk_X509_CRL_pÝ ( ¡ è `SKM_sk_pÝ ( X509_CRL , (¡)) ) 1360  #sk_X509_CRL_sÜt ( ¡ è `SKM_sk_sÜt ( X509_CRL , (¡)) ) 1361  #sk_X509_CRL_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_CRL , (¡)) ) 1363  #sk_X509_EXTENSION_Ãw ( ¡ è `SKM_sk_Ãw ( X509_EXTENSION , (¡)) ) 1364  #sk_X509_EXTENSION_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_EXTENSION ) ) 1365  #sk_X509_EXTENSION_ä“ ( ¡ è `SKM_sk_ä“ ( X509_EXTENSION , (¡)) ) 1366  #sk_X509_EXTENSION_num ( ¡ è `SKM_sk_num ( X509_EXTENSION , (¡)) ) 1367  #sk_X509_EXTENSION_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_EXTENSION , (¡), (i)) ) 1368  #sk_X509_EXTENSION_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_EXTENSION , (¡), (i), (v®)) ) 1369  #sk_X509_EXTENSION_z”o ( ¡ è `SKM_sk_z”o ( X509_EXTENSION , (¡)) ) 1370  #sk_X509_EXTENSION_push ( ¡ , v® è `SKM_sk_push ( X509_EXTENSION , (¡), (v®)) ) 1371  #sk_X509_EXTENSION_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_EXTENSION , (¡), (v®)) ) 1372  #sk_X509_EXTENSION_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_EXTENSION , (¡), (v®)) ) 1373  #sk_X509_EXTENSION_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_EXTENSION , (¡), (v®)) ) 1374  #sk_X509_EXTENSION_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_EXTENSION , (¡), (i)) ) 1375  #sk_X509_EXTENSION_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_EXTENSION , (¡), (±r)) ) 1376  #sk_X509_EXTENSION_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_EXTENSION , (¡), (v®), (i)) ) 1377  #sk_X509_EXTENSION_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_EXTENSION , (¡), (cmp)) ) 1378  #sk_X509_EXTENSION_dup ( ¡ è `SKM_sk_dup ( X509_EXTENSION , st) ) 1379  #sk_X509_EXTENSION_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_EXTENSION , (¡), (ä“_func)) ) 1380  #sk_X509_EXTENSION_shiá ( ¡ è `SKM_sk_shiá ( X509_EXTENSION , (¡)) ) 1381  #sk_X509_EXTENSION_pÝ ( ¡ è `SKM_sk_pÝ ( X509_EXTENSION , (¡)) ) 1382  #sk_X509_EXTENSION_sÜt ( ¡ è `SKM_sk_sÜt ( X509_EXTENSION , (¡)) ) 1383  #sk_X509_EXTENSION_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_EXTENSION , (¡)) ) 1385  #sk_X509_INFO_Ãw ( ¡ è `SKM_sk_Ãw ( X509_INFO , (¡)) ) 1386  #sk_X509_INFO_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_INFO ) ) 1387  #sk_X509_INFO_ä“ ( ¡ è `SKM_sk_ä“ ( X509_INFO , (¡)) ) 1388  #sk_X509_INFO_num ( ¡ è `SKM_sk_num ( X509_INFO , (¡)) ) 1389  #sk_X509_INFO_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_INFO , (¡), (i)) ) 1390  #sk_X509_INFO_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_INFO , (¡), (i), (v®)) ) 1391  #sk_X509_INFO_z”o ( ¡ è `SKM_sk_z”o ( X509_INFO , (¡)) ) 1392  #sk_X509_INFO_push ( ¡ , v® è `SKM_sk_push ( X509_INFO , (¡), (v®)) ) 1393  #sk_X509_INFO_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_INFO , (¡), (v®)) ) 1394  #sk_X509_INFO_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_INFO , (¡), (v®)) ) 1395  #sk_X509_INFO_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_INFO , (¡), (v®)) ) 1396  #sk_X509_INFO_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_INFO , (¡), (i)) ) 1397  #sk_X509_INFO_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_INFO , (¡), (±r)) ) 1398  #sk_X509_INFO_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_INFO , (¡), (v®), (i)) ) 1399  #sk_X509_INFO_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_INFO , (¡), (cmp)) ) 1400  #sk_X509_INFO_dup ( ¡ è `SKM_sk_dup ( X509_INFO , st) ) 1401  #sk_X509_INFO_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_INFO , (¡), (ä“_func)) ) 1402  #sk_X509_INFO_shiá ( ¡ è `SKM_sk_shiá ( X509_INFO , (¡)) ) 1403  #sk_X509_INFO_pÝ ( ¡ è `SKM_sk_pÝ ( X509_INFO , (¡)) ) 1404  #sk_X509_INFO_sÜt ( ¡ è `SKM_sk_sÜt ( X509_INFO , (¡)) ) 1405  #sk_X509_INFO_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_INFO , (¡)) ) 1407  #sk_X509_LOOKUP_Ãw ( ¡ è `SKM_sk_Ãw ( X509_LOOKUP , (¡)) ) 1408  #sk_X509_LOOKUP_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_LOOKUP ) ) 1409  #sk_X509_LOOKUP_ä“ ( ¡ è `SKM_sk_ä“ ( X509_LOOKUP , (¡)) ) 1410  #sk_X509_LOOKUP_num ( ¡ è `SKM_sk_num ( X509_LOOKUP , (¡)) ) 1411  #sk_X509_LOOKUP_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_LOOKUP , (¡), (i)) ) 1412  #sk_X509_LOOKUP_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_LOOKUP , (¡), (i), (v®)) ) 1413  #sk_X509_LOOKUP_z”o ( ¡ è `SKM_sk_z”o ( X509_LOOKUP , (¡)) ) 1414  #sk_X509_LOOKUP_push ( ¡ , v® è `SKM_sk_push ( X509_LOOKUP , (¡), (v®)) ) 1415  #sk_X509_LOOKUP_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_LOOKUP , (¡), (v®)) ) 1416  #sk_X509_LOOKUP_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_LOOKUP , (¡), (v®)) ) 1417  #sk_X509_LOOKUP_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_LOOKUP , (¡), (v®)) ) 1418  #sk_X509_LOOKUP_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_LOOKUP , (¡), (i)) ) 1419  #sk_X509_LOOKUP_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_LOOKUP , (¡), (±r)) ) 1420  #sk_X509_LOOKUP_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_LOOKUP , (¡), (v®), (i)) ) 1421  #sk_X509_LOOKUP_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_LOOKUP , (¡), (cmp)) ) 1422  #sk_X509_LOOKUP_dup ( ¡ è `SKM_sk_dup ( X509_LOOKUP , st) ) 1423  #sk_X509_LOOKUP_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_LOOKUP , (¡), (ä“_func)) ) 1424  #sk_X509_LOOKUP_shiá ( ¡ è `SKM_sk_shiá ( X509_LOOKUP , (¡)) ) 1425  #sk_X509_LOOKUP_pÝ ( ¡ è `SKM_sk_pÝ ( X509_LOOKUP , (¡)) ) 1426  #sk_X509_LOOKUP_sÜt ( ¡ è `SKM_sk_sÜt ( X509_LOOKUP , (¡)) ) 1427  #sk_X509_LOOKUP_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_LOOKUP , (¡)) ) 1429  #sk_X509_NAME_Ãw ( ¡ è `SKM_sk_Ãw ( X509_NAME , (¡)) ) 1430  #sk_X509_NAME_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_NAME ) ) 1431  #sk_X509_NAME_ä“ ( ¡ è `SKM_sk_ä“ ( X509_NAME , (¡)) ) 1432  #sk_X509_NAME_num ( ¡ è `SKM_sk_num ( X509_NAME , (¡)) ) 1433  #sk_X509_NAME_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_NAME , (¡), (i)) ) 1434  #sk_X509_NAME_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_NAME , (¡), (i), (v®)) ) 1435  #sk_X509_NAME_z”o ( ¡ è `SKM_sk_z”o ( X509_NAME , (¡)) ) 1436  #sk_X509_NAME_push ( ¡ , v® è `SKM_sk_push ( X509_NAME , (¡), (v®)) ) 1437  #sk_X509_NAME_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_NAME , (¡), (v®)) ) 1438  #sk_X509_NAME_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_NAME , (¡), (v®)) ) 1439  #sk_X509_NAME_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_NAME , (¡), (v®)) ) 1440  #sk_X509_NAME_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_NAME , (¡), (i)) ) 1441  #sk_X509_NAME_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_NAME , (¡), (±r)) ) 1442  #sk_X509_NAME_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_NAME , (¡), (v®), (i)) ) 1443  #sk_X509_NAME_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_NAME , (¡), (cmp)) ) 1444  #sk_X509_NAME_dup ( ¡ è `SKM_sk_dup ( X509_NAME , st) ) 1445  #sk_X509_NAME_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_NAME , (¡), (ä“_func)) ) 1446  #sk_X509_NAME_shiá ( ¡ è `SKM_sk_shiá ( X509_NAME , (¡)) ) 1447  #sk_X509_NAME_pÝ ( ¡ è `SKM_sk_pÝ ( X509_NAME , (¡)) ) 1448  #sk_X509_NAME_sÜt ( ¡ è `SKM_sk_sÜt ( X509_NAME , (¡)) ) 1449  #sk_X509_NAME_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_NAME , (¡)) ) 1451  #sk_X509_NAME_ENTRY_Ãw ( ¡ è `SKM_sk_Ãw ( X509_NAME_ENTRY , (¡)) ) 1452  #sk_X509_NAME_ENTRY_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_NAME_ENTRY ) ) 1453  #sk_X509_NAME_ENTRY_ä“ ( ¡ è `SKM_sk_ä“ ( X509_NAME_ENTRY , (¡)) ) 1454  #sk_X509_NAME_ENTRY_num ( ¡ è `SKM_sk_num ( X509_NAME_ENTRY , (¡)) ) 1455  #sk_X509_NAME_ENTRY_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_NAME_ENTRY , (¡), (i)) ) 1456  #sk_X509_NAME_ENTRY_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_NAME_ENTRY , (¡), (i), (v®)) ) 1457  #sk_X509_NAME_ENTRY_z”o ( ¡ è `SKM_sk_z”o ( X509_NAME_ENTRY , (¡)) ) 1458  #sk_X509_NAME_ENTRY_push ( ¡ , v® è `SKM_sk_push ( X509_NAME_ENTRY , (¡), (v®)) ) 1459  #sk_X509_NAME_ENTRY_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_NAME_ENTRY , (¡), (v®)) ) 1460  #sk_X509_NAME_ENTRY_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_NAME_ENTRY , (¡), (v®)) ) 1461  #sk_X509_NAME_ENTRY_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_NAME_ENTRY , (¡), (v®)) ) 1462  #sk_X509_NAME_ENTRY_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_NAME_ENTRY , (¡), (i)) ) 1463  #sk_X509_NAME_ENTRY_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_NAME_ENTRY , (¡), (±r)) ) 1464  #sk_X509_NAME_ENTRY_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_NAME_ENTRY , (¡), (v®), (i)) ) 1465  #sk_X509_NAME_ENTRY_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_NAME_ENTRY , (¡), (cmp)) ) 1466  #sk_X509_NAME_ENTRY_dup ( ¡ è `SKM_sk_dup ( X509_NAME_ENTRY , st) ) 1467  #sk_X509_NAME_ENTRY_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_NAME_ENTRY , (¡), (ä“_func)) ) 1468  #sk_X509_NAME_ENTRY_shiá ( ¡ è `SKM_sk_shiá ( X509_NAME_ENTRY , (¡)) ) 1469  #sk_X509_NAME_ENTRY_pÝ ( ¡ è `SKM_sk_pÝ ( X509_NAME_ENTRY , (¡)) ) 1470  #sk_X509_NAME_ENTRY_sÜt ( ¡ è `SKM_sk_sÜt ( X509_NAME_ENTRY , (¡)) ) 1471  #sk_X509_NAME_ENTRY_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_NAME_ENTRY , (¡)) ) 1473  #sk_X509_OBJECT_Ãw ( ¡ è `SKM_sk_Ãw ( X509_OBJECT , (¡)) ) 1474  #sk_X509_OBJECT_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_OBJECT ) ) 1475  #sk_X509_OBJECT_ä“ ( ¡ è `SKM_sk_ä“ ( X509_OBJECT , (¡)) ) 1476  #sk_X509_OBJECT_num ( ¡ è `SKM_sk_num ( X509_OBJECT , (¡)) ) 1477  #sk_X509_OBJECT_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_OBJECT , (¡), (i)) ) 1478  #sk_X509_OBJECT_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_OBJECT , (¡), (i), (v®)) ) 1479  #sk_X509_OBJECT_z”o ( ¡ è `SKM_sk_z”o ( X509_OBJECT , (¡)) ) 1480  #sk_X509_OBJECT_push ( ¡ , v® è `SKM_sk_push ( X509_OBJECT , (¡), (v®)) ) 1481  #sk_X509_OBJECT_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_OBJECT , (¡), (v®)) ) 1482  #sk_X509_OBJECT_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_OBJECT , (¡), (v®)) ) 1483  #sk_X509_OBJECT_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_OBJECT , (¡), (v®)) ) 1484  #sk_X509_OBJECT_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_OBJECT , (¡), (i)) ) 1485  #sk_X509_OBJECT_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_OBJECT , (¡), (±r)) ) 1486  #sk_X509_OBJECT_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_OBJECT , (¡), (v®), (i)) ) 1487  #sk_X509_OBJECT_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_OBJECT , (¡), (cmp)) ) 1488  #sk_X509_OBJECT_dup ( ¡ è `SKM_sk_dup ( X509_OBJECT , st) ) 1489  #sk_X509_OBJECT_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_OBJECT , (¡), (ä“_func)) ) 1490  #sk_X509_OBJECT_shiá ( ¡ è `SKM_sk_shiá ( X509_OBJECT , (¡)) ) 1491  #sk_X509_OBJECT_pÝ ( ¡ è `SKM_sk_pÝ ( X509_OBJECT , (¡)) ) 1492  #sk_X509_OBJECT_sÜt ( ¡ è `SKM_sk_sÜt ( X509_OBJECT , (¡)) ) 1493  #sk_X509_OBJECT_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_OBJECT , (¡)) ) 1495  #sk_X509_POLICY_DATA_Ãw ( ¡ è `SKM_sk_Ãw ( X509_POLICY_DATA , (¡)) ) 1496  #sk_X509_POLICY_DATA_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_POLICY_DATA ) ) 1497  #sk_X509_POLICY_DATA_ä“ ( ¡ è `SKM_sk_ä“ ( X509_POLICY_DATA , (¡)) ) 1498  #sk_X509_POLICY_DATA_num ( ¡ è `SKM_sk_num ( X509_POLICY_DATA , (¡)) ) 1499  #sk_X509_POLICY_DATA_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_POLICY_DATA , (¡), (i)) ) 1500  #sk_X509_POLICY_DATA_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_POLICY_DATA , (¡), (i), (v®)) ) 1501  #sk_X509_POLICY_DATA_z”o ( ¡ è `SKM_sk_z”o ( X509_POLICY_DATA , (¡)) ) 1502  #sk_X509_POLICY_DATA_push ( ¡ , v® è `SKM_sk_push ( X509_POLICY_DATA , (¡), (v®)) ) 1503  #sk_X509_POLICY_DATA_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_POLICY_DATA , (¡), (v®)) ) 1504  #sk_X509_POLICY_DATA_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_POLICY_DATA , (¡), (v®)) ) 1505  #sk_X509_POLICY_DATA_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_POLICY_DATA , (¡), (v®)) ) 1506  #sk_X509_POLICY_DATA_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_POLICY_DATA , (¡), (i)) ) 1507  #sk_X509_POLICY_DATA_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_POLICY_DATA , (¡), (±r)) ) 1508  #sk_X509_POLICY_DATA_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_POLICY_DATA , (¡), (v®), (i)) ) 1509  #sk_X509_POLICY_DATA_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_POLICY_DATA , (¡), (cmp)) ) 1510  #sk_X509_POLICY_DATA_dup ( ¡ è `SKM_sk_dup ( X509_POLICY_DATA , st) ) 1511  #sk_X509_POLICY_DATA_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_POLICY_DATA , (¡), (ä“_func)) ) 1512  #sk_X509_POLICY_DATA_shiá ( ¡ è `SKM_sk_shiá ( X509_POLICY_DATA , (¡)) ) 1513  #sk_X509_POLICY_DATA_pÝ ( ¡ è `SKM_sk_pÝ ( X509_POLICY_DATA , (¡)) ) 1514  #sk_X509_POLICY_DATA_sÜt ( ¡ è `SKM_sk_sÜt ( X509_POLICY_DATA , (¡)) ) 1515  #sk_X509_POLICY_DATA_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_POLICY_DATA , (¡)) ) 1517  #sk_X509_POLICY_NODE_Ãw ( ¡ è `SKM_sk_Ãw ( X509_POLICY_NODE , (¡)) ) 1518  #sk_X509_POLICY_NODE_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_POLICY_NODE ) ) 1519  #sk_X509_POLICY_NODE_ä“ ( ¡ è `SKM_sk_ä“ ( X509_POLICY_NODE , (¡)) ) 1520  #sk_X509_POLICY_NODE_num ( ¡ è `SKM_sk_num ( X509_POLICY_NODE , (¡)) ) 1521  #sk_X509_POLICY_NODE_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_POLICY_NODE , (¡), (i)) ) 1522  #sk_X509_POLICY_NODE_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_POLICY_NODE , (¡), (i), (v®)) ) 1523  #sk_X509_POLICY_NODE_z”o ( ¡ è `SKM_sk_z”o ( X509_POLICY_NODE , (¡)) ) 1524  #sk_X509_POLICY_NODE_push ( ¡ , v® è `SKM_sk_push ( X509_POLICY_NODE , (¡), (v®)) ) 1525  #sk_X509_POLICY_NODE_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_POLICY_NODE , (¡), (v®)) ) 1526  #sk_X509_POLICY_NODE_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_POLICY_NODE , (¡), (v®)) ) 1527  #sk_X509_POLICY_NODE_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_POLICY_NODE , (¡), (v®)) ) 1528  #sk_X509_POLICY_NODE_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_POLICY_NODE , (¡), (i)) ) 1529  #sk_X509_POLICY_NODE_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_POLICY_NODE , (¡), (±r)) ) 1530  #sk_X509_POLICY_NODE_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_POLICY_NODE , (¡), (v®), (i)) ) 1531  #sk_X509_POLICY_NODE_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_POLICY_NODE , (¡), (cmp)) ) 1532  #sk_X509_POLICY_NODE_dup ( ¡ è `SKM_sk_dup ( X509_POLICY_NODE , st) ) 1533  #sk_X509_POLICY_NODE_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_POLICY_NODE , (¡), (ä“_func)) ) 1534  #sk_X509_POLICY_NODE_shiá ( ¡ è `SKM_sk_shiá ( X509_POLICY_NODE , (¡)) ) 1535  #sk_X509_POLICY_NODE_pÝ ( ¡ è `SKM_sk_pÝ ( X509_POLICY_NODE , (¡)) ) 1536  #sk_X509_POLICY_NODE_sÜt ( ¡ è `SKM_sk_sÜt ( X509_POLICY_NODE , (¡)) ) 1537  #sk_X509_POLICY_NODE_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_POLICY_NODE , (¡)) ) 1539  #sk_X509_POLICY_REF_Ãw ( ¡ è `SKM_sk_Ãw ( X509_POLICY_REF , (¡)) ) 1540  #sk_X509_POLICY_REF_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_POLICY_REF ) ) 1541  #sk_X509_POLICY_REF_ä“ ( ¡ è `SKM_sk_ä“ ( X509_POLICY_REF , (¡)) ) 1542  #sk_X509_POLICY_REF_num ( ¡ è `SKM_sk_num ( X509_POLICY_REF , (¡)) ) 1543  #sk_X509_POLICY_REF_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_POLICY_REF , (¡), (i)) ) 1544  #sk_X509_POLICY_REF_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_POLICY_REF , (¡), (i), (v®)) ) 1545  #sk_X509_POLICY_REF_z”o ( ¡ è `SKM_sk_z”o ( X509_POLICY_REF , (¡)) ) 1546  #sk_X509_POLICY_REF_push ( ¡ , v® è `SKM_sk_push ( X509_POLICY_REF , (¡), (v®)) ) 1547  #sk_X509_POLICY_REF_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_POLICY_REF , (¡), (v®)) ) 1548  #sk_X509_POLICY_REF_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_POLICY_REF , (¡), (v®)) ) 1549  #sk_X509_POLICY_REF_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_POLICY_REF , (¡), (v®)) ) 1550  #sk_X509_POLICY_REF_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_POLICY_REF , (¡), (i)) ) 1551  #sk_X509_POLICY_REF_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_POLICY_REF , (¡), (±r)) ) 1552  #sk_X509_POLICY_REF_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_POLICY_REF , (¡), (v®), (i)) ) 1553  #sk_X509_POLICY_REF_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_POLICY_REF , (¡), (cmp)) ) 1554  #sk_X509_POLICY_REF_dup ( ¡ è `SKM_sk_dup ( X509_POLICY_REF , st) ) 1555  #sk_X509_POLICY_REF_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_POLICY_REF , (¡), (ä“_func)) ) 1556  #sk_X509_POLICY_REF_shiá ( ¡ è `SKM_sk_shiá ( X509_POLICY_REF , (¡)) ) 1557  #sk_X509_POLICY_REF_pÝ ( ¡ è `SKM_sk_pÝ ( X509_POLICY_REF , (¡)) ) 1558  #sk_X509_POLICY_REF_sÜt ( ¡ è `SKM_sk_sÜt ( X509_POLICY_REF , (¡)) ) 1559  #sk_X509_POLICY_REF_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_POLICY_REF , (¡)) ) 1561  #sk_X509_PURPOSE_Ãw ( ¡ è `SKM_sk_Ãw ( X509_PURPOSE , (¡)) ) 1562  #sk_X509_PURPOSE_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_PURPOSE ) ) 1563  #sk_X509_PURPOSE_ä“ ( ¡ è `SKM_sk_ä“ ( X509_PURPOSE , (¡)) ) 1564  #sk_X509_PURPOSE_num ( ¡ è `SKM_sk_num ( X509_PURPOSE , (¡)) ) 1565  #sk_X509_PURPOSE_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_PURPOSE , (¡), (i)) ) 1566  #sk_X509_PURPOSE_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_PURPOSE , (¡), (i), (v®)) ) 1567  #sk_X509_PURPOSE_z”o ( ¡ è `SKM_sk_z”o ( X509_PURPOSE , (¡)) ) 1568  #sk_X509_PURPOSE_push ( ¡ , v® è `SKM_sk_push ( X509_PURPOSE , (¡), (v®)) ) 1569  #sk_X509_PURPOSE_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_PURPOSE , (¡), (v®)) ) 1570  #sk_X509_PURPOSE_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_PURPOSE , (¡), (v®)) ) 1571  #sk_X509_PURPOSE_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_PURPOSE , (¡), (v®)) ) 1572  #sk_X509_PURPOSE_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_PURPOSE , (¡), (i)) ) 1573  #sk_X509_PURPOSE_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_PURPOSE , (¡), (±r)) ) 1574  #sk_X509_PURPOSE_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_PURPOSE , (¡), (v®), (i)) ) 1575  #sk_X509_PURPOSE_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_PURPOSE , (¡), (cmp)) ) 1576  #sk_X509_PURPOSE_dup ( ¡ è `SKM_sk_dup ( X509_PURPOSE , st) ) 1577  #sk_X509_PURPOSE_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_PURPOSE , (¡), (ä“_func)) ) 1578  #sk_X509_PURPOSE_shiá ( ¡ è `SKM_sk_shiá ( X509_PURPOSE , (¡)) ) 1579  #sk_X509_PURPOSE_pÝ ( ¡ è `SKM_sk_pÝ ( X509_PURPOSE , (¡)) ) 1580  #sk_X509_PURPOSE_sÜt ( ¡ è `SKM_sk_sÜt ( X509_PURPOSE , (¡)) ) 1581  #sk_X509_PURPOSE_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_PURPOSE , (¡)) ) 1583  #sk_X509_REVOKED_Ãw ( ¡ è `SKM_sk_Ãw ( X509_REVOKED , (¡)) ) 1584  #sk_X509_REVOKED_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_REVOKED ) ) 1585  #sk_X509_REVOKED_ä“ ( ¡ è `SKM_sk_ä“ ( X509_REVOKED , (¡)) ) 1586  #sk_X509_REVOKED_num ( ¡ è `SKM_sk_num ( X509_REVOKED , (¡)) ) 1587  #sk_X509_REVOKED_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_REVOKED , (¡), (i)) ) 1588  #sk_X509_REVOKED_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_REVOKED , (¡), (i), (v®)) ) 1589  #sk_X509_REVOKED_z”o ( ¡ è `SKM_sk_z”o ( X509_REVOKED , (¡)) ) 1590  #sk_X509_REVOKED_push ( ¡ , v® è `SKM_sk_push ( X509_REVOKED , (¡), (v®)) ) 1591  #sk_X509_REVOKED_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_REVOKED , (¡), (v®)) ) 1592  #sk_X509_REVOKED_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_REVOKED , (¡), (v®)) ) 1593  #sk_X509_REVOKED_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_REVOKED , (¡), (v®)) ) 1594  #sk_X509_REVOKED_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_REVOKED , (¡), (i)) ) 1595  #sk_X509_REVOKED_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_REVOKED , (¡), (±r)) ) 1596  #sk_X509_REVOKED_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_REVOKED , (¡), (v®), (i)) ) 1597  #sk_X509_REVOKED_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_REVOKED , (¡), (cmp)) ) 1598  #sk_X509_REVOKED_dup ( ¡ è `SKM_sk_dup ( X509_REVOKED , st) ) 1599  #sk_X509_REVOKED_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_REVOKED , (¡), (ä“_func)) ) 1600  #sk_X509_REVOKED_shiá ( ¡ è `SKM_sk_shiá ( X509_REVOKED , (¡)) ) 1601  #sk_X509_REVOKED_pÝ ( ¡ è `SKM_sk_pÝ ( X509_REVOKED , (¡)) ) 1602  #sk_X509_REVOKED_sÜt ( ¡ è `SKM_sk_sÜt ( X509_REVOKED , (¡)) ) 1603  #sk_X509_REVOKED_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_REVOKED , (¡)) ) 1605  #sk_X509_TRUST_Ãw ( ¡ è `SKM_sk_Ãw ( X509_TRUST , (¡)) ) 1606  #sk_X509_TRUST_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_TRUST ) ) 1607  #sk_X509_TRUST_ä“ ( ¡ è `SKM_sk_ä“ ( X509_TRUST , (¡)) ) 1608  #sk_X509_TRUST_num ( ¡ è `SKM_sk_num ( X509_TRUST , (¡)) ) 1609  #sk_X509_TRUST_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_TRUST , (¡), (i)) ) 1610  #sk_X509_TRUST_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_TRUST , (¡), (i), (v®)) ) 1611  #sk_X509_TRUST_z”o ( ¡ è `SKM_sk_z”o ( X509_TRUST , (¡)) ) 1612  #sk_X509_TRUST_push ( ¡ , v® è `SKM_sk_push ( X509_TRUST , (¡), (v®)) ) 1613  #sk_X509_TRUST_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_TRUST , (¡), (v®)) ) 1614  #sk_X509_TRUST_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_TRUST , (¡), (v®)) ) 1615  #sk_X509_TRUST_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_TRUST , (¡), (v®)) ) 1616  #sk_X509_TRUST_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_TRUST , (¡), (i)) ) 1617  #sk_X509_TRUST_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_TRUST , (¡), (±r)) ) 1618  #sk_X509_TRUST_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_TRUST , (¡), (v®), (i)) ) 1619  #sk_X509_TRUST_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_TRUST , (¡), (cmp)) ) 1620  #sk_X509_TRUST_dup ( ¡ è `SKM_sk_dup ( X509_TRUST , st) ) 1621  #sk_X509_TRUST_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_TRUST , (¡), (ä“_func)) ) 1622  #sk_X509_TRUST_shiá ( ¡ è `SKM_sk_shiá ( X509_TRUST , (¡)) ) 1623  #sk_X509_TRUST_pÝ ( ¡ è `SKM_sk_pÝ ( X509_TRUST , (¡)) ) 1624  #sk_X509_TRUST_sÜt ( ¡ è `SKM_sk_sÜt ( X509_TRUST , (¡)) ) 1625  #sk_X509_TRUST_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_TRUST , (¡)) ) 1627  #sk_X509_VERIFY_PARAM_Ãw ( ¡ è `SKM_sk_Ãw ( X509_VERIFY_PARAM , (¡)) ) 1628  #sk_X509_VERIFY_PARAM_Ãw_nuÎ (è `SKM_sk_Ãw_nuÎ ( X509_VERIFY_PARAM ) ) 1629  #sk_X509_VERIFY_PARAM_ä“ ( ¡ è `SKM_sk_ä“ ( X509_VERIFY_PARAM , (¡)) ) 1630  #sk_X509_VERIFY_PARAM_num ( ¡ è `SKM_sk_num ( X509_VERIFY_PARAM , (¡)) ) 1631  #sk_X509_VERIFY_PARAM_v®ue ( ¡ , i è `SKM_sk_v®ue ( X509_VERIFY_PARAM , (¡), (i)) ) 1632  #sk_X509_VERIFY_PARAM_£t ( ¡ , i , v® è `SKM_sk_£t ( X509_VERIFY_PARAM , (¡), (i), (v®)) ) 1633  #sk_X509_VERIFY_PARAM_z”o ( ¡ è `SKM_sk_z”o ( X509_VERIFY_PARAM , (¡)) ) 1634  #sk_X509_VERIFY_PARAM_push ( ¡ , v® è `SKM_sk_push ( X509_VERIFY_PARAM , (¡), (v®)) ) 1635  #sk_X509_VERIFY_PARAM_unshiá ( ¡ , v® è `SKM_sk_unshiá ( X509_VERIFY_PARAM , (¡), (v®)) ) 1636  #sk_X509_VERIFY_PARAM_fšd ( ¡ , v® è `SKM_sk_fšd ( X509_VERIFY_PARAM , (¡), (v®)) ) 1637  #sk_X509_VERIFY_PARAM_fšd_ex ( ¡ , v® è `SKM_sk_fšd_ex ( X509_VERIFY_PARAM , (¡), (v®)) ) 1638  #sk_X509_VERIFY_PARAM_d–‘e ( ¡ , i è `SKM_sk_d–‘e ( X509_VERIFY_PARAM , (¡), (i)) ) 1639  #sk_X509_VERIFY_PARAM_d–‘e_±r ( ¡ , ±r è `SKM_sk_d–‘e_±r ( X509_VERIFY_PARAM , (¡), (±r)) ) 1640  #sk_X509_VERIFY_PARAM_š£¹ ( ¡ , v® , i è `SKM_sk_š£¹ ( X509_VERIFY_PARAM , (¡), (v®), (i)) ) 1641  #sk_X509_VERIFY_PARAM_£t_cmp_func ( ¡ , cmp è `SKM_sk_£t_cmp_func ( X509_VERIFY_PARAM , (¡), (cmp)) ) 1642  #sk_X509_VERIFY_PARAM_dup ( ¡ è `SKM_sk_dup ( X509_VERIFY_PARAM , st) ) 1643  #sk_X509_VERIFY_PARAM_pÝ_ä“ ( ¡ , ä“_func è `SKM_sk_pÝ_ä“ ( X509_VERIFY_PARAM , (¡), (ä“_func)) ) 1644  #sk_X509_VERIFY_PARAM_shiá ( ¡ è `SKM_sk_shiá ( X509_VERIFY_PARAM , (¡)) ) 1645  #sk_X509_VERIFY_PARAM_pÝ ( ¡ è `SKM_sk_pÝ ( X509_VERIFY_PARAM , (¡)) ) 1646  #sk_X509_VERIFY_PARAM_sÜt ( ¡ è `SKM_sk_sÜt ( X509_VERIFY_PARAM , (¡)) ) 1647  #sk_X509_VERIFY_PARAM_is_sÜ‹d ( ¡ è `SKM_sk_is_sÜ‹d ( X509_VERIFY_PARAM , (¡)) ) 1649  #d2i_ASN1_SET_OF_ACCESS_DESCRIPTION ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1650 `SKM_ASN1_SET_OF_d2i ( ACCESS_DESCRIPTION , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1651  #i2d_ASN1_SET_OF_ACCESS_DESCRIPTION ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1652 `SKM_ASN1_SET_OF_i2d ( ACCESS_DESCRIPTION , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1653  #ASN1_£q_·ck_ACCESS_DESCRIPTION ( ¡ , i2d_func , buf , Ën ) \ 1654 `SKM_ASN1_£q_·ck ( ACCESS_DESCRIPTION , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1655  #ASN1_£q_uÅack_ACCESS_DESCRIPTION ( buf , Ën , d2i_func , ä“_func ) \ 1656 `SKM_ASN1_£q_uÅack ( ACCESS_DESCRIPTION , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1658  #d2i_ASN1_SET_OF_ASN1_INTEGER ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1659 `SKM_ASN1_SET_OF_d2i ( ASN1_INTEGER , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1660  #i2d_ASN1_SET_OF_ASN1_INTEGER ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1661 `SKM_ASN1_SET_OF_i2d ( ASN1_INTEGER , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1662  #ASN1_£q_·ck_ASN1_INTEGER ( ¡ , i2d_func , buf , Ën ) \ 1663 `SKM_ASN1_£q_·ck ( ASN1_INTEGER , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1664  #ASN1_£q_uÅack_ASN1_INTEGER ( buf , Ën , d2i_func , ä“_func ) \ 1665 `SKM_ASN1_£q_uÅack ( ASN1_INTEGER , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1667  #d2i_ASN1_SET_OF_ASN1_OBJECT ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1668 `SKM_ASN1_SET_OF_d2i ( ASN1_OBJECT , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1669  #i2d_ASN1_SET_OF_ASN1_OBJECT ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1670 `SKM_ASN1_SET_OF_i2d ( ASN1_OBJECT , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1671  #ASN1_£q_·ck_ASN1_OBJECT ( ¡ , i2d_func , buf , Ën ) \ 1672 `SKM_ASN1_£q_·ck ( ASN1_OBJECT , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1673  #ASN1_£q_uÅack_ASN1_OBJECT ( buf , Ën , d2i_func , ä“_func ) \ 1674 `SKM_ASN1_£q_uÅack ( ASN1_OBJECT , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1676  #d2i_ASN1_SET_OF_ASN1_TYPE ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1677 `SKM_ASN1_SET_OF_d2i ( ASN1_TYPE , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1678  #i2d_ASN1_SET_OF_ASN1_TYPE ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1679 `SKM_ASN1_SET_OF_i2d ( ASN1_TYPE , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1680  #ASN1_£q_·ck_ASN1_TYPE ( ¡ , i2d_func , buf , Ën ) \ 1681 `SKM_ASN1_£q_·ck ( ASN1_TYPE , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1682  #ASN1_£q_uÅack_ASN1_TYPE ( buf , Ën , d2i_func , ä“_func ) \ 1683 `SKM_ASN1_£q_uÅack ( ASN1_TYPE , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1685  #d2i_ASN1_SET_OF_DIST_POINT ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1686 `SKM_ASN1_SET_OF_d2i ( DIST_POINT , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1687  #i2d_ASN1_SET_OF_DIST_POINT ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1688 `SKM_ASN1_SET_OF_i2d ( DIST_POINT , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1689  #ASN1_£q_·ck_DIST_POINT ( ¡ , i2d_func , buf , Ën ) \ 1690 `SKM_ASN1_£q_·ck ( DIST_POINT , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1691  #ASN1_£q_uÅack_DIST_POINT ( buf , Ën , d2i_func , ä“_func ) \ 1692 `SKM_ASN1_£q_uÅack ( DIST_POINT , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1694  #d2i_ASN1_SET_OF_GENERAL_NAME ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1695 `SKM_ASN1_SET_OF_d2i ( GENERAL_NAME , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1696  #i2d_ASN1_SET_OF_GENERAL_NAME ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1697 `SKM_ASN1_SET_OF_i2d ( GENERAL_NAME , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1698  #ASN1_£q_·ck_GENERAL_NAME ( ¡ , i2d_func , buf , Ën ) \ 1699 `SKM_ASN1_£q_·ck ( GENERAL_NAME , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1700  #ASN1_£q_uÅack_GENERAL_NAME ( buf , Ën , d2i_func , ä“_func ) \ 1701 `SKM_ASN1_£q_uÅack ( GENERAL_NAME , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1703  #d2i_ASN1_SET_OF_OCSP_ONEREQ ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1704 `SKM_ASN1_SET_OF_d2i ( OCSP_ONEREQ , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1705  #i2d_ASN1_SET_OF_OCSP_ONEREQ ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1706 `SKM_ASN1_SET_OF_i2d ( OCSP_ONEREQ , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1707  #ASN1_£q_·ck_OCSP_ONEREQ ( ¡ , i2d_func , buf , Ën ) \ 1708 `SKM_ASN1_£q_·ck ( OCSP_ONEREQ , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1709  #ASN1_£q_uÅack_OCSP_ONEREQ ( buf , Ën , d2i_func , ä“_func ) \ 1710 `SKM_ASN1_£q_uÅack ( OCSP_ONEREQ , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1712  #d2i_ASN1_SET_OF_OCSP_SINGLERESP ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1713 `SKM_ASN1_SET_OF_d2i ( OCSP_SINGLERESP , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1714  #i2d_ASN1_SET_OF_OCSP_SINGLERESP ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1715 `SKM_ASN1_SET_OF_i2d ( OCSP_SINGLERESP , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1716  #ASN1_£q_·ck_OCSP_SINGLERESP ( ¡ , i2d_func , buf , Ën ) \ 1717 `SKM_ASN1_£q_·ck ( OCSP_SINGLERESP , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1718  #ASN1_£q_uÅack_OCSP_SINGLERESP ( buf , Ën , d2i_func , ä“_func ) \ 1719 `SKM_ASN1_£q_uÅack ( OCSP_SINGLERESP , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1721  #d2i_ASN1_SET_OF_PKCS12_SAFEBAG ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1722 `SKM_ASN1_SET_OF_d2i ( PKCS12_SAFEBAG , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1723  #i2d_ASN1_SET_OF_PKCS12_SAFEBAG ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1724 `SKM_ASN1_SET_OF_i2d ( PKCS12_SAFEBAG , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1725  #ASN1_£q_·ck_PKCS12_SAFEBAG ( ¡ , i2d_func , buf , Ën ) \ 1726 `SKM_ASN1_£q_·ck ( PKCS12_SAFEBAG , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1727  #ASN1_£q_uÅack_PKCS12_SAFEBAG ( buf , Ën , d2i_func , ä“_func ) \ 1728 `SKM_ASN1_£q_uÅack ( PKCS12_SAFEBAG , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1730  #d2i_ASN1_SET_OF_PKCS7 ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1731 `SKM_ASN1_SET_OF_d2i ( PKCS7 , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1732  #i2d_ASN1_SET_OF_PKCS7 ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1733 `SKM_ASN1_SET_OF_i2d ( PKCS7 , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1734  #ASN1_£q_·ck_PKCS7 ( ¡ , i2d_func , buf , Ën ) \ 1735 `SKM_ASN1_£q_·ck ( PKCS7 , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1736  #ASN1_£q_uÅack_PKCS7 ( buf , Ën , d2i_func , ä“_func ) \ 1737 `SKM_ASN1_£q_uÅack ( PKCS7 , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1739  #d2i_ASN1_SET_OF_PKCS7_RECIP_INFO ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1740 `SKM_ASN1_SET_OF_d2i ( PKCS7_RECIP_INFO , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1741  #i2d_ASN1_SET_OF_PKCS7_RECIP_INFO ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1742 `SKM_ASN1_SET_OF_i2d ( PKCS7_RECIP_INFO , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1743  #ASN1_£q_·ck_PKCS7_RECIP_INFO ( ¡ , i2d_func , buf , Ën ) \ 1744 `SKM_ASN1_£q_·ck ( PKCS7_RECIP_INFO , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1745  #ASN1_£q_uÅack_PKCS7_RECIP_INFO ( buf , Ën , d2i_func , ä“_func ) \ 1746 `SKM_ASN1_£q_uÅack ( PKCS7_RECIP_INFO , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1748  #d2i_ASN1_SET_OF_PKCS7_SIGNER_INFO ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1749 `SKM_ASN1_SET_OF_d2i ( PKCS7_SIGNER_INFO , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1750  #i2d_ASN1_SET_OF_PKCS7_SIGNER_INFO ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1751 `SKM_ASN1_SET_OF_i2d ( PKCS7_SIGNER_INFO , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1752  #ASN1_£q_·ck_PKCS7_SIGNER_INFO ( ¡ , i2d_func , buf , Ën ) \ 1753 `SKM_ASN1_£q_·ck ( PKCS7_SIGNER_INFO , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1754  #ASN1_£q_uÅack_PKCS7_SIGNER_INFO ( buf , Ën , d2i_func , ä“_func ) \ 1755 `SKM_ASN1_£q_uÅack ( PKCS7_SIGNER_INFO , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1757  #d2i_ASN1_SET_OF_POLICYINFO ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1758 `SKM_ASN1_SET_OF_d2i ( POLICYINFO , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1759  #i2d_ASN1_SET_OF_POLICYINFO ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1760 `SKM_ASN1_SET_OF_i2d ( POLICYINFO , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1761  #ASN1_£q_·ck_POLICYINFO ( ¡ , i2d_func , buf , Ën ) \ 1762 `SKM_ASN1_£q_·ck ( POLICYINFO , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1763  #ASN1_£q_uÅack_POLICYINFO ( buf , Ën , d2i_func , ä“_func ) \ 1764 `SKM_ASN1_£q_uÅack ( POLICYINFO , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1766  #d2i_ASN1_SET_OF_POLICYQUALINFO ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1767 `SKM_ASN1_SET_OF_d2i ( POLICYQUALINFO , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1768  #i2d_ASN1_SET_OF_POLICYQUALINFO ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1769 `SKM_ASN1_SET_OF_i2d ( POLICYQUALINFO , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1770  #ASN1_£q_·ck_POLICYQUALINFO ( ¡ , i2d_func , buf , Ën ) \ 1771 `SKM_ASN1_£q_·ck ( POLICYQUALINFO , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1772  #ASN1_£q_uÅack_POLICYQUALINFO ( buf , Ën , d2i_func , ä“_func ) \ 1773 `SKM_ASN1_£q_uÅack ( POLICYQUALINFO , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1775  #d2i_ASN1_SET_OF_SXNETID ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1776 `SKM_ASN1_SET_OF_d2i ( SXNETID , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1777  #i2d_ASN1_SET_OF_SXNETID ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1778 `SKM_ASN1_SET_OF_i2d ( SXNETID , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1779  #ASN1_£q_·ck_SXNETID ( ¡ , i2d_func , buf , Ën ) \ 1780 `SKM_ASN1_£q_·ck ( SXNETID , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1781  #ASN1_£q_uÅack_SXNETID ( buf , Ën , d2i_func , ä“_func ) \ 1782 `SKM_ASN1_£q_uÅack ( SXNETID , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1784  #d2i_ASN1_SET_OF_X509 ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1785 `SKM_ASN1_SET_OF_d2i ( X509 , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1786  #i2d_ASN1_SET_OF_X509 ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1787 `SKM_ASN1_SET_OF_i2d ( X509 , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1788  #ASN1_£q_·ck_X509 ( ¡ , i2d_func , buf , Ën ) \ 1789 `SKM_ASN1_£q_·ck ( X509 , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1790  #ASN1_£q_uÅack_X509 ( buf , Ën , d2i_func , ä“_func ) \ 1791 `SKM_ASN1_£q_uÅack ( X509 , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1793  #d2i_ASN1_SET_OF_X509_ALGOR ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1794 `SKM_ASN1_SET_OF_d2i ( X509_ALGOR , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1795  #i2d_ASN1_SET_OF_X509_ALGOR ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1796 `SKM_ASN1_SET_OF_i2d ( X509_ALGOR , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1797  #ASN1_£q_·ck_X509_ALGOR ( ¡ , i2d_func , buf , Ën ) \ 1798 `SKM_ASN1_£q_·ck ( X509_ALGOR , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1799  #ASN1_£q_uÅack_X509_ALGOR ( buf , Ën , d2i_func , ä“_func ) \ 1800 `SKM_ASN1_£q_uÅack ( X509_ALGOR , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1802  #d2i_ASN1_SET_OF_X509_ATTRIBUTE ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1803 `SKM_ASN1_SET_OF_d2i ( X509_ATTRIBUTE , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1804  #i2d_ASN1_SET_OF_X509_ATTRIBUTE ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1805 `SKM_ASN1_SET_OF_i2d ( X509_ATTRIBUTE , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1806  #ASN1_£q_·ck_X509_ATTRIBUTE ( ¡ , i2d_func , buf , Ën ) \ 1807 `SKM_ASN1_£q_·ck ( X509_ATTRIBUTE , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1808  #ASN1_£q_uÅack_X509_ATTRIBUTE ( buf , Ën , d2i_func , ä“_func ) \ 1809 `SKM_ASN1_£q_uÅack ( X509_ATTRIBUTE , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1811  #d2i_ASN1_SET_OF_X509_CRL ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1812 `SKM_ASN1_SET_OF_d2i ( X509_CRL , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1813  #i2d_ASN1_SET_OF_X509_CRL ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1814 `SKM_ASN1_SET_OF_i2d ( X509_CRL , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1815  #ASN1_£q_·ck_X509_CRL ( ¡ , i2d_func , buf , Ën ) \ 1816 `SKM_ASN1_£q_·ck ( X509_CRL , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1817  #ASN1_£q_uÅack_X509_CRL ( buf , Ën , d2i_func , ä“_func ) \ 1818 `SKM_ASN1_£q_uÅack ( X509_CRL , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1820  #d2i_ASN1_SET_OF_X509_EXTENSION ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1821 `SKM_ASN1_SET_OF_d2i ( X509_EXTENSION , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1822  #i2d_ASN1_SET_OF_X509_EXTENSION ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1823 `SKM_ASN1_SET_OF_i2d ( X509_EXTENSION , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1824  #ASN1_£q_·ck_X509_EXTENSION ( ¡ , i2d_func , buf , Ën ) \ 1825 `SKM_ASN1_£q_·ck ( X509_EXTENSION , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1826  #ASN1_£q_uÅack_X509_EXTENSION ( buf , Ën , d2i_func , ä“_func ) \ 1827 `SKM_ASN1_£q_uÅack ( X509_EXTENSION , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1829  #d2i_ASN1_SET_OF_X509_NAME_ENTRY ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1830 `SKM_ASN1_SET_OF_d2i ( X509_NAME_ENTRY , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1831  #i2d_ASN1_SET_OF_X509_NAME_ENTRY ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1832 `SKM_ASN1_SET_OF_i2d ( X509_NAME_ENTRY , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1833  #ASN1_£q_·ck_X509_NAME_ENTRY ( ¡ , i2d_func , buf , Ën ) \ 1834 `SKM_ASN1_£q_·ck ( X509_NAME_ENTRY , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1835  #ASN1_£q_uÅack_X509_NAME_ENTRY ( buf , Ën , d2i_func , ä“_func ) \ 1836 `SKM_ASN1_£q_uÅack ( X509_NAME_ENTRY , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1838  #d2i_ASN1_SET_OF_X509_REVOKED ( ¡ , µ , Ëngth , d2i_func , ä“_func , ex_g , ex_þass ) \ 1839 `SKM_ASN1_SET_OF_d2i ( X509_REVOKED , ( ¡ ), ( µ ), ( Ëngth ), ( d2i_func ), ( ä“_func ), ( ex_g ), ( ex_þass )) ) 1840  #i2d_ASN1_SET_OF_X509_REVOKED ( ¡ , µ , i2d_func , ex_g , ex_þass , is_£t ) \ 1841 `SKM_ASN1_SET_OF_i2d ( X509_REVOKED , ( ¡ ), ( µ ), ( i2d_func ), ( ex_g ), ( ex_þass ), ( is_£t )) ) 1842  #ASN1_£q_·ck_X509_REVOKED ( ¡ , i2d_func , buf , Ën ) \ 1843 `SKM_ASN1_£q_·ck ( X509_REVOKED , ( ¡ ), ( i2d_func ), ( buf ), ( Ën )) ) 1844  #ASN1_£q_uÅack_X509_REVOKED ( buf , Ën , d2i_func , ä“_func ) \ 1845 `SKM_ASN1_£q_uÅack ( X509_REVOKED , ( buf ), ( Ën ), ( d2i_func ), ( ä“_func )) ) 1847  #PKCS12_deüy±_d2i_PKCS12_SAFEBAG ( ®gÜ , d2i_func , ä“_func , ·ss , ·s¦’ , où , £q ) \ 1848 `SKM_PKCS12_deüy±_d2i ( PKCS12_SAFEBAG , ( ®gÜ ), ( d2i_func ), ( ä“_func ), ( ·ss ), ( ·s¦’ ), ( où ), ( £q )) ) 1850  #PKCS12_deüy±_d2i_PKCS7 ( ®gÜ , d2i_func , ä“_func , ·ss , ·s¦’ , où , £q ) \ 1851 `SKM_PKCS12_deüy±_d2i ( PKCS7 , ( ®gÜ ), ( d2i_func ), ( ä“_func ), ( ·ss ), ( ·s¦’ ), ( où ), ( £q )) ) @/usr/include/openssl/ssl2.h 59 #iâdeà HEADER_SSL2_H 60  #HEADER_SSL2_H ) 62 #ifdeà __ýlu¥lus 67  #SSL2_VERSION 0x0002 ) 68  #SSL2_VERSION_MAJOR 0x00 ) 69  #SSL2_VERSION_MINOR 0x02 ) 74  #SSL2_MT_ERROR 0 ) 75  #SSL2_MT_CLIENT_HELLO 1 ) 76  #SSL2_MT_CLIENT_MASTER_KEY 2 ) 77  #SSL2_MT_CLIENT_FINISHED 3 ) 78  #SSL2_MT_SERVER_HELLO 4 ) 79  #SSL2_MT_SERVER_VERIFY 5 ) 80  #SSL2_MT_SERVER_FINISHED 6 ) 81  #SSL2_MT_REQUEST_CERTIFICATE 7 ) 82  #SSL2_MT_CLIENT_CERTIFICATE 8 ) 85  #SSL2_PE_UNDEFINED_ERROR 0x0000 ) 86  #SSL2_PE_NO_CIPHER 0x0001 ) 87  #SSL2_PE_NO_CERTIFICATE 0x0002 ) 88  #SSL2_PE_BAD_CERTIFICATE 0x0004 ) 89  #SSL2_PE_UNSUPPORTED_CERTIFICATE_TYPE 0x0006 ) 92  #SSL2_CK_NULL_WITH_MD5 0x02000000 ) 93  #SSL2_CK_RC4_128_WITH_MD5 0x02010080 ) 94  #SSL2_CK_RC4_128_EXPORT40_WITH_MD5 0x02020080 ) 95  #SSL2_CK_RC2_128_CBC_WITH_MD5 0x02030080 ) 96  #SSL2_CK_RC2_128_CBC_EXPORT40_WITH_MD5 0x02040080 ) 97  #SSL2_CK_IDEA_128_CBC_WITH_MD5 0x02050080 ) 98  #SSL2_CK_DES_64_CBC_WITH_MD5 0x02060040 ) 99  #SSL2_CK_DES_64_CBC_WITH_SHA 0x02060140 ) 100  #SSL2_CK_DES_192_EDE3_CBC_WITH_MD5 0x020700c0 ) 101  #SSL2_CK_DES_192_EDE3_CBC_WITH_SHA 0x020701c0 ) 102  #SSL2_CK_RC4_64_WITH_MD5 0x02080080 ) 104  #SSL2_CK_DES_64_CFB64_WITH_MD5_1 0x02ff0800 ) 105  #SSL2_CK_NULL 0x02ff0810 ) 107  #SSL2_TXT_DES_64_CFB64_WITH_MD5_1 "DES-CFB-M1" ) 108  #SSL2_TXT_NULL_WITH_MD5 "NULL-MD5" ) 109  #SSL2_TXT_RC4_128_WITH_MD5 "RC4-MD5" ) 110  #SSL2_TXT_RC4_128_EXPORT40_WITH_MD5 "EXP-RC4-MD5" ) 111  #SSL2_TXT_RC2_128_CBC_WITH_MD5 "RC2-CBC-MD5" ) 112  #SSL2_TXT_RC2_128_CBC_EXPORT40_WITH_MD5 "EXP-RC2-CBC-MD5" ) 113  #SSL2_TXT_IDEA_128_CBC_WITH_MD5 "IDEA-CBC-MD5" ) 114  #SSL2_TXT_DES_64_CBC_WITH_MD5 "DES-CBC-MD5" ) 115  #SSL2_TXT_DES_64_CBC_WITH_SHA "DES-CBC-SHA" ) 116  #SSL2_TXT_DES_192_EDE3_CBC_WITH_MD5 "DES-CBC3-MD5" ) 117  #SSL2_TXT_DES_192_EDE3_CBC_WITH_SHA "DES-CBC3-SHA" ) 118  #SSL2_TXT_RC4_64_WITH_MD5 "RC4-64-MD5" ) 120  #SSL2_TXT_NULL "NULL" ) 123  #SSL2_CF_5_BYTE_ENC 0x01 ) 124  #SSL2_CF_8_BYTE_ENC 0x02 ) 127  #SSL2_CT_X509_CERTIFICATE 0x01 ) 130  #SSL2_AT_MD5_WITH_RSA_ENCRYPTION 0x01 ) 132  #SSL2_MAX_SSL_SESSION_ID_LENGTH 32 ) 135  #SSL2_MAX_MASTER_KEY_LENGTH_IN_BITS 256 ) 136 #ifdeà OPENSSL_SYS_MPE 137  #SSL2_MAX_RECORD_LENGTH_2_BYTE_HEADER 29998u ) 139  #SSL2_MAX_RECORD_LENGTH_2_BYTE_HEADER 32767u ) 141  #SSL2_MAX_RECORD_LENGTH_3_BYTE_HEADER 16383 ) 143  #SSL2_CHALLENGE_LENGTH 16 ) 145  #SSL2_MIN_CHALLENGE_LENGTH 16 ) 146  #SSL2_MAX_CHALLENGE_LENGTH 32 ) 147  #SSL2_CONNECTION_ID_LENGTH 16 ) 148  #SSL2_MAX_CONNECTION_ID_LENGTH 16 ) 149  #SSL2_SSL_SESSION_ID_LENGTH 16 ) 150  #SSL2_MAX_CERT_CHALLENGE_LENGTH 32 ) 151  #SSL2_MIN_CERT_CHALLENGE_LENGTH 16 ) 152  #SSL2_MAX_KEY_MATERIAL_LENGTH 24 ) 154 #iâdeà HEADER_SSL_LOCL_H 155  #CERT  ) 158  ss¦2_¡©e_¡ 160  th»e_by‹_h—d” ; 161  þ—r_‹xt ; 162  esÿ³ ; 163  s¦2_rÞlback ; 167  wnum ; 168  w³nd_tÙ ; 169 cÚ¡ * w³nd_buf ; 171  w³nd_off ; 172  w³nd_Ën ; 173  w³nd_»t ; 176  rbuf_Ëá ; 177  rbuf_offs ; 178 * rbuf ; 179 * wbuf ; 181 * wr™e_±r ; 184  ·ddšg ; 185  ¾’gth ; 186  ¿ù_d©a_Ëngth ; 187  wËngth ; 188  waù_d©a_Ëngth ; 189 * ¿ù_d©a ; 190 * waù_d©a ; 191 * mac_d©a ; 193 * »ad_key ; 194 * wr™e_key ; 197  ch®Ënge_Ëngth ; 198  ch®Ënge [ SSL2_MAX_CHALLENGE_LENGTH ]; 199  cÚn_id_Ëngth ; 200  cÚn_id [ SSL2_MAX_CONNECTION_ID_LENGTH ]; 201  key_m©”Ÿl_Ëngth ; 202  key_m©”Ÿl [ SSL2_MAX_KEY_MATERIAL_LENGTH *2]; 204  »ad_£qu’û ; 205  wr™e_£qu’û ; 208  cÚn_id_Ëngth ; 209  û¹_ty³ ; 210  û¹_Ëngth ; 211  c¦ ; 212  þ—r ; 213  ’c ; 214  cþ [ SSL2_MAX_CERT_CHALLENGE_LENGTH ]; 215  ch”_¥ec_Ëngth ; 216  £ssiÚ_id_Ëngth ; 217  þ’ ; 218  ¾’ ; 219 } tmp ; 220 } tSSL2_STATE ; 224  #SSL2_ST_SEND_CLIENT_HELLO_A (0x10| SSL_ST_CONNECT ) ) 225  #SSL2_ST_SEND_CLIENT_HELLO_B (0x11| SSL_ST_CONNECT ) ) 226  #SSL2_ST_GET_SERVER_HELLO_A (0x20| SSL_ST_CONNECT ) ) 227  #SSL2_ST_GET_SERVER_HELLO_B (0x21| SSL_ST_CONNECT ) ) 228  #SSL2_ST_SEND_CLIENT_MASTER_KEY_A (0x30| SSL_ST_CONNECT ) ) 229  #SSL2_ST_SEND_CLIENT_MASTER_KEY_B (0x31| SSL_ST_CONNECT ) ) 230  #SSL2_ST_SEND_CLIENT_FINISHED_A (0x40| SSL_ST_CONNECT ) ) 231  #SSL2_ST_SEND_CLIENT_FINISHED_B (0x41| SSL_ST_CONNECT ) ) 232  #SSL2_ST_SEND_CLIENT_CERTIFICATE_A (0x50| SSL_ST_CONNECT ) ) 233  #SSL2_ST_SEND_CLIENT_CERTIFICATE_B (0x51| SSL_ST_CONNECT ) ) 234  #SSL2_ST_SEND_CLIENT_CERTIFICATE_C (0x52| SSL_ST_CONNECT ) ) 235  #SSL2_ST_SEND_CLIENT_CERTIFICATE_D (0x53| SSL_ST_CONNECT ) ) 236  #SSL2_ST_GET_SERVER_VERIFY_A (0x60| SSL_ST_CONNECT ) ) 237  #SSL2_ST_GET_SERVER_VERIFY_B (0x61| SSL_ST_CONNECT ) ) 238  #SSL2_ST_GET_SERVER_FINISHED_A (0x70| SSL_ST_CONNECT ) ) 239  #SSL2_ST_GET_SERVER_FINISHED_B (0x71| SSL_ST_CONNECT ) ) 240  #SSL2_ST_CLIENT_START_ENCRYPTION (0x80| SSL_ST_CONNECT ) ) 241  #SSL2_ST_X509_GET_CLIENT_CERTIFICATE (0x90| SSL_ST_CONNECT ) ) 243  #SSL2_ST_GET_CLIENT_HELLO_A (0x10| SSL_ST_ACCEPT ) ) 244  #SSL2_ST_GET_CLIENT_HELLO_B (0x11| SSL_ST_ACCEPT ) ) 245  #SSL2_ST_GET_CLIENT_HELLO_C (0x12| SSL_ST_ACCEPT ) ) 246  #SSL2_ST_SEND_SERVER_HELLO_A (0x20| SSL_ST_ACCEPT ) ) 247  #SSL2_ST_SEND_SERVER_HELLO_B (0x21| SSL_ST_ACCEPT ) ) 248  #SSL2_ST_GET_CLIENT_MASTER_KEY_A (0x30| SSL_ST_ACCEPT ) ) 249  #SSL2_ST_GET_CLIENT_MASTER_KEY_B (0x31| SSL_ST_ACCEPT ) ) 250  #SSL2_ST_SEND_SERVER_VERIFY_A (0x40| SSL_ST_ACCEPT ) ) 251  #SSL2_ST_SEND_SERVER_VERIFY_B (0x41| SSL_ST_ACCEPT ) ) 252  #SSL2_ST_SEND_SERVER_VERIFY_C (0x42| SSL_ST_ACCEPT ) ) 253  #SSL2_ST_GET_CLIENT_FINISHED_A (0x50| SSL_ST_ACCEPT ) ) 254  #SSL2_ST_GET_CLIENT_FINISHED_B (0x51| SSL_ST_ACCEPT ) ) 255  #SSL2_ST_SEND_SERVER_FINISHED_A (0x60| SSL_ST_ACCEPT ) ) 256  #SSL2_ST_SEND_SERVER_FINISHED_B (0x61| SSL_ST_ACCEPT ) ) 257  #SSL2_ST_SEND_REQUEST_CERTIFICATE_A (0x70| SSL_ST_ACCEPT ) ) 258  #SSL2_ST_SEND_REQUEST_CERTIFICATE_B (0x71| SSL_ST_ACCEPT ) ) 259  #SSL2_ST_SEND_REQUEST_CERTIFICATE_C (0x72| SSL_ST_ACCEPT ) ) 260  #SSL2_ST_SEND_REQUEST_CERTIFICATE_D (0x73| SSL_ST_ACCEPT ) ) 261  #SSL2_ST_SERVER_START_ENCRYPTION (0x80| SSL_ST_ACCEPT ) ) 262  #SSL2_ST_X509_GET_SERVER_CERTIFICATE (0x90| SSL_ST_ACCEPT ) ) 264 #ifdeà __ýlu¥lus @/usr/include/openssl/ssl23.h 59 #iâdeà HEADER_SSL23_H 60  #HEADER_SSL23_H ) 62 #ifdeà __ýlu¥lus 68  #SSL23_ST_CW_CLNT_HELLO_A (0x210| SSL_ST_CONNECT ) ) 69  #SSL23_ST_CW_CLNT_HELLO_B (0x211| SSL_ST_CONNECT ) ) 71  #SSL23_ST_CR_SRVR_HELLO_A (0x220| SSL_ST_CONNECT ) ) 72  #SSL23_ST_CR_SRVR_HELLO_B (0x221| SSL_ST_CONNECT ) ) 76  #SSL23_ST_SR_CLNT_HELLO_A (0x210| SSL_ST_ACCEPT ) ) 77  #SSL23_ST_SR_CLNT_HELLO_B (0x211| SSL_ST_ACCEPT ) ) 79 #ifdeà __ýlu¥lus @/usr/include/openssl/ssl3.h 117 #iâdeà HEADER_SSL3_H 118  #HEADER_SSL3_H ) 120 #iâdeà OPENSSL_NO_COMP 121  ~<Ý’s¦/comp.h > 123  ~<Ý’s¦/bufãr.h > 124  ~<Ý’s¦/evp.h > 125  ~<Ý’s¦/s¦.h > 126  ~<Ý’s¦/pq_com·t.h > 128 #ifdeà __ýlu¥lus 132  #SSL3_CK_RSA_NULL_MD5 0x03000001 ) 133  #SSL3_CK_RSA_NULL_SHA 0x03000002 ) 134  #SSL3_CK_RSA_RC4_40_MD5 0x03000003 ) 135  #SSL3_CK_RSA_RC4_128_MD5 0x03000004 ) 136  #SSL3_CK_RSA_RC4_128_SHA 0x03000005 ) 137  #SSL3_CK_RSA_RC2_40_MD5 0x03000006 ) 138  #SSL3_CK_RSA_IDEA_128_SHA 0x03000007 ) 139  #SSL3_CK_RSA_DES_40_CBC_SHA 0x03000008 ) 140  #SSL3_CK_RSA_DES_64_CBC_SHA 0x03000009 ) 141  #SSL3_CK_RSA_DES_192_CBC3_SHA 0x0300000A ) 143  #SSL3_CK_DH_DSS_DES_40_CBC_SHA 0x0300000B ) 144  #SSL3_CK_DH_DSS_DES_64_CBC_SHA 0x0300000C ) 145  #SSL3_CK_DH_DSS_DES_192_CBC3_SHA 0x0300000D ) 146  #SSL3_CK_DH_RSA_DES_40_CBC_SHA 0x0300000E ) 147  #SSL3_CK_DH_RSA_DES_64_CBC_SHA 0x0300000F ) 148  #SSL3_CK_DH_RSA_DES_192_CBC3_SHA 0x03000010 ) 150  #SSL3_CK_EDH_DSS_DES_40_CBC_SHA 0x03000011 ) 151  #SSL3_CK_EDH_DSS_DES_64_CBC_SHA 0x03000012 ) 152  #SSL3_CK_EDH_DSS_DES_192_CBC3_SHA 0x03000013 ) 153  #SSL3_CK_EDH_RSA_DES_40_CBC_SHA 0x03000014 ) 154  #SSL3_CK_EDH_RSA_DES_64_CBC_SHA 0x03000015 ) 155  #SSL3_CK_EDH_RSA_DES_192_CBC3_SHA 0x03000016 ) 157  #SSL3_CK_ADH_RC4_40_MD5 0x03000017 ) 158  #SSL3_CK_ADH_RC4_128_MD5 0x03000018 ) 159  #SSL3_CK_ADH_DES_40_CBC_SHA 0x03000019 ) 160  #SSL3_CK_ADH_DES_64_CBC_SHA 0x0300001A ) 161  #SSL3_CK_ADH_DES_192_CBC_SHA 0x0300001B ) 163  #SSL3_CK_FZA_DMS_NULL_SHA 0x0300001C ) 164  #SSL3_CK_FZA_DMS_FZA_SHA 0x0300001D ) 168  #SSL3_CK_FZA_DMS_RC4_SHA 0x0300001E ) 173  #SSL3_CK_KRB5_DES_64_CBC_SHA 0x0300001E ) 174  #SSL3_CK_KRB5_DES_192_CBC3_SHA 0x0300001F ) 175  #SSL3_CK_KRB5_RC4_128_SHA 0x03000020 ) 176  #SSL3_CK_KRB5_IDEA_128_CBC_SHA 0x03000021 ) 177  #SSL3_CK_KRB5_DES_64_CBC_MD5 0x03000022 ) 178  #SSL3_CK_KRB5_DES_192_CBC3_MD5 0x03000023 ) 179  #SSL3_CK_KRB5_RC4_128_MD5 0x03000024 ) 180  #SSL3_CK_KRB5_IDEA_128_CBC_MD5 0x03000025 ) 182  #SSL3_CK_KRB5_DES_40_CBC_SHA 0x03000026 ) 183  #SSL3_CK_KRB5_RC2_40_CBC_SHA 0x03000027 ) 184  #SSL3_CK_KRB5_RC4_40_SHA 0x03000028 ) 185  #SSL3_CK_KRB5_DES_40_CBC_MD5 0x03000029 ) 186  #SSL3_CK_KRB5_RC2_40_CBC_MD5 0x0300002A ) 187  #SSL3_CK_KRB5_RC4_40_MD5 0x0300002B ) 189  #SSL3_TXT_RSA_NULL_MD5 "NULL-MD5" ) 190  #SSL3_TXT_RSA_NULL_SHA "NULL-SHA" ) 191  #SSL3_TXT_RSA_RC4_40_MD5 "EXP-RC4-MD5" ) 192  #SSL3_TXT_RSA_RC4_128_MD5 "RC4-MD5" ) 193  #SSL3_TXT_RSA_RC4_128_SHA "RC4-SHA" ) 194  #SSL3_TXT_RSA_RC2_40_MD5 "EXP-RC2-CBC-MD5" ) 195  #SSL3_TXT_RSA_IDEA_128_SHA "IDEA-CBC-SHA" ) 196  #SSL3_TXT_RSA_DES_40_CBC_SHA "EXP-DES-CBC-SHA" ) 197  #SSL3_TXT_RSA_DES_64_CBC_SHA "DES-CBC-SHA" ) 198  #SSL3_TXT_RSA_DES_192_CBC3_SHA "DES-CBC3-SHA" ) 200  #SSL3_TXT_DH_DSS_DES_40_CBC_SHA "EXP-DH-DSS-DES-CBC-SHA" ) 201  #SSL3_TXT_DH_DSS_DES_64_CBC_SHA "DH-DSS-DES-CBC-SHA" ) 202  #SSL3_TXT_DH_DSS_DES_192_CBC3_SHA "DH-DSS-DES-CBC3-SHA" ) 203  #SSL3_TXT_DH_RSA_DES_40_CBC_SHA "EXP-DH-RSA-DES-CBC-SHA" ) 204  #SSL3_TXT_DH_RSA_DES_64_CBC_SHA "DH-RSA-DES-CBC-SHA" ) 205  #SSL3_TXT_DH_RSA_DES_192_CBC3_SHA "DH-RSA-DES-CBC3-SHA" ) 207  #SSL3_TXT_EDH_DSS_DES_40_CBC_SHA "EXP-EDH-DSS-DES-CBC-SHA" ) 208  #SSL3_TXT_EDH_DSS_DES_64_CBC_SHA "EDH-DSS-DES-CBC-SHA" ) 209  #SSL3_TXT_EDH_DSS_DES_192_CBC3_SHA "EDH-DSS-DES-CBC3-SHA" ) 210  #SSL3_TXT_EDH_RSA_DES_40_CBC_SHA "EXP-EDH-RSA-DES-CBC-SHA" ) 211  #SSL3_TXT_EDH_RSA_DES_64_CBC_SHA "EDH-RSA-DES-CBC-SHA" ) 212  #SSL3_TXT_EDH_RSA_DES_192_CBC3_SHA "EDH-RSA-DES-CBC3-SHA" ) 214  #SSL3_TXT_ADH_RC4_40_MD5 "EXP-ADH-RC4-MD5" ) 215  #SSL3_TXT_ADH_RC4_128_MD5 "ADH-RC4-MD5" ) 216  #SSL3_TXT_ADH_DES_40_CBC_SHA "EXP-ADH-DES-CBC-SHA" ) 217  #SSL3_TXT_ADH_DES_64_CBC_SHA "ADH-DES-CBC-SHA" ) 218  #SSL3_TXT_ADH_DES_192_CBC_SHA "ADH-DES-CBC3-SHA" ) 220  #SSL3_TXT_FZA_DMS_NULL_SHA "FZA-NULL-SHA" ) 221  #SSL3_TXT_FZA_DMS_FZA_SHA "FZA-FZA-CBC-SHA" ) 222  #SSL3_TXT_FZA_DMS_RC4_SHA "FZA-RC4-SHA" ) 224  #SSL3_TXT_KRB5_DES_64_CBC_SHA "KRB5-DES-CBC-SHA" ) 225  #SSL3_TXT_KRB5_DES_192_CBC3_SHA "KRB5-DES-CBC3-SHA" ) 226  #SSL3_TXT_KRB5_RC4_128_SHA "KRB5-RC4-SHA" ) 227  #SSL3_TXT_KRB5_IDEA_128_CBC_SHA "KRB5-IDEA-CBC-SHA" ) 228  #SSL3_TXT_KRB5_DES_64_CBC_MD5 "KRB5-DES-CBC-MD5" ) 229  #SSL3_TXT_KRB5_DES_192_CBC3_MD5 "KRB5-DES-CBC3-MD5" ) 230  #SSL3_TXT_KRB5_RC4_128_MD5 "KRB5-RC4-MD5" ) 231  #SSL3_TXT_KRB5_IDEA_128_CBC_MD5 "KRB5-IDEA-CBC-MD5" ) 233  #SSL3_TXT_KRB5_DES_40_CBC_SHA "EXP-KRB5-DES-CBC-SHA" ) 234  #SSL3_TXT_KRB5_RC2_40_CBC_SHA "EXP-KRB5-RC2-CBC-SHA" ) 235  #SSL3_TXT_KRB5_RC4_40_SHA "EXP-KRB5-RC4-SHA" ) 236  #SSL3_TXT_KRB5_DES_40_CBC_MD5 "EXP-KRB5-DES-CBC-MD5" ) 237  #SSL3_TXT_KRB5_RC2_40_CBC_MD5 "EXP-KRB5-RC2-CBC-MD5" ) 238  #SSL3_TXT_KRB5_RC4_40_MD5 "EXP-KRB5-RC4-MD5" ) 240  #SSL3_SSL_SESSION_ID_LENGTH 32 ) 241  #SSL3_MAX_SSL_SESSION_ID_LENGTH 32 ) 243  #SSL3_MASTER_SECRET_SIZE 48 ) 244  #SSL3_RANDOM_SIZE 32 ) 245  #SSL3_SESSION_ID_SIZE 32 ) 246  #SSL3_RT_HEADER_LENGTH 5 ) 249 #ià defšed ( OPENSSL_SYS_WIN16 ) || \ 250 ( defšed ( OPENSSL_SYS_MSDOS è&& !defšed( OPENSSL_SYS_WIN32 )) 251  #SSL3_RT_MAX_EXTRA (14000) ) 253  #SSL3_RT_MAX_EXTRA (16384) ) 256  #SSL3_RT_MAX_PLAIN_LENGTH 16384 ) 257 #ifdeà OPENSSL_NO_COMP 258  #SSL3_RT_MAX_COMPRESSED_LENGTH SSL3_RT_MAX_PLAIN_LENGTH ) 260  #SSL3_RT_MAX_COMPRESSED_LENGTH (1024+ SSL3_RT_MAX_PLAIN_LENGTH ) ) 262  #SSL3_RT_MAX_ENCRYPTED_LENGTH (1024+ SSL3_RT_MAX_COMPRESSED_LENGTH ) ) 263  #SSL3_RT_MAX_PACKET_SIZE ( SSL3_RT_MAX_ENCRYPTED_LENGTH + SSL3_RT_HEADER_LENGTH ) ) 264  #SSL3_RT_MAX_DATA_SIZE (1024*1024) ) 266  #SSL3_MD_CLIENT_FINISHED_CONST "\x43\x4C\x4E\x54" ) 267  #SSL3_MD_SERVER_FINISHED_CONST "\x53\x52\x56\x52" ) 269  #SSL3_VERSION 0x0300 ) 270  #SSL3_VERSION_MAJOR 0x03 ) 271  #SSL3_VERSION_MINOR 0x00 ) 273  #SSL3_RT_CHANGE_CIPHER_SPEC 20 ) 274  #SSL3_RT_ALERT 21 ) 275  #SSL3_RT_HANDSHAKE 22 ) 276  #SSL3_RT_APPLICATION_DATA 23 ) 278  #SSL3_AL_WARNING 1 ) 279  #SSL3_AL_FATAL 2 ) 281  #SSL3_AD_CLOSE_NOTIFY 0 ) 282  #SSL3_AD_UNEXPECTED_MESSAGE 10 ) 283  #SSL3_AD_BAD_RECORD_MAC 20 ) 284  #SSL3_AD_DECOMPRESSION_FAILURE 30 ) 285  #SSL3_AD_HANDSHAKE_FAILURE 40 ) 286  #SSL3_AD_NO_CERTIFICATE 41 ) 287  #SSL3_AD_BAD_CERTIFICATE 42 ) 288  #SSL3_AD_UNSUPPORTED_CERTIFICATE 43 ) 289  #SSL3_AD_CERTIFICATE_REVOKED 44 ) 290  #SSL3_AD_CERTIFICATE_EXPIRED 45 ) 291  #SSL3_AD_CERTIFICATE_UNKNOWN 46 ) 292  #SSL3_AD_ILLEGAL_PARAMETER 47 ) 294  ss¦3_»cÜd_¡ 296  ty³ ; 297  Ëngth ; 298  off ; 299 * d©a ; 300 * šput ; 301 * comp ; 302  •och ; 303 PQ_64BIT £q_num ; 304 } tSSL3_RECORD ; 306  ss¦3_bufãr_¡ 308 * buf ; 310 size_t Ën ; 311  off£t ; 312  Ëá ; 313 } tSSL3_BUFFER ; 315  #SSL3_CT_RSA_SIGN 1 ) 316  #SSL3_CT_DSS_SIGN 2 ) 317  #SSL3_CT_RSA_FIXED_DH 3 ) 318  #SSL3_CT_DSS_FIXED_DH 4 ) 319  #SSL3_CT_RSA_EPHEMERAL_DH 5 ) 320  #SSL3_CT_DSS_EPHEMERAL_DH 6 ) 321  #SSL3_CT_FORTEZZA_DMS 20 ) 326  #SSL3_CT_NUMBER 7 ) 329  #SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS 0x0001 ) 330  #SSL3_FLAGS_DELAY_CLIENT_FINISHED 0x0002 ) 331  #SSL3_FLAGS_POP_BUFFER 0x0004 ) 332  #TLS1_FLAGS_TLS_PADDING_BUG 0x0008 ) 334  ss¦3_¡©e_¡ 336  æags ; 337  d–ay_buf_pÝ_»t ; 339  »ad_£qu’û [8]; 340  »ad_mac_£ü‘ [ EVP_MAX_MD_SIZE ]; 341  wr™e_£qu’û [8]; 342  wr™e_mac_£ü‘ [ EVP_MAX_MD_SIZE ]; 344  £rv”_¿ndom [ SSL3_RANDOM_SIZE ]; 345  þ›Á_¿ndom [ SSL3_RANDOM_SIZE ]; 348  Ãed_em±y_äagm’ts ; 349  em±y_äagm’t_dÚe ; 351 SSL3_BUFFER rbuf ; 352 SSL3_BUFFER wbuf ; 354 SSL3_RECORD ¼ec ; 355 SSL3_RECORD w»c ; 359  ®”t_äagm’t [2]; 360  ®”t_äagm’t_Ën ; 361  hªdshake_äagm’t [4]; 362  hªdshake_äagm’t_Ën ; 365  wnum ; 366  w³nd_tÙ ; 367  w³nd_ty³ ; 368  w³nd_»t ; 369 cÚ¡ * w³nd_buf ; 372 EVP_MD_CTX fšish_dg¡1 ; 373 EVP_MD_CTX fšish_dg¡2 ; 377  chªge_ch”_¥ec ; 379  w¬n_®”t ; 380  çl_®”t ; 383  ®”t_di¥©ch ; 384  £nd_®”t [2]; 388  »ÃgÙŸ‹ ; 389  tÙ®_»ÃgÙŸtiÚs ; 390  num_»ÃgÙŸtiÚs ; 392  š_»ad_­p_d©a ; 396  û¹_v”ify_md [ EVP_MAX_MD_SIZE *2]; 399  fšish_md [ EVP_MAX_MD_SIZE *2]; 400  fšish_md_Ën ; 401  ³”_fšish_md [ EVP_MAX_MD_SIZE *2]; 402  ³”_fšish_md_Ën ; 404  mes§ge_size ; 405  mes§ge_ty³ ; 408 SSL_CIPHER * Ãw_ch” ; 409 #iâdeà OPENSSL_NO_DH 410 DH * dh ; 413 #iâdeà OPENSSL_NO_ECDH 414 EC_KEY * ecdh ; 418  Ãxt_¡©e ; 420  »u£_mes§ge ; 423  û¹_»q ; 424  ùy³_num ; 425  ùy³ [ SSL3_CT_NUMBER ]; 426 STACK_OF ( X509_NAME è* ÿ_Çmes ; 428  u£_r§_tmp ; 430  key_block_Ëngth ; 431 * key_block ; 433 cÚ¡ EVP_CIPHER * Ãw_sym_’c ; 434 cÚ¡ EVP_MD * Ãw_hash ; 435 #iâdeà OPENSSL_NO_COMP 436 cÚ¡ SSL_COMP * Ãw_com´essiÚ ; 438 * Ãw_com´essiÚ ; 440  û¹_»que¡ ; 441 } tmp ; 443 } tSSL3_STATE ; 449  #SSL3_ST_CW_FLUSH (0x100| SSL_ST_CONNECT ) ) 451  #SSL3_ST_CW_CLNT_HELLO_A (0x110| SSL_ST_CONNECT ) ) 452  #SSL3_ST_CW_CLNT_HELLO_B (0x111| SSL_ST_CONNECT ) ) 454  #SSL3_ST_CR_SRVR_HELLO_A (0x120| SSL_ST_CONNECT ) ) 455  #SSL3_ST_CR_SRVR_HELLO_B (0x121| SSL_ST_CONNECT ) ) 456  #DTLS1_ST_CR_HELLO_VERIFY_REQUEST_A (0x126| SSL_ST_CONNECT ) ) 457  #DTLS1_ST_CR_HELLO_VERIFY_REQUEST_B (0x127| SSL_ST_CONNECT ) ) 458  #SSL3_ST_CR_CERT_A (0x130| SSL_ST_CONNECT ) ) 459  #SSL3_ST_CR_CERT_B (0x131| SSL_ST_CONNECT ) ) 460  #SSL3_ST_CR_KEY_EXCH_A (0x140| SSL_ST_CONNECT ) ) 461  #SSL3_ST_CR_KEY_EXCH_B (0x141| SSL_ST_CONNECT ) ) 462  #SSL3_ST_CR_CERT_REQ_A (0x150| SSL_ST_CONNECT ) ) 463  #SSL3_ST_CR_CERT_REQ_B (0x151| SSL_ST_CONNECT ) ) 464  #SSL3_ST_CR_SRVR_DONE_A (0x160| SSL_ST_CONNECT ) ) 465  #SSL3_ST_CR_SRVR_DONE_B (0x161| SSL_ST_CONNECT ) ) 467  #SSL3_ST_CW_CERT_A (0x170| SSL_ST_CONNECT ) ) 468  #SSL3_ST_CW_CERT_B (0x171| SSL_ST_CONNECT ) ) 469  #SSL3_ST_CW_CERT_C (0x172| SSL_ST_CONNECT ) ) 470  #SSL3_ST_CW_CERT_D (0x173| SSL_ST_CONNECT ) ) 471  #SSL3_ST_CW_KEY_EXCH_A (0x180| SSL_ST_CONNECT ) ) 472  #SSL3_ST_CW_KEY_EXCH_B (0x181| SSL_ST_CONNECT ) ) 473  #SSL3_ST_CW_CERT_VRFY_A (0x190| SSL_ST_CONNECT ) ) 474  #SSL3_ST_CW_CERT_VRFY_B (0x191| SSL_ST_CONNECT ) ) 475  #SSL3_ST_CW_CHANGE_A (0x1A0| SSL_ST_CONNECT ) ) 476  #SSL3_ST_CW_CHANGE_B (0x1A1| SSL_ST_CONNECT ) ) 477  #SSL3_ST_CW_FINISHED_A (0x1B0| SSL_ST_CONNECT ) ) 478  #SSL3_ST_CW_FINISHED_B (0x1B1| SSL_ST_CONNECT ) ) 480  #SSL3_ST_CR_CHANGE_A (0x1C0| SSL_ST_CONNECT ) ) 481  #SSL3_ST_CR_CHANGE_B (0x1C1| SSL_ST_CONNECT ) ) 482  #SSL3_ST_CR_FINISHED_A (0x1D0| SSL_ST_CONNECT ) ) 483  #SSL3_ST_CR_FINISHED_B (0x1D1| SSL_ST_CONNECT ) ) 484  #SSL3_ST_CR_SESSION_TICKET_A (0x1E0| SSL_ST_CONNECT ) ) 485  #SSL3_ST_CR_SESSION_TICKET_B (0x1E1| SSL_ST_CONNECT ) ) 489  #SSL3_ST_SW_FLUSH (0x100| SSL_ST_ACCEPT ) ) 492  #SSL3_ST_SR_CLNT_HELLO_A (0x110| SSL_ST_ACCEPT ) ) 493  #SSL3_ST_SR_CLNT_HELLO_B (0x111| SSL_ST_ACCEPT ) ) 494  #SSL3_ST_SR_CLNT_HELLO_C (0x112| SSL_ST_ACCEPT ) ) 496  #DTLS1_ST_SW_HELLO_VERIFY_REQUEST_A (0x113| SSL_ST_ACCEPT ) ) 497  #DTLS1_ST_SW_HELLO_VERIFY_REQUEST_B (0x114| SSL_ST_ACCEPT ) ) 498  #SSL3_ST_SW_HELLO_REQ_A (0x120| SSL_ST_ACCEPT ) ) 499  #SSL3_ST_SW_HELLO_REQ_B (0x121| SSL_ST_ACCEPT ) ) 500  #SSL3_ST_SW_HELLO_REQ_C (0x122| SSL_ST_ACCEPT ) ) 501  #SSL3_ST_SW_SRVR_HELLO_A (0x130| SSL_ST_ACCEPT ) ) 502  #SSL3_ST_SW_SRVR_HELLO_B (0x131| SSL_ST_ACCEPT ) ) 503  #SSL3_ST_SW_CERT_A (0x140| SSL_ST_ACCEPT ) ) 504  #SSL3_ST_SW_CERT_B (0x141| SSL_ST_ACCEPT ) ) 505  #SSL3_ST_SW_KEY_EXCH_A (0x150| SSL_ST_ACCEPT ) ) 506  #SSL3_ST_SW_KEY_EXCH_B (0x151| SSL_ST_ACCEPT ) ) 507  #SSL3_ST_SW_CERT_REQ_A (0x160| SSL_ST_ACCEPT ) ) 508  #SSL3_ST_SW_CERT_REQ_B (0x161| SSL_ST_ACCEPT ) ) 509  #SSL3_ST_SW_SRVR_DONE_A (0x170| SSL_ST_ACCEPT ) ) 510  #SSL3_ST_SW_SRVR_DONE_B (0x171| SSL_ST_ACCEPT ) ) 512  #SSL3_ST_SR_CERT_A (0x180| SSL_ST_ACCEPT ) ) 513  #SSL3_ST_SR_CERT_B (0x181| SSL_ST_ACCEPT ) ) 514  #SSL3_ST_SR_KEY_EXCH_A (0x190| SSL_ST_ACCEPT ) ) 515  #SSL3_ST_SR_KEY_EXCH_B (0x191| SSL_ST_ACCEPT ) ) 516  #SSL3_ST_SR_CERT_VRFY_A (0x1A0| SSL_ST_ACCEPT ) ) 517  #SSL3_ST_SR_CERT_VRFY_B (0x1A1| SSL_ST_ACCEPT ) ) 518  #SSL3_ST_SR_CHANGE_A (0x1B0| SSL_ST_ACCEPT ) ) 519  #SSL3_ST_SR_CHANGE_B (0x1B1| SSL_ST_ACCEPT ) ) 520  #SSL3_ST_SR_FINISHED_A (0x1C0| SSL_ST_ACCEPT ) ) 521  #SSL3_ST_SR_FINISHED_B (0x1C1| SSL_ST_ACCEPT ) ) 523  #SSL3_ST_SW_CHANGE_A (0x1D0| SSL_ST_ACCEPT ) ) 524  #SSL3_ST_SW_CHANGE_B (0x1D1| SSL_ST_ACCEPT ) ) 525  #SSL3_ST_SW_FINISHED_A (0x1E0| SSL_ST_ACCEPT ) ) 526  #SSL3_ST_SW_FINISHED_B (0x1E1| SSL_ST_ACCEPT ) ) 527  #SSL3_ST_SW_SESSION_TICKET_A (0x1F0| SSL_ST_ACCEPT ) ) 528  #SSL3_ST_SW_SESSION_TICKET_B (0x1F1| SSL_ST_ACCEPT ) ) 530  #SSL3_MT_HELLO_REQUEST 0 ) 531  #SSL3_MT_CLIENT_HELLO 1 ) 532  #SSL3_MT_SERVER_HELLO 2 ) 533  #SSL3_MT_NEWSESSION_TICKET 4 ) 534  #SSL3_MT_CERTIFICATE 11 ) 535  #SSL3_MT_SERVER_KEY_EXCHANGE 12 ) 536  #SSL3_MT_CERTIFICATE_REQUEST 13 ) 537  #SSL3_MT_SERVER_DONE 14 ) 538  #SSL3_MT_CERTIFICATE_VERIFY 15 ) 539  #SSL3_MT_CLIENT_KEY_EXCHANGE 16 ) 540  #SSL3_MT_FINISHED 20 ) 541  #DTLS1_MT_HELLO_VERIFY_REQUEST 3 ) 544  #SSL3_MT_CCS 1 ) 547  #SSL3_CC_READ 0x01 ) 548  #SSL3_CC_WRITE 0x02 ) 549  #SSL3_CC_CLIENT 0x10 ) 550  #SSL3_CC_SERVER 0x20 ) 551  #SSL3_CHANGE_CIPHER_CLIENT_WRITE ( SSL3_CC_CLIENT | SSL3_CC_WRITE ) ) 552  #SSL3_CHANGE_CIPHER_SERVER_READ ( SSL3_CC_SERVER | SSL3_CC_READ ) ) 553  #SSL3_CHANGE_CIPHER_CLIENT_READ ( SSL3_CC_CLIENT | SSL3_CC_READ ) ) 554  #SSL3_CHANGE_CIPHER_SERVER_WRITE ( SSL3_CC_SERVER | SSL3_CC_WRITE ) ) 556 #ifdeà __ýlu¥lus @/usr/include/openssl/symhacks.h 55 #iâdeà HEADER_SYMHACKS_H 56  #HEADER_SYMHACKS_H ) 58  ~<Ý’s¦/e_os2.h > 63 #ifdeà OPENSSL_SYS_VMS 66 #undeà CRYPTO_g‘_ex_d©a_im¶em’tiÚ 67  #CRYPTO_g‘_ex_d©a_im¶em’tiÚ CRYPTO_g‘_ex_d©a_im¶ ) 68 #undeà CRYPTO_£t_ex_d©a_im¶em’tiÚ 69  #CRYPTO_£t_ex_d©a_im¶em’tiÚ CRYPTO_£t_ex_d©a_im¶ ) 72 #undeà ASN1_STRING_£t_deçuÉ_mask_asc 73  #ASN1_STRING_£t_deçuÉ_mask_asc ASN1_STRING_£t_def_mask_asc ) 77 #undeà i2d_ASN1_SET_OF_PKCS7_SIGNER_INFO 78  #i2d_ASN1_SET_OF_PKCS7_SIGNER_INFO i2d_ASN1_SET_OF_PKCS7_SIGINF ) 79 #undeà d2i_ASN1_SET_OF_PKCS7_SIGNER_INFO 80  #d2i_ASN1_SET_OF_PKCS7_SIGNER_INFO d2i_ASN1_SET_OF_PKCS7_SIGINF ) 85 #undeà i2d_ASN1_SET_OF_PKCS7_RECIP_INFO 86  #i2d_ASN1_SET_OF_PKCS7_RECIP_INFO i2d_ASN1_SET_OF_PKCS7_RECINF ) 87 #undeà d2i_ASN1_SET_OF_PKCS7_RECIP_INFO 88  #d2i_ASN1_SET_OF_PKCS7_RECIP_INFO d2i_ASN1_SET_OF_PKCS7_RECINF ) 93 #undeà i2d_ASN1_SET_OF_ACCESS_DESCRIPTION 94  #i2d_ASN1_SET_OF_ACCESS_DESCRIPTION i2d_ASN1_SET_OF_ACC_DESC ) 95 #undeà d2i_ASN1_SET_OF_ACCESS_DESCRIPTION 96  #d2i_ASN1_SET_OF_ACCESS_DESCRIPTION d2i_ASN1_SET_OF_ACC_DESC ) 100 #undeà PEM_»ad_NETSCAPE_CERT_SEQUENCE 101  #PEM_»ad_NETSCAPE_CERT_SEQUENCE PEM_»ad_NS_CERT_SEQ ) 102 #undeà PEM_wr™e_NETSCAPE_CERT_SEQUENCE 103  #PEM_wr™e_NETSCAPE_CERT_SEQUENCE PEM_wr™e_NS_CERT_SEQ ) 104 #undeà PEM_»ad_bio_NETSCAPE_CERT_SEQUENCE 105  #PEM_»ad_bio_NETSCAPE_CERT_SEQUENCE PEM_»ad_bio_NS_CERT_SEQ ) 106 #undeà PEM_wr™e_bio_NETSCAPE_CERT_SEQUENCE 107  #PEM_wr™e_bio_NETSCAPE_CERT_SEQUENCE PEM_wr™e_bio_NS_CERT_SEQ ) 108 #undeà PEM_wr™e_cb_bio_NETSCAPE_CERT_SEQUENCE 109  #PEM_wr™e_cb_bio_NETSCAPE_CERT_SEQUENCE PEM_wr™e_cb_bio_NS_CERT_SEQ ) 112 #undeà PEM_»ad_PKCS8_PRIV_KEY_INFO 113  #PEM_»ad_PKCS8_PRIV_KEY_INFO PEM_»ad_P8_PRIV_KEY_INFO ) 114 #undeà PEM_wr™e_PKCS8_PRIV_KEY_INFO 115  #PEM_wr™e_PKCS8_PRIV_KEY_INFO PEM_wr™e_P8_PRIV_KEY_INFO ) 116 #undeà PEM_»ad_bio_PKCS8_PRIV_KEY_INFO 117  #PEM_»ad_bio_PKCS8_PRIV_KEY_INFO PEM_»ad_bio_P8_PRIV_KEY_INFO ) 118 #undeà PEM_wr™e_bio_PKCS8_PRIV_KEY_INFO 119  #PEM_wr™e_bio_PKCS8_PRIV_KEY_INFO PEM_wr™e_bio_P8_PRIV_KEY_INFO ) 120 #undeà PEM_wr™e_cb_bio_PKCS8_PRIV_KEY_INFO 121  #PEM_wr™e_cb_bio_PKCS8_PRIV_KEY_INFO PEM_w¹_cb_bio_P8_PRIV_KEY_INFO ) 124 #undeà PEM_wr™e_bio_PKCS8Priv©eKey_nid 125  #PEM_wr™e_bio_PKCS8Priv©eKey_nid PEM_wr™e_bio_PKCS8PrivKey_nid ) 128 #undeà X509_REVOKED_g‘_ext_by_ü™iÿl 129  #X509_REVOKED_g‘_ext_by_ü™iÿl X509_REVOKED_g‘_ext_by_ü™ic ) 130 #undeà X509_pÞicy_Œ“_g‘0_u£r_pÞic›s 131  #X509_pÞicy_Œ“_g‘0_u£r_pÞic›s X509_pcy_Œ“_g‘0_u¤_pÞic›s ) 132 #undeà X509_pÞicy_node_g‘0_qu®if›rs 133  #X509_pÞicy_node_g‘0_qu®if›rs X509_pcy_node_g‘0_qu®if›rs ) 134 #undeà X509_STORE_CTX_g‘_ex¶ic™_pÞicy 135  #X509_STORE_CTX_g‘_ex¶ic™_pÞicy X509_STORE_CTX_g‘_ex¶_pÞicy ) 138 #undeà CRYPTO_£t_dyÆock_de¡roy_ÿÎback 139  #CRYPTO_£t_dyÆock_de¡roy_ÿÎback CRYPTO_£t_dyÆock_de¡roy_cb ) 140 #undeà CRYPTO_£t_dyÆock_ü—‹_ÿÎback 141  #CRYPTO_£t_dyÆock_ü—‹_ÿÎback CRYPTO_£t_dyÆock_ü—‹_cb ) 142 #undeà CRYPTO_£t_dyÆock_lock_ÿÎback 143  #CRYPTO_£t_dyÆock_lock_ÿÎback CRYPTO_£t_dyÆock_lock_cb ) 144 #undeà CRYPTO_g‘_dyÆock_lock_ÿÎback 145  #CRYPTO_g‘_dyÆock_lock_ÿÎback CRYPTO_g‘_dyÆock_lock_cb ) 146 #undeà CRYPTO_g‘_dyÆock_de¡roy_ÿÎback 147  #CRYPTO_g‘_dyÆock_de¡roy_ÿÎback CRYPTO_g‘_dyÆock_de¡roy_cb ) 148 #undeà CRYPTO_g‘_dyÆock_ü—‹_ÿÎback 149  #CRYPTO_g‘_dyÆock_ü—‹_ÿÎback CRYPTO_g‘_dyÆock_ü—‹_cb ) 150 #undeà CRYPTO_£t_locked_mem_ex_funùiÚs 151  #CRYPTO_£t_locked_mem_ex_funùiÚs CRYPTO_£t_locked_mem_ex_funcs ) 152 #undeà CRYPTO_g‘_locked_mem_ex_funùiÚs 153  #CRYPTO_g‘_locked_mem_ex_funùiÚs CRYPTO_g‘_locked_mem_ex_funcs ) 156 #undeà SSL_CTX_£t_deçuÉ_v”ify_·ths 157  #SSL_CTX_£t_deçuÉ_v”ify_·ths SSL_CTX_£t_def_v”ify_·ths ) 158 #undeà SSL_g‘_ex_d©a_X509_STORE_CTX_idx 159  #SSL_g‘_ex_d©a_X509_STORE_CTX_idx SSL_g‘_ex_d_X509_STORE_CTX_idx ) 160 #undeà SSL_add_fže_û¹_subjeùs_to_¡ack 161  #SSL_add_fže_û¹_subjeùs_to_¡ack SSL_add_fže_û¹_subjs_to_¡k ) 162 #undeà SSL_add_dœ_û¹_subjeùs_to_¡ack 163  #SSL_add_dœ_û¹_subjeùs_to_¡ack SSL_add_dœ_û¹_subjs_to_¡k ) 164 #undeà SSL_CTX_u£_û¹ifiÿ‹_chaš_fže 165  #SSL_CTX_u£_û¹ifiÿ‹_chaš_fže SSL_CTX_u£_û¹_chaš_fže ) 166 #undeà SSL_CTX_£t_û¹_v”ify_ÿÎback 167  #SSL_CTX_£t_û¹_v”ify_ÿÎback SSL_CTX_£t_û¹_v”ify_cb ) 168 #undeà SSL_CTX_£t_deçuÉ_·sswd_cb_u£rd©a 169  #SSL_CTX_£t_deçuÉ_·sswd_cb_u£rd©a SSL_CTX_£t_def_·sswd_cb_ud ) 170 #undeà SSL_COMP_g‘_com´essiÚ_m‘hods 171  #SSL_COMP_g‘_com´essiÚ_m‘hods SSL_COMP_g‘_com´ess_m‘hods ) 174 #undeà ENGINE_g‘_deçuÉ_BN_mod_exp_üt 175  #ENGINE_g‘_deçuÉ_BN_mod_exp_üt ENGINE_g‘_def_BN_mod_exp_üt ) 176 #undeà ENGINE_£t_deçuÉ_BN_mod_exp_üt 177  #ENGINE_£t_deçuÉ_BN_mod_exp_üt ENGINE_£t_def_BN_mod_exp_üt ) 178 #undeà ENGINE_£t_lßd_´ivkey_funùiÚ 179  #ENGINE_£t_lßd_´ivkey_funùiÚ ENGINE_£t_lßd_´ivkey_â ) 180 #undeà ENGINE_g‘_lßd_´ivkey_funùiÚ 181  #ENGINE_g‘_lßd_´ivkey_funùiÚ ENGINE_g‘_lßd_´ivkey_â ) 184 #undeà OCSP_REQUEST_g‘_ext_by_ü™iÿl 185  #OCSP_REQUEST_g‘_ext_by_ü™iÿl OCSP_REQUEST_g‘_ext_by_ü™ ) 186 #undeà OCSP_BASICRESP_g‘_ext_by_ü™iÿl 187  #OCSP_BASICRESP_g‘_ext_by_ü™iÿl OCSP_BASICRESP_g‘_ext_by_ü™ ) 188 #undeà OCSP_SINGLERESP_g‘_ext_by_ü™iÿl 189  #OCSP_SINGLERESP_g‘_ext_by_ü™iÿl OCSP_SINGLERESP_g‘_ext_by_ü™ ) 192 #undeà _os¦_Þd_des_ede3_cfb64_’üy± 193  #_os¦_Þd_des_ede3_cfb64_’üy± _os¦_odes_ede3_cfb64_’üy± ) 194 #undeà _os¦_Þd_des_ede3_ofb64_’üy± 195  #_os¦_Þd_des_ede3_ofb64_’üy± _os¦_odes_ede3_ofb64_’üy± ) 198 #undeà OPENSSL_add_®l_®gÜ™hms_nocÚf 199  #OPENSSL_add_®l_®gÜ™hms_nocÚf OPENSSL_add_®l_®go_nocÚf ) 200 #undeà OPENSSL_add_®l_®gÜ™hms_cÚf 201  #OPENSSL_add_®l_®gÜ™hms_cÚf OPENSSL_add_®l_®go_cÚf ) 204 #undeà EC_GROUP_£t_pošt_cÚv”siÚ_fÜm 205  #EC_GROUP_£t_pošt_cÚv”siÚ_fÜm EC_GROUP_£t_pošt_cÚv_fÜm ) 206 #undeà EC_GROUP_g‘_pošt_cÚv”siÚ_fÜm 207  #EC_GROUP_g‘_pošt_cÚv”siÚ_fÜm EC_GROUP_g‘_pošt_cÚv_fÜm ) 208 #undeà EC_GROUP_þ—r_ä“_®l_exŒa_d©a 209  #EC_GROUP_þ—r_ä“_®l_exŒa_d©a EC_GROUP_þr_ä“_®l_xŒa_d©a ) 210 #undeà EC_POINT_£t_J´ojeùive_coÜdš©es_GFp 211  #EC_POINT_£t_J´ojeùive_coÜdš©es_GFp \ 212 EC_POINT_£t_J´oj_coÜds_GFp ) 213 #undeà EC_POINT_g‘_J´ojeùive_coÜdš©es_GFp 214  #EC_POINT_g‘_J´ojeùive_coÜdš©es_GFp \ 215 EC_POINT_g‘_J´oj_coÜds_GFp ) 216 #undeà EC_POINT_£t_affše_coÜdš©es_GFp 217  #EC_POINT_£t_affše_coÜdš©es_GFp EC_POINT_£t_affše_coÜds_GFp ) 218 #undeà EC_POINT_g‘_affše_coÜdš©es_GFp 219  #EC_POINT_g‘_affše_coÜdš©es_GFp EC_POINT_g‘_affše_coÜds_GFp ) 220 #undeà EC_POINT_£t_com´es£d_coÜdš©es_GFp 221  #EC_POINT_£t_com´es£d_coÜdš©es_GFp EC_POINT_£t_com´_coÜds_GFp ) 222 #undeà EC_POINT_£t_affše_coÜdš©es_GF2m 223  #EC_POINT_£t_affše_coÜdš©es_GF2m EC_POINT_£t_affše_coÜds_GF2m ) 224 #undeà EC_POINT_g‘_affše_coÜdš©es_GF2m 225  #EC_POINT_g‘_affše_coÜdš©es_GF2m EC_POINT_g‘_affše_coÜds_GF2m ) 226 #undeà EC_POINT_£t_com´es£d_coÜdš©es_GF2m 227  #EC_POINT_£t_com´es£d_coÜdš©es_GF2m \ 228 EC_POINT_£t_com´_coÜds_GF2m ) 229 #undeà ec_GF2m_sim¶e_group_þ—r_fšish 230  #ec_GF2m_sim¶e_group_þ—r_fšish ec_GF2m_sim¶e_g½_þr_fšish ) 231 #undeà ec_GF2m_sim¶e_group_check_disüimšªt 232  #ec_GF2m_sim¶e_group_check_disüimšªt ec_GF2m_sim¶e_g½_chk_disüim ) 233 #undeà ec_GF2m_sim¶e_pošt_þ—r_fšish 234  #ec_GF2m_sim¶e_pošt_þ—r_fšish ec_GF2m_sim¶e_±_þr_fšish ) 235 #undeà ec_GF2m_sim¶e_pošt_£t_to_šfš™y 236  #ec_GF2m_sim¶e_pošt_£t_to_šfš™y ec_GF2m_sim¶e_±_£t_to_šf ) 237 #undeà ec_GF2m_sim¶e_pošts_make_affše 238  #ec_GF2m_sim¶e_pošts_make_affše ec_GF2m_sim¶e_±s_make_affše ) 239 #undeà ec_GF2m_sim¶e_pošt_£t_affše_coÜdš©es 240  #ec_GF2m_sim¶e_pošt_£t_affše_coÜdš©es \ 241 ec_GF2m_smp_±_£t_af_coÜds ) 242 #undeà ec_GF2m_sim¶e_pošt_g‘_affše_coÜdš©es 243  #ec_GF2m_sim¶e_pošt_g‘_affše_coÜdš©es \ 244 ec_GF2m_smp_±_g‘_af_coÜds ) 245 #undeà ec_GF2m_sim¶e_£t_com´es£d_coÜdš©es 246  #ec_GF2m_sim¶e_£t_com´es£d_coÜdš©es \ 247 ec_GF2m_smp_£t_com´_coÜds ) 248 #undeà ec_GFp_sim¶e_group_£t_curve_GFp 249  #ec_GFp_sim¶e_group_£t_curve_GFp ec_GFp_sim¶e_g½_£t_curve_GFp ) 250 #undeà ec_GFp_sim¶e_group_g‘_curve_GFp 251  #ec_GFp_sim¶e_group_g‘_curve_GFp ec_GFp_sim¶e_g½_g‘_curve_GFp ) 252 #undeà ec_GFp_sim¶e_group_þ—r_fšish 253  #ec_GFp_sim¶e_group_þ—r_fšish ec_GFp_sim¶e_g½_þ—r_fšish ) 254 #undeà ec_GFp_sim¶e_group_£t_g’”©Ü 255  #ec_GFp_sim¶e_group_£t_g’”©Ü ec_GFp_sim¶e_g½_£t_g’”©Ü ) 256 #undeà ec_GFp_sim¶e_group_g‘0_g’”©Ü 257  #ec_GFp_sim¶e_group_g‘0_g’”©Ü ec_GFp_sim¶e_g½_gt0_g’”©Ü ) 258 #undeà ec_GFp_sim¶e_group_g‘_coçùÜ 259  #ec_GFp_sim¶e_group_g‘_coçùÜ ec_GFp_sim¶e_g½_g‘_coçùÜ ) 260 #undeà ec_GFp_sim¶e_pošt_þ—r_fšish 261  #ec_GFp_sim¶e_pošt_þ—r_fšish ec_GFp_sim¶e_±_þ—r_fšish ) 262 #undeà ec_GFp_sim¶e_pošt_£t_to_šfš™y 263  #ec_GFp_sim¶e_pošt_£t_to_šfš™y ec_GFp_sim¶e_±_£t_to_šf ) 264 #undeà ec_GFp_sim¶e_pošts_make_affše 265  #ec_GFp_sim¶e_pošts_make_affše ec_GFp_sim¶e_±s_make_affše ) 266 #undeà ec_GFp_sim¶e_group_g‘_curve_GFp 267  #ec_GFp_sim¶e_group_g‘_curve_GFp ec_GFp_sim¶e_g½_g‘_curve_GFp ) 268 #undeà ec_GFp_sim¶e_£t_J´ojeùive_coÜdš©es_GFp 269  #ec_GFp_sim¶e_£t_J´ojeùive_coÜdš©es_GFp \ 270 ec_GFp_smp_£t_J´oj_coÜds_GFp ) 271 #undeà ec_GFp_sim¶e_g‘_J´ojeùive_coÜdš©es_GFp 272  #ec_GFp_sim¶e_g‘_J´ojeùive_coÜdš©es_GFp \ 273 ec_GFp_smp_g‘_J´oj_coÜds_GFp ) 274 #undeà ec_GFp_sim¶e_pošt_£t_affše_coÜdš©es_GFp 275  #ec_GFp_sim¶e_pošt_£t_affše_coÜdš©es_GFp \ 276 ec_GFp_smp_±_£t_af_coÜds_GFp ) 277 #undeà ec_GFp_sim¶e_pošt_g‘_affše_coÜdš©es_GFp 278  #ec_GFp_sim¶e_pošt_g‘_affše_coÜdš©es_GFp \ 279 ec_GFp_smp_±_g‘_af_coÜds_GFp ) 280 #undeà ec_GFp_sim¶e_£t_com´es£d_coÜdš©es_GFp 281  #ec_GFp_sim¶e_£t_com´es£d_coÜdš©es_GFp \ 282 ec_GFp_smp_£t_com´_coÜds_GFp ) 283 #undeà ec_GFp_sim¶e_pošt_£t_affše_coÜdš©es 284  #ec_GFp_sim¶e_pošt_£t_affše_coÜdš©es \ 285 ec_GFp_smp_±_£t_af_coÜds ) 286 #undeà ec_GFp_sim¶e_pošt_g‘_affše_coÜdš©es 287  #ec_GFp_sim¶e_pošt_g‘_affše_coÜdš©es \ 288 ec_GFp_smp_±_g‘_af_coÜds ) 289 #undeà ec_GFp_sim¶e_£t_com´es£d_coÜdš©es 290  #ec_GFp_sim¶e_£t_com´es£d_coÜdš©es \ 291 ec_GFp_smp_£t_com´_coÜds ) 292 #undeà ec_GFp_sim¶e_group_check_disüimšªt 293  #ec_GFp_sim¶e_group_check_disüimšªt ec_GFp_sim¶e_g½_chk_disüim ) 296 #undeà STORE_m‘hod_£t_š™Ÿli£_funùiÚ 297  #STORE_m‘hod_£t_š™Ÿli£_funùiÚ STORE_m‘h_£t_š™Ÿli£_â ) 298 #undeà STORE_m‘hod_£t_þ—nup_funùiÚ 299  #STORE_m‘hod_£t_þ—nup_funùiÚ STORE_m‘h_£t_þ—nup_â ) 300 #undeà STORE_m‘hod_£t_g’”©e_funùiÚ 301  #STORE_m‘hod_£t_g’”©e_funùiÚ STORE_m‘h_£t_g’”©e_â ) 302 #undeà STORE_m‘hod_£t_modify_funùiÚ 303  #STORE_m‘hod_£t_modify_funùiÚ STORE_m‘h_£t_modify_â ) 304 #undeà STORE_m‘hod_£t_»voke_funùiÚ 305  #STORE_m‘hod_£t_»voke_funùiÚ STORE_m‘h_£t_»voke_â ) 306 #undeà STORE_m‘hod_£t_d–‘e_funùiÚ 307  #STORE_m‘hod_£t_d–‘e_funùiÚ STORE_m‘h_£t_d–‘e_â ) 308 #undeà STORE_m‘hod_£t_li¡_¡¬t_funùiÚ 309  #STORE_m‘hod_£t_li¡_¡¬t_funùiÚ STORE_m‘h_£t_li¡_¡¬t_â ) 310 #undeà STORE_m‘hod_£t_li¡_Ãxt_funùiÚ 311  #STORE_m‘hod_£t_li¡_Ãxt_funùiÚ STORE_m‘h_£t_li¡_Ãxt_â ) 312 #undeà STORE_m‘hod_£t_li¡_’d_funùiÚ 313  #STORE_m‘hod_£t_li¡_’d_funùiÚ STORE_m‘h_£t_li¡_’d_â ) 314 #undeà STORE_m‘hod_£t_upd©e_¡Üe_funùiÚ 315  #STORE_m‘hod_£t_upd©e_¡Üe_funùiÚ STORE_m‘h_£t_upd©e_¡Üe_â ) 316 #undeà STORE_m‘hod_£t_lock_¡Üe_funùiÚ 317  #STORE_m‘hod_£t_lock_¡Üe_funùiÚ STORE_m‘h_£t_lock_¡Üe_â ) 318 #undeà STORE_m‘hod_£t_uÆock_¡Üe_funùiÚ 319  #STORE_m‘hod_£t_uÆock_¡Üe_funùiÚ STORE_m‘h_£t_uÆock_¡Üe_â ) 320 #undeà STORE_m‘hod_g‘_š™Ÿli£_funùiÚ 321  #STORE_m‘hod_g‘_š™Ÿli£_funùiÚ STORE_m‘h_g‘_š™Ÿli£_â ) 322 #undeà STORE_m‘hod_g‘_þ—nup_funùiÚ 323  #STORE_m‘hod_g‘_þ—nup_funùiÚ STORE_m‘h_g‘_þ—nup_â ) 324 #undeà STORE_m‘hod_g‘_g’”©e_funùiÚ 325  #STORE_m‘hod_g‘_g’”©e_funùiÚ STORE_m‘h_g‘_g’”©e_â ) 326 #undeà STORE_m‘hod_g‘_modify_funùiÚ 327  #STORE_m‘hod_g‘_modify_funùiÚ STORE_m‘h_g‘_modify_â ) 328 #undeà STORE_m‘hod_g‘_»voke_funùiÚ 329  #STORE_m‘hod_g‘_»voke_funùiÚ STORE_m‘h_g‘_»voke_â ) 330 #undeà STORE_m‘hod_g‘_d–‘e_funùiÚ 331  #STORE_m‘hod_g‘_d–‘e_funùiÚ STORE_m‘h_g‘_d–‘e_â ) 332 #undeà STORE_m‘hod_g‘_li¡_¡¬t_funùiÚ 333  #STORE_m‘hod_g‘_li¡_¡¬t_funùiÚ STORE_m‘h_g‘_li¡_¡¬t_â ) 334 #undeà STORE_m‘hod_g‘_li¡_Ãxt_funùiÚ 335  #STORE_m‘hod_g‘_li¡_Ãxt_funùiÚ STORE_m‘h_g‘_li¡_Ãxt_â ) 336 #undeà STORE_m‘hod_g‘_li¡_’d_funùiÚ 337  #STORE_m‘hod_g‘_li¡_’d_funùiÚ STORE_m‘h_g‘_li¡_’d_â ) 338 #undeà STORE_m‘hod_g‘_upd©e_¡Üe_funùiÚ 339  #STORE_m‘hod_g‘_upd©e_¡Üe_funùiÚ STORE_m‘h_g‘_upd©e_¡Üe_â ) 340 #undeà STORE_m‘hod_g‘_lock_¡Üe_funùiÚ 341  #STORE_m‘hod_g‘_lock_¡Üe_funùiÚ STORE_m‘h_g‘_lock_¡Üe_â ) 342 #undeà STORE_m‘hod_g‘_uÆock_¡Üe_funùiÚ 343  #STORE_m‘hod_g‘_uÆock_¡Üe_funùiÚ STORE_m‘h_g‘_uÆock_¡Üe_â ) 349 #ià defšed ( OPENSSL_SYS_WIN16 è|| defšed( OPENSSL_SYS_VMS è|| defšed( OPENSSL_SYS_OS2 ) 350 #undeà ERR_lßd_CRYPTO_¡ršgs 351  #ERR_lßd_CRYPTO_¡ršgs ERR_lßd_CRYPTOlib_¡ršgs ) 352 #undeà OCSP_ülID_Ãw 353  #OCSP_ülID_Ãw OCSP_ülID2_Ãw ) 355 #undeà d2i_ECPARAMETERS 356  #d2i_ECPARAMETERS d2i_UC_ECPARAMETERS ) 357 #undeà i2d_ECPARAMETERS 358  #i2d_ECPARAMETERS i2d_UC_ECPARAMETERS ) 359 #undeà d2i_ECPKPARAMETERS 360  #d2i_ECPKPARAMETERS d2i_UC_ECPKPARAMETERS ) 361 #undeà i2d_ECPKPARAMETERS 362  #i2d_ECPKPARAMETERS i2d_UC_ECPKPARAMETERS ) 370 #undeà X509v3_þ—nup_ex‹nsiÚs 371  #X509v3_þ—nup_ex‹nsiÚs oX509v3_þ—nup_ex‹nsiÚs ) 372 #undeà X509v3_add_ex‹nsiÚ 373  #X509v3_add_ex‹nsiÚ oX509v3_add_ex‹nsiÚ ) 374 #undeà X509v3_add_Ãtsÿ³_ex‹nsiÚs 375  #X509v3_add_Ãtsÿ³_ex‹nsiÚs oX509v3_add_Ãtsÿ³_ex‹nsiÚs ) 376 #undeà X509v3_add_¡ªd¬d_ex‹nsiÚs 377  #X509v3_add_¡ªd¬d_ex‹nsiÚs oX509v3_add_¡ªd¬d_ex‹nsiÚs ) @/usr/include/openssl/tls1.h 72 #iâdeà HEADER_TLS1_H 73  #HEADER_TLS1_H ) 75  ~<Ý’s¦/bufãr.h > 77 #ifdeà __ýlu¥lus 81  #TLS1_ALLOW_EXPERIMENTAL_CIPHERSUITES 0 ) 83  #TLS1_VERSION 0x0301 ) 84  #TLS1_VERSION_MAJOR 0x03 ) 85  #TLS1_VERSION_MINOR 0x01 ) 87  #TLS1_AD_DECRYPTION_FAILED 21 ) 88  #TLS1_AD_RECORD_OVERFLOW 22 ) 89  #TLS1_AD_UNKNOWN_CA 48 ) 90  #TLS1_AD_ACCESS_DENIED 49 ) 91  #TLS1_AD_DECODE_ERROR 50 ) 92  #TLS1_AD_DECRYPT_ERROR 51 ) 93  #TLS1_AD_EXPORT_RESTRICTION 60 ) 94  #TLS1_AD_PROTOCOL_VERSION 70 ) 95  #TLS1_AD_INSUFFICIENT_SECURITY 71 ) 96  #TLS1_AD_INTERNAL_ERROR 80 ) 97  #TLS1_AD_USER_CANCELLED 90 ) 98  #TLS1_AD_NO_RENEGOTIATION 100 ) 100  #TLS1_AD_UNSUPPORTED_EXTENSION 110 ) 101  #TLS1_AD_CERTIFICATE_UNOBTAINABLE 111 ) 102  #TLS1_AD_UNRECOGNIZED_NAME 112 ) 103  #TLS1_AD_BAD_CERTIFICATE_STATUS_RESPONSE 113 ) 104  #TLS1_AD_BAD_CERTIFICATE_HASH_VALUE 114 ) 105  #TLS1_AD_UNKNOWN_PSK_IDENTITY 115 ) 108  #TLSEXT_TYPE_£rv”_Çme 0 ) 109  #TLSEXT_TYPE_max_äagm’t_Ëngth 1 ) 110  #TLSEXT_TYPE_þ›Á_û¹ifiÿ‹_u¾ 2 ) 111  #TLSEXT_TYPE_Œu¡ed_ÿ_keys 3 ) 112  #TLSEXT_TYPE_Œunÿ‹d_hmac 4 ) 113  #TLSEXT_TYPE_¡©us_»que¡ 5 ) 114  #TLSEXT_TYPE_–ltic_curves 10 ) 115  #TLSEXT_TYPE_ec_pošt_fÜm©s 11 ) 116  #TLSEXT_TYPE_£ssiÚ_tick‘ 35 ) 119  #TLSEXT_NAMETYPE_ho¡_Çme 0 ) 121 #iâdeà OPENSSL_NO_TLSEXT 123  #TLSEXT_MAXLEN_ho¡_Çme 255 ) 125 cÚ¡ * SSL_g‘_£rv”Çme (cÚ¡ SSL * s , cÚ¡  ty³ ) ; 126  SSL_g‘_£rv”Çme_ty³ (cÚ¡ SSL * s ) ; 128  #SSL_£t_Ž£xt_ho¡_Çme ( s , Çme ) \ 129 `SSL_ù¾ ( s , SSL_CTRL_SET_TLSEXT_HOSTNAME , TLSEXT_NAMETYPE_ho¡_Çme ,(*) Çme ) ) 131  #SSL_£t_Ž£xt_debug_ÿÎback ( s¦ , cb ) \ 132 `SSL_ÿÎback_ù¾ ( s¦ , SSL_CTRL_SET_TLSEXT_DEBUG_CB ,((*)()) cb ) ) 134  #SSL_£t_Ž£xt_debug_¬g ( s¦ , ¬g ) \ 135 `SSL_ù¾ ( s¦ , SSL_CTRL_SET_TLSEXT_DEBUG_ARG ,0, (*) ¬g ) ) 137  #SSL_CTX_£t_Ž£xt_£rv”Çme_ÿÎback ( ùx , cb ) \ 138 `SSL_CTX_ÿÎback_ù¾ ( ùx , SSL_CTRL_SET_TLSEXT_SERVERNAME_CB ,((*)()) cb ) ) 140  #SSL_TLSEXT_ERR_OK 0 ) 141  #SSL_TLSEXT_ERR_ALERT_WARNING 1 ) 142  #SSL_TLSEXT_ERR_ALERT_FATAL 2 ) 143  #SSL_TLSEXT_ERR_NOACK 3 ) 145  #SSL_CTX_£t_Ž£xt_£rv”Çme_¬g ( ùx , ¬g ) \ 146 `SSL_CTX_ù¾ ( ùx , SSL_CTRL_SET_TLSEXT_SERVERNAME_ARG ,0, (*) ¬g ) ) 148  #SSL_CTX_g‘_Ž£xt_tick‘_keys ( ùx , keys , keyËn ) \ 149 `SSL_CTX_ù¾ (( ùx ), SSL_CTRL_GET_TLXEXT_TICKET_KEYS ,( keyËn ),( keys )) ) 150  #SSL_CTX_£t_Ž£xt_tick‘_keys ( ùx , keys , keyËn ) \ 151 `SSL_CTX_ù¾ (( ùx ), SSL_CTRL_SET_TLXEXT_TICKET_KEYS ,( keyËn ),( keys )) ) 158  #TLS1_CK_RSA_EXPORT1024_WITH_RC4_56_MD5 0x03000060 ) 159  #TLS1_CK_RSA_EXPORT1024_WITH_RC2_CBC_56_MD5 0x03000061 ) 160  #TLS1_CK_RSA_EXPORT1024_WITH_DES_CBC_SHA 0x03000062 ) 161  #TLS1_CK_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA 0x03000063 ) 162  #TLS1_CK_RSA_EXPORT1024_WITH_RC4_56_SHA 0x03000064 ) 163  #TLS1_CK_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA 0x03000065 ) 164  #TLS1_CK_DHE_DSS_WITH_RC4_128_SHA 0x03000066 ) 168  #TLS1_CK_RSA_WITH_AES_128_SHA 0x0300002F ) 169  #TLS1_CK_DH_DSS_WITH_AES_128_SHA 0x03000030 ) 170  #TLS1_CK_DH_RSA_WITH_AES_128_SHA 0x03000031 ) 171  #TLS1_CK_DHE_DSS_WITH_AES_128_SHA 0x03000032 ) 172  #TLS1_CK_DHE_RSA_WITH_AES_128_SHA 0x03000033 ) 173  #TLS1_CK_ADH_WITH_AES_128_SHA 0x03000034 ) 175  #TLS1_CK_RSA_WITH_AES_256_SHA 0x03000035 ) 176  #TLS1_CK_DH_DSS_WITH_AES_256_SHA 0x03000036 ) 177  #TLS1_CK_DH_RSA_WITH_AES_256_SHA 0x03000037 ) 178  #TLS1_CK_DHE_DSS_WITH_AES_256_SHA 0x03000038 ) 179  #TLS1_CK_DHE_RSA_WITH_AES_256_SHA 0x03000039 ) 180  #TLS1_CK_ADH_WITH_AES_256_SHA 0x0300003A ) 183  #TLS1_CK_RSA_WITH_CAMELLIA_128_CBC_SHA 0x03000041 ) 184  #TLS1_CK_DH_DSS_WITH_CAMELLIA_128_CBC_SHA 0x03000042 ) 185  #TLS1_CK_DH_RSA_WITH_CAMELLIA_128_CBC_SHA 0x03000043 ) 186  #TLS1_CK_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA 0x03000044 ) 187  #TLS1_CK_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA 0x03000045 ) 188  #TLS1_CK_ADH_WITH_CAMELLIA_128_CBC_SHA 0x03000046 ) 190  #TLS1_CK_RSA_WITH_CAMELLIA_256_CBC_SHA 0x03000084 ) 191  #TLS1_CK_DH_DSS_WITH_CAMELLIA_256_CBC_SHA 0x03000085 ) 192  #TLS1_CK_DH_RSA_WITH_CAMELLIA_256_CBC_SHA 0x03000086 ) 193  #TLS1_CK_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA 0x03000087 ) 194  #TLS1_CK_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA 0x03000088 ) 195  #TLS1_CK_ADH_WITH_CAMELLIA_256_CBC_SHA 0x03000089 ) 198  #TLS1_CK_RSA_WITH_SEED_SHA 0x03000096 ) 199  #TLS1_CK_DH_DSS_WITH_SEED_SHA 0x03000097 ) 200  #TLS1_CK_DH_RSA_WITH_SEED_SHA 0x03000098 ) 201  #TLS1_CK_DHE_DSS_WITH_SEED_SHA 0x03000099 ) 202  #TLS1_CK_DHE_RSA_WITH_SEED_SHA 0x0300009A ) 203  #TLS1_CK_ADH_WITH_SEED_SHA 0x0300009B ) 206  #TLS1_CK_ECDH_ECDSA_WITH_NULL_SHA 0x0300C001 ) 207  #TLS1_CK_ECDH_ECDSA_WITH_RC4_128_SHA 0x0300C002 ) 208  #TLS1_CK_ECDH_ECDSA_WITH_DES_192_CBC3_SHA 0x0300C003 ) 209  #TLS1_CK_ECDH_ECDSA_WITH_AES_128_CBC_SHA 0x0300C004 ) 210  #TLS1_CK_ECDH_ECDSA_WITH_AES_256_CBC_SHA 0x0300C005 ) 212  #TLS1_CK_ECDHE_ECDSA_WITH_NULL_SHA 0x0300C006 ) 213  #TLS1_CK_ECDHE_ECDSA_WITH_RC4_128_SHA 0x0300C007 ) 214  #TLS1_CK_ECDHE_ECDSA_WITH_DES_192_CBC3_SHA 0x0300C008 ) 215  #TLS1_CK_ECDHE_ECDSA_WITH_AES_128_CBC_SHA 0x0300C009 ) 216  #TLS1_CK_ECDHE_ECDSA_WITH_AES_256_CBC_SHA 0x0300C00A ) 218  #TLS1_CK_ECDH_RSA_WITH_NULL_SHA 0x0300C00B ) 219  #TLS1_CK_ECDH_RSA_WITH_RC4_128_SHA 0x0300C00C ) 220  #TLS1_CK_ECDH_RSA_WITH_DES_192_CBC3_SHA 0x0300C00D ) 221  #TLS1_CK_ECDH_RSA_WITH_AES_128_CBC_SHA 0x0300C00E ) 222  #TLS1_CK_ECDH_RSA_WITH_AES_256_CBC_SHA 0x0300C00F ) 224  #TLS1_CK_ECDHE_RSA_WITH_NULL_SHA 0x0300C010 ) 225  #TLS1_CK_ECDHE_RSA_WITH_RC4_128_SHA 0x0300C011 ) 226  #TLS1_CK_ECDHE_RSA_WITH_DES_192_CBC3_SHA 0x0300C012 ) 227  #TLS1_CK_ECDHE_RSA_WITH_AES_128_CBC_SHA 0x0300C013 ) 228  #TLS1_CK_ECDHE_RSA_WITH_AES_256_CBC_SHA 0x0300C014 ) 230  #TLS1_CK_ECDH_ªÚ_WITH_NULL_SHA 0x0300C015 ) 231  #TLS1_CK_ECDH_ªÚ_WITH_RC4_128_SHA 0x0300C016 ) 232  #TLS1_CK_ECDH_ªÚ_WITH_DES_192_CBC3_SHA 0x0300C017 ) 233  #TLS1_CK_ECDH_ªÚ_WITH_AES_128_CBC_SHA 0x0300C018 ) 234  #TLS1_CK_ECDH_ªÚ_WITH_AES_256_CBC_SHA 0x0300C019 ) 243  #TLS1_TXT_RSA_EXPORT1024_WITH_RC4_56_MD5 "EXP1024-RC4-MD5" ) 244  #TLS1_TXT_RSA_EXPORT1024_WITH_RC2_CBC_56_MD5 "EXP1024-RC2-CBC-MD5" ) 245  #TLS1_TXT_RSA_EXPORT1024_WITH_DES_CBC_SHA "EXP1024-DES-CBC-SHA" ) 246  #TLS1_TXT_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA "EXP1024-DHE-DSS-DES-CBC-SHA" ) 247  #TLS1_TXT_RSA_EXPORT1024_WITH_RC4_56_SHA "EXP1024-RC4-SHA" ) 248  #TLS1_TXT_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA "EXP1024-DHE-DSS-RC4-SHA" ) 249  #TLS1_TXT_DHE_DSS_WITH_RC4_128_SHA "DHE-DSS-RC4-SHA" ) 252  #TLS1_TXT_RSA_WITH_AES_128_SHA "AES128-SHA" ) 253  #TLS1_TXT_DH_DSS_WITH_AES_128_SHA "DH-DSS-AES128-SHA" ) 254  #TLS1_TXT_DH_RSA_WITH_AES_128_SHA "DH-RSA-AES128-SHA" ) 255  #TLS1_TXT_DHE_DSS_WITH_AES_128_SHA "DHE-DSS-AES128-SHA" ) 256  #TLS1_TXT_DHE_RSA_WITH_AES_128_SHA "DHE-RSA-AES128-SHA" ) 257  #TLS1_TXT_ADH_WITH_AES_128_SHA "ADH-AES128-SHA" ) 259  #TLS1_TXT_RSA_WITH_AES_256_SHA "AES256-SHA" ) 260  #TLS1_TXT_DH_DSS_WITH_AES_256_SHA "DH-DSS-AES256-SHA" ) 261  #TLS1_TXT_DH_RSA_WITH_AES_256_SHA "DH-RSA-AES256-SHA" ) 262  #TLS1_TXT_DHE_DSS_WITH_AES_256_SHA "DHE-DSS-AES256-SHA" ) 263  #TLS1_TXT_DHE_RSA_WITH_AES_256_SHA "DHE-RSA-AES256-SHA" ) 264  #TLS1_TXT_ADH_WITH_AES_256_SHA "ADH-AES256-SHA" ) 267  #TLS1_TXT_ECDH_ECDSA_WITH_NULL_SHA "ECDH-ECDSA-NULL-SHA" ) 268  #TLS1_TXT_ECDH_ECDSA_WITH_RC4_128_SHA "ECDH-ECDSA-RC4-SHA" ) 269  #TLS1_TXT_ECDH_ECDSA_WITH_DES_192_CBC3_SHA "ECDH-ECDSA-DES-CBC3-SHA" ) 270  #TLS1_TXT_ECDH_ECDSA_WITH_AES_128_CBC_SHA "ECDH-ECDSA-AES128-SHA" ) 271  #TLS1_TXT_ECDH_ECDSA_WITH_AES_256_CBC_SHA "ECDH-ECDSA-AES256-SHA" ) 273  #TLS1_TXT_ECDHE_ECDSA_WITH_NULL_SHA "ECDHE-ECDSA-NULL-SHA" ) 274  #TLS1_TXT_ECDHE_ECDSA_WITH_RC4_128_SHA "ECDHE-ECDSA-RC4-SHA" ) 275  #TLS1_TXT_ECDHE_ECDSA_WITH_DES_192_CBC3_SHA "ECDHE-ECDSA-DES-CBC3-SHA" ) 276  #TLS1_TXT_ECDHE_ECDSA_WITH_AES_128_CBC_SHA "ECDHE-ECDSA-AES128-SHA" ) 277  #TLS1_TXT_ECDHE_ECDSA_WITH_AES_256_CBC_SHA "ECDHE-ECDSA-AES256-SHA" ) 279  #TLS1_TXT_ECDH_RSA_WITH_NULL_SHA "ECDH-RSA-NULL-SHA" ) 280  #TLS1_TXT_ECDH_RSA_WITH_RC4_128_SHA "ECDH-RSA-RC4-SHA" ) 281  #TLS1_TXT_ECDH_RSA_WITH_DES_192_CBC3_SHA "ECDH-RSA-DES-CBC3-SHA" ) 282  #TLS1_TXT_ECDH_RSA_WITH_AES_128_CBC_SHA "ECDH-RSA-AES128-SHA" ) 283  #TLS1_TXT_ECDH_RSA_WITH_AES_256_CBC_SHA "ECDH-RSA-AES256-SHA" ) 285  #TLS1_TXT_ECDHE_RSA_WITH_NULL_SHA "ECDHE-RSA-NULL-SHA" ) 286  #TLS1_TXT_ECDHE_RSA_WITH_RC4_128_SHA "ECDHE-RSA-RC4-SHA" ) 287  #TLS1_TXT_ECDHE_RSA_WITH_DES_192_CBC3_SHA "ECDHE-RSA-DES-CBC3-SHA" ) 288  #TLS1_TXT_ECDHE_RSA_WITH_AES_128_CBC_SHA "ECDHE-RSA-AES128-SHA" ) 289  #TLS1_TXT_ECDHE_RSA_WITH_AES_256_CBC_SHA "ECDHE-RSA-AES256-SHA" ) 291  #TLS1_TXT_ECDH_ªÚ_WITH_NULL_SHA "AECDH-NULL-SHA" ) 292  #TLS1_TXT_ECDH_ªÚ_WITH_RC4_128_SHA "AECDH-RC4-SHA" ) 293  #TLS1_TXT_ECDH_ªÚ_WITH_DES_192_CBC3_SHA "AECDH-DES-CBC3-SHA" ) 294  #TLS1_TXT_ECDH_ªÚ_WITH_AES_128_CBC_SHA "AECDH-AES128-SHA" ) 295  #TLS1_TXT_ECDH_ªÚ_WITH_AES_256_CBC_SHA "AECDH-AES256-SHA" ) 298  #TLS1_TXT_RSA_WITH_CAMELLIA_128_CBC_SHA "CAMELLIA128-SHA" ) 299  #TLS1_TXT_DH_DSS_WITH_CAMELLIA_128_CBC_SHA "DH-DSS-CAMELLIA128-SHA" ) 300  #TLS1_TXT_DH_RSA_WITH_CAMELLIA_128_CBC_SHA "DH-RSA-CAMELLIA128-SHA" ) 301  #TLS1_TXT_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA "DHE-DSS-CAMELLIA128-SHA" ) 302  #TLS1_TXT_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA "DHE-RSA-CAMELLIA128-SHA" ) 303  #TLS1_TXT_ADH_WITH_CAMELLIA_128_CBC_SHA "ADH-CAMELLIA128-SHA" ) 305  #TLS1_TXT_RSA_WITH_CAMELLIA_256_CBC_SHA "CAMELLIA256-SHA" ) 306  #TLS1_TXT_DH_DSS_WITH_CAMELLIA_256_CBC_SHA "DH-DSS-CAMELLIA256-SHA" ) 307  #TLS1_TXT_DH_RSA_WITH_CAMELLIA_256_CBC_SHA "DH-RSA-CAMELLIA256-SHA" ) 308  #TLS1_TXT_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA "DHE-DSS-CAMELLIA256-SHA" ) 309  #TLS1_TXT_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA "DHE-RSA-CAMELLIA256-SHA" ) 310  #TLS1_TXT_ADH_WITH_CAMELLIA_256_CBC_SHA "ADH-CAMELLIA256-SHA" ) 313  #TLS1_TXT_RSA_WITH_SEED_SHA "SEED-SHA" ) 314  #TLS1_TXT_DH_DSS_WITH_SEED_SHA "DH-DSS-SEED-SHA" ) 315  #TLS1_TXT_DH_RSA_WITH_SEED_SHA "DH-RSA-SEED-SHA" ) 316  #TLS1_TXT_DHE_DSS_WITH_SEED_SHA "DHE-DSS-SEED-SHA" ) 317  #TLS1_TXT_DHE_RSA_WITH_SEED_SHA "DHE-RSA-SEED-SHA" ) 318  #TLS1_TXT_ADH_WITH_SEED_SHA "ADH-SEED-SHA" ) 320  #TLS_CT_RSA_SIGN 1 ) 321  #TLS_CT_DSS_SIGN 2 ) 322  #TLS_CT_RSA_FIXED_DH 3 ) 323  #TLS_CT_DSS_FIXED_DH 4 ) 324  #TLS_CT_ECDSA_SIGN 64 ) 325  #TLS_CT_RSA_FIXED_ECDH 65 ) 326  #TLS_CT_ECDSA_FIXED_ECDH 66 ) 327  #TLS_CT_NUMBER 7 ) 329  #TLS1_FINISH_MAC_LENGTH 12 ) 331  #TLS_MD_MAX_CONST_SIZE 20 ) 332  #TLS_MD_CLIENT_FINISH_CONST "þ›Á fšished" ) 333  #TLS_MD_CLIENT_FINISH_CONST_SIZE 15 ) 334  #TLS_MD_SERVER_FINISH_CONST "£rv” fšished" ) 335  #TLS_MD_SERVER_FINISH_CONST_SIZE 15 ) 336  #TLS_MD_SERVER_WRITE_KEY_CONST "£rv” wr™key" ) 337  #TLS_MD_SERVER_WRITE_KEY_CONST_SIZE 16 ) 338  #TLS_MD_KEY_EXPANSION_CONST "keyƒx·nsiÚ" ) 339  #TLS_MD_KEY_EXPANSION_CONST_SIZE 13 ) 340  #TLS_MD_CLIENT_WRITE_KEY_CONST "þ›Á wr™key" ) 341  #TLS_MD_CLIENT_WRITE_KEY_CONST_SIZE 16 ) 342  #TLS_MD_SERVER_WRITE_KEY_CONST "£rv” wr™key" ) 343  #TLS_MD_SERVER_WRITE_KEY_CONST_SIZE 16 ) 344  #TLS_MD_IV_BLOCK_CONST "IV block" ) 345  #TLS_MD_IV_BLOCK_CONST_SIZE 8 ) 346  #TLS_MD_MASTER_SECRET_CONST "ma¡” seü‘" ) 347  #TLS_MD_MASTER_SECRET_CONST_SIZE 13 ) 349 #ifdeà CHARSET_EBCDIC 350 #undeà TLS_MD_CLIENT_FINISH_CONST 351  #TLS_MD_CLIENT_FINISH_CONST "\x63\x6c\x69\x65\x6e\x74\x20\x66\x69\x6e\x69\x73\x68\x65\x64" ) 352 #undeà TLS_MD_SERVER_FINISH_CONST 353  #TLS_MD_SERVER_FINISH_CONST "\x73\x65\x72\x76\x65\x72\x20\x66\x69\x6e\x69\x73\x68\x65\x64" ) 354 #undeà TLS_MD_SERVER_WRITE_KEY_CONST 355  #TLS_MD_SERVER_WRITE_KEY_CONST "\x73\x65\x72\x76\x65\x72\x20\x77\x72\x69\x74\x65\x20\x6b\x65\x79" ) 356 #undeà TLS_MD_KEY_EXPANSION_CONST 357  #TLS_MD_KEY_EXPANSION_CONST "\x6b\x65\x79\x20\x65\x78\x70\x61\x6e\x73\x69\x6f\x6e" ) 358 #undeà TLS_MD_CLIENT_WRITE_KEY_CONST 359  #TLS_MD_CLIENT_WRITE_KEY_CONST "\x63\x6c\x69\x65\x6e\x74\x20\x77\x72\x69\x74\x65\x20\x6b\x65\x79" ) 360 #undeà TLS_MD_SERVER_WRITE_KEY_CONST 361  #TLS_MD_SERVER_WRITE_KEY_CONST "\x73\x65\x72\x76\x65\x72\x20\x77\x72\x69\x74\x65\x20\x6b\x65\x79" ) 362 #undeà TLS_MD_IV_BLOCK_CONST 363  #TLS_MD_IV_BLOCK_CONST "\x49\x56\x20\x62\x6c\x6f\x63\x6b" ) 364 #undeà TLS_MD_MASTER_SECRET_CONST 365  #TLS_MD_MASTER_SECRET_CONST "\x6d\x61\x73\x74\x65\x72\x20\x73\x65\x63\x72\x65\x74" ) 368 #ifdeà __ýlu¥lus @/usr/include/openssl/x509.h 64 #iâdeà HEADER_X509_H 65  #HEADER_X509_H ) 67  ~<Ý’s¦/e_os2.h > 68  ~<Ý’s¦/symhacks.h > 69 #iâdeà OPENSSL_NO_BUFFER 70  ~<Ý’s¦/bufãr.h > 72 #iâdeà OPENSSL_NO_EVP 73  ~<Ý’s¦/evp.h > 75 #iâdeà OPENSSL_NO_BIO 76  ~<Ý’s¦/bio.h > 78  ~<Ý’s¦/¡ack.h > 79  ~<Ý’s¦/a¢1.h > 80  ~<Ý’s¦/§ã¡ack.h > 82 #iâdeà OPENSSL_NO_EC 83  ~<Ý’s¦/ec.h > 86 #iâdeà OPENSSL_NO_ECDSA 87  ~<Ý’s¦/ecd§.h > 90 #iâdeà OPENSSL_NO_ECDH 91  ~<Ý’s¦/ecdh.h > 94 #iâdeà OPENSSL_NO_DEPRECATED 95 #iâdeà OPENSSL_NO_RSA 96  ~<Ý’s¦/r§.h > 98 #iâdeà OPENSSL_NO_DSA 99  ~<Ý’s¦/d§.h > 101 #iâdeà OPENSSL_NO_DH 102  ~<Ý’s¦/dh.h > 106 #iâdeà OPENSSL_NO_SHA 107  ~<Ý’s¦/sha.h > 109  ~<Ý’s¦/os¦_typ.h > 111 #ifdeà __ýlu¥lus 115 #ifdeà OPENSSL_SYS_WIN32 117 #undeà X509_NAME 118 #undeà X509_CERT_PAIR 121  #X509_FILETYPE_PEM 1 ) 122  #X509_FILETYPE_ASN1 2 ) 123  #X509_FILETYPE_DEFAULT 3 ) 125  #X509v3_KU_DIGITAL_SIGNATURE 0x0080 ) 126  #X509v3_KU_NON_REPUDIATION 0x0040 ) 127  #X509v3_KU_KEY_ENCIPHERMENT 0x0020 ) 128  #X509v3_KU_DATA_ENCIPHERMENT 0x0010 ) 129  #X509v3_KU_KEY_AGREEMENT 0x0008 ) 130  #X509v3_KU_KEY_CERT_SIGN 0x0004 ) 131  #X509v3_KU_CRL_SIGN 0x0002 ) 132  #X509v3_KU_ENCIPHER_ONLY 0x0001 ) 133  #X509v3_KU_DECIPHER_ONLY 0x8000 ) 134  #X509v3_KU_UNDEF 0xffff ) 136  sX509_objeùs_¡ 138  nid ; 139 (* a2i )(); 140 (* i2a )(); 141 } tX509_OBJECTS ; 143  sX509_®gÜ_¡ 145 ASN1_OBJECT * ®gÜ™hm ; 146 ASN1_TYPE * ·¿m‘” ; 149 DECLARE_STACK_OF ( X509_ALGOR ) 150 DECLARE_ASN1_SET_OF ( X509_ALGOR ) 152  sX509_v®_¡ 154 ASN1_TIME * nÙBefÜe ; 155 ASN1_TIME * nÙAá” ; 156 } tX509_VAL ; 158  sX509_pubkey_¡ 160 X509_ALGOR * ®gÜ ; 161 ASN1_BIT_STRING * public_key ; 162 EVP_PKEY * pkey ; 163 } tX509_PUBKEY ; 165  sX509_sig_¡ 167 X509_ALGOR * ®gÜ ; 168 ASN1_OCTET_STRING * dige¡ ; 169 } tX509_SIG ; 171  sX509_Çme_’Œy_¡ 173 ASN1_OBJECT * objeù ; 174 ASN1_STRING * v®ue ; 175  £t ; 176  size ; 177 } tX509_NAME_ENTRY ; 179 DECLARE_STACK_OF ( X509_NAME_ENTRY ) 180 DECLARE_ASN1_SET_OF ( X509_NAME_ENTRY ) 183  sX509_Çme_¡ 185 STACK_OF ( X509_NAME_ENTRY è* ’Œ›s ; 186  modif›d ; 187 #iâdeà OPENSSL_NO_BUFFER 188 BUF_MEM * by‹s ; 190 * by‹s ; 192  hash ; 195 DECLARE_STACK_OF ( X509_NAME ) 197  #X509_EX_V_NETSCAPE_HACK 0x8000 ) 198  #X509_EX_V_INIT 0x0001 ) 199  sX509_ex‹nsiÚ_¡ 201 ASN1_OBJECT * objeù ; 202 ASN1_BOOLEAN ü™iÿl ; 203 ASN1_OCTET_STRING * v®ue ; 204 } tX509_EXTENSION ; 206 DECLARE_STACK_OF ( X509_EXTENSION ) 207 DECLARE_ASN1_SET_OF ( X509_EXTENSION ) 210  sx509_©Œibu‹s_¡ 212 ASN1_OBJECT * objeù ; 213  sšgË ; 215 * ±r ; 216 STACK_OF ( ASN1_TYPE è* £t ; 217 ASN1_TYPE * sšgË ; 218 } v®ue ; 219 } tX509_ATTRIBUTE ; 221 DECLARE_STACK_OF ( X509_ATTRIBUTE ) 222 DECLARE_ASN1_SET_OF ( X509_ATTRIBUTE ) 225  sX509_»q_šfo_¡ 227 ASN1_ENCODING ’c ; 228 ASN1_INTEGER * v”siÚ ; 229 X509_NAME * subjeù ; 230 X509_PUBKEY * pubkey ; 232 STACK_OF ( X509_ATTRIBUTE è* ©Œibu‹s ; 233 } tX509_REQ_INFO ; 235  sX509_»q_¡ 237 X509_REQ_INFO * »q_šfo ; 238 X509_ALGOR * sig_®g ; 239 ASN1_BIT_STRING * sigÇtu» ; 240  »ã»nûs ; 241 } tX509_REQ ; 243  sx509_cšf_¡ 245 ASN1_INTEGER * v”siÚ ; 246 ASN1_INTEGER * £rŸlNumb” ; 247 X509_ALGOR * sigÇtu» ; 248 X509_NAME * issu” ; 249 X509_VAL * v®id™y ; 250 X509_NAME * subjeù ; 251 X509_PUBKEY * key ; 252 ASN1_BIT_STRING * issu”UID ; 253 ASN1_BIT_STRING * subjeùUID ; 254 STACK_OF ( X509_EXTENSION è* ex‹nsiÚs ; 255 } tX509_CINF ; 263  sx509_û¹_aux_¡ 265 STACK_OF ( ASN1_OBJECT è* Œu¡ ; 266 STACK_OF ( ASN1_OBJECT è* »jeù ; 267 ASN1_UTF8STRING * ®Ÿs ; 268 ASN1_OCTET_STRING * keyid ; 269 STACK_OF ( X509_ALGOR è* Ùh” ; 270 } tX509_CERT_AUX ; 272  sx509_¡ 274 X509_CINF * û¹_šfo ; 275 X509_ALGOR * sig_®g ; 276 ASN1_BIT_STRING * sigÇtu» ; 277  v®id ; 278  »ã»nûs ; 279 * Çme ; 280 CRYPTO_EX_DATA ex_d©a ; 282  ex_·thËn ; 283  ex_pý©hËn ; 284  ex_æags ; 285  ex_ku§ge ; 286  ex_xku§ge ; 287  ex_nsû¹ ; 288 ASN1_OCTET_STRING * skid ; 289  AUTHORITY_KEYID_¡ * akid ; 290 X509_POLICY_CACHE * pÞicy_ÿche ; 291 #iâdeà OPENSSL_NO_RFC3779 292 STACK_OF ( IPAdd»ssFamžy è* rfc3779_addr ; 293  ASId’tif›rs_¡ * rfc3779_asid ; 295 #iâdeà OPENSSL_NO_SHA 296  sha1_hash [ SHA_DIGEST_LENGTH ]; 298 X509_CERT_AUX * aux ; 301 DECLARE_STACK_OF ( X509 ) 302 DECLARE_ASN1_SET_OF ( X509 ) 306  sx509_Œu¡_¡ { 307  Œu¡ ; 308  æags ; 309 (* check_Œu¡ )( x509_Œu¡_¡ *, X509 *, ); 310 * Çme ; 311  ¬g1 ; 312 * ¬g2 ; 313 } tX509_TRUST ; 315 DECLARE_STACK_OF ( X509_TRUST ) 317  sx509_û¹_·œ_¡ { 318 X509 * fÜw¬d ; 319 X509 * »v”£ ; 320 } tX509_CERT_PAIR ; 324  #X509_TRUST_DEFAULT -1 ) 326  #X509_TRUST_COMPAT 1 ) 327  #X509_TRUST_SSL_CLIENT 2 ) 328  #X509_TRUST_SSL_SERVER 3 ) 329  #X509_TRUST_EMAIL 4 ) 330  #X509_TRUST_OBJECT_SIGN 5 ) 331  #X509_TRUST_OCSP_SIGN 6 ) 332  #X509_TRUST_OCSP_REQUEST 7 ) 335  #X509_TRUST_MIN 1 ) 336  #X509_TRUST_MAX 7 ) 340  #X509_TRUST_DYNAMIC 1 ) 341  #X509_TRUST_DYNAMIC_NAME 2 ) 345  #X509_TRUST_TRUSTED 1 ) 346  #X509_TRUST_REJECTED 2 ) 347  #X509_TRUST_UNTRUSTED 3 ) 351  #X509_FLAG_COMPAT 0 ) 352  #X509_FLAG_NO_HEADER 1L ) 353  #X509_FLAG_NO_VERSION (1L << 1) ) 354  #X509_FLAG_NO_SERIAL (1L << 2) ) 355  #X509_FLAG_NO_SIGNAME (1L << 3) ) 356  #X509_FLAG_NO_ISSUER (1L << 4) ) 357  #X509_FLAG_NO_VALIDITY (1L << 5) ) 358  #X509_FLAG_NO_SUBJECT (1L << 6) ) 359  #X509_FLAG_NO_PUBKEY (1L << 7) ) 360  #X509_FLAG_NO_EXTENSIONS (1L << 8) ) 361  #X509_FLAG_NO_SIGDUMP (1L << 9) ) 362  #X509_FLAG_NO_AUX (1L << 10) ) 363  #X509_FLAG_NO_ATTRIBUTES (1L << 11) ) 369  #XN_FLAG_SEP_MASK (0xà<< 16) ) 371  #XN_FLAG_COMPAT 0 ) 372  #XN_FLAG_SEP_COMMA_PLUS (1 << 16è ) 373  #XN_FLAG_SEP_CPLUS_SPC (2 << 16è ) 374  #XN_FLAG_SEP_SPLUS_SPC (3 << 16è ) 375  #XN_FLAG_SEP_MULTILINE (4 << 16è ) 377  #XN_FLAG_DN_REV (1 << 20è ) 381  #XN_FLAG_FN_MASK (0x3 << 21) ) 383  #XN_FLAG_FN_SN 0 ) 384  #XN_FLAG_FN_LN (1 << 21è ) 385  #XN_FLAG_FN_OID (2 << 21è ) 386  #XN_FLAG_FN_NONE (3 << 21è ) 388  #XN_FLAG_SPC_EQ (1 << 23è ) 394  #XN_FLAG_DUMP_UNKNOWN_FIELDS (1 << 24) ) 396  #XN_FLAG_FN_ALIGN (1 << 25è ) 400  #XN_FLAG_RFC2253 ( ASN1_STRFLGS_RFC2253 | \ 401 XN_FLAG_SEP_COMMA_PLUS | \ 402 XN_FLAG_DN_REV | \ 403 XN_FLAG_FN_SN | \ 404 XN_FLAG_DUMP_UNKNOWN_FIELDS ) ) 408  #XN_FLAG_ONELINE ( ASN1_STRFLGS_RFC2253 | \ 409 ASN1_STRFLGS_ESC_QUOTE | \ 410 XN_FLAG_SEP_CPLUS_SPC | \ 411 XN_FLAG_SPC_EQ | \ 412 XN_FLAG_FN_SN ) ) 416  #XN_FLAG_MULTILINE ( ASN1_STRFLGS_ESC_CTRL | \ 417 ASN1_STRFLGS_ESC_MSB | \ 418 XN_FLAG_SEP_MULTILINE | \ 419 XN_FLAG_SPC_EQ | \ 420 XN_FLAG_FN_LN | \ 421 XN_FLAG_FN_ALIGN ) ) 423  sX509_»voked_¡ 425 ASN1_INTEGER * £rŸlNumb” ; 426 ASN1_TIME * »voÿtiÚD©e ; 427 STACK_OF ( X509_EXTENSION è * ex‹nsiÚs ; 428  £qu’û ; 429 } tX509_REVOKED ; 431 DECLARE_STACK_OF ( X509_REVOKED ) 432 DECLARE_ASN1_SET_OF ( X509_REVOKED ) 434  sX509_ül_šfo_¡ 436 ASN1_INTEGER * v”siÚ ; 437 X509_ALGOR * sig_®g ; 438 X509_NAME * issu” ; 439 ASN1_TIME * Ï¡Upd©e ; 440 ASN1_TIME * ÃxtUpd©e ; 441 STACK_OF ( X509_REVOKED è* »voked ; 442 STACK_OF ( X509_EXTENSION è * ex‹nsiÚs ; 443 ASN1_ENCODING ’c ; 444 } tX509_CRL_INFO ; 446  sX509_ül_¡ 449 X509_CRL_INFO * ül ; 450 X509_ALGOR * sig_®g ; 451 ASN1_BIT_STRING * sigÇtu» ; 452  »ã»nûs ; 455 DECLARE_STACK_OF ( X509_CRL ) 456 DECLARE_ASN1_SET_OF ( X509_CRL ) 458  s´iv©e_key_¡ 460  v”siÚ ; 462 X509_ALGOR * ’c_®gÜ ; 463 ASN1_OCTET_STRING * ’c_pkey ; 466 EVP_PKEY * dec_pkey ; 469  key_Ëngth ; 470 * key_d©a ; 471  key_ä“ ; 474 EVP_CIPHER_INFO ch” ; 476  »ã»nûs ; 477 } tX509_PKEY ; 479 #iâdeà OPENSSL_NO_EVP 480  sX509_šfo_¡ 482 X509 * x509 ; 483 X509_CRL * ül ; 484 X509_PKEY * x_pkey ; 486 EVP_CIPHER_INFO ’c_ch” ; 487  ’c_Ën ; 488 * ’c_d©a ; 490  »ã»nûs ; 491 } tX509_INFO ; 493 DECLARE_STACK_OF ( X509_INFO ) 500  sN‘sÿ³_¥kac_¡ 502 X509_PUBKEY * pubkey ; 503 ASN1_IA5STRING * ch®Ënge ; 504 } tNETSCAPE_SPKAC ; 506  sN‘sÿ³_¥ki_¡ 508 NETSCAPE_SPKAC * ¥kac ; 509 X509_ALGOR * sig_®gÜ ; 510 ASN1_BIT_STRING * sigÇtu» ; 511 } tNETSCAPE_SPKI ; 514  sN‘sÿ³_û¹ifiÿ‹_£qu’û 516 ASN1_OBJECT * ty³ ; 517 STACK_OF ( X509 è* û¹s ; 518 } tNETSCAPE_CERT_SEQUENCE ; 529  sPBEPARAM_¡ { 530 ASN1_OCTET_STRING * §É ; 531 ASN1_INTEGER * ™” ; 532 } tPBEPARAM ; 536  sPBE2PARAM_¡ { 537 X509_ALGOR * keyfunc ; 538 X509_ALGOR * ’üy±iÚ ; 539 } tPBE2PARAM ; 541  sPBKDF2PARAM_¡ { 542 ASN1_TYPE * §É ; 543 ASN1_INTEGER * ™” ; 544 ASN1_INTEGER * keyËngth ; 545 X509_ALGOR * ´f ; 546 } tPBKDF2PARAM ; 551  spkcs8_´iv_key_šfo_¡ 553  brok’ ; 554  #PKCS8_OK 0 ) 555  #PKCS8_NO_OCTET 1 ) 556  #PKCS8_EMBEDDED_PARAM 2 ) 557  #PKCS8_NS_DB 3 ) 558 ASN1_INTEGER * v”siÚ ; 559 X509_ALGOR * pkey®g ; 560 ASN1_TYPE * pkey ; 561 STACK_OF ( X509_ATTRIBUTE è* ©Œibu‹s ; 562 } tPKCS8_PRIV_KEY_INFO ; 564 #ifdeà __ýlu¥lus 568  ~<Ý’s¦/x509_vfy.h > 569  ~<Ý’s¦/pkcs7.h > 571 #ifdeà __ýlu¥lus 575 #ifdeà SSLEAY_MACROS 576  #X509_v”ify ( a , r è `ASN1_v”ify (((*)()) i2d_X509_CINF ,a-> sig_®g ,\ 577 a -> sigÇtu» ,(*ï-> û¹_šfo , r ) ) 578  #X509_REQ_v”ify ( a , r è `ASN1_v”ify (((*)()) i2d_X509_REQ_INFO , \ 579 a -> sig_®g ,a-> sigÇtu» ,(*ï-> »q_šfo , r ) ) 580  #X509_CRL_v”ify ( a , r è `ASN1_v”ify (((*)()) i2d_X509_CRL_INFO , \ 581 a -> sig_®g ,‡-> sigÇtu» ,(*ï-> ül , r ) ) 583  #X509_sign ( x , pkey , md ) \ 584 `ASN1_sign (((*)()) i2d_X509_CINF , x -> û¹_šfo -> sigÇtu» , \ 585 x -> sig_®g , x-> sigÇtu» , (*)x-> û¹_šfo , pkey , md ) ) 586  #X509_REQ_sign ( x , pkey , md ) \ 587 `ASN1_sign (((*)()) i2d_X509_REQ_INFO , x -> sig_®g , NULL , \ 588 x -> sigÇtu» , (*)x-> »q_šfo , pkey , md ) ) 589  #X509_CRL_sign ( x , pkey , md ) \ 590 `ASN1_sign (((*)()) i2d_X509_CRL_INFO , x -> ül -> sig_®g ,x->sig_alg, \ 591 x -> sigÇtu» , (*)x-> ül , pkey , md ) ) 592  #NETSCAPE_SPKI_sign ( x , pkey , md ) \ 593 `ASN1_sign (((*)()) i2d_NETSCAPE_SPKAC , x -> sig_®gÜ , NULL , \ 594 x -> sigÇtu» , (*)x-> ¥kac , pkey , md ) ) 596  #X509_dup ( x509 è( X509 *) `ASN1_dup (((*)()) i2d_X509 , \ 597 (*(*)()) d2i_X509 ,(*) x509 ) ) 598  #X509_ATTRIBUTE_dup ( xa è( X509_ATTRIBUTE *) `ASN1_dup (\ 599 ((*)()) i2d_X509_ATTRIBUTE , \ 600 (*(*)()) d2i_X509_ATTRIBUTE ,(*) xa ) ) 601  #X509_EXTENSION_dup ( ex è( X509_EXTENSION *) `ASN1_dup ( \ 602 ((*)()) i2d_X509_EXTENSION , \ 603 (*(*)()) d2i_X509_EXTENSION ,(*) ex ) ) 604  #d2i_X509_å ( å , x509 è( X509 *) `ASN1_d2i_å ((*(*)()) X509_Ãw , \ 605 (*(*)()) d2i_X509 , ( å ),(**)( x509 )) ) 606  #i2d_X509_å ( å , x509 è `ASN1_i2d_å ( i2d_X509 ,å,(*)x509) ) 607  #d2i_X509_bio ( bp , x509 è( X509 *) `ASN1_d2i_bio ((*(*)()) X509_Ãw , \ 608 (*(*)()) d2i_X509 , ( bp ),(**)( x509 )) ) 609  #i2d_X509_bio ( bp , x509 è `ASN1_i2d_bio ( i2d_X509 ,bp,(*)x509) ) 611  #X509_CRL_dup ( ül è( X509_CRL *) `ASN1_dup (((*)()) i2d_X509_CRL , \ 612 (*(*)()) d2i_X509_CRL ,(*) ül ) ) 613  #d2i_X509_CRL_å ( å , ül è( X509_CRL *) `ASN1_d2i_å ((*(*)()) \ 614 X509_CRL_Ãw ,(*(*)()) d2i_X509_CRL , ( å ),\ 615 (**)( ül )) ) 616  #i2d_X509_CRL_å ( å , ül è `ASN1_i2d_å ( i2d_X509_CRL ,fp,\ 617 (*) ül ) ) 618  #d2i_X509_CRL_bio ( bp , ül è( X509_CRL *) `ASN1_d2i_bio ((*(*)()) \ 619 X509_CRL_Ãw ,(*(*)()) d2i_X509_CRL , ( bp ),\ 620 (**)( ül )) ) 621  #i2d_X509_CRL_bio ( bp , ül è `ASN1_i2d_bio ( i2d_X509_CRL ,bp,\ 622 (*) ül ) ) 624  #PKCS7_dup ( p7 è( PKCS7 *) `ASN1_dup (((*)()) i2d_PKCS7 , \ 625 (*(*)()) d2i_PKCS7 ,(*) p7 ) ) 626  #d2i_PKCS7_å ( å , p7 è( PKCS7 *) `ASN1_d2i_å ((*(*)()) \ 627 PKCS7_Ãw ,(*(*)()) d2i_PKCS7 , ( å ),\ 628 (**)( p7 )) ) 629  #i2d_PKCS7_å ( å , p7 è `ASN1_i2d_å ( i2d_PKCS7 ,fp,\ 630 (*) p7 ) ) 631  #d2i_PKCS7_bio ( bp , p7 è( PKCS7 *) `ASN1_d2i_bio ((*(*)()) \ 632 PKCS7_Ãw ,(*(*)()) d2i_PKCS7 , ( bp ),\ 633 (**)( p7 )) ) 634  #i2d_PKCS7_bio ( bp , p7 è `ASN1_i2d_bio ( i2d_PKCS7 ,bp,\ 635 (*) p7 ) ) 637  #X509_REQ_dup ( »q è( X509_REQ *) `ASN1_dup (((*)()) i2d_X509_REQ , \ 638 (*(*)()) d2i_X509_REQ ,(*) »q ) ) 639  #d2i_X509_REQ_å ( å , »q è( X509_REQ *) `ASN1_d2i_å ((*(*)())\ 640 X509_REQ_Ãw , (*(*)()) d2i_X509_REQ , ( å ),\ 641 (**)( »q )) ) 642  #i2d_X509_REQ_å ( å , »q è `ASN1_i2d_å ( i2d_X509_REQ ,fp,\ 643 (*) »q ) ) 644  #d2i_X509_REQ_bio ( bp , »q è( X509_REQ *) `ASN1_d2i_bio ((*(*)())\ 645 X509_REQ_Ãw , (*(*)()) d2i_X509_REQ , ( bp ),\ 646 (**)( »q )) ) 647  #i2d_X509_REQ_bio ( bp , »q è `ASN1_i2d_bio ( i2d_X509_REQ ,bp,\ 648 (*) »q ) ) 650  #RSAPublicKey_dup ( r§ è( RSA *) `ASN1_dup (((*)()) i2d_RSAPublicKey , \ 651 (*(*)()) d2i_RSAPublicKey ,(*) r§ ) ) 652  #RSAPriv©eKey_dup ( r§ è( RSA *) `ASN1_dup (((*)()) i2d_RSAPriv©eKey , \ 653 (*(*)()) d2i_RSAPriv©eKey ,(*) r§ ) ) 655  #d2i_RSAPriv©eKey_å ( å , r§ è( RSA *) `ASN1_d2i_å ((*(*)())\ 656 RSA_Ãw ,(*(*)()) d2i_RSAPriv©eKey , ( å ), \ 657 (**)( r§ )) ) 658  #i2d_RSAPriv©eKey_å ( å , r§ è `ASN1_i2d_å ( i2d_RSAPriv©eKey ,fp, \ 659 (*) r§ ) ) 660  #d2i_RSAPriv©eKey_bio ( bp , r§ è( RSA *) `ASN1_d2i_bio ((*(*)())\ 661 RSA_Ãw ,(*(*)()) d2i_RSAPriv©eKey , ( bp ), \ 662 (**)( r§ )) ) 663  #i2d_RSAPriv©eKey_bio ( bp , r§ è `ASN1_i2d_bio ( i2d_RSAPriv©eKey ,bp, \ 664 (*) r§ ) ) 666  #d2i_RSAPublicKey_å ( å , r§ è( RSA *) `ASN1_d2i_å ((*(*)())\ 667 RSA_Ãw ,(*(*)()) d2i_RSAPublicKey , ( å ), \ 668 (**)( r§ )) ) 669  #i2d_RSAPublicKey_å ( å , r§ è `ASN1_i2d_å ( i2d_RSAPublicKey ,fp, \ 670 (*) r§ ) ) 671  #d2i_RSAPublicKey_bio ( bp , r§ è( RSA *) `ASN1_d2i_bio ((*(*)())\ 672 RSA_Ãw ,(*(*)()) d2i_RSAPublicKey , ( bp ), \ 673 (**)( r§ )) ) 674  #i2d_RSAPublicKey_bio ( bp , r§ è `ASN1_i2d_bio ( i2d_RSAPublicKey ,bp, \ 675 (*) r§ ) ) 677  #d2i_DSAPriv©eKey_å ( å , d§ è( DSA *) `ASN1_d2i_å ((*(*)())\ 678 DSA_Ãw ,(*(*)()) d2i_DSAPriv©eKey , ( å ), \ 679 (**)( d§ )) ) 680  #i2d_DSAPriv©eKey_å ( å , d§ è `ASN1_i2d_å ( i2d_DSAPriv©eKey ,fp, \ 681 (*) d§ ) ) 682  #d2i_DSAPriv©eKey_bio ( bp , d§ è( DSA *) `ASN1_d2i_bio ((*(*)())\ 683 DSA_Ãw ,(*(*)()) d2i_DSAPriv©eKey , ( bp ), \ 684 (**)( d§ )) ) 685  #i2d_DSAPriv©eKey_bio ( bp , d§ è `ASN1_i2d_bio ( i2d_DSAPriv©eKey ,bp, \ 686 (*) d§ ) ) 688  #d2i_ECPriv©eKey_å ( å , ecd§ è( EC_KEY *) `ASN1_d2i_å ((*(*)())\ 689 EC_KEY_Ãw ,(*(*)()) d2i_ECPriv©eKey , ( å ), \ 690 (**)( ecd§ )) ) 691  #i2d_ECPriv©eKey_å ( å , ecd§ è `ASN1_i2d_å ( i2d_ECPriv©eKey ,fp, \ 692 (*) ecd§ ) ) 693  #d2i_ECPriv©eKey_bio ( bp , ecd§ è( EC_KEY *) `ASN1_d2i_bio ((*(*)())\ 694 EC_KEY_Ãw ,(*(*)()) d2i_ECPriv©eKey , ( bp ), \ 695 (**)( ecd§ )) ) 696  #i2d_ECPriv©eKey_bio ( bp , ecd§ è `ASN1_i2d_bio ( i2d_ECPriv©eKey ,bp, \ 697 (*) ecd§ ) ) 699  #X509_ALGOR_dup ( xn è( X509_ALGOR *) `ASN1_dup (((*)()) i2d_X509_ALGOR ,\ 700 (*(*)()) d2i_X509_ALGOR ,(*) xn ) ) 702  #X509_NAME_dup ( xn è( X509_NAME *) `ASN1_dup (((*)()) i2d_X509_NAME , \ 703 (*(*)()) d2i_X509_NAME ,(*) xn ) ) 704  #X509_NAME_ENTRY_dup ( à è( X509_NAME_ENTRY *) `ASN1_dup ( \ 705 ((*)()) i2d_X509_NAME_ENTRY , \ 706 (*(*)()) d2i_X509_NAME_ENTRY ,\ 707 (*) à ) ) 709  #X509_dige¡ ( d©a , ty³ , md , Ën ) \ 710 `ASN1_dige¡ (((*)()) i2d_X509 , ty³ ,(*) d©a , md , Ën ) ) 711  #X509_NAME_dige¡ ( d©a , ty³ , md , Ën ) \ 712 `ASN1_dige¡ (((*)()) i2d_X509_NAME , ty³ ,(*) d©a , md , Ën ) ) 713 #iâdeà PKCS7_ISSUER_AND_SERIAL_dige¡ 714  #PKCS7_ISSUER_AND_SERIAL_dige¡ ( d©a , ty³ , md , Ën ) \ 715 `ASN1_dige¡ (((*)()) i2d_PKCS7_ISSUER_AND_SERIAL , ty³ ,\ 716 (*) d©a , md , Ën ) ) 720  #X509_EXT_PACK_UNKNOWN 1 ) 721  #X509_EXT_PACK_STRING 2 ) 723  #X509_g‘_v”siÚ ( x è `ASN1_INTEGER_g‘ ((x)-> û¹_šfo -> v”siÚ ) ) 725  #X509_g‘_nÙBefÜe ( x è((x)-> û¹_šfo -> v®id™y -> nÙBefÜe ) ) 726  #X509_g‘_nÙAá” ( x è((x)-> û¹_šfo -> v®id™y -> nÙAá” ) ) 727  #X509_exŒaù_key ( x è `X509_g‘_pubkey (xè ) 728  #X509_REQ_g‘_v”siÚ ( x è `ASN1_INTEGER_g‘ ((x)-> »q_šfo -> v”siÚ ) ) 729  #X509_REQ_g‘_subjeù_Çme ( x è((x)-> »q_šfo -> subjeù ) ) 730  #X509_REQ_exŒaù_key ( a è `X509_REQ_g‘_pubkey ×) ) 731  #X509_Çme_cmp ( a , b è `X509_NAME_cmp (×),(b)) ) 732  #X509_g‘_sigÇtu»_ty³ ( x è `EVP_PKEY_ty³ ( `OBJ_obj2nid ((x)-> sig_®g -> ®gÜ™hm )) ) 734  #X509_CRL_g‘_v”siÚ ( x è `ASN1_INTEGER_g‘ ((x)-> ül -> v”siÚ ) ) 735  #X509_CRL_g‘_Ï¡Upd©e ( x è((x)-> ül -> Ï¡Upd©e ) ) 736  #X509_CRL_g‘_ÃxtUpd©e ( x è((x)-> ül -> ÃxtUpd©e ) ) 737  #X509_CRL_g‘_issu” ( x è((x)-> ül -> issu” ) ) 738  #X509_CRL_g‘_REVOKED ( x è((x)-> ül -> »voked ) ) 742  #X509_g‘_X509_PUBKEY ( x è((x)-> û¹_šfo -> key ) ) 745 cÚ¡ * X509_v”ify_û¹_”rÜ_¡ršg ( n ); 747 #iâdeà SSLEAY_MACROS 748 #iâdeà OPENSSL_NO_EVP 749  X509_v”ify ( X509 * a , EVP_PKEY * r ); 751  X509_REQ_v”ify ( X509_REQ * a , EVP_PKEY * r ); 752  X509_CRL_v”ify ( X509_CRL * a , EVP_PKEY * r ); 753  NETSCAPE_SPKI_v”ify ( NETSCAPE_SPKI * a , EVP_PKEY * r ); 755 NETSCAPE_SPKI * NETSCAPE_SPKI_b64_decode (cÚ¡ * ¡r ,  Ën ); 756 * NETSCAPE_SPKI_b64_’code ( NETSCAPE_SPKI * x ); 757 EVP_PKEY * NETSCAPE_SPKI_g‘_pubkey ( NETSCAPE_SPKI * x ); 758  NETSCAPE_SPKI_£t_pubkey ( NETSCAPE_SPKI * x , EVP_PKEY * pkey ); 760  NETSCAPE_SPKI_´št ( BIO * out , NETSCAPE_SPKI * ¥ki ); 762  X509_sigÇtu»_´št ( BIO * bp , X509_ALGOR * ®g , ASN1_STRING * sig ); 764  X509_sign ( X509 * x , EVP_PKEY * pkey , cÚ¡ EVP_MD * md ); 765  X509_REQ_sign ( X509_REQ * x , EVP_PKEY * pkey , cÚ¡ EVP_MD * md ); 766  X509_CRL_sign ( X509_CRL * x , EVP_PKEY * pkey , cÚ¡ EVP_MD * md ); 767  NETSCAPE_SPKI_sign ( NETSCAPE_SPKI * x , EVP_PKEY * pkey , cÚ¡ EVP_MD * md ); 769  X509_pubkey_dige¡ (cÚ¡ X509 * d©a ,cÚ¡ EVP_MD * ty³ , 770 * md , * Ën ); 771  X509_dige¡ (cÚ¡ X509 * d©a ,cÚ¡ EVP_MD * ty³ , 772 * md , * Ën ); 773  X509_CRL_dige¡ (cÚ¡ X509_CRL * d©a ,cÚ¡ EVP_MD * ty³ , 774 * md , * Ën ); 775  X509_REQ_dige¡ (cÚ¡ X509_REQ * d©a ,cÚ¡ EVP_MD * ty³ , 776 * md , * Ën ); 777  X509_NAME_dige¡ (cÚ¡ X509_NAME * d©a ,cÚ¡ EVP_MD * ty³ , 778 * md , * Ën ); 781 #iâdeà OPENSSL_NO_FP_API 782 X509 * d2i_X509_å ( FILE * å , X509 ** x509 ); 783  i2d_X509_å ( FILE * å , X509 * x509 ); 784 X509_CRL * d2i_X509_CRL_å ( FILE * å ,X509_CRL ** ül ); 785  i2d_X509_CRL_å ( FILE * å , X509_CRL * ül ); 786 X509_REQ * d2i_X509_REQ_å ( FILE * å ,X509_REQ ** »q ); 787  i2d_X509_REQ_å ( FILE * å , X509_REQ * »q ); 788 #iâdeà OPENSSL_NO_RSA 789 RSA * d2i_RSAPriv©eKey_å ( FILE * å ,RSA ** r§ ); 790  i2d_RSAPriv©eKey_å ( FILE * å , RSA * r§ ); 791 RSA * d2i_RSAPublicKey_å ( FILE * å ,RSA ** r§ ); 792  i2d_RSAPublicKey_å ( FILE * å , RSA * r§ ); 793 RSA * d2i_RSA_PUBKEY_å ( FILE * å ,RSA ** r§ ); 794  i2d_RSA_PUBKEY_å ( FILE * å , RSA * r§ ); 796 #iâdeà OPENSSL_NO_DSA 797 DSA * d2i_DSA_PUBKEY_å ( FILE * å , DSA ** d§ ); 798  i2d_DSA_PUBKEY_å ( FILE * å , DSA * d§ ); 799 DSA * d2i_DSAPriv©eKey_å ( FILE * å , DSA ** d§ ); 800  i2d_DSAPriv©eKey_å ( FILE * å , DSA * d§ ); 802 #iâdeà OPENSSL_NO_EC 803 EC_KEY * d2i_EC_PUBKEY_å ( FILE * å , EC_KEY ** eckey ); 804  i2d_EC_PUBKEY_å ( FILE * å , EC_KEY * eckey ); 805 EC_KEY * d2i_ECPriv©eKey_å ( FILE * å , EC_KEY ** eckey ); 806  i2d_ECPriv©eKey_å ( FILE * å , EC_KEY * eckey ); 808 X509_SIG * d2i_PKCS8_å ( FILE * å ,X509_SIG ** p8 ); 809  i2d_PKCS8_å ( FILE * å , X509_SIG * p8 ); 810 PKCS8_PRIV_KEY_INFO * d2i_PKCS8_PRIV_KEY_INFO_å ( FILE * å , 811 PKCS8_PRIV_KEY_INFO ** p8šf ); 812  i2d_PKCS8_PRIV_KEY_INFO_å ( FILE * å , PKCS8_PRIV_KEY_INFO * p8šf ); 813  i2d_PKCS8Priv©eKeyInfo_å ( FILE * å , EVP_PKEY * key ); 814  i2d_Priv©eKey_å ( FILE * å , EVP_PKEY * pkey ); 815 EVP_PKEY * d2i_Priv©eKey_å ( FILE * å , EVP_PKEY ** a ); 816  i2d_PUBKEY_å ( FILE * å , EVP_PKEY * pkey ); 817 EVP_PKEY * d2i_PUBKEY_å ( FILE * å , EVP_PKEY ** a ); 820 #iâdeà OPENSSL_NO_BIO 821 X509 * d2i_X509_bio ( BIO * bp ,X509 ** x509 ); 822  i2d_X509_bio ( BIO * bp , X509 * x509 ); 823 X509_CRL * d2i_X509_CRL_bio ( BIO * bp ,X509_CRL ** ül ); 824  i2d_X509_CRL_bio ( BIO * bp , X509_CRL * ül ); 825 X509_REQ * d2i_X509_REQ_bio ( BIO * bp ,X509_REQ ** »q ); 826  i2d_X509_REQ_bio ( BIO * bp , X509_REQ * »q ); 827 #iâdeà OPENSSL_NO_RSA 828 RSA * d2i_RSAPriv©eKey_bio ( BIO * bp ,RSA ** r§ ); 829  i2d_RSAPriv©eKey_bio ( BIO * bp , RSA * r§ ); 830 RSA * d2i_RSAPublicKey_bio ( BIO * bp ,RSA ** r§ ); 831  i2d_RSAPublicKey_bio ( BIO * bp , RSA * r§ ); 832 RSA * d2i_RSA_PUBKEY_bio ( BIO * bp ,RSA ** r§ ); 833  i2d_RSA_PUBKEY_bio ( BIO * bp , RSA * r§ ); 835 #iâdeà OPENSSL_NO_DSA 836 DSA * d2i_DSA_PUBKEY_bio ( BIO * bp , DSA ** d§ ); 837  i2d_DSA_PUBKEY_bio ( BIO * bp , DSA * d§ ); 838 DSA * d2i_DSAPriv©eKey_bio ( BIO * bp , DSA ** d§ ); 839  i2d_DSAPriv©eKey_bio ( BIO * bp , DSA * d§ ); 841 #iâdeà OPENSSL_NO_EC 842 EC_KEY * d2i_EC_PUBKEY_bio ( BIO * bp , EC_KEY ** eckey ); 843  i2d_EC_PUBKEY_bio ( BIO * bp , EC_KEY * eckey ); 844 EC_KEY * d2i_ECPriv©eKey_bio ( BIO * bp , EC_KEY ** eckey ); 845  i2d_ECPriv©eKey_bio ( BIO * bp , EC_KEY * eckey ); 847 X509_SIG * d2i_PKCS8_bio ( BIO * bp ,X509_SIG ** p8 ); 848  i2d_PKCS8_bio ( BIO * bp , X509_SIG * p8 ); 849 PKCS8_PRIV_KEY_INFO * d2i_PKCS8_PRIV_KEY_INFO_bio ( BIO * bp , 850 PKCS8_PRIV_KEY_INFO ** p8šf ); 851  i2d_PKCS8_PRIV_KEY_INFO_bio ( BIO * bp , PKCS8_PRIV_KEY_INFO * p8šf ); 852  i2d_PKCS8Priv©eKeyInfo_bio ( BIO * bp , EVP_PKEY * key ); 853  i2d_Priv©eKey_bio ( BIO * bp , EVP_PKEY * pkey ); 854 EVP_PKEY * d2i_Priv©eKey_bio ( BIO * bp , EVP_PKEY ** a ); 855  i2d_PUBKEY_bio ( BIO * bp , EVP_PKEY * pkey ); 856 EVP_PKEY * d2i_PUBKEY_bio ( BIO * bp , EVP_PKEY ** a ); 859 X509 * X509_dup (X509 * x509 ); 860 X509_ATTRIBUTE * X509_ATTRIBUTE_dup (X509_ATTRIBUTE * xa ); 861 X509_EXTENSION * X509_EXTENSION_dup (X509_EXTENSION * ex ); 862 X509_CRL * X509_CRL_dup (X509_CRL * ül ); 863 X509_REQ * X509_REQ_dup (X509_REQ * »q ); 864 X509_ALGOR * X509_ALGOR_dup (X509_ALGOR * xn ); 865 X509_NAME * X509_NAME_dup (X509_NAME * xn ); 866 X509_NAME_ENTRY * X509_NAME_ENTRY_dup (X509_NAME_ENTRY * à ); 870  X509_cmp_time ( ASN1_TIME * s , time_t * t ); 871  X509_cmp_cu¼’t_time ( ASN1_TIME * s ); 872 ASN1_TIME * X509_time_adj (ASN1_TIME * s ,  adj , time_t * t ); 873 ASN1_TIME * X509_gmtime_adj (ASN1_TIME * s ,  adj ); 875 cÚ¡ * X509_g‘_deçuÉ_û¹_¬— (); 876 cÚ¡ * X509_g‘_deçuÉ_û¹_dœ (); 877 cÚ¡ * X509_g‘_deçuÉ_û¹_fže (); 878 cÚ¡ * X509_g‘_deçuÉ_û¹_dœ_’v (); 879 cÚ¡ * X509_g‘_deçuÉ_û¹_fže_’v (); 880 cÚ¡ * X509_g‘_deçuÉ_´iv©e_dœ (); 882 X509_REQ * X509_to_X509_REQ ( X509 * x , EVP_PKEY * pkey , cÚ¡ EVP_MD * md ); 883 X509 * X509_REQ_to_X509 ( X509_REQ * r ,  days , EVP_PKEY * pkey ); 885 DECLARE_ASN1_FUNCTIONS ( X509_ALGOR ) 886 DECLARE_ASN1_FUNCTIONS ( X509_VAL ) 888 DECLARE_ASN1_FUNCTIONS ( X509_PUBKEY ) 890  X509_PUBKEY_£t ( X509_PUBKEY ** x , EVP_PKEY * pkey ); 891 EVP_PKEY * X509_PUBKEY_g‘ ( X509_PUBKEY * key ); 892  X509_g‘_pubkey_·¿m‘”s ( EVP_PKEY * pkey , 893 STACK_OF ( X509 è* chaš ); 894  i2d_PUBKEY ( EVP_PKEY * a ,** µ ); 895 EVP_PKEY * d2i_PUBKEY (EVP_PKEY ** a ,cÚ¡ ** µ , 896  Ëngth ); 897 #iâdeà OPENSSL_NO_RSA 898  i2d_RSA_PUBKEY ( RSA * a ,** µ ); 899 RSA * d2i_RSA_PUBKEY (RSA ** a ,cÚ¡ ** µ , 900  Ëngth ); 902 #iâdeà OPENSSL_NO_DSA 903  i2d_DSA_PUBKEY ( DSA * a ,** µ ); 904 DSA * d2i_DSA_PUBKEY (DSA ** a ,cÚ¡ ** µ , 905  Ëngth ); 907 #iâdeà OPENSSL_NO_EC 908  i2d_EC_PUBKEY ( EC_KEY * a , ** µ ); 909 EC_KEY * d2i_EC_PUBKEY (EC_KEY ** a , cÚ¡ ** µ , 910  Ëngth ); 913 DECLARE_ASN1_FUNCTIONS ( X509_SIG ) 914 DECLARE_ASN1_FUNCTIONS ( X509_REQ_INFO ) 915 DECLARE_ASN1_FUNCTIONS ( X509_REQ ) 917 DECLARE_ASN1_FUNCTIONS ( X509_ATTRIBUTE ) 918 X509_ATTRIBUTE * X509_ATTRIBUTE_ü—‹ ( nid ,  ©¹y³ , * v®ue ); 920 DECLARE_ASN1_FUNCTIONS ( X509_EXTENSION ) 922 DECLARE_ASN1_FUNCTIONS ( X509_NAME_ENTRY ) 924 DECLARE_ASN1_FUNCTIONS ( X509_NAME ) 926  X509_NAME_£t ( X509_NAME ** xn , X509_NAME * Çme ); 928 DECLARE_ASN1_FUNCTIONS ( X509_CINF ) 930 DECLARE_ASN1_FUNCTIONS ( X509 ) 931 DECLARE_ASN1_FUNCTIONS ( X509_CERT_AUX ) 933 DECLARE_ASN1_FUNCTIONS ( X509_CERT_PAIR ) 935  X509_g‘_ex_Ãw_šdex ( ¬gl , * ¬gp , CRYPTO_EX_Ãw * Ãw_func , 936 CRYPTO_EX_dup * dup_func , CRYPTO_EX_ä“ * ä“_func ); 937  X509_£t_ex_d©a ( X509 * r ,  idx , * ¬g ); 938 * X509_g‘_ex_d©a ( X509 * r ,  idx ); 939  i2d_X509_AUX ( X509 * a ,** µ ); 940 X509 * d2i_X509_AUX (X509 ** a ,cÚ¡ ** µ , Ëngth ); 942  X509_®Ÿs_£t1 ( X509 * x , * Çme ,  Ën ); 943  X509_keyid_£t1 ( X509 * x , * id ,  Ën ); 944 * X509_®Ÿs_g‘0 ( X509 * x , * Ën ); 945 * X509_keyid_g‘0 ( X509 * x , * Ën ); 946 (* X509_TRUST_£t_deçuÉ ((* Œu¡ )(, X509 *, )))(, X509 *, ); 947  X509_TRUST_£t (* t ,  Œu¡ ); 948  X509_add1_Œu¡_objeù ( X509 * x , ASN1_OBJECT * obj ); 949  X509_add1_»jeù_objeù ( X509 * x , ASN1_OBJECT * obj ); 950  X509_Œu¡_þ—r ( X509 * x ); 951  X509_»jeù_þ—r ( X509 * x ); 953 DECLARE_ASN1_FUNCTIONS ( X509_REVOKED ) 954 DECLARE_ASN1_FUNCTIONS ( X509_CRL_INFO ) 955 DECLARE_ASN1_FUNCTIONS ( X509_CRL ) 957  X509_CRL_add0_»voked ( X509_CRL * ül , X509_REVOKED * »v ); 959 X509_PKEY * X509_PKEY_Ãw (); 960  X509_PKEY_ä“ ( X509_PKEY * a ); 961  i2d_X509_PKEY ( X509_PKEY * a ,** µ ); 962 X509_PKEY * d2i_X509_PKEY (X509_PKEY ** a ,cÚ¡ ** µ , Ëngth ); 964 DECLARE_ASN1_FUNCTIONS ( NETSCAPE_SPKI ) 965 DECLARE_ASN1_FUNCTIONS ( NETSCAPE_SPKAC ) 966 DECLARE_ASN1_FUNCTIONS ( NETSCAPE_CERT_SEQUENCE ) 968 #iâdeà OPENSSL_NO_EVP 969 X509_INFO * X509_INFO_Ãw (); 970  X509_INFO_ä“ ( X509_INFO * a ); 971 * X509_NAME_Ú–še ( X509_NAME * a ,* buf , size ); 973  ASN1_v”ify ( i2d_of_void * i2d , X509_ALGOR * ®gÜ1 , 974 ASN1_BIT_STRING * sigÇtu» ,* d©a , EVP_PKEY * pkey ); 976  ASN1_dige¡ ( i2d_of_void * i2d ,cÚ¡ EVP_MD * ty³ ,* d©a , 977 * md ,* Ën ); 979  ASN1_sign ( i2d_of_void * i2d , X509_ALGOR * ®gÜ1 , 980 X509_ALGOR * ®gÜ2 , ASN1_BIT_STRING * sigÇtu» , 981 * d©a , EVP_PKEY * pkey , cÚ¡ EVP_MD * ty³ ); 983  ASN1_™em_dige¡ (cÚ¡ ASN1_ITEM * ™ ,cÚ¡ EVP_MD * ty³ ,* d©a , 984 * md ,* Ën ); 986  ASN1_™em_v”ify (cÚ¡ ASN1_ITEM * ™ , X509_ALGOR * ®gÜ1 , 987 ASN1_BIT_STRING * sigÇtu» ,* d©a , EVP_PKEY * pkey ); 989  ASN1_™em_sign (cÚ¡ ASN1_ITEM * ™ , X509_ALGOR * ®gÜ1 , X509_ALGOR * ®gÜ2 , 990 ASN1_BIT_STRING * sigÇtu» , 991 * d©a , EVP_PKEY * pkey , cÚ¡ EVP_MD * ty³ ); 994  X509_£t_v”siÚ ( X509 * x , v”siÚ ); 995  X509_£t_£rŸlNumb” ( X509 * x , ASN1_INTEGER * £rŸl ); 996 ASN1_INTEGER * X509_g‘_£rŸlNumb” ( X509 * x ); 997  X509_£t_issu”_Çme ( X509 * x , X509_NAME * Çme ); 998 X509_NAME * X509_g‘_issu”_Çme ( X509 * a ); 999  X509_£t_subjeù_Çme ( X509 * x , X509_NAME * Çme ); 1000 X509_NAME * X509_g‘_subjeù_Çme ( X509 * a ); 1001  X509_£t_nÙBefÜe ( X509 * x , ASN1_TIME * tm ); 1002  X509_£t_nÙAá” ( X509 * x , ASN1_TIME * tm ); 1003  X509_£t_pubkey ( X509 * x , EVP_PKEY * pkey ); 1004 EVP_PKEY * X509_g‘_pubkey ( X509 * x ); 1005 ASN1_BIT_STRING * X509_g‘0_pubkey_b™¡r (cÚ¡ X509 * x ); 1006  X509_û¹ifiÿ‹_ty³ ( X509 * x , EVP_PKEY * pubkey ); 1008  X509_REQ_£t_v”siÚ ( X509_REQ * x , v”siÚ ); 1009  X509_REQ_£t_subjeù_Çme ( X509_REQ * »q , X509_NAME * Çme ); 1010  X509_REQ_£t_pubkey ( X509_REQ * x , EVP_PKEY * pkey ); 1011 EVP_PKEY * X509_REQ_g‘_pubkey ( X509_REQ * »q ); 1012  X509_REQ_ex‹nsiÚ_nid ( nid ); 1013 * X509_REQ_g‘_ex‹nsiÚ_nids (); 1014  X509_REQ_£t_ex‹nsiÚ_nids (* nids ); 1015 STACK_OF ( X509_EXTENSION è* X509_REQ_g‘_ex‹nsiÚs ( X509_REQ * »q ); 1016  X509_REQ_add_ex‹nsiÚs_nid ( X509_REQ * »q , STACK_OF ( X509_EXTENSION è* exts , 1017  nid ); 1018  X509_REQ_add_ex‹nsiÚs ( X509_REQ * »q , STACK_OF ( X509_EXTENSION è* exts ); 1019  X509_REQ_g‘_©Œ_couÁ (cÚ¡ X509_REQ * »q ); 1020  X509_REQ_g‘_©Œ_by_NID (cÚ¡ X509_REQ * »q ,  nid , 1021  Ï¡pos ); 1022  X509_REQ_g‘_©Œ_by_OBJ (cÚ¡ X509_REQ * »q , ASN1_OBJECT * obj , 1023  Ï¡pos ); 1024 X509_ATTRIBUTE * X509_REQ_g‘_©Œ (cÚ¡ X509_REQ * »q ,  loc ); 1025 X509_ATTRIBUTE * X509_REQ_d–‘e_©Œ ( X509_REQ * »q ,  loc ); 1026  X509_REQ_add1_©Œ ( X509_REQ * »q , X509_ATTRIBUTE * ©Œ ); 1027  X509_REQ_add1_©Œ_by_OBJ ( X509_REQ * »q , 1028 cÚ¡ ASN1_OBJECT * obj ,  ty³ , 1029 cÚ¡ * by‹s ,  Ën ); 1030  X509_REQ_add1_©Œ_by_NID ( X509_REQ * »q , 1031  nid ,  ty³ , 1032 cÚ¡ * by‹s ,  Ën ); 1033  X509_REQ_add1_©Œ_by_txt ( X509_REQ * »q , 1034 cÚ¡ * ©ŒÇme ,  ty³ , 1035 cÚ¡ * by‹s ,  Ën ); 1037  X509_CRL_£t_v”siÚ ( X509_CRL * x ,  v”siÚ ); 1038  X509_CRL_£t_issu”_Çme ( X509_CRL * x , X509_NAME * Çme ); 1039  X509_CRL_£t_Ï¡Upd©e ( X509_CRL * x , ASN1_TIME * tm ); 1040  X509_CRL_£t_ÃxtUpd©e ( X509_CRL * x , ASN1_TIME * tm ); 1041  X509_CRL_sÜt ( X509_CRL * ül ); 1043  X509_REVOKED_£t_£rŸlNumb” ( X509_REVOKED * x , ASN1_INTEGER * £rŸl ); 1044  X509_REVOKED_£t_»voÿtiÚD©e ( X509_REVOKED * r , ASN1_TIME * tm ); 1046  X509_REQ_check_´iv©e_key ( X509_REQ * x509 , EVP_PKEY * pkey ); 1048  X509_check_´iv©e_key ( X509 * x509 , EVP_PKEY * pkey ); 1050  X509_issu”_ªd_£rŸl_cmp (cÚ¡ X509 * a , cÚ¡ X509 * b ); 1051  X509_issu”_ªd_£rŸl_hash ( X509 * a ); 1053  X509_issu”_Çme_cmp (cÚ¡ X509 * a , cÚ¡ X509 * b ); 1054  X509_issu”_Çme_hash ( X509 * a ); 1056  X509_subjeù_Çme_cmp (cÚ¡ X509 * a , cÚ¡ X509 * b ); 1057  X509_subjeù_Çme_hash ( X509 * x ); 1059  X509_cmp (cÚ¡ X509 * a , cÚ¡ X509 * b ); 1060  X509_NAME_cmp (cÚ¡ X509_NAME * a , cÚ¡ X509_NAME * b ); 1061  X509_NAME_hash ( X509_NAME * x ); 1063  X509_CRL_cmp (cÚ¡ X509_CRL * a , cÚ¡ X509_CRL * b ); 1064 #iâdeà OPENSSL_NO_FP_API 1065  X509_´št_ex_å ( FILE * bp , X509 * x ,  nmæag ,  cæag ); 1066  X509_´št_å ( FILE * bp , X509 * x ); 1067  X509_CRL_´št_å ( FILE * bp , X509_CRL * x ); 1068  X509_REQ_´št_å ( FILE * bp , X509_REQ * »q ); 1069  X509_NAME_´št_ex_å ( FILE * å , X509_NAME * nm ,  šd’t ,  æags ); 1072 #iâdeà OPENSSL_NO_BIO 1073  X509_NAME_´št ( BIO * bp , X509_NAME * Çme ,  oba£ ); 1074  X509_NAME_´št_ex ( BIO * out , X509_NAME * nm ,  šd’t ,  æags ); 1075  X509_´št_ex ( BIO * bp , X509 * x ,  nmæag ,  cæag ); 1076  X509_´št ( BIO * bp , X509 * x ); 1077  X509_oc¥id_´št ( BIO * bp , X509 * x ); 1078  X509_CERT_AUX_´št ( BIO * bp , X509_CERT_AUX * x ,  šd’t ); 1079  X509_CRL_´št ( BIO * bp , X509_CRL * x ); 1080  X509_REQ_´št_ex ( BIO * bp , X509_REQ * x ,  nmæag ,  cæag ); 1081  X509_REQ_´št ( BIO * bp , X509_REQ * »q ); 1084  X509_NAME_’Œy_couÁ ( X509_NAME * Çme ); 1085  X509_NAME_g‘_‹xt_by_NID ( X509_NAME * Çme ,  nid , 1086 * buf , Ën ); 1087  X509_NAME_g‘_‹xt_by_OBJ ( X509_NAME * Çme , ASN1_OBJECT * obj , 1088 * buf , Ën ); 1092  X509_NAME_g‘_šdex_by_NID ( X509_NAME * Çme , nid , Ï¡pos ); 1093  X509_NAME_g‘_šdex_by_OBJ ( X509_NAME * Çme , ASN1_OBJECT * obj , 1094  Ï¡pos ); 1095 X509_NAME_ENTRY * X509_NAME_g‘_’Œy ( X509_NAME * Çme ,  loc ); 1096 X509_NAME_ENTRY * X509_NAME_d–‘e_’Œy ( X509_NAME * Çme ,  loc ); 1097  X509_NAME_add_’Œy ( X509_NAME * Çme , X509_NAME_ENTRY * à , 1098  loc ,  £t ); 1099  X509_NAME_add_’Œy_by_OBJ ( X509_NAME * Çme , ASN1_OBJECT * obj ,  ty³ , 1100 * by‹s ,  Ën ,  loc ,  £t ); 1101  X509_NAME_add_’Œy_by_NID ( X509_NAME * Çme ,  nid ,  ty³ , 1102 * by‹s ,  Ën ,  loc ,  £t ); 1103 X509_NAME_ENTRY * X509_NAME_ENTRY_ü—‹_by_txt (X509_NAME_ENTRY ** à , 1104 cÚ¡ * f›ld ,  ty³ , cÚ¡ * by‹s ,  Ën ); 1105 X509_NAME_ENTRY * X509_NAME_ENTRY_ü—‹_by_NID (X509_NAME_ENTRY ** à ,  nid , 1106  ty³ ,* by‹s ,  Ën ); 1107  X509_NAME_add_’Œy_by_txt ( X509_NAME * Çme , cÚ¡ * f›ld ,  ty³ , 1108 cÚ¡ * by‹s ,  Ën ,  loc ,  £t ); 1109 X509_NAME_ENTRY * X509_NAME_ENTRY_ü—‹_by_OBJ (X509_NAME_ENTRY ** à , 1110 ASN1_OBJECT * obj ,  ty³ ,cÚ¡ * by‹s , 1111  Ën ); 1112  X509_NAME_ENTRY_£t_objeù ( X509_NAME_ENTRY * à , 1113 ASN1_OBJECT * obj ); 1114  X509_NAME_ENTRY_£t_d©a ( X509_NAME_ENTRY * à ,  ty³ , 1115 cÚ¡ * by‹s ,  Ën ); 1116 ASN1_OBJECT * X509_NAME_ENTRY_g‘_objeù ( X509_NAME_ENTRY * à ); 1117 ASN1_STRING * X509_NAME_ENTRY_g‘_d©a ( X509_NAME_ENTRY * à ); 1119  X509v3_g‘_ext_couÁ (cÚ¡ STACK_OF ( X509_EXTENSION è* x ); 1120  X509v3_g‘_ext_by_NID (cÚ¡ STACK_OF ( X509_EXTENSION è* x , 1121  nid ,  Ï¡pos ); 1122  X509v3_g‘_ext_by_OBJ (cÚ¡ STACK_OF ( X509_EXTENSION è* x , 1123 ASN1_OBJECT * obj , Ï¡pos ); 1124  X509v3_g‘_ext_by_ü™iÿl (cÚ¡ STACK_OF ( X509_EXTENSION è* x , 1125  ü™ ,  Ï¡pos ); 1126 X509_EXTENSION * X509v3_g‘_ext (cÚ¡ STACK_OF (X509_EXTENSIONè* x ,  loc ); 1127 X509_EXTENSION * X509v3_d–‘e_ext ( STACK_OF (X509_EXTENSIONè* x ,  loc ); 1128 STACK_OF ( X509_EXTENSION è* X509v3_add_ext (STACK_OF(X509_EXTENSIONè** x , 1129 X509_EXTENSION * ex ,  loc ); 1131  X509_g‘_ext_couÁ ( X509 * x ); 1132  X509_g‘_ext_by_NID ( X509 * x ,  nid ,  Ï¡pos ); 1133  X509_g‘_ext_by_OBJ ( X509 * x , ASN1_OBJECT * obj , Ï¡pos ); 1134  X509_g‘_ext_by_ü™iÿl ( X509 * x ,  ü™ ,  Ï¡pos ); 1135 X509_EXTENSION * X509_g‘_ext ( X509 * x ,  loc ); 1136 X509_EXTENSION * X509_d–‘e_ext ( X509 * x ,  loc ); 1137  X509_add_ext ( X509 * x , X509_EXTENSION * ex ,  loc ); 1138 * X509_g‘_ext_d2i ( X509 * x ,  nid , * ü™ , * idx ); 1139  X509_add1_ext_i2d ( X509 * x ,  nid , * v®ue ,  ü™ , 1140  æags ); 1142  X509_CRL_g‘_ext_couÁ ( X509_CRL * x ); 1143  X509_CRL_g‘_ext_by_NID ( X509_CRL * x ,  nid ,  Ï¡pos ); 1144  X509_CRL_g‘_ext_by_OBJ ( X509_CRL * x , ASN1_OBJECT * obj , Ï¡pos ); 1145  X509_CRL_g‘_ext_by_ü™iÿl ( X509_CRL * x ,  ü™ ,  Ï¡pos ); 1146 X509_EXTENSION * X509_CRL_g‘_ext ( X509_CRL * x ,  loc ); 1147 X509_EXTENSION * X509_CRL_d–‘e_ext ( X509_CRL * x ,  loc ); 1148  X509_CRL_add_ext ( X509_CRL * x , X509_EXTENSION * ex ,  loc ); 1149 * X509_CRL_g‘_ext_d2i ( X509_CRL * x ,  nid , * ü™ , * idx ); 1150  X509_CRL_add1_ext_i2d ( X509_CRL * x ,  nid , * v®ue ,  ü™ , 1151  æags ); 1153  X509_REVOKED_g‘_ext_couÁ ( X509_REVOKED * x ); 1154  X509_REVOKED_g‘_ext_by_NID ( X509_REVOKED * x ,  nid ,  Ï¡pos ); 1155  X509_REVOKED_g‘_ext_by_OBJ ( X509_REVOKED * x , ASN1_OBJECT * obj , Ï¡pos ); 1156  X509_REVOKED_g‘_ext_by_ü™iÿl ( X509_REVOKED * x ,  ü™ ,  Ï¡pos ); 1157 X509_EXTENSION * X509_REVOKED_g‘_ext ( X509_REVOKED * x ,  loc ); 1158 X509_EXTENSION * X509_REVOKED_d–‘e_ext ( X509_REVOKED * x ,  loc ); 1159  X509_REVOKED_add_ext ( X509_REVOKED * x , X509_EXTENSION * ex ,  loc ); 1160 * X509_REVOKED_g‘_ext_d2i ( X509_REVOKED * x ,  nid , * ü™ , * idx ); 1161  X509_REVOKED_add1_ext_i2d ( X509_REVOKED * x ,  nid , * v®ue ,  ü™ , 1162  æags ); 1164 X509_EXTENSION * X509_EXTENSION_ü—‹_by_NID (X509_EXTENSION ** ex , 1165  nid ,  ü™ , ASN1_OCTET_STRING * d©a ); 1166 X509_EXTENSION * X509_EXTENSION_ü—‹_by_OBJ (X509_EXTENSION ** ex , 1167 ASN1_OBJECT * obj , ü™ , ASN1_OCTET_STRING * d©a ); 1168  X509_EXTENSION_£t_objeù ( X509_EXTENSION * ex , ASN1_OBJECT * obj ); 1169  X509_EXTENSION_£t_ü™iÿl ( X509_EXTENSION * ex ,  ü™ ); 1170  X509_EXTENSION_£t_d©a ( X509_EXTENSION * ex , 1171 ASN1_OCTET_STRING * d©a ); 1172 ASN1_OBJECT * X509_EXTENSION_g‘_objeù ( X509_EXTENSION * ex ); 1173 ASN1_OCTET_STRING * X509_EXTENSION_g‘_d©a ( X509_EXTENSION * à ); 1174  X509_EXTENSION_g‘_ü™iÿl ( X509_EXTENSION * ex ); 1176  X509©_g‘_©Œ_couÁ (cÚ¡ STACK_OF ( X509_ATTRIBUTE è* x ); 1177  X509©_g‘_©Œ_by_NID (cÚ¡ STACK_OF ( X509_ATTRIBUTE è* x ,  nid , 1178  Ï¡pos ); 1179  X509©_g‘_©Œ_by_OBJ (cÚ¡ STACK_OF ( X509_ATTRIBUTE è* sk , ASN1_OBJECT * obj , 1180  Ï¡pos ); 1181 X509_ATTRIBUTE * X509©_g‘_©Œ (cÚ¡ STACK_OF (X509_ATTRIBUTEè* x ,  loc ); 1182 X509_ATTRIBUTE * X509©_d–‘e_©Œ ( STACK_OF (X509_ATTRIBUTEè* x ,  loc ); 1183 STACK_OF ( X509_ATTRIBUTE è* X509©_add1_©Œ (STACK_OF(X509_ATTRIBUTEè** x , 1184 X509_ATTRIBUTE * ©Œ ); 1185 STACK_OF ( X509_ATTRIBUTE è* X509©_add1_©Œ_by_OBJ (STACK_OF(X509_ATTRIBUTEè** x , 1186 cÚ¡ ASN1_OBJECT * obj ,  ty³ , 1187 cÚ¡ * by‹s ,  Ën ); 1188 STACK_OF ( X509_ATTRIBUTE è* X509©_add1_©Œ_by_NID (STACK_OF(X509_ATTRIBUTEè** x , 1189  nid ,  ty³ , 1190 cÚ¡ * by‹s ,  Ën ); 1191 STACK_OF ( X509_ATTRIBUTE è* X509©_add1_©Œ_by_txt (STACK_OF(X509_ATTRIBUTEè** x , 1192 cÚ¡ * ©ŒÇme ,  ty³ , 1193 cÚ¡ * by‹s ,  Ën ); 1194 X509_ATTRIBUTE * X509_ATTRIBUTE_ü—‹_by_NID (X509_ATTRIBUTE ** ©Œ ,  nid , 1195  ©¹y³ , cÚ¡ * d©a ,  Ën ); 1196 X509_ATTRIBUTE * X509_ATTRIBUTE_ü—‹_by_OBJ (X509_ATTRIBUTE ** ©Œ , 1197 cÚ¡ ASN1_OBJECT * obj ,  ©¹y³ , cÚ¡ * d©a ,  Ën ); 1198 X509_ATTRIBUTE * X509_ATTRIBUTE_ü—‹_by_txt (X509_ATTRIBUTE ** ©Œ , 1199 cÚ¡ * ©ºame ,  ty³ , cÚ¡ * by‹s ,  Ën ); 1200  X509_ATTRIBUTE_£t1_objeù ( X509_ATTRIBUTE * ©Œ , cÚ¡ ASN1_OBJECT * obj ); 1201  X509_ATTRIBUTE_£t1_d©a ( X509_ATTRIBUTE * ©Œ ,  ©Œty³ , cÚ¡ * d©a ,  Ën ); 1202 * X509_ATTRIBUTE_g‘0_d©a ( X509_ATTRIBUTE * ©Œ ,  idx , 1203  ©¹y³ , * d©a ); 1204  X509_ATTRIBUTE_couÁ ( X509_ATTRIBUTE * ©Œ ); 1205 ASN1_OBJECT * X509_ATTRIBUTE_g‘0_objeù ( X509_ATTRIBUTE * ©Œ ); 1206 ASN1_TYPE * X509_ATTRIBUTE_g‘0_ty³ ( X509_ATTRIBUTE * ©Œ ,  idx ); 1208  EVP_PKEY_g‘_©Œ_couÁ (cÚ¡ EVP_PKEY * key ); 1209  EVP_PKEY_g‘_©Œ_by_NID (cÚ¡ EVP_PKEY * key ,  nid , 1210  Ï¡pos ); 1211  EVP_PKEY_g‘_©Œ_by_OBJ (cÚ¡ EVP_PKEY * key , ASN1_OBJECT * obj , 1212  Ï¡pos ); 1213 X509_ATTRIBUTE * EVP_PKEY_g‘_©Œ (cÚ¡ EVP_PKEY * key ,  loc ); 1214 X509_ATTRIBUTE * EVP_PKEY_d–‘e_©Œ ( EVP_PKEY * key ,  loc ); 1215  EVP_PKEY_add1_©Œ ( EVP_PKEY * key , X509_ATTRIBUTE * ©Œ ); 1216  EVP_PKEY_add1_©Œ_by_OBJ ( EVP_PKEY * key , 1217 cÚ¡ ASN1_OBJECT * obj ,  ty³ , 1218 cÚ¡ * by‹s ,  Ën ); 1219  EVP_PKEY_add1_©Œ_by_NID ( EVP_PKEY * key , 1220  nid ,  ty³ , 1221 cÚ¡ * by‹s ,  Ën ); 1222  EVP_PKEY_add1_©Œ_by_txt ( EVP_PKEY * key , 1223 cÚ¡ * ©ŒÇme ,  ty³ , 1224 cÚ¡ * by‹s ,  Ën ); 1226  X509_v”ify_û¹ ( X509_STORE_CTX * ùx ); 1229 X509 * X509_fšd_by_issu”_ªd_£rŸl ( STACK_OF (X509è* sk , X509_NAME * Çme , 1230 ASN1_INTEGER * £rŸl ); 1231 X509 * X509_fšd_by_subjeù ( STACK_OF (X509è* sk , X509_NAME * Çme ); 1233 DECLARE_ASN1_FUNCTIONS ( PBEPARAM ) 1234 DECLARE_ASN1_FUNCTIONS ( PBE2PARAM ) 1235 DECLARE_ASN1_FUNCTIONS ( PBKDF2PARAM ) 1237 X509_ALGOR * PKCS5_pbe_£t ( ®g ,  ™” , * §É ,  §ÉËn ); 1238 X509_ALGOR * PKCS5_pbe2_£t (cÚ¡ EVP_CIPHER * ch” ,  ™” , 1239 * §É ,  §ÉËn ); 1243 DECLARE_ASN1_FUNCTIONS ( PKCS8_PRIV_KEY_INFO ) 1245 EVP_PKEY * EVP_PKCS82PKEY ( PKCS8_PRIV_KEY_INFO * p8 ); 1246 PKCS8_PRIV_KEY_INFO * EVP_PKEY2PKCS8 ( EVP_PKEY * pkey ); 1247 PKCS8_PRIV_KEY_INFO * EVP_PKEY2PKCS8_brok’ ( EVP_PKEY * pkey ,  brok’ ); 1248 PKCS8_PRIV_KEY_INFO * PKCS8_£t_brok’ (PKCS8_PRIV_KEY_INFO * p8 ,  brok’ ); 1250  X509_check_Œu¡ ( X509 * x ,  id ,  æags ); 1251  X509_TRUST_g‘_couÁ (); 1252 X509_TRUST * X509_TRUST_g‘0 ( idx ); 1253  X509_TRUST_g‘_by_id ( id ); 1254  X509_TRUST_add ( id ,  æags , (* ck )( X509_TRUST *, X509 *, ), 1255 * Çme ,  ¬g1 , * ¬g2 ); 1256  X509_TRUST_þ—nup (); 1257  X509_TRUST_g‘_æags ( X509_TRUST * xp ); 1258 * X509_TRUST_g‘0_Çme ( X509_TRUST * xp ); 1259  X509_TRUST_g‘_Œu¡ ( X509_TRUST * xp ); 1265  ERR_lßd_X509_¡ršgs (); 1270  #X509_F_ADD_CERT_DIR 100 ) 1271  #X509_F_BY_FILE_CTRL 101 ) 1272  #X509_F_CHECK_POLICY 145 ) 1273  #X509_F_DIR_CTRL 102 ) 1274  #X509_F_GET_CERT_BY_SUBJECT 103 ) 1275  #X509_F_NETSCAPE_SPKI_B64_DECODE 129 ) 1276  #X509_F_NETSCAPE_SPKI_B64_ENCODE 130 ) 1277  #X509_F_X509AT_ADD1_ATTR 135 ) 1278  #X509_F_X509V3_ADD_EXT 104 ) 1279  #X509_F_X509_ATTRIBUTE_CREATE_BY_NID 136 ) 1280  #X509_F_X509_ATTRIBUTE_CREATE_BY_OBJ 137 ) 1281  #X509_F_X509_ATTRIBUTE_CREATE_BY_TXT 140 ) 1282  #X509_F_X509_ATTRIBUTE_GET0_DATA 139 ) 1283  #X509_F_X509_ATTRIBUTE_SET1_DATA 138 ) 1284  #X509_F_X509_CHECK_PRIVATE_KEY 128 ) 1285  #X509_F_X509_CRL_PRINT_FP 147 ) 1286  #X509_F_X509_EXTENSION_CREATE_BY_NID 108 ) 1287  #X509_F_X509_EXTENSION_CREATE_BY_OBJ 109 ) 1288  #X509_F_X509_GET_PUBKEY_PARAMETERS 110 ) 1289  #X509_F_X509_LOAD_CERT_CRL_FILE 132 ) 1290  #X509_F_X509_LOAD_CERT_FILE 111 ) 1291  #X509_F_X509_LOAD_CRL_FILE 112 ) 1292  #X509_F_X509_NAME_ADD_ENTRY 113 ) 1293  #X509_F_X509_NAME_ENTRY_CREATE_BY_NID 114 ) 1294  #X509_F_X509_NAME_ENTRY_CREATE_BY_TXT 131 ) 1295  #X509_F_X509_NAME_ENTRY_SET_OBJECT 115 ) 1296  #X509_F_X509_NAME_ONELINE 116 ) 1297  #X509_F_X509_NAME_PRINT 117 ) 1298  #X509_F_X509_PRINT_EX_FP 118 ) 1299  #X509_F_X509_PUBKEY_GET 119 ) 1300  #X509_F_X509_PUBKEY_SET 120 ) 1301  #X509_F_X509_REQ_CHECK_PRIVATE_KEY 144 ) 1302  #X509_F_X509_REQ_PRINT_EX 121 ) 1303  #X509_F_X509_REQ_PRINT_FP 122 ) 1304  #X509_F_X509_REQ_TO_X509 123 ) 1305  #X509_F_X509_STORE_ADD_CERT 124 ) 1306  #X509_F_X509_STORE_ADD_CRL 125 ) 1307  #X509_F_X509_STORE_CTX_GET1_ISSUER 146 ) 1308  #X509_F_X509_STORE_CTX_INIT 143 ) 1309  #X509_F_X509_STORE_CTX_NEW 142 ) 1310  #X509_F_X509_STORE_CTX_PURPOSE_INHERIT 134 ) 1311  #X509_F_X509_TO_X509_REQ 126 ) 1312  #X509_F_X509_TRUST_ADD 133 ) 1313  #X509_F_X509_TRUST_SET 141 ) 1314  #X509_F_X509_VERIFY_CERT 127 ) 1317  #X509_R_BAD_X509_FILETYPE 100 ) 1318  #X509_R_BASE64_DECODE_ERROR 118 ) 1319  #X509_R_CANT_CHECK_DH_KEY 114 ) 1320  #X509_R_CERT_ALREADY_IN_HASH_TABLE 101 ) 1321  #X509_R_ERR_ASN1_LIB 102 ) 1322  #X509_R_INVALID_DIRECTORY 113 ) 1323  #X509_R_INVALID_FIELD_NAME 119 ) 1324  #X509_R_INVALID_TRUST 123 ) 1325  #X509_R_KEY_TYPE_MISMATCH 115 ) 1326  #X509_R_KEY_VALUES_MISMATCH 116 ) 1327  #X509_R_LOADING_CERT_DIR 103 ) 1328  #X509_R_LOADING_DEFAULTS 104 ) 1329  #X509_R_NO_CERT_SET_FOR_US_TO_VERIFY 105 ) 1330  #X509_R_SHOULD_RETRY 106 ) 1331  #X509_R_UNABLE_TO_FIND_PARAMETERS_IN_CHAIN 107 ) 1332  #X509_R_UNABLE_TO_GET_CERTS_PUBLIC_KEY 108 ) 1333  #X509_R_UNKNOWN_KEY_TYPE 117 ) 1334  #X509_R_UNKNOWN_NID 109 ) 1335  #X509_R_UNKNOWN_PURPOSE_ID 121 ) 1336  #X509_R_UNKNOWN_TRUST_ID 120 ) 1337  #X509_R_UNSUPPORTED_ALGORITHM 111 ) 1338  #X509_R_WRONG_LOOKUP_TYPE 112 ) 1339  #X509_R_WRONG_TYPE 122 ) 1341 #ifdeà __ýlu¥lus @/usr/include/rpc/netdb.h 36 #iâdeà _RPC_NETDB_H 37  #_RPC_NETDB_H 1 ) 39  ~<ã©u»s.h > 41  #__Ãed_size_t ) 42  ~<¡ddef.h > 44 __BEGIN_DECLS 46  s½ûÁ 48 * mr_Çme ; 49 ** mr_®Ÿ£s ; 50  mr_numb” ; 53  $£ŒpûÁ ( __¡ayÝ’ è __THROW ; 54  $’d½ûÁ (è __THROW ; 55  ½ûÁ * $g‘½cbyÇme ( __cÚ¡ * __Çme è __THROW ; 56  ½ûÁ * $g‘½cbynumb” ( __numb” è __THROW ; 57  ½ûÁ * $g‘½ûÁ (è __THROW ; 59 #ifdeà __USE_MISC 60  $g‘½cbyÇme_r ( __cÚ¡ * __Çme ,  ½ûÁ * __»suÉ_buf , 61 * __bufãr , size_t __buæ’ , 62  ½ûÁ ** __»suÉ è __THROW ; 64  $g‘½cbynumb”_r ( __numb” ,  ½ûÁ * __»suÉ_buf , 65 * __bufãr , size_t __buæ’ , 66  ½ûÁ ** __»suÉ è __THROW ; 68  $g‘½ûÁ_r ( ½ûÁ * __»suÉ_buf , * __bufãr , 69 size_t __buæ’ ,  ½ûÁ ** __»suÉ è __THROW ; 72 __END_DECLS @/usr/include/sys/cdefs.h 20 #iâdef _SYS_CDEFS_H 21  #_SYS_CDEFS_H 1 ) 24 #iâdeà _FEATURES_H 25  ~<ã©u»s.h > 31 #ià defšed __GNUC__ && !defšed __STDC__ 36 #undeà __P 37 #undeà __PMT 39 #ifdeà __GNUC__ 46 #ià! defšed __ýlu¥lus && __GNUC_PREREQ (3, 3) 47  #__THROW `__©Œibu‹__ (( __nÙhrow__ )) ) 48  #__NTH ( fù è `__©Œibu‹__ (( __nÙhrow__ )è ) fct 50 #ià defšed __ýlu¥lus && __GNUC_PREREQ (2,8) 51  #__THROW `throw () ) 52  #__NTH ( fù èfù `throw () ) 54  #__THROW ) 55  #__NTH ( fù è ) fct 61  #__šlše ) 63  #__THROW ) 64  #__NTH ( fù è ) fct 66  #__cÚ¡ cÚ¡ ) 67  #__sigÃd sigÃd ) 68  #__vÞ©že vÞ©že ) 74  #__P ( ¬gs è ) args 75  #__PMT ( ¬gs è ) args 80  #__CONCAT ( x , y èx ## ) y 81  #__STRING ( x è#x ) 84  #__±r_t * ) 85  #__lÚg_doubË_t  ) 89 #ifdef __ýlu¥lus 90  #__BEGIN_DECLS "C" { ) 91  #__END_DECLS } ) 93  #__BEGIN_DECLS ) 94  #__END_DECLS ) 103 #ià defšed __ýlu¥lus && defšed _GLIBCPP_USE_NAMESPACES 104  #__BEGIN_NAMESPACE_STD Çme¥aû ¡d { ) 105  #__END_NAMESPACE_STD } ) 106  #__USING_NAMESPACE_STD ( Çme è usšg ¡d ::Çme; ) 107  #__BEGIN_NAMESPACE_C99 Çme¥aû __c99 { ) 108  #__END_NAMESPACE_C99 } ) 109  #__USING_NAMESPACE_C99 ( Çme è usšg __c99 ::Çme; ) 114  #__BEGIN_NAMESPACE_STD ) 115  #__END_NAMESPACE_STD ) 116  #__USING_NAMESPACE_STD ( Çme ) ) 117  #__BEGIN_NAMESPACE_C99 ) 118  #__END_NAMESPACE_C99 ) 119  #__USING_NAMESPACE_C99 ( Çme ) ) 124 #iâdeà __BOUNDED_POINTERS__ 125  #__bounded ) 126  #__unbounded ) 127  #__±rv®ue ) 132  #__bos ( ±r è `__bužtš_objeù_size (±r, __USE_FORTIFY_LEVEL > 1) ) 133  #__bos0 ( ±r è `__bužtš_objeù_size (±r, 0) ) 135 #ià __GNUC_PREREQ (4,3) 136  #__w¬ndeþ ( Çme , msg ) \ 137  `Çme (è `__©Œibu‹__ (( `__w¬nšg__ ( msg ))) ) 138  #__w¬Ç‰r ( msg è `__©Œibu‹__ (( `__w¬nšg__ (msg))) ) 139  #__”rÜdeþ ( Çme , msg ) \ 140  `Çme (è `__©Œibu‹__ (( `__”rÜ__ ( msg ))) ) 142  #__w¬ndeþ ( Çme , msg è  `Çme () ) 143  #__w¬Ç‰r ( msg ) ) 144  #__”rÜdeþ ( Çme , msg è  `Çme () ) 148 #ià __GNUC_PREREQ (2,97) 150  #__æex¬r [] ) 152 #ifdeà __GNUC__ 153  #__æex¬r [0] ) 155 #ià defšed __STDC_VERSION__ && __STDC_VERSION__ >= 199901L 156  #__æex¬r [] ) 159  #__æex¬r [1] ) 175 #ià defšed __GNUC__ && __GNUC__ >= 2 177  #__REDIRECT ( Çme , ´Ùo , ®Ÿs èÇm´ÙØ `__asm__ ( `__ASMNAME (#®Ÿs)) ) 178 #ifdeà __ýlu¥lus 179  #__REDIRECT_NTH ( Çme , ´Ùo , ®Ÿs ) \ 180 Çme ´Ùo __THROW `__asm__ ( `__ASMNAME (#®Ÿs)) ) 182  #__REDIRECT_NTH ( Çme , ´Ùo , ®Ÿs ) \ 183 Çme ´Ùo `__asm__ ( `__ASMNAME (#®Ÿs)è __THROW ) 185  #__ASMNAME ( úame è `__ASMNAME2 ( __USER_LABEL_PREFIX__ , cÇme) ) 186  #__ASMNAME2 ( ´efix , úame è `__STRING (´efixè ) cname 199 #ià! defšed __GNUC__ || __GNUC__ < 2 200  #__©Œibu‹__ ( xyz è ) 206 #ià __GNUC_PREREQ (2,96) 207  #__©Œibu‹_m®loc__ `__©Œibu‹__ (( __m®loc__ )) ) 209  #__©Œibu‹_m®loc__ ) 215 #ià __GNUC_PREREQ (2,96) 216  #__©Œibu‹_pu»__ `__©Œibu‹__ (( __pu»__ )) ) 218  #__©Œibu‹_pu»__ ) 224 #ià __GNUC_PREREQ (3,1) 225  #__©Œibu‹_u£d__ `__©Œibu‹__ (( __u£d__ )) ) 226  #__©Œibu‹_nošlše__ `__©Œibu‹__ (( __nošlše__ )) ) 228  #__©Œibu‹_u£d__ `__©Œibu‹__ (( __unu£d__ )) ) 229  #__©Œibu‹_nošlše__ ) 233 #ià __GNUC_PREREQ (3,2) 234  #__©Œibu‹_d•»ÿ‹d__ `__©Œibu‹__ (( __d•»ÿ‹d__ )) ) 236  #__©Œibu‹_d•»ÿ‹d__ ) 245 #ià __GNUC_PREREQ (2,8) 246  #__©Œibu‹_fÜm©_¬g__ ( x è `__©Œibu‹__ (( `__fÜm©_¬g__ (x))) ) 248  #__©Œibu‹_fÜm©_¬g__ ( x è ) 255 #ià __GNUC_PREREQ (2,97) 256  #__©Œibu‹_fÜm©_¡rfmÚ__ ( a , b ) \ 257 `__©Œibu‹__ (( `__fÜm©__ ( __¡rfmÚ__ , a , b ))) ) 259  #__©Œibu‹_fÜm©_¡rfmÚ__ ( a , b è ) 264 #ià __GNUC_PREREQ (3,3) 265  #__nÚnuÎ ( ·¿ms è `__©Œibu‹__ (( __nÚnuÎ__ …¬ams)) ) 267  #__nÚnuÎ ( ·¿ms ) ) 272 #ià __GNUC_PREREQ (3,4) 273  #__©Œibu‹_w¬n_unu£d_»suÉ__ \ 274 `__©Œibu‹__ (( __w¬n_unu£d_»suÉ__ )) ) 275 #ià __USE_FORTIFY_LEVEL > 0 276  #__wur __©Œibu‹_w¬n_unu£d_»suÉ__ ) 279  #__©Œibu‹_w¬n_unu£d_»suÉ__ ) 281 #iâdeà __wur 282  #__wur ) 286 #ià __GNUC_PREREQ (3,2) 287  #__®ways_šlše __šlše `__©Œibu‹__ (( __®ways_šlše__ )) ) 289  #__®ways_šlše __šlše ) 294 #ià! defšed __ýlu¥lus || __GNUC_PREREQ (4,3) 295 #ià defšed __GNUC_STDC_INLINE__ || defšed __ýlu¥lus 296  #__ex‹º_šlše __šlše `__©Œibu‹__ (( __gnu_šlše__ )) ) 297 #ià __GNUC_PREREQ (4,3) 298  #__ex‹º_®ways_šlše \ 299 __®ways_šlše `__©Œibu‹__ (( __gnu_šlše__ , __¬tificŸl__ )) ) 301  #__ex‹º_®ways_šlše \ 302 __®ways_šlše `__©Œibu‹__ (( __gnu_šlše__ )) ) 305  #__ex‹º_šlše __šlše ) 306  #__ex‹º_®ways_šlše __®ways_šlše ) 312 #ià __GNUC_PREREQ (4,3) 313  #__va_¬g_·ck (è `__bužtš_va_¬g_·ck () ) 314  #__va_¬g_·ck_Ën (è `__bužtš_va_¬g_·ck_Ën () ) 321 #ià! __GNUC_PREREQ (2,8) 322  #__ex‹nsiÚ__ ) 326 #ià! __GNUC_PREREQ (2,92) 327  #__»¡riù ) 333 #ià __GNUC_PREREQ (3,1è&& ! defšed __GNUG__ 334  #__»¡riù_¬r __»¡riù ) 336 #ifdeà __GNUC__ 337  #__»¡riù_¬r ) 339 #ià defšed __STDC_VERSION__ && __STDC_VERSION__ >= 199901L 340  #__»¡riù_¬r »¡riù ) 343  #__»¡riù_¬r ) 348  ~ 350 #ià defšed __LONG_DOUBLE_MATH_OPTIONAL && defšed __NO_LONG_DOUBLE_MATH 351  #__LDBL_COMPAT 1 ) 352 #ifdeà __REDIRECT 353  #__LDBL_REDIR1 ( Çme , ´Ùo , ®Ÿs è `__REDIRECT (Çme,…rÙo,‡lŸs) ) 354  #__LDBL_REDIR ( Çme , ´Ùo ) \ 355 `__LDBL_REDIR1 ( Çme , ´Ùo , __Ædbl_ ##Çme) ) 356  #__LDBL_REDIR1_NTH ( Çme , ´Ùo , ®Ÿs è `__REDIRECT_NTH (Çme,…rÙo,‡lŸs) ) 357  #__LDBL_REDIR_NTH ( Çme , ´Ùo ) \ 358 `__LDBL_REDIR1_NTH ( Çme , ´Ùo , __Ædbl_ ##Çme) ) 359  #__LDBL_REDIR1_DECL ( Çme , ®Ÿs ) \ 360 `__ty³of ( Çme èÇm `__asm ( `__ASMNAME (#®Ÿs)); ) 361  #__LDBL_REDIR_DECL ( Çme ) \ 362 `__ty³of ( Çme èÇm `__asm ( `__ASMNAME ("__Ædbl_" #Çme)); ) 363  #__REDIRECT_LDBL ( Çme , ´Ùo , ®Ÿs ) \ 364 `__LDBL_REDIR1 ( Çme , ´Ùo , __Ædbl_ ## ®Ÿs ) ) 365  #__REDIRECT_NTH_LDBL ( Çme , ´Ùo , ®Ÿs ) \ 366 `__LDBL_REDIR1_NTH ( Çme , ´Ùo , __Ædbl_ ## ®Ÿs ) ) 369 #ià! defšed __LDBL_COMPAT || !defšed __REDIRECT 370  #__LDBL_REDIR1 ( Çme , ´Ùo , ®Ÿs èÇm ) proto 371  #__LDBL_REDIR ( Çme , ´Ùo èÇm ) proto 372  #__LDBL_REDIR1_NTH ( Çme , ´Ùo , ®Ÿs èÇm´ÙØ __THROW ) 373  #__LDBL_REDIR_NTH ( Çme , ´Ùo èÇm´ÙØ __THROW ) 374  #__LDBL_REDIR_DECL ( Çme ) ) 375 #ifdeà __REDIRECT 376  #__REDIRECT_LDBL ( Çme , ´Ùo , ®Ÿs è `__REDIRECT (Çme,…rÙo,‡lŸs) ) 377  #__REDIRECT_NTH_LDBL ( Çme , ´Ùo , ®Ÿs ) \ 378 `__REDIRECT_NTH ( Çme , ´Ùo , ®Ÿs ) ) @/usr/include/sys/syslog.h 32 #iâdeà _SYS_SYSLOG_H 33  #_SYS_SYSLOG_H 1 ) 35  ~<ã©u»s.h > 36  #__Ãed___va_li¡ ) 37  ~<¡d¬g.h > 40  ~ 51  #LOG_EMERG 0 ) 52  #LOG_ALERT 1 ) 53  #LOG_CRIT 2 ) 54  #LOG_ERR 3 ) 55  #LOG_WARNING 4 ) 56  #LOG_NOTICE 5 ) 57  #LOG_INFO 6 ) 58  #LOG_DEBUG 7 ) 60  #LOG_PRIMASK 0x07 ) 62  #LOG_PRI ( p è(Õè& LOG_PRIMASK ) ) 63  #LOG_MAKEPRI ( çc , ´i è(((çcè<< 3è| (´i)) ) 65 #ifdeà SYSLOG_NAMES 66  #INTERNAL_NOPRI 0x10 ) 68  #INTERNAL_MARK `LOG_MAKEPRI ( LOG_NFACILITIES , 0) ) 69  s_code { 70 * mc_Çme ; 71  mc_v® ; 72 } tCODE ; 74 CODE g´iÜ™yÇmes [] = 76 { "®”t", LOG_ALERT }, 77 { "ü™", LOG_CRIT }, 78 { "debug", LOG_DEBUG }, 79 { "em”g", LOG_EMERG }, 80 { "”r", LOG_ERR }, 81 { "”rÜ", LOG_ERR }, 82 { "šfo", LOG_INFO }, 83 { "nÚe", INTERNAL_NOPRI }, 84 { "nÙiû", LOG_NOTICE }, 85 { "·nic", LOG_EMERG }, 86 { "w¬n", LOG_WARNING }, 87 { "w¬nšg", LOG_WARNING }, 88 { NULL , -1 } 93  #LOG_KERN (0<<3è ) 94  #LOG_USER (1<<3è ) 95  #LOG_MAIL (2<<3è ) 96  #LOG_DAEMON (3<<3è ) 97  #LOG_AUTH (4<<3è ) 98  #LOG_SYSLOG (5<<3è ) 99  #LOG_LPR (6<<3è ) 100  #LOG_NEWS (7<<3è ) 101  #LOG_UUCP (8<<3è ) 102  #LOG_CRON (9<<3è ) 103  #LOG_AUTHPRIV (10<<3è ) 104  #LOG_FTP (11<<3è ) 107  #LOG_LOCAL0 (16<<3è ) 108  #LOG_LOCAL1 (17<<3è ) 109  #LOG_LOCAL2 (18<<3è ) 110  #LOG_LOCAL3 (19<<3è ) 111  #LOG_LOCAL4 (20<<3è ) 112  #LOG_LOCAL5 (21<<3è ) 113  #LOG_LOCAL6 (22<<3è ) 114  #LOG_LOCAL7 (23<<3è ) 116  #LOG_NFACILITIES 24 ) 117  #LOG_FACMASK 0x03f8 ) 119  #LOG_FAC ( p è((Õè& LOG_FACMASK è>> 3) ) 121 #ifdeà SYSLOG_NAMES 122 CODE gçcž™yÇmes [] = 124 { "auth", LOG_AUTH }, 125 { "auth´iv", LOG_AUTHPRIV }, 126 { "üÚ", LOG_CRON }, 127 { "d«mÚ", LOG_DAEMON }, 128 { "áp", LOG_FTP }, 129 { "k”n", LOG_KERN }, 130 { "Ír", LOG_LPR }, 131 { "maž", LOG_MAIL }, 132 { "m¬k", INTERNAL_MARK }, 133 { "Ãws", LOG_NEWS }, 134 { "£cur™y", LOG_AUTH }, 135 { "sy¦og", LOG_SYSLOG }, 136 { "u£r", LOG_USER }, 137 { "uuý", LOG_UUCP }, 138 { "loÿl0", LOG_LOCAL0 }, 139 { "loÿl1", LOG_LOCAL1 }, 140 { "loÿl2", LOG_LOCAL2 }, 141 { "loÿl3", LOG_LOCAL3 }, 142 { "loÿl4", LOG_LOCAL4 }, 143 { "loÿl5", LOG_LOCAL5 }, 144 { "loÿl6", LOG_LOCAL6 }, 145 { "loÿl7", LOG_LOCAL7 }, 146 { NULL , -1 } 153  #LOG_MASK ( ´i è(1 << (´i)è ) 154  #LOG_UPTO ( ´i è((1 << (Õri)+1)è- 1è ) 162  #LOG_PID 0x01 ) 163  #LOG_CONS 0x02 ) 164  #LOG_ODELAY 0x04 ) 165  #LOG_NDELAY 0x08 ) 166  #LOG_NOWAIT 0x10 ) 167  #LOG_PERROR 0x20 ) 169 __BEGIN_DECLS 175  þo£log (); 181  Ý’log ( __cÚ¡ * __id’t ,  __ÝtiÚ ,  __çcž™y ); 184  $£Žogmask ( __mask è __THROW ; 190  $sy¦og ( __´i , __cÚ¡ * __fmt , ...) 191 `__©Œibu‹__ (( `__fÜm©__ ( __´štf__ , 2, 3))); 193 #ifdeà __USE_BSD 200  $vsy¦og ( __´i , __cÚ¡ * __fmt , __gnuc_va_li¡ __­ ) 201 `__©Œibu‹__ (( `__fÜm©__ ( __´štf__ , 2, 0))); 206 #ià __USE_FORTIFY_LEVEL > 0 && defšed __ex‹º_®ways_šlše 207  ~ 209 #ifdeà __LDBL_COMPAT 210  ~ 213 __END_DECLS @/usr/include/sys/sysmacros.h 21 #iâdeà _SYS_SYSMACROS_H 22  #_SYS_SYSMACROS_H 1 ) 24  ~<ã©u»s.h > 29 #ifdeà __GLIBC_HAVE_LONG_LONG 30 __ex‹nsiÚ__ 31  $gnu_dev_majÜ ( __dev ) 32 __THROW ; 33 __ex‹nsiÚ__ 34  $gnu_dev_mšÜ ( __dev ) 35 __THROW ; 36 __ex‹nsiÚ__ 37  $gnu_dev_makedev ( __majÜ , 38  __mšÜ ) 39 __THROW ; 41 #ià defšed __GNUC__ && __GNUC__ >ð2 && defšed __USE_EXTERN_INLINES 42 __ex‹nsiÚ__ __ex‹º_šlše  43 `__NTH ( $gnu_dev_majÜ ( __dev )) 45  (( __dev >> 8) & 0xfff) | (() (__dev >> 32) & ~0xfff); 46 } } 48 __ex‹nsiÚ__ __ex‹º_šlše  49 __NTH ( $gnu_dev_mšÜ ( __dev )) 51  ( __dev & 0xff) | (() (__dev >> 12) & ~0xff); 52 } } 54 __ex‹nsiÚ__ __ex‹º_šlše  55 __NTH ( $gnu_dev_makedev ( __majÜ ,  __mšÜ )) 57  (( __mšÜ & 0xffè| (( __majÜ & 0xfff) << 8) 58 | (((è( __mšÜ & ~0xff)) << 12) 59 | (((è( __majÜ & ~0xfff)) << 32)); 60 } } 65  #majÜ ( dev è `gnu_dev_majÜ (dev) ) 66  #mšÜ ( dev è `gnu_dev_mšÜ (dev) ) 67  #makedev ( maj , mš è `gnu_dev_makedev (maj, mš) ) @/usr/include/sys/ttydefaults.h 40 #iâdeà _SYS_TTYDEFAULTS_H_ 41  #_SYS_TTYDEFAULTS_H_ ) 46  #TTYDEF_IFLAG ( BRKINT | ISTRIP | ICRNL | IMAXBEL | IXON | IXANY ) ) 47  #TTYDEF_OFLAG ( OPOST | ONLCR | XTABS ) ) 48  #TTYDEF_LFLAG ( ECHO | ICANON | ISIG | IEXTEN | ECHOE | ECHOKE | ECHOCTL ) ) 49  #TTYDEF_CFLAG ( CREAD | CS7 | PARENB | HUPCL ) ) 50  #TTYDEF_SPEED ( B9600 ) ) 55  #CTRL ( x è(x&037) ) 56  #CEOF `CTRL ('d') ) 57 #ifdeà _POSIX_VDISABLE 58  #CEOL _POSIX_VDISABLE ) 60  #CEOL '\0' ) 62  #CERASE 0177 ) 63  #CINTR `CTRL ('c') ) 64 #ifdeà _POSIX_VDISABLE 65  #CSTATUS _POSIX_VDISABLE ) 67  #CSTATUS '\0' ) 69  #CKILL `CTRL ('u') ) 70  #CMIN 1 ) 71  #CQUIT 034 ) 72  #CSUSP `CTRL ('z') ) 73  #CTIME 0 ) 74  #CDSUSP `CTRL ('y') ) 75  #CSTART `CTRL ('q') ) 76  #CSTOP `CTRL ('s') ) 77  #CLNEXT `CTRL ('v') ) 78  #CDISCARD `CTRL ('o') ) 79  #CWERASE `CTRL ('w') ) 80  #CREPRINT `CTRL ('r') ) 81  #CEOT CEOF ) 83  #CBRK CEOL ) 84  #CRPRNT CREPRINT ) 85  #CFLUSH CDISCARD ) 93 #ifdeà TTYDEFCHARS 94 cc_t g‰ydefch¬s [ NCCS ] = { 95 CEOF , CEOL , CEOL, CERASE , CWERASE , CKILL , CREPRINT , 96 _POSIX_VDISABLE , CINTR , CQUIT , CSUSP , CDSUSP , CSTART , CSTOP , CLNEXT , 97 CDISCARD , CMIN , CTIME , CSTATUS , _POSIX_VDISABLE 99 #undeà TTYDEFCHARS @/usr/include/sys/ucontext.h 19 #iâdeà _SYS_UCONTEXT_H 20  #_SYS_UCONTEXT_H 1 ) 22  ~<ã©u»s.h > 23  ~ 24  ~ 28  ~ 30 #ià __WORDSIZE == 64 33  tg»g_t ; 36  #NGREG 23 ) 39  g»g_t tg»g£t_t [ NGREG ]; 41 #ifdeà __USE_GNU 45 mREG_R8 = 0, 46  #REG_R8 REG_R8 ) 47 mREG_R9 , 48  #REG_R9 REG_R9 ) 49 mREG_R10 , 50  #REG_R10 REG_R10 ) 51 mREG_R11 , 52  #REG_R11 REG_R11 ) 53 mREG_R12 , 54  #REG_R12 REG_R12 ) 55 mREG_R13 , 56  #REG_R13 REG_R13 ) 57 mREG_R14 , 58  #REG_R14 REG_R14 ) 59 mREG_R15 , 60  #REG_R15 REG_R15 ) 61 mREG_RDI , 62  #REG_RDI REG_RDI ) 63 mREG_RSI , 64  #REG_RSI REG_RSI ) 65 mREG_RBP , 66  #REG_RBP REG_RBP ) 67 mREG_RBX , 68  #REG_RBX REG_RBX ) 69 mREG_RDX , 70  #REG_RDX REG_RDX ) 71 mREG_RAX , 72  #REG_RAX REG_RAX ) 73 mREG_RCX , 74  #REG_RCX REG_RCX ) 75 mREG_RSP , 76  #REG_RSP REG_RSP ) 77 mREG_RIP , 78  #REG_RIP REG_RIP ) 79 mREG_EFL , 80  #REG_EFL REG_EFL ) 81 mREG_CSGSFS , 82  #REG_CSGSFS REG_CSGSFS ) 83 mREG_ERR , 84  #REG_ERR REG_ERR ) 85 mREG_TRAPNO , 86  #REG_TRAPNO REG_TRAPNO ) 87 mREG_OLDMASK , 88  #REG_OLDMASK REG_OLDMASK ) 89 mREG_CR2 90  #REG_CR2 REG_CR2 ) 94  s_libc_åx»g 96  msignifiÿnd [4]; 97  mexpÚ’t ; 98  m·ddšg [3]; 101  s_libc_xmm»g 103 __ušt32_t m–em’t [4]; 106  s_libc_å¡©e 109 __ušt16_t mcwd ; 110 __ušt16_t mswd ; 111 __ušt16_t máw ; 112 __ušt16_t mfÝ ; 113 __ušt64_t mr ; 114 __ušt64_t mrdp ; 115 __ušt32_t mmxc¤ ; 116 __ušt32_t mmxü_mask ; 117  _libc_åx»g m_¡ [8]; 118  _libc_xmm»g m_xmm [16]; 119 __ušt32_t m·ddšg [24]; 123  _libc_å¡©e * tå»g£t_t ; 128 g»g£t_t mg»gs ; 130 å»g£t_t må»gs ; 131  m__»£rved1 [8]; 132 } tmcÚ‹xt_t ; 135  sucÚ‹xt 137  muc_æags ; 138  ucÚ‹xt * muc_lšk ; 139 ¡ack_t muc_¡ack ; 140 mcÚ‹xt_t muc_mcÚ‹xt ; 141 __sig£t_t muc_sigmask ; 142  _libc_å¡©e m__å»gs_mem ; 143 } tucÚ‹xt_t ; 148  tg»g_t ; 151  #NGREG 19 ) 154  g»g_t tg»g£t_t [ NGREG ]; 156 #ifdeà __USE_GNU 160 mREG_GS = 0, 161  #REG_GS REG_GS ) 162 mREG_FS , 163  #REG_FS REG_FS ) 164 mREG_ES , 165  #REG_ES REG_ES ) 166 mREG_DS , 167  #REG_DS REG_DS ) 168 mREG_EDI , 169  #REG_EDI REG_EDI ) 170 mREG_ESI , 171  #REG_ESI REG_ESI ) 172 mREG_EBP , 173  #REG_EBP REG_EBP ) 174 mREG_ESP , 175  #REG_ESP REG_ESP ) 176 mREG_EBX , 177  #REG_EBX REG_EBX ) 178 mREG_EDX , 179  #REG_EDX REG_EDX ) 180 mREG_ECX , 181  #REG_ECX REG_ECX ) 182 mREG_EAX , 183  #REG_EAX REG_EAX ) 184 mREG_TRAPNO , 185  #REG_TRAPNO REG_TRAPNO ) 186 mREG_ERR , 187  #REG_ERR REG_ERR ) 188 mREG_EIP , 189  #REG_EIP REG_EIP ) 190 mREG_CS , 191  #REG_CS REG_CS ) 192 mREG_EFL , 193  #REG_EFL REG_EFL ) 194 mREG_UESP , 195  #REG_UESP REG_UESP ) 196 mREG_SS 197  #REG_SS REG_SS ) 202  s_libc_å»g 204  msignifiÿnd [4]; 205  mexpÚ’t ; 208  s_libc_å¡©e 210  mcw ; 211  msw ; 212  mg ; 213  moff ; 214  mcs£l ; 215  md©aoff ; 216  md©a£l ; 217  _libc_å»g m_¡ [8]; 218  m¡©us ; 222  _libc_å¡©e * tå»g£t_t ; 227 g»g£t_t mg»gs ; 230 å»g£t_t må»gs ; 231  mÞdmask ; 232  mü2 ; 233 } tmcÚ‹xt_t ; 236  sucÚ‹xt 238  muc_æags ; 239  ucÚ‹xt * muc_lšk ; 240 ¡ack_t muc_¡ack ; 241 mcÚ‹xt_t muc_mcÚ‹xt ; 242 __sig£t_t muc_sigmask ; 243  _libc_å¡©e m__å»gs_mem ; 244 } tucÚ‹xt_t ; @/usr/include/xlocale.h 21 #iâdeà _XLOCALE_H 22  #_XLOCALE_H 1 ) 28  s__loÿË_¡ruù 31  loÿË_d©a * m__loÿËs [13]; 34 cÚ¡ * m__ùy³_b ; 35 cÚ¡ * m__ùy³_tÞow” ; 36 cÚ¡ * m__ùy³_touµ” ; 39 cÚ¡ * m__Çmes [13]; 40 } * t__loÿË_t ; @/usr/include/zconf.h 8 #iâdeà ZCONF_H 9  #ZCONF_H ) 17 #ifdeà Z_PREFIX 20  #_di¡_code z__di¡_code ) 21  #_Ëngth_code z__Ëngth_code ) 22  #_Œ_®ign z__Œ_®ign ) 23  #_Œ_æush_block z__Œ_æush_block ) 24  #_Œ_š™ z__Œ_š™ ) 25  #_Œ_¡Üed_block z__Œ_¡Üed_block ) 26  #_Œ_Îy z__Œ_Îy ) 27  #adËr32 z_adËr32 ) 28  #adËr32_combše z_adËr32_combše ) 29  #com´ess z_com´ess ) 30  #com´ess2 z_com´ess2 ) 31  #com´essBound z_com´essBound ) 32  #üc32 z_üc32 ) 33  #üc32_combše z_üc32_combše ) 34  #deæ©e z_deæ©e ) 35  #deæ©eBound z_deæ©eBound ) 36  #deæ©eCÝy z_deæ©eCÝy ) 37  #deæ©eEnd z_deæ©eEnd ) 38  #deæ©eIn™2_ z_deæ©eIn™2_ ) 39  #deæ©eIn™_ z_deæ©eIn™_ ) 40  #deæ©eP¬ams z_deæ©eP¬ams ) 41  #deæ©ePrime z_deæ©ePrime ) 42  #deæ©eRe£t z_deæ©eRe£t ) 43  #deæ©eS‘DiùiÚ¬y z_deæ©eS‘DiùiÚ¬y ) 44  #deæ©eS‘H—d” z_deæ©eS‘H—d” ) 45  #deæ©eTuà z_deæ©eTuà ) 46  #deæ©e_cÝyright z_deæ©e_cÝyright ) 47  #g‘_üc_bË z_g‘_üc_bË ) 48  #gzþ—»¼ z_gzþ—»¼ ) 49  #gzþo£ z_gzþo£ ) 50  #gzdœeù z_gzdœeù ) 51  #gzdÝ’ z_gzdÝ’ ) 52  #gzeof z_gzeof ) 53  #gz”rÜ z_gz”rÜ ) 54  #gzæush z_gzæush ) 55  #gzg‘c z_gzg‘c ) 56  #gzg‘s z_gzg‘s ) 57  #gzÝ’ z_gzÝ’ ) 58  #gz´štf z_gz´štf ) 59  #gzputc z_gzputc ) 60  #gzputs z_gzputs ) 61  #gz»ad z_gz»ad ) 62  #gz»wšd z_gz»wšd ) 63  #gz£ek z_gz£ek ) 64  #gz£¬ams z_gz£¬ams ) 65  #gz‹Î z_gz‹Î ) 66  #gzung‘c z_gzung‘c ) 67  #gzwr™e z_gzwr™e ) 68  #šæ©e z_šæ©e ) 69  #šæ©eBack z_šæ©eBack ) 70  #šæ©eBackEnd z_šæ©eBackEnd ) 71  #šæ©eBackIn™_ z_šæ©eBackIn™_ ) 72  #šæ©eCÝy z_šæ©eCÝy ) 73  #šæ©eEnd z_šæ©eEnd ) 74  #šæ©eG‘H—d” z_šæ©eG‘H—d” ) 75  #šæ©eIn™2_ z_šæ©eIn™2_ ) 76  #šæ©eIn™_ z_šæ©eIn™_ ) 77  #šæ©ePrime z_šæ©ePrime ) 78  #šæ©eRe£t z_šæ©eRe£t ) 79  #šæ©eS‘DiùiÚ¬y z_šæ©eS‘DiùiÚ¬y ) 80  #šæ©eSync z_šæ©eSync ) 81  #šæ©eSyncPošt z_šæ©eSyncPošt ) 82  #šæ©e_cÝyright z_šæ©e_cÝyright ) 83  #šæ©e_ç¡ z_šæ©e_ç¡ ) 84  #šæ©e_bË z_šæ©e_bË ) 85  #uncom´ess z_uncom´ess ) 86  #zE¼Ü z_zE¼Ü ) 87  #z_”rmsg z_z_”rmsg ) 88  #zÿÎoc z_zÿÎoc ) 89  #zcä“ z_zcä“ ) 90  #zlibCompžeFÏgs z_zlibCompžeFÏgs ) 91  #zlibV”siÚ z_zlibV”siÚ ) 94  #By‹ z_By‹ ) 95  #By‹f z_By‹f ) 96  #®loc_func z_®loc_func ) 97  #ch¬f z_ch¬f ) 98  #ä“_func z_ä“_func ) 99  #gzFže z_gzFže ) 100  #gz_h—d” z_gz_h—d” ) 101  #gz_h—d”p z_gz_h—d”p ) 102  #š_func z_š_func ) 103  #štf z_štf ) 104  #out_func z_out_func ) 105  #uIÁ z_uIÁ ) 106  #uIÁf z_uIÁf ) 107  #uLÚg z_uLÚg ) 108  #uLÚgf z_uLÚgf ) 109  #voidp z_voidp ) 110  #voidp z_voidp ) 111  #voidpc z_voidpc ) 112  #voidpc z_voidpc ) 113  #voidpf z_voidpf ) 114  #voidpf z_voidpf ) 115  #z_¡»am z_z_¡»am ) 116  #z_¡»amp z_z_¡»amp ) 119  #gz_h—d”_s z_gz_h—d”_s ) 120  #š‹º®_¡©e z_š‹º®_¡©e ) 121  #z_¡»am_s z_z_¡»am_s ) 125 #ià defšed ( __MSDOS__ è&& !defšed( MSDOS ) 126  #MSDOS ) 128 #ià( defšed ( OS_2 è|| defšed( __OS2__ )è&& !defšed( OS2 ) 129  #OS2 ) 131 #ià defšed ( _WINDOWS è&& !defšed( WINDOWS ) 132  #WINDOWS ) 134 #ià defšed ( _WIN32 è|| defšed( _WIN32_WCE è|| defšed( __WIN32__ ) 135 #iâdeà WIN32 136  #WIN32 ) 139 #ià( defšed ( MSDOS è|| defšed( OS2 è|| defšed( WINDOWS )è&& !defšed( WIN32 ) 140 #ià! defšed ( __GNUC__ è&& !defšed( __FLAT__ è&& !defšed( __386__ ) 141 #iâdeà SYS16BIT 142  #SYS16BIT ) 151 #ifdeà SYS16BIT 152  #MAXSEG_64K ) 154 #ifdeà MSDOS 155  #UNALIGNED_OK ) 158 #ifdeà __STDC_VERSION__ 159 #iâdeà STDC 160  #STDC ) 162 #ià __STDC_VERSION__ >= 199901L 163 #iâdeà STDC99 164  #STDC99 ) 168 #ià! defšed ( STDC è&& (defšed( __STDC__ è|| defšed( __ýlu¥lus )) 169  #STDC ) 171 #ià! defšed ( STDC è&& (defšed( __GNUC__ è|| defšed( __BORLANDC__ )) 172  #STDC ) 174 #ià! defšed ( STDC è&& (defšed( MSDOS è|| defšed( WINDOWS è|| defšed( WIN32 )) 175  #STDC ) 177 #ià! defšed ( STDC è&& (defšed( OS2 è|| defšed( __HOS_AIX__ )) 178  #STDC ) 181 #ià defšed ( __OS400__ è&& !defšed( STDC ) 182  #STDC ) 185 #iâdeà STDC 187 cÚ¡ ) 192 #ià defšed ( __MWERKS__ )||defšed( ­¶ec )||defšed( THINK_C )||defšed( __SC__ ) 193  #NO_DUMMY_DECL ) 197 #iâdeà MAX_MEM_LEVEL 198 #ifdeà MAXSEG_64K 199  #MAX_MEM_LEVEL 8 ) 201  #MAX_MEM_LEVEL 9 ) 210 #iâdeà MAX_WBITS 211  #MAX_WBITS 15 ) 229 #iâdeà OF 230 #ifdeà STDC 231  #OF ( ¬gs è ) args 233  #OF ( ¬gs è() ) 243 #ifdeà SYS16BIT 244 #ià defšed ( M_I86SM è|| defšed( M_I86MM ) 246  #SMALL_MEDIUM ) 247 #ifdeà _MSC_VER 248  #FAR _çr ) 250  #FAR çr ) 253 #ià( defšed ( __SMALL__ è|| defšed( __MEDIUM__ )) 255  #SMALL_MEDIUM ) 256 #ifdeà __BORLANDC__ 257  #FAR _çr ) 259  #FAR çr ) 264 #ià defšed ( WINDOWS è|| defšed( WIN32 ) 268 #ifdeà ZLIB_DLL 269 #ià defšed ( WIN32 è&& (!defšed( __BORLANDC__ ) || (__BORLANDC__ >= 0x500)) 270 #ifdeà ZLIB_INTERNAL 271  #ZEXTERN `__deþ¥ec ( dÎexpÜt ) ) 273  #ZEXTERN `__deþ¥ec ( dÎimpÜt ) ) 281 #ifdeà ZLIB_WINAPI 282 #ifdeà FAR 283 #undeà FAR 285  ~ 288  #ZEXPORT WINAPI ) 289 #ifdeà WIN32 290  #ZEXPORTVA WINAPIV ) 292  #ZEXPORTVA FAR CDECL ) 297 #ià defšed ( __BEOS__ ) 298 #ifdeà ZLIB_DLL 299 #ifdeà ZLIB_INTERNAL 300  #ZEXPORT `__deþ¥ec ( dÎexpÜt ) ) 301  #ZEXPORTVA `__deþ¥ec ( dÎexpÜt ) ) 303  #ZEXPORT `__deþ¥ec ( dÎimpÜt ) ) 304  #ZEXPORTVA `__deþ¥ec ( dÎimpÜt ) ) 309 #ifdeà HAVE_VISIBILITY_PRAGMA 310  #ZEXTERN `__©Œibu‹__ (( `visibž™y ("deçuÉ"))è ) 313 #iâdeà ZEXTERN 314  #ZEXTERN ) 316 #iâdeà ZEXPORT 317  #ZEXPORT ) 319 #iâdeà ZEXPORTVA 320  #ZEXPORTVA ) 323 #iâdeà FAR 324  #FAR ) 327 #ià! defšed ( __MACTYPES__ ) 328  tBy‹ ; 330  tuIÁ ; 331  tuLÚg ; 333 #ifdeà SMALL_MEDIUM 335  #By‹f By‹ FAR ) 337  By‹ tFAR tBy‹f ; 339  tFAR tch¬f ; 340  tFAR tštf ; 341  uIÁ tFAR tuIÁf ; 342  uLÚg tFAR tuLÚgf ; 344 #ifdeà STDC 345 cÚ¡ * tvoidpc ; 346  tFAR * tvoidpf ; 347 * tvoidp ; 349  By‹ cÚ¡ * tvoidpc ; 350  By‹ tFAR * tvoidpf ; 351  By‹ * tvoidp ; 354  ~"zlibdefs.h " 356 #ifdeà _LARGEFILE64_SOURCE 357  ~ 360 #iâdeà SEEK_SET 361  #SEEK_SET 0 ) 362  #SEEK_CUR 1 ) 363  #SEEK_END 2 ) 365 #iâdeà z_off_t 366  #z_off_t  ) 369 #ià defšed ( __OS400__ ) 370  #NO_v¢´štf ) 373 #ià defšed ( __MVS__ ) 374  #NO_v¢´štf ) 378 #ià defšed ( __MVS__ ) 379 #´agm¨ m­ ( deæ©eIn™_ ,"DEIN") 380 #´agm¨ m­ ( deæ©eIn™2_ ,"DEIN2") 381 #´agm¨ m­ ( deæ©eEnd ,"DEEND") 382 #´agm¨ m­ ( deæ©eBound ,"DEBND") 383 #´agm¨ m­ ( šæ©eIn™_ ,"ININ") 384 #´agm¨ m­ ( šæ©eIn™2_ ,"ININ2") 385 #´agm¨ m­ ( šæ©eEnd ,"INEND") 386 #´agm¨ m­ ( šæ©eSync ,"INSY") 387 #´agm¨ m­ ( šæ©eS‘DiùiÚ¬y ,"INSEDI") 388 #´agm¨ m­ ( com´essBound ,"CMBND") 389 #´agm¨ m­ ( šæ©e_bË ,"INTABL") 390 #´agm¨ m­ ( šæ©e_ç¡ ,"INFA") 391 #´agm¨ m­ ( šæ©e_cÝyright ,"INCOPY") @/usr/include/_G_config.h 4 #iâdeà _G_cÚfig_h 5  #_G_cÚfig_h 1 ) 9  ~ 10  #__Ãed_size_t ) 11 #ià defšed _LIBC || defšed _GLIBCPP_USE_WCHAR_T 12  #__Ãed_wch¬_t ) 14  #__Ãed_NULL ) 15  ~<¡ddef.h > 16  #__Ãed_mb¡©e_t ) 17 #ià defšed _LIBC || defšed _GLIBCPP_USE_WCHAR_T 18  #__Ãed_wšt_t ) 20  ~ 21  #_G_size_t size_t ) 24 __off_t m__pos ; 25 __mb¡©e_t m__¡©e ; 26 } t_G_åos_t ; 29 __off64_t m__pos ; 30 __mb¡©e_t m__¡©e ; 31 } t_G_åos64_t ; 32  #_G_ssize_t __ssize_t ) 33  #_G_off_t __off_t ) 34  #_G_off64_t __off64_t ) 35  #_G_pid_t __pid_t ) 36  #_G_uid_t __uid_t ) 37  #_G_wch¬_t wch¬_t ) 38  #_G_wšt_t wšt_t ) 39  #_G_¡©64 ¡©64 ) 40 #ià defšed _LIBC || defšed _GLIBCPP_USE_WCHAR_T 41  ~ 44  __gcÚv_šfo m__cd ; 47  __gcÚv_šfo m__cd ; 48  __gcÚv_¡•_d©a m__d©a ; 49 } m__combšed ; 50 } t_G_icÚv_t ; 53  t_G_št16_t t__©Œibu‹__ (( t__mode__ ( t__HI__ ))); 54  t_G_št32_t t__©Œibu‹__ (( t__mode__ ( t__SI__ ))); 55  t_G_ušt16_t t__©Œibu‹__ (( t__mode__ ( t__HI__ ))); 56  t_G_ušt32_t t__©Œibu‹__ (( t__mode__ ( t__SI__ ))); 58  #_G_HAVE_BOOL 1 ) 62  #_G_HAVE_ATEXIT 1 ) 63  #_G_HAVE_SYS_CDEFS 1 ) 64  #_G_HAVE_SYS_WAIT 1 ) 65  #_G_NEED_STDARG_H 1 ) 66  #_G_va_li¡ __gnuc_va_li¡ ) 68  #_G_HAVE_PRINTF_FP 1 ) 69  #_G_HAVE_MMAP 1 ) 70  #_G_HAVE_MREMAP 1 ) 71  #_G_HAVE_LONG_DOUBLE_IO 1 ) 72  #_G_HAVE_IO_FILE_OPEN 1 ) 73  #_G_HAVE_IO_GETLINE_INFO 1 ) 75  #_G_IO_IO_FILE_VERSION 0x20001 ) 77  #_G_OPEN64 __Ý’64 ) 78  #_G_LSEEK64 __l£ek64 ) 79  #_G_MMAP64 __mm­64 ) 80  #_G_FSTAT64 ( fd , buf è `__fx¡©64 ( _STAT_VER , fd, buf) ) 83  #_G_HAVE_ST_BLKSIZE `defšed ( _STATBUF_ST_BLKSIZE ) ) 85  #_G_BUFSIZ 8192 ) 88  #_G_NAMES_HAVE_UNDERSCORE 0 ) 89  #_G_VTABLE_LABEL_HAS_LENGTH 1 ) 90  #_G_USING_THUNKS 1 ) 91  #_G_VTABLE_LABEL_PREFIX "__vt_" ) 92  #_G_VTABLE_LABEL_PREFIX_ID __vt_ ) 95 #ià defšed __ýlu¥lus || defšed __STDC__ 96  #_G_ARGS ( ARGLIST è ) ARGLIST 98  #_G_ARGS ( ARGLIST è() ) @/usr/include/asm/ioctls.h 1 #iâdeà _ASM_X86_IOCTLS_H 2  #_ASM_X86_IOCTLS_H ) 4  ~ 8  #TCGETS 0x5401 ) 9  #TCSETS 0x5402 ) 10  #TCSETSW 0x5403 ) 11  #TCSETSF 0x5404 ) 12  #TCGETA 0x5405 ) 13  #TCSETA 0x5406 ) 14  #TCSETAW 0x5407 ) 15  #TCSETAF 0x5408 ) 16  #TCSBRK 0x5409 ) 17  #TCXONC 0x540A ) 18  #TCFLSH 0x540B ) 19  #TIOCEXCL 0x540C ) 20  #TIOCNXCL 0x540D ) 21  #TIOCSCTTY 0x540E ) 22  #TIOCGPGRP 0x540F ) 23  #TIOCSPGRP 0x5410 ) 24  #TIOCOUTQ 0x5411 ) 25  #TIOCSTI 0x5412 ) 26  #TIOCGWINSZ 0x5413 ) 27  #TIOCSWINSZ 0x5414 ) 28  #TIOCMGET 0x5415 ) 29  #TIOCMBIS 0x5416 ) 30  #TIOCMBIC 0x5417 ) 31  #TIOCMSET 0x5418 ) 32  #TIOCGSOFTCAR 0x5419 ) 33  #TIOCSSOFTCAR 0x541A ) 34  #FIONREAD 0x541B ) 35  #TIOCINQ FIONREAD ) 36  #TIOCLINUX 0x541C ) 37  #TIOCCONS 0x541D ) 38  #TIOCGSERIAL 0x541E ) 39  #TIOCSSERIAL 0x541F ) 40  #TIOCPKT 0x5420 ) 41  #FIONBIO 0x5421 ) 42  #TIOCNOTTY 0x5422 ) 43  #TIOCSETD 0x5423 ) 44  #TIOCGETD 0x5424 ) 45  #TCSBRKP 0x5425 ) 47  #TIOCSBRK 0x5427 ) 48  #TIOCCBRK 0x5428 ) 49  #TIOCGSID 0x5429 ) 50  #TCGETS2 `_IOR ('T',0x2A,  ‹rmios2 ) ) 51  #TCSETS2 `_IOW ('T',0x2B,  ‹rmios2 ) ) 52  #TCSETSW2 `_IOW ('T',0x2C,  ‹rmios2 ) ) 53  #TCSETSF2 `_IOW ('T',0x2D,  ‹rmios2 ) ) 54  #TIOCGPTN `_IOR ('T',0x30, è ) 55  #TIOCSPTLCK `_IOW ('T',0x31, è ) 57  #FIONCLEX 0x5450 ) 58  #FIOCLEX 0x5451 ) 59  #FIOASYNC 0x5452 ) 60  #TIOCSERCONFIG 0x5453 ) 61  #TIOCSERGWILD 0x5454 ) 62  #TIOCSERSWILD 0x5455 ) 63  #TIOCGLCKTRMIOS 0x5456 ) 64  #TIOCSLCKTRMIOS 0x5457 ) 65  #TIOCSERGSTRUCT 0x5458 ) 66  #TIOCSERGETLSR 0x5459 ) 67  #TIOCSERGETMULTI 0x545A ) 68  #TIOCSERSETMULTI 0x545B ) 70  #TIOCMIWAIT 0x545C ) 71  #TIOCGICOUNT 0x545D ) 72  #TIOCGHAYESESP 0x545E ) 73  #TIOCSHAYESESP 0x545F ) 74  #FIOQSIZE 0x5460 ) 77  #TIOCPKT_DATA 0 ) 78  #TIOCPKT_FLUSHREAD 1 ) 79  #TIOCPKT_FLUSHWRITE 2 ) 80  #TIOCPKT_STOP 4 ) 81  #TIOCPKT_START 8 ) 82  #TIOCPKT_NOSTOP 16 ) 83  #TIOCPKT_DOSTOP 32 ) 85  #TIOCSER_TEMT 0x01 ) @/usr/include/asm/socket.h 1 #iâdeà _ASM_SOCKET_H 2  #_ASM_SOCKET_H ) 4  ~ 7  #SOL_SOCKET 1 ) 9  #SO_DEBUG 1 ) 10  #SO_REUSEADDR 2 ) 11  #SO_TYPE 3 ) 12  #SO_ERROR 4 ) 13  #SO_DONTROUTE 5 ) 14  #SO_BROADCAST 6 ) 15  #SO_SNDBUF 7 ) 16  #SO_RCVBUF 8 ) 17  #SO_SNDBUFFORCE 32 ) 18  #SO_RCVBUFFORCE 33 ) 19  #SO_KEEPALIVE 9 ) 20  #SO_OOBINLINE 10 ) 21  #SO_NO_CHECK 11 ) 22  #SO_PRIORITY 12 ) 23  #SO_LINGER 13 ) 24  #SO_BSDCOMPAT 14 ) 26  #SO_PASSCRED 16 ) 27  #SO_PEERCRED 17 ) 28  #SO_RCVLOWAT 18 ) 29  #SO_SNDLOWAT 19 ) 30  #SO_RCVTIMEO 20 ) 31  #SO_SNDTIMEO 21 ) 34  #SO_SECURITY_AUTHENTICATION 22 ) 35  #SO_SECURITY_ENCRYPTION_TRANSPORT 23 ) 36  #SO_SECURITY_ENCRYPTION_NETWORK 24 ) 38  #SO_BINDTODEVICE 25 ) 41  #SO_ATTACH_FILTER 26 ) 42  #SO_DETACH_FILTER 27 ) 44  #SO_PEERNAME 28 ) 45  #SO_TIMESTAMP 29 ) 46  #SCM_TIMESTAMP SO_TIMESTAMP ) 48  #SO_ACCEPTCONN 30 ) 50  #SO_PEERSEC 31 ) 51  #SO_PASSSEC 34 ) 52  #SO_TIMESTAMPNS 35 ) 53  #SCM_TIMESTAMPNS SO_TIMESTAMPNS ) 55  #SO_MARK 36 ) @/usr/include/bits/endian.h 3 #iâdeà _ENDIAN_H 7  #__BYTE_ORDER __LITTLE_ENDIAN ) @/usr/include/bits/libio-ldbl.h 20 #iâdeà _IO_STDIO_H 24 $__LDBL_REDIR_DECL ( _IO_vfsÿnf ) 25 `__LDBL_REDIR_DECL ( _IO_vårštf ) @/usr/include/bits/local_lim.h 25 #iâdeà NR_OPEN 26  #__undef_NR_OPEN ) 28 #iâdeà LINK_MAX 29  #__undef_LINK_MAX ) 31 #iâdeà OPEN_MAX 32  #__undef_OPEN_MAX ) 36  ~ 39 #ifdeà __undef_NR_OPEN 40 #undeà NR_OPEN 41 #undeà __undef_NR_OPEN 44 #ifdeà __undef_LINK_MAX 45 #undeà LINK_MAX 46 #undeà __undef_LINK_MAX 49 #ifdeà __undef_OPEN_MAX 50 #undeà OPEN_MAX 51 #undeà __undef_OPEN_MAX 55  #_POSIX_THREAD_KEYS_MAX 128 ) 57  #PTHREAD_KEYS_MAX 1024 ) 60  #_POSIX_THREAD_DESTRUCTOR_ITERATIONS 4 ) 62  #PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS ) 65  #_POSIX_THREAD_THREADS_MAX 64 ) 67 #undeà PTHREAD_THREADS_MAX 71  #AIO_PRIO_DELTA_MAX 20 ) 74  #PTHREAD_STACK_MIN 16384 ) 77  #DELAYTIMER_MAX 2147483647 ) 80  #TTY_NAME_MAX 32 ) 83  #LOGIN_NAME_MAX 256 ) 86  #HOST_NAME_MAX 64 ) 89  #MQ_PRIO_MAX 32768 ) 92  #SEM_VALUE_MAX (2147483647) ) @/usr/include/bits/stdio-lock.h 20 #iâdeà _BITS_STDIO_LOCK_H 21  #_BITS_STDIO_LOCK_H 1 ) 23  ~ 24  ~ 28  #_IO_lock_šex³nsive 1 ) 30 ¡ruù {  mlock ;  mút ; * mowÃr ; } t_IO_lock_t ; 32  #_IO_lock_š™Ÿliz” { LLL_LOCK_INITIALIZER , 0, NULL } ) 34  #_IO_lock_š™ ( _Çme ) \ 35 (( _Çme èð( _IO_lock_t è _IO_lock_š™Ÿliz” , 0) ) 37  #_IO_lock_fši ( _Çme ) \ 38 ((è0) ) 40  #_IO_lock_lock ( _Çme ) \ 42 * __£lf = THREAD_SELF ; \ 43 ià(( _Çme ). owÃr !ð __£lf ) \ 45 `Îl_lock (( _Çme ). lock , LLL_PRIVATE ); \ 46 ( _Çme ). owÃr = __£lf ; \ 48 ++( _Çme ). út ; \ 49 } 0) ) 51  #_IO_lock_Œylock ( _Çme ) \ 53  __»suÉ = 0; \ 54 * __£lf = THREAD_SELF ; \ 55 ià(( _Çme ). owÃr !ð __£lf ) \ 57 ià( `Îl_Œylock (( _Çme ). lock ) == 0) \ 59 ( _Çme ). owÃr = __£lf ; \ 60 ( _Çme ). út = 1; \ 63 __»suÉ = EBUSY ; \ 66 ++( _Çme ). út ; \ 67 __»suÉ ; \ 68 }) ) 70  #_IO_lock_uÆock ( _Çme ) \ 72 ià(--( _Çme ). út == 0) \ 74 ( _Çme ). owÃr = NULL ; \ 75 `Îl_uÆock (( _Çme ). lock , LLL_PRIVATE ); \ 77 } 0) ) 81  #_IO_þ—nup_»giÚ_¡¬t ( _fù , _å ) \ 82 `__libc_þ—nup_»giÚ_¡¬t ((( _å )-> _æags & _IO_USER_LOCK è=ð0, _fù , _å) ) 83  #_IO_þ—nup_»giÚ_¡¬t_nßrg ( _fù ) \ 84 `__libc_þ—nup_»giÚ_¡¬t (1, _fù , NULL ) ) 85  #_IO_þ—nup_»giÚ_’d ( _do™ ) \ 86 `__libc_þ—nup_»giÚ_’d ( _do™ ) ) 88 #ià defšed _LIBC && !defšed NOT_IN_libc 90 #ifdeà __EXCEPTIONS 91  #_IO_acquœe_lock ( _å ) \ 93 _IO_FILE * _IO_acquœe_lock_fže \ 94 `__©Œibu‹__ (( `þ—nup ( _IO_acquœe_lock_fù ))) \ 95 ð( _å ); \ 96 `_IO_æockfže ( _IO_acquœe_lock_fže ); ) 97  #_IO_acquœe_lock_þ—r_æags2 ( _å ) \ 99 _IO_FILE * _IO_acquœe_lock_fže \ 100 `__©Œibu‹__ (( `þ—nup ( _IO_acquœe_lock_þ—r_æags2_fù ))) \ 101 ð( _å ); \ 102 `_IO_æockfže ( _IO_acquœe_lock_fže ); ) 104  #_IO_acquœe_lock ( _å è _IO_acquœe_lock_Ãeds_exû±iÚs_’abËd ) 105  #_IO_acquœe_lock_þ—r_æags2 ( _å è `_IO_acquœe_lock (_å) ) 107  #_IO_»Ëa£_lock ( _å è; } 0) ) @/usr/include/bits/syslog-ldbl.h 20 #iâdeà _SYS_SYSLOG_H 24 $__LDBL_REDIR_DECL ( sy¦og ) 26 #ifdeà __USE_BSD 27 $__LDBL_REDIR_DECL ( vsy¦og ) 30 #ià __USE_FORTIFY_LEVEL > 0 && defšed __ex‹º_®ways_šlše 31 $__LDBL_REDIR_DECL ( __sy¦og_chk ) 33 #ifdeà __USE_BSD 34 $__LDBL_REDIR_DECL ( __vsy¦og_chk ) @/usr/include/bits/syslog-path.h 20 #iâdeà _SYS_SYSLOG_H 24 #iâdeà _BITS_SYSLOG_PATH_H 25  #_BITS_SYSLOG_PATH_H 1 ) 27  #_PATH_LOG "/dev/log" ) @/usr/include/bits/syslog.h 20 #iâdeà _SYS_SYSLOG_H 25  $__sy¦og_chk ( __´i ,  __æag , __cÚ¡ * __fmt , ...) 26 `__©Œibu‹__ (( `__fÜm©__ ( __´štf__ , 3, 4))); 28 #ifdeà __va_¬g_·ck 29 __ex‹º_®ways_šlše  30 $sy¦og ( __´i , __cÚ¡ * __fmt , ...) 32  `__sy¦og_chk ( __´i , __USE_FORTIFY_LEVEL - 1, __fmt , `__va_¬g_·ck ()); 33 } } 34 #–ià! defšed __ýlu¥lus 35  #sy¦og ( ´i , ...) \ 36 `__sy¦og_chk ( ´i , __USE_FORTIFY_LEVEL - 1, __VA_ARGS__ ) ) 40 #ifdeà __USE_BSD 41  $__vsy¦og_chk ( __´i ,  __æag , __cÚ¡ * __fmt , 42 __gnuc_va_li¡ __­ ) 43 `__©Œibu‹__ (( `__fÜm©__ ( __´štf__ , 3, 0))); 45 __ex‹º_®ways_šlše  46 $vsy¦og ( __´i , __cÚ¡ * __fmt , __gnuc_va_li¡ __­ ) 48  `__vsy¦og_chk ( __´i , __USE_FORTIFY_LEVEL - 1, __fmt , __­ ); 49 } } @/usr/include/bits/typesizes.h 20 #iâdeà _BITS_TYPES_H 24 #iâdef _BITS_TYPESIZES_H 25  #_BITS_TYPESIZES_H 1 ) 30  #__DEV_T_TYPE __UQUAD_TYPE ) 31  #__UID_T_TYPE __U32_TYPE ) 32  #__GID_T_TYPE __U32_TYPE ) 33  #__INO_T_TYPE __ULONGWORD_TYPE ) 34  #__INO64_T_TYPE __UQUAD_TYPE ) 35  #__MODE_T_TYPE __U32_TYPE ) 36  #__NLINK_T_TYPE __UWORD_TYPE ) 37  #__OFF_T_TYPE __SLONGWORD_TYPE ) 38  #__OFF64_T_TYPE __SQUAD_TYPE ) 39  #__PID_T_TYPE __S32_TYPE ) 40  #__RLIM_T_TYPE __ULONGWORD_TYPE ) 41  #__RLIM64_T_TYPE __UQUAD_TYPE ) 42  #__BLKCNT_T_TYPE __SLONGWORD_TYPE ) 43  #__BLKCNT64_T_TYPE __SQUAD_TYPE ) 44  #__FSBLKCNT_T_TYPE __ULONGWORD_TYPE ) 45  #__FSBLKCNT64_T_TYPE __UQUAD_TYPE ) 46  #__FSFILCNT_T_TYPE __ULONGWORD_TYPE ) 47  #__FSFILCNT64_T_TYPE __UQUAD_TYPE ) 48  #__ID_T_TYPE __U32_TYPE ) 49  #__CLOCK_T_TYPE __SLONGWORD_TYPE ) 50  #__TIME_T_TYPE __SLONGWORD_TYPE ) 51  #__USECONDS_T_TYPE __U32_TYPE ) 52  #__SUSECONDS_T_TYPE __SLONGWORD_TYPE ) 53  #__DADDR_T_TYPE __S32_TYPE ) 54  #__SWBLK_T_TYPE __SLONGWORD_TYPE ) 55  #__KEY_T_TYPE __S32_TYPE ) 56  #__CLOCKID_T_TYPE __S32_TYPE ) 57  #__TIMER_T_TYPE * ) 58  #__BLKSIZE_T_TYPE __SLONGWORD_TYPE ) 59  #__FSID_T_TYPE sŒuù {  __v® [2]; } ) 60  #__SSIZE_T_TYPE __SWORD_TYPE ) 63  #__FD_SETSIZE 1024 ) @/usr/include/gnu/stubs.h 4  ~ 6 #ià __WORDSIZE == 32 7  ~ 8 #–ià __WORDSIZE == 64 9  ~ @/usr/include/krb5.h 7  ~ @/usr/include/lber_types.h 21 #iâdeà _LBER_TYPES_H 22  #_LBER_TYPES_H ) 24  ~ 26 gLDAP_BEGIN_DECL 29  #LBER_INT_T  ) 32  #LBER_TAG_T  ) 35  #LBER_SOCKET_T  ) 38  #LBER_LEN_T  ) 43  LBER_INT_T tb”_št_t ; 46 sigÃd tLBER_INT_T tb”_sšt_t ; 47  tLBER_INT_T tb”_ušt_t ; 50  tLBER_TAG_T tb”_g_t ; 53  LBER_SOCKET_T tb”_sock‘_t ; 56  tLBER_LEN_T tb”_Ën_t ; 59 sigÃd tLBER_LEN_T tb”_¦’_t ; 61 gLDAP_END_DECL @/usr/include/linux/errno.h 1 #iâdeà _LINUX_ERRNO_H 2  #_LINUX_ERRNO_H ) 4  ~ @/usr/include/openssl/asn1.h 59 #iâdeà HEADER_ASN1_H 60  #HEADER_ASN1_H ) 62  ~ 63  ~<Ý’s¦/e_os2.h > 64 #iâdeà OPENSSL_NO_BIO 65  ~<Ý’s¦/bio.h > 67  ~<Ý’s¦/¡ack.h > 68  ~<Ý’s¦/§ã¡ack.h > 70  ~<Ý’s¦/symhacks.h > 72  ~<Ý’s¦/os¦_typ.h > 73 #iâdeà OPENSSL_NO_DEPRECATED 74  ~<Ý’s¦/bn.h > 77 #ifdeà OPENSSL_BUILD_SHLIBCRYPTO 78 #undeà OPENSSL_EXTERN 79  #OPENSSL_EXTERN OPENSSL_EXPORT ) 82 #ifdeà __ýlu¥lus 86  #V_ASN1_UNIVERSAL 0x00 ) 87  #V_ASN1_APPLICATION 0x40 ) 88  #V_ASN1_CONTEXT_SPECIFIC 0x80 ) 89  #V_ASN1_PRIVATE 0xc0 ) 91  #V_ASN1_CONSTRUCTED 0x20 ) 92  #V_ASN1_PRIMITIVE_TAG 0x1f ) 93  #V_ASN1_PRIMATIVE_TAG 0x1f ) 95  #V_ASN1_APP_CHOOSE -2 ) 96  #V_ASN1_OTHER -3 ) 97  #V_ASN1_ANY -4 ) 99  #V_ASN1_NEG 0x100 ) 101  #V_ASN1_UNDEF -1 ) 102  #V_ASN1_EOC 0 ) 103  #V_ASN1_BOOLEAN 1 ) 104  #V_ASN1_INTEGER 2 ) 105  #V_ASN1_NEG_INTEGER (2 | V_ASN1_NEG ) ) 106  #V_ASN1_BIT_STRING 3 ) 107  #V_ASN1_OCTET_STRING 4 ) 108  #V_ASN1_NULL 5 ) 109  #V_ASN1_OBJECT 6 ) 110  #V_ASN1_OBJECT_DESCRIPTOR 7 ) 111  #V_ASN1_EXTERNAL 8 ) 112  #V_ASN1_REAL 9 ) 113  #V_ASN1_ENUMERATED 10 ) 114  #V_ASN1_NEG_ENUMERATED (10 | V_ASN1_NEG ) ) 115  #V_ASN1_UTF8STRING 12 ) 116  #V_ASN1_SEQUENCE 16 ) 117  #V_ASN1_SET 17 ) 118  #V_ASN1_NUMERICSTRING 18 ) 119  #V_ASN1_PRINTABLESTRING 19 ) 120  #V_ASN1_T61STRING 20 ) 121  #V_ASN1_TELETEXSTRING 20 ) 122  #V_ASN1_VIDEOTEXSTRING 21 ) 123  #V_ASN1_IA5STRING 22 ) 124  #V_ASN1_UTCTIME 23 ) 125  #V_ASN1_GENERALIZEDTIME 24 ) 126  #V_ASN1_GRAPHICSTRING 25 ) 127  #V_ASN1_ISO64STRING 26 ) 128  #V_ASN1_VISIBLESTRING 26 ) 129  #V_ASN1_GENERALSTRING 27 ) 130  #V_ASN1_UNIVERSALSTRING 28 ) 131  #V_ASN1_BMPSTRING 30 ) 134  #B_ASN1_NUMERICSTRING 0x0001 ) 135  #B_ASN1_PRINTABLESTRING 0x0002 ) 136  #B_ASN1_T61STRING 0x0004 ) 137  #B_ASN1_TELETEXSTRING 0x0004 ) 138  #B_ASN1_VIDEOTEXSTRING 0x0008 ) 139  #B_ASN1_IA5STRING 0x0010 ) 140  #B_ASN1_GRAPHICSTRING 0x0020 ) 141  #B_ASN1_ISO64STRING 0x0040 ) 142  #B_ASN1_VISIBLESTRING 0x0040 ) 143  #B_ASN1_GENERALSTRING 0x0080 ) 144  #B_ASN1_UNIVERSALSTRING 0x0100 ) 145  #B_ASN1_OCTET_STRING 0x0200 ) 146  #B_ASN1_BIT_STRING 0x0400 ) 147  #B_ASN1_BMPSTRING 0x0800 ) 148  #B_ASN1_UNKNOWN 0x1000 ) 149  #B_ASN1_UTF8STRING 0x2000 ) 150  #B_ASN1_UTCTIME 0x4000 ) 151  #B_ASN1_GENERALIZEDTIME 0x8000 ) 152  #B_ASN1_SEQUENCE 0x10000 ) 155  #MBSTRING_FLAG 0x1000 ) 156  #MBSTRING_UTF8 ( MBSTRING_FLAG ) ) 157  #MBSTRING_ASC ( MBSTRING_FLAG |1) ) 158  #MBSTRING_BMP ( MBSTRING_FLAG |2) ) 159  #MBSTRING_UNIV ( MBSTRING_FLAG |4) ) 161  X509_®gÜ_¡ ; 163  #DECLARE_ASN1_SET_OF ( ty³ è ) 164  #IMPLEMENT_ASN1_SET_OF ( ty³ è ) 170  sa¢1_ùx_¡ 172 * p ; 173  eos ; 174  ”rÜ ; 175  šf ; 176  g ; 177  xþass ; 178  ¦’ ; 179 * max ; 180 * q ; 181 ** µ ; 182  lše ; 183 } tASN1_CTX ; 185  sa¢1_cÚ¡_ùx_¡ 187 cÚ¡ * p ; 188  eos ; 189  ”rÜ ; 190  šf ; 191  g ; 192  xþass ; 193  ¦’ ; 194 cÚ¡ * max ; 195 cÚ¡ * q ; 196 cÚ¡ ** µ ; 197  lše ; 198 } tASN1_cÚ¡_CTX ; 202  #ASN1_OBJECT_FLAG_DYNAMIC 0x01 ) 203  #ASN1_OBJECT_FLAG_CRITICAL 0x02 ) 204  #ASN1_OBJECT_FLAG_DYNAMIC_STRINGS 0x04 ) 205  #ASN1_OBJECT_FLAG_DYNAMIC_DATA 0x08 ) 206  sa¢1_objeù_¡ 208 cÚ¡ * ¢ ,* Ê ; 209  nid ; 210  Ëngth ; 211 * d©a ; 212  æags ; 213 } tASN1_OBJECT ; 215  #ASN1_STRING_FLAG_BITS_LEFT 0x08 ) 220  #ASN1_STRING_FLAG_NDEF 0x010 ) 222  sa¢1_¡ršg_¡ 224  Ëngth ; 225  ty³ ; 226 * d©a ; 231  æags ; 232 } tASN1_STRING ; 239  sASN1_ENCODING_¡ 241 * ’c ; 242  Ën ; 243  modif›d ; 244 } tASN1_ENCODING ; 247  #ASN1_LONG_UNDEF 0x7fffffffL ) 249  #STABLE_FLAGS_MALLOC 0x01 ) 250  #STABLE_NO_MASK 0x02 ) 251  #DIRSTRING_TYPE \ 252 ( B_ASN1_PRINTABLESTRING | B_ASN1_T61STRING | B_ASN1_BMPSTRING | B_ASN1_UTF8STRING ) ) 253  #PKCS9STRING_TYPE ( DIRSTRING_TYPE | B_ASN1_IA5STRING ) ) 255  sa¢1_¡ršg_bË_¡ { 256  nid ; 257  mšsize ; 258  maxsize ; 259  mask ; 260  æags ; 261 } tASN1_STRING_TABLE ; 263 DECLARE_STACK_OF ( ASN1_STRING_TABLE ) 267  #ub_Çme 32768 ) 268  #ub_commÚ_Çme 64 ) 269  #ub_loÿl™y_Çme 128 ) 270  #ub_¡©e_Çme 128 ) 271  #ub_Ügªiz©iÚ_Çme 64 ) 272  #ub_Ügªiz©iÚ_un™_Çme 64 ) 273  #ub_t™Ë 64 ) 274  #ub_emaž_add»ss 128 ) 279  ASN1_TEMPLATE_¡ tASN1_TEMPLATE ; 280  ASN1_ITEM_¡ tASN1_ITEM ; 281  ASN1_TLC_¡ tASN1_TLC ; 283  ASN1_VALUE_¡ tASN1_VALUE ; 287  #DECLARE_ASN1_FUNCTIONS ( ty³ è `DECLARE_ASN1_FUNCTIONS_Çme Ñy³,y³) ) 289  #DECLARE_ASN1_ALLOC_FUNCTIONS ( ty³ ) \ 290 `DECLARE_ASN1_ALLOC_FUNCTIONS_Çme ( ty³ ,y³) ) 292  #DECLARE_ASN1_FUNCTIONS_Çme ( ty³ , Çme ) \ 293 `DECLARE_ASN1_ALLOC_FUNCTIONS_Çme ( ty³ , Çme ) \ 294 `DECLARE_ASN1_ENCODE_FUNCTIONS ( ty³ , Çme ,‚ame) ) 296  #DECLARE_ASN1_FUNCTIONS_âame ( ty³ , ™Çme , Çme ) \ 297 `DECLARE_ASN1_ALLOC_FUNCTIONS_Çme ( ty³ , Çme ) \ 298 `DECLARE_ASN1_ENCODE_FUNCTIONS ( ty³ , ™Çme , Çme ) ) 300  #DECLARE_ASN1_ENCODE_FUNCTIONS ( ty³ , ™Çme , Çme ) \ 301 ty³ * d2i_ ## `Çme Ñy³ ** a , cÚ¡ ** š ,  Ën ); \ 302  i2d_ ## `Çme ( ty³ * a , ** out ); \ 303 `DECLARE_ASN1_ITEM ( ™Çme ) ) 305  #DECLARE_ASN1_ENCODE_FUNCTIONS_cÚ¡ ( ty³ , Çme ) \ 306 ty³ * d2i_ ## `Çme Ñy³ ** a , cÚ¡ ** š ,  Ën ); \ 307  i2d_ ## `Çme (cÚ¡ ty³ * a , ** out ); \ 308 `DECLARE_ASN1_ITEM ( Çme ) ) 310  #DECLARE_ASN1_NDEF_FUNCTION ( Çme ) \ 311  i2d_ ## Çme ## `_NDEF Òam* a , ** out ); ) 313  #DECLARE_ASN1_FUNCTIONS_cÚ¡ ( Çme ) \ 314 Çme *Çme## `_Ãw (); \ 315  Çme ## `_ä“ Òam* a ); ) 317  #DECLARE_ASN1_ALLOC_FUNCTIONS_Çme ( ty³ , Çme ) \ 318 ty³ * Çme ## `_Ãw (); \ 319  Çme ## `_ä“ ( ty³ * a ); ) 321  #D2I_OF ( ty³ èty³ *(*)Ñy³ **,cÚ¡ **,) ) 322  #I2D_OF ( ty³ è(*)Ñy³ *,**) ) 323  #I2D_OF_cÚ¡ ( ty³ è(*)(cÚ¡y³ *,**) ) 325  #CHECKED_D2I_OF ( ty³ , d2i ) \ 326 (( d2i_of_void *è(1 ? d2i : (( `D2I_OF ( ty³ ))0))) ) 327  #CHECKED_I2D_OF ( ty³ , i2d ) \ 328 (( i2d_of_void *è(1 ? i2d : (( `I2D_OF ( ty³ ))0))) ) 329  #CHECKED_NEW_OF ( ty³ , xÃw ) \ 330 ((*(*)()è(1 ? xÃw : (( ty³ *(*)())0))) ) 331  #CHECKED_PTR_OF ( ty³ , p ) \ 332 ((*è(1 ? p : ( ty³ *)0)) ) 333  #CHECKED_PPTR_OF ( ty³ , p ) \ 334 ((**è(1 ? p : ( ty³ **)0)) ) 336  #TYPEDEF_D2I_OF ( ty³ èty³ * td2i_of_ ## tty³ Ñy³ **,cÚ¡ **,) ) 337  tTYPEDEF_I2D_OF ( tty³ è ti2d_of_ ##ty³Ñy³ *,**) ) 338  tTYPEDEF_D2I2D_OF ( tty³ è tTYPEDEF_D2I_OF Ñy³); `TYPEDEF_I2D_OF ( ty³ ) ) 340 TYPEDEF_D2I2D_OF (); 377 #iâdeà OPENSSL_EXPORT_VAR_AS_FUNCTION 380 cÚ¡ tASN1_ITEM tASN1_ITEM_EXP ; 383  #ASN1_ITEM_±r ( Œ è(Œ) ) 386  #ASN1_ITEM_»f ( Œ è(&(Œ## _™ )) ) 388  #ASN1_ITEM_½Œ ( »f è(&Ôef## _™ )) ) 390  #DECLARE_ASN1_ITEM ( Çme ) \ 391 OPENSSL_EXTERN cÚ¡ ASN1_ITEM Çme ## _™ ; ) 400 cÚ¡ tASN1_ITEM * tASN1_ITEM_EXP (); 403  #ASN1_ITEM_±r ( Œ è( `Œ ()) ) 406  #ASN1_ITEM_»f ( Œ è(Œ## _™ ) ) 408  #ASN1_ITEM_½Œ ( »f èÔef## `_™ ()) ) 410  #DECLARE_ASN1_ITEM ( Çme ) \ 411 cÚ¡ ASN1_ITEM * Çme ## `_™ (); ) 422  #ASN1_STRFLGS_ESC_2253 1 ) 423  #ASN1_STRFLGS_ESC_CTRL 2 ) 424  #ASN1_STRFLGS_ESC_MSB 4 ) 432  #ASN1_STRFLGS_ESC_QUOTE 8 ) 438  #CHARTYPE_PRINTABLESTRING 0x10 ) 440  #CHARTYPE_FIRST_ESC_2253 0x20 ) 442  #CHARTYPE_LAST_ESC_2253 0x40 ) 452  #ASN1_STRFLGS_UTF8_CONVERT 0x10 ) 459  #ASN1_STRFLGS_IGNORE_TYPE 0x20 ) 462  #ASN1_STRFLGS_SHOW_TYPE 0x40 ) 472  #ASN1_STRFLGS_DUMP_ALL 0x80 ) 473  #ASN1_STRFLGS_DUMP_UNKNOWN 0x100 ) 480  #ASN1_STRFLGS_DUMP_DER 0x200 ) 487  #ASN1_STRFLGS_RFC2253 ( ASN1_STRFLGS_ESC_2253 | \ 488 ASN1_STRFLGS_ESC_CTRL | \ 489 ASN1_STRFLGS_ESC_MSB | \ 490 ASN1_STRFLGS_UTF8_CONVERT | \ 491 ASN1_STRFLGS_DUMP_UNKNOWN | \ 492 ASN1_STRFLGS_DUMP_DER ) ) 494 DECLARE_STACK_OF ( ASN1_INTEGER ) 495 DECLARE_ASN1_SET_OF ( ASN1_INTEGER ) 497 DECLARE_STACK_OF ( ASN1_GENERALSTRING ) 499  sa¢1_ty³_¡ 501  ty³ ; 503 * ±r ; 504 ASN1_BOOLEAN boÞ—n ; 505 ASN1_STRING * a¢1_¡ršg ; 506 ASN1_OBJECT * objeù ; 507 ASN1_INTEGER * š‹g” ; 508 ASN1_ENUMERATED * ’um”©ed ; 509 ASN1_BIT_STRING * b™_¡ršg ; 510 ASN1_OCTET_STRING * où‘_¡ršg ; 511 ASN1_PRINTABLESTRING * ´šbË¡ršg ; 512 ASN1_T61STRING * t61¡ršg ; 513 ASN1_IA5STRING * Ÿ5¡ršg ; 514 ASN1_GENERALSTRING * g’”®¡ršg ; 515 ASN1_BMPSTRING * bmp¡ršg ; 516 ASN1_UNIVERSALSTRING * univ”§l¡ršg ; 517 ASN1_UTCTIME * utùime ; 518 ASN1_GENERALIZEDTIME * g’”®izedtime ; 519 ASN1_VISIBLESTRING * visibË¡ršg ; 520 ASN1_UTF8STRING * utf8¡ršg ; 523 ASN1_STRING * £t ; 524 ASN1_STRING * £qu’û ; 525 } v®ue ; 526 } tASN1_TYPE ; 528 DECLARE_STACK_OF ( ASN1_TYPE ) 529 DECLARE_ASN1_SET_OF ( ASN1_TYPE ) 531  sa¢1_m‘hod_¡ 533 i2d_of_void * i2d ; 534 d2i_of_void * d2i ; 535 *(* ü—‹ )(); 536 (* de¡roy )(*); 537 } tASN1_METHOD ; 540  sa¢1_h—d”_¡ 542 ASN1_OCTET_STRING * h—d” ; 543 * d©a ; 544 ASN1_METHOD * m‘h ; 545 } tASN1_HEADER ; 548  sBIT_STRING_BITNAME_¡ { 549  b™num ; 550 cÚ¡ * Êame ; 551 cÚ¡ * ¢ame ; 552 } tBIT_STRING_BITNAME ; 555  #M_ASN1_STRING_Ëngth ( x è((x)-> Ëngth ) ) 556  #M_ASN1_STRING_Ëngth_£t ( x , n è((x)-> Ëngth = (n)) ) 557  #M_ASN1_STRING_ty³ ( x è((x)-> ty³ ) ) 558  #M_ASN1_STRING_d©a ( x è((x)-> d©a ) ) 561  #M_ASN1_BIT_STRING_Ãw (è( ASN1_BIT_STRING *)\ 562 `ASN1_STRING_ty³_Ãw ( V_ASN1_BIT_STRING ) ) 563  #M_ASN1_BIT_STRING_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 564  #M_ASN1_BIT_STRING_dup ( a è( ASN1_BIT_STRING *)\ 565 `ASN1_STRING_dup (( ASN1_STRING *) a ) ) 566  #M_ASN1_BIT_STRING_cmp ( a , b è `ASN1_STRING_cmp (\ 567 ( ASN1_STRING *) a ,(ASN1_STRING *) b ) ) 568  #M_ASN1_BIT_STRING_£t ( a , b , c è `ASN1_STRING_£t (( ASN1_STRING *ï,b,c) ) 570  #M_ASN1_INTEGER_Ãw (è( ASN1_INTEGER *)\ 571 `ASN1_STRING_ty³_Ãw ( V_ASN1_INTEGER ) ) 572  #M_ASN1_INTEGER_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 573  #M_ASN1_INTEGER_dup ( a è( ASN1_INTEGER *) `ASN1_STRING_dup (( ASN1_STRING *ï) ) 574  #M_ASN1_INTEGER_cmp ( a , b è `ASN1_STRING_cmp (\ 575 ( ASN1_STRING *) a ,(ASN1_STRING *) b ) ) 577  #M_ASN1_ENUMERATED_Ãw (è( ASN1_ENUMERATED *)\ 578 `ASN1_STRING_ty³_Ãw ( V_ASN1_ENUMERATED ) ) 579  #M_ASN1_ENUMERATED_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 580  #M_ASN1_ENUMERATED_dup ( a è( ASN1_ENUMERATED *) `ASN1_STRING_dup (( ASN1_STRING *ï) ) 581  #M_ASN1_ENUMERATED_cmp ( a , b è `ASN1_STRING_cmp (\ 582 ( ASN1_STRING *) a ,(ASN1_STRING *) b ) ) 584  #M_ASN1_OCTET_STRING_Ãw (è( ASN1_OCTET_STRING *)\ 585 `ASN1_STRING_ty³_Ãw ( V_ASN1_OCTET_STRING ) ) 586  #M_ASN1_OCTET_STRING_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 587  #M_ASN1_OCTET_STRING_dup ( a è( ASN1_OCTET_STRING *)\ 588 `ASN1_STRING_dup (( ASN1_STRING *) a ) ) 589  #M_ASN1_OCTET_STRING_cmp ( a , b è `ASN1_STRING_cmp (\ 590 ( ASN1_STRING *) a ,(ASN1_STRING *) b ) ) 591  #M_ASN1_OCTET_STRING_£t ( a , b , c è `ASN1_STRING_£t (( ASN1_STRING *ï,b,c) ) 592  #M_ASN1_OCTET_STRING_´št ( a , b è `ASN1_STRING_´št ×,( ASN1_STRING *)b) ) 593  #M_i2d_ASN1_OCTET_STRING ( a , µ ) \ 594 `i2d_ASN1_by‹s (( ASN1_STRING *) a , µ , V_ASN1_OCTET_STRING ,\ 595 V_ASN1_UNIVERSAL ) ) 597  #B_ASN1_TIME \ 598 B_ASN1_UTCTIME | \ 599 B_ASN1_GENERALIZEDTIME ) 601  #B_ASN1_PRINTABLE \ 602 B_ASN1_PRINTABLESTRING | \ 603 B_ASN1_T61STRING | \ 604 B_ASN1_IA5STRING | \ 605 B_ASN1_BIT_STRING | \ 606 B_ASN1_UNIVERSALSTRING |\ 607 B_ASN1_BMPSTRING |\ 608 B_ASN1_UTF8STRING |\ 609 B_ASN1_SEQUENCE |\ 610 B_ASN1_UNKNOWN ) 612  #B_ASN1_DIRECTORYSTRING \ 613 B_ASN1_PRINTABLESTRING | \ 614 B_ASN1_TELETEXSTRING |\ 615 B_ASN1_BMPSTRING |\ 616 B_ASN1_UNIVERSALSTRING |\ 617 B_ASN1_UTF8STRING ) 619  #B_ASN1_DISPLAYTEXT \ 620 B_ASN1_IA5STRING | \ 621 B_ASN1_VISIBLESTRING | \ 622 B_ASN1_BMPSTRING |\ 623 B_ASN1_UTF8STRING ) 625  #M_ASN1_PRINTABLE_Ãw (è `ASN1_STRING_ty³_Ãw ( V_ASN1_T61STRING ) ) 626  #M_ASN1_PRINTABLE_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 627  #M_i2d_ASN1_PRINTABLE ( a , µ è `i2d_ASN1_by‹s (( ASN1_STRING *)a,\ 628 µ , a -> ty³ , V_ASN1_UNIVERSAL ) ) 629  #M_d2i_ASN1_PRINTABLE ( a , µ , l ) \ 630 `d2i_ASN1_ty³_by‹s (( ASN1_STRING **) a , µ , l , \ 631 B_ASN1_PRINTABLE ) ) 633  #M_DIRECTORYSTRING_Ãw (è `ASN1_STRING_ty³_Ãw ( V_ASN1_PRINTABLESTRING ) ) 634  #M_DIRECTORYSTRING_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 635  #M_i2d_DIRECTORYSTRING ( a , µ è `i2d_ASN1_by‹s (( ASN1_STRING *)a,\ 636 µ , a -> ty³ , V_ASN1_UNIVERSAL ) ) 637  #M_d2i_DIRECTORYSTRING ( a , µ , l ) \ 638 `d2i_ASN1_ty³_by‹s (( ASN1_STRING **) a , µ , l , \ 639 B_ASN1_DIRECTORYSTRING ) ) 641  #M_DISPLAYTEXT_Ãw (è `ASN1_STRING_ty³_Ãw ( V_ASN1_VISIBLESTRING ) ) 642  #M_DISPLAYTEXT_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 643  #M_i2d_DISPLAYTEXT ( a , µ è `i2d_ASN1_by‹s (( ASN1_STRING *)a,\ 644 µ , a -> ty³ , V_ASN1_UNIVERSAL ) ) 645  #M_d2i_DISPLAYTEXT ( a , µ , l ) \ 646 `d2i_ASN1_ty³_by‹s (( ASN1_STRING **) a , µ , l , \ 647 B_ASN1_DISPLAYTEXT ) ) 649  #M_ASN1_PRINTABLESTRING_Ãw (è( ASN1_PRINTABLESTRING *)\ 650 `ASN1_STRING_ty³_Ãw ( V_ASN1_PRINTABLESTRING ) ) 651  #M_ASN1_PRINTABLESTRING_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 652  #M_i2d_ASN1_PRINTABLESTRING ( a , µ ) \ 653 `i2d_ASN1_by‹s (( ASN1_STRING *) a , µ , V_ASN1_PRINTABLESTRING ,\ 654 V_ASN1_UNIVERSAL ) ) 655  #M_d2i_ASN1_PRINTABLESTRING ( a , µ , l ) \ 656 ( ASN1_PRINTABLESTRING *) d2i_ASN1_ty³_by‹s \ 657 (( ASN1_STRING **) a , µ , l , B_ASN1_PRINTABLESTRING ) ) 659  #M_ASN1_T61STRING_Ãw (è( ASN1_T61STRING *)\ 660 `ASN1_STRING_ty³_Ãw ( V_ASN1_T61STRING ) ) 661  #M_ASN1_T61STRING_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 662  #M_i2d_ASN1_T61STRING ( a , µ ) \ 663 `i2d_ASN1_by‹s (( ASN1_STRING *) a , µ , V_ASN1_T61STRING ,\ 664 V_ASN1_UNIVERSAL ) ) 665  #M_d2i_ASN1_T61STRING ( a , µ , l ) \ 666 ( ASN1_T61STRING *) d2i_ASN1_ty³_by‹s \ 667 (( ASN1_STRING **) a , µ , l , B_ASN1_T61STRING ) ) 669  #M_ASN1_IA5STRING_Ãw (è( ASN1_IA5STRING *)\ 670 `ASN1_STRING_ty³_Ãw ( V_ASN1_IA5STRING ) ) 671  #M_ASN1_IA5STRING_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 672  #M_ASN1_IA5STRING_dup ( a ) \ 673 ( ASN1_IA5STRING *) `ASN1_STRING_dup (( ASN1_STRING *) a ) ) 674  #M_i2d_ASN1_IA5STRING ( a , µ ) \ 675 `i2d_ASN1_by‹s (( ASN1_STRING *) a , µ , V_ASN1_IA5STRING ,\ 676 V_ASN1_UNIVERSAL ) ) 677  #M_d2i_ASN1_IA5STRING ( a , µ , l ) \ 678 ( ASN1_IA5STRING *) `d2i_ASN1_ty³_by‹s (( ASN1_STRING **) a , µ , l ,\ 679 B_ASN1_IA5STRING ) ) 681  #M_ASN1_UTCTIME_Ãw (è( ASN1_UTCTIME *)\ 682 `ASN1_STRING_ty³_Ãw ( V_ASN1_UTCTIME ) ) 683  #M_ASN1_UTCTIME_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 684  #M_ASN1_UTCTIME_dup ( a è( ASN1_UTCTIME *) `ASN1_STRING_dup (( ASN1_STRING *ï) ) 686  #M_ASN1_GENERALIZEDTIME_Ãw (è( ASN1_GENERALIZEDTIME *)\ 687 `ASN1_STRING_ty³_Ãw ( V_ASN1_GENERALIZEDTIME ) ) 688  #M_ASN1_GENERALIZEDTIME_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 689  #M_ASN1_GENERALIZEDTIME_dup ( a è( ASN1_GENERALIZEDTIME *) `ASN1_STRING_dup (\ 690 ( ASN1_STRING *) a ) ) 692  #M_ASN1_TIME_Ãw (è( ASN1_TIME *)\ 693 `ASN1_STRING_ty³_Ãw ( V_ASN1_UTCTIME ) ) 694  #M_ASN1_TIME_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 695  #M_ASN1_TIME_dup ( a è( ASN1_TIME *) `ASN1_STRING_dup (( ASN1_STRING *ï) ) 697  #M_ASN1_GENERALSTRING_Ãw (è( ASN1_GENERALSTRING *)\ 698 `ASN1_STRING_ty³_Ãw ( V_ASN1_GENERALSTRING ) ) 699  #M_ASN1_GENERALSTRING_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 700  #M_i2d_ASN1_GENERALSTRING ( a , µ ) \ 701 `i2d_ASN1_by‹s (( ASN1_STRING *) a , µ , V_ASN1_GENERALSTRING ,\ 702 V_ASN1_UNIVERSAL ) ) 703  #M_d2i_ASN1_GENERALSTRING ( a , µ , l ) \ 704 ( ASN1_GENERALSTRING *) d2i_ASN1_ty³_by‹s \ 705 (( ASN1_STRING **) a , µ , l , B_ASN1_GENERALSTRING ) ) 707  #M_ASN1_UNIVERSALSTRING_Ãw (è( ASN1_UNIVERSALSTRING *)\ 708 `ASN1_STRING_ty³_Ãw ( V_ASN1_UNIVERSALSTRING ) ) 709  #M_ASN1_UNIVERSALSTRING_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 710  #M_i2d_ASN1_UNIVERSALSTRING ( a , µ ) \ 711 `i2d_ASN1_by‹s (( ASN1_STRING *) a , µ , V_ASN1_UNIVERSALSTRING ,\ 712 V_ASN1_UNIVERSAL ) ) 713  #M_d2i_ASN1_UNIVERSALSTRING ( a , µ , l ) \ 714 ( ASN1_UNIVERSALSTRING *) d2i_ASN1_ty³_by‹s \ 715 (( ASN1_STRING **) a , µ , l , B_ASN1_UNIVERSALSTRING ) ) 717  #M_ASN1_BMPSTRING_Ãw (è( ASN1_BMPSTRING *)\ 718 `ASN1_STRING_ty³_Ãw ( V_ASN1_BMPSTRING ) ) 719  #M_ASN1_BMPSTRING_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 720  #M_i2d_ASN1_BMPSTRING ( a , µ ) \ 721 `i2d_ASN1_by‹s (( ASN1_STRING *) a , µ , V_ASN1_BMPSTRING ,\ 722 V_ASN1_UNIVERSAL ) ) 723  #M_d2i_ASN1_BMPSTRING ( a , µ , l ) \ 724 ( ASN1_BMPSTRING *) d2i_ASN1_ty³_by‹s \ 725 (( ASN1_STRING **) a , µ , l , B_ASN1_BMPSTRING ) ) 727  #M_ASN1_VISIBLESTRING_Ãw (è( ASN1_VISIBLESTRING *)\ 728 `ASN1_STRING_ty³_Ãw ( V_ASN1_VISIBLESTRING ) ) 729  #M_ASN1_VISIBLESTRING_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 730  #M_i2d_ASN1_VISIBLESTRING ( a , µ ) \ 731 `i2d_ASN1_by‹s (( ASN1_STRING *) a , µ , V_ASN1_VISIBLESTRING ,\ 732 V_ASN1_UNIVERSAL ) ) 733  #M_d2i_ASN1_VISIBLESTRING ( a , µ , l ) \ 734 ( ASN1_VISIBLESTRING *) d2i_ASN1_ty³_by‹s \ 735 (( ASN1_STRING **) a , µ , l , B_ASN1_VISIBLESTRING ) ) 737  #M_ASN1_UTF8STRING_Ãw (è( ASN1_UTF8STRING *)\ 738 `ASN1_STRING_ty³_Ãw ( V_ASN1_UTF8STRING ) ) 739  #M_ASN1_UTF8STRING_ä“ ( a è `ASN1_STRING_ä“ (( ASN1_STRING *ï) ) 740  #M_i2d_ASN1_UTF8STRING ( a , µ ) \ 741 `i2d_ASN1_by‹s (( ASN1_STRING *) a , µ , V_ASN1_UTF8STRING ,\ 742 V_ASN1_UNIVERSAL ) ) 743  #M_d2i_ASN1_UTF8STRING ( a , µ , l ) \ 744 ( ASN1_UTF8STRING *) d2i_ASN1_ty³_by‹s \ 745 (( ASN1_STRING **) a , µ , l , B_ASN1_UTF8STRING ) ) 748  #IS_SEQUENCE 0 ) 749  #IS_SET 1 ) 751 DECLARE_ASN1_FUNCTIONS_âame ( ASN1_TYPE , ASN1_ANY , ASN1_TYPE) 753  ASN1_TYPE_g‘ ( ASN1_TYPE * a ); 754  ASN1_TYPE_£t ( ASN1_TYPE * a ,  ty³ , * v®ue ); 756 ASN1_OBJECT * ASN1_OBJECT_Ãw (); 757  ASN1_OBJECT_ä“ ( ASN1_OBJECT * a ); 758  i2d_ASN1_OBJECT ( ASN1_OBJECT * a ,** µ ); 759 ASN1_OBJECT * c2i_ASN1_OBJECT (ASN1_OBJECT ** a ,cÚ¡ ** µ , 760  Ëngth ); 761 ASN1_OBJECT * d2i_ASN1_OBJECT (ASN1_OBJECT ** a ,cÚ¡ ** µ , 762  Ëngth ); 764 DECLARE_ASN1_ITEM ( ASN1_OBJECT ) 766 DECLARE_STACK_OF ( ASN1_OBJECT ) 767 DECLARE_ASN1_SET_OF ( ASN1_OBJECT ) 769 ASN1_STRING * ASN1_STRING_Ãw (); 770  ASN1_STRING_ä“ ( ASN1_STRING * a ); 771 ASN1_STRING * ASN1_STRING_dup (ASN1_STRING * a ); 772 ASN1_STRING * ASN1_STRING_ty³_Ãw ( ty³ ); 773  ASN1_STRING_cmp ( ASN1_STRING * a , ASN1_STRING * b ); 776  ASN1_STRING_£t ( ASN1_STRING * ¡r , cÚ¡ * d©a ,  Ën ); 777  ASN1_STRING_Ëngth ( ASN1_STRING * x ); 778  ASN1_STRING_Ëngth_£t ( ASN1_STRING * x ,  n ); 779  ASN1_STRING_ty³ ( ASN1_STRING * x ); 780 * ASN1_STRING_d©a ( ASN1_STRING * x ); 782 DECLARE_ASN1_FUNCTIONS ( ASN1_BIT_STRING ) 783  i2c_ASN1_BIT_STRING ( ASN1_BIT_STRING * a ,** µ ); 784 ASN1_BIT_STRING * c2i_ASN1_BIT_STRING (ASN1_BIT_STRING ** a ,cÚ¡ ** µ , 785  Ëngth ); 786  ASN1_BIT_STRING_£t ( ASN1_BIT_STRING * a , * d , 787  Ëngth ); 788  ASN1_BIT_STRING_£t_b™ ( ASN1_BIT_STRING * a ,  n ,  v®ue ); 789  ASN1_BIT_STRING_g‘_b™ ( ASN1_BIT_STRING * a ,  n ); 791 #iâdeà OPENSSL_NO_BIO 792  ASN1_BIT_STRING_Çme_´št ( BIO * out , ASN1_BIT_STRING * bs , 793 BIT_STRING_BITNAME * tbl ,  šd’t ); 795  ASN1_BIT_STRING_num_asc (* Çme , BIT_STRING_BITNAME * tbl ); 796  ASN1_BIT_STRING_£t_asc ( ASN1_BIT_STRING * bs , * Çme ,  v®ue , 797 BIT_STRING_BITNAME * tbl ); 799  i2d_ASN1_BOOLEAN ( a ,** µ ); 800  d2i_ASN1_BOOLEAN (* a ,cÚ¡ ** µ , Ëngth ); 802 DECLARE_ASN1_FUNCTIONS ( ASN1_INTEGER ) 803  i2c_ASN1_INTEGER ( ASN1_INTEGER * a ,** µ ); 804 ASN1_INTEGER * c2i_ASN1_INTEGER (ASN1_INTEGER ** a ,cÚ¡ ** µ , 805  Ëngth ); 806 ASN1_INTEGER * d2i_ASN1_UINTEGER (ASN1_INTEGER ** a ,cÚ¡ ** µ , 807  Ëngth ); 808 ASN1_INTEGER * ASN1_INTEGER_dup (ASN1_INTEGER * x ); 809  ASN1_INTEGER_cmp ( ASN1_INTEGER * x , ASN1_INTEGER * y ); 811 DECLARE_ASN1_FUNCTIONS ( ASN1_ENUMERATED ) 813  ASN1_UTCTIME_check ( ASN1_UTCTIME * a ); 814 ASN1_UTCTIME * ASN1_UTCTIME_£t (ASN1_UTCTIME * s , time_t t ); 815  ASN1_UTCTIME_£t_¡ršg ( ASN1_UTCTIME * s , cÚ¡ * ¡r ); 816  ASN1_UTCTIME_cmp_time_t (cÚ¡ ASN1_UTCTIME * s , time_t t ); 818 time_t ASN1_UTCTIME_g‘ (cÚ¡ ASN1_UTCTIME * s ); 821  ASN1_GENERALIZEDTIME_check ( ASN1_GENERALIZEDTIME * a ); 822 ASN1_GENERALIZEDTIME * ASN1_GENERALIZEDTIME_£t (ASN1_GENERALIZEDTIME * s , time_t t ); 823  ASN1_GENERALIZEDTIME_£t_¡ršg ( ASN1_GENERALIZEDTIME * s , cÚ¡ * ¡r ); 825 DECLARE_ASN1_FUNCTIONS ( ASN1_OCTET_STRING ) 826 ASN1_OCTET_STRING * ASN1_OCTET_STRING_dup (ASN1_OCTET_STRING * a ); 827  ASN1_OCTET_STRING_cmp ( ASN1_OCTET_STRING * a , ASN1_OCTET_STRING * b ); 828  ASN1_OCTET_STRING_£t ( ASN1_OCTET_STRING * ¡r , cÚ¡ * d©a ,  Ën ); 830 DECLARE_ASN1_FUNCTIONS ( ASN1_VISIBLESTRING ) 831 DECLARE_ASN1_FUNCTIONS ( ASN1_UNIVERSALSTRING ) 832 DECLARE_ASN1_FUNCTIONS ( ASN1_UTF8STRING ) 833 DECLARE_ASN1_FUNCTIONS ( ASN1_NULL ) 834 DECLARE_ASN1_FUNCTIONS ( ASN1_BMPSTRING ) 836  UTF8_g‘c (cÚ¡ * ¡r ,  Ën , * v® ); 837  UTF8_putc (* ¡r ,  Ën ,  v®ue ); 839 DECLARE_ASN1_FUNCTIONS_Çme ( ASN1_STRING , ASN1_PRINTABLE ) 841 DECLARE_ASN1_FUNCTIONS_Çme ( ASN1_STRING , DIRECTORYSTRING ) 842 DECLARE_ASN1_FUNCTIONS_Çme ( ASN1_STRING , DISPLAYTEXT ) 843 DECLARE_ASN1_FUNCTIONS ( ASN1_PRINTABLESTRING ) 844 DECLARE_ASN1_FUNCTIONS ( ASN1_T61STRING ) 845 DECLARE_ASN1_FUNCTIONS ( ASN1_IA5STRING ) 846 DECLARE_ASN1_FUNCTIONS ( ASN1_GENERALSTRING ) 847 DECLARE_ASN1_FUNCTIONS ( ASN1_UTCTIME ) 848 DECLARE_ASN1_FUNCTIONS ( ASN1_GENERALIZEDTIME ) 849 DECLARE_ASN1_FUNCTIONS ( ASN1_TIME ) 851 DECLARE_ASN1_ITEM ( ASN1_OCTET_STRING_NDEF ) 853 ASN1_TIME * ASN1_TIME_£t (ASN1_TIME * s , time_t t ); 854  ASN1_TIME_check ( ASN1_TIME * t ); 855 ASN1_GENERALIZEDTIME * ASN1_TIME_to_g’”®izedtime ( ASN1_TIME * t , ASN1_GENERALIZEDTIME ** out ); 857  i2d_ASN1_SET ( STACK * a , ** µ , 858 i2d_of_void * i2d ,  ex_g ,  ex_þass ,  is_£t ); 859 STACK * d2i_ASN1_SET (STACK ** a , cÚ¡ ** µ ,  Ëngth , 860 d2i_of_void * d2i , (* ä“_func )(*), 861  ex_g ,  ex_þass ); 863 #iâdeà OPENSSL_NO_BIO 864  i2a_ASN1_INTEGER ( BIO * bp , ASN1_INTEGER * a ); 865  a2i_ASN1_INTEGER ( BIO * bp , ASN1_INTEGER * bs ,* buf , size ); 866  i2a_ASN1_ENUMERATED ( BIO * bp , ASN1_ENUMERATED * a ); 867  a2i_ASN1_ENUMERATED ( BIO * bp , ASN1_ENUMERATED * bs ,* buf , size ); 868  i2a_ASN1_OBJECT ( BIO * bp , ASN1_OBJECT * a ); 869  a2i_ASN1_STRING ( BIO * bp , ASN1_STRING * bs ,* buf , size ); 870  i2a_ASN1_STRING ( BIO * bp , ASN1_STRING * a ,  ty³ ); 872  i2t_ASN1_OBJECT (* buf , buf_Ën , ASN1_OBJECT * a ); 874  a2d_ASN1_OBJECT (* out , Þ’ , cÚ¡ * buf ,  num ); 875 ASN1_OBJECT * ASN1_OBJECT_ü—‹ ( nid , * d©a , Ën , 876 cÚ¡ * ¢ , cÚ¡ * Ê ); 878  ASN1_INTEGER_£t ( ASN1_INTEGER * a ,  v ); 879  ASN1_INTEGER_g‘ ( ASN1_INTEGER * a ); 880 ASN1_INTEGER * BN_to_ASN1_INTEGER ( BIGNUM * bn , ASN1_INTEGER * ai ); 881 BIGNUM * ASN1_INTEGER_to_BN ( ASN1_INTEGER * ai ,BIGNUM * bn ); 883  ASN1_ENUMERATED_£t ( ASN1_ENUMERATED * a ,  v ); 884  ASN1_ENUMERATED_g‘ ( ASN1_ENUMERATED * a ); 885 ASN1_ENUMERATED * BN_to_ASN1_ENUMERATED ( BIGNUM * bn , ASN1_ENUMERATED * ai ); 886 BIGNUM * ASN1_ENUMERATED_to_BN ( ASN1_ENUMERATED * ai ,BIGNUM * bn ); 890  ASN1_PRINTABLE_ty³ (cÚ¡ * s ,  max ); 892  i2d_ASN1_by‹s ( ASN1_STRING * a , ** µ ,  g ,  xþass ); 893 ASN1_STRING * d2i_ASN1_by‹s (ASN1_STRING ** a , cÚ¡ ** µ , 894  Ëngth ,  Pg ,  Pþass ); 895  ASN1_g2b™ ( g ); 897 ASN1_STRING * d2i_ASN1_ty³_by‹s (ASN1_STRING ** a ,cÚ¡ ** µ , 898  Ëngth , ty³ ); 901  a¢1_Fšish ( ASN1_CTX * c ); 902  a¢1_cÚ¡_Fšish ( ASN1_cÚ¡_CTX * c ); 905  ASN1_g‘_objeù (cÚ¡ ** µ , * ¶’gth , * ±ag , 906 * pþass ,  omax ); 907  ASN1_check_šfš™e_’d (** p , Ën ); 908  ASN1_cÚ¡_check_šfš™e_’d (cÚ¡ ** p , Ën ); 909  ASN1_put_objeù (** µ ,  cÚ¡ruùed ,  Ëngth , 910  g ,  xþass ); 911  ASN1_put_eoc (** µ ); 912  ASN1_objeù_size ( cÚ¡ruùed ,  Ëngth ,  g ); 915 * ASN1_dup ( i2d_of_void * i2d , d2i_of_void * d2i , * x ); 917  #ASN1_dup_of ( ty³ , i2d , d2i , x ) \ 918 (( ty³ *) `ASN1_dup ( `CHECKED_I2D_OF Ñy³, i2d ), \ 919 `CHECKED_D2I_OF ( ty³ , d2i ), \ 920 `CHECKED_PTR_OF ( ty³ , x ))) ) 922  #ASN1_dup_of_cÚ¡ ( ty³ , i2d , d2i , x ) \ 923 (( ty³ *) `ASN1_dup ( `CHECKED_I2D_OF (cÚ¡y³, i2d ), \ 924 `CHECKED_D2I_OF ( ty³ , d2i ), \ 925 `CHECKED_PTR_OF (cÚ¡ ty³ , x ))) ) 927 * ASN1_™em_dup (cÚ¡ ASN1_ITEM * ™ , * x ); 929 #iâdeà OPENSSL_NO_FP_API 930 * ASN1_d2i_å (*(* xÃw )(), d2i_of_void * d2i , FILE * š , ** x ); 932  #ASN1_d2i_å_of ( ty³ , xÃw , d2i , š , x ) \ 933 (( ty³ *) `ASN1_d2i_å ( `CHECKED_NEW_OF Ñy³, xÃw ), \ 934 `CHECKED_D2I_OF ( ty³ , d2i ), \ 935 š , \ 936 `CHECKED_PPTR_OF ( ty³ , x ))) ) 938 * ASN1_™em_d2i_å (cÚ¡ ASN1_ITEM * ™ , FILE * š , * x ); 939  ASN1_i2d_å ( i2d_of_void * i2d , FILE * out ,* x ); 941  #ASN1_i2d_å_of ( ty³ , i2d , out , x ) \ 942 ( `ASN1_i2d_å ( `CHECKED_I2D_OF ( ty³ , i2d ), \ 943 out , \ 944 `CHECKED_PTR_OF ( ty³ , x ))) ) 946  #ASN1_i2d_å_of_cÚ¡ ( ty³ , i2d , out , x ) \ 947 ( `ASN1_i2d_å ( `CHECKED_I2D_OF (cÚ¡ ty³ , i2d ), \ 948 out , \ 949 `CHECKED_PTR_OF (cÚ¡ ty³ , x ))) ) 951  ASN1_™em_i2d_å (cÚ¡ ASN1_ITEM * ™ , FILE * out , * x ); 952  ASN1_STRING_´št_ex_å ( FILE * å , ASN1_STRING * ¡r ,  æags ); 955  ASN1_STRING_to_UTF8 (** out , ASN1_STRING * š ); 957 #iâdeà OPENSSL_NO_BIO 958 * ASN1_d2i_bio (*(* xÃw )(), d2i_of_void * d2i , BIO * š , ** x ); 960  #ASN1_d2i_bio_of ( ty³ , xÃw , d2i , š , x ) \ 961 (( ty³ *) `ASN1_d2i_bio Ð `CHECKED_NEW_OF Ñy³, xÃw ), \ 962 `CHECKED_D2I_OF ( ty³ , d2i ), \ 963 š , \ 964 `CHECKED_PPTR_OF ( ty³ , x ))) ) 966 * ASN1_™em_d2i_bio (cÚ¡ ASN1_ITEM * ™ , BIO * š , * x ); 967  ASN1_i2d_bio ( i2d_of_void * i2d , BIO * out , * x ); 969  #ASN1_i2d_bio_of ( ty³ , i2d , out , x ) \ 970 ( `ASN1_i2d_bio ( `CHECKED_I2D_OF ( ty³ , i2d ), \ 971 out , \ 972 `CHECKED_PTR_OF ( ty³ , x ))) ) 974  #ASN1_i2d_bio_of_cÚ¡ ( ty³ , i2d , out , x ) \ 975 ( `ASN1_i2d_bio ( `CHECKED_I2D_OF (cÚ¡ ty³ , i2d ), \ 976 out , \ 977 `CHECKED_PTR_OF (cÚ¡ ty³ , x ))) ) 979  ASN1_™em_i2d_bio (cÚ¡ ASN1_ITEM * ™ , BIO * out , * x ); 980  ASN1_UTCTIME_´št ( BIO * å , ASN1_UTCTIME * a ); 981  ASN1_GENERALIZEDTIME_´št ( BIO * å , ASN1_GENERALIZEDTIME * a ); 982  ASN1_TIME_´št ( BIO * å , ASN1_TIME * a ); 983  ASN1_STRING_´št ( BIO * bp , ASN1_STRING * v ); 984  ASN1_STRING_´št_ex ( BIO * out , ASN1_STRING * ¡r ,  æags ); 985  ASN1_·r£ ( BIO * bp ,cÚ¡ * µ , Ën , šd’t ); 986  ASN1_·r£_dump ( BIO * bp ,cÚ¡ * µ , Ën , šd’t , dump ); 988 cÚ¡ * ASN1_g2¡r ( g ); 991  i2d_ASN1_HEADER ( ASN1_HEADER * a ,** µ ); 992 ASN1_HEADER * d2i_ASN1_HEADER (ASN1_HEADER ** a ,cÚ¡ ** µ ,  Ëngth ); 993 ASN1_HEADER * ASN1_HEADER_Ãw (); 994  ASN1_HEADER_ä“ ( ASN1_HEADER * a ); 996  ASN1_UNIVERSALSTRING_to_¡ršg ( ASN1_UNIVERSALSTRING * s ); 999 ASN1_METHOD * X509_a¢1_m‘h (); 1000 ASN1_METHOD * RSAPriv©eKey_a¢1_m‘h (); 1001 ASN1_METHOD * ASN1_IA5STRING_a¢1_m‘h (); 1002 ASN1_METHOD * ASN1_BIT_STRING_a¢1_m‘h (); 1004  ASN1_TYPE_£t_où‘¡ršg ( ASN1_TYPE * a , 1005 * d©a ,  Ën ); 1006  ASN1_TYPE_g‘_où‘¡ršg ( ASN1_TYPE * a , 1007 * d©a ,  max_Ën ); 1008  ASN1_TYPE_£t_št_où‘¡ršg ( ASN1_TYPE * a ,  num , 1009 * d©a ,  Ën ); 1010  ASN1_TYPE_g‘_št_où‘¡ršg ( ASN1_TYPE * a ,* num , 1011 * d©a ,  max_Ën ); 1013 STACK * ASN1_£q_uÅack (cÚ¡ * buf ,  Ën , 1014 d2i_of_void * d2i , (* ä“_func )(*)); 1015 * ASN1_£q_·ck ( STACK * §ãs , i2d_of_void * i2d , 1016 ** buf , * Ën ); 1017 * ASN1_uÅack_¡ršg ( ASN1_STRING * où , d2i_of_void * d2i ); 1018 * ASN1_™em_uÅack ( ASN1_STRING * où , cÚ¡ ASN1_ITEM * ™ ); 1019 ASN1_STRING * ASN1_·ck_¡ršg (* obj , i2d_of_void * i2d , 1020 ASN1_OCTET_STRING ** où ); 1022  #ASN1_·ck_¡ršg_of ( ty³ , obj , i2d , où ) \ 1023 ( `ASN1_·ck_¡ršg ( `CHECKED_PTR_OF ( ty³ , obj ), \ 1024 `CHECKED_I2D_OF ( ty³ , i2d ), \ 1025 où )) ) 1027 ASN1_STRING * ASN1_™em_·ck (* obj , cÚ¡ ASN1_ITEM * ™ , ASN1_OCTET_STRING ** où ); 1029  ASN1_STRING_£t_deçuÉ_mask ( mask ); 1030  ASN1_STRING_£t_deçuÉ_mask_asc (* p ); 1031  ASN1_STRING_g‘_deçuÉ_mask (); 1032  ASN1_mb¡ršg_cÝy ( ASN1_STRING ** out , cÚ¡ * š ,  Ën , 1033  šfÜm ,  mask ); 1034  ASN1_mb¡ršg_ncÝy ( ASN1_STRING ** out , cÚ¡ * š ,  Ën , 1035  šfÜm ,  mask , 1036  mšsize ,  maxsize ); 1038 ASN1_STRING * ASN1_STRING_£t_by_NID (ASN1_STRING ** out , 1039 cÚ¡ * š ,  šËn ,  šfÜm ,  nid ); 1040 ASN1_STRING_TABLE * ASN1_STRING_TABLE_g‘ ( nid ); 1041  ASN1_STRING_TABLE_add (, , , , ); 1042  ASN1_STRING_TABLE_þ—nup (); 1047 ASN1_VALUE * ASN1_™em_Ãw (cÚ¡ ASN1_ITEM * ™ ); 1048  ASN1_™em_ä“ ( ASN1_VALUE * v® , cÚ¡ ASN1_ITEM * ™ ); 1049 ASN1_VALUE * ASN1_™em_d2i (ASN1_VALUE ** v® , cÚ¡ ** š ,  Ën , cÚ¡ ASN1_ITEM * ™ ); 1050  ASN1_™em_i2d ( ASN1_VALUE * v® , ** out , cÚ¡ ASN1_ITEM * ™ ); 1051  ASN1_™em_ndef_i2d ( ASN1_VALUE * v® , ** out , cÚ¡ ASN1_ITEM * ™ ); 1053  ASN1_add_oid_moduË (); 1055 ASN1_TYPE * ASN1_g’”©e_ncÚf (* ¡r , CONF * ncÚf ); 1056 ASN1_TYPE * ASN1_g’”©e_v3 (* ¡r , X509V3_CTX * úf ); 1062  ERR_lßd_ASN1_¡ršgs (); 1067  #ASN1_F_A2D_ASN1_OBJECT 100 ) 1068  #ASN1_F_A2I_ASN1_ENUMERATED 101 ) 1069  #ASN1_F_A2I_ASN1_INTEGER 102 ) 1070  #ASN1_F_A2I_ASN1_STRING 103 ) 1071  #ASN1_F_APPEND_EXP 176 ) 1072  #ASN1_F_ASN1_BIT_STRING_SET_BIT 183 ) 1073  #ASN1_F_ASN1_CB 177 ) 1074  #ASN1_F_ASN1_CHECK_TLEN 104 ) 1075  #ASN1_F_ASN1_COLLATE_PRIMITIVE 105 ) 1076  #ASN1_F_ASN1_COLLECT 106 ) 1077  #ASN1_F_ASN1_D2I_EX_PRIMITIVE 108 ) 1078  #ASN1_F_ASN1_D2I_FP 109 ) 1079  #ASN1_F_ASN1_D2I_READ_BIO 107 ) 1080  #ASN1_F_ASN1_DIGEST 184 ) 1081  #ASN1_F_ASN1_DO_ADB 110 ) 1082  #ASN1_F_ASN1_DUP 111 ) 1083  #ASN1_F_ASN1_ENUMERATED_SET 112 ) 1084  #ASN1_F_ASN1_ENUMERATED_TO_BN 113 ) 1085  #ASN1_F_ASN1_EX_C2I 204 ) 1086  #ASN1_F_ASN1_FIND_END 190 ) 1087  #ASN1_F_ASN1_GENERALIZEDTIME_SET 185 ) 1088  #ASN1_F_ASN1_GENERATE_V3 178 ) 1089  #ASN1_F_ASN1_GET_OBJECT 114 ) 1090  #ASN1_F_ASN1_HEADER_NEW 115 ) 1091  #ASN1_F_ASN1_I2D_BIO 116 ) 1092  #ASN1_F_ASN1_I2D_FP 117 ) 1093  #ASN1_F_ASN1_INTEGER_SET 118 ) 1094  #ASN1_F_ASN1_INTEGER_TO_BN 119 ) 1095  #ASN1_F_ASN1_ITEM_D2I_FP 206 ) 1096  #ASN1_F_ASN1_ITEM_DUP 191 ) 1097  #ASN1_F_ASN1_ITEM_EX_COMBINE_NEW 121 ) 1098  #ASN1_F_ASN1_ITEM_EX_D2I 120 ) 1099  #ASN1_F_ASN1_ITEM_I2D_BIO 192 ) 1100  #ASN1_F_ASN1_ITEM_I2D_FP 193 ) 1101  #ASN1_F_ASN1_ITEM_PACK 198 ) 1102  #ASN1_F_ASN1_ITEM_SIGN 195 ) 1103  #ASN1_F_ASN1_ITEM_UNPACK 199 ) 1104  #ASN1_F_ASN1_ITEM_VERIFY 197 ) 1105  #ASN1_F_ASN1_MBSTRING_NCOPY 122 ) 1106  #ASN1_F_ASN1_OBJECT_NEW 123 ) 1107  #ASN1_F_ASN1_PACK_STRING 124 ) 1108  #ASN1_F_ASN1_PCTX_NEW 205 ) 1109  #ASN1_F_ASN1_PKCS5_PBE_SET 125 ) 1110  #ASN1_F_ASN1_SEQ_PACK 126 ) 1111  #ASN1_F_ASN1_SEQ_UNPACK 127 ) 1112  #ASN1_F_ASN1_SIGN 128 ) 1113  #ASN1_F_ASN1_STR2TYPE 179 ) 1114  #ASN1_F_ASN1_STRING_SET 186 ) 1115  #ASN1_F_ASN1_STRING_TABLE_ADD 129 ) 1116  #ASN1_F_ASN1_STRING_TYPE_NEW 130 ) 1117  #ASN1_F_ASN1_TEMPLATE_EX_D2I 132 ) 1118  #ASN1_F_ASN1_TEMPLATE_NEW 133 ) 1119  #ASN1_F_ASN1_TEMPLATE_NOEXP_D2I 131 ) 1120  #ASN1_F_ASN1_TIME_SET 175 ) 1121  #ASN1_F_ASN1_TYPE_GET_INT_OCTETSTRING 134 ) 1122  #ASN1_F_ASN1_TYPE_GET_OCTETSTRING 135 ) 1123  #ASN1_F_ASN1_UNPACK_STRING 136 ) 1124  #ASN1_F_ASN1_UTCTIME_SET 187 ) 1125  #ASN1_F_ASN1_VERIFY 137 ) 1126  #ASN1_F_BITSTR_CB 180 ) 1127  #ASN1_F_BN_TO_ASN1_ENUMERATED 138 ) 1128  #ASN1_F_BN_TO_ASN1_INTEGER 139 ) 1129  #ASN1_F_C2I_ASN1_BIT_STRING 189 ) 1130  #ASN1_F_C2I_ASN1_INTEGER 194 ) 1131  #ASN1_F_C2I_ASN1_OBJECT 196 ) 1132  #ASN1_F_COLLECT_DATA 140 ) 1133  #ASN1_F_D2I_ASN1_BIT_STRING 141 ) 1134  #ASN1_F_D2I_ASN1_BOOLEAN 142 ) 1135  #ASN1_F_D2I_ASN1_BYTES 143 ) 1136  #ASN1_F_D2I_ASN1_GENERALIZEDTIME 144 ) 1137  #ASN1_F_D2I_ASN1_HEADER 145 ) 1138  #ASN1_F_D2I_ASN1_INTEGER 146 ) 1139  #ASN1_F_D2I_ASN1_OBJECT 147 ) 1140  #ASN1_F_D2I_ASN1_SET 148 ) 1141  #ASN1_F_D2I_ASN1_TYPE_BYTES 149 ) 1142  #ASN1_F_D2I_ASN1_UINTEGER 150 ) 1143  #ASN1_F_D2I_ASN1_UTCTIME 151 ) 1144  #ASN1_F_D2I_NETSCAPE_RSA 152 ) 1145  #ASN1_F_D2I_NETSCAPE_RSA_2 153 ) 1146  #ASN1_F_D2I_PRIVATEKEY 154 ) 1147  #ASN1_F_D2I_PUBLICKEY 155 ) 1148  #ASN1_F_D2I_RSA_NET 200 ) 1149  #ASN1_F_D2I_RSA_NET_2 201 ) 1150  #ASN1_F_D2I_X509 156 ) 1151  #ASN1_F_D2I_X509_CINF 157 ) 1152  #ASN1_F_D2I_X509_PKEY 159 ) 1153  #ASN1_F_I2D_ASN1_SET 188 ) 1154  #ASN1_F_I2D_ASN1_TIME 160 ) 1155  #ASN1_F_I2D_DSA_PUBKEY 161 ) 1156  #ASN1_F_I2D_EC_PUBKEY 181 ) 1157  #ASN1_F_I2D_PRIVATEKEY 163 ) 1158  #ASN1_F_I2D_PUBLICKEY 164 ) 1159  #ASN1_F_I2D_RSA_NET 162 ) 1160  #ASN1_F_I2D_RSA_PUBKEY 165 ) 1161  #ASN1_F_LONG_C2I 166 ) 1162  #ASN1_F_OID_MODULE_INIT 174 ) 1163  #ASN1_F_PARSE_TAGGING 182 ) 1164  #ASN1_F_PKCS5_PBE2_SET 167 ) 1165  #ASN1_F_PKCS5_PBE_SET 202 ) 1166  #ASN1_F_X509_CINF_NEW 168 ) 1167  #ASN1_F_X509_CRL_ADD0_REVOKED 169 ) 1168  #ASN1_F_X509_INFO_NEW 170 ) 1169  #ASN1_F_X509_NAME_ENCODE 203 ) 1170  #ASN1_F_X509_NAME_EX_D2I 158 ) 1171  #ASN1_F_X509_NAME_EX_NEW 171 ) 1172  #ASN1_F_X509_NEW 172 ) 1173  #ASN1_F_X509_PKEY_NEW 173 ) 1176  #ASN1_R_ADDING_OBJECT 171 ) 1177  #ASN1_R_AUX_ERROR 100 ) 1178  #ASN1_R_BAD_CLASS 101 ) 1179  #ASN1_R_BAD_OBJECT_HEADER 102 ) 1180  #ASN1_R_BAD_PASSWORD_READ 103 ) 1181  #ASN1_R_BAD_TAG 104 ) 1182  #ASN1_R_BN_LIB 105 ) 1183  #ASN1_R_BOOLEAN_IS_WRONG_LENGTH 106 ) 1184  #ASN1_R_BUFFER_TOO_SMALL 107 ) 1185  #ASN1_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER 108 ) 1186  #ASN1_R_DATA_IS_WRONG 109 ) 1187  #ASN1_R_DECODE_ERROR 110 ) 1188  #ASN1_R_DECODING_ERROR 111 ) 1189  #ASN1_R_DEPTH_EXCEEDED 174 ) 1190  #ASN1_R_ENCODE_ERROR 112 ) 1191  #ASN1_R_ERROR_GETTING_TIME 173 ) 1192  #ASN1_R_ERROR_LOADING_SECTION 172 ) 1193  #ASN1_R_ERROR_PARSING_SET_ELEMENT 113 ) 1194  #ASN1_R_ERROR_SETTING_CIPHER_PARAMS 114 ) 1195  #ASN1_R_EXPECTING_AN_INTEGER 115 ) 1196  #ASN1_R_EXPECTING_AN_OBJECT 116 ) 1197  #ASN1_R_EXPECTING_A_BOOLEAN 117 ) 1198  #ASN1_R_EXPECTING_A_TIME 118 ) 1199  #ASN1_R_EXPLICIT_LENGTH_MISMATCH 119 ) 1200  #ASN1_R_EXPLICIT_TAG_NOT_CONSTRUCTED 120 ) 1201  #ASN1_R_FIELD_MISSING 121 ) 1202  #ASN1_R_FIRST_NUM_TOO_LARGE 122 ) 1203  #ASN1_R_HEADER_TOO_LONG 123 ) 1204  #ASN1_R_ILLEGAL_BITSTRING_FORMAT 175 ) 1205  #ASN1_R_ILLEGAL_BOOLEAN 176 ) 1206  #ASN1_R_ILLEGAL_CHARACTERS 124 ) 1207  #ASN1_R_ILLEGAL_FORMAT 177 ) 1208  #ASN1_R_ILLEGAL_HEX 178 ) 1209  #ASN1_R_ILLEGAL_IMPLICIT_TAG 179 ) 1210  #ASN1_R_ILLEGAL_INTEGER 180 ) 1211  #ASN1_R_ILLEGAL_NESTED_TAGGING 181 ) 1212  #ASN1_R_ILLEGAL_NULL 125 ) 1213  #ASN1_R_ILLEGAL_NULL_VALUE 182 ) 1214  #ASN1_R_ILLEGAL_OBJECT 183 ) 1215  #ASN1_R_ILLEGAL_OPTIONAL_ANY 126 ) 1216  #ASN1_R_ILLEGAL_OPTIONS_ON_ITEM_TEMPLATE 170 ) 1217  #ASN1_R_ILLEGAL_TAGGED_ANY 127 ) 1218  #ASN1_R_ILLEGAL_TIME_VALUE 184 ) 1219  #ASN1_R_INTEGER_NOT_ASCII_FORMAT 185 ) 1220  #ASN1_R_INTEGER_TOO_LARGE_FOR_LONG 128 ) 1221  #ASN1_R_INVALID_BMPSTRING_LENGTH 129 ) 1222  #ASN1_R_INVALID_DIGIT 130 ) 1223  #ASN1_R_INVALID_MODIFIER 186 ) 1224  #ASN1_R_INVALID_NUMBER 187 ) 1225  #ASN1_R_INVALID_SEPARATOR 131 ) 1226  #ASN1_R_INVALID_TIME_FORMAT 132 ) 1227  #ASN1_R_INVALID_UNIVERSALSTRING_LENGTH 133 ) 1228  #ASN1_R_INVALID_UTF8STRING 134 ) 1229  #ASN1_R_IV_TOO_LARGE 135 ) 1230  #ASN1_R_LENGTH_ERROR 136 ) 1231  #ASN1_R_LIST_ERROR 188 ) 1232  #ASN1_R_MISSING_EOC 137 ) 1233  #ASN1_R_MISSING_SECOND_NUMBER 138 ) 1234  #ASN1_R_MISSING_VALUE 189 ) 1235  #ASN1_R_MSTRING_NOT_UNIVERSAL 139 ) 1236  #ASN1_R_MSTRING_WRONG_TAG 140 ) 1237  #ASN1_R_NESTED_ASN1_STRING 197 ) 1238  #ASN1_R_NON_HEX_CHARACTERS 141 ) 1239  #ASN1_R_NOT_ASCII_FORMAT 190 ) 1240  #ASN1_R_NOT_ENOUGH_DATA 142 ) 1241  #ASN1_R_NO_MATCHING_CHOICE_TYPE 143 ) 1242  #ASN1_R_NULL_IS_WRONG_LENGTH 144 ) 1243  #ASN1_R_OBJECT_NOT_ASCII_FORMAT 191 ) 1244  #ASN1_R_ODD_NUMBER_OF_CHARS 145 ) 1245  #ASN1_R_PRIVATE_KEY_HEADER_MISSING 146 ) 1246  #ASN1_R_SECOND_NUMBER_TOO_LARGE 147 ) 1247  #ASN1_R_SEQUENCE_LENGTH_MISMATCH 148 ) 1248  #ASN1_R_SEQUENCE_NOT_CONSTRUCTED 149 ) 1249  #ASN1_R_SEQUENCE_OR_SET_NEEDS_CONFIG 192 ) 1250  #ASN1_R_SHORT_LINE 150 ) 1251  #ASN1_R_STRING_TOO_LONG 151 ) 1252  #ASN1_R_STRING_TOO_SHORT 152 ) 1253  #ASN1_R_TAG_VALUE_TOO_HIGH 153 ) 1254  #ASN1_R_THE_ASN1_OBJECT_IDENTIFIER_IS_NOT_KNOWN_FOR_THIS_MD 154 ) 1255  #ASN1_R_TIME_NOT_ASCII_FORMAT 193 ) 1256  #ASN1_R_TOO_LONG 155 ) 1257  #ASN1_R_TYPE_NOT_CONSTRUCTED 156 ) 1258  #ASN1_R_UNABLE_TO_DECODE_RSA_KEY 157 ) 1259  #ASN1_R_UNABLE_TO_DECODE_RSA_PRIVATE_KEY 158 ) 1260  #ASN1_R_UNEXPECTED_EOC 159 ) 1261  #ASN1_R_UNKNOWN_FORMAT 160 ) 1262  #ASN1_R_UNKNOWN_MESSAGE_DIGEST_ALGORITHM 161 ) 1263  #ASN1_R_UNKNOWN_OBJECT_TYPE 162 ) 1264  #ASN1_R_UNKNOWN_PUBLIC_KEY_TYPE 163 ) 1265  #ASN1_R_UNKNOWN_TAG 194 ) 1266  #ASN1_R_UNKOWN_FORMAT 195 ) 1267  #ASN1_R_UNSUPPORTED_ANY_DEFINED_BY_TYPE 164 ) 1268  #ASN1_R_UNSUPPORTED_CIPHER 165 ) 1269  #ASN1_R_UNSUPPORTED_ENCRYPTION_ALGORITHM 166 ) 1270  #ASN1_R_UNSUPPORTED_PUBLIC_KEY_TYPE 167 ) 1271  #ASN1_R_UNSUPPORTED_TYPE 196 ) 1272  #ASN1_R_WRONG_TAG 168 ) 1273  #ASN1_R_WRONG_TYPE 169 ) 1275 #ifdeà __ýlu¥lus @/usr/include/openssl/dh.h 59 #iâdeà HEADER_DH_H 60  #HEADER_DH_H ) 62  ~<Ý’s¦/e_os2.h > 64 #ifdeà OPENSSL_NO_DH 65 #”rÜ DH is di§bËd . 68 #iâdeà OPENSSL_NO_BIO 69  ~<Ý’s¦/bio.h > 71  ~<Ý’s¦/os¦_typ.h > 72 #iâdeà OPENSSL_NO_DEPRECATED 73  ~<Ý’s¦/bn.h > 76 #iâdeà OPENSSL_DH_MAX_MODULUS_BITS 77  #OPENSSL_DH_MAX_MODULUS_BITS 10000 ) 80  #DH_FLAG_CACHE_MONT_P 0x01 ) 81  #DH_FLAG_NO_EXP_CONSTTIME 0x02 ) 89 #ifdeà __ýlu¥lus 97  sdh_m‘hod 99 cÚ¡ * Çme ; 101 (* g’”©e_key )( DH * dh ); 102 (* compu‹_key )(* key ,cÚ¡ BIGNUM * pub_key , DH * dh ); 103 (* bn_mod_exp )(cÚ¡ DH * dh , BIGNUM * r , cÚ¡ BIGNUM * a , 104 cÚ¡ BIGNUM * p , cÚ¡ BIGNUM * m , BN_CTX * ùx , 105 BN_MONT_CTX * m_ùx ); 107 (* š™ )( DH * dh ); 108 (* fšish )( DH * dh ); 109  æags ; 110 * ­p_d©a ; 112 (* g’”©e_·¿ms )( DH * dh ,  ´ime_Ën ,  g’”©Ü , BN_GENCB * cb ); 115  sdh_¡ 119  ·d ; 120  v”siÚ ; 121 BIGNUM * p ; 122 BIGNUM * g ; 123  Ëngth ; 124 BIGNUM * pub_key ; 125 BIGNUM * ´iv_key ; 127  æags ; 128 BN_MONT_CTX * m‘hod_mÚt_p ; 130 BIGNUM * q ; 131 BIGNUM * j ; 132 * £ed ; 133  £edËn ; 134 BIGNUM * couÁ” ; 136  »ã»nûs ; 137 CRYPTO_EX_DATA ex_d©a ; 138 cÚ¡ DH_METHOD * m‘h ; 139 ENGINE * ’gše ; 142  #DH_GENERATOR_2 2 ) 144  #DH_GENERATOR_5 5 ) 147  #DH_CHECK_P_NOT_PRIME 0x01 ) 148  #DH_CHECK_P_NOT_SAFE_PRIME 0x02 ) 149  #DH_UNABLE_TO_CHECK_GENERATOR 0x04 ) 150  #DH_NOT_SUITABLE_GENERATOR 0x08 ) 153  #DH_CHECK_PUBKEY_TOO_SMALL 0x01 ) 154  #DH_CHECK_PUBKEY_TOO_LARGE 0x02 ) 158  #DH_CHECK_P_NOT_STRONG_PRIME DH_CHECK_P_NOT_SAFE_PRIME ) 160  #DH·¿ms_dup ( x è `ASN1_dup_of_cÚ¡ ( DH , i2d_DH·¿ms , d2i_DH·¿ms ,x) ) 161  #d2i_DH·¿ms_å ( å , x è( DH *) `ASN1_d2i_å ((*(*)()) DH_Ãw , \ 162 (*(*)()) d2i_DH·¿ms ,( å ),(**)( x )) ) 163  #i2d_DH·¿ms_å ( å , x è `ASN1_i2d_å ( i2d_DH·¿ms ,(fp), \ 164 (*)( x )) ) 165  #d2i_DH·¿ms_bio ( bp , x è `ASN1_d2i_bio_of ( DH , DH_Ãw , d2i_DH·¿ms ,bp,x) ) 166  #i2d_DH·¿ms_bio ( bp , x è `ASN1_i2d_bio_of_cÚ¡ ( DH , i2d_DH·¿ms ,bp,x) ) 168 cÚ¡ DH_METHOD * DH_O³nSSL (); 170  DH_£t_deçuÉ_m‘hod (cÚ¡ DH_METHOD * m‘h ); 171 cÚ¡ DH_METHOD * DH_g‘_deçuÉ_m‘hod (); 172  DH_£t_m‘hod ( DH * dh , cÚ¡ DH_METHOD * m‘h ); 173 DH * DH_Ãw_m‘hod ( ENGINE * ’gše ); 175 DH * DH_Ãw (); 176  DH_ä“ ( DH * dh ); 177  DH_up_»f ( DH * dh ); 178  DH_size (cÚ¡ DH * dh ); 179  DH_g‘_ex_Ãw_šdex ( ¬gl , * ¬gp , CRYPTO_EX_Ãw * Ãw_func , 180 CRYPTO_EX_dup * dup_func , CRYPTO_EX_ä“ * ä“_func ); 181  DH_£t_ex_d©a ( DH * d ,  idx , * ¬g ); 182 * DH_g‘_ex_d©a ( DH * d ,  idx ); 185 #iâdeà OPENSSL_NO_DEPRECATED 186 DH * DH_g’”©e_·¿m‘”s ( ´ime_Ën , g’”©Ü , 187 (* ÿÎback )(,,*),* cb_¬g ); 191  DH_g’”©e_·¿m‘”s_ex ( DH * dh ,  ´ime_Ën , g’”©Ü , BN_GENCB * cb ); 193  DH_check (cÚ¡ DH * dh ,* codes ); 194  DH_check_pub_key (cÚ¡ DH * dh ,cÚ¡ BIGNUM * pub_key , * codes ); 195  DH_g’”©e_key ( DH * dh ); 196  DH_compu‹_key (* key ,cÚ¡ BIGNUM * pub_key , DH * dh ); 197 DH * d2i_DH·¿ms (DH ** a ,cÚ¡ ** µ ,  Ëngth ); 198  i2d_DH·¿ms (cÚ¡ DH * a ,** µ ); 199 #iâdeà OPENSSL_NO_FP_API 200  DH·¿ms_´št_å ( FILE * å , cÚ¡ DH * x ); 202 #iâdeà OPENSSL_NO_BIO 203  DH·¿ms_´št ( BIO * bp , cÚ¡ DH * x ); 205  DH·¿ms_´št (* bp , cÚ¡ DH * x ); 212  ERR_lßd_DH_¡ršgs (); 217  #DH_F_COMPUTE_KEY 102 ) 218  #DH_F_DHPARAMS_PRINT 100 ) 219  #DH_F_DHPARAMS_PRINT_FP 101 ) 220  #DH_F_DH_BUILTIN_GENPARAMS 106 ) 221  #DH_F_DH_NEW_METHOD 105 ) 222  #DH_F_GENERATE_KEY 103 ) 223  #DH_F_GENERATE_PARAMETERS 104 ) 226  #DH_R_BAD_GENERATOR 101 ) 227  #DH_R_INVALID_PUBKEY 102 ) 228  #DH_R_MODULUS_TOO_LARGE 103 ) 229  #DH_R_NO_PRIVATE_VALUE 100 ) 231 #ifdeà __ýlu¥lus @/usr/include/openssl/dsa.h 65 #iâdeà HEADER_DSA_H 66  #HEADER_DSA_H ) 68  ~<Ý’s¦/e_os2.h > 70 #ifdeà OPENSSL_NO_DSA 71 #”rÜ DSA is di§bËd . 74 #iâdeà OPENSSL_NO_BIO 75  ~<Ý’s¦/bio.h > 77  ~<Ý’s¦/üy±o.h > 78  ~<Ý’s¦/os¦_typ.h > 80 #iâdeà OPENSSL_NO_DEPRECATED 81  ~<Ý’s¦/bn.h > 82 #iâdeà OPENSSL_NO_DH 83  ~<Ý’s¦/dh.h > 87 #iâdeà OPENSSL_DSA_MAX_MODULUS_BITS 88  #OPENSSL_DSA_MAX_MODULUS_BITS 10000 ) 91  #DSA_FLAG_CACHE_MONT_P 0x01 ) 92  #DSA_FLAG_NO_EXP_CONSTTIME 0x02 ) 100 #ifdeà __ýlu¥lus 108  sDSA_SIG_¡ 110 BIGNUM * r ; 111 BIGNUM * s ; 112 } tDSA_SIG ; 114  sd§_m‘hod 116 cÚ¡ * Çme ; 117 DSA_SIG * (* d§_do_sign )(cÚ¡ * dg¡ ,  dËn , DSA * d§ ); 118 (* d§_sign_£tup )( DSA * d§ , BN_CTX * ùx_š , BIGNUM ** kšvp , 119 BIGNUM ** ½ ); 120 (* d§_do_v”ify )(cÚ¡ * dg¡ ,  dg¡_Ën , 121 DSA_SIG * sig , DSA * d§ ); 122 (* d§_mod_exp )( DSA * d§ , BIGNUM * ¼ , BIGNUM * a1 , BIGNUM * p1 , 123 BIGNUM * a2 , BIGNUM * p2 , BIGNUM * m , BN_CTX * ùx , 124 BN_MONT_CTX * š_mÚt ); 125 (* bn_mod_exp )( DSA * d§ , BIGNUM * r , BIGNUM * a , cÚ¡ BIGNUM * p , 126 cÚ¡ BIGNUM * m , BN_CTX * ùx , 127 BN_MONT_CTX * m_ùx ); 128 (* š™ )( DSA * d§ ); 129 (* fšish )( DSA * d§ ); 130  æags ; 131 * ­p_d©a ; 133 (* d§_·¿mg’ )( DSA * d§ ,  b™s , 134 * £ed ,  £ed_Ën , 135 * couÁ”_»t , * h_»t , 136 BN_GENCB * cb ); 138 (* d§_keyg’ )( DSA * d§ ); 141  sd§_¡ 145  ·d ; 146  v”siÚ ; 147  wr™e_·¿ms ; 148 BIGNUM * p ; 149 BIGNUM * q ; 150 BIGNUM * g ; 152 BIGNUM * pub_key ; 153 BIGNUM * ´iv_key ; 155 BIGNUM * kšv ; 156 BIGNUM * r ; 158  æags ; 160 BN_MONT_CTX * m‘hod_mÚt_p ; 161  »ã»nûs ; 162 CRYPTO_EX_DATA ex_d©a ; 163 cÚ¡ DSA_METHOD * m‘h ; 165 ENGINE * ’gše ; 168  #DSA·¿ms_dup ( x è `ASN1_dup_of_cÚ¡ ( DSA , i2d_DSA·¿ms , d2i_DSA·¿ms ,x) ) 169  #d2i_DSA·¿ms_å ( å , x è( DSA *) `ASN1_d2i_å ((*(*)()) DSA_Ãw , \ 170 (*(*)()) d2i_DSA·¿ms ,( å ),(**)( x )) ) 171  #i2d_DSA·¿ms_å ( å , x è `ASN1_i2d_å ( i2d_DSA·¿ms ,(fp), \ 172 (*)( x )) ) 173  #d2i_DSA·¿ms_bio ( bp , x è `ASN1_d2i_bio_of ( DSA , DSA_Ãw , d2i_DSA·¿ms ,bp,x) ) 174  #i2d_DSA·¿ms_bio ( bp , x è `ASN1_i2d_bio_of_cÚ¡ ( DSA , i2d_DSA·¿ms ,bp,x) ) 177 DSA_SIG * DSA_SIG_Ãw (); 178  DSA_SIG_ä“ ( DSA_SIG * a ); 179  i2d_DSA_SIG (cÚ¡ DSA_SIG * a , ** µ ); 180 DSA_SIG * d2i_DSA_SIG (DSA_SIG ** v , cÚ¡ ** µ ,  Ëngth ); 182 DSA_SIG * DSA_do_sign (cÚ¡ * dg¡ , dËn , DSA * d§ ); 183  DSA_do_v”ify (cÚ¡ * dg¡ , dg¡_Ën , 184 DSA_SIG * sig , DSA * d§ ); 186 cÚ¡ DSA_METHOD * DSA_O³nSSL (); 188  DSA_£t_deçuÉ_m‘hod (cÚ¡ DSA_METHOD *); 189 cÚ¡ DSA_METHOD * DSA_g‘_deçuÉ_m‘hod (); 190  DSA_£t_m‘hod ( DSA * d§ , cÚ¡ DSA_METHOD *); 192 DSA * DSA_Ãw (); 193 DSA * DSA_Ãw_m‘hod ( ENGINE * ’gše ); 194  DSA_ä“ ( DSA * r ); 196  DSA_up_»f ( DSA * r ); 197  DSA_size (cÚ¡ DSA *); 199  DSA_sign_£tup Ð DSA * d§ , BN_CTX * ùx_š , BIGNUM ** kšvp ,BIGNUM ** ½ ); 200  DSA_sign ( ty³ ,cÚ¡ * dg¡ , dËn , 201 * sig , * sigËn , DSA * d§ ); 202  DSA_v”ify ( ty³ ,cÚ¡ * dg¡ , dg¡_Ën , 203 cÚ¡ * sigbuf ,  sigËn , DSA * d§ ); 204  DSA_g‘_ex_Ãw_šdex ( ¬gl , * ¬gp , CRYPTO_EX_Ãw * Ãw_func , 205 CRYPTO_EX_dup * dup_func , CRYPTO_EX_ä“ * ä“_func ); 206  DSA_£t_ex_d©a ( DSA * d ,  idx , * ¬g ); 207 * DSA_g‘_ex_d©a ( DSA * d ,  idx ); 209 DSA * d2i_DSAPublicKey (DSA ** a , cÚ¡ ** µ ,  Ëngth ); 210 DSA * d2i_DSAPriv©eKey (DSA ** a , cÚ¡ ** µ ,  Ëngth ); 211 DSA * d2i_DSA·¿ms (DSA ** a , cÚ¡ ** µ ,  Ëngth ); 214 #iâdeà OPENSSL_NO_DEPRECATED 215 DSA * DSA_g’”©e_·¿m‘”s ( b™s , 216 * £ed , £ed_Ën , 217 * couÁ”_»t , * h_»t , 218 (* ÿÎback )(, , *),* cb_¬g ); 222  DSA_g’”©e_·¿m‘”s_ex ( DSA * d§ ,  b™s , 223 * £ed , £ed_Ën , 224 * couÁ”_»t , * h_»t , BN_GENCB * cb ); 226  DSA_g’”©e_key ( DSA * a ); 227  i2d_DSAPublicKey (cÚ¡ DSA * a , ** µ ); 228  i2d_DSAPriv©eKey (cÚ¡ DSA * a , ** µ ); 229  i2d_DSA·¿ms (cÚ¡ DSA * a ,** µ ); 231 #iâdeà OPENSSL_NO_BIO 232  DSA·¿ms_´št ( BIO * bp , cÚ¡ DSA * x ); 233  DSA_´št ( BIO * bp , cÚ¡ DSA * x ,  off ); 235 #iâdeà OPENSSL_NO_FP_API 236  DSA·¿ms_´št_å ( FILE * å , cÚ¡ DSA * x ); 237  DSA_´št_å ( FILE * bp , cÚ¡ DSA * x ,  off ); 240  #DSS_´ime_checks 50 ) 243  #DSA_is_´ime ( n , ÿÎback , cb_¬g ) \ 244 `BN_is_´ime ( n , DSS_´ime_checks , ÿÎback , NULL , cb_¬g ) ) 246 #iâdeà OPENSSL_NO_DH 249 DH * DSA_dup_DH (cÚ¡ DSA * r ); 256  ERR_lßd_DSA_¡ršgs (); 261  #DSA_F_D2I_DSA_SIG 110 ) 262  #DSA_F_DSAPARAMS_PRINT 100 ) 263  #DSA_F_DSAPARAMS_PRINT_FP 101 ) 264  #DSA_F_DSA_DO_SIGN 112 ) 265  #DSA_F_DSA_DO_VERIFY 113 ) 266  #DSA_F_DSA_NEW_METHOD 103 ) 267  #DSA_F_DSA_PRINT 104 ) 268  #DSA_F_DSA_PRINT_FP 105 ) 269  #DSA_F_DSA_SIGN 106 ) 270  #DSA_F_DSA_SIGN_SETUP 107 ) 271  #DSA_F_DSA_SIG_NEW 109 ) 272  #DSA_F_DSA_VERIFY 108 ) 273  #DSA_F_I2D_DSA_SIG 111 ) 274  #DSA_F_SIG_CB 114 ) 277  #DSA_R_BAD_Q_VALUE 102 ) 278  #DSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE 100 ) 279  #DSA_R_MISSING_PARAMETERS 101 ) 280  #DSA_R_MODULUS_TOO_LARGE 103 ) 282 #ifdeà __ýlu¥lus @/usr/include/openssl/ebcdic.h 3 #iâdeà HEADER_EBCDIC_H 4  #HEADER_EBCDIC_H ) 6  ~ 9  #os_tßscii _Ý’s¦_os_tßscii ) 10  #os_tÛbcdic _Ý’s¦_os_tÛbcdic ) 11  #ebcdic2ascii _Ý’s¦_ebcdic2ascii ) 12  #ascii2ebcdic _Ý’s¦_ascii2ebcdic ) 14 cÚ¡  os_tßscii [256]; 15 cÚ¡  os_tÛbcdic [256]; 16 * ebcdic2ascii (* de¡ , cÚ¡ * ¤û , size_t couÁ ); 17 * ascii2ebcdic (* de¡ , cÚ¡ * ¤û , size_t couÁ ); @/usr/include/openssl/ec.h 72 #iâdeà HEADER_EC_H 73  #HEADER_EC_H ) 75  ~<Ý’s¦/Ý’s¦cÚf.h > 77 #ifdeà OPENSSL_NO_EC 78 #”rÜ EC is di§bËd . 81  ~<Ý’s¦/a¢1.h > 82  ~<Ý’s¦/symhacks.h > 83 #iâdeà OPENSSL_NO_DEPRECATED 84  ~<Ý’s¦/bn.h > 87 #ifdeà __ýlu¥lus 89 #–ià defšed ( __SUNPRO_C ) 90 #ià __SUNPRO_C >= 0x520 91 #´agm¨ ”rÜ_mes§ges ( off , E_ARRAY_OF_INCOMPLETE_NONAME , E_ARRAY_OF_INCOMPLETE ) 96 #iâdeà OPENSSL_ECC_MAX_FIELD_BITS 97  #OPENSSL_ECC_MAX_FIELD_BITS 661 ) 102 POINT_CONVERSION_COMPRESSED = 2, 103 POINT_CONVERSION_UNCOMPRESSED = 4, 104 POINT_CONVERSION_HYBRID = 6 105 } tpošt_cÚv”siÚ_fÜm_t ; 108  ec_m‘hod_¡ tEC_METHOD ; 110  ec_group_¡ 119 tEC_GROUP ; 121  ec_pošt_¡ tEC_POINT ; 127 cÚ¡ EC_METHOD * EC_GFp_sim¶e_m‘hod (); 128 cÚ¡ EC_METHOD * EC_GFp_mÚt_m‘hod (); 129 cÚ¡ EC_METHOD * EC_GFp_ni¡_m‘hod (); 133 cÚ¡ EC_METHOD * EC_GF2m_sim¶e_m‘hod (); 136 EC_GROUP * EC_GROUP_Ãw (cÚ¡ EC_METHOD *); 137  EC_GROUP_ä“ ( EC_GROUP *); 138  EC_GROUP_þ—r_ä“ ( EC_GROUP *); 139  EC_GROUP_cÝy ( EC_GROUP *, const EC_GROUP *); 140 EC_GROUP * EC_GROUP_dup (const EC_GROUP *); 142 cÚ¡ EC_METHOD * EC_GROUP_m‘hod_of (cÚ¡ EC_GROUP *); 143  EC_METHOD_g‘_f›ld_ty³ (cÚ¡ EC_METHOD *); 145  EC_GROUP_£t_g’”©Ü ( EC_GROUP *, cÚ¡ EC_POINT * g’”©Ü , cÚ¡ BIGNUM * Üd” , cÚ¡ BIGNUM * coçùÜ ); 146 cÚ¡ EC_POINT * EC_GROUP_g‘0_g’”©Ü (cÚ¡ EC_GROUP *); 147  EC_GROUP_g‘_Üd” (cÚ¡ EC_GROUP *, BIGNUM * Üd” , BN_CTX *); 148  EC_GROUP_g‘_coçùÜ (cÚ¡ EC_GROUP *, BIGNUM * coçùÜ , BN_CTX *); 150  EC_GROUP_£t_curve_Çme ( EC_GROUP *,  nid ); 151  EC_GROUP_g‘_curve_Çme (cÚ¡ EC_GROUP *); 153  EC_GROUP_£t_a¢1_æag ( EC_GROUP *,  æag ); 154  EC_GROUP_g‘_a¢1_æag (cÚ¡ EC_GROUP *); 156  EC_GROUP_£t_pošt_cÚv”siÚ_fÜm ( EC_GROUP *, pošt_cÚv”siÚ_fÜm_t ); 157 pošt_cÚv”siÚ_fÜm_t EC_GROUP_g‘_pošt_cÚv”siÚ_fÜm (cÚ¡ EC_GROUP *); 159 * EC_GROUP_g‘0_£ed (cÚ¡ EC_GROUP *); 160 size_t EC_GROUP_g‘_£ed_Ën (cÚ¡ EC_GROUP *); 161 size_t EC_GROUP_£t_£ed ( EC_GROUP *, cÚ¡ *, size_ˆ Ën ); 163  EC_GROUP_£t_curve_GFp ( EC_GROUP *, cÚ¡ BIGNUM * p , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , BN_CTX *); 164  EC_GROUP_g‘_curve_GFp (cÚ¡ EC_GROUP *, BIGNUM * p , BIGNUM * a , BIGNUM * b , BN_CTX *); 165  EC_GROUP_£t_curve_GF2m ( EC_GROUP *, cÚ¡ BIGNUM * p , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , BN_CTX *); 166  EC_GROUP_g‘_curve_GF2m (cÚ¡ EC_GROUP *, BIGNUM * p , BIGNUM * a , BIGNUM * b , BN_CTX *); 169  EC_GROUP_g‘_deg»e (cÚ¡ EC_GROUP *); 172  EC_GROUP_check (cÚ¡ EC_GROUP * group , BN_CTX * ùx ); 175  EC_GROUP_check_disüimšªt (cÚ¡ EC_GROUP *, BN_CTX *); 178  EC_GROUP_cmp (cÚ¡ EC_GROUP *, cÚ¡ EC_GROUP *, BN_CTX *); 182 EC_GROUP * EC_GROUP_Ãw_curve_GFp (cÚ¡ BIGNUM * p , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , BN_CTX *); 183 EC_GROUP * EC_GROUP_Ãw_curve_GF2m (cÚ¡ BIGNUM * p , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , BN_CTX *); 187 EC_GROUP * EC_GROUP_Ãw_by_curve_Çme ( nid ); 190  nid ; 191 cÚ¡ * comm’t ; 192 } tEC_bužtš_curve ; 197 size_t EC_g‘_bužtš_curves ( EC_bužtš_curve * r , size_ˆ n™ems ); 202 EC_POINT * EC_POINT_Ãw (cÚ¡ EC_GROUP *); 203  EC_POINT_ä“ ( EC_POINT *); 204  EC_POINT_þ—r_ä“ ( EC_POINT *); 205  EC_POINT_cÝy ( EC_POINT *, const EC_POINT *); 206 EC_POINT * EC_POINT_dup (cÚ¡ EC_POINT *, cÚ¡ EC_GROUP *); 208 cÚ¡ EC_METHOD * EC_POINT_m‘hod_of (cÚ¡ EC_POINT *); 210  EC_POINT_£t_to_šfš™y (cÚ¡ EC_GROUP *, EC_POINT *); 211  EC_POINT_£t_J´ojeùive_coÜdš©es_GFp (cÚ¡ EC_GROUP *, EC_POINT *, 212 cÚ¡ BIGNUM * x , cÚ¡ BIGNUM * y , cÚ¡ BIGNUM * z , BN_CTX *); 213  EC_POINT_g‘_J´ojeùive_coÜdš©es_GFp (cÚ¡ EC_GROUP *, cÚ¡ EC_POINT *, 214 BIGNUM * x , BIGNUM * y , BIGNUM * z , BN_CTX *); 215  EC_POINT_£t_affše_coÜdš©es_GFp (cÚ¡ EC_GROUP *, EC_POINT *, 216 cÚ¡ BIGNUM * x , cÚ¡ BIGNUM * y , BN_CTX *); 217  EC_POINT_g‘_affše_coÜdš©es_GFp (cÚ¡ EC_GROUP *, cÚ¡ EC_POINT *, 218 BIGNUM * x , BIGNUM * y , BN_CTX *); 219  EC_POINT_£t_com´es£d_coÜdš©es_GFp (cÚ¡ EC_GROUP *, EC_POINT *, 220 cÚ¡ BIGNUM * x ,  y_b™ , BN_CTX *); 222  EC_POINT_£t_affše_coÜdš©es_GF2m (cÚ¡ EC_GROUP *, EC_POINT *, 223 cÚ¡ BIGNUM * x , cÚ¡ BIGNUM * y , BN_CTX *); 224  EC_POINT_g‘_affše_coÜdš©es_GF2m (cÚ¡ EC_GROUP *, cÚ¡ EC_POINT *, 225 BIGNUM * x , BIGNUM * y , BN_CTX *); 226  EC_POINT_£t_com´es£d_coÜdš©es_GF2m (cÚ¡ EC_GROUP *, EC_POINT *, 227 cÚ¡ BIGNUM * x ,  y_b™ , BN_CTX *); 229 size_t EC_POINT_pošt2où (cÚ¡ EC_GROUP *, cÚ¡ EC_POINT *, pošt_cÚv”siÚ_fÜm_t fÜm , 230 * buf , size_t Ën , BN_CTX *); 231  EC_POINT_où2pošt (cÚ¡ EC_GROUP *, EC_POINT *, 232 cÚ¡ * buf , size_t Ën , BN_CTX *); 235 BIGNUM * EC_POINT_pošt2bn (cÚ¡ EC_GROUP *, cÚ¡ EC_POINT *, 236 pošt_cÚv”siÚ_fÜm_t fÜm , BIGNUM *, BN_CTX *); 237 EC_POINT * EC_POINT_bn2pošt (cÚ¡ EC_GROUP *, cÚ¡ BIGNUM *, 238 EC_POINT *, BN_CTX *); 239 * EC_POINT_pošt2hex (cÚ¡ EC_GROUP *, cÚ¡ EC_POINT *, 240 pošt_cÚv”siÚ_fÜm_t fÜm , BN_CTX *); 241 EC_POINT * EC_POINT_hex2pošt (cÚ¡ EC_GROUP *, const *, 242 EC_POINT *, BN_CTX *); 244  EC_POINT_add (cÚ¡ EC_GROUP *, EC_POINT * r , cÚ¡ EC_POINT * a , cÚ¡ EC_POINT * b , BN_CTX *); 245  EC_POINT_dbl (cÚ¡ EC_GROUP *, EC_POINT * r , cÚ¡ EC_POINT * a , BN_CTX *); 246  EC_POINT_šv”t (cÚ¡ EC_GROUP *, EC_POINT *, BN_CTX *); 248  EC_POINT_is_©_šfš™y (cÚ¡ EC_GROUP *, cÚ¡ EC_POINT *); 249  EC_POINT_is_Ú_curve (cÚ¡ EC_GROUP *, cÚ¡ EC_POINT *, BN_CTX *); 250  EC_POINT_cmp (cÚ¡ EC_GROUP *, cÚ¡ EC_POINT * a , cÚ¡ EC_POINT * b , BN_CTX *); 252  EC_POINT_make_affše (cÚ¡ EC_GROUP *, EC_POINT *, BN_CTX *); 253  EC_POINTs_make_affše (cÚ¡ EC_GROUP *, size_t num , EC_POINT *[], BN_CTX *); 256  EC_POINTs_mul (cÚ¡ EC_GROUP *, EC_POINT * r , cÚ¡ BIGNUM *, size_t num , cÚ¡ EC_POINT *[], cÚ¡ BIGNUM *[], BN_CTX *); 257  EC_POINT_mul (cÚ¡ EC_GROUP *, EC_POINT * r , cÚ¡ BIGNUM *, cÚ¡ EC_POINT *, cÚ¡ BIGNUM *, BN_CTX *); 260  EC_GROUP_´ecompu‹_muÉ ( EC_GROUP *, BN_CTX *); 262  EC_GROUP_have_´ecompu‹_muÉ (cÚ¡ EC_GROUP *); 270  EC_GROUP_g‘_basis_ty³ (cÚ¡ EC_GROUP *); 271  EC_GROUP_g‘_ŒšomŸl_basis (cÚ¡ EC_GROUP *, * k ); 272  EC_GROUP_g‘_³ÁªomŸl_basis (cÚ¡ EC_GROUP *, * k1 , 273 * k2 , * k3 ); 275  #OPENSSL_EC_NAMED_CURVE 0x001 ) 277  eýk_·¿m‘”s_¡ tECPKPARAMETERS ; 279 EC_GROUP * d2i_ECPKP¬am‘”s (EC_GROUP **, cÚ¡ ** š ,  Ën ); 280  i2d_ECPKP¬am‘”s (cÚ¡ EC_GROUP *, ** out ); 282  #d2i_ECPKP¬am‘”s_bio ( bp , x è `ASN1_d2i_bio_of ( EC_GROUP , NULL , d2i_ECPKP¬am‘”s ,bp,x) ) 283  #i2d_ECPKP¬am‘”s_bio ( bp , x è `ASN1_i2d_bio_of_cÚ¡ ( EC_GROUP , i2d_ECPKP¬am‘”s ,bp,x) ) 284  #d2i_ECPKP¬am‘”s_å ( å , x è( EC_GROUP *) `ASN1_d2i_å ( NULL , \ 285 (*(*)()) d2i_ECPKP¬am‘”s ,( å ),(**)( x )) ) 286  #i2d_ECPKP¬am‘”s_å ( å , x è `ASN1_i2d_å ( i2d_ECPKP¬am‘”s ,(fp), \ 287 (*)( x )) ) 289 #iâdeà OPENSSL_NO_BIO 290  ECPKP¬am‘”s_´št ( BIO * bp , cÚ¡ EC_GROUP * x ,  off ); 292 #iâdeà OPENSSL_NO_FP_API 293  ECPKP¬am‘”s_´št_å ( FILE * å , cÚ¡ EC_GROUP * x ,  off ); 297  ec_key_¡ tEC_KEY ; 300  #EC_PKEY_NO_PARAMETERS 0x001 ) 301  #EC_PKEY_NO_PUBKEY 0x002 ) 303 EC_KEY * EC_KEY_Ãw (); 304 EC_KEY * EC_KEY_Ãw_by_curve_Çme ( nid ); 305  EC_KEY_ä“ ( EC_KEY *); 306 EC_KEY * EC_KEY_cÝy (EC_KEY *, const EC_KEY *); 307 EC_KEY * EC_KEY_dup (const EC_KEY *); 309  EC_KEY_up_»f ( EC_KEY *); 311 cÚ¡ EC_GROUP * EC_KEY_g‘0_group (cÚ¡ EC_KEY *); 312  EC_KEY_£t_group ( EC_KEY *, cÚ¡ EC_GROUP *); 313 cÚ¡ BIGNUM * EC_KEY_g‘0_´iv©e_key (cÚ¡ EC_KEY *); 314  EC_KEY_£t_´iv©e_key ( EC_KEY *, cÚ¡ BIGNUM *); 315 cÚ¡ EC_POINT * EC_KEY_g‘0_public_key (cÚ¡ EC_KEY *); 316  EC_KEY_£t_public_key ( EC_KEY *, cÚ¡ EC_POINT *); 317  EC_KEY_g‘_’c_æags (cÚ¡ EC_KEY *); 318  EC_KEY_£t_’c_æags ( EC_KEY *, ); 319 pošt_cÚv”siÚ_fÜm_t EC_KEY_g‘_cÚv_fÜm (cÚ¡ EC_KEY *); 320  EC_KEY_£t_cÚv_fÜm ( EC_KEY *, pošt_cÚv”siÚ_fÜm_t ); 322 * EC_KEY_g‘_key_m‘hod_d©a ( EC_KEY *, 323 *(* dup_func )(*), (* ä“_func )(*), (* þ—r_ä“_func )(*)); 324  EC_KEY_š£¹_key_m‘hod_d©a ( EC_KEY *, * d©a , 325 *(* dup_func )(*), (* ä“_func )(*), (* þ—r_ä“_func )(*)); 327  EC_KEY_£t_a¢1_æag ( EC_KEY *, ); 328  EC_KEY_´ecompu‹_muÉ ( EC_KEY *, BN_CTX * ùx ); 331  EC_KEY_g’”©e_key ( EC_KEY *); 333  EC_KEY_check_key (cÚ¡ EC_KEY *); 336 EC_KEY * d2i_ECPriv©eKey (EC_KEY ** a , cÚ¡ ** š ,  Ën ); 337  i2d_ECPriv©eKey ( EC_KEY * a , ** out ); 339 EC_KEY * d2i_ECP¬am‘”s (EC_KEY ** a , cÚ¡ ** š ,  Ën ); 340  i2d_ECP¬am‘”s ( EC_KEY * a , ** out ); 343 EC_KEY * o2i_ECPublicKey (EC_KEY ** a , cÚ¡ ** š ,  Ën ); 344  i2o_ECPublicKey ( EC_KEY * a , ** out ); 346 #iâdeà OPENSSL_NO_BIO 347  ECP¬am‘”s_´št ( BIO * bp , cÚ¡ EC_KEY * x ); 348  EC_KEY_´št ( BIO * bp , cÚ¡ EC_KEY * x ,  off ); 350 #iâdeà OPENSSL_NO_FP_API 351  ECP¬am‘”s_´št_å ( FILE * å , cÚ¡ EC_KEY * x ); 352  EC_KEY_´št_å ( FILE * å , cÚ¡ EC_KEY * x ,  off ); 355  #ECP¬am‘”s_dup ( x è `ASN1_dup_of ( EC_KEY , i2d_ECP¬am‘”s , d2i_ECP¬am‘”s ,x) ) 357 #iâdeà __ýlu¥lus 358 #ià defšed ( __SUNPRO_C ) 359 #ià __SUNPRO_C >= 0x520 360 #´agm¨ ”rÜ_mes§ges (, E_ARRAY_OF_INCOMPLETE_NONAME , E_ARRAY_OF_INCOMPLETE ) 369  ERR_lßd_EC_¡ršgs (); 374  #EC_F_COMPUTE_WNAF 143 ) 375  #EC_F_D2I_ECPARAMETERS 144 ) 376  #EC_F_D2I_ECPKPARAMETERS 145 ) 377  #EC_F_D2I_ECPRIVATEKEY 146 ) 378  #EC_F_ECPARAMETERS_PRINT 147 ) 379  #EC_F_ECPARAMETERS_PRINT_FP 148 ) 380  #EC_F_ECPKPARAMETERS_PRINT 149 ) 381  #EC_F_ECPKPARAMETERS_PRINT_FP 150 ) 382  #EC_F_ECP_NIST_MOD_192 203 ) 383  #EC_F_ECP_NIST_MOD_224 204 ) 384  #EC_F_ECP_NIST_MOD_256 205 ) 385  #EC_F_ECP_NIST_MOD_521 206 ) 386  #EC_F_EC_ASN1_GROUP2CURVE 153 ) 387  #EC_F_EC_ASN1_GROUP2FIELDID 154 ) 388  #EC_F_EC_ASN1_GROUP2PARAMETERS 155 ) 389  #EC_F_EC_ASN1_GROUP2PKPARAMETERS 156 ) 390  #EC_F_EC_ASN1_PARAMETERS2GROUP 157 ) 391  #EC_F_EC_ASN1_PKPARAMETERS2GROUP 158 ) 392  #EC_F_EC_EX_DATA_SET_DATA 211 ) 393  #EC_F_EC_GF2M_MONTGOMERY_POINT_MULTIPLY 208 ) 394  #EC_F_EC_GF2M_SIMPLE_GROUP_CHECK_DISCRIMINANT 159 ) 395  #EC_F_EC_GF2M_SIMPLE_GROUP_SET_CURVE 195 ) 396  #EC_F_EC_GF2M_SIMPLE_OCT2POINT 160 ) 397  #EC_F_EC_GF2M_SIMPLE_POINT2OCT 161 ) 398  #EC_F_EC_GF2M_SIMPLE_POINT_GET_AFFINE_COORDINATES 162 ) 399  #EC_F_EC_GF2M_SIMPLE_POINT_SET_AFFINE_COORDINATES 163 ) 400  #EC_F_EC_GF2M_SIMPLE_SET_COMPRESSED_COORDINATES 164 ) 401  #EC_F_EC_GFP_MONT_FIELD_DECODE 133 ) 402  #EC_F_EC_GFP_MONT_FIELD_ENCODE 134 ) 403  #EC_F_EC_GFP_MONT_FIELD_MUL 131 ) 404  #EC_F_EC_GFP_MONT_FIELD_SET_TO_ONE 209 ) 405  #EC_F_EC_GFP_MONT_FIELD_SQR 132 ) 406  #EC_F_EC_GFP_MONT_GROUP_SET_CURVE 189 ) 407  #EC_F_EC_GFP_MONT_GROUP_SET_CURVE_GFP 135 ) 408  #EC_F_EC_GFP_NIST_FIELD_MUL 200 ) 409  #EC_F_EC_GFP_NIST_FIELD_SQR 201 ) 410  #EC_F_EC_GFP_NIST_GROUP_SET_CURVE 202 ) 411  #EC_F_EC_GFP_SIMPLE_GROUP_CHECK_DISCRIMINANT 165 ) 412  #EC_F_EC_GFP_SIMPLE_GROUP_SET_CURVE 166 ) 413  #EC_F_EC_GFP_SIMPLE_GROUP_SET_CURVE_GFP 100 ) 414  #EC_F_EC_GFP_SIMPLE_GROUP_SET_GENERATOR 101 ) 415  #EC_F_EC_GFP_SIMPLE_MAKE_AFFINE 102 ) 416  #EC_F_EC_GFP_SIMPLE_OCT2POINT 103 ) 417  #EC_F_EC_GFP_SIMPLE_POINT2OCT 104 ) 418  #EC_F_EC_GFP_SIMPLE_POINTS_MAKE_AFFINE 137 ) 419  #EC_F_EC_GFP_SIMPLE_POINT_GET_AFFINE_COORDINATES 167 ) 420  #EC_F_EC_GFP_SIMPLE_POINT_GET_AFFINE_COORDINATES_GFP 105 ) 421  #EC_F_EC_GFP_SIMPLE_POINT_SET_AFFINE_COORDINATES 168 ) 422  #EC_F_EC_GFP_SIMPLE_POINT_SET_AFFINE_COORDINATES_GFP 128 ) 423  #EC_F_EC_GFP_SIMPLE_SET_COMPRESSED_COORDINATES 169 ) 424  #EC_F_EC_GFP_SIMPLE_SET_COMPRESSED_COORDINATES_GFP 129 ) 425  #EC_F_EC_GROUP_CHECK 170 ) 426  #EC_F_EC_GROUP_CHECK_DISCRIMINANT 171 ) 427  #EC_F_EC_GROUP_COPY 106 ) 428  #EC_F_EC_GROUP_GET0_GENERATOR 139 ) 429  #EC_F_EC_GROUP_GET_COFACTOR 140 ) 430  #EC_F_EC_GROUP_GET_CURVE_GF2M 172 ) 431  #EC_F_EC_GROUP_GET_CURVE_GFP 130 ) 432  #EC_F_EC_GROUP_GET_DEGREE 173 ) 433  #EC_F_EC_GROUP_GET_ORDER 141 ) 434  #EC_F_EC_GROUP_GET_PENTANOMIAL_BASIS 193 ) 435  #EC_F_EC_GROUP_GET_TRINOMIAL_BASIS 194 ) 436  #EC_F_EC_GROUP_NEW 108 ) 437  #EC_F_EC_GROUP_NEW_BY_CURVE_NAME 174 ) 438  #EC_F_EC_GROUP_NEW_FROM_DATA 175 ) 439  #EC_F_EC_GROUP_PRECOMPUTE_MULT 142 ) 440  #EC_F_EC_GROUP_SET_CURVE_GF2M 176 ) 441  #EC_F_EC_GROUP_SET_CURVE_GFP 109 ) 442  #EC_F_EC_GROUP_SET_EXTRA_DATA 110 ) 443  #EC_F_EC_GROUP_SET_GENERATOR 111 ) 444  #EC_F_EC_KEY_CHECK_KEY 177 ) 445  #EC_F_EC_KEY_COPY 178 ) 446  #EC_F_EC_KEY_GENERATE_KEY 179 ) 447  #EC_F_EC_KEY_NEW 182 ) 448  #EC_F_EC_KEY_PRINT 180 ) 449  #EC_F_EC_KEY_PRINT_FP 181 ) 450  #EC_F_EC_POINTS_MAKE_AFFINE 136 ) 451  #EC_F_EC_POINTS_MUL 138 ) 452  #EC_F_EC_POINT_ADD 112 ) 453  #EC_F_EC_POINT_CMP 113 ) 454  #EC_F_EC_POINT_COPY 114 ) 455  #EC_F_EC_POINT_DBL 115 ) 456  #EC_F_EC_POINT_GET_AFFINE_COORDINATES_GF2M 183 ) 457  #EC_F_EC_POINT_GET_AFFINE_COORDINATES_GFP 116 ) 458  #EC_F_EC_POINT_GET_JPROJECTIVE_COORDINATES_GFP 117 ) 459  #EC_F_EC_POINT_INVERT 210 ) 460  #EC_F_EC_POINT_IS_AT_INFINITY 118 ) 461  #EC_F_EC_POINT_IS_ON_CURVE 119 ) 462  #EC_F_EC_POINT_MAKE_AFFINE 120 ) 463  #EC_F_EC_POINT_MUL 184 ) 464  #EC_F_EC_POINT_NEW 121 ) 465  #EC_F_EC_POINT_OCT2POINT 122 ) 466  #EC_F_EC_POINT_POINT2OCT 123 ) 467  #EC_F_EC_POINT_SET_AFFINE_COORDINATES_GF2M 185 ) 468  #EC_F_EC_POINT_SET_AFFINE_COORDINATES_GFP 124 ) 469  #EC_F_EC_POINT_SET_COMPRESSED_COORDINATES_GF2M 186 ) 470  #EC_F_EC_POINT_SET_COMPRESSED_COORDINATES_GFP 125 ) 471  #EC_F_EC_POINT_SET_JPROJECTIVE_COORDINATES_GFP 126 ) 472  #EC_F_EC_POINT_SET_TO_INFINITY 127 ) 473  #EC_F_EC_PRE_COMP_DUP 207 ) 474  #EC_F_EC_PRE_COMP_NEW 196 ) 475  #EC_F_EC_WNAF_MUL 187 ) 476  #EC_F_EC_WNAF_PRECOMPUTE_MULT 188 ) 477  #EC_F_I2D_ECPARAMETERS 190 ) 478  #EC_F_I2D_ECPKPARAMETERS 191 ) 479  #EC_F_I2D_ECPRIVATEKEY 192 ) 480  #EC_F_I2O_ECPUBLICKEY 151 ) 481  #EC_F_O2I_ECPUBLICKEY 152 ) 484  #EC_R_ASN1_ERROR 115 ) 485  #EC_R_ASN1_UNKNOWN_FIELD 116 ) 486  #EC_R_BUFFER_TOO_SMALL 100 ) 487  #EC_R_D2I_ECPKPARAMETERS_FAILURE 117 ) 488  #EC_R_DISCRIMINANT_IS_ZERO 118 ) 489  #EC_R_EC_GROUP_NEW_BY_NAME_FAILURE 119 ) 490  #EC_R_FIELD_TOO_LARGE 138 ) 491  #EC_R_GROUP2PKPARAMETERS_FAILURE 120 ) 492  #EC_R_I2D_ECPKPARAMETERS_FAILURE 121 ) 493  #EC_R_INCOMPATIBLE_OBJECTS 101 ) 494  #EC_R_INVALID_ARGUMENT 112 ) 495  #EC_R_INVALID_COMPRESSED_POINT 110 ) 496  #EC_R_INVALID_COMPRESSION_BIT 109 ) 497  #EC_R_INVALID_ENCODING 102 ) 498  #EC_R_INVALID_FIELD 103 ) 499  #EC_R_INVALID_FORM 104 ) 500  #EC_R_INVALID_GROUP_ORDER 122 ) 501  #EC_R_INVALID_PENTANOMIAL_BASIS 132 ) 502  #EC_R_INVALID_PRIVATE_KEY 123 ) 503  #EC_R_INVALID_TRINOMIAL_BASIS 137 ) 504  #EC_R_MISSING_PARAMETERS 124 ) 505  #EC_R_MISSING_PRIVATE_KEY 125 ) 506  #EC_R_NOT_A_NIST_PRIME 135 ) 507  #EC_R_NOT_A_SUPPORTED_NIST_PRIME 136 ) 508  #EC_R_NOT_IMPLEMENTED 126 ) 509  #EC_R_NOT_INITIALIZED 111 ) 510  #EC_R_NO_FIELD_MOD 133 ) 511  #EC_R_PASSED_NULL_PARAMETER 134 ) 512  #EC_R_PKPARAMETERS2GROUP_FAILURE 127 ) 513  #EC_R_POINT_AT_INFINITY 106 ) 514  #EC_R_POINT_IS_NOT_ON_CURVE 107 ) 515  #EC_R_SLOT_FULL 108 ) 516  #EC_R_UNDEFINED_GENERATOR 113 ) 517  #EC_R_UNDEFINED_ORDER 128 ) 518  #EC_R_UNKNOWN_GROUP 129 ) 519  #EC_R_UNKNOWN_ORDER 114 ) 520  #EC_R_UNSUPPORTED_FIELD 131 ) 521  #EC_R_WRONG_ORDER 130 ) 523 #ifdeà __ýlu¥lus @/usr/include/openssl/ecdh.h 69 #iâdeà HEADER_ECDH_H 70  #HEADER_ECDH_H ) 72  ~<Ý’s¦/Ý’s¦cÚf.h > 74 #ifdeà OPENSSL_NO_ECDH 75 #”rÜ ECDH is di§bËd . 78  ~<Ý’s¦/ec.h > 79  ~<Ý’s¦/os¦_typ.h > 80 #iâdeà OPENSSL_NO_DEPRECATED 81  ~<Ý’s¦/bn.h > 84 #ifdeà __ýlu¥lus 88 cÚ¡ ECDH_METHOD * ECDH_O³nSSL (); 90  ECDH_£t_deçuÉ_m‘hod (cÚ¡ ECDH_METHOD *); 91 cÚ¡ ECDH_METHOD * ECDH_g‘_deçuÉ_m‘hod (); 92  ECDH_£t_m‘hod ( EC_KEY *, cÚ¡ ECDH_METHOD *); 94  ECDH_compu‹_key (* out , size_t ouŽ’ , cÚ¡ EC_POINT * pub_key , EC_KEY * ecdh , 95 *(* KDF )(cÚ¡ * š , size_t šËn , * out , size_ˆ* ouŽ’ )); 97  ECDH_g‘_ex_Ãw_šdex ( ¬gl , * ¬gp , CRYPTO_EX_Ãw 98 * Ãw_func , CRYPTO_EX_dup * dup_func , CRYPTO_EX_ä“ * ä“_func ); 99  ECDH_£t_ex_d©a ( EC_KEY * d ,  idx , * ¬g ); 100 * ECDH_g‘_ex_d©a ( EC_KEY * d ,  idx ); 107  ERR_lßd_ECDH_¡ršgs (); 112  #ECDH_F_ECDH_COMPUTE_KEY 100 ) 113  #ECDH_F_ECDH_DATA_NEW_METHOD 101 ) 116  #ECDH_R_KDF_FAILED 102 ) 117  #ECDH_R_NO_PRIVATE_VALUE 100 ) 118  #ECDH_R_POINT_ARITHMETIC_FAILURE 101 ) 120 #ifdeà __ýlu¥lus @/usr/include/openssl/ecdsa.h 59 #iâdeà HEADER_ECDSA_H 60  #HEADER_ECDSA_H ) 62  ~<Ý’s¦/Ý’s¦cÚf.h > 64 #ifdeà OPENSSL_NO_ECDSA 65 #”rÜ ECDSA is di§bËd . 68  ~<Ý’s¦/ec.h > 69  ~<Ý’s¦/os¦_typ.h > 70 #iâdeà OPENSSL_NO_DEPRECATED 71  ~<Ý’s¦/bn.h > 74 #ifdeà __ýlu¥lus 78  sECDSA_SIG_¡ 80 BIGNUM * r ; 81 BIGNUM * s ; 82 } tECDSA_SIG ; 88 ECDSA_SIG * ECDSA_SIG_Ãw (); 94  ECDSA_SIG_ä“ ( ECDSA_SIG * a ); 103  i2d_ECDSA_SIG (cÚ¡ ECDSA_SIG * a , ** µ ); 113 ECDSA_SIG * d2i_ECDSA_SIG (ECDSA_SIG ** v , cÚ¡ ** µ ,  Ën ); 123 ECDSA_SIG * ECDSA_do_sign (cÚ¡ * dg¡ , dg¡_Ën , EC_KEY * eckey ); 136 ECDSA_SIG * ECDSA_do_sign_ex (cÚ¡ * dg¡ ,  dg¡Ën , 137 cÚ¡ BIGNUM * kšv , cÚ¡ BIGNUM * ½ , EC_KEY * eckey ); 148  ECDSA_do_v”ify (cÚ¡ * dg¡ ,  dg¡_Ën , 149 cÚ¡ ECDSA_SIG * sig , EC_KEY * eckey ); 151 cÚ¡ ECDSA_METHOD * ECDSA_O³nSSL (); 157  ECDSA_£t_deçuÉ_m‘hod (cÚ¡ ECDSA_METHOD * m‘h ); 163 cÚ¡ ECDSA_METHOD * ECDSA_g‘_deçuÉ_m‘hod (); 171  ECDSA_£t_m‘hod ( EC_KEY * eckey , cÚ¡ ECDSA_METHOD * m‘h ); 178  ECDSA_size (cÚ¡ EC_KEY * eckey ); 188  ECDSA_sign_£tup ( EC_KEY * eckey , BN_CTX * ùx , BIGNUM ** kšv , 189 BIGNUM ** ½ ); 202  ECDSA_sign ( ty³ , cÚ¡ * dg¡ ,  dg¡Ën , 203 * sig , * sigËn , EC_KEY * eckey ); 220  ECDSA_sign_ex ( ty³ , cÚ¡ * dg¡ ,  dg¡Ën , 221 * sig , * sigËn , cÚ¡ BIGNUM * kšv , 222 cÚ¡ BIGNUM * ½ , EC_KEY * eckey ); 235  ECDSA_v”ify ( ty³ , cÚ¡ * dg¡ ,  dg¡Ën , 236 cÚ¡ * sig ,  sigËn , EC_KEY * eckey ); 239  ECDSA_g‘_ex_Ãw_šdex ( ¬gl , * ¬gp , CRYPTO_EX_Ãw 240 * Ãw_func , CRYPTO_EX_dup * dup_func , CRYPTO_EX_ä“ * ä“_func ); 241  ECDSA_£t_ex_d©a ( EC_KEY * d ,  idx , * ¬g ); 242 * ECDSA_g‘_ex_d©a ( EC_KEY * d ,  idx ); 249  ERR_lßd_ECDSA_¡ršgs (); 254  #ECDSA_F_ECDSA_DATA_NEW_METHOD 100 ) 255  #ECDSA_F_ECDSA_DO_SIGN 101 ) 256  #ECDSA_F_ECDSA_DO_VERIFY 102 ) 257  #ECDSA_F_ECDSA_SIGN_SETUP 103 ) 260  #ECDSA_R_BAD_SIGNATURE 100 ) 261  #ECDSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE 101 ) 262  #ECDSA_R_ERR_EC_LIB 102 ) 263  #ECDSA_R_MISSING_PARAMETERS 103 ) 264  #ECDSA_R_NEED_NEW_SETUP_VALUES 106 ) 265  #ECDSA_R_RANDOM_NUMBER_GENERATION_FAILED 104 ) 266  #ECDSA_R_SIGNATURE_MALLOC_FAILED 105 ) 268 #ifdeà __ýlu¥lus @/usr/include/openssl/evp.h 59 #iâdeà HEADER_ENVELOPE_H 60  #HEADER_ENVELOPE_H ) 62 #ifdeà OPENSSL_ALGORITHM_DEFINES 63  ~<Ý’s¦/Ý’s¦cÚf.h > 65  #OPENSSL_ALGORITHM_DEFINES ) 66  ~<Ý’s¦/Ý’s¦cÚf.h > 67 #undeà OPENSSL_ALGORITHM_DEFINES 70  ~<Ý’s¦/os¦_typ.h > 72  ~<Ý’s¦/symhacks.h > 74 #iâdeà OPENSSL_NO_BIO 75  ~<Ý’s¦/bio.h > 85  #EVP_MAX_MD_SIZE 64 ) 86  #EVP_MAX_KEY_LENGTH 32 ) 87  #EVP_MAX_IV_LENGTH 16 ) 88  #EVP_MAX_BLOCK_LENGTH 32 ) 90  #PKCS5_SALT_LEN 8 ) 92  #PKCS5_DEFAULT_ITER 2048 ) 94  ~<Ý’s¦/objeùs.h > 96  #EVP_PK_RSA 0x0001 ) 97  #EVP_PK_DSA 0x0002 ) 98  #EVP_PK_DH 0x0004 ) 99  #EVP_PK_EC 0x0008 ) 100  #EVP_PKT_SIGN 0x0010 ) 101  #EVP_PKT_ENC 0x0020 ) 102  #EVP_PKT_EXCH 0x0040 ) 103  #EVP_PKS_RSA 0x0100 ) 104  #EVP_PKS_DSA 0x0200 ) 105  #EVP_PKS_EC 0x0400 ) 106  #EVP_PKT_EXP 0x1000 ) 108  #EVP_PKEY_NONE NID_undef ) 109  #EVP_PKEY_RSA NID_r§Enüy±iÚ ) 110  #EVP_PKEY_RSA2 NID_r§ ) 111  #EVP_PKEY_DSA NID_d§ ) 112  #EVP_PKEY_DSA1 NID_d§_2 ) 113  #EVP_PKEY_DSA2 NID_d§W™hSHA ) 114  #EVP_PKEY_DSA3 NID_d§W™hSHA1 ) 115  #EVP_PKEY_DSA4 NID_d§W™hSHA1_2 ) 116  #EVP_PKEY_DH NID_dhKeyAg»em’t ) 117  #EVP_PKEY_EC NID_X9_62_id_ecPublicKey ) 119 #ifdef __ýlu¥lus 126  sevp_pkey_¡ 128  ty³ ; 129  §ve_ty³ ; 130  »ã»nûs ; 132 * ±r ; 133 #iâdeà OPENSSL_NO_RSA 134  r§_¡ * r§ ; 136 #iâdeà OPENSSL_NO_DSA 137  d§_¡ * d§ ; 139 #iâdeà OPENSSL_NO_DH 140  dh_¡ * dh ; 142 #iâdeà OPENSSL_NO_EC 143  ec_key_¡ * ec ; 145 } pkey ; 146  §ve_·¿m‘”s ; 147 STACK_OF ( X509_ATTRIBUTE è* ©Œibu‹s ; 150  #EVP_PKEY_MO_SIGN 0x0001 ) 151  #EVP_PKEY_MO_VERIFY 0x0002 ) 152  #EVP_PKEY_MO_ENCRYPT 0x0004 ) 153  #EVP_PKEY_MO_DECRYPT 0x0008 ) 166  sevp_pkey_md_¡ 168  oid ; 169 EVP_MD * md ; 170 EVP_PKEY_METHOD * pkey ; 171 } tEVP_PKEY_MD ; 173  #EVP_r§_md2 () \ 174 `EVP_PKEY_MD_add ( NID_md2W™hRSAEnüy±iÚ ,\ 175 `EVP_r§_pkcs1 (), `EVP_md2 ()) ) 176  #EVP_r§_md5 () \ 177 `EVP_PKEY_MD_add ( NID_md5W™hRSAEnüy±iÚ ,\ 178 `EVP_r§_pkcs1 (), `EVP_md5 ()) ) 179  #EVP_r§_sha0 () \ 180 `EVP_PKEY_MD_add ( NID_shaW™hRSAEnüy±iÚ ,\ 181 `EVP_r§_pkcs1 (), `EVP_sha ()) ) 182  #EVP_r§_sha1 () \ 183 `EVP_PKEY_MD_add ( NID_sha1W™hRSAEnüy±iÚ ,\ 184 `EVP_r§_pkcs1 (), `EVP_sha1 ()) ) 185  #EVP_r§_remd160 () \ 186 `EVP_PKEY_MD_add ( NID_remd160W™hRSA ,\ 187 `EVP_r§_pkcs1 (), `EVP_remd160 ()) ) 188  #EVP_r§_mdc2 () \ 189 `EVP_PKEY_MD_add ( NID_mdc2W™hRSA ,\ 190 `EVP_r§_où‘_¡ršg (), `EVP_mdc2 ()) ) 191  #EVP_d§_sha () \ 192 `EVP_PKEY_MD_add ( NID_d§W™hSHA ,\ 193 `EVP_d§ (), `EVP_sha ()) ) 194  #EVP_d§_sha1 () \ 195 `EVP_PKEY_MD_add ( NID_d§W™hSHA1 ,\ 196 `EVP_d§ (), `EVP_sha1 ()) ) 198  sevp_pkey_m‘hod_¡ 200 * Çme ; 201  æags ; 202  ty³ ; 203  oid ; 204  ’üy±_oid ; 206 (* sign )(); 207 (* v”ify )(); 209 (* £t )(); 210 (* g‘ )(); 211 (* ’üy± )(); 212 (* deüy± )(); 213 (* i2d )(); 214 (* d2i )(); 215 (* dup )(); 216 } pub , ´iv ; 217 (* £t_a¢1_·¿m‘”s )(); 218 (* g‘_a¢1_·¿m‘”s )(); 219 } tEVP_PKEY_METHOD ; 222 #iâdeà EVP_MD 223  s’v_md_¡ 225  ty³ ; 226  pkey_ty³ ; 227  md_size ; 228  æags ; 229 (* š™ )( EVP_MD_CTX * ùx ); 230 (* upd©e )( EVP_MD_CTX * ùx ,cÚ¡ * d©a , size_t couÁ ); 231 (* fš® )( EVP_MD_CTX * ùx ,* md ); 232 (* cÝy )( EVP_MD_CTX * to ,cÚ¡ EVP_MD_CTX * äom ); 233 (* þ—nup )( EVP_MD_CTX * ùx ); 236 (* sign )( ty³ , cÚ¡ * m ,  m_Ëngth , 237 * sig»t , * sigËn , * key ); 238 (* v”ify )( ty³ , cÚ¡ * m ,  m_Ëngth , 239 cÚ¡ * sigbuf ,  sigËn , 240 * key ); 241  »quœed_pkey_ty³ [5]; 242  block_size ; 243  ùx_size ; 246  tevp_sign_m‘hod ( tty³ ,cÚ¡ * tm , 247  tm_Ëngth ,* tsig»t , 248 * tsigËn , * tkey ); 249  tevp_v”ify_m‘hod ( tty³ ,cÚ¡ * tm , 250  tm_Ëngth ,cÚ¡ * tsigbuf , 251  tsigËn , * tkey ); 253  #EVP_MD_FLAG_ONESHOT 0x0001 ) 256  #EVP_PKEY_NULL_m‘hod NULL ,NULL,{0,0,0,0} ) 258 #iâdeà OPENSSL_NO_DSA 259  #EVP_PKEY_DSA_m‘hod ( evp_sign_m‘hod *) DSA_sign , \ 260 ( evp_v”ify_m‘hod *) DSA_v”ify , \ 261 { EVP_PKEY_DSA , EVP_PKEY_DSA2 , EVP_PKEY_DSA3 , \ 262 EVP_PKEY_DSA4 ,0} ) 264  #EVP_PKEY_DSA_m‘hod EVP_PKEY_NULL_m‘hod ) 267 #iâdeà OPENSSL_NO_ECDSA 268  #EVP_PKEY_ECDSA_m‘hod ( evp_sign_m‘hod *) ECDSA_sign , \ 269 ( evp_v”ify_m‘hod *) ECDSA_v”ify , \ 270 { EVP_PKEY_EC ,0,0,0} ) 272  #EVP_PKEY_ECDSA_m‘hod EVP_PKEY_NULL_m‘hod ) 275 #iâdeà OPENSSL_NO_RSA 276  #EVP_PKEY_RSA_m‘hod ( evp_sign_m‘hod *) RSA_sign , \ 277 ( evp_v”ify_m‘hod *) RSA_v”ify , \ 278 { EVP_PKEY_RSA , EVP_PKEY_RSA2 ,0,0} ) 279  #EVP_PKEY_RSA_ASN1_OCTET_STRING_m‘hod \ 280 ( evp_sign_m‘hod *) RSA_sign_ASN1_OCTET_STRING , \ 281 ( evp_v”ify_m‘hod *) RSA_v”ify_ASN1_OCTET_STRING , \ 282 { EVP_PKEY_RSA , EVP_PKEY_RSA2 ,0,0} ) 284  #EVP_PKEY_RSA_m‘hod EVP_PKEY_NULL_m‘hod ) 285  #EVP_PKEY_RSA_ASN1_OCTET_STRING_m‘hod EVP_PKEY_NULL_m‘hod ) 290  s’v_md_ùx_¡ 292 cÚ¡ EVP_MD * dige¡ ; 293 ENGINE * ’gše ; 294  æags ; 295 * md_d©a ; 300  #EVP_MD_CTX_FLAG_ONESHOT 0x0001 ) 302  #EVP_MD_CTX_FLAG_CLEANED 0x0002 ) 304  #EVP_MD_CTX_FLAG_REUSE 0x0004 ) 307  sevp_ch”_¡ 309  nid ; 310  block_size ; 311  key_Ën ; 312  iv_Ën ; 313  æags ; 314 (* š™ )( EVP_CIPHER_CTX * ùx , cÚ¡ * key , 315 cÚ¡ * iv ,  ’c ); 316 (* do_ch” )( EVP_CIPHER_CTX * ùx , * out , 317 cÚ¡ * š ,  šl ); 318 (* þ—nup )( EVP_CIPHER_CTX *); 319  ùx_size ; 320 (* £t_a¢1_·¿m‘”s )( EVP_CIPHER_CTX *, ASN1_TYPE *); 321 (* g‘_a¢1_·¿m‘”s )( EVP_CIPHER_CTX *, ASN1_TYPE *); 322 (* ù¾ )( EVP_CIPHER_CTX *,  ty³ ,  ¬g , * ±r ); 323 * ­p_d©a ; 330  #EVP_CIPH_STREAM_CIPHER 0x0 ) 331  #EVP_CIPH_ECB_MODE 0x1 ) 332  #EVP_CIPH_CBC_MODE 0x2 ) 333  #EVP_CIPH_CFB_MODE 0x3 ) 334  #EVP_CIPH_OFB_MODE 0x4 ) 335  #EVP_CIPH_MODE 0x7 ) 337  #EVP_CIPH_VARIABLE_LENGTH 0x8 ) 339  #EVP_CIPH_CUSTOM_IV 0x10 ) 341  #EVP_CIPH_ALWAYS_CALL_INIT 0x20 ) 343  #EVP_CIPH_CTRL_INIT 0x40 ) 345  #EVP_CIPH_CUSTOM_KEY_LENGTH 0x80 ) 347  #EVP_CIPH_NO_PADDING 0x100 ) 349  #EVP_CIPH_RAND_KEY 0x200 ) 353  #EVP_CTRL_INIT 0x0 ) 354  #EVP_CTRL_SET_KEY_LENGTH 0x1 ) 355  #EVP_CTRL_GET_RC2_KEY_BITS 0x2 ) 356  #EVP_CTRL_SET_RC2_KEY_BITS 0x3 ) 357  #EVP_CTRL_GET_RC5_ROUNDS 0x4 ) 358  #EVP_CTRL_SET_RC5_ROUNDS 0x5 ) 359  #EVP_CTRL_RAND_KEY 0x6 ) 361  sevp_ch”_šfo_¡ 363 cÚ¡ EVP_CIPHER * ch” ; 364  iv [ EVP_MAX_IV_LENGTH ]; 365 } tEVP_CIPHER_INFO ; 367  sevp_ch”_ùx_¡ 369 cÚ¡ EVP_CIPHER * ch” ; 370 ENGINE * ’gše ; 371  ’üy± ; 372  buf_Ën ; 374  oiv [ EVP_MAX_IV_LENGTH ]; 375  iv [ EVP_MAX_IV_LENGTH ]; 376  buf [ EVP_MAX_BLOCK_LENGTH ]; 377  num ; 379 * ­p_d©a ; 380  key_Ën ; 381  æags ; 382 * ch”_d©a ; 383  fš®_u£d ; 384  block_mask ; 385  fš® [ EVP_MAX_BLOCK_LENGTH ]; 388  sevp_Encode_Ctx_¡ 390  num ; 391  Ëngth ; 396  ’c_d©a [80]; 397  lše_num ; 398  ex³ù_Æ ; 399 } tEVP_ENCODE_CTX ; 402 ( EVP_PBE_KEYGEN )( tEVP_CIPHER_CTX * tùx , cÚ¡ * t·ss ,  t·s¦’ , 403 tASN1_TYPE * t·¿m , cÚ¡ tEVP_CIPHER * tch” , 404 cÚ¡ tEVP_MD * tmd ,  t’_de ); 406 #iâdeà OPENSSL_NO_RSA 407  #EVP_PKEY_assign_RSA ( pkey , r§ è `EVP_PKEY_assign (Õkey), EVP_PKEY_RSA ,\ 408 (*)( r§ )) ) 411 #iâdeà OPENSSL_NO_DSA 412  #EVP_PKEY_assign_DSA ( pkey , d§ è `EVP_PKEY_assign (Õkey), EVP_PKEY_DSA ,\ 413 (*)( d§ )) ) 416 #iâdeà OPENSSL_NO_DH 417  #EVP_PKEY_assign_DH ( pkey , dh è `EVP_PKEY_assign (Õkey), EVP_PKEY_DH ,\ 418 (*)( dh )) ) 421 #iâdeà OPENSSL_NO_EC 422  #EVP_PKEY_assign_EC_KEY ( pkey , eckey è `EVP_PKEY_assign (Õkey), EVP_PKEY_EC ,\ 423 (*)( eckey )) ) 427  #EVP_g‘_dige¡bynid ( a è `EVP_g‘_dige¡byÇme ( `OBJ_nid2¢ ×)) ) 428  #EVP_g‘_dige¡byobj ( a è `EVP_g‘_dige¡bynid ( `OBJ_obj2nid ×)) ) 429  #EVP_g‘_ch”bynid ( a è `EVP_g‘_ch”byÇme ( `OBJ_nid2¢ ×)) ) 430  #EVP_g‘_ch”byobj ( a è `EVP_g‘_ch”bynid ( `OBJ_obj2nid ×)) ) 432  EVP_MD_ty³ (cÚ¡ EVP_MD * md ); 433  #EVP_MD_nid ( e è `EVP_MD_ty³ Ó) ) 434  #EVP_MD_Çme ( e è `OBJ_nid2¢ ( `EVP_MD_nid Ó)) ) 435  EVP_MD_pkey_ty³ (cÚ¡ EVP_MD * md ); 436  EVP_MD_size (cÚ¡ EVP_MD * md ); 437  EVP_MD_block_size (cÚ¡ EVP_MD * md ); 439 cÚ¡ EVP_MD * EVP_MD_CTX_md (cÚ¡ EVP_MD_CTX * ùx ); 440  #EVP_MD_CTX_size ( e è `EVP_MD_size ( `EVP_MD_CTX_md Ó)) ) 441  #EVP_MD_CTX_block_size ( e è `EVP_MD_block_size ( `EVP_MD_CTX_md Ó)) ) 442  #EVP_MD_CTX_ty³ ( e è `EVP_MD_ty³ ( `EVP_MD_CTX_md Ó)) ) 444  EVP_CIPHER_nid (cÚ¡ EVP_CIPHER * ch” ); 445  #EVP_CIPHER_Çme ( e è `OBJ_nid2¢ ( `EVP_CIPHER_nid Ó)) ) 446  EVP_CIPHER_block_size (cÚ¡ EVP_CIPHER * ch” ); 447  EVP_CIPHER_key_Ëngth (cÚ¡ EVP_CIPHER * ch” ); 448  EVP_CIPHER_iv_Ëngth (cÚ¡ EVP_CIPHER * ch” ); 449  EVP_CIPHER_æags (cÚ¡ EVP_CIPHER * ch” ); 450  #EVP_CIPHER_mode ( e è( `EVP_CIPHER_æags Óè& EVP_CIPH_MODE ) ) 452 cÚ¡ EVP_CIPHER * EVP_CIPHER_CTX_ch” (cÚ¡ EVP_CIPHER_CTX * ùx ); 453  EVP_CIPHER_CTX_nid (cÚ¡ EVP_CIPHER_CTX * ùx ); 454  EVP_CIPHER_CTX_block_size (cÚ¡ EVP_CIPHER_CTX * ùx ); 455  EVP_CIPHER_CTX_key_Ëngth (cÚ¡ EVP_CIPHER_CTX * ùx ); 456  EVP_CIPHER_CTX_iv_Ëngth (cÚ¡ EVP_CIPHER_CTX * ùx ); 457 * EVP_CIPHER_CTX_g‘_­p_d©a (cÚ¡ EVP_CIPHER_CTX * ùx ); 458  EVP_CIPHER_CTX_£t_­p_d©a ( EVP_CIPHER_CTX * ùx , * d©a ); 459  #EVP_CIPHER_CTX_ty³ ( c è `EVP_CIPHER_ty³ ( `EVP_CIPHER_CTX_ch” (c)) ) 460  EVP_CIPHER_CTX_æags (cÚ¡ EVP_CIPHER_CTX * ùx ); 461  #EVP_CIPHER_CTX_mode ( e è( `EVP_CIPHER_CTX_æags Óè& EVP_CIPH_MODE ) ) 463  #EVP_ENCODE_LENGTH ( l è((Ö+2)/3*4)+Ö/48+1)*2+80) ) 464  #EVP_DECODE_LENGTH ( l è(Ö+3)/4*3+80) ) 466  #EVP_SignIn™_ex ( a , b , c è `EVP_Dige¡In™_ex ×,b,c) ) 467  #EVP_SignIn™ ( a , b è `EVP_Dige¡In™ ×,b) ) 468  #EVP_SignUpd©e ( a , b , c è `EVP_Dige¡Upd©e ×,b,c) ) 469  #EVP_V”ifyIn™_ex ( a , b , c è `EVP_Dige¡In™_ex ×,b,c) ) 470  #EVP_V”ifyIn™ ( a , b è `EVP_Dige¡In™ ×,b) ) 471  #EVP_V”ifyUpd©e ( a , b , c è `EVP_Dige¡Upd©e ×,b,c) ) 472  #EVP_O³nUpd©e ( a , b , c , d , e è `EVP_Deüy±Upd©e ×,b,c,d,e) ) 473  #EVP_S—lUpd©e ( a , b , c , d , e è `EVP_Enüy±Upd©e ×,b,c,d,e) ) 475 #ifdeà CONST_STRICT 476  BIO_£t_md ( BIO *,cÚ¡ EVP_MD * md ); 478  #BIO_£t_md ( b , md è `BIO_ù¾ (b, BIO_C_SET_MD ,0,(*)md) ) 480  #BIO_g‘_md ( b , mdp è `BIO_ù¾ (b, BIO_C_GET_MD ,0,(*)mdp) ) 481  #BIO_g‘_md_ùx ( b , mdý è `BIO_ù¾ (b, BIO_C_GET_MD_CTX ,0,(*)mdý) ) 482  #BIO_£t_md_ùx ( b , mdý è `BIO_ù¾ (b, BIO_C_SET_MD_CTX ,0,(*)mdý) ) 483  #BIO_g‘_ch”_¡©us ( b è `BIO_ù¾ (b, BIO_C_GET_CIPHER_STATUS ,0, NULL ) ) 484  #BIO_g‘_ch”_ùx ( b , c_µ è `BIO_ù¾ (b, BIO_C_GET_CIPHER_CTX ,0,(*)c_µ) ) 486  EVP_Ch” ( EVP_CIPHER_CTX * c , 487 * out , 488 cÚ¡ * š , 489  šl ); 491  #EVP_add_ch”_®Ÿs ( n , ®Ÿs ) \ 492 `OBJ_NAME_add (( ®Ÿs ), OBJ_NAME_TYPE_CIPHER_METH | OBJ_NAME_ALIAS ,( n )) ) 493  #EVP_add_dige¡_®Ÿs ( n , ®Ÿs ) \ 494 `OBJ_NAME_add (( ®Ÿs ), OBJ_NAME_TYPE_MD_METH | OBJ_NAME_ALIAS ,( n )) ) 495  #EVP_d–‘e_ch”_®Ÿs ( ®Ÿs ) \ 496 `OBJ_NAME_»move ( ®Ÿs , OBJ_NAME_TYPE_CIPHER_METH | OBJ_NAME_ALIAS ); ) 497  #EVP_d–‘e_dige¡_®Ÿs ( ®Ÿs ) \ 498 `OBJ_NAME_»move ( ®Ÿs , OBJ_NAME_TYPE_MD_METH | OBJ_NAME_ALIAS ); ) 500  EVP_MD_CTX_š™ ( EVP_MD_CTX * ùx ); 501  EVP_MD_CTX_þ—nup ( EVP_MD_CTX * ùx ); 502 EVP_MD_CTX * EVP_MD_CTX_ü—‹ (); 503  EVP_MD_CTX_de¡roy ( EVP_MD_CTX * ùx ); 504  EVP_MD_CTX_cÝy_ex ( EVP_MD_CTX * out ,cÚ¡ EVP_MD_CTX * š ); 505  EVP_MD_CTX_£t_æags ( EVP_MD_CTX * ùx ,  æags ); 506  EVP_MD_CTX_þ—r_æags ( EVP_MD_CTX * ùx ,  æags ); 507  EVP_MD_CTX_‹¡_æags (cÚ¡ EVP_MD_CTX * ùx , æags ); 508  EVP_Dige¡In™_ex ( EVP_MD_CTX * ùx , cÚ¡ EVP_MD * ty³ , ENGINE * im¶ ); 509  EVP_Dige¡Upd©e ( EVP_MD_CTX * ùx ,cÚ¡ * d , 510 size_t út ); 511  EVP_Dige¡Fš®_ex ( EVP_MD_CTX * ùx ,* md ,* s ); 512  EVP_Dige¡ (cÚ¡ * d©a , size_t couÁ , 513 * md , * size , cÚ¡ EVP_MD * ty³ , ENGINE * im¶ ); 515  EVP_MD_CTX_cÝy ( EVP_MD_CTX * out ,cÚ¡ EVP_MD_CTX * š ); 516  EVP_Dige¡In™ ( EVP_MD_CTX * ùx , cÚ¡ EVP_MD * ty³ ); 517  EVP_Dige¡Fš® ( EVP_MD_CTX * ùx ,* md ,* s ); 519  EVP_»ad_pw_¡ršg (* buf , Ëngth ,cÚ¡ * ´om± , v”ify ); 520  EVP_£t_pw_´om± (cÚ¡ * ´om± ); 521 * EVP_g‘_pw_´om± (); 523  EVP_By‹sToKey (cÚ¡ EVP_CIPHER * ty³ ,cÚ¡ EVP_MD * md , 524 cÚ¡ * §É , cÚ¡ * d©a , 525  d©® ,  couÁ , * key ,* iv ); 527  EVP_Enüy±In™ ( EVP_CIPHER_CTX * ùx ,cÚ¡ EVP_CIPHER * ch” , 528 cÚ¡ * key , cÚ¡ * iv ); 529  EVP_Enüy±In™_ex ( EVP_CIPHER_CTX * ùx ,cÚ¡ EVP_CIPHER * ch” , ENGINE * im¶ , 530 cÚ¡ * key , cÚ¡ * iv ); 531  EVP_Enüy±Upd©e ( EVP_CIPHER_CTX * ùx , * out , 532 * ouŽ , cÚ¡ * š ,  šl ); 533  EVP_Enüy±Fš®_ex ( EVP_CIPHER_CTX * ùx , * out , * ouŽ ); 534  EVP_Enüy±Fš® ( EVP_CIPHER_CTX * ùx , * out , * ouŽ ); 536  EVP_Deüy±In™ ( EVP_CIPHER_CTX * ùx ,cÚ¡ EVP_CIPHER * ch” , 537 cÚ¡ * key , cÚ¡ * iv ); 538  EVP_Deüy±In™_ex ( EVP_CIPHER_CTX * ùx ,cÚ¡ EVP_CIPHER * ch” , ENGINE * im¶ , 539 cÚ¡ * key , cÚ¡ * iv ); 540  EVP_Deüy±Upd©e ( EVP_CIPHER_CTX * ùx , * out , 541 * ouŽ , cÚ¡ * š ,  šl ); 542  EVP_Deüy±Fš® ( EVP_CIPHER_CTX * ùx , * outm , * ouŽ ); 543  EVP_Deüy±Fš®_ex ( EVP_CIPHER_CTX * ùx , * outm , * ouŽ ); 545  EVP_Ch”In™ ( EVP_CIPHER_CTX * ùx ,cÚ¡ EVP_CIPHER * ch” , 546 cÚ¡ * key ,cÚ¡ * iv , 547  ’c ); 548  EVP_Ch”In™_ex ( EVP_CIPHER_CTX * ùx ,cÚ¡ EVP_CIPHER * ch” , ENGINE * im¶ , 549 cÚ¡ * key ,cÚ¡ * iv , 550  ’c ); 551  EVP_Ch”Upd©e ( EVP_CIPHER_CTX * ùx , * out , 552 * ouŽ , cÚ¡ * š ,  šl ); 553  EVP_Ch”Fš® ( EVP_CIPHER_CTX * ùx , * outm , * ouŽ ); 554  EVP_Ch”Fš®_ex ( EVP_CIPHER_CTX * ùx , * outm , * ouŽ ); 556  EVP_SignFš® ( EVP_MD_CTX * ùx ,* md ,* s , 557 EVP_PKEY * pkey ); 559  EVP_V”ifyFš® ( EVP_MD_CTX * ùx ,cÚ¡ * sigbuf , 560  sigËn , EVP_PKEY * pkey ); 562  EVP_O³nIn™ ( EVP_CIPHER_CTX * ùx ,cÚ¡ EVP_CIPHER * ty³ , 563 cÚ¡ * ek ,  ekl , cÚ¡ * iv , 564 EVP_PKEY * ´iv ); 565  EVP_O³nFš® ( EVP_CIPHER_CTX * ùx , * out , * ouŽ ); 567  EVP_S—lIn™ ( EVP_CIPHER_CTX * ùx , cÚ¡ EVP_CIPHER * ty³ , 568 ** ek , * ekl , * iv , 569 EVP_PKEY ** pubk ,  Åubk ); 570  EVP_S—lFš® ( EVP_CIPHER_CTX * ùx ,* out ,* ouŽ ); 572  EVP_EncodeIn™ ( EVP_ENCODE_CTX * ùx ); 573  EVP_EncodeUpd©e ( EVP_ENCODE_CTX * ùx ,* out ,* ouŽ , 574 cÚ¡ * š , šl ); 575  EVP_EncodeFš® ( EVP_ENCODE_CTX * ùx ,* out ,* ouŽ ); 576  EVP_EncodeBlock (* t , cÚ¡ * f ,  n ); 578  EVP_DecodeIn™ ( EVP_ENCODE_CTX * ùx ); 579  EVP_DecodeUpd©e ( EVP_ENCODE_CTX * ùx ,* out ,* ouŽ , 580 cÚ¡ * š ,  šl ); 581  EVP_DecodeFš® ( EVP_ENCODE_CTX * ùx ,  582 * out , * ouŽ ); 583  EVP_DecodeBlock (* t , cÚ¡ * f ,  n ); 585  EVP_CIPHER_CTX_š™ ( EVP_CIPHER_CTX * a ); 586  EVP_CIPHER_CTX_þ—nup ( EVP_CIPHER_CTX * a ); 587 EVP_CIPHER_CTX * EVP_CIPHER_CTX_Ãw (); 588  EVP_CIPHER_CTX_ä“ ( EVP_CIPHER_CTX * a ); 589  EVP_CIPHER_CTX_£t_key_Ëngth ( EVP_CIPHER_CTX * x ,  keyËn ); 590  EVP_CIPHER_CTX_£t_·ddšg ( EVP_CIPHER_CTX * c ,  ·d ); 591  EVP_CIPHER_CTX_ù¾ ( EVP_CIPHER_CTX * ùx ,  ty³ ,  ¬g , * ±r ); 592  EVP_CIPHER_CTX_¿nd_key ( EVP_CIPHER_CTX * ùx , * key ); 594 #iâdeà OPENSSL_NO_BIO 595 BIO_METHOD * BIO_f_md (); 596 BIO_METHOD * BIO_f_ba£64 (); 597 BIO_METHOD * BIO_f_ch” (); 598 BIO_METHOD * BIO_f_»lŸbË (); 599  BIO_£t_ch” ( BIO * b ,cÚ¡ EVP_CIPHER * c ,cÚ¡ * k , 600 cÚ¡ * i ,  ’c ); 603 cÚ¡ EVP_MD * EVP_md_nuÎ (); 604 #iâdeà OPENSSL_NO_MD2 605 cÚ¡ EVP_MD * EVP_md2 (); 607 #iâdeà OPENSSL_NO_MD4 608 cÚ¡ EVP_MD * EVP_md4 (); 610 #iâdeà OPENSSL_NO_MD5 611 cÚ¡ EVP_MD * EVP_md5 (); 613 #iâdeà OPENSSL_NO_SHA 614 cÚ¡ EVP_MD * EVP_sha (); 615 cÚ¡ EVP_MD * EVP_sha1 (); 616 cÚ¡ EVP_MD * EVP_dss (); 617 cÚ¡ EVP_MD * EVP_dss1 (); 618 cÚ¡ EVP_MD * EVP_ecd§ (); 620 #iâdeà OPENSSL_NO_SHA256 621 cÚ¡ EVP_MD * EVP_sha224 (); 622 cÚ¡ EVP_MD * EVP_sha256 (); 624 #iâdeà OPENSSL_NO_SHA512 625 cÚ¡ EVP_MD * EVP_sha384 (); 626 cÚ¡ EVP_MD * EVP_sha512 (); 628 #iâdeà OPENSSL_NO_MDC2 629 cÚ¡ EVP_MD * EVP_mdc2 (); 631 #iâdeà OPENSSL_NO_RIPEMD 632 cÚ¡ EVP_MD * EVP_remd160 (); 634 cÚ¡ EVP_CIPHER * EVP_’c_nuÎ (); 635 #iâdeà OPENSSL_NO_DES 636 cÚ¡ EVP_CIPHER * EVP_des_ecb (); 637 cÚ¡ EVP_CIPHER * EVP_des_ede (); 638 cÚ¡ EVP_CIPHER * EVP_des_ede3 (); 639 cÚ¡ EVP_CIPHER * EVP_des_ede_ecb (); 640 cÚ¡ EVP_CIPHER * EVP_des_ede3_ecb (); 641 cÚ¡ EVP_CIPHER * EVP_des_cfb64 (); 642  #EVP_des_cfb EVP_des_cfb64 ) 643 cÚ¡ EVP_CIPHER * EVP_des_cfb1 (); 644 cÚ¡ EVP_CIPHER * EVP_des_cfb8 (); 645 cÚ¡ EVP_CIPHER * EVP_des_ede_cfb64 (); 646  #EVP_des_ede_cfb EVP_des_ede_cfb64 ) 648 cÚ¡ EVP_CIPHER * EVP_des_ede_cfb1 (); 649 cÚ¡ EVP_CIPHER * EVP_des_ede_cfb8 (); 651 cÚ¡ EVP_CIPHER * EVP_des_ede3_cfb64 (); 652  #EVP_des_ede3_cfb EVP_des_ede3_cfb64 ) 653 cÚ¡ EVP_CIPHER * EVP_des_ede3_cfb1 (); 654 cÚ¡ EVP_CIPHER * EVP_des_ede3_cfb8 (); 655 cÚ¡ EVP_CIPHER * EVP_des_ofb (); 656 cÚ¡ EVP_CIPHER * EVP_des_ede_ofb (); 657 cÚ¡ EVP_CIPHER * EVP_des_ede3_ofb (); 658 cÚ¡ EVP_CIPHER * EVP_des_cbc (); 659 cÚ¡ EVP_CIPHER * EVP_des_ede_cbc (); 660 cÚ¡ EVP_CIPHER * EVP_des_ede3_cbc (); 661 cÚ¡ EVP_CIPHER * EVP_desx_cbc (); 665 #ifdeà OPENSSL_OPENBSD_DEV_CRYPTO 666 cÚ¡ EVP_CIPHER * EVP_dev_üy±o_des_ede3_cbc (); 667 cÚ¡ EVP_CIPHER * EVP_dev_üy±o_rc4 (); 668 cÚ¡ EVP_MD * EVP_dev_üy±o_md5 (); 672 #iâdeà OPENSSL_NO_RC4 673 cÚ¡ EVP_CIPHER * EVP_rc4 (); 674 cÚ¡ EVP_CIPHER * EVP_rc4_40 (); 676 #iâdeà OPENSSL_NO_IDEA 677 cÚ¡ EVP_CIPHER * EVP_id—_ecb (); 678 cÚ¡ EVP_CIPHER * EVP_id—_cfb64 (); 679  #EVP_id—_cfb EVP_id—_cfb64 ) 680 cÚ¡ EVP_CIPHER * EVP_id—_ofb (); 681 cÚ¡ EVP_CIPHER * EVP_id—_cbc (); 683 #iâdeà OPENSSL_NO_RC2 684 cÚ¡ EVP_CIPHER * EVP_rc2_ecb (); 685 cÚ¡ EVP_CIPHER * EVP_rc2_cbc (); 686 cÚ¡ EVP_CIPHER * EVP_rc2_40_cbc (); 687 cÚ¡ EVP_CIPHER * EVP_rc2_64_cbc (); 688 cÚ¡ EVP_CIPHER * EVP_rc2_cfb64 (); 689  #EVP_rc2_cfb EVP_rc2_cfb64 ) 690 cÚ¡ EVP_CIPHER * EVP_rc2_ofb (); 692 #iâdeà OPENSSL_NO_BF 693 cÚ¡ EVP_CIPHER * EVP_bf_ecb (); 694 cÚ¡ EVP_CIPHER * EVP_bf_cbc (); 695 cÚ¡ EVP_CIPHER * EVP_bf_cfb64 (); 696  #EVP_bf_cfb EVP_bf_cfb64 ) 697 cÚ¡ EVP_CIPHER * EVP_bf_ofb (); 699 #iâdeà OPENSSL_NO_CAST 700 cÚ¡ EVP_CIPHER * EVP_ÿ¡5_ecb (); 701 cÚ¡ EVP_CIPHER * EVP_ÿ¡5_cbc (); 702 cÚ¡ EVP_CIPHER * EVP_ÿ¡5_cfb64 (); 703  #EVP_ÿ¡5_cfb EVP_ÿ¡5_cfb64 ) 704 cÚ¡ EVP_CIPHER * EVP_ÿ¡5_ofb (); 706 #iâdeà OPENSSL_NO_RC5 707 cÚ¡ EVP_CIPHER * EVP_rc5_32_12_16_cbc (); 708 cÚ¡ EVP_CIPHER * EVP_rc5_32_12_16_ecb (); 709 cÚ¡ EVP_CIPHER * EVP_rc5_32_12_16_cfb64 (); 710  #EVP_rc5_32_12_16_cfb EVP_rc5_32_12_16_cfb64 ) 711 cÚ¡ EVP_CIPHER * EVP_rc5_32_12_16_ofb (); 713 #iâdeà OPENSSL_NO_AES 714 cÚ¡ EVP_CIPHER * EVP_«s_128_ecb (); 715 cÚ¡ EVP_CIPHER * EVP_«s_128_cbc (); 716 cÚ¡ EVP_CIPHER * EVP_«s_128_cfb1 (); 717 cÚ¡ EVP_CIPHER * EVP_«s_128_cfb8 (); 718 cÚ¡ EVP_CIPHER * EVP_«s_128_cfb128 (); 719  #EVP_«s_128_cfb EVP_«s_128_cfb128 ) 720 cÚ¡ EVP_CIPHER * EVP_«s_128_ofb (); 722 cÚ¡ EVP_CIPHER * EVP_«s_128_ùr (); 724 cÚ¡ EVP_CIPHER * EVP_«s_192_ecb (); 725 cÚ¡ EVP_CIPHER * EVP_«s_192_cbc (); 726 cÚ¡ EVP_CIPHER * EVP_«s_192_cfb1 (); 727 cÚ¡ EVP_CIPHER * EVP_«s_192_cfb8 (); 728 cÚ¡ EVP_CIPHER * EVP_«s_192_cfb128 (); 729  #EVP_«s_192_cfb EVP_«s_192_cfb128 ) 730 cÚ¡ EVP_CIPHER * EVP_«s_192_ofb (); 732 cÚ¡ EVP_CIPHER * EVP_«s_192_ùr (); 734 cÚ¡ EVP_CIPHER * EVP_«s_256_ecb (); 735 cÚ¡ EVP_CIPHER * EVP_«s_256_cbc (); 736 cÚ¡ EVP_CIPHER * EVP_«s_256_cfb1 (); 737 cÚ¡ EVP_CIPHER * EVP_«s_256_cfb8 (); 738 cÚ¡ EVP_CIPHER * EVP_«s_256_cfb128 (); 739  #EVP_«s_256_cfb EVP_«s_256_cfb128 ) 740 cÚ¡ EVP_CIPHER * EVP_«s_256_ofb (); 742 cÚ¡ EVP_CIPHER * EVP_«s_256_ùr (); 745 #iâdeà OPENSSL_NO_CAMELLIA 746 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_128_ecb (); 747 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_128_cbc (); 748 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_128_cfb1 (); 749 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_128_cfb8 (); 750 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_128_cfb128 (); 751  #EVP_ÿm–lŸ_128_cfb EVP_ÿm–lŸ_128_cfb128 ) 752 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_128_ofb (); 753 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_192_ecb (); 754 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_192_cbc (); 755 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_192_cfb1 (); 756 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_192_cfb8 (); 757 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_192_cfb128 (); 758  #EVP_ÿm–lŸ_192_cfb EVP_ÿm–lŸ_192_cfb128 ) 759 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_192_ofb (); 760 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_256_ecb (); 761 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_256_cbc (); 762 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_256_cfb1 (); 763 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_256_cfb8 (); 764 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_256_cfb128 (); 765  #EVP_ÿm–lŸ_256_cfb EVP_ÿm–lŸ_256_cfb128 ) 766 cÚ¡ EVP_CIPHER * EVP_ÿm–lŸ_256_ofb (); 769 #iâdeà OPENSSL_NO_SEED 770 cÚ¡ EVP_CIPHER * EVP_£ed_ecb (); 771 cÚ¡ EVP_CIPHER * EVP_£ed_cbc (); 772 cÚ¡ EVP_CIPHER * EVP_£ed_cfb128 (); 773  #EVP_£ed_cfb EVP_£ed_cfb128 ) 774 cÚ¡ EVP_CIPHER * EVP_£ed_ofb (); 777  OPENSSL_add_®l_®gÜ™hms_nocÚf (); 778  OPENSSL_add_®l_®gÜ™hms_cÚf (); 780 #ifdeà OPENSSL_LOAD_CONF 781  #O³nSSL_add_®l_®gÜ™hms () \ 782 `OPENSSL_add_®l_®gÜ™hms_cÚf () ) 784  #O³nSSL_add_®l_®gÜ™hms () \ 785 `OPENSSL_add_®l_®gÜ™hms_nocÚf () ) 788  O³nSSL_add_®l_ch”s (); 789  O³nSSL_add_®l_dige¡s (); 790  #SSL—y_add_®l_®gÜ™hms (è `O³nSSL_add_®l_®gÜ™hms () ) 791  #SSL—y_add_®l_ch”s (è `O³nSSL_add_®l_ch”s () ) 792  #SSL—y_add_®l_dige¡s (è `O³nSSL_add_®l_dige¡s () ) 794  EVP_add_ch” (cÚ¡ EVP_CIPHER * ch” ); 795  EVP_add_dige¡ (cÚ¡ EVP_MD * dige¡ ); 797 cÚ¡ EVP_CIPHER * EVP_g‘_ch”byÇme (cÚ¡ * Çme ); 798 cÚ¡ EVP_MD * EVP_g‘_dige¡byÇme (cÚ¡ * Çme ); 799  EVP_þ—nup (); 801  EVP_PKEY_deüy± (* dec_key , 802 cÚ¡ * ’c_key , ’c_key_Ën , 803 EVP_PKEY * ´iv©e_key ); 804  EVP_PKEY_’üy± (* ’c_key , 805 cÚ¡ * key , key_Ën , 806 EVP_PKEY * pub_key ); 807  EVP_PKEY_ty³ ( ty³ ); 808  EVP_PKEY_b™s ( EVP_PKEY * pkey ); 809  EVP_PKEY_size ( EVP_PKEY * pkey ); 810  EVP_PKEY_assign ( EVP_PKEY * pkey , ty³ ,* key ); 812 #iâdeà OPENSSL_NO_RSA 813  r§_¡ ; 814  EVP_PKEY_£t1_RSA ( EVP_PKEY * pkey , r§_¡ * key ); 815  r§_¡ * EVP_PKEY_g‘1_RSA ( EVP_PKEY * pkey ); 817 #iâdeà OPENSSL_NO_DSA 818  d§_¡ ; 819  EVP_PKEY_£t1_DSA ( EVP_PKEY * pkey , d§_¡ * key ); 820  d§_¡ * EVP_PKEY_g‘1_DSA ( EVP_PKEY * pkey ); 822 #iâdeà OPENSSL_NO_DH 823  dh_¡ ; 824  EVP_PKEY_£t1_DH ( EVP_PKEY * pkey , dh_¡ * key ); 825  dh_¡ * EVP_PKEY_g‘1_DH ( EVP_PKEY * pkey ); 827 #iâdeà OPENSSL_NO_EC 828  ec_key_¡ ; 829  EVP_PKEY_£t1_EC_KEY ( EVP_PKEY * pkey , ec_key_¡ * key ); 830  ec_key_¡ * EVP_PKEY_g‘1_EC_KEY ( EVP_PKEY * pkey ); 833 EVP_PKEY * EVP_PKEY_Ãw (); 834  EVP_PKEY_ä“ ( EVP_PKEY * pkey ); 836 EVP_PKEY * d2i_PublicKey ( ty³ ,EVP_PKEY ** a , cÚ¡ ** µ , 837  Ëngth ); 838  i2d_PublicKey ( EVP_PKEY * a , ** µ ); 840 EVP_PKEY * d2i_Priv©eKey ( ty³ ,EVP_PKEY ** a , cÚ¡ ** µ , 841  Ëngth ); 842 EVP_PKEY * d2i_AutoPriv©eKey (EVP_PKEY ** a , cÚ¡ ** µ , 843  Ëngth ); 844  i2d_Priv©eKey ( EVP_PKEY * a , ** µ ); 846  EVP_PKEY_cÝy_·¿m‘”s ( EVP_PKEY * to , cÚ¡ EVP_PKEY * äom ); 847  EVP_PKEY_missšg_·¿m‘”s (cÚ¡ EVP_PKEY * pkey ); 848  EVP_PKEY_§ve_·¿m‘”s ( EVP_PKEY * pkey , mode ); 849  EVP_PKEY_cmp_·¿m‘”s (cÚ¡ EVP_PKEY * a , cÚ¡ EVP_PKEY * b ); 851  EVP_PKEY_cmp (cÚ¡ EVP_PKEY * a , cÚ¡ EVP_PKEY * b ); 853  EVP_CIPHER_ty³ (cÚ¡ EVP_CIPHER * ùx ); 856  EVP_CIPHER_·¿m_to_a¢1 ( EVP_CIPHER_CTX * c , ASN1_TYPE * ty³ ); 857  EVP_CIPHER_a¢1_to_·¿m ( EVP_CIPHER_CTX * c , ASN1_TYPE * ty³ ); 860  EVP_CIPHER_£t_a¢1_iv ( EVP_CIPHER_CTX * c , ASN1_TYPE * ty³ ); 861  EVP_CIPHER_g‘_a¢1_iv ( EVP_CIPHER_CTX * c , ASN1_TYPE * ty³ ); 864  PKCS5_PBE_keyivg’ ( EVP_CIPHER_CTX * ùx , cÚ¡ * ·ss ,  ·s¦’ , 865 ASN1_TYPE * ·¿m , cÚ¡ EVP_CIPHER * ch” , cÚ¡ EVP_MD * md , 866  ’_de ); 867  PKCS5_PBKDF2_HMAC_SHA1 (cÚ¡ * ·ss ,  ·s¦’ , 868 cÚ¡ * §É ,  §ÉËn ,  ™” , 869  keyËn , * out ); 870  PKCS5_v2_PBE_keyivg’ ( EVP_CIPHER_CTX * ùx , cÚ¡ * ·ss ,  ·s¦’ , 871 ASN1_TYPE * ·¿m , cÚ¡ EVP_CIPHER * ch” , cÚ¡ EVP_MD * md , 872  ’_de ); 874  PKCS5_PBE_add (); 876  EVP_PBE_Ch”In™ ( ASN1_OBJECT * pbe_obj , cÚ¡ * ·ss ,  ·s¦’ , 877 ASN1_TYPE * ·¿m , EVP_CIPHER_CTX * ùx ,  ’_de ); 878  EVP_PBE_®g_add ( nid , cÚ¡ EVP_CIPHER * ch” , cÚ¡ EVP_MD * md , 879 EVP_PBE_KEYGEN * keyg’ ); 880  EVP_PBE_þ—nup (); 886  ERR_lßd_EVP_¡ršgs (); 891  #EVP_F_AES_INIT_KEY 133 ) 892  #EVP_F_CAMELLIA_INIT_KEY 159 ) 893  #EVP_F_D2I_PKEY 100 ) 894  #EVP_F_DSAPKEY2PKCS8 134 ) 895  #EVP_F_DSA_PKEY2PKCS8 135 ) 896  #EVP_F_ECDSA_PKEY2PKCS8 129 ) 897  #EVP_F_ECKEY_PKEY2PKCS8 132 ) 898  #EVP_F_EVP_CIPHERINIT_EX 123 ) 899  #EVP_F_EVP_CIPHER_CTX_CTRL 124 ) 900  #EVP_F_EVP_CIPHER_CTX_SET_KEY_LENGTH 122 ) 901  #EVP_F_EVP_DECRYPTFINAL_EX 101 ) 902  #EVP_F_EVP_DIGESTINIT_EX 128 ) 903  #EVP_F_EVP_ENCRYPTFINAL_EX 127 ) 904  #EVP_F_EVP_MD_CTX_COPY_EX 110 ) 905  #EVP_F_EVP_OPENINIT 102 ) 906  #EVP_F_EVP_PBE_ALG_ADD 115 ) 907  #EVP_F_EVP_PBE_CIPHERINIT 116 ) 908  #EVP_F_EVP_PKCS82PKEY 111 ) 909  #EVP_F_EVP_PKEY2PKCS8_BROKEN 113 ) 910  #EVP_F_EVP_PKEY_COPY_PARAMETERS 103 ) 911  #EVP_F_EVP_PKEY_DECRYPT 104 ) 912  #EVP_F_EVP_PKEY_ENCRYPT 105 ) 913  #EVP_F_EVP_PKEY_GET1_DH 119 ) 914  #EVP_F_EVP_PKEY_GET1_DSA 120 ) 915  #EVP_F_EVP_PKEY_GET1_ECDSA 130 ) 916  #EVP_F_EVP_PKEY_GET1_EC_KEY 131 ) 917  #EVP_F_EVP_PKEY_GET1_RSA 121 ) 918  #EVP_F_EVP_PKEY_NEW 106 ) 919  #EVP_F_EVP_RIJNDAEL 126 ) 920  #EVP_F_EVP_SIGNFINAL 107 ) 921  #EVP_F_EVP_VERIFYFINAL 108 ) 922  #EVP_F_PKCS5_PBE_KEYIVGEN 117 ) 923  #EVP_F_PKCS5_V2_PBE_KEYIVGEN 118 ) 924  #EVP_F_PKCS8_SET_BROKEN 112 ) 925  #EVP_F_RC2_MAGIC_TO_METH 109 ) 926  #EVP_F_RC5_CTRL 125 ) 929  #EVP_R_AES_KEY_SETUP_FAILED 143 ) 930  #EVP_R_ASN1_LIB 140 ) 931  #EVP_R_BAD_BLOCK_LENGTH 136 ) 932  #EVP_R_BAD_DECRYPT 100 ) 933  #EVP_R_BAD_KEY_LENGTH 137 ) 934  #EVP_R_BN_DECODE_ERROR 112 ) 935  #EVP_R_BN_PUBKEY_ERROR 113 ) 936  #EVP_R_CAMELLIA_KEY_SETUP_FAILED 157 ) 937  #EVP_R_CIPHER_PARAMETER_ERROR 122 ) 938  #EVP_R_CTRL_NOT_IMPLEMENTED 132 ) 939  #EVP_R_CTRL_OPERATION_NOT_IMPLEMENTED 133 ) 940  #EVP_R_DATA_NOT_MULTIPLE_OF_BLOCK_LENGTH 138 ) 941  #EVP_R_DECODE_ERROR 114 ) 942  #EVP_R_DIFFERENT_KEY_TYPES 101 ) 943  #EVP_R_ENCODE_ERROR 115 ) 944  #EVP_R_EVP_PBE_CIPHERINIT_ERROR 119 ) 945  #EVP_R_EXPECTING_AN_RSA_KEY 127 ) 946  #EVP_R_EXPECTING_A_DH_KEY 128 ) 947  #EVP_R_EXPECTING_A_DSA_KEY 129 ) 948  #EVP_R_EXPECTING_A_ECDSA_KEY 141 ) 949  #EVP_R_EXPECTING_A_EC_KEY 142 ) 950  #EVP_R_INITIALIZATION_ERROR 134 ) 951  #EVP_R_INPUT_NOT_INITIALIZED 111 ) 952  #EVP_R_INVALID_KEY_LENGTH 130 ) 953  #EVP_R_IV_TOO_LARGE 102 ) 954  #EVP_R_KEYGEN_FAILURE 120 ) 955  #EVP_R_MISSING_PARAMETERS 103 ) 956  #EVP_R_NO_CIPHER_SET 131 ) 957  #EVP_R_NO_DIGEST_SET 139 ) 958  #EVP_R_NO_DSA_PARAMETERS 116 ) 959  #EVP_R_NO_SIGN_FUNCTION_CONFIGURED 104 ) 960  #EVP_R_NO_VERIFY_FUNCTION_CONFIGURED 105 ) 961  #EVP_R_PKCS8_UNKNOWN_BROKEN_TYPE 117 ) 962  #EVP_R_PUBLIC_KEY_NOT_RSA 106 ) 963  #EVP_R_UNKNOWN_PBE_ALGORITHM 121 ) 964  #EVP_R_UNSUPORTED_NUMBER_OF_ROUNDS 135 ) 965  #EVP_R_UNSUPPORTED_CIPHER 107 ) 966  #EVP_R_UNSUPPORTED_KEYLENGTH 123 ) 967  #EVP_R_UNSUPPORTED_KEY_DERIVATION_FUNCTION 124 ) 968  #EVP_R_UNSUPPORTED_KEY_SIZE 108 ) 969  #EVP_R_UNSUPPORTED_PRF 125 ) 970  #EVP_R_UNSUPPORTED_PRIVATE_KEY_ALGORITHM 118 ) 971  #EVP_R_UNSUPPORTED_SALT_TYPE 126 ) 972  #EVP_R_WRONG_FINAL_BLOCK_LENGTH 109 ) 973  #EVP_R_WRONG_PUBLIC_KEY_TYPE 110 ) 974  #EVP_R_SEED_KEY_SETUP_FAILED 162 ) 976 #ifdeà __ýlu¥lus @/usr/include/openssl/opensslconf.h 5 #iâdeà OPENSSL_DOING_MAKEDEPEND 7 #iâdeà OPENSSL_NO_CAMELLIA 8  #OPENSSL_NO_CAMELLIA ) 10 #iâdeà OPENSSL_NO_GMP 11  #OPENSSL_NO_GMP ) 13 #iâdeà OPENSSL_NO_IDEA 14  #OPENSSL_NO_IDEA ) 16 #iâdeà OPENSSL_NO_KRB5 17  #OPENSSL_NO_KRB5 ) 19 #iâdeà OPENSSL_NO_MDC2 20  #OPENSSL_NO_MDC2 ) 22 #iâdeà OPENSSL_NO_RC5 23  #OPENSSL_NO_RC5 ) 25 #iâdeà OPENSSL_NO_RFC3779 26  #OPENSSL_NO_RFC3779 ) 28 #iâdeà OPENSSL_NO_SEED 29  #OPENSSL_NO_SEED ) 33 #iâdeà OPENSSL_THREADS 34  #OPENSSL_THREADS ) 36 #iâdeà OPENSSL_NO_STATIC_ENGINE 37  #OPENSSL_NO_STATIC_ENGINE ) 44 #ifdeà OPENSSL_ALGORITHM_DEFINES 45 #ià defšed ( OPENSSL_NO_CAMELLIA è&& !defšed( NO_CAMELLIA ) 46  #NO_CAMELLIA ) 48 #ià defšed ( OPENSSL_NO_GMP è&& !defšed( NO_GMP ) 49  #NO_GMP ) 51 #ià defšed ( OPENSSL_NO_IDEA è&& !defšed( NO_IDEA ) 52  #NO_IDEA ) 54 #ià defšed ( OPENSSL_NO_KRB5 è&& !defšed( NO_KRB5 ) 55  #NO_KRB5 ) 57 #ià defšed ( OPENSSL_NO_MDC2 è&& !defšed( NO_MDC2 ) 58  #NO_MDC2 ) 60 #ià defšed ( OPENSSL_NO_RC5 è&& !defšed( NO_RC5 ) 61  #NO_RC5 ) 63 #ià defšed ( OPENSSL_NO_RFC3779 è&& !defšed( NO_RFC3779 ) 64  #NO_RFC3779 ) 66 #ià defšed ( OPENSSL_NO_SEED è&& !defšed( NO_SEED ) 67  #NO_SEED ) 74 #undeà I386_ONLY 76 #ià!( defšed ( VMS è|| defšed( __VMS )) 77 #ià defšed ( HEADER_CRYPTLIB_H è&& !defšed( OPENSSLDIR ) 78  #ENGINESDIR "/u¤/lib/s¦/’gšes" ) 79  #OPENSSLDIR "/u¤/lib/s¦" ) 83 #undeà OPENSSL_UNISTD 84  #OPENSSL_UNISTD < uni¡d . h > ) 86 #undeà OPENSSL_EXPORT_VAR_AS_FUNCTION 88 #ià defšed ( HEADER_IDEA_H è&& !defšed( IDEA_INT ) 89  #IDEA_INT  ) 92 #ià defšed ( HEADER_MD2_H è&& !defšed( MD2_INT ) 93  #MD2_INT  ) 96 #ià defšed ( HEADER_RC2_H è&& !defšed( RC2_INT ) 98  #RC2_INT  ) 101 #ià defšed ( HEADER_RC4_H ) 102 #ià! defšed ( RC4_INT ) 110  #RC4_INT  ) 112 #ià! defšed ( RC4_CHUNK ) 117 #undeà RC4_CHUNK 121 #ià( defšed ( HEADER_NEW_DES_H è|| defšed( HEADER_DES_H )è&& !defšed( DES_LONG ) 124 #iâdeà DES_LONG 125  #DES_LONG  ) 129 #ià defšed ( HEADER_BN_H è&& !defšed( CONFIG_HEADER_BN_H ) 130  #CONFIG_HEADER_BN_H ) 131  #BN_LLONG ) 139 #undeà SIXTY_FOUR_BIT_LONG 140 #undeà SIXTY_FOUR_BIT 141  #THIRTY_TWO_BIT ) 142 #undeà SIXTEEN_BIT 143 #undeà EIGHT_BIT 146 #ià defšed ( HEADER_RC4_LOCL_H è&& !defšed( CONFIG_HEADER_RC4_LOCL_H ) 147  #CONFIG_HEADER_RC4_LOCL_H ) 150  #RC4_INDEX ) 153 #ià defšed ( HEADER_BF_LOCL_H è&& !defšed( CONFIG_HEADER_BF_LOCL_H ) 154  #CONFIG_HEADER_BF_LOCL_H ) 155 #undeà BF_PTR 158 #ià defšed ( HEADER_DES_LOCL_H è&& !defšed( CONFIG_HEADER_DES_LOCL_H ) 159  #CONFIG_HEADER_DES_LOCL_H ) 160 #iâdeà DES_DEFAULT_OPTIONS 163 #iâdeà DES_PTR 164  #DES_PTR ) 170 #iâdeà DES_RISC1 171  #DES_RISC1 ) 174 #iâdeà DES_RISC2 175 #undeà DES_RISC2 178 #ià defšed ( DES_RISC1 è&& defšed( DES_RISC2 ) 179 YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 gDEFINED !!!!! 184 #iâdeà DES_UNROLL 185  #DES_UNROLL ) 191 #ià! defšed ( DES_PTR è&& !defšed( DES_RISC1 è&& !defšed( DES_RISC2 è&& !defšed( DES_UNROLL ) 198 #ià defšed Ð sun ) 199  #DES_PTR ) 200  #DES_RISC1 ) 201  #DES_UNROLL ) 202 #–ià defšed Ð __uÉrix ) 203  #DES_PTR ) 204  #DES_RISC2 ) 205  #DES_UNROLL ) 206 #–ià defšed Ð __osf1__ ) 207  #DES_PTR ) 208  #DES_RISC2 ) 209 #–ià defšed ( _AIX ) 211 #–ià defšed Ð __hpux ) 213 #–ià defšed Ð __aux ) 215 #–ià defšed Ð __dgux ) 216  #DES_UNROLL ) 217 #–ià defšed Ð __sgi ) 218  #DES_PTR ) 219  #DES_RISC2 ) 220  #DES_UNROLL ) 221 #–ià defšed ( i386 è|| defšed( __i386__ ) 222  #DES_PTR ) 223  #DES_RISC1 ) 224  #DES_UNROLL ) @/usr/include/openssl/opensslv.h 1 #iâdeà HEADER_OPENSSLV_H 2  #HEADER_OPENSSLV_H ) 28  #OPENSSL_VERSION_NUMBER 0x0090807fL ) 29 #ifdeà OPENSSL_FIPS 30  #OPENSSL_VERSION_TEXT "O³nSSL 0.9.8g-f 19 Où 2007" ) 32  #OPENSSL_VERSION_TEXT "O³nSSL 0.9.8g 19 Où 2007" ) 34  #OPENSSL_VERSION_PTEXT "…¬ˆoà" OPENSSL_VERSION_TEXT ) 85  #SHLIB_VERSION_HISTORY "" ) 86  #SHLIB_VERSION_NUMBER "0.9.8" ) @/usr/include/openssl/pem2.h 60 #ifdeà __ýlu¥lus 64 #iâdeà HEADER_PEM_H 65  ERR_lßd_PEM_¡ršgs (); 68 #ifdeà __ýlu¥lus @/usr/include/openssl/pkcs7.h 59 #iâdeà HEADER_PKCS7_H 60  #HEADER_PKCS7_H ) 62  ~<Ý’s¦/a¢1.h > 63  ~<Ý’s¦/bio.h > 64  ~<Ý’s¦/e_os2.h > 66  ~<Ý’s¦/symhacks.h > 67  ~<Ý’s¦/os¦_typ.h > 69 #ifdeà __ýlu¥lus 73 #ifdeà OPENSSL_SYS_WIN32 75 #undeà PKCS7_ISSUER_AND_SERIAL 76 #undeà PKCS7_SIGNER_INFO 86  spkcs7_issu”_ªd_£rŸl_¡ 88 X509_NAME * issu” ; 89 ASN1_INTEGER * £rŸl ; 90 } tPKCS7_ISSUER_AND_SERIAL ; 92  spkcs7_sigÃr_šfo_¡ 94 ASN1_INTEGER * v”siÚ ; 95 PKCS7_ISSUER_AND_SERIAL * issu”_ªd_£rŸl ; 96 X509_ALGOR * dige¡_®g ; 97 STACK_OF ( X509_ATTRIBUTE è* auth_©Œ ; 98 X509_ALGOR * dige¡_’c_®g ; 99 ASN1_OCTET_STRING * ’c_dige¡ ; 100 STACK_OF ( X509_ATTRIBUTE è* uÇuth_©Œ ; 103 EVP_PKEY * pkey ; 104 } tPKCS7_SIGNER_INFO ; 106 DECLARE_STACK_OF ( PKCS7_SIGNER_INFO ) 107 DECLARE_ASN1_SET_OF ( PKCS7_SIGNER_INFO ) 109  spkcs7_»c_šfo_¡ 111 ASN1_INTEGER * v”siÚ ; 112 PKCS7_ISSUER_AND_SERIAL * issu”_ªd_£rŸl ; 113 X509_ALGOR * key_’c_®gÜ ; 114 ASN1_OCTET_STRING * ’c_key ; 115 X509 * û¹ ; 116 } tPKCS7_RECIP_INFO ; 118 DECLARE_STACK_OF ( PKCS7_RECIP_INFO ) 119 DECLARE_ASN1_SET_OF ( PKCS7_RECIP_INFO ) 121  spkcs7_sigÃd_¡ 123 ASN1_INTEGER * v”siÚ ; 124 STACK_OF ( X509_ALGOR è* md_®gs ; 125 STACK_OF ( X509 è* û¹ ; 126 STACK_OF ( X509_CRL è* ül ; 127 STACK_OF ( PKCS7_SIGNER_INFO è* sigÃr_šfo ; 129  pkcs7_¡ * cÚ‹Ás ; 130 } tPKCS7_SIGNED ; 134  spkcs7_’c_cÚ‹Á_¡ 136 ASN1_OBJECT * cÚ‹Á_ty³ ; 137 X509_ALGOR * ®gÜ™hm ; 138 ASN1_OCTET_STRING * ’c_d©a ; 139 cÚ¡ EVP_CIPHER * ch” ; 140 } tPKCS7_ENC_CONTENT ; 142  spkcs7_’v–Ýed_¡ 144 ASN1_INTEGER * v”siÚ ; 145 STACK_OF ( PKCS7_RECIP_INFO è* »c›Ášfo ; 146 PKCS7_ENC_CONTENT * ’c_d©a ; 147 } tPKCS7_ENVELOPE ; 149  spkcs7_sigÃdªd’v–Ýed_¡ 151 ASN1_INTEGER * v”siÚ ; 152 STACK_OF ( X509_ALGOR è* md_®gs ; 153 STACK_OF ( X509 è* û¹ ; 154 STACK_OF ( X509_CRL è* ül ; 155 STACK_OF ( PKCS7_SIGNER_INFO è* sigÃr_šfo ; 157 PKCS7_ENC_CONTENT * ’c_d©a ; 158 STACK_OF ( PKCS7_RECIP_INFO è* »c›Ášfo ; 159 } tPKCS7_SIGN_ENVELOPE ; 161  spkcs7_dige¡_¡ 163 ASN1_INTEGER * v”siÚ ; 164 X509_ALGOR * md ; 165  pkcs7_¡ * cÚ‹Ás ; 166 ASN1_OCTET_STRING * dige¡ ; 167 } tPKCS7_DIGEST ; 169  spkcs7_’üy±ed_¡ 171 ASN1_INTEGER * v”siÚ ; 172 PKCS7_ENC_CONTENT * ’c_d©a ; 173 } tPKCS7_ENCRYPT ; 175  spkcs7_¡ 179 * a¢1 ; 180  Ëngth ; 182  #PKCS7_S_HEADER 0 ) 183  #PKCS7_S_BODY 1 ) 184  #PKCS7_S_TAIL 2 ) 185  ¡©e ; 187  d‘ached ; 189 ASN1_OBJECT * ty³ ; 194 * ±r ; 197 ASN1_OCTET_STRING * d©a ; 200 PKCS7_SIGNED * sign ; 203 PKCS7_ENVELOPE * ’v–Ýed ; 206 PKCS7_SIGN_ENVELOPE * sigÃd_ªd_’v–Ýed ; 209 PKCS7_DIGEST * dige¡ ; 212 PKCS7_ENCRYPT * ’üy±ed ; 215 ASN1_TYPE * Ùh” ; 216 } d ; 217 } tPKCS7 ; 219 DECLARE_STACK_OF ( PKCS7 ) 220 DECLARE_ASN1_SET_OF ( PKCS7 ) 221 DECLARE_PKCS12_STACK_OF ( PKCS7 ) 223  #PKCS7_OP_SET_DETACHED_SIGNATURE 1 ) 224  #PKCS7_OP_GET_DETACHED_SIGNATURE 2 ) 226  #PKCS7_g‘_sigÃd_©Œibu‹s ( si è((si)-> auth_©Œ ) ) 227  #PKCS7_g‘_©Œibu‹s ( si è((si)-> uÇuth_©Œ ) ) 229  #PKCS7_ty³_is_sigÃd ( a è( `OBJ_obj2nid (×)-> ty³ è=ð NID_pkcs7_sigÃd ) ) 230  #PKCS7_ty³_is_’üy±ed ( a è( `OBJ_obj2nid (×)-> ty³ è=ð NID_pkcs7_’üy±ed ) ) 231  #PKCS7_ty³_is_’v–Ýed ( a è( `OBJ_obj2nid (×)-> ty³ è=ð NID_pkcs7_’v–Ýed ) ) 232  #PKCS7_ty³_is_sigÃdAndEnv–Ýed ( a ) \ 233 ( `OBJ_obj2nid (( a )-> ty³ è=ð NID_pkcs7_sigÃdAndEnv–Ýed ) ) 234  #PKCS7_ty³_is_d©a ( a è( `OBJ_obj2nid (×)-> ty³ è=ð NID_pkcs7_d©a ) ) 236  #PKCS7_ty³_is_dige¡ ( a è( `OBJ_obj2nid (×)-> ty³ è=ð NID_pkcs7_dige¡ ) ) 238  #PKCS7_£t_d‘ached ( p , v ) \ 239 `PKCS7_ù¾ ( p , PKCS7_OP_SET_DETACHED_SIGNATURE , v , NULL ) ) 240  #PKCS7_g‘_d‘ached ( p ) \ 241 `PKCS7_ù¾ ( p , PKCS7_OP_GET_DETACHED_SIGNATURE ,0, NULL ) ) 243  #PKCS7_is_d‘ached ( p7 è( `PKCS7_ty³_is_sigÃd Õ7è&& `PKCS7_g‘_d‘ached Õ7)) ) 245 #ifdeà SSLEAY_MACROS 246 #iâdeà PKCS7_ISSUER_AND_SERIAL_dige¡ 247  #PKCS7_ISSUER_AND_SERIAL_dige¡ ( d©a , ty³ , md , Ën ) \ 248 `ASN1_dige¡ (((*)()) i2d_PKCS7_ISSUER_AND_SERIAL , ty³ ,\ 249 (*) d©a , md , Ën ) ) 255  #PKCS7_TEXT 0x1 ) 256  #PKCS7_NOCERTS 0x2 ) 257  #PKCS7_NOSIGS 0x4 ) 258  #PKCS7_NOCHAIN 0x8 ) 259  #PKCS7_NOINTERN 0x10 ) 260  #PKCS7_NOVERIFY 0x20 ) 261  #PKCS7_DETACHED 0x40 ) 262  #PKCS7_BINARY 0x80 ) 263  #PKCS7_NOATTR 0x100 ) 264  #PKCS7_NOSMIMECAP 0x200 ) 265  #PKCS7_NOOLDMIMETYPE 0x400 ) 266  #PKCS7_CRLFEOL 0x800 ) 267  #PKCS7_STREAM 0x1000 ) 268  #PKCS7_NOCRL 0x2000 ) 272  #SMIME_TEXT PKCS7_TEXT ) 273  #SMIME_NOCERTS PKCS7_NOCERTS ) 274  #SMIME_NOSIGS PKCS7_NOSIGS ) 275  #SMIME_NOCHAIN PKCS7_NOCHAIN ) 276  #SMIME_NOINTERN PKCS7_NOINTERN ) 277  #SMIME_NOVERIFY PKCS7_NOVERIFY ) 278  #SMIME_DETACHED PKCS7_DETACHED ) 279  #SMIME_BINARY PKCS7_BINARY ) 280  #SMIME_NOATTR PKCS7_NOATTR ) 282 DECLARE_ASN1_FUNCTIONS ( PKCS7_ISSUER_AND_SERIAL ) 284 #iâdeà SSLEAY_MACROS 285  PKCS7_ISSUER_AND_SERIAL_dige¡ ( PKCS7_ISSUER_AND_SERIAL * d©a ,cÚ¡ EVP_MD * ty³ , 286 * md ,* Ën ); 287 #iâdeà OPENSSL_NO_FP_API 288 PKCS7 * d2i_PKCS7_å ( FILE * å ,PKCS7 ** p7 ); 289  i2d_PKCS7_å ( FILE * å , PKCS7 * p7 ); 291 PKCS7 * PKCS7_dup (PKCS7 * p7 ); 292 PKCS7 * d2i_PKCS7_bio ( BIO * bp ,PKCS7 ** p7 ); 293  i2d_PKCS7_bio ( BIO * bp , PKCS7 * p7 ); 296 DECLARE_ASN1_FUNCTIONS ( PKCS7_SIGNER_INFO ) 297 DECLARE_ASN1_FUNCTIONS ( PKCS7_RECIP_INFO ) 298 DECLARE_ASN1_FUNCTIONS ( PKCS7_SIGNED ) 299 DECLARE_ASN1_FUNCTIONS ( PKCS7_ENC_CONTENT ) 300 DECLARE_ASN1_FUNCTIONS ( PKCS7_ENVELOPE ) 301 DECLARE_ASN1_FUNCTIONS ( PKCS7_SIGN_ENVELOPE ) 302 DECLARE_ASN1_FUNCTIONS ( PKCS7_DIGEST ) 303 DECLARE_ASN1_FUNCTIONS ( PKCS7_ENCRYPT ) 304 DECLARE_ASN1_FUNCTIONS ( PKCS7 ) 306 DECLARE_ASN1_ITEM ( PKCS7_ATTR_SIGN ) 307 DECLARE_ASN1_ITEM ( PKCS7_ATTR_VERIFY ) 309 DECLARE_ASN1_NDEF_FUNCTION ( PKCS7 ) 311  PKCS7_ù¾ ( PKCS7 * p7 ,  cmd ,  Ïrg , * ·rg ); 313  PKCS7_£t_ty³ ( PKCS7 * p7 ,  ty³ ); 314  PKCS7_£t0_ty³_Ùh” ( PKCS7 * p7 ,  ty³ , ASN1_TYPE * Ùh” ); 315  PKCS7_£t_cÚ‹Á ( PKCS7 * p7 , PKCS7 * p7_d©a ); 316  PKCS7_SIGNER_INFO_£t ( PKCS7_SIGNER_INFO * p7i , X509 * x509 , EVP_PKEY * pkey , 317 cÚ¡ EVP_MD * dg¡ ); 318  PKCS7_add_sigÃr ( PKCS7 * p7 , PKCS7_SIGNER_INFO * p7i ); 319  PKCS7_add_û¹ifiÿ‹ ( PKCS7 * p7 , X509 * x509 ); 320  PKCS7_add_ül ( PKCS7 * p7 , X509_CRL * x509 ); 321  PKCS7_cÚ‹Á_Ãw ( PKCS7 * p7 ,  nid ); 322  PKCS7_d©aV”ify ( X509_STORE * û¹_¡Üe , X509_STORE_CTX * ùx , 323 BIO * bio , PKCS7 * p7 , PKCS7_SIGNER_INFO * si ); 324  PKCS7_sigÇtu»V”ify ( BIO * bio , PKCS7 * p7 , PKCS7_SIGNER_INFO * si , 325 X509 * x509 ); 327 BIO * PKCS7_d©aIn™ ( PKCS7 * p7 , BIO * bio ); 328  PKCS7_d©aFš® ( PKCS7 * p7 , BIO * bio ); 329 BIO * PKCS7_d©aDecode ( PKCS7 * p7 , EVP_PKEY * pkey , BIO * š_bio , X509 * pû¹ ); 332 PKCS7_SIGNER_INFO * PKCS7_add_sigÇtu» ( PKCS7 * p7 , X509 * x509 , 333 EVP_PKEY * pkey , cÚ¡ EVP_MD * dg¡ ); 334 X509 * PKCS7_û¹_äom_sigÃr_šfo ( PKCS7 * p7 , PKCS7_SIGNER_INFO * si ); 335  PKCS7_£t_dige¡ ( PKCS7 * p7 , cÚ¡ EVP_MD * md ); 336 STACK_OF ( PKCS7_SIGNER_INFO è* PKCS7_g‘_sigÃr_šfo ( PKCS7 * p7 ); 338 PKCS7_RECIP_INFO * PKCS7_add_»c›Á ( PKCS7 * p7 , X509 * x509 ); 339  PKCS7_add_»c›Á_šfo ( PKCS7 * p7 , PKCS7_RECIP_INFO * ri ); 340  PKCS7_RECIP_INFO_£t ( PKCS7_RECIP_INFO * p7i , X509 * x509 ); 341  PKCS7_£t_ch” ( PKCS7 * p7 , cÚ¡ EVP_CIPHER * ch” ); 343 PKCS7_ISSUER_AND_SERIAL * PKCS7_g‘_issu”_ªd_£rŸl ( PKCS7 * p7 ,  idx ); 344 ASN1_OCTET_STRING * PKCS7_dige¡_äom_©Œibu‹s ( STACK_OF ( X509_ATTRIBUTE è* sk ); 345  PKCS7_add_sigÃd_©Œibu‹ ( PKCS7_SIGNER_INFO * p7si , nid , ty³ , 346 * d©a ); 347  PKCS7_add_©Œibu‹ ( PKCS7_SIGNER_INFO * p7si ,  nid ,  ©¹y³ , 348 * v®ue ); 349 ASN1_TYPE * PKCS7_g‘_©Œibu‹ ( PKCS7_SIGNER_INFO * si ,  nid ); 350 ASN1_TYPE * PKCS7_g‘_sigÃd_©Œibu‹ ( PKCS7_SIGNER_INFO * si ,  nid ); 351  PKCS7_£t_sigÃd_©Œibu‹s ( PKCS7_SIGNER_INFO * p7si , 352 STACK_OF ( X509_ATTRIBUTE è* sk ); 353  PKCS7_£t_©Œibu‹s ( PKCS7_SIGNER_INFO * p7si , STACK_OF ( X509_ATTRIBUTE è* sk ); 356 PKCS7 * PKCS7_sign ( X509 * signû¹ , EVP_PKEY * pkey , STACK_OF (X509è* û¹s , 357 BIO * d©a ,  æags ); 358  PKCS7_v”ify ( PKCS7 * p7 , STACK_OF ( X509 è* û¹s , X509_STORE * ¡Üe , 359 BIO * šd©a , BIO * out ,  æags ); 360 STACK_OF ( X509 è* PKCS7_g‘0_sigÃrs ( PKCS7 * p7 , STACK_OF(X509è* û¹s ,  æags ); 361 PKCS7 * PKCS7_’üy± ( STACK_OF ( X509 è* û¹s , BIO * š , cÚ¡ EVP_CIPHER * ch” , 362  æags ); 363  PKCS7_deüy± ( PKCS7 * p7 , EVP_PKEY * pkey , X509 * û¹ , BIO * d©a ,  æags ); 365  PKCS7_add_©Œib_smimeÿp ( PKCS7_SIGNER_INFO * si , 366 STACK_OF ( X509_ALGOR è* ÿp ); 367 STACK_OF ( X509_ALGOR è* PKCS7_g‘_smimeÿp ( PKCS7_SIGNER_INFO * si ); 368  PKCS7_sim¶e_smimeÿp ( STACK_OF ( X509_ALGOR è* sk ,  nid ,  ¬g ); 370  SMIME_wr™e_PKCS7 ( BIO * bio , PKCS7 * p7 , BIO * d©a ,  æags ); 371 PKCS7 * SMIME_»ad_PKCS7 ( BIO * bio , BIO ** bcÚt ); 372  SMIME_ülf_cÝy ( BIO * š , BIO * out ,  æags ); 373  SMIME_‹xt ( BIO * š , BIO * out ); 379  ERR_lßd_PKCS7_¡ršgs (); 384  #PKCS7_F_B64_READ_PKCS7 120 ) 385  #PKCS7_F_B64_WRITE_PKCS7 121 ) 386  #PKCS7_F_PKCS7_ADD_ATTRIB_SMIMECAP 118 ) 387  #PKCS7_F_PKCS7_ADD_CERTIFICATE 100 ) 388  #PKCS7_F_PKCS7_ADD_CRL 101 ) 389  #PKCS7_F_PKCS7_ADD_RECIPIENT_INFO 102 ) 390  #PKCS7_F_PKCS7_ADD_SIGNER 103 ) 391  #PKCS7_F_PKCS7_BIO_ADD_DIGEST 125 ) 392  #PKCS7_F_PKCS7_CTRL 104 ) 393  #PKCS7_F_PKCS7_DATADECODE 112 ) 394  #PKCS7_F_PKCS7_DATAFINAL 128 ) 395  #PKCS7_F_PKCS7_DATAINIT 105 ) 396  #PKCS7_F_PKCS7_DATASIGN 106 ) 397  #PKCS7_F_PKCS7_DATAVERIFY 107 ) 398  #PKCS7_F_PKCS7_DECRYPT 114 ) 399  #PKCS7_F_PKCS7_ENCRYPT 115 ) 400  #PKCS7_F_PKCS7_FIND_DIGEST 127 ) 401  #PKCS7_F_PKCS7_GET0_SIGNERS 124 ) 402  #PKCS7_F_PKCS7_SET_CIPHER 108 ) 403  #PKCS7_F_PKCS7_SET_CONTENT 109 ) 404  #PKCS7_F_PKCS7_SET_DIGEST 126 ) 405  #PKCS7_F_PKCS7_SET_TYPE 110 ) 406  #PKCS7_F_PKCS7_SIGN 116 ) 407  #PKCS7_F_PKCS7_SIGNATUREVERIFY 113 ) 408  #PKCS7_F_PKCS7_SIMPLE_SMIMECAP 119 ) 409  #PKCS7_F_PKCS7_VERIFY 117 ) 410  #PKCS7_F_SMIME_READ_PKCS7 122 ) 411  #PKCS7_F_SMIME_TEXT 123 ) 414  #PKCS7_R_CERTIFICATE_VERIFY_ERROR 117 ) 415  #PKCS7_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER 144 ) 416  #PKCS7_R_CIPHER_NOT_INITIALIZED 116 ) 417  #PKCS7_R_CONTENT_AND_DATA_PRESENT 118 ) 418  #PKCS7_R_DECODE_ERROR 130 ) 419  #PKCS7_R_DECRYPTED_KEY_IS_WRONG_LENGTH 100 ) 420  #PKCS7_R_DECRYPT_ERROR 119 ) 421  #PKCS7_R_DIGEST_FAILURE 101 ) 422  #PKCS7_R_ERROR_ADDING_RECIPIENT 120 ) 423  #PKCS7_R_ERROR_SETTING_CIPHER 121 ) 424  #PKCS7_R_INVALID_MIME_TYPE 131 ) 425  #PKCS7_R_INVALID_NULL_POINTER 143 ) 426  #PKCS7_R_MIME_NO_CONTENT_TYPE 132 ) 427  #PKCS7_R_MIME_PARSE_ERROR 133 ) 428  #PKCS7_R_MIME_SIG_PARSE_ERROR 134 ) 429  #PKCS7_R_MISSING_CERIPEND_INFO 103 ) 430  #PKCS7_R_NO_CONTENT 122 ) 431  #PKCS7_R_NO_CONTENT_TYPE 135 ) 432  #PKCS7_R_NO_MULTIPART_BODY_FAILURE 136 ) 433  #PKCS7_R_NO_MULTIPART_BOUNDARY 137 ) 434  #PKCS7_R_NO_RECIPIENT_MATCHES_CERTIFICATE 115 ) 435  #PKCS7_R_NO_RECIPIENT_MATCHES_KEY 146 ) 436  #PKCS7_R_NO_SIGNATURES_ON_DATA 123 ) 437  #PKCS7_R_NO_SIGNERS 142 ) 438  #PKCS7_R_NO_SIG_CONTENT_TYPE 138 ) 439  #PKCS7_R_OPERATION_NOT_SUPPORTED_ON_THIS_TYPE 104 ) 440  #PKCS7_R_PKCS7_ADD_SIGNATURE_ERROR 124 ) 441  #PKCS7_R_PKCS7_DATAFINAL 126 ) 442  #PKCS7_R_PKCS7_DATAFINAL_ERROR 125 ) 443  #PKCS7_R_PKCS7_DATASIGN 145 ) 444  #PKCS7_R_PKCS7_PARSE_ERROR 139 ) 445  #PKCS7_R_PKCS7_SIG_PARSE_ERROR 140 ) 446  #PKCS7_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE 127 ) 447  #PKCS7_R_SIGNATURE_FAILURE 105 ) 448  #PKCS7_R_SIGNER_CERTIFICATE_NOT_FOUND 128 ) 449  #PKCS7_R_SIG_INVALID_MIME_TYPE 141 ) 450  #PKCS7_R_SMIME_TEXT_ERROR 129 ) 451  #PKCS7_R_UNABLE_TO_FIND_CERTIFICATE 106 ) 452  #PKCS7_R_UNABLE_TO_FIND_MEM_BIO 107 ) 453  #PKCS7_R_UNABLE_TO_FIND_MESSAGE_DIGEST 108 ) 454  #PKCS7_R_UNKNOWN_DIGEST_TYPE 109 ) 455  #PKCS7_R_UNKNOWN_OPERATION 110 ) 456  #PKCS7_R_UNSUPPORTED_CIPHER_TYPE 111 ) 457  #PKCS7_R_UNSUPPORTED_CONTENT_TYPE 112 ) 458  #PKCS7_R_WRONG_CONTENT_TYPE 113 ) 459  #PKCS7_R_WRONG_PKCS7_TYPE 114 ) 461 #ifdeà __ýlu¥lus @/usr/include/openssl/pq_compat.h 60  ~<Ý’s¦/Ý’s¦cÚf.h > 61  ~<Ý’s¦/bn.h > 75 #ià( defšed ( THIRTY_TWO_BIT è&& !defšed( BN_LLONG )è|| defšed( SIXTEEN_BIT è|| defšed( EIGHT_BIT ) 77  #PQ_64BIT_IS_INTEGER 0 ) 78  #PQ_64BIT_IS_BIGNUM 1 ) 80  #PQ_64BIT BIGNUM ) 81  #PQ_64BIT_CTX BN_CTX ) 83  #pq_64b™_š™ ( x è `BN_š™ (x) ) 84  #pq_64b™_ä“ ( x è `BN_ä“ (x) ) 86  #pq_64b™_ùx_Ãw ( ùx è `BN_CTX_Ãw () ) 87  #pq_64b™_ùx_ä“ ( x è `BN_CTX_ä“ (x) ) 89  #pq_64b™_assign ( x , y è `BN_cÝy (x, y) ) 90  #pq_64b™_assign_wÜd ( x , y è `BN_£t_wÜd (x, y) ) 91  #pq_64b™_gt ( x , y è `BN_ucmp (x, yè>ð1 ? 1 : 0 ) 92  #pq_64b™_eq ( x , y è `BN_ucmp (x, yè=ð0 ? 1 : 0 ) 93  #pq_64b™_add_wÜd ( x , w è `BN_add_wÜd (x, w) ) 94  #pq_64b™_sub ( r , x , y è `BN_sub Ô, x, y) ) 95  #pq_64b™_sub_wÜd ( x , w è `BN_sub_wÜd (x, w) ) 96  #pq_64b™_mod ( r , x , n , ùx è `BN_mod Ô, x,‚, ctx) ) 98  #pq_64b™_bš2num ( bn , by‹s , Ën è `BN_bš2bn (by‹s,†’, bn) ) 99  #pq_64b™_num2bš ( bn , by‹s è `BN_bn2bš (bn, by‹s) ) 100  #pq_64b™_g‘_wÜd ( x è `BN_g‘_wÜd (x) ) 101  #pq_64b™_is_b™_£t ( x , off£t è `BN_is_b™_£t (x, off£t) ) 102  #pq_64b™_lshiá ( r , x , shiá è `BN_lshiá Ô, x, shiá) ) 103  #pq_64b™_£t_b™ ( x , num è `BN_£t_b™ (x,‚um) ) 104  #pq_64b™_g‘_Ëngth ( x è `BN_num_b™s ((x)) ) 108  #PQ_64BIT_IS_INTEGER 1 ) 109  #PQ_64BIT_IS_BIGNUM 0 ) 111 #ià defšed ( SIXTY_FOUR_BIT ) 112  #PQ_64BIT BN_ULONG ) 113  #PQ_64BIT_PRINT "%Îd" ) 114 #–ià defšed ( SIXTY_FOUR_BIT_LONG ) 115  #PQ_64BIT BN_ULONG ) 116  #PQ_64BIT_PRINT "%ld" ) 117 #–ià defšed ( THIRTY_TWO_BIT ) 118  #PQ_64BIT BN_ULLONG ) 119  #PQ_64BIT_PRINT "%Îd" ) 122  #PQ_64BIT_CTX  ) 124  #pq_64b™_š™ ( x ) ) 125  #pq_64b™_ä“ ( x ) ) 126  #pq_64b™_ùx_Ãw ( ùx è(ùx) ) 127  #pq_64b™_ùx_ä“ ( x ) ) 129  #pq_64b™_assign ( x , y è(*(xèð*(y)) ) 130  #pq_64b™_assign_wÜd ( x , y è(*(xèðy) ) 131  #pq_64b™_gt ( x , y è(*(xè> *(y)) ) 132  #pq_64b™_eq ( x , y è(*(xè=ð*(y)) ) 133  #pq_64b™_add_wÜd ( x , w è(*(xèð(*(xè+ (w))) ) 134  #pq_64b™_sub ( r , x , y è(*Ôèð(*(xè- *(y))) ) 135  #pq_64b™_sub_wÜd ( x , w è(*(xèð(*(xè- (w))) ) 136  #pq_64b™_mod ( r , x , n , ùx ) ) 138  #pq_64b™_bš2num ( num , by‹s , Ën è `by‹s_to_lÚg_lÚg (by‹s,‚um) ) 139  #pq_64b™_num2bš ( num , by‹s è `lÚg_lÚg_to_by‹s Òum, by‹s) ) 140  #pq_64b™_g‘_wÜd ( x è*(x) ) 141  #pq_64b™_lshiá ( r , x , shiá è(*Ôèð(*(xè<< (shiá))) ) 142  #pq_64b™_£t_b™ ( x , num ) do { \ 143 PQ_64BIT mask = 1; \ 144 mask = mask << ( num ); \ 145 *( x è|ð mask ; \ 146 } 0) ) @/usr/include/openssl/pqueue.h 60 #iâdeà HEADER_PQUEUE_H 61  #HEADER_PQUEUE_H ) 63  ~<¡dio.h > 64  ~<¡dlib.h > 65  ~<¡ršg.h > 67  ~<Ý’s¦/pq_com·t.h > 69  _pqueue * tpqueue ; 71  s_p™em 73 PQ_64BIT m´iÜ™y ; 74 * md©a ; 75  _p™em * mÃxt ; 76 } tp™em ; 78  _p™em * tp™”©Ü ; 80 p™em * p™em_Ãw ( PQ_64BIT ´iÜ™y , * d©a ); 81  p™em_ä“ ( p™em * ™em ); 83 pqueue pqueue_Ãw (); 84  pqueue_ä“ ( pqueue pq ); 86 p™em * pqueue_š£¹ ( pqueue pq ,…™em * ™em ); 87 p™em * pqueue_³ek ( pqueue pq ); 88 p™em * pqueue_pÝ ( pqueue pq ); 89 p™em * pqueue_fšd ( pqueue pq , PQ_64BIT ´iÜ™y ); 90 p™em * pqueue_™”©Ü ( pqueue pq ); 91 p™em * pqueue_Ãxt ( p™”©Ü * ™” ); 93  pqueue_´št ( pqueue pq ); @/usr/include/openssl/rsa.h 59 #iâdeà HEADER_RSA_H 60  #HEADER_RSA_H ) 62  ~<Ý’s¦/a¢1.h > 64 #iâdeà OPENSSL_NO_BIO 65  ~<Ý’s¦/bio.h > 67  ~<Ý’s¦/üy±o.h > 68  ~<Ý’s¦/os¦_typ.h > 69 #iâdeà OPENSSL_NO_DEPRECATED 70  ~<Ý’s¦/bn.h > 73 #ifdeà OPENSSL_NO_RSA 74 #”rÜ RSA is di§bËd . 77 #ifdeà __ýlu¥lus 85  sr§_m‘h_¡ 87 cÚ¡ * Çme ; 88 (* r§_pub_’c )( æ’ ,cÚ¡ * äom , 89 * to , 90 RSA * r§ , ·ddšg ); 91 (* r§_pub_dec )( æ’ ,cÚ¡ * äom , 92 * to , 93 RSA * r§ , ·ddšg ); 94 (* r§_´iv_’c )( æ’ ,cÚ¡ * äom , 95 * to , 96 RSA * r§ , ·ddšg ); 97 (* r§_´iv_dec )( æ’ ,cÚ¡ * äom , 98 * to , 99 RSA * r§ , ·ddšg ); 100 (* r§_mod_exp )( BIGNUM * r0 ,cÚ¡ BIGNUM * I , RSA * r§ , BN_CTX * ùx ); 101 (* bn_mod_exp )( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , 102 cÚ¡ BIGNUM * m , BN_CTX * ùx , 103 BN_MONT_CTX * m_ùx ); 104 (* š™ )( RSA * r§ ); 105 (* fšish )( RSA * r§ ); 106  æags ; 107 * ­p_d©a ; 115 (* r§_sign )( ty³ , 116 cÚ¡ * m ,  m_Ëngth , 117 * sig»t , * sigËn , cÚ¡ RSA * r§ ); 118 (* r§_v”ify )( dty³ , 119 cÚ¡ * m ,  m_Ëngth , 120 * sigbuf ,  sigËn , cÚ¡ RSA * r§ ); 125 (* r§_keyg’ )( RSA * r§ ,  b™s , BIGNUM * e , BN_GENCB * cb ); 128  sr§_¡ 132  ·d ; 133  v”siÚ ; 134 cÚ¡ RSA_METHOD * m‘h ; 136 ENGINE * ’gše ; 137 BIGNUM * n ; 138 BIGNUM * e ; 139 BIGNUM * d ; 140 BIGNUM * p ; 141 BIGNUM * q ; 142 BIGNUM * dmp1 ; 143 BIGNUM * dmq1 ; 144 BIGNUM * iqmp ; 146 CRYPTO_EX_DATA ex_d©a ; 147  »ã»nûs ; 148  æags ; 151 BN_MONT_CTX * _m‘hod_mod_n ; 152 BN_MONT_CTX * _m‘hod_mod_p ; 153 BN_MONT_CTX * _m‘hod_mod_q ; 157 * bignum_d©a ; 158 BN_BLINDING * blšdšg ; 159 BN_BLINDING * mt_blšdšg ; 162 #iâdeà OPENSSL_RSA_MAX_MODULUS_BITS 163  #OPENSSL_RSA_MAX_MODULUS_BITS 16384 ) 166 #iâdeà OPENSSL_RSA_SMALL_MODULUS_BITS 167  #OPENSSL_RSA_SMALL_MODULUS_BITS 3072 ) 169 #iâdeà OPENSSL_RSA_MAX_PUBEXP_BITS 170  #OPENSSL_RSA_MAX_PUBEXP_BITS 64 ) 173  #RSA_3 0x3L ) 174  #RSA_F4 0x10001L ) 176  #RSA_METHOD_FLAG_NO_CHECK 0x0001 ) 178  #RSA_FLAG_CACHE_PUBLIC 0x0002 ) 179  #RSA_FLAG_CACHE_PRIVATE 0x0004 ) 180  #RSA_FLAG_BLINDING 0x0008 ) 181  #RSA_FLAG_THREAD_SAFE 0x0010 ) 187  #RSA_FLAG_EXT_PKEY 0x0020 ) 191  #RSA_FLAG_SIGN_VER 0x0040 ) 193  #RSA_FLAG_NO_BLINDING 0x0080 ) 198  #RSA_FLAG_NO_CONSTTIME 0x0100 ) 208 #iâdeà OPENSSL_NO_DEPRECATED 209  #RSA_FLAG_NO_EXP_CONSTTIME RSA_FLAG_NO_CONSTTIME ) 220  #RSA_PKCS1_PADDING 1 ) 221  #RSA_SSLV23_PADDING 2 ) 222  #RSA_NO_PADDING 3 ) 223  #RSA_PKCS1_OAEP_PADDING 4 ) 224  #RSA_X931_PADDING 5 ) 226  #RSA_PKCS1_PADDING_SIZE 11 ) 228  #RSA_£t_­p_d©a ( s , ¬g è `RSA_£t_ex_d©a (s,0,¬g) ) 229  #RSA_g‘_­p_d©a ( s è `RSA_g‘_ex_d©a (s,0) ) 231 RSA * RSA_Ãw (); 232 RSA * RSA_Ãw_m‘hod ( ENGINE * ’gše ); 233  RSA_size (cÚ¡ RSA *); 236 #iâdeà OPENSSL_NO_DEPRECATED 237 RSA * RSA_g’”©e_key ( b™s ,  e , 238 (* ÿÎback )(,,*),* cb_¬g ); 242  RSA_g’”©e_key_ex ( RSA * r§ ,  b™s , BIGNUM * e , BN_GENCB * cb ); 244  RSA_check_key (cÚ¡ RSA *); 246  RSA_public_’üy± ( æ’ , cÚ¡ * äom , 247 * to , RSA * r§ , ·ddšg ); 248  RSA_´iv©e_’üy± ( æ’ , cÚ¡ * äom , 249 * to , RSA * r§ , ·ddšg ); 250  RSA_public_deüy± ( æ’ , cÚ¡ * äom , 251 * to , RSA * r§ , ·ddšg ); 252  RSA_´iv©e_deüy± ( æ’ , cÚ¡ * äom , 253 * to , RSA * r§ , ·ddšg ); 254  RSA_ä“ ( RSA * r ); 256  RSA_up_»f ( RSA * r ); 258  RSA_æags (cÚ¡ RSA * r ); 260  RSA_£t_deçuÉ_m‘hod (cÚ¡ RSA_METHOD * m‘h ); 261 cÚ¡ RSA_METHOD * RSA_g‘_deçuÉ_m‘hod (); 262 cÚ¡ RSA_METHOD * RSA_g‘_m‘hod (cÚ¡ RSA * r§ ); 263  RSA_£t_m‘hod ( RSA * r§ , cÚ¡ RSA_METHOD * m‘h ); 266  RSA_memÜy_lock ( RSA * r ); 269 cÚ¡ RSA_METHOD * RSA_PKCS1_SSL—y (); 271 cÚ¡ RSA_METHOD * RSA_nuÎ_m‘hod (); 273 DECLARE_ASN1_ENCODE_FUNCTIONS_cÚ¡ ( RSA , RSAPublicKey ) 274 DECLARE_ASN1_ENCODE_FUNCTIONS_cÚ¡ ( RSA , RSAPriv©eKey ) 276 #iâdeà OPENSSL_NO_FP_API 277  RSA_´št_å ( FILE * å , cÚ¡ RSA * r , off£t ); 280 #iâdeà OPENSSL_NO_BIO 281  RSA_´št ( BIO * bp , cÚ¡ RSA * r , off£t ); 284  i2d_RSA_NET (cÚ¡ RSA * a , ** µ , 285 (* cb )(* buf ,  Ën , cÚ¡ * ´om± ,  v”ify ), 286  sgckey ); 287 RSA * d2i_RSA_NET (RSA ** a , cÚ¡ ** µ ,  Ëngth , 288 (* cb )(* buf ,  Ën , cÚ¡ * ´om± ,  v”ify ), 289  sgckey ); 291  i2d_N‘sÿ³_RSA (cÚ¡ RSA * a , ** µ , 292 (* cb )(* buf ,  Ën , cÚ¡ * ´om± , 293  v”ify )); 294 RSA * d2i_N‘sÿ³_RSA (RSA ** a , cÚ¡ ** µ ,  Ëngth , 295 (* cb )(* buf ,  Ën , cÚ¡ * ´om± , 296  v”ify )); 300  RSA_sign ( ty³ , cÚ¡ * m ,  m_Ëngth , 301 * sig»t , * sigËn , RSA * r§ ); 302  RSA_v”ify ( ty³ , cÚ¡ * m ,  m_Ëngth , 303 * sigbuf ,  sigËn , RSA * r§ ); 307  RSA_sign_ASN1_OCTET_STRING ( ty³ , 308 cÚ¡ * m ,  m_Ëngth , 309 * sig»t , * sigËn , RSA * r§ ); 310  RSA_v”ify_ASN1_OCTET_STRING ( ty³ , 311 cÚ¡ * m ,  m_Ëngth , 312 * sigbuf ,  sigËn , RSA * r§ ); 314  RSA_blšdšg_Ú ( RSA * r§ , BN_CTX * ùx ); 315  RSA_blšdšg_off ( RSA * r§ ); 316 BN_BLINDING * RSA_£tup_blšdšg ( RSA * r§ , BN_CTX * ùx ); 318  RSA_·ddšg_add_PKCS1_ty³_1 (* to , Ž’ , 319 cÚ¡ * f , æ ); 320  RSA_·ddšg_check_PKCS1_ty³_1 (* to , Ž’ , 321 cÚ¡ * f , æ , r§_Ën ); 322  RSA_·ddšg_add_PKCS1_ty³_2 (* to , Ž’ , 323 cÚ¡ * f , æ ); 324  RSA_·ddšg_check_PKCS1_ty³_2 (* to , Ž’ , 325 cÚ¡ * f , æ , r§_Ën ); 326  PKCS1_MGF1 (* mask ,  Ën , 327 cÚ¡ * £ed ,  £edËn , cÚ¡ EVP_MD * dg¡ ); 328  RSA_·ddšg_add_PKCS1_OAEP (* to , Ž’ , 329 cÚ¡ * f , æ , 330 cÚ¡ * p , ¶ ); 331  RSA_·ddšg_check_PKCS1_OAEP (* to , Ž’ , 332 cÚ¡ * f , æ , r§_Ën , 333 cÚ¡ * p , ¶ ); 334  RSA_·ddšg_add_SSLv23 (* to , Ž’ , 335 cÚ¡ * f , æ ); 336  RSA_·ddšg_check_SSLv23 (* to , Ž’ , 337 cÚ¡ * f , æ , r§_Ën ); 338  RSA_·ddšg_add_nÚe (* to , Ž’ , 339 cÚ¡ * f , æ ); 340  RSA_·ddšg_check_nÚe (* to , Ž’ , 341 cÚ¡ * f , æ , r§_Ën ); 342  RSA_·ddšg_add_X931 (* to , Ž’ , 343 cÚ¡ * f , æ ); 344  RSA_·ddšg_check_X931 (* to , Ž’ , 345 cÚ¡ * f , æ , r§_Ën ); 346  RSA_X931_hash_id ( nid ); 348  RSA_v”ify_PKCS1_PSS ( RSA * r§ , cÚ¡ * mHash , 349 cÚ¡ EVP_MD * Hash , cÚ¡ * EM ,  sL’ ); 350  RSA_·ddšg_add_PKCS1_PSS ( RSA * r§ , * EM , 351 cÚ¡ * mHash , 352 cÚ¡ EVP_MD * Hash ,  sL’ ); 354  RSA_g‘_ex_Ãw_šdex ( ¬gl , * ¬gp , CRYPTO_EX_Ãw * Ãw_func , 355 CRYPTO_EX_dup * dup_func , CRYPTO_EX_ä“ * ä“_func ); 356  RSA_£t_ex_d©a ( RSA * r , idx ,* ¬g ); 357 * RSA_g‘_ex_d©a (cÚ¡ RSA * r ,  idx ); 359 RSA * RSAPublicKey_dup (RSA * r§ ); 360 RSA * RSAPriv©eKey_dup (RSA * r§ ); 366  ERR_lßd_RSA_¡ršgs (); 371  #RSA_F_MEMORY_LOCK 100 ) 372  #RSA_F_RSA_BUILTIN_KEYGEN 129 ) 373  #RSA_F_RSA_CHECK_KEY 123 ) 374  #RSA_F_RSA_EAY_PRIVATE_DECRYPT 101 ) 375  #RSA_F_RSA_EAY_PRIVATE_ENCRYPT 102 ) 376  #RSA_F_RSA_EAY_PUBLIC_DECRYPT 103 ) 377  #RSA_F_RSA_EAY_PUBLIC_ENCRYPT 104 ) 378  #RSA_F_RSA_GENERATE_KEY 105 ) 379  #RSA_F_RSA_MEMORY_LOCK 130 ) 380  #RSA_F_RSA_NEW_METHOD 106 ) 381  #RSA_F_RSA_NULL 124 ) 382  #RSA_F_RSA_NULL_MOD_EXP 131 ) 383  #RSA_F_RSA_NULL_PRIVATE_DECRYPT 132 ) 384  #RSA_F_RSA_NULL_PRIVATE_ENCRYPT 133 ) 385  #RSA_F_RSA_NULL_PUBLIC_DECRYPT 134 ) 386  #RSA_F_RSA_NULL_PUBLIC_ENCRYPT 135 ) 387  #RSA_F_RSA_PADDING_ADD_NONE 107 ) 388  #RSA_F_RSA_PADDING_ADD_PKCS1_OAEP 121 ) 389  #RSA_F_RSA_PADDING_ADD_PKCS1_PSS 125 ) 390  #RSA_F_RSA_PADDING_ADD_PKCS1_TYPE_1 108 ) 391  #RSA_F_RSA_PADDING_ADD_PKCS1_TYPE_2 109 ) 392  #RSA_F_RSA_PADDING_ADD_SSLV23 110 ) 393  #RSA_F_RSA_PADDING_ADD_X931 127 ) 394  #RSA_F_RSA_PADDING_CHECK_NONE 111 ) 395  #RSA_F_RSA_PADDING_CHECK_PKCS1_OAEP 122 ) 396  #RSA_F_RSA_PADDING_CHECK_PKCS1_TYPE_1 112 ) 397  #RSA_F_RSA_PADDING_CHECK_PKCS1_TYPE_2 113 ) 398  #RSA_F_RSA_PADDING_CHECK_SSLV23 114 ) 399  #RSA_F_RSA_PADDING_CHECK_X931 128 ) 400  #RSA_F_RSA_PRINT 115 ) 401  #RSA_F_RSA_PRINT_FP 116 ) 402  #RSA_F_RSA_SETUP_BLINDING 136 ) 403  #RSA_F_RSA_SIGN 117 ) 404  #RSA_F_RSA_SIGN_ASN1_OCTET_STRING 118 ) 405  #RSA_F_RSA_VERIFY 119 ) 406  #RSA_F_RSA_VERIFY_ASN1_OCTET_STRING 120 ) 407  #RSA_F_RSA_VERIFY_PKCS1_PSS 126 ) 410  #RSA_R_ALGORITHM_MISMATCH 100 ) 411  #RSA_R_BAD_E_VALUE 101 ) 412  #RSA_R_BAD_FIXED_HEADER_DECRYPT 102 ) 413  #RSA_R_BAD_PAD_BYTE_COUNT 103 ) 414  #RSA_R_BAD_SIGNATURE 104 ) 415  #RSA_R_BLOCK_TYPE_IS_NOT_01 106 ) 416  #RSA_R_BLOCK_TYPE_IS_NOT_02 107 ) 417  #RSA_R_DATA_GREATER_THAN_MOD_LEN 108 ) 418  #RSA_R_DATA_TOO_LARGE 109 ) 419  #RSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE 110 ) 420  #RSA_R_DATA_TOO_LARGE_FOR_MODULUS 132 ) 421  #RSA_R_DATA_TOO_SMALL 111 ) 422  #RSA_R_DATA_TOO_SMALL_FOR_KEY_SIZE 122 ) 423  #RSA_R_DIGEST_TOO_BIG_FOR_RSA_KEY 112 ) 424  #RSA_R_DMP1_NOT_CONGRUENT_TO_D 124 ) 425  #RSA_R_DMQ1_NOT_CONGRUENT_TO_D 125 ) 426  #RSA_R_D_E_NOT_CONGRUENT_TO_1 123 ) 427  #RSA_R_FIRST_OCTET_INVALID 133 ) 428  #RSA_R_INVALID_HEADER 137 ) 429  #RSA_R_INVALID_MESSAGE_LENGTH 131 ) 430  #RSA_R_INVALID_PADDING 138 ) 431  #RSA_R_INVALID_TRAILER 139 ) 432  #RSA_R_IQMP_NOT_INVERSE_OF_Q 126 ) 433  #RSA_R_KEY_SIZE_TOO_SMALL 120 ) 434  #RSA_R_LAST_OCTET_INVALID 134 ) 435  #RSA_R_MODULUS_TOO_LARGE 105 ) 436  #RSA_R_NO_PUBLIC_EXPONENT 140 ) 437  #RSA_R_NULL_BEFORE_BLOCK_MISSING 113 ) 438  #RSA_R_N_DOES_NOT_EQUAL_P_Q 127 ) 439  #RSA_R_OAEP_DECODING_ERROR 121 ) 440  #RSA_R_PADDING_CHECK_FAILED 114 ) 441  #RSA_R_P_NOT_PRIME 128 ) 442  #RSA_R_Q_NOT_PRIME 129 ) 443  #RSA_R_RSA_OPERATIONS_NOT_SUPPORTED 130 ) 444  #RSA_R_SLEN_CHECK_FAILED 136 ) 445  #RSA_R_SLEN_RECOVERY_FAILED 135 ) 446  #RSA_R_SSLV3_ROLLBACK_ATTACK 115 ) 447  #RSA_R_THE_ASN1_OBJECT_IDENTIFIER_IS_NOT_KNOWN_FOR_THIS_MD 116 ) 448  #RSA_R_UNKNOWN_ALGORITHM_TYPE 117 ) 449  #RSA_R_UNKNOWN_PADDING_TYPE 118 ) 450  #RSA_R_WRONG_SIGNATURE_LENGTH 119 ) 452 #ifdeà __ýlu¥lus @/usr/include/openssl/sha.h 59 #iâdeà HEADER_SHA_H 60  #HEADER_SHA_H ) 62  ~<¡ddef.h > 63  ~<Ý’s¦/e_os2.h > 64  ~<¡ddef.h > 66 #ifdeà __ýlu¥lus 70 #ià defšed ( OPENSSL_NO_SHA è|| (defšed( OPENSSL_NO_SHA0 è&& defšed( OPENSSL_NO_SHA1 )) 71 #”rÜ SHA is di§bËd . 74 #ià defšed ( OPENSSL_FIPS ) 75  #FIPS_SHA_SIZE_T size_t ) 85 #ià defšed ( OPENSSL_SYS_WIN16 è|| defšed( __LP32__ ) 86  #SHA_LONG  ) 87 #–ià defšed ( OPENSSL_SYS_CRAY è|| defšed( __ILP64__ ) 88  #SHA_LONG  ) 89  #SHA_LONG_LOG2 3 ) 91  #SHA_LONG  ) 94  #SHA_LBLOCK 16 ) 95  #SHA_CBLOCK ( SHA_LBLOCK *4è ) 98  #SHA_LAST_BLOCK ( SHA_CBLOCK -8) ) 99  #SHA_DIGEST_LENGTH 20 ) 101  sSHA¡©e_¡ 103 SHA_LONG h0 , h1 , h2 , h3 , h4 ; 104 SHA_LONG Nl , Nh ; 105 SHA_LONG d©a [ SHA_LBLOCK ]; 106  num ; 107 } tSHA_CTX ; 109 #iâdeà OPENSSL_NO_SHA0 110  SHA_In™ ( SHA_CTX * c ); 111  SHA_Upd©e ( SHA_CTX * c , cÚ¡ * d©a , size_t Ën ); 112  SHA_Fš® (* md , SHA_CTX * c ); 113 * SHA (cÚ¡ * d , size_t n , * md ); 114  SHA_T¿nsfÜm ( SHA_CTX * c , cÚ¡ * d©a ); 116 #iâdeà OPENSSL_NO_SHA1 117  SHA1_In™ ( SHA_CTX * c ); 118  SHA1_Upd©e ( SHA_CTX * c , cÚ¡ * d©a , size_t Ën ); 119  SHA1_Fš® (* md , SHA_CTX * c ); 120 * SHA1 (cÚ¡ * d , size_t n , * md ); 121  SHA1_T¿nsfÜm ( SHA_CTX * c , cÚ¡ * d©a ); 124  #SHA256_CBLOCK ( SHA_LBLOCK *4è ) 127  #SHA224_DIGEST_LENGTH 28 ) 128  #SHA256_DIGEST_LENGTH 32 ) 130  sSHA256¡©e_¡ 132 SHA_LONG h [8]; 133 SHA_LONG Nl , Nh ; 134 SHA_LONG d©a [ SHA_LBLOCK ]; 135  num , md_Ën ; 136 } tSHA256_CTX ; 138 #iâdeà OPENSSL_NO_SHA256 139  SHA224_In™ ( SHA256_CTX * c ); 140  SHA224_Upd©e ( SHA256_CTX * c , cÚ¡ * d©a , size_t Ën ); 141  SHA224_Fš® (* md , SHA256_CTX * c ); 142 * SHA224 (cÚ¡ * d , size_t n ,* md ); 143  SHA256_In™ ( SHA256_CTX * c ); 144  SHA256_Upd©e ( SHA256_CTX * c , cÚ¡ * d©a , size_t Ën ); 145  SHA256_Fš® (* md , SHA256_CTX * c ); 146 * SHA256 (cÚ¡ * d , size_t n ,* md ); 147  SHA256_T¿nsfÜm ( SHA256_CTX * c , cÚ¡ * d©a ); 150  #SHA384_DIGEST_LENGTH 48 ) 151  #SHA512_DIGEST_LENGTH 64 ) 153 #iâdeà OPENSSL_NO_SHA512 159  #SHA512_CBLOCK ( SHA_LBLOCK *8è ) 162 #ià( defšed ( _WIN32 è|| defšed( _WIN64 )è&& !defšed( __MINGW32__ ) 163  #SHA_LONG64  __št64 ) 164  #U64 ( C èC## UI64 ) 165 #–ià defšed ( __¬ch64__ ) 166  #SHA_LONG64  ) 167  #U64 ( C èC## UL ) 169  #SHA_LONG64  ) 170  #U64 ( C èC## ULL ) 173  sSHA512¡©e_¡ 175 SHA_LONG64 h [8]; 176 SHA_LONG64 Nl , Nh ; 178 SHA_LONG64 d [ SHA_LBLOCK ]; 179  p [ SHA512_CBLOCK ]; 180 } u ; 181  num , md_Ën ; 182 } tSHA512_CTX ; 185 #iâdeà OPENSSL_NO_SHA512 186  SHA384_In™ ( SHA512_CTX * c ); 187  SHA384_Upd©e ( SHA512_CTX * c , cÚ¡ * d©a , size_t Ën ); 188  SHA384_Fš® (* md , SHA512_CTX * c ); 189 * SHA384 (cÚ¡ * d , size_t n ,* md ); 190  SHA512_In™ ( SHA512_CTX * c ); 191  SHA512_Upd©e ( SHA512_CTX * c , cÚ¡ * d©a , size_t Ën ); 192  SHA512_Fš® (* md , SHA512_CTX * c ); 193 * SHA512 (cÚ¡ * d , size_t n ,* md ); 194  SHA512_T¿nsfÜm ( SHA512_CTX * c , cÚ¡ * d©a ); 197 #ifdeà __ýlu¥lus @/usr/include/openssl/stack.h 59 #iâdeà HEADER_STACK_H 60  #HEADER_STACK_H ) 62 #ifdeà __ýlu¥lus 66  s¡ack_¡ 68  num ; 69 ** d©a ; 70  sÜ‹d ; 72  num_®loc ; 73 (* comp )(const * const *, const * const *); 74 } tSTACK ; 76  #M_sk_num ( sk è((skè? (sk)-> num :-1) ) 77  #M_sk_v®ue ( sk , n è((skè? (sk)-> d©a [n] : NULL ) ) 79  sk_num (cÚ¡ STACK *); 80 * sk_v®ue (cÚ¡ STACK *, ); 82 * sk_£t ( STACK *, , *); 84 STACK * sk_Ãw ((* cmp )(const * const *, const * const *)); 85 STACK * sk_Ãw_nuÎ (); 86  sk_ä“ ( STACK *); 87  sk_pÝ_ä“ ( STACK * ¡ , (* func )(*)); 88  sk_š£¹ ( STACK * sk ,* d©a , wh”e ); 89 * sk_d–‘e ( STACK * ¡ , loc ); 90 * sk_d–‘e_±r ( STACK * ¡ , * p ); 91  sk_fšd ( STACK * ¡ ,* d©a ); 92  sk_fšd_ex ( STACK * ¡ ,* d©a ); 93  sk_push ( STACK * ¡ ,* d©a ); 94  sk_unshiá ( STACK * ¡ ,* d©a ); 95 * sk_shiá ( STACK * ¡ ); 96 * sk_pÝ ( STACK * ¡ ); 97  sk_z”o ( STACK * ¡ ); 98 (* sk_£t_cmp_func ( STACK * sk , (* c )(const * const *, 101 STACK * sk_dup (STACK * ¡ ); 102  sk_sÜt ( STACK * ¡ ); 103  sk_is_sÜ‹d (cÚ¡ STACK * ¡ ); 105 #ifdeà __ýlu¥lus @/usr/include/openssl/x509_vfy.h 59 #iâdeà HEADER_X509_H 60  ~<Ý’s¦/x509.h > 65 #iâdeà HEADER_X509_VFY_H 66  #HEADER_X509_VFY_H ) 68  ~<Ý’s¦/Ý’s¦cÚf.h > 69 #iâdeà OPENSSL_NO_LHASH 70  ~<Ý’s¦/lhash.h > 72  ~<Ý’s¦/bio.h > 73  ~<Ý’s¦/üy±o.h > 74  ~<Ý’s¦/symhacks.h > 76 #ifdeà __ýlu¥lus 81  sx509_hash_dœ_¡ 83  num_dœs ; 84 ** dœs ; 85 * dœs_ty³ ; 86  num_dœs_®loûd ; 87 } tX509_HASH_DIR_CTX ; 89  sx509_fže_¡ 91  num_·ths ; 92  num_®loûd ; 93 ** ·ths ; 94 * ·th_ty³ ; 95 } tX509_CERT_FILE_CTX ; 115  #X509_LU_RETRY -1 ) 116  #X509_LU_FAIL 0 ) 117  #X509_LU_X509 1 ) 118  #X509_LU_CRL 2 ) 119  #X509_LU_PKEY 3 ) 121  sx509_objeù_¡ 124  ty³ ; 126 * ±r ; 127 X509 * x509 ; 128 X509_CRL * ül ; 129 EVP_PKEY * pkey ; 130 } d©a ; 131 } tX509_OBJECT ; 133  x509_lookup_¡ tX509_LOOKUP ; 135 DECLARE_STACK_OF ( X509_LOOKUP ) 136 DECLARE_STACK_OF ( X509_OBJECT ) 139  sx509_lookup_m‘hod_¡ 141 cÚ¡ * Çme ; 142 (* Ãw_™em )( X509_LOOKUP * ùx ); 143 (* ä“ )( X509_LOOKUP * ùx ); 144 (* š™ )( X509_LOOKUP * ùx ); 145 (* shutdown )( X509_LOOKUP * ùx ); 146 (* ù¾ )( X509_LOOKUP * ùx , cmd ,cÚ¡ * ¬gc , ¬gl , 147 ** »t ); 148 (* g‘_by_subjeù )( X509_LOOKUP * ùx , ty³ , X509_NAME * Çme , 149 X509_OBJECT * »t ); 150 (* g‘_by_issu”_£rŸl )( X509_LOOKUP * ùx , ty³ , X509_NAME * Çme , 151 ASN1_INTEGER * £rŸl , X509_OBJECT * »t ); 152 (* g‘_by_fšg”´št )( X509_LOOKUP * ùx , ty³ , 153 * by‹s , Ën , 154 X509_OBJECT * »t ); 155 (* g‘_by_®Ÿs )( X509_LOOKUP * ùx , ty³ ,* ¡r , Ën , 156 X509_OBJECT * »t ); 157 } tX509_LOOKUP_METHOD ; 164  sX509_VERIFY_PARAM_¡ 166 * Çme ; 167 time_t check_time ; 168  šh_æags ; 169  æags ; 170  pu½o£ ; 171  Œu¡ ; 172  d•th ; 173 STACK_OF ( ASN1_OBJECT è* pÞic›s ; 174 } tX509_VERIFY_PARAM ; 176 DECLARE_STACK_OF ( X509_VERIFY_PARAM ) 181  sx509_¡Üe_¡ 184  ÿche ; 185 STACK_OF ( X509_OBJECT è* objs ; 188 STACK_OF ( X509_LOOKUP è* g‘_û¹_m‘hods ; 190 X509_VERIFY_PARAM * ·¿m ; 193 (* v”ify )( X509_STORE_CTX * ùx ); 194 (* v”ify_cb )( ok , X509_STORE_CTX * ùx ); 195 (* g‘_issu” )( X509 ** issu” , X509_STORE_CTX * ùx , X509 * x ); 196 (* check_issued )( X509_STORE_CTX * ùx , X509 * x , X509 * issu” ); 197 (* check_»voÿtiÚ )( X509_STORE_CTX * ùx ); 198 (* g‘_ül )( X509_STORE_CTX * ùx , X509_CRL ** ül , X509 * x ); 199 (* check_ül )( X509_STORE_CTX * ùx , X509_CRL * ül ); 200 (* û¹_ül )( X509_STORE_CTX * ùx , X509_CRL * ül , X509 * x ); 201 (* þ—nup )( X509_STORE_CTX * ùx ); 203 CRYPTO_EX_DATA ex_d©a ; 204  »ã»nûs ; 207  X509_STORE_£t_d•th ( X509_STORE * ¡Üe ,  d•th ); 209  #X509_STORE_£t_v”ify_cb_func ( ùx , func è((ùx)-> v”ify_cb =(func)) ) 210  #X509_STORE_£t_v”ify_func ( ùx , func è((ùx)-> v”ify =(func)) ) 213  sx509_lookup_¡ 215  š™ ; 216  sk ; 217 X509_LOOKUP_METHOD * m‘hod ; 218 * m‘hod_d©a ; 220 X509_STORE * ¡Üe_ùx ; 226  sx509_¡Üe_ùx_¡ 228 X509_STORE * ùx ; 229  cu¼’t_m‘hod ; 232 X509 * û¹ ; 233 STACK_OF ( X509 è* uÁru¡ed ; 234 STACK_OF ( X509_CRL è* üls ; 236 X509_VERIFY_PARAM * ·¿m ; 237 * Ùh”_ùx ; 240 (* v”ify )( X509_STORE_CTX * ùx ); 241 (* v”ify_cb )( ok , X509_STORE_CTX * ùx ); 242 (* g‘_issu” )( X509 ** issu” , X509_STORE_CTX * ùx , X509 * x ); 243 (* check_issued )( X509_STORE_CTX * ùx , X509 * x , X509 * issu” ); 244 (* check_»voÿtiÚ )( X509_STORE_CTX * ùx ); 245 (* g‘_ül )( X509_STORE_CTX * ùx , X509_CRL ** ül , X509 * x ); 246 (* check_ül )( X509_STORE_CTX * ùx , X509_CRL * ül ); 247 (* û¹_ül )( X509_STORE_CTX * ùx , X509_CRL * ül , X509 * x ); 248 (* check_pÞicy )( X509_STORE_CTX * ùx ); 249 (* þ—nup )( X509_STORE_CTX * ùx ); 252  v®id ; 253  Ï¡_uÁru¡ed ; 254 STACK_OF ( X509 è* chaš ; 255 X509_POLICY_TREE * Œ“ ; 257  ex¶ic™_pÞicy ; 260  ”rÜ_d•th ; 261  ”rÜ ; 262 X509 * cu¼’t_û¹ ; 263 X509 * cu¼’t_issu” ; 264 X509_CRL * cu¼’t_ül ; 266 CRYPTO_EX_DATA ex_d©a ; 269  X509_STORE_CTX_£t_d•th ( X509_STORE_CTX * ùx ,  d•th ); 271  #X509_STORE_CTX_£t_­p_d©a ( ùx , d©a ) \ 272 `X509_STORE_CTX_£t_ex_d©a ( ùx ,0, d©a ) ) 273  #X509_STORE_CTX_g‘_­p_d©a ( ùx ) \ 274 `X509_STORE_CTX_g‘_ex_d©a ( ùx ,0) ) 276  #X509_L_FILE_LOAD 1 ) 277  #X509_L_ADD_DIR 2 ) 279  #X509_LOOKUP_lßd_fže ( x , Çme , ty³ ) \ 280 `X509_LOOKUP_ù¾ (( x ), X509_L_FILE_LOAD ,( Çme ),()( ty³ ), NULL ) ) 282  #X509_LOOKUP_add_dœ ( x , Çme , ty³ ) \ 283 `X509_LOOKUP_ù¾ (( x ), X509_L_ADD_DIR ,( Çme ),()( ty³ ), NULL ) ) 285  #X509_V_OK 0 ) 288  #X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT 2 ) 289  #X509_V_ERR_UNABLE_TO_GET_CRL 3 ) 290  #X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE 4 ) 291  #X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE 5 ) 292  #X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY 6 ) 293  #X509_V_ERR_CERT_SIGNATURE_FAILURE 7 ) 294  #X509_V_ERR_CRL_SIGNATURE_FAILURE 8 ) 295  #X509_V_ERR_CERT_NOT_YET_VALID 9 ) 296  #X509_V_ERR_CERT_HAS_EXPIRED 10 ) 297  #X509_V_ERR_CRL_NOT_YET_VALID 11 ) 298  #X509_V_ERR_CRL_HAS_EXPIRED 12 ) 299  #X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD 13 ) 300  #X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD 14 ) 301  #X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD 15 ) 302  #X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD 16 ) 303  #X509_V_ERR_OUT_OF_MEM 17 ) 304  #X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT 18 ) 305  #X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN 19 ) 306  #X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY 20 ) 307  #X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE 21 ) 308  #X509_V_ERR_CERT_CHAIN_TOO_LONG 22 ) 309  #X509_V_ERR_CERT_REVOKED 23 ) 310  #X509_V_ERR_INVALID_CA 24 ) 311  #X509_V_ERR_PATH_LENGTH_EXCEEDED 25 ) 312  #X509_V_ERR_INVALID_PURPOSE 26 ) 313  #X509_V_ERR_CERT_UNTRUSTED 27 ) 314  #X509_V_ERR_CERT_REJECTED 28 ) 316  #X509_V_ERR_SUBJECT_ISSUER_MISMATCH 29 ) 317  #X509_V_ERR_AKID_SKID_MISMATCH 30 ) 318  #X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH 31 ) 319  #X509_V_ERR_KEYUSAGE_NO_CERTSIGN 32 ) 321  #X509_V_ERR_UNABLE_TO_GET_CRL_ISSUER 33 ) 322  #X509_V_ERR_UNHANDLED_CRITICAL_EXTENSION 34 ) 323  #X509_V_ERR_KEYUSAGE_NO_CRL_SIGN 35 ) 324  #X509_V_ERR_UNHANDLED_CRITICAL_CRL_EXTENSION 36 ) 325  #X509_V_ERR_INVALID_NON_CA 37 ) 326  #X509_V_ERR_PROXY_PATH_LENGTH_EXCEEDED 38 ) 327  #X509_V_ERR_KEYUSAGE_NO_DIGITAL_SIGNATURE 39 ) 328  #X509_V_ERR_PROXY_CERTIFICATES_NOT_ALLOWED 40 ) 330  #X509_V_ERR_INVALID_EXTENSION 41 ) 331  #X509_V_ERR_INVALID_POLICY_EXTENSION 42 ) 332  #X509_V_ERR_NO_EXPLICIT_POLICY 43 ) 334  #X509_V_ERR_UNNESTED_RESOURCE 44 ) 337  #X509_V_ERR_APPLICATION_VERIFICATION 50 ) 342  #X509_V_FLAG_CB_ISSUER_CHECK 0x1 ) 344  #X509_V_FLAG_USE_CHECK_TIME 0x2 ) 346  #X509_V_FLAG_CRL_CHECK 0x4 ) 348  #X509_V_FLAG_CRL_CHECK_ALL 0x8 ) 350  #X509_V_FLAG_IGNORE_CRITICAL 0x10 ) 352  #X509_V_FLAG_X509_STRICT 0x20 ) 354  #X509_V_FLAG_ALLOW_PROXY_CERTS 0x40 ) 356  #X509_V_FLAG_POLICY_CHECK 0x80 ) 358  #X509_V_FLAG_EXPLICIT_POLICY 0x100 ) 360  #X509_V_FLAG_INHIBIT_ANY 0x200 ) 362  #X509_V_FLAG_INHIBIT_MAP 0x400 ) 364  #X509_V_FLAG_NOTIFY_POLICY 0x800 ) 366  #X509_VP_FLAG_DEFAULT 0x1 ) 367  #X509_VP_FLAG_OVERWRITE 0x2 ) 368  #X509_VP_FLAG_RESET_FLAGS 0x4 ) 369  #X509_VP_FLAG_LOCKED 0x8 ) 370  #X509_VP_FLAG_ONCE 0x10 ) 373  #X509_V_FLAG_POLICY_MASK ( X509_V_FLAG_POLICY_CHECK \ 374 | X509_V_FLAG_EXPLICIT_POLICY \ 375 | X509_V_FLAG_INHIBIT_ANY \ 376 | X509_V_FLAG_INHIBIT_MAP ) ) 378  X509_OBJECT_idx_by_subjeù ( STACK_OF ( X509_OBJECT è* h ,  ty³ , 379 X509_NAME * Çme ); 380 X509_OBJECT * X509_OBJECT_»Œ›ve_by_subjeù ( STACK_OF (X509_OBJECTè* h , ty³ , X509_NAME * Çme ); 381 X509_OBJECT * X509_OBJECT_»Œ›ve_m©ch ( STACK_OF (X509_OBJECTè* h , X509_OBJECT * x ); 382  X509_OBJECT_up_»f_couÁ ( X509_OBJECT * a ); 383  X509_OBJECT_ä“_cÚ‹Ás ( X509_OBJECT * a ); 384 X509_STORE * X509_STORE_Ãw (); 385  X509_STORE_ä“ ( X509_STORE * v ); 387  X509_STORE_£t_æags ( X509_STORE * ùx ,  æags ); 388  X509_STORE_£t_pu½o£ ( X509_STORE * ùx ,  pu½o£ ); 389  X509_STORE_£t_Œu¡ ( X509_STORE * ùx ,  Œu¡ ); 390  X509_STORE_£t1_·¿m ( X509_STORE * ùx , X509_VERIFY_PARAM * pm ); 392 X509_STORE_CTX * X509_STORE_CTX_Ãw (); 394  X509_STORE_CTX_g‘1_issu” ( X509 ** issu” , X509_STORE_CTX * ùx , X509 * x ); 396  X509_STORE_CTX_ä“ ( X509_STORE_CTX * ùx ); 397  X509_STORE_CTX_š™ ( X509_STORE_CTX * ùx , X509_STORE * ¡Üe , 398 X509 * x509 , STACK_OF (X509è* chaš ); 399  X509_STORE_CTX_Œu¡ed_¡ack ( X509_STORE_CTX * ùx , STACK_OF ( X509 è* sk ); 400  X509_STORE_CTX_þ—nup ( X509_STORE_CTX * ùx ); 402 X509_LOOKUP * X509_STORE_add_lookup ( X509_STORE * v , X509_LOOKUP_METHOD * m ); 404 X509_LOOKUP_METHOD * X509_LOOKUP_hash_dœ (); 405 X509_LOOKUP_METHOD * X509_LOOKUP_fže (); 407  X509_STORE_add_û¹ ( X509_STORE * ùx , X509 * x ); 408  X509_STORE_add_ül ( X509_STORE * ùx , X509_CRL * x ); 410  X509_STORE_g‘_by_subjeù ( X509_STORE_CTX * vs , ty³ , X509_NAME * Çme , 411 X509_OBJECT * »t ); 413  X509_LOOKUP_ù¾ ( X509_LOOKUP * ùx ,  cmd , cÚ¡ * ¬gc , 414  ¬gl , ** »t ); 416 #iâdeà OPENSSL_NO_STDIO 417  X509_lßd_û¹_fže ( X509_LOOKUP * ùx , cÚ¡ * fže ,  ty³ ); 418  X509_lßd_ül_fže ( X509_LOOKUP * ùx , cÚ¡ * fže ,  ty³ ); 419  X509_lßd_û¹_ül_fže ( X509_LOOKUP * ùx , cÚ¡ * fže ,  ty³ ); 423 X509_LOOKUP * X509_LOOKUP_Ãw ( X509_LOOKUP_METHOD * m‘hod ); 424  X509_LOOKUP_ä“ ( X509_LOOKUP * ùx ); 425  X509_LOOKUP_š™ ( X509_LOOKUP * ùx ); 426  X509_LOOKUP_by_subjeù ( X509_LOOKUP * ùx ,  ty³ , X509_NAME * Çme , 427 X509_OBJECT * »t ); 428  X509_LOOKUP_by_issu”_£rŸl ( X509_LOOKUP * ùx ,  ty³ , X509_NAME * Çme , 429 ASN1_INTEGER * £rŸl , X509_OBJECT * »t ); 430  X509_LOOKUP_by_fšg”´št ( X509_LOOKUP * ùx ,  ty³ , 431 * by‹s ,  Ën , X509_OBJECT * »t ); 432  X509_LOOKUP_by_®Ÿs ( X509_LOOKUP * ùx ,  ty³ , * ¡r , 433  Ën , X509_OBJECT * »t ); 434  X509_LOOKUP_shutdown ( X509_LOOKUP * ùx ); 436 #iâdeà OPENSSL_NO_STDIO 437  X509_STORE_lßd_loÿtiÚs ( X509_STORE * ùx , 438 cÚ¡ * fže , cÚ¡ * dœ ); 439  X509_STORE_£t_deçuÉ_·ths ( X509_STORE * ùx ); 442  X509_STORE_CTX_g‘_ex_Ãw_šdex ( ¬gl , * ¬gp , CRYPTO_EX_Ãw * Ãw_func , 443 CRYPTO_EX_dup * dup_func , CRYPTO_EX_ä“ * ä“_func ); 444  X509_STORE_CTX_£t_ex_d©a ( X509_STORE_CTX * ùx , idx ,* d©a ); 445 * X509_STORE_CTX_g‘_ex_d©a ( X509_STORE_CTX * ùx , idx ); 446  X509_STORE_CTX_g‘_”rÜ ( X509_STORE_CTX * ùx ); 447  X509_STORE_CTX_£t_”rÜ ( X509_STORE_CTX * ùx , s ); 448  X509_STORE_CTX_g‘_”rÜ_d•th ( X509_STORE_CTX * ùx ); 449 X509 * X509_STORE_CTX_g‘_cu¼’t_û¹ ( X509_STORE_CTX * ùx ); 450 STACK_OF ( X509 è* X509_STORE_CTX_g‘_chaš ( X509_STORE_CTX * ùx ); 451 STACK_OF ( X509 è* X509_STORE_CTX_g‘1_chaš ( X509_STORE_CTX * ùx ); 452  X509_STORE_CTX_£t_û¹ ( X509_STORE_CTX * c , X509 * x ); 453  X509_STORE_CTX_£t_chaš ( X509_STORE_CTX * c , STACK_OF ( X509 è* sk ); 454  X509_STORE_CTX_£t0_üls ( X509_STORE_CTX * c , STACK_OF ( X509_CRL è* sk ); 455  X509_STORE_CTX_£t_pu½o£ ( X509_STORE_CTX * ùx ,  pu½o£ ); 456  X509_STORE_CTX_£t_Œu¡ ( X509_STORE_CTX * ùx ,  Œu¡ ); 457  X509_STORE_CTX_pu½o£_šh”™ ( X509_STORE_CTX * ùx ,  def_pu½o£ , 458  pu½o£ ,  Œu¡ ); 459  X509_STORE_CTX_£t_æags ( X509_STORE_CTX * ùx ,  æags ); 460  X509_STORE_CTX_£t_time ( X509_STORE_CTX * ùx ,  æags , 461 time_t t ); 462  X509_STORE_CTX_£t_v”ify_cb ( X509_STORE_CTX * ùx , 463 (* v”ify_cb )(, X509_STORE_CTX *)); 465 X509_POLICY_TREE * X509_STORE_CTX_g‘0_pÞicy_Œ“ ( X509_STORE_CTX * ùx ); 466  X509_STORE_CTX_g‘_ex¶ic™_pÞicy ( X509_STORE_CTX * ùx ); 468 X509_VERIFY_PARAM * X509_STORE_CTX_g‘0_·¿m ( X509_STORE_CTX * ùx ); 469  X509_STORE_CTX_£t0_·¿m ( X509_STORE_CTX * ùx , X509_VERIFY_PARAM * ·¿m ); 470  X509_STORE_CTX_£t_deçuÉ ( X509_STORE_CTX * ùx , cÚ¡ * Çme ); 474 X509_VERIFY_PARAM * X509_VERIFY_PARAM_Ãw (); 475  X509_VERIFY_PARAM_ä“ ( X509_VERIFY_PARAM * ·¿m ); 476  X509_VERIFY_PARAM_šh”™ ( X509_VERIFY_PARAM * to , 477 cÚ¡ X509_VERIFY_PARAM * äom ); 478  X509_VERIFY_PARAM_£t1 ( X509_VERIFY_PARAM * to , 479 cÚ¡ X509_VERIFY_PARAM * äom ); 480  X509_VERIFY_PARAM_£t1_Çme ( X509_VERIFY_PARAM * ·¿m , cÚ¡ * Çme ); 481  X509_VERIFY_PARAM_£t_æags ( X509_VERIFY_PARAM * ·¿m ,  æags ); 482  X509_VERIFY_PARAM_þ—r_æags ( X509_VERIFY_PARAM * ·¿m , 483  æags ); 484  X509_VERIFY_PARAM_g‘_æags ( X509_VERIFY_PARAM * ·¿m ); 485  X509_VERIFY_PARAM_£t_pu½o£ ( X509_VERIFY_PARAM * ·¿m ,  pu½o£ ); 486  X509_VERIFY_PARAM_£t_Œu¡ ( X509_VERIFY_PARAM * ·¿m ,  Œu¡ ); 487  X509_VERIFY_PARAM_£t_d•th ( X509_VERIFY_PARAM * ·¿m ,  d•th ); 488  X509_VERIFY_PARAM_£t_time ( X509_VERIFY_PARAM * ·¿m , time_t t ); 489  X509_VERIFY_PARAM_add0_pÞicy ( X509_VERIFY_PARAM * ·¿m , 490 ASN1_OBJECT * pÞicy ); 491  X509_VERIFY_PARAM_£t1_pÞic›s ( X509_VERIFY_PARAM * ·¿m , 492 STACK_OF ( ASN1_OBJECT è* pÞic›s ); 493  X509_VERIFY_PARAM_g‘_d•th (cÚ¡ X509_VERIFY_PARAM * ·¿m ); 495  X509_VERIFY_PARAM_add0_bË ( X509_VERIFY_PARAM * ·¿m ); 496 cÚ¡ X509_VERIFY_PARAM * X509_VERIFY_PARAM_lookup (cÚ¡ * Çme ); 497  X509_VERIFY_PARAM_bË_þ—nup (); 499  X509_pÞicy_check ( X509_POLICY_TREE ** ±»e , * ³x¶ic™_pÞicy , 500 STACK_OF ( X509 è* û¹s , 501 STACK_OF ( ASN1_OBJECT è* pÞicy_oids , 502  æags ); 504  X509_pÞicy_Œ“_ä“ ( X509_POLICY_TREE * Œ“ ); 506  X509_pÞicy_Œ“_Ëv–_couÁ (cÚ¡ X509_POLICY_TREE * Œ“ ); 507 X509_POLICY_LEVEL * 508 X509_pÞicy_Œ“_g‘0_Ëv– (cÚ¡ X509_POLICY_TREE * Œ“ ,  i ); 510 STACK_OF ( X509_POLICY_NODE ) * 511 X509_pÞicy_Œ“_g‘0_pÞic›s (cÚ¡ X509_POLICY_TREE * Œ“ ); 513 STACK_OF ( X509_POLICY_NODE ) * 514 X509_pÞicy_Œ“_g‘0_u£r_pÞic›s (cÚ¡ X509_POLICY_TREE * Œ“ ); 516  X509_pÞicy_Ëv–_node_couÁ ( X509_POLICY_LEVEL * Ëv– ); 518 X509_POLICY_NODE * X509_pÞicy_Ëv–_g‘0_node ( X509_POLICY_LEVEL * Ëv– ,  i ); 520 cÚ¡ ASN1_OBJECT * X509_pÞicy_node_g‘0_pÞicy (cÚ¡ X509_POLICY_NODE * node ); 522 STACK_OF ( POLICYQUALINFO ) * 523 X509_pÞicy_node_g‘0_qu®if›rs (cÚ¡ X509_POLICY_NODE * node ); 524 cÚ¡ X509_POLICY_NODE * 525 X509_pÞicy_node_g‘0_·»Á (cÚ¡ X509_POLICY_NODE * node ); 527 #ifdeà __ýlu¥lus @/usr/include/zlibdefs.h 6  ~ 7  ~ 8 #ifdeà VMS 9  ~ 11 #iâdeà z_off_t 12  #z_off_t off_t ) @/usr/include/asm/errno.h 1  ~ @/usr/include/asm/ioctl.h 1  ~ @/usr/include/asm/sockios.h 1 #iâdeà _ASM_X86_SOCKIOS_H 2  #_ASM_X86_SOCKIOS_H ) 5  #FIOSETOWN 0x8901 ) 6  #SIOCSPGRP 0x8902 ) 7  #FIOGETOWN 0x8903 ) 8  #SIOCGPGRP 0x8904 ) 9  #SIOCATMARK 0x8905 ) 10  #SIOCGSTAMP 0x8906 ) 11  #SIOCGSTAMPNS 0x8907 ) @/usr/include/bits/libc-lock.h 20 #iâdeà _BITS_LIBC_LOCK_H 21  #_BITS_LIBC_LOCK_H 1 ) 23  ~<±h»ad.h > 24  #__Ãed_NULL ) 25  ~<¡ddef.h > 34 #ifdeà _LIBC 35  ~ 36  ~<Žs.h > 37  ~<±h»ad-funùiÚs.h > 41 #ià defšed _LIBC || defšed _IO_MTSAFE_IO 42 #ià( defšed NOT_IN_libc && !defšed IS_IN_lib±h»ad è|| !defšed _LIBC 43  ±h»ad_mu‹x_t t__libc_lock_t ; 44 ¡ruù { ±h»ad_mu‹x_t mmu‹x ; } t__libc_lock_»cursive_t ; 46  t__libc_lock_t ; 47 ¡ruù {  mlock ;  mút ; * mowÃr ; } t__libc_lock_»cursive_t ; 49 ¡ruù { ±h»ad_mu‹x_t mmu‹x ; } t__¹ld_lock_»cursive_t ; 50 #ifdeà __USE_UNIX98 51  ±h»ad_rwlock_t t__libc_rwlock_t ; 53  __libc_rwlock_Ýaque__ t__libc_rwlock_t ; 56  __libc_lock_Ýaque__ t__libc_lock_t ; 57  __libc_lock_»cursive_Ýaque__ t__libc_lock_»cursive_t ; 58  __libc_rwlock_Ýaque__ t__libc_rwlock_t ; 62  ±h»ad_key_t t__libc_key_t ; 71  #__libc_lock_defše ( CLASS , NAME ) \ 72 CLASS __libc_lock_t NAME ; ) 73  #__libc_rwlock_defše ( CLASS , NAME ) \ 74 CLASS __libc_rwlock_t NAME ; ) 75  #__libc_lock_defše_»cursive ( CLASS , NAME ) \ 76 CLASS __libc_lock_»cursive_t NAME ; ) 77  #__¹ld_lock_defše_»cursive ( CLASS , NAME ) \ 78 CLASS __¹ld_lock_»cursive_t NAME ; ) 89 #ià defšed _LIBC && (!defšed NOT_IN_libc || defšed IS_IN_lib±h»ad ) 90 #ià LLL_LOCK_INITIALIZER == 0 91  #__libc_lock_defše_š™Ÿlized ( CLASS , NAME ) \ 92 CLASS __libc_lock_t NAME ; ) 94  #__libc_lock_defše_š™Ÿlized ( CLASS , NAME ) \ 95 CLASS __libc_lock_t NAME = LLL_LOCK_INITIALIZER ; ) 98 #ià __LT_SPINLOCK_INIT == 0 99  #__libc_lock_defše_š™Ÿlized ( CLASS , NAME ) \ 100 CLASS __libc_lock_t NAME ; ) 102  #__libc_lock_defše_š™Ÿlized ( CLASS , NAME ) \ 103 CLASS __libc_lock_t NAME = PTHREAD_MUTEX_INITIALIZER ; ) 107  #__libc_rwlock_defše_š™Ÿlized ( CLASS , NAME ) \ 108 CLASS __libc_rwlock_t NAME = PTHREAD_RWLOCK_INITIALIZER ; ) 112 #ià defšed _LIBC && (!defšed NOT_IN_libc || defšed IS_IN_lib±h»ad ) 113 #ià LLL_LOCK_INITIALIZER == 0 114  #__libc_lock_defše_š™Ÿlized_»cursive ( CLASS , NAME ) \ 115 CLASS __libc_lock_»cursive_t NAME ; ) 117  #__libc_lock_defše_š™Ÿlized_»cursive ( CLASS , NAME ) \ 118 CLASS __libc_lock_»cursive_t NAME = _LIBC_LOCK_RECURSIVE_INITIALIZER ; ) 120  #_LIBC_LOCK_RECURSIVE_INITIALIZER \ 121 { LLL_LOCK_INITIALIZER , 0, NULL } ) 123  #__libc_lock_defše_š™Ÿlized_»cursive ( CLASS , NAME ) \ 124 CLASS __libc_lock_»cursive_t NAME = _LIBC_LOCK_RECURSIVE_INITIALIZER ; ) 125  #_LIBC_LOCK_RECURSIVE_INITIALIZER \ 126 { PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP } ) 129  #__¹ld_lock_defše_š™Ÿlized_»cursive ( CLASS , NAME ) \ 130 CLASS __¹ld_lock_»cursive_t NAME = _RTLD_LOCK_RECURSIVE_INITIALIZER ; ) 131  #_RTLD_LOCK_RECURSIVE_INITIALIZER \ 132 { PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP } ) 134  #__¹ld_lock_š™Ÿlize ( NAME ) \ 135 (è(( NAME èð( __¹ld_lock_»cursive_t è _RTLD_LOCK_RECURSIVE_INITIALIZER ) ) 142 #ifdeà __PIC__ 143  #__libc_maybe_ÿÎ ( FUNC , ARGS , ELSE ) \ 144 ( `__ex‹nsiÚ__ ({ `__ty³of ( FUNC è* _â = (FUNC); \ 145 _â !ð NULL ? (*_âè ARGS : ELSE ; })) ) 147  #__libc_maybe_ÿÎ ( FUNC , ARGS , ELSE ) \ 148 ( FUNC !ð NULL ? FUNC ARGS : ELSE ) ) 152 #ià defšed SHARED && !defšed NOT_IN_libc 153  #PTFAVAIL ( NAME è __libc_±h»ad_funùiÚs_š™ ) 154  #__libc_±f_ÿÎ ( FUNC , ARGS , ELSE ) \ 155 ( __libc_±h»ad_funùiÚs_š™ ? `PTHFCT_CALL ( ±r_ ## FUNC , ARGS è: ELSE ) ) 156  #__libc_±f_ÿÎ_®ways ( FUNC , ARGS ) \ 157 `PTHFCT_CALL ( ±r_ ## FUNC , ARGS ) ) 159  #PTFAVAIL ( NAME è(NAME !ð NULL ) ) 160  #__libc_±f_ÿÎ ( FUNC , ARGS , ELSE ) \ 161 `__libc_maybe_ÿÎ ( FUNC , ARGS , ELSE ) ) 162  #__libc_±f_ÿÎ_®ways ( FUNC , ARGS ) \ 163 FUNC ARGS ) 169 #ià defšed _LIBC && (!defšed NOT_IN_libc || defšed IS_IN_lib±h»ad ) 170  #__libc_lock_š™ ( NAME è((NAMEèð LLL_LOCK_INITIALIZER , 0) ) 172  #__libc_lock_š™ ( NAME ) \ 173 `__libc_maybe_ÿÎ ( __±h»ad_mu‹x_š™ , (&( NAME ), NULL ), 0) ) 175 #ià defšed SHARED && !defšed NOT_IN_libc 178  #__libc_rwlock_š™ ( NAME ) \ 179 ( `__bužtš_mem£t (&( NAME ), '\0',  (NAME)), 0) ) 181  #__libc_rwlock_š™ ( NAME ) \ 182 `__libc_maybe_ÿÎ ( __±h»ad_rwlock_š™ , (&( NAME ), NULL ), 0) ) 186 #ià defšed _LIBC && (!defšed NOT_IN_libc || defšed IS_IN_lib±h»ad ) 187  #__libc_lock_š™_»cursive ( NAME ) \ 188 (( NAME èð( __libc_lock_»cursive_t è _LIBC_LOCK_RECURSIVE_INITIALIZER , 0) ) 190  #__libc_lock_š™_»cursive ( NAME ) \ 192 ià( __±h»ad_mu‹x_š™ !ð NULL ) \ 194 ±h»ad_mu‹x©Œ_t __©Œ ; \ 195 `__±h»ad_mu‹x©Œ_š™ (& __©Œ ); \ 196 `__±h»ad_mu‹x©Œ_£‰y³ (& __©Œ , PTHREAD_MUTEX_RECURSIVE_NP ); \ 197 `__±h»ad_mu‹x_š™ (&( NAME ). mu‹x , & __©Œ ); \ 198 `__±h»ad_mu‹x©Œ_de¡roy (& __©Œ ); \ 200 } 0) ) 203  #__¹ld_lock_š™_»cursive ( NAME ) \ 205 ià( __±h»ad_mu‹x_š™ !ð NULL ) \ 207 ±h»ad_mu‹x©Œ_t __©Œ ; \ 208 `__±h»ad_mu‹x©Œ_š™ (& __©Œ ); \ 209 `__±h»ad_mu‹x©Œ_£‰y³ (& __©Œ , PTHREAD_MUTEX_RECURSIVE_NP ); \ 210 `__±h»ad_mu‹x_š™ (&( NAME ). mu‹x , & __©Œ ); \ 211 `__±h»ad_mu‹x©Œ_de¡roy (& __©Œ ); \ 213 } 0) ) 218 #ià defšed _LIBC && (!defšed NOT_IN_libc || defšed IS_IN_lib±h»ad ) 219  #__libc_lock_fši ( NAME è((è0) ) 221  #__libc_lock_fši ( NAME ) \ 222 `__libc_maybe_ÿÎ ( __±h»ad_mu‹x_de¡roy , (&( NAME )), 0) ) 224 #ià defšed SHARED && !defšed NOT_IN_libc 225  #__libc_rwlock_fši ( NAME è((è0) ) 227  #__libc_rwlock_fši ( NAME ) \ 228 `__libc_maybe_ÿÎ ( __±h»ad_rwlock_de¡roy , (&( NAME )), 0) ) 232 #ià defšed _LIBC && (!defšed NOT_IN_libc || defšed IS_IN_lib±h»ad ) 233  #__libc_lock_fši_»cursive ( NAME è((è0) ) 235  #__libc_lock_fši_»cursive ( NAME ) \ 236 `__libc_maybe_ÿÎ ( __±h»ad_mu‹x_de¡roy , (&( NAME )), 0) ) 240 #ià defšed _LIBC && (!defšed NOT_IN_libc || defšed IS_IN_lib±h»ad ) 241  #__libc_lock_lock ( NAME ) \ 242 ({ `Îl_lock ( NAME , LLL_PRIVATE ); 0; }) ) 244  #__libc_lock_lock ( NAME ) \ 245 `__libc_maybe_ÿÎ ( __±h»ad_mu‹x_lock , (&( NAME )), 0) ) 247  #__libc_rwlock_rdlock ( NAME ) \ 248 `__libc_±f_ÿÎ ( __±h»ad_rwlock_rdlock , (&( NAME )), 0) ) 249  #__libc_rwlock_w¾ock ( NAME ) \ 250 `__libc_±f_ÿÎ ( __±h»ad_rwlock_w¾ock , (&( NAME )), 0) ) 253 #ià defšed _LIBC && (!defšed NOT_IN_libc || defšed IS_IN_lib±h»ad ) 254  #__libc_lock_lock_»cursive ( NAME ) \ 256 * £lf = THREAD_SELF ; \ 257 ià(( NAME ). owÃr !ð £lf ) \ 259 `Îl_lock (( NAME ). lock , LLL_PRIVATE ); \ 260 ( NAME ). owÃr = £lf ; \ 262 ++( NAME ). út ; \ 263 } 0) ) 265  #__libc_lock_lock_»cursive ( NAME ) \ 266 `__libc_maybe_ÿÎ ( __±h»ad_mu‹x_lock , (&( NAME ). mu‹x ), 0) ) 270 #ià defšed _LIBC && (!defšed NOT_IN_libc || defšed IS_IN_lib±h»ad ) 271  #__libc_lock_Œylock ( NAME ) \ 272 `Îl_Œylock ( NAME ) ) 274  #__libc_lock_Œylock ( NAME ) \ 275 `__libc_maybe_ÿÎ ( __±h»ad_mu‹x_Œylock , (&( NAME )), 0) ) 277  #__libc_rwlock_Œyrdlock ( NAME ) \ 278 `__libc_maybe_ÿÎ ( __±h»ad_rwlock_Œyrdlock , (&( NAME )), 0) ) 279  #__libc_rwlock_Œyw¾ock ( NAME ) \ 280 `__libc_maybe_ÿÎ ( __±h»ad_rwlock_Œyw¾ock , (&( NAME )), 0) ) 283 #ià defšed _LIBC && (!defšed NOT_IN_libc || defšed IS_IN_lib±h»ad ) 284  #__libc_lock_Œylock_»cursive ( NAME ) \ 286  »suÉ = 0; \ 287 * £lf = THREAD_SELF ; \ 288 ià(( NAME ). owÃr !ð £lf ) \ 290 ià( `Îl_Œylock (( NAME ). lock ) == 0) \ 292 ( NAME ). owÃr = £lf ; \ 293 ( NAME ). út = 1; \ 296 »suÉ = EBUSY ; \ 299 ++( NAME ). út ; \ 300 »suÉ ; \ 301 }) ) 303  #__libc_lock_Œylock_»cursive ( NAME ) \ 304 `__libc_maybe_ÿÎ ( __±h»ad_mu‹x_Œylock , (&( NAME )), 0) ) 307  #__¹ld_lock_Œylock_»cursive ( NAME ) \ 308 `__libc_maybe_ÿÎ ( __±h»ad_mu‹x_Œylock , (&( NAME ). mu‹x ), 0) ) 311 #ià defšed _LIBC && (!defšed NOT_IN_libc || defšed IS_IN_lib±h»ad ) 312  #__libc_lock_uÆock ( NAME ) \ 313 `Îl_uÆock ( NAME , LLL_PRIVATE ) ) 315  #__libc_lock_uÆock ( NAME ) \ 316 `__libc_maybe_ÿÎ ( __±h»ad_mu‹x_uÆock , (&( NAME )), 0) ) 318  #__libc_rwlock_uÆock ( NAME ) \ 319 `__libc_±f_ÿÎ ( __±h»ad_rwlock_uÆock , (&( NAME )), 0) ) 322 #ià defšed _LIBC && (!defšed NOT_IN_libc || defšed IS_IN_lib±h»ad ) 324  #__libc_lock_uÆock_»cursive ( NAME ) \ 326 ià(--( NAME ). út == 0) \ 328 ( NAME ). owÃr = NULL ; \ 329 `Îl_uÆock (( NAME ). lock , LLL_PRIVATE ); \ 331 } 0) ) 333  #__libc_lock_uÆock_»cursive ( NAME ) \ 334 `__libc_maybe_ÿÎ ( __±h»ad_mu‹x_uÆock , (&( NAME )), 0) ) 337 #ià defšed _LIBC && defšed SHARED 338  #__¹ld_lock_deçuÉ_lock_»cursive ( lock ) \ 339 ++(( ±h»ad_mu‹x_t *)( lock ))-> __d©a . __couÁ ; ) 341  #__¹ld_lock_deçuÉ_uÆock_»cursive ( lock ) \ 342 --(( ±h»ad_mu‹x_t *)( lock ))-> __d©a . __couÁ ; ) 344  #__¹ld_lock_lock_»cursive ( NAME ) \ 345 `GL ( dl_¹ld_lock_»cursive è(&( NAME ). mu‹x ) ) 347  #__¹ld_lock_uÆock_»cursive ( NAME ) \ 348 `GL ( dl_¹ld_uÆock_»cursive è(&( NAME ). mu‹x ) ) 350  #__¹ld_lock_lock_»cursive ( NAME ) \ 351 `__libc_maybe_ÿÎ ( __±h»ad_mu‹x_lock , (&( NAME ). mu‹x ), 0) ) 353  #__¹ld_lock_uÆock_»cursive ( NAME ) \ 354 `__libc_maybe_ÿÎ ( __±h»ad_mu‹x_uÆock , (&( NAME ). mu‹x ), 0) ) 358 #ià PTHREAD_ONCE_INIT == 0 361  #__libc_Úû_defše ( CLASS , NAME ) \ 362 CLASS ±h»ad_Úû_t NAME ) 364  #__libc_Úû_defše ( CLASS , NAME ) \ 365 CLASS ±h»ad_Úû_t NAME = PTHREAD_ONCE_INIT ) 369  #__libc_Úû ( ONCE_CONTROL , INIT_FUNCTION ) \ 371 ià( `PTFAVAIL ( __±h»ad_Úû )) \ 372 `__libc_±f_ÿÎ_®ways ( __±h»ad_Úû , (&( ONCE_CONTROL ), \ 373 INIT_FUNCTION )); \ 374 ià(( ONCE_CONTROL è=ð PTHREAD_ONCE_INIT ) { \ 375 `INIT_FUNCTION (); \ 376 ( ONCE_CONTROL ) |= 2; \ 378 } 0) ) 381  #__libc_Úû_g‘ ( ONCE_CONTROL ) \ 382 (( ONCE_CONTROL è!ð PTHREAD_ONCE_INIT ) ) 388  _±h»ad_þ—nup_push ( _±h»ad_þ—nup_bufãr * bufãr , 389 (* routše è(*), * ¬g ); 390  `_±h»ad_þ—nup_pÝ ( _±h»ad_þ—nup_bufãr * bufãr , 391  execu‹ ); 392  `_±h»ad_þ—nup_push_deãr ( _±h»ad_þ—nup_bufãr * bufãr , 393 (* routše è(*), * ¬g ); 394  `_±h»ad_þ—nup_pÝ_»¡Üe ( _±h»ad_þ—nup_bufãr * bufãr , 395  execu‹ ); 398  #__libc_þ—nup_»giÚ_¡¬t ( DOIT , FCT , ARG ) \ 399 {  _±h»ad_þ—nup_bufãr _bufãr ; \ 400  _avaž ; \ 401 ià( DOIT ) { \ 402 _avaž = `PTFAVAIL ( _±h»ad_þ—nup_push_deãr ); \ 403 ià( _avaž ) { \ 404 `__libc_±f_ÿÎ_®ways ( _±h»ad_þ—nup_push_deãr , (& _bufãr , FCT , \ 405 ARG )); \ 407 _bufãr . __routše = ( FCT ); \ 408 _bufãr . __¬g = ( ARG ); \ 411 _avaž = 0; \ 412 } ) 415  #__libc_þ—nup_»giÚ_’d ( DOIT ) \ 416 ià( _avaž ) { \ 417 `__libc_±f_ÿÎ_®ways ( _±h»ad_þ—nup_pÝ_»¡Üe , (& _bufãr , DOIT ));\ 418 } ià( DOIT ) \ 419 _bufãr . `__routše (_bufãr. __¬g ); \ 420 } ) } 423  #__libc_þ—nup_’d ( DOIT ) \ 424 ià( _avaž ) { \ 425 `__libc_±f_ÿÎ_®ways ( _±h»ad_þ—nup_pÝ_»¡Üe , (& _bufãr , DOIT ));\ 426 } ià( DOIT ) \ 427 _bufãr . `__routše (_bufãr. __¬g ) ) 431 __ex‹º_šlše  432 $__libc_þ—nup_routše ( __±h»ad_þ—nup_äame * f ) 434 ià( f -> __do_™ ) 435 f -> `__ÿnûl_routše (f-> __ÿnûl_¬g ); 436 } } 438  #__libc_þ—nup_push ( fù , ¬g ) \ 440  __±h»ad_þ—nup_äame __þäame \ 441 `__©Œibu‹__ (( `__þ—nup__ ( __libc_þ—nup_routše ))) \ 442 ð{ . __ÿnûl_routše = ( fù ), . __ÿnûl_¬g = ( ¬g ), \ 443 . __do_™ = 1 }; ) 445  #__libc_þ—nup_pÝ ( execu‹ ) \ 446 __þäame . __do_™ = ( execu‹ ); \ 447 } 0) ) 451  #__libc_key_ü—‹ ( KEY , DESTRUCTOR ) \ 452 `__libc_±f_ÿÎ ( __±h»ad_key_ü—‹ , ( KEY , DESTRUCTOR ), 1) ) 455  #__libc_g‘¥ecific ( KEY ) \ 456 `__libc_±f_ÿÎ ( __±h»ad_g‘¥ecific , ( KEY ), NULL ) ) 459  #__libc_£t¥ecific ( KEY , VALUE ) \ 460 `__libc_±f_ÿÎ ( __±h»ad_£t¥ecific , ( KEY , VALUE ), 0) ) 466  #__libc_©fÜk ( PREPARE , PARENT , CHILD ) \ 467 `__»gi¡”_©fÜk ( PREPARE , PARENT , CHILD , NULL ) ) 468  __»gi¡”_©fÜk ((* __´•¬e ) (), 469 (* __·»Á ) (), 470 (* __chžd ) (), 471 * __dso_hªdË ); 476  `__±h»ad_mu‹x_š™ ( ±h»ad_mu‹x_t * __mu‹x , 477 __cÚ¡ ±h»ad_mu‹x©Œ_t * __mu‹x_©Œ ); 479  `__±h»ad_mu‹x_de¡roy ( ±h»ad_mu‹x_t * __mu‹x ); 481  `__±h»ad_mu‹x_Œylock ( ±h»ad_mu‹x_t * __mu‹x ); 483  `__±h»ad_mu‹x_lock ( ±h»ad_mu‹x_t * __mu‹x ); 485  `__±h»ad_mu‹x_uÆock ( ±h»ad_mu‹x_t * __mu‹x ); 487  `__±h»ad_mu‹x©Œ_š™ ( ±h»ad_mu‹x©Œ_t * __©Œ ); 489  `__±h»ad_mu‹x©Œ_de¡roy ( ±h»ad_mu‹x©Œ_t * __©Œ ); 491  `__±h»ad_mu‹x©Œ_£‰y³ ( ±h»ad_mu‹x©Œ_t * __©Œ , 492  __kšd ); 494 #ifdeà __USE_UNIX98 495  `__±h»ad_rwlock_š™ ( ±h»ad_rwlock_t * __rwlock , 496 __cÚ¡ ±h»ad_rwlock©Œ_t * __©Œ ); 498  `__±h»ad_rwlock_de¡roy ( ±h»ad_rwlock_t * __rwlock ); 500  `__±h»ad_rwlock_rdlock ( ±h»ad_rwlock_t * __rwlock ); 502  `__±h»ad_rwlock_Œyrdlock ( ±h»ad_rwlock_t * __rwlock ); 504  `__±h»ad_rwlock_w¾ock ( ±h»ad_rwlock_t * __rwlock ); 506  `__±h»ad_rwlock_Œyw¾ock ( ±h»ad_rwlock_t * __rwlock ); 508  `__±h»ad_rwlock_uÆock ( ±h»ad_rwlock_t * __rwlock ); 511  `__±h»ad_key_ü—‹ ( ±h»ad_key_t * __key , 512 (* __de¡r_funùiÚ ) (*)); 514  `__±h»ad_£t¥ecific ( ±h»ad_key_t __key , 515 __cÚ¡ * __poš‹r ); 517 * `__±h»ad_g‘¥ecific ( ±h»ad_key_t __key ); 519  `__±h»ad_Úû ( ±h»ad_Úû_t * __Úû_cÚŒÞ , 520 (* __š™_routše ) ()); 522  `__±h»ad_©fÜk ((* __´•¬e ) (), 523 (* __·»Á ) (), 524 (* __chžd ) ()); 530 #iâdeà __NO_WEAK_PTHREAD_ALIASES 531 #ifdeà w—k_ex‹º 532 #ià _LIBC 533  ~ 535  #BP_SYM ( sym è ) sym 537 `w—k_ex‹º ( $BP_SYM ( __±h»ad_mu‹x_š™ )) 538 `w—k_ex‹º ( $BP_SYM ( __±h»ad_mu‹x_de¡roy )) 539 `w—k_ex‹º ( $BP_SYM ( __±h»ad_mu‹x_lock )) 540 `w—k_ex‹º ( $BP_SYM ( __±h»ad_mu‹x_Œylock )) 541 `w—k_ex‹º ( $BP_SYM ( __±h»ad_mu‹x_uÆock )) 542 `w—k_ex‹º ( $BP_SYM ( __±h»ad_mu‹x©Œ_š™ )) 543 `w—k_ex‹º ( $BP_SYM ( __±h»ad_mu‹x©Œ_de¡roy )) 544 `w—k_ex‹º ( $BP_SYM ( __±h»ad_mu‹x©Œ_£‰y³ )) 545 `w—k_ex‹º ( $BP_SYM ( __±h»ad_rwlock_š™ )) 546 `w—k_ex‹º ( $BP_SYM ( __±h»ad_rwlock_de¡roy )) 547 `w—k_ex‹º ( $BP_SYM ( __±h»ad_rwlock_rdlock )) 548 `w—k_ex‹º ( $BP_SYM ( __±h»ad_rwlock_Œyrdlock )) 549 `w—k_ex‹º ( $BP_SYM ( __±h»ad_rwlock_w¾ock )) 550 `w—k_ex‹º ( $BP_SYM ( __±h»ad_rwlock_Œyw¾ock )) 551 `w—k_ex‹º ( $BP_SYM ( __±h»ad_rwlock_uÆock )) 552 `w—k_ex‹º ( $BP_SYM ( __±h»ad_key_ü—‹ )) 553 `w—k_ex‹º ( $BP_SYM ( __±h»ad_£t¥ecific )) 554 `w—k_ex‹º ( $BP_SYM ( __±h»ad_g‘¥ecific )) 555 `w—k_ex‹º ( $BP_SYM ( __±h»ad_Úû )) 556 $w—k_ex‹º ( __±h»ad_š™Ÿlize ) 557 $w—k_ex‹º ( __±h»ad_©fÜk ) 558 `w—k_ex‹º ( $BP_SYM ( _±h»ad_þ—nup_push_deãr )) 559 `w—k_ex‹º ( $BP_SYM ( _±h»ad_þ—nup_pÝ_»¡Üe )) 560 `w—k_ex‹º ( $BP_SYM ( ±h»ad_£tÿnûl¡©e )) 562 #´agm¨ w—k __±h»ad_mu‹x_š™ 563 #´agm¨ w—k __±h»ad_mu‹x_de¡roy 564 #´agm¨ w—k __±h»ad_mu‹x_lock 565 #´agm¨ w—k __±h»ad_mu‹x_Œylock 566 #´agm¨ w—k __±h»ad_mu‹x_uÆock 567 #´agm¨ w—k __±h»ad_mu‹x©Œ_š™ 568 #´agm¨ w—k __±h»ad_mu‹x©Œ_de¡roy 569 #´agm¨ w—k __±h»ad_mu‹x©Œ_£‰y³ 570 #´agm¨ w—k __±h»ad_rwlock_de¡roy 571 #´agm¨ w—k __±h»ad_rwlock_rdlock 572 #´agm¨ w—k __±h»ad_rwlock_Œyrdlock 573 #´agm¨ w—k __±h»ad_rwlock_w¾ock 574 #´agm¨ w—k __±h»ad_rwlock_Œyw¾ock 575 #´agm¨ w—k __±h»ad_rwlock_uÆock 576 #´agm¨ w—k __±h»ad_key_ü—‹ 577 #´agm¨ w—k __±h»ad_£t¥ecific 578 #´agm¨ w—k __±h»ad_g‘¥ecific 579 #´agm¨ w—k __±h»ad_Úû 580 #´agm¨ w—k __±h»ad_š™Ÿlize 581 #´agm¨ w—k __±h»ad_©fÜk 582 #´agm¨ w—k _±h»ad_þ—nup_push_deãr 583 #´agm¨ w—k _±h»ad_þ—nup_pÝ_»¡Üe 584 #´agm¨ w—k ±h»ad_£tÿnûl¡©e @/usr/include/gconv.h 23 #iâdeà _GCONV_H 24  #_GCONV_H 1 ) 26  ~<ã©u»s.h > 27  #__Ãed_mb¡©e_t ) 28  #__Ãed_wšt_t ) 29  ~ 30  #__Ãed_size_t ) 31  #__Ãed_wch¬_t ) 32  ~<¡ddef.h > 35  #__UNKNOWN_10646_CHAR (( wch¬_t è0xfffd) ) 40 m__GCONV_OK = 0, 41 m__GCONV_NOCONV , 42 m__GCONV_NODB , 43 m__GCONV_NOMEM , 45 m__GCONV_EMPTY_INPUT , 46 m__GCONV_FULL_OUTPUT , 47 m__GCONV_ILLEGAL_INPUT , 48 m__GCONV_INCOMPLETE_INPUT , 50 m__GCONV_ILLEGAL_DESCRIPTOR , 51 m__GCONV_INTERNAL_ERROR 58 m__GCONV_IS_LAST = 0x0001, 59 m__GCONV_IGNORE_ERRORS = 0x0002 64  g__gcÚv_¡• ; 65  g__gcÚv_¡•_d©a ; 66  g__gcÚv_lßded_objeù ; 67  g__gcÚv_Œªs_d©a ; 71 (* t__gcÚv_fù è( t__gcÚv_¡• *,  t__gcÚv_¡•_d©a *, 72 t__cÚ¡ **, __const *, 73 **, tsize_t *, , ); 76  $wšt_t (* t__gcÚv_btowc_fù è( t__gcÚv_¡• *, ); 79 (* t__gcÚv_š™_fù è( t__gcÚv_¡• *); 80 (* t__gcÚv_’d_fù è( t__gcÚv_¡• *); 84 (* t__gcÚv_Œªs_fù è( t__gcÚv_¡• *, 85  t__gcÚv_¡•_d©a *, *, 86 t__cÚ¡ *, 87 t__cÚ¡ **, 88 t__cÚ¡ *, **, 89 tsize_t *); 92 (* t__gcÚv_Œªs_cÚ‹xt_fù è(*, t__cÚ¡ *, 93 t__cÚ¡ *, 97 (* t__gcÚv_Œªs_qu”y_fù è( t__cÚ¡ *, __const ***, 98 tsize_t *); 101 (* t__gcÚv_Œªs_š™_fù ) (**, const *); 102 (* t__gcÚv_Œªs_’d_fù ) (*); 104  s__gcÚv_Œªs_d©a 107 __gcÚv_Œªs_fù __Œªs_fù ; 108 __gcÚv_Œªs_cÚ‹xt_fù __Œªs_cÚ‹xt_fù ; 109 __gcÚv_Œªs_’d_fù __Œªs_’d_fù ; 110 * __d©a ; 111  __gcÚv_Œªs_d©a * __Ãxt ; 116  s__gcÚv_¡• 118  __gcÚv_lßded_objeù * __shlib_hªdË ; 119 __cÚ¡ * __modÇme ; 121  __couÁ” ; 123 * __äom_Çme ; 124 * __to_Çme ; 126 __gcÚv_fù __fù ; 127 __gcÚv_btowc_fù __btowc_fù ; 128 __gcÚv_š™_fù __š™_fù ; 129 __gcÚv_’d_fù __’d_fù ; 133  __mš_Ãeded_äom ; 134  __max_Ãeded_äom ; 135  __mš_Ãeded_to ; 136  __max_Ãeded_to ; 139  __¡©eful ; 141 * __d©a ; 146  s__gcÚv_¡•_d©a 148 * __outbuf ; 149 * __outbuãnd ; 153  __æags ; 157  __švoÿtiÚ_couÁ” ; 161  __š‹º®_u£ ; 163 __mb¡©e_t * __¡©• ; 164 __mb¡©e_t __¡©e ; 168  __gcÚv_Œªs_d©a * __Œªs ; 173  s__gcÚv_šfo 175 size_t __n¡•s ; 176  __gcÚv_¡• * __¡•s ; 177 __ex‹nsiÚ__  __gcÚv_¡•_d©a __d©a __æex¬r ; 178 } * t__gcÚv_t ; @/usr/include/gnu/stubs-32.h 6 #ifdeà _LIBC 7 #”rÜ AµliÿtiÚs may nÙ defše the maüo _LIBC 10  #__¡ub___k”Ãl_co¦ ) 11  #__¡ub___k”Ãl_sšl ) 12  #__¡ub___k”Ãl_Æ ) 13  #__¡ub_chæags ) 14  #__¡ub_ç‰ach ) 15  #__¡ub_fchæags ) 16  #__¡ub_fd‘ach ) 17  #__¡ub_g‰y ) 18  #__¡ub_lchmod ) 19  #__¡ub_»voke ) 20  #__¡ub_£Žogš ) 21  #__¡ub_sig»tuº ) 22  #__¡ub_s¡k ) 23  #__¡ub_¡ty ) @/usr/include/krb5/krb5.h 2 #iâdeà KRB5_KRB5_H_INCLUDED 3  #KRB5_KRB5_H_INCLUDED ) 59 #iâdeà KRB5_GENERAL__ 60  #KRB5_GENERAL__ ) 63 #iâdeà KRB5_DEPRECATED 64  #KRB5_DEPRECATED 0 ) 67 #iâdeà KRB5_PRIVATE 68  #KRB5_PRIVATE 0 ) 71 #ià defšed ( __MACH__ è&& defšed( __APPLE__ ) 72  ~ 73 #ià TARGET_RT_MAC_CFM 78 #ià defšed ( _MSDOS è|| defšed( _WIN32 ) 79  ~ 82 #iâdeà KRB5_CONFIG__ 83 #iâdeà KRB5_CALLCONV 84  #KRB5_CALLCONV ) 85  #KRB5_CALLCONV_C ) 89 #iâdeà KRB5_CALLCONV_WRONG 90  #KRB5_CALLCONV_WRONG ) 93 #iâdeà THREEPARAMOPEN 94  #THREEPARAMOPEN ( x , y , z è `Ý’ (x,y,z) ) 97  #KRB5_OLD_CRYPTO ) 99  ~<¡dlib.h > 100  ~ 102 #iâdeà KRB5INT_BEGIN_DECLS 103 #ià defšed ( __ýlu¥lus ) 104  #KRB5INT_BEGIN_DECLS "C" { ) 105  #KRB5INT_END_DECLS } ) 107  #KRB5INT_BEGIN_DECLS ) 108  #KRB5INT_END_DECLS ) 112 KRB5INT_BEGIN_DECLS 114 #ià TARGET_OS_MAC 115 #´agm¨ ·ck ( push ,2) 119  _´ofže_t ; 130  tkrb5_où‘ ; 132 #ià INT_MAX == 0x7fff 133  tkrb5_št16 ; 134  tkrb5_ui_2 ; 135 #–ià SHRT_MAX == 0x7fff 136  tkrb5_št16 ; 137  tkrb5_ui_2 ; 139 #”rÜ undefšed 16 b™ ty³ 142 #ià INT_MAX == 0x7fffffffL 143  tkrb5_št32 ; 144  tkrb5_ui_4 ; 145 #–ià LONG_MAX == 0x7fffffffL 146  tkrb5_št32 ; 147  tkrb5_ui_4 ; 148 #–ià SHRT_MAX == 0x7fffffffL 149  tkrb5_št32 ; 150  tkrb5_ui_4 ; 152 #”rÜ: undefšed 32 b™ ty³ 155  #VALID_INT_BITS INT_MAX ) 156  #VALID_UINT_BITS UINT_MAX ) 158  #KRB5_INT32_MAX 2147483647 ) 161  #KRB5_INT32_MIN (- KRB5_INT32_MAX -1) ) 163  #KRB5_INT16_MAX 65535 ) 166  #KRB5_INT16_MIN (- KRB5_INT16_MAX -1) ) 180 #iâdeà FALSE 181  #FALSE 0 ) 183 #iâdeà TRUE 184  #TRUE 1 ) 187  tkrb5_boÞ—n ; 188  tkrb5_msgty³ ; 189  tkrb5_kvno ; 191  krb5_št32 tkrb5_add¹y³ ; 192  krb5_št32 tkrb5_’ùy³ ; 193  krb5_št32 tkrb5_cksumty³ ; 194  krb5_št32 tkrb5_authd©©y³ ; 195  krb5_št32 tkrb5_keyu§ge ; 197  krb5_št32 tkrb5_´—uthty³ ; 198  krb5_št32 tkrb5_æags ; 199  krb5_št32 tkrb5_time¡amp ; 200  krb5_št32 tkrb5_”rÜ_code ; 201  krb5_št32 tkrb5_d–t ; 203  krb5_”rÜ_code tkrb5_magic ; 205  s_krb5_d©a { 206 krb5_magic mmagic ; 207  mËngth ; 208 * md©a ; 209 } tkrb5_d©a ; 211  s_krb5_où‘_d©a { 212 krb5_magic mmagic ; 213  mËngth ; 214 krb5_où‘ * md©a ; 215 } tkrb5_où‘_d©a ; 223  #SALT_TYPE_AFS_LENGTH UINT_MAX ) 224  #SALT_TYPE_NO_LENGTH UINT_MAX ) 226 * tkrb5_poš‹r ; 227 cÚ¡ * tkrb5_cÚ¡_poš‹r ; 229  skrb5_´šc®_d©a { 230 krb5_magic mmagic ; 231 krb5_d©a m»®m ; 232 krb5_d©a * md©a ; 233 krb5_št32 mËngth ; 234 krb5_št32 mty³ ; 235 } tkrb5_´šc®_d©a ; 237  krb5_´šc®_d©a * tkrb5_´šc® ; 244  #KRB5_NT_UNKNOWN 0 ) 246  #KRB5_NT_PRINCIPAL 1 ) 248  #KRB5_NT_SRV_INST 2 ) 250  #KRB5_NT_SRV_HST 3 ) 252  #KRB5_NT_SRV_XHST 4 ) 254  #KRB5_NT_UID 5 ) 257 cÚ¡ tkrb5_´šc®_d©a * tkrb5_cÚ¡_´šc® ; 259  #krb5_´šc_»®m ( cÚ‹xt , ´šc è(&Õršc)-> »®m ) ) 260  #krb5_´šc_£t_»®m ( cÚ‹xt , ´šc , v®ue è(Õršc)-> »®m = *(v®ue)) ) 261  #krb5_´šc_£t_»®m_Ëngth ( cÚ‹xt , ´šc , v®ue èÕršc)-> »®m . Ëngth = (v®ue) ) 262  #krb5_´šc_£t_»®m_d©a ( cÚ‹xt , ´šc , v®ue èÕršc)-> »®m . d©a = (v®ue) ) 263  #krb5_´šc_size ( cÚ‹xt , ´šc èÕršc)-> Ëngth ) 264  #krb5_´šc_ty³ ( cÚ‹xt , ´šc èÕršc)-> ty³ ) 265  #krb5_´šc_Çme ( cÚ‹xt , ´šc èÕršc)-> d©a ) 266  #krb5_´šc_compÚ’t ( cÚ‹xt , ´šc , i ) \ 267 ((( i è< `krb5_´šc_size ( cÚ‹xt , ´šc )) \ 268 ? ( ´šc )-> d©a + ( i ) \ 269 : NULL ) ) 274  #KRB5_REFERRAL_REALM "" ) 279 krb5_boÞ—n KRB5_CALLCONV krb5_is_»ã¼®_»®m (cÚ¡ krb5_d©a *); 290  s_krb5_add»ss { 291 krb5_magic mmagic ; 292 krb5_add¹y³ madd¹y³ ; 293  mËngth ; 294 krb5_où‘ * mcÚ‹Ás ; 295 } tkrb5_add»ss ; 298  #ADDRTYPE_INET 0x0002 ) 299  #ADDRTYPE_CHAOS 0x0005 ) 300  #ADDRTYPE_XNS 0x0006 ) 301  #ADDRTYPE_ISO 0x0007 ) 302  #ADDRTYPE_DDP 0x0010 ) 303  #ADDRTYPE_INET6 0x0018 ) 305  #ADDRTYPE_ADDRPORT 0x0100 ) 306  #ADDRTYPE_IPPORT 0x0101 ) 309  #ADDRTYPE_IS_LOCAL ( add¹y³ è×dd¹y³ & 0x8000) ) 316  g_krb5_cÚ‹xt ; 317  _krb5_cÚ‹xt * tkrb5_cÚ‹xt ; 319  g_krb5_auth_cÚ‹xt ; 320  _krb5_auth_cÚ‹xt * tkrb5_auth_cÚ‹xt ; 322  g_krb5_üy±osy¡em_’Œy ; 328  s_krb5_keyblock { 329 krb5_magic mmagic ; 330 krb5_’ùy³ m’ùy³ ; 331  mËngth ; 332 krb5_où‘ * mcÚ‹Ás ; 333 } tkrb5_keyblock ; 335 #ifdeà KRB5_OLD_CRYPTO 336  s_krb5_’üy±_block { 337 krb5_magic mmagic ; 338 krb5_’ùy³ müy±o_’Œy ; 341 krb5_keyblock * mkey ; 342 } tkrb5_’üy±_block ; 345  s_krb5_checksum { 346 krb5_magic mmagic ; 347 krb5_cksumty³ mchecksum_ty³ ; 348  mËngth ; 349 krb5_où‘ * mcÚ‹Ás ; 350 } tkrb5_checksum ; 352  s_krb5_’c_d©a { 353 krb5_magic mmagic ; 354 krb5_’ùy³ m’ùy³ ; 355 krb5_kvno mkvno ; 356 krb5_d©a mch”‹xt ; 357 } tkrb5_’c_d©a ; 360  #ENCTYPE_NULL 0x0000 ) 361  #ENCTYPE_DES_CBC_CRC 0x0001 ) 362  #ENCTYPE_DES_CBC_MD4 0x0002 ) 363  #ENCTYPE_DES_CBC_MD5 0x0003 ) 364  #ENCTYPE_DES_CBC_RAW 0x0004 ) 366  #ENCTYPE_DES3_CBC_SHA 0x0005 ) 367  #ENCTYPE_DES3_CBC_RAW 0x0006 ) 368  #ENCTYPE_DES_HMAC_SHA1 0x0008 ) 369  #ENCTYPE_DES3_CBC_SHA1 0x0010 ) 370  #ENCTYPE_AES128_CTS_HMAC_SHA1_96 0x0011 ) 371  #ENCTYPE_AES256_CTS_HMAC_SHA1_96 0x0012 ) 372  #ENCTYPE_ARCFOUR_HMAC 0x0017 ) 373  #ENCTYPE_ARCFOUR_HMAC_EXP 0x0018 ) 374  #ENCTYPE_UNKNOWN 0x01ff ) 376  #CKSUMTYPE_CRC32 0x0001 ) 377  #CKSUMTYPE_RSA_MD4 0x0002 ) 378  #CKSUMTYPE_RSA_MD4_DES 0x0003 ) 379  #CKSUMTYPE_DESCBC 0x0004 ) 382  #CKSUMTYPE_RSA_MD5 0x0007 ) 383  #CKSUMTYPE_RSA_MD5_DES 0x0008 ) 384  #CKSUMTYPE_NIST_SHA 0x0009 ) 385  #CKSUMTYPE_HMAC_SHA1_DES3 0x000c ) 386  #CKSUMTYPE_HMAC_SHA1_96_AES128 0x000f ) 387  #CKSUMTYPE_HMAC_SHA1_96_AES256 0x0010 ) 388  #CKSUMTYPE_HMAC_MD5_ARCFOUR -138 ) 399 mKRB5_C_RANDSOURCE_OLDAPI = 0, 400 mKRB5_C_RANDSOURCE_OSRAND = 1, 401 mKRB5_C_RANDSOURCE_TRUSTEDPARTY = 2, 406 mKRB5_C_RANDSOURCE_TIMING = 3, 407 mKRB5_C_RANDSOURCE_EXTERNAL_PROTOCOL = 4, 408 mKRB5_C_RANDSOURCE_MAX = 5 411 #iâdeà krb5_roundup 413  #krb5_roundup ( x , y è((((xè+ (yè- 1)/(y))*(y)) ) 419  #krb5_x ( ±r , ¬gs è(ÕŒ)?((*ÕŒ)è¬gs):( `abÜt (),1)) ) 420  #krb5_xc ( ±r , ¬gs è(ÕŒ)?((*ÕŒ)è¬gs):( `abÜt (),(*)0)) ) 422  #krb5_x ( ±r , ¬gs è((*ÕŒ)è¬gs) ) 423  #krb5_xc ( ±r , ¬gs è((*ÕŒ)è¬gs) ) 426 krb5_”rÜ_code KRB5_CALLCONV 427 gkrb5_c_’üy± 428 ( krb5_cÚ‹xt gcÚ‹xt , cÚ¡ krb5_keyblock * gkey , 429 krb5_keyu§ge gu§ge , cÚ¡ krb5_d©a * gch”_¡©e , 430 cÚ¡ krb5_d©a * gšput , krb5_’c_d©a * gouut ); 432 krb5_”rÜ_code KRB5_CALLCONV 433 gkrb5_c_deüy± 434 ( krb5_cÚ‹xt gcÚ‹xt , cÚ¡ krb5_keyblock * gkey , 435 krb5_keyu§ge gu§ge , cÚ¡ krb5_d©a * gch”_¡©e , 436 cÚ¡ krb5_’c_d©a * gšput , krb5_d©a * gouut ); 438 krb5_”rÜ_code KRB5_CALLCONV 439 gkrb5_c_’üy±_Ëngth 440 ( krb5_cÚ‹xt gcÚ‹xt , krb5_’ùy³ g’ùy³ , 441 size_t gšpuŽ’ , size_ˆ* gËngth ); 443 krb5_”rÜ_code KRB5_CALLCONV 444 gkrb5_c_block_size 445 ( krb5_cÚ‹xt gcÚ‹xt , krb5_’ùy³ g’ùy³ , 446 size_t * gblocksize ); 448 krb5_”rÜ_code KRB5_CALLCONV 449 gkrb5_c_keyËngths 450 ( krb5_cÚ‹xt gcÚ‹xt , krb5_’ùy³ g’ùy³ , 451 size_t * gkeyby‹s , size_ˆ* gkeyËngth ); 453 krb5_”rÜ_code KRB5_CALLCONV 454 gkrb5_c_š™_¡©e 455 ( krb5_cÚ‹xt gcÚ‹xt , 456 cÚ¡ krb5_keyblock * gkey , krb5_keyu§ge gu§ge , 457 krb5_d©a * gÃw_¡©e ); 459 krb5_”rÜ_code KRB5_CALLCONV 460 gkrb5_c_ä“_¡©e 461 ( krb5_cÚ‹xt gcÚ‹xt , cÚ¡ krb5_keyblock * gkey , krb5_d©a * g¡©e ); 463 krb5_”rÜ_code KRB5_CALLCONV 464 krb5_c_´f ( krb5_cÚ‹xt , cÚ¡ krb5_keyblock *, 465 krb5_d©a * š , krb5_d©¨* out ); 467 krb5_”rÜ_code KRB5_CALLCONV 468 krb5_c_´f_Ëngth ( krb5_cÚ‹xt , krb5_’ùy³ , size_t * ouŽ’ ); 470 krb5_”rÜ_code KRB5_CALLCONV 471 gkrb5_c_make_¿ndom_key 472 ( krb5_cÚ‹xt gcÚ‹xt , krb5_’ùy³ g’ùy³ , 473 krb5_keyblock * gk5_¿ndom_key ); 475 krb5_”rÜ_code KRB5_CALLCONV 476 gkrb5_c_¿ndom_to_key 477 ( krb5_cÚ‹xt gcÚ‹xt , krb5_’ùy³ g’ùy³ , 478 krb5_d©a * g¿ndom_d©a , krb5_keyblock * gk5_¿ndom_key ); 484 krb5_”rÜ_code KRB5_CALLCONV 485 gkrb5_c_¿ndom_add_’ŒÝy 486 ( krb5_cÚ‹xt gcÚ‹xt ,  g¿ndsourû_id , cÚ¡ krb5_d©a * gd©a ); 489 krb5_”rÜ_code KRB5_CALLCONV 490 gkrb5_c_¿ndom_make_où‘s 491 ( krb5_cÚ‹xt gcÚ‹xt , krb5_d©a * gd©a ); 502 krb5_”rÜ_code KRB5_CALLCONV 503 gkrb5_c_¿ndom_os_’ŒÝy 504 ( krb5_cÚ‹xt gcÚ‹xt ,  g¡rÚg , * gsucûss ); 506 krb5_”rÜ_code KRB5_CALLCONV 507 gkrb5_c_¿ndom_£ed 508 ( krb5_cÚ‹xt gcÚ‹xt , krb5_d©a * gd©a ); 510 krb5_”rÜ_code KRB5_CALLCONV 511 gkrb5_c_¡ršg_to_key 512 ( krb5_cÚ‹xt gcÚ‹xt , krb5_’ùy³ g’ùy³ , 513 cÚ¡ krb5_d©a * g¡ršg , cÚ¡ krb5_d©¨* g§É , 514 krb5_keyblock * gkey ); 515 krb5_”rÜ_code KRB5_CALLCONV 516 krb5_c_¡ršg_to_key_w™h_·¿ms ( krb5_cÚ‹xt cÚ‹xt , 517 krb5_’ùy³ ’ùy³ , 518 cÚ¡ krb5_d©a * ¡ršg , 519 cÚ¡ krb5_d©a * §É , 520 cÚ¡ krb5_d©a * ·¿ms , 521 krb5_keyblock * key ); 523 krb5_”rÜ_code KRB5_CALLCONV 524 gkrb5_c_’ùy³_com·» 525 ( krb5_cÚ‹xt gcÚ‹xt , krb5_’ùy³ ge1 , krb5_’ùy³ ge2 , 526 krb5_boÞ—n * gsimž¬ ); 528 krb5_”rÜ_code KRB5_CALLCONV 529 gkrb5_c_make_checksum 530 ( krb5_cÚ‹xt gcÚ‹xt , krb5_cksumty³ gcksumty³ , 531 cÚ¡ krb5_keyblock * gkey , krb5_keyu§ge gu§ge , 532 cÚ¡ krb5_d©a * gšput , krb5_checksum * gcksum ); 534 krb5_”rÜ_code KRB5_CALLCONV 535 gkrb5_c_v”ify_checksum 536 ( krb5_cÚ‹xt gcÚ‹xt , 537 cÚ¡ krb5_keyblock * gkey , krb5_keyu§ge gu§ge , 538 cÚ¡ krb5_d©a * gd©a , 539 cÚ¡ krb5_checksum * gcksum , 540 krb5_boÞ—n * gv®id ); 542 krb5_”rÜ_code KRB5_CALLCONV 543 gkrb5_c_checksum_Ëngth 544 ( krb5_cÚ‹xt gcÚ‹xt , krb5_cksumty³ gcksumty³ , 545 size_t * gËngth ); 547 krb5_”rÜ_code KRB5_CALLCONV 548 gkrb5_c_keyed_checksum_ty³s 549 ( krb5_cÚ‹xt gcÚ‹xt , krb5_’ùy³ g’ùy³ , 550 * gcouÁ , krb5_cksumty³ ** gcksumty³s ); 552  #KRB5_KEYUSAGE_AS_REQ_PA_ENC_TS 1 ) 553  #KRB5_KEYUSAGE_KDC_REP_TICKET 2 ) 554  #KRB5_KEYUSAGE_AS_REP_ENCPART 3 ) 555  #KRB5_KEYUSAGE_TGS_REQ_AD_SESSKEY 4 ) 556  #KRB5_KEYUSAGE_TGS_REQ_AD_SUBKEY 5 ) 557  #KRB5_KEYUSAGE_TGS_REQ_AUTH_CKSUM 6 ) 558  #KRB5_KEYUSAGE_TGS_REQ_AUTH 7 ) 559  #KRB5_KEYUSAGE_TGS_REP_ENCPART_SESSKEY 8 ) 560  #KRB5_KEYUSAGE_TGS_REP_ENCPART_SUBKEY 9 ) 561  #KRB5_KEYUSAGE_AP_REQ_AUTH_CKSUM 10 ) 562  #KRB5_KEYUSAGE_AP_REQ_AUTH 11 ) 563  #KRB5_KEYUSAGE_AP_REP_ENCPART 12 ) 564  #KRB5_KEYUSAGE_KRB_PRIV_ENCPART 13 ) 565  #KRB5_KEYUSAGE_KRB_CRED_ENCPART 14 ) 566  #KRB5_KEYUSAGE_KRB_SAFE_CKSUM 15 ) 567  #KRB5_KEYUSAGE_APP_DATA_ENCRYPT 16 ) 568  #KRB5_KEYUSAGE_APP_DATA_CKSUM 17 ) 569  #KRB5_KEYUSAGE_KRB_ERROR_CKSUM 18 ) 570  #KRB5_KEYUSAGE_AD_KDCISSUED_CKSUM 19 ) 571  #KRB5_KEYUSAGE_AD_MTE 20 ) 572  #KRB5_KEYUSAGE_AD_ITE 21 ) 576  #KRB5_KEYUSAGE_GSS_TOK_MIC 22 ) 577  #KRB5_KEYUSAGE_GSS_TOK_WRAP_INTEG 23 ) 578  #KRB5_KEYUSAGE_GSS_TOK_WRAP_PRIV 24 ) 582  #KRB5_KEYUSAGE_PA_SAM_CHALLENGE_CKSUM 25 ) 583  #KRB5_KEYUSAGE_PA_SAM_CHALLENGE_TRACKID 26 ) 584  #KRB5_KEYUSAGE_PA_SAM_RESPONSE 27 ) 587  #KRB5_KEYUSAGE_PA_REFERRAL 26 ) 589 krb5_boÞ—n KRB5_CALLCONV gkrb5_c_v®id_’ùy³ 590 ( krb5_’ùy³ gkty³ ); 591 krb5_boÞ—n KRB5_CALLCONV gkrb5_c_v®id_cksumty³ 592 ( krb5_cksumty³ gùy³ ); 593 krb5_boÞ—n KRB5_CALLCONV gkrb5_c_is_cÞl_´oof_cksum 594 ( krb5_cksumty³ gùy³ ); 595 krb5_boÞ—n KRB5_CALLCONV gkrb5_c_is_keyed_cksum 596 ( krb5_cksumty³ gùy³ ); 598 #ià KRB5_PRIVATE 600 krb5_boÞ—n KRB5_CALLCONV gv®id_’ùy³ 601 ( krb5_’ùy³ gkty³ ); 602 krb5_boÞ—n KRB5_CALLCONV gv®id_cksumty³ 603 ( krb5_cksumty³ gùy³ ); 604 krb5_boÞ—n KRB5_CALLCONV gis_cÞl_´oof_cksum 605 ( krb5_cksumty³ gùy³ ); 606 krb5_boÞ—n KRB5_CALLCONV gis_keyed_cksum 607 ( krb5_cksumty³ gùy³ ); 610 #ifdeà KRB5_OLD_CRYPTO 615 krb5_”rÜ_code KRB5_CALLCONV gkrb5_’üy± 616 ( krb5_cÚ‹xt gcÚ‹xt , 617 krb5_cÚ¡_poš‹r gš±r , 618 krb5_poš‹r gouŒ , 619 size_t gsize , 620 krb5_’üy±_block * geblock , 621 krb5_poš‹r givec ); 622 krb5_”rÜ_code KRB5_CALLCONV gkrb5_deüy± 623 ( krb5_cÚ‹xt gcÚ‹xt , 624 krb5_cÚ¡_poš‹r gš±r , 625 krb5_poš‹r gouŒ , 626 size_t gsize , 627 krb5_’üy±_block * geblock , 628 krb5_poš‹r givec ); 629 krb5_”rÜ_code KRB5_CALLCONV gkrb5_´oûss_key 630 ( krb5_cÚ‹xt gcÚ‹xt , 631 krb5_’üy±_block * geblock , 632 cÚ¡ krb5_keyblock * gkey ); 633 krb5_”rÜ_code KRB5_CALLCONV gkrb5_fšish_key 634 ( krb5_cÚ‹xt gcÚ‹xt , 635 krb5_’üy±_block * geblock ); 636 krb5_”rÜ_code KRB5_CALLCONV gkrb5_¡ršg_to_key 637 ( krb5_cÚ‹xt gcÚ‹xt , 638 cÚ¡ krb5_’üy±_block * geblock , 639 krb5_keyblock * gkeyblock , 640 cÚ¡ krb5_d©a * gd©a , 641 cÚ¡ krb5_d©a * g§É ); 642 krb5_”rÜ_code KRB5_CALLCONV gkrb5_š™_¿ndom_key 643 ( krb5_cÚ‹xt gcÚ‹xt , 644 cÚ¡ krb5_’üy±_block * geblock , 645 cÚ¡ krb5_keyblock * gkeyblock , 646 krb5_poš‹r * g±r ); 647 krb5_”rÜ_code KRB5_CALLCONV gkrb5_fšish_¿ndom_key 648 ( krb5_cÚ‹xt gcÚ‹xt , 649 cÚ¡ krb5_’üy±_block * geblock , 650 krb5_poš‹r * g±r ); 651 krb5_”rÜ_code KRB5_CALLCONV gkrb5_¿ndom_key 652 ( krb5_cÚ‹xt gcÚ‹xt , 653 cÚ¡ krb5_’üy±_block * geblock , 654 krb5_poš‹r g±r , 655 krb5_keyblock ** gkeyblock ); 656 krb5_’ùy³ KRB5_CALLCONV gkrb5_eblock_’ùy³ 657 ( krb5_cÚ‹xt gcÚ‹xt , 658 cÚ¡ krb5_’üy±_block * geblock ); 659 krb5_”rÜ_code KRB5_CALLCONV gkrb5_u£_’ùy³ 660 ( krb5_cÚ‹xt gcÚ‹xt , 661 krb5_’üy±_block * geblock , 662 krb5_’ùy³ g’ùy³ ); 663 size_t KRB5_CALLCONV gkrb5_’üy±_size 664 ( size_t gËngth , 665 krb5_’ùy³ güy±o ); 666 size_t KRB5_CALLCONV gkrb5_checksum_size 667 ( krb5_cÚ‹xt gcÚ‹xt , 668 krb5_cksumty³ gùy³ ); 669 krb5_”rÜ_code KRB5_CALLCONV gkrb5_ÿlcuÏ‹_checksum 670 ( krb5_cÚ‹xt gcÚ‹xt , 671 krb5_cksumty³ gùy³ , 672 krb5_cÚ¡_poš‹r gš , size_t gš_Ëngth , 673 krb5_cÚ¡_poš‹r g£ed , size_t g£ed_Ëngth , 674 krb5_checksum * goutcksum ); 675 krb5_”rÜ_code KRB5_CALLCONV gkrb5_v”ify_checksum 676 ( krb5_cÚ‹xt gcÚ‹xt , 677 krb5_cksumty³ gùy³ , 678 cÚ¡ krb5_checksum * gcksum , 679 krb5_cÚ¡_poš‹r gš , size_t gš_Ëngth , 680 krb5_cÚ¡_poš‹r g£ed , size_t g£ed_Ëngth ); 682 #ià KRB5_PRIVATE 683 krb5_”rÜ_code KRB5_CALLCONV gkrb5_¿ndom_cÚfound” 684 ( gsize_t , gkrb5_poš‹r ); 686 krb5_”rÜ_code gkrb5_’üy±_d©a 687 ( krb5_cÚ‹xt gcÚ‹xt , krb5_keyblock * gkey , 688 krb5_poš‹r givec , krb5_d©a * gd©a , 689 krb5_’c_d©a * g’c_d©a ); 691 krb5_”rÜ_code gkrb5_deüy±_d©a 692 ( krb5_cÚ‹xt gcÚ‹xt , krb5_keyblock * gkey , 693 krb5_poš‹r givec , krb5_’c_d©a * gd©a , 694 krb5_d©a * g’c_d©a ); 711  #KDC_OPT_FORWARDABLE 0x40000000 ) 712  #KDC_OPT_FORWARDED 0x20000000 ) 713  #KDC_OPT_PROXIABLE 0x10000000 ) 714  #KDC_OPT_PROXY 0x08000000 ) 715  #KDC_OPT_ALLOW_POSTDATE 0x04000000 ) 716  #KDC_OPT_POSTDATED 0x02000000 ) 718  #KDC_OPT_RENEWABLE 0x00800000 ) 724  #KDC_OPT_REQUEST_ANONYMOUS 0x00020000 ) 725  #KDC_OPT_CANONICALIZE 0x00010000 ) 736  #KDC_OPT_DISABLE_TRANSITED_CHECK 0x00000020 ) 737  #KDC_OPT_RENEWABLE_OK 0x00000010 ) 738  #KDC_OPT_ENC_TKT_IN_SKEY 0x00000008 ) 740  #KDC_OPT_RENEW 0x00000002 ) 741  #KDC_OPT_VALIDATE 0x00000001 ) 750  #KDC_TKT_COMMON_MASK 0x54800000 ) 755  #AP_OPTS_RESERVED 0x80000000 ) 756  #AP_OPTS_USE_SESSION_KEY 0x40000000 ) 757  #AP_OPTS_MUTUAL_REQUIRED 0x20000000 ) 786  #AP_OPTS_USE_SUBKEY 0x00000001 ) 788  #AP_OPTS_WIRE_MASK 0xfffffff0 ) 791  #AD_TYPE_RESERVED 0x8000 ) 792  #AD_TYPE_EXTERNAL 0x4000 ) 793  #AD_TYPE_REGISTERED 0x2000 ) 795  #AD_TYPE_FIELD_TYPE_MASK 0x1fff ) 801  #TKT_FLG_FORWARDABLE 0x40000000 ) 802  #TKT_FLG_FORWARDED 0x20000000 ) 803  #TKT_FLG_PROXIABLE 0x10000000 ) 804  #TKT_FLG_PROXY 0x08000000 ) 805  #TKT_FLG_MAY_POSTDATE 0x04000000 ) 806  #TKT_FLG_POSTDATED 0x02000000 ) 807  #TKT_FLG_INVALID 0x01000000 ) 808  #TKT_FLG_RENEWABLE 0x00800000 ) 809  #TKT_FLG_INITIAL 0x00400000 ) 810  #TKT_FLG_PRE_AUTH 0x00200000 ) 811  #TKT_FLG_HW_AUTH 0x00100000 ) 812  #TKT_FLG_TRANSIT_POLICY_CHECKED 0x00080000 ) 813  #TKT_FLG_OK_AS_DELEGATE 0x00040000 ) 814  #TKT_FLG_ANONYMOUS 0x00020000 ) 834  #LR_TYPE_THIS_SERVER_ONLY 0x8000 ) 836  #LR_TYPE_INTERPRETATION_MASK 0x7fff ) 839  #AD_TYPE_EXTERNAL 0x4000 ) 840  #AD_TYPE_REGISTERED 0x2000 ) 842  #AD_TYPE_FIELD_TYPE_MASK 0x1fff ) 843  #AD_TYPE_INTERNAL_MASK 0x3fff ) 846  #MSEC_DIRBIT 0x8000 ) 847  #MSEC_VAL_MASK 0x7fff ) 858  #KRB5_PVNO 5 ) 862  #KRB5_AS_REQ (( krb5_msgty³ )10è ) 863  #KRB5_AS_REP (( krb5_msgty³ )11è ) 864  #KRB5_TGS_REQ (( krb5_msgty³ )12è ) 865  #KRB5_TGS_REP (( krb5_msgty³ )13è ) 866  #KRB5_AP_REQ (( krb5_msgty³ )14è ) 867  #KRB5_AP_REP (( krb5_msgty³ )15è ) 868  #KRB5_SAFE (( krb5_msgty³ )20è ) 869  #KRB5_PRIV (( krb5_msgty³ )21è ) 870  #KRB5_CRED (( krb5_msgty³ )22è ) 871  #KRB5_ERROR (( krb5_msgty³ )30è ) 874  #KRB5_LRQ_NONE 0 ) 875  #KRB5_LRQ_ALL_LAST_TGT 1 ) 876  #KRB5_LRQ_ONE_LAST_TGT (-1) ) 877  #KRB5_LRQ_ALL_LAST_INITIAL 2 ) 878  #KRB5_LRQ_ONE_LAST_INITIAL (-2) ) 879  #KRB5_LRQ_ALL_LAST_TGT_ISSUED 3 ) 880  #KRB5_LRQ_ONE_LAST_TGT_ISSUED (-3) ) 881  #KRB5_LRQ_ALL_LAST_RENEWAL 4 ) 882  #KRB5_LRQ_ONE_LAST_RENEWAL (-4) ) 883  #KRB5_LRQ_ALL_LAST_REQ 5 ) 884  #KRB5_LRQ_ONE_LAST_REQ (-5) ) 885  #KRB5_LRQ_ALL_PW_EXPTIME 6 ) 886  #KRB5_LRQ_ONE_PW_EXPTIME (-6) ) 889  #KRB5_PADATA_NONE 0 ) 890  #KRB5_PADATA_AP_REQ 1 ) 891  #KRB5_PADATA_TGS_REQ KRB5_PADATA_AP_REQ ) 892  #KRB5_PADATA_ENC_TIMESTAMP 2 ) 893  #KRB5_PADATA_PW_SALT 3 ) 895  #KRB5_PADATA_ENC_ENCKEY 4 ) 897  #KRB5_PADATA_ENC_UNIX_TIME 5 ) 898  #KRB5_PADATA_ENC_SANDIA_SECURID 6 ) 899  #KRB5_PADATA_SESAME 7 ) 900  #KRB5_PADATA_OSF_DCE 8 ) 901  #KRB5_CYBERSAFE_SECUREID 9 ) 902  #KRB5_PADATA_AFS3_SALT 10 ) 903  #KRB5_PADATA_ETYPE_INFO 11 ) 904  #KRB5_PADATA_SAM_CHALLENGE 12 ) 905  #KRB5_PADATA_SAM_RESPONSE 13 ) 906  #KRB5_PADATA_PK_AS_REQ_OLD 14 ) 907  #KRB5_PADATA_PK_AS_REP_OLD 15 ) 908  #KRB5_PADATA_PK_AS_REQ 16 ) 909  #KRB5_PADATA_PK_AS_REP 17 ) 910  #KRB5_PADATA_ETYPE_INFO2 19 ) 911  #KRB5_PADATA_USE_SPECIFIED_KVNO 20 ) 912  #KRB5_PADATA_SAM_REDIRECT 21 ) 913  #KRB5_PADATA_GET_FROM_TYPED_DATA 22 ) 914  #KRB5_PADATA_REFERRAL 25 ) 915  #KRB5_PADATA_SAM_CHALLENGE_2 30 ) 916  #KRB5_PADATA_SAM_RESPONSE_2 31 ) 918  #KRB5_SAM_USE_SAD_AS_KEY 0x80000000 ) 919  #KRB5_SAM_SEND_ENCRYPTED_SAD 0x40000000 ) 920  #KRB5_SAM_MUST_PK_ENCRYPT_SAD 0x20000000 ) 923  #KRB5_PADATA_DASS 16 ) 926  #KRB5_DOMAIN_X500_COMPRESS 1 ) 929  #KRB5_ALTAUTH_ATT_CHALLENGE_RESPONSE 64 ) 932  #KRB5_AUTHDATA_IF_RELEVANT 1 ) 933  #KRB5_AUTHDATA_KDC_ISSUED 4 ) 934  #KRB5_AUTHDATA_AND_OR 5 ) 935  #KRB5_AUTHDATA_MANDATORY_FOR_KDC 8 ) 936  #KRB5_AUTHDATA_INITIAL_VERIFIED_CAS 9 ) 937  #KRB5_AUTHDATA_OSF_DCE 64 ) 938  #KRB5_AUTHDATA_SESAME 65 ) 942  #KRB5_KPASSWD_SUCCESS 0 ) 943  #KRB5_KPASSWD_MALFORMED 1 ) 944  #KRB5_KPASSWD_HARDERROR 2 ) 945  #KRB5_KPASSWD_AUTHERROR 3 ) 946  #KRB5_KPASSWD_SOFTERROR 4 ) 949  #KRB5_KPASSWD_ACCESSDENIED 5 ) 950  #KRB5_KPASSWD_BAD_VERSION 6 ) 951  #KRB5_KPASSWD_INITIAL_FLAG_NEEDED 7 ) 958  s_krb5_tick‘_times { 959 krb5_time¡amp mauthtime ; 961 krb5_time¡amp m¡¬‰ime ; 963 krb5_time¡amp m’dtime ; 964 krb5_time¡amp m»Ãw_tžl ; 965 } tkrb5_tick‘_times ; 968  s_krb5_authd©a { 969 krb5_magic mmagic ; 970 krb5_authd©©y³ mad_ty³ ; 971  mËngth ; 972 krb5_où‘ * mcÚ‹Ás ; 973 } tkrb5_authd©a ; 976  s_krb5_Œªs™ed { 977 krb5_magic mmagic ; 978 krb5_où‘ mŒ_ty³ ; 979 krb5_d©a mŒ_cÚ‹Ás ; 980 } tkrb5_Œªs™ed ; 982  s_krb5_’c_tkt_·¹ { 983 krb5_magic mmagic ; 985 krb5_æags mæags ; 986 krb5_keyblock * m£ssiÚ ; 987 krb5_´šc® mþ›Á ; 988 krb5_Œªs™ed mŒªs™ed ; 989 krb5_tick‘_times mtimes ; 990 krb5_add»ss ** mÿddrs ; 991 krb5_authd©a ** mauthÜiz©iÚ_d©a ; 992 } tkrb5_’c_tkt_·¹ ; 994  s_krb5_tick‘ { 995 krb5_magic mmagic ; 997 krb5_´šc® m£rv” ; 998 krb5_’c_d©a m’c_·¹ ; 1000 krb5_’c_tkt_·¹ * m’c_·¹2 ; 1002 } tkrb5_tick‘ ; 1005  s_krb5_auth’tiÿtÜ { 1006 krb5_magic mmagic ; 1007 krb5_´šc® mþ›Á ; 1008 krb5_checksum * mchecksum ; 1009 krb5_št32 mcu£c ; 1010 krb5_time¡amp mùime ; 1011 krb5_keyblock * msubkey ; 1012 krb5_ui_4 m£q_numb” ; 1013 krb5_authd©a ** mauthÜiz©iÚ_d©a ; 1014 } tkrb5_auth’tiÿtÜ ; 1016  s_krb5_tkt_auth’t { 1017 krb5_magic mmagic ; 1018 krb5_tick‘ * mtick‘ ; 1019 krb5_auth’tiÿtÜ * mauth’tiÿtÜ ; 1020 krb5_æags m­_ÝtiÚs ; 1021 } tkrb5_tkt_auth’t ; 1024  s_krb5_üeds { 1025 krb5_magic mmagic ; 1026 krb5_´šc® mþ›Á ; 1027 krb5_´šc® m£rv” ; 1028 krb5_keyblock mkeyblock ; 1029 krb5_tick‘_times mtimes ; 1030 krb5_boÞ—n mis_skey ; 1032 krb5_æags mtick‘_æags ; 1033 krb5_add»ss ** madd»s£s ; 1034 krb5_d©a mtick‘ ; 1035 krb5_d©a m£cÚd_tick‘ ; 1038 krb5_authd©a ** mauthd©a ; 1039 } tkrb5_üeds ; 1042  s_krb5_Ï¡_»q_’Œy { 1043 krb5_magic mmagic ; 1044 krb5_št32 mÌ_ty³ ; 1045 krb5_time¡amp mv®ue ; 1046 } tkrb5_Ï¡_»q_’Œy ; 1049  s_krb5_·_d©a { 1050 krb5_magic mmagic ; 1051 krb5_´—uthty³ m·_ty³ ; 1052  mËngth ; 1053 krb5_où‘ * mcÚ‹Ás ; 1054 } tkrb5_·_d©a ; 1056  s_krb5_kdc_»q { 1057 krb5_magic mmagic ; 1058 krb5_msgty³ mmsg_ty³ ; 1059 krb5_·_d©a ** m·d©a ; 1061 krb5_æags mkdc_ÝtiÚs ; 1062 krb5_´šc® mþ›Á ; 1063 krb5_´šc® m£rv” ; 1065 krb5_time¡amp mäom ; 1066 krb5_time¡amp mtžl ; 1067 krb5_time¡amp m¹ime ; 1068 krb5_št32 mnÚû ; 1069  mnkty³s ; 1070 krb5_’ùy³ * mkty³ ; 1071 krb5_add»ss ** madd»s£s ; 1072 krb5_’c_d©a mauthÜiz©iÚ_d©a ; 1073 krb5_authd©a ** muÃnc_authd©a ; 1075 krb5_tick‘ ** m£cÚd_tick‘ ; 1076 } tkrb5_kdc_»q ; 1078  s_krb5_’c_kdc_»p_·¹ { 1079 krb5_magic mmagic ; 1081 krb5_msgty³ mmsg_ty³ ; 1082 krb5_keyblock * m£ssiÚ ; 1083 krb5_Ï¡_»q_’Œy ** mÏ¡_»q ; 1084 krb5_št32 mnÚû ; 1085 krb5_time¡amp mkey_exp ; 1086 krb5_æags mæags ; 1087 krb5_tick‘_times mtimes ; 1088 krb5_´šc® m£rv” ; 1089 krb5_add»ss ** mÿddrs ; 1091 } tkrb5_’c_kdc_»p_·¹ ; 1093  s_krb5_kdc_»p { 1094 krb5_magic mmagic ; 1096 krb5_msgty³ mmsg_ty³ ; 1097 krb5_·_d©a ** m·d©a ; 1098 krb5_´šc® mþ›Á ; 1099 krb5_tick‘ * mtick‘ ; 1100 krb5_’c_d©a m’c_·¹ ; 1102 krb5_’c_kdc_»p_·¹ * m’c_·¹2 ; 1103 } tkrb5_kdc_»p ; 1106  s_krb5_”rÜ { 1107 krb5_magic mmagic ; 1109 krb5_time¡amp mùime ; 1110 krb5_št32 mcu£c ; 1111 krb5_št32 msu£c ; 1112 krb5_time¡amp m¡ime ; 1113 krb5_ui_4 m”rÜ ; 1114 krb5_´šc® mþ›Á ; 1116 krb5_´šc® m£rv” ; 1117 krb5_d©a m‹xt ; 1118 krb5_d©a me_d©a ; 1119 } tkrb5_”rÜ ; 1121  s_krb5_­_»q { 1122 krb5_magic mmagic ; 1123 krb5_æags m­_ÝtiÚs ; 1124 krb5_tick‘ * mtick‘ ; 1125 krb5_’c_d©a mauth’tiÿtÜ ; 1126 } tkrb5_­_»q ; 1128  s_krb5_­_»p { 1129 krb5_magic mmagic ; 1130 krb5_’c_d©a m’c_·¹ ; 1131 } tkrb5_­_»p ; 1133  s_krb5_­_»p_’c_·¹ { 1134 krb5_magic mmagic ; 1135 krb5_time¡amp mùime ; 1136 krb5_št32 mcu£c ; 1137 krb5_keyblock * msubkey ; 1138 krb5_ui_4 m£q_numb” ; 1139 } tkrb5_­_»p_’c_·¹ ; 1141  s_krb5_»¥Ú£ { 1142 krb5_magic mmagic ; 1143 krb5_où‘ mmes§ge_ty³ ; 1144 krb5_d©a m»¥Ú£ ; 1145 krb5_št32 mex³ùed_nÚû ; 1146 krb5_time¡amp m»que¡_time ; 1147 } tkrb5_»¥Ú£ ; 1149  s_krb5_üed_šfo { 1150 krb5_magic mmagic ; 1151 krb5_keyblock * m£ssiÚ ; 1153 krb5_´šc® mþ›Á ; 1154 krb5_´šc® m£rv” ; 1155 krb5_æags mæags ; 1156 krb5_tick‘_times mtimes ; 1158 krb5_add»ss ** mÿddrs ; 1159 } tkrb5_üed_šfo ; 1161  s_krb5_üed_’c_·¹ { 1162 krb5_magic mmagic ; 1163 krb5_št32 mnÚû ; 1164 krb5_time¡amp mtime¡amp ; 1165 krb5_št32 mu£c ; 1166 krb5_add»ss * ms_add»ss ; 1167 krb5_add»ss * mr_add»ss ; 1168 krb5_üed_šfo ** mtick‘_šfo ; 1169 } tkrb5_üed_’c_·¹ ; 1171  s_krb5_üed { 1172 krb5_magic mmagic ; 1173 krb5_tick‘ ** mtick‘s ; 1174 krb5_’c_d©a m’c_·¹ ; 1175 krb5_üed_’c_·¹ * m’c_·¹2 ; 1176 } tkrb5_üed ; 1179  s_·sswd_ph¿£_–em’t { 1180 krb5_magic mmagic ; 1181 krb5_d©a * m·sswd ; 1182 krb5_d©a * mph¿£ ; 1183 } t·sswd_ph¿£_–em’t ; 1185  s_krb5_pwd_d©a { 1186 krb5_magic mmagic ; 1187  m£qu’û_couÁ ; 1188 ·sswd_ph¿£_–em’t ** m–em’t ; 1189 } tkrb5_pwd_d©a ; 1197  #KRB5_AUTH_CONTEXT_DO_TIME 0x00000001 ) 1198  #KRB5_AUTH_CONTEXT_RET_TIME 0x00000002 ) 1199  #KRB5_AUTH_CONTEXT_DO_SEQUENCE 0x00000004 ) 1200  #KRB5_AUTH_CONTEXT_RET_SEQUENCE 0x00000008 ) 1201  #KRB5_AUTH_CONTEXT_PERMIT_ALL 0x00000010 ) 1202  #KRB5_AUTH_CONTEXT_USE_SUBKEY 0x00000020 ) 1204  skrb5_»¶ay_d©a { 1205 krb5_time¡amp mtime¡amp ; 1206 krb5_št32 mu£c ; 1207 krb5_ui_4 m£q ; 1208 } tkrb5_»¶ay_d©a ; 1211  #KRB5_AUTH_CONTEXT_GENERATE_LOCAL_ADDR 0x00000001 ) 1212  #KRB5_AUTH_CONTEXT_GENERATE_REMOTE_ADDR 0x00000002 ) 1213  #KRB5_AUTH_CONTEXT_GENERATE_LOCAL_FULL_ADDR 0x00000004 ) 1214  #KRB5_AUTH_CONTEXT_GENERATE_REMOTE_FULL_ADDR 0x00000008 ) 1219  gkrb5_”rÜ_code 1220 ( tKRB5_CALLCONV * tkrb5_mk_»q_checksum_func è( tkrb5_cÚ‹xt , tkrb5_auth_cÚ‹xt , *, 1221 tkrb5_d©a **); 1232  krb5_poš‹r tkrb5_cc_cursÜ ; 1234  g_krb5_cÿche ; 1235  _krb5_cÿche * tkrb5_cÿche ; 1236  g_krb5_cc_Ýs ; 1237  _krb5_cc_Ýs tkrb5_cc_Ýs ; 1242  g_krb5_cccÞ_cursÜ ; 1243  _krb5_cccÞ_cursÜ * tkrb5_cccÞ_cursÜ ; 1246  #KRB5_TC_MATCH_TIMES 0x00000001 ) 1247  #KRB5_TC_MATCH_IS_SKEY 0x00000002 ) 1248  #KRB5_TC_MATCH_FLAGS 0x00000004 ) 1249  #KRB5_TC_MATCH_TIMES_EXACT 0x00000008 ) 1250  #KRB5_TC_MATCH_FLAGS_EXACT 0x00000010 ) 1251  #KRB5_TC_MATCH_AUTHDATA 0x00000020 ) 1252  #KRB5_TC_MATCH_SRV_NAMEONLY 0x00000040 ) 1253  #KRB5_TC_MATCH_2ND_TKT 0x00000080 ) 1254  #KRB5_TC_MATCH_KTYPE 0x00000100 ) 1255  #KRB5_TC_SUPPORTED_KTYPES 0x00000200 ) 1258  #KRB5_TC_OPENCLOSE 0x00000001 ) 1259  #KRB5_TC_NOTICKET 0x00000002 ) 1261 cÚ¡ * KRB5_CALLCONV 1262 krb5_cc_g‘_Çme ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche ); 1264 krb5_”rÜ_code KRB5_CALLCONV 1265 krb5_cc_g’_Ãw ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche * ÿche ); 1267 krb5_”rÜ_code KRB5_CALLCONV 1268 krb5_cc_š™Ÿlize ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche , 1269 krb5_´šc® ´šc® ); 1271 krb5_”rÜ_code KRB5_CALLCONV 1272 krb5_cc_de¡roy ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche ); 1274 krb5_”rÜ_code KRB5_CALLCONV 1275 krb5_cc_þo£ ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche ); 1277 krb5_”rÜ_code KRB5_CALLCONV 1278 krb5_cc_¡Üe_üed ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche , 1279 krb5_üeds * üeds ); 1281 krb5_”rÜ_code KRB5_CALLCONV 1282 krb5_cc_»Œ›ve_üed ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche , 1283 krb5_æags æags , krb5_üeds * müeds , 1284 krb5_üeds * üeds ); 1286 krb5_”rÜ_code KRB5_CALLCONV 1287 krb5_cc_g‘_´šc® ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche , 1288 krb5_´šc® * ´šc® ); 1290 krb5_”rÜ_code KRB5_CALLCONV 1291 krb5_cc_¡¬t_£q_g‘ ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche , 1292 krb5_cc_cursÜ * cursÜ ); 1294 krb5_”rÜ_code KRB5_CALLCONV 1295 krb5_cc_Ãxt_üed ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche , 1296 krb5_cc_cursÜ * cursÜ , krb5_üeds * üeds ); 1298 krb5_”rÜ_code KRB5_CALLCONV 1299 krb5_cc_’d_£q_g‘ ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche , 1300 krb5_cc_cursÜ * cursÜ ); 1302 krb5_”rÜ_code KRB5_CALLCONV 1303 krb5_cc_»move_üed ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche , krb5_æags æags , 1304 krb5_üeds * üeds ); 1306 krb5_”rÜ_code KRB5_CALLCONV 1307 krb5_cc_£t_æags ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche , krb5_æags æags ); 1309 krb5_”rÜ_code KRB5_CALLCONV 1310 krb5_cc_g‘_æags ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche , krb5_æags * æags ); 1312 cÚ¡ * KRB5_CALLCONV 1313 krb5_cc_g‘_ty³ ( krb5_cÚ‹xt cÚ‹xt , krb5_cÿche ÿche ); 1315 krb5_”rÜ_code KRB5_CALLCONV 1316 krb5_cccÞ_cursÜ_Ãw ( krb5_cÚ‹xt cÚ‹xt , krb5_cccÞ_cursÜ * cursÜ ); 1318 krb5_”rÜ_code KRB5_CALLCONV 1319 krb5_cccÞ_cursÜ_Ãxt ( 1320 krb5_cÚ‹xt cÚ‹xt , 1321 krb5_cccÞ_cursÜ cursÜ , 1322 krb5_cÿche * cÿche ); 1324 krb5_”rÜ_code KRB5_CALLCONV 1325 krb5_cccÞ_cursÜ_ä“ ( krb5_cÚ‹xt cÚ‹xt , krb5_cccÞ_cursÜ * cursÜ ); 1327 krb5_”rÜ_code KRB5_CALLCONV 1328 krb5_cc_Ãw_unique ( 1329 krb5_cÚ‹xt cÚ‹xt , 1330 cÚ¡ * ty³ , 1331 cÚ¡ * hšt , 1332 krb5_cÿche * id ); 1342  gkrb5_rc_¡ ; 1343  krb5_rc_¡ * tkrb5_rÿche ; 1355  #MAX_KEYTAB_NAME_LEN 1100 ) 1357  krb5_poš‹r tkrb5_kt_cursÜ ; 1359  skrb5_keyb_’Œy_¡ { 1360 krb5_magic mmagic ; 1361 krb5_´šc® m´šc® ; 1362 krb5_time¡amp mtime¡amp ; 1363 krb5_kvno mvno ; 1364 krb5_keyblock mkey ; 1365 } tkrb5_keyb_’Œy ; 1367 #ià KRB5_PRIVATE 1368  g_krb5_kt_Ýs ; 1369  s_krb5_kt { 1370 krb5_magic mmagic ; 1371 cÚ¡  _krb5_kt_Ýs * mÝs ; 1372 krb5_poš‹r md©a ; 1373 } * tkrb5_keyb ; 1375  g_krb5_kt ; 1376  _krb5_kt * tkrb5_keyb ; 1379 * KRB5_CALLCONV 1380 krb5_kt_g‘_ty³ ( krb5_cÚ‹xt , krb5_keyb keyb ); 1381 krb5_”rÜ_code KRB5_CALLCONV 1382 krb5_kt_g‘_Çme ( krb5_cÚ‹xt cÚ‹xt , krb5_keyb keyb , * Çme , 1383  Çm–’ ); 1384 krb5_”rÜ_code KRB5_CALLCONV 1385 krb5_kt_þo£ ( krb5_cÚ‹xt cÚ‹xt , krb5_keyb keyb ); 1386 krb5_”rÜ_code KRB5_CALLCONV 1387 krb5_kt_g‘_’Œy ( krb5_cÚ‹xt cÚ‹xt , krb5_keyb keyb , 1388 krb5_cÚ¡_´šc® ´šc® , krb5_kvno vno , 1389 krb5_’ùy³ ’ùy³ , krb5_keyb_’Œy * ’Œy ); 1390 krb5_”rÜ_code KRB5_CALLCONV 1391 krb5_kt_¡¬t_£q_g‘ ( krb5_cÚ‹xt cÚ‹xt , krb5_keyb keyb , 1392 krb5_kt_cursÜ * cursÜ ); 1393 krb5_”rÜ_code KRB5_CALLCONV 1394 krb5_kt_Ãxt_’Œy ( krb5_cÚ‹xt cÚ‹xt , krb5_keyb keyb , 1395 krb5_keyb_’Œy * ’Œy , krb5_kt_cursÜ * cursÜ ); 1396 krb5_”rÜ_code KRB5_CALLCONV 1397 krb5_kt_’d_£q_g‘ ( krb5_cÚ‹xt cÚ‹xt , krb5_keyb keyb , 1398 krb5_kt_cursÜ * cursÜ ); 1408 krb5_”rÜ_code KRB5_CALLCONV gkrb5_š™_cÚ‹xt 1409 ( gkrb5_cÚ‹xt *); 1410 krb5_”rÜ_code KRB5_CALLCONV gkrb5_š™_£cu»_cÚ‹xt 1411 ( gkrb5_cÚ‹xt *); 1412  KRB5_CALLCONV gkrb5_ä“_cÚ‹xt 1413 ( gkrb5_cÚ‹xt ); 1414 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cÝy_cÚ‹xt 1415 ( gkrb5_cÚ‹xt , krb5_context *); 1417 #ià KRB5_PRIVATE 1418 krb5_”rÜ_code gkrb5_£t_deçuÉ_š_tkt_kty³s 1419 ( gkrb5_cÚ‹xt , 1420 cÚ¡ gkrb5_’ùy³ *); 1421 krb5_”rÜ_code gkrb5_g‘_deçuÉ_š_tkt_kty³s 1422 ( gkrb5_cÚ‹xt , 1423 gkrb5_’ùy³ **); 1425 krb5_”rÜ_code gkrb5_£t_deçuÉ_tgs_kty³s 1426 ( gkrb5_cÚ‹xt , 1427 cÚ¡ gkrb5_’ùy³ *); 1430 krb5_”rÜ_code KRB5_CALLCONV 1431 gkrb5_£t_deçuÉ_tgs_’ùy³s 1432 ( gkrb5_cÚ‹xt , 1433 cÚ¡ gkrb5_’ùy³ *); 1434 #ià KRB5_PRIVATE 1435 krb5_”rÜ_code KRB5_CALLCONV gkrb5_g‘_tgs_kty³s 1436 ( gkrb5_cÚ‹xt , 1437 gkrb5_cÚ¡_´šc® , 1438 gkrb5_’ùy³ **); 1441 krb5_”rÜ_code KRB5_CALLCONV gkrb5_g‘_³rm™‹d_’ùy³s 1442 ( gkrb5_cÚ‹xt , gkrb5_’ùy³ **); 1444 #ià KRB5_PRIVATE 1445  KRB5_CALLCONV gkrb5_ä“_kty³s 1446 ( gkrb5_cÚ‹xt , gkrb5_’ùy³ *); 1448 krb5_boÞ—n gkrb5_is_³rm™‹d_’ùy³ 1449 ( gkrb5_cÚ‹xt , gkrb5_’ùy³ ); 1452 krb5_boÞ—n KRB5_CALLCONV krb5_is_th»ad_§ã (); 1455 #ià KRB5_PRIVATE 1456 krb5_”rÜ_code gkrb5_kdc_»p_deüy±_´oc 1457 ( gkrb5_cÚ‹xt , 1458 cÚ¡ gkrb5_keyblock *, 1459 gkrb5_cÚ¡_poš‹r , 1460 gkrb5_kdc_»p * ); 1461 krb5_”rÜ_code KRB5_CALLCONV gkrb5_deüy±_tkt_·¹ 1462 ( gkrb5_cÚ‹xt , 1463 cÚ¡ gkrb5_keyblock *, 1464 gkrb5_tick‘ * ); 1465 krb5_”rÜ_code gkrb5_g‘_üed_äom_kdc 1466 ( gkrb5_cÚ‹xt , 1467 gkrb5_cÿche , 1469 gkrb5_üeds *, 1470 gkrb5_üeds **, 1471 gkrb5_üeds *** ); 1472 krb5_”rÜ_code gkrb5_g‘_üed_äom_kdc_v®id©e 1473 ( gkrb5_cÚ‹xt , 1474 gkrb5_cÿche , 1476 gkrb5_üeds *, 1477 gkrb5_üeds **, 1478 gkrb5_üeds *** ); 1479 krb5_”rÜ_code gkrb5_g‘_üed_äom_kdc_»Ãw 1480 ( gkrb5_cÚ‹xt , 1481 gkrb5_cÿche , 1483 gkrb5_üeds *, 1484 gkrb5_üeds **, 1485 gkrb5_üeds *** ); 1487 krb5_”rÜ_code KRB5_CALLCONV 1488 gkrb5št_£rv”_deüy±_tick‘_keyblock 1489 ( krb5_cÚ‹xt gcÚ‹xt , 1490 cÚ¡ krb5_keyblock * gkey , 1491 krb5_tick‘ * gtick‘ ); 1494 krb5_”rÜ_code KRB5_CALLCONV 1495 gkrb5_£rv”_deüy±_tick‘_keyb 1496 ( krb5_cÚ‹xt gcÚ‹xt , 1497 cÚ¡ krb5_keyb gkt , 1498 krb5_tick‘ * gtick‘ ); 1500  KRB5_CALLCONV gkrb5_ä“_tgt_üeds 1501 ( gkrb5_cÚ‹xt , 1502 gkrb5_üeds **); 1504  #KRB5_GC_USER_USER 1 ) 1505  #KRB5_GC_CACHED 2 ) 1507 krb5_”rÜ_code KRB5_CALLCONV gkrb5_g‘_üed’tŸls 1508 ( gkrb5_cÚ‹xt , 1509 gkrb5_æags , 1510 gkrb5_cÿche , 1511 gkrb5_üeds *, 1512 gkrb5_üeds **); 1513 krb5_”rÜ_code KRB5_CALLCONV gkrb5_g‘_üed’tŸls_v®id©e 1514 ( gkrb5_cÚ‹xt , 1515 gkrb5_æags , 1516 gkrb5_cÿche , 1517 gkrb5_üeds *, 1518 gkrb5_üeds **); 1519 krb5_”rÜ_code KRB5_CALLCONV gkrb5_g‘_üed’tŸls_»Ãw 1520 ( gkrb5_cÚ‹xt , 1521 gkrb5_æags , 1522 gkrb5_cÿche , 1523 gkrb5_üeds *, 1524 gkrb5_üeds **); 1525 #ià KRB5_PRIVATE 1526 krb5_”rÜ_code gkrb5_g‘_üed_vŸ_tkt 1527 ( gkrb5_cÚ‹xt , 1528 gkrb5_üeds *, 1529 gkrb5_æags , 1530 krb5_add»ss * const *, 1531 gkrb5_üeds *, 1532 gkrb5_üeds **); 1534 krb5_”rÜ_code KRB5_CALLCONV gkrb5_mk_»q 1535 ( gkrb5_cÚ‹xt , 1536 gkrb5_auth_cÚ‹xt *, 1537 gkrb5_æags , 1540 gkrb5_d©a *, 1541 gkrb5_cÿche , 1542 gkrb5_d©a * ); 1543 krb5_”rÜ_code KRB5_CALLCONV gkrb5_mk_»q_ex‹nded 1544 ( gkrb5_cÚ‹xt , 1545 gkrb5_auth_cÚ‹xt *, 1546 gkrb5_æags , 1547 gkrb5_d©a *, 1548 gkrb5_üeds *, 1549 gkrb5_d©a * ); 1550 krb5_”rÜ_code KRB5_CALLCONV gkrb5_mk_»p 1551 ( gkrb5_cÚ‹xt , 1552 gkrb5_auth_cÚ‹xt , 1553 gkrb5_d©a *); 1554 krb5_”rÜ_code KRB5_CALLCONV gkrb5_rd_»p 1555 ( gkrb5_cÚ‹xt , 1556 gkrb5_auth_cÚ‹xt , 1557 cÚ¡ gkrb5_d©a *, 1558 gkrb5_­_»p_’c_·¹ **); 1559 krb5_”rÜ_code KRB5_CALLCONV gkrb5_mk_”rÜ 1560 ( gkrb5_cÚ‹xt , 1561 cÚ¡ gkrb5_”rÜ *, 1562 gkrb5_d©a * ); 1563 krb5_”rÜ_code KRB5_CALLCONV gkrb5_rd_”rÜ 1564 ( gkrb5_cÚ‹xt , 1565 cÚ¡ gkrb5_d©a *, 1566 gkrb5_”rÜ ** ); 1567 krb5_”rÜ_code KRB5_CALLCONV gkrb5_rd_§ã 1568 ( gkrb5_cÚ‹xt , 1569 gkrb5_auth_cÚ‹xt , 1570 cÚ¡ gkrb5_d©a *, 1571 gkrb5_d©a *, 1572 gkrb5_»¶ay_d©a *); 1573 krb5_”rÜ_code KRB5_CALLCONV gkrb5_rd_´iv 1574 ( gkrb5_cÚ‹xt , 1575 gkrb5_auth_cÚ‹xt , 1576 cÚ¡ gkrb5_d©a *, 1577 gkrb5_d©a *, 1578 gkrb5_»¶ay_d©a *); 1579 krb5_”rÜ_code KRB5_CALLCONV gkrb5_·r£_Çme 1580 ( gkrb5_cÚ‹xt , 1582 gkrb5_´šc® * ); 1583 krb5_”rÜ_code KRB5_CALLCONV gkrb5_uŬ£_Çme 1584 ( gkrb5_cÚ‹xt , 1585 gkrb5_cÚ¡_´šc® , 1587 krb5_”rÜ_code KRB5_CALLCONV gkrb5_uŬ£_Çme_ext 1588 ( gkrb5_cÚ‹xt , 1589 gkrb5_cÚ¡_´šc® , 1593 krb5_”rÜ_code KRB5_CALLCONV gkrb5_£t_´šc®_»®m 1594 ( gkrb5_cÚ‹xt , gkrb5_´šc® , const *); 1596 krb5_boÞ—n KRB5_CALLCONV_WRONG gkrb5_add»ss_£¬ch 1597 ( gkrb5_cÚ‹xt , 1598 cÚ¡ gkrb5_add»ss *, 1599 krb5_add»ss * const *); 1600 krb5_boÞ—n KRB5_CALLCONV gkrb5_add»ss_com·» 1601 ( gkrb5_cÚ‹xt , 1602 cÚ¡ gkrb5_add»ss *, 1603 cÚ¡ gkrb5_add»ss *); 1604  KRB5_CALLCONV gkrb5_add»ss_Üd” 1605 ( gkrb5_cÚ‹xt , 1606 cÚ¡ gkrb5_add»ss *, 1607 cÚ¡ gkrb5_add»ss *); 1608 krb5_boÞ—n KRB5_CALLCONV gkrb5_»®m_com·» 1609 ( gkrb5_cÚ‹xt , 1610 gkrb5_cÚ¡_´šc® , 1611 gkrb5_cÚ¡_´šc® ); 1612 krb5_boÞ—n KRB5_CALLCONV gkrb5_´šc®_com·» 1613 ( gkrb5_cÚ‹xt , 1614 gkrb5_cÚ¡_´šc® , 1615 gkrb5_cÚ¡_´šc® ); 1616 krb5_”rÜ_code KRB5_CALLCONV gkrb5_š™_keyblock 1617 ( gkrb5_cÚ‹xt , krb5_’ùy³ g’ùy³ , 1618 size_t gËngth , krb5_keyblock ** gout ); 1625 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cÝy_keyblock 1626 ( gkrb5_cÚ‹xt , 1627 cÚ¡ gkrb5_keyblock *, 1628 gkrb5_keyblock **); 1629 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cÝy_keyblock_cÚ‹Ás 1630 ( gkrb5_cÚ‹xt , 1631 cÚ¡ gkrb5_keyblock *, 1632 gkrb5_keyblock *); 1633 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cÝy_üeds 1634 ( gkrb5_cÚ‹xt , 1635 cÚ¡ gkrb5_üeds *, 1636 gkrb5_üeds **); 1637 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cÝy_d©a 1638 ( gkrb5_cÚ‹xt , 1639 cÚ¡ gkrb5_d©a *, 1640 gkrb5_d©a **); 1641 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cÝy_´šc® 1642 ( gkrb5_cÚ‹xt , 1643 gkrb5_cÚ¡_´šc® , 1644 gkrb5_´šc® *); 1645 #ià KRB5_PRIVATE 1646 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cÝy_addr 1647 ( gkrb5_cÚ‹xt , 1648 cÚ¡ gkrb5_add»ss *, 1649 gkrb5_add»ss **); 1651 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cÝy_add»s£s 1652 ( gkrb5_cÚ‹xt , 1653 krb5_add»ss * const *, 1654 gkrb5_add»ss ***); 1655 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cÝy_tick‘ 1656 ( gkrb5_cÚ‹xt , 1657 cÚ¡ gkrb5_tick‘ *, 1658 gkrb5_tick‘ **); 1659 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cÝy_authd©a 1660 ( gkrb5_cÚ‹xt , 1661 krb5_authd©a * const *, 1662 gkrb5_authd©a ***); 1663 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cÝy_auth’tiÿtÜ 1664 ( gkrb5_cÚ‹xt , 1665 cÚ¡ gkrb5_auth’tiÿtÜ *, 1666 gkrb5_auth’tiÿtÜ **); 1667 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cÝy_checksum 1668 ( gkrb5_cÚ‹xt , 1669 cÚ¡ gkrb5_checksum *, 1670 gkrb5_checksum **); 1671 #ià KRB5_PRIVATE 1672  gkrb5_š™_‘s 1673 ( gkrb5_cÚ‹xt ); 1674  gkrb5_ä“_‘s 1675 ( gkrb5_cÚ‹xt ); 1676 krb5_”rÜ_code gkrb5_g’”©e_subkey 1677 ( gkrb5_cÚ‹xt , 1678 cÚ¡ gkrb5_keyblock *, krb5_keyblock **); 1679 krb5_”rÜ_code gkrb5_g’”©e_£q_numb” 1680 ( gkrb5_cÚ‹xt , 1681 cÚ¡ gkrb5_keyblock *, gkrb5_ui_4 *); 1683 krb5_”rÜ_code KRB5_CALLCONV gkrb5_g‘_£rv”_rÿche 1684 ( gkrb5_cÚ‹xt , 1685 cÚ¡ gkrb5_d©a *, gkrb5_rÿche *); 1686 krb5_”rÜ_code KRB5_CALLCONV_C gkrb5_bužd_´šc®_ext 1687 ( gkrb5_cÚ‹xt , gkrb5_´šc® *, , const *, ...); 1688 krb5_”rÜ_code KRB5_CALLCONV_C gkrb5_bužd_´šc® 1689 ( gkrb5_cÚ‹xt , gkrb5_´šc® *, , const *, ...); 1690 #ifdeà va_¡¬t 1692 krb5_”rÜ_code KRB5_CALLCONV gkrb5_bužd_´šc®_va 1693 ( gkrb5_cÚ‹xt , 1694 gkrb5_´šc® , , cÚ¡ *, gva_li¡ ); 1697 krb5_”rÜ_code KRB5_CALLCONV gkrb5_425_cÚv_´šc® 1698 ( gkrb5_cÚ‹xt , 1699 cÚ¡ * gÇme , 1700 cÚ¡ * gš¡ªû , cÚ¡ * g»®m , 1701 krb5_´šc® * g´šc ); 1703 krb5_”rÜ_code KRB5_CALLCONV gkrb5_524_cÚv_´šc® 1704 ( krb5_cÚ‹xt gcÚ‹xt , krb5_cÚ¡_´šc® g´šc , 1705 * gÇme , * gš¡ , * g»®m ); 1707  güed’tŸls ; 1708  KRB5_CALLCONV gkrb5_524_cÚv”t_üeds 1709 ( krb5_cÚ‹xt gcÚ‹xt , krb5_üeds * gv5üeds , 1710  üed’tŸls * gv4üeds ); 1711 #ià KRB5_DEPRECATED 1712  #krb524_cÚv”t_üeds_kdc krb5_524_cÚv”t_üeds ) 1713  #krb524_š™_‘s ( x è(0) ) 1717 #ià KRB5_PRIVATE 1718 krb5_”rÜ_code KRB5_CALLCONV gkrb5_kt_»gi¡” 1719 ( gkrb5_cÚ‹xt , 1720 cÚ¡  g_krb5_kt_Ýs * ); 1723 krb5_”rÜ_code KRB5_CALLCONV gkrb5_kt_»sÞve 1724 ( gkrb5_cÚ‹xt , 1726 gkrb5_keyb * ); 1727 krb5_”rÜ_code KRB5_CALLCONV gkrb5_kt_deçuÉ_Çme 1728 ( gkrb5_cÚ‹xt , 1731 krb5_”rÜ_code KRB5_CALLCONV gkrb5_kt_deçuÉ 1732 ( gkrb5_cÚ‹xt , 1733 gkrb5_keyb * ); 1734 krb5_”rÜ_code KRB5_CALLCONV gkrb5_ä“_keyb_’Œy_cÚ‹Ás 1735 ( gkrb5_cÚ‹xt , 1736 gkrb5_keyb_’Œy * ); 1737 #ià KRB5_PRIVATE 1739 krb5_”rÜ_code KRB5_CALLCONV gkrb5_kt_ä“_’Œy 1740 ( gkrb5_cÚ‹xt , 1741 gkrb5_keyb_’Œy * ); 1745 krb5_”rÜ_code KRB5_CALLCONV gkrb5_kt_»move_’Œy 1746 ( gkrb5_cÚ‹xt , 1747 gkrb5_keyb , 1748 gkrb5_keyb_’Œy * ); 1749 krb5_”rÜ_code KRB5_CALLCONV gkrb5_kt_add_’Œy 1750 ( gkrb5_cÚ‹xt , 1751 gkrb5_keyb , 1752 gkrb5_keyb_’Œy * ); 1753 krb5_”rÜ_code KRB5_CALLCONV_WRONG gkrb5_´šc®2§É 1754 ( gkrb5_cÚ‹xt , 1755 gkrb5_cÚ¡_´šc® , gkrb5_d©a *); 1756 #ià KRB5_PRIVATE 1757 krb5_”rÜ_code gkrb5_´šc®2§É_nÜ—lm 1758 ( gkrb5_cÚ‹xt , 1759 gkrb5_cÚ¡_´šc® , gkrb5_d©a *); 1764 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cc_»sÞve 1765 ( gkrb5_cÚ‹xt , 1767 gkrb5_cÿche * ); 1768 cÚ¡ * KRB5_CALLCONV gkrb5_cc_deçuÉ_Çme 1769 ( gkrb5_cÚ‹xt ); 1770 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cc_£t_deçuÉ_Çme 1771 ( gkrb5_cÚ‹xt , const *); 1772 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cc_deçuÉ 1773 ( gkrb5_cÚ‹xt , 1774 gkrb5_cÿche *); 1775 #ià KRB5_PRIVATE 1776  KRB5_CALLCONV gkrb5_g‘_nÙifiÿtiÚ_mes§ge 1780 krb5_”rÜ_code KRB5_CALLCONV gkrb5_cc_cÝy_üeds 1781 ( krb5_cÚ‹xt gcÚ‹xt , 1782 krb5_cÿche gšcc , 1783 krb5_cÿche goutcc ); 1787 #ià KRB5_PRIVATE 1788 krb5_”rÜ_code gkrb5_check_Œªs™ed_li¡ 1789 ( gkrb5_cÚ‹xt , cÚ¡ krb5_d©a * gŒªs , 1790 cÚ¡ krb5_d©a * g»®m1 , cÚ¡ krb5_d©¨* g»®m2 ); 1794 #ià KRB5_PRIVATE 1795  gkrb5_ä“_»®m_Œ“ 1796 ( gkrb5_cÚ‹xt , 1797 gkrb5_´šc® *); 1801  KRB5_CALLCONV gkrb5_ä“_´šc® 1802 ( gkrb5_cÚ‹xt , gkrb5_´šc® ); 1803  KRB5_CALLCONV gkrb5_ä“_auth’tiÿtÜ 1804 ( gkrb5_cÚ‹xt , gkrb5_auth’tiÿtÜ * ); 1805 #ià KRB5_PRIVATE 1806  KRB5_CALLCONV gkrb5_ä“_auth’tiÿtÜ_cÚ‹Ás 1807 ( gkrb5_cÚ‹xt , gkrb5_auth’tiÿtÜ * ); 1809  KRB5_CALLCONV gkrb5_ä“_add»s£s 1810 ( gkrb5_cÚ‹xt , gkrb5_add»ss ** ); 1811 #ià KRB5_PRIVATE 1812  KRB5_CALLCONV gkrb5_ä“_add»ss 1813 ( gkrb5_cÚ‹xt , gkrb5_add»ss * ); 1815  KRB5_CALLCONV gkrb5_ä“_authd©a 1816 ( gkrb5_cÚ‹xt , gkrb5_authd©a ** ); 1817 #ià KRB5_PRIVATE 1818  KRB5_CALLCONV gkrb5_ä“_’c_tkt_·¹ 1819 ( gkrb5_cÚ‹xt , gkrb5_’c_tkt_·¹ * ); 1821  KRB5_CALLCONV gkrb5_ä“_tick‘ 1822 ( gkrb5_cÚ‹xt , gkrb5_tick‘ * ); 1823 #ià KRB5_PRIVATE 1824  KRB5_CALLCONV gkrb5_ä“_tick‘s 1825 ( gkrb5_cÚ‹xt , gkrb5_tick‘ ** ); 1826  KRB5_CALLCONV gkrb5_ä“_kdc_»q 1827 ( gkrb5_cÚ‹xt , gkrb5_kdc_»q * ); 1828  KRB5_CALLCONV gkrb5_ä“_kdc_»p 1829 ( gkrb5_cÚ‹xt , gkrb5_kdc_»p * ); 1830  KRB5_CALLCONV gkrb5_ä“_Ï¡_»q 1831 ( gkrb5_cÚ‹xt , gkrb5_Ï¡_»q_’Œy ** ); 1832  KRB5_CALLCONV gkrb5_ä“_’c_kdc_»p_·¹ 1833 ( gkrb5_cÚ‹xt , gkrb5_’c_kdc_»p_·¹ * ); 1835  KRB5_CALLCONV gkrb5_ä“_”rÜ 1836 ( gkrb5_cÚ‹xt , gkrb5_”rÜ * ); 1837 #ià KRB5_PRIVATE 1838  KRB5_CALLCONV gkrb5_ä“_­_»q 1839 ( gkrb5_cÚ‹xt , gkrb5_­_»q * ); 1840  KRB5_CALLCONV gkrb5_ä“_­_»p 1841 ( gkrb5_cÚ‹xt , gkrb5_­_»p * ); 1842  KRB5_CALLCONV gkrb5_ä“_üed 1843 ( gkrb5_cÚ‹xt , gkrb5_üed *); 1845  KRB5_CALLCONV gkrb5_ä“_üeds 1846 ( gkrb5_cÚ‹xt , gkrb5_üeds *); 1847  KRB5_CALLCONV gkrb5_ä“_üed_cÚ‹Ás 1848 ( gkrb5_cÚ‹xt , gkrb5_üeds *); 1849 #ià KRB5_PRIVATE 1850  KRB5_CALLCONV gkrb5_ä“_üed_’c_·¹ 1851 ( gkrb5_cÚ‹xt , gkrb5_üed_’c_·¹ *); 1853  KRB5_CALLCONV gkrb5_ä“_checksum 1854 ( gkrb5_cÚ‹xt , gkrb5_checksum *); 1855  KRB5_CALLCONV gkrb5_ä“_checksum_cÚ‹Ás 1856 ( gkrb5_cÚ‹xt , gkrb5_checksum *); 1857  KRB5_CALLCONV gkrb5_ä“_keyblock 1858 ( gkrb5_cÚ‹xt , gkrb5_keyblock *); 1859  KRB5_CALLCONV gkrb5_ä“_keyblock_cÚ‹Ás 1860 ( gkrb5_cÚ‹xt , gkrb5_keyblock *); 1861 #ià KRB5_PRIVATE 1862  KRB5_CALLCONV gkrb5_ä“_·_d©a 1863 ( gkrb5_cÚ‹xt , gkrb5_·_d©a **); 1865  KRB5_CALLCONV gkrb5_ä“_­_»p_’c_·¹ 1866 ( gkrb5_cÚ‹xt , gkrb5_­_»p_’c_·¹ *); 1867 #ià KRB5_PRIVATE 1868  KRB5_CALLCONV gkrb5_ä“_tkt_auth’t 1869 ( gkrb5_cÚ‹xt , gkrb5_tkt_auth’t *); 1870  KRB5_CALLCONV gkrb5_ä“_pwd_d©a 1871 ( gkrb5_cÚ‹xt , gkrb5_pwd_d©a *); 1872  KRB5_CALLCONV gkrb5_ä“_pwd_£qu’ûs 1873 ( gkrb5_cÚ‹xt , g·sswd_ph¿£_–em’t **); 1875  KRB5_CALLCONV gkrb5_ä“_d©a 1876 ( gkrb5_cÚ‹xt , gkrb5_d©a *); 1877  KRB5_CALLCONV gkrb5_ä“_d©a_cÚ‹Ás 1878 ( gkrb5_cÚ‹xt , gkrb5_d©a *); 1879  KRB5_CALLCONV gkrb5_ä“_uŬ£d_Çme 1880 ( gkrb5_cÚ‹xt , *); 1881  KRB5_CALLCONV gkrb5_ä“_cksumty³s 1882 ( gkrb5_cÚ‹xt , gkrb5_cksumty³ *); 1885 krb5_”rÜ_code KRB5_CALLCONV gkrb5_us_timeofday 1886 ( gkrb5_cÚ‹xt , 1887 gkrb5_time¡amp *, 1888 gkrb5_št32 * ); 1889 krb5_”rÜ_code KRB5_CALLCONV gkrb5_timeofday 1890 ( gkrb5_cÚ‹xt , 1891 gkrb5_time¡amp * ); 1893 krb5_”rÜ_code KRB5_CALLCONV gkrb5_os_loÿÏddr 1894 ( gkrb5_cÚ‹xt , 1895 gkrb5_add»ss ***); 1896 krb5_”rÜ_code KRB5_CALLCONV gkrb5_g‘_deçuÉ_»®m 1897 ( gkrb5_cÚ‹xt , 1899 krb5_”rÜ_code KRB5_CALLCONV gkrb5_£t_deçuÉ_»®m 1900 ( gkrb5_cÚ‹xt , 1902  KRB5_CALLCONV gkrb5_ä“_deçuÉ_»®m 1903 ( gkrb5_cÚ‹xt , 1905 krb5_”rÜ_code KRB5_CALLCONV gkrb5_¢ame_to_´šc® 1906 ( gkrb5_cÚ‹xt , 1909 gkrb5_št32 , 1910 gkrb5_´šc® *); 1911 krb5_”rÜ_code KRB5_CALLCONV 1912 gkrb5_chªge_·sswÜd 1913 ( krb5_cÚ‹xt gcÚ‹xt , krb5_üeds * güeds , * gÃwpw , 1914 * g»suÉ_code , krb5_d©a * g»suÉ_code_¡ršg , 1915 krb5_d©a * g»suÉ_¡ršg ); 1916 krb5_”rÜ_code KRB5_CALLCONV 1917 gkrb5_£t_·sswÜd 1918 ( krb5_cÚ‹xt gcÚ‹xt , krb5_üeds * güeds , * gÃwpw , krb5_´šc® gchªge_·sswÜd_fÜ , 1919 * g»suÉ_code , krb5_d©a * g»suÉ_code_¡ršg , krb5_d©¨* g»suÉ_¡ršg ); 1920 krb5_”rÜ_code KRB5_CALLCONV 1921 gkrb5_£t_·sswÜd_usšg_cÿche 1922 ( krb5_cÚ‹xt gcÚ‹xt , krb5_cÿche gcÿche , * gÃwpw , krb5_´šc® gchªge_·sswÜd_fÜ , 1923 * g»suÉ_code , krb5_d©a * g»suÉ_code_¡ršg , krb5_d©¨* g»suÉ_¡ršg ); 1925 #ià KRB5_PRIVATE 1926 krb5_”rÜ_code gkrb5_£t_cÚfig_fžes 1927 ( gkrb5_cÚ‹xt , const **); 1929 krb5_”rÜ_code KRB5_CALLCONV gkrb5_g‘_deçuÉ_cÚfig_fžes 1930 (*** gfž’ames ); 1932  KRB5_CALLCONV gkrb5_ä“_cÚfig_fžes 1933 (** gfž’ames ); 1936 krb5_”rÜ_code KRB5_CALLCONV 1937 gkrb5_g‘_´ofže 1938 ( gkrb5_cÚ‹xt ,  g_´ofže_t * *); 1940 #ià KRB5_PRIVATE 1941 krb5_”rÜ_code gkrb5_£nd_tgs 1942 ( gkrb5_cÚ‹xt , 1943 gkrb5_æags , 1944 cÚ¡ gkrb5_tick‘_times *, 1945 cÚ¡ gkrb5_’ùy³ *, 1946 gkrb5_cÚ¡_´šc® , 1947 krb5_add»ss * const *, 1948 krb5_authd©a * const *, 1949 krb5_·_d©a * const *, 1950 cÚ¡ gkrb5_d©a *, 1951 gkrb5_üeds *, 1952 gkrb5_»¥Ú£ * ); 1955 #ià KRB5_DEPRECATED 1956 krb5_”rÜ_code KRB5_CALLCONV gkrb5_g‘_š_tkt 1957 ( gkrb5_cÚ‹xt , 1958 gkrb5_æags , 1959 krb5_add»ss * const *, 1960 gkrb5_’ùy³ *, 1961 gkrb5_´—uthty³ *, 1962 $krb5_”rÜ_code ( * )( krb5_cÚ‹xt , 1963 krb5_’ùy³ , 1964 krb5_d©a *, 1965 krb5_cÚ¡_poš‹r , 1966 krb5_keyblock **), 1967 krb5_cÚ¡_poš‹r , 1968 $krb5_”rÜ_code ( * )( krb5_cÚ‹xt , 1969 cÚ¡ krb5_keyblock *, 1970 krb5_cÚ¡_poš‹r , 1971 krb5_kdc_»p * ), 1972 krb5_cÚ¡_poš‹r , 1973 krb5_üeds *, 1974 krb5_cÿche , 1975 krb5_kdc_»p ** ); 1977 krb5_”rÜ_code KRB5_CALLCONV krb5_g‘_š_tkt_w™h_·sswÜd 1978 ( krb5_cÚ‹xt , 1979 krb5_æags , 1980 krb5_add»ss * const *, 1981 krb5_’ùy³ *, 1982 krb5_´—uthty³ *, 1984 krb5_cÿche , 1985 krb5_üeds *, 1986 krb5_kdc_»p ** ); 1988 krb5_”rÜ_code KRB5_CALLCONV krb5_g‘_š_tkt_w™h_skey 1989 ( krb5_cÚ‹xt , 1990 krb5_æags , 1991 krb5_add»ss * const *, 1992 krb5_’ùy³ *, 1993 krb5_´—uthty³ *, 1994 cÚ¡ krb5_keyblock *, 1995 krb5_cÿche , 1996 krb5_üeds *, 1997 krb5_kdc_»p ** ); 1999 krb5_”rÜ_code KRB5_CALLCONV krb5_g‘_š_tkt_w™h_keyb 2000 ( krb5_cÚ‹xt , 2001 krb5_æags , 2002 krb5_add»ss * const *, 2003 krb5_’ùy³ *, 2004 krb5_´—uthty³ *, 2005 krb5_keyb , 2006 krb5_cÿche , 2007 krb5_üeds *, 2008 krb5_kdc_»p ** ); 2011 #ià KRB5_PRIVATE 2012 krb5_”rÜ_code krb5_decode_kdc_»p 2013 ( krb5_cÚ‹xt , 2014 krb5_d©a *, 2015 cÚ¡ krb5_keyblock *, 2016 krb5_kdc_»p ** ); 2019 krb5_”rÜ_code KRB5_CALLCONV krb5_rd_»q 2020 ( krb5_cÚ‹xt , 2021 krb5_auth_cÚ‹xt *, 2022 cÚ¡ krb5_d©a *, 2023 krb5_cÚ¡_´šc® , 2024 krb5_keyb , 2025 krb5_æags *, 2026 krb5_tick‘ **); 2028 #ià KRB5_PRIVATE 2029 krb5_”rÜ_code krb5_rd_»q_decoded 2030 ( krb5_cÚ‹xt , 2031 krb5_auth_cÚ‹xt *, 2032 cÚ¡ krb5_­_»q *, 2033 krb5_cÚ¡_´šc® , 2034 krb5_keyb , 2035 krb5_æags *, 2036 krb5_tick‘ **); 2038 krb5_”rÜ_code krb5_rd_»q_decoded_ªyæag 2039 ( krb5_cÚ‹xt , 2040 krb5_auth_cÚ‹xt *, 2041 cÚ¡ krb5_­_»q *, 2042 krb5_cÚ¡_´šc® , 2043 krb5_keyb , 2044 krb5_æags *, 2045 krb5_tick‘ **); 2048 krb5_”rÜ_code KRB5_CALLCONV krb5_kt_»ad_£rviû_key 2049 ( krb5_cÚ‹xt , 2050 krb5_poš‹r , 2051 krb5_´šc® , 2052 krb5_kvno , 2053 krb5_’ùy³ , 2054 krb5_keyblock **); 2055 krb5_”rÜ_code KRB5_CALLCONV krb5_mk_§ã 2056 ( krb5_cÚ‹xt , 2057 krb5_auth_cÚ‹xt , 2058 cÚ¡ krb5_d©a *, 2059 krb5_d©a *, 2060 krb5_»¶ay_d©a *); 2061 krb5_”rÜ_code KRB5_CALLCONV krb5_mk_´iv 2062 ( krb5_cÚ‹xt , 2063 krb5_auth_cÚ‹xt , 2064 cÚ¡ krb5_d©a *, 2065 krb5_d©a *, 2066 krb5_»¶ay_d©a *); 2067 #ià KRB5_PRIVATE 2068 krb5_”rÜ_code KRB5_CALLCONV krb5_cc_»gi¡” 2069 ( krb5_cÚ‹xt , 2070 krb5_cc_Ýs *, 2071 krb5_boÞ—n ); 2074 krb5_”rÜ_code KRB5_CALLCONV krb5_£ndauth 2075 ( krb5_cÚ‹xt , 2076 krb5_auth_cÚ‹xt *, 2077 krb5_poš‹r , 2079 krb5_´šc® , 2080 krb5_´šc® , 2081 krb5_æags , 2082 krb5_d©a *, 2083 krb5_üeds *, 2084 krb5_cÿche , 2085 krb5_”rÜ **, 2086 krb5_­_»p_’c_·¹ **, 2087 krb5_üeds **); 2089 krb5_”rÜ_code KRB5_CALLCONV krb5_»cvauth 2090 ( krb5_cÚ‹xt , 2091 krb5_auth_cÚ‹xt *, 2092 krb5_poš‹r , 2094 krb5_´šc® , 2095 krb5_št32 , 2096 krb5_keyb , 2097 krb5_tick‘ **); 2098 krb5_”rÜ_code KRB5_CALLCONV krb5_»cvauth_v”siÚ 2099 ( krb5_cÚ‹xt , 2100 krb5_auth_cÚ‹xt *, 2101 krb5_poš‹r , 2102 krb5_´šc® , 2103 krb5_št32 , 2104 krb5_keyb , 2105 krb5_tick‘ **, 2106 krb5_d©a *); 2108 #ià KRB5_PRIVATE 2109 krb5_”rÜ_code krb5_w®k_»®m_Œ“ 2110 ( krb5_cÚ‹xt , 2111 cÚ¡ krb5_d©a *, 2112 cÚ¡ krb5_d©a *, 2113 krb5_´šc® **, 2117 krb5_”rÜ_code KRB5_CALLCONV krb5_mk_nüed 2118 ( krb5_cÚ‹xt , 2119 krb5_auth_cÚ‹xt , 2120 krb5_üeds **, 2121 krb5_d©a **, 2122 krb5_»¶ay_d©a *); 2124 krb5_”rÜ_code KRB5_CALLCONV krb5_mk_1üed 2125 ( krb5_cÚ‹xt , 2126 krb5_auth_cÚ‹xt , 2127 krb5_üeds *, 2128 krb5_d©a **, 2129 krb5_»¶ay_d©a *); 2131 krb5_”rÜ_code KRB5_CALLCONV krb5_rd_üed 2132 ( krb5_cÚ‹xt , 2133 krb5_auth_cÚ‹xt , 2134 krb5_d©a *, 2135 krb5_üeds ***, 2136 krb5_»¶ay_d©a *); 2138 krb5_”rÜ_code KRB5_CALLCONV krb5_fwd_tgt_üeds 2139 ( krb5_cÚ‹xt , 2140 krb5_auth_cÚ‹xt , 2142 krb5_´šc® , 2143 krb5_´šc® , 2144 krb5_cÿche , 2145  fÜw¬dabË , 2146 krb5_d©a *); 2148 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_š™ 2149 ( krb5_cÚ‹xt , 2150 krb5_auth_cÚ‹xt *); 2152 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_ä“ 2153 ( krb5_cÚ‹xt , 2154 krb5_auth_cÚ‹xt ); 2156 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_£tæags 2157 ( krb5_cÚ‹xt , 2158 krb5_auth_cÚ‹xt , 2159 krb5_št32 ); 2161 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_g‘æags 2162 ( krb5_cÚ‹xt , 2163 krb5_auth_cÚ‹xt , 2164 krb5_št32 *); 2166 krb5_”rÜ_code KRB5_CALLCONV 2167 `krb5_auth_cÚ_£t_checksum_func ( krb5_cÚ‹xt , krb5_auth_cÚ‹xt , 2168 krb5_mk_»q_checksum_func , *); 2170 krb5_”rÜ_code KRB5_CALLCONV 2171 `krb5_auth_cÚ_g‘_checksum_func Ð krb5_cÚ‹xt , krb5_auth_cÚ‹xt , 2172 krb5_mk_»q_checksum_func *, **); 2174 krb5_”rÜ_code KRB5_CALLCONV_WRONG krb5_auth_cÚ_£ddrs 2175 ( krb5_cÚ‹xt , 2176 krb5_auth_cÚ‹xt , 2177 krb5_add»ss *, 2178 krb5_add»ss *); 2180 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_g‘addrs 2181 ( krb5_cÚ‹xt , 2182 krb5_auth_cÚ‹xt , 2183 krb5_add»ss **, 2184 krb5_add»ss **); 2186 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_£Üts 2187 ( krb5_cÚ‹xt , 2188 krb5_auth_cÚ‹xt , 2189 krb5_add»ss *, 2190 krb5_add»ss *); 2192 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_£tu£ru£rkey 2193 ( krb5_cÚ‹xt , 2194 krb5_auth_cÚ‹xt , 2195 krb5_keyblock *); 2197 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_g‘key 2198 ( krb5_cÚ‹xt , 2199 krb5_auth_cÚ‹xt , 2200 krb5_keyblock **); 2202 krb5_”rÜ_code KRB5_CALLCONV `krb5_auth_cÚ_g‘£ndsubkey ( 2203 krb5_cÚ‹xt , krb5_auth_cÚ‹xt , krb5_keyblock **); 2205 krb5_”rÜ_code KRB5_CALLCONV `krb5_auth_cÚ_g‘»cvsubkey ( 2206 krb5_cÚ‹xt , krb5_auth_cÚ‹xt , krb5_keyblock **); 2208 krb5_”rÜ_code KRB5_CALLCONV `krb5_auth_cÚ_£t£ndsubkey ( 2209 krb5_cÚ‹xt , krb5_auth_cÚ‹xt , krb5_keyblock *); 2211 krb5_”rÜ_code KRB5_CALLCONV `krb5_auth_cÚ_£Œecvsubkey ( 2212 krb5_cÚ‹xt , krb5_auth_cÚ‹xt , krb5_keyblock *); 2214 #ià KRB5_DEPRECATED 2215 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_g‘loÿlsubkey 2216 ( krb5_cÚ‹xt , 2217 krb5_auth_cÚ‹xt , 2218 krb5_keyblock **); 2220 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_g‘»mÙesubkey 2221 ( krb5_cÚ‹xt , 2222 krb5_auth_cÚ‹xt , 2223 krb5_keyblock **); 2226 #ià KRB5_PRIVATE 2227 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_£t_»q_cksumty³ 2228 ( krb5_cÚ‹xt , 2229 krb5_auth_cÚ‹xt , 2230 krb5_cksumty³ ); 2232 krb5_”rÜ_code krb5_auth_cÚ_£t_§ã_cksumty³ 2233 ( krb5_cÚ‹xt , 2234 krb5_auth_cÚ‹xt , 2235 krb5_cksumty³ ); 2238 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_g‘loÿl£qnumb” 2239 ( krb5_cÚ‹xt , 2240 krb5_auth_cÚ‹xt , 2241 krb5_št32 *); 2243 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_g‘»mÙe£qnumb” 2244 ( krb5_cÚ‹xt , 2245 krb5_auth_cÚ‹xt , 2246 krb5_št32 *); 2248 #ià KRB5_DEPRECATED 2249 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_š™iveùÜ 2250 ( krb5_cÚ‹xt , 2251 krb5_auth_cÚ‹xt ); 2254 #ià KRB5_PRIVATE 2255 krb5_”rÜ_code krb5_auth_cÚ_£tiveùÜ 2256 ( krb5_cÚ‹xt , 2257 krb5_auth_cÚ‹xt , 2258 krb5_poš‹r ); 2260 krb5_”rÜ_code krb5_auth_cÚ_g‘iveùÜ 2261 ( krb5_cÚ‹xt , 2262 krb5_auth_cÚ‹xt , 2263 krb5_poš‹r *); 2266 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_£Œÿche 2267 ( krb5_cÚ‹xt , 2268 krb5_auth_cÚ‹xt , 2269 krb5_rÿche ); 2271 krb5_”rÜ_code KRB5_CALLCONV_WRONG krb5_auth_cÚ_g‘rÿche 2272 ( krb5_cÚ‹xt , 2273 krb5_auth_cÚ‹xt , 2274 krb5_rÿche *); 2276 #ià KRB5_PRIVATE 2277 krb5_”rÜ_code krb5_auth_cÚ_£”m‘y³s 2278 ( krb5_cÚ‹xt , 2279 krb5_auth_cÚ‹xt , 2280 cÚ¡ krb5_’ùy³ *); 2282 krb5_”rÜ_code krb5_auth_cÚ_g‘³rm‘y³s 2283 ( krb5_cÚ‹xt , 2284 krb5_auth_cÚ‹xt , 2285 krb5_’ùy³ **); 2288 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_g‘auth’tiÿtÜ 2289 ( krb5_cÚ‹xt , 2290 krb5_auth_cÚ‹xt , 2291 krb5_auth’tiÿtÜ **); 2293  #KRB5_REALM_BRANCH_CHAR '.' ) 2303 #ià KRB5_PRIVATE 2304 krb5_”rÜ_code `krb5_»ad_mes§ge ( krb5_cÚ‹xt , krb5_poš‹r , krb5_d©a *); 2305 krb5_”rÜ_code `krb5_wr™e_mes§ge ( krb5_cÚ‹xt , krb5_poš‹r , krb5_d©a *); 2306  `krb5_Ãt_»ad ( krb5_cÚ‹xt , , *, ); 2307  `krb5_Ãt_wr™e ( krb5_cÚ‹xt , , const *, ); 2310 krb5_”rÜ_code KRB5_CALLCONV krb5_»ad_·sswÜd 2311 ( krb5_cÚ‹xt , 2316 krb5_”rÜ_code KRB5_CALLCONV krb5_ªame_to_loÿÊame 2317 ( krb5_cÚ‹xt , 2318 krb5_cÚ¡_´šc® , 2321 krb5_”rÜ_code KRB5_CALLCONV krb5_g‘_ho¡_»®m 2322 ( krb5_cÚ‹xt , 2325 krb5_”rÜ_code KRB5_CALLCONV krb5_g‘_çÎback_ho¡_»®m 2326 ( krb5_cÚ‹xt , 2327 krb5_d©a *, 2329 krb5_”rÜ_code KRB5_CALLCONV krb5_ä“_ho¡_»®m 2330 ( krb5_cÚ‹xt , 2332 #ià KRB5_PRIVATE 2333 krb5_”rÜ_code KRB5_CALLCONV krb5_g‘_»®m_domaš 2334 ( krb5_cÚ‹xt , 2338 krb5_boÞ—n KRB5_CALLCONV krb5_ku£rok 2339 ( krb5_cÚ‹xt , 2340 krb5_´šc® , const *); 2341 krb5_”rÜ_code KRB5_CALLCONV krb5_auth_cÚ_g’addrs 2342 ( krb5_cÚ‹xt , 2343 krb5_auth_cÚ‹xt , 2345 #ià KRB5_PRIVATE 2346 krb5_”rÜ_code krb5_g’_pÜddr 2347 ( krb5_cÚ‹xt , 2348 cÚ¡ krb5_add»ss *, 2349 krb5_cÚ¡_poš‹r , 2350 krb5_add»ss **); 2351 krb5_”rÜ_code krb5_g’_»¶ay_Çme 2352 ( krb5_cÚ‹xt , 2353 cÚ¡ krb5_add»ss *, 2356 krb5_”rÜ_code krb5_make_fuÎaddr 2357 ( krb5_cÚ‹xt , 2358 krb5_add»ss *, 2359 krb5_add»ss *, 2360 krb5_add»ss *); 2363 krb5_”rÜ_code KRB5_CALLCONV krb5_£t_»®_time 2364 ( krb5_cÚ‹xt , krb5_time¡amp , krb5_št32 ); 2366 #ià KRB5_PRIVATE 2367 krb5_”rÜ_code krb5_£t_debuggšg_time 2368 ( krb5_cÚ‹xt , krb5_time¡amp , krb5_št32 ); 2369 krb5_”rÜ_code krb5_u£_Çtu¿l_time 2370 ( krb5_cÚ‹xt ); 2372 krb5_”rÜ_code KRB5_CALLCONV krb5_g‘_time_off£ts 2373 ( krb5_cÚ‹xt , krb5_time¡amp *, krb5_št32 *); 2374 #ià KRB5_PRIVATE 2375 krb5_”rÜ_code krb5_£t_time_off£ts 2376 ( krb5_cÚ‹xt , krb5_time¡amp , krb5_št32 ); 2380 krb5_”rÜ_code KRB5_CALLCONV krb5_¡ršg_to_’ùy³ 2381 (*, krb5_’ùy³ *); 2382 krb5_”rÜ_code KRB5_CALLCONV krb5_¡ršg_to_§Éty³ 2383 (*, krb5_št32 *); 2384 krb5_”rÜ_code KRB5_CALLCONV krb5_¡ršg_to_cksumty³ 2385 (*, krb5_cksumty³ *); 2386 krb5_”rÜ_code KRB5_CALLCONV krb5_¡ršg_to_time¡amp 2387 (*, krb5_time¡amp *); 2388 krb5_”rÜ_code KRB5_CALLCONV krb5_¡ršg_to_d–t 2389 (*, krb5_d–t *); 2390 krb5_”rÜ_code KRB5_CALLCONV krb5_’ùy³_to_¡ršg 2391 ( krb5_’ùy³ , *, size_t ); 2392 krb5_”rÜ_code KRB5_CALLCONV krb5_§Éty³_to_¡ršg 2393 ( krb5_št32 , *, size_t ); 2394 krb5_”rÜ_code KRB5_CALLCONV krb5_cksumty³_to_¡ršg 2395 ( krb5_cksumty³ , *, size_t ); 2396 krb5_”rÜ_code KRB5_CALLCONV krb5_time¡amp_to_¡ršg 2397 ( krb5_time¡amp , *, size_t ); 2398 krb5_”rÜ_code KRB5_CALLCONV krb5_time¡amp_to_sf¡ršg 2399 ( krb5_time¡amp , *, size_t , *); 2400 krb5_”rÜ_code KRB5_CALLCONV krb5_d–t_to_¡ršg 2401 ( krb5_d–t , *, size_t ); 2406  #KRB5_TGS_NAME "krbtgt" ) 2407  #KRB5_TGS_NAME_SIZE 6 ) 2410  #KRB5_RECVAUTH_SKIP_VERSION 0x0001 ) 2411  #KRB5_RECVAUTH_BADAUTHVERS 0x0002 ) 2414  s_krb5_´om± { 2415 * ´om± ; 2416  hidd’ ; 2417 krb5_d©a * »¶y ; 2418 } tkrb5_´om± ; 2420  $krb5_”rÜ_code ( tKRB5_CALLCONV * tkrb5_´om±”_fù )( tkrb5_cÚ‹xt tcÚ‹xt , 2421 * td©a , 2422 cÚ¡ * tÇme , 2423 cÚ¡ * tbªÃr , 2424  tnum_´om±s , 2425 tkrb5_´om± t´om±s []); 2428 krb5_”rÜ_code KRB5_CALLCONV 2429 `krb5_´om±”_posix ( krb5_cÚ‹xt cÚ‹xt , 2430 * d©a , 2431 cÚ¡ * Çme , 2432 cÚ¡ * bªÃr , 2433  num_´om±s , 2434 krb5_´om± ´om±s []); 2436  s_krb5_g‘_š™_üeds_Ýt { 2437 krb5_æags æags ; 2438 krb5_d–t tkt_liã ; 2439 krb5_d–t »Ãw_liã ; 2440  fÜw¬dabË ; 2441  ´oxŸbË ; 2442 krb5_’ùy³ * ‘y³_li¡ ; 2443  ‘y³_li¡_Ëngth ; 2444 krb5_add»ss ** add»ss_li¡ ; 2445 krb5_´—uthty³ * ´—uth_li¡ ; 2446  ´—uth_li¡_Ëngth ; 2447 krb5_d©a * §É ; 2448 } tkrb5_g‘_š™_üeds_Ýt ; 2450  #KRB5_GET_INIT_CREDS_OPT_TKT_LIFE 0x0001 ) 2451  #KRB5_GET_INIT_CREDS_OPT_RENEW_LIFE 0x0002 ) 2452  #KRB5_GET_INIT_CREDS_OPT_FORWARDABLE 0x0004 ) 2453  #KRB5_GET_INIT_CREDS_OPT_PROXIABLE 0x0008 ) 2454  #KRB5_GET_INIT_CREDS_OPT_ETYPE_LIST 0x0010 ) 2455  #KRB5_GET_INIT_CREDS_OPT_ADDRESS_LIST 0x0020 ) 2456  #KRB5_GET_INIT_CREDS_OPT_PREAUTH_LIST 0x0040 ) 2457  #KRB5_GET_INIT_CREDS_OPT_SALT 0x0080 ) 2458  #KRB5_GET_INIT_CREDS_OPT_CHG_PWD_PRMPT 0x0100 ) 2460 krb5_”rÜ_code KRB5_CALLCONV 2461 krb5_g‘_š™_üeds_Ýt_®loc 2462 ( krb5_cÚ‹xt cÚ‹xt , 2463 krb5_g‘_š™_üeds_Ýt ** Ýt ); 2465  KRB5_CALLCONV 2466 krb5_g‘_š™_üeds_Ýt_ä“ 2467 ( krb5_cÚ‹xt cÚ‹xt , 2468 krb5_g‘_š™_üeds_Ýt * Ýt ); 2470  KRB5_CALLCONV 2471 krb5_g‘_š™_üeds_Ýt_š™ 2472 ( krb5_g‘_š™_üeds_Ýt * Ýt ); 2474  KRB5_CALLCONV 2475 krb5_g‘_š™_üeds_Ýt_£t_tkt_liã 2476 ( krb5_g‘_š™_üeds_Ýt * Ýt , 2477 krb5_d–t tkt_liã ); 2479  KRB5_CALLCONV 2480 krb5_g‘_š™_üeds_Ýt_£t_»Ãw_liã 2481 ( krb5_g‘_š™_üeds_Ýt * Ýt , 2482 krb5_d–t »Ãw_liã ); 2484  KRB5_CALLCONV 2485 krb5_g‘_š™_üeds_Ýt_£t_fÜw¬dabË 2486 ( krb5_g‘_š™_üeds_Ýt * Ýt , 2487  fÜw¬dabË ); 2489  KRB5_CALLCONV 2490 krb5_g‘_š™_üeds_Ýt_£t_´oxŸbË 2491 ( krb5_g‘_š™_üeds_Ýt * Ýt , 2492  ´oxŸbË ); 2494  KRB5_CALLCONV 2495 krb5_g‘_š™_üeds_Ýt_£t_‘y³_li¡ 2496 ( krb5_g‘_š™_üeds_Ýt * Ýt , 2497 krb5_’ùy³ * ‘y³_li¡ , 2498  ‘y³_li¡_Ëngth ); 2500  KRB5_CALLCONV 2501 krb5_g‘_š™_üeds_Ýt_£t_add»ss_li¡ 2502 ( krb5_g‘_š™_üeds_Ýt * Ýt , 2503 krb5_add»ss ** add»s£s ); 2505  KRB5_CALLCONV 2506 krb5_g‘_š™_üeds_Ýt_£t_´—uth_li¡ 2507 ( krb5_g‘_š™_üeds_Ýt * Ýt , 2508 krb5_´—uthty³ * ´—uth_li¡ , 2509  ´—uth_li¡_Ëngth ); 2511  KRB5_CALLCONV 2512 krb5_g‘_š™_üeds_Ýt_£t_§É 2513 ( krb5_g‘_š™_üeds_Ýt * Ýt , 2514 krb5_d©a * §É ); 2516  KRB5_CALLCONV 2517 krb5_g‘_š™_üeds_Ýt_£t_chªge_·sswÜd_´om± 2518 ( krb5_g‘_š™_üeds_Ýt * Ýt , 2519  ´om± ); 2522  s_krb5_gic_Ýt_·_d©a { 2523 * ©Œ ; 2524 * v®ue ; 2525 } tkrb5_gic_Ýt_·_d©a ; 2535 krb5_”rÜ_code KRB5_CALLCONV 2536 krb5_g‘_š™_üeds_Ýt_£t_· 2537 ( krb5_cÚ‹xt cÚ‹xt , 2538 krb5_g‘_š™_üeds_Ýt * Ýt , 2539 cÚ¡ * ©Œ , 2540 cÚ¡ * v®ue ); 2542 krb5_”rÜ_code KRB5_CALLCONV 2543 krb5_g‘_š™_üeds_·sswÜd 2544 ( krb5_cÚ‹xt cÚ‹xt , 2545 krb5_üeds * üeds , 2546 krb5_´šc® þ›Á , 2547 * ·sswÜd , 2548 krb5_´om±”_fù ´om±” , 2549 * d©a , 2550 krb5_d–t ¡¬t_time , 2551 * š_tkt_£rviû , 2552 krb5_g‘_š™_üeds_Ýt * k5_gic_ÝtiÚs ); 2554 krb5_”rÜ_code KRB5_CALLCONV 2555 krb5_g‘_š™_üeds_keyb 2556 ( krb5_cÚ‹xt cÚ‹xt , 2557 krb5_üeds * üeds , 2558 krb5_´šc® þ›Á , 2559 krb5_keyb ¬g_keyb , 2560 krb5_d–t ¡¬t_time , 2561 * š_tkt_£rviû , 2562 krb5_g‘_š™_üeds_Ýt * k5_gic_ÝtiÚs ); 2564  s_krb5_v”ify_š™_üeds_Ýt { 2565 krb5_æags æags ; 2566  ­_»q_noçž ; 2567 } tkrb5_v”ify_š™_üeds_Ýt ; 2569  #KRB5_VERIFY_INIT_CREDS_OPT_AP_REQ_NOFAIL 0x0001 ) 2571  KRB5_CALLCONV 2572 krb5_v”ify_š™_üeds_Ýt_š™ 2573 ( krb5_v”ify_š™_üeds_Ýt * k5_vic_ÝtiÚs ); 2574  KRB5_CALLCONV 2575 krb5_v”ify_š™_üeds_Ýt_£t_­_»q_noçž 2576 ( krb5_v”ify_š™_üeds_Ýt * k5_vic_ÝtiÚs , 2577  ­_»q_noçž ); 2579 krb5_”rÜ_code KRB5_CALLCONV 2580 krb5_v”ify_š™_üeds 2581 ( krb5_cÚ‹xt cÚ‹xt , 2582 krb5_üeds * üeds , 2583 krb5_´šc® ­_»q_£rv” , 2584 krb5_keyb ­_»q_keyb , 2585 krb5_cÿche * cÿche , 2586 krb5_v”ify_š™_üeds_Ýt * k5_vic_ÝtiÚs ); 2588 krb5_”rÜ_code KRB5_CALLCONV 2589 krb5_g‘_v®id©ed_üeds 2590 ( krb5_cÚ‹xt cÚ‹xt , 2591 krb5_üeds * üeds , 2592 krb5_´šc® þ›Á , 2593 krb5_cÿche cÿche , 2594 * š_tkt_£rviû ); 2596 krb5_”rÜ_code KRB5_CALLCONV 2597 krb5_g‘_»Ãwed_üeds 2598 ( krb5_cÚ‹xt cÚ‹xt , 2599 krb5_üeds * üeds , 2600 krb5_´šc® þ›Á , 2601 krb5_cÿche cÿche , 2602 * š_tkt_£rviû ); 2604 krb5_”rÜ_code KRB5_CALLCONV 2605 krb5_decode_tick‘ 2606 (cÚ¡ krb5_d©a * code , 2607 krb5_tick‘ ** »p ); 2609  KRB5_CALLCONV 2610 krb5_­pdeçuÉ_¡ršg 2611 ( krb5_cÚ‹xt cÚ‹xt , 2612 cÚ¡ * ­²ame , 2613 cÚ¡ krb5_d©a * »®m , 2614 cÚ¡ * ÝtiÚ , 2615 cÚ¡ * deçuÉ_v®ue , 2616 ** »t_v®ue ); 2618  KRB5_CALLCONV 2619 krb5_­pdeçuÉ_boÞ—n 2620 ( krb5_cÚ‹xt cÚ‹xt , 2621 cÚ¡ * ­²ame , 2622 cÚ¡ krb5_d©a * »®m , 2623 cÚ¡ * ÝtiÚ , 2624  deçuÉ_v®ue , 2625 * »t_v®ue ); 2627 #ià KRB5_PRIVATE 2632 krb5_”rÜ_code KRB5_CALLCONV krb5_»®m_™”©Ü_ü—‹ 2633 ( krb5_cÚ‹xt cÚ‹xt , ** ™”_p ); 2635 krb5_”rÜ_code KRB5_CALLCONV krb5_»®m_™”©Ü 2636 ( krb5_cÚ‹xt cÚ‹xt , ** ™”_p , ** »t_»®m ); 2638  KRB5_CALLCONV krb5_»®m_™”©Ü_ä“ 2639 ( krb5_cÚ‹xt cÚ‹xt , ** ™”_p ); 2641  KRB5_CALLCONV krb5_ä“_»®m_¡ršg 2642 ( krb5_cÚ‹xt cÚ‹xt , * ¡r ); 2649  #KRB5_PROMPT_TYPE_PASSWORD 0x1 ) 2650  #KRB5_PROMPT_TYPE_NEW_PASSWORD 0x2 ) 2651  #KRB5_PROMPT_TYPE_NEW_PASSWORD_AGAIN 0x3 ) 2652  #KRB5_PROMPT_TYPE_PREAUTH 0x4 ) 2654  krb5_št32 tkrb5_´om±_ty³ ; 2656 krb5_´om±_ty³ * KRB5_CALLCONV krb5_g‘_´om±_ty³s 2657 ( krb5_cÚ‹xt cÚ‹xt ); 2660  KRB5_CALLCONV_C 2661 `krb5_£t_”rÜ_mes§ge ( krb5_cÚ‹xt , krb5_”rÜ_code , const *, ...); 2662 #ifdeà va_¡¬t 2663  KRB5_CALLCONV 2664 `krb5_v£t_”rÜ_mes§ge ( krb5_cÚ‹xt , krb5_”rÜ_code , cÚ¡ *, va_li¡ ); 2676 cÚ¡ * KRB5_CALLCONV 2677 `krb5_g‘_”rÜ_mes§ge ( krb5_cÚ‹xt , krb5_”rÜ_code ); 2678  KRB5_CALLCONV 2679 `krb5_ä“_”rÜ_mes§ge ( krb5_cÚ‹xt , const *); 2680  KRB5_CALLCONV 2681 `krb5_þ—r_”rÜ_mes§ge ( krb5_cÚ‹xt ); 2684 #ià TARGET_OS_MAC 2685 #´agm¨ `·ck ( pÝ ) 2688 KRB5INT_END_DECLS 2692  #krb5_cÚ¡ cÚ¡ ) 2701  ~<‘/com_”r.h > 2703  #KRB5KDC_ERR_NONE (-1765328384L) ) 2704  #KRB5KDC_ERR_NAME_EXP (-1765328383L) ) 2705  #KRB5KDC_ERR_SERVICE_EXP (-1765328382L) ) 2706  #KRB5KDC_ERR_BAD_PVNO (-1765328381L) ) 2707  #KRB5KDC_ERR_C_OLD_MAST_KVNO (-1765328380L) ) 2708  #KRB5KDC_ERR_S_OLD_MAST_KVNO (-1765328379L) ) 2709  #KRB5KDC_ERR_C_PRINCIPAL_UNKNOWN (-1765328378L) ) 2710  #KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN (-1765328377L) ) 2711  #KRB5KDC_ERR_PRINCIPAL_NOT_UNIQUE (-1765328376L) ) 2712  #KRB5KDC_ERR_NULL_KEY (-1765328375L) ) 2713  #KRB5KDC_ERR_CANNOT_POSTDATE (-1765328374L) ) 2714  #KRB5KDC_ERR_NEVER_VALID (-1765328373L) ) 2715  #KRB5KDC_ERR_POLICY (-1765328372L) ) 2716  #KRB5KDC_ERR_BADOPTION (-1765328371L) ) 2717  #KRB5KDC_ERR_ETYPE_NOSUPP (-1765328370L) ) 2718  #KRB5KDC_ERR_SUMTYPE_NOSUPP (-1765328369L) ) 2719  #KRB5KDC_ERR_PADATA_TYPE_NOSUPP (-1765328368L) ) 2720  #KRB5KDC_ERR_TRTYPE_NOSUPP (-1765328367L) ) 2721  #KRB5KDC_ERR_CLIENT_REVOKED (-1765328366L) ) 2722  #KRB5KDC_ERR_SERVICE_REVOKED (-1765328365L) ) 2723  #KRB5KDC_ERR_TGT_REVOKED (-1765328364L) ) 2724  #KRB5KDC_ERR_CLIENT_NOTYET (-1765328363L) ) 2725  #KRB5KDC_ERR_SERVICE_NOTYET (-1765328362L) ) 2726  #KRB5KDC_ERR_KEY_EXP (-1765328361L) ) 2727  #KRB5KDC_ERR_PREAUTH_FAILED (-1765328360L) ) 2728  #KRB5KDC_ERR_PREAUTH_REQUIRED (-1765328359L) ) 2729  #KRB5KDC_ERR_SERVER_NOMATCH (-1765328358L) ) 2730  #KRB5PLACEHOLD_27 (-1765328357L) ) 2731  #KRB5PLACEHOLD_28 (-1765328356L) ) 2732  #KRB5KDC_ERR_SVC_UNAVAILABLE (-1765328355L) ) 2733  #KRB5PLACEHOLD_30 (-1765328354L) ) 2734  #KRB5KRB_AP_ERR_BAD_INTEGRITY (-1765328353L) ) 2735  #KRB5KRB_AP_ERR_TKT_EXPIRED (-1765328352L) ) 2736  #KRB5KRB_AP_ERR_TKT_NYV (-1765328351L) ) 2737  #KRB5KRB_AP_ERR_REPEAT (-1765328350L) ) 2738  #KRB5KRB_AP_ERR_NOT_US (-1765328349L) ) 2739  #KRB5KRB_AP_ERR_BADMATCH (-1765328348L) ) 2740  #KRB5KRB_AP_ERR_SKEW (-1765328347L) ) 2741  #KRB5KRB_AP_ERR_BADADDR (-1765328346L) ) 2742  #KRB5KRB_AP_ERR_BADVERSION (-1765328345L) ) 2743  #KRB5KRB_AP_ERR_MSG_TYPE (-1765328344L) ) 2744  #KRB5KRB_AP_ERR_MODIFIED (-1765328343L) ) 2745  #KRB5KRB_AP_ERR_BADORDER (-1765328342L) ) 2746  #KRB5KRB_AP_ERR_ILL_CR_TKT (-1765328341L) ) 2747  #KRB5KRB_AP_ERR_BADKEYVER (-1765328340L) ) 2748  #KRB5KRB_AP_ERR_NOKEY (-1765328339L) ) 2749  #KRB5KRB_AP_ERR_MUT_FAIL (-1765328338L) ) 2750  #KRB5KRB_AP_ERR_BADDIRECTION (-1765328337L) ) 2751  #KRB5KRB_AP_ERR_METHOD (-1765328336L) ) 2752  #KRB5KRB_AP_ERR_BADSEQ (-1765328335L) ) 2753  #KRB5KRB_AP_ERR_INAPP_CKSUM (-1765328334L) ) 2754  #KRB5KRB_AP_PATH_NOT_ACCEPTED (-1765328333L) ) 2755  #KRB5KRB_ERR_RESPONSE_TOO_BIG (-1765328332L) ) 2756  #KRB5PLACEHOLD_53 (-1765328331L) ) 2757  #KRB5PLACEHOLD_54 (-1765328330L) ) 2758  #KRB5PLACEHOLD_55 (-1765328329L) ) 2759  #KRB5PLACEHOLD_56 (-1765328328L) ) 2760  #KRB5PLACEHOLD_57 (-1765328327L) ) 2761  #KRB5PLACEHOLD_58 (-1765328326L) ) 2762  #KRB5PLACEHOLD_59 (-1765328325L) ) 2763  #KRB5KRB_ERR_GENERIC (-1765328324L) ) 2764  #KRB5KRB_ERR_FIELD_TOOLONG (-1765328323L) ) 2765  #KRB5KDC_ERR_CLIENT_NOT_TRUSTED (-1765328322L) ) 2766  #KRB5KDC_ERR_KDC_NOT_TRUSTED (-1765328321L) ) 2767  #KRB5KDC_ERR_INVALID_SIG (-1765328320L) ) 2768  #KRB5KDC_ERR_DH_KEY_PARAMETERS_NOT_ACCEPTED (-1765328319L) ) 2769  #KRB5KDC_ERR_CERTIFICATE_MISMATCH (-1765328318L) ) 2770  #KRB5PLACEHOLD_67 (-1765328317L) ) 2771  #KRB5PLACEHOLD_68 (-1765328316L) ) 2772  #KRB5PLACEHOLD_69 (-1765328315L) ) 2773  #KRB5KDC_ERR_CANT_VERIFY_CERTIFICATE (-1765328314L) ) 2774  #KRB5KDC_ERR_INVALID_CERTIFICATE (-1765328313L) ) 2775  #KRB5KDC_ERR_REVOKED_CERTIFICATE (-1765328312L) ) 2776  #KRB5KDC_ERR_REVOCATION_STATUS_UNKNOWN (-1765328311L) ) 2777  #KRB5KDC_ERR_REVOCATION_STATUS_UNAVAILABLE (-1765328310L) ) 2778  #KRB5KDC_ERR_CLIENT_NAME_MISMATCH (-1765328309L) ) 2779  #KRB5KDC_ERR_KDC_NAME_MISMATCH (-1765328308L) ) 2780  #KRB5KDC_ERR_INCONSISTENT_KEY_PURPOSE (-1765328307L) ) 2781  #KRB5KDC_ERR_DIGEST_IN_CERT_NOT_ACCEPTED (-1765328306L) ) 2782  #KRB5KDC_ERR_PA_CHECKSUM_MUST_BE_INCLUDED (-1765328305L) ) 2783  #KRB5KDC_ERR_DIGEST_IN_SIGNED_DATA_NOT_ACCEPTED (-1765328304L) ) 2784  #KRB5KDC_ERR_PUBLIC_KEY_ENCRYPTION_NOT_SUPPORTED (-1765328303L) ) 2785  #KRB5PLACEHOLD_82 (-1765328302L) ) 2786  #KRB5PLACEHOLD_83 (-1765328301L) ) 2787  #KRB5PLACEHOLD_84 (-1765328300L) ) 2788  #KRB5PLACEHOLD_85 (-1765328299L) ) 2789  #KRB5PLACEHOLD_86 (-1765328298L) ) 2790  #KRB5PLACEHOLD_87 (-1765328297L) ) 2791  #KRB5PLACEHOLD_88 (-1765328296L) ) 2792  #KRB5PLACEHOLD_89 (-1765328295L) ) 2793  #KRB5PLACEHOLD_90 (-1765328294L) ) 2794  #KRB5PLACEHOLD_91 (-1765328293L) ) 2795  #KRB5PLACEHOLD_92 (-1765328292L) ) 2796  #KRB5PLACEHOLD_93 (-1765328291L) ) 2797  #KRB5PLACEHOLD_94 (-1765328290L) ) 2798  #KRB5PLACEHOLD_95 (-1765328289L) ) 2799  #KRB5PLACEHOLD_96 (-1765328288L) ) 2800  #KRB5PLACEHOLD_97 (-1765328287L) ) 2801  #KRB5PLACEHOLD_98 (-1765328286L) ) 2802  #KRB5PLACEHOLD_99 (-1765328285L) ) 2803  #KRB5PLACEHOLD_100 (-1765328284L) ) 2804  #KRB5PLACEHOLD_101 (-1765328283L) ) 2805  #KRB5PLACEHOLD_102 (-1765328282L) ) 2806  #KRB5PLACEHOLD_103 (-1765328281L) ) 2807  #KRB5PLACEHOLD_104 (-1765328280L) ) 2808  #KRB5PLACEHOLD_105 (-1765328279L) ) 2809  #KRB5PLACEHOLD_106 (-1765328278L) ) 2810  #KRB5PLACEHOLD_107 (-1765328277L) ) 2811  #KRB5PLACEHOLD_108 (-1765328276L) ) 2812  #KRB5PLACEHOLD_109 (-1765328275L) ) 2813  #KRB5PLACEHOLD_110 (-1765328274L) ) 2814  #KRB5PLACEHOLD_111 (-1765328273L) ) 2815  #KRB5PLACEHOLD_112 (-1765328272L) ) 2816  #KRB5PLACEHOLD_113 (-1765328271L) ) 2817  #KRB5PLACEHOLD_114 (-1765328270L) ) 2818  #KRB5PLACEHOLD_115 (-1765328269L) ) 2819  #KRB5PLACEHOLD_116 (-1765328268L) ) 2820  #KRB5PLACEHOLD_117 (-1765328267L) ) 2821  #KRB5PLACEHOLD_118 (-1765328266L) ) 2822  #KRB5PLACEHOLD_119 (-1765328265L) ) 2823  #KRB5PLACEHOLD_120 (-1765328264L) ) 2824  #KRB5PLACEHOLD_121 (-1765328263L) ) 2825  #KRB5PLACEHOLD_122 (-1765328262L) ) 2826  #KRB5PLACEHOLD_123 (-1765328261L) ) 2827  #KRB5PLACEHOLD_124 (-1765328260L) ) 2828  #KRB5PLACEHOLD_125 (-1765328259L) ) 2829  #KRB5PLACEHOLD_126 (-1765328258L) ) 2830  #KRB5PLACEHOLD_127 (-1765328257L) ) 2831  #KRB5_ERR_RCSID (-1765328256L) ) 2832  #KRB5_LIBOS_BADLOCKFLAG (-1765328255L) ) 2833  #KRB5_LIBOS_CANTREADPWD (-1765328254L) ) 2834  #KRB5_LIBOS_BADPWDMATCH (-1765328253L) ) 2835  #KRB5_LIBOS_PWDINTR (-1765328252L) ) 2836  #KRB5_PARSE_ILLCHAR (-1765328251L) ) 2837  #KRB5_PARSE_MALFORMED (-1765328250L) ) 2838  #KRB5_CONFIG_CANTOPEN (-1765328249L) ) 2839  #KRB5_CONFIG_BADFORMAT (-1765328248L) ) 2840  #KRB5_CONFIG_NOTENUFSPACE (-1765328247L) ) 2841  #KRB5_BADMSGTYPE (-1765328246L) ) 2842  #KRB5_CC_BADNAME (-1765328245L) ) 2843  #KRB5_CC_UNKNOWN_TYPE (-1765328244L) ) 2844  #KRB5_CC_NOTFOUND (-1765328243L) ) 2845  #KRB5_CC_END (-1765328242L) ) 2846  #KRB5_NO_TKT_SUPPLIED (-1765328241L) ) 2847  #KRB5KRB_AP_WRONG_PRINC (-1765328240L) ) 2848  #KRB5KRB_AP_ERR_TKT_INVALID (-1765328239L) ) 2849  #KRB5_PRINC_NOMATCH (-1765328238L) ) 2850  #KRB5_KDCREP_MODIFIED (-1765328237L) ) 2851  #KRB5_KDCREP_SKEW (-1765328236L) ) 2852  #KRB5_IN_TKT_REALM_MISMATCH (-1765328235L) ) 2853  #KRB5_PROG_ETYPE_NOSUPP (-1765328234L) ) 2854  #KRB5_PROG_KEYTYPE_NOSUPP (-1765328233L) ) 2855  #KRB5_WRONG_ETYPE (-1765328232L) ) 2856  #KRB5_PROG_SUMTYPE_NOSUPP (-1765328231L) ) 2857  #KRB5_REALM_UNKNOWN (-1765328230L) ) 2858  #KRB5_SERVICE_UNKNOWN (-1765328229L) ) 2859  #KRB5_KDC_UNREACH (-1765328228L) ) 2860  #KRB5_NO_LOCALNAME (-1765328227L) ) 2861  #KRB5_MUTUAL_FAILED (-1765328226L) ) 2862  #KRB5_RC_TYPE_EXISTS (-1765328225L) ) 2863  #KRB5_RC_MALLOC (-1765328224L) ) 2864  #KRB5_RC_TYPE_NOTFOUND (-1765328223L) ) 2865  #KRB5_RC_UNKNOWN (-1765328222L) ) 2866  #KRB5_RC_REPLAY (-1765328221L) ) 2867  #KRB5_RC_IO (-1765328220L) ) 2868  #KRB5_RC_NOIO (-1765328219L) ) 2869  #KRB5_RC_PARSE (-1765328218L) ) 2870  #KRB5_RC_IO_EOF (-1765328217L) ) 2871  #KRB5_RC_IO_MALLOC (-1765328216L) ) 2872  #KRB5_RC_IO_PERM (-1765328215L) ) 2873  #KRB5_RC_IO_IO (-1765328214L) ) 2874  #KRB5_RC_IO_UNKNOWN (-1765328213L) ) 2875  #KRB5_RC_IO_SPACE (-1765328212L) ) 2876  #KRB5_TRANS_CANTOPEN (-1765328211L) ) 2877  #KRB5_TRANS_BADFORMAT (-1765328210L) ) 2878  #KRB5_LNAME_CANTOPEN (-1765328209L) ) 2879  #KRB5_LNAME_NOTRANS (-1765328208L) ) 2880  #KRB5_LNAME_BADFORMAT (-1765328207L) ) 2881  #KRB5_CRYPTO_INTERNAL (-1765328206L) ) 2882  #KRB5_KT_BADNAME (-1765328205L) ) 2883  #KRB5_KT_UNKNOWN_TYPE (-1765328204L) ) 2884  #KRB5_KT_NOTFOUND (-1765328203L) ) 2885  #KRB5_KT_END (-1765328202L) ) 2886  #KRB5_KT_NOWRITE (-1765328201L) ) 2887  #KRB5_KT_IOERR (-1765328200L) ) 2888  #KRB5_NO_TKT_IN_RLM (-1765328199L) ) 2889  #KRB5DES_BAD_KEYPAR (-1765328198L) ) 2890  #KRB5DES_WEAK_KEY (-1765328197L) ) 2891  #KRB5_BAD_ENCTYPE (-1765328196L) ) 2892  #KRB5_BAD_KEYSIZE (-1765328195L) ) 2893  #KRB5_BAD_MSIZE (-1765328194L) ) 2894  #KRB5_CC_TYPE_EXISTS (-1765328193L) ) 2895  #KRB5_KT_TYPE_EXISTS (-1765328192L) ) 2896  #KRB5_CC_IO (-1765328191L) ) 2897  #KRB5_FCC_PERM (-1765328190L) ) 2898  #KRB5_FCC_NOFILE (-1765328189L) ) 2899  #KRB5_FCC_INTERNAL (-1765328188L) ) 2900  #KRB5_CC_WRITE (-1765328187L) ) 2901  #KRB5_CC_NOMEM (-1765328186L) ) 2902  #KRB5_CC_FORMAT (-1765328185L) ) 2903  #KRB5_CC_NOT_KTYPE (-1765328184L) ) 2904  #KRB5_INVALID_FLAGS (-1765328183L) ) 2905  #KRB5_NO_2ND_TKT (-1765328182L) ) 2906  #KRB5_NOCREDS_SUPPLIED (-1765328181L) ) 2907  #KRB5_SENDAUTH_BADAUTHVERS (-1765328180L) ) 2908  #KRB5_SENDAUTH_BADAPPLVERS (-1765328179L) ) 2909  #KRB5_SENDAUTH_BADRESPONSE (-1765328178L) ) 2910  #KRB5_SENDAUTH_REJECTED (-1765328177L) ) 2911  #KRB5_PREAUTH_BAD_TYPE (-1765328176L) ) 2912  #KRB5_PREAUTH_NO_KEY (-1765328175L) ) 2913  #KRB5_PREAUTH_FAILED (-1765328174L) ) 2914  #KRB5_RCACHE_BADVNO (-1765328173L) ) 2915  #KRB5_CCACHE_BADVNO (-1765328172L) ) 2916  #KRB5_KEYTAB_BADVNO (-1765328171L) ) 2917  #KRB5_PROG_ATYPE_NOSUPP (-1765328170L) ) 2918  #KRB5_RC_REQUIRED (-1765328169L) ) 2919  #KRB5_ERR_BAD_HOSTNAME (-1765328168L) ) 2920  #KRB5_ERR_HOST_REALM_UNKNOWN (-1765328167L) ) 2921  #KRB5_SNAME_UNSUPP_NAMETYPE (-1765328166L) ) 2922  #KRB5KRB_AP_ERR_V4_REPLY (-1765328165L) ) 2923  #KRB5_REALM_CANT_RESOLVE (-1765328164L) ) 2924  #KRB5_TKT_NOT_FORWARDABLE (-1765328163L) ) 2925  #KRB5_FWD_BAD_PRINCIPAL (-1765328162L) ) 2926  #KRB5_GET_IN_TKT_LOOP (-1765328161L) ) 2927  #KRB5_CONFIG_NODEFREALM (-1765328160L) ) 2928  #KRB5_SAM_UNSUPPORTED (-1765328159L) ) 2929  #KRB5_SAM_INVALID_ETYPE (-1765328158L) ) 2930  #KRB5_SAM_NO_CHECKSUM (-1765328157L) ) 2931  #KRB5_SAM_BAD_CHECKSUM (-1765328156L) ) 2932  #KRB5_KT_NAME_TOOLONG (-1765328155L) ) 2933  #KRB5_KT_KVNONOTFOUND (-1765328154L) ) 2934  #KRB5_APPL_EXPIRED (-1765328153L) ) 2935  #KRB5_LIB_EXPIRED (-1765328152L) ) 2936  #KRB5_CHPW_PWDNULL (-1765328151L) ) 2937  #KRB5_CHPW_FAIL (-1765328150L) ) 2938  #KRB5_KT_FORMAT (-1765328149L) ) 2939  #KRB5_NOPERM_ETYPE (-1765328148L) ) 2940  #KRB5_CONFIG_ETYPE_NOSUPP (-1765328147L) ) 2941  #KRB5_OBSOLETE_FN (-1765328146L) ) 2942  #KRB5_EAI_FAIL (-1765328145L) ) 2943  #KRB5_EAI_NODATA (-1765328144L) ) 2944  #KRB5_EAI_NONAME (-1765328143L) ) 2945  #KRB5_EAI_SERVICE (-1765328142L) ) 2946  #KRB5_ERR_NUMERIC_REALM (-1765328141L) ) 2947  #KRB5_ERR_BAD_S2K_PARAMS (-1765328140L) ) 2948  #KRB5_ERR_NO_SERVICE (-1765328139L) ) 2949  #KRB5_CC_READONLY (-1765328138L) ) 2950  #KRB5_CC_NOSUPP (-1765328137L) ) 2951  #KRB5_DELTAT_BADFORMAT (-1765328136L) ) 2952  #KRB5_PLUGIN_NO_HANDLE (-1765328135L) ) 2953  #KRB5_PLUGIN_OP_NOTSUPP (-1765328134L) ) 2954 cÚ¡  ”rÜ_bË ‘_krb5_”rÜ_bË ; 2955  `š™Ÿlize_krb5_”rÜ_bË (); 2958  `š™Ÿlize_krb5_”rÜ_bË_r ( ‘_li¡ ** li¡ ); 2960  #ERROR_TABLE_BASE_krb5 (-1765328384L) ) 2963  #š™_krb5_”r_tbl š™Ÿlize_krb5_”rÜ_bË ) 2964  #krb5_”r_ba£ ERROR_TABLE_BASE_krb5 ) 2970  ~<‘/com_”r.h > 2972  #KRB5_KDB_RCSID (-1780008448L) ) 2973  #KRB5_KDB_INUSE (-1780008447L) ) 2974  #KRB5_KDB_UK_SERROR (-1780008446L) ) 2975  #KRB5_KDB_UK_RERROR (-1780008445L) ) 2976  #KRB5_KDB_UNAUTH (-1780008444L) ) 2977  #KRB5_KDB_NOENTRY (-1780008443L) ) 2978  #KRB5_KDB_ILL_WILDCARD (-1780008442L) ) 2979  #KRB5_KDB_DB_INUSE (-1780008441L) ) 2980  #KRB5_KDB_DB_CHANGED (-1780008440L) ) 2981  #KRB5_KDB_TRUNCATED_RECORD (-1780008439L) ) 2982  #KRB5_KDB_RECURSIVELOCK (-1780008438L) ) 2983  #KRB5_KDB_NOTLOCKED (-1780008437L) ) 2984  #KRB5_KDB_BADLOCKMODE (-1780008436L) ) 2985  #KRB5_KDB_DBNOTINITED (-1780008435L) ) 2986  #KRB5_KDB_DBINITED (-1780008434L) ) 2987  #KRB5_KDB_ILLDIRECTION (-1780008433L) ) 2988  #KRB5_KDB_NOMASTERKEY (-1780008432L) ) 2989  #KRB5_KDB_BADMASTERKEY (-1780008431L) ) 2990  #KRB5_KDB_INVALIDKEYSIZE (-1780008430L) ) 2991  #KRB5_KDB_CANTREAD_STORED (-1780008429L) ) 2992  #KRB5_KDB_BADSTORED_MKEY (-1780008428L) ) 2993  #KRB5_KDB_CANTLOCK_DB (-1780008427L) ) 2994  #KRB5_KDB_DB_CORRUPT (-1780008426L) ) 2995  #KRB5_KDB_BAD_VERSION (-1780008425L) ) 2996  #KRB5_KDB_BAD_SALTTYPE (-1780008424L) ) 2997  #KRB5_KDB_BAD_ENCTYPE (-1780008423L) ) 2998  #KRB5_KDB_BAD_CREATEFLAGS (-1780008422L) ) 2999  #KRB5_KDB_NO_PERMITTED_KEY (-1780008421L) ) 3000  #KRB5_KDB_NO_MATCHING_KEY (-1780008420L) ) 3001  #KRB5_KDB_DBTYPE_NOTFOUND (-1780008419L) ) 3002  #KRB5_KDB_DBTYPE_NOSUP (-1780008418L) ) 3003  #KRB5_KDB_DBTYPE_INIT (-1780008417L) ) 3004  #KRB5_KDB_SERVER_INTERNAL_ERR (-1780008416L) ) 3005  #KRB5_KDB_ACCESS_ERROR (-1780008415L) ) 3006  #KRB5_KDB_INTERNAL_ERROR (-1780008414L) ) 3007  #KRB5_KDB_CONSTRAINT_VIOLATION (-1780008413L) ) 3008 cÚ¡  ”rÜ_bË ‘_kdb5_”rÜ_bË ; 3009  `š™Ÿlize_kdb5_”rÜ_bË (); 3012  `š™Ÿlize_kdb5_”rÜ_bË_r ( ‘_li¡ ** li¡ ); 3014  #ERROR_TABLE_BASE_kdb5 (-1780008448L) ) 3017  #š™_kdb5_”r_tbl š™Ÿlize_kdb5_”rÜ_bË ) 3018  #kdb5_”r_ba£ ERROR_TABLE_BASE_kdb5 ) 3024  ~<‘/com_”r.h > 3026  #KV5M_NONE (-1760647424L) ) 3027  #KV5M_PRINCIPAL (-1760647423L) ) 3028  #KV5M_DATA (-1760647422L) ) 3029  #KV5M_KEYBLOCK (-1760647421L) ) 3030  #KV5M_CHECKSUM (-1760647420L) ) 3031  #KV5M_ENCRYPT_BLOCK (-1760647419L) ) 3032  #KV5M_ENC_DATA (-1760647418L) ) 3033  #KV5M_CRYPTOSYSTEM_ENTRY (-1760647417L) ) 3034  #KV5M_CS_TABLE_ENTRY (-1760647416L) ) 3035  #KV5M_CHECKSUM_ENTRY (-1760647415L) ) 3036  #KV5M_AUTHDATA (-1760647414L) ) 3037  #KV5M_TRANSITED (-1760647413L) ) 3038  #KV5M_ENC_TKT_PART (-1760647412L) ) 3039  #KV5M_TICKET (-1760647411L) ) 3040  #KV5M_AUTHENTICATOR (-1760647410L) ) 3041  #KV5M_TKT_AUTHENT (-1760647409L) ) 3042  #KV5M_CREDS (-1760647408L) ) 3043  #KV5M_LAST_REQ_ENTRY (-1760647407L) ) 3044  #KV5M_PA_DATA (-1760647406L) ) 3045  #KV5M_KDC_REQ (-1760647405L) ) 3046  #KV5M_ENC_KDC_REP_PART (-1760647404L) ) 3047  #KV5M_KDC_REP (-1760647403L) ) 3048  #KV5M_ERROR (-1760647402L) ) 3049  #KV5M_AP_REQ (-1760647401L) ) 3050  #KV5M_AP_REP (-1760647400L) ) 3051  #KV5M_AP_REP_ENC_PART (-1760647399L) ) 3052  #KV5M_RESPONSE (-1760647398L) ) 3053  #KV5M_SAFE (-1760647397L) ) 3054  #KV5M_PRIV (-1760647396L) ) 3055  #KV5M_PRIV_ENC_PART (-1760647395L) ) 3056  #KV5M_CRED (-1760647394L) ) 3057  #KV5M_CRED_INFO (-1760647393L) ) 3058  #KV5M_CRED_ENC_PART (-1760647392L) ) 3059  #KV5M_PWD_DATA (-1760647391L) ) 3060  #KV5M_ADDRESS (-1760647390L) ) 3061  #KV5M_KEYTAB_ENTRY (-1760647389L) ) 3062  #KV5M_CONTEXT (-1760647388L) ) 3063  #KV5M_OS_CONTEXT (-1760647387L) ) 3064  #KV5M_ALT_METHOD (-1760647386L) ) 3065  #KV5M_ETYPE_INFO_ENTRY (-1760647385L) ) 3066  #KV5M_DB_CONTEXT (-1760647384L) ) 3067  #KV5M_AUTH_CONTEXT (-1760647383L) ) 3068  #KV5M_KEYTAB (-1760647382L) ) 3069  #KV5M_RCACHE (-1760647381L) ) 3070  #KV5M_CCACHE (-1760647380L) ) 3071  #KV5M_PREAUTH_OPS (-1760647379L) ) 3072  #KV5M_SAM_CHALLENGE (-1760647378L) ) 3073  #KV5M_SAM_CHALLENGE_2 (-1760647377L) ) 3074  #KV5M_SAM_KEY (-1760647376L) ) 3075  #KV5M_ENC_SAM_RESPONSE_ENC (-1760647375L) ) 3076  #KV5M_ENC_SAM_RESPONSE_ENC_2 (-1760647374L) ) 3077  #KV5M_SAM_RESPONSE (-1760647373L) ) 3078  #KV5M_SAM_RESPONSE_2 (-1760647372L) ) 3079  #KV5M_PREDICTED_SAM_RESPONSE (-1760647371L) ) 3080  #KV5M_PASSWD_PHRASE_ELEMENT (-1760647370L) ) 3081  #KV5M_GSS_OID (-1760647369L) ) 3082  #KV5M_GSS_QUEUE (-1760647368L) ) 3083 cÚ¡  ”rÜ_bË ‘_kv5m_”rÜ_bË ; 3084  `š™Ÿlize_kv5m_”rÜ_bË (); 3087  `š™Ÿlize_kv5m_”rÜ_bË_r ( ‘_li¡ ** li¡ ); 3089  #ERROR_TABLE_BASE_kv5m (-1760647424L) ) 3092  #š™_kv5m_”r_tbl š™Ÿlize_kv5m_”rÜ_bË ) 3093  #kv5m_”r_ba£ ERROR_TABLE_BASE_kv5m ) 3099  ~<‘/com_”r.h > 3101  #KRB524_BADKEY (-1750206208L) ) 3102  #KRB524_BADADDR (-1750206207L) ) 3103  #KRB524_BADPRINC (-1750206206L) ) 3104  #KRB524_BADREALM (-1750206205L) ) 3105  #KRB524_V4ERR (-1750206204L) ) 3106  #KRB524_ENCFULL (-1750206203L) ) 3107  #KRB524_DECEMPTY (-1750206202L) ) 3108  #KRB524_NOTRESP (-1750206201L) ) 3109  #KRB524_KRB4_DISABLED (-1750206200L) ) 3110 cÚ¡  ”rÜ_bË ‘_k524_”rÜ_bË ; 3111  `š™Ÿlize_k524_”rÜ_bË (); 3114  `š™Ÿlize_k524_”rÜ_bË_r ( ‘_li¡ ** li¡ ); 3116  #ERROR_TABLE_BASE_k524 (-1750206208L) ) 3119  #š™_k524_”r_tbl š™Ÿlize_k524_”rÜ_bË ) 3120  #k524_”r_ba£ ERROR_TABLE_BASE_k524 ) 3126  ~<‘/com_”r.h > 3128  #ASN1_BAD_TIMEFORMAT (1859794432L) ) 3129  #ASN1_MISSING_FIELD (1859794433L) ) 3130  #ASN1_MISPLACED_FIELD (1859794434L) ) 3131  #ASN1_TYPE_MISMATCH (1859794435L) ) 3132  #ASN1_OVERFLOW (1859794436L) ) 3133  #ASN1_OVERRUN (1859794437L) ) 3134  #ASN1_BAD_ID (1859794438L) ) 3135  #ASN1_BAD_LENGTH (1859794439L) ) 3136  #ASN1_BAD_FORMAT (1859794440L) ) 3137  #ASN1_PARSE_ERROR (1859794441L) ) 3138  #ASN1_BAD_GMTIME (1859794442L) ) 3139  #ASN1_MISMATCH_INDEF (1859794443L) ) 3140  #ASN1_MISSING_EOC (1859794444L) ) 3141 cÚ¡  ”rÜ_bË ‘_a¢1_”rÜ_bË ; 3142  `š™Ÿlize_a¢1_”rÜ_bË (); 3145  `š™Ÿlize_a¢1_”rÜ_bË_r ( ‘_li¡ ** li¡ ); 3147  #ERROR_TABLE_BASE_a¢1 (1859794432L) ) 3150  #š™_a¢1_”r_tbl š™Ÿlize_a¢1_”rÜ_bË ) 3151  #a¢1_”r_ba£ ERROR_TABLE_BASE_a¢1 ) @/usr/include/ldap_cdefs.h 17 #iâdeà _LDAP_CDEFS_H 18  #_LDAP_CDEFS_H ) 20 #ià defšed ( __ýlu¥lus è|| defšed( c_¶u¥lus ) 21  #LDAP_BEGIN_DECL "C" { ) 22  #LDAP_END_DECL } ) 24  #LDAP_BEGIN_DECL ) 25  #LDAP_END_DECL ) 28 #ià! defšed ( LDAP_NO_PROTOTYPES è&& ( defšed( LDAP_NEEDS_PROTOTYPES ) || \ 29 defšed ( __STDC__ è|| defšed( __ýlu¥lus è|| $defšed ( c_¶u¥lus ) ) 32  #LDAP_P ( ´Ùos è ) protos 33  #LDAP_CONCAT1 ( x , y èx ## ) y 34  #LDAP_CONCAT ( x , y è `LDAP_CONCAT1 (x,y) ) 35  #LDAP_STRING ( x è#x ) 36  #LDAP_XSTRING ( x è `LDAP_STRING (xè ) 38 #iâdeà LDAP_CONST 39  #LDAP_CONST cÚ¡ ) 45  #LDAP_P ( ´Ùos è() ) 46  #LDAP_CONCAT ( x , y èx ) y 47  #LDAP_STRING ( x è"x" ) 49 #iâdeà LDAP_CONST 50  #LDAP_CONST ) 55 #ià( __GNUC__ è* 1000 + ( __GNUC_MINOR__ ) >= 2006 56  #LDAP_GCCATTR ( ©Œs è `__©Œibu‹__ ׉rs) ) 58  #LDAP_GCCATTR ( ©Œs ) ) 130 #ià `defšed ( _WIN32 ) && \ 131 (( `defšed ( LDAP_LIBS_DYNAMIC è&& !defšed( LBER_LIBRARY )) || \ 132 (! `defšed ( LDAP_LIBS_DYNAMIC è&& $defšed ( SLAPD_IMPORT ))) 133  #LBER_F ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 134  #LBER_V ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 136  #LBER_F ( ty³ è ) type 137  #LBER_V ( ty³ è ) type 141 #ià `defšed ( _WIN32 ) && \ 142 (( `defšed ( LDAP_LIBS_DYNAMIC è&& !defšed( LDAP_LIBRARY )) || \ 143 (! `defšed ( LDAP_LIBS_DYNAMIC è&& $defšed ( SLAPD_IMPORT ))) 144  #LDAP_F ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 145  #LDAP_V ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 147  #LDAP_F ( ty³ è ) type 148  #LDAP_V ( ty³ è ) type 152 #ià `defšed ( _WIN32 è&& defšed( SLAPD_IMPORT ) 153  #LDAP_AVL_F ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 154  #LDAP_AVL_V ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 156  #LDAP_AVL_F ( ty³ è ) type 157  #LDAP_AVL_V ( ty³ è ) type 161 #ià `defšed ( _WIN32 è&& defšed( SLAPD_IMPORT ) 162  #LDAP_LDIF_F ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 163  #LDAP_LDIF_V ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 165  #LDAP_LDIF_F ( ty³ è ) type 166  #LDAP_LDIF_V ( ty³ è ) type 170 #ià `defšed ( _WIN32 è&& defšed( SLAPD_IMPORT ) 171  #LDAP_LUNICODE_F ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 172  #LDAP_LUNICODE_V ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 174  #LDAP_LUNICODE_F ( ty³ è ) type 175  #LDAP_LUNICODE_V ( ty³ è ) type 179 #ià `defšed ( _WIN32 è&& defšed( SLAPD_IMPORT ) 180  #LDAP_LUTIL_F ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 181  #LDAP_LUTIL_V ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 183  #LDAP_LUTIL_F ( ty³ è ) type 184  #LDAP_LUTIL_V ( ty³ è ) type 188 #ià `defšed ( _WIN32 è&& defšed( SLAPD_IMPORT ) 189  #LDAP_REWRITE_F ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 190  #LDAP_REWRITE_V ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 192  #LDAP_REWRITE_F ( ty³ è ) type 193  #LDAP_REWRITE_V ( ty³ è ) type 197 #ià `defšed ( _WIN32 è&& defšed( SLAPD_IMPORT ) 198  #LDAP_SLAPD_F ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 199  #LDAP_SLAPD_V ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 201  #LDAP_SLAPD_F ( ty³ è ) type 202  #LDAP_SLAPD_V ( ty³ è ) type 206 #ià `defšed ( _WIN32 è&& defšed( SLAPD_IMPORT ) 207  #LDAP_SLAPI_F ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 208  #LDAP_SLAPI_V ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 210  #LDAP_SLAPI_F ( ty³ è ) type 211  #LDAP_SLAPI_V ( ty³ è ) type 215 #ià `defšed ( _WIN32 è&& defšed( SLAPD_IMPORT ) 216  #SLAPI_F ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 217  #SLAPI_V ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 219  #SLAPI_F ( ty³ è ) type 220  #SLAPI_V ( ty³ è ) type 239 #ià( `defšed ( __MINGW32__ è&& !defšed( CSTATIC )) || \ 240 ( `defšed ( _MSC_VER è&& $defšed ( _DLL )) 241  #LDAP_LIBC_F ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 242  #LDAP_LIBC_V ( ty³ è `__deþ¥ec ( dÎimpÜt è ) type 244  #LDAP_LIBC_F ( ty³ è ) type 245  #LDAP_LIBC_V ( ty³ è ) type @/usr/include/linux/limits.h 1 #iâdeà _LINUX_LIMITS_H 2  #_LINUX_LIMITS_H ) 4  #NR_OPEN 1024 ) 6  #NGROUPS_MAX 65536 ) 7  #ARG_MAX 131072 ) 8  #LINK_MAX 127 ) 9  #MAX_CANON 255 ) 10  #MAX_INPUT 255 ) 11  #NAME_MAX 255 ) 12  #PATH_MAX 4096 ) 13  #PIPE_BUF 4096 ) 14  #XATTR_NAME_MAX 255 ) 15  #XATTR_SIZE_MAX 65536 ) 16  #XATTR_LIST_MAX 65536 ) 18  #RTSIG_MAX 32 ) @/usr/include/openssl/bn.h 72 #iâdeà HEADER_BN_H 73  #HEADER_BN_H ) 75  ~<Ý’s¦/e_os2.h > 76 #iâdeà OPENSSL_NO_FP_API 77  ~<¡dio.h > 79  ~<Ý’s¦/os¦_typ.h > 81 #ifdeà __ýlu¥lus 97  #BN_MUL_COMBA ) 98  #BN_SQR_COMBA ) 99  #BN_RECURSION ) 112 #ià defšed ( OPENSSL_SYS_MSDOS è|| defšed( OPENSSL_SYS_WINDOWS ) || \ 113 defšed ( OPENSSL_SYS_WIN32 è|| defšed( lšux ) 114 #iâdeà BN_DIV2W 115  #BN_DIV2W ) 122 #ifdeà SIXTY_FOUR_BIT_LONG 123  #BN_ULLONG  ) 124  #BN_ULONG  ) 125  #BN_LONG  ) 126  #BN_BITS 128 ) 127  #BN_BYTES 8 ) 128  #BN_BITS2 64 ) 129  #BN_BITS4 32 ) 130  #BN_MASK (0xffffffffffffffffffffffffffffffffLL) ) 131  #BN_MASK2 (0xffffffffffffffffL) ) 132  #BN_MASK2l (0xffffffffL) ) 133  #BN_MASK2h (0xffffffff00000000L) ) 134  #BN_MASK2h1 (0xffffffff80000000L) ) 135  #BN_TBIT (0x8000000000000000L) ) 136  #BN_DEC_CONV (10000000000000000000UL) ) 137  #BN_DEC_FMT1 "%lu" ) 138  #BN_DEC_FMT2 "%019lu" ) 139  #BN_DEC_NUM 19 ) 147 #ifdeà SIXTY_FOUR_BIT 148 #undeà BN_LLONG 149 #undeà BN_ULLONG 150  #BN_ULONG  ) 151  #BN_LONG  ) 152  #BN_BITS 128 ) 153  #BN_BYTES 8 ) 154  #BN_BITS2 64 ) 155  #BN_BITS4 32 ) 156  #BN_MASK2 (0xffffffffffffffffLL) ) 157  #BN_MASK2l (0xffffffffL) ) 158  #BN_MASK2h (0xffffffff00000000LL) ) 159  #BN_MASK2h1 (0xffffffff80000000LL) ) 160  #BN_TBIT (0x8000000000000000LL) ) 161  #BN_DEC_CONV (10000000000000000000ULL) ) 162  #BN_DEC_FMT1 "%Îu" ) 163  #BN_DEC_FMT2 "%019Îu" ) 164  #BN_DEC_NUM 19 ) 167 #ifdeà THIRTY_TWO_BIT 168 #ifdeà BN_LLONG 169 #ià defšed ( OPENSSL_SYS_WIN32 è&& !defšed( __GNUC__ ) 170  #BN_ULLONG  __št64 ) 172  #BN_ULLONG  ) 175  #BN_ULONG  ) 176  #BN_LONG  ) 177  #BN_BITS 64 ) 178  #BN_BYTES 4 ) 179  #BN_BITS2 32 ) 180  #BN_BITS4 16 ) 181 #ifdeà OPENSSL_SYS_WIN32 183  #BN_MASK (0xffffffffffffffffL) ) 185  #BN_MASK (0xffffffffffffffffLL) ) 187  #BN_MASK2 (0xffffffffL) ) 188  #BN_MASK2l (0xffff) ) 189  #BN_MASK2h1 (0xffff8000L) ) 190  #BN_MASK2h (0xffff0000L) ) 191  #BN_TBIT (0x80000000L) ) 192  #BN_DEC_CONV (1000000000L) ) 193  #BN_DEC_FMT1 "%lu" ) 194  #BN_DEC_FMT2 "%09lu" ) 195  #BN_DEC_NUM 9 ) 198 #ifdeà SIXTEEN_BIT 199 #iâdeà BN_DIV2W 200  #BN_DIV2W ) 202  #BN_ULLONG  ) 203  #BN_ULONG  ) 204  #BN_LONG  ) 205  #BN_BITS 32 ) 206  #BN_BYTES 2 ) 207  #BN_BITS2 16 ) 208  #BN_BITS4 8 ) 209  #BN_MASK (0xffffffff) ) 210  #BN_MASK2 (0xffff) ) 211  #BN_MASK2l (0xff) ) 212  #BN_MASK2h1 (0xff80) ) 213  #BN_MASK2h (0xff00) ) 214  #BN_TBIT (0x8000) ) 215  #BN_DEC_CONV (100000) ) 216  #BN_DEC_FMT1 "%u" ) 217  #BN_DEC_FMT2 "%05u" ) 218  #BN_DEC_NUM 5 ) 221 #ifdeà EIGHT_BIT 222 #iâdeà BN_DIV2W 223  #BN_DIV2W ) 225  #BN_ULLONG  ) 226  #BN_ULONG  ) 227  #BN_LONG  ) 228  #BN_BITS 16 ) 229  #BN_BYTES 1 ) 230  #BN_BITS2 8 ) 231  #BN_BITS4 4 ) 232  #BN_MASK (0xffff) ) 233  #BN_MASK2 (0xff) ) 234  #BN_MASK2l (0xf) ) 235  #BN_MASK2h1 (0xf8) ) 236  #BN_MASK2h (0xf0) ) 237  #BN_TBIT (0x80) ) 238  #BN_DEC_CONV (100) ) 239  #BN_DEC_FMT1 "%u" ) 240  #BN_DEC_FMT2 "%02u" ) 241  #BN_DEC_NUM 2 ) 244  #BN_DEFAULT_BITS 1280 ) 246  #BN_FLG_MALLOCED 0x01 ) 247  #BN_FLG_STATIC_DATA 0x02 ) 248  #BN_FLG_CONSTTIME 0x04 ) 254 #iâdeà OPENSSL_NO_DEPRECATED 255  #BN_FLG_EXP_CONSTTIME BN_FLG_CONSTTIME ) 260 #iâdeà OPENSSL_NO_DEPRECATED 261  #BN_FLG_FREE 0x8000 ) 263  #BN_£t_æags ( b , n è((b)-> æags |=Ò)) ) 264  #BN_g‘_æags ( b , n è((b)-> æags &Ò)) ) 268  #BN_w™h_æags ( de¡ , b , n è((de¡)-> d =(b)->d, \ 269 ( de¡ )-> tÝ =( b )->top, \ 270 ( de¡ )-> dmax =( b )->dmax, \ 271 ( de¡ )-> Ãg =( b )->neg, \ 272 ( de¡ )-> æags =(((de¡)->æag & BN_FLG_MALLOCED ) \ 273 | (( b )-> æags & ~ BN_FLG_MALLOCED ) \ 274 | BN_FLG_STATIC_DATA \ 275 | ( n ))) ) 279  bignum_¡ tBIGNUM ; 281  bignum_ùx tBN_CTX ; 282  bn_blšdšg_¡ tBN_BLINDING ; 283  bn_mÚt_ùx_¡ tBN_MONT_CTX ; 284  bn_»ý_ùx_¡ tBN_RECP_CTX ; 285  bn_g’cb_¡ tBN_GENCB ; 288  sbignum_¡ 290 BN_ULONG * d ; 291  tÝ ; 293  dmax ; 294  Ãg ; 295  æags ; 299  sbn_mÚt_ùx_¡ 301  ri ; 302 BIGNUM RR ; 303 BIGNUM N ; 304 BIGNUM Ni ; 306 BN_ULONG n0 ; 307  æags ; 313  sbn_»ý_ùx_¡ 315 BIGNUM N ; 316 BIGNUM Nr ; 317  num_b™s ; 318  shiá ; 319  æags ; 323  sbn_g’cb_¡ 325  v” ; 326 * ¬g ; 330 (* cb_1 )(, , *); 332 (* cb_2 )(, , BN_GENCB *); 333 } cb ; 336  BN_GENCB_ÿÎ ( BN_GENCB * cb ,  a ,  b ); 338  #BN_GENCB_£t_Þd ( g’cb , ÿÎback , cb_¬g ) { \ 339 BN_GENCB * tmp_g’cb = ( g’cb ); \ 340 tmp_g’cb -> v” = 1; \ 341 tmp_g’cb -> ¬g = ( cb_¬g ); \ 342 tmp_g’cb -> cb . cb_1 = ( ÿÎback ); } ) 344  #BN_GENCB_£t ( g’cb , ÿÎback , cb_¬g ) { \ 345 BN_GENCB * tmp_g’cb = ( g’cb ); \ 346 tmp_g’cb -> v” = 2; \ 347 tmp_g’cb -> ¬g = ( cb_¬g ); \ 348 tmp_g’cb -> cb . cb_2 = ( ÿÎback ); } ) 350  #BN_´ime_checks 0 ) 358  #BN_´ime_checks_fÜ_size ( b ) ((b) >= 1300 ? 2 : \ 359 ( b ) >= 850 ? 3 : \ 360 ( b ) >= 650 ? 4 : \ 361 ( b ) >= 550 ? 5 : \ 362 ( b ) >= 450 ? 6 : \ 363 ( b ) >= 400 ? 7 : \ 364 ( b ) >= 350 ? 8 : \ 365 ( b ) >= 300 ? 9 : \ 366 ( b ) >= 250 ? 12 : \ 367 ( b ) >= 200 ? 15 : \ 368 ( b ) >= 150 ? 18 : \ 369 27) ) 371  #BN_num_by‹s ( a è(( `BN_num_b™s ×)+7)/8) ) 374  #BN_abs_is_wÜd ( a , w è(((×)-> tÝ =ð1è&& (×)-> d [0] =ð( BN_ULONG )(w))) || \ 375 ((( w è=ð0è&& (( a )-> tÝ =ð0))) ) 376  #BN_is_z”o ( a è(×)-> tÝ =ð0) ) 377  #BN_is_Úe ( a è( `BN_abs_is_wÜd (×),1è&& !×)-> Ãg ) ) 378  #BN_is_wÜd ( a , w è( `BN_abs_is_wÜd (×),(w)è&& (!(wè|| !×)-> Ãg )) ) 379  #BN_is_odd ( a è((×)-> tÝ > 0è&& (×)-> d [0] & 1)) ) 381  #BN_Úe ( a è( `BN_£t_wÜd (×),1)) ) 382  #BN_z”o_ex ( a ) \ 384 BIGNUM * _tmp_bn = ( a ); \ 385 _tmp_bn -> tÝ = 0; \ 386 _tmp_bn -> Ãg = 0; \ 387 } 0) ) 388 #ifdeà OPENSSL_NO_DEPRECATED 389  #BN_z”o ( a è `BN_z”o_ex ×) ) 391  #BN_z”o ( a è( `BN_£t_wÜd (×),0)) ) 394 cÚ¡ BIGNUM * BN_v®ue_Úe (); 395 * BN_ÝtiÚs (); 396 BN_CTX * BN_CTX_Ãw (); 397 #iâdeà OPENSSL_NO_DEPRECATED 398  BN_CTX_š™ ( BN_CTX * c ); 400  BN_CTX_ä“ ( BN_CTX * c ); 401  BN_CTX_¡¬t ( BN_CTX * ùx ); 402 BIGNUM * BN_CTX_g‘ ( BN_CTX * ùx ); 403  BN_CTX_’d ( BN_CTX * ùx ); 404  BN_¿nd ( BIGNUM * ºd ,  b™s ,  tÝ , bÙtom ); 405  BN_p£udo_¿nd ( BIGNUM * ºd ,  b™s ,  tÝ , bÙtom ); 406  BN_¿nd_¿nge ( BIGNUM * ºd , BIGNUM * ¿nge ); 407  BN_p£udo_¿nd_¿nge ( BIGNUM * ºd , BIGNUM * ¿nge ); 408  BN_num_b™s (cÚ¡ BIGNUM * a ); 409  BN_num_b™s_wÜd ( BN_ULONG ); 410 BIGNUM * BN_Ãw (); 411  BN_š™ ( BIGNUM *); 412  BN_þ—r_ä“ ( BIGNUM * a ); 413 BIGNUM * BN_cÝy (BIGNUM * a , cÚ¡ BIGNUM * b ); 414  BN_sw­ ( BIGNUM * a , BIGNUM * b ); 415 BIGNUM * BN_bš2bn (cÚ¡ * s , Ën ,BIGNUM * »t ); 416  BN_bn2bš (cÚ¡ BIGNUM * a , * to ); 417 BIGNUM * BN_mpi2bn (cÚ¡ * s , Ën ,BIGNUM * »t ); 418  BN_bn2mpi (cÚ¡ BIGNUM * a , * to ); 419  BN_sub ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b ); 420  BN_usub ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b ); 421  BN_uadd ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b ); 422  BN_add ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b ); 423  BN_mul ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , BN_CTX * ùx ); 424  BN_sqr ( BIGNUM * r , cÚ¡ BIGNUM * a , BN_CTX * ùx ); 429  BN_£t_Ãg©ive ( BIGNUM * b ,  n ); 434  #BN_is_Ãg©ive ( a è(×)-> Ãg !ð0) ) 436  BN_div ( BIGNUM * dv , BIGNUM * »m , cÚ¡ BIGNUM * m , cÚ¡ BIGNUM * d , 437 BN_CTX * ùx ); 438  #BN_mod ( »m , m , d , ùx è `BN_div ( NULL ,Ôem),(m),(d),(ùx)) ) 439  BN_Âmod ( BIGNUM * r , cÚ¡ BIGNUM * m , cÚ¡ BIGNUM * d , BN_CTX * ùx ); 440  BN_mod_add ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , cÚ¡ BIGNUM * m , BN_CTX * ùx ); 441  BN_mod_add_quick ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , cÚ¡ BIGNUM * m ); 442  BN_mod_sub ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , cÚ¡ BIGNUM * m , BN_CTX * ùx ); 443  BN_mod_sub_quick ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , cÚ¡ BIGNUM * m ); 444  BN_mod_mul ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , 445 cÚ¡ BIGNUM * m , BN_CTX * ùx ); 446  BN_mod_sqr ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * m , BN_CTX * ùx ); 447  BN_mod_lshiá1 ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * m , BN_CTX * ùx ); 448  BN_mod_lshiá1_quick ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * m ); 449  BN_mod_lshiá ( BIGNUM * r , cÚ¡ BIGNUM * a ,  n , cÚ¡ BIGNUM * m , BN_CTX * ùx ); 450  BN_mod_lshiá_quick ( BIGNUM * r , cÚ¡ BIGNUM * a ,  n , cÚ¡ BIGNUM * m ); 452 BN_ULONG BN_mod_wÜd (cÚ¡ BIGNUM * a , BN_ULONG w ); 453 BN_ULONG BN_div_wÜd ( BIGNUM * a , BN_ULONG w ); 454  BN_mul_wÜd ( BIGNUM * a , BN_ULONG w ); 455  BN_add_wÜd ( BIGNUM * a , BN_ULONG w ); 456  BN_sub_wÜd ( BIGNUM * a , BN_ULONG w ); 457  BN_£t_wÜd ( BIGNUM * a , BN_ULONG w ); 458 BN_ULONG BN_g‘_wÜd (cÚ¡ BIGNUM * a ); 460  BN_cmp (cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b ); 461  BN_ä“ ( BIGNUM * a ); 462  BN_is_b™_£t (cÚ¡ BIGNUM * a ,  n ); 463  BN_lshiá ( BIGNUM * r , cÚ¡ BIGNUM * a ,  n ); 464  BN_lshiá1 ( BIGNUM * r , cÚ¡ BIGNUM * a ); 465  BN_exp ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , BN_CTX * ùx ); 467  BN_mod_exp ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , 468 cÚ¡ BIGNUM * m , BN_CTX * ùx ); 469  BN_mod_exp_mÚt ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , 470 cÚ¡ BIGNUM * m , BN_CTX * ùx , BN_MONT_CTX * m_ùx ); 471  BN_mod_exp_mÚt_cÚ¡time ( BIGNUM * ¼ , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , 472 cÚ¡ BIGNUM * m , BN_CTX * ùx , BN_MONT_CTX * š_mÚt ); 473  BN_mod_exp_mÚt_wÜd ( BIGNUM * r , BN_ULONG a , cÚ¡ BIGNUM * p , 474 cÚ¡ BIGNUM * m , BN_CTX * ùx , BN_MONT_CTX * m_ùx ); 475  BN_mod_exp2_mÚt ( BIGNUM * r , cÚ¡ BIGNUM * a1 , cÚ¡ BIGNUM * p1 , 476 cÚ¡ BIGNUM * a2 , cÚ¡ BIGNUM * p2 ,cÚ¡ BIGNUM * m , 477 BN_CTX * ùx , BN_MONT_CTX * m_ùx ); 478  BN_mod_exp_sim¶e ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , 479 cÚ¡ BIGNUM * m , BN_CTX * ùx ); 481  BN_mask_b™s ( BIGNUM * a , n ); 482 #iâdeà OPENSSL_NO_FP_API 483  BN_´št_å ( FILE * å , cÚ¡ BIGNUM * a ); 485 #ifdeà HEADER_BIO_H 486  BN_´št ( BIO * å , cÚ¡ BIGNUM * a ); 488  BN_´št (* å , cÚ¡ BIGNUM * a ); 490  BN_»croÿl ( BIGNUM * r , cÚ¡ BIGNUM * m ,  Ën , BN_CTX * ùx ); 491  BN_rshiá ( BIGNUM * r , cÚ¡ BIGNUM * a ,  n ); 492  BN_rshiá1 ( BIGNUM * r , cÚ¡ BIGNUM * a ); 493  BN_þ—r ( BIGNUM * a ); 494 BIGNUM * BN_dup (cÚ¡ BIGNUM * a ); 495  BN_ucmp (cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b ); 496  BN_£t_b™ ( BIGNUM * a ,  n ); 497  BN_þ—r_b™ ( BIGNUM * a ,  n ); 498 * BN_bn2hex (cÚ¡ BIGNUM * a ); 499 * BN_bn2dec (cÚ¡ BIGNUM * a ); 500  BN_hex2bn ( BIGNUM ** a , cÚ¡ * ¡r ); 501  BN_dec2bn ( BIGNUM ** a , cÚ¡ * ¡r ); 502  BN_gcd ( BIGNUM * r ,cÚ¡ BIGNUM * a ,cÚ¡ BIGNUM * b , BN_CTX * ùx ); 503  BN_krÚeck” (cÚ¡ BIGNUM * a ,cÚ¡ BIGNUM * b , BN_CTX * ùx ); 504 BIGNUM * BN_mod_šv”£ (BIGNUM * »t , 505 cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * n , BN_CTX * ùx ); 506 BIGNUM * BN_mod_sq¹ (BIGNUM * »t , 507 cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * n , BN_CTX * ùx ); 510 #iâdeà OPENSSL_NO_DEPRECATED 511 BIGNUM * BN_g’”©e_´ime (BIGNUM * »t , b™s , §ã , 512 cÚ¡ BIGNUM * add , cÚ¡ BIGNUM * »m , 513 (* ÿÎback )(,,*),* cb_¬g ); 514  BN_is_´ime (cÚ¡ BIGNUM * p , nchecks , 515 (* ÿÎback )(,,*), 516 BN_CTX * ùx ,* cb_¬g ); 517  BN_is_´ime_ç¡‹¡ (cÚ¡ BIGNUM * p , nchecks , 518 (* ÿÎback )(,,*), BN_CTX * ùx ,* cb_¬g , 519  do_ŒŸl_divisiÚ ); 523  BN_g’”©e_´ime_ex ( BIGNUM * »t , b™s , §ã , cÚ¡ BIGNUM * add , 524 cÚ¡ BIGNUM * »m , BN_GENCB * cb ); 525  BN_is_´ime_ex (cÚ¡ BIGNUM * p , nchecks , BN_CTX * ùx , BN_GENCB * cb ); 526  BN_is_´ime_ç¡‹¡_ex (cÚ¡ BIGNUM * p , nchecks , BN_CTX * ùx , 527  do_ŒŸl_divisiÚ , BN_GENCB * cb ); 529 BN_MONT_CTX * BN_MONT_CTX_Ãw (); 530  BN_MONT_CTX_š™ ( BN_MONT_CTX * ùx ); 531  BN_mod_mul_mÚtgom”y ( BIGNUM * r ,cÚ¡ BIGNUM * a ,cÚ¡ BIGNUM * b , 532 BN_MONT_CTX * mÚt , BN_CTX * ùx ); 533  #BN_to_mÚtgom”y ( r , a , mÚt , ùx è `BN_mod_mul_mÚtgom”y (\ 534 ( r ),( a ),&(( mÚt )-> RR ),(mÚt),( ùx )) ) 535  BN_äom_mÚtgom”y ( BIGNUM * r ,cÚ¡ BIGNUM * a , 536 BN_MONT_CTX * mÚt , BN_CTX * ùx ); 537  BN_MONT_CTX_ä“ ( BN_MONT_CTX * mÚt ); 538  BN_MONT_CTX_£t ( BN_MONT_CTX * mÚt ,cÚ¡ BIGNUM * mod , BN_CTX * ùx ); 539 BN_MONT_CTX * BN_MONT_CTX_cÝy (BN_MONT_CTX * to ,BN_MONT_CTX * äom ); 540 BN_MONT_CTX * BN_MONT_CTX_£t_locked (BN_MONT_CTX ** pmÚt ,  lock , 541 cÚ¡ BIGNUM * mod , BN_CTX * ùx ); 544  #BN_BLINDING_NO_UPDATE 0x00000001 ) 545  #BN_BLINDING_NO_RECREATE 0x00000002 ) 547 BN_BLINDING * BN_BLINDING_Ãw (cÚ¡ BIGNUM * A , cÚ¡ BIGNUM * Ai , BIGNUM * mod ); 548  BN_BLINDING_ä“ ( BN_BLINDING * b ); 549  BN_BLINDING_upd©e ( BN_BLINDING * b , BN_CTX * ùx ); 550  BN_BLINDING_cÚv”t ( BIGNUM * n , BN_BLINDING * b , BN_CTX * ùx ); 551  BN_BLINDING_šv”t ( BIGNUM * n , BN_BLINDING * b , BN_CTX * ùx ); 552  BN_BLINDING_cÚv”t_ex ( BIGNUM * n , BIGNUM * r , BN_BLINDING * b , BN_CTX *); 553  BN_BLINDING_šv”t_ex ( BIGNUM * n , cÚ¡ BIGNUM * r , BN_BLINDING * b , BN_CTX *); 554  BN_BLINDING_g‘_th»ad_id (cÚ¡ BN_BLINDING *); 555  BN_BLINDING_£t_th»ad_id ( BN_BLINDING *, ); 556  BN_BLINDING_g‘_æags (cÚ¡ BN_BLINDING *); 557  BN_BLINDING_£t_æags ( BN_BLINDING *, ); 558 BN_BLINDING * BN_BLINDING_ü—‹_·¿m (BN_BLINDING * b , 559 cÚ¡ BIGNUM * e , BIGNUM * m , BN_CTX * ùx , 560 (* bn_mod_exp )( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , 561 cÚ¡ BIGNUM * m , BN_CTX * ùx , BN_MONT_CTX * m_ùx ), 562 BN_MONT_CTX * m_ùx ); 564 #iâdeà OPENSSL_NO_DEPRECATED 565  BN_£t_·¿ms ( mul , high , low , mÚt ); 566  BN_g‘_·¿ms ( which ); 569  BN_RECP_CTX_š™ ( BN_RECP_CTX * »ý ); 570 BN_RECP_CTX * BN_RECP_CTX_Ãw (); 571  BN_RECP_CTX_ä“ ( BN_RECP_CTX * »ý ); 572  BN_RECP_CTX_£t ( BN_RECP_CTX * »ý ,cÚ¡ BIGNUM * rdiv , BN_CTX * ùx ); 573  BN_mod_mul_»croÿl ( BIGNUM * r , cÚ¡ BIGNUM * x , cÚ¡ BIGNUM * y , 574 BN_RECP_CTX * »ý , BN_CTX * ùx ); 575  BN_mod_exp_»ý ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , 576 cÚ¡ BIGNUM * m , BN_CTX * ùx ); 577  BN_div_»ý ( BIGNUM * dv , BIGNUM * »m , cÚ¡ BIGNUM * m , 578 BN_RECP_CTX * »ý , BN_CTX * ùx ); 589  BN_GF2m_add ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b ); 590  #BN_GF2m_sub ( r , a , b è `BN_GF2m_add Ô,‡, b) ) 591  BN_GF2m_mod ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p ); 592  BN_GF2m_mod_mul ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , 593 cÚ¡ BIGNUM * p , BN_CTX * ùx ); 594  BN_GF2m_mod_sqr ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , 595 BN_CTX * ùx ); 596  BN_GF2m_mod_šv ( BIGNUM * r , cÚ¡ BIGNUM * b , cÚ¡ BIGNUM * p , 597 BN_CTX * ùx ); 598  BN_GF2m_mod_div ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , 599 cÚ¡ BIGNUM * p , BN_CTX * ùx ); 600  BN_GF2m_mod_exp ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , 601 cÚ¡ BIGNUM * p , BN_CTX * ùx ); 602  BN_GF2m_mod_sq¹ ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , 603 BN_CTX * ùx ); 604  BN_GF2m_mod_sÞve_quad ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , 605 BN_CTX * ùx ); 606  #BN_GF2m_cmp ( a , b è `BN_ucmp (×), (b)) ) 612  BN_GF2m_mod_¬r ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡  p []); 614  BN_GF2m_mod_mul_¬r ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , 615 cÚ¡  p [], BN_CTX * ùx ); 616  BN_GF2m_mod_sqr_¬r ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡  p [], 617 BN_CTX * ùx ); 618  BN_GF2m_mod_šv_¬r ( BIGNUM * r , cÚ¡ BIGNUM * b , cÚ¡  p [], 619 BN_CTX * ùx ); 620  BN_GF2m_mod_div_¬r ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , 621 cÚ¡  p [], BN_CTX * ùx ); 622  BN_GF2m_mod_exp_¬r ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * b , 623 cÚ¡  p [], BN_CTX * ùx ); 624  BN_GF2m_mod_sq¹_¬r ( BIGNUM * r , cÚ¡ BIGNUM * a , 625 cÚ¡  p [], BN_CTX * ùx ); 626  BN_GF2m_mod_sÞve_quad_¬r ( BIGNUM * r , cÚ¡ BIGNUM * a , 627 cÚ¡  p [], BN_CTX * ùx ); 628  BN_GF2m_pÞy2¬r (cÚ¡ BIGNUM * a ,  p [],  max ); 629  BN_GF2m_¬r2pÞy (cÚ¡  p [], BIGNUM * a ); 633  BN_ni¡_mod_192 ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , BN_CTX * ùx ); 634  BN_ni¡_mod_224 ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , BN_CTX * ùx ); 635  BN_ni¡_mod_256 ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , BN_CTX * ùx ); 636  BN_ni¡_mod_384 ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , BN_CTX * ùx ); 637  BN_ni¡_mod_521 ( BIGNUM * r , cÚ¡ BIGNUM * a , cÚ¡ BIGNUM * p , BN_CTX * ùx ); 639 cÚ¡ BIGNUM * BN_g‘0_ni¡_´ime_192 (); 640 cÚ¡ BIGNUM * BN_g‘0_ni¡_´ime_224 (); 641 cÚ¡ BIGNUM * BN_g‘0_ni¡_´ime_256 (); 642 cÚ¡ BIGNUM * BN_g‘0_ni¡_´ime_384 (); 643 cÚ¡ BIGNUM * BN_g‘0_ni¡_´ime_521 (); 647  #bn_ex·nd ( a , b™s è((((((b™s+ BN_BITS2 -1))/BN_BITS2)è<ð×)-> dmax )?\ 648 ( a ): `bn_ex·nd2 (×),( b™s + BN_BITS2 -1)/BN_BITS2)) ) 649  #bn_wex·nd ( a , wÜds è(((wÜdsè<ð×)-> dmax )?×): `bn_ex·nd2 (×),(wÜds))) ) 650 BIGNUM * bn_ex·nd2 (BIGNUM * a ,  wÜds ); 651 #iâdeà OPENSSL_NO_DEPRECATED 652 BIGNUM * bn_dup_ex·nd (cÚ¡ BIGNUM * a ,  wÜds ); 683 #ifdeà BN_DEBUG 686  ~ 688 #ifdeà BN_DEBUG_RAND 690 #iâdeà RAND_p£udo_by‹s 691  RAND_p£udo_by‹s (* buf , num ); 692  #BN_DEBUG_TRIX ) 694  #bn_pÞlu‹ ( a ) \ 696 cÚ¡ BIGNUM * _bnum1 = ( a ); \ 697 if( _bnum1 -> tÝ < _bnum1-> dmax ) { \ 698  _tmp_ch¬ ; \ 702 BN_ULONG * _nÙ_cÚ¡ ; \ 703 `memýy (& _nÙ_cÚ¡ , & _bnum1 -> d , ( BN_ULONG *)); \ 704 `RAND_p£udo_by‹s (& _tmp_ch¬ , 1); \ 705 `mem£t ((*)( _nÙ_cÚ¡ + _bnum1 -> tÝ ), _tmp_ch¬ , \ 706 ( _bnum1 -> dmax - _bnum1-> tÝ è* ( BN_ULONG )); \ 708 } 0) ) 709 #ifdeà BN_DEBUG_TRIX 710 #undeà RAND_p£udo_by‹s 713  #bn_pÞlu‹ ( a ) ) 715  #bn_check_tÝ ( a ) \ 717 cÚ¡ BIGNUM * _bnum2 = ( a ); \ 718 ià( _bnum2 !ð NULL ) { \ 719 `as£¹ (( _bnum2 -> tÝ == 0) || \ 720 ( _bnum2 -> d [_bnum2-> tÝ - 1] != 0)); \ 721 `bn_pÞlu‹ ( _bnum2 ); \ 723 } 0) ) 725  #bn_fix_tÝ ( a è `bn_check_tÝ ×) ) 729  #bn_pÞlu‹ ( a ) ) 730  #bn_check_tÝ ( a ) ) 731  #bn_fix_tÝ ( a è `bn_cÜ»ù_tÝ ×) ) 735  #bn_cÜ»ù_tÝ ( a ) \ 737 BN_ULONG * ál ; \ 738 ià(( a )-> tÝ > 0) \ 740  ál ð&(( a )-> d [×)-> tÝ -1]); (a)->top > 0; (a)->top--) \ 741 ià(*( ál --)) ; \ 743 `bn_pÞlu‹ ( a ); \ 744 } ) 746 BN_ULONG bn_mul_add_wÜds (BN_ULONG * ½ , cÚ¡ BN_ULONG * ­ ,  num , BN_ULONG w ); 747 BN_ULONG bn_mul_wÜds (BN_ULONG * ½ , cÚ¡ BN_ULONG * ­ ,  num , BN_ULONG w ); 748  bn_sqr_wÜds ( BN_ULONG * ½ , cÚ¡ BN_ULONG * ­ ,  num ); 749 BN_ULONG bn_div_wÜds (BN_ULONG h , BN_ULONG l , BN_ULONG d ); 750 BN_ULONG bn_add_wÜds (BN_ULONG * ½ , cÚ¡ BN_ULONG * ­ , cÚ¡ BN_ULONG * bp , num ); 751 BN_ULONG bn_sub_wÜds (BN_ULONG * ½ , cÚ¡ BN_ULONG * ­ , cÚ¡ BN_ULONG * bp , num ); 754 BIGNUM * g‘_rfc2409_´ime_768 (BIGNUM * bn ); 755 BIGNUM * g‘_rfc2409_´ime_1024 (BIGNUM * bn ); 758 BIGNUM * g‘_rfc3526_´ime_1536 (BIGNUM * bn ); 759 BIGNUM * g‘_rfc3526_´ime_2048 (BIGNUM * bn ); 760 BIGNUM * g‘_rfc3526_´ime_3072 (BIGNUM * bn ); 761 BIGNUM * g‘_rfc3526_´ime_4096 (BIGNUM * bn ); 762 BIGNUM * g‘_rfc3526_´ime_6144 (BIGNUM * bn ); 763 BIGNUM * g‘_rfc3526_´ime_8192 (BIGNUM * bn ); 765  BN_bÁe¡_¿nd ( BIGNUM * ºd ,  b™s ,  tÝ , bÙtom ); 771  ERR_lßd_BN_¡ršgs (); 776  #BN_F_BNRAND 127 ) 777  #BN_F_BN_BLINDING_CONVERT_EX 100 ) 778  #BN_F_BN_BLINDING_CREATE_PARAM 128 ) 779  #BN_F_BN_BLINDING_INVERT_EX 101 ) 780  #BN_F_BN_BLINDING_NEW 102 ) 781  #BN_F_BN_BLINDING_UPDATE 103 ) 782  #BN_F_BN_BN2DEC 104 ) 783  #BN_F_BN_BN2HEX 105 ) 784  #BN_F_BN_CTX_GET 116 ) 785  #BN_F_BN_CTX_NEW 106 ) 786  #BN_F_BN_CTX_START 129 ) 787  #BN_F_BN_DIV 107 ) 788  #BN_F_BN_DIV_NO_BRANCH 138 ) 789  #BN_F_BN_DIV_RECP 130 ) 790  #BN_F_BN_EXP 123 ) 791  #BN_F_BN_EXPAND2 108 ) 792  #BN_F_BN_EXPAND_INTERNAL 120 ) 793  #BN_F_BN_GF2M_MOD 131 ) 794  #BN_F_BN_GF2M_MOD_EXP 132 ) 795  #BN_F_BN_GF2M_MOD_MUL 133 ) 796  #BN_F_BN_GF2M_MOD_SOLVE_QUAD 134 ) 797  #BN_F_BN_GF2M_MOD_SOLVE_QUAD_ARR 135 ) 798  #BN_F_BN_GF2M_MOD_SQR 136 ) 799  #BN_F_BN_GF2M_MOD_SQRT 137 ) 800  #BN_F_BN_MOD_EXP2_MONT 118 ) 801  #BN_F_BN_MOD_EXP_MONT 109 ) 802  #BN_F_BN_MOD_EXP_MONT_CONSTTIME 124 ) 803  #BN_F_BN_MOD_EXP_MONT_WORD 117 ) 804  #BN_F_BN_MOD_EXP_RECP 125 ) 805  #BN_F_BN_MOD_EXP_SIMPLE 126 ) 806  #BN_F_BN_MOD_INVERSE 110 ) 807  #BN_F_BN_MOD_INVERSE_NO_BRANCH 139 ) 808  #BN_F_BN_MOD_LSHIFT_QUICK 119 ) 809  #BN_F_BN_MOD_MUL_RECIPROCAL 111 ) 810  #BN_F_BN_MOD_SQRT 121 ) 811  #BN_F_BN_MPI2BN 112 ) 812  #BN_F_BN_NEW 113 ) 813  #BN_F_BN_RAND 114 ) 814  #BN_F_BN_RAND_RANGE 122 ) 815  #BN_F_BN_USUB 115 ) 818  #BN_R_ARG2_LT_ARG3 100 ) 819  #BN_R_BAD_RECIPROCAL 101 ) 820  #BN_R_BIGNUM_TOO_LONG 114 ) 821  #BN_R_CALLED_WITH_EVEN_MODULUS 102 ) 822  #BN_R_DIV_BY_ZERO 103 ) 823  #BN_R_ENCODING_ERROR 104 ) 824  #BN_R_EXPAND_ON_STATIC_BIGNUM_DATA 105 ) 825  #BN_R_INPUT_NOT_REDUCED 110 ) 826  #BN_R_INVALID_LENGTH 106 ) 827  #BN_R_INVALID_RANGE 115 ) 828  #BN_R_NOT_A_SQUARE 111 ) 829  #BN_R_NOT_INITIALIZED 107 ) 830  #BN_R_NO_INVERSE 108 ) 831  #BN_R_NO_SOLUTION 116 ) 832  #BN_R_P_IS_NOT_PRIME 112 ) 833  #BN_R_TOO_MANY_ITERATIONS 113 ) 834  #BN_R_TOO_MANY_TEMPORARY_VARIABLES 109 ) 836 #ifdeà __ýlu¥lus @/usr/include/openssl/objects.h 59 #iâdeà HEADER_OBJECTS_H 60  #HEADER_OBJECTS_H ) 62  #USE_OBJ_MAC ) 64 #ifdeà USE_OBJ_MAC 65  ~<Ý’s¦/obj_mac.h > 67  #SN_undef "UNDEF" ) 68  #LN_undef "undefšed" ) 69  #NID_undef 0 ) 70  #OBJ_undef 0L ) 72  #SN_AlgÜ™hm "AlgÜ™hm" ) 73  #LN_®gÜ™hm "®gÜ™hm" ) 74  #NID_®gÜ™hm 38 ) 75  #OBJ_®gÜ™hm 1L,3L,14L,3L,2L ) 77  #LN_r§dsi "r§dsi" ) 78  #NID_r§dsi 1 ) 79  #OBJ_r§dsi 1L,2L,840L,113549L ) 81  #LN_pkcs "pkcs" ) 82  #NID_pkcs 2 ) 83  #OBJ_pkcs OBJ_r§dsi ,1L ) 85  #SN_md2 "MD2" ) 86  #LN_md2 "md2" ) 87  #NID_md2 3 ) 88  #OBJ_md2 OBJ_r§dsi ,2L,2L ) 90  #SN_md5 "MD5" ) 91  #LN_md5 "md5" ) 92  #NID_md5 4 ) 93  #OBJ_md5 OBJ_r§dsi ,2L,5L ) 95  #SN_rc4 "RC4" ) 96  #LN_rc4 "rc4" ) 97  #NID_rc4 5 ) 98  #OBJ_rc4 OBJ_r§dsi ,3L,4L ) 100  #LN_r§Enüy±iÚ "r§Enüy±iÚ" ) 101  #NID_r§Enüy±iÚ 6 ) 102  #OBJ_r§Enüy±iÚ OBJ_pkcs ,1L,1L ) 104  #SN_md2W™hRSAEnüy±iÚ "RSA-MD2" ) 105  #LN_md2W™hRSAEnüy±iÚ "md2W™hRSAEnüy±iÚ" ) 106  #NID_md2W™hRSAEnüy±iÚ 7 ) 107  #OBJ_md2W™hRSAEnüy±iÚ OBJ_pkcs ,1L,2L ) 109  #SN_md5W™hRSAEnüy±iÚ "RSA-MD5" ) 110  #LN_md5W™hRSAEnüy±iÚ "md5W™hRSAEnüy±iÚ" ) 111  #NID_md5W™hRSAEnüy±iÚ 8 ) 112  #OBJ_md5W™hRSAEnüy±iÚ OBJ_pkcs ,1L,4L ) 114  #SN_pbeW™hMD2AndDES_CBC "PBE-MD2-DES" ) 115  #LN_pbeW™hMD2AndDES_CBC "pbeW™hMD2AndDES-CBC" ) 116  #NID_pbeW™hMD2AndDES_CBC 9 ) 117  #OBJ_pbeW™hMD2AndDES_CBC OBJ_pkcs ,5L,1L ) 119  #SN_pbeW™hMD5AndDES_CBC "PBE-MD5-DES" ) 120  #LN_pbeW™hMD5AndDES_CBC "pbeW™hMD5AndDES-CBC" ) 121  #NID_pbeW™hMD5AndDES_CBC 10 ) 122  #OBJ_pbeW™hMD5AndDES_CBC OBJ_pkcs ,5L,3L ) 124  #LN_X500 "X500" ) 125  #NID_X500 11 ) 126  #OBJ_X500 2L,5L ) 128  #LN_X509 "X509" ) 129  #NID_X509 12 ) 130  #OBJ_X509 OBJ_X500 ,4L ) 132  #SN_commÚName "CN" ) 133  #LN_commÚName "commÚName" ) 134  #NID_commÚName 13 ) 135  #OBJ_commÚName OBJ_X509 ,3L ) 137  #SN_couÁryName "C" ) 138  #LN_couÁryName "couÁryName" ) 139  #NID_couÁryName 14 ) 140  #OBJ_couÁryName OBJ_X509 ,6L ) 142  #SN_loÿl™yName "L" ) 143  #LN_loÿl™yName "loÿl™yName" ) 144  #NID_loÿl™yName 15 ) 145  #OBJ_loÿl™yName OBJ_X509 ,7L ) 150  #SN_¡©eOrProvšûName "ST" ) 151  #LN_¡©eOrProvšûName "¡©eOrProvšûName" ) 152  #NID_¡©eOrProvšûName 16 ) 153  #OBJ_¡©eOrProvšûName OBJ_X509 ,8L ) 155  #SN_Ügªiz©iÚName "O" ) 156  #LN_Ügªiz©iÚName "Ügªiz©iÚName" ) 157  #NID_Ügªiz©iÚName 17 ) 158  #OBJ_Ügªiz©iÚName OBJ_X509 ,10L ) 160  #SN_Ügªiz©iÚ®Un™Name "OU" ) 161  #LN_Ügªiz©iÚ®Un™Name "Ügªiz©iÚ®Un™Name" ) 162  #NID_Ügªiz©iÚ®Un™Name 18 ) 163  #OBJ_Ügªiz©iÚ®Un™Name OBJ_X509 ,11L ) 165  #SN_r§ "RSA" ) 166  #LN_r§ "r§" ) 167  #NID_r§ 19 ) 168  #OBJ_r§ OBJ_X500 ,8L,1L,1L ) 170  #LN_pkcs7 "pkcs7" ) 171  #NID_pkcs7 20 ) 172  #OBJ_pkcs7 OBJ_pkcs ,7L ) 174  #LN_pkcs7_d©a "pkcs7-d©a" ) 175  #NID_pkcs7_d©a 21 ) 176  #OBJ_pkcs7_d©a OBJ_pkcs7 ,1L ) 178  #LN_pkcs7_sigÃd "pkcs7-sigÃdD©a" ) 179  #NID_pkcs7_sigÃd 22 ) 180  #OBJ_pkcs7_sigÃd OBJ_pkcs7 ,2L ) 182  #LN_pkcs7_’v–Ýed "pkcs7-’v–ÝedD©a" ) 183  #NID_pkcs7_’v–Ýed 23 ) 184  #OBJ_pkcs7_’v–Ýed OBJ_pkcs7 ,3L ) 186  #LN_pkcs7_sigÃdAndEnv–Ýed "pkcs7-sigÃdAndEnv–ÝedD©a" ) 187  #NID_pkcs7_sigÃdAndEnv–Ýed 24 ) 188  #OBJ_pkcs7_sigÃdAndEnv–Ýed OBJ_pkcs7 ,4L ) 190  #LN_pkcs7_dige¡ "pkcs7-dige¡D©a" ) 191  #NID_pkcs7_dige¡ 25 ) 192  #OBJ_pkcs7_dige¡ OBJ_pkcs7 ,5L ) 194  #LN_pkcs7_’üy±ed "pkcs7-’üy±edD©a" ) 195  #NID_pkcs7_’üy±ed 26 ) 196  #OBJ_pkcs7_’üy±ed OBJ_pkcs7 ,6L ) 198  #LN_pkcs3 "pkcs3" ) 199  #NID_pkcs3 27 ) 200  #OBJ_pkcs3 OBJ_pkcs ,3L ) 202  #LN_dhKeyAg»em’t "dhKeyAg»em’t" ) 203  #NID_dhKeyAg»em’t 28 ) 204  #OBJ_dhKeyAg»em’t OBJ_pkcs3 ,1L ) 206  #SN_des_ecb "DES-ECB" ) 207  #LN_des_ecb "des-ecb" ) 208  #NID_des_ecb 29 ) 209  #OBJ_des_ecb OBJ_®gÜ™hm ,6L ) 211  #SN_des_cfb64 "DES-CFB" ) 212  #LN_des_cfb64 "des-cfb" ) 213  #NID_des_cfb64 30 ) 215  #OBJ_des_cfb64 OBJ_®gÜ™hm ,9L ) 217  #SN_des_cbc "DES-CBC" ) 218  #LN_des_cbc "des-cbc" ) 219  #NID_des_cbc 31 ) 221  #OBJ_des_cbc OBJ_®gÜ™hm ,7L ) 223  #SN_des_ede "DES-EDE" ) 224  #LN_des_ede "des-ede" ) 225  #NID_des_ede 32 ) 227  #OBJ_des_ede OBJ_®gÜ™hm ,17L ) 229  #SN_des_ede3 "DES-EDE3" ) 230  #LN_des_ede3 "des-ede3" ) 231  #NID_des_ede3 33 ) 233  #SN_id—_cbc "IDEA-CBC" ) 234  #LN_id—_cbc "id—-cbc" ) 235  #NID_id—_cbc 34 ) 236  #OBJ_id—_cbc 1L,3L,6L,1L,4L,1L,188L,7L,1L,1L,2L ) 238  #SN_id—_cfb64 "IDEA-CFB" ) 239  #LN_id—_cfb64 "id—-cfb" ) 240  #NID_id—_cfb64 35 ) 242  #SN_id—_ecb "IDEA-ECB" ) 243  #LN_id—_ecb "id—-ecb" ) 244  #NID_id—_ecb 36 ) 246  #SN_rc2_cbc "RC2-CBC" ) 247  #LN_rc2_cbc "rc2-cbc" ) 248  #NID_rc2_cbc 37 ) 249  #OBJ_rc2_cbc OBJ_r§dsi ,3L,2L ) 251  #SN_rc2_ecb "RC2-ECB" ) 252  #LN_rc2_ecb "rc2-ecb" ) 253  #NID_rc2_ecb 38 ) 255  #SN_rc2_cfb64 "RC2-CFB" ) 256  #LN_rc2_cfb64 "rc2-cfb" ) 257  #NID_rc2_cfb64 39 ) 259  #SN_rc2_ofb64 "RC2-OFB" ) 260  #LN_rc2_ofb64 "rc2-ofb" ) 261  #NID_rc2_ofb64 40 ) 263  #SN_sha "SHA" ) 264  #LN_sha "sha" ) 265  #NID_sha 41 ) 266  #OBJ_sha OBJ_®gÜ™hm ,18L ) 268  #SN_shaW™hRSAEnüy±iÚ "RSA-SHA" ) 269  #LN_shaW™hRSAEnüy±iÚ "shaW™hRSAEnüy±iÚ" ) 270  #NID_shaW™hRSAEnüy±iÚ 42 ) 271  #OBJ_shaW™hRSAEnüy±iÚ OBJ_®gÜ™hm ,15L ) 273  #SN_des_ede_cbc "DES-EDE-CBC" ) 274  #LN_des_ede_cbc "des-ede-cbc" ) 275  #NID_des_ede_cbc 43 ) 277  #SN_des_ede3_cbc "DES-EDE3-CBC" ) 278  #LN_des_ede3_cbc "des-ede3-cbc" ) 279  #NID_des_ede3_cbc 44 ) 280  #OBJ_des_ede3_cbc OBJ_r§dsi ,3L,7L ) 282  #SN_des_ofb64 "DES-OFB" ) 283  #LN_des_ofb64 "des-ofb" ) 284  #NID_des_ofb64 45 ) 285  #OBJ_des_ofb64 OBJ_®gÜ™hm ,8L ) 287  #SN_id—_ofb64 "IDEA-OFB" ) 288  #LN_id—_ofb64 "id—-ofb" ) 289  #NID_id—_ofb64 46 ) 291  #LN_pkcs9 "pkcs9" ) 292  #NID_pkcs9 47 ) 293  #OBJ_pkcs9 OBJ_pkcs ,9L ) 295  #SN_pkcs9_emažAdd»ss "Emaž" ) 296  #LN_pkcs9_emažAdd»ss "emažAdd»ss" ) 297  #NID_pkcs9_emažAdd»ss 48 ) 298  #OBJ_pkcs9_emažAdd»ss OBJ_pkcs9 ,1L ) 300  #LN_pkcs9_un¡ruùu»dName "un¡ruùu»dName" ) 301  #NID_pkcs9_un¡ruùu»dName 49 ) 302  #OBJ_pkcs9_un¡ruùu»dName OBJ_pkcs9 ,2L ) 304  #LN_pkcs9_cÚ‹ÁTy³ "cÚ‹ÁTy³" ) 305  #NID_pkcs9_cÚ‹ÁTy³ 50 ) 306  #OBJ_pkcs9_cÚ‹ÁTy³ OBJ_pkcs9 ,3L ) 308  #LN_pkcs9_mes§geDige¡ "mes§geDige¡" ) 309  #NID_pkcs9_mes§geDige¡ 51 ) 310  #OBJ_pkcs9_mes§geDige¡ OBJ_pkcs9 ,4L ) 312  #LN_pkcs9_signšgTime "signšgTime" ) 313  #NID_pkcs9_signšgTime 52 ) 314  #OBJ_pkcs9_signšgTime OBJ_pkcs9 ,5L ) 316  #LN_pkcs9_couÁ”sigÇtu» "couÁ”sigÇtu»" ) 317  #NID_pkcs9_couÁ”sigÇtu» 53 ) 318  #OBJ_pkcs9_couÁ”sigÇtu» OBJ_pkcs9 ,6L ) 320  #LN_pkcs9_ch®ËngePasswÜd "ch®ËngePasswÜd" ) 321  #NID_pkcs9_ch®ËngePasswÜd 54 ) 322  #OBJ_pkcs9_ch®ËngePasswÜd OBJ_pkcs9 ,7L ) 324  #LN_pkcs9_un¡ruùu»dAdd»ss "un¡ruùu»dAdd»ss" ) 325  #NID_pkcs9_un¡ruùu»dAdd»ss 55 ) 326  #OBJ_pkcs9_un¡ruùu»dAdd»ss OBJ_pkcs9 ,8L ) 328  #LN_pkcs9_extC”tA‰ribu‹s "ex‹ndedC”tifiÿ‹A‰ribu‹s" ) 329  #NID_pkcs9_extC”tA‰ribu‹s 56 ) 330  #OBJ_pkcs9_extC”tA‰ribu‹s OBJ_pkcs9 ,9L ) 332  #SN_Ãtsÿ³ "N‘sÿ³" ) 333  #LN_Ãtsÿ³ "N‘sÿ³ CommuniÿtiÚ CÜp." ) 334  #NID_Ãtsÿ³ 57 ) 335  #OBJ_Ãtsÿ³ 2L,16L,840L,1L,113730L ) 337  #SN_Ãtsÿ³_û¹_ex‹nsiÚ "nsC”tExt" ) 338  #LN_Ãtsÿ³_û¹_ex‹nsiÚ "N‘sÿ³ C”tifiÿ‹ Ex‹nsiÚ" ) 339  #NID_Ãtsÿ³_û¹_ex‹nsiÚ 58 ) 340  #OBJ_Ãtsÿ³_û¹_ex‹nsiÚ OBJ_Ãtsÿ³ ,1L ) 342  #SN_Ãtsÿ³_d©a_ty³ "nsD©aTy³" ) 343  #LN_Ãtsÿ³_d©a_ty³ "N‘sÿ³ D©¨Ty³" ) 344  #NID_Ãtsÿ³_d©a_ty³ 59 ) 345  #OBJ_Ãtsÿ³_d©a_ty³ OBJ_Ãtsÿ³ ,2L ) 347  #SN_des_ede_cfb64 "DES-EDE-CFB" ) 348  #LN_des_ede_cfb64 "des-ede-cfb" ) 349  #NID_des_ede_cfb64 60 ) 351  #SN_des_ede3_cfb64 "DES-EDE3-CFB" ) 352  #LN_des_ede3_cfb64 "des-ede3-cfb" ) 353  #NID_des_ede3_cfb64 61 ) 355  #SN_des_ede_ofb64 "DES-EDE-OFB" ) 356  #LN_des_ede_ofb64 "des-ede-ofb" ) 357  #NID_des_ede_ofb64 62 ) 359  #SN_des_ede3_ofb64 "DES-EDE3-OFB" ) 360  #LN_des_ede3_ofb64 "des-ede3-ofb" ) 361  #NID_des_ede3_ofb64 63 ) 364  #SN_sha1 "SHA1" ) 365  #LN_sha1 "sha1" ) 366  #NID_sha1 64 ) 367  #OBJ_sha1 OBJ_®gÜ™hm ,26L ) 371  #SN_sha1W™hRSAEnüy±iÚ "RSA-SHA1" ) 372  #LN_sha1W™hRSAEnüy±iÚ "sha1W™hRSAEnüy±iÚ" ) 373  #NID_sha1W™hRSAEnüy±iÚ 65 ) 374  #OBJ_sha1W™hRSAEnüy±iÚ OBJ_pkcs ,1L,5L ) 376  #SN_d§W™hSHA "DSA-SHA" ) 377  #LN_d§W™hSHA "d§W™hSHA" ) 378  #NID_d§W™hSHA 66 ) 379  #OBJ_d§W™hSHA OBJ_®gÜ™hm ,13L ) 381  #SN_d§_2 "DSA-Þd" ) 382  #LN_d§_2 "d§Enüy±iÚ-Þd" ) 383  #NID_d§_2 67 ) 384  #OBJ_d§_2 OBJ_®gÜ™hm ,12L ) 387  #SN_pbeW™hSHA1AndRC2_CBC "PBE-SHA1-RC2-64" ) 388  #LN_pbeW™hSHA1AndRC2_CBC "pbeW™hSHA1AndRC2-CBC" ) 389  #NID_pbeW™hSHA1AndRC2_CBC 68 ) 390  #OBJ_pbeW™hSHA1AndRC2_CBC OBJ_pkcs ,5L,11L ) 396  #LN_id_pbkdf2 "PBKDF2" ) 397  #NID_id_pbkdf2 69 ) 398  #OBJ_id_pbkdf2 OBJ_pkcs ,5L,12L ) 400  #SN_d§W™hSHA1_2 "DSA-SHA1-Þd" ) 401  #LN_d§W™hSHA1_2 "d§W™hSHA1-Þd" ) 402  #NID_d§W™hSHA1_2 70 ) 404  #OBJ_d§W™hSHA1_2 OBJ_®gÜ™hm ,27L ) 406  #SN_Ãtsÿ³_û¹_ty³ "nsC”tTy³" ) 407  #LN_Ãtsÿ³_û¹_ty³ "N‘sÿ³ C”ˆTy³" ) 408  #NID_Ãtsÿ³_û¹_ty³ 71 ) 409  #OBJ_Ãtsÿ³_û¹_ty³ OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,1L ) 411  #SN_Ãtsÿ³_ba£_u¾ "nsBa£U¾" ) 412  #LN_Ãtsÿ³_ba£_u¾ "N‘sÿ³ Ba£ U¾" ) 413  #NID_Ãtsÿ³_ba£_u¾ 72 ) 414  #OBJ_Ãtsÿ³_ba£_u¾ OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,2L ) 416  #SN_Ãtsÿ³_»voÿtiÚ_u¾ "nsRevoÿtiÚU¾" ) 417  #LN_Ãtsÿ³_»voÿtiÚ_u¾ "N‘sÿ³ RevoÿtiÚ U¾" ) 418  #NID_Ãtsÿ³_»voÿtiÚ_u¾ 73 ) 419  #OBJ_Ãtsÿ³_»voÿtiÚ_u¾ OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,3L ) 421  #SN_Ãtsÿ³_ÿ_»voÿtiÚ_u¾ "nsCaRevoÿtiÚU¾" ) 422  #LN_Ãtsÿ³_ÿ_»voÿtiÚ_u¾ "N‘sÿ³ CA RevoÿtiÚ U¾" ) 423  #NID_Ãtsÿ³_ÿ_»voÿtiÚ_u¾ 74 ) 424  #OBJ_Ãtsÿ³_ÿ_»voÿtiÚ_u¾ OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,4L ) 426  #SN_Ãtsÿ³_»Ãw®_u¾ "nsR’ew®U¾" ) 427  #LN_Ãtsÿ³_»Ãw®_u¾ "N‘sÿ³ R’ew® U¾" ) 428  #NID_Ãtsÿ³_»Ãw®_u¾ 75 ) 429  #OBJ_Ãtsÿ³_»Ãw®_u¾ OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,7L ) 431  #SN_Ãtsÿ³_ÿ_pÞicy_u¾ "nsCaPÞicyU¾" ) 432  #LN_Ãtsÿ³_ÿ_pÞicy_u¾ "N‘sÿ³ CA PÞicy U¾" ) 433  #NID_Ãtsÿ³_ÿ_pÞicy_u¾ 76 ) 434  #OBJ_Ãtsÿ³_ÿ_pÞicy_u¾ OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,8L ) 436  #SN_Ãtsÿ³_s¦_£rv”_Çme "nsS¦S”v”Name" ) 437  #LN_Ãtsÿ³_s¦_£rv”_Çme "N‘sÿ³ SSL S”v” Name" ) 438  #NID_Ãtsÿ³_s¦_£rv”_Çme 77 ) 439  #OBJ_Ãtsÿ³_s¦_£rv”_Çme OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,12L ) 441  #SN_Ãtsÿ³_comm’t "nsComm’t" ) 442  #LN_Ãtsÿ³_comm’t "N‘sÿ³ Comm’t" ) 443  #NID_Ãtsÿ³_comm’t 78 ) 444  #OBJ_Ãtsÿ³_comm’t OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,13L ) 446  #SN_Ãtsÿ³_û¹_£qu’û "nsC”tSequ’û" ) 447  #LN_Ãtsÿ³_û¹_£qu’û "N‘sÿ³ C”tifiÿ‹ Sequ’û" ) 448  #NID_Ãtsÿ³_û¹_£qu’û 79 ) 449  #OBJ_Ãtsÿ³_û¹_£qu’û OBJ_Ãtsÿ³_d©a_ty³ ,5L ) 451  #SN_desx_cbc "DESX-CBC" ) 452  #LN_desx_cbc "desx-cbc" ) 453  #NID_desx_cbc 80 ) 455  #SN_id_û "id-û" ) 456  #NID_id_û 81 ) 457  #OBJ_id_û 2L,5L,29L ) 459  #SN_subjeù_key_id’tif›r "subjeùKeyId’tif›r" ) 460  #LN_subjeù_key_id’tif›r "X509v3 Subjeù Key Id’tif›r" ) 461  #NID_subjeù_key_id’tif›r 82 ) 462  #OBJ_subjeù_key_id’tif›r OBJ_id_û ,14L ) 464  #SN_key_u§ge "keyU§ge" ) 465  #LN_key_u§ge "X509v3 Key U§ge" ) 466  #NID_key_u§ge 83 ) 467  #OBJ_key_u§ge OBJ_id_û ,15L ) 469  #SN_´iv©e_key_u§ge_³riod "´iv©eKeyU§geP”iod" ) 470  #LN_´iv©e_key_u§ge_³riod "X509v3 Priv©Key U§gP”iod" ) 471  #NID_´iv©e_key_u§ge_³riod 84 ) 472  #OBJ_´iv©e_key_u§ge_³riod OBJ_id_û ,16L ) 474  #SN_subjeù_®t_Çme "subjeùAÉName" ) 475  #LN_subjeù_®t_Çme "X509v3 Subjeù AÉ”ÇtivName" ) 476  #NID_subjeù_®t_Çme 85 ) 477  #OBJ_subjeù_®t_Çme OBJ_id_û ,17L ) 479  #SN_issu”_®t_Çme "issu”AÉName" ) 480  #LN_issu”_®t_Çme "X509v3 Issu” AÉ”ÇtivName" ) 481  #NID_issu”_®t_Çme 86 ) 482  #OBJ_issu”_®t_Çme OBJ_id_û ,18L ) 484  #SN_basic_cÚ¡¿šts "basicCÚ¡¿šts" ) 485  #LN_basic_cÚ¡¿šts "X509v3 BasiøCÚ¡¿šts" ) 486  #NID_basic_cÚ¡¿šts 87 ) 487  #OBJ_basic_cÚ¡¿šts OBJ_id_û ,19L ) 489  #SN_ül_numb” "ülNumb”" ) 490  #LN_ül_numb” "X509v3 CRL Numb”" ) 491  #NID_ül_numb” 88 ) 492  #OBJ_ül_numb” OBJ_id_û ,20L ) 494  #SN_û¹ifiÿ‹_pÞic›s "û¹ifiÿ‹PÞic›s" ) 495  #LN_û¹ifiÿ‹_pÞic›s "X509v3 C”tifiÿ‹ PÞic›s" ) 496  #NID_û¹ifiÿ‹_pÞic›s 89 ) 497  #OBJ_û¹ifiÿ‹_pÞic›s OBJ_id_û ,32L ) 499  #SN_authÜ™y_key_id’tif›r "authÜ™yKeyId’tif›r" ) 500  #LN_authÜ™y_key_id’tif›r "X509v3 AuthÜ™y Key Id’tif›r" ) 501  #NID_authÜ™y_key_id’tif›r 90 ) 502  #OBJ_authÜ™y_key_id’tif›r OBJ_id_û ,35L ) 504  #SN_bf_cbc "BF-CBC" ) 505  #LN_bf_cbc "bf-cbc" ) 506  #NID_bf_cbc 91 ) 507  #OBJ_bf_cbc 1L,3L,6L,1L,4L,1L,3029L,1L,2L ) 509  #SN_bf_ecb "BF-ECB" ) 510  #LN_bf_ecb "bf-ecb" ) 511  #NID_bf_ecb 92 ) 513  #SN_bf_cfb64 "BF-CFB" ) 514  #LN_bf_cfb64 "bf-cfb" ) 515  #NID_bf_cfb64 93 ) 517  #SN_bf_ofb64 "BF-OFB" ) 518  #LN_bf_ofb64 "bf-ofb" ) 519  #NID_bf_ofb64 94 ) 521  #SN_mdc2 "MDC2" ) 522  #LN_mdc2 "mdc2" ) 523  #NID_mdc2 95 ) 524  #OBJ_mdc2 2L,5L,8L,3L,101L ) 527  #SN_mdc2W™hRSA "RSA-MDC2" ) 528  #LN_mdc2W™hRSA "mdc2w™hRSA" ) 529  #NID_mdc2W™hRSA 96 ) 530  #OBJ_mdc2W™hRSA 2L,5L,8L,3L,100L ) 532  #SN_rc4_40 "RC4-40" ) 533  #LN_rc4_40 "rc4-40" ) 534  #NID_rc4_40 97 ) 536  #SN_rc2_40_cbc "RC2-40-CBC" ) 537  #LN_rc2_40_cbc "rc2-40-cbc" ) 538  #NID_rc2_40_cbc 98 ) 540  #SN_giv’Name "G" ) 541  #LN_giv’Name "giv’Name" ) 542  #NID_giv’Name 99 ) 543  #OBJ_giv’Name OBJ_X509 ,42L ) 545  #SN_suºame "S" ) 546  #LN_suºame "suºame" ) 547  #NID_suºame 100 ) 548  #OBJ_suºame OBJ_X509 ,4L ) 550  #SN_š™Ÿls "I" ) 551  #LN_š™Ÿls "š™Ÿls" ) 552  #NID_š™Ÿls 101 ) 553  #OBJ_š™Ÿls OBJ_X509 ,43L ) 555  #SN_uniqueId’tif›r "UID" ) 556  #LN_uniqueId’tif›r "uniqueId’tif›r" ) 557  #NID_uniqueId’tif›r 102 ) 558  #OBJ_uniqueId’tif›r OBJ_X509 ,45L ) 560  #SN_ül_di¡ributiÚ_pošts "ülDi¡ributiÚPošts" ) 561  #LN_ül_di¡ributiÚ_pošts "X509v3 CRL Di¡ributiÚ Pošts" ) 562  #NID_ül_di¡ributiÚ_pošts 103 ) 563  #OBJ_ül_di¡ributiÚ_pošts OBJ_id_û ,31L ) 565  #SN_md5W™hRSA "RSA-NP-MD5" ) 566  #LN_md5W™hRSA "md5W™hRSA" ) 567  #NID_md5W™hRSA 104 ) 568  #OBJ_md5W™hRSA OBJ_®gÜ™hm ,3L ) 570  #SN_£rŸlNumb” "SN" ) 571  #LN_£rŸlNumb” "£rŸlNumb”" ) 572  #NID_£rŸlNumb” 105 ) 573  #OBJ_£rŸlNumb” OBJ_X509 ,5L ) 575  #SN_t™Ë "T" ) 576  #LN_t™Ë "t™Ë" ) 577  #NID_t™Ë 106 ) 578  #OBJ_t™Ë OBJ_X509 ,12L ) 580  #SN_desütiÚ "D" ) 581  #LN_desütiÚ "desütiÚ" ) 582  #NID_desütiÚ 107 ) 583  #OBJ_desütiÚ OBJ_X509 ,13L ) 586  #SN_ÿ¡5_cbc "CAST5-CBC" ) 587  #LN_ÿ¡5_cbc "ÿ¡5-cbc" ) 588  #NID_ÿ¡5_cbc 108 ) 589  #OBJ_ÿ¡5_cbc 1L,2L,840L,113533L,7L,66L,10L ) 591  #SN_ÿ¡5_ecb "CAST5-ECB" ) 592  #LN_ÿ¡5_ecb "ÿ¡5-ecb" ) 593  #NID_ÿ¡5_ecb 109 ) 595  #SN_ÿ¡5_cfb64 "CAST5-CFB" ) 596  #LN_ÿ¡5_cfb64 "ÿ¡5-cfb" ) 597  #NID_ÿ¡5_cfb64 110 ) 599  #SN_ÿ¡5_ofb64 "CAST5-OFB" ) 600  #LN_ÿ¡5_ofb64 "ÿ¡5-ofb" ) 601  #NID_ÿ¡5_ofb64 111 ) 603  #LN_pbeW™hMD5AndCa¡5_CBC "pbeW™hMD5AndCa¡5CBC" ) 604  #NID_pbeW™hMD5AndCa¡5_CBC 112 ) 605  #OBJ_pbeW™hMD5AndCa¡5_CBC 1L,2L,840L,113533L,7L,66L,12L ) 611  #SN_d§W™hSHA1 "DSA-SHA1" ) 612  #LN_d§W™hSHA1 "d§W™hSHA1" ) 613  #NID_d§W™hSHA1 113 ) 614  #OBJ_d§W™hSHA1 1L,2L,840L,10040L,4L,3L ) 616  #NID_md5_sha1 114 ) 617  #SN_md5_sha1 "MD5-SHA1" ) 618  #LN_md5_sha1 "md5-sha1" ) 620  #SN_sha1W™hRSA "RSA-SHA1-2" ) 621  #LN_sha1W™hRSA "sha1W™hRSA" ) 622  #NID_sha1W™hRSA 115 ) 623  #OBJ_sha1W™hRSA OBJ_®gÜ™hm ,29L ) 625  #SN_d§ "DSA" ) 626  #LN_d§ "d§Enüy±iÚ" ) 627  #NID_d§ 116 ) 628  #OBJ_d§ 1L,2L,840L,10040L,4L,1L ) 630  #SN_remd160 "RIPEMD160" ) 631  #LN_remd160 "remd160" ) 632  #NID_remd160 117 ) 633  #OBJ_remd160 1L,3L,36L,3L,2L,1L ) 637  #SN_remd160W™hRSA "RSA-RIPEMD160" ) 638  #LN_remd160W™hRSA "remd160W™hRSA" ) 639  #NID_remd160W™hRSA 119 ) 640  #OBJ_remd160W™hRSA 1L,3L,36L,3L,3L,1L,2L ) 650  #SN_rc5_cbc "RC5-CBC" ) 651  #LN_rc5_cbc "rc5-cbc" ) 652  #NID_rc5_cbc 120 ) 653  #OBJ_rc5_cbc OBJ_r§dsi ,3L,8L ) 655  #SN_rc5_ecb "RC5-ECB" ) 656  #LN_rc5_ecb "rc5-ecb" ) 657  #NID_rc5_ecb 121 ) 659  #SN_rc5_cfb64 "RC5-CFB" ) 660  #LN_rc5_cfb64 "rc5-cfb" ) 661  #NID_rc5_cfb64 122 ) 663  #SN_rc5_ofb64 "RC5-OFB" ) 664  #LN_rc5_ofb64 "rc5-ofb" ) 665  #NID_rc5_ofb64 123 ) 667  #SN_¾e_com´essiÚ "RLE" ) 668  #LN_¾e_com´essiÚ "ruÀËngth com´essiÚ" ) 669  #NID_¾e_com´essiÚ 124 ) 670  #OBJ_¾e_com´essiÚ 1L,1L,1L,1L,666L,1L ) 672  #SN_zlib_com´essiÚ "ZLIB" ) 673  #LN_zlib_com´essiÚ "zlib com´essiÚ" ) 674  #NID_zlib_com´essiÚ 125 ) 675  #OBJ_zlib_com´essiÚ 1L,1L,1L,1L,666L,2L ) 677  #SN_ext_key_u§ge "ex‹ndedKeyU§ge" ) 678  #LN_ext_key_u§ge "X509v3 Ex‹nded Key U§ge" ) 679  #NID_ext_key_u§ge 126 ) 680  #OBJ_ext_key_u§ge OBJ_id_û ,37 ) 682  #SN_id_pkix "PKIX" ) 683  #NID_id_pkix 127 ) 684  #OBJ_id_pkix 1L,3L,6L,1L,5L,5L,7L ) 686  #SN_id_kp "id-kp" ) 687  #NID_id_kp 128 ) 688  #OBJ_id_kp OBJ_id_pkix ,3L ) 692  #SN_£rv”_auth "£rv”Auth" ) 693  #LN_£rv”_auth "TLS Web S”v” Auth’tiÿtiÚ" ) 694  #NID_£rv”_auth 129 ) 695  #OBJ_£rv”_auth OBJ_id_kp ,1L ) 697  #SN_þ›Á_auth "þ›ÁAuth" ) 698  #LN_þ›Á_auth "TLS Web Cl›Á Auth’tiÿtiÚ" ) 699  #NID_þ›Á_auth 130 ) 700  #OBJ_þ›Á_auth OBJ_id_kp ,2L ) 702  #SN_code_sign "codeSignšg" ) 703  #LN_code_sign "CodSignšg" ) 704  #NID_code_sign 131 ) 705  #OBJ_code_sign OBJ_id_kp ,3L ) 707  #SN_emaž_´Ùeù "emažPrÙeùiÚ" ) 708  #LN_emaž_´Ùeù "E-maž PrÙeùiÚ" ) 709  #NID_emaž_´Ùeù 132 ) 710  #OBJ_emaž_´Ùeù OBJ_id_kp ,4L ) 712  #SN_time_¡amp "timeSmpšg" ) 713  #LN_time_¡amp "TimSmpšg" ) 714  #NID_time_¡amp 133 ) 715  #OBJ_time_¡amp OBJ_id_kp ,8L ) 719  #SN_ms_code_šd "msCodeInd" ) 720  #LN_ms_code_šd "Miüosoá Individu® CodSignšg" ) 721  #NID_ms_code_šd 134 ) 722  #OBJ_ms_code_šd 1L,3L,6L,1L,4L,1L,311L,2L,1L,21L ) 724  #SN_ms_code_com "msCodeCom" ) 725  #LN_ms_code_com "Miüosoá Comm”cŸÈCodSignšg" ) 726  #NID_ms_code_com 135 ) 727  #OBJ_ms_code_com 1L,3L,6L,1L,4L,1L,311L,2L,1L,22L ) 729  #SN_ms_ùl_sign "msCTLSign" ) 730  #LN_ms_ùl_sign "Miüosoá Tru¡ Li¡ Signšg" ) 731  #NID_ms_ùl_sign 136 ) 732  #OBJ_ms_ùl_sign 1L,3L,6L,1L,4L,1L,311L,10L,3L,1L ) 734  #SN_ms_sgc "msSGC" ) 735  #LN_ms_sgc "Miüosoá S”v” G©ed Cry±o" ) 736  #NID_ms_sgc 137 ) 737  #OBJ_ms_sgc 1L,3L,6L,1L,4L,1L,311L,10L,3L,3L ) 739  #SN_ms_efs "msEFS" ) 740  #LN_ms_efs "Miüosoá Enüy±ed FžSy¡em" ) 741  #NID_ms_efs 138 ) 742  #OBJ_ms_efs 1L,3L,6L,1L,4L,1L,311L,10L,3L,4L ) 746  #SN_ns_sgc "nsSGC" ) 747  #LN_ns_sgc "N‘sÿ³ S”v” G©ed Cry±o" ) 748  #NID_ns_sgc 139 ) 749  #OBJ_ns_sgc OBJ_Ãtsÿ³ ,4L,1L ) 751  #SN_d–_ül "d–CRL" ) 752  #LN_d–_ül "X509v3 D– CRL IndiÿtÜ" ) 753  #NID_d–_ül 140 ) 754  #OBJ_d–_ül OBJ_id_û ,27L ) 756  #SN_ül_»asÚ "CRLR—sÚ" ) 757  #LN_ül_»asÚ "CRL R—sÚ Code" ) 758  #NID_ül_»asÚ 141 ) 759  #OBJ_ül_»asÚ OBJ_id_û ,21L ) 761  #SN_šv®id™y_d©e "šv®id™yD©e" ) 762  #LN_šv®id™y_d©e "Inv®id™y D©e" ) 763  #NID_šv®id™y_d©e 142 ) 764  #OBJ_šv®id™y_d©e OBJ_id_û ,24L ) 766  #SN_sxÃt "SXN‘ID" ) 767  #LN_sxÃt "SŒÚg ExŒª‘ ID" ) 768  #NID_sxÃt 143 ) 769  #OBJ_sxÃt 1L,3L,101L,1L,4L,1L ) 773  #OBJ_pkcs12 OBJ_pkcs ,12L ) 774  #OBJ_pkcs12_pbeids OBJ_pkcs12 , 1 ) 776  #SN_pbe_W™hSHA1And128B™RC4 "PBE-SHA1-RC4-128" ) 777  #LN_pbe_W™hSHA1And128B™RC4 "pbeW™hSHA1And128B™RC4" ) 778  #NID_pbe_W™hSHA1And128B™RC4 144 ) 779  #OBJ_pbe_W™hSHA1And128B™RC4 OBJ_pkcs12_pbeids , 1L ) 781  #SN_pbe_W™hSHA1And40B™RC4 "PBE-SHA1-RC4-40" ) 782  #LN_pbe_W™hSHA1And40B™RC4 "pbeW™hSHA1And40B™RC4" ) 783  #NID_pbe_W™hSHA1And40B™RC4 145 ) 784  #OBJ_pbe_W™hSHA1And40B™RC4 OBJ_pkcs12_pbeids , 2L ) 786  #SN_pbe_W™hSHA1And3_Key_TrËDES_CBC "PBE-SHA1-3DES" ) 787  #LN_pbe_W™hSHA1And3_Key_TrËDES_CBC "pbeW™hSHA1And3-KeyTrËDES-CBC" ) 788  #NID_pbe_W™hSHA1And3_Key_TrËDES_CBC 146 ) 789  #OBJ_pbe_W™hSHA1And3_Key_TrËDES_CBC OBJ_pkcs12_pbeids , 3L ) 791  #SN_pbe_W™hSHA1And2_Key_TrËDES_CBC "PBE-SHA1-2DES" ) 792  #LN_pbe_W™hSHA1And2_Key_TrËDES_CBC "pbeW™hSHA1And2-KeyTrËDES-CBC" ) 793  #NID_pbe_W™hSHA1And2_Key_TrËDES_CBC 147 ) 794  #OBJ_pbe_W™hSHA1And2_Key_TrËDES_CBC OBJ_pkcs12_pbeids , 4L ) 796  #SN_pbe_W™hSHA1And128B™RC2_CBC "PBE-SHA1-RC2-128" ) 797  #LN_pbe_W™hSHA1And128B™RC2_CBC "pbeW™hSHA1And128B™RC2-CBC" ) 798  #NID_pbe_W™hSHA1And128B™RC2_CBC 148 ) 799  #OBJ_pbe_W™hSHA1And128B™RC2_CBC OBJ_pkcs12_pbeids , 5L ) 801  #SN_pbe_W™hSHA1And40B™RC2_CBC "PBE-SHA1-RC2-40" ) 802  #LN_pbe_W™hSHA1And40B™RC2_CBC "pbeW™hSHA1And40B™RC2-CBC" ) 803  #NID_pbe_W™hSHA1And40B™RC2_CBC 149 ) 804  #OBJ_pbe_W™hSHA1And40B™RC2_CBC OBJ_pkcs12_pbeids , 6L ) 806  #OBJ_pkcs12_V”siÚ1 OBJ_pkcs12 , 10L ) 808  #OBJ_pkcs12_BagIds OBJ_pkcs12_V”siÚ1 , 1L ) 810  #LN_keyBag "keyBag" ) 811  #NID_keyBag 150 ) 812  #OBJ_keyBag OBJ_pkcs12_BagIds , 1L ) 814  #LN_pkcs8ShroudedKeyBag "pkcs8ShroudedKeyBag" ) 815  #NID_pkcs8ShroudedKeyBag 151 ) 816  #OBJ_pkcs8ShroudedKeyBag OBJ_pkcs12_BagIds , 2L ) 818  #LN_û¹Bag "û¹Bag" ) 819  #NID_û¹Bag 152 ) 820  #OBJ_û¹Bag OBJ_pkcs12_BagIds , 3L ) 822  #LN_ülBag "ülBag" ) 823  #NID_ülBag 153 ) 824  #OBJ_ülBag OBJ_pkcs12_BagIds , 4L ) 826  #LN_£ü‘Bag "£ü‘Bag" ) 827  #NID_£ü‘Bag 154 ) 828  #OBJ_£ü‘Bag OBJ_pkcs12_BagIds , 5L ) 830  #LN_§ãCÚ‹ÁsBag "§ãCÚ‹ÁsBag" ) 831  #NID_§ãCÚ‹ÁsBag 155 ) 832  #OBJ_§ãCÚ‹ÁsBag OBJ_pkcs12_BagIds , 6L ) 834  #LN_ä›ndlyName "ä›ndlyName" ) 835  #NID_ä›ndlyName 156 ) 836  #OBJ_ä›ndlyName OBJ_pkcs9 , 20L ) 838  #LN_loÿlKeyID "loÿlKeyID" ) 839  #NID_loÿlKeyID 157 ) 840  #OBJ_loÿlKeyID OBJ_pkcs9 , 21L ) 842  #OBJ_û¹Ty³s OBJ_pkcs9 , 22L ) 844  #LN_x509C”tifiÿ‹ "x509C”tifiÿ‹" ) 845  #NID_x509C”tifiÿ‹ 158 ) 846  #OBJ_x509C”tifiÿ‹ OBJ_û¹Ty³s , 1L ) 848  #LN_sdsiC”tifiÿ‹ "sdsiC”tifiÿ‹" ) 849  #NID_sdsiC”tifiÿ‹ 159 ) 850  #OBJ_sdsiC”tifiÿ‹ OBJ_û¹Ty³s , 2L ) 852  #OBJ_ülTy³s OBJ_pkcs9 , 23L ) 854  #LN_x509C¾ "x509C¾" ) 855  #NID_x509C¾ 160 ) 856  #OBJ_x509C¾ OBJ_ülTy³s , 1L ) 860  #LN_pbes2 "PBES2" ) 861  #NID_pbes2 161 ) 862  #OBJ_pbes2 OBJ_pkcs ,5L,13L ) 864  #LN_pbmac1 "PBMAC1" ) 865  #NID_pbmac1 162 ) 866  #OBJ_pbmac1 OBJ_pkcs ,5L,14L ) 868  #LN_hmacW™hSHA1 "hmacW™hSHA1" ) 869  #NID_hmacW™hSHA1 163 ) 870  #OBJ_hmacW™hSHA1 OBJ_r§dsi ,2L,7L ) 874  #LN_id_qt_ýs "PÞicy Qu®if›¸CPS" ) 875  #SN_id_qt_ýs "id-qt-ýs" ) 876  #NID_id_qt_ýs 164 ) 877  #OBJ_id_qt_ýs OBJ_id_pkix ,2L,1L ) 879  #LN_id_qt_unÙiû "PÞicy Qu®if›¸U£¸NÙiû" ) 880  #SN_id_qt_unÙiû "id-qt-unÙiû" ) 881  #NID_id_qt_unÙiû 165 ) 882  #OBJ_id_qt_unÙiû OBJ_id_pkix ,2L,2L ) 884  #SN_rc2_64_cbc "RC2-64-CBC" ) 885  #LN_rc2_64_cbc "rc2-64-cbc" ) 886  #NID_rc2_64_cbc 166 ) 888  #SN_SMIMEC­abž™›s "SMIME-CAPS" ) 889  #LN_SMIMEC­abž™›s "S/MIME C­abž™›s" ) 890  #NID_SMIMEC­abž™›s 167 ) 891  #OBJ_SMIMEC­abž™›s OBJ_pkcs9 ,15L ) 893  #SN_pbeW™hMD2AndRC2_CBC "PBE-MD2-RC2-64" ) 894  #LN_pbeW™hMD2AndRC2_CBC "pbeW™hMD2AndRC2-CBC" ) 895  #NID_pbeW™hMD2AndRC2_CBC 168 ) 896  #OBJ_pbeW™hMD2AndRC2_CBC OBJ_pkcs ,5L,4L ) 898  #SN_pbeW™hMD5AndRC2_CBC "PBE-MD5-RC2-64" ) 899  #LN_pbeW™hMD5AndRC2_CBC "pbeW™hMD5AndRC2-CBC" ) 900  #NID_pbeW™hMD5AndRC2_CBC 169 ) 901  #OBJ_pbeW™hMD5AndRC2_CBC OBJ_pkcs ,5L,6L ) 903  #SN_pbeW™hSHA1AndDES_CBC "PBE-SHA1-DES" ) 904  #LN_pbeW™hSHA1AndDES_CBC "pbeW™hSHA1AndDES-CBC" ) 905  #NID_pbeW™hSHA1AndDES_CBC 170 ) 906  #OBJ_pbeW™hSHA1AndDES_CBC OBJ_pkcs ,5L,10L ) 910  #LN_ms_ext_»q "Miüosoá Ex‹nsiÚ Reque¡" ) 911  #SN_ms_ext_»q "msExtReq" ) 912  #NID_ms_ext_»q 171 ) 913  #OBJ_ms_ext_»q 1L,3L,6L,1L,4L,1L,311L,2L,1L,14L ) 915  #LN_ext_»q "Ex‹nsiÚ Reque¡" ) 916  #SN_ext_»q "extReq" ) 917  #NID_ext_»q 172 ) 918  #OBJ_ext_»q OBJ_pkcs9 ,14L ) 920  #SN_Çme "Çme" ) 921  #LN_Çme "Çme" ) 922  #NID_Çme 173 ) 923  #OBJ_Çme OBJ_X509 ,41L ) 925  #SN_dnQu®if›r "dnQu®if›r" ) 926  #LN_dnQu®if›r "dnQu®if›r" ) 927  #NID_dnQu®if›r 174 ) 928  #OBJ_dnQu®if›r OBJ_X509 ,46L ) 930  #SN_id_³ "id-³" ) 931  #NID_id_³ 175 ) 932  #OBJ_id_³ OBJ_id_pkix ,1L ) 934  #SN_id_ad "id-ad" ) 935  #NID_id_ad 176 ) 936  #OBJ_id_ad OBJ_id_pkix ,48L ) 938  #SN_šfo_acûss "authÜ™yInfoAcûss" ) 939  #LN_šfo_acûss "AuthÜ™y InfÜm©iÚ Acûss" ) 940  #NID_šfo_acûss 177 ) 941  #OBJ_šfo_acûss OBJ_id_³ ,1L ) 943  #SN_ad_OCSP "OCSP" ) 944  #LN_ad_OCSP "OCSP" ) 945  #NID_ad_OCSP 178 ) 946  #OBJ_ad_OCSP OBJ_id_ad ,1L ) 948  #SN_ad_ÿ_issu”s "ÿIssu”s" ) 949  #LN_ad_ÿ_issu”s "CA Issu”s" ) 950  #NID_ad_ÿ_issu”s 179 ) 951  #OBJ_ad_ÿ_issu”s OBJ_id_ad ,2L ) 953  #SN_OCSP_sign "OCSPSignšg" ) 954  #LN_OCSP_sign "OCSP Signšg" ) 955  #NID_OCSP_sign 180 ) 956  #OBJ_OCSP_sign OBJ_id_kp ,9L ) 959  ~<Ý’s¦/bio.h > 960  ~<Ý’s¦/a¢1.h > 962  #OBJ_NAME_TYPE_UNDEF 0x00 ) 963  #OBJ_NAME_TYPE_MD_METH 0x01 ) 964  #OBJ_NAME_TYPE_CIPHER_METH 0x02 ) 965  #OBJ_NAME_TYPE_PKEY_METH 0x03 ) 966  #OBJ_NAME_TYPE_COMP_METH 0x04 ) 967  #OBJ_NAME_TYPE_NUM 0x05 ) 969  #OBJ_NAME_ALIAS 0x8000 ) 971  #OBJ_BSEARCH_VALUE_ON_NOMATCH 0x01 ) 972  #OBJ_BSEARCH_FIRST_VALUE_ON_MATCH 0x02 ) 975 #ifdeà __ýlu¥lus 979  sobj_Çme_¡ 981  ty³ ; 982  ®Ÿs ; 983 cÚ¡ * Çme ; 984 cÚ¡ * d©a ; 985 } tOBJ_NAME ; 987  #OBJ_ü—‹_ªd_add_objeù ( a , b , c è `OBJ_ü—‹ ×,b,c) ) 990  OBJ_NAME_š™ (); 991  OBJ_NAME_Ãw_šdex ((* hash_func )(const *), 992 (* cmp_func )(const *, const *), 993 (* ä“_func )(const *, , const *)); 994 cÚ¡ * OBJ_NAME_g‘ (cÚ¡ * Çme , ty³ ); 995  OBJ_NAME_add (cÚ¡ * Çme , ty³ ,cÚ¡ * d©a ); 996  OBJ_NAME_»move (cÚ¡ * Çme , ty³ ); 997  OBJ_NAME_þ—nup ( ty³ ); 998  OBJ_NAME_do_®l ( ty³ ,(* â )(cÚ¡ OBJ_NAME *,* ¬g ), 999 * ¬g ); 1000  OBJ_NAME_do_®l_sÜ‹d ( ty³ ,(* â )(cÚ¡ OBJ_NAME *,* ¬g ), 1001 * ¬g ); 1003 ASN1_OBJECT * OBJ_dup (cÚ¡ ASN1_OBJECT * o ); 1004 ASN1_OBJECT * OBJ_nid2obj ( n ); 1005 cÚ¡ * OBJ_nid2Ê ( n ); 1006 cÚ¡ * OBJ_nid2¢ ( n ); 1007  OBJ_obj2nid (cÚ¡ ASN1_OBJECT * o ); 1008 ASN1_OBJECT * OBJ_txt2obj (cÚ¡ * s ,  no_Çme ); 1009  OBJ_obj2txt (* buf ,  buf_Ën , cÚ¡ ASN1_OBJECT * a ,  no_Çme ); 1010  OBJ_txt2nid (cÚ¡ * s ); 1011  OBJ_Ê2nid (cÚ¡ * s ); 1012  OBJ_¢2nid (cÚ¡ * s ); 1013  OBJ_cmp (cÚ¡ ASN1_OBJECT * a ,cÚ¡ ASN1_OBJECT * b ); 1014 cÚ¡ * OBJ_b£¬ch (cÚ¡ * key ,cÚ¡ * ba£ , num , size , 1015 (* cmp )(const *, const *)); 1016 cÚ¡ * OBJ_b£¬ch_ex (cÚ¡ * key ,cÚ¡ * ba£ , num , 1017  size , (* cmp )(cÚ¡ *, cÚ¡ *),  æags ); 1019  OBJ_Ãw_nid ( num ); 1020  OBJ_add_objeù (cÚ¡ ASN1_OBJECT * obj ); 1021  OBJ_ü—‹ (cÚ¡ * oid ,cÚ¡ * ¢ ,cÚ¡ * Ê ); 1022  OBJ_þ—nup (); 1023  OBJ_ü—‹_objeùs ( BIO * š ); 1029  ERR_lßd_OBJ_¡ršgs (); 1034  #OBJ_F_OBJ_ADD_OBJECT 105 ) 1035  #OBJ_F_OBJ_CREATE 100 ) 1036  #OBJ_F_OBJ_DUP 101 ) 1037  #OBJ_F_OBJ_NAME_NEW_INDEX 106 ) 1038  #OBJ_F_OBJ_NID2LN 102 ) 1039  #OBJ_F_OBJ_NID2OBJ 103 ) 1040  #OBJ_F_OBJ_NID2SN 104 ) 1043  #OBJ_R_MALLOC_FAILURE 100 ) 1044  #OBJ_R_UNKNOWN_NID 101 ) 1046 #ifdeà __ýlu¥lus @/usr/include/wchar.h 24 #iâdeà _WCHAR_H 26 #ià! defšed __Ãed_mb¡©e_t && !defšed __Ãed_wšt_t 27  #_WCHAR_H 1 ) 28  ~<ã©u»s.h > 31 #ifdeà _WCHAR_H 33  #__Ãed___FILE ) 34 #ifdeà __USE_UNIX98 35  #__Ãed_FILE ) 37  ~<¡dio.h > 39  #__Ãed___va_li¡ ) 40  ~<¡d¬g.h > 42  ~ 45  #__Ãed_size_t ) 46  #__Ãed_wch¬_t ) 47  #__Ãed_NULL ) 49 #ià defšed _WCHAR_H || defšed __Ãed_wšt_t || !defšed __WINT_TYPE__ 50 #undeà __Ãed_wšt_t 51  #__Ãed_wšt_t ) 52  ~<¡ddef.h > 56 #iâdeà _WINT_T 61  #_WINT_T ) 62  twšt_t ; 66 #ià defšed __ýlu¥lus && defšed _GLIBCPP_USE_NAMESPACES \ 67 && defšed __WINT_TYPE__ 68 __BEGIN_NAMESPACE_STD 69  __WINT_TYPE__ twšt_t ; 70 g__END_NAMESPACE_STD 75 #ià( defšed _WCHAR_H || defšed __Ãed_mb¡©e_t è&& !defšed __mb¡©e_t_defšed 76  #__mb¡©e_t_defšed 1 ) 80  m__couÁ ; 83 #ifdeà __WINT_TYPE__ 84 __WINT_TYPE__ m__wch ; 86 wšt_t m__wch ; 88  m__wchb [4]; 89 } m__v®ue ; 90 } t__mb¡©e_t ; 92 #undeà __Ãed_mb¡©e_t 97 #ifdeà _WCHAR_H 99 __BEGIN_NAMESPACE_C99 101  __mb¡©e_t tmb¡©e_t ; 102 g__END_NAMESPACE_C99 103 #ifdeà __USE_GNU 104 $__USING_NAMESPACE_C99 ( mb¡©e_t ) 107 #iâdeà WCHAR_MIN 109  #WCHAR_MIN __WCHAR_MIN ) 110  #WCHAR_MAX __WCHAR_MAX ) 113 #iâdeà WEOF 114  #WEOF (0xffffffffu) ) 119 #ià defšed __USE_XOPEN && !defšed __USE_UNIX98 120  ~ 124 __BEGIN_DECLS 126 __BEGIN_NAMESPACE_STD 129  tm ; 130 __END_NAMESPACE_STD 134 $__USING_NAMESPACE_STD ( tm ) 137 __BEGIN_NAMESPACE_STD 139 wch¬_t * $wcsýy ( wch¬_t * __»¡riù __de¡ , 140 __cÚ¡ wch¬_t * __»¡riù __¤c è __THROW ; 142 wch¬_t * $wc¢ýy ( wch¬_t * __»¡riù __de¡ , 143 __cÚ¡ wch¬_t * __»¡riù __¤c , size_t __n ) 144 __THROW ; 147 wch¬_t * $wcsÿt ( wch¬_t * __»¡riù __de¡ , 148 __cÚ¡ wch¬_t * __»¡riù __¤c è __THROW ; 150 wch¬_t * $wc¢ÿt ( wch¬_t * __»¡riù __de¡ , 151 __cÚ¡ wch¬_t * __»¡riù __¤c , size_t __n ) 152 __THROW ; 155  $wcscmp ( __cÚ¡ wch¬_t * __s1 , __cÚ¡ wch¬_ˆ* __s2 ) 156 __THROW __©Œibu‹_pu»__ ; 158  $wc¢cmp ( __cÚ¡ wch¬_t * __s1 , __cÚ¡ wch¬_ˆ* __s2 , size_t __n ) 159 __THROW __©Œibu‹_pu»__ ; 160 __END_NAMESPACE_STD 162 #ifdeà __USE_GNU 164  $wcsÿ£cmp ( __cÚ¡ wch¬_t * __s1 , __cÚ¡ wch¬_ˆ* __s2 è __THROW ; 167  $wc¢ÿ£cmp ( __cÚ¡ wch¬_t * __s1 , __cÚ¡ wch¬_ˆ* __s2 , 168 size_t __n è __THROW ; 172  ~ 174  $wcsÿ£cmp_l ( __cÚ¡ wch¬_t * __s1 , __cÚ¡ wch¬_ˆ* __s2 , 175 __loÿË_t __loc è __THROW ; 177  $wc¢ÿ£cmp_l ( __cÚ¡ wch¬_t * __s1 , __cÚ¡ wch¬_ˆ* __s2 , 178 size_t __n , __loÿË_t __loc è __THROW ; 181 __BEGIN_NAMESPACE_STD 184  $wcscÞl ( __cÚ¡ wch¬_t * __s1 , __cÚ¡ wch¬_ˆ* __s2 è __THROW ; 188 size_t $wcsxäm ( wch¬_t * __»¡riù __s1 , 189 __cÚ¡ wch¬_t * __»¡riù __s2 , size_t __n è __THROW ; 190 __END_NAMESPACE_STD 192 #ifdeà __USE_GNU 198  $wcscÞl_l ( __cÚ¡ wch¬_t * __s1 , __cÚ¡ wch¬_ˆ* __s2 , 199 __loÿË_t __loc è __THROW ; 204 size_t $wcsxäm_l ( wch¬_t * __s1 , __cÚ¡ wch¬_ˆ* __s2 , 205 size_t __n , __loÿË_t __loc è __THROW ; 208 wch¬_t * $wcsdup ( __cÚ¡ wch¬_t * __s è __THROW __©Œibu‹_m®loc__ ; 211 __BEGIN_NAMESPACE_STD 213 wch¬_t * $wcschr ( __cÚ¡ wch¬_t * __wcs , wch¬_ˆ __wc ) 214 __THROW __©Œibu‹_pu»__ ; 216 wch¬_t * $wc¤chr ( __cÚ¡ wch¬_t * __wcs , wch¬_ˆ __wc ) 217 __THROW __©Œibu‹_pu»__ ; 218 __END_NAMESPACE_STD 220 #ifdeà __USE_GNU 223 wch¬_t * $wcschºul ( __cÚ¡ wch¬_t * __s , wch¬_ˆ __wc ) 224 __THROW __©Œibu‹_pu»__ ; 227 __BEGIN_NAMESPACE_STD 230 size_t $wcsc¥n ( __cÚ¡ wch¬_t * __wcs , __cÚ¡ wch¬_ˆ* __»jeù ) 231 __THROW __©Œibu‹_pu»__ ; 234 size_t $wcs¥n ( __cÚ¡ wch¬_t * __wcs , __cÚ¡ wch¬_ˆ* __acû± ) 235 __THROW __©Œibu‹_pu»__ ; 237 wch¬_t * $wc¥brk ( __cÚ¡ wch¬_t * __wcs , __cÚ¡ wch¬_ˆ* __acû± ) 238 __THROW __©Œibu‹_pu»__ ; 240 wch¬_t * $wcs¡r ( __cÚ¡ wch¬_t * __hay¡ack , __cÚ¡ wch¬_ˆ* __ÃedË ) 241 __THROW __©Œibu‹_pu»__ ; 244 wch¬_t * $wc¡ok ( wch¬_t * __»¡riù __s , 245 __cÚ¡ wch¬_t * __»¡riù __d–im , 246 wch¬_t ** __»¡riù __±r è __THROW ; 249 size_t $wc¦’ ( __cÚ¡ wch¬_t * __s è __THROW __©Œibu‹_pu»__ ; 250 __END_NAMESPACE_STD 252 #ifdeà __USE_XOPEN 254 wch¬_t * $wcswcs ( __cÚ¡ wch¬_t * __hay¡ack , __cÚ¡ wch¬_ˆ* __ÃedË ) 255 __THROW __©Œibu‹_pu»__ ; 258 #ifdeà __USE_GNU 260 size_t $wc¢Ën ( __cÚ¡ wch¬_t * __s , size_t __maxËn ) 261 __THROW __©Œibu‹_pu»__ ; 265 __BEGIN_NAMESPACE_STD 267 wch¬_t * $wmemchr ( __cÚ¡ wch¬_t * __s , wch¬_ˆ __c , size_t __n ) 268 __THROW __©Œibu‹_pu»__ ; 271  $wmemcmp ( __cÚ¡ wch¬_t * __»¡riù __s1 , 272 __cÚ¡ wch¬_t * __»¡riù __s2 , size_t __n ) 273 __THROW __©Œibu‹_pu»__ ; 276 wch¬_t * $wmemýy ( wch¬_t * __»¡riù __s1 , 277 __cÚ¡ wch¬_t * __»¡riù __s2 , size_t __n è __THROW ; 281 wch¬_t * $wmemmove ( wch¬_t * __s1 , __cÚ¡ wch¬_ˆ* __s2 , size_t __n ) 282 __THROW ; 285 wch¬_t * $wmem£t ( wch¬_t * __s , wch¬_ˆ __c , size_t __n è __THROW ; 286 __END_NAMESPACE_STD 288 #ifdeà __USE_GNU 291 wch¬_t * $wmempýy ( wch¬_t * __»¡riù __s1 , 292 __cÚ¡ wch¬_t * __»¡riù __s2 , size_t __n ) 293 __THROW ; 297 __BEGIN_NAMESPACE_STD 300 wšt_t $btowc ( __c è __THROW ; 304  $wùob ( wšt_t __c è __THROW ; 308  $mbsš™ ( __cÚ¡ mb¡©e_t * __ps è __THROW __©Œibu‹_pu»__ ; 312 size_t $mb¹owc ( wch¬_t * __»¡riù __pwc , 313 __cÚ¡ * __»¡riù __s , size_t __n , 314 mb¡©e_t * __p è __THROW ; 317 size_t $wütomb (* __»¡riù __s , wch¬_t __wc , 318 mb¡©e_t * __»¡riù __ps è __THROW ; 321 size_t $__mb¾’ ( __cÚ¡ * __»¡riù __s , size_t __n , 322 mb¡©e_t * __»¡riù __ps è __THROW ; 323 size_t $mb¾’ ( __cÚ¡ * __»¡riù __s , size_t __n , 324 mb¡©e_t * __»¡riù __ps è __THROW ; 325 __END_NAMESPACE_STD 327 #ifdeà __USE_EXTERN_INLINES 333 wšt_t $__btowc_®Ÿs ( __c è `__asm ("btowc"); 334 __ex‹º_šlše wšt_t 335 `__NTH ( $btowc ( __c )) 336 {  ( `__bužtš_cÚ¡ªt_p ( __c ) && __c >= '\0' && __c <= '\x7f' 337 ? ( wšt_t è __c : `__btowc_®Ÿs (__c)); } } 339  $__wùob_®Ÿs ( wšt_t __c è `__asm ("wctob"); 340 __ex‹º_šlše  341 `__NTH ( $wùob ( wšt_t __wc )) 342 {  ( `__bužtš_cÚ¡ªt_p ( __wc è&& __wø>ð L '\0' && __wc <= L'\x7f' 343 ? (è __wc : `__wùob_®Ÿs (__wc)); } } 345 __ex‹º_šlše size_t 346 __NTH ( $mb¾’ ( __cÚ¡ * __»¡riù __s , size_t __n , 347 mb¡©e_t * __»¡riù __ps )) 348 {  ( __ps !ð NULL 349 ? `mb¹owc ( NULL , __s , __n , __ps è: `__mb¾’ (__s, __n, NULL)); } } 352 __BEGIN_NAMESPACE_STD 355 size_t $mb¤towcs ( wch¬_t * __»¡riù __d¡ , 356 __cÚ¡ ** __»¡riù __¤c , size_t __Ën , 357 mb¡©e_t * __»¡riù __ps è __THROW ; 361 size_t $wc¤tombs (* __»¡riù __d¡ , 362 __cÚ¡ wch¬_t ** __»¡riù __¤c , size_t __Ën , 363 mb¡©e_t * __»¡riù __ps è __THROW ; 364 __END_NAMESPACE_STD 367 #ifdef __USE_GNU 370 size_t $mb¢¹owcs ( wch¬_t * __»¡riù __d¡ , 371 __cÚ¡ ** __»¡riù __¤c , size_t __nmc , 372 size_t __Ën , mb¡©e_t * __»¡riù __ps è __THROW ; 376 size_t $wc¢¹ombs (* __»¡riù __d¡ , 377 __cÚ¡ wch¬_t ** __»¡riù __¤c , 378 size_t __nwc , size_ˆ __Ën , 379 mb¡©e_t * __»¡riù __ps è __THROW ; 384 #ifdeà __USE_XOPEN 386  $wcwidth ( wch¬_t __c è __THROW ; 390  $wcswidth ( __cÚ¡ wch¬_t * __s , size_t __n è __THROW ; 394 __BEGIN_NAMESPACE_STD 397  $wc¡od ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 398 wch¬_t ** __»¡riù __’d±r è __THROW ; 399 __END_NAMESPACE_STD 401 #ifdeà __USE_ISOC99 402 __BEGIN_NAMESPACE_C99 404  $wc¡of ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 405 wch¬_t ** __»¡riù __’d±r è __THROW ; 406  $wc¡Þd ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 407 wch¬_t ** __»¡riù __’d±r è __THROW ; 408 __END_NAMESPACE_C99 412 __BEGIN_NAMESPACE_STD 415  $wc¡Þ ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 416 wch¬_t ** __»¡riù __’d±r ,  __ba£ è __THROW ; 420  $wc¡oul ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 421 wch¬_t ** __»¡riù __’d±r ,  __ba£ ) 422 __THROW ; 423 __END_NAMESPACE_STD 425 #ià defšed __USE_ISOC99 || (defšed __GNUC__ && defšed __USE_GNU ) 426 __BEGIN_NAMESPACE_C99 429 __ex‹nsiÚ__ 430  $wc¡Þl ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 431 wch¬_t ** __»¡riù __’d±r ,  __ba£ ) 432 __THROW ; 436 __ex‹nsiÚ__ 437  $wc¡ouÎ ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 438 wch¬_t ** __»¡riù __’d±r , 439  __ba£ è __THROW ; 440 __END_NAMESPACE_C99 443 #ià defšed __GNUC__ && defšed __USE_GNU 446 __ex‹nsiÚ__ 447  $wc¡oq ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 448 wch¬_t ** __»¡riù __’d±r ,  __ba£ ) 449 __THROW ; 453 __ex‹nsiÚ__ 454  $wc¡ouq ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 455 wch¬_t ** __»¡riù __’d±r , 456  __ba£ è __THROW ; 459 #ifdeà __USE_GNU 473  ~ 477  $wc¡Þ_l ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 478 wch¬_t ** __»¡riù __’d±r ,  __ba£ , 479 __loÿË_t __loc è __THROW ; 481  $wc¡oul_l ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 482 wch¬_t ** __»¡riù __’d±r , 483  __ba£ , __loÿË_t __loc è __THROW ; 485 __ex‹nsiÚ__ 486  $wc¡Þl_l ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 487 wch¬_t ** __»¡riù __’d±r , 488  __ba£ , __loÿË_t __loc è __THROW ; 490 __ex‹nsiÚ__ 491  $wc¡ouÎ_l ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 492 wch¬_t ** __»¡riù __’d±r , 493  __ba£ , __loÿË_t __loc ) 494 __THROW ; 496  $wc¡od_l ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 497 wch¬_t ** __»¡riù __’d±r , __loÿË_t __loc ) 498 __THROW ; 500  $wc¡of_l ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 501 wch¬_t ** __»¡riù __’d±r , __loÿË_t __loc ) 502 __THROW ; 504  $wc¡Þd_l ( __cÚ¡ wch¬_t * __»¡riù __ÅŒ , 505 wch¬_t ** __»¡riù __’d±r , 506 __loÿË_t __loc è __THROW ; 510 #ifdef __USE_GNU 513 wch¬_t * $wýýy ( wch¬_t * __de¡ , __cÚ¡ wch¬_ˆ* __¤c è __THROW ; 517 wch¬_t * $wýnýy ( wch¬_t * __de¡ , __cÚ¡ wch¬_ˆ* __¤c , size_t __n ) 518 __THROW ; 524 #ifdef __USE_GNU 527 __FILE * $Ý’_wmem¡»am ( wch¬_t ** __buæoc , size_t * __siz–oc è __THROW ; 530 #ià defšed __USE_ISOC95 || defšed __USE_UNIX98 531 __BEGIN_NAMESPACE_STD 534  $fwide ( __FILE * __å ,  __mode è __THROW ; 541  `fw´štf ( __FILE * __»¡riù __¡»am , 542 __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...) 548  `w´štf ( __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...) 551  $sw´štf ( wch¬_t * __»¡riù __s , size_t __n , 552 __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...) 553 __THROW ; 559  `vfw´štf ( __FILE * __»¡riù __s , 560 __cÚ¡ wch¬_t * __»¡riù __fÜm© , 561 __gnuc_va_li¡ __¬g ) 567  `vw´štf ( __cÚ¡ wch¬_t * __»¡riù __fÜm© , 568 __gnuc_va_li¡ __¬g ) 572  $vsw´štf ( wch¬_t * __»¡riù __s , size_t __n , 573 __cÚ¡ wch¬_t * __»¡riù __fÜm© , 574 __gnuc_va_li¡ __¬g ) 575 __THROW ; 582  `fwsÿnf ( __FILE * __»¡riù __¡»am , 583 __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...) 589  `wsÿnf ( __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...) 592  $swsÿnf ( __cÚ¡ wch¬_t * __»¡riù __s , 593 __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...) 594 __THROW ; 596 #ià defšed __USE_ISOC99 && !defšed __USE_GNU \ 597 && (! defšed __LDBL_COMPAT || !defšed __REDIRECT ) \ 598 && ( defšed __STRICT_ANSI__ || defšed __USE_XOPEN2K ) 599 #ifdeà __REDIRECT 603  `__REDIRECT ( fwsÿnf , ( __FILE * __»¡riù __¡»am , 604 __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...), 605 __isoc99_fwsÿnf ) 607  `__REDIRECT ( wsÿnf , ( __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...), 608 __isoc99_wsÿnf ) 610  `__REDIRECT ( swsÿnf , ( __cÚ¡ wch¬_t * __»¡riù __s , 611 __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...), 612 __isoc99_swsÿnf ) 613 __THROW ; 615  `__isoc99_fwsÿnf ( __FILE * __»¡riù __¡»am , 616 __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...); 617  `__isoc99_wsÿnf ( __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...); 618  $__isoc99_swsÿnf ( __cÚ¡ wch¬_t * __»¡riù __s , 619 __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...) 620 __THROW ; 621  #fwsÿnf __isoc99_fwsÿnf ) 622  #wsÿnf __isoc99_wsÿnf ) 623  #swsÿnf __isoc99_swsÿnf ) 627 __END_NAMESPACE_STD 630 #ifdeà __USE_ISOC99 631 __BEGIN_NAMESPACE_C99 636  `vfwsÿnf ( __FILE * __»¡riù __s , 637 __cÚ¡ wch¬_t * __»¡riù __fÜm© , 638 __gnuc_va_li¡ __¬g ) 644  `vwsÿnf ( __cÚ¡ wch¬_t * __»¡riù __fÜm© , 645 __gnuc_va_li¡ __¬g ) 648  $vswsÿnf ( __cÚ¡ wch¬_t * __»¡riù __s , 649 __cÚ¡ wch¬_t * __»¡riù __fÜm© , 650 __gnuc_va_li¡ __¬g ) 651 __THROW ; 653 #ià! defšed __USE_GNU \ 654 && (! defšed __LDBL_COMPAT || !defšed __REDIRECT ) \ 655 && ( defšed __STRICT_ANSI__ || defšed __USE_XOPEN2K ) 656 #ifdeà __REDIRECT 657  `__REDIRECT ( vfwsÿnf , ( __FILE * __»¡riù __s , 658 __cÚ¡ wch¬_t * __»¡riù __fÜm© , 659 __gnuc_va_li¡ __¬g ), __isoc99_vfwsÿnf ) 661  `__REDIRECT ( vwsÿnf , ( __cÚ¡ wch¬_t * __»¡riù __fÜm© , 662 __gnuc_va_li¡ __¬g ), __isoc99_vwsÿnf ) 664  `__REDIRECT ( vswsÿnf , ( __cÚ¡ wch¬_t * __»¡riù __s , 665 __cÚ¡ wch¬_t * __»¡riù __fÜm© , 666 __gnuc_va_li¡ __¬g ), __isoc99_vswsÿnf ) 667 __THROW ; 669  `__isoc99_vfwsÿnf ( __FILE * __»¡riù __s , 670 __cÚ¡ wch¬_t * __»¡riù __fÜm© , 671 __gnuc_va_li¡ __¬g ); 672  `__isoc99_vwsÿnf ( __cÚ¡ wch¬_t * __»¡riù __fÜm© , 673 __gnuc_va_li¡ __¬g ); 674  $__isoc99_vswsÿnf ( __cÚ¡ wch¬_t * __»¡riù __s , 675 __cÚ¡ wch¬_t * __»¡riù __fÜm© , 676 __gnuc_va_li¡ __¬g è __THROW ; 677  #vfwsÿnf __isoc99_vfwsÿnf ) 678  #vwsÿnf __isoc99_vwsÿnf ) 679  #vswsÿnf __isoc99_vswsÿnf ) 683 __END_NAMESPACE_C99 687 __BEGIN_NAMESPACE_STD 692 wšt_t `fg‘wc ( __FILE * __¡»am ); 693 wšt_t `g‘wc ( __FILE * __¡»am ); 699 wšt_t `g‘wch¬ (); 706 wšt_t `åutwc ( wch¬_t __wc , __FILE * __¡»am ); 707 wšt_t `putwc ( wch¬_t __wc , __FILE * __¡»am ); 713 wšt_t `putwch¬ ( wch¬_t __wc ); 721 wch¬_t * `fg‘ws (wch¬_ˆ* __»¡riù __ws ,  __n , 722 __FILE * __»¡riù __¡»am ); 728  `åutws ( __cÚ¡ wch¬_t * __»¡riù __ws , 729 __FILE * __»¡riù __¡»am ); 736 wšt_t `ung‘wc (wšt_ˆ __wc , __FILE * __¡»am ); 737 __END_NAMESPACE_STD 740 #ifdeà __USE_GNU 748 wšt_t `g‘wc_uÆocked ( __FILE * __¡»am ); 749 wšt_t `g‘wch¬_uÆocked (); 757 wšt_t `fg‘wc_uÆocked ( __FILE * __¡»am ); 765 wšt_t `åutwc_uÆocked ( wch¬_t __wc , __FILE * __¡»am ); 774 wšt_t `putwc_uÆocked ( wch¬_t __wc , __FILE * __¡»am ); 775 wšt_t `putwch¬_uÆocked ( wch¬_t __wc ); 784 wch¬_t * `fg‘ws_uÆocked (wch¬_ˆ* __»¡riù __ws ,  __n , 785 __FILE * __»¡riù __¡»am ); 793  `åutws_uÆocked ( __cÚ¡ wch¬_t * __»¡riù __ws , 794 __FILE * __»¡riù __¡»am ); 798 __BEGIN_NAMESPACE_C99 802 size_t $wcsáime ( wch¬_t * __»¡riù __s , size_t __maxsize , 803 __cÚ¡ wch¬_t * __»¡riù __fÜm© , 804 __cÚ¡  tm * __»¡riù __ è __THROW ; 805 __END_NAMESPACE_C99 807 #ifdeà __USE_GNU 808  ~ 812 size_t $wcsáime_l ( wch¬_t * __»¡riù __s , size_t __maxsize , 813 __cÚ¡ wch¬_t * __»¡riù __fÜm© , 814 __cÚ¡  tm * __»¡riù __ , 815 __loÿË_t __loc è __THROW ; 824 #ià defšed __USE_UNIX98 && !defšed __USE_GNU 825  #__Ãed_iswxxx ) 826  ~ 830 #ià __USE_FORTIFY_LEVEL > 0 && defšed __ex‹º_®ways_šlše 831  ~ 834 #ifdeà __LDBL_COMPAT 835  ~ 838 __END_DECLS 844 #undeà __Ãed_mb¡©e_t 845 #undeà __Ãed_wšt_t @/usr/include/asm-generic/errno.h 1 #iâdeà _ASM_GENERIC_ERRNO_H 2  #_ASM_GENERIC_ERRNO_H ) 4  ~ 6  #EDEADLK 35 ) 7  #ENAMETOOLONG 36 ) 8  #ENOLCK 37 ) 9  #ENOSYS 38 ) 10  #ENOTEMPTY 39 ) 11  #ELOOP 40 ) 12  #EWOULDBLOCK EAGAIN ) 13  #ENOMSG 42 ) 14  #EIDRM 43 ) 15  #ECHRNG 44 ) 16  #EL2NSYNC 45 ) 17  #EL3HLT 46 ) 18  #EL3RST 47 ) 19  #ELNRNG 48 ) 20  #EUNATCH 49 ) 21  #ENOCSI 50 ) 22  #EL2HLT 51 ) 23  #EBADE 52 ) 24  #EBADR 53 ) 25  #EXFULL 54 ) 26  #ENOANO 55 ) 27  #EBADRQC 56 ) 28  #EBADSLT 57 ) 30  #EDEADLOCK EDEADLK ) 32  #EBFONT 59 ) 33  #ENOSTR 60 ) 34  #ENODATA 61 ) 35  #ETIME 62 ) 36  #ENOSR 63 ) 37  #ENONET 64 ) 38  #ENOPKG 65 ) 39  #EREMOTE 66 ) 40  #ENOLINK 67 ) 41  #EADV 68 ) 42  #ESRMNT 69 ) 43  #ECOMM 70 ) 44  #EPROTO 71 ) 45  #EMULTIHOP 72 ) 46  #EDOTDOT 73 ) 47  #EBADMSG 74 ) 48  #EOVERFLOW 75 ) 49  #ENOTUNIQ 76 ) 50  #EBADFD 77 ) 51  #EREMCHG 78 ) 52  #ELIBACC 79 ) 53  #ELIBBAD 80 ) 54  #ELIBSCN 81 ) 55  #ELIBMAX 82 ) 56  #ELIBEXEC 83 ) 57  #EILSEQ 84 ) 58  #ERESTART 85 ) 59  #ESTRPIPE 86 ) 60  #EUSERS 87 ) 61  #ENOTSOCK 88 ) 62  #EDESTADDRREQ 89 ) 63  #EMSGSIZE 90 ) 64  #EPROTOTYPE 91 ) 65  #ENOPROTOOPT 92 ) 66  #EPROTONOSUPPORT 93 ) 67  #ESOCKTNOSUPPORT 94 ) 68  #EOPNOTSUPP 95 ) 69  #EPFNOSUPPORT 96 ) 70  #EAFNOSUPPORT 97 ) 71  #EADDRINUSE 98 ) 72  #EADDRNOTAVAIL 99 ) 73  #ENETDOWN 100 ) 74  #ENETUNREACH 101 ) 75  #ENETRESET 102 ) 76  #ECONNABORTED 103 ) 77  #ECONNRESET 104 ) 78  #ENOBUFS 105 ) 79  #EISCONN 106 ) 80  #ENOTCONN 107 ) 81  #ESHUTDOWN 108 ) 82  #ETOOMANYREFS 109 ) 83  #ETIMEDOUT 110 ) 84  #ECONNREFUSED 111 ) 85  #EHOSTDOWN 112 ) 86  #EHOSTUNREACH 113 ) 87  #EALREADY 114 ) 88  #EINPROGRESS 115 ) 89  #ESTALE 116 ) 90  #EUCLEAN 117 ) 91  #ENOTNAM 118 ) 92  #ENAVAIL 119 ) 93  #EISNAM 120 ) 94  #EREMOTEIO 121 ) 95  #EDQUOT 122 ) 97  #ENOMEDIUM 123 ) 98  #EMEDIUMTYPE 124 ) 99  #ECANCELED 125 ) 100  #ENOKEY 126 ) 101  #EKEYEXPIRED 127 ) 102  #EKEYREVOKED 128 ) 103  #EKEYREJECTED 129 ) 106  #EOWNERDEAD 130 ) 107  #ENOTRECOVERABLE 131 ) @/usr/include/asm-generic/ioctl.h 1 #iâdeà _ASM_GENERIC_IOCTL_H 2  #_ASM_GENERIC_IOCTL_H ) 22  #_IOC_NRBITS 8 ) 23  #_IOC_TYPEBITS 8 ) 24  #_IOC_SIZEBITS 14 ) 25  #_IOC_DIRBITS 2 ) 27  #_IOC_NRMASK ((1 << _IOC_NRBITS )-1) ) 28  #_IOC_TYPEMASK ((1 << _IOC_TYPEBITS )-1) ) 29  #_IOC_SIZEMASK ((1 << _IOC_SIZEBITS )-1) ) 30  #_IOC_DIRMASK ((1 << _IOC_DIRBITS )-1) ) 32  #_IOC_NRSHIFT 0 ) 33  #_IOC_TYPESHIFT ( _IOC_NRSHIFT + _IOC_NRBITS ) ) 34  #_IOC_SIZESHIFT ( _IOC_TYPESHIFT + _IOC_TYPEBITS ) ) 35  #_IOC_DIRSHIFT ( _IOC_SIZESHIFT + _IOC_SIZEBITS ) ) 40  #_IOC_NONE 0U ) 41  #_IOC_WRITE 1U ) 42  #_IOC_READ 2U ) 44  #_IOC ( dœ , ty³ , Ä , size ) \ 45 ((( dœ è<< _IOC_DIRSHIFT ) | \ 46 (( ty³ è<< _IOC_TYPESHIFT ) | \ 47 (( Ä è<< _IOC_NRSHIFT ) | \ 48 (( size è<< _IOC_SIZESHIFT )) ) 51  __šv®id_size_¬gum’t_fÜ_IOC ; 52  #_IOC_TYPECHECK ( t ) \ 53 ((( t ) == (t[1]) && \ 54 ( t è< (1 << _IOC_SIZEBITS )) ? \ 55 ( t è: __šv®id_size_¬gum’t_fÜ_IOC ) ) 58  #_IO ( ty³ , Ä è `_IOC ( _IOC_NONE ,Ñy³),Òr),0) ) 59  #_IOR ( ty³ , Ä , size è `_IOC ( _IOC_READ ,Ñy³),Òr),( `_IOC_TYPECHECK (size))) ) 60  #_IOW ( ty³ , Ä , size è `_IOC ( _IOC_WRITE ,Ñy³),Òr),( `_IOC_TYPECHECK (size))) ) 61  #_IOWR ( ty³ , Ä , size è `_IOC ( _IOC_READ | _IOC_WRITE ,Ñy³),Òr),( `_IOC_TYPECHECK (size))) ) 62  #_IOR_BAD ( ty³ , Ä , size è `_IOC ( _IOC_READ ,Ñy³),Òr),(size)) ) 63  #_IOW_BAD ( ty³ , Ä , size è `_IOC ( _IOC_WRITE ,Ñy³),Òr),(size)) ) 64  #_IOWR_BAD ( ty³ , Ä , size è `_IOC ( _IOC_READ | _IOC_WRITE ,Ñy³),Òr),(size)) ) 67  #_IOC_DIR ( Ä è((Òrè>> _IOC_DIRSHIFT è& _IOC_DIRMASK ) ) 68  #_IOC_TYPE ( Ä è((Òrè>> _IOC_TYPESHIFT è& _IOC_TYPEMASK ) ) 69  #_IOC_NR ( Ä è((Òrè>> _IOC_NRSHIFT è& _IOC_NRMASK ) ) 70  #_IOC_SIZE ( Ä è((Òrè>> _IOC_SIZESHIFT è& _IOC_SIZEMASK ) ) 74  #IOC_IN ( _IOC_WRITE << _IOC_DIRSHIFT ) ) 75  #IOC_OUT ( _IOC_READ << _IOC_DIRSHIFT ) ) 76  #IOC_INOUT (( _IOC_WRITE | _IOC_READ è<< _IOC_DIRSHIFT ) ) 77  #IOCSIZE_MASK ( _IOC_SIZEMASK << _IOC_SIZESHIFT ) ) 78  #IOCSIZE_SHIFT ( _IOC_SIZESHIFT ) ) @/usr/include/bits/wchar-ldbl.h 20 #iâdeà _WCHAR_H 24 #ià defšed __USE_ISOC95 || defšed __USE_UNIX98 25 __BEGIN_NAMESPACE_C99 26 __LDBL_REDIR_DECL ( fw´štf ); 27 __LDBL_REDIR_DECL ( w´štf ); 28 __LDBL_REDIR_DECL ( sw´štf ); 29 __LDBL_REDIR_DECL ( vfw´štf ); 30 __LDBL_REDIR_DECL ( vw´štf ); 31 __LDBL_REDIR_DECL ( vsw´štf ); 32 #ià defšed __USE_ISOC99 && !defšed __USE_GNU \ 33 && ! defšed g__REDIRECT \ 34 && ( defšed g__STRICT_ANSI__ || defšed g__USE_XOPEN2K ) 35 $__LDBL_REDIR1_DECL ( fwsÿnf , __Ædbl___isoc99_fwsÿnf ) 36 $__LDBL_REDIR1_DECL ( wsÿnf , __Ædbl___isoc99_wsÿnf ) 37 $__LDBL_REDIR1_DECL ( swsÿnf , __Ædbl___isoc99_swsÿnf ) 39 `__LDBL_REDIR_DECL ( fwsÿnf ); 40 `__LDBL_REDIR_DECL ( wsÿnf ); 41 `__LDBL_REDIR_DECL ( swsÿnf ); 43 __END_NAMESPACE_C99 46 #ifdeà __USE_ISOC99 47 __BEGIN_NAMESPACE_C99 48 `__LDBL_REDIR1_DECL ( wc¡Þd , wc¡od ); 49 #ià! defšed __USE_GNU && !defšed __REDIRECT \ 50 && ( defšed __STRICT_ANSI__ || defšed __USE_XOPEN2K ) 51 $__LDBL_REDIR1_DECL ( vfwsÿnf , __Ædbl___isoc99_vfwsÿnf ) 52 $__LDBL_REDIR1_DECL ( vwsÿnf , __Ædbl___isoc99_vwsÿnf ) 53 $__LDBL_REDIR1_DECL ( vswsÿnf , __Ædbl___isoc99_vswsÿnf ) 55 `__LDBL_REDIR_DECL ( vfwsÿnf ); 56 `__LDBL_REDIR_DECL ( vwsÿnf ); 57 `__LDBL_REDIR_DECL ( vswsÿnf ); 59 __END_NAMESPACE_C99 62 #ifdeà __USE_GNU 63 `__LDBL_REDIR1_DECL ( wc¡Þd_l , wc¡od_l ); 66 #ià __USE_FORTIFY_LEVEL > 0 && defšed __ex‹º_®ways_šlše 67 $__LDBL_REDIR_DECL ( __sw´štf_chk ) 68 $__LDBL_REDIR_DECL ( __vsw´štf_chk ) 69 #ià __USE_FORTIFY_LEVEL > 1 70 $__LDBL_REDIR_DECL ( __fw´štf_chk ) 71 $__LDBL_REDIR_DECL ( __w´štf_chk ) 72 $__LDBL_REDIR_DECL ( __vfw´štf_chk ) 73 $__LDBL_REDIR_DECL ( __vw´štf_chk ) @/usr/include/bits/wchar2.h 20 #iâdeà _WCHAR_H 25 wch¬_t * $__wmemýy_chk ( wch¬_t * __»¡riù __s1 , 26 __cÚ¡ wch¬_t * __»¡riù __s2 , size_t __n , 27 size_t __ns1 è __THROW ; 28 wch¬_t * `__REDIRECT_NTH ( __wmemýy_®Ÿs , 29 ( wch¬_t * __»¡riù __s1 , 30 __cÚ¡ wch¬_t * __»¡riù __s2 , size_t __n ), 31 wmemýy ); 32 wch¬_t * `__REDIRECT_NTH ( __wmemýy_chk_w¬n , 33 ( wch¬_t * __»¡riù __s1 , 34 __cÚ¡ wch¬_t * __»¡riù __s2 , size_t __n , 35 size_t __ns1 ), __wmemýy_chk ) 36 `__w¬Ç‰r ("wmemcpy called with†ength biggerhan size of destination " 39 __ex‹º_®ways_šlše wch¬_t * 40 `__NTH ( $wmemýy ( wch¬_t * __»¡riù __s1 , __cÚ¡ wch¬_ˆ*__»¡riù __s2 , 41 size_t __n )) 43 ià( `__bos0 ( __s1 è!ð( size_t ) -1) 45 ià(! `__bužtš_cÚ¡ªt_p ( __n )) 46  `__wmemýy_chk ( __s1 , __s2 , __n , 47 `__bos0 ( __s1 è/  ( wch¬_t )); 49 ià( __n > `__bos0 ( __s1 è/  ( wch¬_t )) 50  `__wmemýy_chk_w¬n ( __s1 , __s2 , __n , 51 `__bos0 ( __s1 è/  ( wch¬_t )); 53  `__wmemýy_®Ÿs ( __s1 , __s2 , __n ); 54 } } 57 wch¬_t * $__wmemmove_chk ( wch¬_t * __s1 , __cÚ¡ wch¬_ˆ* __s2 , 58 size_t __n , size_ˆ __ns1 è __THROW ; 59 wch¬_t * `__REDIRECT_NTH ( __wmemmove_®Ÿs , (wch¬_ˆ* __s1 , 60 __cÚ¡ wch¬_t * __s2 , 61 size_t __n ), wmemmove ); 62 wch¬_t * `__REDIRECT_NTH ( __wmemmove_chk_w¬n , 63 ( wch¬_t * __»¡riù __s1 , 64 __cÚ¡ wch¬_t * __»¡riù __s2 , size_t __n , 65 size_t __ns1 ), __wmemmove_chk ) 66 `__w¬Ç‰r ("wmemmove called with†ength biggerhan size of destination " 69 __ex‹º_®ways_šlše wch¬_t * 70 `__NTH ( $wmemmove ( wch¬_t * __»¡riù __s1 , __cÚ¡ wch¬_ˆ*__»¡riù __s2 , 71 size_t __n )) 73 ià( `__bos0 ( __s1 è!ð( size_t ) -1) 75 ià(! `__bužtš_cÚ¡ªt_p ( __n )) 76  `__wmemmove_chk ( __s1 , __s2 , __n , 77 `__bos0 ( __s1 è/  ( wch¬_t )); 79 ià( __n > `__bos0 ( __s1 è/  ( wch¬_t )) 80  `__wmemmove_chk_w¬n ( __s1 , __s2 , __n , 81 `__bos0 ( __s1 è/  ( wch¬_t )); 83  `__wmemmove_®Ÿs ( __s1 , __s2 , __n ); 84 } } 87 #ifdeà __USE_GNU 88 wch¬_t * $__wmempýy_chk ( wch¬_t * __»¡riù __s1 , 89 __cÚ¡ wch¬_t * __»¡riù __s2 , size_t __n , 90 size_t __ns1 è __THROW ; 91 wch¬_t * `__REDIRECT_NTH ( __wmempýy_®Ÿs , 92 ( wch¬_t * __»¡riù __s1 , 93 __cÚ¡ wch¬_t * __»¡riù __s2 , 94 size_t __n ), wmempýy ); 95 wch¬_t * `__REDIRECT_NTH ( __wmempýy_chk_w¬n , 96 ( wch¬_t * __»¡riù __s1 , 97 __cÚ¡ wch¬_t * __»¡riù __s2 , size_t __n , 98 size_t __ns1 ), __wmempýy_chk ) 99 `__w¬Ç‰r ("wmempcpy called with†ength biggerhan size of destination " 102 __ex‹º_®ways_šlše wch¬_t * 103 `__NTH ( $wmempýy ( wch¬_t * __»¡riù __s1 , __cÚ¡ wch¬_ˆ*__»¡riù __s2 , 104 size_t __n )) 106 ià( `__bos0 ( __s1 è!ð( size_t ) -1) 108 ià(! `__bužtš_cÚ¡ªt_p ( __n )) 109  `__wmempýy_chk ( __s1 , __s2 , __n , 110 `__bos0 ( __s1 è/  ( wch¬_t )); 112 ià( __n > `__bos0 ( __s1 è/  ( wch¬_t )) 113  `__wmempýy_chk_w¬n ( __s1 , __s2 , __n , 114 `__bos0 ( __s1 è/  ( wch¬_t )); 116  `__wmempýy_®Ÿs ( __s1 , __s2 , __n ); 117 } } 121 wch¬_t * $__wmem£t_chk ( wch¬_t * __s , wch¬_ˆ __c , size_t __n , 122 size_t __ns è __THROW ; 123 wch¬_t * `__REDIRECT_NTH ( __wmem£t_®Ÿs , (wch¬_ˆ* __s , wch¬_ˆ __c , 124 size_t __n ), wmem£t ); 125 wch¬_t * `__REDIRECT_NTH ( __wmem£t_chk_w¬n , 126 ( wch¬_t * __s , wch¬_ˆ __c , size_t __n , 127 size_t __ns ), __wmem£t_chk ) 128 `__w¬Ç‰r ("wmemset called with†ength biggerhan size of destination " 131 __ex‹º_®ways_šlše wch¬_t * 132 `__NTH ( $wmem£t ( wch¬_t * __»¡riù __s , wch¬_ˆ __c , size_t __n )) 134 ià( `__bos0 ( __s è!ð( size_t ) -1) 136 ià(! `__bužtš_cÚ¡ªt_p ( __n )) 137  `__wmem£t_chk ( __s , __c , __n , `__bos0 (__sè/  ( wch¬_t )); 139 ià( __n > `__bos0 ( __s è/  ( wch¬_t )) 140  `__wmem£t_chk_w¬n ( __s , __c , __n , 141 `__bos0 ( __s è/  ( wch¬_t )); 143  `__wmem£t_®Ÿs ( __s , __c , __n ); 144 } } 147 wch¬_t * $__wcsýy_chk ( wch¬_t * __»¡riù __de¡ , 148 __cÚ¡ wch¬_t * __»¡riù __¤c , 149 size_t __n è __THROW ; 150 wch¬_t * `__REDIRECT_NTH ( __wcsýy_®Ÿs , 151 ( wch¬_t * __»¡riù __de¡ , 152 __cÚ¡ wch¬_t * __»¡riù __¤c ), wcsýy ); 154 __ex‹º_®ways_šlše wch¬_t * 155 `__NTH ( $wcsýy ( wch¬_t * __de¡ , __cÚ¡ wch¬_ˆ* __¤c )) 157 ià( `__bos ( __de¡ è!ð( size_t ) -1) 158  `__wcsýy_chk ( __de¡ , __¤c , `__bos (__de¡è/  ( wch¬_t )); 159  `__wcsýy_®Ÿs ( __de¡ , __¤c ); 160 } } 163 wch¬_t * $__wýýy_chk ( wch¬_t * __de¡ , __cÚ¡ wch¬_ˆ* __¤c , 164 size_t __de¡Ën è __THROW ; 165 wch¬_t * `__REDIRECT_NTH ( __wýýy_®Ÿs , (wch¬_ˆ* __de¡ , 166 __cÚ¡ wch¬_t * __¤c ), 167 wýýy ); 169 __ex‹º_®ways_šlše wch¬_t * 170 `__NTH ( $wýýy ( wch¬_t * __de¡ , __cÚ¡ wch¬_ˆ* __¤c )) 172 ià( `__bos ( __de¡ è!ð( size_t ) -1) 173  `__wýýy_chk ( __de¡ , __¤c , `__bos (__de¡è/  ( wch¬_t )); 174  `__wýýy_®Ÿs ( __de¡ , __¤c ); 175 } } 178 wch¬_t * $__wc¢ýy_chk ( wch¬_t * __»¡riù __de¡ , 179 __cÚ¡ wch¬_t * __»¡riù __¤c , size_t __n , 180 size_t __de¡Ën è __THROW ; 181 wch¬_t * `__REDIRECT_NTH ( __wc¢ýy_®Ÿs , 182 ( wch¬_t * __»¡riù __de¡ , 183 __cÚ¡ wch¬_t * __»¡riù __¤c , 184 size_t __n ), wc¢ýy ); 185 wch¬_t * `__REDIRECT_NTH ( __wc¢ýy_chk_w¬n , 186 ( wch¬_t * __»¡riù __de¡ , 187 __cÚ¡ wch¬_t * __»¡riù __¤c , 188 size_t __n , size_ˆ __de¡Ën ), __wc¢ýy_chk ) 189 `__w¬Ç‰r ("wcsncpy called with†ength biggerhan size of destination " 192 __ex‹º_®ways_šlše wch¬_t * 193 `__NTH ( $wc¢ýy ( wch¬_t * __de¡ , __cÚ¡ wch¬_ˆ* __¤c , size_t __n )) 195 ià( `__bos ( __de¡ è!ð( size_t ) -1) 197 ià(! `__bužtš_cÚ¡ªt_p ( __n )) 198  `__wc¢ýy_chk ( __de¡ , __¤c , __n , 199 `__bos ( __de¡ è/  ( wch¬_t )); 200 ià( __n > `__bos ( __de¡ è/  ( wch¬_t )) 201  `__wc¢ýy_chk_w¬n ( __de¡ , __¤c , __n , 202 `__bos ( __de¡ è/  ( wch¬_t )); 204  `__wc¢ýy_®Ÿs ( __de¡ , __¤c , __n ); 205 } } 208 wch¬_t * $__wýnýy_chk ( wch¬_t * __»¡riù __de¡ , 209 __cÚ¡ wch¬_t * __»¡riù __¤c , size_t __n , 210 size_t __de¡Ën è __THROW ; 211 wch¬_t * `__REDIRECT_NTH ( __wýnýy_®Ÿs , 212 ( wch¬_t * __»¡riù __de¡ , 213 __cÚ¡ wch¬_t * __»¡riù __¤c , 214 size_t __n ), wýnýy ); 215 wch¬_t * `__REDIRECT_NTH ( __wýnýy_chk_w¬n , 216 ( wch¬_t * __»¡riù __de¡ , 217 __cÚ¡ wch¬_t * __»¡riù __¤c , 218 size_t __n , size_ˆ __de¡Ën ), __wýnýy_chk ) 219 `__w¬Ç‰r ("wcpncpy called with†ength biggerhan size of destination " 222 __ex‹º_®ways_šlše wch¬_t * 223 `__NTH ( $wýnýy ( wch¬_t * __de¡ , __cÚ¡ wch¬_ˆ* __¤c , size_t __n )) 225 ià( `__bos ( __de¡ è!ð( size_t ) -1) 227 ià(! `__bužtš_cÚ¡ªt_p ( __n )) 228  `__wýnýy_chk ( __de¡ , __¤c , __n , 229 `__bos ( __de¡ è/  ( wch¬_t )); 230 ià( __n > `__bos ( __de¡ è/  ( wch¬_t )) 231  `__wýnýy_chk_w¬n ( __de¡ , __¤c , __n , 232 `__bos ( __de¡ è/  ( wch¬_t )); 234  `__wýnýy_®Ÿs ( __de¡ , __¤c , __n ); 235 } } 238 wch¬_t * $__wcsÿt_chk ( wch¬_t * __»¡riù __de¡ , 239 __cÚ¡ wch¬_t * __»¡riù __¤c , 240 size_t __de¡Ën è __THROW ; 241 wch¬_t * `__REDIRECT_NTH ( __wcsÿt_®Ÿs , 242 ( wch¬_t * __»¡riù __de¡ , 243 __cÚ¡ wch¬_t * __»¡riù __¤c ), wcsÿt ); 245 __ex‹º_®ways_šlše wch¬_t * 246 `__NTH ( $wcsÿt ( wch¬_t * __de¡ , __cÚ¡ wch¬_ˆ* __¤c )) 248 ià( `__bos ( __de¡ è!ð( size_t ) -1) 249  `__wcsÿt_chk ( __de¡ , __¤c , `__bos (__de¡è/  ( wch¬_t )); 250  `__wcsÿt_®Ÿs ( __de¡ , __¤c ); 251 } } 254 wch¬_t * $__wc¢ÿt_chk ( wch¬_t * __»¡riù __de¡ , 255 __cÚ¡ wch¬_t * __»¡riù __¤c , 256 size_t __n , size_ˆ __de¡Ën è __THROW ; 257 wch¬_t * `__REDIRECT_NTH ( __wc¢ÿt_®Ÿs , 258 ( wch¬_t * __»¡riù __de¡ , 259 __cÚ¡ wch¬_t * __»¡riù __¤c , 260 size_t __n ), wc¢ÿt ); 262 __ex‹º_®ways_šlše wch¬_t * 263 `__NTH ( $wc¢ÿt ( wch¬_t * __de¡ , __cÚ¡ wch¬_ˆ* __¤c , size_t __n )) 265 ià( `__bos ( __de¡ è!ð( size_t ) -1) 266  `__wc¢ÿt_chk ( __de¡ , __¤c , __n , 267 `__bos ( __de¡ è/  ( wch¬_t )); 268  `__wc¢ÿt_®Ÿs ( __de¡ , __¤c , __n ); 269 } } 272  $__sw´štf_chk ( wch¬_t * __»¡riù __s , size_t __n , 273  __æag , size_t __s_Ën , 274 __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...) 275 __THROW ; 277  `__REDIRECT_NTH_LDBL ( __sw´štf_®Ÿs , 278 ( wch¬_t * __»¡riù __s , size_t __n , 279 __cÚ¡ wch¬_t * __»¡riù __fmt , ...), 280 sw´štf ); 282 #ifdeà __va_¬g_·ck 283 __ex‹º_®ways_šlše  284 `__NTH ( $sw´štf ( wch¬_t * __»¡riù __s , size_t __n , 285 __cÚ¡ wch¬_t * __»¡riù __fmt , ...)) 287 ià( `__bos ( __s è!ð( size_t è-1 || __USE_FORTIFY_LEVEL > 1) 288  `__sw´štf_chk ( __s , __n , __USE_FORTIFY_LEVEL - 1, 289 `__bos ( __s è/  ( wch¬_t ), 290 __fmt , `__va_¬g_·ck ()); 291  `__sw´štf_®Ÿs ( __s , __n , __fmt , `__va_¬g_·ck ()); 292 } } 293 #–ià! defšed __ýlu¥lus 295  #sw´štf ( s , n , ...) \ 296 ( `__bos ( s è!ð( size_t è-1 || __USE_FORTIFY_LEVEL > 1 \ 297 ? `__sw´štf_chk ( s , n , __USE_FORTIFY_LEVEL - 1, \ 298 `__bos ( s è/  ( wch¬_t ), __VA_ARGS__ ) \ 299 : `sw´štf ( s , n , __VA_ARGS__ )) ) 302  $__vsw´štf_chk ( wch¬_t * __»¡riù __s , size_t __n , 303  __æag , size_t __s_Ën , 304 __cÚ¡ wch¬_t * __»¡riù __fÜm© , 305 __gnuc_va_li¡ __¬g ) 306 __THROW ; 308  `__REDIRECT_NTH_LDBL ( __vsw´štf_®Ÿs , 309 ( wch¬_t * __»¡riù __s , size_t __n , 310 __cÚ¡ wch¬_t * __»¡riù __fmt , 311 __gnuc_va_li¡ __­ ), vsw´štf ); 313 __ex‹º_®ways_šlše  314 `__NTH ( $vsw´štf ( wch¬_t * __»¡riù __s , size_t __n , 315 __cÚ¡ wch¬_t * __»¡riù __fmt , __gnuc_va_li¡ __­ )) 317 ià( `__bos ( __s è!ð( size_t è-1 || __USE_FORTIFY_LEVEL > 1) 318  `__vsw´štf_chk ( __s , __n , __USE_FORTIFY_LEVEL - 1, 319 `__bos ( __s è/  ( wch¬_t ), __fmt , __­ ); 320  `__vsw´štf_®Ÿs ( __s , __n , __fmt , __­ ); 321 } } 324 #ià __USE_FORTIFY_LEVEL > 1 326  __fw´štf_chk ( __FILE * __»¡riù __¡»am ,  __æag , 327 __cÚ¡ wch¬_t * __»¡riù __fÜm© , ...); 328  __w´štf_chk ( __æag , __cÚ¡ wch¬_t * __»¡riù __fÜm© , 330  __vfw´štf_chk ( __FILE * __»¡riù __¡»am ,  __æag , 331 __cÚ¡ wch¬_t * __»¡riù __fÜm© , 332 __gnuc_va_li¡ __­ ); 333  __vw´štf_chk ( __æag , __cÚ¡ wch¬_t * __»¡riù __fÜm© , 334 __gnuc_va_li¡ __­ ); 336 #ifdeà __va_¬g_·ck 337 __ex‹º_®ways_šlše  338 $w´štf ( __cÚ¡ wch¬_t * __»¡riù __fmt , ...) 340  `__w´štf_chk ( __USE_FORTIFY_LEVEL - 1, __fmt , `__va_¬g_·ck ()); 341 } } 343 __ex‹º_®ways_šlše  344 $fw´štf ( __FILE * __»¡riù __¡»am , __cÚ¡ wch¬_t *__»¡riù __fmt , ...) 346  `__fw´štf_chk ( __¡»am , __USE_FORTIFY_LEVEL - 1, __fmt , 347 `__va_¬g_·ck ()); 348 } } 349 #–ià! defšed __ýlu¥lus 350  #w´štf (...) \ 351 `__w´štf_chk ( __USE_FORTIFY_LEVEL - 1, __VA_ARGS__ ) ) 352  #fw´štf ( ¡»am , ...) \ 353 `__fw´štf_chk ( ¡»am , __USE_FORTIFY_LEVEL - 1, __VA_ARGS__ ) ) 356 __ex‹º_®ways_šlše  357 $vw´štf ( __cÚ¡ wch¬_t * __»¡riù __fmt , __gnuc_va_li¡ __­ ) 359  `__vw´štf_chk ( __USE_FORTIFY_LEVEL - 1, __fmt , __­ ); 360 } } 362 __ex‹º_®ways_šlše  363 $vfw´štf ( __FILE * __»¡riù __¡»am , 364 __cÚ¡ wch¬_t * __»¡riù __fmt , __gnuc_va_li¡ __­ ) 366  `__vfw´štf_chk ( __¡»am , __USE_FORTIFY_LEVEL - 1, __fmt , __­ ); 367 } } 371 wch¬_t * $__fg‘ws_chk ( wch¬_t * __»¡riù __s , size_t __size ,  __n , 372 __FILE * __»¡riù __¡»am è __wur ; 373 wch¬_t * `__REDIRECT ( __fg‘ws_®Ÿs , 374 ( wch¬_t * __»¡riù __s ,  __n , 375 __FILE * __»¡riù __¡»am ), fg‘ws è __wur ; 376 wch¬_t * `__REDIRECT ( __fg‘ws_chk_w¬n , 377 ( wch¬_t * __»¡riù __s , size_t __size ,  __n , 378 __FILE * __»¡riù __¡»am ), __fg‘ws_chk ) 379 __wur `__w¬Ç‰r ("fgetws called with bigger sizehan†ength " 382 __ex‹º_®ways_šlše __wur wch¬_t * 383 $fg‘ws ( wch¬_t * __»¡riù __s ,  __n , __FILE *__»¡riù __¡»am ) 385 ià( `__bos ( __s è!ð( size_t ) -1) 387 ià(! `__bužtš_cÚ¡ªt_p ( __n ) || __n <= 0) 388  `__fg‘ws_chk ( __s , `__bos (__sè/  ( wch¬_t ), 389 __n , __¡»am ); 391 ià(( size_t è __n > `__bos ( __s è/  ( wch¬_t )) 392  `__fg‘ws_chk_w¬n ( __s , `__bos (__sè/  ( wch¬_t ), 393 __n , __¡»am ); 395  `__fg‘ws_®Ÿs ( __s , __n , __¡»am ); 396 } } 398 #ifdeà __USE_GNU 399 wch¬_t * $__fg‘ws_uÆocked_chk ( wch¬_t * __»¡riù __s , size_t __size , 400  __n , __FILE * __»¡riù __¡»am ) 401 __wur ; 402 wch¬_t * `__REDIRECT ( __fg‘ws_uÆocked_®Ÿs , 403 ( wch¬_t * __»¡riù __s ,  __n , 404 __FILE * __»¡riù __¡»am ), fg‘ws_uÆocked ) 405 __wur ; 406 wch¬_t * `__REDIRECT ( __fg‘ws_uÆocked_chk_w¬n , 407 ( wch¬_t * __»¡riù __s , size_t __size ,  __n , 408 __FILE * __»¡riù __¡»am ), 409 __fg‘ws_uÆocked_chk ) 410 __wur `__w¬Ç‰r ("fgetws_unlocked called with bigger sizehan†ength " 413 __ex‹º_®ways_šlše __wur wch¬_t * 414 $fg‘ws_uÆocked ( wch¬_t * __»¡riù __s ,  __n , __FILE *__»¡riù __¡»am ) 416 ià( `__bos ( __s è!ð( size_t ) -1) 418 ià(! `__bužtš_cÚ¡ªt_p ( __n ) || __n <= 0) 419  `__fg‘ws_uÆocked_chk ( __s , `__bos (__sè/  ( wch¬_t ), 420 __n , __¡»am ); 422 ià(( size_t è __n > `__bos ( __s è/  ( wch¬_t )) 423  `__fg‘ws_uÆocked_chk_w¬n ( __s , `__bos (__sè/  ( wch¬_t ), 424 __n , __¡»am ); 426  `__fg‘ws_uÆocked_®Ÿs ( __s , __n , __¡»am ); 427 } } 431 size_t $__wütomb_chk (* __s , wch¬_t __wch¬ , mb¡©e_t * __p , 432 size_t __buæ’ è __THROW __wur ; 433 size_t `__REDIRECT_NTH ( __wütomb_®Ÿs , 434 (* __»¡riù __s , wch¬_t __wch¬ , 435 mb¡©e_t * __»¡riù __ps ), wütomb è __wur ; 437 __ex‹º_®ways_šlše __wur size_t 438 `__NTH ( $wütomb (* __s , wch¬_t __wch¬ , mb¡©e_t * __ps )) 443  #__WCHAR_MB_LEN_MAX 16 ) 444 #ià defšed MB_LEN_MAX && MB_LEN_MAX !ð __WCHAR_MB_LEN_MAX 447 ià( `__bos ( __s è!ð( size_t è-1 && __WCHAR_MB_LEN_MAX > __bos (__s)) 448  `__wütomb_chk ( __s , __wch¬ , __ps , `__bos (__s)); 449  `__wütomb_®Ÿs ( __s , __wch¬ , __ps ); 450 } } 453 size_t $__mb¤towcs_chk ( wch¬_t * __»¡riù __d¡ , 454 __cÚ¡ ** __»¡riù __¤c , 455 size_t __Ën , mb¡©e_t * __»¡riù __ps , 456 size_t __d¡Ën è __THROW ; 457 size_t `__REDIRECT_NTH ( __mb¤towcs_®Ÿs , 458 ( wch¬_t * __»¡riù __d¡ , 459 __cÚ¡ ** __»¡riù __¤c , 460 size_t __Ën , mb¡©e_t * __»¡riù __ps ), 461 mb¤towcs ); 462 size_t `__REDIRECT_NTH ( __mb¤towcs_chk_w¬n , 463 ( wch¬_t * __»¡riù __d¡ , 464 __cÚ¡ ** __»¡riù __¤c , 465 size_t __Ën , mb¡©e_t * __»¡riù __ps , 466 size_t __d¡Ën ), __mb¤towcs_chk ) 467 `__w¬Ç‰r ("mbsrtowcs called with dst buffer smallerhan†en " 470 __ex‹º_®ways_šlše size_t 471 `__NTH ( $mb¤towcs ( wch¬_t * __»¡riù __d¡ , __cÚ¡ **__»¡riù __¤c , 472 size_t __Ën , mb¡©e_t * __»¡riù __ps )) 474 ià( `__bos ( __d¡ è!ð( size_t ) -1) 476 ià(! `__bužtš_cÚ¡ªt_p ( __Ën )) 477  `__mb¤towcs_chk ( __d¡ , __¤c , __Ën , __ps , 478 `__bos ( __d¡ è/  ( wch¬_t )); 480 ià( __Ën > `__bos ( __d¡ è/  ( wch¬_t )) 481  `__mb¤towcs_chk_w¬n ( __d¡ , __¤c , __Ën , __ps , 482 `__bos ( __d¡ è/  ( wch¬_t )); 484  `__mb¤towcs_®Ÿs ( __d¡ , __¤c , __Ën , __ps ); 485 } } 488 size_t $__wc¤tombs_chk (* __»¡riù __d¡ , 489 __cÚ¡ wch¬_t ** __»¡riù __¤c , 490 size_t __Ën , mb¡©e_t * __»¡riù __ps , 491 size_t __d¡Ën è __THROW ; 492 size_t `__REDIRECT_NTH ( __wc¤tombs_®Ÿs , 493 (* __»¡riù __d¡ , 494 __cÚ¡ wch¬_t ** __»¡riù __¤c , 495 size_t __Ën , mb¡©e_t * __»¡riù __ps ), 496 wc¤tombs ); 497 size_t `__REDIRECT_NTH ( __wc¤tombs_chk_w¬n , 498 (* __»¡riù __d¡ , 499 __cÚ¡ wch¬_t ** __»¡riù __¤c , 500 size_t __Ën , mb¡©e_t * __»¡riù __ps , 501 size_t __d¡Ën ), __wc¤tombs_chk ) 502 `__w¬Ç‰r ("wcsrtombs called with dst buffer smallerhan†en"); 504 __ex‹º_®ways_šlše size_t 505 `__NTH ( $wc¤tombs (* __»¡riù __d¡ , __cÚ¡ wch¬_t **__»¡riù __¤c , 506 size_t __Ën , mb¡©e_t * __»¡riù __ps )) 508 ià( `__bos ( __d¡ è!ð( size_t ) -1) 510 ià(! `__bužtš_cÚ¡ªt_p ( __Ën )) 511  `__wc¤tombs_chk ( __d¡ , __¤c , __Ën , __ps , `__bos (__dst)); 513 ià( __Ën > `__bos ( __d¡ )) 514  `__wc¤tombs_chk_w¬n ( __d¡ , __¤c , __Ën , __ps , `__bos (__dst)); 516  `__wc¤tombs_®Ÿs ( __d¡ , __¤c , __Ën , __ps ); 517 } } 520 #ifdeà __USE_GNU 521 size_t $__mb¢¹owcs_chk ( wch¬_t * __»¡riù __d¡ , 522 __cÚ¡ ** __»¡riù __¤c , size_t __nmc , 523 size_t __Ën , mb¡©e_t * __»¡riù __ps , 524 size_t __d¡Ën è __THROW ; 525 size_t `__REDIRECT_NTH ( __mb¢¹owcs_®Ÿs , 526 ( wch¬_t * __»¡riù __d¡ , 527 __cÚ¡ ** __»¡riù __¤c , size_t __nmc , 528 size_t __Ën , mb¡©e_t * __»¡riù __ps ), 529 mb¢¹owcs ); 530 size_t `__REDIRECT_NTH ( __mb¢¹owcs_chk_w¬n , 531 ( wch¬_t * __»¡riù __d¡ , 532 __cÚ¡ ** __»¡riù __¤c , size_t __nmc , 533 size_t __Ën , mb¡©e_t * __»¡riù __ps , 534 size_t __d¡Ën ), __mb¢¹owcs_chk ) 535 `__w¬Ç‰r ("mbsnrtowcs called with dst buffer smallerhan†en " 538 __ex‹º_®ways_šlše size_t 539 `__NTH ( $mb¢¹owcs ( wch¬_t * __»¡riù __d¡ , __cÚ¡ **__»¡riù __¤c , 540 size_t __nmc , size_ˆ __Ën , mb¡©e_t * __»¡riù __ps )) 542 ià( `__bos ( __d¡ è!ð( size_t ) -1) 544 ià(! `__bužtš_cÚ¡ªt_p ( __Ën )) 545  `__mb¢¹owcs_chk ( __d¡ , __¤c , __nmc , __Ën , __ps , 546 `__bos ( __d¡ è/  ( wch¬_t )); 548 ià( __Ën > `__bos ( __d¡ è/  ( wch¬_t )) 549  `__mb¢¹owcs_chk_w¬n ( __d¡ , __¤c , __nmc , __Ën , __ps , 550 `__bos ( __d¡ è/  ( wch¬_t )); 552  `__mb¢¹owcs_®Ÿs ( __d¡ , __¤c , __nmc , __Ën , __ps ); 553 } } 556 size_t $__wc¢¹ombs_chk (* __»¡riù __d¡ , 557 __cÚ¡ wch¬_t ** __»¡riù __¤c , 558 size_t __nwc , size_ˆ __Ën , 559 mb¡©e_t * __»¡riù __ps , size_t __d¡Ën ) 560 __THROW ; 561 size_t `__REDIRECT_NTH ( __wc¢¹ombs_®Ÿs , 562 (* __»¡riù __d¡ , 563 __cÚ¡ wch¬_t ** __»¡riù __¤c , 564 size_t __nwc , size_ˆ __Ën , 565 mb¡©e_t * __»¡riù __ps ), wc¢¹ombs ); 566 size_t `__REDIRECT_NTH ( __wc¢¹ombs_chk_w¬n , 567 (* __»¡riù __d¡ , 568 __cÚ¡ wch¬_t ** __»¡riù __¤c , 569 size_t __nwc , size_ˆ __Ën , 570 mb¡©e_t * __»¡riù __ps , 571 size_t __d¡Ën ), __wc¢¹ombs_chk ) 572 `__w¬Ç‰r ("wcsnrtombs called with dst buffer smallerhan†en"); 574 __ex‹º_®ways_šlše size_t 575 `__NTH ( $wc¢¹ombs (* __»¡riù __d¡ , __cÚ¡ wch¬_t **__»¡riù __¤c , 576 size_t __nwc , size_ˆ __Ën , mb¡©e_t * __»¡riù __ps )) 578 ià( `__bos ( __d¡ è!ð( size_t ) -1) 580 ià(! `__bužtš_cÚ¡ªt_p ( __Ën )) 581  `__wc¢¹ombs_chk ( __d¡ , __¤c , __nwc , __Ën , __ps , 582 `__bos ( __d¡ )); 584 ià( __Ën > `__bos ( __d¡ )) 585  `__wc¢¹ombs_chk_w¬n ( __d¡ , __¤c , __nwc , __Ën , __ps , 586 `__bos ( __d¡ )); 588  `__wc¢¹ombs_®Ÿs ( __d¡ , __¤c , __nwc , __Ën , __ps ); 589 } } @/usr/include/et/com_err.h 11 #ià! defšed ( __COM_ERR_H è&& !defšed( __COM_ERR_H__ ) 13 #ifdeà __GNUC__ 14  #COM_ERR_ATTR ( x è `__©Œibu‹__ (x) ) 16  #COM_ERR_ATTR ( x ) ) 19  ~<¡d¬g.h > 21  t”rcode_t ; 23  s”rÜ_bË { 24 cÚ¡ * cÚ¡ * mmsgs ; 25  mba£ ; 26  mn_msgs ; 28  g‘_li¡ ; 30  $com_”r (const *, , const *, ...) 31 `COM_ERR_ATTR (( `fÜm© ( ´štf , 3, 4))); 33  $com_”r_va (cÚ¡ * whßmi , ”rcode_t code , cÚ¡ * fmt , 34 va_li¡ ¬gs ) 35 `COM_ERR_ATTR (( `fÜm© ( ´štf , 3, 0))); 37 cÚ¡ * `”rÜ_mes§ge (); 38 (* com_”r_hook è(cÚ¡ *, , cÚ¡ *, va_li¡ ); 39 (* `£t_com_”r_hook ((*) (const *, , 40 cÚ¡ *, va_li¡ ))) 41 (cÚ¡ *, , cÚ¡ *, va_li¡ ); 42 (* $»£t_com_”r_hook ()) (const *, , 43 cÚ¡ *, va_li¡ ); 44  `š™_”rÜ_bË (cÚ¡ * cÚ¡ * msgs ,  ba£ ,  couÁ ); 46 ”rcode_t `add_”rÜ_bË (cÚ¡  ”rÜ_bË * ‘ ); 47 ”rcode_t `»move_”rÜ_bË (cÚ¡  ”rÜ_bË * ‘ ); 48  `add_to_”rÜ_bË ( ‘_li¡ * Ãw_bË ); 51 cÚ¡ * `com_right ( ‘_li¡ * li¡ ,  code ); 52  `š™Ÿlize_”rÜ_bË_r ( ‘_li¡ ** li¡ , 53 cÚ¡ ** mes§ges , 54  num_”rÜs , 55  ba£ ); 56  `ä“_”rÜ_bË ( ‘_li¡ * ‘ ); 58  #__COM_ERR_H ) 59  #__COM_ERR_H__ ) @/usr/include/openssl/obj_mac.h 65  #SN_undef "UNDEF" ) 66  #LN_undef "undefšed" ) 67  #NID_undef 0 ) 68  #OBJ_undef 0L ) 70  #SN_™u_t "ITU-T" ) 71  #LN_™u_t "™u-t" ) 72  #NID_™u_t 645 ) 73  #OBJ_™u_t 0L ) 75  #NID_cc™t 404 ) 76  #OBJ_cc™t OBJ_™u_t ) 78  #SN_iso "ISO" ) 79  #LN_iso "iso" ) 80  #NID_iso 181 ) 81  #OBJ_iso 1L ) 83  #SN_jošt_iso_™u_t "JOINT-ISO-ITU-T" ) 84  #LN_jošt_iso_™u_t "jošt-iso-™u-t" ) 85  #NID_jošt_iso_™u_t 646 ) 86  #OBJ_jošt_iso_™u_t 2L ) 88  #NID_jošt_iso_cc™t 393 ) 89  #OBJ_jošt_iso_cc™t OBJ_jošt_iso_™u_t ) 91  #SN_memb”_body "memb”-body" ) 92  #LN_memb”_body "ISO Memb” Body" ) 93  #NID_memb”_body 182 ) 94  #OBJ_memb”_body OBJ_iso ,2L ) 96  #SN_id’tif›d_Ügªiz©iÚ "id’tif›d-Ügªiz©iÚ" ) 97  #NID_id’tif›d_Ügªiz©iÚ 676 ) 98  #OBJ_id’tif›d_Ügªiz©iÚ OBJ_iso ,3L ) 100  #SN_û¹icom_¬c "û¹icom-¬c" ) 101  #NID_û¹icom_¬c 677 ) 102  #OBJ_û¹icom_¬c OBJ_id’tif›d_Ügªiz©iÚ ,132L ) 104  #SN_š‹º©iÚ®_Ügªiz©iÚs "š‹º©iÚ®-Ügªiz©iÚs" ) 105  #LN_š‹º©iÚ®_Ügªiz©iÚs "IÁ”ÇtiÚ® Orgªiz©iÚs" ) 106  #NID_š‹º©iÚ®_Ügªiz©iÚs 647 ) 107  #OBJ_š‹º©iÚ®_Ügªiz©iÚs OBJ_jošt_iso_™u_t ,23L ) 109  #SN_w­ "w­" ) 110  #NID_w­ 678 ) 111  #OBJ_w­ OBJ_š‹º©iÚ®_Ügªiz©iÚs ,43L ) 113  #SN_w­_wsg "w­-wsg" ) 114  #NID_w­_wsg 679 ) 115  #OBJ_w­_wsg OBJ_w­ ,13L ) 117  #SN_£Ëùed_©Œibu‹_ty³s "£Ëùed-©Œibu‹-ty³s" ) 118  #LN_£Ëùed_©Œibu‹_ty³s "S–eùed A‰ribu‹ Ty³s" ) 119  #NID_£Ëùed_©Œibu‹_ty³s 394 ) 120  #OBJ_£Ëùed_©Œibu‹_ty³s OBJ_jošt_iso_™u_t ,5L,1L,5L ) 122  #SN_þ—¿nû "þ—¿nû" ) 123  #NID_þ—¿nû 395 ) 124  #OBJ_þ—¿nû OBJ_£Ëùed_©Œibu‹_ty³s ,55L ) 126  #SN_ISO_US "ISO-US" ) 127  #LN_ISO_US "ISO US Memb” Body" ) 128  #NID_ISO_US 183 ) 129  #OBJ_ISO_US OBJ_memb”_body ,840L ) 131  #SN_X9_57 "X9-57" ) 132  #LN_X9_57 "X9.57" ) 133  #NID_X9_57 184 ) 134  #OBJ_X9_57 OBJ_ISO_US ,10040L ) 136  #SN_X9cm "X9cm" ) 137  #LN_X9cm "X9.57 CM ?" ) 138  #NID_X9cm 185 ) 139  #OBJ_X9cm OBJ_X9_57 ,4L ) 141  #SN_d§ "DSA" ) 142  #LN_d§ "d§Enüy±iÚ" ) 143  #NID_d§ 116 ) 144  #OBJ_d§ OBJ_X9cm ,1L ) 146  #SN_d§W™hSHA1 "DSA-SHA1" ) 147  #LN_d§W™hSHA1 "d§W™hSHA1" ) 148  #NID_d§W™hSHA1 113 ) 149  #OBJ_d§W™hSHA1 OBJ_X9cm ,3L ) 151  #SN_ªsi_X9_62 "ªsi-X9-62" ) 152  #LN_ªsi_X9_62 "ANSI X9.62" ) 153  #NID_ªsi_X9_62 405 ) 154  #OBJ_ªsi_X9_62 OBJ_ISO_US ,10045L ) 156  #OBJ_X9_62_id_f›ldTy³ OBJ_ªsi_X9_62 ,1L ) 158  #SN_X9_62_´ime_f›ld "´ime-f›ld" ) 159  #NID_X9_62_´ime_f›ld 406 ) 160  #OBJ_X9_62_´ime_f›ld OBJ_X9_62_id_f›ldTy³ ,1L ) 162  #SN_X9_62_ch¬aù”i¡ic_two_f›ld "ch¬aù”i¡ic-two-f›ld" ) 163  #NID_X9_62_ch¬aù”i¡ic_two_f›ld 407 ) 164  #OBJ_X9_62_ch¬aù”i¡ic_two_f›ld OBJ_X9_62_id_f›ldTy³ ,2L ) 166  #SN_X9_62_id_ch¬aù”i¡ic_two_basis "id-ch¬aù”i¡ic-two-basis" ) 167  #NID_X9_62_id_ch¬aù”i¡ic_two_basis 680 ) 168  #OBJ_X9_62_id_ch¬aù”i¡ic_two_basis OBJ_X9_62_ch¬aù”i¡ic_two_f›ld ,3L ) 170  #SN_X9_62_ÚBasis "ÚBasis" ) 171  #NID_X9_62_ÚBasis 681 ) 172  #OBJ_X9_62_ÚBasis OBJ_X9_62_id_ch¬aù”i¡ic_two_basis ,1L ) 174  #SN_X9_62_Basis "Basis" ) 175  #NID_X9_62_Basis 682 ) 176  #OBJ_X9_62_Basis OBJ_X9_62_id_ch¬aù”i¡ic_two_basis ,2L ) 178  #SN_X9_62_µBasis "µBasis" ) 179  #NID_X9_62_µBasis 683 ) 180  #OBJ_X9_62_µBasis OBJ_X9_62_id_ch¬aù”i¡ic_two_basis ,3L ) 182  #OBJ_X9_62_id_publicKeyTy³ OBJ_ªsi_X9_62 ,2L ) 184  #SN_X9_62_id_ecPublicKey "id-ecPublicKey" ) 185  #NID_X9_62_id_ecPublicKey 408 ) 186  #OBJ_X9_62_id_ecPublicKey OBJ_X9_62_id_publicKeyTy³ ,1L ) 188  #OBJ_X9_62_–lticCurve OBJ_ªsi_X9_62 ,3L ) 190  #OBJ_X9_62_c_TwoCurve OBJ_X9_62_–lticCurve ,0L ) 192  #SN_X9_62_c2²b163v1 "c2²b163v1" ) 193  #NID_X9_62_c2²b163v1 684 ) 194  #OBJ_X9_62_c2²b163v1 OBJ_X9_62_c_TwoCurve ,1L ) 196  #SN_X9_62_c2²b163v2 "c2²b163v2" ) 197  #NID_X9_62_c2²b163v2 685 ) 198  #OBJ_X9_62_c2²b163v2 OBJ_X9_62_c_TwoCurve ,2L ) 200  #SN_X9_62_c2²b163v3 "c2²b163v3" ) 201  #NID_X9_62_c2²b163v3 686 ) 202  #OBJ_X9_62_c2²b163v3 OBJ_X9_62_c_TwoCurve ,3L ) 204  #SN_X9_62_c2²b176v1 "c2²b176v1" ) 205  #NID_X9_62_c2²b176v1 687 ) 206  #OBJ_X9_62_c2²b176v1 OBJ_X9_62_c_TwoCurve ,4L ) 208  #SN_X9_62_c2Šb191v1 "c2Šb191v1" ) 209  #NID_X9_62_c2Šb191v1 688 ) 210  #OBJ_X9_62_c2Šb191v1 OBJ_X9_62_c_TwoCurve ,5L ) 212  #SN_X9_62_c2Šb191v2 "c2Šb191v2" ) 213  #NID_X9_62_c2Šb191v2 689 ) 214  #OBJ_X9_62_c2Šb191v2 OBJ_X9_62_c_TwoCurve ,6L ) 216  #SN_X9_62_c2Šb191v3 "c2Šb191v3" ) 217  #NID_X9_62_c2Šb191v3 690 ) 218  #OBJ_X9_62_c2Šb191v3 OBJ_X9_62_c_TwoCurve ,7L ) 220  #SN_X9_62_c2Úb191v4 "c2Úb191v4" ) 221  #NID_X9_62_c2Úb191v4 691 ) 222  #OBJ_X9_62_c2Úb191v4 OBJ_X9_62_c_TwoCurve ,8L ) 224  #SN_X9_62_c2Úb191v5 "c2Úb191v5" ) 225  #NID_X9_62_c2Úb191v5 692 ) 226  #OBJ_X9_62_c2Úb191v5 OBJ_X9_62_c_TwoCurve ,9L ) 228  #SN_X9_62_c2²b208w1 "c2²b208w1" ) 229  #NID_X9_62_c2²b208w1 693 ) 230  #OBJ_X9_62_c2²b208w1 OBJ_X9_62_c_TwoCurve ,10L ) 232  #SN_X9_62_c2Šb239v1 "c2Šb239v1" ) 233  #NID_X9_62_c2Šb239v1 694 ) 234  #OBJ_X9_62_c2Šb239v1 OBJ_X9_62_c_TwoCurve ,11L ) 236  #SN_X9_62_c2Šb239v2 "c2Šb239v2" ) 237  #NID_X9_62_c2Šb239v2 695 ) 238  #OBJ_X9_62_c2Šb239v2 OBJ_X9_62_c_TwoCurve ,12L ) 240  #SN_X9_62_c2Šb239v3 "c2Šb239v3" ) 241  #NID_X9_62_c2Šb239v3 696 ) 242  #OBJ_X9_62_c2Šb239v3 OBJ_X9_62_c_TwoCurve ,13L ) 244  #SN_X9_62_c2Úb239v4 "c2Úb239v4" ) 245  #NID_X9_62_c2Úb239v4 697 ) 246  #OBJ_X9_62_c2Úb239v4 OBJ_X9_62_c_TwoCurve ,14L ) 248  #SN_X9_62_c2Úb239v5 "c2Úb239v5" ) 249  #NID_X9_62_c2Úb239v5 698 ) 250  #OBJ_X9_62_c2Úb239v5 OBJ_X9_62_c_TwoCurve ,15L ) 252  #SN_X9_62_c2²b272w1 "c2²b272w1" ) 253  #NID_X9_62_c2²b272w1 699 ) 254  #OBJ_X9_62_c2²b272w1 OBJ_X9_62_c_TwoCurve ,16L ) 256  #SN_X9_62_c2²b304w1 "c2²b304w1" ) 257  #NID_X9_62_c2²b304w1 700 ) 258  #OBJ_X9_62_c2²b304w1 OBJ_X9_62_c_TwoCurve ,17L ) 260  #SN_X9_62_c2Šb359v1 "c2Šb359v1" ) 261  #NID_X9_62_c2Šb359v1 701 ) 262  #OBJ_X9_62_c2Šb359v1 OBJ_X9_62_c_TwoCurve ,18L ) 264  #SN_X9_62_c2²b368w1 "c2²b368w1" ) 265  #NID_X9_62_c2²b368w1 702 ) 266  #OBJ_X9_62_c2²b368w1 OBJ_X9_62_c_TwoCurve ,19L ) 268  #SN_X9_62_c2Šb431r1 "c2Šb431r1" ) 269  #NID_X9_62_c2Šb431r1 703 ) 270  #OBJ_X9_62_c2Šb431r1 OBJ_X9_62_c_TwoCurve ,20L ) 272  #OBJ_X9_62_´imeCurve OBJ_X9_62_–lticCurve ,1L ) 274  #SN_X9_62_´ime192v1 "´ime192v1" ) 275  #NID_X9_62_´ime192v1 409 ) 276  #OBJ_X9_62_´ime192v1 OBJ_X9_62_´imeCurve ,1L ) 278  #SN_X9_62_´ime192v2 "´ime192v2" ) 279  #NID_X9_62_´ime192v2 410 ) 280  #OBJ_X9_62_´ime192v2 OBJ_X9_62_´imeCurve ,2L ) 282  #SN_X9_62_´ime192v3 "´ime192v3" ) 283  #NID_X9_62_´ime192v3 411 ) 284  #OBJ_X9_62_´ime192v3 OBJ_X9_62_´imeCurve ,3L ) 286  #SN_X9_62_´ime239v1 "´ime239v1" ) 287  #NID_X9_62_´ime239v1 412 ) 288  #OBJ_X9_62_´ime239v1 OBJ_X9_62_´imeCurve ,4L ) 290  #SN_X9_62_´ime239v2 "´ime239v2" ) 291  #NID_X9_62_´ime239v2 413 ) 292  #OBJ_X9_62_´ime239v2 OBJ_X9_62_´imeCurve ,5L ) 294  #SN_X9_62_´ime239v3 "´ime239v3" ) 295  #NID_X9_62_´ime239v3 414 ) 296  #OBJ_X9_62_´ime239v3 OBJ_X9_62_´imeCurve ,6L ) 298  #SN_X9_62_´ime256v1 "´ime256v1" ) 299  #NID_X9_62_´ime256v1 415 ) 300  #OBJ_X9_62_´ime256v1 OBJ_X9_62_´imeCurve ,7L ) 302  #OBJ_X9_62_id_ecSigTy³ OBJ_ªsi_X9_62 ,4L ) 304  #SN_ecd§_w™h_SHA1 "ecd§-w™h-SHA1" ) 305  #NID_ecd§_w™h_SHA1 416 ) 306  #OBJ_ecd§_w™h_SHA1 OBJ_X9_62_id_ecSigTy³ ,1L ) 308  #OBJ_£cg_–lticCurve OBJ_û¹icom_¬c ,0L ) 310  #SN_£ý112r1 "£ý112r1" ) 311  #NID_£ý112r1 704 ) 312  #OBJ_£ý112r1 OBJ_£cg_–lticCurve ,6L ) 314  #SN_£ý112r2 "£ý112r2" ) 315  #NID_£ý112r2 705 ) 316  #OBJ_£ý112r2 OBJ_£cg_–lticCurve ,7L ) 318  #SN_£ý128r1 "£ý128r1" ) 319  #NID_£ý128r1 706 ) 320  #OBJ_£ý128r1 OBJ_£cg_–lticCurve ,28L ) 322  #SN_£ý128r2 "£ý128r2" ) 323  #NID_£ý128r2 707 ) 324  #OBJ_£ý128r2 OBJ_£cg_–lticCurve ,29L ) 326  #SN_£ý160k1 "£ý160k1" ) 327  #NID_£ý160k1 708 ) 328  #OBJ_£ý160k1 OBJ_£cg_–lticCurve ,9L ) 330  #SN_£ý160r1 "£ý160r1" ) 331  #NID_£ý160r1 709 ) 332  #OBJ_£ý160r1 OBJ_£cg_–lticCurve ,8L ) 334  #SN_£ý160r2 "£ý160r2" ) 335  #NID_£ý160r2 710 ) 336  #OBJ_£ý160r2 OBJ_£cg_–lticCurve ,30L ) 338  #SN_£ý192k1 "£ý192k1" ) 339  #NID_£ý192k1 711 ) 340  #OBJ_£ý192k1 OBJ_£cg_–lticCurve ,31L ) 342  #SN_£ý224k1 "£ý224k1" ) 343  #NID_£ý224k1 712 ) 344  #OBJ_£ý224k1 OBJ_£cg_–lticCurve ,32L ) 346  #SN_£ý224r1 "£ý224r1" ) 347  #NID_£ý224r1 713 ) 348  #OBJ_£ý224r1 OBJ_£cg_–lticCurve ,33L ) 350  #SN_£ý256k1 "£ý256k1" ) 351  #NID_£ý256k1 714 ) 352  #OBJ_£ý256k1 OBJ_£cg_–lticCurve ,10L ) 354  #SN_£ý384r1 "£ý384r1" ) 355  #NID_£ý384r1 715 ) 356  #OBJ_£ý384r1 OBJ_£cg_–lticCurve ,34L ) 358  #SN_£ý521r1 "£ý521r1" ) 359  #NID_£ý521r1 716 ) 360  #OBJ_£ý521r1 OBJ_£cg_–lticCurve ,35L ) 362  #SN_£ù113r1 "£ù113r1" ) 363  #NID_£ù113r1 717 ) 364  #OBJ_£ù113r1 OBJ_£cg_–lticCurve ,4L ) 366  #SN_£ù113r2 "£ù113r2" ) 367  #NID_£ù113r2 718 ) 368  #OBJ_£ù113r2 OBJ_£cg_–lticCurve ,5L ) 370  #SN_£ù131r1 "£ù131r1" ) 371  #NID_£ù131r1 719 ) 372  #OBJ_£ù131r1 OBJ_£cg_–lticCurve ,22L ) 374  #SN_£ù131r2 "£ù131r2" ) 375  #NID_£ù131r2 720 ) 376  #OBJ_£ù131r2 OBJ_£cg_–lticCurve ,23L ) 378  #SN_£ù163k1 "£ù163k1" ) 379  #NID_£ù163k1 721 ) 380  #OBJ_£ù163k1 OBJ_£cg_–lticCurve ,1L ) 382  #SN_£ù163r1 "£ù163r1" ) 383  #NID_£ù163r1 722 ) 384  #OBJ_£ù163r1 OBJ_£cg_–lticCurve ,2L ) 386  #SN_£ù163r2 "£ù163r2" ) 387  #NID_£ù163r2 723 ) 388  #OBJ_£ù163r2 OBJ_£cg_–lticCurve ,15L ) 390  #SN_£ù193r1 "£ù193r1" ) 391  #NID_£ù193r1 724 ) 392  #OBJ_£ù193r1 OBJ_£cg_–lticCurve ,24L ) 394  #SN_£ù193r2 "£ù193r2" ) 395  #NID_£ù193r2 725 ) 396  #OBJ_£ù193r2 OBJ_£cg_–lticCurve ,25L ) 398  #SN_£ù233k1 "£ù233k1" ) 399  #NID_£ù233k1 726 ) 400  #OBJ_£ù233k1 OBJ_£cg_–lticCurve ,26L ) 402  #SN_£ù233r1 "£ù233r1" ) 403  #NID_£ù233r1 727 ) 404  #OBJ_£ù233r1 OBJ_£cg_–lticCurve ,27L ) 406  #SN_£ù239k1 "£ù239k1" ) 407  #NID_£ù239k1 728 ) 408  #OBJ_£ù239k1 OBJ_£cg_–lticCurve ,3L ) 410  #SN_£ù283k1 "£ù283k1" ) 411  #NID_£ù283k1 729 ) 412  #OBJ_£ù283k1 OBJ_£cg_–lticCurve ,16L ) 414  #SN_£ù283r1 "£ù283r1" ) 415  #NID_£ù283r1 730 ) 416  #OBJ_£ù283r1 OBJ_£cg_–lticCurve ,17L ) 418  #SN_£ù409k1 "£ù409k1" ) 419  #NID_£ù409k1 731 ) 420  #OBJ_£ù409k1 OBJ_£cg_–lticCurve ,36L ) 422  #SN_£ù409r1 "£ù409r1" ) 423  #NID_£ù409r1 732 ) 424  #OBJ_£ù409r1 OBJ_£cg_–lticCurve ,37L ) 426  #SN_£ù571k1 "£ù571k1" ) 427  #NID_£ù571k1 733 ) 428  #OBJ_£ù571k1 OBJ_£cg_–lticCurve ,38L ) 430  #SN_£ù571r1 "£ù571r1" ) 431  #NID_£ù571r1 734 ) 432  #OBJ_£ù571r1 OBJ_£cg_–lticCurve ,39L ) 434  #OBJ_w­_wsg_idm_ecid OBJ_w­_wsg ,4L ) 436  #SN_w­_wsg_idm_ecid_wŽs1 "w­-wsg-idm-ecid-wŽs1" ) 437  #NID_w­_wsg_idm_ecid_wŽs1 735 ) 438  #OBJ_w­_wsg_idm_ecid_wŽs1 OBJ_w­_wsg_idm_ecid ,1L ) 440  #SN_w­_wsg_idm_ecid_wŽs3 "w­-wsg-idm-ecid-wŽs3" ) 441  #NID_w­_wsg_idm_ecid_wŽs3 736 ) 442  #OBJ_w­_wsg_idm_ecid_wŽs3 OBJ_w­_wsg_idm_ecid ,3L ) 444  #SN_w­_wsg_idm_ecid_wŽs4 "w­-wsg-idm-ecid-wŽs4" ) 445  #NID_w­_wsg_idm_ecid_wŽs4 737 ) 446  #OBJ_w­_wsg_idm_ecid_wŽs4 OBJ_w­_wsg_idm_ecid ,4L ) 448  #SN_w­_wsg_idm_ecid_wŽs5 "w­-wsg-idm-ecid-wŽs5" ) 449  #NID_w­_wsg_idm_ecid_wŽs5 738 ) 450  #OBJ_w­_wsg_idm_ecid_wŽs5 OBJ_w­_wsg_idm_ecid ,5L ) 452  #SN_w­_wsg_idm_ecid_wŽs6 "w­-wsg-idm-ecid-wŽs6" ) 453  #NID_w­_wsg_idm_ecid_wŽs6 739 ) 454  #OBJ_w­_wsg_idm_ecid_wŽs6 OBJ_w­_wsg_idm_ecid ,6L ) 456  #SN_w­_wsg_idm_ecid_wŽs7 "w­-wsg-idm-ecid-wŽs7" ) 457  #NID_w­_wsg_idm_ecid_wŽs7 740 ) 458  #OBJ_w­_wsg_idm_ecid_wŽs7 OBJ_w­_wsg_idm_ecid ,7L ) 460  #SN_w­_wsg_idm_ecid_wŽs8 "w­-wsg-idm-ecid-wŽs8" ) 461  #NID_w­_wsg_idm_ecid_wŽs8 741 ) 462  #OBJ_w­_wsg_idm_ecid_wŽs8 OBJ_w­_wsg_idm_ecid ,8L ) 464  #SN_w­_wsg_idm_ecid_wŽs9 "w­-wsg-idm-ecid-wŽs9" ) 465  #NID_w­_wsg_idm_ecid_wŽs9 742 ) 466  #OBJ_w­_wsg_idm_ecid_wŽs9 OBJ_w­_wsg_idm_ecid ,9L ) 468  #SN_w­_wsg_idm_ecid_wŽs10 "w­-wsg-idm-ecid-wŽs10" ) 469  #NID_w­_wsg_idm_ecid_wŽs10 743 ) 470  #OBJ_w­_wsg_idm_ecid_wŽs10 OBJ_w­_wsg_idm_ecid ,10L ) 472  #SN_w­_wsg_idm_ecid_wŽs11 "w­-wsg-idm-ecid-wŽs11" ) 473  #NID_w­_wsg_idm_ecid_wŽs11 744 ) 474  #OBJ_w­_wsg_idm_ecid_wŽs11 OBJ_w­_wsg_idm_ecid ,11L ) 476  #SN_w­_wsg_idm_ecid_wŽs12 "w­-wsg-idm-ecid-wŽs12" ) 477  #NID_w­_wsg_idm_ecid_wŽs12 745 ) 478  #OBJ_w­_wsg_idm_ecid_wŽs12 OBJ_w­_wsg_idm_ecid ,12L ) 480  #SN_ÿ¡5_cbc "CAST5-CBC" ) 481  #LN_ÿ¡5_cbc "ÿ¡5-cbc" ) 482  #NID_ÿ¡5_cbc 108 ) 483  #OBJ_ÿ¡5_cbc OBJ_ISO_US ,113533L,7L,66L,10L ) 485  #SN_ÿ¡5_ecb "CAST5-ECB" ) 486  #LN_ÿ¡5_ecb "ÿ¡5-ecb" ) 487  #NID_ÿ¡5_ecb 109 ) 489  #SN_ÿ¡5_cfb64 "CAST5-CFB" ) 490  #LN_ÿ¡5_cfb64 "ÿ¡5-cfb" ) 491  #NID_ÿ¡5_cfb64 110 ) 493  #SN_ÿ¡5_ofb64 "CAST5-OFB" ) 494  #LN_ÿ¡5_ofb64 "ÿ¡5-ofb" ) 495  #NID_ÿ¡5_ofb64 111 ) 497  #LN_pbeW™hMD5AndCa¡5_CBC "pbeW™hMD5AndCa¡5CBC" ) 498  #NID_pbeW™hMD5AndCa¡5_CBC 112 ) 499  #OBJ_pbeW™hMD5AndCa¡5_CBC OBJ_ISO_US ,113533L,7L,66L,12L ) 501  #SN_r§dsi "r§dsi" ) 502  #LN_r§dsi "RSA D©¨Secur™y, Inc." ) 503  #NID_r§dsi 1 ) 504  #OBJ_r§dsi OBJ_ISO_US ,113549L ) 506  #SN_pkcs "pkcs" ) 507  #LN_pkcs "RSA D©¨Secur™y, Inc. PKCS" ) 508  #NID_pkcs 2 ) 509  #OBJ_pkcs OBJ_r§dsi ,1L ) 511  #SN_pkcs1 "pkcs1" ) 512  #NID_pkcs1 186 ) 513  #OBJ_pkcs1 OBJ_pkcs ,1L ) 515  #LN_r§Enüy±iÚ "r§Enüy±iÚ" ) 516  #NID_r§Enüy±iÚ 6 ) 517  #OBJ_r§Enüy±iÚ OBJ_pkcs1 ,1L ) 519  #SN_md2W™hRSAEnüy±iÚ "RSA-MD2" ) 520  #LN_md2W™hRSAEnüy±iÚ "md2W™hRSAEnüy±iÚ" ) 521  #NID_md2W™hRSAEnüy±iÚ 7 ) 522  #OBJ_md2W™hRSAEnüy±iÚ OBJ_pkcs1 ,2L ) 524  #SN_md4W™hRSAEnüy±iÚ "RSA-MD4" ) 525  #LN_md4W™hRSAEnüy±iÚ "md4W™hRSAEnüy±iÚ" ) 526  #NID_md4W™hRSAEnüy±iÚ 396 ) 527  #OBJ_md4W™hRSAEnüy±iÚ OBJ_pkcs1 ,3L ) 529  #SN_md5W™hRSAEnüy±iÚ "RSA-MD5" ) 530  #LN_md5W™hRSAEnüy±iÚ "md5W™hRSAEnüy±iÚ" ) 531  #NID_md5W™hRSAEnüy±iÚ 8 ) 532  #OBJ_md5W™hRSAEnüy±iÚ OBJ_pkcs1 ,4L ) 534  #SN_sha1W™hRSAEnüy±iÚ "RSA-SHA1" ) 535  #LN_sha1W™hRSAEnüy±iÚ "sha1W™hRSAEnüy±iÚ" ) 536  #NID_sha1W™hRSAEnüy±iÚ 65 ) 537  #OBJ_sha1W™hRSAEnüy±iÚ OBJ_pkcs1 ,5L ) 539  #SN_sha256W™hRSAEnüy±iÚ "RSA-SHA256" ) 540  #LN_sha256W™hRSAEnüy±iÚ "sha256W™hRSAEnüy±iÚ" ) 541  #NID_sha256W™hRSAEnüy±iÚ 668 ) 542  #OBJ_sha256W™hRSAEnüy±iÚ OBJ_pkcs1 ,11L ) 544  #SN_sha384W™hRSAEnüy±iÚ "RSA-SHA384" ) 545  #LN_sha384W™hRSAEnüy±iÚ "sha384W™hRSAEnüy±iÚ" ) 546  #NID_sha384W™hRSAEnüy±iÚ 669 ) 547  #OBJ_sha384W™hRSAEnüy±iÚ OBJ_pkcs1 ,12L ) 549  #SN_sha512W™hRSAEnüy±iÚ "RSA-SHA512" ) 550  #LN_sha512W™hRSAEnüy±iÚ "sha512W™hRSAEnüy±iÚ" ) 551  #NID_sha512W™hRSAEnüy±iÚ 670 ) 552  #OBJ_sha512W™hRSAEnüy±iÚ OBJ_pkcs1 ,13L ) 554  #SN_sha224W™hRSAEnüy±iÚ "RSA-SHA224" ) 555  #LN_sha224W™hRSAEnüy±iÚ "sha224W™hRSAEnüy±iÚ" ) 556  #NID_sha224W™hRSAEnüy±iÚ 671 ) 557  #OBJ_sha224W™hRSAEnüy±iÚ OBJ_pkcs1 ,14L ) 559  #SN_pkcs3 "pkcs3" ) 560  #NID_pkcs3 27 ) 561  #OBJ_pkcs3 OBJ_pkcs ,3L ) 563  #LN_dhKeyAg»em’t "dhKeyAg»em’t" ) 564  #NID_dhKeyAg»em’t 28 ) 565  #OBJ_dhKeyAg»em’t OBJ_pkcs3 ,1L ) 567  #SN_pkcs5 "pkcs5" ) 568  #NID_pkcs5 187 ) 569  #OBJ_pkcs5 OBJ_pkcs ,5L ) 571  #SN_pbeW™hMD2AndDES_CBC "PBE-MD2-DES" ) 572  #LN_pbeW™hMD2AndDES_CBC "pbeW™hMD2AndDES-CBC" ) 573  #NID_pbeW™hMD2AndDES_CBC 9 ) 574  #OBJ_pbeW™hMD2AndDES_CBC OBJ_pkcs5 ,1L ) 576  #SN_pbeW™hMD5AndDES_CBC "PBE-MD5-DES" ) 577  #LN_pbeW™hMD5AndDES_CBC "pbeW™hMD5AndDES-CBC" ) 578  #NID_pbeW™hMD5AndDES_CBC 10 ) 579  #OBJ_pbeW™hMD5AndDES_CBC OBJ_pkcs5 ,3L ) 581  #SN_pbeW™hMD2AndRC2_CBC "PBE-MD2-RC2-64" ) 582  #LN_pbeW™hMD2AndRC2_CBC "pbeW™hMD2AndRC2-CBC" ) 583  #NID_pbeW™hMD2AndRC2_CBC 168 ) 584  #OBJ_pbeW™hMD2AndRC2_CBC OBJ_pkcs5 ,4L ) 586  #SN_pbeW™hMD5AndRC2_CBC "PBE-MD5-RC2-64" ) 587  #LN_pbeW™hMD5AndRC2_CBC "pbeW™hMD5AndRC2-CBC" ) 588  #NID_pbeW™hMD5AndRC2_CBC 169 ) 589  #OBJ_pbeW™hMD5AndRC2_CBC OBJ_pkcs5 ,6L ) 591  #SN_pbeW™hSHA1AndDES_CBC "PBE-SHA1-DES" ) 592  #LN_pbeW™hSHA1AndDES_CBC "pbeW™hSHA1AndDES-CBC" ) 593  #NID_pbeW™hSHA1AndDES_CBC 170 ) 594  #OBJ_pbeW™hSHA1AndDES_CBC OBJ_pkcs5 ,10L ) 596  #SN_pbeW™hSHA1AndRC2_CBC "PBE-SHA1-RC2-64" ) 597  #LN_pbeW™hSHA1AndRC2_CBC "pbeW™hSHA1AndRC2-CBC" ) 598  #NID_pbeW™hSHA1AndRC2_CBC 68 ) 599  #OBJ_pbeW™hSHA1AndRC2_CBC OBJ_pkcs5 ,11L ) 601  #LN_id_pbkdf2 "PBKDF2" ) 602  #NID_id_pbkdf2 69 ) 603  #OBJ_id_pbkdf2 OBJ_pkcs5 ,12L ) 605  #LN_pbes2 "PBES2" ) 606  #NID_pbes2 161 ) 607  #OBJ_pbes2 OBJ_pkcs5 ,13L ) 609  #LN_pbmac1 "PBMAC1" ) 610  #NID_pbmac1 162 ) 611  #OBJ_pbmac1 OBJ_pkcs5 ,14L ) 613  #SN_pkcs7 "pkcs7" ) 614  #NID_pkcs7 20 ) 615  #OBJ_pkcs7 OBJ_pkcs ,7L ) 617  #LN_pkcs7_d©a "pkcs7-d©a" ) 618  #NID_pkcs7_d©a 21 ) 619  #OBJ_pkcs7_d©a OBJ_pkcs7 ,1L ) 621  #LN_pkcs7_sigÃd "pkcs7-sigÃdD©a" ) 622  #NID_pkcs7_sigÃd 22 ) 623  #OBJ_pkcs7_sigÃd OBJ_pkcs7 ,2L ) 625  #LN_pkcs7_’v–Ýed "pkcs7-’v–ÝedD©a" ) 626  #NID_pkcs7_’v–Ýed 23 ) 627  #OBJ_pkcs7_’v–Ýed OBJ_pkcs7 ,3L ) 629  #LN_pkcs7_sigÃdAndEnv–Ýed "pkcs7-sigÃdAndEnv–ÝedD©a" ) 630  #NID_pkcs7_sigÃdAndEnv–Ýed 24 ) 631  #OBJ_pkcs7_sigÃdAndEnv–Ýed OBJ_pkcs7 ,4L ) 633  #LN_pkcs7_dige¡ "pkcs7-dige¡D©a" ) 634  #NID_pkcs7_dige¡ 25 ) 635  #OBJ_pkcs7_dige¡ OBJ_pkcs7 ,5L ) 637  #LN_pkcs7_’üy±ed "pkcs7-’üy±edD©a" ) 638  #NID_pkcs7_’üy±ed 26 ) 639  #OBJ_pkcs7_’üy±ed OBJ_pkcs7 ,6L ) 641  #SN_pkcs9 "pkcs9" ) 642  #NID_pkcs9 47 ) 643  #OBJ_pkcs9 OBJ_pkcs ,9L ) 645  #LN_pkcs9_emažAdd»ss "emažAdd»ss" ) 646  #NID_pkcs9_emažAdd»ss 48 ) 647  #OBJ_pkcs9_emažAdd»ss OBJ_pkcs9 ,1L ) 649  #LN_pkcs9_un¡ruùu»dName "un¡ruùu»dName" ) 650  #NID_pkcs9_un¡ruùu»dName 49 ) 651  #OBJ_pkcs9_un¡ruùu»dName OBJ_pkcs9 ,2L ) 653  #LN_pkcs9_cÚ‹ÁTy³ "cÚ‹ÁTy³" ) 654  #NID_pkcs9_cÚ‹ÁTy³ 50 ) 655  #OBJ_pkcs9_cÚ‹ÁTy³ OBJ_pkcs9 ,3L ) 657  #LN_pkcs9_mes§geDige¡ "mes§geDige¡" ) 658  #NID_pkcs9_mes§geDige¡ 51 ) 659  #OBJ_pkcs9_mes§geDige¡ OBJ_pkcs9 ,4L ) 661  #LN_pkcs9_signšgTime "signšgTime" ) 662  #NID_pkcs9_signšgTime 52 ) 663  #OBJ_pkcs9_signšgTime OBJ_pkcs9 ,5L ) 665  #LN_pkcs9_couÁ”sigÇtu» "couÁ”sigÇtu»" ) 666  #NID_pkcs9_couÁ”sigÇtu» 53 ) 667  #OBJ_pkcs9_couÁ”sigÇtu» OBJ_pkcs9 ,6L ) 669  #LN_pkcs9_ch®ËngePasswÜd "ch®ËngePasswÜd" ) 670  #NID_pkcs9_ch®ËngePasswÜd 54 ) 671  #OBJ_pkcs9_ch®ËngePasswÜd OBJ_pkcs9 ,7L ) 673  #LN_pkcs9_un¡ruùu»dAdd»ss "un¡ruùu»dAdd»ss" ) 674  #NID_pkcs9_un¡ruùu»dAdd»ss 55 ) 675  #OBJ_pkcs9_un¡ruùu»dAdd»ss OBJ_pkcs9 ,8L ) 677  #LN_pkcs9_extC”tA‰ribu‹s "ex‹ndedC”tifiÿ‹A‰ribu‹s" ) 678  #NID_pkcs9_extC”tA‰ribu‹s 56 ) 679  #OBJ_pkcs9_extC”tA‰ribu‹s OBJ_pkcs9 ,9L ) 681  #SN_ext_»q "extReq" ) 682  #LN_ext_»q "Ex‹nsiÚ Reque¡" ) 683  #NID_ext_»q 172 ) 684  #OBJ_ext_»q OBJ_pkcs9 ,14L ) 686  #SN_SMIMEC­abž™›s "SMIME-CAPS" ) 687  #LN_SMIMEC­abž™›s "S/MIME C­abž™›s" ) 688  #NID_SMIMEC­abž™›s 167 ) 689  #OBJ_SMIMEC­abž™›s OBJ_pkcs9 ,15L ) 691  #SN_SMIME "SMIME" ) 692  #LN_SMIME "S/MIME" ) 693  #NID_SMIME 188 ) 694  #OBJ_SMIME OBJ_pkcs9 ,16L ) 696  #SN_id_smime_mod "id-smime-mod" ) 697  #NID_id_smime_mod 189 ) 698  #OBJ_id_smime_mod OBJ_SMIME ,0L ) 700  #SN_id_smime_ù "id-smime-ù" ) 701  #NID_id_smime_ù 190 ) 702  #OBJ_id_smime_ù OBJ_SMIME ,1L ) 704  #SN_id_smime_¯ "id-smime-¯" ) 705  #NID_id_smime_¯ 191 ) 706  #OBJ_id_smime_¯ OBJ_SMIME ,2L ) 708  #SN_id_smime_®g "id-smime-®g" ) 709  #NID_id_smime_®g 192 ) 710  #OBJ_id_smime_®g OBJ_SMIME ,3L ) 712  #SN_id_smime_cd "id-smime-cd" ) 713  #NID_id_smime_cd 193 ) 714  #OBJ_id_smime_cd OBJ_SMIME ,4L ) 716  #SN_id_smime_¥q "id-smime-¥q" ) 717  #NID_id_smime_¥q 194 ) 718  #OBJ_id_smime_¥q OBJ_SMIME ,5L ) 720  #SN_id_smime_ùi "id-smime-ùi" ) 721  #NID_id_smime_ùi 195 ) 722  #OBJ_id_smime_ùi OBJ_SMIME ,6L ) 724  #SN_id_smime_mod_cms "id-smime-mod-cms" ) 725  #NID_id_smime_mod_cms 196 ) 726  #OBJ_id_smime_mod_cms OBJ_id_smime_mod ,1L ) 728  #SN_id_smime_mod_ess "id-smime-mod-ess" ) 729  #NID_id_smime_mod_ess 197 ) 730  #OBJ_id_smime_mod_ess OBJ_id_smime_mod ,2L ) 732  #SN_id_smime_mod_oid "id-smime-mod-oid" ) 733  #NID_id_smime_mod_oid 198 ) 734  #OBJ_id_smime_mod_oid OBJ_id_smime_mod ,3L ) 736  #SN_id_smime_mod_msg_v3 "id-smime-mod-msg-v3" ) 737  #NID_id_smime_mod_msg_v3 199 ) 738  #OBJ_id_smime_mod_msg_v3 OBJ_id_smime_mod ,4L ) 740  #SN_id_smime_mod_‘s_eSigÇtu»_88 "id-smime-mod-‘s-eSigÇtu»-88" ) 741  #NID_id_smime_mod_‘s_eSigÇtu»_88 200 ) 742  #OBJ_id_smime_mod_‘s_eSigÇtu»_88 OBJ_id_smime_mod ,5L ) 744  #SN_id_smime_mod_‘s_eSigÇtu»_97 "id-smime-mod-‘s-eSigÇtu»-97" ) 745  #NID_id_smime_mod_‘s_eSigÇtu»_97 201 ) 746  #OBJ_id_smime_mod_‘s_eSigÇtu»_97 OBJ_id_smime_mod ,6L ) 748  #SN_id_smime_mod_‘s_eSigPÞicy_88 "id-smime-mod-‘s-eSigPÞicy-88" ) 749  #NID_id_smime_mod_‘s_eSigPÞicy_88 202 ) 750  #OBJ_id_smime_mod_‘s_eSigPÞicy_88 OBJ_id_smime_mod ,7L ) 752  #SN_id_smime_mod_‘s_eSigPÞicy_97 "id-smime-mod-‘s-eSigPÞicy-97" ) 753  #NID_id_smime_mod_‘s_eSigPÞicy_97 203 ) 754  #OBJ_id_smime_mod_‘s_eSigPÞicy_97 OBJ_id_smime_mod ,8L ) 756  #SN_id_smime_ù_»ût "id-smime-ù-»ût" ) 757  #NID_id_smime_ù_»ût 204 ) 758  #OBJ_id_smime_ù_»ût OBJ_id_smime_ù ,1L ) 760  #SN_id_smime_ù_authD©a "id-smime-ù-authD©a" ) 761  #NID_id_smime_ù_authD©a 205 ) 762  #OBJ_id_smime_ù_authD©a OBJ_id_smime_ù ,2L ) 764  #SN_id_smime_ù_publishC”t "id-smime-ù-publishC”t" ) 765  #NID_id_smime_ù_publishC”t 206 ) 766  #OBJ_id_smime_ù_publishC”t OBJ_id_smime_ù ,3L ) 768  #SN_id_smime_ù_TSTInfo "id-smime-ù-TSTInfo" ) 769  #NID_id_smime_ù_TSTInfo 207 ) 770  #OBJ_id_smime_ù_TSTInfo OBJ_id_smime_ù ,4L ) 772  #SN_id_smime_ù_TDTInfo "id-smime-ù-TDTInfo" ) 773  #NID_id_smime_ù_TDTInfo 208 ) 774  #OBJ_id_smime_ù_TDTInfo OBJ_id_smime_ù ,5L ) 776  #SN_id_smime_ù_cÚ‹ÁInfo "id-smime-ù-cÚ‹ÁInfo" ) 777  #NID_id_smime_ù_cÚ‹ÁInfo 209 ) 778  #OBJ_id_smime_ù_cÚ‹ÁInfo OBJ_id_smime_ù ,6L ) 780  #SN_id_smime_ù_DVCSReque¡D©a "id-smime-ù-DVCSReque¡D©a" ) 781  #NID_id_smime_ù_DVCSReque¡D©a 210 ) 782  #OBJ_id_smime_ù_DVCSReque¡D©a OBJ_id_smime_ù ,7L ) 784  #SN_id_smime_ù_DVCSRe¥Ú£D©a "id-smime-ù-DVCSRe¥Ú£D©a" ) 785  #NID_id_smime_ù_DVCSRe¥Ú£D©a 211 ) 786  #OBJ_id_smime_ù_DVCSRe¥Ú£D©a OBJ_id_smime_ù ,8L ) 788  #SN_id_smime_¯_»ûtReque¡ "id-smime-¯-»ûtReque¡" ) 789  #NID_id_smime_¯_»ûtReque¡ 212 ) 790  #OBJ_id_smime_¯_»ûtReque¡ OBJ_id_smime_¯ ,1L ) 792  #SN_id_smime_¯_£cur™yLab– "id-smime-¯-£cur™yLab–" ) 793  #NID_id_smime_¯_£cur™yLab– 213 ) 794  #OBJ_id_smime_¯_£cur™yLab– OBJ_id_smime_¯ ,2L ) 796  #SN_id_smime_¯_mlEx·ndHi¡Üy "id-smime-¯-mlEx·ndHi¡Üy" ) 797  #NID_id_smime_¯_mlEx·ndHi¡Üy 214 ) 798  #OBJ_id_smime_¯_mlEx·ndHi¡Üy OBJ_id_smime_¯ ,3L ) 800  #SN_id_smime_¯_cÚ‹ÁHšt "id-smime-¯-cÚ‹ÁHšt" ) 801  #NID_id_smime_¯_cÚ‹ÁHšt 215 ) 802  #OBJ_id_smime_¯_cÚ‹ÁHšt OBJ_id_smime_¯ ,4L ) 804  #SN_id_smime_¯_msgSigDige¡ "id-smime-¯-msgSigDige¡" ) 805  #NID_id_smime_¯_msgSigDige¡ 216 ) 806  #OBJ_id_smime_¯_msgSigDige¡ OBJ_id_smime_¯ ,5L ) 808  #SN_id_smime_¯_’ÿpCÚ‹ÁTy³ "id-smime-¯-’ÿpCÚ‹ÁTy³" ) 809  #NID_id_smime_¯_’ÿpCÚ‹ÁTy³ 217 ) 810  #OBJ_id_smime_¯_’ÿpCÚ‹ÁTy³ OBJ_id_smime_¯ ,6L ) 812  #SN_id_smime_¯_cÚ‹ÁId’tif›r "id-smime-¯-cÚ‹ÁId’tif›r" ) 813  #NID_id_smime_¯_cÚ‹ÁId’tif›r 218 ) 814  #OBJ_id_smime_¯_cÚ‹ÁId’tif›r OBJ_id_smime_¯ ,7L ) 816  #SN_id_smime_¯_macV®ue "id-smime-¯-macV®ue" ) 817  #NID_id_smime_¯_macV®ue 219 ) 818  #OBJ_id_smime_¯_macV®ue OBJ_id_smime_¯ ,8L ) 820  #SN_id_smime_¯_equiv®’tLab–s "id-smime-¯-equiv®’tLab–s" ) 821  #NID_id_smime_¯_equiv®’tLab–s 220 ) 822  #OBJ_id_smime_¯_equiv®’tLab–s OBJ_id_smime_¯ ,9L ) 824  #SN_id_smime_¯_cÚ‹ÁReã»nû "id-smime-¯-cÚ‹ÁReã»nû" ) 825  #NID_id_smime_¯_cÚ‹ÁReã»nû 221 ) 826  #OBJ_id_smime_¯_cÚ‹ÁReã»nû OBJ_id_smime_¯ ,10L ) 828  #SN_id_smime_¯_’üypKeyP»f "id-smime-¯-’üypKeyP»f" ) 829  #NID_id_smime_¯_’üypKeyP»f 222 ) 830  #OBJ_id_smime_¯_’üypKeyP»f OBJ_id_smime_¯ ,11L ) 832  #SN_id_smime_¯_signšgC”tifiÿ‹ "id-smime-¯-signšgC”tifiÿ‹" ) 833  #NID_id_smime_¯_signšgC”tifiÿ‹ 223 ) 834  #OBJ_id_smime_¯_signšgC”tifiÿ‹ OBJ_id_smime_¯ ,12L ) 836  #SN_id_smime_¯_smimeEnüy±C”ts "id-smime-¯-smimeEnüy±C”ts" ) 837  #NID_id_smime_¯_smimeEnüy±C”ts 224 ) 838  #OBJ_id_smime_¯_smimeEnüy±C”ts OBJ_id_smime_¯ ,13L ) 840  #SN_id_smime_¯_timeSmpTok’ "id-smime-¯-timeSmpTok’" ) 841  #NID_id_smime_¯_timeSmpTok’ 225 ) 842  #OBJ_id_smime_¯_timeSmpTok’ OBJ_id_smime_¯ ,14L ) 844  #SN_id_smime_¯_‘s_sigPÞicyId "id-smime-¯-‘s-sigPÞicyId" ) 845  #NID_id_smime_¯_‘s_sigPÞicyId 226 ) 846  #OBJ_id_smime_¯_‘s_sigPÞicyId OBJ_id_smime_¯ ,15L ) 848  #SN_id_smime_¯_‘s_comm™m’tTy³ "id-smime-¯-‘s-comm™m’tTy³" ) 849  #NID_id_smime_¯_‘s_comm™m’tTy³ 227 ) 850  #OBJ_id_smime_¯_‘s_comm™m’tTy³ OBJ_id_smime_¯ ,16L ) 852  #SN_id_smime_¯_‘s_sigÃrLoÿtiÚ "id-smime-¯-‘s-sigÃrLoÿtiÚ" ) 853  #NID_id_smime_¯_‘s_sigÃrLoÿtiÚ 228 ) 854  #OBJ_id_smime_¯_‘s_sigÃrLoÿtiÚ OBJ_id_smime_¯ ,17L ) 856  #SN_id_smime_¯_‘s_sigÃrA‰r "id-smime-¯-‘s-sigÃrA‰r" ) 857  #NID_id_smime_¯_‘s_sigÃrA‰r 229 ) 858  #OBJ_id_smime_¯_‘s_sigÃrA‰r OBJ_id_smime_¯ ,18L ) 860  #SN_id_smime_¯_‘s_Ùh”SigC”t "id-smime-¯-‘s-Ùh”SigC”t" ) 861  #NID_id_smime_¯_‘s_Ùh”SigC”t 230 ) 862  #OBJ_id_smime_¯_‘s_Ùh”SigC”t OBJ_id_smime_¯ ,19L ) 864  #SN_id_smime_¯_‘s_cÚ‹ÁTime¡amp "id-smime-¯-‘s-cÚ‹ÁTime¡amp" ) 865  #NID_id_smime_¯_‘s_cÚ‹ÁTime¡amp 231 ) 866  #OBJ_id_smime_¯_‘s_cÚ‹ÁTime¡amp OBJ_id_smime_¯ ,20L ) 868  #SN_id_smime_¯_‘s_C”tifiÿ‹Refs "id-smime-¯-‘s-C”tifiÿ‹Refs" ) 869  #NID_id_smime_¯_‘s_C”tifiÿ‹Refs 232 ) 870  #OBJ_id_smime_¯_‘s_C”tifiÿ‹Refs OBJ_id_smime_¯ ,21L ) 872  #SN_id_smime_¯_‘s_RevoÿtiÚRefs "id-smime-¯-‘s-RevoÿtiÚRefs" ) 873  #NID_id_smime_¯_‘s_RevoÿtiÚRefs 233 ) 874  #OBJ_id_smime_¯_‘s_RevoÿtiÚRefs OBJ_id_smime_¯ ,22L ) 876  #SN_id_smime_¯_‘s_û¹V®ues "id-smime-¯-‘s-û¹V®ues" ) 877  #NID_id_smime_¯_‘s_û¹V®ues 234 ) 878  #OBJ_id_smime_¯_‘s_û¹V®ues OBJ_id_smime_¯ ,23L ) 880  #SN_id_smime_¯_‘s_»voÿtiÚV®ues "id-smime-¯-‘s-»voÿtiÚV®ues" ) 881  #NID_id_smime_¯_‘s_»voÿtiÚV®ues 235 ) 882  #OBJ_id_smime_¯_‘s_»voÿtiÚV®ues OBJ_id_smime_¯ ,24L ) 884  #SN_id_smime_¯_‘s_escTimeSmp "id-smime-¯-‘s-escTimeSmp" ) 885  #NID_id_smime_¯_‘s_escTimeSmp 236 ) 886  #OBJ_id_smime_¯_‘s_escTimeSmp OBJ_id_smime_¯ ,25L ) 888  #SN_id_smime_¯_‘s_û¹CRLTime¡amp "id-smime-¯-‘s-û¹CRLTime¡amp" ) 889  #NID_id_smime_¯_‘s_û¹CRLTime¡amp 237 ) 890  #OBJ_id_smime_¯_‘s_û¹CRLTime¡amp OBJ_id_smime_¯ ,26L ) 892  #SN_id_smime_¯_‘s_¬chiveTimeSmp "id-smime-¯-‘s-¬chiveTimeSmp" ) 893  #NID_id_smime_¯_‘s_¬chiveTimeSmp 238 ) 894  #OBJ_id_smime_¯_‘s_¬chiveTimeSmp OBJ_id_smime_¯ ,27L ) 896  #SN_id_smime_¯_sigÇtu»Ty³ "id-smime-¯-sigÇtu»Ty³" ) 897  #NID_id_smime_¯_sigÇtu»Ty³ 239 ) 898  #OBJ_id_smime_¯_sigÇtu»Ty³ OBJ_id_smime_¯ ,28L ) 900  #SN_id_smime_¯_dvcs_dvc "id-smime-¯-dvcs-dvc" ) 901  #NID_id_smime_¯_dvcs_dvc 240 ) 902  #OBJ_id_smime_¯_dvcs_dvc OBJ_id_smime_¯ ,29L ) 904  #SN_id_smime_®g_ESDHw™h3DES "id-smime-®g-ESDHw™h3DES" ) 905  #NID_id_smime_®g_ESDHw™h3DES 241 ) 906  #OBJ_id_smime_®g_ESDHw™h3DES OBJ_id_smime_®g ,1L ) 908  #SN_id_smime_®g_ESDHw™hRC2 "id-smime-®g-ESDHw™hRC2" ) 909  #NID_id_smime_®g_ESDHw™hRC2 242 ) 910  #OBJ_id_smime_®g_ESDHw™hRC2 OBJ_id_smime_®g ,2L ) 912  #SN_id_smime_®g_3DESw¿p "id-smime-®g-3DESw¿p" ) 913  #NID_id_smime_®g_3DESw¿p 243 ) 914  #OBJ_id_smime_®g_3DESw¿p OBJ_id_smime_®g ,3L ) 916  #SN_id_smime_®g_RC2w¿p "id-smime-®g-RC2w¿p" ) 917  #NID_id_smime_®g_RC2w¿p 244 ) 918  #OBJ_id_smime_®g_RC2w¿p OBJ_id_smime_®g ,4L ) 920  #SN_id_smime_®g_ESDH "id-smime-®g-ESDH" ) 921  #NID_id_smime_®g_ESDH 245 ) 922  #OBJ_id_smime_®g_ESDH OBJ_id_smime_®g ,5L ) 924  #SN_id_smime_®g_CMS3DESw¿p "id-smime-®g-CMS3DESw¿p" ) 925  #NID_id_smime_®g_CMS3DESw¿p 246 ) 926  #OBJ_id_smime_®g_CMS3DESw¿p OBJ_id_smime_®g ,6L ) 928  #SN_id_smime_®g_CMSRC2w¿p "id-smime-®g-CMSRC2w¿p" ) 929  #NID_id_smime_®g_CMSRC2w¿p 247 ) 930  #OBJ_id_smime_®g_CMSRC2w¿p OBJ_id_smime_®g ,7L ) 932  #SN_id_smime_cd_ld­ "id-smime-cd-ld­" ) 933  #NID_id_smime_cd_ld­ 248 ) 934  #OBJ_id_smime_cd_ld­ OBJ_id_smime_cd ,1L ) 936  #SN_id_smime_¥q_‘s_sqt_uri "id-smime-¥q-‘s-sqt-uri" ) 937  #NID_id_smime_¥q_‘s_sqt_uri 249 ) 938  #OBJ_id_smime_¥q_‘s_sqt_uri OBJ_id_smime_¥q ,1L ) 940  #SN_id_smime_¥q_‘s_sqt_unÙiû "id-smime-¥q-‘s-sqt-unÙiû" ) 941  #NID_id_smime_¥q_‘s_sqt_unÙiû 250 ) 942  #OBJ_id_smime_¥q_‘s_sqt_unÙiû OBJ_id_smime_¥q ,2L ) 944  #SN_id_smime_ùi_‘s_´oofOfOrigš "id-smime-ùi-‘s-´oofOfOrigš" ) 945  #NID_id_smime_ùi_‘s_´oofOfOrigš 251 ) 946  #OBJ_id_smime_ùi_‘s_´oofOfOrigš OBJ_id_smime_ùi ,1L ) 948  #SN_id_smime_ùi_‘s_´oofOfReût "id-smime-ùi-‘s-´oofOfReût" ) 949  #NID_id_smime_ùi_‘s_´oofOfReût 252 ) 950  #OBJ_id_smime_ùi_‘s_´oofOfReût OBJ_id_smime_ùi ,2L ) 952  #SN_id_smime_ùi_‘s_´oofOfD–iv”y "id-smime-ùi-‘s-´oofOfD–iv”y" ) 953  #NID_id_smime_ùi_‘s_´oofOfD–iv”y 253 ) 954  #OBJ_id_smime_ùi_‘s_´oofOfD–iv”y OBJ_id_smime_ùi ,3L ) 956  #SN_id_smime_ùi_‘s_´oofOfS’d” "id-smime-ùi-‘s-´oofOfS’d”" ) 957  #NID_id_smime_ùi_‘s_´oofOfS’d” 254 ) 958  #OBJ_id_smime_ùi_‘s_´oofOfS’d” OBJ_id_smime_ùi ,4L ) 960  #SN_id_smime_ùi_‘s_´oofOfAµrov® "id-smime-ùi-‘s-´oofOfAµrov®" ) 961  #NID_id_smime_ùi_‘s_´oofOfAµrov® 255 ) 962  #OBJ_id_smime_ùi_‘s_´oofOfAµrov® OBJ_id_smime_ùi ,5L ) 964  #SN_id_smime_ùi_‘s_´oofOfC»©iÚ "id-smime-ùi-‘s-´oofOfC»©iÚ" ) 965  #NID_id_smime_ùi_‘s_´oofOfC»©iÚ 256 ) 966  #OBJ_id_smime_ùi_‘s_´oofOfC»©iÚ OBJ_id_smime_ùi ,6L ) 968  #LN_ä›ndlyName "ä›ndlyName" ) 969  #NID_ä›ndlyName 156 ) 970  #OBJ_ä›ndlyName OBJ_pkcs9 ,20L ) 972  #LN_loÿlKeyID "loÿlKeyID" ) 973  #NID_loÿlKeyID 157 ) 974  #OBJ_loÿlKeyID OBJ_pkcs9 ,21L ) 976  #SN_ms_c¥_Çme "CSPName" ) 977  #LN_ms_c¥_Çme "Miüosoá CSP Name" ) 978  #NID_ms_c¥_Çme 417 ) 979  #OBJ_ms_c¥_Çme 1L,3L,6L,1L,4L,1L,311L,17L,1L ) 981  #OBJ_û¹Ty³s OBJ_pkcs9 ,22L ) 983  #LN_x509C”tifiÿ‹ "x509C”tifiÿ‹" ) 984  #NID_x509C”tifiÿ‹ 158 ) 985  #OBJ_x509C”tifiÿ‹ OBJ_û¹Ty³s ,1L ) 987  #LN_sdsiC”tifiÿ‹ "sdsiC”tifiÿ‹" ) 988  #NID_sdsiC”tifiÿ‹ 159 ) 989  #OBJ_sdsiC”tifiÿ‹ OBJ_û¹Ty³s ,2L ) 991  #OBJ_ülTy³s OBJ_pkcs9 ,23L ) 993  #LN_x509C¾ "x509C¾" ) 994  #NID_x509C¾ 160 ) 995  #OBJ_x509C¾ OBJ_ülTy³s ,1L ) 997  #OBJ_pkcs12 OBJ_pkcs ,12L ) 999  #OBJ_pkcs12_pbeids OBJ_pkcs12 ,1L ) 1001  #SN_pbe_W™hSHA1And128B™RC4 "PBE-SHA1-RC4-128" ) 1002  #LN_pbe_W™hSHA1And128B™RC4 "pbeW™hSHA1And128B™RC4" ) 1003  #NID_pbe_W™hSHA1And128B™RC4 144 ) 1004  #OBJ_pbe_W™hSHA1And128B™RC4 OBJ_pkcs12_pbeids ,1L ) 1006  #SN_pbe_W™hSHA1And40B™RC4 "PBE-SHA1-RC4-40" ) 1007  #LN_pbe_W™hSHA1And40B™RC4 "pbeW™hSHA1And40B™RC4" ) 1008  #NID_pbe_W™hSHA1And40B™RC4 145 ) 1009  #OBJ_pbe_W™hSHA1And40B™RC4 OBJ_pkcs12_pbeids ,2L ) 1011  #SN_pbe_W™hSHA1And3_Key_TrËDES_CBC "PBE-SHA1-3DES" ) 1012  #LN_pbe_W™hSHA1And3_Key_TrËDES_CBC "pbeW™hSHA1And3-KeyTrËDES-CBC" ) 1013  #NID_pbe_W™hSHA1And3_Key_TrËDES_CBC 146 ) 1014  #OBJ_pbe_W™hSHA1And3_Key_TrËDES_CBC OBJ_pkcs12_pbeids ,3L ) 1016  #SN_pbe_W™hSHA1And2_Key_TrËDES_CBC "PBE-SHA1-2DES" ) 1017  #LN_pbe_W™hSHA1And2_Key_TrËDES_CBC "pbeW™hSHA1And2-KeyTrËDES-CBC" ) 1018  #NID_pbe_W™hSHA1And2_Key_TrËDES_CBC 147 ) 1019  #OBJ_pbe_W™hSHA1And2_Key_TrËDES_CBC OBJ_pkcs12_pbeids ,4L ) 1021  #SN_pbe_W™hSHA1And128B™RC2_CBC "PBE-SHA1-RC2-128" ) 1022  #LN_pbe_W™hSHA1And128B™RC2_CBC "pbeW™hSHA1And128B™RC2-CBC" ) 1023  #NID_pbe_W™hSHA1And128B™RC2_CBC 148 ) 1024  #OBJ_pbe_W™hSHA1And128B™RC2_CBC OBJ_pkcs12_pbeids ,5L ) 1026  #SN_pbe_W™hSHA1And40B™RC2_CBC "PBE-SHA1-RC2-40" ) 1027  #LN_pbe_W™hSHA1And40B™RC2_CBC "pbeW™hSHA1And40B™RC2-CBC" ) 1028  #NID_pbe_W™hSHA1And40B™RC2_CBC 149 ) 1029  #OBJ_pbe_W™hSHA1And40B™RC2_CBC OBJ_pkcs12_pbeids ,6L ) 1031  #OBJ_pkcs12_V”siÚ1 OBJ_pkcs12 ,10L ) 1033  #OBJ_pkcs12_BagIds OBJ_pkcs12_V”siÚ1 ,1L ) 1035  #LN_keyBag "keyBag" ) 1036  #NID_keyBag 150 ) 1037  #OBJ_keyBag OBJ_pkcs12_BagIds ,1L ) 1039  #LN_pkcs8ShroudedKeyBag "pkcs8ShroudedKeyBag" ) 1040  #NID_pkcs8ShroudedKeyBag 151 ) 1041  #OBJ_pkcs8ShroudedKeyBag OBJ_pkcs12_BagIds ,2L ) 1043  #LN_û¹Bag "û¹Bag" ) 1044  #NID_û¹Bag 152 ) 1045  #OBJ_û¹Bag OBJ_pkcs12_BagIds ,3L ) 1047  #LN_ülBag "ülBag" ) 1048  #NID_ülBag 153 ) 1049  #OBJ_ülBag OBJ_pkcs12_BagIds ,4L ) 1051  #LN_£ü‘Bag "£ü‘Bag" ) 1052  #NID_£ü‘Bag 154 ) 1053  #OBJ_£ü‘Bag OBJ_pkcs12_BagIds ,5L ) 1055  #LN_§ãCÚ‹ÁsBag "§ãCÚ‹ÁsBag" ) 1056  #NID_§ãCÚ‹ÁsBag 155 ) 1057  #OBJ_§ãCÚ‹ÁsBag OBJ_pkcs12_BagIds ,6L ) 1059  #SN_md2 "MD2" ) 1060  #LN_md2 "md2" ) 1061  #NID_md2 3 ) 1062  #OBJ_md2 OBJ_r§dsi ,2L,2L ) 1064  #SN_md4 "MD4" ) 1065  #LN_md4 "md4" ) 1066  #NID_md4 257 ) 1067  #OBJ_md4 OBJ_r§dsi ,2L,4L ) 1069  #SN_md5 "MD5" ) 1070  #LN_md5 "md5" ) 1071  #NID_md5 4 ) 1072  #OBJ_md5 OBJ_r§dsi ,2L,5L ) 1074  #SN_md5_sha1 "MD5-SHA1" ) 1075  #LN_md5_sha1 "md5-sha1" ) 1076  #NID_md5_sha1 114 ) 1078  #LN_hmacW™hSHA1 "hmacW™hSHA1" ) 1079  #NID_hmacW™hSHA1 163 ) 1080  #OBJ_hmacW™hSHA1 OBJ_r§dsi ,2L,7L ) 1082  #SN_rc2_cbc "RC2-CBC" ) 1083  #LN_rc2_cbc "rc2-cbc" ) 1084  #NID_rc2_cbc 37 ) 1085  #OBJ_rc2_cbc OBJ_r§dsi ,3L,2L ) 1087  #SN_rc2_ecb "RC2-ECB" ) 1088  #LN_rc2_ecb "rc2-ecb" ) 1089  #NID_rc2_ecb 38 ) 1091  #SN_rc2_cfb64 "RC2-CFB" ) 1092  #LN_rc2_cfb64 "rc2-cfb" ) 1093  #NID_rc2_cfb64 39 ) 1095  #SN_rc2_ofb64 "RC2-OFB" ) 1096  #LN_rc2_ofb64 "rc2-ofb" ) 1097  #NID_rc2_ofb64 40 ) 1099  #SN_rc2_40_cbc "RC2-40-CBC" ) 1100  #LN_rc2_40_cbc "rc2-40-cbc" ) 1101  #NID_rc2_40_cbc 98 ) 1103  #SN_rc2_64_cbc "RC2-64-CBC" ) 1104  #LN_rc2_64_cbc "rc2-64-cbc" ) 1105  #NID_rc2_64_cbc 166 ) 1107  #SN_rc4 "RC4" ) 1108  #LN_rc4 "rc4" ) 1109  #NID_rc4 5 ) 1110  #OBJ_rc4 OBJ_r§dsi ,3L,4L ) 1112  #SN_rc4_40 "RC4-40" ) 1113  #LN_rc4_40 "rc4-40" ) 1114  #NID_rc4_40 97 ) 1116  #SN_des_ede3_cbc "DES-EDE3-CBC" ) 1117  #LN_des_ede3_cbc "des-ede3-cbc" ) 1118  #NID_des_ede3_cbc 44 ) 1119  #OBJ_des_ede3_cbc OBJ_r§dsi ,3L,7L ) 1121  #SN_rc5_cbc "RC5-CBC" ) 1122  #LN_rc5_cbc "rc5-cbc" ) 1123  #NID_rc5_cbc 120 ) 1124  #OBJ_rc5_cbc OBJ_r§dsi ,3L,8L ) 1126  #SN_rc5_ecb "RC5-ECB" ) 1127  #LN_rc5_ecb "rc5-ecb" ) 1128  #NID_rc5_ecb 121 ) 1130  #SN_rc5_cfb64 "RC5-CFB" ) 1131  #LN_rc5_cfb64 "rc5-cfb" ) 1132  #NID_rc5_cfb64 122 ) 1134  #SN_rc5_ofb64 "RC5-OFB" ) 1135  #LN_rc5_ofb64 "rc5-ofb" ) 1136  #NID_rc5_ofb64 123 ) 1138  #SN_ms_ext_»q "msExtReq" ) 1139  #LN_ms_ext_»q "Miüosoá Ex‹nsiÚ Reque¡" ) 1140  #NID_ms_ext_»q 171 ) 1141  #OBJ_ms_ext_»q 1L,3L,6L,1L,4L,1L,311L,2L,1L,14L ) 1143  #SN_ms_code_šd "msCodeInd" ) 1144  #LN_ms_code_šd "Miüosoá Individu® CodSignšg" ) 1145  #NID_ms_code_šd 134 ) 1146  #OBJ_ms_code_šd 1L,3L,6L,1L,4L,1L,311L,2L,1L,21L ) 1148  #SN_ms_code_com "msCodeCom" ) 1149  #LN_ms_code_com "Miüosoá Comm”cŸÈCodSignšg" ) 1150  #NID_ms_code_com 135 ) 1151  #OBJ_ms_code_com 1L,3L,6L,1L,4L,1L,311L,2L,1L,22L ) 1153  #SN_ms_ùl_sign "msCTLSign" ) 1154  #LN_ms_ùl_sign "Miüosoá Tru¡ Li¡ Signšg" ) 1155  #NID_ms_ùl_sign 136 ) 1156  #OBJ_ms_ùl_sign 1L,3L,6L,1L,4L,1L,311L,10L,3L,1L ) 1158  #SN_ms_sgc "msSGC" ) 1159  #LN_ms_sgc "Miüosoá S”v” G©ed Cry±o" ) 1160  #NID_ms_sgc 137 ) 1161  #OBJ_ms_sgc 1L,3L,6L,1L,4L,1L,311L,10L,3L,3L ) 1163  #SN_ms_efs "msEFS" ) 1164  #LN_ms_efs "Miüosoá Enüy±ed FžSy¡em" ) 1165  #NID_ms_efs 138 ) 1166  #OBJ_ms_efs 1L,3L,6L,1L,4L,1L,311L,10L,3L,4L ) 1168  #SN_ms_sm¬tÿrd_logš "msSm¬tÿrdLogš" ) 1169  #LN_ms_sm¬tÿrd_logš "Miüosoá Sm¬tÿrdlogš" ) 1170  #NID_ms_sm¬tÿrd_logš 648 ) 1171  #OBJ_ms_sm¬tÿrd_logš 1L,3L,6L,1L,4L,1L,311L,20L,2L,2L ) 1173  #SN_ms_u² "msUPN" ) 1174  #LN_ms_u² "Miüosoá Univ”§ÈPršc® Name" ) 1175  #NID_ms_u² 649 ) 1176  #OBJ_ms_u² 1L,3L,6L,1L,4L,1L,311L,20L,2L,3L ) 1178  #SN_id—_cbc "IDEA-CBC" ) 1179  #LN_id—_cbc "id—-cbc" ) 1180  #NID_id—_cbc 34 ) 1181  #OBJ_id—_cbc 1L,3L,6L,1L,4L,1L,188L,7L,1L,1L,2L ) 1183  #SN_id—_ecb "IDEA-ECB" ) 1184  #LN_id—_ecb "id—-ecb" ) 1185  #NID_id—_ecb 36 ) 1187  #SN_id—_cfb64 "IDEA-CFB" ) 1188  #LN_id—_cfb64 "id—-cfb" ) 1189  #NID_id—_cfb64 35 ) 1191  #SN_id—_ofb64 "IDEA-OFB" ) 1192  #LN_id—_ofb64 "id—-ofb" ) 1193  #NID_id—_ofb64 46 ) 1195  #SN_bf_cbc "BF-CBC" ) 1196  #LN_bf_cbc "bf-cbc" ) 1197  #NID_bf_cbc 91 ) 1198  #OBJ_bf_cbc 1L,3L,6L,1L,4L,1L,3029L,1L,2L ) 1200  #SN_bf_ecb "BF-ECB" ) 1201  #LN_bf_ecb "bf-ecb" ) 1202  #NID_bf_ecb 92 ) 1204  #SN_bf_cfb64 "BF-CFB" ) 1205  #LN_bf_cfb64 "bf-cfb" ) 1206  #NID_bf_cfb64 93 ) 1208  #SN_bf_ofb64 "BF-OFB" ) 1209  #LN_bf_ofb64 "bf-ofb" ) 1210  #NID_bf_ofb64 94 ) 1212  #SN_id_pkix "PKIX" ) 1213  #NID_id_pkix 127 ) 1214  #OBJ_id_pkix 1L,3L,6L,1L,5L,5L,7L ) 1216  #SN_id_pkix_mod "id-pkix-mod" ) 1217  #NID_id_pkix_mod 258 ) 1218  #OBJ_id_pkix_mod OBJ_id_pkix ,0L ) 1220  #SN_id_³ "id-³" ) 1221  #NID_id_³ 175 ) 1222  #OBJ_id_³ OBJ_id_pkix ,1L ) 1224  #SN_id_qt "id-qt" ) 1225  #NID_id_qt 259 ) 1226  #OBJ_id_qt OBJ_id_pkix ,2L ) 1228  #SN_id_kp "id-kp" ) 1229  #NID_id_kp 128 ) 1230  #OBJ_id_kp OBJ_id_pkix ,3L ) 1232  #SN_id_™ "id-™" ) 1233  #NID_id_™ 260 ) 1234  #OBJ_id_™ OBJ_id_pkix ,4L ) 1236  #SN_id_pk "id-pk" ) 1237  #NID_id_pk 261 ) 1238  #OBJ_id_pk OBJ_id_pkix ,5L ) 1240  #SN_id_®g "id-®g" ) 1241  #NID_id_®g 262 ) 1242  #OBJ_id_®g OBJ_id_pkix ,6L ) 1244  #SN_id_cmc "id-cmc" ) 1245  #NID_id_cmc 263 ) 1246  #OBJ_id_cmc OBJ_id_pkix ,7L ) 1248  #SN_id_Ú "id-Ú" ) 1249  #NID_id_Ú 264 ) 1250  #OBJ_id_Ú OBJ_id_pkix ,8L ) 1252  #SN_id_pda "id-pda" ) 1253  #NID_id_pda 265 ) 1254  #OBJ_id_pda OBJ_id_pkix ,9L ) 1256  #SN_id_aÿ "id-aÿ" ) 1257  #NID_id_aÿ 266 ) 1258  #OBJ_id_aÿ OBJ_id_pkix ,10L ) 1260  #SN_id_qcs "id-qcs" ) 1261  #NID_id_qcs 267 ) 1262  #OBJ_id_qcs OBJ_id_pkix ,11L ) 1264  #SN_id_cù "id-cù" ) 1265  #NID_id_cù 268 ) 1266  #OBJ_id_cù OBJ_id_pkix ,12L ) 1268  #SN_id_µl "id-µl" ) 1269  #NID_id_µl 662 ) 1270  #OBJ_id_µl OBJ_id_pkix ,21L ) 1272  #SN_id_ad "id-ad" ) 1273  #NID_id_ad 176 ) 1274  #OBJ_id_ad OBJ_id_pkix ,48L ) 1276  #SN_id_pkix1_ex¶ic™_88 "id-pkix1-ex¶ic™-88" ) 1277  #NID_id_pkix1_ex¶ic™_88 269 ) 1278  #OBJ_id_pkix1_ex¶ic™_88 OBJ_id_pkix_mod ,1L ) 1280  #SN_id_pkix1_im¶ic™_88 "id-pkix1-im¶ic™-88" ) 1281  #NID_id_pkix1_im¶ic™_88 270 ) 1282  #OBJ_id_pkix1_im¶ic™_88 OBJ_id_pkix_mod ,2L ) 1284  #SN_id_pkix1_ex¶ic™_93 "id-pkix1-ex¶ic™-93" ) 1285  #NID_id_pkix1_ex¶ic™_93 271 ) 1286  #OBJ_id_pkix1_ex¶ic™_93 OBJ_id_pkix_mod ,3L ) 1288  #SN_id_pkix1_im¶ic™_93 "id-pkix1-im¶ic™-93" ) 1289  #NID_id_pkix1_im¶ic™_93 272 ) 1290  #OBJ_id_pkix1_im¶ic™_93 OBJ_id_pkix_mod ,4L ) 1292  #SN_id_mod_ümf "id-mod-ümf" ) 1293  #NID_id_mod_ümf 273 ) 1294  #OBJ_id_mod_ümf OBJ_id_pkix_mod ,5L ) 1296  #SN_id_mod_cmc "id-mod-cmc" ) 1297  #NID_id_mod_cmc 274 ) 1298  #OBJ_id_mod_cmc OBJ_id_pkix_mod ,6L ) 1300  #SN_id_mod_k—_´ofže_88 "id-mod-k—-´ofže-88" ) 1301  #NID_id_mod_k—_´ofže_88 275 ) 1302  #OBJ_id_mod_k—_´ofže_88 OBJ_id_pkix_mod ,7L ) 1304  #SN_id_mod_k—_´ofže_93 "id-mod-k—-´ofže-93" ) 1305  #NID_id_mod_k—_´ofže_93 276 ) 1306  #OBJ_id_mod_k—_´ofže_93 OBJ_id_pkix_mod ,8L ) 1308  #SN_id_mod_cmp "id-mod-cmp" ) 1309  #NID_id_mod_cmp 277 ) 1310  #OBJ_id_mod_cmp OBJ_id_pkix_mod ,9L ) 1312  #SN_id_mod_qu®if›d_û¹_88 "id-mod-qu®if›d-û¹-88" ) 1313  #NID_id_mod_qu®if›d_û¹_88 278 ) 1314  #OBJ_id_mod_qu®if›d_û¹_88 OBJ_id_pkix_mod ,10L ) 1316  #SN_id_mod_qu®if›d_û¹_93 "id-mod-qu®if›d-û¹-93" ) 1317  #NID_id_mod_qu®if›d_û¹_93 279 ) 1318  #OBJ_id_mod_qu®if›d_û¹_93 OBJ_id_pkix_mod ,11L ) 1320  #SN_id_mod_©Œibu‹_û¹ "id-mod-©Œibu‹-û¹" ) 1321  #NID_id_mod_©Œibu‹_û¹ 280 ) 1322  #OBJ_id_mod_©Œibu‹_û¹ OBJ_id_pkix_mod ,12L ) 1324  #SN_id_mod_time¡amp_´ÙocÞ "id-mod-time¡amp-´ÙocÞ" ) 1325  #NID_id_mod_time¡amp_´ÙocÞ 281 ) 1326  #OBJ_id_mod_time¡amp_´ÙocÞ OBJ_id_pkix_mod ,13L ) 1328  #SN_id_mod_oc¥ "id-mod-oc¥" ) 1329  #NID_id_mod_oc¥ 282 ) 1330  #OBJ_id_mod_oc¥ OBJ_id_pkix_mod ,14L ) 1332  #SN_id_mod_dvcs "id-mod-dvcs" ) 1333  #NID_id_mod_dvcs 283 ) 1334  #OBJ_id_mod_dvcs OBJ_id_pkix_mod ,15L ) 1336  #SN_id_mod_cmp2000 "id-mod-cmp2000" ) 1337  #NID_id_mod_cmp2000 284 ) 1338  #OBJ_id_mod_cmp2000 OBJ_id_pkix_mod ,16L ) 1340  #SN_šfo_acûss "authÜ™yInfoAcûss" ) 1341  #LN_šfo_acûss "AuthÜ™y InfÜm©iÚ Acûss" ) 1342  #NID_šfo_acûss 177 ) 1343  #OBJ_šfo_acûss OBJ_id_³ ,1L ) 1345  #SN_biom‘ricInfo "biom‘ricInfo" ) 1346  #LN_biom‘ricInfo "Biom‘riøInfo" ) 1347  #NID_biom‘ricInfo 285 ) 1348  #OBJ_biom‘ricInfo OBJ_id_³ ,2L ) 1350  #SN_qcS‹m’ts "qcS‹m’ts" ) 1351  #NID_qcS‹m’ts 286 ) 1352  #OBJ_qcS‹m’ts OBJ_id_³ ,3L ) 1354  #SN_ac_aud™EÁ™y "ac-aud™EÁ™y" ) 1355  #NID_ac_aud™EÁ™y 287 ) 1356  #OBJ_ac_aud™EÁ™y OBJ_id_³ ,4L ) 1358  #SN_ac_rg‘šg "ac-rg‘šg" ) 1359  #NID_ac_rg‘šg 288 ) 1360  #OBJ_ac_rg‘šg OBJ_id_³ ,5L ) 1362  #SN_¯CÚŒÞs "¯CÚŒÞs" ) 1363  #NID_¯CÚŒÞs 289 ) 1364  #OBJ_¯CÚŒÞs OBJ_id_³ ,6L ) 1366  #SN_sbgp_AddrBlock "sbgp-AddrBlock" ) 1367  #NID_sbgp_AddrBlock 290 ) 1368  #OBJ_sbgp_AddrBlock OBJ_id_³ ,7L ) 1370  #SN_sbgp_autÚomousSysNum "sbgp-autÚomousSysNum" ) 1371  #NID_sbgp_autÚomousSysNum 291 ) 1372  #OBJ_sbgp_autÚomousSysNum OBJ_id_³ ,8L ) 1374  #SN_sbgp_rou‹rId’tif›r "sbgp-rou‹rId’tif›r" ) 1375  #NID_sbgp_rou‹rId’tif›r 292 ) 1376  #OBJ_sbgp_rou‹rId’tif›r OBJ_id_³ ,9L ) 1378  #SN_ac_´oxyšg "ac-´oxyšg" ) 1379  #NID_ac_´oxyšg 397 ) 1380  #OBJ_ac_´oxyšg OBJ_id_³ ,10L ) 1382  #SN_sšfo_acûss "subjeùInfoAcûss" ) 1383  #LN_sšfo_acûss "Subjeù InfÜm©iÚ Acûss" ) 1384  #NID_sšfo_acûss 398 ) 1385  #OBJ_sšfo_acûss OBJ_id_³ ,11L ) 1387  #SN_´oxyC”tInfo "´oxyC”tInfo" ) 1388  #LN_´oxyC”tInfo "Proxy C”tifiÿ‹ InfÜm©iÚ" ) 1389  #NID_´oxyC”tInfo 663 ) 1390  #OBJ_´oxyC”tInfo OBJ_id_³ ,14L ) 1392  #SN_id_qt_ýs "id-qt-ýs" ) 1393  #LN_id_qt_ýs "PÞicy Qu®if›¸CPS" ) 1394  #NID_id_qt_ýs 164 ) 1395  #OBJ_id_qt_ýs OBJ_id_qt ,1L ) 1397  #SN_id_qt_unÙiû "id-qt-unÙiû" ) 1398  #LN_id_qt_unÙiû "PÞicy Qu®if›¸U£¸NÙiû" ) 1399  #NID_id_qt_unÙiû 165 ) 1400  #OBJ_id_qt_unÙiû OBJ_id_qt ,2L ) 1402  #SN_‹xtNÙiû "‹xtNÙiû" ) 1403  #NID_‹xtNÙiû 293 ) 1404  #OBJ_‹xtNÙiû OBJ_id_qt ,3L ) 1406  #SN_£rv”_auth "£rv”Auth" ) 1407  #LN_£rv”_auth "TLS Web S”v” Auth’tiÿtiÚ" ) 1408  #NID_£rv”_auth 129 ) 1409  #OBJ_£rv”_auth OBJ_id_kp ,1L ) 1411  #SN_þ›Á_auth "þ›ÁAuth" ) 1412  #LN_þ›Á_auth "TLS Web Cl›Á Auth’tiÿtiÚ" ) 1413  #NID_þ›Á_auth 130 ) 1414  #OBJ_þ›Á_auth OBJ_id_kp ,2L ) 1416  #SN_code_sign "codeSignšg" ) 1417  #LN_code_sign "CodSignšg" ) 1418  #NID_code_sign 131 ) 1419  #OBJ_code_sign OBJ_id_kp ,3L ) 1421  #SN_emaž_´Ùeù "emažPrÙeùiÚ" ) 1422  #LN_emaž_´Ùeù "E-maž PrÙeùiÚ" ) 1423  #NID_emaž_´Ùeù 132 ) 1424  #OBJ_emaž_´Ùeù OBJ_id_kp ,4L ) 1426  #SN_£cEndSy¡em "£cEndSy¡em" ) 1427  #LN_£cEndSy¡em "IPSeøEnd Sy¡em" ) 1428  #NID_£cEndSy¡em 294 ) 1429  #OBJ_£cEndSy¡em OBJ_id_kp ,5L ) 1431  #SN_£cTu– "£cTu–" ) 1432  #LN_£cTu– "IPSeøTu–" ) 1433  #NID_£cTu– 295 ) 1434  #OBJ_£cTu– OBJ_id_kp ,6L ) 1436  #SN_£cU£r "£cU£r" ) 1437  #LN_£cU£r "IPSeøU£r" ) 1438  #NID_£cU£r 296 ) 1439  #OBJ_£cU£r OBJ_id_kp ,7L ) 1441  #SN_time_¡amp "timeSmpšg" ) 1442  #LN_time_¡amp "TimSmpšg" ) 1443  #NID_time_¡amp 133 ) 1444  #OBJ_time_¡amp OBJ_id_kp ,8L ) 1446  #SN_OCSP_sign "OCSPSignšg" ) 1447  #LN_OCSP_sign "OCSP Signšg" ) 1448  #NID_OCSP_sign 180 ) 1449  #OBJ_OCSP_sign OBJ_id_kp ,9L ) 1451  #SN_dvcs "DVCS" ) 1452  #LN_dvcs "dvcs" ) 1453  #NID_dvcs 297 ) 1454  #OBJ_dvcs OBJ_id_kp ,10L ) 1456  #SN_id_™_ÿPrÙEncC”t "id-™-ÿPrÙEncC”t" ) 1457  #NID_id_™_ÿPrÙEncC”t 298 ) 1458  #OBJ_id_™_ÿPrÙEncC”t OBJ_id_™ ,1L ) 1460  #SN_id_™_signKeyPaœTy³s "id-™-signKeyPaœTy³s" ) 1461  #NID_id_™_signKeyPaœTy³s 299 ) 1462  #OBJ_id_™_signKeyPaœTy³s OBJ_id_™ ,2L ) 1464  #SN_id_™_’cKeyPaœTy³s "id-™-’cKeyPaœTy³s" ) 1465  #NID_id_™_’cKeyPaœTy³s 300 ) 1466  #OBJ_id_™_’cKeyPaœTy³s OBJ_id_™ ,3L ) 1468  #SN_id_™_´eã¼edSymmAlg "id-™-´eã¼edSymmAlg" ) 1469  #NID_id_™_´eã¼edSymmAlg 301 ) 1470  #OBJ_id_™_´eã¼edSymmAlg OBJ_id_™ ,4L ) 1472  #SN_id_™_ÿKeyUpd©eInfo "id-™-ÿKeyUpd©eInfo" ) 1473  #NID_id_™_ÿKeyUpd©eInfo 302 ) 1474  #OBJ_id_™_ÿKeyUpd©eInfo OBJ_id_™ ,5L ) 1476  #SN_id_™_cu¼’tCRL "id-™-cu¼’tCRL" ) 1477  #NID_id_™_cu¼’tCRL 303 ) 1478  #OBJ_id_™_cu¼’tCRL OBJ_id_™ ,6L ) 1480  #SN_id_™_unsuµÜ‹dOIDs "id-™-unsuµÜ‹dOIDs" ) 1481  #NID_id_™_unsuµÜ‹dOIDs 304 ) 1482  #OBJ_id_™_unsuµÜ‹dOIDs OBJ_id_™ ,7L ) 1484  #SN_id_™_subsütiÚReque¡ "id-™-subsütiÚReque¡" ) 1485  #NID_id_™_subsütiÚReque¡ 305 ) 1486  #OBJ_id_™_subsütiÚReque¡ OBJ_id_™ ,8L ) 1488  #SN_id_™_subsütiÚRe¥Ú£ "id-™-subsütiÚRe¥Ú£" ) 1489  #NID_id_™_subsütiÚRe¥Ú£ 306 ) 1490  #OBJ_id_™_subsütiÚRe¥Ú£ OBJ_id_™ ,9L ) 1492  #SN_id_™_keyPaœP¬amReq "id-™-keyPaœP¬amReq" ) 1493  #NID_id_™_keyPaœP¬amReq 307 ) 1494  #OBJ_id_™_keyPaœP¬amReq OBJ_id_™ ,10L ) 1496  #SN_id_™_keyPaœP¬amR• "id-™-keyPaœP¬amR•" ) 1497  #NID_id_™_keyPaœP¬amR• 308 ) 1498  #OBJ_id_™_keyPaœP¬amR• OBJ_id_™ ,11L ) 1500  #SN_id_™_»vPas¥h¿£ "id-™-»vPas¥h¿£" ) 1501  #NID_id_™_»vPas¥h¿£ 309 ) 1502  #OBJ_id_™_»vPas¥h¿£ OBJ_id_™ ,12L ) 1504  #SN_id_™_im¶ic™CÚfœm "id-™-im¶ic™CÚfœm" ) 1505  #NID_id_™_im¶ic™CÚfœm 310 ) 1506  #OBJ_id_™_im¶ic™CÚfœm OBJ_id_™ ,13L ) 1508  #SN_id_™_cÚfœmWa™Time "id-™-cÚfœmWa™Time" ) 1509  #NID_id_™_cÚfœmWa™Time 311 ) 1510  #OBJ_id_™_cÚfœmWa™Time OBJ_id_™ ,14L ) 1512  #SN_id_™_ÜigPKIMes§ge "id-™-ÜigPKIMes§ge" ) 1513  #NID_id_™_ÜigPKIMes§ge 312 ) 1514  #OBJ_id_™_ÜigPKIMes§ge OBJ_id_™ ,15L ) 1516  #SN_id_»gCŒl "id-»gCŒl" ) 1517  #NID_id_»gCŒl 313 ) 1518  #OBJ_id_»gCŒl OBJ_id_pk ,1L ) 1520  #SN_id_»gInfo "id-»gInfo" ) 1521  #NID_id_»gInfo 314 ) 1522  #OBJ_id_»gInfo OBJ_id_pk ,2L ) 1524  #SN_id_»gCŒl_»gTok’ "id-»gCŒl-»gTok’" ) 1525  #NID_id_»gCŒl_»gTok’ 315 ) 1526  #OBJ_id_»gCŒl_»gTok’ OBJ_id_»gCŒl ,1L ) 1528  #SN_id_»gCŒl_auth’tiÿtÜ "id-»gCŒl-auth’tiÿtÜ" ) 1529  #NID_id_»gCŒl_auth’tiÿtÜ 316 ) 1530  #OBJ_id_»gCŒl_auth’tiÿtÜ OBJ_id_»gCŒl ,2L ) 1532  #SN_id_»gCŒl_pkiPubliÿtiÚInfo "id-»gCŒl-pkiPubliÿtiÚInfo" ) 1533  #NID_id_»gCŒl_pkiPubliÿtiÚInfo 317 ) 1534  #OBJ_id_»gCŒl_pkiPubliÿtiÚInfo OBJ_id_»gCŒl ,3L ) 1536  #SN_id_»gCŒl_pkiArchiveO±iÚs "id-»gCŒl-pkiArchiveO±iÚs" ) 1537  #NID_id_»gCŒl_pkiArchiveO±iÚs 318 ) 1538  #OBJ_id_»gCŒl_pkiArchiveO±iÚs OBJ_id_»gCŒl ,4L ) 1540  #SN_id_»gCŒl_ÞdC”tID "id-»gCŒl-ÞdC”tID" ) 1541  #NID_id_»gCŒl_ÞdC”tID 319 ) 1542  #OBJ_id_»gCŒl_ÞdC”tID OBJ_id_»gCŒl ,5L ) 1544  #SN_id_»gCŒl_´ÙocÞEnüKey "id-»gCŒl-´ÙocÞEnüKey" ) 1545  #NID_id_»gCŒl_´ÙocÞEnüKey 320 ) 1546  #OBJ_id_»gCŒl_´ÙocÞEnüKey OBJ_id_»gCŒl ,6L ) 1548  #SN_id_»gInfo_utf8Paœs "id-»gInfo-utf8Paœs" ) 1549  #NID_id_»gInfo_utf8Paœs 321 ) 1550  #OBJ_id_»gInfo_utf8Paœs OBJ_id_»gInfo ,1L ) 1552  #SN_id_»gInfo_û¹Req "id-»gInfo-û¹Req" ) 1553  #NID_id_»gInfo_û¹Req 322 ) 1554  #OBJ_id_»gInfo_û¹Req OBJ_id_»gInfo ,2L ) 1556  #SN_id_®g_des40 "id-®g-des40" ) 1557  #NID_id_®g_des40 323 ) 1558  #OBJ_id_®g_des40 OBJ_id_®g ,1L ) 1560  #SN_id_®g_noSigÇtu» "id-®g-noSigÇtu»" ) 1561  #NID_id_®g_noSigÇtu» 324 ) 1562  #OBJ_id_®g_noSigÇtu» OBJ_id_®g ,2L ) 1564  #SN_id_®g_dh_sig_hmac_sha1 "id-®g-dh-sig-hmac-sha1" ) 1565  #NID_id_®g_dh_sig_hmac_sha1 325 ) 1566  #OBJ_id_®g_dh_sig_hmac_sha1 OBJ_id_®g ,3L ) 1568  #SN_id_®g_dh_pÝ "id-®g-dh-pÝ" ) 1569  #NID_id_®g_dh_pÝ 326 ) 1570  #OBJ_id_®g_dh_pÝ OBJ_id_®g ,4L ) 1572  #SN_id_cmc_¡©usInfo "id-cmc-¡©usInfo" ) 1573  #NID_id_cmc_¡©usInfo 327 ) 1574  #OBJ_id_cmc_¡©usInfo OBJ_id_cmc ,1L ) 1576  #SN_id_cmc_id’tifiÿtiÚ "id-cmc-id’tifiÿtiÚ" ) 1577  #NID_id_cmc_id’tifiÿtiÚ 328 ) 1578  #OBJ_id_cmc_id’tifiÿtiÚ OBJ_id_cmc ,2L ) 1580  #SN_id_cmc_id’t™yProof "id-cmc-id’t™yProof" ) 1581  #NID_id_cmc_id’t™yProof 329 ) 1582  #OBJ_id_cmc_id’t™yProof OBJ_id_cmc ,3L ) 1584  #SN_id_cmc_d©aR‘uº "id-cmc-d©aR‘uº" ) 1585  #NID_id_cmc_d©aR‘uº 330 ) 1586  #OBJ_id_cmc_d©aR‘uº OBJ_id_cmc ,4L ) 1588  #SN_id_cmc_Œª§ùiÚId "id-cmc-Œª§ùiÚId" ) 1589  #NID_id_cmc_Œª§ùiÚId 331 ) 1590  #OBJ_id_cmc_Œª§ùiÚId OBJ_id_cmc ,5L ) 1592  #SN_id_cmc_£nd”NÚû "id-cmc-£nd”NÚû" ) 1593  #NID_id_cmc_£nd”NÚû 332 ) 1594  #OBJ_id_cmc_£nd”NÚû OBJ_id_cmc ,6L ) 1596  #SN_id_cmc_»c›ÁNÚû "id-cmc-»c›ÁNÚû" ) 1597  #NID_id_cmc_»c›ÁNÚû 333 ) 1598  #OBJ_id_cmc_»c›ÁNÚû OBJ_id_cmc ,7L ) 1600  #SN_id_cmc_addEx‹nsiÚs "id-cmc-addEx‹nsiÚs" ) 1601  #NID_id_cmc_addEx‹nsiÚs 334 ) 1602  #OBJ_id_cmc_addEx‹nsiÚs OBJ_id_cmc ,8L ) 1604  #SN_id_cmc_’üy±edPOP "id-cmc-’üy±edPOP" ) 1605  #NID_id_cmc_’üy±edPOP 335 ) 1606  #OBJ_id_cmc_’üy±edPOP OBJ_id_cmc ,9L ) 1608  #SN_id_cmc_deüy±edPOP "id-cmc-deüy±edPOP" ) 1609  #NID_id_cmc_deüy±edPOP 336 ) 1610  #OBJ_id_cmc_deüy±edPOP OBJ_id_cmc ,10L ) 1612  #SN_id_cmc_ÌaPOPW™Ãss "id-cmc-ÌaPOPW™Ãss" ) 1613  #NID_id_cmc_ÌaPOPW™Ãss 337 ) 1614  #OBJ_id_cmc_ÌaPOPW™Ãss OBJ_id_cmc ,11L ) 1616  #SN_id_cmc_g‘C”t "id-cmc-g‘C”t" ) 1617  #NID_id_cmc_g‘C”t 338 ) 1618  #OBJ_id_cmc_g‘C”t OBJ_id_cmc ,15L ) 1620  #SN_id_cmc_g‘CRL "id-cmc-g‘CRL" ) 1621  #NID_id_cmc_g‘CRL 339 ) 1622  #OBJ_id_cmc_g‘CRL OBJ_id_cmc ,16L ) 1624  #SN_id_cmc_»vokeReque¡ "id-cmc-»vokeReque¡" ) 1625  #NID_id_cmc_»vokeReque¡ 340 ) 1626  #OBJ_id_cmc_»vokeReque¡ OBJ_id_cmc ,17L ) 1628  #SN_id_cmc_»gInfo "id-cmc-»gInfo" ) 1629  #NID_id_cmc_»gInfo 341 ) 1630  #OBJ_id_cmc_»gInfo OBJ_id_cmc ,18L ) 1632  #SN_id_cmc_»¥Ú£Info "id-cmc-»¥Ú£Info" ) 1633  #NID_id_cmc_»¥Ú£Info 342 ) 1634  #OBJ_id_cmc_»¥Ú£Info OBJ_id_cmc ,19L ) 1636  #SN_id_cmc_qu”yP’dšg "id-cmc-qu”yP’dšg" ) 1637  #NID_id_cmc_qu”yP’dšg 343 ) 1638  #OBJ_id_cmc_qu”yP’dšg OBJ_id_cmc ,21L ) 1640  #SN_id_cmc_pÝLškRªdom "id-cmc-pÝLškRªdom" ) 1641  #NID_id_cmc_pÝLškRªdom 344 ) 1642  #OBJ_id_cmc_pÝLškRªdom OBJ_id_cmc ,22L ) 1644  #SN_id_cmc_pÝLškW™Ãss "id-cmc-pÝLškW™Ãss" ) 1645  #NID_id_cmc_pÝLškW™Ãss 345 ) 1646  #OBJ_id_cmc_pÝLškW™Ãss OBJ_id_cmc ,23L ) 1648  #SN_id_cmc_cÚfœmC”tAcû±ªû "id-cmc-cÚfœmC”tAcû±ªû" ) 1649  #NID_id_cmc_cÚfœmC”tAcû±ªû 346 ) 1650  #OBJ_id_cmc_cÚfœmC”tAcû±ªû OBJ_id_cmc ,24L ) 1652  #SN_id_Ú_³rsÚ®D©a "id-Ú-³rsÚ®D©a" ) 1653  #NID_id_Ú_³rsÚ®D©a 347 ) 1654  #OBJ_id_Ú_³rsÚ®D©a OBJ_id_Ú ,1L ) 1656  #SN_id_pda_d©eOfBœth "id-pda-d©eOfBœth" ) 1657  #NID_id_pda_d©eOfBœth 348 ) 1658  #OBJ_id_pda_d©eOfBœth OBJ_id_pda ,1L ) 1660  #SN_id_pda_¶aûOfBœth "id-pda-¶aûOfBœth" ) 1661  #NID_id_pda_¶aûOfBœth 349 ) 1662  #OBJ_id_pda_¶aûOfBœth OBJ_id_pda ,2L ) 1664  #SN_id_pda_g’d” "id-pda-g’d”" ) 1665  #NID_id_pda_g’d” 351 ) 1666  #OBJ_id_pda_g’d” OBJ_id_pda ,3L ) 1668  #SN_id_pda_couÁryOfC™iz’sh "id-pda-couÁryOfC™iz’sh" ) 1669  #NID_id_pda_couÁryOfC™iz’sh 352 ) 1670  #OBJ_id_pda_couÁryOfC™iz’sh OBJ_id_pda ,4L ) 1672  #SN_id_pda_couÁryOfResid’û "id-pda-couÁryOfResid’û" ) 1673  #NID_id_pda_couÁryOfResid’û 353 ) 1674  #OBJ_id_pda_couÁryOfResid’û OBJ_id_pda ,5L ) 1676  #SN_id_aÿ_auth’tiÿtiÚInfo "id-aÿ-auth’tiÿtiÚInfo" ) 1677  #NID_id_aÿ_auth’tiÿtiÚInfo 354 ) 1678  #OBJ_id_aÿ_auth’tiÿtiÚInfo OBJ_id_aÿ ,1L ) 1680  #SN_id_aÿ_acûssId’t™y "id-aÿ-acûssId’t™y" ) 1681  #NID_id_aÿ_acûssId’t™y 355 ) 1682  #OBJ_id_aÿ_acûssId’t™y OBJ_id_aÿ ,2L ) 1684  #SN_id_aÿ_ch¬gšgId’t™y "id-aÿ-ch¬gšgId’t™y" ) 1685  #NID_id_aÿ_ch¬gšgId’t™y 356 ) 1686  #OBJ_id_aÿ_ch¬gšgId’t™y OBJ_id_aÿ ,3L ) 1688  #SN_id_aÿ_group "id-aÿ-group" ) 1689  #NID_id_aÿ_group 357 ) 1690  #OBJ_id_aÿ_group OBJ_id_aÿ ,4L ) 1692  #SN_id_aÿ_rÞe "id-aÿ-rÞe" ) 1693  #NID_id_aÿ_rÞe 358 ) 1694  #OBJ_id_aÿ_rÞe OBJ_id_aÿ ,5L ) 1696  #SN_id_aÿ_’cA‰rs "id-aÿ-’cA‰rs" ) 1697  #NID_id_aÿ_’cA‰rs 399 ) 1698  #OBJ_id_aÿ_’cA‰rs OBJ_id_aÿ ,6L ) 1700  #SN_id_qcs_pkixQCSyÁax_v1 "id-qcs-pkixQCSyÁax-v1" ) 1701  #NID_id_qcs_pkixQCSyÁax_v1 359 ) 1702  #OBJ_id_qcs_pkixQCSyÁax_v1 OBJ_id_qcs ,1L ) 1704  #SN_id_cù_üs "id-cù-üs" ) 1705  #NID_id_cù_üs 360 ) 1706  #OBJ_id_cù_üs OBJ_id_cù ,1L ) 1708  #SN_id_cù_PKID©a "id-cù-PKID©a" ) 1709  #NID_id_cù_PKID©a 361 ) 1710  #OBJ_id_cù_PKID©a OBJ_id_cù ,2L ) 1712  #SN_id_cù_PKIRe¥Ú£ "id-cù-PKIRe¥Ú£" ) 1713  #NID_id_cù_PKIRe¥Ú£ 362 ) 1714  #OBJ_id_cù_PKIRe¥Ú£ OBJ_id_cù ,3L ) 1716  #SN_id_µl_ªyLªguage "id-µl-ªyLªguage" ) 1717  #LN_id_µl_ªyLªguage "Any†ªguage" ) 1718  #NID_id_µl_ªyLªguage 664 ) 1719  #OBJ_id_µl_ªyLªguage OBJ_id_µl ,0L ) 1721  #SN_id_µl_šh”™AÎ "id-µl-šh”™AÎ" ) 1722  #LN_id_µl_šh”™AÎ "Inh”™‡Î" ) 1723  #NID_id_µl_šh”™AÎ 665 ) 1724  #OBJ_id_µl_šh”™AÎ OBJ_id_µl ,1L ) 1726  #SN_Ind•’d’t "id-µl-šd•’d’t" ) 1727  #LN_Ind•’d’t "Ind•’d’t" ) 1728  #NID_Ind•’d’t 667 ) 1729  #OBJ_Ind•’d’t OBJ_id_µl ,2L ) 1731  #SN_ad_OCSP "OCSP" ) 1732  #LN_ad_OCSP "OCSP" ) 1733  #NID_ad_OCSP 178 ) 1734  #OBJ_ad_OCSP OBJ_id_ad ,1L ) 1736  #SN_ad_ÿ_issu”s "ÿIssu”s" ) 1737  #LN_ad_ÿ_issu”s "CA Issu”s" ) 1738  #NID_ad_ÿ_issu”s 179 ) 1739  #OBJ_ad_ÿ_issu”s OBJ_id_ad ,2L ) 1741  #SN_ad_timeSmpšg "ad_time¡ampšg" ) 1742  #LN_ad_timeSmpšg "AD TimSmpšg" ) 1743  #NID_ad_timeSmpšg 363 ) 1744  #OBJ_ad_timeSmpšg OBJ_id_ad ,3L ) 1746  #SN_ad_dvcs "AD_DVCS" ) 1747  #LN_ad_dvcs "ad dvcs" ) 1748  #NID_ad_dvcs 364 ) 1749  #OBJ_ad_dvcs OBJ_id_ad ,4L ) 1751  #OBJ_id_pkix_OCSP OBJ_ad_OCSP ) 1753  #SN_id_pkix_OCSP_basic "basicOCSPRe¥Ú£" ) 1754  #LN_id_pkix_OCSP_basic "BasiøOCSP Re¥Ú£" ) 1755  #NID_id_pkix_OCSP_basic 365 ) 1756  #OBJ_id_pkix_OCSP_basic OBJ_id_pkix_OCSP ,1L ) 1758  #SN_id_pkix_OCSP_NÚû "NÚû" ) 1759  #LN_id_pkix_OCSP_NÚû "OCSP NÚû" ) 1760  #NID_id_pkix_OCSP_NÚû 366 ) 1761  #OBJ_id_pkix_OCSP_NÚû OBJ_id_pkix_OCSP ,2L ) 1763  #SN_id_pkix_OCSP_C¾ID "C¾ID" ) 1764  #LN_id_pkix_OCSP_C¾ID "OCSP CRL ID" ) 1765  #NID_id_pkix_OCSP_C¾ID 367 ) 1766  #OBJ_id_pkix_OCSP_C¾ID OBJ_id_pkix_OCSP ,3L ) 1768  #SN_id_pkix_OCSP_acû±abËRe¥Ú£s "acû±abËRe¥Ú£s" ) 1769  #LN_id_pkix_OCSP_acû±abËRe¥Ú£s "Acû±abË OCSP Re¥Ú£s" ) 1770  #NID_id_pkix_OCSP_acû±abËRe¥Ú£s 368 ) 1771  #OBJ_id_pkix_OCSP_acû±abËRe¥Ú£s OBJ_id_pkix_OCSP ,4L ) 1773  #SN_id_pkix_OCSP_noCheck "noCheck" ) 1774  #LN_id_pkix_OCSP_noCheck "OCSP NØCheck" ) 1775  #NID_id_pkix_OCSP_noCheck 369 ) 1776  #OBJ_id_pkix_OCSP_noCheck OBJ_id_pkix_OCSP ,5L ) 1778  #SN_id_pkix_OCSP_¬chiveCutoff "¬chiveCutoff" ) 1779  #LN_id_pkix_OCSP_¬chiveCutoff "OCSP ArchivCutoff" ) 1780  #NID_id_pkix_OCSP_¬chiveCutoff 370 ) 1781  #OBJ_id_pkix_OCSP_¬chiveCutoff OBJ_id_pkix_OCSP ,6L ) 1783  #SN_id_pkix_OCSP_£rviûLoÿtÜ "£rviûLoÿtÜ" ) 1784  #LN_id_pkix_OCSP_£rviûLoÿtÜ "OCSP S”viû LoÿtÜ" ) 1785  #NID_id_pkix_OCSP_£rviûLoÿtÜ 371 ) 1786  #OBJ_id_pkix_OCSP_£rviûLoÿtÜ OBJ_id_pkix_OCSP ,7L ) 1788  #SN_id_pkix_OCSP_ex‹ndedStus "ex‹ndedStus" ) 1789  #LN_id_pkix_OCSP_ex‹ndedStus "Ex‹nded OCSP Stus" ) 1790  #NID_id_pkix_OCSP_ex‹ndedStus 372 ) 1791  #OBJ_id_pkix_OCSP_ex‹ndedStus OBJ_id_pkix_OCSP ,8L ) 1793  #SN_id_pkix_OCSP_v®id "v®id" ) 1794  #NID_id_pkix_OCSP_v®id 373 ) 1795  #OBJ_id_pkix_OCSP_v®id OBJ_id_pkix_OCSP ,9L ) 1797  #SN_id_pkix_OCSP_·th "·th" ) 1798  #NID_id_pkix_OCSP_·th 374 ) 1799  #OBJ_id_pkix_OCSP_·th OBJ_id_pkix_OCSP ,10L ) 1801  #SN_id_pkix_OCSP_Œu¡RoÙ "Œu¡RoÙ" ) 1802  #LN_id_pkix_OCSP_Œu¡RoÙ "Tru¡ RoÙ" ) 1803  #NID_id_pkix_OCSP_Œu¡RoÙ 375 ) 1804  #OBJ_id_pkix_OCSP_Œu¡RoÙ OBJ_id_pkix_OCSP ,11L ) 1806  #SN_®gÜ™hm "®gÜ™hm" ) 1807  #LN_®gÜ™hm "®gÜ™hm" ) 1808  #NID_®gÜ™hm 376 ) 1809  #OBJ_®gÜ™hm 1L,3L,14L,3L,2L ) 1811  #SN_md5W™hRSA "RSA-NP-MD5" ) 1812  #LN_md5W™hRSA "md5W™hRSA" ) 1813  #NID_md5W™hRSA 104 ) 1814  #OBJ_md5W™hRSA OBJ_®gÜ™hm ,3L ) 1816  #SN_des_ecb "DES-ECB" ) 1817  #LN_des_ecb "des-ecb" ) 1818  #NID_des_ecb 29 ) 1819  #OBJ_des_ecb OBJ_®gÜ™hm ,6L ) 1821  #SN_des_cbc "DES-CBC" ) 1822  #LN_des_cbc "des-cbc" ) 1823  #NID_des_cbc 31 ) 1824  #OBJ_des_cbc OBJ_®gÜ™hm ,7L ) 1826  #SN_des_ofb64 "DES-OFB" ) 1827  #LN_des_ofb64 "des-ofb" ) 1828  #NID_des_ofb64 45 ) 1829  #OBJ_des_ofb64 OBJ_®gÜ™hm ,8L ) 1831  #SN_des_cfb64 "DES-CFB" ) 1832  #LN_des_cfb64 "des-cfb" ) 1833  #NID_des_cfb64 30 ) 1834  #OBJ_des_cfb64 OBJ_®gÜ™hm ,9L ) 1836  #SN_r§SigÇtu» "r§SigÇtu»" ) 1837  #NID_r§SigÇtu» 377 ) 1838  #OBJ_r§SigÇtu» OBJ_®gÜ™hm ,11L ) 1840  #SN_d§_2 "DSA-Þd" ) 1841  #LN_d§_2 "d§Enüy±iÚ-Þd" ) 1842  #NID_d§_2 67 ) 1843  #OBJ_d§_2 OBJ_®gÜ™hm ,12L ) 1845  #SN_d§W™hSHA "DSA-SHA" ) 1846  #LN_d§W™hSHA "d§W™hSHA" ) 1847  #NID_d§W™hSHA 66 ) 1848  #OBJ_d§W™hSHA OBJ_®gÜ™hm ,13L ) 1850  #SN_shaW™hRSAEnüy±iÚ "RSA-SHA" ) 1851  #LN_shaW™hRSAEnüy±iÚ "shaW™hRSAEnüy±iÚ" ) 1852  #NID_shaW™hRSAEnüy±iÚ 42 ) 1853  #OBJ_shaW™hRSAEnüy±iÚ OBJ_®gÜ™hm ,15L ) 1855  #SN_des_ede_ecb "DES-EDE" ) 1856  #LN_des_ede_ecb "des-ede" ) 1857  #NID_des_ede_ecb 32 ) 1858  #OBJ_des_ede_ecb OBJ_®gÜ™hm ,17L ) 1860  #SN_des_ede3_ecb "DES-EDE3" ) 1861  #LN_des_ede3_ecb "des-ede3" ) 1862  #NID_des_ede3_ecb 33 ) 1864  #SN_des_ede_cbc "DES-EDE-CBC" ) 1865  #LN_des_ede_cbc "des-ede-cbc" ) 1866  #NID_des_ede_cbc 43 ) 1868  #SN_des_ede_cfb64 "DES-EDE-CFB" ) 1869  #LN_des_ede_cfb64 "des-ede-cfb" ) 1870  #NID_des_ede_cfb64 60 ) 1872  #SN_des_ede3_cfb64 "DES-EDE3-CFB" ) 1873  #LN_des_ede3_cfb64 "des-ede3-cfb" ) 1874  #NID_des_ede3_cfb64 61 ) 1876  #SN_des_ede_ofb64 "DES-EDE-OFB" ) 1877  #LN_des_ede_ofb64 "des-ede-ofb" ) 1878  #NID_des_ede_ofb64 62 ) 1880  #SN_des_ede3_ofb64 "DES-EDE3-OFB" ) 1881  #LN_des_ede3_ofb64 "des-ede3-ofb" ) 1882  #NID_des_ede3_ofb64 63 ) 1884  #SN_desx_cbc "DESX-CBC" ) 1885  #LN_desx_cbc "desx-cbc" ) 1886  #NID_desx_cbc 80 ) 1888  #SN_sha "SHA" ) 1889  #LN_sha "sha" ) 1890  #NID_sha 41 ) 1891  #OBJ_sha OBJ_®gÜ™hm ,18L ) 1893  #SN_sha1 "SHA1" ) 1894  #LN_sha1 "sha1" ) 1895  #NID_sha1 64 ) 1896  #OBJ_sha1 OBJ_®gÜ™hm ,26L ) 1898  #SN_d§W™hSHA1_2 "DSA-SHA1-Þd" ) 1899  #LN_d§W™hSHA1_2 "d§W™hSHA1-Þd" ) 1900  #NID_d§W™hSHA1_2 70 ) 1901  #OBJ_d§W™hSHA1_2 OBJ_®gÜ™hm ,27L ) 1903  #SN_sha1W™hRSA "RSA-SHA1-2" ) 1904  #LN_sha1W™hRSA "sha1W™hRSA" ) 1905  #NID_sha1W™hRSA 115 ) 1906  #OBJ_sha1W™hRSA OBJ_®gÜ™hm ,29L ) 1908  #SN_remd160 "RIPEMD160" ) 1909  #LN_remd160 "remd160" ) 1910  #NID_remd160 117 ) 1911  #OBJ_remd160 1L,3L,36L,3L,2L,1L ) 1913  #SN_remd160W™hRSA "RSA-RIPEMD160" ) 1914  #LN_remd160W™hRSA "remd160W™hRSA" ) 1915  #NID_remd160W™hRSA 119 ) 1916  #OBJ_remd160W™hRSA 1L,3L,36L,3L,3L,1L,2L ) 1918  #SN_sxÃt "SXN‘ID" ) 1919  #LN_sxÃt "SŒÚg ExŒª‘ ID" ) 1920  #NID_sxÃt 143 ) 1921  #OBJ_sxÃt 1L,3L,101L,1L,4L,1L ) 1923  #SN_X500 "X500" ) 1924  #LN_X500 "dœeùÜy s”viû (X.500)" ) 1925  #NID_X500 11 ) 1926  #OBJ_X500 2L,5L ) 1928  #SN_X509 "X509" ) 1929  #NID_X509 12 ) 1930  #OBJ_X509 OBJ_X500 ,4L ) 1932  #SN_commÚName "CN" ) 1933  #LN_commÚName "commÚName" ) 1934  #NID_commÚName 13 ) 1935  #OBJ_commÚName OBJ_X509 ,3L ) 1937  #SN_suºame "SN" ) 1938  #LN_suºame "suºame" ) 1939  #NID_suºame 100 ) 1940  #OBJ_suºame OBJ_X509 ,4L ) 1942  #LN_£rŸlNumb” "£rŸlNumb”" ) 1943  #NID_£rŸlNumb” 105 ) 1944  #OBJ_£rŸlNumb” OBJ_X509 ,5L ) 1946  #SN_couÁryName "C" ) 1947  #LN_couÁryName "couÁryName" ) 1948  #NID_couÁryName 14 ) 1949  #OBJ_couÁryName OBJ_X509 ,6L ) 1951  #SN_loÿl™yName "L" ) 1952  #LN_loÿl™yName "loÿl™yName" ) 1953  #NID_loÿl™yName 15 ) 1954  #OBJ_loÿl™yName OBJ_X509 ,7L ) 1956  #SN_¡©eOrProvšûName "ST" ) 1957  #LN_¡©eOrProvšûName "¡©eOrProvšûName" ) 1958  #NID_¡©eOrProvšûName 16 ) 1959  #OBJ_¡©eOrProvšûName OBJ_X509 ,8L ) 1961  #LN_¡»‘Add»ss "¡»‘Add»ss" ) 1962  #NID_¡»‘Add»ss 660 ) 1963  #OBJ_¡»‘Add»ss OBJ_X509 ,9L ) 1965  #SN_Ügªiz©iÚName "O" ) 1966  #LN_Ügªiz©iÚName "Ügªiz©iÚName" ) 1967  #NID_Ügªiz©iÚName 17 ) 1968  #OBJ_Ügªiz©iÚName OBJ_X509 ,10L ) 1970  #SN_Ügªiz©iÚ®Un™Name "OU" ) 1971  #LN_Ügªiz©iÚ®Un™Name "Ügªiz©iÚ®Un™Name" ) 1972  #NID_Ügªiz©iÚ®Un™Name 18 ) 1973  #OBJ_Ügªiz©iÚ®Un™Name OBJ_X509 ,11L ) 1975  #LN_t™Ë "t™Ë" ) 1976  #NID_t™Ë 106 ) 1977  #OBJ_t™Ë OBJ_X509 ,12L ) 1979  #LN_desütiÚ "desütiÚ" ) 1980  #NID_desütiÚ 107 ) 1981  #OBJ_desütiÚ OBJ_X509 ,13L ) 1983  #LN_po¡®Code "po¡®Code" ) 1984  #NID_po¡®Code 661 ) 1985  #OBJ_po¡®Code OBJ_X509 ,17L ) 1987  #SN_Çme "Çme" ) 1988  #LN_Çme "Çme" ) 1989  #NID_Çme 173 ) 1990  #OBJ_Çme OBJ_X509 ,41L ) 1992  #SN_giv’Name "GN" ) 1993  #LN_giv’Name "giv’Name" ) 1994  #NID_giv’Name 99 ) 1995  #OBJ_giv’Name OBJ_X509 ,42L ) 1997  #LN_š™Ÿls "š™Ÿls" ) 1998  #NID_š™Ÿls 101 ) 1999  #OBJ_š™Ÿls OBJ_X509 ,43L ) 2001  #LN_g’”©iÚQu®if›r "g’”©iÚQu®if›r" ) 2002  #NID_g’”©iÚQu®if›r 509 ) 2003  #OBJ_g’”©iÚQu®if›r OBJ_X509 ,44L ) 2005  #LN_x500UniqueId’tif›r "x500UniqueId’tif›r" ) 2006  #NID_x500UniqueId’tif›r 503 ) 2007  #OBJ_x500UniqueId’tif›r OBJ_X509 ,45L ) 2009  #SN_dnQu®if›r "dnQu®if›r" ) 2010  #LN_dnQu®if›r "dnQu®if›r" ) 2011  #NID_dnQu®if›r 174 ) 2012  #OBJ_dnQu®if›r OBJ_X509 ,46L ) 2014  #LN_p£udÚym "p£udÚym" ) 2015  #NID_p£udÚym 510 ) 2016  #OBJ_p£udÚym OBJ_X509 ,65L ) 2018  #SN_rÞe "rÞe" ) 2019  #LN_rÞe "rÞe" ) 2020  #NID_rÞe 400 ) 2021  #OBJ_rÞe OBJ_X509 ,72L ) 2023  #SN_X500®gÜ™hms "X500®gÜ™hms" ) 2024  #LN_X500®gÜ™hms "dœeùÜy s”viû -‡lgÜ™hms" ) 2025  #NID_X500®gÜ™hms 378 ) 2026  #OBJ_X500®gÜ™hms OBJ_X500 ,8L ) 2028  #SN_r§ "RSA" ) 2029  #LN_r§ "r§" ) 2030  #NID_r§ 19 ) 2031  #OBJ_r§ OBJ_X500®gÜ™hms ,1L,1L ) 2033  #SN_mdc2W™hRSA "RSA-MDC2" ) 2034  #LN_mdc2W™hRSA "mdc2W™hRSA" ) 2035  #NID_mdc2W™hRSA 96 ) 2036  #OBJ_mdc2W™hRSA OBJ_X500®gÜ™hms ,3L,100L ) 2038  #SN_mdc2 "MDC2" ) 2039  #LN_mdc2 "mdc2" ) 2040  #NID_mdc2 95 ) 2041  #OBJ_mdc2 OBJ_X500®gÜ™hms ,3L,101L ) 2043  #SN_id_û "id-û" ) 2044  #NID_id_û 81 ) 2045  #OBJ_id_û OBJ_X500 ,29L ) 2047  #SN_subjeù_dœeùÜy_©Œibu‹s "subjeùDœeùÜyA‰ribu‹s" ) 2048  #LN_subjeù_dœeùÜy_©Œibu‹s "X509v3 Subjeù DœeùÜy A‰ribu‹s" ) 2049  #NID_subjeù_dœeùÜy_©Œibu‹s 769 ) 2050  #OBJ_subjeù_dœeùÜy_©Œibu‹s OBJ_id_û ,9L ) 2052  #SN_subjeù_key_id’tif›r "subjeùKeyId’tif›r" ) 2053  #LN_subjeù_key_id’tif›r "X509v3 Subjeù Key Id’tif›r" ) 2054  #NID_subjeù_key_id’tif›r 82 ) 2055  #OBJ_subjeù_key_id’tif›r OBJ_id_û ,14L ) 2057  #SN_key_u§ge "keyU§ge" ) 2058  #LN_key_u§ge "X509v3 Key U§ge" ) 2059  #NID_key_u§ge 83 ) 2060  #OBJ_key_u§ge OBJ_id_û ,15L ) 2062  #SN_´iv©e_key_u§ge_³riod "´iv©eKeyU§geP”iod" ) 2063  #LN_´iv©e_key_u§ge_³riod "X509v3 Priv©Key U§gP”iod" ) 2064  #NID_´iv©e_key_u§ge_³riod 84 ) 2065  #OBJ_´iv©e_key_u§ge_³riod OBJ_id_û ,16L ) 2067  #SN_subjeù_®t_Çme "subjeùAÉName" ) 2068  #LN_subjeù_®t_Çme "X509v3 Subjeù AÉ”ÇtivName" ) 2069  #NID_subjeù_®t_Çme 85 ) 2070  #OBJ_subjeù_®t_Çme OBJ_id_û ,17L ) 2072  #SN_issu”_®t_Çme "issu”AÉName" ) 2073  #LN_issu”_®t_Çme "X509v3 Issu” AÉ”ÇtivName" ) 2074  #NID_issu”_®t_Çme 86 ) 2075  #OBJ_issu”_®t_Çme OBJ_id_û ,18L ) 2077  #SN_basic_cÚ¡¿šts "basicCÚ¡¿šts" ) 2078  #LN_basic_cÚ¡¿šts "X509v3 BasiøCÚ¡¿šts" ) 2079  #NID_basic_cÚ¡¿šts 87 ) 2080  #OBJ_basic_cÚ¡¿šts OBJ_id_û ,19L ) 2082  #SN_ül_numb” "ülNumb”" ) 2083  #LN_ül_numb” "X509v3 CRL Numb”" ) 2084  #NID_ül_numb” 88 ) 2085  #OBJ_ül_numb” OBJ_id_û ,20L ) 2087  #SN_ül_»asÚ "CRLR—sÚ" ) 2088  #LN_ül_»asÚ "X509v3 CRL R—sÚ Code" ) 2089  #NID_ül_»asÚ 141 ) 2090  #OBJ_ül_»asÚ OBJ_id_û ,21L ) 2092  #SN_šv®id™y_d©e "šv®id™yD©e" ) 2093  #LN_šv®id™y_d©e "Inv®id™y D©e" ) 2094  #NID_šv®id™y_d©e 142 ) 2095  #OBJ_šv®id™y_d©e OBJ_id_û ,24L ) 2097  #SN_d–_ül "d–CRL" ) 2098  #LN_d–_ül "X509v3 D– CRL IndiÿtÜ" ) 2099  #NID_d–_ül 140 ) 2100  #OBJ_d–_ül OBJ_id_û ,27L ) 2102  #SN_issušg_di¡ributiÚ_pošt "issušgDi¡ributiÚPošt" ) 2103  #LN_issušg_di¡ributiÚ_pošt "X509v3 Issušg Di¡rubutiÚ Pošt" ) 2104  #NID_issušg_di¡ributiÚ_pošt 770 ) 2105  #OBJ_issušg_di¡ributiÚ_pošt OBJ_id_û ,28L ) 2107  #SN_û¹ifiÿ‹_issu” "û¹ifiÿ‹Issu”" ) 2108  #LN_û¹ifiÿ‹_issu” "X509v3 C”tifiÿ‹ Issu”" ) 2109  #NID_û¹ifiÿ‹_issu” 771 ) 2110  #OBJ_û¹ifiÿ‹_issu” OBJ_id_û ,29L ) 2112  #SN_Çme_cÚ¡¿šts "ÇmeCÚ¡¿šts" ) 2113  #LN_Çme_cÚ¡¿šts "X509v3 NamCÚ¡¿šts" ) 2114  #NID_Çme_cÚ¡¿šts 666 ) 2115  #OBJ_Çme_cÚ¡¿šts OBJ_id_û ,30L ) 2117  #SN_ül_di¡ributiÚ_pošts "ülDi¡ributiÚPošts" ) 2118  #LN_ül_di¡ributiÚ_pošts "X509v3 CRL Di¡ributiÚ Pošts" ) 2119  #NID_ül_di¡ributiÚ_pošts 103 ) 2120  #OBJ_ül_di¡ributiÚ_pošts OBJ_id_û ,31L ) 2122  #SN_û¹ifiÿ‹_pÞic›s "û¹ifiÿ‹PÞic›s" ) 2123  #LN_û¹ifiÿ‹_pÞic›s "X509v3 C”tifiÿ‹ PÞic›s" ) 2124  #NID_û¹ifiÿ‹_pÞic›s 89 ) 2125  #OBJ_û¹ifiÿ‹_pÞic›s OBJ_id_û ,32L ) 2127  #SN_ªy_pÞicy "ªyPÞicy" ) 2128  #LN_ªy_pÞicy "X509v3 Any PÞicy" ) 2129  #NID_ªy_pÞicy 746 ) 2130  #OBJ_ªy_pÞicy OBJ_û¹ifiÿ‹_pÞic›s ,0L ) 2132  #SN_pÞicy_m­pšgs "pÞicyM­pšgs" ) 2133  #LN_pÞicy_m­pšgs "X509v3 PÞicy M­pšgs" ) 2134  #NID_pÞicy_m­pšgs 747 ) 2135  #OBJ_pÞicy_m­pšgs OBJ_id_û ,33L ) 2137  #SN_authÜ™y_key_id’tif›r "authÜ™yKeyId’tif›r" ) 2138  #LN_authÜ™y_key_id’tif›r "X509v3 AuthÜ™y Key Id’tif›r" ) 2139  #NID_authÜ™y_key_id’tif›r 90 ) 2140  #OBJ_authÜ™y_key_id’tif›r OBJ_id_û ,35L ) 2142  #SN_pÞicy_cÚ¡¿šts "pÞicyCÚ¡¿šts" ) 2143  #LN_pÞicy_cÚ¡¿šts "X509v3 PÞicy CÚ¡¿šts" ) 2144  #NID_pÞicy_cÚ¡¿šts 401 ) 2145  #OBJ_pÞicy_cÚ¡¿šts OBJ_id_û ,36L ) 2147  #SN_ext_key_u§ge "ex‹ndedKeyU§ge" ) 2148  #LN_ext_key_u§ge "X509v3 Ex‹nded Key U§ge" ) 2149  #NID_ext_key_u§ge 126 ) 2150  #OBJ_ext_key_u§ge OBJ_id_û ,37L ) 2152  #SN_šhib™_ªy_pÞicy "šhib™AnyPÞicy" ) 2153  #LN_šhib™_ªy_pÞicy "X509v3 Inhib™ Any PÞicy" ) 2154  #NID_šhib™_ªy_pÞicy 748 ) 2155  #OBJ_šhib™_ªy_pÞicy OBJ_id_û ,54L ) 2157  #SN_rg‘_šfÜm©iÚ "rg‘InfÜm©iÚ" ) 2158  #LN_rg‘_šfÜm©iÚ "X509v3 AC T¬g‘šg" ) 2159  #NID_rg‘_šfÜm©iÚ 402 ) 2160  #OBJ_rg‘_šfÜm©iÚ OBJ_id_û ,55L ) 2162  #SN_no_»v_avaž "noRevAvaž" ) 2163  #LN_no_»v_avaž "X509v3 NØRevoÿtiÚ AvažabË" ) 2164  #NID_no_»v_avaž 403 ) 2165  #OBJ_no_»v_avaž OBJ_id_û ,56L ) 2167  #SN_Ãtsÿ³ "N‘sÿ³" ) 2168  #LN_Ãtsÿ³ "N‘sÿ³ CommuniÿtiÚ CÜp." ) 2169  #NID_Ãtsÿ³ 57 ) 2170  #OBJ_Ãtsÿ³ 2L,16L,840L,1L,113730L ) 2172  #SN_Ãtsÿ³_û¹_ex‹nsiÚ "nsC”tExt" ) 2173  #LN_Ãtsÿ³_û¹_ex‹nsiÚ "N‘sÿ³ C”tifiÿ‹ Ex‹nsiÚ" ) 2174  #NID_Ãtsÿ³_û¹_ex‹nsiÚ 58 ) 2175  #OBJ_Ãtsÿ³_û¹_ex‹nsiÚ OBJ_Ãtsÿ³ ,1L ) 2177  #SN_Ãtsÿ³_d©a_ty³ "nsD©aTy³" ) 2178  #LN_Ãtsÿ³_d©a_ty³ "N‘sÿ³ D©¨Ty³" ) 2179  #NID_Ãtsÿ³_d©a_ty³ 59 ) 2180  #OBJ_Ãtsÿ³_d©a_ty³ OBJ_Ãtsÿ³ ,2L ) 2182  #SN_Ãtsÿ³_û¹_ty³ "nsC”tTy³" ) 2183  #LN_Ãtsÿ³_û¹_ty³ "N‘sÿ³ C”ˆTy³" ) 2184  #NID_Ãtsÿ³_û¹_ty³ 71 ) 2185  #OBJ_Ãtsÿ³_û¹_ty³ OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,1L ) 2187  #SN_Ãtsÿ³_ba£_u¾ "nsBa£U¾" ) 2188  #LN_Ãtsÿ³_ba£_u¾ "N‘sÿ³ Ba£ U¾" ) 2189  #NID_Ãtsÿ³_ba£_u¾ 72 ) 2190  #OBJ_Ãtsÿ³_ba£_u¾ OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,2L ) 2192  #SN_Ãtsÿ³_»voÿtiÚ_u¾ "nsRevoÿtiÚU¾" ) 2193  #LN_Ãtsÿ³_»voÿtiÚ_u¾ "N‘sÿ³ RevoÿtiÚ U¾" ) 2194  #NID_Ãtsÿ³_»voÿtiÚ_u¾ 73 ) 2195  #OBJ_Ãtsÿ³_»voÿtiÚ_u¾ OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,3L ) 2197  #SN_Ãtsÿ³_ÿ_»voÿtiÚ_u¾ "nsCaRevoÿtiÚU¾" ) 2198  #LN_Ãtsÿ³_ÿ_»voÿtiÚ_u¾ "N‘sÿ³ CA RevoÿtiÚ U¾" ) 2199  #NID_Ãtsÿ³_ÿ_»voÿtiÚ_u¾ 74 ) 2200  #OBJ_Ãtsÿ³_ÿ_»voÿtiÚ_u¾ OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,4L ) 2202  #SN_Ãtsÿ³_»Ãw®_u¾ "nsR’ew®U¾" ) 2203  #LN_Ãtsÿ³_»Ãw®_u¾ "N‘sÿ³ R’ew® U¾" ) 2204  #NID_Ãtsÿ³_»Ãw®_u¾ 75 ) 2205  #OBJ_Ãtsÿ³_»Ãw®_u¾ OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,7L ) 2207  #SN_Ãtsÿ³_ÿ_pÞicy_u¾ "nsCaPÞicyU¾" ) 2208  #LN_Ãtsÿ³_ÿ_pÞicy_u¾ "N‘sÿ³ CA PÞicy U¾" ) 2209  #NID_Ãtsÿ³_ÿ_pÞicy_u¾ 76 ) 2210  #OBJ_Ãtsÿ³_ÿ_pÞicy_u¾ OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,8L ) 2212  #SN_Ãtsÿ³_s¦_£rv”_Çme "nsS¦S”v”Name" ) 2213  #LN_Ãtsÿ³_s¦_£rv”_Çme "N‘sÿ³ SSL S”v” Name" ) 2214  #NID_Ãtsÿ³_s¦_£rv”_Çme 77 ) 2215  #OBJ_Ãtsÿ³_s¦_£rv”_Çme OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,12L ) 2217  #SN_Ãtsÿ³_comm’t "nsComm’t" ) 2218  #LN_Ãtsÿ³_comm’t "N‘sÿ³ Comm’t" ) 2219  #NID_Ãtsÿ³_comm’t 78 ) 2220  #OBJ_Ãtsÿ³_comm’t OBJ_Ãtsÿ³_û¹_ex‹nsiÚ ,13L ) 2222  #SN_Ãtsÿ³_û¹_£qu’û "nsC”tSequ’û" ) 2223  #LN_Ãtsÿ³_û¹_£qu’û "N‘sÿ³ C”tifiÿ‹ Sequ’û" ) 2224  #NID_Ãtsÿ³_û¹_£qu’û 79 ) 2225  #OBJ_Ãtsÿ³_û¹_£qu’û OBJ_Ãtsÿ³_d©a_ty³ ,5L ) 2227  #SN_ns_sgc "nsSGC" ) 2228  #LN_ns_sgc "N‘sÿ³ S”v” G©ed Cry±o" ) 2229  #NID_ns_sgc 139 ) 2230  #OBJ_ns_sgc OBJ_Ãtsÿ³ ,4L,1L ) 2232  #SN_Üg "ORG" ) 2233  #LN_Üg "Üg" ) 2234  #NID_Üg 379 ) 2235  #OBJ_Üg OBJ_iso ,3L ) 2237  #SN_dod "DOD" ) 2238  #LN_dod "dod" ) 2239  #NID_dod 380 ) 2240  #OBJ_dod OBJ_Üg ,6L ) 2242  #SN_ŸÇ "IANA" ) 2243  #LN_ŸÇ "ŸÇ" ) 2244  #NID_ŸÇ 381 ) 2245  #OBJ_ŸÇ OBJ_dod ,1L ) 2247  #OBJ_š‹º‘ OBJ_ŸÇ ) 2249  #SN_DœeùÜy "dœeùÜy" ) 2250  #LN_DœeùÜy "DœeùÜy" ) 2251  #NID_DœeùÜy 382 ) 2252  #OBJ_DœeùÜy OBJ_š‹º‘ ,1L ) 2254  #SN_Mªagem’t "mgmt" ) 2255  #LN_Mªagem’t "Mªagem’t" ) 2256  #NID_Mªagem’t 383 ) 2257  #OBJ_Mªagem’t OBJ_š‹º‘ ,2L ) 2259  #SN_Ex³rim’l "ex³rim’l" ) 2260  #LN_Ex³rim’l "Ex³rim’l" ) 2261  #NID_Ex³rim’l 384 ) 2262  #OBJ_Ex³rim’l OBJ_š‹º‘ ,3L ) 2264  #SN_Priv©e "´iv©e" ) 2265  #LN_Priv©e "Priv©e" ) 2266  #NID_Priv©e 385 ) 2267  #OBJ_Priv©e OBJ_š‹º‘ ,4L ) 2269  #SN_Secur™y "£cur™y" ) 2270  #LN_Secur™y "Secur™y" ) 2271  #NID_Secur™y 386 ) 2272  #OBJ_Secur™y OBJ_š‹º‘ ,5L ) 2274  #SN_SNMPv2 "¢mpv2" ) 2275  #LN_SNMPv2 "SNMPv2" ) 2276  #NID_SNMPv2 387 ) 2277  #OBJ_SNMPv2 OBJ_š‹º‘ ,6L ) 2279  #LN_Maž "Maž" ) 2280  #NID_Maž 388 ) 2281  #OBJ_Maž OBJ_š‹º‘ ,7L ) 2283  #SN_EÁ”´i£s "’‹½ri£s" ) 2284  #LN_EÁ”´i£s "EÁ”´i£s" ) 2285  #NID_EÁ”´i£s 389 ) 2286  #OBJ_EÁ”´i£s OBJ_Priv©e ,1L ) 2288  #SN_dcObjeù "dcobjeù" ) 2289  #LN_dcObjeù "dcObjeù" ) 2290  #NID_dcObjeù 390 ) 2291  #OBJ_dcObjeù OBJ_EÁ”´i£s ,1466L,344L ) 2293  #SN_mime_mhs "mime-mhs" ) 2294  #LN_mime_mhs "MIME MHS" ) 2295  #NID_mime_mhs 504 ) 2296  #OBJ_mime_mhs OBJ_Maž ,1L ) 2298  #SN_mime_mhs_h—dšgs "mime-mhs-h—dšgs" ) 2299  #LN_mime_mhs_h—dšgs "mime-mhs-h—dšgs" ) 2300  #NID_mime_mhs_h—dšgs 505 ) 2301  #OBJ_mime_mhs_h—dšgs OBJ_mime_mhs ,1L ) 2303  #SN_mime_mhs_bod›s "mime-mhs-bod›s" ) 2304  #LN_mime_mhs_bod›s "mime-mhs-bod›s" ) 2305  #NID_mime_mhs_bod›s 506 ) 2306  #OBJ_mime_mhs_bod›s OBJ_mime_mhs ,2L ) 2308  #SN_id_hex_·¹Ÿl_mes§ge "id-hex-·¹Ÿl-mes§ge" ) 2309  #LN_id_hex_·¹Ÿl_mes§ge "id-hex-·¹Ÿl-mes§ge" ) 2310  #NID_id_hex_·¹Ÿl_mes§ge 507 ) 2311  #OBJ_id_hex_·¹Ÿl_mes§ge OBJ_mime_mhs_h—dšgs ,1L ) 2313  #SN_id_hex_muɬt_mes§ge "id-hex-muɬt-mes§ge" ) 2314  #LN_id_hex_muɬt_mes§ge "id-hex-muɬt-mes§ge" ) 2315  #NID_id_hex_muɬt_mes§ge 508 ) 2316  #OBJ_id_hex_muɬt_mes§ge OBJ_mime_mhs_h—dšgs ,2L ) 2318  #SN_¾e_com´essiÚ "RLE" ) 2319  #LN_¾e_com´essiÚ "ruÀËngth com´essiÚ" ) 2320  #NID_¾e_com´essiÚ 124 ) 2321  #OBJ_¾e_com´essiÚ 1L,1L,1L,1L,666L,1L ) 2323  #SN_zlib_com´essiÚ "ZLIB" ) 2324  #LN_zlib_com´essiÚ "zlib com´essiÚ" ) 2325  #NID_zlib_com´essiÚ 125 ) 2326  #OBJ_zlib_com´essiÚ 1L,1L,1L,1L,666L,2L ) 2328  #OBJ_csÜ 2L,16L,840L,1L,101L,3L ) 2330  #OBJ_ni¡AlgÜ™hms OBJ_csÜ ,4L ) 2332  #OBJ_«s OBJ_ni¡AlgÜ™hms ,1L ) 2334  #SN_«s_128_ecb "AES-128-ECB" ) 2335  #LN_«s_128_ecb "«s-128-ecb" ) 2336  #NID_«s_128_ecb 418 ) 2337  #OBJ_«s_128_ecb OBJ_«s ,1L ) 2339  #SN_«s_128_cbc "AES-128-CBC" ) 2340  #LN_«s_128_cbc "«s-128-cbc" ) 2341  #NID_«s_128_cbc 419 ) 2342  #OBJ_«s_128_cbc OBJ_«s ,2L ) 2344  #SN_«s_128_ofb128 "AES-128-OFB" ) 2345  #LN_«s_128_ofb128 "«s-128-ofb" ) 2346  #NID_«s_128_ofb128 420 ) 2347  #OBJ_«s_128_ofb128 OBJ_«s ,3L ) 2349  #SN_«s_128_cfb128 "AES-128-CFB" ) 2350  #LN_«s_128_cfb128 "«s-128-cfb" ) 2351  #NID_«s_128_cfb128 421 ) 2352  #OBJ_«s_128_cfb128 OBJ_«s ,4L ) 2354  #SN_«s_192_ecb "AES-192-ECB" ) 2355  #LN_«s_192_ecb "«s-192-ecb" ) 2356  #NID_«s_192_ecb 422 ) 2357  #OBJ_«s_192_ecb OBJ_«s ,21L ) 2359  #SN_«s_192_cbc "AES-192-CBC" ) 2360  #LN_«s_192_cbc "«s-192-cbc" ) 2361  #NID_«s_192_cbc 423 ) 2362  #OBJ_«s_192_cbc OBJ_«s ,22L ) 2364  #SN_«s_192_ofb128 "AES-192-OFB" ) 2365  #LN_«s_192_ofb128 "«s-192-ofb" ) 2366  #NID_«s_192_ofb128 424 ) 2367  #OBJ_«s_192_ofb128 OBJ_«s ,23L ) 2369  #SN_«s_192_cfb128 "AES-192-CFB" ) 2370  #LN_«s_192_cfb128 "«s-192-cfb" ) 2371  #NID_«s_192_cfb128 425 ) 2372  #OBJ_«s_192_cfb128 OBJ_«s ,24L ) 2374  #SN_«s_256_ecb "AES-256-ECB" ) 2375  #LN_«s_256_ecb "«s-256-ecb" ) 2376  #NID_«s_256_ecb 426 ) 2377  #OBJ_«s_256_ecb OBJ_«s ,41L ) 2379  #SN_«s_256_cbc "AES-256-CBC" ) 2380  #LN_«s_256_cbc "«s-256-cbc" ) 2381  #NID_«s_256_cbc 427 ) 2382  #OBJ_«s_256_cbc OBJ_«s ,42L ) 2384  #SN_«s_256_ofb128 "AES-256-OFB" ) 2385  #LN_«s_256_ofb128 "«s-256-ofb" ) 2386  #NID_«s_256_ofb128 428 ) 2387  #OBJ_«s_256_ofb128 OBJ_«s ,43L ) 2389  #SN_«s_256_cfb128 "AES-256-CFB" ) 2390  #LN_«s_256_cfb128 "«s-256-cfb" ) 2391  #NID_«s_256_cfb128 429 ) 2392  #OBJ_«s_256_cfb128 OBJ_«s ,44L ) 2394  #SN_«s_128_cfb1 "AES-128-CFB1" ) 2395  #LN_«s_128_cfb1 "«s-128-cfb1" ) 2396  #NID_«s_128_cfb1 650 ) 2398  #SN_«s_192_cfb1 "AES-192-CFB1" ) 2399  #LN_«s_192_cfb1 "«s-192-cfb1" ) 2400  #NID_«s_192_cfb1 651 ) 2402  #SN_«s_256_cfb1 "AES-256-CFB1" ) 2403  #LN_«s_256_cfb1 "«s-256-cfb1" ) 2404  #NID_«s_256_cfb1 652 ) 2406  #SN_«s_128_cfb8 "AES-128-CFB8" ) 2407  #LN_«s_128_cfb8 "«s-128-cfb8" ) 2408  #NID_«s_128_cfb8 653 ) 2410  #SN_«s_192_cfb8 "AES-192-CFB8" ) 2411  #LN_«s_192_cfb8 "«s-192-cfb8" ) 2412  #NID_«s_192_cfb8 654 ) 2414  #SN_«s_256_cfb8 "AES-256-CFB8" ) 2415  #LN_«s_256_cfb8 "«s-256-cfb8" ) 2416  #NID_«s_256_cfb8 655 ) 2418  #SN_des_cfb1 "DES-CFB1" ) 2419  #LN_des_cfb1 "des-cfb1" ) 2420  #NID_des_cfb1 656 ) 2422  #SN_des_cfb8 "DES-CFB8" ) 2423  #LN_des_cfb8 "des-cfb8" ) 2424  #NID_des_cfb8 657 ) 2426  #SN_des_ede3_cfb1 "DES-EDE3-CFB1" ) 2427  #LN_des_ede3_cfb1 "des-ede3-cfb1" ) 2428  #NID_des_ede3_cfb1 658 ) 2430  #SN_des_ede3_cfb8 "DES-EDE3-CFB8" ) 2431  #LN_des_ede3_cfb8 "des-ede3-cfb8" ) 2432  #NID_des_ede3_cfb8 659 ) 2434  #OBJ_ni¡_hash®gs OBJ_ni¡AlgÜ™hms ,2L ) 2436  #SN_sha256 "SHA256" ) 2437  #LN_sha256 "sha256" ) 2438  #NID_sha256 672 ) 2439  #OBJ_sha256 OBJ_ni¡_hash®gs ,1L ) 2441  #SN_sha384 "SHA384" ) 2442  #LN_sha384 "sha384" ) 2443  #NID_sha384 673 ) 2444  #OBJ_sha384 OBJ_ni¡_hash®gs ,2L ) 2446  #SN_sha512 "SHA512" ) 2447  #LN_sha512 "sha512" ) 2448  #NID_sha512 674 ) 2449  #OBJ_sha512 OBJ_ni¡_hash®gs ,3L ) 2451  #SN_sha224 "SHA224" ) 2452  #LN_sha224 "sha224" ) 2453  #NID_sha224 675 ) 2454  #OBJ_sha224 OBJ_ni¡_hash®gs ,4L ) 2456  #SN_hÞd_š¡ruùiÚ_code "hÞdIn¡ruùiÚCode" ) 2457  #LN_hÞd_š¡ruùiÚ_code "HÞd In¡ruùiÚ Code" ) 2458  #NID_hÞd_š¡ruùiÚ_code 430 ) 2459  #OBJ_hÞd_š¡ruùiÚ_code OBJ_id_û ,23L ) 2461  #OBJ_hÞdIn¡ruùiÚ OBJ_X9_57 ,2L ) 2463  #SN_hÞd_š¡ruùiÚ_nÚe "hÞdIn¡ruùiÚNÚe" ) 2464  #LN_hÞd_š¡ruùiÚ_nÚe "HÞd In¡ruùiÚ NÚe" ) 2465  #NID_hÞd_š¡ruùiÚ_nÚe 431 ) 2466  #OBJ_hÞd_š¡ruùiÚ_nÚe OBJ_hÞdIn¡ruùiÚ ,1L ) 2468  #SN_hÞd_š¡ruùiÚ_ÿÎ_issu” "hÞdIn¡ruùiÚC®lIssu”" ) 2469  #LN_hÞd_š¡ruùiÚ_ÿÎ_issu” "HÞd In¡ruùiÚ C®ÈIssu”" ) 2470  #NID_hÞd_š¡ruùiÚ_ÿÎ_issu” 432 ) 2471  #OBJ_hÞd_š¡ruùiÚ_ÿÎ_issu” OBJ_hÞdIn¡ruùiÚ ,2L ) 2473  #SN_hÞd_š¡ruùiÚ_»jeù "hÞdIn¡ruùiÚRejeù" ) 2474  #LN_hÞd_š¡ruùiÚ_»jeù "HÞd In¡ruùiÚ Rejeù" ) 2475  #NID_hÞd_š¡ruùiÚ_»jeù 433 ) 2476  #OBJ_hÞd_š¡ruùiÚ_»jeù OBJ_hÞdIn¡ruùiÚ ,3L ) 2478  #SN_d©a "d©a" ) 2479  #NID_d©a 434 ) 2480  #OBJ_d©a OBJ_™u_t ,9L ) 2482  #SN_pss "pss" ) 2483  #NID_pss 435 ) 2484  #OBJ_pss OBJ_d©a ,2342L ) 2486  #SN_uþ "uþ" ) 2487  #NID_uþ 436 ) 2488  #OBJ_uþ OBJ_pss ,19200300L ) 2490  #SN_pžÙ "pžÙ" ) 2491  #NID_pžÙ 437 ) 2492  #OBJ_pžÙ OBJ_uþ ,100L ) 2494  #LN_pžÙA‰ribu‹Ty³ "pžÙA‰ribu‹Ty³" ) 2495  #NID_pžÙA‰ribu‹Ty³ 438 ) 2496  #OBJ_pžÙA‰ribu‹Ty³ OBJ_pžÙ ,1L ) 2498  #LN_pžÙA‰ribu‹SyÁax "pžÙA‰ribu‹SyÁax" ) 2499  #NID_pžÙA‰ribu‹SyÁax 439 ) 2500  #OBJ_pžÙA‰ribu‹SyÁax OBJ_pžÙ ,3L ) 2502  #LN_pžÙObjeùCÏss "pžÙObjeùCÏss" ) 2503  #NID_pžÙObjeùCÏss 440 ) 2504  #OBJ_pžÙObjeùCÏss OBJ_pžÙ ,4L ) 2506  #LN_pžÙGroups "pžÙGroups" ) 2507  #NID_pžÙGroups 441 ) 2508  #OBJ_pžÙGroups OBJ_pžÙ ,10L ) 2510  #LN_iA5SŒšgSyÁax "iA5SŒšgSyÁax" ) 2511  #NID_iA5SŒšgSyÁax 442 ) 2512  #OBJ_iA5SŒšgSyÁax OBJ_pžÙA‰ribu‹SyÁax ,4L ) 2514  #LN_ÿ£IgnÜeIA5SŒšgSyÁax "ÿ£IgnÜeIA5SŒšgSyÁax" ) 2515  #NID_ÿ£IgnÜeIA5SŒšgSyÁax 443 ) 2516  #OBJ_ÿ£IgnÜeIA5SŒšgSyÁax OBJ_pžÙA‰ribu‹SyÁax ,5L ) 2518  #LN_pžÙObjeù "pžÙObjeù" ) 2519  #NID_pžÙObjeù 444 ) 2520  #OBJ_pžÙObjeù OBJ_pžÙObjeùCÏss ,3L ) 2522  #LN_pžÙP”sÚ "pžÙP”sÚ" ) 2523  #NID_pžÙP”sÚ 445 ) 2524  #OBJ_pžÙP”sÚ OBJ_pžÙObjeùCÏss ,4L ) 2526  #SN_accouÁ "accouÁ" ) 2527  #NID_accouÁ 446 ) 2528  #OBJ_accouÁ OBJ_pžÙObjeùCÏss ,5L ) 2530  #SN_docum’t "docum’t" ) 2531  #NID_docum’t 447 ) 2532  #OBJ_docum’t OBJ_pžÙObjeùCÏss ,6L ) 2534  #SN_room "room" ) 2535  #NID_room 448 ) 2536  #OBJ_room OBJ_pžÙObjeùCÏss ,7L ) 2538  #LN_docum’tS”›s "docum’tS”›s" ) 2539  #NID_docum’tS”›s 449 ) 2540  #OBJ_docum’tS”›s OBJ_pžÙObjeùCÏss ,9L ) 2542  #SN_Domaš "domaš" ) 2543  #LN_Domaš "Domaš" ) 2544  #NID_Domaš 392 ) 2545  #OBJ_Domaš OBJ_pžÙObjeùCÏss ,13L ) 2547  #LN_rFC822loÿlP¬t "rFC822loÿlP¬t" ) 2548  #NID_rFC822loÿlP¬t 450 ) 2549  #OBJ_rFC822loÿlP¬t OBJ_pžÙObjeùCÏss ,14L ) 2551  #LN_dNSDomaš "dNSDomaš" ) 2552  #NID_dNSDomaš 451 ) 2553  #OBJ_dNSDomaš OBJ_pžÙObjeùCÏss ,15L ) 2555  #LN_domašR–©edObjeù "domašR–©edObjeù" ) 2556  #NID_domašR–©edObjeù 452 ) 2557  #OBJ_domašR–©edObjeù OBJ_pžÙObjeùCÏss ,17L ) 2559  #LN_ä›ndlyCouÁry "ä›ndlyCouÁry" ) 2560  #NID_ä›ndlyCouÁry 453 ) 2561  #OBJ_ä›ndlyCouÁry OBJ_pžÙObjeùCÏss ,18L ) 2563  #LN_sim¶eSecur™yObjeù "sim¶eSecur™yObjeù" ) 2564  #NID_sim¶eSecur™yObjeù 454 ) 2565  #OBJ_sim¶eSecur™yObjeù OBJ_pžÙObjeùCÏss ,19L ) 2567  #LN_pžÙOrgªiz©iÚ "pžÙOrgªiz©iÚ" ) 2568  #NID_pžÙOrgªiz©iÚ 455 ) 2569  #OBJ_pžÙOrgªiz©iÚ OBJ_pžÙObjeùCÏss ,20L ) 2571  #LN_pžÙDSA "pžÙDSA" ) 2572  #NID_pžÙDSA 456 ) 2573  #OBJ_pžÙDSA OBJ_pžÙObjeùCÏss ,21L ) 2575  #LN_qu®™yLab–ËdD©a "qu®™yLab–ËdD©a" ) 2576  #NID_qu®™yLab–ËdD©a 457 ) 2577  #OBJ_qu®™yLab–ËdD©a OBJ_pžÙObjeùCÏss ,22L ) 2579  #SN_u£rId "UID" ) 2580  #LN_u£rId "u£rId" ) 2581  #NID_u£rId 458 ) 2582  #OBJ_u£rId OBJ_pžÙA‰ribu‹Ty³ ,1L ) 2584  #LN_‹xtEncodedORAdd»ss "‹xtEncodedORAdd»ss" ) 2585  #NID_‹xtEncodedORAdd»ss 459 ) 2586  #OBJ_‹xtEncodedORAdd»ss OBJ_pžÙA‰ribu‹Ty³ ,2L ) 2588  #SN_rfc822Mažbox "maž" ) 2589  #LN_rfc822Mažbox "rfc822Mažbox" ) 2590  #NID_rfc822Mažbox 460 ) 2591  #OBJ_rfc822Mažbox OBJ_pžÙA‰ribu‹Ty³ ,3L ) 2593  #SN_šfo "šfo" ) 2594  #NID_šfo 461 ) 2595  #OBJ_šfo OBJ_pžÙA‰ribu‹Ty³ ,4L ) 2597  #LN_çvour™eDršk "çvour™eDršk" ) 2598  #NID_çvour™eDršk 462 ) 2599  #OBJ_çvour™eDršk OBJ_pžÙA‰ribu‹Ty³ ,5L ) 2601  #LN_roomNumb” "roomNumb”" ) 2602  #NID_roomNumb” 463 ) 2603  #OBJ_roomNumb” OBJ_pžÙA‰ribu‹Ty³ ,6L ) 2605  #SN_phÙo "phÙo" ) 2606  #NID_phÙo 464 ) 2607  #OBJ_phÙo OBJ_pžÙA‰ribu‹Ty³ ,7L ) 2609  #LN_u£rCÏss "u£rCÏss" ) 2610  #NID_u£rCÏss 465 ) 2611  #OBJ_u£rCÏss OBJ_pžÙA‰ribu‹Ty³ ,8L ) 2613  #SN_ho¡ "ho¡" ) 2614  #NID_ho¡ 466 ) 2615  #OBJ_ho¡ OBJ_pžÙA‰ribu‹Ty³ ,9L ) 2617  #SN_mªag” "mªag”" ) 2618  #NID_mªag” 467 ) 2619  #OBJ_mªag” OBJ_pžÙA‰ribu‹Ty³ ,10L ) 2621  #LN_docum’tId’tif›r "docum’tId’tif›r" ) 2622  #NID_docum’tId’tif›r 468 ) 2623  #OBJ_docum’tId’tif›r OBJ_pžÙA‰ribu‹Ty³ ,11L ) 2625  #LN_docum’tT™Ë "docum’tT™Ë" ) 2626  #NID_docum’tT™Ë 469 ) 2627  #OBJ_docum’tT™Ë OBJ_pžÙA‰ribu‹Ty³ ,12L ) 2629  #LN_docum’tV”siÚ "docum’tV”siÚ" ) 2630  #NID_docum’tV”siÚ 470 ) 2631  #OBJ_docum’tV”siÚ OBJ_pžÙA‰ribu‹Ty³ ,13L ) 2633  #LN_docum’tAuthÜ "docum’tAuthÜ" ) 2634  #NID_docum’tAuthÜ 471 ) 2635  #OBJ_docum’tAuthÜ OBJ_pžÙA‰ribu‹Ty³ ,14L ) 2637  #LN_docum’tLoÿtiÚ "docum’tLoÿtiÚ" ) 2638  #NID_docum’tLoÿtiÚ 472 ) 2639  #OBJ_docum’tLoÿtiÚ OBJ_pžÙA‰ribu‹Ty³ ,15L ) 2641  #LN_homeT–•hÚeNumb” "homeT–•hÚeNumb”" ) 2642  #NID_homeT–•hÚeNumb” 473 ) 2643  #OBJ_homeT–•hÚeNumb” OBJ_pžÙA‰ribu‹Ty³ ,20L ) 2645  #SN_£ü‘¬y "£ü‘¬y" ) 2646  #NID_£ü‘¬y 474 ) 2647  #OBJ_£ü‘¬y OBJ_pžÙA‰ribu‹Ty³ ,21L ) 2649  #LN_Ùh”Mažbox "Ùh”Mažbox" ) 2650  #NID_Ùh”Mažbox 475 ) 2651  #OBJ_Ùh”Mažbox OBJ_pžÙA‰ribu‹Ty³ ,22L ) 2653  #LN_Ï¡Modif›dTime "Ï¡Modif›dTime" ) 2654  #NID_Ï¡Modif›dTime 476 ) 2655  #OBJ_Ï¡Modif›dTime OBJ_pžÙA‰ribu‹Ty³ ,23L ) 2657  #LN_Ï¡Modif›dBy "Ï¡Modif›dBy" ) 2658  #NID_Ï¡Modif›dBy 477 ) 2659  #OBJ_Ï¡Modif›dBy OBJ_pžÙA‰ribu‹Ty³ ,24L ) 2661  #SN_domašCompÚ’t "DC" ) 2662  #LN_domašCompÚ’t "domašCompÚ’t" ) 2663  #NID_domašCompÚ’t 391 ) 2664  #OBJ_domašCompÚ’t OBJ_pžÙA‰ribu‹Ty³ ,25L ) 2666  #LN_aRecÜd "aRecÜd" ) 2667  #NID_aRecÜd 478 ) 2668  #OBJ_aRecÜd OBJ_pžÙA‰ribu‹Ty³ ,26L ) 2670  #LN_pžÙA‰ribu‹Ty³27 "pžÙA‰ribu‹Ty³27" ) 2671  #NID_pžÙA‰ribu‹Ty³27 479 ) 2672  #OBJ_pžÙA‰ribu‹Ty³27 OBJ_pžÙA‰ribu‹Ty³ ,27L ) 2674  #LN_mXRecÜd "mXRecÜd" ) 2675  #NID_mXRecÜd 480 ) 2676  #OBJ_mXRecÜd OBJ_pžÙA‰ribu‹Ty³ ,28L ) 2678  #LN_nSRecÜd "nSRecÜd" ) 2679  #NID_nSRecÜd 481 ) 2680  #OBJ_nSRecÜd OBJ_pžÙA‰ribu‹Ty³ ,29L ) 2682  #LN_sOARecÜd "sOARecÜd" ) 2683  #NID_sOARecÜd 482 ) 2684  #OBJ_sOARecÜd OBJ_pžÙA‰ribu‹Ty³ ,30L ) 2686  #LN_cNAMERecÜd "cNAMERecÜd" ) 2687  #NID_cNAMERecÜd 483 ) 2688  #OBJ_cNAMERecÜd OBJ_pžÙA‰ribu‹Ty³ ,31L ) 2690  #LN_assocŸ‹dDomaš "assocŸ‹dDomaš" ) 2691  #NID_assocŸ‹dDomaš 484 ) 2692  #OBJ_assocŸ‹dDomaš OBJ_pžÙA‰ribu‹Ty³ ,37L ) 2694  #LN_assocŸ‹dName "assocŸ‹dName" ) 2695  #NID_assocŸ‹dName 485 ) 2696  #OBJ_assocŸ‹dName OBJ_pžÙA‰ribu‹Ty³ ,38L ) 2698  #LN_homePo¡®Add»ss "homePo¡®Add»ss" ) 2699  #NID_homePo¡®Add»ss 486 ) 2700  #OBJ_homePo¡®Add»ss OBJ_pžÙA‰ribu‹Ty³ ,39L ) 2702  #LN_³rsÚ®T™Ë "³rsÚ®T™Ë" ) 2703  #NID_³rsÚ®T™Ë 487 ) 2704  #OBJ_³rsÚ®T™Ë OBJ_pžÙA‰ribu‹Ty³ ,40L ) 2706  #LN_mobžeT–•hÚeNumb” "mobžeT–•hÚeNumb”" ) 2707  #NID_mobžeT–•hÚeNumb” 488 ) 2708  #OBJ_mobžeT–•hÚeNumb” OBJ_pžÙA‰ribu‹Ty³ ,41L ) 2710  #LN_·g”T–•hÚeNumb” "·g”T–•hÚeNumb”" ) 2711  #NID_·g”T–•hÚeNumb” 489 ) 2712  #OBJ_·g”T–•hÚeNumb” OBJ_pžÙA‰ribu‹Ty³ ,42L ) 2714  #LN_ä›ndlyCouÁryName "ä›ndlyCouÁryName" ) 2715  #NID_ä›ndlyCouÁryName 490 ) 2716  #OBJ_ä›ndlyCouÁryName OBJ_pžÙA‰ribu‹Ty³ ,43L ) 2718  #LN_Ügªiz©iÚ®Stus "Ügªiz©iÚ®Stus" ) 2719  #NID_Ügªiz©iÚ®Stus 491 ) 2720  #OBJ_Ügªiz©iÚ®Stus OBJ_pžÙA‰ribu‹Ty³ ,45L ) 2722  #LN_jª‘Mažbox "jª‘Mažbox" ) 2723  #NID_jª‘Mažbox 492 ) 2724  #OBJ_jª‘Mažbox OBJ_pžÙA‰ribu‹Ty³ ,46L ) 2726  #LN_mažP»ã»nûO±iÚ "mažP»ã»nûO±iÚ" ) 2727  #NID_mažP»ã»nûO±iÚ 493 ) 2728  #OBJ_mažP»ã»nûO±iÚ OBJ_pžÙA‰ribu‹Ty³ ,47L ) 2730  #LN_buždšgName "buždšgName" ) 2731  #NID_buždšgName 494 ) 2732  #OBJ_buždšgName OBJ_pžÙA‰ribu‹Ty³ ,48L ) 2734  #LN_dSAQu®™y "dSAQu®™y" ) 2735  #NID_dSAQu®™y 495 ) 2736  #OBJ_dSAQu®™y OBJ_pžÙA‰ribu‹Ty³ ,49L ) 2738  #LN_sšgËLev–Qu®™y "sšgËLev–Qu®™y" ) 2739  #NID_sšgËLev–Qu®™y 496 ) 2740  #OBJ_sšgËLev–Qu®™y OBJ_pžÙA‰ribu‹Ty³ ,50L ) 2742  #LN_subŒ“MšimumQu®™y "subŒ“MšimumQu®™y" ) 2743  #NID_subŒ“MšimumQu®™y 497 ) 2744  #OBJ_subŒ“MšimumQu®™y OBJ_pžÙA‰ribu‹Ty³ ,51L ) 2746  #LN_subŒ“MaximumQu®™y "subŒ“MaximumQu®™y" ) 2747  #NID_subŒ“MaximumQu®™y 498 ) 2748  #OBJ_subŒ“MaximumQu®™y OBJ_pžÙA‰ribu‹Ty³ ,52L ) 2750  #LN_³rsÚ®SigÇtu» "³rsÚ®SigÇtu»" ) 2751  #NID_³rsÚ®SigÇtu» 499 ) 2752  #OBJ_³rsÚ®SigÇtu» OBJ_pžÙA‰ribu‹Ty³ ,53L ) 2754  #LN_dITRedœeù "dITRedœeù" ) 2755  #NID_dITRedœeù 500 ) 2756  #OBJ_dITRedœeù OBJ_pžÙA‰ribu‹Ty³ ,54L ) 2758  #SN_audio "audio" ) 2759  #NID_audio 501 ) 2760  #OBJ_audio OBJ_pžÙA‰ribu‹Ty³ ,55L ) 2762  #LN_docum’tPublish” "docum’tPublish”" ) 2763  #NID_docum’tPublish” 502 ) 2764  #OBJ_docum’tPublish” OBJ_pžÙA‰ribu‹Ty³ ,56L ) 2766  #SN_id_£t "id-£t" ) 2767  #LN_id_£t "Secu» EËùrÚiøT¿n§ùiÚs" ) 2768  #NID_id_£t 512 ) 2769  #OBJ_id_£t OBJ_š‹º©iÚ®_Ügªiz©iÚs ,42L ) 2771  #SN_£t_ùy³ "£t-ùy³" ) 2772  #LN_£t_ùy³ "cÚ‹Áy³s" ) 2773  #NID_£t_ùy³ 513 ) 2774  #OBJ_£t_ùy³ OBJ_id_£t ,0L ) 2776  #SN_£t_msgExt "£t-msgExt" ) 2777  #LN_£t_msgExt "mes§gex‹nsiÚs" ) 2778  #NID_£t_msgExt 514 ) 2779  #OBJ_£t_msgExt OBJ_id_£t ,1L ) 2781  #SN_£t_©Œ "£t-©Œ" ) 2782  #NID_£t_©Œ 515 ) 2783  #OBJ_£t_©Œ OBJ_id_£t ,3L ) 2785  #SN_£t_pÞicy "£t-pÞicy" ) 2786  #NID_£t_pÞicy 516 ) 2787  #OBJ_£t_pÞicy OBJ_id_£t ,5L ) 2789  #SN_£t_û¹Ext "£t-û¹Ext" ) 2790  #LN_£t_û¹Ext "û¹ifiÿ‹ƒx‹nsiÚs" ) 2791  #NID_£t_û¹Ext 517 ) 2792  #OBJ_£t_û¹Ext OBJ_id_£t ,7L ) 2794  #SN_£t_b¿nd "£t-b¿nd" ) 2795  #NID_£t_b¿nd 518 ) 2796  #OBJ_£t_b¿nd OBJ_id_£t ,8L ) 2798  #SN_£tù_PAND©a "£tù-PAND©a" ) 2799  #NID_£tù_PAND©a 519 ) 2800  #OBJ_£tù_PAND©a OBJ_£t_ùy³ ,0L ) 2802  #SN_£tù_PANTok’ "£tù-PANTok’" ) 2803  #NID_£tù_PANTok’ 520 ) 2804  #OBJ_£tù_PANTok’ OBJ_£t_ùy³ ,1L ) 2806  #SN_£tù_PANOÆy "£tù-PANOÆy" ) 2807  #NID_£tù_PANOÆy 521 ) 2808  #OBJ_£tù_PANOÆy OBJ_£t_ùy³ ,2L ) 2810  #SN_£tù_OID©a "£tù-OID©a" ) 2811  #NID_£tù_OID©a 522 ) 2812  #OBJ_£tù_OID©a OBJ_£t_ùy³ ,3L ) 2814  #SN_£tù_PI "£tù-PI" ) 2815  #NID_£tù_PI 523 ) 2816  #OBJ_£tù_PI OBJ_£t_ùy³ ,4L ) 2818  #SN_£tù_PID©a "£tù-PID©a" ) 2819  #NID_£tù_PID©a 524 ) 2820  #OBJ_£tù_PID©a OBJ_£t_ùy³ ,5L ) 2822  #SN_£tù_PID©aUnsigÃd "£tù-PID©aUnsigÃd" ) 2823  #NID_£tù_PID©aUnsigÃd 525 ) 2824  #OBJ_£tù_PID©aUnsigÃd OBJ_£t_ùy³ ,6L ) 2826  #SN_£tù_HODIÅut "£tù-HODIÅut" ) 2827  #NID_£tù_HODIÅut 526 ) 2828  #OBJ_£tù_HODIÅut OBJ_£t_ùy³ ,7L ) 2830  #SN_£tù_AuthResBaggage "£tù-AuthResBaggage" ) 2831  #NID_£tù_AuthResBaggage 527 ) 2832  #OBJ_£tù_AuthResBaggage OBJ_£t_ùy³ ,8L ) 2834  #SN_£tù_AuthRevReqBaggage "£tù-AuthRevReqBaggage" ) 2835  #NID_£tù_AuthRevReqBaggage 528 ) 2836  #OBJ_£tù_AuthRevReqBaggage OBJ_£t_ùy³ ,9L ) 2838  #SN_£tù_AuthRevResBaggage "£tù-AuthRevResBaggage" ) 2839  #NID_£tù_AuthRevResBaggage 529 ) 2840  #OBJ_£tù_AuthRevResBaggage OBJ_£t_ùy³ ,10L ) 2842  #SN_£tù_C­Tok’Seq "£tù-C­Tok’Seq" ) 2843  #NID_£tù_C­Tok’Seq 530 ) 2844  #OBJ_£tù_C­Tok’Seq OBJ_£t_ùy³ ,11L ) 2846  #SN_£tù_PIn™ResD©a "£tù-PIn™ResD©a" ) 2847  #NID_£tù_PIn™ResD©a 531 ) 2848  #OBJ_£tù_PIn™ResD©a OBJ_£t_ùy³ ,12L ) 2850  #SN_£tù_PI_TBS "£tù-PI-TBS" ) 2851  #NID_£tù_PI_TBS 532 ) 2852  #OBJ_£tù_PI_TBS OBJ_£t_ùy³ ,13L ) 2854  #SN_£tù_PResD©a "£tù-PResD©a" ) 2855  #NID_£tù_PResD©a 533 ) 2856  #OBJ_£tù_PResD©a OBJ_£t_ùy³ ,14L ) 2858  #SN_£tù_AuthReqTBS "£tù-AuthReqTBS" ) 2859  #NID_£tù_AuthReqTBS 534 ) 2860  #OBJ_£tù_AuthReqTBS OBJ_£t_ùy³ ,16L ) 2862  #SN_£tù_AuthResTBS "£tù-AuthResTBS" ) 2863  #NID_£tù_AuthResTBS 535 ) 2864  #OBJ_£tù_AuthResTBS OBJ_£t_ùy³ ,17L ) 2866  #SN_£tù_AuthResTBSX "£tù-AuthResTBSX" ) 2867  #NID_£tù_AuthResTBSX 536 ) 2868  #OBJ_£tù_AuthResTBSX OBJ_£t_ùy³ ,18L ) 2870  #SN_£tù_AuthTok’TBS "£tù-AuthTok’TBS" ) 2871  #NID_£tù_AuthTok’TBS 537 ) 2872  #OBJ_£tù_AuthTok’TBS OBJ_£t_ùy³ ,19L ) 2874  #SN_£tù_C­Tok’D©a "£tù-C­Tok’D©a" ) 2875  #NID_£tù_C­Tok’D©a 538 ) 2876  #OBJ_£tù_C­Tok’D©a OBJ_£t_ùy³ ,20L ) 2878  #SN_£tù_C­Tok’TBS "£tù-C­Tok’TBS" ) 2879  #NID_£tù_C­Tok’TBS 539 ) 2880  #OBJ_£tù_C­Tok’TBS OBJ_£t_ùy³ ,21L ) 2882  #SN_£tù_AcqC¬dCodeMsg "£tù-AcqC¬dCodeMsg" ) 2883  #NID_£tù_AcqC¬dCodeMsg 540 ) 2884  #OBJ_£tù_AcqC¬dCodeMsg OBJ_£t_ùy³ ,22L ) 2886  #SN_£tù_AuthRevReqTBS "£tù-AuthRevReqTBS" ) 2887  #NID_£tù_AuthRevReqTBS 541 ) 2888  #OBJ_£tù_AuthRevReqTBS OBJ_£t_ùy³ ,23L ) 2890  #SN_£tù_AuthRevResD©a "£tù-AuthRevResD©a" ) 2891  #NID_£tù_AuthRevResD©a 542 ) 2892  #OBJ_£tù_AuthRevResD©a OBJ_£t_ùy³ ,24L ) 2894  #SN_£tù_AuthRevResTBS "£tù-AuthRevResTBS" ) 2895  #NID_£tù_AuthRevResTBS 543 ) 2896  #OBJ_£tù_AuthRevResTBS OBJ_£t_ùy³ ,25L ) 2898  #SN_£tù_C­ReqTBS "£tù-C­ReqTBS" ) 2899  #NID_£tù_C­ReqTBS 544 ) 2900  #OBJ_£tù_C­ReqTBS OBJ_£t_ùy³ ,26L ) 2902  #SN_£tù_C­ReqTBSX "£tù-C­ReqTBSX" ) 2903  #NID_£tù_C­ReqTBSX 545 ) 2904  #OBJ_£tù_C­ReqTBSX OBJ_£t_ùy³ ,27L ) 2906  #SN_£tù_C­ResD©a "£tù-C­ResD©a" ) 2907  #NID_£tù_C­ResD©a 546 ) 2908  #OBJ_£tù_C­ResD©a OBJ_£t_ùy³ ,28L ) 2910  #SN_£tù_C­RevReqTBS "£tù-C­RevReqTBS" ) 2911  #NID_£tù_C­RevReqTBS 547 ) 2912  #OBJ_£tù_C­RevReqTBS OBJ_£t_ùy³ ,29L ) 2914  #SN_£tù_C­RevReqTBSX "£tù-C­RevReqTBSX" ) 2915  #NID_£tù_C­RevReqTBSX 548 ) 2916  #OBJ_£tù_C­RevReqTBSX OBJ_£t_ùy³ ,30L ) 2918  #SN_£tù_C­RevResD©a "£tù-C­RevResD©a" ) 2919  #NID_£tù_C­RevResD©a 549 ) 2920  #OBJ_£tù_C­RevResD©a OBJ_£t_ùy³ ,31L ) 2922  #SN_£tù_C»dReqTBS "£tù-C»dReqTBS" ) 2923  #NID_£tù_C»dReqTBS 550 ) 2924  #OBJ_£tù_C»dReqTBS OBJ_£t_ùy³ ,32L ) 2926  #SN_£tù_C»dReqTBSX "£tù-C»dReqTBSX" ) 2927  #NID_£tù_C»dReqTBSX 551 ) 2928  #OBJ_£tù_C»dReqTBSX OBJ_£t_ùy³ ,33L ) 2930  #SN_£tù_C»dResD©a "£tù-C»dResD©a" ) 2931  #NID_£tù_C»dResD©a 552 ) 2932  #OBJ_£tù_C»dResD©a OBJ_£t_ùy³ ,34L ) 2934  #SN_£tù_C»dRevReqTBS "£tù-C»dRevReqTBS" ) 2935  #NID_£tù_C»dRevReqTBS 553 ) 2936  #OBJ_£tù_C»dRevReqTBS OBJ_£t_ùy³ ,35L ) 2938  #SN_£tù_C»dRevReqTBSX "£tù-C»dRevReqTBSX" ) 2939  #NID_£tù_C»dRevReqTBSX 554 ) 2940  #OBJ_£tù_C»dRevReqTBSX OBJ_£t_ùy³ ,36L ) 2942  #SN_£tù_C»dRevResD©a "£tù-C»dRevResD©a" ) 2943  #NID_£tù_C»dRevResD©a 555 ) 2944  #OBJ_£tù_C»dRevResD©a OBJ_£t_ùy³ ,37L ) 2946  #SN_£tù_PC”tReqD©a "£tù-PC”tReqD©a" ) 2947  #NID_£tù_PC”tReqD©a 556 ) 2948  #OBJ_£tù_PC”tReqD©a OBJ_£t_ùy³ ,38L ) 2950  #SN_£tù_PC”tResTBS "£tù-PC”tResTBS" ) 2951  #NID_£tù_PC”tResTBS 557 ) 2952  #OBJ_£tù_PC”tResTBS OBJ_£t_ùy³ ,39L ) 2954  #SN_£tù_B©chAdmšReqD©a "£tù-B©chAdmšReqD©a" ) 2955  #NID_£tù_B©chAdmšReqD©a 558 ) 2956  #OBJ_£tù_B©chAdmšReqD©a OBJ_£t_ùy³ ,40L ) 2958  #SN_£tù_B©chAdmšResD©a "£tù-B©chAdmšResD©a" ) 2959  #NID_£tù_B©chAdmšResD©a 559 ) 2960  #OBJ_£tù_B©chAdmšResD©a OBJ_£t_ùy³ ,41L ) 2962  #SN_£tù_C¬dCIn™ResTBS "£tù-C¬dCIn™ResTBS" ) 2963  #NID_£tù_C¬dCIn™ResTBS 560 ) 2964  #OBJ_£tù_C¬dCIn™ResTBS OBJ_£t_ùy³ ,42L ) 2966  #SN_£tù_MeAqCIn™ResTBS "£tù-MeAqCIn™ResTBS" ) 2967  #NID_£tù_MeAqCIn™ResTBS 561 ) 2968  #OBJ_£tù_MeAqCIn™ResTBS OBJ_£t_ùy³ ,43L ) 2970  #SN_£tù_RegFÜmResTBS "£tù-RegFÜmResTBS" ) 2971  #NID_£tù_RegFÜmResTBS 562 ) 2972  #OBJ_£tù_RegFÜmResTBS OBJ_£t_ùy³ ,44L ) 2974  #SN_£tù_C”tReqD©a "£tù-C”tReqD©a" ) 2975  #NID_£tù_C”tReqD©a 563 ) 2976  #OBJ_£tù_C”tReqD©a OBJ_£t_ùy³ ,45L ) 2978  #SN_£tù_C”tReqTBS "£tù-C”tReqTBS" ) 2979  #NID_£tù_C”tReqTBS 564 ) 2980  #OBJ_£tù_C”tReqTBS OBJ_£t_ùy³ ,46L ) 2982  #SN_£tù_C”tResD©a "£tù-C”tResD©a" ) 2983  #NID_£tù_C”tResD©a 565 ) 2984  #OBJ_£tù_C”tResD©a OBJ_£t_ùy³ ,47L ) 2986  #SN_£tù_C”tInqReqTBS "£tù-C”tInqReqTBS" ) 2987  #NID_£tù_C”tInqReqTBS 566 ) 2988  #OBJ_£tù_C”tInqReqTBS OBJ_£t_ùy³ ,48L ) 2990  #SN_£tù_E¼ÜTBS "£tù-E¼ÜTBS" ) 2991  #NID_£tù_E¼ÜTBS 567 ) 2992  #OBJ_£tù_E¼ÜTBS OBJ_£t_ùy³ ,49L ) 2994  #SN_£tù_PIDu®SigÃdTBE "£tù-PIDu®SigÃdTBE" ) 2995  #NID_£tù_PIDu®SigÃdTBE 568 ) 2996  #OBJ_£tù_PIDu®SigÃdTBE OBJ_£t_ùy³ ,50L ) 2998  #SN_£tù_PIUnsigÃdTBE "£tù-PIUnsigÃdTBE" ) 2999  #NID_£tù_PIUnsigÃdTBE 569 ) 3000  #OBJ_£tù_PIUnsigÃdTBE OBJ_£t_ùy³ ,51L ) 3002  #SN_£tù_AuthReqTBE "£tù-AuthReqTBE" ) 3003  #NID_£tù_AuthReqTBE 570 ) 3004  #OBJ_£tù_AuthReqTBE OBJ_£t_ùy³ ,52L ) 3006  #SN_£tù_AuthResTBE "£tù-AuthResTBE" ) 3007  #NID_£tù_AuthResTBE 571 ) 3008  #OBJ_£tù_AuthResTBE OBJ_£t_ùy³ ,53L ) 3010  #SN_£tù_AuthResTBEX "£tù-AuthResTBEX" ) 3011  #NID_£tù_AuthResTBEX 572 ) 3012  #OBJ_£tù_AuthResTBEX OBJ_£t_ùy³ ,54L ) 3014  #SN_£tù_AuthTok’TBE "£tù-AuthTok’TBE" ) 3015  #NID_£tù_AuthTok’TBE 573 ) 3016  #OBJ_£tù_AuthTok’TBE OBJ_£t_ùy³ ,55L ) 3018  #SN_£tù_C­Tok’TBE "£tù-C­Tok’TBE" ) 3019  #NID_£tù_C­Tok’TBE 574 ) 3020  #OBJ_£tù_C­Tok’TBE OBJ_£t_ùy³ ,56L ) 3022  #SN_£tù_C­Tok’TBEX "£tù-C­Tok’TBEX" ) 3023  #NID_£tù_C­Tok’TBEX 575 ) 3024  #OBJ_£tù_C­Tok’TBEX OBJ_£t_ùy³ ,57L ) 3026  #SN_£tù_AcqC¬dCodeMsgTBE "£tù-AcqC¬dCodeMsgTBE" ) 3027  #NID_£tù_AcqC¬dCodeMsgTBE 576 ) 3028  #OBJ_£tù_AcqC¬dCodeMsgTBE OBJ_£t_ùy³ ,58L ) 3030  #SN_£tù_AuthRevReqTBE "£tù-AuthRevReqTBE" ) 3031  #NID_£tù_AuthRevReqTBE 577 ) 3032  #OBJ_£tù_AuthRevReqTBE OBJ_£t_ùy³ ,59L ) 3034  #SN_£tù_AuthRevResTBE "£tù-AuthRevResTBE" ) 3035  #NID_£tù_AuthRevResTBE 578 ) 3036  #OBJ_£tù_AuthRevResTBE OBJ_£t_ùy³ ,60L ) 3038  #SN_£tù_AuthRevResTBEB "£tù-AuthRevResTBEB" ) 3039  #NID_£tù_AuthRevResTBEB 579 ) 3040  #OBJ_£tù_AuthRevResTBEB OBJ_£t_ùy³ ,61L ) 3042  #SN_£tù_C­ReqTBE "£tù-C­ReqTBE" ) 3043  #NID_£tù_C­ReqTBE 580 ) 3044  #OBJ_£tù_C­ReqTBE OBJ_£t_ùy³ ,62L ) 3046  #SN_£tù_C­ReqTBEX "£tù-C­ReqTBEX" ) 3047  #NID_£tù_C­ReqTBEX 581 ) 3048  #OBJ_£tù_C­ReqTBEX OBJ_£t_ùy³ ,63L ) 3050  #SN_£tù_C­ResTBE "£tù-C­ResTBE" ) 3051  #NID_£tù_C­ResTBE 582 ) 3052  #OBJ_£tù_C­ResTBE OBJ_£t_ùy³ ,64L ) 3054  #SN_£tù_C­RevReqTBE "£tù-C­RevReqTBE" ) 3055  #NID_£tù_C­RevReqTBE 583 ) 3056  #OBJ_£tù_C­RevReqTBE OBJ_£t_ùy³ ,65L ) 3058  #SN_£tù_C­RevReqTBEX "£tù-C­RevReqTBEX" ) 3059  #NID_£tù_C­RevReqTBEX 584 ) 3060  #OBJ_£tù_C­RevReqTBEX OBJ_£t_ùy³ ,66L ) 3062  #SN_£tù_C­RevResTBE "£tù-C­RevResTBE" ) 3063  #NID_£tù_C­RevResTBE 585 ) 3064  #OBJ_£tù_C­RevResTBE OBJ_£t_ùy³ ,67L ) 3066  #SN_£tù_C»dReqTBE "£tù-C»dReqTBE" ) 3067  #NID_£tù_C»dReqTBE 586 ) 3068  #OBJ_£tù_C»dReqTBE OBJ_£t_ùy³ ,68L ) 3070  #SN_£tù_C»dReqTBEX "£tù-C»dReqTBEX" ) 3071  #NID_£tù_C»dReqTBEX 587 ) 3072  #OBJ_£tù_C»dReqTBEX OBJ_£t_ùy³ ,69L ) 3074  #SN_£tù_C»dResTBE "£tù-C»dResTBE" ) 3075  #NID_£tù_C»dResTBE 588 ) 3076  #OBJ_£tù_C»dResTBE OBJ_£t_ùy³ ,70L ) 3078  #SN_£tù_C»dRevReqTBE "£tù-C»dRevReqTBE" ) 3079  #NID_£tù_C»dRevReqTBE 589 ) 3080  #OBJ_£tù_C»dRevReqTBE OBJ_£t_ùy³ ,71L ) 3082  #SN_£tù_C»dRevReqTBEX "£tù-C»dRevReqTBEX" ) 3083  #NID_£tù_C»dRevReqTBEX 590 ) 3084  #OBJ_£tù_C»dRevReqTBEX OBJ_£t_ùy³ ,72L ) 3086  #SN_£tù_C»dRevResTBE "£tù-C»dRevResTBE" ) 3087  #NID_£tù_C»dRevResTBE 591 ) 3088  #OBJ_£tù_C»dRevResTBE OBJ_£t_ùy³ ,73L ) 3090  #SN_£tù_B©chAdmšReqTBE "£tù-B©chAdmšReqTBE" ) 3091  #NID_£tù_B©chAdmšReqTBE 592 ) 3092  #OBJ_£tù_B©chAdmšReqTBE OBJ_£t_ùy³ ,74L ) 3094  #SN_£tù_B©chAdmšResTBE "£tù-B©chAdmšResTBE" ) 3095  #NID_£tù_B©chAdmšResTBE 593 ) 3096  #OBJ_£tù_B©chAdmšResTBE OBJ_£t_ùy³ ,75L ) 3098  #SN_£tù_RegFÜmReqTBE "£tù-RegFÜmReqTBE" ) 3099  #NID_£tù_RegFÜmReqTBE 594 ) 3100  #OBJ_£tù_RegFÜmReqTBE OBJ_£t_ùy³ ,76L ) 3102  #SN_£tù_C”tReqTBE "£tù-C”tReqTBE" ) 3103  #NID_£tù_C”tReqTBE 595 ) 3104  #OBJ_£tù_C”tReqTBE OBJ_£t_ùy³ ,77L ) 3106  #SN_£tù_C”tReqTBEX "£tù-C”tReqTBEX" ) 3107  #NID_£tù_C”tReqTBEX 596 ) 3108  #OBJ_£tù_C”tReqTBEX OBJ_£t_ùy³ ,78L ) 3110  #SN_£tù_C”tResTBE "£tù-C”tResTBE" ) 3111  #NID_£tù_C”tResTBE 597 ) 3112  #OBJ_£tù_C”tResTBE OBJ_£t_ùy³ ,79L ) 3114  #SN_£tù_CRLNÙifiÿtiÚTBS "£tù-CRLNÙifiÿtiÚTBS" ) 3115  #NID_£tù_CRLNÙifiÿtiÚTBS 598 ) 3116  #OBJ_£tù_CRLNÙifiÿtiÚTBS OBJ_£t_ùy³ ,80L ) 3118  #SN_£tù_CRLNÙifiÿtiÚResTBS "£tù-CRLNÙifiÿtiÚResTBS" ) 3119  #NID_£tù_CRLNÙifiÿtiÚResTBS 599 ) 3120  #OBJ_£tù_CRLNÙifiÿtiÚResTBS OBJ_£t_ùy³ ,81L ) 3122  #SN_£tù_BCIDi¡ributiÚTBS "£tù-BCIDi¡ributiÚTBS" ) 3123  #NID_£tù_BCIDi¡ributiÚTBS 600 ) 3124  #OBJ_£tù_BCIDi¡ributiÚTBS OBJ_£t_ùy³ ,82L ) 3126  #SN_£‹xt_g’Cry± "£‹xt-g’Cry±" ) 3127  #LN_£‹xt_g’Cry± "g’”iøüy±og¿m" ) 3128  #NID_£‹xt_g’Cry± 601 ) 3129  #OBJ_£‹xt_g’Cry± OBJ_£t_msgExt ,1L ) 3131  #SN_£‹xt_miAuth "£‹xt-miAuth" ) 3132  #LN_£‹xt_miAuth "m”chªˆš™Ÿ‹d‡uth" ) 3133  #NID_£‹xt_miAuth 602 ) 3134  #OBJ_£‹xt_miAuth OBJ_£t_msgExt ,3L ) 3136  #SN_£‹xt_pšSecu» "£‹xt-pšSecu»" ) 3137  #NID_£‹xt_pšSecu» 603 ) 3138  #OBJ_£‹xt_pšSecu» OBJ_£t_msgExt ,4L ) 3140  #SN_£‹xt_pšAny "£‹xt-pšAny" ) 3141  #NID_£‹xt_pšAny 604 ) 3142  #OBJ_£‹xt_pšAny OBJ_£t_msgExt ,5L ) 3144  #SN_£‹xt_Œack2 "£‹xt-Œack2" ) 3145  #NID_£‹xt_Œack2 605 ) 3146  #OBJ_£‹xt_Œack2 OBJ_£t_msgExt ,7L ) 3148  #SN_£‹xt_cv "£‹xt-cv" ) 3149  #LN_£‹xt_cv "add™iÚ® v”ifiÿtiÚ" ) 3150  #NID_£‹xt_cv 606 ) 3151  #OBJ_£‹xt_cv OBJ_£t_msgExt ,8L ) 3153  #SN_£t_pÞicy_roÙ "£t-pÞicy-roÙ" ) 3154  #NID_£t_pÞicy_roÙ 607 ) 3155  #OBJ_£t_pÞicy_roÙ OBJ_£t_pÞicy ,0L ) 3157  #SN_£tCext_hashedRoÙ "£tCext-hashedRoÙ" ) 3158  #NID_£tCext_hashedRoÙ 608 ) 3159  #OBJ_£tCext_hashedRoÙ OBJ_£t_û¹Ext ,0L ) 3161  #SN_£tCext_û¹Ty³ "£tCext-û¹Ty³" ) 3162  #NID_£tCext_û¹Ty³ 609 ) 3163  #OBJ_£tCext_û¹Ty³ OBJ_£t_û¹Ext ,1L ) 3165  #SN_£tCext_m”chD©a "£tCext-m”chD©a" ) 3166  #NID_£tCext_m”chD©a 610 ) 3167  #OBJ_£tCext_m”chD©a OBJ_£t_û¹Ext ,2L ) 3169  #SN_£tCext_cC”tRequœed "£tCext-cC”tRequœed" ) 3170  #NID_£tCext_cC”tRequœed 611 ) 3171  #OBJ_£tCext_cC”tRequœed OBJ_£t_û¹Ext ,3L ) 3173  #SN_£tCext_tu–šg "£tCext-tu–šg" ) 3174  #NID_£tCext_tu–šg 612 ) 3175  #OBJ_£tCext_tu–šg OBJ_£t_û¹Ext ,4L ) 3177  #SN_£tCext_£tExt "£tCext-£tExt" ) 3178  #NID_£tCext_£tExt 613 ) 3179  #OBJ_£tCext_£tExt OBJ_£t_û¹Ext ,5L ) 3181  #SN_£tCext_£tQu®f "£tCext-£tQu®f" ) 3182  #NID_£tCext_£tQu®f 614 ) 3183  #OBJ_£tCext_£tQu®f OBJ_£t_û¹Ext ,6L ) 3185  #SN_£tCext_PGWYÿ·bž™›s "£tCext-PGWYÿ·bž™›s" ) 3186  #NID_£tCext_PGWYÿ·bž™›s 615 ) 3187  #OBJ_£tCext_PGWYÿ·bž™›s OBJ_£t_û¹Ext ,7L ) 3189  #SN_£tCext_Tok’Id’tif›r "£tCext-Tok’Id’tif›r" ) 3190  #NID_£tCext_Tok’Id’tif›r 616 ) 3191  #OBJ_£tCext_Tok’Id’tif›r OBJ_£t_û¹Ext ,8L ) 3193  #SN_£tCext_T¿ck2D©a "£tCext-T¿ck2D©a" ) 3194  #NID_£tCext_T¿ck2D©a 617 ) 3195  #OBJ_£tCext_T¿ck2D©a OBJ_£t_û¹Ext ,9L ) 3197  #SN_£tCext_Tok’Ty³ "£tCext-Tok’Ty³" ) 3198  #NID_£tCext_Tok’Ty³ 618 ) 3199  #OBJ_£tCext_Tok’Ty³ OBJ_£t_û¹Ext ,10L ) 3201  #SN_£tCext_Issu”C­abž™›s "£tCext-Issu”C­abž™›s" ) 3202  #NID_£tCext_Issu”C­abž™›s 619 ) 3203  #OBJ_£tCext_Issu”C­abž™›s OBJ_£t_û¹Ext ,11L ) 3205  #SN_£tA‰r_C”t "£tA‰r-C”t" ) 3206  #NID_£tA‰r_C”t 620 ) 3207  #OBJ_£tA‰r_C”t OBJ_£t_©Œ ,0L ) 3209  #SN_£tA‰r_PGWYÿp "£tA‰r-PGWYÿp" ) 3210  #LN_£tA‰r_PGWYÿp "·ym’ˆg©eway c­abž™›s" ) 3211  #NID_£tA‰r_PGWYÿp 621 ) 3212  #OBJ_£tA‰r_PGWYÿp OBJ_£t_©Œ ,1L ) 3214  #SN_£tA‰r_Tok’Ty³ "£tA‰r-Tok’Ty³" ) 3215  #NID_£tA‰r_Tok’Ty³ 622 ) 3216  #OBJ_£tA‰r_Tok’Ty³ OBJ_£t_©Œ ,2L ) 3218  #SN_£tA‰r_IssC­ "£tA‰r-IssC­" ) 3219  #LN_£tA‰r_IssC­ "issu” c­abž™›s" ) 3220  #NID_£tA‰r_IssC­ 623 ) 3221  #OBJ_£tA‰r_IssC­ OBJ_£t_©Œ ,3L ) 3223  #SN_£t_roÙKeyThumb "£t-roÙKeyThumb" ) 3224  #NID_£t_roÙKeyThumb 624 ) 3225  #OBJ_£t_roÙKeyThumb OBJ_£tA‰r_C”t ,0L ) 3227  #SN_£t_addPÞicy "£t-addPÞicy" ) 3228  #NID_£t_addPÞicy 625 ) 3229  #OBJ_£t_addPÞicy OBJ_£tA‰r_C”t ,1L ) 3231  #SN_£tA‰r_Tok’_EMV "£tA‰r-Tok’-EMV" ) 3232  #NID_£tA‰r_Tok’_EMV 626 ) 3233  #OBJ_£tA‰r_Tok’_EMV OBJ_£tA‰r_Tok’Ty³ ,1L ) 3235  #SN_£tA‰r_Tok’_B0Prime "£tA‰r-Tok’-B0Prime" ) 3236  #NID_£tA‰r_Tok’_B0Prime 627 ) 3237  #OBJ_£tA‰r_Tok’_B0Prime OBJ_£tA‰r_Tok’Ty³ ,2L ) 3239  #SN_£tA‰r_IssC­_CVM "£tA‰r-IssC­-CVM" ) 3240  #NID_£tA‰r_IssC­_CVM 628 ) 3241  #OBJ_£tA‰r_IssC­_CVM OBJ_£tA‰r_IssC­ ,3L ) 3243  #SN_£tA‰r_IssC­_T2 "£tA‰r-IssC­-T2" ) 3244  #NID_£tA‰r_IssC­_T2 629 ) 3245  #OBJ_£tA‰r_IssC­_T2 OBJ_£tA‰r_IssC­ ,4L ) 3247  #SN_£tA‰r_IssC­_Sig "£tA‰r-IssC­-Sig" ) 3248  #NID_£tA‰r_IssC­_Sig 630 ) 3249  #OBJ_£tA‰r_IssC­_Sig OBJ_£tA‰r_IssC­ ,5L ) 3251  #SN_£tA‰r_G’Cry±grm "£tA‰r-G’Cry±grm" ) 3252  #LN_£tA‰r_G’Cry±grm "g’”©üy±og¿m" ) 3253  #NID_£tA‰r_G’Cry±grm 631 ) 3254  #OBJ_£tA‰r_G’Cry±grm OBJ_£tA‰r_IssC­_CVM ,1L ) 3256  #SN_£tA‰r_T2Enc "£tA‰r-T2Enc" ) 3257  #LN_£tA‰r_T2Enc "’üy±ed¿ck 2" ) 3258  #NID_£tA‰r_T2Enc 632 ) 3259  #OBJ_£tA‰r_T2Enc OBJ_£tA‰r_IssC­_T2 ,1L ) 3261  #SN_£tA‰r_T2þ—¹xt "£tA‰r-T2þ—¹xt" ) 3262  #LN_£tA‰r_T2þ—¹xt "þ—¹exˆŒack 2" ) 3263  #NID_£tA‰r_T2þ—¹xt 633 ) 3264  #OBJ_£tA‰r_T2þ—¹xt OBJ_£tA‰r_IssC­_T2 ,2L ) 3266  #SN_£tA‰r_TokICCsig "£tA‰r-TokICCsig" ) 3267  #LN_£tA‰r_TokICCsig "ICC o¸tok’ sigÇtu»" ) 3268  #NID_£tA‰r_TokICCsig 634 ) 3269  #OBJ_£tA‰r_TokICCsig OBJ_£tA‰r_IssC­_Sig ,1L ) 3271  #SN_£tA‰r_SecDevSig "£tA‰r-SecDevSig" ) 3272  #LN_£tA‰r_SecDevSig "£cu» deviû sigÇtu»" ) 3273  #NID_£tA‰r_SecDevSig 635 ) 3274  #OBJ_£tA‰r_SecDevSig OBJ_£tA‰r_IssC­_Sig ,2L ) 3276  #SN_£t_b¿nd_IATA_ATA "£t-b¿nd-IATA-ATA" ) 3277  #NID_£t_b¿nd_IATA_ATA 636 ) 3278  #OBJ_£t_b¿nd_IATA_ATA OBJ_£t_b¿nd ,1L ) 3280  #SN_£t_b¿nd_Dš”s "£t-b¿nd-Dš”s" ) 3281  #NID_£t_b¿nd_Dš”s 637 ) 3282  #OBJ_£t_b¿nd_Dš”s OBJ_£t_b¿nd ,30L ) 3284  #SN_£t_b¿nd_Am”iÿnEx´ess "£t-b¿nd-Am”iÿnEx´ess" ) 3285  #NID_£t_b¿nd_Am”iÿnEx´ess 638 ) 3286  #OBJ_£t_b¿nd_Am”iÿnEx´ess OBJ_£t_b¿nd ,34L ) 3288  #SN_£t_b¿nd_JCB "£t-b¿nd-JCB" ) 3289  #NID_£t_b¿nd_JCB 639 ) 3290  #OBJ_£t_b¿nd_JCB OBJ_£t_b¿nd ,35L ) 3292  #SN_£t_b¿nd_Vi§ "£t-b¿nd-Vi§" ) 3293  #NID_£t_b¿nd_Vi§ 640 ) 3294  #OBJ_£t_b¿nd_Vi§ OBJ_£t_b¿nd ,4L ) 3296  #SN_£t_b¿nd_Ma¡”C¬d "£t-b¿nd-Ma¡”C¬d" ) 3297  #NID_£t_b¿nd_Ma¡”C¬d 641 ) 3298  #OBJ_£t_b¿nd_Ma¡”C¬d OBJ_£t_b¿nd ,5L ) 3300  #SN_£t_b¿nd_Novus "£t-b¿nd-Novus" ) 3301  #NID_£t_b¿nd_Novus 642 ) 3302  #OBJ_£t_b¿nd_Novus OBJ_£t_b¿nd ,6011L ) 3304  #SN_des_cdmf "DES-CDMF" ) 3305  #LN_des_cdmf "des-cdmf" ) 3306  #NID_des_cdmf 643 ) 3307  #OBJ_des_cdmf OBJ_r§dsi ,3L,10L ) 3309  #SN_r§OAEPEnüy±iÚSET "r§OAEPEnüy±iÚSET" ) 3310  #NID_r§OAEPEnüy±iÚSET 644 ) 3311  #OBJ_r§OAEPEnüy±iÚSET OBJ_r§dsi ,1L,1L,6L ) 3313  #SN_£c3 "OakËy-EC2N-3" ) 3314  #LN_£c3 "£c3" ) 3315  #NID_£c3 749 ) 3317  #SN_£c4 "OakËy-EC2N-4" ) 3318  #LN_£c4 "£c4" ) 3319  #NID_£c4 750 ) 3321  #SN_ÿm–lŸ_128_cbc "CAMELLIA-128-CBC" ) 3322  #LN_ÿm–lŸ_128_cbc "ÿm–lŸ-128-cbc" ) 3323  #NID_ÿm–lŸ_128_cbc 751 ) 3324  #OBJ_ÿm–lŸ_128_cbc 1L,2L,392L,200011L,61L,1L,1L,1L,2L ) 3326  #SN_ÿm–lŸ_192_cbc "CAMELLIA-192-CBC" ) 3327  #LN_ÿm–lŸ_192_cbc "ÿm–lŸ-192-cbc" ) 3328  #NID_ÿm–lŸ_192_cbc 752 ) 3329  #OBJ_ÿm–lŸ_192_cbc 1L,2L,392L,200011L,61L,1L,1L,1L,3L ) 3331  #SN_ÿm–lŸ_256_cbc "CAMELLIA-256-CBC" ) 3332  #LN_ÿm–lŸ_256_cbc "ÿm–lŸ-256-cbc" ) 3333  #NID_ÿm–lŸ_256_cbc 753 ) 3334  #OBJ_ÿm–lŸ_256_cbc 1L,2L,392L,200011L,61L,1L,1L,1L,4L ) 3336  #OBJ_Át_ds 0L,3L,4401L,5L ) 3338  #OBJ_ÿm–lŸ OBJ_Át_ds ,3L,1L,9L ) 3340  #SN_ÿm–lŸ_128_ecb "CAMELLIA-128-ECB" ) 3341  #LN_ÿm–lŸ_128_ecb "ÿm–lŸ-128-ecb" ) 3342  #NID_ÿm–lŸ_128_ecb 754 ) 3343  #OBJ_ÿm–lŸ_128_ecb OBJ_ÿm–lŸ ,1L ) 3345  #SN_ÿm–lŸ_128_ofb128 "CAMELLIA-128-OFB" ) 3346  #LN_ÿm–lŸ_128_ofb128 "ÿm–lŸ-128-ofb" ) 3347  #NID_ÿm–lŸ_128_ofb128 766 ) 3348  #OBJ_ÿm–lŸ_128_ofb128 OBJ_ÿm–lŸ ,3L ) 3350  #SN_ÿm–lŸ_128_cfb128 "CAMELLIA-128-CFB" ) 3351  #LN_ÿm–lŸ_128_cfb128 "ÿm–lŸ-128-cfb" ) 3352  #NID_ÿm–lŸ_128_cfb128 757 ) 3353  #OBJ_ÿm–lŸ_128_cfb128 OBJ_ÿm–lŸ ,4L ) 3355  #SN_ÿm–lŸ_192_ecb "CAMELLIA-192-ECB" ) 3356  #LN_ÿm–lŸ_192_ecb "ÿm–lŸ-192-ecb" ) 3357  #NID_ÿm–lŸ_192_ecb 755 ) 3358  #OBJ_ÿm–lŸ_192_ecb OBJ_ÿm–lŸ ,21L ) 3360  #SN_ÿm–lŸ_192_ofb128 "CAMELLIA-192-OFB" ) 3361  #LN_ÿm–lŸ_192_ofb128 "ÿm–lŸ-192-ofb" ) 3362  #NID_ÿm–lŸ_192_ofb128 767 ) 3363  #OBJ_ÿm–lŸ_192_ofb128 OBJ_ÿm–lŸ ,23L ) 3365  #SN_ÿm–lŸ_192_cfb128 "CAMELLIA-192-CFB" ) 3366  #LN_ÿm–lŸ_192_cfb128 "ÿm–lŸ-192-cfb" ) 3367  #NID_ÿm–lŸ_192_cfb128 758 ) 3368  #OBJ_ÿm–lŸ_192_cfb128 OBJ_ÿm–lŸ ,24L ) 3370  #SN_ÿm–lŸ_256_ecb "CAMELLIA-256-ECB" ) 3371  #LN_ÿm–lŸ_256_ecb "ÿm–lŸ-256-ecb" ) 3372  #NID_ÿm–lŸ_256_ecb 756 ) 3373  #OBJ_ÿm–lŸ_256_ecb OBJ_ÿm–lŸ ,41L ) 3375  #SN_ÿm–lŸ_256_ofb128 "CAMELLIA-256-OFB" ) 3376  #LN_ÿm–lŸ_256_ofb128 "ÿm–lŸ-256-ofb" ) 3377  #NID_ÿm–lŸ_256_ofb128 768 ) 3378  #OBJ_ÿm–lŸ_256_ofb128 OBJ_ÿm–lŸ ,43L ) 3380  #SN_ÿm–lŸ_256_cfb128 "CAMELLIA-256-CFB" ) 3381  #LN_ÿm–lŸ_256_cfb128 "ÿm–lŸ-256-cfb" ) 3382  #NID_ÿm–lŸ_256_cfb128 759 ) 3383  #OBJ_ÿm–lŸ_256_cfb128 OBJ_ÿm–lŸ ,44L ) 3385  #SN_ÿm–lŸ_128_cfb1 "CAMELLIA-128-CFB1" ) 3386  #LN_ÿm–lŸ_128_cfb1 "ÿm–lŸ-128-cfb1" ) 3387  #NID_ÿm–lŸ_128_cfb1 760 ) 3389  #SN_ÿm–lŸ_192_cfb1 "CAMELLIA-192-CFB1" ) 3390  #LN_ÿm–lŸ_192_cfb1 "ÿm–lŸ-192-cfb1" ) 3391  #NID_ÿm–lŸ_192_cfb1 761 ) 3393  #SN_ÿm–lŸ_256_cfb1 "CAMELLIA-256-CFB1" ) 3394  #LN_ÿm–lŸ_256_cfb1 "ÿm–lŸ-256-cfb1" ) 3395  #NID_ÿm–lŸ_256_cfb1 762 ) 3397  #SN_ÿm–lŸ_128_cfb8 "CAMELLIA-128-CFB8" ) 3398  #LN_ÿm–lŸ_128_cfb8 "ÿm–lŸ-128-cfb8" ) 3399  #NID_ÿm–lŸ_128_cfb8 763 ) 3401  #SN_ÿm–lŸ_192_cfb8 "CAMELLIA-192-CFB8" ) 3402  #LN_ÿm–lŸ_192_cfb8 "ÿm–lŸ-192-cfb8" ) 3403  #NID_ÿm–lŸ_192_cfb8 764 ) 3405  #SN_ÿm–lŸ_256_cfb8 "CAMELLIA-256-CFB8" ) 3406  #LN_ÿm–lŸ_256_cfb8 "ÿm–lŸ-256-cfb8" ) 3407  #NID_ÿm–lŸ_256_cfb8 765 ) 3409  #SN_ki§ "KISA" ) 3410  #LN_ki§ "ki§" ) 3411  #NID_ki§ 773 ) 3412  #OBJ_ki§ OBJ_memb”_body ,410L,200004L ) 3414  #SN_£ed_ecb "SEED-ECB" ) 3415  #LN_£ed_ecb "£ed-ecb" ) 3416  #NID_£ed_ecb 776 ) 3417  #OBJ_£ed_ecb OBJ_ki§ ,1L,3L ) 3419  #SN_£ed_cbc "SEED-CBC" ) 3420  #LN_£ed_cbc "£ed-cbc" ) 3421  #NID_£ed_cbc 777 ) 3422  #OBJ_£ed_cbc OBJ_ki§ ,1L,4L ) 3424  #SN_£ed_cfb128 "SEED-CFB" ) 3425  #LN_£ed_cfb128 "£ed-cfb" ) 3426  #NID_£ed_cfb128 779 ) 3427  #OBJ_£ed_cfb128 OBJ_ki§ ,1L,5L ) 3429  #SN_£ed_ofb128 "SEED-OFB" ) 3430  #LN_£ed_ofb128 "£ed-ofb" ) 3431  #NID_£ed_ofb128 778 ) 3432  #OBJ_£ed_ofb128 OBJ_ki§ ,1L,6L ) @/usr/include/pthread.h 20 #iâdeà _PTHREAD_H 21  #_PTHREAD_H 1 ) 23  ~<ã©u»s.h > 24  ~<’dŸn.h > 25  ~ 26  ~ 28  #__Ãed_sig£t_t ) 29  ~ 30  ~ 31  ~ 32  ~ 38 mPTHREAD_CREATE_JOINABLE , 39  #PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_JOINABLE ) 40 mPTHREAD_CREATE_DETACHED 41  #PTHREAD_CREATE_DETACHED PTHREAD_CREATE_DETACHED ) 48 mPTHREAD_MUTEX_TIMED_NP , 49 mPTHREAD_MUTEX_RECURSIVE_NP , 50 mPTHREAD_MUTEX_ERRORCHECK_NP , 51 mPTHREAD_MUTEX_ADAPTIVE_NP 52 #ifdeà __USE_UNIX98 54 mPTHREAD_MUTEX_NORMAL = PTHREAD_MUTEX_TIMED_NP , 55 mPTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP , 56 mPTHREAD_MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK_NP , 57 mPTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_NORMAL 59 #ifdeà __USE_GNU 61 , mPTHREAD_MUTEX_FAST_NP = PTHREAD_MUTEX_TIMED_NP 66 #ifdeà __USE_GNU 70 mPTHREAD_MUTEX_STALLED_NP , 71 mPTHREAD_MUTEX_ROBUST_NP 76 #ifdeà __USE_UNIX98 80 mPTHREAD_PRIO_NONE , 81 mPTHREAD_PRIO_INHERIT , 82 mPTHREAD_PRIO_PROTECT 88 #ià __WORDSIZE == 64 89  #PTHREAD_MUTEX_INITIALIZER \ 90 { { 0, 0, 0, 0, 0, 0, { 0, 0 } } } ) 91 #ifdeà __USE_GNU 92  #PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP \ 93 { { 0, 0, 0, 0, PTHREAD_MUTEX_RECURSIVE_NP , 0, { 0, 0 } } } ) 94  #PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP \ 95 { { 0, 0, 0, 0, PTHREAD_MUTEX_ERRORCHECK_NP , 0, { 0, 0 } } } ) 96  #PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP \ 97 { { 0, 0, 0, 0, PTHREAD_MUTEX_ADAPTIVE_NP , 0, { 0, 0 } } } ) 100  #PTHREAD_MUTEX_INITIALIZER \ 101 { { 0, 0, 0, 0, 0, { 0 } } } ) 102 #ifdeà __USE_GNU 103  #PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP \ 104 { { 0, 0, 0, PTHREAD_MUTEX_RECURSIVE_NP , 0, { 0 } } } ) 105  #PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP \ 106 { { 0, 0, 0, PTHREAD_MUTEX_ERRORCHECK_NP , 0, { 0 } } } ) 107  #PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP \ 108 { { 0, 0, 0, PTHREAD_MUTEX_ADAPTIVE_NP , 0, { 0 } } } ) 114 #ià defšed __USE_UNIX98 || defšed __USE_XOPEN2K 117 mPTHREAD_RWLOCK_PREFER_READER_NP , 118 mPTHREAD_RWLOCK_PREFER_WRITER_NP , 119 mPTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP , 120 mPTHREAD_RWLOCK_DEFAULT_NP = PTHREAD_RWLOCK_PREFER_READER_NP 124  #PTHREAD_RWLOCK_INITIALIZER \ 125 { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } ) 126 #ifdeà __USE_GNU 127 #ià __WORDSIZE == 64 128  #PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP \ 130 PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP } } ) 132 #ià __BYTE_ORDER =ð __LITTLE_ENDIAN 133  #PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP \ 134 { { 0, 0, 0, 0, 0, 0, PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP , \ 135 0, 0, 0, 0 } } ) 137  #PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP \ 138 { { 0, 0, 0, 0, 0, 0, 0, 0, 0, PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP ,\ 139 0 } } ) 149 mPTHREAD_INHERIT_SCHED , 150  #PTHREAD_INHERIT_SCHED PTHREAD_INHERIT_SCHED ) 151 mPTHREAD_EXPLICIT_SCHED 152  #PTHREAD_EXPLICIT_SCHED PTHREAD_EXPLICIT_SCHED ) 159 mPTHREAD_SCOPE_SYSTEM , 160  #PTHREAD_SCOPE_SYSTEM PTHREAD_SCOPE_SYSTEM ) 161 mPTHREAD_SCOPE_PROCESS 162  #PTHREAD_SCOPE_PROCESS PTHREAD_SCOPE_PROCESS ) 169 mPTHREAD_PROCESS_PRIVATE , 170  #PTHREAD_PROCESS_PRIVATE PTHREAD_PROCESS_PRIVATE ) 171 mPTHREAD_PROCESS_SHARED 172  #PTHREAD_PROCESS_SHARED PTHREAD_PROCESS_SHARED ) 178  #PTHREAD_COND_INITIALIZER { { 0, 0, 0, 0, 0, (*è0, 0, 0 } } ) 182  s_±h»ad_þ—nup_bufãr 184 (* m__routše ) (*); 185 * m__¬g ; 186  m__ÿnûÉy³ ; 187  _±h»ad_þ—nup_bufãr * m__´ev ; 193 mPTHREAD_CANCEL_ENABLE , 194  #PTHREAD_CANCEL_ENABLE PTHREAD_CANCEL_ENABLE ) 195 mPTHREAD_CANCEL_DISABLE 196  #PTHREAD_CANCEL_DISABLE PTHREAD_CANCEL_DISABLE ) 200 mPTHREAD_CANCEL_DEFERRED , 201  #PTHREAD_CANCEL_DEFERRED PTHREAD_CANCEL_DEFERRED ) 202 mPTHREAD_CANCEL_ASYNCHRONOUS 203  #PTHREAD_CANCEL_ASYNCHRONOUS PTHREAD_CANCEL_ASYNCHRONOUS ) 205  #PTHREAD_CANCELED ((*è-1) ) 209  #PTHREAD_ONCE_INIT 0 ) 212 #ifdeà __USE_XOPEN2K 216  #PTHREAD_BARRIER_SERIAL_THREAD -1 ) 220 __BEGIN_DECLS 225  ±h»ad_ü—‹ ( ±h»ad_t * __»¡riù __Ãwth»ad , 226 __cÚ¡ ±h»ad_©Œ_t * __»¡riù __©Œ , 227 *(* __¡¬t_routše ) (*), 228 * __»¡riù __¬g è __THROW __nÚnuÎ ((1, 3)); 234  $±h»ad_ex™ (* __»tv® è `__©Œibu‹__ (( __nÜ‘uº__ )); 242  `±h»ad_još ( ±h»ad_t __th , ** __th»ad_»tuº ); 244 #ifdeà __USE_GNU 247  $±h»ad_Œyjoš_Å ( ±h»ad_t __th , ** __th»ad_»tuº è __THROW ; 255  `±h»ad_timedjoš_Å ( ±h»ad_t __th , ** __th»ad_»tuº , 256 __cÚ¡  time¥ec * __ab¡ime ); 263  $±h»ad_d‘ach ( ±h»ad_t __th è __THROW ; 267 ±h»ad_t $±h»ad_£lf (è __THROW `__©Œibu‹__ (( __cÚ¡__ )); 270  $±h»ad_equ® ( ±h»ad_t __th»ad1 ,…th»ad_ˆ __th»ad2 è __THROW ; 278  $±h»ad_©Œ_š™ ( ±h»ad_©Œ_t * __©Œ è __THROW `__nÚnuÎ ((1)); 281  $±h»ad_©Œ_de¡roy ( ±h»ad_©Œ_t * __©Œ ) 282 __THROW `__nÚnuÎ ((1)); 285  $±h»ad_©Œ_g‘d‘ach¡©e ( __cÚ¡ ±h»ad_©Œ_t * __©Œ , 286 * __d‘ach¡©e ) 287 __THROW `__nÚnuÎ ((1, 2)); 290  $±h»ad_©Œ_£td‘ach¡©e ( ±h»ad_©Œ_t * __©Œ , 291  __d‘ach¡©e ) 292 __THROW `__nÚnuÎ ((1)); 296  $±h»ad_©Œ_g‘gu¬dsize ( __cÚ¡ ±h»ad_©Œ_t * __©Œ , 297 size_t * __gu¬dsize ) 298 __THROW `__nÚnuÎ ((1, 2)); 301  $±h»ad_©Œ_£tgu¬dsize ( ±h»ad_©Œ_t * __©Œ , 302 size_t __gu¬dsize ) 303 __THROW `__nÚnuÎ ((1)); 307  $±h»ad_©Œ_g‘sched·¿m ( __cÚ¡ ±h»ad_©Œ_t * __»¡riù 308 __©Œ , 309  sched_·¿m * __»¡riù __·¿m ) 310 __THROW `__nÚnuÎ ((1, 2)); 313  $±h»ad_©Œ_£tsched·¿m ( ±h»ad_©Œ_t * __»¡riù __©Œ , 314 __cÚ¡  sched_·¿m * __»¡riù 315 __·¿m è __THROW `__nÚnuÎ ((1, 2)); 318  $±h»ad_©Œ_g‘schedpÞicy ( __cÚ¡ ±h»ad_©Œ_t * __»¡riù 319 __©Œ , * __»¡riù __pÞicy ) 320 __THROW `__nÚnuÎ ((1, 2)); 323  $±h»ad_©Œ_£tschedpÞicy ( ±h»ad_©Œ_t * __©Œ ,  __pÞicy ) 324 __THROW `__nÚnuÎ ((1)); 327  $±h»ad_©Œ_g‘šh”™sched ( __cÚ¡ ±h»ad_©Œ_t * __»¡riù 328 __©Œ , * __»¡riù __šh”™ ) 329 __THROW `__nÚnuÎ ((1, 2)); 332  $±h»ad_©Œ_£tšh”™sched ( ±h»ad_©Œ_t * __©Œ , 333  __šh”™ ) 334 __THROW `__nÚnuÎ ((1)); 338  $±h»ad_©Œ_g‘scÝe ( __cÚ¡ ±h»ad_©Œ_t * __»¡riù __©Œ , 339 * __»¡riù __scÝe ) 340 __THROW `__nÚnuÎ ((1, 2)); 343  $±h»ad_©Œ_£tscÝe ( ±h»ad_©Œ_t * __©Œ ,  __scÝe ) 344 __THROW `__nÚnuÎ ((1)); 347  $±h»ad_©Œ_g‘¡ackaddr ( __cÚ¡ ±h»ad_©Œ_t * __»¡riù 348 __©Œ , ** __»¡riù __¡ackaddr ) 349 __THROW `__nÚnuÎ ((1, 2)è __©Œibu‹_d•»ÿ‹d__ ; 355  $±h»ad_©Œ_£t¡ackaddr ( ±h»ad_©Œ_t * __©Œ , 356 * __¡ackaddr ) 357 __THROW `__nÚnuÎ ((1)è __©Œibu‹_d•»ÿ‹d__ ; 360  $±h»ad_©Œ_g‘¡acksize ( __cÚ¡ ±h»ad_©Œ_t * __»¡riù 361 __©Œ , size_t * __»¡riù __¡acksize ) 362 __THROW `__nÚnuÎ ((1, 2)); 367  $±h»ad_©Œ_£t¡acksize ( ±h»ad_©Œ_t * __©Œ , 368 size_t __¡acksize ) 369 __THROW `__nÚnuÎ ((1)); 371 #ifdeà __USE_XOPEN2K 373  $±h»ad_©Œ_g‘¡ack ( __cÚ¡ ±h»ad_©Œ_t * __»¡riù __©Œ , 374 ** __»¡riù __¡ackaddr , 375 size_t * __»¡riù __¡acksize ) 376 __THROW `__nÚnuÎ ((1, 2, 3)); 381  $±h»ad_©Œ_£t¡ack ( ±h»ad_©Œ_t * __©Œ , * __¡ackaddr , 382 size_t __¡acksize è __THROW `__nÚnuÎ ((1)); 385 #ifdeà __USE_GNU 388  $±h»ad_©Œ_£ffš™y_Å ( ±h»ad_©Œ_t * __©Œ , 389 size_t __ýu£tsize , 390 __cÚ¡ ýu_£t_t * __ýu£t ) 391 __THROW `__nÚnuÎ ((1, 3)); 395  $±h»ad_©Œ_g‘affš™y_Å ( __cÚ¡ ±h»ad_©Œ_t * __©Œ , 396 size_t __ýu£tsize , 397 ýu_£t_t * __ýu£t ) 398 __THROW `__nÚnuÎ ((1, 3)); 404  $±h»ad_g‘©Œ_Å ( ±h»ad_t __th , ±h»ad_©Œ_t * __©Œ ) 405 __THROW `__nÚnuÎ ((2)); 413  $±h»ad_£tsched·¿m ( ±h»ad_t __rg‘_th»ad ,  __pÞicy , 414 __cÚ¡  sched_·¿m * __·¿m ) 415 __THROW `__nÚnuÎ ((3)); 418  $±h»ad_g‘sched·¿m ( ±h»ad_t __rg‘_th»ad , 419 * __»¡riù __pÞicy , 420  sched_·¿m * __»¡riù __·¿m ) 421 __THROW `__nÚnuÎ ((2, 3)); 424  $±h»ad_£tsched´io ( ±h»ad_t __rg‘_th»ad ,  __´io ) 425 __THROW ; 428 #ifdeà __USE_UNIX98 430  $±h»ad_g‘cÚcu¼’cy (è __THROW ; 433  $±h»ad_£tcÚcu¼’cy ( __Ëv– è __THROW ; 436 #ifdeà __USE_GNU 441  $±h»ad_y›ld (è __THROW ; 446  $±h»ad_£ffš™y_Å ( ±h»ad_t __th , size_t __ýu£tsize , 447 __cÚ¡ ýu_£t_t * __ýu£t ) 448 __THROW `__nÚnuÎ ((3)); 451  $±h»ad_g‘affš™y_Å ( ±h»ad_t __th , size_t __ýu£tsize , 452 ýu_£t_t * __ýu£t ) 453 __THROW `__nÚnuÎ ((3)); 466  `±h»ad_Úû ( ±h»ad_Úû_t * __Úû_cÚŒÞ , 467 (* __š™_routše è()è `__nÚnuÎ ((1, 2)); 478  `±h»ad_£tÿnûl¡©e ( __¡©e , * __Þd¡©e ); 482  `±h»ad_£tÿnûÉy³ ( __ty³ , * __Þdty³ ); 485  `±h»ad_ÿnûl ( ±h»ad_t __th ); 490  `±h»ad_‹¡ÿnûl (); 499 __jmp_buf __ÿnûl_jmp_buf ; 500  __mask_was_§ved ; 501 } __ÿnûl_jmp_buf [1]; 502 * __·d [4]; 503 } t__±h»ad_unwšd_buf_t t__©Œibu‹__ (( t__®igÃd__ )); 506 #iâdeà __þ—nup_fù_©Œibu‹ 507  #__þ—nup_fù_©Œibu‹ ) 512  s__±h»ad_þ—nup_äame 514 (* __ÿnûl_routše ) (*); 515 * __ÿnûl_¬g ; 516  __do_™ ; 517  __ÿnûl_ty³ ; 520 #ià defšed __GNUC__ && defšed __EXCEPTIONS 521 #ifdeà __ýlu¥lus 523 þas  c__±h»ad_þ—nup_þass 525 (* __ÿnûl_routše ) (*); 526 * __ÿnûl_¬g ; 527  __do_™ ; 528  __ÿnûl_ty³ ; 530 public : 531 `__±h»ad_þ—nup_þass ((* __fù è(*), * __¬g ) 532 : `__ÿnûl_routše ( __fù ), `__ÿnûl_¬g ( __¬g ), $__do_™ (1) { } 533 ~ $__±h»ad_þ—nup_þass (è{ ià( __do_™ è `__ÿnûl_routše ( __ÿnûl_¬g ); } } 534  $__£tdo™ ( __Ãwv® è{ __do_™ = __Ãwv®; } } 535  $__deãr (è{ `±h»ad_£tÿnûÉy³ ( PTHREAD_CANCEL_DEFERRED , 536 & __ÿnûl_ty³ ); } } 537  $__»¡Üe (ècÚ¡ { `±h»ad_£tÿnûÉy³ ( __ÿnûl_ty³ , 0); } } 547  #±h»ad_þ—nup_push ( routše , ¬g ) \ 549 __±h»ad_þ—nup_þass `__þäame ( routše , ¬g ) ) 553  #±h»ad_þ—nup_pÝ ( execu‹ ) \ 554 __þäame . `__£tdo™ ( execu‹ ); \ 555 } 0) ) 557 #ifdeà __USE_GNU 561  #±h»ad_þ—nup_push_deãr_Å ( routše , ¬g ) \ 563 __±h»ad_þ—nup_þass `__þäame ( routše , ¬g ); \ 564 __þäame . `__deãr () ) 569  #±h»ad_þ—nup_pÝ_»¡Üe_Å ( execu‹ ) \ 570 __þäame . `__»¡Üe (); \ 571 __þäame . `__£tdo™ ( execu‹ ); \ 572 } 0) ) 579 __ex‹º_šlše  580 $__±h»ad_þ—nup_routše ( __±h»ad_þ—nup_äame * __äame ) 582 ià( __äame -> __do_™ ) 583 __äame -> `__ÿnûl_routše (__äame-> __ÿnûl_¬g ); 584 } } 593  #±h»ad_þ—nup_push ( routše , ¬g ) \ 595  __±h»ad_þ—nup_äame __þäame \ 596 `__©Œibu‹__ (( `__þ—nup__ ( __±h»ad_þ—nup_routše ))) \ 597 ð{ . __ÿnûl_routše = ( routše ), . __ÿnûl_¬g = ( ¬g ), \ 598 . __do_™ = 1 }; ) 602  #±h»ad_þ—nup_pÝ ( execu‹ ) \ 603 __þäame . __do_™ = ( execu‹ ); \ 604 } 0) ) 606 #ifdeà __USE_GNU 610  #±h»ad_þ—nup_push_deãr_Å ( routše , ¬g ) \ 612  __±h»ad_þ—nup_äame __þäame \ 613 `__©Œibu‹__ (( `__þ—nup__ ( __±h»ad_þ—nup_routše ))) \ 614 ð{ . __ÿnûl_routše = ( routše ), . __ÿnûl_¬g = ( ¬g ), \ 615 . __do_™ = 1 }; \ 616 (è `±h»ad_£tÿnûÉy³ ( PTHREAD_CANCEL_DEFERRED , \ 617 & __þäame . __ÿnûl_ty³ ) ) 622  #±h»ad_þ—nup_pÝ_»¡Üe_Å ( execu‹ ) \ 623 (è `±h»ad_£tÿnûÉy³ ( __þäame . __ÿnûl_ty³ , NULL ); \ 624 __þäame . __do_™ = ( execu‹ ); \ 625 } 0) ) 636  #±h»ad_þ—nup_push ( routše , ¬g ) \ 638 __±h»ad_unwšd_buf_t __ÿnûl_buf ; \ 639 (* __ÿnûl_routše è(*èð( routše ); \ 640 * __ÿnûl_¬g = ( ¬g ); \ 641  nÙ_fœ¡_ÿÎ = `__sig£tjmp (( __jmp_buf_g *) \ 642 __ÿnûl_buf . __ÿnûl_jmp_buf , 0); \ 643 ià( `__bužtš_ex³ù ( nÙ_fœ¡_ÿÎ , 0)) \ 645 `__ÿnûl_routše ( __ÿnûl_¬g ); \ 646 `__±h»ad_unwšd_Ãxt (& __ÿnûl_buf ); \ 650 `__±h»ad_»gi¡”_ÿnûl (& __ÿnûl_buf ); \ 651 dØ{ ) 652  __±h»ad_»gi¡”_ÿnûl ( __±h»ad_unwšd_buf_t * __buf ) 653 __þ—nup_fù_©Œibu‹ ; 657  #±h»ad_þ—nup_pÝ ( execu‹ ) \ 659 `__±h»ad_uÄegi¡”_ÿnûl (& __ÿnûl_buf ); \ 660 ià( execu‹ ) \ 661 `__ÿnûl_routše ( __ÿnûl_¬g ); \ 662 } 0) ) 663  $__±h»ad_uÄegi¡”_ÿnûl ( __±h»ad_unwšd_buf_t * __buf ) 664 __þ—nup_fù_©Œibu‹ ; 666 #ifdeà __USE_GNU 670  #±h»ad_þ—nup_push_deãr_Å ( routše , ¬g ) \ 672 __±h»ad_unwšd_buf_t __ÿnûl_buf ; \ 673 (* __ÿnûl_routše è(*èð( routše ); \ 674 * __ÿnûl_¬g = ( ¬g ); \ 675  nÙ_fœ¡_ÿÎ = `__sig£tjmp (( __jmp_buf_g *) \ 676 __ÿnûl_buf . __ÿnûl_jmp_buf , 0); \ 677 ià( `__bužtš_ex³ù ( nÙ_fœ¡_ÿÎ , 0)) \ 679 `__ÿnûl_routše ( __ÿnûl_¬g ); \ 680 `__±h»ad_unwšd_Ãxt (& __ÿnûl_buf ); \ 684 `__±h»ad_»gi¡”_ÿnûl_deãr (& __ÿnûl_buf ); \ 685 dØ{ ) 686  `__±h»ad_»gi¡”_ÿnûl_deãr ( __±h»ad_unwšd_buf_t * __buf ) 687 __þ—nup_fù_©Œibu‹ ; 692  #±h»ad_þ—nup_pÝ_»¡Üe_Å ( execu‹ ) \ 694 `__±h»ad_uÄegi¡”_ÿnûl_»¡Üe (& __ÿnûl_buf ); \ 695 ià( execu‹ ) \ 696 `__ÿnûl_routše ( __ÿnûl_¬g ); \ 697 } } 0) ) 698  $__±h»ad_uÄegi¡”_ÿnûl_»¡Üe ( __±h»ad_unwšd_buf_t * __buf ) 699 __þ—nup_fù_©Œibu‹ ; 703  $__±h»ad_unwšd_Ãxt ( __±h»ad_unwšd_buf_t * __buf ) 704 __þ—nup_fù_©Œibu‹ `__©Œibu‹__ (( __nÜ‘uº__ )) 705 #iâdeà SHARED 706 `__©Œibu‹__ (( __w—k__ )) 712  __jmp_buf_g ; 713  $__sig£tjmp ( __jmp_buf_g * __’v ,  __§vemask è __THROW ; 719  $±h»ad_mu‹x_š™ ( ±h»ad_mu‹x_t * __mu‹x , 720 __cÚ¡ ±h»ad_mu‹x©Œ_t * __mu‹x©Œ ) 721 __THROW `__nÚnuÎ ((1)); 724  $±h»ad_mu‹x_de¡roy ( ±h»ad_mu‹x_t * __mu‹x ) 725 __THROW `__nÚnuÎ ((1)); 728  $±h»ad_mu‹x_Œylock ( ±h»ad_mu‹x_t * __mu‹x ) 729 __THROW `__nÚnuÎ ((1)); 732  $±h»ad_mu‹x_lock ( ±h»ad_mu‹x_t * __mu‹x ) 733 __THROW `__nÚnuÎ ((1)); 735 #ifdeà __USE_XOPEN2K 737  $±h»ad_mu‹x_timedlock ( ±h»ad_mu‹x_t * __»¡riù __mu‹x , 738 __cÚ¡  time¥ec * __»¡riù 739 __ab¡ime è __THROW `__nÚnuÎ ((1, 2)); 743  $±h»ad_mu‹x_uÆock ( ±h»ad_mu‹x_t * __mu‹x ) 744 __THROW `__nÚnuÎ ((1)); 747 #ifdeà __USE_UNIX98 749  $±h»ad_mu‹x_g‘´ioûžšg ( __cÚ¡ ±h»ad_mu‹x_t * 750 __»¡riù __mu‹x , 751 * __»¡riù __´ioûžšg ) 752 __THROW `__nÚnuÎ ((1, 2)); 756  $±h»ad_mu‹x_£rioûžšg ( ±h»ad_mu‹x_t * __»¡riù __mu‹x , 757  __´ioûžšg , 758 * __»¡riù __Þd_ûžšg ) 759 __THROW `__nÚnuÎ ((1, 3)); 763 #ifdeà __USE_GNU 765  $±h»ad_mu‹x_cÚsi¡’t_Å ( ±h»ad_mu‹x_t * __mu‹x ) 766 __THROW `__nÚnuÎ ((1)); 774  $±h»ad_mu‹x©Œ_š™ ( ±h»ad_mu‹x©Œ_t * __©Œ ) 775 __THROW `__nÚnuÎ ((1)); 778  $±h»ad_mu‹x©Œ_de¡roy ( ±h»ad_mu‹x©Œ_t * __©Œ ) 779 __THROW `__nÚnuÎ ((1)); 782  $±h»ad_mu‹x©Œ_g‘psh¬ed ( __cÚ¡ ±h»ad_mu‹x©Œ_t * 783 __»¡riù __©Œ , 784 * __»¡riù __psh¬ed ) 785 __THROW `__nÚnuÎ ((1, 2)); 788  $±h»ad_mu‹x©Œ_£sh¬ed ( ±h»ad_mu‹x©Œ_t * __©Œ , 789  __psh¬ed ) 790 __THROW `__nÚnuÎ ((1)); 792 #ifdeà __USE_UNIX98 794  $±h»ad_mu‹x©Œ_g‘ty³ ( __cÚ¡ ±h»ad_mu‹x©Œ_t * __»¡riù 795 __©Œ , * __»¡riù __kšd ) 796 __THROW `__nÚnuÎ ((1, 2)); 801  $±h»ad_mu‹x©Œ_£‰y³ ( ±h»ad_mu‹x©Œ_t * __©Œ ,  __kšd ) 802 __THROW `__nÚnuÎ ((1)); 805  $±h»ad_mu‹x©Œ_g‘´ÙocÞ ( __cÚ¡ ±h»ad_mu‹x©Œ_t * 806 __»¡riù __©Œ , 807 * __»¡riù __´ÙocÞ ) 808 __THROW `__nÚnuÎ ((1, 2)); 812  $±h»ad_mu‹x©Œ_£rÙocÞ ( ±h»ad_mu‹x©Œ_t * __©Œ , 813  __´ÙocÞ ) 814 __THROW `__nÚnuÎ ((1)); 817  $±h»ad_mu‹x©Œ_g‘´ioûžšg ( __cÚ¡ ±h»ad_mu‹x©Œ_t * 818 __»¡riù __©Œ , 819 * __»¡riù __´ioûžšg ) 820 __THROW `__nÚnuÎ ((1, 2)); 823  $±h»ad_mu‹x©Œ_£rioûžšg ( ±h»ad_mu‹x©Œ_t * __©Œ , 824  __´ioûžšg ) 825 __THROW `__nÚnuÎ ((1)); 828 #ifdeà __USE_GNU 830  $±h»ad_mu‹x©Œ_g‘robu¡_Å ( __cÚ¡ ±h»ad_mu‹x©Œ_t * __©Œ , 831 * __robu¡Ãss ) 832 __THROW `__nÚnuÎ ((1, 2)); 835  $±h»ad_mu‹x©Œ_£Œobu¡_Å ( ±h»ad_mu‹x©Œ_t * __©Œ , 836  __robu¡Ãss ) 837 __THROW `__nÚnuÎ ((1)); 841 #ià defšed __USE_UNIX98 || defšed __USE_XOPEN2K 846  $±h»ad_rwlock_š™ ( ±h»ad_rwlock_t * __»¡riù __rwlock , 847 __cÚ¡ ±h»ad_rwlock©Œ_t * __»¡riù 848 __©Œ è __THROW `__nÚnuÎ ((1)); 851  $±h»ad_rwlock_de¡roy ( ±h»ad_rwlock_t * __rwlock ) 852 __THROW `__nÚnuÎ ((1)); 855  $±h»ad_rwlock_rdlock ( ±h»ad_rwlock_t * __rwlock ) 856 __THROW `__nÚnuÎ ((1)); 859  $±h»ad_rwlock_Œyrdlock ( ±h»ad_rwlock_t * __rwlock ) 860 __THROW `__nÚnuÎ ((1)); 862 #ifdeà __USE_XOPEN2K 864  $±h»ad_rwlock_timedrdlock ( ±h»ad_rwlock_t * __»¡riù __rwlock , 865 __cÚ¡  time¥ec * __»¡riù 866 __ab¡ime è __THROW `__nÚnuÎ ((1, 2)); 870  $±h»ad_rwlock_w¾ock ( ±h»ad_rwlock_t * __rwlock ) 871 __THROW `__nÚnuÎ ((1)); 874  $±h»ad_rwlock_Œyw¾ock ( ±h»ad_rwlock_t * __rwlock ) 875 __THROW `__nÚnuÎ ((1)); 877 #ifdeà __USE_XOPEN2K 879  $±h»ad_rwlock_timedw¾ock ( ±h»ad_rwlock_t * __»¡riù __rwlock , 880 __cÚ¡  time¥ec * __»¡riù 881 __ab¡ime è __THROW `__nÚnuÎ ((1, 2)); 885  $±h»ad_rwlock_uÆock ( ±h»ad_rwlock_t * __rwlock ) 886 __THROW `__nÚnuÎ ((1)); 892  $±h»ad_rwlock©Œ_š™ ( ±h»ad_rwlock©Œ_t * __©Œ ) 893 __THROW `__nÚnuÎ ((1)); 896  $±h»ad_rwlock©Œ_de¡roy ( ±h»ad_rwlock©Œ_t * __©Œ ) 897 __THROW `__nÚnuÎ ((1)); 900  $±h»ad_rwlock©Œ_g‘psh¬ed ( __cÚ¡ ±h»ad_rwlock©Œ_t * 901 __»¡riù __©Œ , 902 * __»¡riù __psh¬ed ) 903 __THROW `__nÚnuÎ ((1, 2)); 906  $±h»ad_rwlock©Œ_£sh¬ed ( ±h»ad_rwlock©Œ_t * __©Œ , 907  __psh¬ed ) 908 __THROW `__nÚnuÎ ((1)); 911  $±h»ad_rwlock©Œ_g‘kšd_Å ( __cÚ¡ ±h»ad_rwlock©Œ_t * 912 __»¡riù __©Œ , 913 * __»¡riù __´ef ) 914 __THROW `__nÚnuÎ ((1, 2)); 917  $±h»ad_rwlock©Œ_£tkšd_Å ( ±h»ad_rwlock©Œ_t * __©Œ , 918  __´ef è __THROW `__nÚnuÎ ((1)); 926  $±h»ad_cÚd_š™ ( ±h»ad_cÚd_t * __»¡riù __cÚd , 927 __cÚ¡ ±h»ad_cÚd©Œ_t * __»¡riù 928 __cÚd_©Œ è __THROW `__nÚnuÎ ((1)); 931  $±h»ad_cÚd_de¡roy ( ±h»ad_cÚd_t * __cÚd ) 932 __THROW `__nÚnuÎ ((1)); 935  $±h»ad_cÚd_sigÇl ( ±h»ad_cÚd_t * __cÚd ) 936 __THROW `__nÚnuÎ ((1)); 939  $±h»ad_cÚd_brßdÿ¡ ( ±h»ad_cÚd_t * __cÚd ) 940 __THROW `__nÚnuÎ ((1)); 947  $±h»ad_cÚd_wa™ ( ±h»ad_cÚd_t * __»¡riù __cÚd , 948 ±h»ad_mu‹x_t * __»¡riù __mu‹x ) 949 `__nÚnuÎ ((1, 2)); 958  $±h»ad_cÚd_timedwa™ ( ±h»ad_cÚd_t * __»¡riù __cÚd , 959 ±h»ad_mu‹x_t * __»¡riù __mu‹x , 960 __cÚ¡  time¥ec * __»¡riù 961 __ab¡ime è `__nÚnuÎ ((1, 2, 3)); 966  $±h»ad_cÚd©Œ_š™ ( ±h»ad_cÚd©Œ_t * __©Œ ) 967 __THROW `__nÚnuÎ ((1)); 970  $±h»ad_cÚd©Œ_de¡roy ( ±h»ad_cÚd©Œ_t * __©Œ ) 971 __THROW `__nÚnuÎ ((1)); 974  $±h»ad_cÚd©Œ_g‘psh¬ed ( __cÚ¡ ±h»ad_cÚd©Œ_t * 975 __»¡riù __©Œ , 976 * __»¡riù __psh¬ed ) 977 __THROW `__nÚnuÎ ((1, 2)); 980  $±h»ad_cÚd©Œ_£sh¬ed ( ±h»ad_cÚd©Œ_t * __©Œ , 981  __psh¬ed è __THROW `__nÚnuÎ ((1)); 983 #ifdeà __USE_XOPEN2K 985  $±h»ad_cÚd©Œ_g‘þock ( __cÚ¡ ±h»ad_cÚd©Œ_t * 986 __»¡riù __©Œ , 987 __þockid_t * __»¡riù __þock_id ) 988 __THROW `__nÚnuÎ ((1, 2)); 991  $±h»ad_cÚd©Œ_£tþock ( ±h»ad_cÚd©Œ_t * __©Œ , 992 __þockid_t __þock_id ) 993 __THROW `__nÚnuÎ ((1)); 997 #ifdeà __USE_XOPEN2K 1002  $±h»ad_¥š_š™ ( ±h»ad_¥šlock_t * __lock ,  __psh¬ed ) 1003 __THROW `__nÚnuÎ ((1)); 1006  $±h»ad_¥š_de¡roy ( ±h»ad_¥šlock_t * __lock ) 1007 __THROW `__nÚnuÎ ((1)); 1010  $±h»ad_¥š_lock ( ±h»ad_¥šlock_t * __lock ) 1011 __THROW `__nÚnuÎ ((1)); 1014  $±h»ad_¥š_Œylock ( ±h»ad_¥šlock_t * __lock ) 1015 __THROW `__nÚnuÎ ((1)); 1018  $±h»ad_¥š_uÆock ( ±h»ad_¥šlock_t * __lock ) 1019 __THROW `__nÚnuÎ ((1)); 1026  $±h»ad_b¬r›r_š™ ( ±h»ad_b¬r›r_t * __»¡riù __b¬r›r , 1027 __cÚ¡ ±h»ad_b¬r›¿‰r_t * __»¡riù 1028 __©Œ ,  __couÁ ) 1029 __THROW `__nÚnuÎ ((1)); 1032  $±h»ad_b¬r›r_de¡roy ( ±h»ad_b¬r›r_t * __b¬r›r ) 1033 __THROW `__nÚnuÎ ((1)); 1036  $±h»ad_b¬r›r_wa™ ( ±h»ad_b¬r›r_t * __b¬r›r ) 1037 __THROW `__nÚnuÎ ((1)); 1041  $±h»ad_b¬r›¿‰r_š™ ( ±h»ad_b¬r›¿‰r_t * __©Œ ) 1042 __THROW `__nÚnuÎ ((1)); 1045  $±h»ad_b¬r›¿‰r_de¡roy ( ±h»ad_b¬r›¿‰r_t * __©Œ ) 1046 __THROW `__nÚnuÎ ((1)); 1049  $±h»ad_b¬r›¿‰r_g‘psh¬ed ( __cÚ¡ ±h»ad_b¬r›¿‰r_t * 1050 __»¡riù __©Œ , 1051 * __»¡riù __psh¬ed ) 1052 __THROW `__nÚnuÎ ((1, 2)); 1055  $±h»ad_b¬r›¿‰r_£sh¬ed ( ±h»ad_b¬r›¿‰r_t * __©Œ , 1056  __psh¬ed ) 1057 __THROW `__nÚnuÎ ((1)); 1069  `±h»ad_key_ü—‹ ( ±h»ad_key_t * __key , 1070 (* __de¡r_funùiÚ ) (*)) 1071 __THROW `__nÚnuÎ ((1)); 1074  $±h»ad_key_d–‘e ( ±h»ad_key_t __key è __THROW ; 1077 * $±h»ad_g‘¥ecific ( ±h»ad_key_t __key è __THROW ; 1080  $±h»ad_£t¥ecific ( ±h»ad_key_t __key , 1081 __cÚ¡ * __poš‹r è __THROW ; 1084 #ifdeà __USE_XOPEN2K 1086  $±h»ad_g‘ýuþockid ( ±h»ad_t __th»ad_id , 1087 __þockid_t * __þock_id ) 1088 __THROW `__nÚnuÎ ((2)); 1103  `±h»ad_©fÜk ((* __´•¬e ) (), 1104 (* __·»Á ) (), 1105 (* __chžd è()è __THROW ; 1108 #ifdeà __USE_EXTERN_INLINES 1110 __ex‹º_šlše  1111 `__NTH ( $±h»ad_equ® ( ±h»ad_t __th»ad1 ,…th»ad_ˆ __th»ad2 )) 1113  __th»ad1 =ð __th»ad2 ; 1114 } } 1117 g__END_DECLS @/usr/include/wctype.h 24 #iâdeà _WCTYPE_H 26  ~<ã©u»s.h > 27  ~ 29 #iâdeà __Ãed_iswxxx 30  #_WCTYPE_H 1 ) 33  #__Ãed_wšt_t ) 34  ~ 38 #iâdeà WEOF 39  #WEOF (0xffffffffu) ) 42 #undeà __Ãed_iswxxx 47 #iâdeà __iswxxx_defšed 48  #__iswxxx_defšed 1 ) 50 __BEGIN_NAMESPACE_C99 53  twùy³_t ; 54 g__END_NAMESPACE_C99 56 #iâdeà _ISwb™ 61  ~<’dŸn.h > 62 #ià __BYTE_ORDER =ð __BIG_ENDIAN 63  #_ISwb™ ( b™ è(1 << (b™)) ) 65  #_ISwb™ ( b™ ) \ 66 (( b™ ) < 8 ? () ((1UL << (bit)) << 24) \ 67 : (( b™ ) < 16 ? () ((1UL << (bit)) << 8) \ 68 : (( b™ ) < 24 ? () ((1UL << (bit)) >> 8) \ 69 : (è((1UL << ( b™ )è>> 24)))) ) 74 m__ISwuµ” = 0, 75 m__ISwlow” = 1, 76 m__ISw®pha = 2, 77 m__ISwdig™ = 3, 78 m__ISwxdig™ = 4, 79 m__ISw¥aû = 5, 80 m__ISw´št = 6, 81 m__ISwg¿ph = 7, 82 m__ISwbÏnk = 8, 83 m__ISwúŒl = 9, 84 m__ISwpunù = 10, 85 m__ISw®num = 11, 87 m_ISwuµ” = _ISwb™ ( __ISwuµ” ), 88 m_ISwlow” = _ISwb™ ( __ISwlow” ), 89 m_ISw®pha = _ISwb™ ( __ISw®pha ), 90 m_ISwdig™ = _ISwb™ ( __ISwdig™ ), 91 m_ISwxdig™ = _ISwb™ ( __ISwxdig™ ), 92 m_ISw¥aû = _ISwb™ ( __ISw¥aû ), 93 m_ISw´št = _ISwb™ ( __ISw´št ), 94 m_ISwg¿ph = _ISwb™ ( __ISwg¿ph ), 95 m_ISwbÏnk = _ISwb™ ( __ISwbÏnk ), 96 m_ISwúŒl = _ISwb™ ( __ISwúŒl ), 97 m_ISwpunù = _ISwb™ ( __ISwpunù ), 98 m_ISw®num = _ISwb™ ( __ISw®num ) 103 __BEGIN_DECLS 105 __BEGIN_NAMESPACE_C99 112  $isw®num ( wšt_t __wc è __THROW ; 118  $isw®pha ( wšt_t __wc è __THROW ; 121  $iswúŒl ( wšt_t __wc è __THROW ; 125  $iswdig™ ( wšt_t __wc è __THROW ; 129  $iswg¿ph ( wšt_t __wc è __THROW ; 134  $iswlow” ( wšt_t __wc è __THROW ; 137  $isw´št ( wšt_t __wc è __THROW ; 142  $iswpunù ( wšt_t __wc è __THROW ; 147  $isw¥aû ( wšt_t __wc è __THROW ; 152  $iswuµ” ( wšt_t __wc è __THROW ; 157  $iswxdig™ ( wšt_t __wc è __THROW ; 162 #ifdeà __USE_ISOC99 163  $iswbÏnk ( wšt_t __wc è __THROW ; 172 wùy³_t $wùy³ ( __cÚ¡ * __´Ý”ty è __THROW ; 176  $iswùy³ ( wšt_t __wc , wùy³_t __desc è __THROW ; 177 __END_NAMESPACE_C99 184 __BEGIN_NAMESPACE_C99 187  __cÚ¡ t__št32_t * twù¿ns_t ; 188 __END_NAMESPACE_C99 189 #ifdeà __USE_GNU 190 $__USING_NAMESPACE_C99 ( wù¿ns_t ) 193 __BEGIN_NAMESPACE_C99 195 wšt_t $towlow” ( wšt_t __wc è __THROW ; 198 wšt_t $towuµ” ( wšt_t __wc è __THROW ; 199 __END_NAMESPACE_C99 201 __END_DECLS 208 #ifdeà _WCTYPE_H 214 __BEGIN_DECLS 216 __BEGIN_NAMESPACE_C99 219 wù¿ns_t $wù¿ns ( __cÚ¡ * __´Ý”ty è __THROW ; 222 wšt_t $towù¿ns ( wšt_t __wc , wù¿ns_t __desc è __THROW ; 223 __END_NAMESPACE_C99 225 #ifdeà __USE_GNU 227  ~ 231  $isw®num_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 237  $isw®pha_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 240  $iswúŒl_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 244  $iswdig™_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 248  $iswg¿ph_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 253  $iswlow”_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 256  $isw´št_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 261  $iswpunù_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 266  $isw¥aû_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 271  $iswuµ”_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 276  $iswxdig™_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 281  $iswbÏnk_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 285 wùy³_t $wùy³_l ( __cÚ¡ * __´Ý”ty , __loÿË_t __loÿË ) 286 __THROW ; 290  $iswùy³_l ( wšt_t __wc , wùy³_t __desc , __loÿË_t __loÿË ) 291 __THROW ; 299 wšt_t $towlow”_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 302 wšt_t $towuµ”_l ( wšt_t __wc , __loÿË_t __loÿË è __THROW ; 306 wù¿ns_t $wù¿ns_l ( __cÚ¡ * __´Ý”ty , __loÿË_t __loÿË ) 307 __THROW ; 310 wšt_t $towù¿ns_l ( wšt_t __wc , wù¿ns_t __desc , 311 __loÿË_t __loÿË è __THROW ; 315 __END_DECLS @/usr/include/asm-generic/errno-base.h 1 #iâdeà _ASM_GENERIC_ERRNO_BASE_H 2  #_ASM_GENERIC_ERRNO_BASE_H ) 4  #EPERM 1 ) 5  #ENOENT 2 ) 6  #ESRCH 3 ) 7  #EINTR 4 ) 8  #EIO 5 ) 9  #ENXIO 6 ) 10  #E2BIG 7 ) 11  #ENOEXEC 8 ) 12  #EBADF 9 ) 13  #ECHILD 10 ) 14  #EAGAIN 11 ) 15  #ENOMEM 12 ) 16  #EACCES 13 ) 17  #EFAULT 14 ) 18  #ENOTBLK 15 ) 19  #EBUSY 16 ) 20  #EEXIST 17 ) 21  #EXDEV 18 ) 22  #ENODEV 19 ) 23  #ENOTDIR 20 ) 24  #EISDIR 21 ) 25  #EINVAL 22 ) 26  #ENFILE 23 ) 27  #EMFILE 24 ) 28  #ENOTTY 25 ) 29  #ETXTBSY 26 ) 30  #EFBIG 27 ) 31  #ENOSPC 28 ) 32  #ESPIPE 29 ) 33  #EROFS 30 ) 34  #EMLINK 31 ) 35  #EPIPE 32 ) 36  #EDOM 33 ) 37  #ERANGE 34 ) @/usr/include/sched.h 20 #iâdef _SCHED_H 21  #_SCHED_H 1 ) 23  ~<ã©u»s.h > 26  ~ 28  #__Ãed_size_t ) 29  ~<¡ddef.h > 31  #__Ãed_time¥ec ) 32  ~ 35  ~ 37  #sched_´iÜ™y __sched_´iÜ™y ) 40 __BEGIN_DECLS 43  $sched_£¬am ( __pid_t __pid , __cÚ¡  sched_·¿m * __·¿m ) 44 __THROW ; 47  $sched_g‘·¿m ( __pid_t __pid ,  sched_·¿m * __·¿m è __THROW ; 50  $sched_£tscheduËr ( __pid_t __pid ,  __pÞicy , 51 __cÚ¡  sched_·¿m * __·¿m è __THROW ; 54  $sched_g‘scheduËr ( __pid_t __pid è __THROW ; 57  $sched_y›ld (è __THROW ; 60  $sched_g‘_´iÜ™y_max ( __®gÜ™hm è __THROW ; 63  $sched_g‘_´iÜ™y_mš ( __®gÜ™hm è __THROW ; 66  $sched_¼_g‘_š‹rv® ( __pid_t __pid ,  time¥ec * __t è __THROW ; 69 #ifdeà __USE_GNU 71  #CPU_SETSIZE __CPU_SETSIZE ) 72  #CPU_SET ( ýu , ýu£ è `__CPU_SET_S (ýu,  ( ýu_£t_t ), cpu£) ) 73  #CPU_CLR ( ýu , ýu£ è `__CPU_CLR_S (ýu,  ( ýu_£t_t ), cpu£) ) 74  #CPU_ISSET ( ýu , ýu£ è `__CPU_ISSET_S (ýu,  ( ýu_£t_t ), \ 75 ýu£ ) ) 76  #CPU_ZERO ( ýu£ è `__CPU_ZERO_S ( ( ýu_£t_t ), cpu£) ) 77  #CPU_COUNT ( ýu£ è `__CPU_COUNT_S ( ( ýu_£t_t ), cpu£) ) 79  #CPU_SET_S ( ýu , £tsize , ýu£ è `__CPU_SET_S (ýu, s‘size, cpu£) ) 80  #CPU_CLR_S ( ýu , £tsize , ýu£ è `__CPU_CLR_S (ýu, s‘size, cpu£) ) 81  #CPU_ISSET_S ( ýu , £tsize , ýu£ è `__CPU_ISSET_S (cpu, setsize, \ 82 ýu£ ) ) 83  #CPU_ZERO_S ( £tsize , ýu£ è `__CPU_ZERO_S (£tsize, cpu£) ) 84  #CPU_COUNT_S ( £tsize , ýu£ è `__CPU_COUNT_S (£tsize, cpu£) ) 86  #CPU_EQUAL ( ýu£1 , ýu£2 ) \ 87 `__CPU_EQUAL_S ( ( ýu_£t_t ), ýu£1 , ýu£2 ) ) 88  #CPU_EQUAL_S ( £tsize , ýu£1 , ýu£2 ) \ 89 `__CPU_EQUAL_S ( £tsize , ýu£1 , ýu£2 ) ) 91  #CPU_AND ( de¡£t , ¤c£t1 , ¤c£t2 ) \ 92 `__CPU_OP_S ( ( ýu_£t_t ), de¡£t , ¤c£t1 , ¤c£t2 , &) ) 93  #CPU_OR ( de¡£t , ¤c£t1 , ¤c£t2 ) \ 94 `__CPU_OP_S ( ( ýu_£t_t ), de¡£t , ¤c£t1 , ¤c£t2 , |) ) 95  #CPU_XOR ( de¡£t , ¤c£t1 , ¤c£t2 ) \ 96 `__CPU_OP_S ( ( ýu_£t_t ), de¡£t , ¤c£t1 , ¤c£t2 , ^) ) 97  #CPU_AND_S ( £tsize , de¡£t , ¤c£t1 , ¤c£t2 ) \ 98 `__CPU_OP_S ( £tsize , de¡£t , ¤c£t1 , ¤c£t2 , &) ) 99  #CPU_OR_S ( £tsize , de¡£t , ¤c£t1 , ¤c£t2 ) \ 100 `__CPU_OP_S ( £tsize , de¡£t , ¤c£t1 , ¤c£t2 , |) ) 101  #CPU_XOR_S ( £tsize , de¡£t , ¤c£t1 , ¤c£t2 ) \ 102 `__CPU_OP_S ( £tsize , de¡£t , ¤c£t1 , ¤c£t2 , ^) ) 104  #CPU_ALLOC_SIZE ( couÁ è `__CPU_ALLOC_SIZE (couÁ) ) 105  #CPU_ALLOC ( couÁ è `__CPU_ALLOC (couÁ) ) 106  #CPU_FREE ( ýu£t è `__CPU_FREE (ýu£t) ) 110  $sched_£ffš™y ( __pid_t __pid , size_t __ýu£tsize , 111 __cÚ¡ ýu_£t_t * __ýu£t è __THROW ; 114  $sched_g‘affš™y ( __pid_t __pid , size_t __ýu£tsize , 115 ýu_£t_t * __ýu£t è __THROW ; 118 __END_DECLS @/usr/include/bits/sched.h 22 #iâdeà __Ãed_sched·¿m 24 #iâdeà _SCHED_H 30  #SCHED_OTHER 0 ) 31  #SCHED_FIFO 1 ) 32  #SCHED_RR 2 ) 33 #ifdeà __USE_GNU 34  #SCHED_BATCH 3 ) 37 #ifdeà __USE_MISC 39  #CSIGNAL 0x000000fà ) 40  #CLONE_VM 0x00000100 ) 41  #CLONE_FS 0x00000200 ) 42  #CLONE_FILES 0x00000400 ) 43  #CLONE_SIGHAND 0x00000800 ) 44  #CLONE_PTRACE 0x00002000 ) 45  #CLONE_VFORK 0x00004000 ) 47  #CLONE_PARENT 0x00008000 ) 49  #CLONE_THREAD 0x00010000 ) 50  #CLONE_NEWNS 0x00020000 ) 51  #CLONE_SYSVSEM 0x00040000 ) 52  #CLONE_SETTLS 0x00080000 ) 53  #CLONE_PARENT_SETTID 0x00100000 ) 55  #CLONE_CHILD_CLEARTID 0x00200000 ) 57  #CLONE_DETACHED 0x00400000 ) 58  #CLONE_UNTRACED 0x00800000 ) 60  #CLONE_CHILD_SETTID 0x01000000 ) 62  #CLONE_STOPPED 0x02000000 ) 66  ssched_·¿m 68  m__sched_´iÜ™y ; 71 g__BEGIN_DECLS 73 #ifdeà __USE_MISC 75  þÚe ((* __â è(* __¬g ), * __chžd_¡ack , 76  __æags , * __¬g , ...è __THROW ; 79  $unsh¬e ( __æags è __THROW ; 82  $sched_g‘ýu (è __THROW ; 85 __END_DECLS 89 #ià! defšed __defšed_sched·¿m \ 90 && ( defšed __Ãed_sched·¿m || defšed _SCHED_H ) 91  #__defšed_sched·¿m 1 ) 93  s__sched_·¿m 95  __sched_´iÜ™y ; 97 #undeà __Ãed_sched·¿m 101 #ià defšed _SCHED_H && !defšed __ýu_£t_t_defšed 102  #__ýu_£t_t_defšed ) 104  #__CPU_SETSIZE 1024 ) 105  #__NCPUBITS (8 *  ( __ýu_mask )) ) 108  t__ýu_mask ; 111  #__CPUELT ( ýu è((ýuè/ __NCPUBITS ) ) 112  #__CPUMASK ( ýu è(( __ýu_mask è1 << ((ýuè% __NCPUBITS )) ) 117 __ýu_mask __b™s [ __CPU_SETSIZE / __NCPUBITS ]; 118 } týu_£t_t ; 121 #ià `__GNUC_PREREQ (2, 91) 122  #__CPU_ZERO_S ( £tsize , ýu£ ) \ 123 dØ `__bužtš_mem£t ( ýu£ , '\0', £tsize ); 0) ) 125  #__CPU_ZERO_S ( £tsize , ýu£ ) \ 127 size_t __i ; \ 128 size_t __imax = ( £tsize è/  ( __ýu_mask ); \ 129 ýu_£t_t * __¬r = ( ýu£ ); \ 130  __i = 0; __˜< __imax ; ++__i) \ 131 __¬r -> __b™s [ __i ] = 0; \ 132 } } 0) ) 134  #__CPU_SET_S ( ýu , £tsize , ýu£ ) \ 135 ( __ex‹nsiÚ__ \ 136 ({ size_t __ýu = ( ýu ); \ 137 __ýu < 8 * ( £tsize ) \ 138 ? (( ýu£ )-> __b™s [ `__CPUELT ( __ýu )] |ð `__CPUMASK (__ýu)è: 0; })) ) 139  #__CPU_CLR_S ( ýu , £tsize , ýu£ ) \ 140 ( __ex‹nsiÚ__ \ 141 ({ size_t __ýu = ( ýu ); \ 142 __ýu < 8 * ( £tsize ) \ 143 ? (( ýu£ )-> __b™s [ `__CPUELT ( __ýu )] &ð~ `__CPUMASK (__ýu)è: 0; })) ) 144  #__CPU_ISSET_S ( ýu , £tsize , ýu£ ) \ 145 ( __ex‹nsiÚ__ \ 146 ({ size_t __ýu = ( ýu ); \ 147 __ýu < 8 * ( £tsize ) \ 148 ? ((( ýu£ )-> __b™s [ `__CPUELT ( __ýu )] & `__CPUMASK (__cpu))) != 0 \ 149 : 0; })) ) 151  #__CPU_COUNT_S ( £tsize , ýu£ ) \ 152 `__sched_ýucouÁ ( £tsize , ýu£ ) ) 154 #ià __GNUC_PREREQ (2, 91) 155  #__CPU_EQUAL_S ( £tsize , ýu£1 , ýu£2 ) \ 156 ( `__bužtš_memcmp ( ýu£1 , ýu£2 , £tsize è=ð0) ) 158  #__CPU_EQUAL_S ( £tsize , ýu£1 , ýu£2 ) \ 159 ( __ex‹nsiÚ__ \ 160 ({ ýu_£t_t * __¬r1 = ( ýu£1 ); \ 161 ýu_£t_t * __¬r2 = ( ýu£2 ); \ 162 size_t __imax = ( £tsize è/  ( __ýu_mask ); \ 163 size_t __i ; \ 164  __i = 0; __˜< __imax ; ++__i) \ 165 ià( __¬r1 -> __b™s [ __i ] !ð __¬r2 ->__bits[__i]) \ 167 __i =ð __imax ; })) ) 170  #__CPU_OP_S ( £tsize , de¡£t , ¤c£t1 , ¤c£t2 , Ý ) \ 171 ( __ex‹nsiÚ__ \ 172 ({ ýu_£t_t * __de¡ = ( de¡£t ); \ 173 ýu_£t_t * __¬r1 = ( ¤c£t1 ); \ 174 ýu_£t_t * __¬r2 = ( ¤c£t2 ); \ 175 size_t __imax = ( £tsize è/  ( __ýu_mask ); \ 176 size_t __i ; \ 177  __i = 0; __˜< __imax ; ++__i) \ 178 __de¡ -> __b™s [ __i ] = __¬r1 ->__b™s[__i] Ý __¬r2 ->__bits[__i]; \ 179 __de¡ ; })) ) 181  #__CPU_ALLOC_SIZE ( couÁ ) \ 182 (((( couÁ è+ __NCPUBITS - 1è/ __NCPUBITSè* 8) ) 183  #__CPU_ALLOC ( couÁ è `__sched_ýu®loc (couÁ) ) 184  #__CPU_FREE ( ýu£t è `__sched_ýuä“ (ýu£t) ) 186 __BEGIN_DECLS 188  $__sched_ýucouÁ ( size_t __£tsize , cÚ¡ ýu_£t_t * __£ ) 189 __THROW ; 190 ýu_£t_t * $__sched_ýu®loc ( size_t __couÁ è __THROW __wur ; 191  $__sched_ýuä“ ( ýu_£t_t * __£t è __THROW ; 193 __END_DECLS @ 1 . 1 /usr/include 331 7575 config.h src/array.c src/array.h src/base.h src/bitset.c src/bitset.h src/buffer.c src/buffer.h src/chunk.c src/chunk.h src/configfile-glue.c src/configfile.c src/configfile.h src/configparser.c src/configparser.h src/connections-glue.c src/connections.c src/connections.h src/crc32.c src/crc32.h src/data_array.c src/data_config.c src/data_count.c src/data_fastcgi.c src/data_integer.c src/data_string.c src/etag.c src/etag.h src/fastcgi.h src/fdevent.c src/fdevent.h src/fdevent_freebsd_kqueue.c src/fdevent_linux_rtsig.c src/fdevent_linux_sysepoll.c src/fdevent_poll.c src/fdevent_select.c src/fdevent_solaris_devpoll.c src/http-header-glue.c src/http_auth.c src/http_auth.h src/http_auth_digest.c src/http_auth_digest.h src/http_chunk.c src/http_chunk.h src/inet_ntop_cache.c src/inet_ntop_cache.h src/joblist.c src/joblist.h src/keyvalue.c src/keyvalue.h src/lemon.c src/lempar.c src/lighttpd-angel.c src/log.c src/log.h src/md5.c src/md5.h src/mod_access.c src/mod_accesslog.c src/mod_alias.c src/mod_auth.c src/mod_auth.h src/mod_cgi.c src/mod_cml.c src/mod_cml.h src/mod_cml_funcs.c src/mod_cml_funcs.h src/mod_cml_lua.c src/mod_compress.c src/mod_dirlisting.c src/mod_evasive.c src/mod_evhost.c src/mod_expire.c src/mod_extforward.c src/mod_fastcgi.c src/mod_flv_streaming.c src/mod_indexfile.c src/mod_magnet.c src/mod_magnet_cache.c src/mod_magnet_cache.h src/mod_mysql_vhost.c src/mod_proxy.c src/mod_redirect.c src/mod_rewrite.c src/mod_rrdtool.c src/mod_scgi.c src/mod_secure_download.c src/mod_setenv.c src/mod_simple_vhost.c src/mod_skeleton.c src/mod_ssi.c src/mod_ssi.h src/mod_ssi_expr.c src/mod_ssi_expr.h src/mod_ssi_exprparser.c src/mod_ssi_exprparser.h src/mod_staticfile.c src/mod_status.c src/mod_trigger_b4_dl.c src/mod_userdir.c src/mod_usertrack.c src/mod_webdav.c src/network.c src/network.h src/network_backends.h src/network_freebsd_sendfile.c src/network_linux_sendfile.c src/network_openssl.c src/network_solaris_sendfilev.c src/network_write.c src/network_writev.c src/plugin.c src/plugin.h src/proc_open.c src/proc_open.h src/request.c src/request.h src/response.c src/response.h src/server.c src/server.h src/settings.h src/spawn-fcgi.c src/splaytree.c src/splaytree.h src/stat_cache.c src/stat_cache.h src/status_counter.c src/status_counter.h src/stream.c src/stream.h src/sys-mmap.h src/sys-socket.h tests/fcgi-auth.c tests/fcgi-responder.c /usr/include/arpa/inet.h /usr/include/assert.h /usr/include/bzlib.h /usr/include/crypt.h /usr/include/ctype.h /usr/include/dirent.h /usr/include/dlfcn.h /usr/include/errno.h /usr/include/fcntl.h /usr/include/gdbm.h /usr/include/getopt.h /usr/include/grp.h /usr/include/inttypes.h /usr/include/ldap.h /usr/include/limits.h /usr/include/locale.h /usr/include/netdb.h /usr/include/netinet/in.h /usr/include/netinet/tcp.h /usr/include/openssl/err.h /usr/include/openssl/md5.h /usr/include/openssl/rand.h /usr/include/openssl/ssl.h /usr/include/pcre.h /usr/include/poll.h /usr/include/pwd.h /usr/include/setjmp.h /usr/include/signal.h /usr/include/sqlite3.h /usr/include/stdint.h /usr/include/stdio.h /usr/include/stdlib.h /usr/include/string.h /usr/include/strings.h /usr/include/sys/epoll.h /usr/include/sys/ioctl.h /usr/include/sys/mman.h /usr/include/sys/poll.h /usr/include/sys/prctl.h /usr/include/sys/resource.h /usr/include/sys/select.h /usr/include/sys/sendfile.h /usr/include/sys/socket.h /usr/include/sys/stat.h /usr/include/sys/time.h /usr/include/sys/types.h /usr/include/sys/uio.h /usr/include/sys/un.h /usr/include/sys/wait.h /usr/include/syslog.h /usr/include/time.h /usr/include/unistd.h /usr/include/uuid/uuid.h /usr/include/valgrind/valgrind.h /usr/include/zlib.h /usr/include/alloca.h /usr/include/bits/byteswap.h /usr/include/bits/confname.h /usr/include/bits/dirent.h /usr/include/bits/dlfcn.h /usr/include/bits/environments.h /usr/include/bits/errno.h /usr/include/bits/fcntl.h /usr/include/bits/fcntl2.h /usr/include/bits/in.h /usr/include/bits/ioctl-types.h /usr/include/bits/ioctls.h /usr/include/bits/locale.h /usr/include/bits/mman.h /usr/include/bits/netdb.h /usr/include/bits/poll.h /usr/include/bits/posix1_lim.h /usr/include/bits/posix2_lim.h /usr/include/bits/posix_opt.h /usr/include/bits/pthreadtypes.h /usr/include/bits/resource.h /usr/include/bits/select.h /usr/include/bits/setjmp.h /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h /usr/include/bits/siginfo.h /usr/include/bits/signum.h /usr/include/bits/sigset.h /usr/include/bits/sigstack.h /usr/include/bits/sigthread.h /usr/include/bits/sockaddr.h /usr/include/bits/socket.h /usr/include/bits/socket2.h /usr/include/bits/stat.h /usr/include/bits/stdio-ldbl.h /usr/include/bits/stdio.h /usr/include/bits/stdio2.h /usr/include/bits/stdio_lim.h /usr/include/bits/stdlib-ldbl.h /usr/include/bits/stdlib.h /usr/include/bits/string.h /usr/include/bits/string2.h /usr/include/bits/string3.h /usr/include/bits/sys_errlist.h /usr/include/bits/time.h /usr/include/bits/types.h /usr/include/bits/uio.h /usr/include/bits/unistd.h /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h /usr/include/bits/wchar.h /usr/include/bits/wordsize.h /usr/include/bits/xopen_lim.h /usr/include/endian.h /usr/include/features.h /usr/include/lber.h /usr/include/ldap_features.h /usr/include/libio.h /usr/include/linux/prctl.h /usr/include/openssl/bio.h /usr/include/openssl/buffer.h /usr/include/openssl/comp.h /usr/include/openssl/crypto.h /usr/include/openssl/dtls1.h /usr/include/openssl/e_os2.h /usr/include/openssl/kssl.h /usr/include/openssl/lhash.h /usr/include/openssl/ossl_typ.h /usr/include/openssl/pem.h /usr/include/openssl/safestack.h /usr/include/openssl/ssl2.h /usr/include/openssl/ssl23.h /usr/include/openssl/ssl3.h /usr/include/openssl/symhacks.h /usr/include/openssl/tls1.h /usr/include/openssl/x509.h /usr/include/rpc/netdb.h /usr/include/sys/cdefs.h /usr/include/sys/syslog.h /usr/include/sys/sysmacros.h /usr/include/sys/ttydefaults.h /usr/include/sys/ucontext.h /usr/include/xlocale.h /usr/include/zconf.h /usr/include/_G_config.h /usr/include/asm/ioctls.h /usr/include/asm/socket.h /usr/include/bits/endian.h /usr/include/bits/libio-ldbl.h /usr/include/bits/local_lim.h /usr/include/bits/stdio-lock.h /usr/include/bits/syslog-ldbl.h /usr/include/bits/syslog-path.h /usr/include/bits/syslog.h /usr/include/bits/typesizes.h /usr/include/gnu/stubs.h /usr/include/krb5.h /usr/include/lber_types.h /usr/include/linux/errno.h /usr/include/openssl/asn1.h /usr/include/openssl/dh.h /usr/include/openssl/dsa.h /usr/include/openssl/ebcdic.h /usr/include/openssl/ec.h /usr/include/openssl/ecdh.h /usr/include/openssl/ecdsa.h /usr/include/openssl/evp.h /usr/include/openssl/opensslconf.h /usr/include/openssl/opensslv.h /usr/include/openssl/pem2.h /usr/include/openssl/pkcs7.h /usr/include/openssl/pq_compat.h /usr/include/openssl/pqueue.h /usr/include/openssl/rsa.h /usr/include/openssl/sha.h /usr/include/openssl/stack.h /usr/include/openssl/x509_vfy.h /usr/include/zlibdefs.h /usr/include/asm/errno.h /usr/include/asm/ioctl.h /usr/include/asm/sockios.h /usr/include/bits/libc-lock.h /usr/include/gconv.h /usr/include/gnu/stubs-32.h /usr/include/krb5/krb5.h /usr/include/ldap_cdefs.h /usr/include/linux/limits.h /usr/include/openssl/bn.h /usr/include/openssl/objects.h /usr/include/wchar.h /usr/include/asm-generic/errno.h /usr/include/asm-generic/ioctl.h /usr/include/bits/wchar-ldbl.h /usr/include/bits/wchar2.h /usr/include/et/com_err.h /usr/include/openssl/obj_mac.h /usr/include/pthread.h /usr/include/wctype.h /usr/include/asm-generic/errno-base.h /usr/include/sched.h /usr/include/bits/sched.h