commit f23ee9ec2d0fd1ce474bdbc2fed74bcbc3abe521
Author: Wouter Verhelst <w@uter.be>
Date:   Sun Nov 8 12:49:51 2015 +0100

    Fix one more case of read->readit

commit 1aa29812b681c4aacbf4262de351c25cdcdd70db
Author: Wouter Verhelst <w@uter.be>
Date:   Sun Nov 8 12:17:11 2015 +0100

    Ensure the off_t type is defined in punchdummy.c

commit f33b8d224aa761a39ea6c7f4df8c81cda91d7b2f
Author: Wouter Verhelst <w@uter.be>
Date:   Sun Nov 8 12:16:07 2015 +0100

    Don't produce the warning when in 'ask for list' mode

commit 5f059a428ad131e5b54818447134f1b28c7d2102
Author: Wouter Verhelst <w@uter.be>
Date:   Sun Nov 8 11:54:49 2015 +0100

    Reinstate inetd mode
    
    Untested, but should work

commit d7cbcf116eb58086b89c0f3b74aca0a29839cd66
Author: Wouter Verhelst <w@uter.be>
Date:   Sun Nov 8 11:46:08 2015 +0100

    Remove extraneous bits from this string (whoops)

commit 25fc7b3cc6aa9a55b338f7d134a774953739d6bb
Author: Wouter Verhelst <w@uter.be>
Date:   Sun Nov 8 11:36:22 2015 +0100

    Support the default export
    
    The protocol document has known about a default export since a while,
    but the implementation hasn't.
    
    Since we've thrown out the oldstyle negotiation protocol, reuse its
    command-line syntax to connect, but issue an appropriate warning from
    both nbd-client and nbd-server.
    
    This should fix github issue #27.

commit 7ac42f25c5e8bc56def2b4d76e520b1b25e6f3a5
Author: Wouter Verhelst <w@uter.be>
Date:   Sun Nov 8 10:45:49 2015 +0100

    Move readit() to cliserv.c, make nbd-client use it too

commit 3f866d97fd5c02dc9444297d4ba2d0666a9ef6f4
Author: Wouter Verhelst <w@uter.be>
Date:   Sun Nov 8 10:26:33 2015 +0100

    Minor whitespace fixes

commit 49f7a4e4c9eea1ea4c0373aed661c785f1f0fe38
Author: Wouter Verhelst <w@uter.be>
Date:   Sat Nov 7 16:05:43 2015 +0100

    Remove the append check from Makefile, too

commit c321b9e276903aa86b664f04c9b0a40157790a13
Author: Wouter Verhelst <w@uter.be>
Date:   Sat Nov 7 16:05:24 2015 +0100

    Fix a few logic reversals

commit 8db241a79c7a4de108a231f30607a5f8f75a785e
Author: Wouter Verhelst <w@uter.be>
Date:   Sat Nov 7 15:54:55 2015 +0100

    Fix off-by-one

commit 2150cc3d4be0600d01e13517aacde41ec0689f2c
Author: Wouter Verhelst <w@uter.be>
Date:   Sat Nov 7 15:40:54 2015 +0100

    Test the exptrim() function
    
    This is a basic test for now. Probably will add more in the future.
    
    This did require splitting several functions from nbd-server.c into
    their own file. That's good anyway, so whatever.

commit dbcb9dac42893b0bee000e47c9c1f487e636eadc
Author: Wouter Verhelst <w@uter.be>
Date:   Sat Nov 7 14:29:06 2015 +0100

    Remove now-unused test

commit d7b1d328e5576a6aa48b1c20cc3007929b93e5da
Author: Wouter Verhelst <w@uter.be>
Date:   Sat Nov 7 11:00:55 2015 +0100

    Fix TRIM implementation.
    
    Should hopefully fix PR#30, but without dropping support for multi-file
    exports.

commit 7025a632f0e5055ca3300da8796b48bfbb33f1ed
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Nov 6 18:12:33 2015 +0100

    Fix TRIM implementation
    
    Previously, we would happily try to trim when readonly but not
    treefiles, which is broken; we would happily trim the original file when
    copy-on-write was on, which is equally broken; and we would happily trim
    beyond the end of the device.
    
    Fix all three cases.
    
    Additionally, the multiple file trim was broken because we didn't
    increment a counter. Fix as well.

commit 8e5d24a25a4f3779b731031ef1d7c2e88e0472b5
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Nov 6 15:30:12 2015 +0100

    Check the correct sockaddr struct for address family

