This is the mail archive of the glibc-bugs@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libc/211] IP SSM multicast, IGMPv3, RFC3678 support missing


------- Additional Comments From terpstra at gkec dot tu-darmstadt dot de  2004-07-13 09:31 -------
Subject: Re:  IP SSM multicast support missing

On Mon, Jul 12, 2004 at 11:50:41PM -0000, cra at wpi dot edu wrote:
> ------- Additional Comments From cra at wpi dot edu  2004-07-12 23:50 -------
> sockio.h ioctl interface is obsolete according to this:
> 
> http://www.uwsg.indiana.edu/hypermail/linux/kernel/0407.1/1084.html

This does not say that the setsockopt interface is obsolete.
It is not.

The patch I included added the options and structures needed to use the
setsockopt interface. There is also a full-state interface I did not do.

The setsockopt defines and structures I attached ARE included in the kernel
and conform to RFC 3678 which (afaik) is not obsolete. Please note that RFC
3678 is recent (Jan, 2004) and should represent the current state of the art.

The SIOC??MSFILTER interface is mentioned in Section 8 Appendix A of RFC
3678 as historic. I can believe that it is obsolete since it is not included
in the kernel tree.

These interfaces are not the same.

There are three interfaces to multicast:
	Delta based (very old, but still used and in kernel) -- my patch
	Full-state based [old] -- what is mentioned in that email
	Full-state based [new] -- still needs to be dealt with

The full-state interface is missing, it is:

#include <netinet/in.h>

int setipv4sourcefilter(int s, struct in_addr interface,
                        struct in_addr group, uint32_t fmode,
                        uint32_t numsrc, struct in_addr *slist);
int getipv4sourcefilter(int s, struct in_addr interface,
                        struct in_addr group, uint32_t *fmode,
                        uint32_t *numsrc, struct in_addr *slist);

int setsourcefilter(int s, uint32_t interface,
                    struct sockaddr *group, socklen_t grouplen,
                    uint32_t fmode, uint_t numsrc,
                    struct sockaddr_storage *slist);
                    uint32_t *numsrc, struct in_addr *slist);
int getsourcefilter(int s, uint32_t interface,
                    struct sockaddr *group, socklen_t grouplen,
                    uint32_t fmode, uint_t *numsrc,
                    struct sockaddr_storage *slist);



-- 


http://sources.redhat.com/bugzilla/show_bug.cgi?id=211

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]