=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/snmp/snmp.c,v retrieving revision 1.6 retrieving revision 1.7 diff -c -r1.6 -r1.7 *** src/usr.bin/snmp/snmp.c 2019/09/18 09:54:36 1.6 --- src/usr.bin/snmp/snmp.c 2019/10/03 11:02:26 1.7 *************** *** 1,4 **** ! /* $OpenBSD: snmp.c,v 1.6 2019/09/18 09:54:36 martijn Exp $ */ /* * Copyright (c) 2019 Martijn van Duren --- 1,4 ---- ! /* $OpenBSD: snmp.c,v 1.7 2019/10/03 11:02:26 martijn Exp $ */ /* * Copyright (c) 2019 Martijn van Duren *************** *** 247,252 **** --- 247,268 ---- fail: ber_free_elements(pdu); return NULL; + } + + struct ber_element * + snmp_set(struct snmp_agent *agent, struct ber_element *vblist) + { + struct ber_element *pdu; + + if ((pdu = ber_add_sequence(NULL)) == NULL) + return NULL; + if (ber_printf_elements(pdu, "tddd{e", BER_CLASS_CONTEXT, + SNMP_C_SETREQ, arc4random() & 0x7fffffff, 0, 0, vblist) == NULL) { + ber_free_elements(pdu); + return NULL; + } + + return snmp_resolve(agent, pdu, 1); } static struct ber_element *