| Index: net/cookies/cookie_options.h
|
| diff --git a/net/cookies/cookie_options.h b/net/cookies/cookie_options.h
|
| index 975b8c8fd93ad7c3e4c29e9d5139d1239957f313..a7ed5a9aac64eca34e4223799a698fdd5581ee43 100644
|
| --- a/net/cookies/cookie_options.h
|
| +++ b/net/cookies/cookie_options.h
|
| @@ -7,19 +7,35 @@
|
| #ifndef NET_COOKIES_COOKIE_OPTIONS_H_
|
| #define NET_COOKIES_COOKIE_OPTIONS_H_
|
|
|
| +#include "url/gurl.h"
|
| +
|
| namespace net {
|
|
|
| class CookieOptions {
|
| public:
|
| - // Default is to exclude httponly, which means:
|
| - // - reading operations will not return httponly cookies.
|
| - // - writing operations will not write httponly cookies.
|
| - CookieOptions() : exclude_httponly_(true), server_time_() {}
|
| + // Default is to exclude httponly completely, and exclude first-party from
|
| + // being read, which means:
|
| + // - reading operations will not return httponly or first-party cookies.
|
| + // - writing operations will not write httponly cookies (first-party will be
|
| + // written).
|
| + //
|
| + // If a first-party URL is set, then first-party cookies which match that URL
|
| + // will be returned.
|
| + CookieOptions()
|
| + : exclude_httponly_(true),
|
| + include_first_party_only_(false),
|
| + server_time_() {}
|
|
|
| void set_exclude_httponly() { exclude_httponly_ = true; }
|
| void set_include_httponly() { exclude_httponly_ = false; }
|
| bool exclude_httponly() const { return exclude_httponly_; }
|
|
|
| + void set_include_first_party_only() { include_first_party_only_ = true; }
|
| + bool include_first_party_only() const { return include_first_party_only_; }
|
| +
|
| + void set_first_party_url(const GURL& url) { first_party_url_ = url; }
|
| + GURL first_party_url() const { return first_party_url_; }
|
| +
|
| // |server_time| indicates what the server sending us the Cookie thought the
|
| // current time was when the cookie was produced. This is used to adjust for
|
| // clock skew between server and host.
|
| @@ -31,8 +47,11 @@ class CookieOptions {
|
|
|
| private:
|
| bool exclude_httponly_;
|
| + bool include_first_party_only_;
|
| + GURL first_party_url_;
|
| base::Time server_time_;
|
| };
|
| +
|
| } // namespace net
|
|
|
| #endif // NET_COOKIES_COOKIE_OPTIONS_H_
|
|
|