Граф коммитов

119 Коммитов

Автор SHA1 Сообщение Дата
Valentin Gosu 2d5b10a0b5 Bug 1450199 - Cookie is not synced across tabs r=Ehsan
This patch reverts parts of changeset e87e706def11 (bug 1425031).
The problem in bug 1425031 was that when the content process set a cookie
a notification was sent to the parent process. This notification was then
forwarded to all the content processes, including the one it originated from.
The solution was to not forward cookies that originated from a content
process, but this causes the current bug.
The correct fix is to forward the cookie changes to all content processes
except the one they originated from.
The test for bug 1425031 remains, and should keep passing.


MozReview-Commit-ID: 1P6JwHQDy93

--HG--
extra : rebase_source : 85845c93059004836e14d5a46f2df881237fad6e
2018-04-19 13:18:50 +02:00
Francois Marier 8ac645b0cd Bug 1452699 - Add a temporary pref to disable same-site cookies. r=ckerschb,valentin
MozReview-Commit-ID: LRnaSmdSgVW

--HG--
extra : rebase_source : 9dd301f4d49b0fe6f81531d81bac2466032cc3a3
2018-04-13 18:52:28 -07:00
Sebastian Hengst 0819f35e51 Backed out 4 changesets (bug 525063) on request from Andi. a=backout
Backed out changeset 516c4fb1e4b8 (bug 525063)
Backed out changeset 6ff8aaef2866 (bug 525063)
Backed out changeset bf13e4103150 (bug 525063)
Backed out changeset d7d2f08e051c (bug 525063)
2018-04-13 16:01:28 +03:00
Tristan Bourvon a3a77c0312 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Christoph Kerschbaumer b844c33ae2 Bug 1286861: Update CookieService to enforce same site cookies. r=valentin 2018-04-08 19:52:05 +02:00
Amy Chung a0e6c2af00 Bug 1425031 - Don't broadcast to content processes cookie updates that initiated in content processes. r=jdm 2018-01-12 12:53:00 -05:00
Brindusan Cristian dbf026ac00 Backed out changeset 1a64ce266ba5 (bug 1425031) for mochitest failures on test_1425031.html on a CLOSED TREE 2018-01-30 00:20:25 +02:00
Amy Chung 6c7cd2d790 Bug 1425031 - Don't broadcast to content processes cookie updates that initiated in content processes. r=jdm 2018-01-12 12:53:00 -05:00
Junior Hsu 5485f27c35 Bug 1413839 - Add telemetry to probe how close we are going to block main thread. r=ngwh, data-r=francois 2017-11-21 10:51:11 -05:00
Valentin Gosu 1bd153659e Bug 1407720 - Merge nsICookieManager and nsICookieManager2 r=nwgh
MozReview-Commit-ID: HuzeeB43YZZ

--HG--
extra : rebase_source : 3924170ce50126dbbae7c97cae601b69d0ab95af
2017-10-31 13:02:28 +01:00
Junior Hsu 51ac771e2d Bug 870460 - Part 1: Let cookie db startup-read off-main-thread. r=nwgh, r=jdm, data-r=francois
--HG--
extra : source : 6c48185764430d35558cf6a0174bc447674e8d58
2017-08-29 18:16:27 +08:00
Sebastian Hengst ec34b16044 Backed out changeset 6c4818576443 (bug 870460) for failing many xpcshell tests, e.g. extensions/cookie/test/unit/test_cookies_async_failure.js. r=backout
--HG--
extra : amend_source : e5bb4ef1b68ae382c6457f77077f33174518efd1
2017-10-24 16:48:17 +02:00
Junior Hsu 725658c3ff Bug 870460 - Part 1: Let cookie db startup-read off-main-thread. r=nwgh, r=jdm, data-r=francois
--HG--
extra : rebase_source : 9892af8b907e67c8f4e6ee6cbe124b21ee10cc58
2017-08-29 18:16:27 +08:00
Chris Peterson 38fcf1fd08 Bug 1160368 - Part 2: Collect telemetry on how often first- and third-party cookies are set from HTTPS origins. r=jdm data-review=francois
This new COOKIE_SCHEME_HTTPS telemetry probe reports the same information as the COOKIE_SCHEME_SECURITY probe, but also categories cookies by whether they are set from an HTTP or HTTPS origin.

MozReview-Commit-ID: IWg8dycCzwq

--HG--
extra : source : 94708be3f00796680377b3235b78f7db70c34510
extra : intermediate-source : eaf32e92b13d54a8e8d70a7b8caf420800641d49
2017-02-16 18:58:48 -08:00
Chris Peterson f38368c9cc Bug 1160368 - Part 1: Add flag to treat third-party cookies set over nonsecure HTTP as session cookies. r=jdm
"Nonsecure HTTP" here just means regular, not-HTTPS HTTP. It doesn't mean HTTPS without the `Secure` cookie flag. Honor the expiration time of third-party cookies set over HTTPS, whether or not they have the `Secure` cookie flag. If a third-party cookie is set over HTTPS and then later sent in nonsecure HTTP request (which is allowed for cookies without the `Secure` cookie flag), the cookie won't be turned into a session cookie unless the nonsecure HTTP response sets a new cookie value.