commit 4a6a544ae47d24b293f936916695034ecbc42520
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Nov 6 15:29:52 2015 +0100

    Remove v6-mapped prefix when doing v4

commit 3df0bcf1fe9d53a934462d1b9383e3265323e396
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Nov 6 15:28:56 2015 +0100

    Whitespace fixes

commit cdb3fe79ee35a41b6ae03e2a2875d2ca6d7f8585
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Nov 6 13:43:38 2015 +0100

    Properly handle the IPv4/IPv6 case
    
    What asking for "anything" using AF_UNSPEC does is horribly ill defined.
    It used to be the case that Linux would return something that would
    listen to both IPv4 and IPv6 on the same socket, but this is no longer
    the case.
    
    As such, just stop pretending and loop over multiple listening
    addresses, instead, defaulting to "::, 0.0.0.0".
    
    As a side benefit, this allows people to specify multiple addresses to
    listen to.

commit ae310aa92e6e031dcc410baf0902760de2b4007e
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Nov 6 13:41:43 2015 +0100

    Fix various -Wall -Werror issues

commit 07e72167eb744163d41cc9958341dc94ada4e1f1
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Nov 6 11:11:08 2015 +0100

    Use intmax_t, which was made for this

commit 96d8549c08f3b5fa9c6247022e4f9ec48630af1b
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Nov 5 14:33:21 2015 +0100

    Add cowdir to test suite and dup_serve()

commit 111b57d9767ef122c0c71dbb5f2768f8f1793486
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Nov 5 14:32:54 2015 +0100

    Fix format strings
    
    A few format strings were using the wrong value, so correct them.

commit afd2d195f4ccfa8b805ba01f869f243053c132f8
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Nov 5 14:27:13 2015 +0100

    Clean out oldstyle support
    
    When removing oldstyle in a hurry back when 3.11 was released, all code
    paths that lead to "the SERVER type has stuff set for oldstyle sockets"
    were removed, but the code paths that actually checked for those sockets
    and mangled with them weren't. As such, there was still a lot of stuff
    there, stuff which would confuse the code and make it less easy to read.
    
    So, remove.
    
    While at it, we also removed two functions that dealt with SERVER types:
    - `append_serve`: this would connect a server and add it to a array of
      servers. After removing everything that was specific to oldstyle
      exports, all that remained was a single call to g_array_append_val,
      for which we don't need a separate function.
      Also remove the `append` test from the test suite, which did nothing
      beyond testing the functionality of `append_serve`
    - `setup_serve`: This would create the socket of a server and configure
      it (setsockopt() et al). This function as oldstyle-specific (the
      modernstyle sockets were configured elsewhere), so was removed in its
      entirety.
    
    After all that code was removed, we could also remove the `socket`,
    `socket_family` and `port` members of the SERVER type.

commit dc535e5895f394a787b071340aad06b897f4ffea
Author: Fanael Linithien <fanael4@gmail.com>
Date:   Tue Oct 20 23:40:08 2015 +0100

    Support trim on Cygwin
    
    It's done by using Win32's FSCTL_SET_ZERO_DATA ioctl.

commit 4825341be9fee8011522fc94f262d6301f8d83df
Author: Wouter Verhelst <w@uter.be>
Date:   Sat Oct 10 08:47:10 2015 +0200

    Move M4 files into that support directory

commit d3b7a50800df087d8e9357a70484cb262a74a8ea
Author: Wouter Verhelst <w@uter.be>
Date:   Sat Oct 10 08:46:41 2015 +0200

    Improve version-generating thing
    
    Make sure autoreconf can be run outside of a git checkout, even though
    the version number will be off

commit e83f16b6534048d243ab428734c25d1198dd0795
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 21:42:47 2015 +0200

    Revert "Use automake 1.15 rather than 1.14"
    
    This reverts commit b6526448961dd66d45537bdd599e1865b9cc0b1c.
    
    The problem isn't related to automake version, but to the fact that
    travis doesn't build in a git checkout.

commit b6526448961dd66d45537bdd599e1865b9cc0b1c
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 21:31:26 2015 +0200

    Use automake 1.15 rather than 1.14

commit 469369a8fe58ab8a7b64ef43a8c815838187a806
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 21:13:14 2015 +0200

    Fix tags
    
    We used some tags that don't actually exist in docbook. Fix.

commit 93790efdbaecf5ef7d797993cddc94589ef7ac5e
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 19:39:41 2015 +0200

    Fix markup, remove outdated section about oldstyle

