Skip to content

Commit 912e09b

Browse files
author
Jesse Nicholson
committed
Fixes, added standalone ABP filter parser
Fixes TechnikEmpire#48 Fixes TechnikEmpire#53 Fixes TechnikEmpire#51 Fixes TechnikEmpire#50 Fixes TechnikEmpire#52 Added independent ABP filter parser and removed all such functionality from HttpFilteringEngine class, moved to the new AbpFilterParser class. This change also included a rewrite of ABP filtering functionality to be more correct.
1 parent 6c571c4 commit 912e09b

18 files changed

Lines changed: 1487 additions & 1597 deletions

ide/msvc/libhttpfilteringengine.vcxproj

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -538,11 +538,10 @@ xcopy /Y "$(ProjectDir)..\..\deps\windivert\msvc\x64\*.sys" "$(OutDir)"</Command
538538
<Reference Include="System.Xml" />
539539
</ItemGroup>
540540
<ItemGroup>
541+
<ClInclude Include="..\..\src\te\httpengine\filtering\http\AbpFilterParser.hpp" />
541542
<ClInclude Include="..\..\src\te\httpengine\filtering\http\CategorizedCssSelector.hpp" />
542-
<ClInclude Include="..\..\src\te\httpengine\filtering\http\HttpAbpBaseFilter.hpp" />
543-
<ClInclude Include="..\..\src\te\httpengine\filtering\http\HttpAbpExceptionFilter.hpp" />
544-
<ClInclude Include="..\..\src\te\httpengine\filtering\http\HttpAbpFilterOptions.hpp" />
545-
<ClInclude Include="..\..\src\te\httpengine\filtering\http\HttpAbpInclusionFilter.hpp" />
543+
<ClInclude Include="..\..\src\te\httpengine\filtering\http\AbpFilter.hpp" />
544+
<ClInclude Include="..\..\src\te\httpengine\filtering\http\AbpFilterOptions.hpp" />
546545
<ClInclude Include="..\..\src\te\httpengine\filtering\http\HttpFilteringEngine.hpp" />
547546
<ClInclude Include="..\..\src\te\httpengine\filtering\options\HttpFilteringOptions.hpp" />
548547
<ClInclude Include="..\..\src\te\httpengine\filtering\options\ProgramWideOptions.hpp" />
@@ -567,10 +566,9 @@ xcopy /Y "$(ProjectDir)..\..\deps\windivert\msvc\x64\*.sys" "$(OutDir)"</Command
567566
<ClInclude Include="resource.h" />
568567
</ItemGroup>
569568
<ItemGroup>
569+
<ClCompile Include="..\..\src\te\httpengine\filtering\http\AbpFilterParser.cpp" />
570570
<ClCompile Include="..\..\src\te\httpengine\filtering\http\CategorizedCssSelector.cpp" />
571-
<ClCompile Include="..\..\src\te\httpengine\filtering\http\HttpAbpBaseFilter.cpp" />
572-
<ClCompile Include="..\..\src\te\httpengine\filtering\http\HttpAbpExceptionFilter.cpp" />
573-
<ClCompile Include="..\..\src\te\httpengine\filtering\http\HttpAbpInclusionFilter.cpp" />
571+
<ClCompile Include="..\..\src\te\httpengine\filtering\http\AbpFilter.cpp" />
574572
<ClCompile Include="..\..\src\te\httpengine\filtering\http\HttpFilteringEngine.cpp" />
575573
<ClCompile Include="..\..\src\te\httpengine\filtering\options\ProgramWideOptions.cpp" />
576574
<ClCompile Include="..\..\src\te\httpengine\HttpFilteringEngineControl.cpp" />

ide/msvc/libhttpfilteringengine.vcxproj.filters

