Skip to content

Commit 8e8f074

Browse files
authored
Enforce HTTP/1.1 for internal component JdkHttpClient (#2521)
Signed-off-by: Viet Nguyen Duc <[email protected]>
1 parent 170f936 commit 8e8f074

File tree

14 files changed

+54
-0
lines changed

14 files changed

+54
-0
lines changed

.github/workflows/build-ffmpeg.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ on:
44
push:
55
paths:
66
- '.ffmpeg/Dockerfile'
7+
pull_request:
8+
paths:
9+
- '.ffmpeg/Dockerfile'
710
workflow_dispatch:
811
inputs:
912
release:

Base/Dockerfile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,8 @@ RUN --mount=type=secret,id=SEL_PASSWD \
130130
org.seleniumhq.selenium:selenium-session-map-jdbc:${MVN_SELENIUM_VERSION} \
131131
org.postgresql:postgresql:${POSTGRESQL_VERSION} \
132132
org.seleniumhq.selenium:selenium-session-map-redis:${MVN_SELENIUM_VERSION} \
133+
# Patch specific version for CVEs in the dependencies
134+
io.lettuce:lettuce-core:6.5.1.RELEASE \
133135
> /external_jars/.classpath_session_map.txt \
134136
&& chmod 664 /external_jars/.classpath_session_map.txt ; \
135137
fi \
@@ -185,6 +187,7 @@ ENV SE_BIND_HOST=false \
185187
SE_STRUCTURED_LOGS=false \
186188
SE_ENABLE_TRACING=true \
187189
SE_ENABLE_TLS=false \
190+
SE_JAVA_HTTPCLIENT_VERSION="HTTP_1_1" \
188191
SE_JAVA_SSL_TRUST_STORE="/opt/selenium/secrets/server.jks" \
189192
SE_JAVA_SSL_TRUST_STORE_PASSWORD="/opt/selenium/secrets/server.pass" \
190193
SE_JAVA_DISABLE_HOSTNAME_VERIFICATION=true \

Distributor/start-selenium-grid-distributor.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,10 @@ else
179179
echo "Tracing is disabled"
180180
fi
181181

182+
if [ -n "${SE_JAVA_HTTPCLIENT_VERSION}" ]; then
183+
SE_JAVA_OPTS="$SE_JAVA_OPTS -Dwebdriver.httpclient.version=${SE_JAVA_HTTPCLIENT_VERSION}"
184+
fi
185+
182186
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
183187
-jar /opt/selenium/selenium-server.jar \
184188
${EXTRA_LIBS} \

EventBus/start-selenium-grid-eventbus.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,10 @@ else
109109
echo "Tracing is disabled"
110110
fi
111111

112+
if [ -n "${SE_JAVA_HTTPCLIENT_VERSION}" ]; then
113+
SE_JAVA_OPTS="$SE_JAVA_OPTS -Dwebdriver.httpclient.version=${SE_JAVA_HTTPCLIENT_VERSION}"
114+
fi
115+
112116
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
113117
-jar /opt/selenium/selenium-server.jar \
114118
${EXTRA_LIBS} event-bus \

Hub/start-selenium-grid-hub.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,10 @@ else
159159
echo "Tracing is disabled"
160160
fi
161161

162+
if [ -n "${SE_JAVA_HTTPCLIENT_VERSION}" ]; then
163+
SE_JAVA_OPTS="$SE_JAVA_OPTS -Dwebdriver.httpclient.version=${SE_JAVA_HTTPCLIENT_VERSION}"
164+
fi
165+
162166
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
163167
-jar /opt/selenium/selenium-server.jar \
164168
${EXTRA_LIBS} \

NodeBase/start-selenium-node.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,10 @@ CHROME_DRIVER_PATH_PROPERTY=-Dwebdriver.chrome.driver=/usr/bin/chromedriver
171171
EDGE_DRIVER_PATH_PROPERTY=-Dwebdriver.edge.driver=/usr/bin/msedgedriver
172172
GECKO_DRIVER_PATH_PROPERTY=-Dwebdriver.gecko.driver=/usr/bin/geckodriver
173173

174+
if [ -n "${SE_JAVA_HTTPCLIENT_VERSION}" ]; then
175+
SE_JAVA_OPTS="$SE_JAVA_OPTS -Dwebdriver.httpclient.version=${SE_JAVA_HTTPCLIENT_VERSION}"
176+
fi
177+
174178
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
175179
${CHROME_DRIVER_PATH_PROPERTY} \
176180
${EDGE_DRIVER_PATH_PROPERTY} \

NodeDocker/start-selenium-grid-docker.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,10 @@ else
119119
echo "Tracing is disabled"
120120
fi
121121

122+
if [ -n "${SE_JAVA_HTTPCLIENT_VERSION}" ]; then
123+
SE_JAVA_OPTS="$SE_JAVA_OPTS -Dwebdriver.httpclient.version=${SE_JAVA_HTTPCLIENT_VERSION}"
124+
fi
125+
122126
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
123127
-jar /opt/selenium/selenium-server.jar \
124128
${EXTRA_LIBS} node \

NodeFirefox/Dockerfile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,9 @@ RUN apt-get update -qqy && \
5858
fi \
5959
# Download the language pack for Firefox
6060
&& /opt/bin/get_lang_package.sh \
61+
# Do one more upgrade to fix possible CVEs from Firefox dependencies
62+
&& apt-get update -qqy \
63+
&& apt-get upgrade -yq \
6164
&& rm -rf /var/lib/apt/lists/* /var/cache/apt/*
6265

6366
#============

Router/start-selenium-grid-router.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,10 @@ else
160160
echo "Tracing is disabled"
161161
fi
162162

163+
if [ -n "${SE_JAVA_HTTPCLIENT_VERSION}" ]; then
164+
SE_JAVA_OPTS="$SE_JAVA_OPTS -Dwebdriver.httpclient.version=${SE_JAVA_HTTPCLIENT_VERSION}"
165+
fi
166+
163167
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
164168
-jar /opt/selenium/selenium-server.jar \
165169
${EXTRA_LIBS} router \

SessionQueue/start-selenium-grid-session-queue.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,10 @@ else
113113
echo "Tracing is disabled"
114114
fi
115115

116+
if [ -n "${SE_JAVA_HTTPCLIENT_VERSION}" ]; then
117+
SE_JAVA_OPTS="$SE_JAVA_OPTS -Dwebdriver.httpclient.version=${SE_JAVA_HTTPCLIENT_VERSION}"
118+
fi
119+
116120
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
117121
-jar /opt/selenium/selenium-server.jar \
118122
${EXTRA_LIBS} sessionqueue \

Sessions/start-selenium-grid-sessions.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,10 @@ fi
148148
cat "$CONFIG_FILE"
149149
echo "Starting Selenium Grid Sessions..."
150150

151+
if [ -n "${SE_JAVA_HTTPCLIENT_VERSION}" ]; then
152+
SE_JAVA_OPTS="$SE_JAVA_OPTS -Dwebdriver.httpclient.version=${SE_JAVA_HTTPCLIENT_VERSION}"
153+
fi
154+
151155
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
152156
-jar /opt/selenium/selenium-server.jar \
153157
${EXTRA_LIBS} sessions \

Standalone/start-selenium-standalone.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,10 @@ CHROME_DRIVER_PATH_PROPERTY=-Dwebdriver.chrome.driver=/usr/bin/chromedriver
162162
EDGE_DRIVER_PATH_PROPERTY=-Dwebdriver.edge.driver=/usr/bin/msedgedriver
163163
GECKO_DRIVER_PATH_PROPERTY=-Dwebdriver.gecko.driver=/usr/bin/geckodriver
164164

165+
if [ -n "${SE_JAVA_HTTPCLIENT_VERSION}" ]; then
166+
SE_JAVA_OPTS="$SE_JAVA_OPTS -Dwebdriver.httpclient.version=${SE_JAVA_HTTPCLIENT_VERSION}"
167+
fi
168+
165169
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
166170
${CHROME_DRIVER_PATH_PROPERTY} \
167171
${EDGE_DRIVER_PATH_PROPERTY} \

StandaloneDocker/start-selenium-grid-docker.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,10 @@ else
124124
echo "Tracing is disabled"
125125
fi
126126

127+
if [ -n "${SE_JAVA_HTTPCLIENT_VERSION}" ]; then
128+
SE_JAVA_OPTS="$SE_JAVA_OPTS -Dwebdriver.httpclient.version=${SE_JAVA_HTTPCLIENT_VERSION}"
129+
fi
130+
127131
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
128132
-jar /opt/selenium/selenium-server.jar \
129133
${EXTRA_LIBS} standalone \

tests/charts/make/chart_test.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ CHART_ENABLE_BASIC_AUTH=${CHART_ENABLE_BASIC_AUTH:-"false"}
4040
BASIC_AUTH_USERNAME=${BASIC_AUTH_USERNAME:-"sysAdminUser"}
4141
BASIC_AUTH_PASSWORD=${BASIC_AUTH_PASSWORD:-"myStrongPassword"}
4242
LOG_LEVEL=${LOG_LEVEL:-"INFO"}
43+
INGRESS_DISABLE_USE_HTTP2=${INGRESS_DISABLE_USE_HTTP2:-false}
4344
TEST_EXISTING_KEDA=${TEST_EXISTING_KEDA:-"false"}
4445
TEST_UPGRADE_CHART=${TEST_UPGRADE_CHART:-"false"}
4546
RENDER_HELM_TEMPLATE_ONLY=${RENDER_HELM_TEMPLATE_ONLY:-"false"}
@@ -290,6 +291,10 @@ if [ "${INGRESS_DISABLE_USE_HTTP2}" = "true" ]; then
290291
HELM_COMMAND_SET_IMAGES="${HELM_COMMAND_SET_IMAGES} \
291292
--set ingress.nginx.useHttp2=false \
292293
"
294+
else
295+
HELM_COMMAND_SET_IMAGES="${HELM_COMMAND_SET_IMAGES} \
296+
--set ingress.nginx.useHttp2=true \
297+
"
293298
fi
294299

295300
if [ "${SECURE_CONNECTION_SERVER}" = "true" ]; then

0 commit comments

Comments
 (0)