commit 35f931124f1a1ea2f851450dba5b63f9b4925dbd
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 19:36:01 2015 +0200

    Add a check for writes to readonly exports

commit 4cefe244ae274ff7958434084990b8d902d83ebd
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 19:09:12 2015 +0200

    Don't forget about FUA

commit 27be90c27658b054c7a5230db2da837b07096527
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 19:08:46 2015 +0200

    Don't do the send_error thing
    
    That would've seen only one call, which is not very useful. Instead,
    inline it in the default: case

commit 5891724575c0a30784fbedff5355f24924088f07
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 19:07:31 2015 +0200

    Implement flush and trim requests

commit 72262017a5d9f83b174d2feeb44379e15d50a5eb
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 19:02:35 2015 +0200

    Handle disconnects
    
    This can't be done as a threadpool worker, since we need to wait for all
    outstanding requests to finish, first, and otherwise we'd deadlock waiting for
    ourself.

commit b2abcb5200181f6b37cb137263307a8f7c50fae9
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 18:59:44 2015 +0200

    Ensure we don't use invalid error messages.

commit 0256bfe640d1545f7fb9778065e7ba1131bda12a
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 18:48:34 2015 +0200

    Implement write calls

commit 3610eebc5f7fb115b2026834e88c3439b5ba59c1
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 18:47:25 2015 +0200

    Add missing brackets
    
    gcc optimized the entire if() away; I guess that is because of operator
    precedence and undefined behaviour. Add brackets to override the
    precedence.

commit 97f4290c3190c4eed5e4a586e061957a6bd2b278
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 18:46:06 2015 +0200

    Fix ntoh call
    
    req->type is 32 bits, not 64, so use the right function.
    
    I really really really want to use C11 generic selection, but I believe
    it's still too soon for that.

commit 950f7c3165404cf1e7d1b30289f9d34aef25bc7a
Author: Wouter Verhelst <w@uter.be>
Date:   Fri Oct 9 18:44:00 2015 +0200

    Add support for an nbdtab file
    
    This file, the format of which is modeled after fstab, will allow
    configuring an NBD device by way of a simple
    
      nbd-client nbdX
    
    rather than having to specify everything on the command line.
    
    Also add documentation for the file format.

commit 42422d76e4d0455f3cdfe639f87a6232de31120d
Author: Wouter Verhelst <w@uter.be>
Date:   Tue Oct 6 15:56:26 2015 +0200

    Support an "nbdtab" file
    
    This file, similar in format to fstab, will allow us to store NBD
    connection information in a simple file, and then allow nbd-client to
    connect using nothing more than the device name to be connected.

commit e13655b423428fcbb0bd20e044a27c3c81ecca53
Author: Wouter Verhelst <w@uter.be>
Date:   Tue Oct 6 15:54:35 2015 +0200

    Document -u option

commit 126510c300943a1bdd3b54071e25aa7c0dfef567
Author: Wouter Verhelst <w@uter.be>
Date:   Tue Oct 6 11:58:08 2015 +0200

    Fix usage layout of first version
    
    This was way too long to fit on a single line. Make it fit on 80 characters,
    which should be enough in most cases.

commit 057dd3ff839a0ec07e642ae01a2b9828fc9df49a
Author: Wouter Verhelst <w@uter.be>
Date:   Tue Oct 6 09:53:39 2015 +0200

    Reduce sleep time
    
    Currently, when we fork, we immediately try to trigger the partition
    scanning, which will fail, and then we wait a whole second (which is way
    longer than most connection attempts will take). This unneedlessly makes
    it take a full second for the setup to be done.
    
    Instead, turn this into a nanosleep which waits for .1 second. This is
    probably still too long, but since we need to poll for this, making it
    shorter is probably a bad idea.

commit c9af9d7d4df0f479e6e01a9621de7c85136b67c7
Author: Wouter Verhelst <w@uter.be>
Date:   Tue Oct 6 09:49:59 2015 +0200

    Cleanup
    
    When we removed oldstyle support, we had only done the minimum required
    to make it work, but there are still some leftovers from before.
    
    This removes one: assign the default port number to the port variable at
    the start of command line parsing, rather than when we notice we require
    newstyle negotiation.
    
    This also fixes a bug where "nbd-client -l <port>" would work, but
    "nbd-client <port> -l" wouldn't.

commit 15db3d551b1f0524ee19b5e7aa4d716523b62e23
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Sep 10 16:48:39 2015 +0200

    Improve formatting of numbers
    
    When running "make check", if the number of requests is increased by an
    order of magnitude and then reduced again, the old number remains
    on-screen. This is confusing, since it makes the user believe that the
    numbers have gone up.
    
    So, fix that by adding two spaces after the output, which should
    overwrite previous numbers.

