nl_mgrp to crap if base multicast groups exceeded
Subsystems (2)
cheers,
jamal
[GENERAL] nl_mgrp to crap if base multicast groups exceeded
The old scheme of bitmasks works only for the first 32 groups. Above that the setsockopt scheme must be used.
Signed-off-by J Hadi Salim <[email protected]>
---
commit f3d272cea2870805677809bf121737fb6c36dc8e
tree b1e42d5c8d9122a600f2f81e04b0d197642b1878
parent 539bc1cc1b002700504ad8cbe82ea451026c5fe4
author Jamal Hadi Salim <[email protected]> Sun, 25 Feb 2007 11:50:53 -0500 committer Jamal Hadi Salim <[email protected]> Sun, 25 Feb 2007 11:50:53 -0500
include/utils.h | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-)
include/utils.h +6 -1
@@ -3,6 +3,7 @@#include <asm/types.h> #include <resolv.h> +#include <stdlib.h> #include "libnetlink.h" #include "ll_map.h"
@@ -129,7 +130,11 @@ static __inline__ int get_user_hz(void)static inline __u32 nl_mgrp (__u32 group) { -return group ? (1 << (group -1 )) :0 ; +if (group >31 ) { +fprintf (stderr,"Use setsockopt for this group %d\n" , group); +exit (-1 ); + } +return group ? (1 << (group -1 )) :0 ; }
Quoted 4 lines · On Sun, 25 Feb 2007 12:02:23 -0500 jamal <[email protected]> wrote:
cheers,
jamal
applied both patches
Signature · 1 line
Stephen Hemminger <[email protected]>