libsocketcan: Fix return value for get{set}_link() function

This patch makes return value negative when open_nl_sock() function
fail and removes excess labels.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
pull/106/head^2
Alexander Shiyan 2014-02-03 13:40:21 +04:00 committed by Marc Kleine-Budde
parent 9a28d69183
commit 24500fcaca
1 changed files with 6 additions and 16 deletions

View File

@ -508,20 +508,15 @@ static int do_get_nl_link(int fd, __u8 acquire, const char *name, void *res)
*/
static int get_link(const char *name, __u8 acquire, void *res)
{
int fd;
int err = -1;
int err, fd;
fd = open_nl_sock();
if (fd < 0)
goto err_out;
return -1;
err = do_get_nl_link(fd, acquire, name, res);
if (err < 0)
goto close_out;
close_out:
close(fd);
err_out:
return err;
}
@ -643,20 +638,15 @@ static int do_set_nl_link(int fd, __u8 if_state, const char *name,
*/
static int set_link(const char *name, __u8 if_state, struct req_info *req_info)
{
int fd;
int err = 0;
int err, fd;
fd = open_nl_sock();
if (fd < 0)
goto err_out;
return -1;
err = do_set_nl_link(fd, if_state, name, req_info);
if (err < 0)
goto close_out;
close_out:
close(fd);
err_out:
return err;
}