summaryrefslogtreecommitdiff
path: root/sapi
diff options
context:
space:
mode:
authorZeev Suraski <zeev@php.net>2000-02-16 16:46:01 +0000
committerZeev Suraski <zeev@php.net>2000-02-16 16:46:01 +0000
commita5c143f415ea90472e215702b4afc56123e71cc4 (patch)
tree8153bddd19a1d6dcf0091d28a6e0c514c2df9776 /sapi
parent2ba009c0f1771210118509a271bccc06923227e3 (diff)
downloadphp-git-a5c143f415ea90472e215702b4afc56123e71cc4.tar.gz
- Update .dsp's
- Fix auth_user issue
Diffstat (limited to 'sapi')
-rw-r--r--sapi/isapi/php4isapi.c27
1 files changed, 9 insertions, 18 deletions
diff --git a/sapi/isapi/php4isapi.c b/sapi/isapi/php4isapi.c
index 72a7bec1c0..8e6999a745 100644
--- a/sapi/isapi/php4isapi.c
+++ b/sapi/isapi/php4isapi.c
@@ -38,7 +38,7 @@
#define ISAPI_SERVER_VAR_BUF_SIZE 1024
#define ISAPI_POST_DATA_BUF 1024
-static int isapi_globals_id=-1;
+static zend_bool bFilterLoaded=0;
static char *isapi_server_variables[] = {
"ALL_HTTP",
@@ -395,15 +395,9 @@ static sapi_module_struct sapi_module = {
};
-typedef struct _php_isapi_globals {
- char *auth_user;
- char *auth_password;
-} php_isapi_globals;
-
-
BOOL WINAPI GetFilterVersion(PHTTP_FILTER_VERSION pFilterVersion)
{
- isapi_globals_id = ts_allocate_id(sizeof(php_isapi_globals), NULL, NULL);
+ bFilterLoaded = 1;
pFilterVersion->dwFilterVersion = HTTP_FILTER_REVISION;
strcpy(pFilterVersion->lpszFilterDesc, sapi_module.name);
pFilterVersion->dwFlags= (SF_NOTIFY_AUTHENTICATION | SF_NOTIFY_PREPROC_HEADERS);
@@ -413,22 +407,22 @@ BOOL WINAPI GetFilterVersion(PHTTP_FILTER_VERSION pFilterVersion)
DWORD WINAPI HttpFilterProc(PHTTP_FILTER_CONTEXT pfc, DWORD notificationType, LPVOID pvNotification)
{
- php_isapi_globals *isapi_globals = ts_resource(isapi_globals_id);
+ SLS_FETCH();
switch (notificationType) {
case SF_NOTIFY_PREPROC_HEADERS:
- isapi_globals->auth_user = NULL;
- isapi_globals->auth_password = NULL;
+ SG(request_info).auth_user = NULL;
+ SG(request_info).auth_password = NULL;
break;
case SF_NOTIFY_AUTHENTICATION: {
char *auth_user = ((HTTP_FILTER_AUTHENT *) pvNotification)->pszUser;
char *auth_password = ((HTTP_FILTER_AUTHENT *) pvNotification)->pszPassword;
if (auth_user && auth_user[0]) {
- isapi_globals->auth_user = estrdup(auth_user);
+ SG(request_info).auth_user = estrdup(auth_user);
}
if (auth_password && auth_password[0]) {
- isapi_globals->auth_password = estrdup(auth_password);
+ SG(request_info).auth_password = estrdup(auth_password);
}
auth_user[0] = 0;
auth_password[0] = 0;
@@ -457,11 +451,8 @@ static void init_request_info(sapi_globals_struct *sapi_globals, LPEXTENSION_CON
*path_end = '\\';
}
}
- if (isapi_globals_id!=-1) { /* we have valid ISAPI Filter information */
- php_isapi_globals *isapi_globals = ts_resource(isapi_globals_id);
-
- SG(request_info).auth_user = isapi_globals->auth_user;
- SG(request_info).auth_password = isapi_globals->auth_password;
+ if (!bFilterLoaded) { /* we don't have valid ISAPI Filter information */
+ SG(request_info).auth_user = SG(request_info).auth_password = NULL;
}
}