DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=19182>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=19182 SSLMutex field in ssl.conf needs to be updated. Summary: SSLMutex field in ssl.conf needs to be updated. Product: Apache httpd-2.0 Version: 2.0.45 Platform: PC OS/Version: Windows NT/2K Status: NEW Severity: Blocker Priority: Other Component: All AssignedTo: [email protected] ReportedBy: [EMAIL PROTECTED] Apache 2.0.45, Openssl-0.9.7b, Zlib, compiled under WinNT.SP3 VS.NET(2002) release build. Std configs with minor dir changes and ssl support. Everything that worked under 2.0.44. Unless I am mistaken: Change in 2.0.45(over 2.0.44) needs ssl.conf updated. C:\Apache2\bin\apache -D SSL -k install <output> Syntax error on line 62 of E:/www/Apache2/conf/ssl.conf: Invalid SSLMutex argument file:logs/ssl_mutex (Valid SSLMutex mechanisms are: `none', `default' ) </output> In ssl.conf, [SSLMutex file:logs/ssl_mutex] is no longer valid; replace with [SSLMutex default]; [SSLMutex default] implies [SSLMutex sed]. ***<httpd-2.0.45\modules\ssl\mod_ssl.c>*** ------------------------------------ const char ssl_valid_ssl_mutex_string[] = "Valid SSLMutex mechanisms are: `none', `default'" [...] #if APR_HAS_FLOCK_SERIALIZE || APR_HAS_FCNTL_SERIALIZE ", `file:/path/to/file'" #endif #if (APR_HAS_SYSVSEM_SERIALIZE && !defined(PERCHILD_MPM)) || APR_HAS_POSIXSEM_SERIALIZE ", `sem'" #endif ------------------------------------ ***<httpd-2.0.45\modules\ssl\ssl_engine_config.c>*** ------------------------------------ const char *ssl_cmd_SSLMutex(cmd_parms *cmd, void *dcfg, const char *arg) { const char *err; SSLModConfigRec *mc = myModConfig(cmd->server); if ((err = ap_check_cmd_context(cmd, GLOBAL_ONLY))) { return err; } if (ssl_config_global_isfixed(mc)) { return NULL; } if (strcEQ(arg, "none") || strcEQ(arg, "no")) { mc->nMutexMode = SSL_MUTEXMODE_NONE; } /* NOTE: previously, 'yes' implied 'sem' */ else if (strcEQ(arg, "default") || strcEQ(arg, "yes")) { mc->nMutexMode = SSL_MUTEXMODE_USED; mc->nMutexMech = APR_LOCK_DEFAULT; mc->szMutexFile = NULL; /* APR determines temporary filename */ } #if APR_HAS_FLOCK_SERIALIZE else if (strlen(arg) > 6 && strcEQn(arg, "flock:", 6)) { const char *file = ap_server_root_relative(cmd->pool, arg+6); if (!file) { return apr_pstrcat(cmd->pool, "Invalid SSLMutex flock: path ", arg+6, NULL); } mc->nMutexMode = SSL_MUTEXMODE_USED; mc->nMutexMech = APR_LOCK_FLOCK; mc->szMutexFile = apr_psprintf(mc->pPool, "%s.%lu", file, (unsigned long)getpid()); mc->ChownMutexFile = TRUE; } #endif #if APR_HAS_FCNTL_SERIALIZE else if (strlen(arg) > 6 && strcEQn(arg, "fcntl:", 6)) { const char *file = ap_server_root_relative(cmd->pool, arg+6); if (!file) { return apr_pstrcat(cmd->pool, "Invalid SSLMutex fcntl: path ", arg+6, NULL); } mc->nMutexMode = SSL_MUTEXMODE_USED; mc->nMutexMech = APR_LOCK_FCNTL; mc->szMutexFile = apr_psprintf(mc->pPool, "%s.%lu", file, (unsigned long)getpid()); } #endif #if APR_HAS_SYSVSEM_SERIALIZE && !defined(PERCHILD_MPM) else if (strcEQ(arg, "sysvsem")) { mc->nMutexMode = SSL_MUTEXMODE_USED; mc->nMutexMech = APR_LOCK_SYSVSEM; mc->szMutexFile = NULL; /* APR determines temporary filename */ } #endif #if APR_HAS_POSIXSEM_SERIALIZE else if (strcEQ(arg, "posixsem")) { mc->nMutexMode = SSL_MUTEXMODE_USED; mc->nMutexMech = APR_LOCK_POSIXSEM; mc->szMutexFile = NULL; /* APR determines temporary filename */ } #endif #if APR_HAS_PROC_PTHREAD_SERIALIZE else if (strcEQ(arg, "pthread")) { mc->nMutexMode = SSL_MUTEXMODE_USED; mc->nMutexMech = APR_LOCK_PROC_PTHREAD; mc->szMutexFile = NULL; /* APR determines temporary filename */ } #endif #if APR_HAS_FLOCK_SERIALIZE || APR_HAS_FCNTL_SERIALIZE else if (strlen(arg) > 5 && strcEQn(arg, "file:", 5)) { const char *file = ap_server_root_relative(cmd->pool, arg+5); if (!file) { return apr_pstrcat(cmd->pool, "Invalid SSLMutex file: path ", arg+5, NULL); } mc->nMutexMode = SSL_MUTEXMODE_USED; #if APR_HAS_FLOCK_SERIALIZE mc->nMutexMech = APR_LOCK_FLOCK; mc->ChownMutexFile = TRUE; #endif #if APR_HAS_FCNTL_SERIALIZE mc->nMutexMech = APR_LOCK_FCNTL; #endif mc->szMutexFile = apr_psprintf(mc->pPool, "%s.%lu", file, (unsigned long)getpid()); } #endif #if (APR_HAS_SYSVSEM_SERIALIZE && !defined(PERCHILD_MPM)) || APR_HAS_POSIXSEM_SERIALIZE else if (strcEQ(arg, "sem")) { mc->nMutexMode = SSL_MUTEXMODE_USED; #if APR_HAS_SYSVSEM_SERIALIZE && !defined(PERCHILD_MPM) mc->nMutexMech = APR_LOCK_SYSVSEM; #endif #if APR_HAS_POSIXSEM_SERIALIZE mc->nMutexMech = APR_LOCK_POSIXSEM; #endif mc->szMutexFile = NULL; /* APR determines temporary filename */ } #endif else { return apr_pstrcat(cmd->pool, "Invalid SSLMutex argument ", arg, " (", ssl_valid_ssl_mutex_string, ")", NULL); } return NULL; } ------------------------------------ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
