@@ -10,11 +10,12 @@ const {
10
10
const DEFAULT_MIN_VERSION = tls . DEFAULT_MIN_VERSION ;
11
11
const DEFAULT_MAX_VERSION = tls . DEFAULT_MAX_VERSION ;
12
12
13
- // For v11.x, the default is fixed and cannot be changed via CLI.
14
- assert . strictEqual ( DEFAULT_MIN_VERSION , 'TLSv1' ) ;
15
-
16
13
function test ( cmin , cmax , cprot , smin , smax , sprot , proto , cerr , serr ) {
17
14
assert ( proto || cerr || serr , 'test missing any expectations' ) ;
15
+ // Report where test was called from. Strip leading garbage from
16
+ // at Object.<anonymous> (file:line)
17
+ // from the stack location, we only want the file:line part.
18
+ const where = ( new Error ( ) ) . stack . split ( '\n' ) [ 2 ] . replace ( / [ ^ ( ] * / , '' ) ;
18
19
connect ( {
19
20
client : {
20
21
checkServerIdentity : ( servername , cert ) => { } ,
@@ -34,9 +35,28 @@ function test(cmin, cmax, cprot, smin, smax, sprot, proto, cerr, serr) {
34
35
function u ( _ ) { return _ === undefined ? 'U' : _ ; }
35
36
console . log ( 'test:' , u ( cmin ) , u ( cmax ) , u ( cprot ) , u ( smin ) , u ( smax ) , u ( sprot ) ,
36
37
'expect' , u ( proto ) , u ( cerr ) , u ( serr ) ) ;
38
+ console . log ( ' ' , where ) ;
37
39
if ( ! proto ) {
38
- console . log ( 'client' , pair . client . err ? pair . client . err . code : undefined ) ;
39
- console . log ( 'server' , pair . server . err ? pair . server . err . code : undefined ) ;
40
+ function setCode ( err ) {
41
+ if ( ! err ) return ;
42
+ if ( err . code ) return ;
43
+ // Convert error message to a .code, because .code wasn't always present
44
+ // in older versions.
45
+ if ( / u n s u p p o r t e d p r o t o c o l / . test ( err . message ) )
46
+ err . code = 'ERR_SSL_UNSUPPORTED_PROTOCOL' ;
47
+ else if ( / w r o n g v e r s i o n n u m b e r / . test ( err . message ) )
48
+ err . code = 'ERR_SSL_WRONG_VERSION_NUMBER' ;
49
+ else if ( / v e r s i o n t o o l o w / . test ( err . message ) )
50
+ err . code = 'ERR_SSL_UNSUPPORTED_PROTOCOL' ;
51
+ else
52
+ err . code = err . message ;
53
+ }
54
+ setCode ( pair . server . err ) ;
55
+ setCode ( pair . client . err ) ;
56
+ console . log ( 'client' , pair . client . err ? pair . client . err . code :
57
+ pair . client . err ) ;
58
+ console . log ( 'server' , pair . server . err ? pair . server . err . code :
59
+ pair . server . err ) ;
40
60
// 11.x doesn't have https://github.com./nodejs/node/pull/24729
41
61
if ( cerr === 'ERR_TLS_INVALID_PROTOCOL_METHOD' &&
42
62
pair . client . err &&
0 commit comments