Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
8d546b1
Fix vuln crash-7d18f37e1f05e0ff4aa4dfa2f67dd738340ad9cf
oss-patch Dec 24, 2024
ad01cda
Replace variable length arrays with std::vector (#1662)
ol-imorozko Dec 24, 2024
8b20f90
Removed VLA usage as it is not part of the C++ standard. (#1661)
Dimi1010 Dec 25, 2024
ab75534
Added exception when an unknown direction is supplied. (#1666)
Dimi1010 Dec 25, 2024
8e82194
Auto OUI Database Update (#1672)
seladb Jan 1, 2025
c507977
Fix pre-commit configuration for gersemi (#1670)
egecetin Jan 1, 2025
6887479
Auto precommit update (#1673)
seladb Jan 1, 2025
4a38f9a
Bump the pip-dependencies group across 1 directory with 2 updates (#1…
dependabot[bot] Jan 2, 2025
7898a5d
fixes a use-of-uninitialized-value in light_pcapng.c (#1669)
Shivam7-1 Jan 3, 2025
e347d4d
Move the heap overflow check before the allocation
oss-patch Jan 4, 2025
e0ca321
Fixed lifetime issue of startup mutex and condition variable in PfRin…
Dimi1010 Jan 8, 2025
91d2058
Reformat Pcap++ documentation to use triple-slash doxygen format. (#1…
Dimi1010 Jan 8, 2025
6dd7c51
Changed `IPNetwork` copy assignment implementation to copy-and-swap. …
Dimi1010 Jan 9, 2025
6c67fb2
Terminating immediately when overflow is found
oss-patch Jan 9, 2025
6c5d27f
Fix typo err
oss-patch Jan 9, 2025
78b629f
Bump clang-format to 19.1.6 (#1677)
egecetin Jan 10, 2025
680cfd7
Temp fix for XDP - run CI on Ubuntu 22.04 instead of `ubuntu-latest` …
seladb Jan 11, 2025
bc5c08d
Fix vuln OSV-2024-343 (#1680)
oss-patch Jan 11, 2025
d60c699
Clang-tidy fixes for Common++ (#1639)
egecetin Jan 12, 2025
bcdb1a2
Merge branch 'dev' into patch-crash-7d18f37e1f05e0ff4aa4dfa2f67dd7383…
cla7aye15I4nd Jan 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions .clang-tidy-new
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
Checks: 'cert-*,
clang-analyzer-*,
concurrency-*,
cppcoreguidelines-*,
misc-*,
modernize-*,
performance-*,
portability-*,
readability-*,
-cert-env33-c,
-cert-err58-cpp,
-clang-analyzer-optin.cplusplus.VirtualCall,
-cppcoreguidelines-avoid-c-arrays,
-cppcoreguidelines-avoid-do-while,
-cppcoreguidelines-avoid-magic-numbers,
-cppcoreguidelines-avoid-non-const-global-variables,
-cppcoreguidelines-macro-usage,
-cppcoreguidelines-owning-memory,
-cppcoreguidelines-pro-bounds-array-to-pointer-decay,
-cppcoreguidelines-pro-bounds-constant-array-index,
-cppcoreguidelines-pro-bounds-pointer-arithmetic,
-cppcoreguidelines-pro-type-reinterpret-cast,
-cppcoreguidelines-pro-type-const-cast,
-cppcoreguidelines-pro-type-vararg,
-cppcoreguidelines-special-member-functions,
-modernize-avoid-c-arrays,
-modernize-use-trailing-return-type,
-misc-header-include-cycle,
-misc-include-cleaner,
-misc-no-recursion,
-misc-non-private-member-variables-in-classes,
-misc-use-anonymous-namespace,
-readability-function-cognitive-complexity,
-readability-magic-numbers'
4 changes: 2 additions & 2 deletions .github/workflows/build_and_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
apk update && apk add cppcheck python3-dev
python3 -m venv .venv
. .venv/bin/activate
python3 -m pip install pre-commit setuptools clang-format==18.1.6 clang-tidy==18.1.8
python3 -m pip install pre-commit setuptools clang-format==19.1.6 clang-tidy==18.1.8

- name: Run pre-commit
run: |
Expand Down Expand Up @@ -701,7 +701,7 @@ jobs:
./gradlew assembleDebug

xdp:
runs-on: ubuntu-latest
runs-on: ubuntu-22.04

steps:
- name: Checkout code
Expand Down
7 changes: 4 additions & 3 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
exclude: '.*\.(pcap|pcapng|dat|txt)'
exclude: '.*\.(pcap|pcapng|dat)|(PacketExamples|PcapExamples|expected_output|pcap_examples).*\.txt'
fail_fast: false
repos:
- repo: local
Expand All @@ -22,7 +22,7 @@ repos:
args: ['--fix=lf']
- id: trailing-whitespace
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.8.1
rev: v0.8.4
hooks:
- id: ruff # Run the linter.
types_or: [ python ]
Expand All @@ -41,13 +41,14 @@ repos:
rev: 0.17.1
hooks:
- id: gersemi
args: ["-c"]
- repo: https://github.com/codespell-project/codespell
rev: v2.3.0
hooks:
- id: codespell
pass_filenames: false
- repo: https://github.com/crate-ci/typos
rev: v1.28.1
rev: codespell-dict-v0.5.0
hooks:
- id: typos
args: ['--config=typos-config.toml']
Expand Down
3 changes: 2 additions & 1 deletion 3rdParty/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,6 @@ if(PCAPPP_INSTALL)
EXPORT PcapPlusPlusTargets
ARCHIVE DESTINATION ${PCAPPP_INSTALL_LIBDIR}
LIBRARY DESTINATION ${PCAPPP_INSTALL_LIBDIR}
PUBLIC_HEADER DESTINATION ${PCAPPP_INSTALL_INCLUDEDIR})
PUBLIC_HEADER DESTINATION ${PCAPPP_INSTALL_INCLUDEDIR}
)
endif()
6 changes: 2 additions & 4 deletions 3rdParty/EndianPortable/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
add_library(EndianPortable INTERFACE)

target_include_directories(EndianPortable
INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/include)
target_include_directories(EndianPortable INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/include)

target_sources(EndianPortable
INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/include/EndianPortable.h)
target_sources(EndianPortable INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/include/EndianPortable.h)
6 changes: 2 additions & 4 deletions 3rdParty/Getopt-for-Visual-Studio/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
add_library(Getopt-for-Visual-Studio INTERFACE)

target_include_directories(Getopt-for-Visual-Studio
INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/)
target_include_directories(Getopt-for-Visual-Studio INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/)

target_sources(Getopt-for-Visual-Studio
INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/getopt.h)
target_sources(Getopt-for-Visual-Studio INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/getopt.h)
12 changes: 8 additions & 4 deletions 3rdParty/LightPcapNg/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/LightPcapNg/cmake/")
option(LIGHT_PCAPNG_ZSTD "Build with ZSTD compression support" OFF)

add_library(
light_pcapng OBJECT
light_pcapng
OBJECT
LightPcapNg/src/light_advanced.c
LightPcapNg/src/light_alloc.c
LightPcapNg/src/light_compression.c
Expand All @@ -20,16 +21,19 @@ add_library(
LightPcapNg/src/light_pcapng_ext.c
LightPcapNg/src/light_pcapng.c
LightPcapNg/src/light_platform.c
LightPcapNg/src/light_zstd_compression.c)
LightPcapNg/src/light_zstd_compression.c
)

target_compile_definitions(light_pcapng PUBLIC -DUNIVERSAL)

if(BUILD_SHARED_LIBS)
set_property(TARGET light_pcapng PROPERTY POSITION_INDEPENDENT_CODE ON)
endif()

target_include_directories(light_pcapng PUBLIC $<INSTALL_INTERFACE:include>
$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/LightPcapNg/include>)
target_include_directories(
light_pcapng
PUBLIC $<INSTALL_INTERFACE:include> $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/LightPcapNg/include>
)

if(LIGHT_PCAPNG_ZSTD)
find_package(ZSTD)
Expand Down
150 changes: 66 additions & 84 deletions 3rdParty/LightPcapNg/LightPcapNg/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,84 +1,66 @@
cmake_minimum_required (VERSION 2.6)
project (light_pcapng C)
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -I${CMAKE_CURRENT_SOURCE_DIR}/include/ -Wall -O2 -fPIC -DUNIVERSAL -g")

add_library (light_pcapng SHARED
src/light_io.c
src/light_pcapng.c
src/light_pcapng_cont.c
src/light_platform.c
src/light_manipulate.c
src/light_internal.c
src/light_alloc.c
src/light_advanced.c
src/light_option.c
src/light_pcapng_ext.c
)

add_library (light_pcapng_static STATIC
src/light_io.c
src/light_pcapng.c
src/light_pcapng_cont.c
src/light_platform.c
src/light_manipulate.c
src/light_internal.c
src/light_alloc.c
src/light_advanced.c
src/light_option.c
src/light_pcapng_ext.c
)

add_executable (test_read.test
src/tests/test_read.c
)
target_link_libraries(test_read.test light_pcapng_static)

add_executable (test_read_write.test
src/tests/test_read_write.c
)
target_link_libraries(test_read_write.test light_pcapng_static)

add_executable (test_mem.test
src/tests/test_mem.c
)
target_link_libraries(test_mem.test light_pcapng_static)

add_executable (test_histogram.test
src/tests/test_histogram.c
)
target_link_libraries(test_histogram.test light_pcapng_static)

add_executable (test_subcapture.test
src/tests/test_subcapture.c
)
target_link_libraries(test_subcapture.test light_pcapng_static)

add_executable (test_feature.test
src/tests/test_feature.c
)
target_link_libraries(test_feature.test light_pcapng_static)

add_executable (test_flow.test
src/tests/test_flow.c
)
target_link_libraries(test_flow.test light_pcapng_static)

add_executable (test_feature_advanced.test
src/tests/test_feature_advanced.c
)
target_link_libraries(test_feature_advanced.test light_pcapng_static dl)

add_executable (test_read_packets.test
src/tests/test_read_packets.c
)
target_link_libraries(test_read_packets.test light_pcapng_static)

add_executable (test_read_write_packets.test
src/tests/test_read_write_packets.c
)
target_link_libraries(test_read_write_packets.test light_pcapng_static)

add_executable (test_split.test
src/tests/test_split.c
)
target_link_libraries(test_split.test light_pcapng_static)
cmake_minimum_required(VERSION 2.6)
project(light_pcapng C)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -I${CMAKE_CURRENT_SOURCE_DIR}/include/ -Wall -O2 -fPIC -DUNIVERSAL -g")

add_library(
light_pcapng
SHARED
src/light_io.c
src/light_pcapng.c
src/light_pcapng_cont.c
src/light_platform.c
src/light_manipulate.c
src/light_internal.c
src/light_alloc.c
src/light_advanced.c
src/light_option.c
src/light_pcapng_ext.c
)

add_library(
light_pcapng_static
STATIC
src/light_io.c
src/light_pcapng.c
src/light_pcapng_cont.c
src/light_platform.c
src/light_manipulate.c
src/light_internal.c
src/light_alloc.c
src/light_advanced.c
src/light_option.c
src/light_pcapng_ext.c
)

add_executable(test_read.test src/tests/test_read.c)
target_link_libraries(test_read.test light_pcapng_static)

add_executable(test_read_write.test src/tests/test_read_write.c)
target_link_libraries(test_read_write.test light_pcapng_static)

add_executable(test_mem.test src/tests/test_mem.c)
target_link_libraries(test_mem.test light_pcapng_static)

add_executable(test_histogram.test src/tests/test_histogram.c)
target_link_libraries(test_histogram.test light_pcapng_static)

add_executable(test_subcapture.test src/tests/test_subcapture.c)
target_link_libraries(test_subcapture.test light_pcapng_static)

add_executable(test_feature.test src/tests/test_feature.c)
target_link_libraries(test_feature.test light_pcapng_static)

add_executable(test_flow.test src/tests/test_flow.c)
target_link_libraries(test_flow.test light_pcapng_static)

add_executable(test_feature_advanced.test src/tests/test_feature_advanced.c)
target_link_libraries(test_feature_advanced.test light_pcapng_static dl)

add_executable(test_read_packets.test src/tests/test_read_packets.c)
target_link_libraries(test_read_packets.test light_pcapng_static)

add_executable(test_read_write_packets.test src/tests/test_read_write_packets.c)
target_link_libraries(test_read_write_packets.test light_pcapng_static)

add_executable(test_split.test src/tests/test_split.c)
target_link_libraries(test_split.test light_pcapng_static)
2 changes: 1 addition & 1 deletion 3rdParty/LightPcapNg/LightPcapNg/LICENSE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
SOFTWARE.
Loading
Loading