\DevOwl\HeadlessContentBlocker\plugins\scannerFalsePositivesProcessor

Put in a list of `ScanEntry`'s and sort out false-positives and deduplicate. Keep in mind, that this processor can also touch your `ScanEntry` properties as well!

Summary

Methods
Properties
Constants
__construct()
process()
removeExternalUrlsWithPresetDuplicate()
deduplicate()
convertPresetsWithNonMatchingGroupsToExternalUrl()
convertExternalUrlsCoveredByPreset()
convertStandaloneLinkRelPresetToExternalUrl()
canExternalUrlBeBypassed()
getEntries()
No public properties found
No constants found
alreadyExistsInOtherFoundPreset()
No protected properties found
N/A
No private methods found
$blockableScanner
$entries
N/A

Properties

$blockableScanner

$blockableScanner :

Type

$entries

$entries :

Type

Methods

process()

process()

Prepare the passed results and do some optimizations on them (e.g. remove duplicates).

removeExternalUrlsWithPresetDuplicate()

removeExternalUrlsWithPresetDuplicate()

Remove external URLs which are duplicated as preset, too.

deduplicate()

deduplicate()

Deduplicate coexisting presets. Examples:

  • CF7 with reCaptcha over Google reCaptcha
  • MonsterInsights > Google Analytics (extended)

convertPresetsWithNonMatchingGroupsToExternalUrl()

convertPresetsWithNonMatchingGroupsToExternalUrl()

Remove all entries when there is not a scan entry with the needed host and convert it to an external URL.

convertExternalUrlsCoveredByPreset()

convertExternalUrlsCoveredByPreset(array<mixed,\DevOwl\HeadlessContentBlocker\plugins\scanner\ScanEntry>  $entries = null)

Convert external URLs which got covered by a preset. When is this the case? When using a `SelectorSyntaxBlocker` with e.g. `link[href=""]` (for example WordPress emojis).

Parameters

array<mixed,\DevOwl\HeadlessContentBlocker\plugins\scanner\ScanEntry> $entries

The entries to check, defaults to current instance entries

convertStandaloneLinkRelPresetToExternalUrl()

convertStandaloneLinkRelPresetToExternalUrl()

Convert a found `link[rel="preconnect|dns-prefetch"]` within a preset and stands alone within this preset to an external URL as a DNS-prefetch and preconnect **must** be loaded in conjunction with another script.

canExternalUrlBeBypassed()

canExternalUrlBeBypassed(\DevOwl\HeadlessContentBlocker\plugins\scanner\ScanEntry  $entry)

Example: A blocked form does not have reCAPTCHA, got found as "CleverReach". The `form[action]` does not need to get blocked due to the fact the server is only contacted through submit-interaction (a privacy policy needs to be linked / checkbox).

Parameters

\DevOwl\HeadlessContentBlocker\plugins\scanner\ScanEntry $entry

getEntries()

getEntries()

Getter.