=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/snmp/snmpc.c,v retrieving revision 1.1 retrieving revision 1.2 diff -c -r1.1 -r1.2 *** src/usr.bin/snmp/snmpc.c 2019/08/09 06:17:59 1.1 --- src/usr.bin/snmp/snmpc.c 2019/08/11 14:41:20 1.2 *************** *** 1,4 **** ! /* $OpenBSD: snmpc.c,v 1.1 2019/08/09 06:17:59 martijn Exp $ */ /* * Copyright (c) 2019 Martijn van Duren --- 1,4 ---- ! /* $OpenBSD: snmpc.c,v 1.2 2019/08/11 14:41:20 deraadt Exp $ */ /* * Copyright (c) 2019 Martijn van Duren *************** *** 55,71 **** const int usecommonopt; const char *optstring; const char *usage; ! int (*exec)(int, char *[]); }; struct snmp_app snmp_apps[] = { ! {"get", 1, NULL, "agent oid ...", snmpc_get}, ! {"getnext", 1, NULL, "agent oid ...", snmpc_get}, ! {"walk", 1, "C:", "[-C cIipt] [-C E OID] agent [oid]", snmpc_walk}, ! {"bulkget", 1, "C:", "[-C nr] agent oid ...", snmpc_get}, ! {"bulkwalk", 1, "C:", "[-C cipnr] agent [oid]", snmpc_walk}, ! { "trap", 1, NULL, "agent uptime oid [oid type value] ...", snmpc_trap}, ! {"mibtree", 0, "O:", "[-O fnS]", snmpc_mibtree} }; struct snmp_app *snmp_app = NULL; --- 55,71 ---- const int usecommonopt; const char *optstring; const char *usage; ! int (*exec)(int, char *[]); }; struct snmp_app snmp_apps[] = { ! { "get", 1, NULL, "agent oid ...", snmpc_get }, ! { "getnext", 1, NULL, "agent oid ...", snmpc_get }, ! { "walk", 1, "C:", "[-C cIipt] [-C E OID] agent [oid]", snmpc_walk }, ! { "bulkget", 1, "C:", "[-C nr] agent oid ...", snmpc_get }, ! { "bulkwalk", 1, "C:", "[-C cipnr] agent [oid]", snmpc_walk }, ! { "trap", 1, NULL, "agent uptime oid [oid type value] ...", snmpc_trap }, ! { "mibtree", 0, "O:", "[-O fnS]", snmpc_mibtree } }; struct snmp_app *snmp_app = NULL; *************** *** 99,105 **** if (pledge("stdio inet dns", NULL) == -1) err(1, "pledge"); ! if (argc <= 1) usage(); --- 99,105 ---- if (pledge("stdio inet dns", NULL) == -1) err(1, "pledge"); ! if (argc <= 1) usage(); *************** *** 266,272 **** smi_print_hint = 0; break; case 'v': ! print_varbind_only = 1; break; case 'x': output_string = smi_os_hex; --- 266,272 ---- smi_print_hint = 0; break; case 'v': ! print_varbind_only = 1; break; case 'x': output_string = smi_os_hex; *************** *** 418,424 **** snmpc_printerror((enum snmp_error) errorstatus, oidstr); } ! for (;varbind != NULL; varbind = varbind->be_next) { (void) ber_scanf_elements(varbind, "{oe}", &noid, &value); if (value->be_class == BER_CLASS_CONTEXT && --- 418,424 ---- snmpc_printerror((enum snmp_error) errorstatus, oidstr); } ! for (; varbind != NULL; varbind = varbind->be_next) { (void) ber_scanf_elements(varbind, "{oe}", &noid, &value); if (value->be_class == BER_CLASS_CONTEXT && *************** *** 719,733 **** printf("%s %s\n", oids, value); } free(value); ! return 1; } __dead void snmpc_printerror(enum snmp_error error, char *oid) { ! switch (error) ! { case SNMP_ERROR_NONE: errx(1, "No error, how did I get here?"); case SNMP_ERROR_TOOBIG: --- 719,732 ---- printf("%s %s\n", oids, value); } free(value); ! return 1; } __dead void snmpc_printerror(enum snmp_error error, char *oid) { ! switch (error) { case SNMP_ERROR_NONE: errx(1, "No error, how did I get here?"); case SNMP_ERROR_TOOBIG: