int main (int argc, char *argv[]) { show_key_schedule(); int show_vec = 0,show_galois = 0, show_ksch = 0, show_sbox = 0; for (int i = 1; i < argc && argv[i][0] == '-'; i++) { switch (argv[i][1]) { case 'g': show_galois++; break; case 'k': show_ksch++; break; case 's': show_sbox++; break; default: printf("unknown option -%c\n", argv[i][1]); printf("Usage: %s [OPTIONS]\n", argv[0]); exit(1); } } if (show_vec) test_lib(); if (show_ksch) show_key_schedule(); if (show_sbox) sbox_print(); return (0); }
int main(int argc, char *argv[]) { int opt; opterr = 0; while ((opt = getopt(argc, argv, "gksv")) != -1) { switch (opt) { case 'v': ++opt_show_vec; break; case 'g': ++opt_show_galois; break; case 'k': ++opt_show_ksch; break; case 's': ++opt_show_sbox; break; default: printf("unknown option -%c\n", PRTCHAR(optopt)); printf("Usage: %s [OPTIONS]\n", argv[0]); exit(1); } } aes_init(); if (opt_show_galois) galois_print_tables(); if (opt_show_sbox) rijndael_sbox_print(); if (opt_show_ksch) show_key_schedule(); if (opt_show_vec) test_lib(); return 0; }