|
48 | 48 | * |
49 | 49 | */ |
50 | 50 |
|
| 51 | +#include <net-snmp/net-snmp-config.h> |
| 52 | + |
51 | 53 | /* asprintf and getopt_long */ |
52 | 54 | #ifndef _GNU_SOURCE |
53 | 55 | #define _GNU_SOURCE |
| 56 | +#include <net-snmp/library/transform_oids.h> |
54 | 57 | #endif |
55 | 58 | #include <stdio.h> |
56 | 59 |
|
57 | 60 | #include <limits.h> |
58 | | -#include <net-snmp/net-snmp-config.h> |
59 | 61 | #include <stdarg.h> |
60 | 62 | #include <string.h> |
61 | 63 | #include <unistd.h> |
@@ -227,6 +229,22 @@ netsnmp_session *start_session_v3(netsnmp_session *session, char *user, |
227 | 229 | session->securityAuthProto = snmp_duplicate_objid( |
228 | 230 | usmHMACSHA1AuthProtocol, USM_AUTH_PROTO_SHA_LEN); |
229 | 231 | session->securityAuthProtoLen = USM_AUTH_PROTO_SHA_LEN; |
| 232 | + } else if (!strcmp(auth_proto, "SHA-224")) { |
| 233 | + session->securityAuthProto = snmp_duplicate_objid( |
| 234 | + usmHMAC128SHA224AuthProtocol, USM_AUTH_PROTO_SHA_LEN); |
| 235 | + session->securityAuthProtoLen = USM_AUTH_PROTO_SHA_LEN; |
| 236 | + } else if (!strcmp(auth_proto, "SHA-256")) { |
| 237 | + session->securityAuthProto = snmp_duplicate_objid( |
| 238 | + usmHMAC192SHA256AuthProtocol, USM_AUTH_PROTO_SHA_LEN); |
| 239 | + session->securityAuthProtoLen = USM_AUTH_PROTO_SHA_LEN; |
| 240 | + } else if (!strcmp(auth_proto, "SHA-384")) { |
| 241 | + session->securityAuthProto = snmp_duplicate_objid( |
| 242 | + usmHMAC256SHA384AuthProtocol, USM_AUTH_PROTO_SHA_LEN); |
| 243 | + session->securityAuthProtoLen = USM_AUTH_PROTO_SHA_LEN; |
| 244 | + } else if (!strcmp(auth_proto, "SHA-512")) { |
| 245 | + session->securityAuthProto = snmp_duplicate_objid( |
| 246 | + usmHMAC384SHA512AuthProtocol, USM_AUTH_PROTO_SHA_LEN); |
| 247 | + session->securityAuthProtoLen = USM_AUTH_PROTO_SHA_LEN; |
230 | 248 | } else if (!strcmp(auth_proto, "MD5")) { |
231 | 249 | session->securityAuthProto = snmp_duplicate_objid( |
232 | 250 | usmHMACMD5AuthProtocol, USM_AUTH_PROTO_MD5_LEN); |
|
0 commit comments