chiark / gitweb /
changelog: work on documentation of changes since ea31544cc33a
[secnet.git] / debian / changelog
1 secnet (0.6.0~) unstable; urgency=medium
2
3   * secnet: Make stderr line buffered
4   * logfile: Log to stderr by default (`filename' key now optional)
5   * logfile: Do not log differently with --nodetach
6   * logfile: New `prefix' option.
7
8 internal refactorings in secnet
9
10 test suite
11   * stest: Use stderr, not tty, for logging
12   * stest: Use new `prefix' option.
13   * stest: Add debug logs
14   * tests, mtest: Provide and use `prexec' for helping with debugging
15   * stest: Print the secnet runes we run
16   * stest: Print the special env vars we pass to secnet
17   * stest: Don't prefix ./ with another ./, in socktmp
18   * stest: Support not running secnet ourselves
19   * stest: Replace the call to `exit 1' with a new proc `finish'
20   * stest: Record the pids of of the secnets we spawn
21   * stest: Kill our child secnets when we call finish
22   * stest: Use `finish' for success exits
23   * stest: If one of our secnets dies, call the test a failure
24   * stest: Decode the slip packets that come via fake netlink
25   * stest: Check that received packet is as expected
26   * stest: Drop a redundant test
27   * mtest/t-prefix: Drop redundant setting of seddery
28   * test-example: Rules for making a privkeys directory
29   * test-example: Make privkeys by default
30   * test-example: Add the inside.key to the privcache too
31   * test-example: Add a 2nd rsa1 key
32   * stest: Transfer pubkeys from test-example
33   * stest: Provide a global `hash' key
34   * stest: Honour new privkey() hash
35   * tests: Pass --output-version=1 to make-secnet-sites
36   * test-example: Provide a new-style public key set for site outside
37   * test-example: Make sites.conf variable, in principle
38   * test-example: Generate new style sites.conf
39   * test-example: Test new long-term key arrangements
40   * test-example: all-privkeys: Define, and indirect through, a variable
41   * stest: Fix an entry in &DEPS
42   * mtest: Use --pubkeys-elide instead of --output-version
43   * stest: Honour new sitesconf_hook
44   * stest/t-nonnego-oo: Use `make-public' verb
45   * test-common: Use $(wildcard ) rather than $(shell echo )
46   * test-common: Framework for compatibility tests
47   * stest: Machinery for runing an old secnet if a test wants
48   * sest/t-Cnonnego-on: New test
49   * stest: Make it possible to have kex initiated by `outside'
50   * stest/t-Cnonnego-onr: New test
51   * stest: Add test for load-private
52   * stest: Introduce adj-after
53   * stest: Honour SECNET_STEST_TIMEOUT_MUL to multiply timeouts
54   * stest: Move puts $argl into divert branches
55   * stest: When SECNET_STEST_DIVERT_* set, print diverted command too
56   * stest: Require SECNET_STEST_DIVERT_* paths to start / or ./
57   * stest: Allow SECNET_STEST_DIVERT_*='i <some stuff>'
58   * stest: Print spawn rune on a line by itself
59   * test-example: Use subdirmk's new &:macro feature
60
61 administrivia
62   * dir-locals: Provide python-indent-offset too
63   * Provide osdep.[ch], currently empty
64   * portability: Provide implementation of fmemopen
65
66 build system
67   * configure.ac: Drop checks for systems lacking stdint.h
68   * configure.ac: Drop AC_STDC_HEADERS
69   * configure.ac: Do not check for lack of standard headers
70   * autogen.sh: Write a comment about need for autoheader
71   * parallel bisect scripts: ad-hoc
72   * parallel bisect scripts: Better logging
73   * parallel bisect scripts: Honour $1 as iteration count
74   * build system: Fix race bug in recheck target
75
76 make-secnet-sites tainting
77   * make-secnet-sites: Tainted: Fix a lot of bad return values
78
79 config
80   * conffile: find_cl_if: fix fail_if_invalid==False
81   * config: Reject rather than silently ignoring wrong closure values
82
83 bugfixes
84   * rsa: emsa_pkcs1: Fix a message
85   * site: Move earlier all things needed for slog
86   * dh: Fix mpz padding bug in use of write_mpbin
87   * mobile sites: Do not ever expire peer addresses
88
89 new signature scheme key handling
90   * pubkey handling: Document key sets, id, etc. plan
91   * sigkey handling: Introduce sigkeyid type
92   * sigkey handling: define MAX_SIG_KEYS
93   * sigkey handling: Introduce serialt type
94   * sigpubkey/sigprivkey: Provide a hash_if
95   * sigpubkey/sigprivkey: Provide a dispose() method
96   * sigscheme: Interface for signature schemes
97   * privcache: New closure for signature key handling
98   * privcache: Use new pathprefix_template facility
99   * privcache: Better debug
100   * privcache: Remove some spurious \n in messages
101   * site: New SIGKEYS log class, at level INFO, enabled by default
102   * NOTES: Add protocol elements for public key negotiation
103   * site: generate_msg: Introduce `privkey' variable
104   * site: Introduce `pubkey' variable (twice)
105   * site: Be able to use multiple private keys
106   * site: Read public peer keys from key file
107   * site: Update peer keys from ~update file
108   * site: Write an argument for the soundness of key file update
109   * site: key update soundness argument: deal with concurrency
110   * site: Reserve <peer-keys>~tmp for make-secnet-sites
111   * site: Remove a spurious \n in a message
112   * secnet: Provide `make-public' verb
113
114 base91
115   * README: Introduce spec for "base91s" encoding
116   * B91 C DUMMY SYMLINK - WILL BE SUBTREE MERGE
117   * base91: CREDITS: Add information about C library
118   * base91: Build the C basE91 code with our own renaming
119   * base91: Patch the C version for our charset change
120   * base91: Link it into secnet
121   * BASE91 PYTHON DUMMY SYMLINK - WILL BE SUBTREE MERGE
122   * base91: CREDITS: Add information about Python library
123   * base91: Python: make `import' work
124   * pubkeys: Provide parser (and spec) for peer pubkeys files
125   * pubkeys: Provide ability to add extra action to KEYWORD
126   * pubkeys: Provide `fallback_skip' variable
127   * pubkeys: Introduce `pkgf' fallback groups
128   * pubkeys: Print file path in some log messages
129   * pubkeys: Move path and lno into a struct cloc
130   * pubkeys: Pass a cloc to loadpub
131   * pubkeys: Improve debug message for expected ENOENT
132   * pubkeys: Better debug logging for syntax errors
133   * pubkeys: Do not mind missing serial
134
135 rsa1
136   [stuff to support new scheme]
137   * rsa1: Drop filename from two error messages
138   * rsa: Strip a couple of spurious newlines from pub key messages
139
140 NEEDS FIX/CHECK
141   * README: Document new semantics for `hash'
142   * privcache; uncached_load_file: Introduce error_out
143
144   * docs: Fix rsapriv/rsapub closure names
145   * docs: Move peer-keys documentation into a README file
146
147 mss
148   * make-secnet-sites: Deduplicate `complain'
149   * make-secnet-sites: Tolerate late `complain'
150   * make-secnet-sites: Write output to ...~tmp~ and rename
151   * make-secnet-sites: Tainted.name: take `what'
152   * make-secnet-sites: Tainted: Provide hexid and base91
153   * make-secnet-sites: set_property: Break out kw
154   * make-secnet-sites: set_property: Break out propname
155   * make-secnet-sites: set_property: Support "aliases"
156   * make-secnet-sites: pubkeys: Allow multiple
157   * make-secnet-sites: Provide --debug and debugrepr
158   * make-secnet-sites: Tainted: Provide some commented-out debug
159   * make-secnet-sites: Introduce FilterState
160   * make-secnet-sites: pline: Break up `copyout'
161   * make-secnet-sites: Provide base91s_encode and base91s_decode
162   * make-secnet-sites: Provide --output-version option
163   * make-secnet-sites: Allow properties to control output to sites
164   * make-secnet-sites: Provide ArgActionLambda
165   * make-secnet-sites: Provide `serial' property class
166   * make-secnet-sites: Prepare for multiple public key types
167   * make-secnet-sites: Support new `pub' directive
168   * make-secnet-sites: Make the `pub' key name primary
169   * make-secnet-sites: Do not write `pub' entries in v1 output
170   * make-secnet-sites: Do not use `copy' in pubkey forsites
171   * make-secnet-sites: Write rsa1 keys as `pub rsa1 ...' in >=v2
172   * make-secnet-sites: Handle `pub rsa1' properties specially
173   * make-secnet-sites: Add new pubkeys-dir option, and pubkey paths
174   * make-secnet-sites: New --pubkeys-install option
175   * make-secnet-sites: Without --pubkeys-install, write appropriate key
176   * make-secnet-sites: Support `serial'
177   * make-secnet-sites: Support `pkg' and `pkgf'
178   * make-secnet-sites: In v1 output, ignore keys for non-0 groups
179   * make-secnet-sites: Rework with new `inpub' class
180   * make-secnet-sites: Rework --pubkeys-MODE, provide --pubkeys-single
181   * make-secnet-sites: New --pubkeys-elide mode
182   * make-secnet-sites: Declare `pubkey' directive old
183
184   * make-secnet-sites: Introduce new OpMod classes
185   * make-secnet-sites: Refactor operational code into OpModes
186   * make-secnet-sites: Move sites file writing into OpBase
187   * make-secnet-sites: OpBase.read_in: save read lines
188   * make-secnet-sites: Provide explicit --conf mode option
189   * make-secnet-sites: Abolish now-obsolete `service' variable
190   * make-secnet-sites: OpBase.write_out: Tolerate sitesfile is None
191   * make-secnet-sites: OpBase.write_out: Move heading back into OpUserv
192   * make-secnet-sites: OpUserv: Rename sitesfile to outputfile
193   * make-secnet-sites: OpConf: Move positional_args to OpBase
194   * README.make-secnet-sites: Slightly restructure mode docs
195   * make-secnet-sites: Provide --filter mode
196   * mtest/t-filter: New test for --filter mode
197
198 other changes
199   * site: Always advertise all capabilities
200   * rsa: Bring hash selection in-house
201   * sig: Abolish sethash and defhash everywhere
202
203
204  --
205
206 secnet (0.5.1) unstable; urgency=medium
207
208   POTENTIALLY INCOMPATIBLE CHANGE.  Some security implications.
209
210   * make-secnet-sites: Prefix names when writing secnet sites.conf file.
211
212     make-secnet-sites must copy names (vpn, location and site names) from
213     the input sites file (which is not wholly trusted) to the secnet
214     config file.  Prior to this release, naming a location or site the
215     same as a secnet predefined name could generate a broken sites.conf
216     which secnet would reject.  (With the existing featureset,
217     malfunctions other than rejection, eg privilege escalation, are not
218     possible.)
219
220     make-secnet-sites now adds a prefix to these names when writing
221     sites.conf.  This will not affect configurations which use the
222     make-secnet-sites-provided `all-sites' key, as is usual.  Other
223     configurations will break unless the references in the static part of
224     the config are adjusted.
225
226     Previous behaviour can be restored with the --no-conf-key-prefix
227     option.  (Planned future enhancements to secnet are likely to make use
228     of that option, with untrusted input, dangerously insecure.)
229
230   other changes to make-secnet-sites:
231   * Fix argument parsing.  Fixes a regression affecting -P in 0.5.0,
232     and also fixes new facilities introduced in 0.5.0.
233   * Sort the properties on output (and adjust the test case expected
234     outputs).  Tests now pass on (at least) Python 2.7.13, 3.5.3, 3.7.5.
235   * Delete some unused code.
236
237   secnet:
238   * Change one idiom to avoid a warning from GCC9.  No functional change.
239
240   build system - MAJOR CHANGES:
241   * Fix out-of-tree builds.  (Broken in 0.5.0)
242   * Replace recursive make with use of the new subdirmk system.
243     This represents a fairly comprehensive overhaul of the makefiles.
244     Several bugs (esp. involving dependencies between files in different
245     directories) are fixed.
246   * Drop `make check' from `make all'.  (Otherwise there is no way
247     to ask for `all' without `check'.)
248   * Suppress two unhelpful new compiler warnings from GCC9.
249   * Release checklist update.
250
251   documentation:
252   * Creit Mark Wooding properly in CREDITS.
253   * Include DEVELOPER-CERTIFICATE.
254
255   tests:
256   * Locations now have different names to sites.
257   * Somewhat better debugging output from mtest.
258   * Do not run msgcode-test except with `make fullcheck'.
259   * Other minor bugfixes and improvments.
260   * stest: Suppress unhelpful -Wno-unused-result (needed for stretch).
261
262  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Fri, 22 Nov 2019 23:13:14 +0000
263
264 secnet (0.5.0) unstable; urgency=medium
265
266   make-secnet-sites SECURITY FIX:
267   * Do not blindly trust inputs; instead, check the syntax for sanity.
268     Previous releases can be induced to run arbitrary code as the user
269     invoking secnet (which might be root), if a secnet sites.conf is used
270     that was generated from an untrustworthy sites file.
271   * The userv invocation mode of make-secnet-sites seems to have been safe
272     in itself, but it previously allowed hazardous data to be propagated
273     into the master sites file.  This is now prevented too.
274
275   make-secnet-sites overhaul work:
276   * make-secnet-sites is now in the common subset of Python2 and Python3.
277     The #! is python3 now, but it works with Python2.7 too.
278     It will probably *not* work with old versions of Python2.
279   * We no longer depend on the obsolete `ipaddr' library.  We use
280     `ipaddress' now.  And this is onlo a Recommends in the .deb.
281   * Ad-hoc argument parser been replaced with `argparse'.
282     There should be no change to existing working invocations.
283   * Bad address syntax error does not wrongly mention IPv6 scopes.
284   * Minor refactoring to support forthcoming work.  [Mark Wooding]
285
286   other bugfixes, improvements and changes to secnet itself:
287   * Better logging of why we are sending NAK messages.
288   * Correctly use the verified copy of the peer remote capabilities
289     from MSG3.  (Bug is not a vulnerability.)    [Mark Wooding]
290   * Significant internal rearrangements and refactorings, to support
291     forthcoming key management work.  [Mark Wooding and Ian Jackson]
292
293   build system etc.:
294   * Completely overhaul release checklist; drop dist target.
295   * Remove dependency on `libfl.a'.  [Mark Wooding]
296   * polypath.c: Fix missing include of <limits.h>.  [Mark Wooding]
297   * Add a Wireshark dissector `secnet-wireshark.lua'.  It is not
298     installed anywhere right now.  [Mark Wooding]
299
300   documentation:
301   * Improve documentation of capability negotiation in NOTES, secnet(8)
302     and magic.h.  [Mark Wooding]
303
304  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 24 Oct 2019 19:11:54 +0100
305
306 secnet (0.4.5) unstable; urgency=medium
307
308   * INSTALL: Mention that rsa key generation might need ssh-keygen1.
309   * mobile: Fix negotiation bug with mixed old/new secnets and
310     simultaneous key setup attempts by each end.  [Mark Wooding]
311   * Makefile.in: Support installation from a `VPATH' build.  [Mark Wooding]
312   * Portability fixes for clang.  [Mark Wooding]
313
314  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 21 Sep 2019 12:04:31 +0100
315
316 secnet (0.4.4) unstable; urgency=medium
317
318   Security fix:
319   * make-secnet-sites: Don't allow setting new VPN-level properties
320     when restricted.  This could allow denial of service by
321     users with delegated authorisation.  [Mark Wooding]
322
323   Bugfixes for poor network environments:
324   * polypath: cope properly with asymmetric routing, by correcting
325     the handling of late duplicated packets etc.   Protocol is now
326     incompatible with secnet prior to 0.3.0 when either end is mobile.
327   * Randomise key setup retry time.
328
329   Other bugfixes:
330   * rsa and cbcmac: Fix configuration error messages.  [Mark Wooding]
331   * Handle IPv4 addresses properly (ie, not foolishly byte-swapped),
332     when IPv6 is not available.  [Mark Wooding]
333   * Better logging (and less foolish debug), especially about whether
334     key is set up, and about crossed key setup attempts.
335   * Internal refactoring and fixes.  [Ian Jackson and Mark Wooding]
336
337   Build system and portability:
338   * configure: rerun autogen.sh with autoconf 2.69-10
339   * Avoid memset(0,0,0) wrt st->sharedsecret.  (Fixes compiler warning;
340     in theory might cause miscompilation.)  [Mark Wooding]
341
342   Documentation:
343   * README.make-secnet-sites: new documentation file.  [Mark Wooding]
344   * NOTES: Describe current allocation of capability bits.  [Mark Wooding]
345   * NOTES: tiny fix tot protocol description.
346   * secnet(8): Delete wrong information about dh groups.  [Mark Wooding]
347
348   Administrivia:
349   * Fix erroneous GPL3+ licence notices "version d or later" (!)
350   * .dir-locals.el: Settings for Python code.  [Mark Wooding]
351
352  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 08 Sep 2019 22:53:14 +0100
353
354 secnet (0.4.3) unstable; urgency=low
355
356   Security improvement:
357   * Use `mpz_powm_sec' for modexps.
358
359   Enhancements:
360   * Implement comm-info and dedicated-interface-addr feature, for
361     benefit of hippotat.
362   * Implement `keepalive' site option, to try to keep link always up.
363
364   Build etc. fixes:
365   * #include <limits.h> (fixes the build on jessie).
366   * Tolerate building from a git checkout, but with git not installed.
367     (This can happen in chroots.)
368   * Turn off -Wsign-compare for bison output.
369   * Makefile.in: Fix `check-ipaddrset' rule to get reference from
370     $(srcdir).  (Makes out-of-tree builds work properly.)
371   * Release checklist fixes.
372   * Burn version numbers 0.4.1 and 0.4.2 due to errors in release prep.
373
374   Bugfixes:
375   * When printing messages about dropping IPv6, do not print anything
376     about ihl.  (Check the IP version field first!)
377   * When turning on debug, turn on verbose too.
378
379  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 25 Nov 2017 13:36:41 +0000
380
381 secnet (0.4.0) unstable; urgency=low
382
383   Debugging improvements:
384   * Packet-level debugging from site notes errors from transmit.
385   * Report when transport peers updated as a result of transmit.
386
387  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 28 Feb 2015 15:03:00 +0000
388
389 secnet (0.4.0~beta2) unstable; urgency=low
390
391   Polypath bugfixes:
392   * Ignore IPv6 Unique Local unicast addresses.
393   * Skip "tentative" IPv6 local addresses.
394   * Improve logging and debug output.
395
396   Portability fix:
397   * Build where size_t is not compatible with int.
398
399   Build system and packaging fixes:
400   * Makefile: support DESTDIR.
401   * debian/rules: set DESTDIR (not prefix).
402   * debian/rules: Support dpkg-buildflags.
403   * Install ipaddrset.py and secnet.8 with correct permissions.
404   * Fix check for <linux/if_tun.h> and git rid of our copy.
405   * Use -lresolv only if inet_aton is not found otherwise.
406   * Use -lnsl only if inet_ntoa is not found otherwise.
407   * debian/rules: Provide build-arch and build-indep targets.
408   * debian/rules: Do not run build for *-indep (!)
409   * Makefile.in: Putative dual (backport and not) release build process doc.
410
411   Copyright updates:
412   * Update to GPLv3.  Add missing copyright notices and credits.
413   * Get rid of old FSF street address; use URL instead.
414   * Remove obsolete LICENCE.txt (which was for snprintf reimplementation).
415   * Remove obsolete references to Cendio (for old ipaddr.py).
416
417  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 28 Dec 2014 17:14:10 +0000
418
419 secnet (0.4.0~beta1) unstable; urgency=low
420
421   New features:
422   * Support transport over IPv6.  (We do not yet carry IPv6 in the private
423     network.)  IPv6 support depends on IPv6-capable adns (adns 1.5.x).
424   * New polypath comm, which can duplicate packets so as to send them via
425     multiple routes over the public network, for increased
426     reliability/performance (but increased cost).  Currently Linux-only
427     but should be fairly easy to port.
428   * Support multiple public addresses for peers.
429   * Discard previously-received packets (by default).
430
431   Logging improvements:
432   * Report (each first) transmission and reception success and failure.
433   * Log reason for DNS reolution failure.
434   * Log unexpected kinds of death from userv.
435   * Log authbind exit status as errno value (if appropriate).
436
437   Configuration adjustments:
438   * Adjust default number of mobile peer addresses to store when a peer
439     public address is also configured.
440   * Make specifying peer public port optional.  This avoids making special
441     arrangements to bind to a port for in mobile sites with no public
442     stable address.
443
444   Bugfixes:
445   * Hackypar children will die if they get a terminating signal.
446   * Fix signal dispositions inherited by secnet's child processes.
447   * Fix off-by-one error which prevented setting transport-peers-max to 5.
448
449   Test, build and internal improvements:
450   * Use conventional IP address handling library ipaddr.py.
451   * Provide a fuzzer for the slip decoder.
452   * Build system improvements.
453   * Many source code cleanups.
454
455  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 26 Oct 2014 15:28:31 +0000
456
457 secnet (0.3.4) unstable; urgency=low
458
459   SECURITY FIX:
460   * The previous security fix to buffer handling was entirely wrong.  This
461     one is better.  Thanks to Simon Tatham for the report and the patch.
462
463  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 22 Sep 2014 16:16:11 +0100
464
465 secnet (0.3.3) unstable; urgency=high
466
467   SECURITY FIXES:
468   * Pass correct size argument to recvfrom.  This is a serious security
469     problem which may be exploitable from outside the VPN.
470   * Fix a memory leak in some error logging.
471
472   Other related fixes:
473   * Two other latent bugs in buffer length handling found and fixed.
474   * Non-critical stylistic improvements to buffer length handling, to make
475     the code clearer and to assist audit.
476
477  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Fri, 19 Sep 2014 23:50:45 +0100
478
479 secnet (0.3.3~beta1) unstable; urgency=low
480
481   Installation compatibility fix:
482   * In make-secnet-sites, always use our own ipaddr.py even if the
483     incompatible modern ipaddr.py is installed (eg via python-ipaddr.deb).
484     (Future versions of secnet are going to need that Python module to be
485     installed.)
486
487   For links involving mobile sites:
488   * Use source of NAK packets as hint for peer transport address.
489   * When initiating rekey, make use of data transport peer addresses.
490
491   Build fix:
492   * Provide clean target in test-example/Makefile.
493
494  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Fri, 19 Sep 2014 00:11:44 +0100
495
496 secnet (0.3.2) unstable; urgency=low
497
498   * Release of 0.3.2.  No code changes since 0.3.1~beta1.
499
500  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 26 Jun 2014 20:27:58 +0100
501
502 secnet (0.3.2~beta1) unstable; urgency=low
503
504   For links involving mobile sites:
505   * SECURITY: Properly update peer address array when it is full.
506   * Do name-resolution on peer-initiated key setup too, when we are mobile
507     (and other name-resolution improvements).
508
509   Other minor improvements:
510   * Log peer addresses on key exchange timeout.
511   * When printing version (eg during startup), use value from git-describe
512     and thus include git commit id where applicable.
513   * Updates to release checklist in Makefile.in.
514   * Use C99 _Bool for bool_t.
515
516  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Fri, 06 Jun 2014 01:17:54 +0100
517
518 secnet (0.3.1) unstable; urgency=low
519
520   * Release of 0.3.1.  No code changes since 0.3.1~beta3.
521
522  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 15 May 2014 01:08:30 +0100
523
524 secnet (0.3.1~beta3) unstable; urgency=low
525
526   * Build fixes for non-i386 architectures and gcc 4.8.2.
527
528  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 08 May 2014 19:53:43 +0100
529
530 secnet (0.3.1~beta2) unstable; urgency=low
531
532   Fix relating to new fragmentation / ICMP functionality:
533   * Generate ICMP packets correctly in point-to-point configurations.
534
535  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 03 May 2014 18:58:09 +0100
536
537 secnet (0.3.1~beta1) unstable; urgency=low
538
539   Security fixes (vulnerabilities are to inside attackers only):
540   * SECURITY: Fixes to MTU and fragmentation handling.
541   * SECURITY: Correctly set "unused" ICMP header field.
542   * SECURITY: Fix IP length check not to crash on very short packets.
543
544   New feature:
545   * Make the inter-site MTU configurable, and negotiate it with the peer.
546
547   Bugfixes etc.:
548   * Fix netlink SEGV on clientless netlinks (i.e. configuration error).
549   * Fix formatting error in p-t-p startup message.
550   * Do not send ICMP errors in response to unknown incoming ICMP.
551   * Fix formatting error in secnet.8 manpage.
552   * Internal code rearrangements and improvements.
553
554   Packaging improvements:
555   * Updates to release checklist in Makefile.in.
556   * Additions to the test-example suite.
557
558  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 01 May 2014 19:02:56 +0100
559
560 secnet (0.3.0) unstable; urgency=low
561
562   * Release of 0.3.0.  No code changes since 0.3.0~beta3.
563   * Update release checklist.
564
565  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 01 Sep 2013 20:27:48 +0100
566
567 secnet (0.3.0~beta3) unstable; urgency=low
568
569   * New upstream version.
570    - Stability bugfix: properly initialise site's scratch buffer.
571
572  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 05 Aug 2013 11:54:09 +0100
573
574 secnet (0.3.0~beta2) unstable; urgency=low
575
576   * New upstream version.
577    - SECURITY FIX: RSA public modulus and exponent buffer overflow.
578    - SECURITY FIX: Use constant-time memcmp for message authentication.
579    - SECURITY FIX: Provide a new transform, eax-serpent, to replace cbcmac.
580    - SECURITY FIX: No longer send NAKs for NAKs, avoiding NAK storm.
581    - SECURITY FIX: Fix site name checking when site name A is prefix of B.
582    - SECURITY FIX: Safely reject too-short IP packets.
583    - Better robustness for mobile sites (proper user of NAKs, new PROD msg).
584    - Better robustness against SLIP decoding errors.
585    - Fix bugs which caused routes to sometimes not be advertised.
586    - Protocol capability negotiation mechanism.
587    - Improvements and fixes to protocol and usage documentation.
588    - Other bugfixes and code tidying up.
589
590  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 25 Jul 2013 18:26:01 +0100
591
592 secnet (0.3.0~beta1) unstable; urgency=low
593
594   * New upstream version.
595    - SECURITY FIX: avoid crashes (or buffer overrun) on short packets.
596    - Bugfixes relating to packet loss during key exchange.
597    - Bugfixes relating to link up/down status.
598    - Bugfixes relating to logging.
599    - make-secnet-sites made more sophisticated to support two vpns on chiark.
600    - Documentation improvements.
601    - Build system improvements.
602   * Debian packaging improvements:
603    - Native package.
604    - Maintainer / uploaders.
605    - init script requires $remove_fs since we're in /usr.
606
607  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 12 Jul 2012 20:18:16 +0100
608
609 secnet (0.2.1-1) unstable; urgency=low
610
611   * New upstream version.  (authbind endianness fix)
612
613  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 11 Dec 2011 13:14:57 +0000
614
615 secnet (0.2.0-1) unstable; urgency=low
616
617   * New upstream version.
618
619  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 10 Dec 2011 22:44:41 +0000
620
621 secnet (0.1.18-1) unstable; urgency=low
622
623   * New upstream version.
624
625  -- Stephen Early <steve@greenend.org.uk>  Tue,  18 Mar 2008 17:45:00 +0000