diff options
Diffstat (limited to 'net/appletalk')
-rw-r--r-- | net/appletalk/ddp.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/net/appletalk/ddp.c b/net/appletalk/ddp.c index 4c8c6e390..b9ef2efd5 100644 --- a/net/appletalk/ddp.c +++ b/net/appletalk/ddp.c @@ -894,7 +894,7 @@ int atif_ioctl(int cmd, void *arg) else { limit = ntohs(nr->nr_lastnet); - if(limit - ntohs(nr->nr_firstnet) > 256) + if(limit - ntohs(nr->nr_firstnet) > 4096) { printk(KERN_WARNING "Too many routes/iface.\n"); return (-EINVAL); @@ -938,6 +938,8 @@ int atif_ioctl(int cmd, void *arg) return (-EPERM); if(sa->sat_family != AF_APPLETALK) return (-EINVAL); + if (atif == NULL) + return (-EADDRNOTAVAIL); /* * for now, we only support proxy AARP on ELAP; @@ -987,6 +989,8 @@ int atif_ioctl(int cmd, void *arg) return (-EPERM); if(sa->sat_family != AF_APPLETALK) return (-EINVAL); + if (atif == NULL) + return (-EADDRNOTAVAIL); /* * give to aarp module to remove proxy entry |