@@ -58,7 +58,7 @@ class SslProxyTunnelEstablisher {
58
58
* @throws IOException if tunnel establishment fails
59
59
*/
60
60
@ NonNull
61
- public Socket establishTunnel (@ NonNull String proxyHost ,
61
+ Socket establishTunnel (@ NonNull String proxyHost ,
62
62
int proxyPort ,
63
63
@ NonNull String targetHost ,
64
64
int targetPort ,
@@ -128,7 +128,7 @@ public Socket establishTunnel(@NonNull String proxyHost,
128
128
private void sendConnectRequest (@ NonNull SSLSocket sslSocket ,
129
129
@ NonNull String targetHost ,
130
130
int targetPort ,
131
- @ Nullable BearerCredentialsProvider proxyCredentialsProvider ) throws IOException {
131
+ @ Nullable ProxyCredentialsProvider proxyCredentialsProvider ) throws IOException {
132
132
133
133
Logger .v ("Sending CONNECT request through SSL: CONNECT " + targetHost + ":" + targetPort + " HTTP/1.1" );
134
134
@@ -137,10 +137,12 @@ private void sendConnectRequest(@NonNull SSLSocket sslSocket,
137
137
writer .write ("Host: " + targetHost + ":" + targetPort + CRLF );
138
138
139
139
if (proxyCredentialsProvider != null ) {
140
- // Send Proxy-Authorization header if credentials are set
141
- String bearerToken = proxyCredentialsProvider .getToken ();
142
- if (bearerToken != null && !bearerToken .trim ().isEmpty ()) {
143
- writer .write (PROXY_AUTHORIZATION_HEADER + ": Bearer " + bearerToken + CRLF );
140
+ if (proxyCredentialsProvider instanceof BearerCredentialsProvider ) {
141
+ // Send Proxy-Authorization header if credentials are set
142
+ String bearerToken = ((BearerCredentialsProvider ) proxyCredentialsProvider ).getToken ();
143
+ if (bearerToken != null && !bearerToken .trim ().isEmpty ()) {
144
+ writer .write (PROXY_AUTHORIZATION_HEADER + ": Bearer " + bearerToken + CRLF );
145
+ }
144
146
}
145
147
}
146
148
0 commit comments