Skip to content

Commit

Permalink
Handle unauthorized TLS connections correctly
Browse files Browse the repository at this point in the history
  • Loading branch information
murgatroid99 committed Feb 14, 2025
1 parent bb6fff7 commit b44b14d
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 2 deletions.
8 changes: 8 additions & 0 deletions packages/grpc-js/src/channel-credentials.ts
Original file line number Diff line number Diff line change
Expand Up @@ -262,6 +262,10 @@ class SecureConnectorImpl implements SecureConnector {
};
return new Promise<SecureConnectResult>((resolve, reject) => {
const tlsSocket = tlsConnect(tlsConnectOptions, () => {
if (!tlsSocket.authorized) {
reject(tlsSocket.authorizationError);
return;
}
resolve({
socket: tlsSocket,
secure: true
Expand Down Expand Up @@ -340,6 +344,10 @@ class CertificateProviderChannelCredentialsImpl extends ChannelCredentials {
...connnectionOptions
}
const tlsSocket = tlsConnect(tlsConnectOptions, () => {
if (!tlsSocket.authorized) {
reject(tlsSocket.authorizationError);
return;
}
resolve({
socket: tlsSocket,
secure: true
Expand Down
4 changes: 2 additions & 2 deletions packages/grpc-js/src/transport.ts
Original file line number Diff line number Diff line change
Expand Up @@ -225,8 +225,8 @@ class Http2Transport implements Transport {
this.handleDisconnect();
});

session.socket.once('close', () => {
this.trace('connection closed');
session.socket.once('close', (hadError) => {
this.trace('connection closed. hadError=' + hadError);
this.handleDisconnect();
});

Expand Down

0 comments on commit b44b14d

Please sign in to comment.