]> granicus.if.org Git - php/commitdiff
Fixed bug #23610
authorMoriyoshi Koizumi <moriyoshi@php.net>
Tue, 13 May 2003 19:33:36 +0000 (19:33 +0000)
committerMoriyoshi Koizumi <moriyoshi@php.net>
Tue, 13 May 2003 19:33:36 +0000 (19:33 +0000)
sapi/apache2filter/sapi_apache2.c
sapi/apache2handler/sapi_apache2.c

index f1f0e9365dbbf19d90f71460d3e0f450caf6115d..3df022b343d2a24d0fec811dacf706e115b6e894 100644 (file)
@@ -224,6 +224,12 @@ php_apache_sapi_register_variables(zval *track_vars_array TSRMLS_DC)
        APR_ARRAY_FOREACH_CLOSE()
                
        php_register_variable("PHP_SELF", ctx->r->uri, track_vars_array TSRMLS_CC);
+
+       /* If PATH_TRANSLATED doesn't exist, copy it from SCRIPT_FILENAME */
+       if (!zend_hash_exists(Z_ARRVAL_P(track_vars_array), "PATH_TRANSLATED", sizeof("PATH_TRANSLATED"))
+               && zend_hash_find(Z_ARRVAL_P(track_vars_array), "SCRIPT_FILENAME", sizeof("SCRIPT_FILENAME"), (void **) &path_translated_zv) == SUCCESS) {
+               php_register_variable("PATH_TRANSLATED", Z_STRVAL_PP(path_translated_zv), track_vars_array TSRMLS_CC);
+       }
 }
 
 static void
@@ -396,7 +402,15 @@ static void php_apache_request_ctor(ap_filter_t *f, php_struct *ctx TSRMLS_DC)
        apr_table_unset(f->r->headers_out, "Expires");
        apr_table_unset(f->r->headers_out, "ETag");
        apr_table_unset(f->r->headers_in, "Connection");
+<<<<<<< sapi_apache2.c
+<<<<<<< sapi_apache2.c
+       if (!PG(safe_mode) || (PG(safe_mode) && ap_auth_type() == NULL)) {
+=======
+       if (!PG(safe_mode) || (PG(safe_mode) && !ap_auth_type(r))) {
+>>>>>>> 1.109
+=======
        if (!PG(safe_mode) || (PG(safe_mode) && !ap_auth_type(f->r))) {
+>>>>>>> 1.110
                auth = apr_table_get(f->r->headers_in, "Authorization");
                php_handle_auth_data(auth TSRMLS_CC);
        } else {
index 0abd1e20b3198d5f381696ff67308575be16d970..5734d06c038a35e9e1a8283e34f2bd997fed258c 100644 (file)
@@ -227,13 +227,20 @@ php_apache_sapi_register_variables(zval *track_vars_array TSRMLS_DC)
        php_struct *ctx = SG(server_context);
        const apr_array_header_t *arr = apr_table_elts(ctx->r->subprocess_env);
        char *key, *val;
-       
+       zval **path_translated_zv;
+
        APR_ARRAY_FOREACH_OPEN(arr, key, val)
                if (!val) val = empty_string;
                php_register_variable(key, val, track_vars_array TSRMLS_CC);
        APR_ARRAY_FOREACH_CLOSE()
                
        php_register_variable("PHP_SELF", ctx->r->uri, track_vars_array TSRMLS_CC);
+
+       /* If PATH_TRANSLATED doesn't exist, copy it from SCRIPT_FILENAME */
+       if (!zend_hash_exists(Z_ARRVAL_P(track_vars_array), "PATH_TRANSLATED", sizeof("PATH_TRANSLATED"))
+               && zend_hash_find(Z_ARRVAL_P(track_vars_array), "SCRIPT_FILENAME", sizeof("SCRIPT_FILENAME"), (void **) &path_translated_zv) == SUCCESS) {
+               php_register_variable("PATH_TRANSLATED", Z_STRVAL_PP(path_translated_zv), track_vars_array TSRMLS_CC);
+       }
 }
 
 static void
@@ -424,7 +431,11 @@ static void php_apache_request_ctor(request_rec *r, php_struct *ctx TSRMLS_DC)
        apr_table_unset(r->headers_out, "Expires");
        apr_table_unset(r->headers_out, "ETag");
        apr_table_unset(r->headers_in, "Connection");
+<<<<<<< sapi_apache2.c
+       if (!PG(safe_mode) || (PG(safe_mode) && ap_auth_type() == NULL)) {
+=======
        if (!PG(safe_mode) || (PG(safe_mode) && !ap_auth_type(r))) {
+>>>>>>> 1.15
                auth = apr_table_get(r->headers_in, "Authorization");
                php_handle_auth_data(auth TSRMLS_CC);
                ctx->r->user = apr_pstrdup(ctx->r->pool, SG(request_info).auth_user);