7777/* constants used in ext/phar/util.c, keep in sync */
7878#define OPENSSL_ALGO_SHA1 1
7979#define OPENSSL_ALGO_MD5 2
80+ #ifndef OPENSSL_NO_MD4
8081#define OPENSSL_ALGO_MD4 3
81- #ifdef HAVE_OPENSSL_MD2_H
82+ #endif
83+ #ifndef OPENSSL_NO_MD2
8284#define OPENSSL_ALGO_MD2 4
8385#endif
8486#if PHP_OPENSSL_API_VERSION < 0x10100
8890#define OPENSSL_ALGO_SHA256 7
8991#define OPENSSL_ALGO_SHA384 8
9092#define OPENSSL_ALGO_SHA512 9
93+ #ifndef OPENSSL_NO_RMD160
9194#define OPENSSL_ALGO_RMD160 10
95+ #endif
9296#define DEBUG_SMIME 0
9397
9498#if !defined(OPENSSL_NO_EC ) && defined(EVP_PKEY_EC )
@@ -1098,10 +1102,12 @@ static EVP_MD * php_openssl_get_evp_md_from_algo(zend_long algo) { /* {{{ */
10981102 case OPENSSL_ALGO_MD5 :
10991103 mdtype = (EVP_MD * ) EVP_md5 ();
11001104 break ;
1105+ #ifndef OPENSSL_NO_MD4
11011106 case OPENSSL_ALGO_MD4 :
11021107 mdtype = (EVP_MD * ) EVP_md4 ();
11031108 break ;
1104- #ifdef HAVE_OPENSSL_MD2_H
1109+ #endif
1110+ #ifndef OPENSSL_NO_MD2
11051111 case OPENSSL_ALGO_MD2 :
11061112 mdtype = (EVP_MD * ) EVP_md2 ();
11071113 break ;
@@ -1123,9 +1129,11 @@ static EVP_MD * php_openssl_get_evp_md_from_algo(zend_long algo) { /* {{{ */
11231129 case OPENSSL_ALGO_SHA512 :
11241130 mdtype = (EVP_MD * ) EVP_sha512 ();
11251131 break ;
1132+ #ifndef OPENSSL_NO_RMD160
11261133 case OPENSSL_ALGO_RMD160 :
11271134 mdtype = (EVP_MD * ) EVP_ripemd160 ();
11281135 break ;
1136+ #endif
11291137 default :
11301138 return NULL ;
11311139 break ;
@@ -1237,7 +1245,113 @@ PHP_MINIT_FUNCTION(openssl)
12371245 * OpenSSL callbacks */
12381246 ssl_stream_data_index = SSL_get_ex_new_index (0 , "PHP stream index" , NULL , NULL , NULL );
12391247
1248+ <<<<<<< HEAD
12401249 register_openssl_symbols (module_number );
1250+ = == == ==
1251+ REGISTER_STRING_CONSTANT ("OPENSSL_VERSION_TEXT" , OPENSSL_VERSION_TEXT , CONST_CS |CONST_PERSISTENT );
1252+ REGISTER_LONG_CONSTANT ("OPENSSL_VERSION_NUMBER" , OPENSSL_VERSION_NUMBER , CONST_CS |CONST_PERSISTENT );
1253+
1254+ /* purposes for cert purpose checking */
1255+ REGISTER_LONG_CONSTANT ("X509_PURPOSE_SSL_CLIENT" , X509_PURPOSE_SSL_CLIENT , CONST_CS |CONST_PERSISTENT );
1256+ REGISTER_LONG_CONSTANT ("X509_PURPOSE_SSL_SERVER" , X509_PURPOSE_SSL_SERVER , CONST_CS |CONST_PERSISTENT );
1257+ REGISTER_LONG_CONSTANT ("X509_PURPOSE_NS_SSL_SERVER" , X509_PURPOSE_NS_SSL_SERVER , CONST_CS |CONST_PERSISTENT );
1258+ REGISTER_LONG_CONSTANT ("X509_PURPOSE_SMIME_SIGN" , X509_PURPOSE_SMIME_SIGN , CONST_CS |CONST_PERSISTENT );
1259+ REGISTER_LONG_CONSTANT ("X509_PURPOSE_SMIME_ENCRYPT" , X509_PURPOSE_SMIME_ENCRYPT , CONST_CS |CONST_PERSISTENT );
1260+ REGISTER_LONG_CONSTANT ("X509_PURPOSE_CRL_SIGN" , X509_PURPOSE_CRL_SIGN , CONST_CS |CONST_PERSISTENT );
1261+ #ifdef X509_PURPOSE_ANY
1262+ REGISTER_LONG_CONSTANT ("X509_PURPOSE_ANY" , X509_PURPOSE_ANY , CONST_CS |CONST_PERSISTENT );
1263+ #endif
1264+
1265+ /* digest algorithm constants */
1266+ REGISTER_LONG_CONSTANT ("OPENSSL_ALGO_SHA1" , OPENSSL_ALGO_SHA1 , CONST_CS |CONST_PERSISTENT );
1267+ REGISTER_LONG_CONSTANT ("OPENSSL_ALGO_MD5" , OPENSSL_ALGO_MD5 , CONST_CS |CONST_PERSISTENT );
1268+ #ifndef OPENSSL_NO_MD4
1269+ REGISTER_LONG_CONSTANT ("OPENSSL_ALGO_MD4" , OPENSSL_ALGO_MD4 , CONST_CS |CONST_PERSISTENT );
1270+ #endif
1271+ #ifndef OPENSSL_NO_MD2
1272+ REGISTER_LONG_CONSTANT ("OPENSSL_ALGO_MD2" , OPENSSL_ALGO_MD2 , CONST_CS |CONST_PERSISTENT );
1273+ #endif
1274+ #if PHP_OPENSSL_API_VERSION < 0x10100
1275+ REGISTER_LONG_CONSTANT ("OPENSSL_ALGO_DSS1" , OPENSSL_ALGO_DSS1 , CONST_CS |CONST_PERSISTENT );
1276+ #endif
1277+ REGISTER_LONG_CONSTANT ("OPENSSL_ALGO_SHA224" , OPENSSL_ALGO_SHA224 , CONST_CS |CONST_PERSISTENT );
1278+ REGISTER_LONG_CONSTANT ("OPENSSL_ALGO_SHA256" , OPENSSL_ALGO_SHA256 , CONST_CS |CONST_PERSISTENT );
1279+ REGISTER_LONG_CONSTANT ("OPENSSL_ALGO_SHA384" , OPENSSL_ALGO_SHA384 , CONST_CS |CONST_PERSISTENT );
1280+ REGISTER_LONG_CONSTANT ("OPENSSL_ALGO_SHA512" , OPENSSL_ALGO_SHA512 , CONST_CS |CONST_PERSISTENT );
1281+ #ifndef OPENSSL_NO_RMD160
1282+ REGISTER_LONG_CONSTANT ("OPENSSL_ALGO_RMD160" , OPENSSL_ALGO_RMD160 , CONST_CS |CONST_PERSISTENT );
1283+ #endif
1284+
1285+ /* flags for S/MIME */
1286+ REGISTER_LONG_CONSTANT ("PKCS7_DETACHED" , PKCS7_DETACHED , CONST_CS |CONST_PERSISTENT );
1287+ REGISTER_LONG_CONSTANT ("PKCS7_TEXT" , PKCS7_TEXT , CONST_CS |CONST_PERSISTENT );
1288+ REGISTER_LONG_CONSTANT ("PKCS7_NOINTERN" , PKCS7_NOINTERN , CONST_CS |CONST_PERSISTENT );
1289+ REGISTER_LONG_CONSTANT ("PKCS7_NOVERIFY" , PKCS7_NOVERIFY , CONST_CS |CONST_PERSISTENT );
1290+ REGISTER_LONG_CONSTANT ("PKCS7_NOCHAIN" , PKCS7_NOCHAIN , CONST_CS |CONST_PERSISTENT );
1291+ REGISTER_LONG_CONSTANT ("PKCS7_NOCERTS" , PKCS7_NOCERTS , CONST_CS |CONST_PERSISTENT );
1292+ REGISTER_LONG_CONSTANT ("PKCS7_NOATTR" , PKCS7_NOATTR , CONST_CS |CONST_PERSISTENT );
1293+ REGISTER_LONG_CONSTANT ("PKCS7_BINARY" , PKCS7_BINARY , CONST_CS |CONST_PERSISTENT );
1294+ REGISTER_LONG_CONSTANT ("PKCS7_NOSIGS" , PKCS7_NOSIGS , CONST_CS |CONST_PERSISTENT );
1295+
1296+ REGISTER_LONG_CONSTANT ("OPENSSL_CMS_DETACHED" , CMS_DETACHED , CONST_CS |CONST_PERSISTENT );
1297+ REGISTER_LONG_CONSTANT ("OPENSSL_CMS_TEXT" , CMS_TEXT , CONST_CS |CONST_PERSISTENT );
1298+ REGISTER_LONG_CONSTANT ("OPENSSL_CMS_NOINTERN" , CMS_NOINTERN , CONST_CS |CONST_PERSISTENT );
1299+ REGISTER_LONG_CONSTANT ("OPENSSL_CMS_NOVERIFY" , CMS_NOVERIFY , CONST_CS |CONST_PERSISTENT );
1300+ REGISTER_LONG_CONSTANT ("OPENSSL_CMS_NOCERTS" , CMS_NOCERTS , CONST_CS |CONST_PERSISTENT );
1301+ REGISTER_LONG_CONSTANT ("OPENSSL_CMS_NOATTR" , CMS_NOATTR , CONST_CS |CONST_PERSISTENT );
1302+ REGISTER_LONG_CONSTANT ("OPENSSL_CMS_BINARY" , CMS_BINARY , CONST_CS |CONST_PERSISTENT );
1303+ REGISTER_LONG_CONSTANT ("OPENSSL_CMS_NOSIGS" , CMS_NOSIGS , CONST_CS |CONST_PERSISTENT );
1304+
1305+ REGISTER_LONG_CONSTANT ("OPENSSL_PKCS1_PADDING" , RSA_PKCS1_PADDING , CONST_CS |CONST_PERSISTENT );
1306+ #ifdef RSA_SSLV23_PADDING
1307+ REGISTER_LONG_CONSTANT ("OPENSSL_SSLV23_PADDING" , RSA_SSLV23_PADDING , CONST_CS |CONST_PERSISTENT );
1308+ #endif
1309+ REGISTER_LONG_CONSTANT ("OPENSSL_NO_PADDING" , RSA_NO_PADDING , CONST_CS |CONST_PERSISTENT );
1310+ REGISTER_LONG_CONSTANT ("OPENSSL_PKCS1_OAEP_PADDING" , RSA_PKCS1_OAEP_PADDING , CONST_CS |CONST_PERSISTENT );
1311+
1312+ /* Informational stream wrapper constants */
1313+ REGISTER_STRING_CONSTANT ("OPENSSL_DEFAULT_STREAM_CIPHERS" , OPENSSL_DEFAULT_STREAM_CIPHERS , CONST_CS |CONST_PERSISTENT );
1314+
1315+ /* Ciphers */
1316+ #ifndef OPENSSL_NO_RC2
1317+ REGISTER_LONG_CONSTANT ("OPENSSL_CIPHER_RC2_40" , PHP_OPENSSL_CIPHER_RC2_40 , CONST_CS |CONST_PERSISTENT );
1318+ REGISTER_LONG_CONSTANT ("OPENSSL_CIPHER_RC2_128" , PHP_OPENSSL_CIPHER_RC2_128 , CONST_CS |CONST_PERSISTENT );
1319+ REGISTER_LONG_CONSTANT ("OPENSSL_CIPHER_RC2_64" , PHP_OPENSSL_CIPHER_RC2_64 , CONST_CS |CONST_PERSISTENT );
1320+ #endif
1321+ #ifndef OPENSSL_NO_DES
1322+ REGISTER_LONG_CONSTANT ("OPENSSL_CIPHER_DES" , PHP_OPENSSL_CIPHER_DES , CONST_CS |CONST_PERSISTENT );
1323+ REGISTER_LONG_CONSTANT ("OPENSSL_CIPHER_3DES" , PHP_OPENSSL_CIPHER_3DES , CONST_CS |CONST_PERSISTENT );
1324+ #endif
1325+ #ifndef OPENSSL_NO_AES
1326+ REGISTER_LONG_CONSTANT ("OPENSSL_CIPHER_AES_128_CBC" , PHP_OPENSSL_CIPHER_AES_128_CBC , CONST_CS |CONST_PERSISTENT );
1327+ REGISTER_LONG_CONSTANT ("OPENSSL_CIPHER_AES_192_CBC" , PHP_OPENSSL_CIPHER_AES_192_CBC , CONST_CS |CONST_PERSISTENT );
1328+ REGISTER_LONG_CONSTANT ("OPENSSL_CIPHER_AES_256_CBC" , PHP_OPENSSL_CIPHER_AES_256_CBC , CONST_CS |CONST_PERSISTENT );
1329+ #endif
1330+
1331+ /* Values for key types */
1332+ REGISTER_LONG_CONSTANT ("OPENSSL_KEYTYPE_RSA" , OPENSSL_KEYTYPE_RSA , CONST_CS |CONST_PERSISTENT );
1333+ #ifndef NO_DSA
1334+ REGISTER_LONG_CONSTANT ("OPENSSL_KEYTYPE_DSA" , OPENSSL_KEYTYPE_DSA , CONST_CS |CONST_PERSISTENT );
1335+ #endif
1336+ REGISTER_LONG_CONSTANT ("OPENSSL_KEYTYPE_DH" , OPENSSL_KEYTYPE_DH , CONST_CS |CONST_PERSISTENT );
1337+ #ifdef HAVE_EVP_PKEY_EC
1338+ REGISTER_LONG_CONSTANT ("OPENSSL_KEYTYPE_EC" , OPENSSL_KEYTYPE_EC , CONST_CS |CONST_PERSISTENT );
1339+ #endif
1340+
1341+ REGISTER_LONG_CONSTANT ("OPENSSL_RAW_DATA" , OPENSSL_RAW_DATA , CONST_CS |CONST_PERSISTENT );
1342+ REGISTER_LONG_CONSTANT ("OPENSSL_ZERO_PADDING" , OPENSSL_ZERO_PADDING , CONST_CS |CONST_PERSISTENT );
1343+ REGISTER_LONG_CONSTANT ("OPENSSL_DONT_ZERO_PAD_KEY" , OPENSSL_DONT_ZERO_PAD_KEY , CONST_CS |CONST_PERSISTENT );
1344+
1345+ #ifndef OPENSSL_NO_TLSEXT
1346+ /* SNI support included */
1347+ REGISTER_LONG_CONSTANT ("OPENSSL_TLSEXT_SERVER_NAME" , 1 , CONST_CS |CONST_PERSISTENT );
1348+ #endif
1349+
1350+ /* Register encodings */
1351+ REGISTER_LONG_CONSTANT ("OPENSSL_ENCODING_DER" ,ENCODING_DER ,CONST_CS |CONST_PERSISTENT );
1352+ REGISTER_LONG_CONSTANT ("OPENSSL_ENCODING_SMIME" ,ENCODING_SMIME ,CONST_CS |CONST_PERSISTENT );
1353+ REGISTER_LONG_CONSTANT ("OPENSSL_ENCODING_PEM" ,ENCODING_PEM ,CONST_CS |CONST_PERSISTENT );
1354+ >>>>>>> PHP - 8.1
12411355
12421356 /* Determine default SSL configuration file */
12431357 config_filename = getenv ("OPENSSL_CONF" );
0 commit comments