diff options
Diffstat (limited to 'src/pkg/crypto/tls/record_read.go')
-rw-r--r-- | src/pkg/crypto/tls/record_read.go | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/src/pkg/crypto/tls/record_read.go b/src/pkg/crypto/tls/record_read.go deleted file mode 100644 index 682fde8b6..000000000 --- a/src/pkg/crypto/tls/record_read.go +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2009 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -package tls - -// The record reader handles reading from the connection and reassembling TLS -// record structures. It loops forever doing this and writes the TLS records to -// it's outbound channel. On error, it closes its outbound channel. - -import ( - "io" - "bufio" -) - -// recordReader loops, reading TLS records from source and writing them to the -// given channel. The channel is closed on EOF or on error. -func recordReader(c chan<- *record, source io.Reader) { - defer close(c) - buf := bufio.NewReader(source) - - for { - var header [5]byte - n, _ := buf.Read(&header) - if n != 5 { - return - } - - recordLength := int(header[3])<<8 | int(header[4]) - if recordLength > maxTLSCiphertext { - return - } - - payload := make([]byte, recordLength) - n, _ = buf.Read(payload) - if n != recordLength { - return - } - - c <- &record{recordType(header[0]), header[1], header[2], payload} - } -} |