Code Review
/
kvmfornfv.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Upgrade to 4.4.50-rt62
[kvmfornfv.git]
/
kernel
/
net
/
can
/
raw.c
diff --git
a/kernel/net/can/raw.c
b/kernel/net/can/raw.c
index
2e67b14
..
e9403a2
100644
(file)
--- a/
kernel/net/can/raw.c
+++ b/
kernel/net/can/raw.c
@@
-190,7
+190,7
@@
static int raw_enable_filters(struct net_device *dev, struct sock *sk,
for (i = 0; i < count; i++) {
err = can_rx_register(dev, filter[i].can_id,
filter[i].can_mask,
for (i = 0; i < count; i++) {
err = can_rx_register(dev, filter[i].can_id,
filter[i].can_mask,
- raw_rcv, sk, "raw");
+ raw_rcv, sk, "raw"
, sk
);
if (err) {
/* clean up successfully registered filters */
while (--i >= 0)
if (err) {
/* clean up successfully registered filters */
while (--i >= 0)
@@
-211,7
+211,7
@@
static int raw_enable_errfilter(struct net_device *dev, struct sock *sk,
if (err_mask)
err = can_rx_register(dev, 0, err_mask | CAN_ERR_FLAG,
if (err_mask)
err = can_rx_register(dev, 0, err_mask | CAN_ERR_FLAG,
- raw_rcv, sk, "raw");
+ raw_rcv, sk, "raw"
, sk
);
return err;
}
return err;
}
@@
-499,6
+499,9
@@
static int raw_setsockopt(struct socket *sock, int level, int optname,
if (optlen % sizeof(struct can_filter) != 0)
return -EINVAL;
if (optlen % sizeof(struct can_filter) != 0)
return -EINVAL;
+ if (optlen > CAN_RAW_FILTER_MAX * sizeof(struct can_filter))
+ return -EINVAL;
+
count = optlen / sizeof(struct can_filter);
if (count > 1) {
count = optlen / sizeof(struct can_filter);
if (count > 1) {