diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2022-11-20 15:38:36 +0000 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2022-11-20 15:38:36 +0000 |
commit | 98a66671cf6900b6239ac1b48638ffa835e75c27 (patch) | |
tree | e2e11db47365f6187bcec0bf49fdb86d8790202e /sys/src/9/ip/ip.h | |
parent | 0ed8a3bd7b1bbe2a3857f2abcaabdc4edd2d8b05 (diff) |
devip: lilu dallas multicast.
Allow accepting udp "connections" using a multicast local address.
Before, it was only possible to receive multicast using the headers
option. Having a connection orirented stream can be very usefull
when receiving multicast audio data. One gets a "connection" for
every source.
Implement (optional) support for IGMPv2 and MLDv1.
This can be usefull if bridges on the network have IGMP/MLD snooping
enabled, and wont forward multicast traffic unless we report what
we excpect. This is experimental for now, so the igmp protocol
must be manually added to the kernel configuration.
Diffstat (limited to 'sys/src/9/ip/ip.h')
-rw-r--r-- | sys/src/9/ip/ip.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/src/9/ip/ip.h b/sys/src/9/ip/ip.h index bf4b2cea3..a75d59b89 100644 --- a/sys/src/9/ip/ip.h +++ b/sys/src/9/ip/ip.h @@ -725,6 +725,7 @@ extern int ipv6local(Ipifc *ifc, uchar *local, int prefixlen, uchar *remote); extern Iplifc* iplocalonifc(Ipifc *ifc, uchar *ip); extern Iplifc* ipremoteonifc(Ipifc *ifc, uchar *ip); extern int ipproxyifc(Fs *f, Ipifc *ifc, uchar *ip); +extern Ipmulti* ipifcgetmulti(Fs *f, Ipifc *ifc, uchar *ma); extern void ipifcremmulti(Conv *c, uchar *ma, uchar *ia); extern void ipifcaddmulti(Conv *c, uchar *ma, uchar *ia); extern char* ipifcrem(Ipifc *ifc, char **argv, int argc); @@ -777,4 +778,4 @@ extern Chan* chandial(char*, char*, char*, Chan**); /* * global to all of the stack */ -extern void (*igmpreportfn)(Ipifc*, uchar*); +extern void (*multicastreportfn)(Fs*, Ipifc*, uchar*, uchar*, int); |