summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Smith <joey@php.net>2010-03-30 10:10:20 +0000
committerJoey Smith <joey@php.net>2010-03-30 10:10:20 +0000
commit6dbebc605b2f732c76fc08956f105f868fad73aa (patch)
tree58e52a7e9d75246cb3f0874cc573f5a9b70935aa
parente4db0915bd80324d3a856343880ce1afdfe41034 (diff)
downloadphp-git-6dbebc605b2f732c76fc08956f105f868fad73aa.tar.gz
Don't assume the SHA-based crypt constants are registered
this is a partial fix for 51435.
-rw-r--r--ext/standard/crypt.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/ext/standard/crypt.c b/ext/standard/crypt.c
index a89fd5a10f..471daffbcd 100644
--- a/ext/standard/crypt.c
+++ b/ext/standard/crypt.c
@@ -107,9 +107,14 @@ PHP_MINIT_FUNCTION(crypt) /* {{{ */
REGISTER_LONG_CONSTANT("CRYPT_EXT_DES", PHP_EXT_DES_CRYPT, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("CRYPT_MD5", PHP_MD5_CRYPT, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("CRYPT_BLOWFISH", PHP_BLOWFISH_CRYPT, CONST_CS | CONST_PERSISTENT);
- REGISTER_LONG_CONSTANT("CRYPT_SHA256", PHP_SHA256_CRYPT, CONST_CS | CONST_PERSISTENT);
- REGISTER_LONG_CONSTANT("CRYPT_SHA512", PHP_SHA512_CRYPT, CONST_CS | CONST_PERSISTENT);
+#ifdef PHP_SHA256_CRYPT
+ REGISTER_LONG_CONSTANT("CRYPT_SHA256", PHP_SHA256_CRYPT, CONST_CS | CONST_PERSISTENT);
+#endif
+
+#ifdef PHP_SHA512_CRYPT
+ REGISTER_LONG_CONSTANT("CRYPT_SHA512", PHP_SHA512_CRYPT, CONST_CS | CONST_PERSISTENT);
+#endif
#ifdef PHP_USE_PHP_CRYPT_R
php_init_crypt_r();