thetaphi Wed Jun 23 09:01:51 2004 EDT Modified files: (Branch: PHP_4_3) /php-src/sapi/nsapi nsapi.c Log: Addendum to bug #28878: change ini keys as PHP_INI_SYSTEM Also: Adding "bucket" parameter to non-ini-keys, Elemination of double CONTENT_TYPE/_LENGTH environment variables http://cvs.php.net/diff.php/php-src/sapi/nsapi/nsapi.c?r1=1.28.2.27&r2=1.28.2.28&ty=u Index: php-src/sapi/nsapi/nsapi.c diff -u php-src/sapi/nsapi/nsapi.c:1.28.2.27 php-src/sapi/nsapi/nsapi.c:1.28.2.28 --- php-src/sapi/nsapi/nsapi.c:1.28.2.27 Tue Jun 22 11:37:55 2004 +++ php-src/sapi/nsapi/nsapi.c Wed Jun 23 09:01:50 2004 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: nsapi.c,v 1.28.2.27 2004/06/22 15:37:55 thetaphi Exp $ */ +/* $Id: nsapi.c,v 1.28.2.28 2004/06/23 13:01:50 thetaphi Exp $ */ /* * PHP includes @@ -105,12 +105,6 @@ const char *nsapi_eq; } nsapi_equiv; -static nsapi_equiv nsapi_headers[] = { - { "CONTENT_LENGTH", "content-length" }, - { "CONTENT_TYPE", "content-type" } -}; -static size_t nsapi_headers_size = sizeof(nsapi_headers)/sizeof(nsapi_headers[0]); - static nsapi_equiv nsapi_reqpb[] = { { "QUERY_STRING", "query" }, { "REQUEST_LINE", "clf-request" }, @@ -136,7 +130,7 @@ static size_t nsapi_client_size = sizeof(nsapi_client)/sizeof(nsapi_client[0]); /* this parameters to "Service"/"Error" are NSAPI ones which should not be php.ini keys and are excluded */ -static char *nsapi_exclude_from_ini_entries[] = { "fn", "type", "method", "directive", "code", "reason", "script", NULL }; +static char *nsapi_exclude_from_ini_entries[] = { "fn", "type", "method", "directive", "code", "reason", "script", "bucket", NULL }; static char *nsapi_strdup(char *str) { @@ -316,7 +310,7 @@ PHP_MINFO_FUNCTION(nsapi) { php_info_print_table_start(); - php_info_print_table_row(2, "NSAPI Module Revision", "$Revision: 1.28.2.27 $"); + php_info_print_table_row(2, "NSAPI Module Revision", "$Revision: 1.28.2.28 $"); php_info_print_table_row(2, "Server Software", system_version()); php_info_print_table_row(2, "Sub-requests with nsapi_virtual()", (nsapi_servact_service)?((zend_ini_long("zlib.output_compression", sizeof("zlib.output_compression"), 0))?"not supported with zlib.output_compression":"enabled"):"not supported on this platform" ); @@ -605,20 +599,19 @@ } } - for (i = 0; i < nsapi_headers_size; i++) { - value = pblock_findval(nsapi_headers[i].nsapi_eq, rc->rq->headers); - if (value) { - php_register_variable((char *)nsapi_headers[i].env_var, value, track_vars_array TSRMLS_CC); - } - } - for (i=0; i < rc->rq->headers->hsize; i++) { entry=rc->rq->headers->ht[i]; while (entry) { if (!PG(safe_mode) || strncasecmp(entry->param->name, "authorization", 13)) { - snprintf(buf, NS_BUF_SIZE, "HTTP_%s", entry->param->name); + if (strcasecmp(entry->param->name, "content-length")==0 || strcasecmp(entry->param->name, "content-type")==0) { + strncpy(buf, entry->param->name, NS_BUF_SIZE); + pos = 0; + } else { + snprintf(buf, NS_BUF_SIZE, "HTTP_%s", entry->param->name); + pos = 5; + } buf[NS_BUF_SIZE]='\0'; - for(p = buf + 5; *p; p++) { + for(p = buf + pos; *p; p++) { *p = toupper(*p); if (*p < 'A' || *p > 'Z') { *p = '_'; @@ -777,7 +770,7 @@ /* change the ini entry */ if (zend_alter_ini_entry(entry->param->name, strlen(entry->param->name)+1, entry->param->value, strlen(entry->param->value), - PHP_INI_USER, PHP_INI_STAGE_RUNTIME)==FAILURE) { + PHP_INI_SYSTEM, PHP_INI_STAGE_RUNTIME)==FAILURE) { log_error(LOG_WARN, pblock_findval("fn", NSG(pb)), NSG(sn), NSG(rq), "Cannot change php.ini key \"%s\" to \"%s\"", entry->param->name, entry->param->value); } }
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php