@@ -14,28 +14,41 @@ pc2_hash_pass_t pc2_argtable_config(int argc, char** argv);
1414int main (int argc , char * * argv )
1515{
1616 saveDefaultColor ();
17- pc2_hash_pass_t password = pc2_argtable_config (argc , argv );
17+ pc2_hash_pass_t hash_final = pc2_argtable_config (argc , argv );
1818
19- if (password .is_empty == 0 )
19+ if (hash_final .is_empty == 0 )
2020 {
21- pc2_hash_pass_print (& password );
22- pc2_hash_pass_clean (& password );
21+ if (pc2_get_verbose ())
22+ {
23+ setColor (CYAN );
24+ printf ("Hash Password \t: " );
25+ resetColor ();
26+ pc2_hash_pass_print (& hash_final );
27+ puts ("" );
28+ }
29+ setColor (GREEN );
30+ printf ("Password : " );
31+ resetColor ();
32+ const pc2_password_t password_formated = pc2_password_generate (& hash_final );
33+ for (int j = 0 ; j < PC2_HASHLEN ; j ++ )
34+ printf ("%c" , password_formated .array [j ]);
35+ pc2_hash_pass_clean (& hash_final );
36+ puts ("" );
2337 }
24-
2538 pc2_check_run_from_console ();
2639 resetColor ();
2740 return 0 ;
2841}
2942
3043pc2_hash_pass_t pc2_argtable_config (int argc , char * * argv )
3144{
32- struct arg_str * passphrase , * tag ;
45+ struct arg_str * phrase , * tag ;
3346 struct arg_lit * verbose , * help , * version ;
3447 struct arg_end * end ;
3548 void * argtable [] =
3649 {
3750 tag = arg_strn (NULL , NULL , "<tag>" , 0 , 1 , "target tag" ),
38- passphrase = arg_strn ("p" , "pass " , "<passphrase >" , 0 , 1 , "private passphrase " ),
51+ phrase = arg_strn ("p" , "phrase " , "<phrase >" , 0 , 1 , "private phrase " ),
3952 help = arg_litn ("h" , "help" , 0 , 1 , "display this help and exit" ),
4053 verbose = arg_litn ("v" , "verbose" , 0 , 1 , "verbose output and exit" ),
4154 version = arg_litn (NULL , "version" , 0 , 1 , "display version info and exit" ),
@@ -48,15 +61,15 @@ pc2_hash_pass_t pc2_argtable_config(int argc, char** argv)
4861 // HELP -v
4962 if (help -> count > 0 )
5063 {
51- printf ("usage: %s" , PC2_PROG_EXEC_NAME );
64+ printf ("usage: %s%s " , PC2_PROG_EXEC_NAME , PC2_OS == PC2_OS_WINDOWS ? ".exe" : "" );
5265 arg_print_syntax (stdout , argtable , "\n\n" );
5366 arg_print_glossary (stdout , argtable , " %-25s %s\n" );
5467 puts ("" );
5568 }
5669 // VERSION
5770 if (version -> count > 0 )
5871 {
59- printf ("Version : %s\n" , PC2_VERSION );
72+ printf ("%s version : %s\n" , PC2_PROG_EXEC_NAME , PC2_VERSION );
6073 }
6174 }
6275 else
@@ -71,41 +84,44 @@ pc2_hash_pass_t pc2_argtable_config(int argc, char** argv)
7184 {
7285 printf ("Try '" );
7386 setColor (GREEN );
74- printf ("%s --help" , PC2_PROG_EXEC_NAME );
87+ printf ("%s%s --help" , PC2_PROG_EXEC_NAME , PC2_OS == PC2_OS_WINDOWS ? "exe" : "" );
7588 resetColor ();
76- printf ("' for more information.\n " );
89+ printf ("' for more information." );
7790 }
78-
7991 }
8092 else
8193 {
8294 pc2_set_verbose (verbose -> count > 0 ? 1 : 0 );
83- pc2_hash_pass_t hp_passphrase ;
95+ pc2_hash_pass_t hp_phrase ;
8496 pc2_hash_pass_t hp_tag ;
85- if (passphrase -> count == 0 )
86- hp_passphrase = hash_pass_create_from_user_input ( "Passphrase " );
97+ if (phrase -> count == 0 )
98+ hp_phrase = pc2_hash_pass_create_from_user_input ( "Phrase " );
8799 else
88- hp_passphrase = hash_pass_create_manually ((uint8_t * )passphrase -> sval [0 ]);
89- pc2_hash_pass_set_salt (& hp_passphrase , PC2_BASE_SALT );
100+ hp_phrase = pc2_hash_pass_create_manually ((uint8_t * )phrase -> sval [0 ]);
101+ pc2_hash_pass_set_salt (& hp_phrase , PC2_BASE_SALT );
90102 if (tag -> count == 0 )
91- hp_tag = hash_pass_create_from_user_input ("Tag" );
103+ hp_tag = pc2_hash_pass_create_from_user_input ("Tag" );
92104 else
93- hp_tag = hash_pass_create_manually ((uint8_t * )tag -> sval [0 ]);
105+ hp_tag = pc2_hash_pass_create_manually ((uint8_t * )tag -> sval [0 ]);
94106 pc2_hash_pass_set_salt (& hp_tag , PC2_BASE_SALT );
95107
96- pc2_hash_pass_t final_hash = pc2_hash_pass_get_final (& hp_passphrase , & hp_tag );
108+ const pc2_hash_pass_t final_hash = pc2_hash_pass_get_final (& hp_phrase , & hp_tag );
97109
98110 if (pc2_get_verbose ())
99111 {
100- puts ("Hash 1 :" );
101- pc2_hash_pass_print (& hp_passphrase );
112+ setColor (CYAN );
113+ printf ("Hash Phrase \t: " );
114+ resetColor ();
115+ pc2_hash_pass_print (& hp_phrase );
102116 puts ("" );
103- puts ("Hash 2 :" );
117+ setColor (CYAN );
118+ printf ("Hash Tag \t: " );
119+ resetColor ();
104120 pc2_hash_pass_print (& hp_tag );
105121 puts ("" );
106122 }
107123
108- pc2_hash_pass_clean (& hp_passphrase );
124+ pc2_hash_pass_clean (& hp_phrase );
109125 pc2_hash_pass_clean (& hp_tag );
110126
111127 arg_freetable (argtable , sizeof (argtable ) / sizeof (argtable [0 ]));
0 commit comments