On Mar 7, 2010, at 2:36 PM, Elliott Slaughter wrote: > What I am actually trying to do is to search for other nodes on the local > network which are also running my application. My idea was to construct one > or more broadcast addresses, send UDP packets to each of them, and listen for > responses. This may not be the best way to go about this (and suggestions > would be appreciated), but if I choose this route, I would want to know the > IP address of each of the interfaces together with its subnet mask. > > On 2010-03-07, at 07:20 , Elliott Slaughter wrote: > > if you really need this, you might look at the implementation for > %get-ip-interfaces in clozure. > it uses getifaddrs in a fairly transparent manner, so, if you're unix-based, > you should be ok with it. > > I need this to work on Windows and *nix, which is why I can't use IOlib or > other Unix-based solutions. That said, Clozure does run on Windows, so > hopefully the code you mentioned has already been ported.
There's an internal function ccl::%get-ip-interfaces that's conditionalized for a bunch of platforms. I can't really recommend that you use it, of course, but it might be something to look at. I wonder if you could use zeroconf/bonjour? It sounds like your application might be a good fit. There's a reference to a CL interface at http://www.cliki.net/CL-ZEROCONF (though I don't know how complete/portable it is). _______________________________________________ usocket-devel mailing list usocket-devel@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/usocket-devel