Skip to content

Commit 915cb50

Browse files
committed
Post review updates
1 parent ff332b6 commit 915cb50

File tree

2 files changed

+29
-29
lines changed

2 files changed

+29
-29
lines changed

credentials/credentials.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -165,8 +165,6 @@ func (c *tlsCreds) ClientHandshake(ctx context.Context, addr string, rawConn net
165165
case <-ctx.Done():
166166
return nil, nil, ctx.Err()
167167
}
168-
// TODO(zhaoq): Omit the auth info for client now. It is more for
169-
// information than anything else.
170168
return conn, TLSInfo{conn.ConnectionState()}, nil
171169
}
172170

credentials/credentials_test.go

Lines changed: 29 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -64,57 +64,58 @@ func TestTLSClone(t *testing.T) {
6464
}
6565
}
6666

67+
const tlsDir = "../test/testdata/"
68+
6769
func TestTLSClientHandshakeReturnsAuthInfo(t *testing.T) {
68-
localPort := ":5050"
69-
tlsDir := "../test/testdata/"
70-
lis, err := net.Listen("tcp", localPort)
70+
lis, err := net.Listen("tcp", "localhost:0")
7171
if err != nil {
72-
t.Fatalf("Failed to start local server. Listener error: %v", err)
72+
t.Fatalf("Failed to listen: %v", err)
7373
}
74+
defer lis.Close()
7475
serverTLS, err := NewServerTLSFromFile(tlsDir+"server1.pem", tlsDir+"server1.key")
7576
if err != nil {
7677
t.Fatalf("Failed to create server TLS. Error: %v", err)
7778
}
78-
var serverAuthInfo AuthInfo
79+
var serverAuthInfo TLSInfo
7980
done := make(chan bool)
8081
go func() {
8182
defer func() {
8283
done <- true
8384
}()
84-
serverRawConn, _ := lis.Accept()
85+
serverRawConn, err := lis.Accept()
86+
if err != nil {
87+
t.Fatalf("Server failed to accept connection: %v", err)
88+
}
8589
serverConn := tls.Server(serverRawConn, serverTLS.(*tlsCreds).config)
8690
serverErr := serverConn.Handshake()
8791
if serverErr != nil {
8892
t.Fatalf("Error on server while handshake. Error: %v", serverErr)
8993
}
9094
serverAuthInfo = TLSInfo{serverConn.ConnectionState()}
9195
}()
92-
defer lis.Close()
93-
conn, err := net.Dial("tcp", localPort)
96+
conn, err := net.Dial("tcp", lis.Addr().String())
9497
if err != nil {
9598
t.Fatalf("Client failed to connect to local server. Error: %v", err)
9699
}
100+
defer conn.Close()
97101
c := NewTLS(&tls.Config{InsecureSkipVerify: true})
98-
_, authInfo, err := c.ClientHandshake(context.Background(), localPort, conn)
102+
_, authInfo, err := c.ClientHandshake(context.Background(), lis.Addr().String(), conn)
99103
if err != nil {
100104
t.Fatalf("Error on client while handshake. Error: %v", err)
101105
}
102-
select {
103-
case <-done:
104-
// wait until server has populated the serverAuthInfo struct.
105-
}
106-
if authInfo.AuthType() != serverAuthInfo.AuthType() {
107-
t.Fatalf("c.ClientHandshake(_, %v, _) = %v, want %v.", localPort, authInfo, serverAuthInfo)
106+
// wait until server has populated the serverAuthInfo struct.
107+
<-done
108+
if authInfo.(TLSInfo).State.Version != serverAuthInfo.State.Version {
109+
t.Fatalf("c.ClientHandshake(_, %v, _) = %v, want %v.", lis.Addr().String(), authInfo, serverAuthInfo)
108110
}
109111
}
110112

111113
func TestTLSServerHandshakeReturnsAuthInfo(t *testing.T) {
112-
localPort := ":5050"
113-
tlsDir := "../test/testdata/"
114-
lis, err := net.Listen("tcp", localPort)
114+
lis, err := net.Listen("tcp", "localhost:0")
115115
if err != nil {
116-
t.Fatalf("Failed to start local server. Listener error: %v", err)
116+
t.Fatalf("Failed to listen: %v", err)
117117
}
118+
defer lis.Close()
118119
serverTLS, err := NewServerTLSFromFile(tlsDir+"server1.pem", tlsDir+"server1.key")
119120
if err != nil {
120121
t.Fatalf("Failed to create server TLS. Error: %v", err)
@@ -125,30 +126,31 @@ func TestTLSServerHandshakeReturnsAuthInfo(t *testing.T) {
125126
defer func() {
126127
done <- true
127128
}()
128-
serverRawConn, _ := lis.Accept()
129+
serverRawConn, err := lis.Accept()
130+
if err != nil {
131+
t.Fatalf("Server failed to accept connection: %v", err)
132+
}
129133
var serverErr error
130134
_, serverAuthInfo, serverErr = serverTLS.ServerHandshake(serverRawConn)
131135
if serverErr != nil {
132136
t.Fatalf("Error on server while handshake. Error: %v", serverErr)
133137
}
134138
}()
135-
defer lis.Close()
136-
conn, err := net.Dial("tcp", localPort)
139+
conn, err := net.Dial("tcp", lis.Addr().String())
137140
if err != nil {
138141
t.Fatalf("Client failed to connect to local server. Error: %v", err)
139142
}
143+
defer conn.Close()
140144
c := NewTLS(&tls.Config{InsecureSkipVerify: true})
141145
clientConn := tls.Client(conn, c.(*tlsCreds).config)
142146
err = clientConn.Handshake()
143147
if err != nil {
144148
t.Fatalf("Error on client while handshake. Error: %v", err)
145149
}
146150
authInfo := TLSInfo{clientConn.ConnectionState()}
147-
select {
148-
case <-done:
149-
// wait until server has populated the serverAuthInfo struct.
150-
}
151-
if authInfo.AuthType() != serverAuthInfo.AuthType() {
151+
// wait until server has populated the serverAuthInfo struct.
152+
<-done
153+
if authInfo.State.Version != serverAuthInfo.(TLSInfo).State.Version {
152154
t.Fatalf("ServerHandshake(_) = %v, want %v.", serverAuthInfo, authInfo)
153155
}
154156

0 commit comments

Comments
 (0)