@@ -101,9 +101,6 @@ struct fmt_tests sevenzip_tests[] = {
101101
102102sevenzip_salt_t * sevenzip_salt ;
103103
104- #define YEL "\x1b[0;33m"
105- #define NRM "\x1b[0m"
106-
107104int sevenzip_trust_padding ;
108105
109106static char * comp_type [16 ] = { "stored" , "LZMA1" , "LZMA2" , "PPMD" , NULL , NULL , "BZIP2" , "DEFLATE" };
@@ -140,23 +137,23 @@ int sevenzip_valid(char *ciphertext, struct fmt_main *self)
140137 && type != 128 ) {
141138 if (john_main_process && !warned [type ]) {
142139 warned [type ] = 1 ;
143- fprintf ( stderr , YEL "Warning: Not loading files with unsupported compression type %s (0x%02x)\n" NRM ,
140+ fprintf_color ( color_warning , stderr , "Warning: Not loading files with unsupported compression type %s (0x%02x)\n" ,
144141 comp_type [c_type ] ? comp_type [c_type ] : "(unknown)" , type );
145142#if !HAVE_LIBBZ2
146143 if (type == 6 )
147- fprintf ( stderr , YEL "Rebuild with libbz2 to get support for that type.\n" NRM );
144+ fprintf_color ( color_warning , stderr , "Rebuild with libbz2 to get support for that type.\n" );
148145#endif
149146#if !HAVE_LIBZ
150147 if (type == 7 )
151- fprintf ( stderr , YEL "Rebuild with libz (zlib) to get support for that type.\n" NRM );
148+ fprintf_color ( color_warning , stderr , "Rebuild with libz (zlib) to get support for that type.\n" );
152149#endif
153150 }
154151 goto err ;
155152 }
156153 if (john_main_process && !ldr_in_pot && !self_test_running &&
157154 options .verbosity > VERB_DEFAULT && !warned [type ]) {
158155 warned [type ] = 1 ;
159- fprintf ( stderr , YEL "Saw file(s) with compression type %s%s%s (0x%02x)\n" NRM ,
156+ fprintf_color ( color_notice , stderr , "Saw file(s) with compression type %s%s%s (0x%02x)\n" ,
160157 precomp_type [p_type ], p_type ? "+" : "" , comp_type [c_type ], type );
161158 }
162159 if ((p = strtokm (NULL , "$" )) == NULL ) /* NumCyclesPower */
@@ -174,11 +171,8 @@ int sevenzip_valid(char *ciphertext, struct fmt_main *self)
174171 goto err ;
175172 len = atoi (p );
176173 if (len > 0 && strstr (self -> params .label , "-opencl" )) {
177- static int warned ;
178-
179- if (!warned ++ )
180- fprintf (stderr , YEL "%s: Warning: Not loading hashes with salt due to optimizations. Please report!\n" NRM ,
181- self -> params .label );
174+ if (!ldr_in_pot && john_main_process )
175+ WARN_ONCE (color_warning , stderr , "%s: Warning: Not loading hashes with salt due to optimizations. Please report!\n" , self -> params .label );
182176 goto err ;
183177 }
184178 if (len > 16 )
@@ -355,7 +349,7 @@ int sevenzip_decrypt(unsigned char *derived_key)
355349
356350#if DEBUG
357351 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
358- fprintf ( stderr , "\nType %02x (%s%s%s) AES length %zu, packed len %zu, pad size %d, crc len %zu\n" ,
352+ fprintf_color ( color_notice , stderr , "\nType %02x (%s%s%s) AES length %zu, packed len %zu, pad size %d, crc len %zu\n" ,
359353 sevenzip_salt -> type , precomp_type [p_type ] ? precomp_type [p_type ] : "" ,
360354 p_type ? "+" : "" ,
361355 comp_type [c_type ] ? comp_type [c_type ] : "(unknown)" ,
@@ -379,12 +373,11 @@ int sevenzip_decrypt(unsigned char *derived_key)
379373 if (buf [i ] != 0 ) {
380374#if DEBUG
381375 if (!benchmark_running && options .verbosity >= VERB_DEBUG ) {
382- fprintf ( stderr , YEL "Early padding check failed, " );
376+ fprintf_color ( color_warning , stderr , "Early padding check failed, " );
383377 dump_stderr_msg ("padding" , buf + 16 - pad_size , pad_size );
384- fprintf (stderr , NRM );
385378 }
386379 if (sevenzip_salt -> type == 0x80 )
387- fprintf ( stderr , YEL "We don't have data for complete decryption\n" );
380+ WARN_ONCE ( color_warning , stderr , "We don't have data for complete decryption\n" );
388381 break ;
389382#else
390383 return 0 ;
@@ -395,13 +388,13 @@ int sevenzip_decrypt(unsigned char *derived_key)
395388 }
396389#if DEBUG
397390 if (!nbytes && !benchmark_running && options .verbosity >= VERB_DEBUG )
398- fprintf ( stderr , "Early padding check passed\n" );
391+ fprintf_color ( color_notice , stderr , "Early padding check passed\n" );
399392 else
400393 nbytes = 0 ;
401- #else
394+ if (self_test_running )
395+ #endif
402396 if (sevenzip_salt -> type == 0x80 ) /* We only have truncated data */
403397 return 1 ;
404- #endif
405398 }
406399
407400 /* Complete decryption */
@@ -417,9 +410,8 @@ int sevenzip_decrypt(unsigned char *derived_key)
417410 if (out [i ] != 0 ) {
418411#if DEBUG
419412 if (!benchmark_running && options .verbosity >= VERB_DEBUG ) {
420- fprintf ( stderr , YEL "Full data padding check failed, " );
413+ fprintf_color ( color_warning , stderr , "Full data padding check failed, " );
421414 dump_stderr_msg ("padding" , out + sevenzip_salt -> aes_length - pad_size , pad_size );
422- fprintf (stderr , NRM );
423415 }
424416 break ;
425417#else
@@ -431,7 +423,7 @@ int sevenzip_decrypt(unsigned char *derived_key)
431423 }
432424#if DEBUG
433425 if (!nbytes && !benchmark_running && options .verbosity >= VERB_DEBUG )
434- fprintf ( stderr , "Padding check passed\n" );
426+ fprintf_color ( color_notice , stderr , "Padding check passed\n" );
435427#endif
436428 }
437429
@@ -456,7 +448,7 @@ int sevenzip_decrypt(unsigned char *derived_key)
456448 out_size == crc_len ) {
457449#if DEBUG
458450 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
459- fprintf ( stderr , "LZMA decoding passed, %zu/%zu -> %zu/%zu, props %02x%02x%02x%02x\n" ,
451+ fprintf_color ( color_notice , stderr , "LZMA decoding passed, %zu/%zu -> %zu/%zu, props %02x%02x%02x%02x\n" ,
460452 in_size , sevenzip_salt -> packed_size , out_size , crc_len , sevenzip_salt -> decoder_props [0 ],
461453 sevenzip_salt -> decoder_props [1 ], sevenzip_salt -> decoder_props [2 ], sevenzip_salt -> decoder_props [3 ]);
462454#endif
@@ -465,7 +457,7 @@ int sevenzip_decrypt(unsigned char *derived_key)
465457 } else {
466458#if DEBUG
467459 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
468- fprintf ( stderr , YEL "LZMA decoding failed, %zu/%zu -> %zu/%zu, props %02x%02x%02x%02x\n" NRM ,
460+ fprintf_color ( color_warning , stderr , "LZMA decoding failed, %zu/%zu -> %zu/%zu, props %02x%02x%02x%02x\n" ,
469461 in_size , sevenzip_salt -> packed_size , out_size , crc_len , sevenzip_salt -> decoder_props [0 ],
470462 sevenzip_salt -> decoder_props [1 ], sevenzip_salt -> decoder_props [2 ], sevenzip_salt -> decoder_props [3 ]);
471463#endif
@@ -488,15 +480,15 @@ int sevenzip_decrypt(unsigned char *derived_key)
488480 out_size == crc_len ) {
489481#if DEBUG
490482 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
491- fprintf ( stderr , "LZMA2 decoding passed, %zu/%zu -> %zu/%zu, props %02x\n" ,
483+ fprintf_color ( color_notice , stderr , "LZMA2 decoding passed, %zu/%zu -> %zu/%zu, props %02x\n" ,
492484 in_size , sevenzip_salt -> packed_size , out_size , crc_len , sevenzip_salt -> decoder_props [0 ]);
493485#endif
494486 MEM_FREE (out );
495487 out = new_out ;
496488 } else {
497489#if DEBUG
498490 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
499- fprintf ( stderr , YEL "LZMA2 decoding failed, %zu/%zu -> %zu/%zu, props %02x\n" NRM ,
491+ fprintf_color ( color_warning , stderr , "LZMA2 decoding failed, %zu/%zu -> %zu/%zu, props %02x\n" ,
500492 in_size , sevenzip_salt -> packed_size , out_size , crc_len , sevenzip_salt -> decoder_props [0 ]);
501493#endif
502494 MEM_FREE (new_out );
@@ -526,7 +518,7 @@ int sevenzip_decrypt(unsigned char *derived_key)
526518 if (ret == BZ_STREAM_END ) {
527519#if DEBUG
528520 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
529- fprintf ( stderr , "BZIP2 decoding passed, %zu/%zu -> %zu/%zu\n" ,
521+ fprintf_color ( color_notice , stderr , "BZIP2 decoding passed, %zu/%zu -> %zu/%zu\n" ,
530522 sevenzip_salt -> packed_size - inf_stream .avail_in , sevenzip_salt -> packed_size ,
531523 crc_len - inf_stream .avail_out , crc_len );
532524#endif
@@ -535,7 +527,7 @@ int sevenzip_decrypt(unsigned char *derived_key)
535527 } else {
536528#if DEBUG
537529 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
538- fprintf ( stderr , YEL "BZIP2 decoding failed, %zu/%zu -> %zu/%zu\n" NRM ,
530+ fprintf_color ( color_warning , stderr , "BZIP2 decoding failed, %zu/%zu -> %zu/%zu\n" ,
539531 sevenzip_salt -> packed_size - inf_stream .avail_in , sevenzip_salt -> packed_size ,
540532 crc_len - inf_stream .avail_out , crc_len );
541533#endif
@@ -564,7 +556,7 @@ int sevenzip_decrypt(unsigned char *derived_key)
564556 if (ret == Z_STREAM_END ) {
565557#if DEBUG
566558 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
567- fprintf ( stderr , "DEFLATE decoding passed, %zu/%zu -> %zu/%zu\n" ,
559+ fprintf_color ( color_notice , stderr , "DEFLATE decoding passed, %zu/%zu -> %zu/%zu\n" ,
568560 sevenzip_salt -> packed_size - inf_stream .avail_in , sevenzip_salt -> packed_size ,
569561 crc_len - inf_stream .avail_out , crc_len );
570562#endif
@@ -573,7 +565,7 @@ int sevenzip_decrypt(unsigned char *derived_key)
573565 } else {
574566#if DEBUG
575567 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
576- fprintf ( stderr , YEL "DEFLATE decoding failed, %zu/%zu -> %zu/%zu\n" NRM ,
568+ fprintf_color ( color_warning , stderr , "DEFLATE decoding failed, %zu/%zu -> %zu/%zu\n" ,
577569 sevenzip_salt -> packed_size - inf_stream .avail_in , sevenzip_salt -> packed_size ,
578570 crc_len - inf_stream .avail_out , crc_len );
579571#endif
@@ -586,7 +578,7 @@ int sevenzip_decrypt(unsigned char *derived_key)
586578 if (p_type ) {
587579#if DEBUG
588580 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
589- fprintf ( stderr , "Decoding %s, props %02x\n" , precomp_type [p_type ], sevenzip_salt -> preproc_props );
581+ fprintf_color ( color_notice , stderr , "Decoding %s, props %02x\n" , precomp_type [p_type ], sevenzip_salt -> preproc_props );
590582#endif
591583 if (p_type == 1 ) {
592584 uint32_t state ;
@@ -595,12 +587,8 @@ int sevenzip_decrypt(unsigned char *derived_key)
595587 x86_Convert (out , crc_len , 0 , & state , 0 );
596588 }
597589 else if (p_type == 2 ) {
598- if (!benchmark_running && options .verbosity >= VERB_DEFAULT ) {
599- static int warned ;
600-
601- if (!warned ++ )
602- fprintf (stderr , YEL "Can't decode BCJ2, so skipping CRC check" NRM );
603- }
590+ if (!benchmark_running && options .verbosity >= VERB_DEFAULT )
591+ WARN_ONCE (color_warning , stderr , "Can't decode BCJ2, so skipping CRC check" );
604592 goto exit_good ;
605593 }
606594 else if (p_type == 3 )
@@ -620,7 +608,7 @@ int sevenzip_decrypt(unsigned char *derived_key)
620608 Delta_Decode (state , sevenzip_salt -> preproc_props + 1 , out , crc_len );
621609#if DEBUG
622610 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
623- fprintf ( stderr , YEL "DELTA decoding can't fail so result unknown\n" NRM );
611+ fprintf_color ( color_notice , stderr , "DELTA decoding can't fail so result unknown\n" );
624612#endif
625613 }
626614 }
@@ -636,13 +624,13 @@ int sevenzip_decrypt(unsigned char *derived_key)
636624 if (ccrc == sevenzip_salt -> crc ) {
637625#if DEBUG
638626 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
639- fprintf ( stderr , "CRC check passed (%08x)\n" , ccrc );
627+ fprintf_color ( color_notice , stderr , "CRC check passed (%08x)\n" , ccrc );
640628#endif
641629 goto exit_good ;
642630 }
643631#if DEBUG
644632 if (!benchmark_running && options .verbosity >= VERB_DEBUG )
645- fprintf ( stderr , YEL "CRC failed, %08x vs %08x\n" NRM , ccrc , sevenzip_salt -> crc );
633+ fprintf_color ( color_warning , stderr , "CRC failed, %08x vs %08x\n" , ccrc , sevenzip_salt -> crc );
646634#endif
647635
648636exit_bad :
0 commit comments