int main(int argc, char *argv[]) { int ch; if (argc > 0) pname = argv[0]; while ((ch = getopt(argc, argv, "k:f:")) != -1) switch (ch) { case 'k': add_to_keep_list(optarg); break; case 'f': add_file_to_keep_list(optarg); break; default: usage(); } argc -= optind; argv += optind; if (argc == 0) usage(); while (argc) { hide_syms(*argv); argc--; argv++; } return 0; }
void add_file_to_keep_list(char *filename) { FILE *keepf; char symbol[1024]; int len; if ((keepf = fopen(filename, "r")) == NULL) { perror(filename); usage(); } while (fgets(symbol, sizeof(symbol), keepf)) { len = strlen(symbol); if (len && symbol[len - 1] == '\n') symbol[len - 1] = '\0'; add_to_keep_list(symbol); } fclose(keepf); }
int main(int argc, char **argv) { int ch, errors; if(argc > 0) pname = argv[0]; while ((ch = getopt(argc, argv, "k:f:v")) != -1) switch(ch) { case 'k': add_to_keep_list(optarg); break; case 'f': add_file_to_keep_list(optarg); break; case 'v': verbose = 1; break; default: usage(); } argc -= optind; argv += optind; if(argc == 0) usage(); errors = 0; while(argc) { if (hide_syms(*argv)) errors = 1; argc--, argv++; } return errors; }