Browse Source

Add test for IndexTLSServerName

世界 4 months ago
parent
commit
4931f12835
3 changed files with 18 additions and 6 deletions
  1. 1 1
      common/tlsfragment/conn.go
  2. 5 5
      common/tlsfragment/index.go
  3. 12 0
      common/tlsfragment/index_test.go

+ 1 - 1
common/tlsfragment/conn.go

@@ -45,7 +45,7 @@ func (c *Conn) Write(b []byte) (n int, err error) {
 		defer func() {
 			c.firstPacketWritten = true
 		}()
-		serverName := indexTLSServerName(b)
+		serverName := IndexTLSServerName(b)
 		if serverName != nil {
 			if c.splitPacket {
 				if c.tcpConn != nil {

+ 5 - 5
common/tlsfragment/index.go

@@ -22,13 +22,13 @@ const (
 	tls13                   uint16 = 0x0304
 )
 
-type myServerName struct {
+type MyServerName struct {
 	Index      int
 	Length     int
 	ServerName string
 }
 
-func indexTLSServerName(payload []byte) *myServerName {
+func IndexTLSServerName(payload []byte) *MyServerName {
 	if len(payload) < recordLayerHeaderLen || payload[0] != contentType {
 		return nil
 	}
@@ -44,7 +44,7 @@ func indexTLSServerName(payload []byte) *myServerName {
 	return serverName
 }
 
-func indexTLSServerNameFromHandshake(hs []byte) *myServerName {
+func indexTLSServerNameFromHandshake(hs []byte) *MyServerName {
 	if len(hs) < handshakeHeaderLen+randomDataLen+sessionIDHeaderLen {
 		return nil
 	}
@@ -84,7 +84,7 @@ func indexTLSServerNameFromHandshake(hs []byte) *myServerName {
 	return serverName
 }
 
-func indexTLSServerNameFromExtensions(exs []byte) *myServerName {
+func indexTLSServerNameFromExtensions(exs []byte) *MyServerName {
 	if len(exs) == 0 {
 		return nil
 	}
@@ -118,7 +118,7 @@ func indexTLSServerNameFromExtensions(exs []byte) *myServerName {
 			}
 			sniLen := uint16(sex[3])<<8 | uint16(sex[4])
 			sex = sex[sniExtensionHeaderLen:]
-			return &myServerName{
+			return &MyServerName{
 				Index:      currentIndex + extensionHeaderLen + sniExtensionHeaderLen,
 				Length:     int(sniLen),
 				ServerName: string(sex),

File diff suppressed because it is too large
+ 12 - 0
common/tlsfragment/index_test.go


Some files were not shown because too many files changed in this diff