commit 6c2d8511b86d46003b1d5955e7344dc7c45c6854
Author: Wouter Verhelst <w@uter.be>
Date:   Wed Aug 19 20:10:48 2015 +0200

    Start work on async I/O implementation
    
    Using GThreadPool and an extra struct, we put every request in a "work
    package" which is handed off to a worker thread.
    
    The worker thread then checks the work package and handles the request.
    
    Currently, only read requests are implemented.

commit f97e33595d21d82fec6aa9c9ddc3d99110913963
Author: Wouter Verhelst <w@uter.be>
Date:   Wed Aug 19 19:55:08 2015 +0200

    Invert return logic
    
    The READ_ALL_ERRCHK() does not touch the "retval" variable, so if it
    fails it will goto some error handling label which returns the existing
    value of retval, which is initialized to 0, for "no error". As a result,
    if we encounter an error in read(), currently the test will return
    success, which is wrong.
    
    We don't want to do this. Instead, make the default return value be -1,
    and only set it to 0 when we reach the end of the test.

commit d21f275ecf6b412de13384edc5358f6642de3dec
Author: Wouter Verhelst <w@uter.be>
Date:   Mon Aug 17 17:59:53 2015 +0200

    Remove file descriptor state dependency
    
    We used to do lseek() followed immediately by read() or write(). This
    works, but depends on the current position of the file descriptor.
    
    Since we want to move to a multithreaded implementation, replace the two
    calls by pread()/pwrite() instead, which combine the lseek() and
    read()/write() calls in one, removing the file descriptor offset
    dependency.

commit 02f30aa2bfa563b83ff6d3ef0283885bcc6f948c
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Aug 6 14:39:01 2015 +0200

    Add a symlink for the old name

commit e987bfd4817d605b001d39e3dd16984395c5339f
Author: Tuomas Räsänen <tuomasjjrasanen@tjjr.fi>
Date:   Sat Aug 1 14:46:04 2015 +0300

    spec: fix a typo

commit 2b7e5491813379754e6c1bc628ed98d371a8ff13
Author: Tuomas Räsänen <tuomasjjrasanen@tjjr.fi>
Date:   Sat Aug 1 14:39:11 2015 +0300

    spec: add a missing parenthesis

commit 56cfa514fb94d55e7a8c6b035738ed04f334b44e
Author: Tuomas Räsänen <tuomasjjrasanen@tjjr.fi>
Date:   Sat Aug 1 14:12:37 2015 +0300

    spec: rename "data pushing" => "transmission"
    
    Data pushing sounds a bit clumsy, transmission is more succinct.

commit 3840850c72f5a58f6de68b7b02053fcae6742dc4
Author: Tuomas Räsänen <tuomasjjrasanen@tjjr.fi>
Date:   Sat Aug 1 14:05:12 2015 +0300

    spec: move sentences out from parenthesis to improve the flow
    
    Sentences embedded inside sentences interrupt the flow of text unnecessarily.

commit 1ce6858db02275882fd60d2f2dd31e3de5d958bd
Author: Tuomas Räsänen <tuomasjjrasanen@tjjr.fi>
Date:   Sat Aug 1 14:03:29 2015 +0300

    spec: rename subsection Negotiation => Handshake
    
    In the "Protocol phases" section, the first phase is named as the handshake. So
    use that name also as the title of section describing the handshake.

commit e903f85173ec480588552daa5ced37d2a738f0cc
Author: Tuomas Räsänen <tuomasjjrasanen@tjjr.fi>
Date:   Sat Aug 1 13:36:17 2015 +0300

    spec: push negotiation and data pushing sections one step deeper
    
    Because negotiation (handshake) and data pushing are protocol phases, they
    should be subsections of "Protocol phases" section.

commit 3555a61e92d1baa1c80a9033cae9248cd4de1369
Author: Wouter Verhelst <w@uter.be>
Date:   Tue Jul 28 00:44:31 2015 +0200

    Fix markup

commit 680e6f1c152c19a5d54098af3ecb48577162f125
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 19:07:53 2015 +0200

    Oops

commit 9d00a89cd491d7c64da70c25860b757a99029c45
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:56:34 2015 +0200

    We probably won't need NBD_REP_STARTTLS, since it is similar in syntax and semantics as NBD_REP_ACK.

