diff options
Diffstat (limited to 'toys/pending/dhcp6.c')
-rw-r--r-- | toys/pending/dhcp6.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/toys/pending/dhcp6.c b/toys/pending/dhcp6.c index c69c4aed..728dc7d1 100644 --- a/toys/pending/dhcp6.c +++ b/toys/pending/dhcp6.c @@ -249,10 +249,7 @@ static void mode_raw() sockll.sll_family = AF_PACKET; sockll.sll_protocol = htons(ETH_P_IPV6); sockll.sll_ifindex = if_nametoindex(TT.interface_name); - if (bind(TT.sock, (struct sockaddr *) &sockll, sizeof(sockll))) { - xclose(TT.sock); - error_exit("MODE RAW : Bind fail.\n"); - } + xbind(TT.sock, (struct sockaddr *) &sockll, sizeof(sockll)); if (setsockopt(TT.sock, SOL_PACKET, PACKET_HOST,&constone, sizeof(int)) < 0) { if (errno != ENOPROTOOPT) error_exit("MODE RAW : Bind fail.\n"); } @@ -575,10 +572,7 @@ void dhcp6_main(void) xsetsockopt(TT.sock1, SOL_SOCKET, SO_REUSEADDR, &constone, sizeof(constone)); - if (bind(TT.sock1, (struct sockaddr *)&sinaddr6, sizeof(sinaddr6))) { - xclose(TT.sock1); - error_exit("bind failed"); - } + xbind(TT.sock1, (struct sockaddr *)&sinaddr6, sizeof(sinaddr6)); mode_raw(); set_timeout(0); |