This patch makes the matched info also set into the channels in the
parent process. This info is neeced for the ContentBlocking telemetry
and GeckoView also relies on it.
Differential Revision: https://phabricator.services.mozilla.com/D56748
--HG--
extra : moz-landing-system : lando
We make the OnContentBlockingEvent to be notified in the parent procees
for UrlClassifierCommon. There are two place would trigger this,
UrlClassifierCommon::SetBlockedContent and
UrlClassifierCommon::AnnotateChannel. But we still send to the child
process to notify the content blocking since we need to update the log
in the content process in this stage.
Differential Revision: https://phabricator.services.mozilla.com/D55647
--HG--
extra : moz-landing-system : lando
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.
find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
if [ -n "$interfaces" ]; then
if [[ "$interfaces" == *$'\n'* ]]; then
regexp="\("
for i in $interfaces; do regexp="$regexp$i\|"; done
regexp="${regexp%%\\\|}\)"
else
regexp="$interfaces"
fi
interface=$(basename "$path")
rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
if [ $hits -eq 0 ]; then
echo "Removing ${interface} from ${path2}"
grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
mv -f "$path2".tmp "$path2"
fi
done
fi
done
Differential Revision: https://phabricator.services.mozilla.com/D55444
--HG--
extra : moz-landing-system : lando
This patch does the following:
1. Disable flashblock when fission is enabled.
2. Update flashblock tests to expect "unknown" classification when fission is
enabled.
3. Remove skip-if=fission in flashblock mochitests.
Depends on D51098
Differential Revision: https://phabricator.services.mozilla.com/D55091
--HG--
extra : moz-landing-system : lando
Lots of these callbacks have a non-`void*` final parameter, which UBSAN
complains about. This commit changes them to have a `void*` parameter.
This requires undoing the machinery added in the first two commits of bug
1473631: `TypePrefChangeFunc` and `PREF_CHANGE_METHOD`. The resulting code is
simpler (which is good) and more boilerplate-y (which is bad) but avoids the
undefined behaviour (which is good).
Differential Revision: https://phabricator.services.mozilla.com/D50901
--HG--
extra : moz-landing-system : lando
Before this patch, when we cannot get the host name from the top-level page, for example,
aboout page, UrlClassifeirCommon::CreatePairwiseWhitelistURI returns an error.
After this patch, when |GetHost| fails, we returns NS_OK to just skip looking up
whiltelist for this URI. Note that the lookup against blacklist tables will
still be performed.
Differential Revision: https://phabricator.services.mozilla.com/D49983
--HG--
extra : moz-landing-system : lando
This is where it should have been in the first place. Those attributes belong there.
Differential Revision: https://phabricator.services.mozilla.com/D49577
--HG--
extra : moz-landing-system : lando
This patch does the following to support matching a whitelisted URI when
its domain is eTLD+1:
1. add an URIType to indicate whether a URI is generated by
UrlClassifierCommoon::CreatePairwiseWhiteListURI(), which crafts a
whitelist URL like "toplevel.page/?resource=third.party.domain"
2. call LookupCache::GetLookupWhitelistFragments() if URIType is
nsIUrlClassifierFeature::pairwiseWhitelistedURI before initiating
a lookup.
3. implement LookupCache::GetLookupWhitelistFragments() which creates
an additional fragment by removing the leading component of
third.party.domain
Differential Revision: https://phabricator.services.mozilla.com/D47212
--HG--
extra : moz-landing-system : lando
When URL Classifier reports a channel is a tracker, we should only notify the classification
result when it is a third-party channel.
That means, |IsAllowListed| should not take into consideation here.
Differential Revision: https://phabricator.services.mozilla.com/D43735
--HG--
extra : moz-landing-system : lando
Sorry I had some problems figuring out who can review netwerk/. Most people seem to be on PTO.
Differential Revision: https://phabricator.services.mozilla.com/D41175
--HG--
extra : moz-landing-system : lando
This requires replacing inclusions of it with inclusions of more specific prefs
files.
The exception is that StaticPrefsAll.h, which is equivalent to StaticPrefs.h,
and is used in `Codegen.py` because doing something smarter is tricky and
suitable for a follow-up. As a result, any change to StaticPrefList.yaml will
still trigger recompilation of all the generated DOM bindings files, but that's
still a big improvement over trigger recompilation of every file that uses
static prefs.
Most of the changes in this commit are very boring. The only changes that are
not boring are modules/libpref/*, Codegen.py, and ServoBindings.toml.
Differential Revision: https://phabricator.services.mozilla.com/D39138
--HG--
extra : moz-landing-system : lando
Origin telemetry expects every tracking channel has tracker's hash.
Without hash value for test entries, it will trigger MOZ_ASSERT while running
testcases.
Differential Revision: https://phabricator.services.mozilla.com/D30061
--HG--
extra : moz-landing-system : lando
The enable channels classified by these two features contain tracker's
hash value.
Differential Revision: https://phabricator.services.mozilla.com/D29647
--HG--
extra : moz-landing-system : lando
In origin telemetry, we want to record the matching statistic of each entry
in our tracking tables. To identify which entry a given URL matches, it needs
the hash value that matches the safe browsing database.
This patch passes the hash value to ProcessChannel so Features can obtain the
information and pass it.
Note that it is possible that an URL may find multiple matches. If an URL matches
hash A of list 1 and hash B of list 2, the parameter in ProcessChannel looks like:
aList = [list 1, list2]
aHashes = [hash A, hash B]
Differential Revision: https://phabricator.services.mozilla.com/D28789
--HG--
extra : moz-landing-system : lando