GNet is a simple network library. It is written in C, object-oriented, and built upon GLib. It is intended to be easy to use and port. GNet comes with documentation and examples. It is licensed under the GNU Library General Public License (LGPL).
GNet is not developed any further. You should not use it in new software.
GNet should be considered deprecated and has been replaced by the newly-added platform-independent network and socket abstraction layer in GLib/Gio (with the release of GLib 2.22), ie. Lowlevel platform-independent network support, DNS resolution, and Highlevel network functionality.
The latest release is GNet 2.0.8 (February 12, 2008)
- fully asynchronous
- TCP "client" and "server" sockets
- UDP and IP Multicast sockets
- High-level TCP connection and server objects
- Asynchronous socket IO
- Internet address abstraction
- Asynchronous DNS lookup
- IPv4 and IPv6 support
- Byte packing and unpacking
- URI parsing
- SHA and MD5 hashes
- Base64 encoding and decoding
- SOCKS support
- basic HTTP client
- has been ported to Linux, *BSD, MacOSX, Solaris, HP, and Windows. It may work on other flavors of Unix too.
GNet requires GLib 2.0 (there are old versions for glib-1.2, but those are ancient history). You can get GLib from the Gtk+ website or, if you have a system with packages (eg, Red Hat or Debian), look for the latest GLib package: it is usually called glib2-devel or libglib2.0-dev.
The latest release source tarballs can be found on the GNOME ftp server, the latest development snapshot can be obtained through the git repository: git clone git://git.gnome.org/gnet
Many Linux distributions (e.g. Debian) ship ready-made binary GNet packages. You can obtain them from your distro of choice. No up-to-date packages are available for Windows or Mac OS X (not from the GNet maintainers at least).
Click on the mailing list name to go to the mailing list's homepage. On this page you can subscribe, unsubscribe, and view the archives:
Bugs should be filed in GNOME bugzilla
Applications that use or used GNet (this list is most likely not up-to-date at all):
eDonkey2000 GTK GUI - eDonkey2000 (DFS) frontend
Gnome Chinese Checkers - board game
Gnome Jabber - instant messaging and chat
gtermix - telnet client for BBSes
Jungle Monkey - distributed file sharing program
Mail Notify - mail notification applet
MSI - multi-simulation interface
Pan - GNOME news reader
PreViking - telephony middleware
Sussen - network scanner
Workrave - work rest reminder
This wiki page replaces the former GNet web page at http://www.gnetlibrary.org
GNet is currently maintained by Tim Müller (tim centricular net). It was originally developed by David Helder (dhelder gizmolabs org).