*: remove check for errors on getsockaddr in cases we know they can't happen

libbb: make get_sock_lsa use only one getsockaddr syscall, not two

function                                             old     new   delta
get_sock_lsa                                          72     101     +29
do_iplink                                           1151    1137     -14
arping_main                                         1585    1569     -16
dolisten                                             789     755     -34
xrtnl_open                                           161      94     -67
This commit is contained in:
Denis Vlasenko
2009-04-21 23:48:38 +00:00
parent e6b10ef0a7
commit a771e7c005
6 changed files with 37 additions and 31 deletions

View File

@@ -112,11 +112,11 @@ static int get_address(char *dev, int *htype)
me.sll_ifindex = ifr.ifr_ifindex;
me.sll_protocol = htons(ETH_P_LOOP);
xbind(s, (struct sockaddr*)&me, sizeof(me));
alen = sizeof(me);
if (getsockname(s, (struct sockaddr*)&me, &alen) == -1) {
bb_perror_msg_and_die("getsockname");
}
getsockname(s, (struct sockaddr*)&me, &alen);
//never happens:
//if (getsockname(s, (struct sockaddr*)&me, &alen) == -1)
// bb_perror_msg_and_die("getsockname");
close(s);
*htype = me.sll_hatype;
return me.sll_halen;