Add hasupload.
[doldaconnect.git] / README
CommitLineData
a56bedc9 1 Dolda Connect - README
2
3 Introduction
4
5Dolda Connect is a peer-to-peer file sharing program, designed around
6the Direct Connect protocol. It is written in a fashion that is
7intended for flexibility and easy extension. It currently only
8supports the normal Direct Connect protocol, but support is also
9planned for the ADC protocol, and it can most likely be made to
10support a great deal of other file sharing protocols as well.
11
12 Extensibility
13
14Dolda Connect is built around a client-server model, in the way that
15there is a server (daemon) program carrying out all the actual
16file-sharing work, and a number of client programs that connect to the
17server in order to command it and display its status. The interaction
18between the client and server is carried out using a well-defined
19protocol, making it fairly easy to write new clients for specialized
20tasks.
21
22To make it easier to write new clients, a C library has been written
23to make common functions easier, such as connecting, authenticating,
24sending requests and parsing the responses. The C library also has a
25wrapper module for GNU Guile, so that clients can be written in
a5b603ac 26Scheme. As of 0.3, there is also a Python module available seperately.
a56bedc9 27
28None of these are documented (yet), but there are a number of examples
29scattered around the source tree, so it should not be awfully hard to
30figure out how to do simple things. If in doubt, just contact the
31author.
32
33 Clients
34
35So far, the following clients are distributet along with the source
36tree:
37
38 * A Gtk2 based GUI, which loosely resembles a normal Direct Connect
39 client program.
40 * A GNOME panel applet for showing the status of current downloads in
41 progress.
42 * A Gaim chat plugin for chatting in hubs and writing private
43 messages.
44 * A command-line automatic downloader written in Scheme.
45 * A chat logger written in Scheme.
a5b603ac 46 * A hub manager written in Scheme.
a56bedc9 47
48The GNOME applet and Gaim plugin are somewhat experimental. The applet
49seems to be working well, but the installation have some quirks (since
50GNOME does not normally look in /usr/local, care must be taken with
51the installation prefix). The Gaim plugin has some performance issues
52and seems to be leaking some memory. The performance problems lie in
53Gaim itself, however, and the Gaim developers have indicated that they
54will be fixed in Gaim 2.0.0.
55
56 Installation
57
58See the INSTALL file.
59
4e75a4ae 60 Documentation
61
62Documentation is still spotty at best. For any information not found
63in the README or INSTALL files (or the source code, if you are a
64programmer), contact the author.
65
a56bedc9 66 Credits
67
68Dolda Connect is primarily written by Fredrik Tolf. He can be reached
69through the e-mail address <fredrik@dolda2000.com>. His homepage is
70<http://www.dolda2000.com/~fredrik/>.
71
72
73
a5b603ac 74This documented was last updated 2006-11-22, reflecting release 0.3 of
a56bedc9 75Dolda Connect.