gtk-gnutella logo
Aktuelle Version: 1.2.3

Der grafische Gnutella-Client für Unix

gtk-gnutella ist ein Server/Client für Gnutella. Es läuft auf jedem Unix-ähnlichen System sofern GTK+ (1.2 oder neuer) und libxml installiert sind. Die Desktopumgebung GNOME wird nicht benötigt. gtk-gnutella wird derzeit hauptsächlich unter Linux (Debian) sowie NetBSD entwickelt und getestet. Es ist unter Linux, FreeBSD, NetBSD, Darwin, Solaris, Tru64 UNIX (OSF/1), SGI IRIX, BeOS nutzbar; zu den unterstützten CPU-Architekturen gehören unter anderem x86, AMD64, PowerPC, SPARC, MIPS.

gtk-gnutella wird unter der GNU General Public License (GPL) veröffentlicht.

Die Entwicklung von gtk-gnutella ist noch nicht abgeschlossen, aber es ist vollständig nutzbar: Sowohl die Suche als auch das Herunterladen und Anbieten eigener Dateien ist möglich. Es läuft stabil und kann normalerweise tagelang unbeaufsichtigt betrieben werden.

Vorschläge und Kommentare sind auf der gtk-gnutella-devel Mailing-Liste willkommen. Programmfehler sollten möglichst per SourceForge.net Bug Tracker gemeldet werden.

Wer sich an der Entwicklung in C, der Übersetzung oder der Dokumentation beteiligen möchte und etwas Erfahrung mitbringt, ist herzlich willkommen!

Neuigkeiten

3 March 2024, Version 1.2.3 Released

This is a maintenance release with minor bug fixes.

Improvements
Bug Fixes
Under the Hood

25 February 2022, Version 1.2.2 Released

This is a maintenance release with major bug fixes.

There were several shortcomings with bandwidth management: capping was not performed correctly and could overuse uploading bandwidth. Also when the DHT is turned off or on, we need to recompute proper bandwidth stealing.

Corruption of the DHT disk databases could also lead to a crash.

There was a critical old bug in the Dynamic Querying layer that affected Ultrapeers mostly: we could corrupt memory and/or crash when the current node was removed and we were processing a Dynamic Query for that node. This is more likely to happen when running as an Ultrapeer but it could also affect nodes running as leaves, although the probability of that bug happening is much less in that case.

Finally, it is best to not iterate on a global list that could get changed due to a node removal. This was the case when sending pongs to neighbouring nodes, so we now take a private copy.

Improvements
Bug Fixes
Under the Hood

12 July 2021, Version 1.2.1 Released

This is a maintenance release with minor bug fixes.

Note that our project IRC #gtk-gnutella channel is now on irc.libera.chat.

When launching gtk-gnutella and there is a stale lockfile present, listing some PID, and it happens that there is already another process running under this PID, we abort, complaining that another gtk-gnutella is running. However, if the lockfile is really stale, and the PID listed in there has nothing to do with gtk-gnutella at the moment, the user will need to remove the stale lockfile. Hence we show them the command to run, listing the full lockfile path so that it is easy to overcome this little inconvenience!

When using hashtables for memory management, it was possible to trigger a resizing and, during the course of operations, have further memory used, requiring tracking of new items in the same hashtable we were in the process of resizing. That led to double VMM freeing of the region used to store the data.

Add properties to track bytes exchanged by schedulers. These properties track the amount of bytes exchanged by session and are reset to 0 whenever a new user session starts. It allows users to see the actual amount of data consumed by running gtk-gnutella sessions, programatically via the shell interface.

Add -t switch to shell "status" command: this displays the total amount of bandwidth consumed during the session for the different schedulers.

Improvements
Bug Fixes
Under the Hood

Ältere Meldungen...

Users Love Us Community Choice SF Favourite Community Leader Open Source Excellence SourceForge.net Logo RSS Feed Available Open Hub metrics Coverity Scan Build Status gtk-gnutella at GitHub
gtk-gnutella © 2000-2014 Yann Grossel, Raphaël Manfredi und viele Mitwirkende.