77
77
/* constants used in ext/phar/util.c, keep in sync */
78
78
#define OPENSSL_ALGO_SHA1 1
79
79
#define OPENSSL_ALGO_MD5 2
80
+ #ifndef OPENSSL_NO_MD4
80
81
#define OPENSSL_ALGO_MD4 3
81
- #ifdef HAVE_OPENSSL_MD2_H
82
+ #endif
83
+ #ifndef OPENSSL_NO_MD2
82
84
#define OPENSSL_ALGO_MD2 4
83
85
#endif
84
86
#if PHP_OPENSSL_API_VERSION < 0x10100
88
90
#define OPENSSL_ALGO_SHA256 7
89
91
#define OPENSSL_ALGO_SHA384 8
90
92
#define OPENSSL_ALGO_SHA512 9
93
+ #ifndef OPENSSL_NO_RMD160
91
94
#define OPENSSL_ALGO_RMD160 10
95
+ #endif
92
96
#define DEBUG_SMIME 0
93
97
94
98
#if !defined(OPENSSL_NO_EC ) && defined(EVP_PKEY_EC )
@@ -1101,10 +1105,12 @@ static EVP_MD * php_openssl_get_evp_md_from_algo(zend_long algo) { /* {{{ */
1101
1105
case OPENSSL_ALGO_MD5 :
1102
1106
mdtype = (EVP_MD * ) EVP_md5 ();
1103
1107
break ;
1108
+ #ifndef OPENSSL_NO_MD4
1104
1109
case OPENSSL_ALGO_MD4 :
1105
1110
mdtype = (EVP_MD * ) EVP_md4 ();
1106
1111
break ;
1107
- #ifdef HAVE_OPENSSL_MD2_H
1112
+ #endif
1113
+ #ifndef OPENSSL_NO_MD2
1108
1114
case OPENSSL_ALGO_MD2 :
1109
1115
mdtype = (EVP_MD * ) EVP_md2 ();
1110
1116
break ;
@@ -1126,9 +1132,11 @@ static EVP_MD * php_openssl_get_evp_md_from_algo(zend_long algo) { /* {{{ */
1126
1132
case OPENSSL_ALGO_SHA512 :
1127
1133
mdtype = (EVP_MD * ) EVP_sha512 ();
1128
1134
break ;
1135
+ #ifndef OPENSSL_NO_RMD160
1129
1136
case OPENSSL_ALGO_RMD160 :
1130
1137
mdtype = (EVP_MD * ) EVP_ripemd160 ();
1131
1138
break ;
1139
+ #endif
1132
1140
default :
1133
1141
return NULL ;
1134
1142
break ;
@@ -1237,7 +1245,113 @@ PHP_MINIT_FUNCTION(openssl)
1237
1245
* OpenSSL callbacks */
1238
1246
ssl_stream_data_index = SSL_get_ex_new_index (0 , "PHP stream index" , NULL , NULL , NULL );
1239
1247
1248
+ <<<<<<< HEAD
1240
1249
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
1241
1355
1242
1356
/* Determine default SSL configuration file */
1243
1357
config_filename = getenv ("OPENSSL_CONF" );
0 commit comments