Skip to content

Commit 6fd515f

Browse files
authored
Merge pull request #5406 from cloudflare/jasnell/remove-extra-header-checks
2 parents 3527891 + 628505e commit 6fd515f

File tree

6 files changed

+0
-18
lines changed

6 files changed

+0
-18
lines changed

src/workerd/api/http.c++

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -163,8 +163,6 @@ Headers::Headers(jsg::Lock& js, const Headers& other): guard(Guard::NONE) {
163163
}
164164

165165
Headers::Headers(jsg::Lock& js, const kj::HttpHeaders& other, Guard guard): guard(Guard::NONE) {
166-
// TODO(soon): Remove this. Throw if the any header values are invalid.
167-
throwIfInvalidHeaderValue(other);
168166
other.forEach([this, &js](auto name, auto value) {
169167
append(js, jsg::ByteString(kj::str(name)), jsg::ByteString(kj::str(value)));
170168
});

src/workerd/io/worker-entrypoint.c++

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,6 @@ kj::Promise<void> WorkerEntrypoint::request(kj::HttpMethod method,
248248
const kj::HttpHeaders& headers,
249249
kj::AsyncInputStream& requestBody,
250250
Response& response) {
251-
throwIfInvalidHeaderValue(headers);
252251
TRACE_EVENT("workerd", "WorkerEntrypoint::request()", "url", url.cStr(),
253252
PERFETTO_FLOW_FROM_POINTER(this));
254253
auto incomingRequest =

src/workerd/io/worker-interface.c++

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,10 @@ class PromisedWorkerInterface final: public WorkerInterface {
2727
const kj::HttpHeaders& headers,
2828
kj::AsyncInputStream& requestBody,
2929
Response& response) override {
30-
throwIfInvalidHeaderValue(headers);
3130
KJ_IF_SOME(w, worker) {
3231
co_await w->request(method, url, headers, requestBody, response);
3332
} else {
3433
co_await promise;
35-
throwIfInvalidHeaderValue(headers);
3634
co_await KJ_ASSERT_NONNULL(worker)->request(method, url, headers, requestBody, response);
3735
}
3836
}
@@ -257,7 +255,6 @@ kj::Promise<void> RevocableWebSocketWorkerInterface::request(kj::HttpMethod meth
257255
kj::AsyncInputStream& requestBody,
258256
kj::HttpService::Response& response) {
259257
auto wrappedResponse = kj::heap<RevocableWebSocketHttpResponse>(response, revokeProm.addBranch());
260-
throwIfInvalidHeaderValue(headers);
261258
return worker.request(method, url, headers, requestBody, *wrappedResponse)
262259
.attach(kj::mv(wrappedResponse));
263260
}
@@ -369,7 +366,6 @@ kj::Promise<void> RpcWorkerInterface::request(kj::HttpMethod method,
369366
const kj::HttpHeaders& headers,
370367
kj::AsyncInputStream& requestBody,
371368
Response& response) {
372-
throwIfInvalidHeaderValue(headers);
373369
auto inner = httpOverCapnpFactory.capnpToKj(dispatcher.getHttpServiceRequest().send().getHttp());
374370
auto promise = inner->request(method, url, headers, requestBody, response);
375371
return promise.attach(kj::mv(inner));

src/workerd/io/worker-interface.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -186,13 +186,11 @@ class LazyWorkerInterface final: public WorkerInterface {
186186
const kj::HttpHeaders& headers,
187187
kj::AsyncInputStream& requestBody,
188188
Response& response) override {
189-
throwIfInvalidHeaderValue(headers);
190189
ensureResolve();
191190
KJ_IF_SOME(w, worker) {
192191
co_await w->request(method, url, headers, requestBody, response);
193192
} else {
194193
co_await KJ_ASSERT_NONNULL(promise);
195-
throwIfInvalidHeaderValue(headers);
196194
co_await KJ_ASSERT_NONNULL(worker)->request(method, url, headers, requestBody, response);
197195
}
198196
}

src/workerd/io/worker.c++

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4312,7 +4312,6 @@ kj::Promise<void> Worker::Isolate::SubrequestClient::request(kj::HttpMethod meth
43124312
const kj::HttpHeaders& headers,
43134313
kj::AsyncInputStream& requestBody,
43144314
kj::HttpService::Response& response) {
4315-
throwIfInvalidHeaderValue(headers);
43164315
using InspectorLock = InspectorChannelImpl::InspectorLock;
43174316

43184317
auto signalRequest = [this, method, urlCopy = kj::str(url),
@@ -4501,7 +4500,6 @@ kj::Promise<void> Worker::Isolate::SubrequestClient::request(kj::HttpMethod meth
45014500

45024501
// While we checked above that the headers are valid, let's check again
45034502
// after the co_await...
4504-
throwIfInvalidHeaderValue(headers);
45054503
KJ_IF_SOME(rid, maybeRequestId) {
45064504
ResponseWrapper wrapper(response, kj::mv(rid), kj::mv(signalResponse));
45074505
co_await inner->request(method, url, headers, requestBody, wrapper);

src/workerd/util/http-util.h

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -67,11 +67,4 @@ class SimpleResponseObserver final: public kj::HttpService::Response {
6767
kj::uint* statusCode;
6868
};
6969

70-
inline void throwIfInvalidHeaderValue(const kj::HttpHeaders& headers) {
71-
headers.forEach([](kj::StringPtr name, kj::StringPtr value) {
72-
KJ_REQUIRE(kj::HttpHeaders::isValidHeaderValue(value),
73-
"Invalid header value received from request", name, value.asBytes());
74-
});
75-
};
76-
7770
} // namespace workerd

0 commit comments

Comments
 (0)