commit e60828c03efdcc3c9b188c7e13e201720dfd9417
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:55:52 2015 +0200

    ENOMEM should be avoided

commit d6d21ff0c31b8666d3889085923541f3e571988e
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:54:04 2015 +0200

    Reformat

commit d07a1ef433f25a206f27d6d2ad2ea7452d586e56
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:53:21 2015 +0200

    Clarify why the set of possible error messages has such big gaps in them.

commit 75e945ab0f30572ab4d06af16c290e270c2a5f74
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:50:29 2015 +0200

    Merge commands explanation into one section
    
    We had two sections that explained restrictions on possible commands;
    this is not useful. Merge them into one section, and expand them to
    clarify what the required behaviour should be.

commit b4bc68ca1a83bdecccb005beab2ab586a2162252
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:47:42 2015 +0200

    More copy-editing
    
    Clarifications, improvements upon language.

commit 17b953269c97056fbe938151e1d99c4cefa53e53
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:45:24 2015 +0200

    Fix header hierarchy

commit d2b5949ad1aea459f9b3d872afb2a8beec9ad327
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:42:27 2015 +0200

    Reorder
    
    List the flag fields in the order in which they appear over the wire.

commit 2a9bf22f3b9cf8b5b0f6d34752408ebbd40cea82
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:42:05 2015 +0200

    Improve layout

commit 6042c858704fa6ade749a1ec19a1557b10a83194
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:38:13 2015 +0200

    Move definition of valid error values to the "Values" section, where it belongs

commit eec3634048d377f034eb4cfc84ccaa915333168a
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:37:14 2015 +0200

    Improve flow

commit c4f4dd54e1f71751f094bd4680fc2ab89fa297e8
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:36:55 2015 +0200

    Re-add lexicographical conventions, in separate section

commit c46512cf067cbbf222978781756938af64740ee4
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:33:06 2015 +0200

    Make this look the same as the other message descriptions

commit 29b470f613ba83b1c7a4ffd8709bed326c69e3ec
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:30:02 2015 +0200

    Reorder
    
    Since the data pushing phase comes after the negotiation phase, it makes
    sense to also describe it after the negotiation phase in the protocol
    documentation.

commit 1990597dd932c31c2a51f2f00f60374c7696e471
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:24:21 2015 +0200

    Copy editing
    
    - Remove some informal language, and some first-person constructions
    - Stop using 'quotes' to rever to oldstyle or newstyle negotiation.
      Those names are fairly well known by now.
    - Add some clarifications, and a few extra sentences to improve flow.

commit b28316162db9bf6873bcf3797288f71a062bfb2c
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:19:27 2015 +0200

    Make protocol message definitions look the same way everywhere.

commit 49ada555b3efcd7a54d921a109580732e2d9f952
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:14:51 2015 +0200

    Add an introduction, and some minor copy editing

commit 66dc78c11177dbcc3c8c209626766f53ee5b1b69
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 18:12:21 2015 +0200

    Move to correct filename according to new format

commit 776d4f53f7595560f591d4c2967d6d8d50da636f
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jul 2 17:59:35 2015 +0200

    Convert to markdown format

commit 349b4ac0ddc6ebd1c214098889ee1ef3219c0e60
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jun 11 11:54:32 2015 +0200

    PEEK_EXPORT is experimental, too

commit fe13f75ffece83f7ff3ff02c2fd4d2baa2345b1c
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jun 4 16:41:44 2015 +0200

    Move TLS spec to a separate, "experimental" section
    
    Also do some minor copy editing (to clarify things a bit).
    
    This way, we avoid it getting out of date.

commit 630ac887cb93aa68f05ad6d359a943b617afb5a0
Merge: 1dd9582 7206c5d
Author: Wouter Verhelst <w@uter.be>
Date:   Thu Jun 4 16:29:29 2015 +0200

    Merge branch 'tlsspec'

commit 1dd95821b9db1f2d4456d31a81e2d8abb97b0220
Author: Wouter Verhelst <w@uter.be>
Date:   Mon May 25 12:53:15 2015 +0200

    Make tagging impossible to forget, and make git commit id appear in version numbers

commit 7206c5dcd4f7aa8ca856b2bf1c83c31300d309e8
Author: Wouter Verhelst <w@uter.be>
Date:   Tue Oct 21 00:18:27 2014 +0200

    Clarify things a bit

commit 4e4d3a99ccf74d2b34983855eeab79cf1efd4986
Author: Wouter Verhelst <w@uter.be>
Date:   Tue Oct 21 00:08:21 2014 +0200

    Document proposed TLS spec
