req 2636 ext/ldap/ldap.c int _ldap_rebind_proc(LDAP *ldap, const char *url, ber_tag_t req, ber_int_t msgid, void *params) req 650 ext/openssl/openssl.c static EVP_PKEY * php_openssl_generate_private_key(struct php_x509_request * req); req 832 ext/openssl/openssl.c static int add_oid_section(struct php_x509_request * req) /* {{{ */ req 839 ext/openssl/openssl.c str = CONF_get_string(req->req_config, NULL, "oid_section"); req 843 ext/openssl/openssl.c sktmp = CONF_get_section(req->req_config, str); req 859 ext/openssl/openssl.c #define PHP_SSL_REQ_INIT(req) memset(req, 0, sizeof(*req)) req 860 ext/openssl/openssl.c #define PHP_SSL_REQ_DISPOSE(req) php_openssl_dispose_config(req) req 861 ext/openssl/openssl.c #define PHP_SSL_REQ_PARSE(req, zval) php_openssl_parse_config(req, zval) req 863 ext/openssl/openssl.c #define PHP_SSL_CONFIG_SYNTAX_CHECK(var) if (req->var && php_openssl_config_check_syntax(#var, \ req 864 ext/openssl/openssl.c req->config_filename, req->var, req->req_config) == FAILURE) return FAILURE req 899 ext/openssl/openssl.c static int php_openssl_parse_config(struct php_x509_request * req, zval * optional_args) /* {{{ */ req 904 ext/openssl/openssl.c SET_OPTIONAL_STRING_ARG("config", req->config_filename, default_ssl_conf_filename); req 905 ext/openssl/openssl.c SET_OPTIONAL_STRING_ARG("config_section_name", req->section_name, "req"); req 906 ext/openssl/openssl.c req->global_config = CONF_load(NULL, default_ssl_conf_filename, NULL); req 907 ext/openssl/openssl.c req->req_config = CONF_load(NULL, req->config_filename, NULL); req 909 ext/openssl/openssl.c if (req->req_config == NULL) { req 914 ext/openssl/openssl.c str = CONF_get_string(req->req_config, NULL, "oid_file"); req 922 ext/openssl/openssl.c if (add_oid_section(req) == FAILURE) { req 925 ext/openssl/openssl.c SET_OPTIONAL_STRING_ARG("digest_alg", req->digest_name, req 926 ext/openssl/openssl.c CONF_get_string(req->req_config, req->section_name, "default_md")); req 927 ext/openssl/openssl.c SET_OPTIONAL_STRING_ARG("x509_extensions", req->extensions_section, req 928 ext/openssl/openssl.c CONF_get_string(req->req_config, req->section_name, "x509_extensions")); req 929 ext/openssl/openssl.c SET_OPTIONAL_STRING_ARG("req_extensions", req->request_extensions_section, req 930 ext/openssl/openssl.c CONF_get_string(req->req_config, req->section_name, "req_extensions")); req 931 ext/openssl/openssl.c SET_OPTIONAL_LONG_ARG("private_key_bits", req->priv_key_bits, req 932 ext/openssl/openssl.c CONF_get_number(req->req_config, req->section_name, "default_bits")); req 934 ext/openssl/openssl.c SET_OPTIONAL_LONG_ARG("private_key_type", req->priv_key_type, OPENSSL_KEYTYPE_DEFAULT); req 937 ext/openssl/openssl.c req->priv_key_encrypt = Z_TYPE_P(item) == IS_TRUE ? 1 : 0; req 939 ext/openssl/openssl.c str = CONF_get_string(req->req_config, req->section_name, "encrypt_rsa_key"); req 941 ext/openssl/openssl.c str = CONF_get_string(req->req_config, req->section_name, "encrypt_key"); req 944 ext/openssl/openssl.c req->priv_key_encrypt = 0; req 946 ext/openssl/openssl.c req->priv_key_encrypt = 1; req 950 ext/openssl/openssl.c if (req->priv_key_encrypt && optional_args && (item = zend_hash_str_find(Z_ARRVAL_P(optional_args), "encrypt_key_cipher", sizeof("encrypt_key_cipher")-1)) != NULL req 958 ext/openssl/openssl.c req->priv_key_encrypt_cipher = cipher; req 961 ext/openssl/openssl.c req->priv_key_encrypt_cipher = NULL; req 967 ext/openssl/openssl.c if (req->digest_name == NULL) { req 968 ext/openssl/openssl.c req->digest_name = CONF_get_string(req->req_config, req->section_name, "default_md"); req 970 ext/openssl/openssl.c if (req->digest_name) { req 971 ext/openssl/openssl.c req->digest = req->md_alg = EVP_get_digestbyname(req->digest_name); req 973 ext/openssl/openssl.c if (req->md_alg == NULL) { req 974 ext/openssl/openssl.c req->md_alg = req->digest = EVP_sha1(); req 980 ext/openssl/openssl.c str = CONF_get_string(req->req_config, req->section_name, "string_mask"); req 992 ext/openssl/openssl.c static void php_openssl_dispose_config(struct php_x509_request * req) /* {{{ */ req 994 ext/openssl/openssl.c if (req->priv_key) { req 995 ext/openssl/openssl.c EVP_PKEY_free(req->priv_key); req 996 ext/openssl/openssl.c req->priv_key = NULL; req 998 ext/openssl/openssl.c if (req->global_config) { req 999 ext/openssl/openssl.c CONF_free(req->global_config); req 1000 ext/openssl/openssl.c req->global_config = NULL; req 1002 ext/openssl/openssl.c if (req->req_config) { req 1003 ext/openssl/openssl.c CONF_free(req->req_config); req 1004 ext/openssl/openssl.c req->req_config = NULL; req 2661 ext/openssl/openssl.c static int php_openssl_make_REQ(struct php_x509_request * req, X509_REQ * csr, zval * dn, zval * attribs) req 2666 ext/openssl/openssl.c dn_sect = CONF_get_string(req->req_config, req->section_name, "distinguished_name"); req 2670 ext/openssl/openssl.c dn_sk = CONF_get_section(req->req_config, dn_sect); req 2674 ext/openssl/openssl.c attr_sect = CONF_get_string(req->req_config, req->section_name, "attributes"); req 2678 ext/openssl/openssl.c attr_sk = CONF_get_section(req->req_config, attr_sect); req 2801 ext/openssl/openssl.c X509_REQ_set_pubkey(csr, req->priv_key); req 2954 ext/openssl/openssl.c struct php_x509_request req; req 2960 ext/openssl/openssl.c PHP_SSL_REQ_INIT(&req); req 2984 ext/openssl/openssl.c if (PHP_SSL_REQ_PARSE(&req, args) == FAILURE) { req 3032 ext/openssl/openssl.c if (req.extensions_section) { req 3036 ext/openssl/openssl.c X509V3_set_conf_lhash(&ctx, req.req_config); req 3037 ext/openssl/openssl.c if (!X509V3_EXT_add_conf(req.req_config, &ctx, req.extensions_section, new_cert)) { req 3043 ext/openssl/openssl.c if (!X509_sign(new_cert, priv_key, req.digest)) { req 3057 ext/openssl/openssl.c PHP_SSL_REQ_DISPOSE(&req); req 3081 ext/openssl/openssl.c struct php_x509_request req; req 3093 ext/openssl/openssl.c PHP_SSL_REQ_INIT(&req); req 3095 ext/openssl/openssl.c if (PHP_SSL_REQ_PARSE(&req, args) == SUCCESS) { req 3098 ext/openssl/openssl.c req.priv_key = php_openssl_evp_from_zval(out_pkey, 0, NULL, 0, &key_resource); req 3099 ext/openssl/openssl.c if (req.priv_key != NULL) { req 3103 ext/openssl/openssl.c if (req.priv_key == NULL) { req 3104 ext/openssl/openssl.c php_openssl_generate_private_key(&req); req 3106 ext/openssl/openssl.c if (req.priv_key == NULL) { req 3111 ext/openssl/openssl.c if (php_openssl_make_REQ(&req, csr, dn, attribs) == SUCCESS) { req 3115 ext/openssl/openssl.c X509V3_set_conf_lhash(&ext_ctx, req.req_config); req 3118 ext/openssl/openssl.c if (req.request_extensions_section && !X509V3_EXT_REQ_add_conf(req.req_config, req 3119 ext/openssl/openssl.c &ext_ctx, req.request_extensions_section, csr)) req 3121 ext/openssl/openssl.c php_error_docref(NULL, E_WARNING, "Error loading extension section %s", req.request_extensions_section); req 3125 ext/openssl/openssl.c if (X509_REQ_sign(csr, req.priv_key, req.digest)) { req 3135 ext/openssl/openssl.c ZVAL_RES(out_pkey, zend_register_resource(req.priv_key, le_key)); req 3136 ext/openssl/openssl.c req.priv_key = NULL; /* make sure the cleanup code doesn't zap it! */ req 3138 ext/openssl/openssl.c req.priv_key = NULL; /* make sure the cleanup code doesn't zap it! */ req 3145 ext/openssl/openssl.c req.priv_key = NULL; req 3154 ext/openssl/openssl.c PHP_SSL_REQ_DISPOSE(&req); req 3387 ext/openssl/openssl.c static EVP_PKEY * php_openssl_generate_private_key(struct php_x509_request * req) req 3393 ext/openssl/openssl.c if (req->priv_key_bits < MIN_KEY_LENGTH) { req 3395 ext/openssl/openssl.c MIN_KEY_LENGTH, req->priv_key_bits); req 3399 ext/openssl/openssl.c randfile = CONF_get_string(req->req_config, req->section_name, "RANDFILE"); req 3402 ext/openssl/openssl.c if ((req->priv_key = EVP_PKEY_new()) != NULL) { req 3403 ext/openssl/openssl.c switch(req->priv_key_type) { req 3409 ext/openssl/openssl.c rsaparam = (RSA*)RSA_generate_key(req->priv_key_bits, RSA_F4, NULL, NULL); req 3419 ext/openssl/openssl.c RSA_generate_key_ex(rsaparam, req->priv_key_bits, bne, NULL); req 3423 ext/openssl/openssl.c if (rsaparam && EVP_PKEY_assign_RSA(req->priv_key, rsaparam)) { req 3424 ext/openssl/openssl.c return_val = req->priv_key; req 3433 ext/openssl/openssl.c dsaparam = DSA_generate_parameters(req->priv_key_bits, NULL, 0, NULL, NULL, NULL, NULL); req 3435 ext/openssl/openssl.c DSA_generate_parameters_ex(dsaparam, req->priv_key_bits, NULL, 0, NULL, NULL, NULL); req 3440 ext/openssl/openssl.c if (EVP_PKEY_assign_DSA(req->priv_key, dsaparam)) { req 3441 ext/openssl/openssl.c return_val = req->priv_key; req 3456 ext/openssl/openssl.c dhparam = DH_generate_parameters(req->priv_key_bits, 2, NULL, NULL); req 3458 ext/openssl/openssl.c DH_generate_parameters_ex(dhparam, req->priv_key_bits, 2, NULL); req 3463 ext/openssl/openssl.c if (EVP_PKEY_assign_DH(req->priv_key, dhparam)) { req 3464 ext/openssl/openssl.c return_val = req->priv_key; req 3481 ext/openssl/openssl.c EVP_PKEY_free(req->priv_key); req 3482 ext/openssl/openssl.c req->priv_key = NULL; req 3570 ext/openssl/openssl.c struct php_x509_request req; req 3654 ext/openssl/openssl.c PHP_SSL_REQ_INIT(&req); req 3656 ext/openssl/openssl.c if (PHP_SSL_REQ_PARSE(&req, args) == SUCCESS) req 3658 ext/openssl/openssl.c if (php_openssl_generate_private_key(&req)) { req 3660 ext/openssl/openssl.c RETVAL_RES(zend_register_resource(req.priv_key, le_key)); req 3662 ext/openssl/openssl.c req.priv_key = NULL; req 3665 ext/openssl/openssl.c PHP_SSL_REQ_DISPOSE(&req); req 3673 ext/openssl/openssl.c struct php_x509_request req; req 3703 ext/openssl/openssl.c PHP_SSL_REQ_INIT(&req); req 3705 ext/openssl/openssl.c if (PHP_SSL_REQ_PARSE(&req, args) == SUCCESS) { req 3708 ext/openssl/openssl.c if (passphrase && req.priv_key_encrypt) { req 3709 ext/openssl/openssl.c if (req.priv_key_encrypt_cipher) { req 3710 ext/openssl/openssl.c cipher = req.priv_key_encrypt_cipher; req 3735 ext/openssl/openssl.c PHP_SSL_REQ_DISPOSE(&req); req 3750 ext/openssl/openssl.c struct php_x509_request req; req 3773 ext/openssl/openssl.c PHP_SSL_REQ_INIT(&req); req 3775 ext/openssl/openssl.c if (PHP_SSL_REQ_PARSE(&req, args) == SUCCESS) { req 3778 ext/openssl/openssl.c if (passphrase && req.priv_key_encrypt) { req 3779 ext/openssl/openssl.c if (req.priv_key_encrypt_cipher) { req 3780 ext/openssl/openssl.c cipher = req.priv_key_encrypt_cipher; req 3812 ext/openssl/openssl.c PHP_SSL_REQ_DISPOSE(&req); req 150 ext/recode/recode.c char *req, *str; req 152 ext/recode/recode.c if (zend_parse_parameters(ZEND_NUM_ARGS(), "ss", &req, &req_len, &str, &str_len) == FAILURE) { req 163 ext/recode/recode.c if (!recode_scan_request(request, req)) { req 164 ext/recode/recode.c php_error_docref(NULL, E_WARNING, "Illegal recode request '%s'", req); req 189 ext/recode/recode.c char *req; req 195 ext/recode/recode.c if (zend_parse_parameters(ZEND_NUM_ARGS(), "srr", &req, &req_len, &input, &output) == FAILURE) { req 216 ext/recode/recode.c if (!recode_scan_request(request, req)) { req 217 ext/recode/recode.c php_error_docref(NULL, E_WARNING, "Illegal recode request '%s'", req); req 747 ext/xmlrpc/libxmlrpc/xmlrpc.c XMLRPC_REQUEST req = XMLRPC_REQUEST_FromXML(in_buf, len, in_options); req 749 ext/xmlrpc/libxmlrpc/xmlrpc.c if(req) { req 750 ext/xmlrpc/libxmlrpc/xmlrpc.c xResponse = req->io; req 751 ext/xmlrpc/libxmlrpc/xmlrpc.c XMLRPC_RequestFree(req, 0); req 877 main/fastcgi.c fcgi_request *req = calloc(1, sizeof(fcgi_request)); req 878 main/fastcgi.c req->listen_socket = listen_socket; req 879 main/fastcgi.c req->fd = -1; req 880 main/fastcgi.c req->id = -1; req 896 main/fastcgi.c req->out_pos = req->out_buf; req 897 main/fastcgi.c req->hook.on_accept = on_accept ? on_accept : fcgi_hook_dummy; req 898 main/fastcgi.c req->hook.on_read = on_read ? on_read : fcgi_hook_dummy; req 899 main/fastcgi.c req->hook.on_close = on_close ? on_close : fcgi_hook_dummy; req 902 main/fastcgi.c req->tcp = !GetNamedPipeInfo((HANDLE)_get_osfhandle(req->listen_socket), NULL, NULL, NULL, NULL); req 905 main/fastcgi.c fcgi_hash_init(&req->env); req 907 main/fastcgi.c return req; req 910 main/fastcgi.c void fcgi_destroy_request(fcgi_request *req) { req 911 main/fastcgi.c fcgi_hash_destroy(&req->env); req 912 main/fastcgi.c free(req); req 915 main/fastcgi.c static inline ssize_t safe_write(fcgi_request *req, const void *buf, size_t count) req 928 main/fastcgi.c if (!req->tcp) { req 931 main/fastcgi.c ret = write(req->fd, ((char*)buf)+n, out_len); req 935 main/fastcgi.c ret = send(req->fd, ((char*)buf)+n, out_len, 0); req 941 main/fastcgi.c ret = write(req->fd, ((char*)buf)+n, count-n); req 952 main/fastcgi.c static inline ssize_t safe_read(fcgi_request *req, const void *buf, size_t count) req 965 main/fastcgi.c if (!req->tcp) { req 968 main/fastcgi.c ret = read(req->fd, ((char*)buf)+n, in_len); req 972 main/fastcgi.c ret = recv(req->fd, ((char*)buf)+n, in_len, 0); req 978 main/fastcgi.c ret = read(req->fd, ((char*)buf)+n, count-n); req 1009 main/fastcgi.c static int fcgi_get_params(fcgi_request *req, unsigned char *p, unsigned char *end) req 1035 main/fastcgi.c fcgi_hash_set(&req->env, FCGI_HASH_FUNC(p, name_len), (char*)p, name_len, (char*)p + name_len, val_len); req 1041 main/fastcgi.c static int fcgi_read_request(fcgi_request *req) req 1047 main/fastcgi.c req->keep = 0; req 1048 main/fastcgi.c req->closed = 0; req 1049 main/fastcgi.c req->in_len = 0; req 1050 main/fastcgi.c req->out_hdr = NULL; req 1051 main/fastcgi.c req->out_pos = req->out_buf; req 1052 main/fastcgi.c req->has_env = 1; req 1054 main/fastcgi.c if (safe_read(req, &hdr, sizeof(fcgi_header)) != sizeof(fcgi_header) || req 1063 main/fastcgi.c if (safe_read(req, &hdr, sizeof(fcgi_header)) != sizeof(fcgi_header) || req 1076 main/fastcgi.c req->id = (hdr.requestIdB1 << 8) + hdr.requestIdB0; req 1079 main/fastcgi.c if (safe_read(req, buf, len+padding) != len+padding) { req 1083 main/fastcgi.c req->keep = (((fcgi_begin_request*)buf)->flags & FCGI_KEEP_CONN); req 1085 main/fastcgi.c if (req->keep && req->tcp && !req->nodelay) { req 1092 main/fastcgi.c setsockopt(req->fd, IPPROTO_TCP, TCP_NODELAY, (char*)&on, sizeof(on)); req 1093 main/fastcgi.c req->nodelay = 1; req 1098 main/fastcgi.c fcgi_hash_set(&req->env, FCGI_HASH_FUNC("FCGI_ROLE", sizeof("FCGI_ROLE")-1), "FCGI_ROLE", sizeof("FCGI_ROLE")-1, "RESPONDER", sizeof("RESPONDER")-1); req 1101 main/fastcgi.c fcgi_hash_set(&req->env, FCGI_HASH_FUNC("FCGI_ROLE", sizeof("FCGI_ROLE")-1), "FCGI_ROLE", sizeof("FCGI_ROLE")-1, "AUTHORIZER", sizeof("AUTHORIZER")-1); req 1104 main/fastcgi.c fcgi_hash_set(&req->env, FCGI_HASH_FUNC("FCGI_ROLE", sizeof("FCGI_ROLE")-1), "FCGI_ROLE", sizeof("FCGI_ROLE")-1, "FILTER", sizeof("FILTER")-1); req 1110 main/fastcgi.c if (safe_read(req, &hdr, sizeof(fcgi_header)) != sizeof(fcgi_header) || req 1123 main/fastcgi.c if (safe_read(req, buf, len+padding) != len+padding) { req 1124 main/fastcgi.c req->keep = 0; req 1128 main/fastcgi.c if (!fcgi_get_params(req, buf, buf+len)) { req 1129 main/fastcgi.c req->keep = 0; req 1133 main/fastcgi.c if (safe_read(req, &hdr, sizeof(fcgi_header)) != sizeof(fcgi_header) || req 1135 main/fastcgi.c req->keep = 0; req 1147 main/fastcgi.c if (safe_read(req, buf, len+padding) != len+padding) { req 1148 main/fastcgi.c req->keep = 0; req 1152 main/fastcgi.c if (!fcgi_get_params(req, buf, buf+len)) { req 1153 main/fastcgi.c req->keep = 0; req 1157 main/fastcgi.c q = req->env.list; req 1191 main/fastcgi.c if (safe_write(req, buf, sizeof(fcgi_header) + len) != (ssize_t)sizeof(fcgi_header)+len) { req 1192 main/fastcgi.c req->keep = 0; req 1203 main/fastcgi.c int fcgi_read(fcgi_request *req, char *str, int len) req 1212 main/fastcgi.c if (req->in_len == 0) { req 1213 main/fastcgi.c if (safe_read(req, &hdr, sizeof(fcgi_header)) != sizeof(fcgi_header) || req 1216 main/fastcgi.c req->keep = 0; req 1219 main/fastcgi.c req->in_len = (hdr.contentLengthB1 << 8) | hdr.contentLengthB0; req 1220 main/fastcgi.c req->in_pad = hdr.paddingLength; req 1221 main/fastcgi.c if (req->in_len == 0) { req 1226 main/fastcgi.c if (req->in_len >= rest) { req 1227 main/fastcgi.c ret = (int)safe_read(req, str, rest); req 1229 main/fastcgi.c ret = (int)safe_read(req, str, req->in_len); req 1232 main/fastcgi.c req->keep = 0; req 1235 main/fastcgi.c req->in_len -= ret; req 1239 main/fastcgi.c if (req->in_len == 0) { req 1240 main/fastcgi.c if (req->in_pad) { req 1241 main/fastcgi.c if (safe_read(req, buf, req->in_pad) != req->in_pad) { req 1242 main/fastcgi.c req->keep = 0; req 1256 main/fastcgi.c void fcgi_close(fcgi_request *req, int force, int destroy) req 1258 main/fastcgi.c if (destroy && req->has_env) { req 1259 main/fastcgi.c fcgi_hash_clean(&req->env); req 1260 main/fastcgi.c req->has_env = 0; req 1264 main/fastcgi.c if (is_impersonate && !req->tcp) { req 1269 main/fastcgi.c if ((force || !req->keep) && req->fd >= 0) { req 1271 main/fastcgi.c if (!req->tcp) { req 1272 main/fastcgi.c HANDLE pipe = (HANDLE)_get_osfhandle(req->fd); req 1282 main/fastcgi.c shutdown(req->fd, 1); req 1284 main/fastcgi.c while (recv(req->fd, buf, sizeof(buf), 0) > 0) {} req 1286 main/fastcgi.c closesocket(req->fd); req 1292 main/fastcgi.c shutdown(req->fd, 1); req 1294 main/fastcgi.c while (recv(req->fd, buf, sizeof(buf), 0) > 0) {} req 1296 main/fastcgi.c close(req->fd); req 1299 main/fastcgi.c req->nodelay = 0; req 1301 main/fastcgi.c req->fd = -1; req 1303 main/fastcgi.c req->hook.on_close(); req 1307 main/fastcgi.c int fcgi_is_closed(fcgi_request *req) req 1309 main/fastcgi.c return (req->fd < 0); req 1350 main/fastcgi.c int fcgi_accept_request(fcgi_request *req) req 1358 main/fastcgi.c if (req->fd < 0) { req 1364 main/fastcgi.c if (!req->tcp) { req 1365 main/fastcgi.c pipe = (HANDLE)_get_osfhandle(req->listen_socket); req 1366 main/fastcgi.c FCGI_LOCK(req->listen_socket); req 1374 main/fastcgi.c FCGI_UNLOCK(req->listen_socket); req 1382 main/fastcgi.c req->fd = req->listen_socket; req 1383 main/fastcgi.c FCGI_UNLOCK(req->listen_socket); req 1385 main/fastcgi.c SOCKET listen_socket = (SOCKET)_get_osfhandle(req->listen_socket); req 1388 main/fastcgi.c int listen_socket = req->listen_socket; req 1393 main/fastcgi.c req->hook.on_accept(); req 1395 main/fastcgi.c FCGI_LOCK(req->listen_socket); req 1396 main/fastcgi.c req->fd = accept(listen_socket, (struct sockaddr *)&sa, &len); req 1397 main/fastcgi.c FCGI_UNLOCK(req->listen_socket); req 1400 main/fastcgi.c if (req->fd >= 0 && !fcgi_is_allowed()) { req 1402 main/fastcgi.c closesocket(req->fd); req 1403 main/fastcgi.c req->fd = -1; req 1409 main/fastcgi.c if (req->fd < 0 && (in_shutdown || errno != EINTR)) { req 1411 main/fastcgi.c if (req->fd < 0 && (in_shutdown || (errno != EINTR && errno != ECONNABORTED))) { req 1419 main/fastcgi.c if (req->fd >= 0) { req 1424 main/fastcgi.c req->hook.on_read(); req 1426 main/fastcgi.c fds.fd = req->fd; req 1436 main/fastcgi.c fcgi_close(req, 1, 0); req 1438 main/fastcgi.c req->hook.on_read(); req 1440 main/fastcgi.c if (req->fd < FD_SETSIZE) { req 1446 main/fastcgi.c FD_SET(req->fd, &set); req 1449 main/fastcgi.c ret = select(req->fd + 1, &set, NULL, NULL, &tv) >= 0; req 1451 main/fastcgi.c if (ret > 0 && FD_ISSET(req->fd, &set)) { req 1454 main/fastcgi.c fcgi_close(req, 1, 0); req 1457 main/fastcgi.c fcgi_close(req, 1, 0); req 1466 main/fastcgi.c if (fcgi_read_request(req)) { req 1468 main/fastcgi.c if (is_impersonate && !req->tcp) { req 1469 main/fastcgi.c pipe = (HANDLE)_get_osfhandle(req->fd); req 1471 main/fastcgi.c fcgi_close(req, 1, 1); req 1476 main/fastcgi.c return req->fd; req 1478 main/fastcgi.c fcgi_close(req, 1, 1); req 1483 main/fastcgi.c static inline fcgi_header* open_packet(fcgi_request *req, fcgi_request_type type) req 1485 main/fastcgi.c req->out_hdr = (fcgi_header*) req->out_pos; req 1486 main/fastcgi.c req->out_hdr->type = type; req 1487 main/fastcgi.c req->out_pos += sizeof(fcgi_header); req 1488 main/fastcgi.c return req->out_hdr; req 1491 main/fastcgi.c static inline void close_packet(fcgi_request *req) req 1493 main/fastcgi.c if (req->out_hdr) { req 1494 main/fastcgi.c int len = (int)(req->out_pos - ((unsigned char*)req->out_hdr + sizeof(fcgi_header))); req 1496 main/fastcgi.c req->out_pos += fcgi_make_header(req->out_hdr, (fcgi_request_type)req->out_hdr->type, req->id, len); req 1497 main/fastcgi.c req->out_hdr = NULL; req 1501 main/fastcgi.c int fcgi_flush(fcgi_request *req, int close) req 1505 main/fastcgi.c close_packet(req); req 1507 main/fastcgi.c len = (int)(req->out_pos - req->out_buf); req 1510 main/fastcgi.c fcgi_end_request_rec *rec = (fcgi_end_request_rec*)(req->out_pos); req 1512 main/fastcgi.c fcgi_make_header(&rec->hdr, FCGI_END_REQUEST, req->id, sizeof(fcgi_end_request)); req 1521 main/fastcgi.c if (safe_write(req, req->out_buf, len) != len) { req 1522 main/fastcgi.c req->keep = 0; req 1523 main/fastcgi.c req->out_pos = req->out_buf; req 1527 main/fastcgi.c req->out_pos = req->out_buf; req 1531 main/fastcgi.c int fcgi_write(fcgi_request *req, fcgi_request_type type, const char *str, int len) req 1539 main/fastcgi.c if (req->out_hdr && req->out_hdr->type != type) { req 1540 main/fastcgi.c close_packet(req); req 1546 main/fastcgi.c limit = sizeof(req->out_buf) - (req->out_pos - req->out_buf); req 1548 main/fastcgi.c if (!req->out_hdr) { req 1550 main/fastcgi.c if (!fcgi_flush(req, 0)) { req 1554 main/fastcgi.c open_packet(req, type); req 1556 main/fastcgi.c limit = sizeof(req->out_buf) - (req->out_pos - req->out_buf); req 1558 main/fastcgi.c memcpy(req->out_pos, str, rest); req 1559 main/fastcgi.c req->out_pos += rest; req 1562 main/fastcgi.c memcpy(req->out_pos, str, limit); req 1563 main/fastcgi.c req->out_pos += limit; req 1566 main/fastcgi.c if (!fcgi_flush(req, 0)) { req 1573 main/fastcgi.c limit = (int)(sizeof(req->out_buf) - (req->out_pos - req->out_buf)); req 1574 main/fastcgi.c if (!req->out_hdr) { req 1580 main/fastcgi.c if (!req->out_hdr) { req 1581 main/fastcgi.c open_packet(req, type); req 1583 main/fastcgi.c memcpy(req->out_pos, str, len); req 1584 main/fastcgi.c req->out_pos += len; req 1585 main/fastcgi.c } else if (len - limit < sizeof(req->out_buf) - sizeof(fcgi_header)) { req 1586 main/fastcgi.c if (!req->out_hdr) { req 1587 main/fastcgi.c open_packet(req, type); req 1590 main/fastcgi.c memcpy(req->out_pos, str, limit); req 1591 main/fastcgi.c req->out_pos += limit; req 1593 main/fastcgi.c if (!fcgi_flush(req, 0)) { req 1597 main/fastcgi.c open_packet(req, type); req 1598 main/fastcgi.c memcpy(req->out_pos, str + limit, len - limit); req 1599 main/fastcgi.c req->out_pos += len - limit; req 1605 main/fastcgi.c close_packet(req); req 1607 main/fastcgi.c open_packet(req, type); req 1608 main/fastcgi.c fcgi_make_header(req->out_hdr, type, req->id, 0xfff8); req 1609 main/fastcgi.c req->out_hdr = NULL; req 1610 main/fastcgi.c if (!fcgi_flush(req, 0)) { req 1613 main/fastcgi.c if (safe_write(req, str + pos, 0xfff8) != 0xfff8) { req 1614 main/fastcgi.c req->keep = 0; req 1623 main/fastcgi.c open_packet(req, type); req 1624 main/fastcgi.c fcgi_make_header(req->out_hdr, type, req->id, (len - pos) - rest); req 1625 main/fastcgi.c req->out_hdr = NULL; req 1626 main/fastcgi.c if (!fcgi_flush(req, 0)) { req 1629 main/fastcgi.c if (safe_write(req, str + pos, (len - pos) - rest) != (len - pos) - rest) { req 1630 main/fastcgi.c req->keep = 0; req 1634 main/fastcgi.c open_packet(req, type); req 1635 main/fastcgi.c memcpy(req->out_pos, str + len - rest, rest); req 1636 main/fastcgi.c req->out_pos += rest; req 1643 main/fastcgi.c int fcgi_finish_request(fcgi_request *req, int force_close) req 1647 main/fastcgi.c if (req->fd >= 0) { req 1648 main/fastcgi.c if (!req->closed) { req 1649 main/fastcgi.c ret = fcgi_flush(req, 1); req 1650 main/fastcgi.c req->closed = 1; req 1652 main/fastcgi.c fcgi_close(req, force_close, 1); req 1657 main/fastcgi.c int fcgi_has_env(fcgi_request *req) req 1659 main/fastcgi.c return req && req->has_env; req 1662 main/fastcgi.c char* fcgi_getenv(fcgi_request *req, const char* var, int var_len) req 1666 main/fastcgi.c if (!req) return NULL; req 1668 main/fastcgi.c return fcgi_hash_get(&req->env, FCGI_HASH_FUNC(var, var_len), (char*)var, var_len, &val_len); req 1671 main/fastcgi.c char* fcgi_quick_getenv(fcgi_request *req, const char* var, int var_len, unsigned int hash_value) req 1675 main/fastcgi.c return fcgi_hash_get(&req->env, hash_value, (char*)var, var_len, &val_len); req 1678 main/fastcgi.c char* fcgi_putenv(fcgi_request *req, char* var, int var_len, char* val) req 1680 main/fastcgi.c if (!req) return NULL; req 1682 main/fastcgi.c fcgi_hash_del(&req->env, FCGI_HASH_FUNC(var, var_len), var, var_len); req 1685 main/fastcgi.c return fcgi_hash_set(&req->env, FCGI_HASH_FUNC(var, var_len), var, var_len, val, (unsigned int)strlen(val)); req 1689 main/fastcgi.c char* fcgi_quick_putenv(fcgi_request *req, char* var, int var_len, unsigned int hash_value, char* val) req 1692 main/fastcgi.c fcgi_hash_del(&req->env, hash_value, var, var_len); req 1695 main/fastcgi.c return fcgi_hash_set(&req->env, hash_value, var, var_len, val, (unsigned int)strlen(val)); req 1699 main/fastcgi.c void fcgi_loadenv(fcgi_request *req, fcgi_apply_func func, zval *array) req 1701 main/fastcgi.c fcgi_hash_apply(&req->env, func, array); req 93 main/fastcgi.h int fcgi_is_closed(fcgi_request *req); req 94 main/fastcgi.h void fcgi_close(fcgi_request *req, int force, int destroy); req 99 main/fastcgi.h void fcgi_destroy_request(fcgi_request *req); req 101 main/fastcgi.h int fcgi_accept_request(fcgi_request *req); req 102 main/fastcgi.h int fcgi_finish_request(fcgi_request *req, int force_close); req 111 main/fastcgi.h int fcgi_has_env(fcgi_request *req); req 112 main/fastcgi.h char* fcgi_getenv(fcgi_request *req, const char* var, int var_len); req 113 main/fastcgi.h char* fcgi_putenv(fcgi_request *req, char* var, int var_len, char* val); req 114 main/fastcgi.h char* fcgi_quick_getenv(fcgi_request *req, const char* var, int var_len, unsigned int hash_value); req 115 main/fastcgi.h char* fcgi_quick_putenv(fcgi_request *req, char* var, int var_len, unsigned int hash_value, char* val); req 116 main/fastcgi.h void fcgi_loadenv(fcgi_request *req, fcgi_apply_func load_func, zval *array); req 118 main/fastcgi.h int fcgi_read(fcgi_request *req, char *str, int len); req 120 main/fastcgi.h int fcgi_write(fcgi_request *req, fcgi_request_type type, const char *str, int len); req 121 main/fastcgi.h int fcgi_flush(fcgi_request *req, int close); req 1300 sapi/cli/php_cli_server.c static int php_cli_server_request_ctor(php_cli_server_request *req) /* {{{ */ req 1305 sapi/cli/php_cli_server.c req->protocol_version = 0; req 1306 sapi/cli/php_cli_server.c req->request_uri = NULL; req 1307 sapi/cli/php_cli_server.c req->request_uri_len = 0; req 1308 sapi/cli/php_cli_server.c req->vpath = NULL; req 1309 sapi/cli/php_cli_server.c req->vpath_len = 0; req 1310 sapi/cli/php_cli_server.c req->path_translated = NULL; req 1311 sapi/cli/php_cli_server.c req->path_translated_len = 0; req 1312 sapi/cli/php_cli_server.c req->path_info = NULL; req 1313 sapi/cli/php_cli_server.c req->path_info_len = 0; req 1314 sapi/cli/php_cli_server.c req->query_string = NULL; req 1315 sapi/cli/php_cli_server.c req->query_string_len = 0; req 1316 sapi/cli/php_cli_server.c zend_hash_init(&req->headers, 0, NULL, char_ptr_dtor_p, 1); req 1317 sapi/cli/php_cli_server.c zend_hash_init(&req->headers_original_case, 0, NULL, NULL, 1); req 1318 sapi/cli/php_cli_server.c req->content = NULL; req 1319 sapi/cli/php_cli_server.c req->content_len = 0; req 1320 sapi/cli/php_cli_server.c req->ext = NULL; req 1321 sapi/cli/php_cli_server.c req->ext_len = 0; req 1325 sapi/cli/php_cli_server.c static void php_cli_server_request_dtor(php_cli_server_request *req) /* {{{ */ req 1327 sapi/cli/php_cli_server.c if (req->request_uri) { req 1328 sapi/cli/php_cli_server.c pefree(req->request_uri, 1); req 1330 sapi/cli/php_cli_server.c if (req->vpath) { req 1331 sapi/cli/php_cli_server.c pefree(req->vpath, 1); req 1333 sapi/cli/php_cli_server.c if (req->path_translated) { req 1334 sapi/cli/php_cli_server.c pefree(req->path_translated, 1); req 1336 sapi/cli/php_cli_server.c if (req->path_info) { req 1337 sapi/cli/php_cli_server.c pefree(req->path_info, 1); req 1339 sapi/cli/php_cli_server.c if (req->query_string) { req 1340 sapi/cli/php_cli_server.c pefree(req->query_string, 1); req 1342 sapi/cli/php_cli_server.c zend_hash_destroy(&req->headers); req 1343 sapi/cli/php_cli_server.c zend_hash_destroy(&req->headers_original_case); req 1344 sapi/cli/php_cli_server.c if (req->content) { req 1345 sapi/cli/php_cli_server.c pefree(req->content, 1); req 1418 sapi/fpm/fpm/fpm_main.c fcgi_request *req = fcgi_init_request(listen_fd, req 1422 sapi/fpm/fpm/fpm_main.c return req;