Commit Graph

252 Commits

Author SHA1 Message Date
Christian Deacon
2a1dbc6626 Remove unused variables inside of Makefile. 2025-02-22 12:22:21 -05:00
Christian Deacon
422d23e87b Fix build error with LIBBPF_LIBXDP_STATIC=1 due to missing LibBPF and LibXDP object files when linking and simplify build process further. 2025-02-22 12:15:57 -05:00
Christian Deacon
324405ac26 Update XDP Tools submodule. 2025-02-22 12:00:16 -05:00
Christian Deacon
fd765890e9 Rename loader.c to prog.c for organization. 2025-02-22 11:50:13 -05:00
Christian Deacon
e3b1f04c11 Organize cmdline util. 2025-02-22 11:41:48 -05:00
Christian Deacon
060aafbaf5 Add note in README. 2025-02-22 11:41:21 -05:00
Christian Deacon
117ec22632 Oops, remove LibXDP install in run workflow. 2025-02-22 10:59:07 -05:00
Christian Deacon
179cbeab6a Add support for linking LibBPF and LibXDP object files inside of Makefile if LIBBPF_LIBXDP_STATIC is 1. 2025-02-22 10:56:49 -05:00
Christian Deacon
73cf82303e We need to install LibXDP inside of the run workflow. 2025-02-22 10:46:20 -05:00
Christian Deacon
155e263368 Merge branch 'master' of github.com:gamemann/XDP-Firewall 2025-02-22 10:42:53 -05:00
Christian Deacon
0efcdb413a Update build workflow. 2025-02-22 10:42:03 -05:00
Christian Deacon
7bdf5d20e1 Merge pull request #56 from gamemann/20250222-restructure
Project Restructure (Source Code & Build Process)
2025-02-22 10:40:26 -05:00
Christian Deacon
7f59b678cf Update links in README. 2025-02-22 10:29:19 -05:00
Christian Deacon
09491e1462 Add typedefs and organize code. 2025-02-22 10:24:21 -05:00
Christian Deacon
1b9e805207 Organize more code. 2025-02-22 10:06:32 -05:00
Christian Deacon
c7a1822ce5 Rename some config constants. 2025-02-22 10:05:49 -05:00
Christian Deacon
50b0efa58a Add note about linked objects not working with __always_inline functions. 2025-02-22 10:02:35 -05:00
Christian Deacon
8a4ddf5184 We don't need to specifically link LibBPF and LibXDP object files. 2025-02-22 10:02:08 -05:00
Christian Deacon
8756892791 Restructure project and organize code. 2025-02-22 09:50:57 -05:00
Christian Deacon
e3d47fda6f Oops, fix error with USE_FLOW_RL commented. 2025-02-11 08:19:51 -05:00
Christian Deacon
376b39d307 No need to pass ip_stats to function. 2025-02-11 08:17:20 -05:00
Christian Deacon
82d3c50bf3 Add flow-based client stats by default for rate limits and organize/clean code. 2025-02-11 07:51:40 -05:00
Christian Deacon
91138f1116 Add IPv4 CIDR support and clean up code. 2024-08-13 02:55:01 -04:00
Christian Deacon
1ce17ddd77 Update README. 2024-07-15 21:51:41 -04:00
Christian Deacon
62c610f577 Decrease max filters from 80 to 60. 2024-07-15 21:44:13 -04:00
Christian Deacon
110e27d206 Improve documentation. 2024-07-05 18:08:32 -04:00
Christian Deacon
804e5a9670 Update README. 2024-07-05 02:11:31 -04:00
Christian Deacon
b0403b4e96 Improve documentation and README. 2024-07-05 00:50:49 -04:00
Christian Deacon
e22168bb0f Update README. 2024-07-04 23:55:53 -04:00
Christian Deacon
8a7619dbdf Update README. 2024-06-13 20:44:31 -04:00
Christian Deacon
a53e01d0fe Set interface option to NULL by default. 2024-06-13 20:36:23 -04:00
Christian Deacon
f480f06c4b Rename config settings for consistency. 2024-06-13 20:33:09 -04:00
Christian Deacon
a80458efff Uncomment DOSTATSONBLOCKMAP by default. 2024-06-13 20:24:40 -04:00
Christian Deacon
236c25cdfa Update example config. 2024-06-13 20:24:21 -04:00
Christian Deacon
525b9465cf Add std_update_time option. 2024-06-13 20:03:21 -04:00
Christian Deacon
bbacda45b3 Add pass counter for packets that don't match any rules and are passed to user-space. 2024-06-13 19:54:50 -04:00
Christian Deacon
648dbff479 Use unlikely() again. 2024-06-13 19:30:16 -04:00
Christian Deacon
1dad5509a4 Use unlikely with checking layer-4 headers. 2024-06-13 19:29:50 -04:00
Christian Deacon
e213b5c231 Rework PPS/BPS logic to improve performance. 2024-06-13 19:27:56 -04:00
Christian Deacon
1f66f7ab4e Add NANO_TO_SEC constant. 2024-06-13 19:23:54 -04:00
Christian Deacon
a180aa3dc9 Add demo GIF. 2024-04-22 22:11:04 -04:00
Christian Deacon
69f7456423 Align filters structure by 8 bytes to per-CPU map. 2023-12-12 23:38:57 +00:00
Christian Deacon
8930d8f7ed Add note regarding performance with for loop. 2023-11-28 04:55:29 +00:00
Christian Deacon
3640c6a840 Elf object is included in later LibBPF libraries. 2023-11-22 20:00:02 +00:00
Christian Deacon
512b4393ff Add comment to Makefile. 2023-11-22 19:55:23 +00:00
Christian Deacon
907408be7a Link new static LibBPF objects in our loader. 2023-11-22 19:53:43 +00:00
Christian Deacon
a5f72f7edc Update xdp-tools and libbpf. 2023-11-22 19:52:12 +00:00
Christian Deacon
810bc6b3c7 Only build LibXDP from xdp-tools. 2023-11-22 19:49:45 +00:00
Christian Deacon
b3530e3e68 Use per CPU array map for filter rules to increase performance. 2023-11-12 21:35:22 +00:00
Christian Deacon
03d38b55e1 Update README. 2023-10-12 00:06:06 +00:00