static int lldp_build_tlv_packet(tlv_packet **ret) {
_cleanup_tlv_packet_free_ tlv_packet *m = NULL;
const uint8_t lldp_dst[] = LLDP_MULTICAST_ADDR;
- struct ether_header ether;
+ struct ether_header ether = {
+ .ether_type = htons(ETHERTYPE_LLDP),
+ };
/* Append ethernet header */
- memset(ðer, 0, sizeof(ether));
memcpy(ðer.ether_dhost, lldp_dst, ETHER_ADDR_LEN);
memcpy(ðer.ether_shost, &mac_addr, ETHER_ADDR_LEN);
- ether.ether_type = htons(ETHERTYPE_LLDP);
assert_se(tlv_packet_new(&m) >= 0);
case LLDP_PORT_SUBTYPE_INTERFACE_NAME:
assert_se(tlv_packet_read_string(m, &str, &length) >= 0);
- p = malloc0(length + 1);
- strncpy(p, str, length-1);
+ p = strndup(str, length-1);
+ assert_se(p);
assert_se(streq(p, TEST_LLDP_PORT) == 1);
break;
assert_se(lldp_tlv_packet_enter_container(m, LLDP_TYPE_SYSTEM_NAME) >= 0);
assert_se(tlv_packet_read_string(m, &str, &length) >= 0);
- p = malloc0(length + 1);
- strncpy(p, str, length);
+ p = strndup(str, length);
+ assert_se(p);
assert_se(streq(p, TEST_LLDP_TYPE_SYSTEM_NAME) == 1);
assert_se(lldp_tlv_packet_enter_container(m, LLDP_TYPE_SYSTEM_DESCRIPTION) >= 0);
assert_se(tlv_packet_read_string(m, &str, &length) >= 0);
- p = malloc0(length + 1);
- strncpy(p, str, length);
+ p = strndup(str, length);
+ assert_se(p);
assert_se(streq(p, TEST_LLDP_TYPE_SYSTEM_DESC) == 1);