diff options
Diffstat (limited to 'net/rose/af_rose.c')
-rw-r--r-- | net/rose/af_rose.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/net/rose/af_rose.c b/net/rose/af_rose.c index 01392649b462..0f36e8d59b29 100644 --- a/net/rose/af_rose.c +++ b/net/rose/af_rose.c | |||
@@ -1124,6 +1124,10 @@ static int rose_sendmsg(struct kiocb *iocb, struct socket *sock, | |||
1124 | 1124 | ||
1125 | /* Build a packet */ | 1125 | /* Build a packet */ |
1126 | SOCK_DEBUG(sk, "ROSE: sendto: building packet.\n"); | 1126 | SOCK_DEBUG(sk, "ROSE: sendto: building packet.\n"); |
1127 | /* Sanity check the packet size */ | ||
1128 | if (len > 65535) | ||
1129 | return -EMSGSIZE; | ||
1130 | |||
1127 | size = len + AX25_BPQ_HEADER_LEN + AX25_MAX_HEADER_LEN + ROSE_MIN_LEN; | 1131 | size = len + AX25_BPQ_HEADER_LEN + AX25_MAX_HEADER_LEN + ROSE_MIN_LEN; |
1128 | 1132 | ||
1129 | if ((skb = sock_alloc_send_skb(sk, size, msg->msg_flags & MSG_DONTWAIT, &err)) == NULL) | 1133 | if ((skb = sock_alloc_send_skb(sk, size, msg->msg_flags & MSG_DONTWAIT, &err)) == NULL) |
@@ -1587,8 +1591,7 @@ static int __init rose_proto_init(void) | |||
1587 | char name[IFNAMSIZ]; | 1591 | char name[IFNAMSIZ]; |
1588 | 1592 | ||
1589 | sprintf(name, "rose%d", i); | 1593 | sprintf(name, "rose%d", i); |
1590 | dev = alloc_netdev(sizeof(struct net_device_stats), | 1594 | dev = alloc_netdev(0, name, rose_setup); |
1591 | name, rose_setup); | ||
1592 | if (!dev) { | 1595 | if (!dev) { |
1593 | printk(KERN_ERR "ROSE: rose_proto_init - unable to allocate memory\n"); | 1596 | printk(KERN_ERR "ROSE: rose_proto_init - unable to allocate memory\n"); |
1594 | rc = -ENOMEM; | 1597 | rc = -ENOMEM; |