I can't help you with C or a full tutorial, but you should be able to get good GNU/Linux C++ help from the gtk-gnutella folks:
-
gtk-gnutella - The Graphical Unix Gnutella Client
Also there should be some people in #gtk-gnutella on freenode (IRC). From my experience they are a bit rough at times, but very helpful.
If you find a tutorial via them (or decide to write one yourself), please link to it in here.