diff options
author | Bruce M Simpson <bms@FreeBSD.org> | 2009-09-18 15:12:31 +0000 |
---|---|---|
committer | Bruce M Simpson <bms@FreeBSD.org> | 2009-09-18 15:12:31 +0000 |
commit | 99bf30cf01af2495b03b6bfc6e4af0d6d79f450b (patch) | |
tree | 228c4844ad62e0f146a9cfdb7b8388bb30d699f3 /sys/netinet/in_mcast.c | |
parent | 6877964545c030d0197ba4b9d052fee08bb51d9f (diff) | |
download | src-99bf30cf01af2495b03b6bfc6e4af0d6d79f450b.tar.gz src-99bf30cf01af2495b03b6bfc6e4af0d6d79f450b.zip |
Return ENOBUFS consistently if user attempts to exceed
in_mcast_maxsocksrc resource limit.
Submitted by: syrinx
MFC after: 3 days
Notes
Notes:
svn path=/head/; revision=197314
Diffstat (limited to 'sys/netinet/in_mcast.c')
-rw-r--r-- | sys/netinet/in_mcast.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/netinet/in_mcast.c b/sys/netinet/in_mcast.c index e855093a1c3e..2ef6d3a4e571 100644 --- a/sys/netinet/in_mcast.c +++ b/sys/netinet/in_mcast.c @@ -2427,8 +2427,10 @@ inp_set_source_filters(struct inpcb *inp, struct sockopt *sopt) if (error) return (error); - if (msfr.msfr_nsrcs > in_mcast_maxsocksrc || - (msfr.msfr_fmode != MCAST_EXCLUDE && + if (msfr.msfr_nsrcs > in_mcast_maxsocksrc) + return (ENOBUFS); + + if ((msfr.msfr_fmode != MCAST_EXCLUDE && msfr.msfr_fmode != MCAST_INCLUDE)) return (EINVAL); |