NAME
P2P::pDonkeyS - eDonkey server, based on Net::Server::Multiplex
with MySQL database.
SYNOPSIS
mysql -u root -p <makedb.sql
pdonkeys --setsid=1 --log_file=/tmp/pdonkeys.log --pid_file=/tmp/pdonkeys.pid
pdonkeys --conf_file=pdonkeys.conf
kill `cat /tmp/pdonkeys.pid`
mysql -u root -p <dropdb.sql
OBTAINING
Visit http://sourceforge.net/projects/pdonkey/ for the latest version.
FEATURES
- o MySQL file and client storage.
- o Multiplex server architecture.
- o Receive multiple server.met files from URL.
DESCRIPTION
pDonkeyS is perl implementation of eDonkey server. It is built upon Net::Server::Multiplex
and utilizes the power of MySQL for storing, fetching and searching shares.
The main goal of the server is to provide framework for further eDonkey protocol exploration, but it could be usefull in testing of client software, since the server can be configured to output very detailed debug info about eDonkey traffic.
ARGUMENTS
There are two possible ways to pass arguments to pdonkeys
. They are passing on command line or using a conf file. pdonkeys
accepts all Net::Server
and Net::Server::Proto::UDP
arguments plus eDonkey specific arguments.
While passing arguments to pdonkeys
on command line, arguments specified in form --argument=value
.
While using configuration file, arguments specified in form argument value
or argument=value
. One argument per line.
eDonkey Arguments
- name
-
Name of server which will displayed in the server list of the clients.
- desc
-
Description of server which will displayed in the server list of the clients.
- maxClients
-
The maximum number of clients, connected to server. Default is 6000.
- thisIP
-
The IP of this server. This is only needed if the server determines its own IP incorrectly. Default received from
hostname()
. - welcome
-
The message that each client that logs on to the server will be sent.
- statusTimeout
-
The interval between server status updates to clients. Defauls is 60.
- serverMet
-
URL of server.met file. Multiple options allowed. Server list updates from specified URLs at start and each
serverListTimeout
seconds. Timeout is set to 10 seconds. server.met loads blocks the server, so if source don't response, there will be 10 seconds lag for eachserverMet
argument. - serverListTimeout
-
The interval between server list updates on server. Default is 86400 - once a day.
Database Access Arguments
- dbName
-
The database source for
DBI::connect()
. For details check DBI. Default is "dbi:mysql:pDonkey". - dbUser
-
User to use for access to
dbName
. Default is "pDonkeyS". - dbAuth
-
Password to use for access to
dbName
. Default is "pDonkeySPass".
TODO
- o Multiline string arguments (
Net::Server
fix). - o Multiple port pairs (tcp/udp) via configuration file.
- o Proxy mode (work with other eDonkey servers as client).
- o Don't
accept()
if server is full (Net::Server
fix). - o Obtain server.met "seedIP:seedPort" support.
- o "public" support.
- o Multiple
pdonkeys
process instancies (mysql safe). - o Administration port.
SEE ALSO
Net::Server, Net::Server::Multiplex, DBI
COPYRIGHT
Copyright (c) 2003 Alexey Klimkin <klimkin at cpan.org>.
All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
3 POD Errors
The following errors were encountered while parsing the POD:
- Around line 892:
Can't have a 0 in =over 0
- Around line 930:
You forgot a '=back' before '=head2'
- Around line 932:
'=item' outside of any '=over'