diff --git a/src/apps/snmp/snmp_msg.c b/src/apps/snmp/snmp_msg.c index dd581f4b..1107464c 100644 --- a/src/apps/snmp/snmp_msg.c +++ b/src/apps/snmp/snmp_msg.c @@ -821,8 +821,8 @@ snmp_parse_inbound_frame(struct snmp_request *request) /* SNMPv3 doesn't use communities */ /* @todo: Differentiate read/write access */ - strcpy((char*)request->community, snmp_community); - request->community_strlen = (u16_t)strlen(snmp_community); + strncpy((char*)request->community, snmp_community, sizeof(request->community)); + request->community_strlen = (u16_t)strnlen((char*)request->community, sizeof(request->community)); /* RFC3414 globalData */ IF_PARSE_EXEC(snmp_asn1_dec_tlv(&pbuf_stream, &tlv));