use host instead of headers to make Rack happy (#15741)

"headers" is provided by Rails, Rack can't rely on it
This commit is contained in:
Justin Tracey 2021-02-16 14:28:17 +00:00 committed by GitHub
parent 9c273c2a59
commit 3f8523130d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -7,7 +7,7 @@ module ActionDispatch
# Monkey-patch ActionDispatch to serve secure cookies to Tor Hidden Service # Monkey-patch ActionDispatch to serve secure cookies to Tor Hidden Service
# users. Otherwise, ActionDispatch would drop the cookie over HTTP. # users. Otherwise, ActionDispatch would drop the cookie over HTTP.
def write_cookie?(*) def write_cookie?(*)
request.headers['Host'].ends_with?('.onion') || super request.host.ends_with?('.onion') || super
end end
end end
end end
@ -17,7 +17,7 @@ ActionDispatch::Cookies::CookieJar.prepend(ActionDispatch::CookieJarExtensions)
module Rack module Rack
module SessionPersistedExtensions module SessionPersistedExtensions
def security_matches?(request, options) def security_matches?(request, options)
request.headers['Host'].ends_with?('.onion') || super request.host.ends_with?('.onion') || super
end end
end end
end end