Quoting Karlan Mitchell from ml.softs.gtk-gnutella.devel: :I'm have almost zero experience with Configure except for "./configure :&& make && su -c 'make install'", so if I was to port the project to :Win32, I wouldn't depend on Configure, since most Win32 systems are :extremly similar, and most head aren't interested in source. (also, I'm :a mingw32 person myself)
GTKG does not use GNU autoconf but metaconfig. The generated Configure script does not support cross-compiling currently, as it probes the current environment of the machine. Therefore, the road opened by Jeroen to freeze a config.sh (generated by Configure normally) for cross-compiling is a good idea because it can be fed to Configure for file expansion. :Second, the tree hashing functions I am writing are for a seperate P2P :network, so the THEX parsing/creation code will not be included (because :I'm not fond of it........); I know that GNUtella has an extension :protocol.......I know many will not approve of this, but how about a :temporary extension for tree hashing for gtk-gnutella not using XML....... gtk-gnutella is one program among the Gnutella network. The Gnutella network has made some choices regarding how some data must be exchanged and what the format is. I'm not fond of XML either, but when it comes to inter-operability, we need to stick to whatever other vendors are doing. Therefore, THEX is a necessary evil. Note that the XML in THEX is just an encapsulation of the binary hash tree, so it's not entirely bad. :Also, because I am writing my own P2P network, I would like to see your :views on THEX, and tree hashing (such as good byte resolutions for file :sizes, and depth resoultion). I, personally, do not like using :standards such XML in an environment such as this; however, I still :understand the purpose, but the overhead just seems to much.......... The most important part of THEX is the binary hash tree, and it is what will take up most of the size. In Gnutella, the binary hash tree is made up by using 1kB file blocks. The tree is then made by hashing the hash of those blocks up to the root. In general, servents limit the depth of the tree to 10 levels. You don't need to store physically the whole tree, just the leaves, and the root hash maybe, and can recompute the tree on demand as there's only a small amount of data to hash. Like I said, computing the tree for files shared is easy. Verifying files against a tree is relatively easy, identifying which parts need to be discarded and reloaded is trivial. What is NOT easy is the part regarding the advertisement of hash trees and organizing their retrieval and offer on the network. It is also the most important part, in that if you have everything else, that's good but only a pre-requisite to that step. Raphael ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid3432&bid#0486&dat1642 _______________________________________________ Gtk-gnutella-devel mailing list Gtk-gnutella-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gtk-gnutella-devel