diff options
Diffstat (limited to 'net/rose')
-rw-r--r-- | net/rose/af_rose.c | 8 | ||||
-rw-r--r-- | net/rose/rose_dev.c | 2 | ||||
-rw-r--r-- | net/rose/rose_subr.c | 4 |
3 files changed, 6 insertions, 8 deletions
diff --git a/net/rose/af_rose.c b/net/rose/af_rose.c index 3077878ed4f0..5acb1680524a 100644 --- a/net/rose/af_rose.c +++ b/net/rose/af_rose.c | |||
@@ -1243,7 +1243,7 @@ static int rose_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg) | |||
1243 | amount = sk->sk_sndbuf - atomic_read(&sk->sk_wmem_alloc); | 1243 | amount = sk->sk_sndbuf - atomic_read(&sk->sk_wmem_alloc); |
1244 | if (amount < 0) | 1244 | if (amount < 0) |
1245 | amount = 0; | 1245 | amount = 0; |
1246 | return put_user(amount, (unsigned int __user *)argp); | 1246 | return put_user(amount, (unsigned int __user *) argp); |
1247 | } | 1247 | } |
1248 | 1248 | ||
1249 | case TIOCINQ: { | 1249 | case TIOCINQ: { |
@@ -1252,13 +1252,11 @@ static int rose_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg) | |||
1252 | /* These two are safe on a single CPU system as only user tasks fiddle here */ | 1252 | /* These two are safe on a single CPU system as only user tasks fiddle here */ |
1253 | if ((skb = skb_peek(&sk->sk_receive_queue)) != NULL) | 1253 | if ((skb = skb_peek(&sk->sk_receive_queue)) != NULL) |
1254 | amount = skb->len; | 1254 | amount = skb->len; |
1255 | return put_user(amount, (unsigned int __user *)argp); | 1255 | return put_user(amount, (unsigned int __user *) argp); |
1256 | } | 1256 | } |
1257 | 1257 | ||
1258 | case SIOCGSTAMP: | 1258 | case SIOCGSTAMP: |
1259 | if (sk != NULL) | 1259 | return sock_get_timestamp(sk, (struct timeval __user *) argp); |
1260 | return sock_get_timestamp(sk, (struct timeval __user *)argp); | ||
1261 | return -EINVAL; | ||
1262 | 1260 | ||
1263 | case SIOCGIFADDR: | 1261 | case SIOCGIFADDR: |
1264 | case SIOCSIFADDR: | 1262 | case SIOCSIFADDR: |
diff --git a/net/rose/rose_dev.c b/net/rose/rose_dev.c index a8ed9a1d09f9..d297af737d10 100644 --- a/net/rose/rose_dev.c +++ b/net/rose/rose_dev.c | |||
@@ -149,6 +149,6 @@ void rose_setup(struct net_device *dev) | |||
149 | dev->set_mac_address = rose_set_mac_address; | 149 | dev->set_mac_address = rose_set_mac_address; |
150 | 150 | ||
151 | /* New-style flags. */ | 151 | /* New-style flags. */ |
152 | dev->flags = 0; | 152 | dev->flags = IFF_NOARP; |
153 | dev->get_stats = rose_get_stats; | 153 | dev->get_stats = rose_get_stats; |
154 | } | 154 | } |
diff --git a/net/rose/rose_subr.c b/net/rose/rose_subr.c index 02891ce2db37..36a77944622b 100644 --- a/net/rose/rose_subr.c +++ b/net/rose/rose_subr.c | |||
@@ -337,13 +337,13 @@ static int rose_parse_ccitt(unsigned char *p, struct rose_facilities_struct *fac | |||
337 | memcpy(&facilities->source_addr, p + 7, ROSE_ADDR_LEN); | 337 | memcpy(&facilities->source_addr, p + 7, ROSE_ADDR_LEN); |
338 | memcpy(callsign, p + 12, l - 10); | 338 | memcpy(callsign, p + 12, l - 10); |
339 | callsign[l - 10] = '\0'; | 339 | callsign[l - 10] = '\0'; |
340 | facilities->source_call = *asc2ax(callsign); | 340 | asc2ax(&facilities->source_call, callsign); |
341 | } | 341 | } |
342 | if (*p == FAC_CCITT_SRC_NSAP) { | 342 | if (*p == FAC_CCITT_SRC_NSAP) { |
343 | memcpy(&facilities->dest_addr, p + 7, ROSE_ADDR_LEN); | 343 | memcpy(&facilities->dest_addr, p + 7, ROSE_ADDR_LEN); |
344 | memcpy(callsign, p + 12, l - 10); | 344 | memcpy(callsign, p + 12, l - 10); |
345 | callsign[l - 10] = '\0'; | 345 | callsign[l - 10] = '\0'; |
346 | facilities->dest_call = *asc2ax(callsign); | 346 | asc2ax(&facilities->dest_call, callsign); |
347 | } | 347 | } |
348 | p += l + 2; | 348 | p += l + 2; |
349 | n += l + 2; | 349 | n += l + 2; |