@@ -86,6 +86,30 @@ test('line continuations, key from hell', function (t) {
8686 t . end ( ) ;
8787} ) ;
8888
89+ var KEY_NO_COMMENT = 'ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAA' +
90+ 'IbmlzdHAyNTYAAABBBK9+hFGVZ9RT61pg8t7EGgkvduhPr/CBYfx+5rQFEROj8EjkoGIH2xy' +
91+ 'pHOHBz0WikK5hYcwTM5YMvnNxuU0h4+c=' ;
92+ test ( 'normal key, no comment' , function ( t ) {
93+ var k = sshpk . parseKey ( KEY_NO_COMMENT , 'ssh' ) ;
94+ t . strictEqual ( k . type , 'ecdsa' ) ;
95+ t . strictEqual ( k . fingerprint ( 'sha256' ) . toString ( ) ,
96+ 'SHA256:Kyu0EMqH8fzfp9RXKJ6kmsk9qKGBqVRtlOuk6bXfCEU' ) ;
97+ t . strictEqual ( k . comment , '(unnamed)' ) ;
98+ t . end ( ) ;
99+ } ) ;
100+
101+ var KEY_COMMENT_EQ = 'ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAA' +
102+ 'IbmlzdHAyNTYAAABBBK9+hFGVZ9RT61pg8t7EGgkvduhPr/CBYfx+5rQFEROj8EjkoGIH2xy' +
103+ 'pHOHBz0WikK5hYcwTM5YMvnNxuU0h4+c= abc=def=a\n' ;
104+ test ( 'comment contains =, trailing newline' , function ( t ) {
105+ var k = sshpk . parseKey ( KEY_COMMENT_EQ , 'ssh' ) ;
106+ t . strictEqual ( k . type , 'ecdsa' ) ;
107+ t . strictEqual ( k . fingerprint ( 'sha256' ) . toString ( ) ,
108+ 'SHA256:Kyu0EMqH8fzfp9RXKJ6kmsk9qKGBqVRtlOuk6bXfCEU' ) ;
109+ t . strictEqual ( k . comment , 'abc=def=a' ) ;
110+ t . end ( ) ;
111+ } ) ;
112+
89113var KEY_BREAK = 'ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzd' +
90114 'HAyNTYAAABBBK9+hFGVZ9RT61pg8t7\nEGgkvduhPr/CBYfx+5rQFEROj8EjkoGIH2xypHOH' +
91115 'Bz0WikK5hYcwTM5YMvnNxuU0h4+c=' ;
0 commit comments