2 @cindex neighbour configuration options
3 @section Configuration neighbour options
6 @strong{neigh} section contains all known neighbours information. It
7 always has @strong{self} neighbour that is copy of our node's public
8 data (public keys). It is useful for copy-paste sharing with your
9 friends. Each section's key is a human-readable name of the neighbour.
15 exchpub: 2NZKH...CMI7A
16 signpub: EXD7M...YAOFA
17 noisepub: MIXYN...BGNDQ
18 exec: {sendmail: ["/usr/sbin/sendmail"]}
22 exchpub: MJACJ...FAI6A
23 signpub: T4AFC...N2FRQ
24 noisepub: UBM5K...VI42A
25 exec: {flag: ["/usr/bin/touch", "-t"]}
26 incoming: "/home/alice/incoming"
30 lan: "[fe80::1234%igb0]:5400"
31 internet: alice.com:3389
32 proxied: "|ssh remote.host nncp-daemon -ucspi"
42 exchpub: WFLMZ...B7NHA
43 signpub: GTGXG...IE3OA
45 sendmail: ["/usr/sbin/sendmail"]
46 warcer: ["/path/to/warcer.sh"]
47 wgeter: ["/path/to/wgeter.sh"]
65 Except for @code{id}, @code{exchpub} and @code{signpub} each neighbour
66 node has the following fields:
71 If present, then node can be online called using @ref{Sync,
72 synchronization protocol}. Contains authentication public key.
78 Dictionary consisting of handles and corresponding command line
79 arguments. In example above there are @command{sendmail} handles,
80 @command{warcer}, @command{wgeter} and @command{flag} one. Remote
81 node can queue some handle execution with providing additional
82 command line arguments and the body fed to command's @code{stdin}.
84 @verb{|sendmail: ["/usr/sbin/sendmail", "-t"]|} handle, when called by
85 @verb{|echo hello world | nncp-exec self sendmail ARG0 ARG1 ARG2|}
86 command, will execute:
92 /usr/sbin/sendmail -t ARG0 ARG1 ARG2
95 feeding @verb{|hello world\n|} to that started @command{sendmail}
101 Full path to directory where all file uploads will be saved. May be
102 omitted to forbid file uploading on that node.
109 Full path to directory from where file requests will queue files
110 for transmission. May be omitted to forbid freqing from that node.
113 If set, then enable @ref{Chunked, chunked} file transmission
114 during freqing. This is the desired chunk size in KiBs.
117 If set, then apply @ref{OptMinSize, -minsize} option during file
124 Options applied to automatically generated @ref{ACK} packets during tossing.
128 Use that @ref{Niceness, niceness} for generated packets (255 is used
132 If set, then apply @ref{OptMinSize, -minsize} option during file
139 An array of node identifiers that will be used as a relay to that
140 node. For example @verb{|["foo","bar"]|} means that packet can reach
141 current node by transitioning through @code{foo} and then @code{bar}
142 nodes. May be omitted if direct connection exists and no relaying is
148 Dictionary containing known network addresses of the node. Each key
149 is human-readable name of the address. For direct TCP connections
150 use @verb{|host:port|} format, pointing to @command{@ref{nncp-daemon}}'s
153 Also you can pipe connection through the external command using
154 @verb{#|some command#} format. @code{/bin/sh -c "some command"} will
155 start and its @code{stdin}/@code{stdout} used as a connection.
157 To use @ref{Yggdrasil} network for connectivity, use
158 @code{yggdrasil:PUB;PRV;PEER[,@dots{}]} format, read about
159 @ref{CfgYggdrasilAliases, possible aliases} usage.
161 May be omitted if either no direct connection exists, or
162 @command{@ref{nncp-call}} is used with forced address specifying.
168 If greater than zero, then at most *rate packets per second will be
169 sent/received after the handshake. It could be used as crude
170 bandwidth traffic shaper: each packet has at most 64 KiB payload
171 size. If omitted -- no rate limits.
173 @vindex onlinedeadline
174 @anchor{CfgOnlineDeadline}
176 Online connection deadline of nodes inactivity in seconds. It is the
177 time connection considered dead after not receiving/sending any
178 packets (except for PINGs) and connection must be terminated. By
179 default it is set to 10 seconds. This can be set to rather high
180 values to keep connection alive (to reduce handshake overhead and
181 delays), wait for appearing packets ready to send and notifying
182 remote side about their appearance.
184 @vindex maxonlinetime
185 @anchor{CfgMaxOnlineTime}
187 If greater than zero, then it is maximal time of single connection.
188 Forcefully disconnect if it is exceeded.
192 List of @ref{Call, call configuration}s.
193 Can be omitted if @command{@ref{nncp-caller}} won't be used to call that node.