linux-can-fixes-for-4.9-20161207
-----BEGIN PGP SIGNATURE----- iQFHBAABCgAxFiEES2FAuYbJvAGobdVQPTuqJaypJWoFAlhH2rkTHG1rbEBwZW5n dXRyb25peC5kZQAKCRA9O6olrKklasABCAClCaAGYAOuMLWXJ9mL1K7o2u+s6M93 bSZQfke8ffFv0vNa35HLH8vXCh3QBl8BEZkN0XuXQwRSiewsWQz/W5hMZ9UcfgdR lml6v/jaQ0nai5UrdSHJqXwm21e3M/ELFn5dE0esp1p7lSITRAbTPSyN2kNhiGyv HLMXFPopCGEbInyo+5QA17xTPGUdMNE6J8rnRPKnMzbLgyRgZ3Jwy0furKAbzTY7 4eFiERuBErRB/tD3+oxFICcB5zyvqawnXZp+gsg5o8vm7DGZU4/WXbxOQOgwx1fK Nw4/9FXPxUxXB925JMIn/bxjNi0OK9M96Q7bMpoa8Ik/CCkV/zKdKxIt =0RcO -----END PGP SIGNATURE----- Merge tag 'linux-can-fixes-for-4.9-20161207' of git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can Marc Kleine-Budde says: ==================== pull-request: can 2016-12-07 Andrey Konovalov triggered a warning in the CAN RAW layer, which is fixed by a patch by me. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Коммит
233900d885
|
@ -196,5 +196,6 @@ struct can_filter {
|
||||||
};
|
};
|
||||||
|
|
||||||
#define CAN_INV_FILTER 0x20000000U /* to be set in can_filter.can_id */
|
#define CAN_INV_FILTER 0x20000000U /* to be set in can_filter.can_id */
|
||||||
|
#define CAN_RAW_FILTER_MAX 512 /* maximum number of can_filter set via setsockopt() */
|
||||||
|
|
||||||
#endif /* !_UAPI_CAN_H */
|
#endif /* !_UAPI_CAN_H */
|
||||||
|
|
|
@ -499,6 +499,9 @@ static int raw_setsockopt(struct socket *sock, int level, int optname,
|
||||||
if (optlen % sizeof(struct can_filter) != 0)
|
if (optlen % sizeof(struct can_filter) != 0)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
|
if (optlen > CAN_RAW_FILTER_MAX * sizeof(struct can_filter))
|
||||||
|
return -EINVAL;
|
||||||
|
|
||||||
count = optlen / sizeof(struct can_filter);
|
count = optlen / sizeof(struct can_filter);
|
||||||
|
|
||||||
if (count > 1) {
|
if (count > 1) {
|
||||||
|
|
Загрузка…
Ссылка в новой задаче