[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r1920 - in GNUnet: contrib src/applications/fs/fsui src/ser
From: |
grothoff |
Subject: |
[GNUnet-SVN] r1920 - in GNUnet: contrib src/applications/fs/fsui src/server src/util |
Date: |
Fri, 26 Aug 2005 00:00:31 -0700 (PDT) |
Author: grothoff
Date: 2005-08-26 00:00:28 -0700 (Fri, 26 Aug 2005)
New Revision: 1920
Modified:
GNUnet/contrib/config-client.in
GNUnet/contrib/config-daemon.in
GNUnet/src/applications/fs/fsui/fsui.c
GNUnet/src/server/connection.c
GNUnet/src/util/configuration.c
Log:
updating options
Modified: GNUnet/contrib/config-client.in
===================================================================
--- GNUnet/contrib/config-client.in 2005-08-26 05:14:19 UTC (rev 1919)
+++ GNUnet/contrib/config-client.in 2005-08-26 07:00:28 UTC (rev 1920)
@@ -1,36 +1,47 @@
mainmenu "GNUnet user configuration"
-menu "User specific configuration" ""
menu "Meta-configuration" "Meta"
- config EXPERIMENTAL-CLIENT
- bool "Prompt for development and/or incomplete code"
- help
- Some of the various things that GNUnet supports (such as network
- drivers, network protocols, etc.) can be in a state
+ config EXPERIMENTAL-CLIENT
+ bool "Prompt for development and/or incomplete code"
+ help
+ If EXPERIMENTAL is set to NO, options for experimental code are
+ not shown. If in doubt, use NO.
+
+ Some options apply to experimental code that maybe in a state
of development where the functionality, stability, or the level
of
- testing is not yet high enough for general use. This is usually
- known as the "alpha-test" phase among developers. If a feature
is
- currently in alpha-test, then the developers usually discourage
- uninformed widespread use of this feature by the general public
to
- avoid "Why doesn't this work?" type mail messages. However,
active
- testing and use of these systems is welcomed. Just be aware
that it
+ testing is not yet high enough for general use. These features
+ are said to be of "alpha" quality. If a feature is currently
in
+ alpha, uninformed use is discouraged (since the developers then
+ do not fancy "Why doesn't this work?" type messages).
+
+ However, active testing and qualified feedback of these
features
+ is always welcome. Users should just be aware that alpha
features
may not meet the normal level of reliability or it may fail to
work
- in some special cases. Detailed bug reports from people familiar
- with the GNUnet internals are usually welcomed by the developers
- (before submitting bug reports, please read the documents
- <file://README> and <http://gnunet.org/faq.php3>.
+ in some special cases. Bug reports are usually welcomed by the
+ developers, but please read the documents <file://README> and
+ <http://gnunet.org/faq.php3> and use
<https://gnunet.org/mantis/>
+ for how to report problems.
+
+ config ADVANCED-CLIENT
+ bool "Show options for advanced users"
+ help
- config ADVANCED-CLIENT
- bool "Show options for advanced users"
+ These are options that maybe difficult to understand for the
+ beginner. These options typically refer to features that
+ allow tweaking of the installation. If in a hurry, say
NO.
- config RARE-CLIENT
- bool "Show rarely used options"
+ config RARE-CLIENT
+ bool "Show rarely used options"
+ help
+ These are options that hardly anyone actually needs.
+ If you plan on doing development on GNUnet, you may want to
+ look into these. If in doubt or in a hurry, say NO.
endmenu
menu "General settings" "GNUNET"
config GNUNET_HOME
string "Directory of user specific files"
- default "~/.gnunet"
+ default "~/.gnunet/"
help
This is the directory where GNUnet is putting
user-specific files (such as pseudonyms). Typically,
@@ -70,24 +81,28 @@
Default is "NORMAL".
endmenu
-menu "Network options for the clients" "NETWORK"
- config CLIENT-PORT
- int "Port to use to talk to gnunetd"
- default 2087
- depends on Meta::ADVANCED-CLIENT
- help
- Port to use to talk to gnunetd, default is 2087
+if Meta::ADVANCED-CLIENT
- config HOST
- string "On which machine runs gnunetd (for clients)"
- default "localhost"
- depends on Meta::ADVANCED-CLIENT
- help
- On which machine runs gnunetd (for clients) This is equivalent
to
- the -H option. Default is localhost.
-endmenu
+ menu "Network options for the clients" "NETWORK"
+ config CLIENT-PORT
+ int "Port to use to talk to gnunetd"
+ default 2087
+ depends on Meta::ADVANCED-CLIENT
+ help
+ Port to use to talk to gnunetd, default is 2087
+ config HOST
+ string "On which machine runs gnunetd (for clients)"
+ default "localhost"
+ depends on Meta::ADVANCED-CLIENT
+ help
+ On which machine runs gnunetd (for clients) This is
equivalent to
+ the -H option. Default is localhost.
+ endmenu
+endif
+
+
menu "Options for filesharing (FS)" "FS"
config INSERT-PRIORITY
int "Default priority for locally inserted content"
@@ -121,18 +136,11 @@
help
Default limit for the number of search results (0 for unlimited)
- config SEARCHTIMEOUT
- int "Default timeout for searches"
- default 300
- depends on Meta::ADVANCED-CLIENT
- help
- Default timeout for searches
-
config EXTRACTORS
string "Specify which additional extractor libraries should be used"
default
"libextractor_filename:-libextractor_split:-libextractor_lower:-libextractor_thumbnail"
- depends on Meta::RARE-CLIENT
+ depends on Meta::ADVANCED-CLIENT
help
Specify which additional extractor libraries should be used.
gnunet-insert uses libextractor to extract keywords from files.
@@ -148,17 +156,17 @@
config DOWNLOADDIR
string "Where to store incomplete downloads"
- default "$GNUNET_HOME/gnunet-downloads/"
+ default "$GNUNET_HOME/pending-downloads/"
help
Where to download files to (by default)?
Default is $GNUNET_HOME/pending-downloads/
config INCOMINGDIR
string "Where to move complete downloads to"
- default "$GNUNET_HOME/completed-downloads/"
+ default "$HOME/gnunet-downloads/"
help
Where to move finished downloads to (by default)?
- Default is $GNUNET_HOME/completed-downloads/
+ Default is $HOME/completed-downloads/
config DISABLE-SYMLINK
bool "Disable symlinking"
@@ -177,12 +185,28 @@
It is much more (space)-efficient to set this to NO,
but you need to know what you're doing. This is why the
default is 'YES'.
+
+ config DOWNLOAD-POOL
+ int "Number of parallel threads per gnunet-download"
+ depends on Meta::ADVANCED-CLIENT
+ default 32
+ help
+ How many (parallel) threads should a given gnunet-download (or
+ gnunet-gtk) process run? (this limits the amount of parallelism
+ used in the FSUI library). Smaller values reduce memory and CPU
+ requirements. Very large values will not be useful since even
if
+ that much parallelism is theoretically possible, the local node
may
+ not be able to route that many parallel requests anyway.
+ Default: 32
+
+
endmenu
menu "Default options for gnunet-gtk" GNUNET-GTK
config GNUNETD-CONFIG
string "Path to the gnunet.conf file"
- default ""
+ depends on Meta::ADVANCED-CLIENT
+ default "/etc/gnunetd.conf"
help
Path to the gnunet.conf file for gnunetd (for
forking gnunetd by gnunet-gtk)
@@ -212,63 +236,66 @@
endmenu
if Meta::EXPERIMENTAL-CLIENT
-menu "Defaults for gnunet-chat" GNUNET-CHAT
- config NICK
- string "Nickname"
- default ""
- depends on Meta::EXPERIMENTAL-CLIENT
- help
- You can specify your nickname here and thus avoid having to
pass it
- with -n NICK at the command-line. The default is empty.
- Default: "my nickname"
-endmenu
+ menu "Defaults for gnunet-chat" GNUNET-CHAT
+ config NICK
+ string "Nickname"
+ default "My nickname"
+ depends on Meta::EXPERIMENTAL-CLIENT
+ help
+ You can specify your nickname here and thus avoid
having to pass it
+ with -n NICK at the command-line. The default is empty.
+ Default: "My nickname"
+ endmenu
endif
if Meta::RARE-CLIENT
-menu "Defaults for gnunet-tracekit" GNUNET-TRACEKIT
- config WAIT
- int "How long to wait for replies"
- default 30
- help
- How long to wait for replies (in seconds)? (default: 30)
+ menu "Defaults for gnunet-tracekit" GNUNET-TRACEKIT
+ config WAIT
+ int "How long to wait for replies"
+ default 30
+ help
+ How long to wait for replies (in seconds)? (default: 30)
- config HOPS
- int "How many hops should the trace go"
- default 5
- help
- How many hops should the trace go? (default: 5)
+ config HOPS
+ int "How many hops should the trace go"
+ default 5
+ help
+ How many hops should the trace go? (default: 5)
- config PRIORITY
- int "How important is the trace message"
- default 1000
- help
- How important is the trace message? (default: 1000)
+ config PRIORITY
+ int "How important is the trace message"
+ default 1000
+ help
+ How important is the trace message? (default: 1000)
- config FORMAT
- int "Output format"
- default 2
- help
- Output format, 0 is human readable, 1 is dot,
- 2 is vcg (default: 2)
-endmenu
+ config FORMAT
+ int "Output format"
+ default 2
+ help
+ Output format, 0 is human readable, 1 is dot,
+ 2 is vcg (default: 2)
+ endmenu
-menu "Defaults for gnunet-testbed" "GNUNET-TESTBED"
- config PORT
- int "Internal port"
- default 2089
- help
- Port used internally by gnunet-testbed
- (for the IPC in the gnunet-testbed shell).
- The default is 2089.
+endif
- config REGISTERURL
- string "Registration URL"
- default "http://ovmj.org/GNUnet/testbed/"
- help
- At which URL does the registration software
- run?
- Default is http://ovmj.org/GNUnet/testbed/
-endmenu
+if Meta::RARE-CLIENT && Meta::EXPERIMENTAL-CLIENT
+
+ menu "Defaults for gnunet-testbed" "GNUNET-TESTBED"
+ config PORT
+ int "Internal port"
+ default 2089
+ help
+ Port used internally by gnunet-testbed
+ (for the IPC in the gnunet-testbed shell).
+ The default is 2089.
+
+ config REGISTERURL
+ string "Registration URL"
+ default "http://gnunet.org/testbed/"
+ help
+ At which URL does the registration software run?
+ Default is http://gnunet.org/testbed/
+ endmenu
+
endif
-endmenu
Modified: GNUnet/contrib/config-daemon.in
===================================================================
--- GNUnet/contrib/config-daemon.in 2005-08-26 05:14:19 UTC (rev 1919)
+++ GNUnet/contrib/config-daemon.in 2005-08-26 07:00:28 UTC (rev 1920)
@@ -1,37 +1,47 @@
-mainmenu "GNUnet Configuration"
+mainmenu "GNUnet Server Configuration"
-menu "Server configuration" ""
menu "Meta-configuration" "Meta"
- config EXPERIMENTAL
- bool "Prompt for development and/or incomplete code"
- help
- Some of the various things that GNUnet supports (such as network
- drivers, network protocols, etc.) can be in a state
+ config EXPERIMENTAL
+ bool "Prompt for development and/or incomplete code"
+ help
+ If EXPERIMENTAL is set to NO, options for experimental
code are
+ not shown. If in doubt, use NO.
+
+ Some options apply to experimental code that maybe in a state
of development where the functionality, stability, or the level
of
- testing is not yet high enough for general use. This is usually
- known as the "alpha-test" phase among developers. If a feature
is
- currently in alpha-test, then the developers usually discourage
- uninformed widespread use of this feature by the general public
to
- avoid "Why doesn't this work?" type mail messages. However,
active
- testing and use of these systems is welcomed. Just be aware
that it
+ testing is not yet high enough for general use. These features
+ are said to be of "alpha" quality. If a feature is currently
in
+ alpha, uninformed use is discouraged (since the
developers then
+ do not fancy "Why doesn't this work?" type messages).
+
+ However, active testing and qualified feedback of these
features
+ is always welcome. Users should just be aware that
alpha features
may not meet the normal level of reliability or it may fail to
work
- in some special cases. Detailed bug reports from people familiar
- with the GNUnet internals are usually welcomed by the developers
- (before submitting bug reports, please read the documents
- <file://README> and <http://gnunet.org/faq.php3>.
+ in some special cases. Bug reports are usually welcomed by the
+ developers, but please read the documents
<file://README> and
+ <http://gnunet.org/faq.php3> and use
<https://gnunet.org/mantis/>
+ for how to report problems.
- config ADVANCED
- bool "Show options for advanced users"
+ config ADVANCED
+ bool "Show options for advanced users"
+ help
+ These are options that maybe difficult to understand for the
+ beginner. These options typically refer to features that
+ allow tweaking of the installation. If in a hurry, say
NO.
- config RARE
- bool "Show rarely used options"
+ config RARE
+ bool "Show rarely used options"
+ help
+ These are options that hardly anyone actually needs.
+ If you plan on doing development on GNUnet, you may want to
+ look into these. If in doubt or in a hurry, say NO.
endmenu
menu "General settings" "GNUNETD"
- config GNUNETD_HOME
- string "Full pathname of GNUnet HOME directory"
- default ""
- help
+ config GNUNETD_HOME
+ string "Full pathname of GNUnet HOME directory"
+ default ""
+ help
This gives the root-directory of the GNUnet installation. Make
sure there is some space left in that directory. :-) Users
inserting
or indexing files will be able to store data in this directory
@@ -54,28 +64,28 @@
The largest legal value is 14400 (10 days).
Default: HELLOEXPIRES = 1440
- config LOGLEVEL
- string "Log level"
- default "WARNING"
- depends on Meta::ADVANCED
- help
+ config LOGLEVEL
+ string "Log level"
+ default "WARNING"
+ depends on Meta::ADVANCED
+ help
Loglevel, how much should be logged? You can use NOTHING, FATAL,
ERROR, FAILURE, WARNING, MESSAGE, INFO, DEBUG, CRON or
EVERYTHING
(which log more and more messages in this order). Default is
WARNING.
- config LOGFILE
- string "Where should logs go by default"
- default "$GNUNETD_HOME/logs"
- depends on Meta::ADVANCED
- help
+ config LOGFILE
+ string "Where should logs go by default"
+ default "$GNUNETD_HOME/logs"
+ depends on Meta::ADVANCED
+ help
In which file should gnunetd write the logs? If you specify
nothing, logs are written to stderr (and note that if gnunetd
runs
in the background, stderr is closed and all logs are discarded).
Default: LOGFILE = $GNUNETD_HOME/logs
config KEEPLOG
- string "How long logs should be kept"
+ string "How long should logs be kept"
default 0
depends on Meta::ADVANCED
help
@@ -85,10 +95,10 @@
To disable this function, set this setting to its default
value 0.
- config PIDFILE
- string "Where should gnunetd write the PID"
- default "$GNUNETD_HOME/gnunet.pid"
- depends on Meta::ADVANCED
+ config PIDFILE
+ string "Where should gnunetd write the PID"
+ default "$GNUNETD_HOME/gnunet.pid"
+ depends on Meta::ADVANCED
help
In which file should gnunetd write the process-id of the
server? If
you run gnunetd as root, you may want to choose
@@ -96,11 +106,11 @@
have write rights at that location.
Default: PIDFILE = $GNUNETD_HOME/gnunetd.pid
- config HOSTS
- string "Where should gnunetd keep the list of peers"
- default "$GNUNETD_HOME/data/hosts/"
- depends on Meta::ADVANCED
- help
+ config HOSTS
+ string "Where should gnunetd keep the list of peers"
+ default "$GNUNETD_HOME/data/hosts/"
+ depends on Meta::ADVANCED
+ help
This directory should be made available periodically --- it
contains
information how to join GNUnet that is in no way private to the
local node. This directory can be shared between nodes AND
should
@@ -112,11 +122,11 @@
populated by gnunetd with an initial set of nodes.
Default: HOSTS = $GNUNETD_HOME/data/hosts/
- config HOSTLISTURL
- string "Where can GNUnet find an initial list of peers"
- depends on Meta::ADVANCED
- default "http://gnunet.org/hostlist http://mikael.karlsson.com/hostlist
http://gnunet.mine.nu:8081/hostlist"
- help
+ config HOSTLISTURL
+ string "Where can GNUnet find an initial list of peers"
+ depends on Meta::ADVANCED
+ default "http://gnunet.org/hostlist http://mikael.karlsson.com/hostlist
http://gnunet.mine.nu:8081/hostlist"
+ help
GNUnet can automatically update the hostlist from the web. While
GNUnet internally communicates which hosts are online, it is
typically a good idea to get a fresh hostlist whenever gnunetd
@@ -135,28 +145,28 @@
data/hosts manually.
Default: HOSTLISTURL = "http://gnunet.org/hostlist
http://mikael.karlsson.com/hostlist http://gnunet.mine.nu:8081/hostlist"
- config HTTP-PROXY
- string "HTTP Proxy Server"
- default ""
- depends on Meta::ADVANCED
- help
+ config HTTP-PROXY
+ string "HTTP Proxy Server"
+ default ""
+ depends on Meta::ADVANCED
+ help
If you have to use a proxy for outbound HTTP connections,
specify the proxy configuration here. Default is no proxy.
- config HTTP-PROXY-PORT
- int "HTTP Proxy Port"
- range 1 65535
- default 1080
- depends on Meta::ADVANCED
- help
+ config HTTP-PROXY-PORT
+ int "HTTP Proxy Port"
+ range 1 65535
+ default 1080
+ depends on Meta::ADVANCED
+ help
If you have to use a proxy for outbound HTTP connections,
specify the proxy configuration here. Default is no proxy.
- config APPLICATIONS
- string "Which applications should gnunetd support?"
- default "advertising fs getoption stats traffic"
- depends on Meta::ADVANCED
- help
+ config APPLICATIONS
+ string "Which applications should gnunetd support?"
+ default "advertising fs getoption stats traffic"
+ depends on Meta::ADVANCED
+ help
Which applications should gnunetd support? Specify the name of
the
dynamic shared object (DSO) that implements the service in the
gnunetd core here. Separate multiple modules with spaces.
@@ -170,7 +180,7 @@
stats: statistics - for gnunet-stats
traffic: traffic analysis
fs: file sharing
- chat: broadcast chat (demo-application)
+ chat: broadcast chat (demo-application, ALPHA quality, at best)
tbench: benchmark tool for transport performance
tracekit: GNUnet topology visualization toolkit
@@ -179,15 +189,15 @@
GNUnet works. They should be used with caution.
Using the fs tools for downloading may require the traffic
module
- to be loaded!
+ to be loaded! Various GNUnet-tools depend on getoption.
Default: APPLICATIONS = "advertising fs getoption stats traffic"
- config TRANSPORTS
- string "Which transport mechanisms are available?"
- default "udp tcp http nat"
- depends on Meta::ADVANCED
- help
+ config TRANSPORTS
+ string "Which transport mechanisms are available?"
+ default "udp tcp http nat"
+ depends on Meta::ADVANCED
+ help
Which transport mechanisms are available? Use space-separated
list
of the modules, e.g. "udp smtp tcp". The order is irrelevant,
each
protocol has a build-in cost-factor and this factor determines
which
@@ -222,6 +232,7 @@
config USER
string "GNUnet user"
default ""
+ depends on Meta::ADVANCED
help
As which user account should gnunetd run?
Empty means "current user". On computer startup, it is
root/SYSTEM.
@@ -231,6 +242,7 @@
config GROUP
string "GNUnet group"
default ""
+ depends on Meta::ADVANCED
help
As which group account should gnunetd run?
Empty means current group under Unix. It has no meaning under
Windows.
@@ -257,7 +269,7 @@
gnunet-update after changing this value!
In order to use sqstore_mysql, you must configure
- the mysql database, which is non-trivial.
+ the mysql database, which is relatively simple.
Read the file doc/README.mysql for how to setup
mysql.
The default is "sqstore_sqlite".
@@ -267,115 +279,169 @@
default "topology_default"
help
Which topology should be used? The only
- option at the moment is "topology_default".
+ options at the moment are "topology_default"
+ and "topology_f2f". In default mode, GNUnet
+ will try to connect to a diverse set of peers,
+ and welcome connections from anyone. In
+ f2f (friend-to-friend) mode, GNUnet will only
+ allow connections from peers that are explicitly
+ listed in a FRIENDS file. Note that you can
+ list peers in the FRIENDS file that run in
+ default mode.
+
+ Use f2f only if you have (trustworthy) friends
+ that use GNUnet and are afraid of establishing
+ (direct) connections to unknown peers.
- The default is "topology_default"
+ The default is "topology_default".
endmenu
endif
menu "Network" "NETWORK"
- config PORT
- int "Client/Server Port"
- range 1 65535
- default "2087"
- depends on Meta::ADVANCED
- help
+ config PORT
+ int "Client/Server Port"
+ range 1 65535
+ default "2087"
+ depends on Meta::ADVANCED
+ help
Which is the client-server port that is used between gnunetd
and the
clients (TCP only). You may firewall this port for non-local
- machines.
+ machines (but you do not have to since GNUnet will perform
access
+ control and only allow connections from machines that are listed
+ under TRUSTED).
Default: PORT = 2087
- config INTERFACE
- string "Interface to probe for external IP"
- help
+ config INTERFACE
+ string "Interface to probe for external IP"
+ help
Set if GNUnet fails to determine your IP. GNUnet first tries to
determine your IP by looking at the IP that matches the
interface
that is given with the option INTERFACE.
- Under Windows, specify the ID reported by
- "gnunet-win-tool -n"
+ Under Windows, specify the ID reported by "gnunet-win-tool -n".
- config IP
- string "Forced value of external IP or hostname"
- help
- If this fails, GNUnet will try to do a DNS lookup on your
HOSTNAME,
- which may also fail, in particular if you are on dialup.
+ config IP
+ string "Forced value of external IP or hostname"
+ help
+ If obtaining the external IP from an interface will not result
+ in the right information, use the IP setting. Setting IP can
+ be used to specify the external IP directly or to make GNUnet
+ lookup the external IP using DNS.
- If both options are not viable for you, you can specify an IP in
- this configuration file. This may be required if you have
multiple
- interfaces (currently GNUnet can only work on one of them) or
if you
- are behind a router/gateway that performs network address
- translation (NAT). In the latter case, set this IP to the
*external*
- IP of the router (!) and make sure that the router forwards
incoming
- UDP packets on the GNUnet port (default: 2086) to the dedicated
- GNUnet server in the local network.
+ This is typically the best option if you are behind a
router/gateway
+ that performs network address translation (NAT). If the router
has
+ a fixed external IP, use that IP. If the router itself obtains
its
+ IP dynamically (say via DHCP), use the DNS lookup in
combination with
+ DynDNS. In either case make sure that the router forwards
incoming
+ UDP and TCP messages on the GNUnet port (default: 2086) to the
+ GNUnet host in the local network. If this is not possible, read
+ about the LIMITED option for NAT.
- If you do not know what all this means, try without!
- Default is no IP specified.
+ If in doubt, try without. Default is empty.
- config F2F
- string "List of friends for friend-to-friend topology"
- default "$GNUNETD_HOME/friends"
- depends on Meta::ADVANCED
- help
- No help available at this point.
- NILS: can we only show this item if
- the user selected topology = toplogy_f2f?
+ config F2F
+ string "List of friends for friend-to-friend topology"
+ default "$GNUNETD_HOME/friends"
+ depends on Meta::ADVANCED
+ help
+ Specifies the name of a file which contains a list of GNUnet
peer IDs
+ that are friends. If used together with
- config HELLOEXCHANGE
- bool "Participate in network topology management"
- default y
- depends on Meta::ADVANCED
- help
+ [MODULES] topology = topology_f2f
+
+ this will ensure that GNUnet only connects to these peers (via
+ any available transport).
+
+ config HELLOEXCHANGE
+ bool "Participate in network topology management"
+ default y
+ depends on Meta::ADVANCED
+ help
If this host is connected to two networks, a private which is
not
reachable from the Internet and that contains GNUnet clients
and to
a public network, typically the Internet (and is this host is
thus
in the position of a router, typically doing NAT), then this
option
should be set to 'NO'. It prevents the node from forwarding
HELLOs
- other than its own. If you do not know what the above is about,
just
- keep it set to YES (which is also the default when the option
is not
- given).
- Default is yes: HELLOEXCHANGE = YES
+ other than its own.
+
+ If in doubt, use YES. Default is YES.
- config TRUSTED
- string "IPs allowed to use gnunetd server"
- default "127.0.0.0/8;"
- depends on Meta::ADVANCED
- help
- With this option, you can specify which networks are trusted enough
- to connect as clients to the TCP port. This is useful if you
run
+ config TRUSTED
+ string "IPs allowed to use gnunetd server"
+ default "127.0.0.0/8;"
+ depends on Meta::ADVANCED
+ help
+ This option specifies which hosts are trusted enough
+ to connect as clients (to the TCP port). This is useful if you
run
gnunetd on one host of your network and want to allow all other
- hosts to use this node as their server. By default, this is set
to
- 'loopback only'. The format is the same as for the BLACKLIST.
- Default is: TRUSTED = 127.0.0.0/8;
+ hosts to use this node as their server. By default, this is
set to
+ 'loopback only'. The format is IP/NETMASK where the IP is
specified in
+ dotted-decimal and the netmask either in CIDR notation (/16) or
in
+ dotted decimal (255.255.0.0). Several entries must be separated
by a
+ semicolon, spaces are not allowed.
+ Default is "127.0.0.0/8;".
+
endmenu
menu "Resource limitations" "LOAD"
- config BASICLIMITING
- bool "Basic bandwidth limiting"
- default y
- help
- Use basic bandwidth limitation? The basic method (YES)
- notes only GNUnet traffic and can be used to specify simple
maximum
- bandwidth usage of GNUnet. Choose the basic method if you don't
- want other network traffic to interfere with GNUnet's
operation, but
- still wish to constrain GNUnet's bandwidth usage, or if you
can't
- reliably measure the maximum capabilities of your connection.
YES
- can be very useful if other applications are causing a lot of
- traffic on your LAN. In this case, you do not want to limit the
- traffic that GNUnet can inflict on your WAN connection whenever
your
- high-speed LAN gets used (e.g. by NFS).
-
- The advanced bandwidth limitation (NO) measures total traffic
over
- the chosen interface (including traffic by other applications),
and
- allows gnunetd to participate if the total traffic is low
enough.
+ config BASICLIMITING
+ bool "Basic bandwidth limiting"
+ default y
+ help
+ Use basic bandwidth limitation? (YES/NO). If in doubt, say YES.
+
+ Basic bandwidth limitation (YES) means simply that the
bandwidth limits
+ specified apply to GNUnet and only to GNUnet. If set to YES,
you
+ simply specify the maximum bandwidth (upstream and downstream)
+ that GNUnet is allowed to use and GNUnet will stick to those
+ limitations. This is useful if your overall bandwidth is so
large that
+ the limit is mostly used to ensure that enough capacity is
left for
+ other applications. Even if you want to dedicate your entire
connection
+ to GNUnet you should not set the limits to values higher than
what you
+ have since GNUnet uses those limits to determine for example
the number
+ of connections to establish (and it would be inefficient if
that
+ computation yields a number that is far too high).
+
+ While basic bandwidth limitation is simple and always works,
there are
+ some situations where it is not perfect. Suppose you are
running
+ another application which performs a larger download. During
that
+ particular time, it would be nice if GNUnet would throttle its
+ bandwidth consumption (automatically) and resume using more
bandwidth
+ after the download is complete. This is obviously advanced
magic since
+ GNUnet will have to monitor the behavior of other
applications.
+ Another scenario is a monthly cap on bandwidth imposed by your
ISP,
+ which you would want to ensure is obeyed. Here, you may want
+ GNUnet to monitor the traffic from other applications to
ensure that
+ the combined long-term traffic is within the pre-set bounds.
Note
+ that you should probably not set the bounds tightly since
GNUnet may
+ observe that the bounds are about to be broken but would be
unable to
+ stop other applications from continuing to use bandwidth.
+
+ If either of these two scenarios applies, set BASICLIMITING to
NO.
+ Then set the bandwidth limits to the COMBINED amount of
traffic that
+ is accepable for both GNUnet and other applications. GNUnet
will
+ then immediately throttle bandwidth consumption if the
short-term
+ average is above the limit, and it will also try to ensure
that the
+ long-term average is below the limit. Note however that using
NO
+ can have the effect of GNUnet (almost) ceasing operations after
+ other applications perform high-volume downloads that are
beyond the
+ defined limits. GNUnet would reduce consumption until the
long-term
+ limits are again within bounds.
+
+ NO only works on platforms where GNUnet can monitor the amount
of
+ traffic that the local host puts out on the network. This is
only
+ implemented for Linux and Win32. In order for the code to
work, GNUnet
+ needs to know the specific network interface that is used for
the
+ external connection (after all, the amount of traffic on
loopback
+ or on the LAN should never be counted since it is irrelevant).
+
Default is: BASICLIMITING = YES
- config INTERFACES
- string "Network interface to monitor"
- depends on !Meta::BASICLIMITING
- help
+ config INTERFACES
+ string "Network interface to monitor"
+ depends on !Meta::BASICLIMITING
+ help
For which interfaces should we do accounting? GNUnet will
evaluate
the total traffic (not only the GNUnet related traffic) and
adjust
its bandwidth usage accordingly. You can currently only specify
a
@@ -386,53 +452,53 @@
Under Windows, specify the index number reported by
"gnunet-win-tool -n".
- config MAXNETDOWNBPSTOTAL
- int "Maximum download (bytes per second)"
- default 50000
- help
- Bandwidth limits in bytes per second. These denote the maximum
- amounts GNUnet is allowed to use.
- Defaults are:
- MAXNETUPBPSTOTAL = 50000
- MAXNETDOWNBPSTOTAL = 50000
+ config MAXNETDOWNBPSTOTAL
+ int "Maximum download (bytes per second)"
+ default 50000
+ help
+ Bandwidth limit for incoming traffic in bytes per second.
+ Default is 50000.
- config MAXNETUPBPSTOTAL
- int "Maximum upload (bytes per second)"
- default 50000
- help
- Bandwidth limits in bytes per second. These denote the maximum
- amounts GNUnet is allowed to use.
- Defaults are:
- MAXNETUPBPSTOTAL = 50000
- MAXNETDOWNBPSTOTAL = 50000
+ config MAXNETUPBPSTOTAL
+ int "Maximum upload (bytes per second)"
+ default 50000
+ help
+ Bandwidth limit for outgoing traffic in bytes per second.
+ Default is 50000.
- config MAXCPULOAD
- int "Maximum CPU load (percentage)"
- range 0 100
- default 50
+ config MAXCPULOAD
+ int "Maximum CPU load (percentage)"
+ range 0 100
+ default 50
help
- Which CPU load can be tolerated (total, GNUnet will adapt if the
- load goes up due to other processes). A value of 50 means that
once
- your 1 minute-load average goes over 50% non-idle, GNUnet will
start
- dropping packets until it goes under that threshold again.
- Default is MAXCPULOAD = 50
+ Which CPU load can be tolerated. Load here always refers to
the total
+ system load, that is it includes CPU utilization by other
processes.
+ A value of 50 means that once your 1 minute-load average goes
over 50%
+ non-idle, GNUnet will try to reduce CPU consumption until the
load goes
+ under the threshold. Reasonable values are typically between
50 and 90.
+ Machines dedicated to running GNUnet maybe fine with 99.
+
+ Default is 50.
endmenu
-menu "Transports" ""
- menu "UDP Transport" "UDP"
+menu "Transports" "Transports"
- config PORT
- int "Port"
- range 0 65535
- default 2086
- help
- To which port does GNUnet bind? Default is 2086 and there is
usually
+ if Meta::ADVANCED
+
+ menu "UDP Transport" "UDP"
+
+ config PORT
+ int "Port"
+ range 0 65535
+ default 2086
+ help
+ To which port does GNUnet bind? Default is 2086 and
there is usually
no reason to change that.
- config BLACKLIST
- string "Disallow connections from"
- default "127.0.0.1/8;172.16.0.0/12;192.168.0.0/16;10.0.0.0/255.0.0.0;"
+ config BLACKLIST
+ string "Disallow connections from"
+ default
"127.0.0.1/8;172.16.0.0/12;192.168.0.0/16;10.0.0.0/255.0.0.0;"
help
With this option, you can specify which networks you do
NOT want to
connect to. Usually you will want to filter loopback
(127.0.0.1,
@@ -453,37 +519,36 @@
Example (and default):
127.0.0.1/8;172.16.0.0/12;192.168.0.0/16;10.0.0.0/255.0.0.0;
- config MTU
- int "MTU"
- default 1472
- depends on Meta::RARE
- help
+ config MTU
+ int "MTU"
+ default 1472
+ depends on Meta::RARE
+ help
The MTU to use. Do not use more than your OS
(and firewall) can support. Typically, your
network-MTU - 28 is optimal, for ethernet, this
is 1472, the default. Do not use less than 1200.
-
- The default is 1472, which is also used if you specify
- nothing.
+
+ The default is 1472, which is also used if you specify
nothing.
endmenu
- menu "TCP Transport" "TCP"
+ menu "TCP Transport" "TCP"
- config PORT
- int "Port"
- range 0 65535
- default 2086
- help
+ config PORT
+ int "Port"
+ range 0 65535
+ default 2086
+ help
To which port does GNUnet bind? Default is 2086 and
there is usually
no reason to change that. Make sure that this port
does not
conflict with the port for GNUnet clients (section
NETWORK), which
defaults to 2087.
- config BLACKLIST
- string "Disallow connections from"
- default "127.0.0.1/8;172.16.0.0/12;192.168.0.0/16;10.0.0.0/255.0.0.0;"
- help
+ config BLACKLIST
+ string "Disallow connections from"
+ default
"127.0.0.1/8;172.16.0.0/12;192.168.0.0/16;10.0.0.0/255.0.0.0;"
+ help
With this option, you can specify which networks you do
NOT want to
connect to. Usually you will want to filter loopback
(127.0.0.1,
misconfigured GNUnet hosts), virtual private networks,
[add a class
@@ -503,7 +568,9 @@
BLACKLIST =
127.0.0.1/8;192.168.0.0/16;10.0.0.0/255.0.0.0;
endmenu
-
+
+ endif
+
menu "NAT" "NAT"
config LIMITED
@@ -521,9 +588,9 @@
cannot accept inbound connections.
endmenu
+
+ if Meta::EXPERIMENTAL && Meta::RARE && Meta::ADVANCED
- if Meta::EXPERIMENTAL && Meta::RARE
-
menu "UDP over IPv6" "UDP6"
config PORT
@@ -558,27 +625,27 @@
endmenu
- endif
+ endif
- if Meta::ADVANCED
+ if Meta::ADVANCED
menu "SMTP" "SMTP"
- config EMAIL
- string "Receiver address for inbound E-mail"
- default "address@hidden"
- help
- E-mail address to use to receive messages. Do
not specify anything
- if you do not want to allow SMTP as a receiver
protocol; you can
- still *send* email to establish connections in
that case. Example:
- EMAIL = address@hidden
+ config EMAIL
+ string "Receiver address for inbound E-mail"
+ default "address@hidden"
+ help
+ E-mail address to use to receive messages. Do not
specify anything
+ if you do not want to allow SMTP as a receiver
protocol; you can
+ still *send* email to establish connections in that
case. Example:
+ EMAIL = address@hidden
- config MTU
- int "MTU"
- default 65528
- help
- MTU for the E-mail. How large should the
E-mails be that we send
- out? Default is 65528 (bytes).
+ config MTU
+ int "MTU"
+ default 65528
+ help
+ MTU for the E-mail. How large should the E-mails be
that we send
+ out? Default is 65528 (bytes).
config PORT
int "Port of the SMTP server for outbound mail"
@@ -586,7 +653,7 @@
default 25
help
Port of the SMTP server for outbound mail. If not
specified, the
- TCP/SMTP entry from /etc/services is consulted.
Default is 25.
+ TCP/SMTP entry from /etc/services is consulted.
Default is 25.
config SERVER
string "Hostname of the SMTP server"
@@ -655,13 +722,14 @@
range 0 65535
default 1080
- config BLACKLIST
- string "Disallow connections from"
- default
"127.0.0.1/8;172.16.0.0/12;192.168.0.0/16;10.0.0.0/255.0.0.0;"
+ config BLACKLIST
+ string "Disallow connections from"
+ default
"127.0.0.1/8;172.16.0.0/12;192.168.0.0/16;10.0.0.0/255.0.0.0;"
endmenu
- endif
+ endif
+
endmenu
menu "Applications" ""
@@ -671,7 +739,7 @@
config QUOTA
int "MB of diskspace GNUnet can use for anonymous file sharing"
default 1024
- help
+ help
How much disk space (MB) is GNUnet allowed to use for
anonymous file
sharing? This does not take indexed files into
account, only the
space directly used by GNUnet is accounted for. GNUnet
will gather
@@ -679,7 +747,7 @@
the number given here (and if content migration is
allowed below).
IMPORTANT:
- Note that if you change the quota, you need to run
gnunet-convert,
+ Note that if you change the quota, you need to run
gnunet-update,
otherwise your databases will be inconsistent and
gnunetd will
refuse to work. Default is 1024 (1 GB)
@@ -751,119 +819,100 @@
content indexing requests (insertion will still be
possible).
- Note that files indexed with GNUnet before Version
- 0.6.2 were not moved/linked to this directory. But that
- should not cause any immediate problems (the files
- will continue to be downloadable). What will be
- impossible is unindexing these files with
- gnunet-delete and GNUnet >= 0.6.2.
Default is $GNUNETD_HOME/data/shared/
config INDEX-QUOTA
int "Indexing quota"
default 8192
help
- Indexing quota. Default is 8192.
+ Indexing quota. Default is 8192.
- config POOL
- int "Number of parallel threads per gnunet-download"
- default 32
- help
- How many (parallel) threads should a given
gnunet-download (or
- gnunet-gtk) process run? (this limits the amount of
parallelism
- used in the FSUI library). Smaller values reduce
memory and CPU
- requirements. Very large values will not be useful
since even if
- that much parallelism is theoretically possible, the
local node may
- not be able to route that many parallel requests
anyway.
- Default: 32
endmenu
- if Meta::ADVANCED
+ if Meta::ADVANCED
- menu "MySQL" "MYSQL"
- config DELAYED
- bool "Delayed operations"
- default n
- help
- If you suffer from too slow index/insert
speeds,
- you might try to set this to YES for a small
- efficiency boost. If you run into any trouble
- because of it, you're on your own.
- Default: NO
- endmenu
+ menu "MySQL" "MYSQL"
+ config DELAYED
+ bool "Delayed operations"
+ default n
+ help
+ If you suffer from too slow index/insert speeds,
+ you might try to set this to YES for a small
+ efficiency boost. If you run into any trouble
+ because of it, you're on your own.
+ Default: NO
+ endmenu
- endif
+ endif
- if Meta::ADVANCED
+ if Meta::EXPERIMENTAL && Meta::RARE && Meta::ADVANCED
- menu "GNUnet Testbed" "TESTBED"
+ menu "GNUnet Testbed" "TESTBED"
+
+ config REGISTERURL
+ string "Where should we register the testbed service?"
+ default "http://gnunet.org/testbed/"
+ help
+ Where should we register the testbed service?
+ Default is "http://gnunet.org/testbed/"
+
+ config ALLOW_MODULE_LOADING
+ bool "Allow to load and unload modules"
+ default n
+ help
+ Is the testbed operator allowed to load and
+ unload modules? (somewhat of a security risk!)
+ Default is NO.
+
+ config UPLOAD-DIR
+ string "Upload directory"
+ default "$GNUNETD_HOME/testbed"
+ help
+ Where should file-uploads go?
+ Default is $GNUNETD_HOME/testbed
- config REGISTERURL
- string "Where should we register the testbed service?"
- default "http://gnunet.org/testbed/"
- help
- Where should we register the testbed service?
- Default is "http://gnunet.org/testbed/"
+ config LOGIN
+ string "Login-name for SSH-tunnel"
+ default 2087
+ help
+ Login-name for SSH-tunnel (for secure testbed
+ connections). Without login name the testbed-server
+ will try to make a direct TCP connection to the
+ application port (default: 2087).
+
+ endmenu
- config ALLOW_MODULE_LOADING
- bool "Allow to load and unload modules"
- default n
- help
- Is the testbed operator allowed to load and
- unload modules? (somewhat of a security risk!)
- Default is NO.
+ menu "DHT" "DHT"
+ config BUCKETCOUNT
+ int "Number of buckets to use"
+ default 160
+ help
+ Number of buckets to use (determines memory
requirements)
+ Default (and maximum) is 160.
- config UPLOAD-DIR
- string "Upload directory"
- default "$GNUNETD_HOME/testbed"
- help
- Where should file-uploads go?
- Default is $GNUNETD_HOME/testbed
-
- config LOGIN
- string "Login-name for SSH-tunnel"
- default 2087
- help
- Login-name for SSH-tunnel (for secure testbed
- connections). Without login name the
testbed-server
- will try to make a direct TCP connection to the
- application port (default: 2087).
-
- endmenu
-
- endif
+ config MASTER-TABLE-SIZE
+ int "Amount of memory (in bytes) to use for the master table"
+ default 65536
+ help
+ Amount of memory (in bytes) to use for the master table
+ (table that caches table-to-peer mappings).
+ Default is 65536.
+ endmenu
+
+ endif
- if Meta::RARE
- menu "GAP" "GAP"
- config TABLESIZE
- int "Size of the routing table."
- default 65536
- help
- Size of the routing table.
- Default: 65536
- endmenu
- endif
+ if Meta::RARE
+ menu "GAP" "GAP"
+ config TABLESIZE
+ int "Size of the routing table."
+ default 65536
+ help
+ Size of the routing table.
+ Default: 65536
+ endmenu
+ endif
- if Meta::EXPERIMENTAL
- menu "DHT" "DHT"
- config BUCKETCOUNT
- int "Number of buckets to use"
- default 160
- help
- Number of buckets to use (determines memory
requirements)
- Default (and maximum) is 160.
-
- config MASTER-TABLE-SIZE
- int "Amount of memory (in bytes) to use for the master
table"
- default 65536
- help
- Amount of memory (in bytes) to use for the
master table
- (table that caches table-to-peer mappings).
- Default is 65536.
- endmenu
- endif
-
endmenu
-endmenu
+
Modified: GNUnet/src/applications/fs/fsui/fsui.c
===================================================================
--- GNUnet/src/applications/fs/fsui/fsui.c 2005-08-26 05:14:19 UTC (rev
1919)
+++ GNUnet/src/applications/fs/fsui/fsui.c 2005-08-26 07:00:28 UTC (rev
1920)
@@ -632,7 +632,7 @@
ret->ecb = cb;
ret->ecbClosure = closure;
ret->threadPoolSize = getConfigurationInt("FS",
- "POOL");
+ "DOWNLOAD-POOL");
if (ret->threadPoolSize == 0)
ret->threadPoolSize = 32;
ret->activeDownloadThreads = 0;
Modified: GNUnet/src/server/connection.c
===================================================================
--- GNUnet/src/server/connection.c 2005-08-26 05:14:19 UTC (rev 1919)
+++ GNUnet/src/server/connection.c 2005-08-26 07:00:28 UTC (rev 1920)
@@ -1851,6 +1851,7 @@
int didAssign;
int firstRound;
int earlyRun;
+ int load;
MUTEX_LOCK(&lock);
cronTime(&now);
@@ -1924,6 +1925,16 @@
minCon = activePeerCount;
schedulableBandwidth
= max_bpm - minCon * MIN_BPM_PER_PEER;
+ load = getNetworkLoadDown();
+ if (load > 100) {
+ /* take counter measures! */
+ schedulableBandwidth = schedulableBandwidth * 100 / load;
+ /* make sure we do not take it down too far */
+ if ( (scheduleableBandwidth < minCon * MIN_BPM_PER_PEER / 2) &&
+ (max_bpm > minCon * MIN_BPM_PER_PEER * 2) )
+ scheduleableBandwidth = minCon * MIN_BPM_PER_PEER / 2;
+ }
+
adjustedRR = MALLOC(sizeof(long long) * activePeerCount);
/* reset idealized limits; if we want a smoothed-limits
Modified: GNUnet/src/util/configuration.c
===================================================================
--- GNUnet/src/util/configuration.c 2005-08-26 05:14:19 UTC (rev 1919)
+++ GNUnet/src/util/configuration.c 2005-08-26 07:00:28 UTC (rev 1920)
@@ -374,6 +374,11 @@
if (prefix == NULL)
prefix = getConfigurationString("", &orig[1]);
if (prefix == NULL) {
+ const char * env = getenv(&orig[1]);
+ if (env != NULL)
+ prefix = STRDUP(env);
+ }
+ if (prefix == NULL) {
orig[i] = DIR_SEPARATOR;
return orig;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r1920 - in GNUnet: contrib src/applications/fs/fsui src/server src/util,
grothoff <=