Skip to content

Commit

Permalink
Merge pull request #2777 from murgatroid99/grpc-js_1.10_backports
Browse files Browse the repository at this point in the history
Backport #2746 and #2761 to 1.10.x
  • Loading branch information
murgatroid99 authored Jun 24, 2024
2 parents 97c4cda + 5ae5514 commit 3c55b5b
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion packages/grpc-js/src/http_proxy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ function getProxyInfo(): ProxyInfo {
if (proxyUrl.username) {
if (proxyUrl.password) {
log(LogVerbosity.INFO, 'userinfo found in proxy URI');
userCred = `${proxyUrl.username}:${proxyUrl.password}`;
userCred = decodeURIComponent(`${proxyUrl.username}:${proxyUrl.password}`);
} else {
userCred = proxyUrl.username;
}
Expand Down Expand Up @@ -233,6 +233,12 @@ export function getProxiedConnection(
' through proxy ' +
proxyAddressString
);
// The HTTP client may have already read a few bytes of the proxied
// connection. If that's the case, put them back into the socket.
// See https://github.com/grpc/grpc-node/issues/2744.
if (head.length > 0) {
socket.unshift(head);
}
if ('secureContext' in connectionOptions) {
/* The proxy is connecting to a TLS server, so upgrade this socket
* connection to a TLS connection.
Expand Down

0 comments on commit 3c55b5b

Please sign in to comment.