1.2.0 • Published 7 years ago
tracking-protection v1.2.0
tracking-protection
C++ tracking protection filter parser for lists like https://github.com/disconnectme/disconnect-tracking-protection/blob/master/services.json
Setup
npm install --save tracking-protection
Installation
Clone the git repository from GitHub:
git clone https://github.com/SergeyZhukovsky/tracking-protection
Open the working directory:
cd tracking-protection
Install the Node (v5+) dependencies:
npm install
Sample
#include <iostream>
#include "./TPParser.h"
using std::cout;
using std::endl;
int main(int argc, char **argv) {
CTPParser parser;
parser.addTracker("facebook.com");
parser.addTracker("facebook.de");
// Prints matches
if (parser.matchesTracker("facebook.com")) {
cout << "matches" << endl;
}
else {
cout << "does not match" << endl;
}
// Prints does not match
if (parser.matchesTracker("facebook1.com")) {
cout << "matches" << endl;
} else {
cout << "does not match" << endl;
}
// Prints does not match
if (parser.matchesTracker("subdomain.google-analytics.com.")) {
cout << "matches" << endl;
} else {
cout << "does not match" << endl;
}
parser.addFirstPartyHosts("facebook.com", "facebook.fr,facebook.de");
parser.addFirstPartyHosts("google.com", "2mdn.net,admeld.com");
parser.addFirstPartyHosts("subdomain.google.com", "facebook.fr,facebook.de");
// Returns combined result of third party hosts for "google.com" and for "subdomain.google.com"
// "facebook.fr,facebook.de,2mdn.net,admeld.com"
char* thirdPartyHosts = parser.findFirstPartyHosts("subdomain.google.com");
if (nullptr != thirdPartyHosts) {
cout << thirdPartyHosts << endl;
delete []thirdPartyHosts;
}
unsigned int totalSize = 0;
// Serialize data
char* data = parser.serialize(&totalSize);
// Deserialize data
parser.deserialize(data);
// Prints matches
if (parser.matchesTracker("facebook.com")) {
cout << "matches" << endl;
}
else {
cout << "does not match" << endl;
}
// Prints does not match
if (parser.matchesTracker("facebook1.com")) {
cout << "matches" << endl;
} else {
cout << "does not match" << endl;
}
// Prints "2mdn.net,admeld.com"
thirdPartyHosts = parser.findFirstPartyHosts("google.com");
if (nullptr != thirdPartyHosts) {
cout << thirdPartyHosts << endl;
}
if (data) {
delete []data;
}
return 0;
}
Build everything in release
make
Build everything in debug
make build-debug
Running sample
make sample
Running tests
make test
Clearing build files
make clean
1.2.0
7 years ago
1.1.10
7 years ago
1.1.9
8 years ago
1.1.8
8 years ago
1.1.6
9 years ago
1.1.5
9 years ago
1.1.4
9 years ago
1.1.3
9 years ago
1.1.2
9 years ago
1.1.1
9 years ago
1.1.0
9 years ago
1.0.8
10 years ago
1.0.7
10 years ago
1.0.6
10 years ago
1.0.5
10 years ago
1.0.4
10 years ago
1.0.3
10 years ago
1.0.2
10 years ago
1.0.1
10 years ago
1.0.0
10 years ago