Skip to content

Commit 32fa2bc

Browse files
authored
fix extract_cookie function to handle grpc cookies in the header (#746)
1 parent 91cce24 commit 32fa2bc

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

server/src/handlers/livetail.rs

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -264,13 +264,17 @@ fn extract_basic_auth(header: &MetadataMap) -> Option<Credentials> {
264264
}
265265

266266
fn extract_cookie(header: &MetadataMap) -> Option<Cookie> {
267-
let cookies = header
268-
.get("Cookie")
269-
.and_then(|value| value.to_str().ok())
270-
.map(Cookie::split_parse)?;
267+
// extract the cookie from the request
268+
let cookies = header.get_all("cookie");
269+
let cookies: Vec<_> = cookies
270+
.iter()
271+
.filter_map(|value| value.to_str().ok())
272+
.flat_map(Cookie::split_parse)
273+
.map(|value| value.unwrap())
274+
.collect();
271275

272276
cookies
273-
.flatten()
277+
.into_iter()
274278
.find(|cookie| cookie.name() == SESSION_COOKIE_NAME)
275279
}
276280

0 commit comments

Comments
 (0)