|
|
@@ -19,7 +19,11 @@ var (
|
|
19
|
19
|
fakeTLSWritePrefix = []byte{0x17, 0x03, 0x03}
|
|
20
|
20
|
)
|
|
21
|
21
|
|
|
22
|
|
-const faketlsMaxChunkSize = 16384 + 24
|
|
|
22
|
+const (
|
|
|
23
|
+ faketlsMaxChunkSize = 16384 + 24
|
|
|
24
|
+ faketlsRecordTypeApplicationData = 0x17
|
|
|
25
|
+ faketlsRecordTypeCCS = 0x14
|
|
|
26
|
+)
|
|
23
|
27
|
|
|
24
|
28
|
type wrapperFakeTLS struct {
|
|
25
|
29
|
bufferedReader
|
|
|
@@ -106,15 +110,15 @@ func NewFakeTLS(socket conntypes.StreamReadWriteCloser) conntypes.StreamReadWrit
|
|
106
|
110
|
faketls.readFunc = func() ([]byte, error) {
|
|
107
|
111
|
data := &bytes.Buffer{}
|
|
108
|
112
|
buf := [2]byte{}
|
|
109
|
|
- recordType := byte(0x14)
|
|
|
113
|
+ recordType := byte(faketlsRecordTypeCCS)
|
|
110
|
114
|
|
|
111
|
|
- for recordType == 0x14 {
|
|
|
115
|
+ for recordType == faketlsRecordTypeCCS {
|
|
112
|
116
|
if _, err := io.ReadFull(faketls.parent, buf[:1]); err != nil {
|
|
113
|
117
|
return nil, fmt.Errorf("cannot read record type: %w", err)
|
|
114
|
118
|
}
|
|
115
|
119
|
|
|
116
|
120
|
switch buf[0] {
|
|
117
|
|
- case 0x14, 0x17:
|
|
|
121
|
+ case faketlsRecordTypeCCS, faketlsRecordTypeApplicationData:
|
|
118
|
122
|
recordType = buf[0]
|
|
119
|
123
|
default:
|
|
120
|
124
|
return nil, fmt.Errorf("incorrect record type %v", buf[0])
|