Subject: [quicwg/base-drafts] fc31b7: A tiny nit: the ClientHello is not subject to MAX_...

From: Martin Thomson <[email-masked]>
Date: Thu, 19 Oct 2017 16:01:18 -0700

Branch: refs/heads/single-cleartext
  Home:   https://github.com/quicwg/base-drafts
  Commit: fc31b7ea51df8a94de6a9b019a6b9ce7f86f3faa
      https://github.com/quicwg/base-drafts/commit/fc31b7ea51df8a94de6a9b019a6b9ce7f86f3faa
  Author: EKR <[email-masked]>
  Date:   2017-09-28 (Thu, 28 Sep 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  A tiny nit: the ClientHello is not subject to MAX_STREAM_DATA.

  Commit: 617dc338b317d217441aeac48756bd4a1bc11925
      https://github.com/quicwg/base-drafts/commit/617dc338b317d217441aeac48756bd4a1bc11925
  Author: EKR <[email-masked]>
  Date:   2017-09-28 (Thu, 28 Sep 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Nits from Jana

  Commit: 8cf389da6e5ccc118abcfb8d714ee101c752fdb0
      https://github.com/quicwg/base-drafts/commit/8cf389da6e5ccc118abcfb8d714ee101c752fdb0
  Author: EKR <[email-masked]>
  Date:   2017-09-29 (Fri, 29 Sep 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Jana's comments plus bonus editorial fix

  Commit: da18bae6bfb1cc908685aba251e46f03caf60877
      https://github.com/quicwg/base-drafts/commit/da18bae6bfb1cc908685aba251e46f03caf60877
  Author: Igor Lubashev <[email-masked]>
  Date:   2017-09-29 (Fri, 29 Sep 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Clarify Connection ID text

  Commit: 9b71bae4c3ee0153715b0b9a5a5b3eddc32554d2
      https://github.com/quicwg/base-drafts/commit/9b71bae4c3ee0153715b0b9a5a5b3eddc32554d2
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-03 (Tue, 03 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Remove packet number re-randomization requirement

I don't believe that anyone actually implemented this, and it is
unnecessary.

Closes #823.

  Commit: 08f5f3edb75e60b8519164bcbf45cfb3ccf8656c
      https://github.com/quicwg/base-drafts/commit/08f5f3edb75e60b8519164bcbf45cfb3ccf8656c
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-10 (Tue, 10 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Remove 1-RTT protected long header types

Closes #848.

  Commit: 4d997948698029427bf5f67f4fe83206db612bbf
      https://github.com/quicwg/base-drafts/commit/4d997948698029427bf5f67f4fe83206db612bbf
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-11 (Wed, 11 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Reflow

  Commit: cbe9dbd043d0dc94eed1a12d89f54a538cc5092c
      https://github.com/quicwg/base-drafts/commit/cbe9dbd043d0dc94eed1a12d89f54a538cc5092c
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-11 (Wed, 11 Oct 2017)

  Changed paths:
    A .circleci/config.yml
    M CONTRIBUTING.md
    M Makefile
    R circle.yml
    M draft-ietf-quic-http.md
    M draft-ietf-quic-recovery.md
    M draft-ietf-quic-tls.md
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge branch 'master' into stream_0_flow_control_nit

  Commit: cd25f2ad734eae4b3712e66440b241f035f98f66
      https://github.com/quicwg/base-drafts/commit/cd25f2ad734eae4b3712e66440b241f035f98f66
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-11 (Wed, 11 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Reword to narrow increment scope

  Commit: 0ab0907410d5cb1ee401cdba6628d10efe81e6e8
      https://github.com/quicwg/base-drafts/commit/0ab0907410d5cb1ee401cdba6628d10efe81e6e8
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-11 (Wed, 11 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Remove application close

As agreed, this moves the graceful shutdown under the banner of an immediate
close.  That is, the application protocol negotiates a shutdown.  Once the
agreed state has been reached, endpoints send APPLICATION_CLOSE and we are
done.

Closes #854.

  Commit: fd567148415328812df3153a60cfc965cadceefb
      https://github.com/quicwg/base-drafts/commit/fd567148415328812df3153a60cfc965cadceefb
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-11 (Wed, 11 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge pull request #803 from ekr/stream_0_flow_control_nit

A tiny nit: the ClientHello is not subject to MAX_STREAM_DATA.

  Commit: 8cf88aad4f84cbaac14cb272ea8a0f8f878ea435
      https://github.com/quicwg/base-drafts/commit/8cf88aad4f84cbaac14cb272ea8a0f8f878ea435
  Author: janaiyengar <[email-masked]>
  Date:   2017-10-11 (Wed, 11 Oct 2017)

  Changed paths:
    M draft-ietf-quic-recovery.md

  Log Message:
  -----------
  Adds substantive descriptions of loss detection mechanisms (#801)

* Added text to overview

* TLP text added

* More changes

* finished RTO and HTO text

* Ian's comments

* lucas comment

* trailing whitespaces

  Commit: 0fa5b517adfd7023b525ff97a9cdd2630af22d8c
      https://github.com/quicwg/base-drafts/commit/0fa5b517adfd7023b525ff97a9cdd2630af22d8c
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-12 (Thu, 12 Oct 2017)

  Changed paths:
    M draft-ietf-quic-http.md
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Use RFC 8126 for IANA considerations

  Commit: 4912c2086954b57f5f494dfe4ccbfb42774a0e2b
      https://github.com/quicwg/base-drafts/commit/4912c2086954b57f5f494dfe4ccbfb42774a0e2b
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-12 (Thu, 12 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Update PMTUD references

RFC 1981 was obsoleted by RFC 8201.

  Commit: 101a4cadafc994ba17aefe24445cba3c2ad81a19
      https://github.com/quicwg/base-drafts/commit/101a4cadafc994ba17aefe24445cba3c2ad81a19
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-12 (Thu, 12 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Uppercase SHOULD not

  Commit: 2ecc0ff6110c063c2be461e4c2eb41dcf87895a1
      https://github.com/quicwg/base-drafts/commit/2ecc0ff6110c063c2be461e4c2eb41dcf87895a1
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-12 (Thu, 12 Oct 2017)

  Changed paths:
    M Makefile
    M draft-ietf-quic-recovery.md

  Log Message:
  -----------
  Shorten line (#861)

* Fix linting rule for figures

* Shorten line by a few characters

  Commit: 105193d281e2f74e8b078c4e0938678684c2962f
      https://github.com/quicwg/base-drafts/commit/105193d281e2f74e8b078c4e0938678684c2962f
  Author: Jana Iyengar <[email-masked]>
  Date:   2017-10-12 (Thu, 12 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  STOPPING is sent by transport not application

  Commit: 82eefdef4a7da22bb20bedab5a672e2f2fe86320
      https://github.com/quicwg/base-drafts/commit/82eefdef4a7da22bb20bedab5a672e2f2fe86320
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-12 (Thu, 12 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Move stateless reset token to the end (#842)

* Move stateless reset token to the end

This makes the location of the token fixed with respect to the end of
packets, which makes it easier to find.  It also expands the conditions
for checking the token, which now include cases where packets appear
to be duplicated.

Closes #820.

* Define the packet type more precisely

* Define what termination means for stateless reset

* Larger packet number encodings make identification easier

* Clients can dump state on stateless reset

* Corrections suggested by @ianswett

  Commit: 9182b4034eabbc4a2e7de3e0f43f197bc4e61ec4
      https://github.com/quicwg/base-drafts/commit/9182b4034eabbc4a2e7de3e0f43f197bc4e61ec4
  Author: EKR <[email-masked]>
  Date:   2017-10-12 (Thu, 12 Oct 2017)

  Changed paths:
    M draft-ietf-quic-tls.md

  Log Message:
  -----------
  SHA-1 is 20 bytes. Fixes #865

  Commit: fbc18c86c85bc8d77e873e9caecfa98252a460c9
      https://github.com/quicwg/base-drafts/commit/fbc18c86c85bc8d77e873e9caecfa98252a460c9
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Changed paths:
    M draft-ietf-quic-tls.md

  Log Message:
  -----------
  The fixed salt is 20 octets

  Commit: 2fc0029c137f4522aa1085f3b215b99eabb399e5
      https://github.com/quicwg/base-drafts/commit/2fc0029c137f4522aa1085f3b215b99eabb399e5
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Log Message:
  -----------
  Merge pull request #866 from ekr/sha1_is_20_bytes

SHA-1 is 20 bytes. Fixes #865

  Commit: 7af651dd903d94bebfe5c7bf52124ec9f6aa954f
      https://github.com/quicwg/base-drafts/commit/7af651dd903d94bebfe5c7bf52124ec9f6aa954f
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge pull request #863 from quicwg/stopping

STOPPING is sent by transport not application

  Commit: 0bf810aef744e0f5067fad7c3020dcd0d6a1ea24
      https://github.com/quicwg/base-drafts/commit/0bf810aef744e0f5067fad7c3020dcd0d6a1ea24
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-12 (Thu, 12 Oct 2017)

  Changed paths:
    M draft-ietf-quic-http.md
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Make error codes smaller (#851)

* Make error codes smaller

* Correct diagram and hyphens

  Commit: 2e4d9bcc51951d719d6e99f3c346b1dae388f52e
      https://github.com/quicwg/base-drafts/commit/2e4d9bcc51951d719d6e99f3c346b1dae388f52e
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  The application protocol negotiates

  Commit: 11d77c0e3339401553a258fa57592fb2bd31bd11
      https://github.com/quicwg/base-drafts/commit/11d77c0e3339401553a258fa57592fb2bd31bd11
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge pull request #855 from quicwg/remove-app-close

Remove application close

  Commit: 359b528a00a03c8cb5a3c3726cbe2488e7ba5dbb
      https://github.com/quicwg/base-drafts/commit/359b528a00a03c8cb5a3c3726cbe2488e7ba5dbb
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge pull request #860 from quicwg/pmtu-8201

Update PMTUD references

  Commit: 8b05969bc612560b7a81f34b0331e1a4998999ce
      https://github.com/quicwg/base-drafts/commit/8b05969bc612560b7a81f34b0331e1a4998999ce
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Changed paths:
    M draft-ietf-quic-http.md
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge branch 'iana-8126'

  Commit: 4fa1fcf62e0ed22150edaa6fabade891b492640f
      https://github.com/quicwg/base-drafts/commit/4fa1fcf62e0ed22150edaa6fabade891b492640f
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-12 (Thu, 12 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Define requirements for handling packets (#724)

* Define requirements for handling packets

We never really said how to handle incoming packets.  This adds a section on
that.  This was originally motivated by #570, where the rules for what to
generate a Version Negotiation packet for were a little unclear.

Now though, this is a far more comprehensive description of what to do with
a packet that is received.

For #570, I've chosen to limit packet size.  If the packet is too small, then
this requires the server to drop the packet.  In response to the potential for
a future version of QUIC to define a smaller initial packet (@mikkelfj raised
this point), I've included advice on what might be done to avoid having packets
discarded.

I realize that we don't have a patch that sets the packet size to 1200.  I'm
going to write that one now.  This depends on that.

* Review comments

* Capitalize Client Initial

* Expand more on the need for bufferring

* Allow a stateless reset in addition to discard

* Allow consumption of VN in response to 0-RTT

* Add forward ref to packetization section

* Jana's comments

* Downgrade discard requirement to MAY prior to handshake

Though I don't know why I need to care about the reason.

* Remove text

  Commit: 6bc3a96d216e4e599df0b2089b7ef3c4040c86c3
      https://github.com/quicwg/base-drafts/commit/6bc3a96d216e4e599df0b2089b7ef3c4040c86c3
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-12 (Thu, 12 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Remove ACKs from draining period (#853)

* Remove ACKs from draining period

As agreed at the interim, this removes the ability to acknowledge during the
draining period.  An endpoint can use the APPLICATION_CLOSE/CONNECTION_CLOSE
frame to exit this state early (it's a kind of ACK).

Closes #852.

* s/can/MAY terminate draining period early

* Remove paragraph about terminating draining period early

  Commit: 9f06ddc030125b5d9952c88ae4d63932e4146448
      https://github.com/quicwg/base-drafts/commit/9f06ddc030125b5d9952c88ae4d63932e4146448
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-12 (Thu, 12 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Enter draining after receiving a stateless reset (#868)

If a client receives a stateless reset, it makes sense for it to stick around
in the draining period so that you can absorb any further stateless reset
packets that might have been sent by the server.  The server might have
received multiple packets, so it might also generate multiple resets.

  Commit: ff18a21c2b81d73ac868d3772b48ef8f99f37e64
      https://github.com/quicwg/base-drafts/commit/ff18a21c2b81d73ac868d3772b48ef8f99f37e64
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Changed paths:
    M CONTRIBUTING.md
    M Makefile
    M draft-ietf-quic-http.md
    M draft-ietf-quic-recovery.md
    M draft-ietf-quic-tls.md
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge branch 'master' into pn-randomize

  Commit: b15cc14c9fe230fcbee6f4bc61ed54d85af0b557
      https://github.com/quicwg/base-drafts/commit/b15cc14c9fe230fcbee6f4bc61ed54d85af0b557
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge pull request #784 from igorlord/clarify_connection_id

Clarify Connection ID text

  Commit: 611ada6bbdbb16b5431635d16a5ff48d9db1d0f7
      https://github.com/quicwg/base-drafts/commit/611ada6bbdbb16b5431635d16a5ff48d9db1d0f7
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge pull request #824 from quicwg/pn-randomize

Remove packet number re-randomization requirement

  Commit: 21f5d8cce021a037db1b4d4dbf610cb0a4ce5725
      https://github.com/quicwg/base-drafts/commit/21f5d8cce021a037db1b4d4dbf610cb0a4ce5725
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge pull request #857 from quicwg/remove-long-1rtt-types

Remove 1-RTT protected long header types

  Commit: 6d0c7accbe09e67cd3ac0d48639c0dd36e4c6fc8
      https://github.com/quicwg/base-drafts/commit/6d0c7accbe09e67cd3ac0d48639c0dd36e4c6fc8
  Author: Patrick McManus <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Express MAX_DATA in octets rather than KB

closes #873

  Commit: a130b6d88fe9ac5c2cc4c1c4f121438834dfabf2
      https://github.com/quicwg/base-drafts/commit/a130b6d88fe9ac5c2cc4c1c4f121438834dfabf2
  Author: Patrick McManus <[email-masked]>
  Date:   2017-10-13 (Fri, 13 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  fix typo in 6d0c7accbe09e67cd3ac0d48639c0dd36e4c6fc8

  Commit: a756c78fe3224558ade729be74a0ff9f576273c3
      https://github.com/quicwg/base-drafts/commit/a756c78fe3224558ade729be74a0ff9f576273c3
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-14 (Sat, 14 Oct 2017)

  Changed paths:
    M .circleci/config.yml

  Log Message:
  -----------
  Tweak circle config

  Commit: 95530d91ebe965ae52d569c8f4d42acec0461929
      https://github.com/quicwg/base-drafts/commit/95530d91ebe965ae52d569c8f4d42acec0461929
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-14 (Sat, 14 Oct 2017)

  Changed paths:
    M .circleci/config.yml

  Log Message:
  -----------
  Filter on tags to see if that triggers a build

  Commit: 426e9ec725bf9fc83d0762e0f2d6a7c8d50218d1
      https://github.com/quicwg/base-drafts/commit/426e9ec725bf9fc83d0762e0f2d6a7c8d50218d1
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-14 (Sat, 14 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge pull request #874 from mcmanus/max-data-unit

Express MAX_DATA in octets rather than KB

  Commit: b8713266a472dfc77d6b9d7bd3fa052ba60deed6
      https://github.com/quicwg/base-drafts/commit/b8713266a472dfc77d6b9d7bd3fa052ba60deed6
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-16 (Mon, 16 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  PONG frame

  Commit: 9b109a3ef936f690bd5608213e4911ba3c29a5d8
      https://github.com/quicwg/base-drafts/commit/9b109a3ef936f690bd5608213e4911ba3c29a5d8
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-16 (Mon, 16 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Actually define the error code

  Commit: d37d72fab17a226d1639786ac406f637a77628f5
      https://github.com/quicwg/base-drafts/commit/d37d72fab17a226d1639786ac406f637a77628f5
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Loosen UNSOLICITED_PONG requirements

  Commit: dd717ab3229e807bef956f0e77fda58a88b7b5a8
      https://github.com/quicwg/base-drafts/commit/dd717ab3229e807bef956f0e77fda58a88b7b5a8
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge pull request #878 from quicwg/pong

PONG frame

  Commit: d9389f05d48bebc8caf9fc0d6dafc7e8b62a1d21
      https://github.com/quicwg/base-drafts/commit/d9389f05d48bebc8caf9fc0d6dafc7e8b62a1d21
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M .gitignore

  Log Message:
  -----------
  Ignore upload files

  Commit: ded8d4fab722c5909c97aa58e618e8da7f2d189c
      https://github.com/quicwg/base-drafts/commit/ded8d4fab722c5909c97aa58e618e8da7f2d189c
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Address validation for connection migration

This has been much-discussed, and it's a relatively isolated change, so I did it.

This modifies PING to have an optional payload and adds a PONG frame to echo
the PING.  An empty PING generates an ACK; a PING with a payload demands a
PONG.

Generating an unguessable PING is the basis of mid-connection address
validation.  If the PING is sent on the new path, and the PONG comes back, then
the remote address is probably OK to use.

I've taken the discussion in the issue into consideration here.  There's a lot
of potential nuance to capture in terms of how an endpoint might reduce and
restore send rates, but I've done what I can to thread the gap between allowing
unbounded sending along new and untested paths and allowing connections to get
back to doing business.

It's annoying that this makes PING and PONG so disparate.  I think that we have
a re-ordering of frames in our near future to correct minor infidelities like
this.  I didn't want to do that here and pollute this PR though.

Closes #161.

  Commit: a0480aae3f12a5d584c932321a1201e6c13a5759
      https://github.com/quicwg/base-drafts/commit/a0480aae3f12a5d584c932321a1201e6c13a5759
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Avoid attack on address validation during connection migration

The attack here is that an attacker might duplicate a legitimate packet and
send that packet from an invalid address such that it arrives before the real
copy.  That causes the recipient to think that there was a connection
migration.  They will attempt to validate that address and this will fail.  The
connection is then closed.

The fix is to cause a migration back to the original, legitimate address.  For
this to work, you need two things:

1. when a migration happens, abandon any validation on the old address on the
   expectation that it will fail

2. when a migration happens, make sure that you try to trigger packets from the
   old address first

For the second point, I decided to mandate address validation, rather than an
ordinary PING.  The reason being that you have to retransmit the packet on that
path and I doubt that implementations will want to have two sets of special
machinery for transmiting - and retransmitting - frames on a specific path.
Maybe this is too much of a constraint on implementations, so I'd like to hear
from people about whether they would prefer a more generic requirement (send
any packet that demands acknowledgment would work, it doesn't even have to be
the same packet every time, though the usual situation will be that the packet
will be lost, so you probably don't want to send anything important).

  Commit: 854377925432d10f42ec617e6d24ec0122cfbf5f
      https://github.com/quicwg/base-drafts/commit/854377925432d10f42ec617e6d24ec0122cfbf5f
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  More review comments

  Commit: 67849052344984d1e1bddf990717a48357b890be
      https://github.com/quicwg/base-drafts/commit/67849052344984d1e1bddf990717a48357b890be
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Require new PING on loss

  Commit: a724bdb991bea5b4470cba4077e7f338e25baf3a
      https://github.com/quicwg/base-drafts/commit/a724bdb991bea5b4470cba4077e7f338e25baf3a
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Data field, not payload

  Commit: ca3f375a8bfceacac59ee75da527cf1941c8c7f0
      https://github.com/quicwg/base-drafts/commit/ca3f375a8bfceacac59ee75da527cf1941c8c7f0
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Remove MUST

  Commit: d30f411a7bd9c5f6db6f63a4f82ef5c96bd5c4ba
      https://github.com/quicwg/base-drafts/commit/d30f411a7bd9c5f6db6f63a4f82ef5c96bd5c4ba
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M .gitignore
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge pull request #732 from quicwg/proof-of-receipt

Address validation for connection migration

  Commit: 5b8d25aabb013d59bafad4ca3978f041dc5e3c5b
      https://github.com/quicwg/base-drafts/commit/5b8d25aabb013d59bafad4ca3978f041dc5e3c5b
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M draft-ietf-quic-tls.md

  Log Message:
  -----------
  Fix nits

Remove text about no protection.
Describe the value for N_MIN.

Closes #883

  Commit: aa85ef15a16f2a7b462160dc3da4f5dca7f1de37
      https://github.com/quicwg/base-drafts/commit/aa85ef15a16f2a7b462160dc3da4f5dca7f1de37
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M draft-ietf-quic-http.md
    M draft-ietf-quic-recovery.md
    M draft-ietf-quic-tls.md
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Fix links to issues

  Commit: 15aabcded3fbd05f15f3d26851d3b032916cbcd2
      https://github.com/quicwg/base-drafts/commit/15aabcded3fbd05f15f3d26851d3b032916cbcd2
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-19 (Thu, 19 Oct 2017)

  Changed paths:
    M draft-ietf-quic-tls.md

  Log Message:
  -----------
  Merge pull request #884 from quicwg/martinduke-nits

Fix nits

  Commit: 979c46ae2a0e908916fe0d5b2ca82f9720e90498
      https://github.com/quicwg/base-drafts/commit/979c46ae2a0e908916fe0d5b2ca82f9720e90498
  Author: Martin Thomson <[email-masked]>
  Date:   2017-10-20 (Fri, 20 Oct 2017)

  Changed paths:
    M .circleci/config.yml
    M .gitignore
    M Makefile
    M draft-ietf-quic-http.md
    M draft-ietf-quic-recovery.md
    M draft-ietf-quic-tls.md
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Merge branch 'master' into single-cleartext

Compare: https://github.com/quicwg/base-drafts/compare/670ede097e83...979c46ae2a0e