bingo! it's in <netinet/in.h>. just add #include <netinet/in.h>
to mcast.c and we should be good to go on solaris 5.8 5.9. those are exactly the definitions that i need... we want to support both ipv6 and ipv4 multicast so we code using both structures. -matt On Wed, 2004-08-04 at 13:25, Adesanya, Adeyemi wrote: > Matt, > > The closest match I found (same on 5.8 and 5.9) is in > /usr/include/netinet/in.h . The following structs are > defined: > > #if !defined(_XPG4_2) || defined(__EXTENSIONS__) > /* > * Argument structure for IP_ADD_MEMBERSHIP and IP_DROP_MEMBERSHIP. > */ > struct ip_mreq { > struct in_addr imr_multiaddr; /* IP multicast address of group */ > struct in_addr imr_interface; /* local IP address of interface */ > }; > > /* > * Argument structure for IPV6_JOIN_GROUP and IPV6_LEAVE_GROUP on > * IPv6 addresses. > */ > struct ipv6_mreq { > struct in6_addr ipv6mr_multiaddr; /* IPv6 multicast addr */ > unsigned int ipv6mr_interface; /* interface index */ > }; > > Is this similar to what you are using in Solaris 5.7? Can you get hold of > Solaris 5.9?? > > ---- > Yemi > > > -----Original Message----- > > From: Matt Massie [mailto:[EMAIL PROTECTED] > > Sent: Wednesday, August 04, 2004 10:14 AM > > To: Adesanya, Adeyemi > > Cc: 'Ganglia Developers' > > Subject: RE: [Ganglia-developers] 2.6.0 apr test > > > > yemi- > > > > i'm using an older version of solaris (i think it's 5.7) so > > they must have moved the mreq definition to another header > > file. if you run the command... > > > > % find /usr/include -name "*.h" -exec grep -l "mreq" {} \; > > > > you'll get a list of header files that have the mreq > > structure definition. you'll need to glance inside the > > header files to see which one really has the struct > > definition and not just references the mreq structure. > > > > when you find the header file... add it to the mcast.c file inside the > > > > #ifdef SOLARIS2 > > ... > > #endif > > > > block. > > > > that should fix it. thanks so much for your effort! > > > > -matt > > > > On Tue, 2004-08-03 at 17:39, Adesanya, Adeyemi wrote: > > > Hi Matt. > > > > > > I tried compiling your apr test below on Solaris (5.9 & > > 5.8) and it fails to compile mcast.c with the following error: > > > > > > mcast.c: In function `apr_multicast_join': > > > mcast.c:57: parse error before `struct' > > > mcast.c:60: `mreq' undeclared (first use in this function) > > > mcast.c:60: (Each undeclared identifier is reported only once > > > mcast.c:60: for each function it appears in.) > > > mcast.c:63: `ifreq' undeclared (first use in this function) > > > > > > What's missing? Do I need to supply additional configure arguments? > > > > > > ---- > > > Yemi > > > > > > > -----Original Message----- > > > > From: Matt Massie [mailto:[EMAIL PROTECTED] > > > > Sent: Monday, July 26, 2004 3:10 PM > > > > To: Ganglia Developers > > > > Subject: [Ganglia-developers] 2.6.0 apr test > > > > > > > > guys- > > > > > > > > the apache runtime (apr.apache.org) doesn't support multicast > > > > although it supports UDP sockets. i've added the > > multicast support > > > > but it raises a few issues. > > > > > > > > the latest snapshot is at > > > > http://matt-massie.com/ganglia/ganglia-apr-2.6.0.tar.gz > > > > > > > > i've tested it on linux and solaris. unfortunately, the > > workstation > > > > that i installed freebsd on is temporarily hosed (bad fan) so i > > > > wasn't able to test it there. > > > > > > > > the only file that i added can be found in > > > > ./srclib/apr/network_io/unix/mcast.c. > > > > > > > > if you look at the source you'll see i need to include a > > header file > > > > from the apr source (#include "apr_arch_networkio.h"). i > > need the > > > > structures defined in this header file in order to setup the > > > > multicast sockets. > > > > unfortunately, this is a private header file which is not > > installed > > > > during an apr installation. my hope is that over time > > the multicast > > > > cast code will be included into the apr code base. > > > > > > > > until then.. we might have problems with packages who want to use > > > > the current apr library ... since it will not have multicast > > > > support. > > > > > > > > if any of you have time and want to test > > non-linux/solaris systems, > > > > i'd appreciate it. to test this snapshot. > > > > > > > > 1. cd into ./gmond > > > > 2. open gmond.c and edit the parameters of the > > > > create_mcast_server_socket() call... the first three are > > > > mcast_channel, mcast_port, mcast_if. > > > > 3. ./configure and make > > > > > > > > when you run ./gmond/gmond you should get scrolling > > messages saying > > > > that it got a multicast message. > > > > > > > > i also have another question about the ganglia > > configuration file. > > > > i know that we've used dotconf in the past and it suited > > our needs > > > > but i'm worried about it's limitations. > > > > > > > > for example, it used an apache-like section syntax but it > > can only > > > > be one-level deep and the API is VERY awkward to work with. > > > > > > > > <Section> > > > > name "First Section" > > > > </Section> > > > > > > > > is allowed but > > > > > > > > <Section> > > > > name "First Section" > > > > <Section> > > > > name "Second Section" > > > > </Section> > > > > </Section> > > > > > > > > is not allowed. i think that could bite us in the arse > > in the future. > > > > > > > > does anyone have a favorite configuration file parser? > > > > > > > > i've found and tested libconfuse > > > > (http://www.nongnu.org/confuse/) and found it to work > > pretty well. > > > > the syntax would look more like... > > > > > > > > Section { > > > > name "Section One" > > > > Section { > > > > name "Section Two" > > > > } > > > > } > > > > > > > > which IS allowed. > > > > > > > > ideas? > > > > > > > > -matt > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > PGP fingerprint 'A7C2 3C2F 8445 AD3C 135E F40B 242A 5984 > > ACBC 91D3' > > > > > > > > They that can give up essential liberty to obtain a little > > > > temporary safety deserve neither liberty nor safety. > > > > --Benjamin Franklin, Historical Review of Pennsylvania, 1759 > > > > > > > > > > > > > ------------------------------------------------------- > > > This SF.Net email is sponsored by OSTG. Have you noticed > > the changes > > > on Linux.com, ITManagersJournal and NewsForge in the past > > few weeks? > > > Now, one more big change to announce. We are now OSTG- Open Source > > > Technology Group. Come see the changes on the new OSTG site. > > > www.ostg.com _______________________________________________ > > > Ganglia-developers mailing list > > > Ganglia-developers@lists.sourceforge.net > > > https://lists.sourceforge.net/lists/listinfo/ganglia-developers > > -- > > PGP fingerprint 'A7C2 3C2F 8445 AD3C 135E F40B 242A 5984 ACBC 91D3' > > > > They that can give up essential liberty to obtain a little > > temporary safety deserve neither liberty nor safety. > > --Benjamin Franklin, Historical Review of Pennsylvania, 1759 > > -- PGP fingerprint 'A7C2 3C2F 8445 AD3C 135E F40B 242A 5984 ACBC 91D3' They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety. --Benjamin Franklin, Historical Review of Pennsylvania, 1759
signature.asc
Description: This is a digitally signed message part