@@ -360,6 +360,16 @@ export interface HttpsOptions {
360
360
*/
361
361
passphrase ?: SecureContextOptions [ 'passphrase' ] ;
362
362
pfx ?: SecureContextOptions [ 'pfx' ] ;
363
+
364
+ ciphers ?: SecureContextOptions [ 'ciphers' ] ;
365
+ honorCipherOrder ?: SecureContextOptions [ 'honorCipherOrder' ] ;
366
+ minVersion ?: SecureContextOptions [ 'minVersion' ] ;
367
+ maxVersion ?: SecureContextOptions [ 'maxVersion' ] ;
368
+ signatureAlgorithms ?: SecureContextOptions [ 'sigalgs' ] ;
369
+ tlsSessionLifetime ?: SecureContextOptions [ 'sessionTimeout' ] ;
370
+ dhparam ?: SecureContextOptions [ 'dhparam' ] ;
371
+ ecdhCurve ?: SecureContextOptions [ 'ecdhCurve' ] ;
372
+ certificateRevocationLists ?: SecureContextOptions [ 'crl' ] ;
363
373
}
364
374
365
375
export interface PaginateData < BodyType , ElementType > {
@@ -639,7 +649,16 @@ const defaultInternals: Options['_internals'] = {
639
649
key : undefined ,
640
650
certificate : undefined ,
641
651
passphrase : undefined ,
642
- pfx : undefined
652
+ pfx : undefined ,
653
+ ciphers : undefined ,
654
+ honorCipherOrder : undefined ,
655
+ minVersion : undefined ,
656
+ maxVersion : undefined ,
657
+ signatureAlgorithms : undefined ,
658
+ tlsSessionLifetime : undefined ,
659
+ dhparam : undefined ,
660
+ ecdhCurve : undefined ,
661
+ certificateRevocationLists : undefined
643
662
} ,
644
663
encoding : undefined ,
645
664
resolveBodyOnly : false ,
@@ -1900,6 +1919,15 @@ export default class Options {
1900
1919
assert . any ( [ is . string , is . undefined ] , value . passphrase ) ;
1901
1920
assert . any ( [ is . string , is . buffer , is . array , is . undefined ] , value . pfx ) ;
1902
1921
assert . any ( [ is . array , is . undefined ] , value . alpnProtocols ) ;
1922
+ assert . any ( [ is . string , is . undefined ] , value . ciphers ) ;
1923
+ assert . any ( [ is . string , is . buffer , is . undefined ] , value . dhparam ) ;
1924
+ assert . any ( [ is . string , is . undefined ] , value . signatureAlgorithms ) ;
1925
+ assert . any ( [ is . string , is . undefined ] , value . minVersion ) ;
1926
+ assert . any ( [ is . string , is . undefined ] , value . maxVersion ) ;
1927
+ assert . any ( [ is . boolean , is . undefined ] , value . honorCipherOrder ) ;
1928
+ assert . any ( [ is . number , is . undefined ] , value . tlsSessionLifetime ) ;
1929
+ assert . any ( [ is . string , is . undefined ] , value . ecdhCurve ) ;
1930
+ assert . any ( [ is . string , is . buffer , is . array , is . undefined ] , value . certificateRevocationLists ) ;
1903
1931
1904
1932
for ( const key in value ) {
1905
1933
if ( ! ( key in this . _internals . httpsOptions ) ) {
@@ -2082,13 +2110,26 @@ export default class Options {
2082
2110
return {
2083
2111
...internals . cacheOptions ,
2084
2112
...this . _unixOptions ,
2113
+
2114
+ // HTTPS options
2085
2115
ca : httpsOptions . certificateAuthority ,
2086
2116
cert : httpsOptions . certificate ,
2087
2117
key : httpsOptions . key ,
2088
2118
passphrase : httpsOptions . passphrase ,
2089
2119
pfx : httpsOptions . pfx ,
2090
2120
rejectUnauthorized : httpsOptions . rejectUnauthorized ,
2091
2121
checkServerIdentity : httpsOptions . checkServerIdentity ?? checkServerIdentity ,
2122
+ ciphers : httpsOptions . ciphers ,
2123
+ honorCipherOrder : httpsOptions . honorCipherOrder ,
2124
+ minVersion : httpsOptions . minVersion ,
2125
+ maxVersion : httpsOptions . maxVersion ,
2126
+ sigalgs : httpsOptions . signatureAlgorithms ,
2127
+ sessionTimeout : httpsOptions . tlsSessionLifetime ,
2128
+ dhparam : httpsOptions . dhparam ,
2129
+ ecdhCurve : httpsOptions . ecdhCurve ,
2130
+ crl : httpsOptions . certificateRevocationLists ,
2131
+
2132
+ // HTTP options
2092
2133
lookup : internals . dnsLookup ?? ( internals . dnsCache as CacheableLookup | undefined ) ?. lookup ,
2093
2134
family : internals . dnsLookupIpVersion ,
2094
2135
agent,
0 commit comments