X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flibsystemd-dhcp%2Fdhcp-network.c;h=b2de67e8a74d013f585b8eacc6b724eb05b64e01;hb=24fb111207566f3bb33c6438714fb5df44ed4305;hp=ce27f425c358418402ff36ac7e832af0b4807ddc;hpb=234fc2dfce0e749f6e88301f2c82a3e54ccaa5fa;p=elogind.git diff --git a/src/libsystemd-dhcp/dhcp-network.c b/src/libsystemd-dhcp/dhcp-network.c index ce27f425c..b2de67e8a 100644 --- a/src/libsystemd-dhcp/dhcp-network.c +++ b/src/libsystemd-dhcp/dhcp-network.c @@ -34,6 +34,9 @@ int dhcp_network_bind_raw_socket(int index, union sockaddr_union *link) { int s; + assert(index > 0); + assert(link); + s = socket(AF_PACKET, SOCK_DGRAM | SOCK_CLOEXEC | SOCK_NONBLOCK, htons(ETH_P_IP)); if (s < 0) @@ -77,6 +80,10 @@ int dhcp_network_bind_udp_socket(int index, be32_t client_address) int dhcp_network_send_raw_socket(int s, const union sockaddr_union *link, const void *packet, size_t len) { + assert(link); + assert(packet); + assert(len); + if (sendto(s, packet, len, 0, &link->sa, sizeof(link->ll)) < 0) return -errno;