Merge branches 'mdw/knock' and 'mdw/ipv6' into bleeding
authorMark Wooding <mdw@distorted.org.uk>
Fri, 25 Jan 2019 12:08:24 +0000 (12:08 +0000)
committerMark Wooding <mdw@distorted.org.uk>
Fri, 25 Jan 2019 12:08:24 +0000 (12:08 +0000)
* mdw/knock:
  Add notion of `ephemeral' associations and a goodbye protocol.
  Add new `knock' protocol.
  server/{keyexch,peer}.c: Maybe key-exchange messages come out of the blue.
  server/keyexch.c (kx_message): Squish vertically.
  server/keyexch.c: Abstract out the common message-handling behaviour.
  server/keymgmt.c: Track and find keys by their 32-bit IDs.
  server/test.c: Add a program to assist unit tests.
  server/servutil.c: Add utilities for plain asymmetric encryption.
  server/servutil.c: Add utilities for simple leaky-bucket rate limiting.
  server/keyexch.c: Rename kx_init => kx_setup.
  server/: Augment challenges to allow a payload.
  server/chal.c: Capture `master->algs.bulk' in a variable.
  server/chal.c: Rename bulk => bchal.
  server/: Expose and enhance the bulk-key-derivation protocol.

* mdw/ipv6: (64 commits)
  contrib/greet.in: Accept IPv6 addresses.
  contrib/tripe-ipif.in: Fixing for IPv6.
  svc/conntrack.in: Add IPv6 support.
  svc/conntrack.in: Split out a base class from `InetAddress'.
  svc/conntrack.in: Contemplate multiple address families.
  svc/conntrack.in: Allow multiple networks in a peer pattern.
  svc/conntrack.in (kickpeers): Refactor and reformat the search loop.
  svc/conntrack.in (kickpeers): Rename `map' variable.
  svc/conntrack.in: Process peer patterns in order.
  svc/conntrack.in: Maintain config groups in a dictionary.
  svc/conntrack.in: Make an `InetAddress' class to do address wrangling.
  svc/conntrack.in: Factor out network parsing.
  svc/conntrack.in: Gather address hacking functions into a new section.
  svc/conntrack.in: Introduce a function for parsing address strings.
  svc/conntrack.in (strmask): Consistently return a string object.
  svc/conntrack.in: Fix netmask parsing.
  svc/conntrack.in: Leave time for network configuration to settle.
  svc/conntrack.in: Hoist `netupdown' above `kickpeers'.
  server/, mon/: Introduce transport of TrIPE over IPv6.
  server/addrmap.c (hash): Visually tighten the arithmetic.
  ...

1  2 
mon/tripemon.in
peerdb/peers.in.5.in
py/tripe.py.in
server/Makefile.am
server/admin.c
server/peer.c
server/servutil.c
server/tripe-admin.5.in
server/tripe.c
server/tripe.h

diff --cc mon/tripemon.in
@@@ -1055,10 -1063,15 +1063,15 @@@ class AddPeerDialog (MyDialog)
      table = GridPacker()
      me.vbox.pack_start(table, True, True, 0)
      me.e_name = table.labelled('Name',
 -                               ValidatingEntry(r'^[^\s.:]+$', '', 16),
 +                               ValidatingEntry(r'^[^\s:]+$', '', 16),
                                 width = 3)
+     me.l_af = table.labelled('Family', combo_box_text(),
+                              newlinep = True, width = 3)
+     for af in me.AFS:
+       me.l_af.append_text(af)
+     me.l_af.set_active(0)
      me.e_addr = table.labelled('Address',
-                                ValidatingEntry(r'^[a-zA-Z0-9.-]+$', '', 24),
+                                ValidatingEntry(r'^[a-zA-Z0-9.-:]+$', '', 24),
                                 newlinep = True)
      me.e_port = table.labelled('Port',
                                 ValidatingEntry(numericvalidate(0, 65535),
Simple merge
diff --cc py/tripe.py.in
Simple merge
  include $(top_srcdir)/vars.am
  
  sbin_PROGRAMS          =
 +noinst_PROGRAMS                =
  man_MANS               =
  
- LDADD                  = $(libtripe) $(libpriv) $(catacomb_LIBS)
+ LDADD                  = $(libtripe) $(libpriv) \
+                               $(catacomb_LIBS) $(ADNS_LIBS)
  
  ###--------------------------------------------------------------------------
  ### The main server.
diff --cc server/admin.c
Simple merge
diff --cc server/peer.c
Simple merge
Simple merge
Simple merge
diff --cc server/tripe.c
Simple merge
diff --cc server/tripe.h
Simple merge