gtk-gnutella logo
Current version: 1.1.1

The Most Efficient Gnutella Client

gtk-gnutella is a server/client for Gnutella. It runs on Microsoft Windows and every Unix-like system which supports GTK+ (1.2 or above). The GNOME desktop environment is not required. It is currently developed and tested under Linux (Debian) as well as NetBSD. It is known to run at least on Linux, FreeBSD, NetBSD, Darwin, Solaris, Tru64 UNIX (OSF/1), SGI IRIX, BeOS whereas CPU architectures include x86, AMD64, PowerPC, SPARC, MIPS. And of course Microsoft Windows (XP at least).

gtk-gnutella is free open-source software and released under the GNU General Public License (GPL).

gtk-gnutella is not finished yet, but it is fully functional: you may share, search, and download. And it is stable too, users usually just leave it run unattended for days.

All ideas and comments are welcome to the gtk-gnutella-devel mailing list. Bugs should be reported to the Bug Tracker

We need additional contributors for C development and documentation


2 September 2014, Version 1.1.1 Released

This is mostly a bug-fixing release.

Bug Fixes
Under the Hood

2 July 2014, Version 1.1.0 Released

This is a major release introducing new features and making gtk-gnutella a multi-threaded application with drastic performance boosts for background tasks like file hashing or library rescanning.

Another major feature is the added support for the G2 search protcol: we are connecting to G2 hubs as a leaf, answer to search / browse requests from G2 hosts. We also use G2 to issue our own searches. Finally, we freely exchange files with G2 hosts (downloading and uploading).

The G2 protocol was further extended to make sure G2 query hits convey as much information as Gnutella query hits, in particular for alt-loc propagation and TLS support. The G2 semi-reliable UDP layer is also leveraging the new features designed for the corresponding Gnutella layer (cumulative and extended acknowledgments), gracefully falling back to legacy features if the remote host is not able to understand the new features.

A critical bug was fixed: reception of carefully crafted invalid DHT messages would lead to an immediate crash, an open door for Denial of Service (DoS) attacks. That bug has been present since 0.97 (release of August 2011).

Last but not least, the code base has now been checked by Coverity. There was a very low defect rate of 0.26 (amount of true defects per thousand lines of code) and all problems were fixed.

New Features
Bug Fixes
Under the Hood

31 December 2013, Version 1.0.1 Released

This is a minor release correcting a grave bug causing gtk-gnutella to think all other gtk-gnutella out there are hostile.

Other minor improvements are present, as well as low-level bug fixes. The most visible change is that filenames with parentheses are now mangled to have the parentheses turned into brackets, instead of being left as-is. This allows filename cut-n-paste into shell commands, without having to use the shell auto-completion to escape the parentheses.

Bug Fixes
Under the Hood

Older news... Logo   Glade   Valid HTML 4.01   Valid CSS RSS Feed Available   Ohloh Metrics   Coverity Scan Build Status   gtk-gnutella at GitHub  
gtk-gnutella © 2000-2014 by Yann Grossel, Raphaël Manfredi and various contributors.