On 6/18/07, Quentin Mathé <[EMAIL PROTECTED]> wrote: > Le 10 juin 07 à 19:21, Yen-Ju Chen a écrit : > > > I recently try to transfer data in P2P style. > > It is more-or-less like iTunes where you can share data (playlist > > in this case). > > I think it may be useful for Etoile in general. > > I was planing to do distributed object over zeroconf > > and realized distributed object is too simple for larger data. > > Users may want to set password, stop transfer in the middle, etc. > > So I take a look of XML-RPC and SOAP, which seems to be useful. > > Any comment on it ? > > I was considering XMPP, but for P2P, an embedded server is needed. > > And I think Jabber server is just too big for such simple operation. > > > > These two libraries seems to fit. > > They all have an embedded HTTP server. > > > > http://csoap.sourceforge.net/index.php > > http://xmlrpc-c.sourceforge.net/ > > GNUstep GSXMLRPC here: <http://www.gnustep.org/resources/ > documentation/Developer/BaseAdditions/Reference/index.html> > > I'm not sure my proposal below makes sense, but that's just a quick > thought I had about your idea. > May be Distributed Object can be extended to provide stuff like user > authentification, fine control over data transfer. This could be > possibly done by delegating such stuff to some XML-RPC-based > subsystem. By the way this would also provide a reusable solution > (protocol and UI) to access remote objects when user authentification > is needed.
With XML-RPC, you still need an embedded web server. I got this one: shttpd (http://shttpd.sourceforge.net/). I am playing with SSL support now. You can try it in koelr (http://code.google.com/p/koelr/) under ShareKit. There is a test application whether you can access through Bonjour (Safari support it). It poses as a web server for now (_http._tcp). You may need to change the port since SSL is not ready yet. I figure if I can get an embedded server, we don't really need to use XML-RPC. It is much easier to communicate with property list straight. And since it is for P2P, there is no reason to use XML-RPC because we are not expecting a third-party application. So the client find the server with zeroconf, request a page using url as standard HTTP, then the server return a property list in XML format (text/xml) (An application is a client and server by the way). If client want a big file (PDF, Movie), then it just use standard HTTP to get it. There is a webserver library in GNUstep. Unfortunately, the SSL part from GNUstep is not portable on Mac. So I decide to use shttpd as embedded web server. And for client part, I use libcurl, again, because of SSL support. Mac seems to have a SecurityInterface.framework for SSL. There is a ConnectionKit (http://opensource.utr-software.com/connection/), but I think it only works on Mac using some CoreFoundation stuff. Yen-Ju > > Cheers, > Quentin. > > > > _______________________________________________ > Etoile-discuss mailing list > [email protected] > https://mail.gna.org/listinfo/etoile-discuss > _______________________________________________ Etoile-discuss mailing list [email protected] https://mail.gna.org/listinfo/etoile-discuss