This feature is controlled by the pref "network.cookie.thirdparty.nonsecureSessionOnly".

MozReview-Commit-ID: HlCg21JyvNC

--HG--
rename : extensions/cookie/test/unit/test_cookies_thirdparty_session.js => extensions/cookie/test/unit/test_cookies_thirdparty_nonsecure_session.js
extra : source : d1be2e4265201efd3ee93e965ac68561f548fd05
extra : intermediate-source : f5b382fa1b70e30a907b1f10d74f8c0c6dff344e
2017-02-16 19:27:49 -08:00
Amy Chung 3eec3617b1 Bug 1399590 - Modify the argument of nsICookiePermission::CanAccess for changing nsIURI to nsIPrincipal. r=jdm 2017-10-03 14:37:11 +08:00
Amy Chung e30f2f6227 Bug 1286858 - Data storage and interface changes for SameSite cookies. r=valentin 2017-09-25 01:27:04 +08:00
Kris Maglione c86bc6b1ea Bug 1396676: Return already_AddRefed from cookie service GetSingleton() methods. r=jdm
These methods return an addrefed raw pointer, which makes them easy to use in
ways that cause leaks. If they're to continue returning an addrefed pointer,
they should explicitly return an already_AddRefed.

This also switches to StaticRefPtr with ClearOnShutdown for the cached
pointers for the sake of sanity.

MozReview-Commit-ID: D0lDpU8Hqug

--HG--
extra : rebase_source : 7b199070805fc0472eaf8409932517700ed23d49
2017-09-04 15:05:10 -07:00
Amy Chung b01732f8ca Bug 1331680 - Part 2: Use local cookie hashtable in content process, and perform cookie permission checks synchronously. r=jdm 2017-08-03 17:59:31 +08:00
Amy Chung 1f101b071c Bug 1331680 - Part 1: Send required cookies to the content process on demand. r=jdm 2017-08-03 19:00:41 +08:00
Amy Chung 62553acf94 Bug 1331680 - Part 0: Extract nsCookieKey. r=jdm 2017-08-03 17:56:33 +08:00
Will Wang 1c9d3566e7 Bug 1366213: Part 1 - Add a new observer notification 'session-cookie-changed'. r=jdm
--HG--
extra : rebase_source : 5495a601b463f59f1e39746c2069c6af042a9680
2017-07-07 17:47:53 +08:00
Nicholas Nethercote fe9268c4cd Bug 1374580 (part 2) - Remove nsAFlat{,C}String typedefs. r=froydnj.
All the instances are converted as follows.

- nsAFlatString  --> nsString
- nsAFlatCString --> nsCString

--HG--
extra : rebase_source : b37350642c58a85a08363df2e7c610873faa6e41
2017-06-20 19:19:05 +10:00
Nicholas Nethercote 1572f96f5d Bug 1374580 (part 1) - Remove nsASingleFragment{,C}String typedefs. r=froydnj.
All the instances are converted as follows.

- nsASingleFragmentString  --> nsAString
- nsASingleFragmentCString --> nsACString

--HG--
extra : rebase_source : e6a1ddc8938fecd9a735b15e872c054edf4c7910
2017-06-20 19:18:17 +10:00
Yoshi Huang db11c81921 Bug 1284579 - Part 3: remove IsPrivate arg from nsCookieService. r=valentin
Since we already passed origin attributes into these functions, we can
remove the extra isPrivate argument.
2017-05-04 09:40:21 +08:00
Andrea Marchesini 359ae91eac Bug 1328653 - Merging all the various *OriginAttributes to just one, r=huseby 2017-01-12 17:38:48 +01:00
Ehsan Akhgari 4d287a0042 Bug 1321912 - Remove the appId field from the moz_cookies table; r=jdm 2017-01-03 22:34:46 -05:00
Sylvestre Ledru a8539821a2 Bug 1317430 - Avoid a unnecessary copy by passing a const & in netwerk/ r=valentin
MozReview-Commit-ID: LKgXjObeXOZ

--HG--
extra : rebase_source : b10835297d8fb345ce9ba81c94d9a7c0397a4e1d
2016-11-14 23:16:40 +01:00
Sylvestre Ledru 3358b4e704 Bug 1317250 - Avoid a copy in nsCookieService::FindStaleCookie r=jdm
MozReview-Commit-ID: G61TtsTNU7x

--HG--
extra : rebase_source : 59d8006773a134b400a6063fa9de83f8a685161e
2016-11-14 11:01:34 +01:00
amy a58ca1d174 Bug 976073 - Part 1 : Implement spec, r=jdm r=dveditz 2016-11-09 17:14:21 +08:00
Josh Matthews 3b4eeee788 Bug 1264192 - Adjust cookie eviction heuristics when exceeding the maximum cookies allowed per host. r=ehsan
If no expired cookies exist, in order of preference, evict the oldest:
* session cookie with a non-matching path
* session cookie with a matching path
* non-session cookie with a non-matching path
* non-session cookie with a matching path

