]> Cypherpunks.ru repositories - nncp.git/blob - doc/news.texi
nncp-daemon can be run under inetd
[nncp.git] / doc / news.texi
1 @node News
2 @unnumbered News
3
4 See also this page @ref{Новости, on russian}.
5
6 @node Release 3.4
7 @section Release 3.4
8 @itemize
9 @item
10 @command{nncp-daemon} can be run as @command{inetd}-service.
11 @end itemize
12
13 @node Release 3.3
14 @section Release 3.3
15 @itemize
16 @item
17 @command{nncp-daemon}, @command{nncp-call}, @command{nncp-caller} check
18 if @file{.seen} exists and treat it like file was already downloaded.
19 Possibly it was transferred out-of-bound and remote side needs to be
20 notifier about that.
21 @item
22 If higher priority packet is spooled, then @command{nncp-daemon} will
23 queue its sending first, interrupting lower priority transmissions.
24 @item
25 Simple packet rate limiter added to online-related tools
26 (@command{nncp-daemon}, @command{nncp-call}, @command{nncp-caller}).
27 @item
28 Ability to specify niceness with symbolic notation:
29 @verb{|NORMAL|}, @verb{|BULK+10|}, @verb{|PRIORITY-5|}, etc.
30 @item
31 Changed default niceness levels:
32 for @command{nncp-exec} from 64 to 96,
33 for @command{nncp-freq} from 64 to 160,
34 for @command{nncp-file} from 196 to 224.
35 @end itemize
36
37 @node Release 3.2
38 @section Release 3.2
39 @itemize
40 @item
41 @strong{Incompatible} @emph{bundle} archive format changes and
42 @command{nncp-bundle} workability with Go 1.10+. Bundles must be
43 valid tar archives, but Go 1.9 made them invalid because of long paths
44 inside. NNCP accidentally was dependant on that bug. Explicit adding of
45 @file{NNCP/} directory in archive restores workability with valid tar
46 archives.
47 @end itemize
48
49 @node Release 3.1
50 @section Release 3.1
51 @itemize
52 @item
53 Ability to disable relaying at all using @verb{|-via -|} command line option.
54 @end itemize
55
56 @node Release 3.0
57 @section Release 3.0
58 @itemize
59 @item
60 @strong{Incompatible} plain packet format changes. Older versions are
61 not supported.
62 @item
63 Ability to queue remote command execution, by configuring @option{exec}
64 option in configuration file and using @command{nncp-exec} command:
65     @itemize
66     @item
67     @command{nncp-mail} command is replaced with more flexible
68     @command{nncp-exec}. Instead of @verb{|nncp-mail NODE RECIPIENT|}
69     you must use @verb{|nncp-exec NODE sendmail RECIPIENT|}.
70     @item
71     @option{sendmail} configuration file option is replaced with
72     @option{exec}. @verb{|sendmail: [...]|} must be replaced with
73     @verb{|exec: sendmail: [...]|}.
74     @end itemize
75 @item
76 Ability to override @option{via} configuration option for destination
77 node via @option{-via} command line option for following commands:
78 @command{nncp-file}, @command{nncp-freq}, @command{nncp-exec}.
79 @item
80 Chunked files, having size less than specified chunk size, will be sent
81 as an ordinary single file.
82 @item
83 Exec commands are invoked with additional @env{NNCP_NICE} and
84 @env{NNCP_SELF} environment variables.
85 @item
86 Files, that are sent as a reply to freq, have niceness level taken from
87 the freq packet. You can set desired niceness during @command{nncp-freq}
88 invocation using @option{-replynice} option.
89 @item
90 @command{nncp-toss} command can ignore specified packet types during
91 processing: @option{-nofile}, @option{-nofreq}, @option{-noexec},
92 @option{-notrns}.
93 @item
94 @command{nncp-file} command uses
95 @option{FreqMinSize}/@option{FreqChunked} configuration file options
96 for @option{-minsize}/@option{-chunked} by default. You can turn this
97 off by specifying zero value.
98 @end itemize
99
100 @node Release 2.0
101 @section Release 2.0
102 @itemize
103 @item
104 @strong{Incompatible} encrypted/eblob packet format changes. Older
105 versions are not supported.
106 @item
107 Twofish encryption algorithm is replaced with ChaCha20. It is much more
108 faster. One cryptographic primitive less.
109 @item
110 HKDF-BLAKE2b-256 KDF algorithm is replaced with BLAKE2Xb XOF. Yet
111 another cryptographic primitive less (assuming that BLAKE2X is nearly
112 identical to BLAKE2).
113 @end itemize
114
115 @node Release 1.0
116 @section Release 1.0
117 @itemize
118 @item
119 @strong{Incompatible} encrypted packet format changes. Older versions
120 are not supported.
121 @item
122 @command{nncp-bundle} command can either create stream of encrypted
123 packets, or digest it. It is useful when dealing with stdin/stdout based
124 transmission methods (like writing to CD-ROM without intermediate
125 prepared ISO image and working with tape drives).
126 @item
127 @command{nncp-toss} is able to create @file{.seen} files preventing
128 duplicate packets receiving.
129 @item
130 Single background checksum verifier worker is allowed in
131 @command{nncp-call}. This is helpful when thousands of small inbound
132 packets could create many goroutines.
133 @item
134 Ability to override path to spool directory and logfile through either
135 command line argument, or environment variable.
136 @item
137 @command{nncp-rm} is able to delete outbound/inbound, @file{.seen},
138 @file{.part}, @file{.lock} and temporary files.
139 @end itemize
140
141 @node Release 0.12
142 @section Release 0.12
143 @itemize
144 @item
145 Sendmail command is called with @env{NNCP_SENDER} environment variable.
146 @end itemize
147
148 @node Release 0.11
149 @section Release 0.11
150 @itemize
151 @item
152 @command{nncp-stat}'s command output is sorted by node name.
153 @end itemize
154
155 @node Release 0.10
156 @section Release 0.10
157 @itemize
158 @item
159 @command{nncp-freq}'s @file{DST} argument is optional now. Last
160 @file{SRC} path's element will be used by default.
161 @end itemize
162
163 @node Release 0.9
164 @section Release 0.9
165 @itemize
166 @item
167 Fix @option{-rx}/@option{-tx} arguments processing in
168 @command{nncp-call} command. They were ignored.
169 @end itemize
170
171 @node Release 0.8
172 @section Release 0.8
173 @itemize
174 @item
175 Little bugfix in @command{nncp-file} command, where @option{-minsize}
176 option for unchunked transfer was not in KiBs, but in bytes.
177 @end itemize
178
179 @node Release 0.7
180 @section Release 0.7
181 @itemize
182 @item
183 Ability to feed @command{nncp-file} from stdin, that uses an encrypted
184 temporary file for that.
185
186 @item
187 Chunked files transmission appeared with corresponding
188 @command{nncp-reass} command and @option{freqchunked} configuration file
189 entry. Useful for transferring big files over small storage devices.
190
191 @item
192 @option{freqminsize} configuration file option, analogue to
193 @option{-minsize} one.
194
195 @item
196 @command{nncp-xfer}'s @option{-force} option is renamed to
197 @option{-mkdir} for clarity.
198
199 @item
200 @option{-minsize} option is specified in KiBs, not bytes, for
201 convenience.
202
203 @item
204 @command{nncp-newcfg} command is renamed to @command{nncp-cfgnew},
205 and @command{nncp-mincfg} to @command{nncp-cfgmin} -- now they have
206 common prefix and are grouped together for convenience.
207
208 @item
209 @command{nncp-cfgenc} command appeared, allowing configuration file
210 encryption/decryption, for keeping it safe without any either OpenPGP or
211 similar tools usage.
212
213 @item
214 Cryptographic libraries (dependencies) are updated.
215 @end itemize
216
217 @node Release 0.6
218 @section Release 0.6
219 @itemize
220 @item Small @command{nncp-rm} command appeared.
221 @item Cryptographic libraries (dependencies) are updated.
222 @end itemize
223
224 @node Release 0.5
225 @section Release 0.5
226 @itemize
227 @item Trivial small fix in default niceness level of @command{nncp-file}
228 and @command{nncp-freq} commands.
229 @end itemize
230
231 @node Release 0.4
232 @section Release 0.4
233 @itemize
234 @item Small fix in @command{nncp-call}, @command{nncp-caller},
235 @command{nncp-daemon}: they can segmentation fail sometimes (no data is
236 lost).
237 @item @command{nncp-newnode} renamed to @command{nncp-newcfg} -- it is
238 shorter and more convenient to use.
239 @item @command{nncp-mincfg} command appeared: helper allowing to create
240 minimalistic stripped down configuration file without private keys,
241 that is useful during @command{nncp-xfer} usage.
242 @end itemize
243
244 @node Release 0.3
245 @section Release 0.3
246 Fixed compatibility with Go 1.6.
247
248 @node Release 0.2
249 @section Release 0.2
250 @itemize
251 @item @strong{Incompatible} packet's format change (magic number is
252 changed too): size field is encrypted and is not send in plaintext
253 anymore.
254 @item @option{-minsize} option gives ability to automatically pad
255 outgoing packets to specified minimal size.
256 @item @command{nncp-daemon} and
257 @command{nncp-call}/@command{nncp-caller} always check new @emph{tx}
258 packets appearance in the background while connected. Remote side is
259 immediately notified.
260 @item @option{-onlinedeadline} option gives ability to configure timeout
261 of inactivity of online connection, when it could be disconnected. It
262 could be used to keep connection alive for a long time.
263 @item @option{-maxonlinetime} option gives ability to set maximal
264 allowable online connection aliveness time.
265 @item @command{nncp-caller} command appeared: cron-ed TCP daemon caller.
266 @item @command{nncp-pkt} command can decompress the data.
267 @end itemize