From: Jeff Trawick Date: Mon, 9 Apr 2007 19:49:59 +0000 (+0000) Subject: htdbm: Enable crypt support on platforms with crypt() but not X-Git-Tag: 2.3.0~1841 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f0d875349267ba23b3f93e0c674cc465d22aef98;p=thirdparty%2Fapache%2Fhttpd.git htdbm: Enable crypt support on platforms with crypt() but not , such as z/OS. We assume that the ancient code in htpasswd has it right -- all but Windows, TPF, and NetWare have crypt(). Submitted by: David Jones Reviewed by: wrowe, trawick git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@526892 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/CHANGES b/CHANGES index 9d6f128fbae..255c9d49569 100644 --- a/CHANGES +++ b/CHANGES @@ -2,6 +2,9 @@ Changes with Apache 2.3.0 [Remove entries to the current 2.0 and 2.2 section below, when backported] + *) htdbm: Enable crypt support on platforms with crypt() but not + , such as z/OS. [David Jones ] + *) mod_ssl: initialize thread locks before initializing the hardware acceleration library, so the latter can make use of the former. PR 20951. [adunn at ncipher.com, reviewed by Sander Temme] diff --git a/support/htdbm.c b/support/htdbm.c index dc9aa666049..aebc207cccd 100644 --- a/support/htdbm.c +++ b/support/htdbm.c @@ -69,7 +69,7 @@ #define ALG_APMD5 1 #define ALG_APSHA 2 -#if APR_HAVE_CRYPT_H +#if (!(defined(WIN32) || defined(TPF) || defined(NETWARE))) #define ALG_CRYPT 3 #endif @@ -311,12 +311,12 @@ static apr_status_t htdbm_make(htdbm_t *htdbm) case ALG_PLAIN: /* XXX this len limitation is not in sync with any HTTPd len. */ apr_cpystrn(cpw,htdbm->userpass,sizeof(cpw)); -#if APR_HAVE_CRYPT_H +#if (!(defined(WIN32) || defined(TPF) || defined(NETWARE))) fprintf(stderr, "Warning: Plain text passwords aren't supported by the " "server on this platform!\n"); #endif break; -#if APR_HAVE_CRYPT_H +#if (!(defined(WIN32) || defined(TPF) || defined(NETWARE))) case ALG_CRYPT: (void) srand((int) time((time_t *) NULL)); to64(&salt[0], rand(), 8); @@ -347,7 +347,7 @@ static apr_status_t htdbm_valid_username(htdbm_t *htdbm) static void htdbm_usage(void) { -#if APR_HAVE_CRYPT_H +#if (!(defined(WIN32) || defined(TPF) || defined(NETWARE))) #define CRYPT_OPTION "d" #else #define CRYPT_OPTION "" @@ -367,7 +367,7 @@ static void htdbm_usage(void) fprintf(stderr, " -c Create a new database.\n"); fprintf(stderr, " -n Don't update database; display results on stdout.\n"); fprintf(stderr, " -m Force MD5 encryption of the password (default).\n"); -#if APR_HAVE_CRYPT_H +#if (!(defined(WIN32) || defined(TPF) || defined(NETWARE))) fprintf(stderr, " -d Force CRYPT encryption of the password (now deprecated).\n"); #endif fprintf(stderr, " -p Do not encrypt the password (plaintext).\n"); @@ -474,7 +474,7 @@ int main(int argc, const char * const argv[]) case 's': h->alg = ALG_APSHA; break; -#if APR_HAVE_CRYPT_H +#if (!(defined(WIN32) || defined(TPF) || defined(NETWARE))) case 'd': h->alg = ALG_CRYPT; break;