[LLC]: Fix for Bugzilla ticket #5156
Signed-off-by: Jochen Friedrich <jochen@scram.de> Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
This commit is contained in:
parent
6e2144b768
commit
cf309e3fb8
|
@ -574,6 +574,8 @@ struct net_device *dev_getbyhwaddr(unsigned short type, char *ha)
|
||||||
return dev;
|
return dev;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EXPORT_SYMBOL(dev_getbyhwaddr);
|
||||||
|
|
||||||
struct net_device *dev_getfirstbyhwtype(unsigned short type)
|
struct net_device *dev_getfirstbyhwtype(unsigned short type)
|
||||||
{
|
{
|
||||||
struct net_device *dev;
|
struct net_device *dev;
|
||||||
|
|
|
@ -296,6 +296,12 @@ static int llc_ui_bind(struct socket *sock, struct sockaddr *uaddr, int addrlen)
|
||||||
rc = -EAFNOSUPPORT;
|
rc = -EAFNOSUPPORT;
|
||||||
if (unlikely(addr->sllc_family != AF_LLC))
|
if (unlikely(addr->sllc_family != AF_LLC))
|
||||||
goto out;
|
goto out;
|
||||||
|
rc = -ENODEV;
|
||||||
|
rtnl_lock();
|
||||||
|
llc->dev = dev_getbyhwaddr(addr->sllc_arphrd, addr->sllc_mac);
|
||||||
|
rtnl_unlock();
|
||||||
|
if (!llc->dev)
|
||||||
|
goto out;
|
||||||
if (!addr->sllc_sap) {
|
if (!addr->sllc_sap) {
|
||||||
rc = -EUSERS;
|
rc = -EUSERS;
|
||||||
addr->sllc_sap = llc_ui_autoport();
|
addr->sllc_sap = llc_ui_autoport();
|
||||||
|
|
Reference in New Issue