ipx: call ipxitf_put() in ioctl error path
We should call ipxitf_put() if the copy_to_user() fails. Reported-by: 李强 <liqiang6-s@360.cn> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
9da3242e6a
Коммит
ee0d8d8482
|
@ -1168,11 +1168,10 @@ static int ipxitf_ioctl(unsigned int cmd, void __user *arg)
|
|||
sipx->sipx_network = ipxif->if_netnum;
|
||||
memcpy(sipx->sipx_node, ipxif->if_node,
|
||||
sizeof(sipx->sipx_node));
|
||||
rc = -EFAULT;
|
||||
if (copy_to_user(arg, &ifr, sizeof(ifr)))
|
||||
break;
|
||||
ipxitf_put(ipxif);
|
||||
rc = 0;
|
||||
if (copy_to_user(arg, &ifr, sizeof(ifr)))
|
||||
rc = -EFAULT;
|
||||
ipxitf_put(ipxif);
|
||||
break;
|
||||
}
|
||||
case SIOCAIPXITFCRT:
|
||||
|
|
Загрузка…
Ссылка в новой задаче