RESOLVED FIXED 188609
[Curl] Implement default cookie path handling correctly as outlined in RFC6265.
https://bugs.webkit.org/show_bug.cgi?id=188609
Summary [Curl] Implement default cookie path handling correctly as outlined in RFC6265.
Basuke Suzuki
Reported 2018-08-15 11:54:51 PDT
Curl implementation of default cookie path was wrong so that some cookies cannot be accessible. It should be generated as outlined in: https://tools.ietf.org/html/rfc6265#section-5.1.4
Attachments
PATCH (4.67 KB, patch)
2018-08-15 12:17 PDT, Basuke Suzuki
no flags
PATCH (4.67 KB, patch)
2018-08-15 13:03 PDT, Basuke Suzuki
no flags
Basuke Suzuki
Comment 1 2018-08-15 12:17:00 PDT
Basuke Suzuki
Comment 2 2018-08-15 13:03:00 PDT
Alex Christensen
Comment 3 2018-08-15 13:07:51 PDT
Comment on attachment 347196 [details] PATCH View in context: https://bugs.webkit.org/attachment.cgi?id=347196&action=review > Source/WebCore/platform/network/curl/CookieUtil.cpp:189 > + if (!lastSlashPosition) notFound
Christopher Reid
Comment 4 2018-08-15 14:16:16 PDT
(In reply to Alex Christensen from comment #3) > Comment on attachment 347196 [details] > PATCH > > View in context: > https://bugs.webkit.org/attachment.cgi?id=347196&action=review > > > Source/WebCore/platform/network/curl/CookieUtil.cpp:189 > > + if (!lastSlashPosition) > > notFound I think this confusion is from the style checker complaining about comparison with 0 and !lastSlashPosition was done to make it happy. We do actually want to check if the lastSlashPosition is 0 so '/path' returns '/' instead of empty string. We also know that there is always at least one slash in the path string from the condition above. I think it should be changed to lastSlashPosition == 0 ignoring the style checker.
Alex Christensen
Comment 5 2018-08-15 14:35:59 PDT
Comment on attachment 347196 [details] PATCH View in context: https://bugs.webkit.org/attachment.cgi?id=347196&action=review >>> Source/WebCore/platform/network/curl/CookieUtil.cpp:189 >>> + if (!lastSlashPosition) >> >> notFound > > I think this confusion is from the style checker complaining about comparison with 0 and !lastSlashPosition was done to make it happy. > We do actually want to check if the lastSlashPosition is 0 so '/path' returns '/' instead of empty string. We also know that there is always at least one slash in the path string from the condition above. > > I think it should be changed to lastSlashPosition == 0 ignoring the style checker. If path is null, reverseFind returns notFound. We already have a check for that above, so no problem here.
WebKit Commit Bot
Comment 6 2018-08-15 15:03:36 PDT
Comment on attachment 347196 [details] PATCH Clearing flags on attachment: 347196 Committed r234901: <https://trac.webkit.org/changeset/234901>
WebKit Commit Bot
Comment 7 2018-08-15 15:03:37 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 8 2018-08-15 15:04:34 PDT
Note You need to log in before you can comment on or make changes to this bug.