This replaces the previous heuristic of evicting the oldest cookie, irregardless of any other attributes,
if no expired cookies were present. This ensures that cookies that are already considered transient by
web applications will be removed first, followed by cookies that are unrelated to the response that is
adding new cookies.
* * *
Bug 1264192 - Interdiff
2016-09-09 16:29:15 -04:00
Sebastian Hengst 80e39088f2 Backed out changeset 2ecd402d3934 (bug 1264192) for frequent failure in netwerk/cookie/test/unit/test_eviction.js. r=backout 2016-09-04 15:07:24 +02:00
Tim Huang 55292e77a0 Bug 1278037 - Part 1: Modify the getCookiesWithOriginAttributes of the nsICookieManager2 to take the host as an optional argument. r=jdm
--HG--
extra : rebase_source : 918c1f81dedb5dfa6ddb9a78b613ace6f34f4758
extra : histedit_source : f28df59c4b608f7311e04dc00bce286624d7ad81
2016-07-28 11:46:04 +08:00
Josh Matthews 64a98fc3b7 Bug 1264192 - Adjust cookie eviction heuristics when exceeding the maximum cookies allowed per host. r=ehsan
If no expired cookies exist, in order of preference, evict the oldest:
* session cookie with a non-matching path
* session cookie with a matching path
* non-session cookie with a non-matching path
* non-session cookie with a matching path

This replaces the previous heuristic of evicting the oldest cookie, irregardless of any other attributes,
if no expired cookies were present. This ensures that cookies that are already considered transient by
web applications will be removed first, followed by cookies that are unrelated to the response that is
adding new cookies.

--HG--
extra : amend_source : f79ba9dd393a3f37760e643b10b7137e37a6397a
2016-08-26 18:04:47 -04:00
Sumit Tiwari 054b2202b0 Bug 1298512 - Remove aRequireHostMatch to nsCookieService::CheckPrefs; r=jdm
MozReview-Commit-ID: 2SdJhbJtBDO

--HG--
extra : rebase_source : 1c19d0de7f2c8052a7691d474a864e260c35daba
2016-08-26 21:42:04 -04:00
Daniel Veditz d6202de12b Bug 1283368 - Implement cookie prefixes spec, r=valentin r=amchung 2016-06-29 22:42:36 -07:00
Valentin Gosu 704a204aff Bug 1276442 - Backout 6647b13a6ad9 (Bug 219157) a=backout 2016-05-30 16:05:21 +02:00
mitchdevel ce5b229c18 Bug 219157 - Fix to prevent 3rd party sites from getting cookies r=valentin
MozReview-Commit-ID: A0ltsuDnxnf
2016-05-20 16:48:00 +02:00
Ethan Tseng 7bf2d7f142 Bug 1214071 - Replace Get/RemoveCookiesForApp() with Get/RemoveCookiesWithOriginAttributes() r=ehsan
MozReview-Commit-ID: JTi1BwBVvyA
2016-01-08 17:58:56 +08:00
Andrea Marchesini b88bc4f2a4 Bug 1199466 - part 1 - Expose originAttributes in nsICookie, r=jduell 2016-01-14 08:03:50 +00:00
Yoshi Huang 4b500464f5 Bug 1209162 - Create OriginAttributes subtypes. IGNORE IDL r=sicking. 2015-11-03 09:50:54 +08:00
Ethan Tseng 8364215e41 Bug 1220570 - Potential cookie lost while downgrading from Aurora 44 to 43. r=jduell
--HG--
extra : rebase_source : f5fdca0cca8b67dd2ffb702993dfa3559cab08b9
2015-11-03 18:40:58 +08:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Ethan Tseng bb095c04f4 Bug 1165267 - Part 1: Replace appId and inBrowser by originAttributes v2. r=honzab 2015-09-03 18:22:51 +08:00
Nicholas Nethercote 01846026c1 Bug 1182961 (part 5, attempt 2) - Use nsTHashtable::Iterator in nsCookieService. r=michal. 2015-07-26 23:40:51 -07:00
Nicholas Nethercote daab3fdaf7 Backout bff74cecc67c, ffe0edb2aae7, b60b7c267cef, 6da154b43265, bcf6fd3ab9bb (bug 1182961 parts 1--5) for possible intermittent failures and performance problems.
--HG--
extra : rebase_source : 97ab1452e462b1ff24cc77bdadf2a6e82800690d
2015-08-06 16:30:47 -07:00
Nicholas Nethercote b32aa53dc2 Bug 1182961 (part 5) - Use nsTHashtable::Iterator in nsCookieService. r=michal.
--HG--
extra : rebase_source : a43f8ec3918bbdb226079f6d4503a0b117639863
2015-07-26 23:40:51 -07:00
Ehsan Akhgari 605f42ffc0 Bug 1184395 - Remove nsCookieService::mObserverService; r=jdm
This is done to ensure that the cookie service cannot hold the observer
service alive.
2015-07-17 21:09:04 -04:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Ehsan Akhgari 8fe0ce4a62 Bug 1155169 - Avoid restoring the same cookie twice if the previous version of the cookie is not stale; r=jdm 2015-07-09 08:54:25 -04:00