Googlers have a habit of graffiting their name in TODO items that then
are never addressed, and other people won't go near those because
they're marked territory of another animal. I've been gradually cleaning
these up as I see them, but this commit just goes all the way and
removes the remaining stragglers.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
type handshakeState int
-// TODO(crawshaw): add commentary describing each state and the transitions
const (
handshakeZeroed = handshakeState(iota)
handshakeInitiationCreated
// This is an optimization only. It is possible for the peer to be stopped
// immediately after this check, in which case, elem will get processed.
// The timers and SendBuffer code are resilient to a few stragglers.
- // TODO(josharian): rework peer shutdown order to ensure
+ // TODO: rework peer shutdown order to ensure
// that we never accidentally keep timers alive longer than necessary.
device.PutMessageBuffer(elem.buffer)
device.PutOutboundElement(elem)
func (t *chTun) Read(data []byte, offset int) (int, error) {
select {
case <-t.c.closed:
- return 0, io.EOF // TODO(crawshaw): what is the correct error value?
+ return 0, os.ErrClosed
case msg := <-t.c.Outbound:
return copy(data[offset:], msg), nil
}
copy(msg, data[offset:])
select {
case <-t.c.closed:
- return 0, io.EOF // TODO(crawshaw): what is the correct error value?
+ return 0, os.ErrClosed
case t.c.Inbound <- msg:
return len(data) - offset, nil
}