Lines changed: 15 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -150,15 +150,6 @@
150150
<ClInclude Include="..\..\src\te\httpengine\filtering\http\HttpFilteringEngine.hpp">
151151
<Filter>Header Files\te\httpengine\filtering\http</Filter>
152152
</ClInclude>
153-
<ClInclude Include="..\..\src\te\httpengine\filtering\http\HttpAbpBaseFilter.hpp">
154-
<Filter>Header Files\te\httpengine\filtering\http</Filter>
155-
</ClInclude>
156-
<ClInclude Include="..\..\src\te\httpengine\filtering\http\HttpAbpExceptionFilter.hpp">
157-
<Filter>Header Files\te\httpengine\filtering\http</Filter>
158-
</ClInclude>
159-
<ClInclude Include="..\..\src\te\httpengine\filtering\http\HttpAbpInclusionFilter.hpp">
160-
<Filter>Header Files\te\httpengine\filtering\http</Filter>
161-
</ClInclude>
162153
<ClInclude Include="..\..\src\te\httpengine\mitm\http\BaseHttpTransaction.hpp">
163154
<Filter>Header Files\te\httpengine\mitm\http</Filter>
164155
</ClInclude>
@@ -207,9 +198,6 @@
207198
<ClInclude Include="..\..\src\te\httpengine\util\cb\EventReporter.hpp">
208199
<Filter>Header Files\te\httpengine\util\cb</Filter>
209200
</ClInclude>
210-
<ClInclude Include="..\..\src\te\httpengine\filtering\http\HttpAbpFilterOptions.hpp">
211-
<Filter>Header Files\te\httpengine\filtering\http</Filter>
212-
</ClInclude>
213201
<ClInclude Include="..\..\src\te\httpengine\mitm\diversion\DiversionControl.hpp">
214202
<Filter>Header Files\te\httpengine\mitm\diversion</Filter>
215203
</ClInclude>
@@ -225,6 +213,15 @@
225213
<ClInclude Include="..\..\src\te\httpengine\mitm\secure\TlsCapableHttpAcceptor.hpp">
226214
<Filter>Header Files\te\httpengine\mitm\secure</Filter>
227215
</ClInclude>
216+
<ClInclude Include="..\..\src\te\httpengine\filtering\http\AbpFilterParser.hpp">
217+
<Filter>Header Files\te\httpengine\filtering\http</Filter>
218+
</ClInclude>
219+
<ClInclude Include="..\..\src\te\httpengine\filtering\http\AbpFilter.hpp">
220+
<Filter>Header Files\te\httpengine\filtering\http</Filter>
221+
</ClInclude>
222+
<ClInclude Include="..\..\src\te\httpengine\filtering\http\AbpFilterOptions.hpp">
223+
<Filter>Header Files\te\httpengine\filtering\http</Filter>
224+
</ClInclude>
228225
</ItemGroup>
229226
<ItemGroup>
230227
<ClCompile Include="AssemblyInfo.cpp">
@@ -233,15 +230,6 @@
233230
<ClCompile Include="..\..\src\te\httpengine\filtering\http\HttpFilteringEngine.cpp">
234231
<Filter>Source Files\te\httpengine\filtering\http</Filter>
235232
</ClCompile>
236-
<ClCompile Include="..\..\src\te\httpengine\filtering\http\HttpAbpBaseFilter.cpp">
237-
<Filter>Source Files\te\httpengine\filtering\http</Filter>
238-
</ClCompile>
239-
<ClCompile Include="..\..\src\te\httpengine\filtering\http\HttpAbpExceptionFilter.cpp">
240-
<Filter>Source Files\te\httpengine\filtering\http</Filter>
241-
</ClCompile>
242-
<ClCompile Include="..\..\src\te\httpengine\filtering\http\HttpAbpInclusionFilter.cpp">
243-
<Filter>Source Files\te\httpengine\filtering\http</Filter>
244-
</ClCompile>
245233
<ClCompile Include="..\..\src\te\httpengine\mitm\http\BaseHttpTransaction.cpp">
246234
<Filter>Source Files\te\httpengine\mitm\http</Filter>
247235
</ClCompile>
@@ -284,6 +272,12 @@
284272
<ClCompile Include="..\..\src\te\httpengine\HttpFilteringEngineCAPI.cpp">
285273
<Filter>Source Files\te\httpengine</Filter>
286274
</ClCompile>
275+
<ClCompile Include="..\..\src\te\httpengine\filtering\http\AbpFilterParser.cpp">
276+
<Filter>Source Files\te\httpengine\filtering\http</Filter>
277+
</ClCompile>
278+
<ClCompile Include="..\..\src\te\httpengine\filtering\http\AbpFilter.cpp">
279+
<Filter>Source Files\te\httpengine\filtering\http</Filter>
280+
</ClCompile>
287281
</ItemGroup>
288282
<ItemGroup>
289283
<ResourceCompile Include="app.rc">

scripts/win/build-coverity-x64.cmd

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
::
2+
:: Copyright (c) 2016 Jesse Nicholson.
3+
::
4+
:: This file is part of Http Filtering Engine.
5+
::
6+
:: Http Filtering Engine is free software: you can redistribute it and/or
7+
:: modify it under the terms of the GNU General Public License as published
8+
:: by the Free Software Foundation, either version 3 of the License, or (at
9+
:: your option) any later version.
10+
::
11+
:: In addition, as a special exception, the copyright holders give
12+
:: permission to link the code of portions of this program with the OpenSSL
13+
:: library.
14+
::
15+
:: You must obey the GNU General Public License in all respects for all of
16+
:: the code used other than OpenSSL. If you modify file(s) with this
17+
:: exception, you may extend this exception to your version of the file(s),
18+
:: but you are not obligated to do so. If you do not wish to do so, delete
19+
:: this exception statement from your version. If you delete this exception
20+
:: statement from all source files in the program, then also delete it
21+
:: here.
22+
::
23+
:: Http Filtering Engine is distributed in the hope that it will be useful,
24+
:: but WITHOUT ANY WARRANTY; without even the implied warranty of
25+
:: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
26+
:: Public License for more details.
27+
::
28+
:: You should have received a copy of the GNU General Public License along
29+
:: with Http Filtering Engine. If not, see <http://www.gnu.org/licenses/>.
30+
::
31+
32+
:: Invoke the 64 bit Visual Studio command prompt environment, for 64
33+
:: bit build tool stuff to be setup. If you have installed VS 2015 to a
34+
:: non-standard place, or have an older version of VS, you will need to
35+
:: change this line.
36+
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
37+
38+
cd "%cd%\..\..\ide\msvc"
39+
40+
cov-build --dir cov-int msbuild libhttpfilteringengine.sln /t:Build /p:Configuration="Release x64";Platform=Win
41+
42+
:: Change back to the scripts directory.
43+
cd ..\..\scripts\win

scripts/win/build-openssl-noweak-nopatents-msvc-x64.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ if [%OPENSSL_VERSION%] == [] GOTO RequiresSetup
4747
:: bit build tool stuff to be setup. If you have installed VS 2015 to a
4848
:: non-standard place, or have an older version of VS, you will need to
4949
:: change this line.
50-
call "C:\Program Files (x64)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
50+
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
5151

5252
:: Change the current directory to the x64 OpenSSL release source directory.
5353
cd ..\..\deps\openssl\%OPENSSL_VERSION%\src-msvc-x64-release

0 commit comments

Comments
 (0)