diff --git a/CHANGELOG.md b/CHANGELOG.md index 37b7b00..33e64fe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). --- +# [0.8.1] - 2024-06-23 + +### + +- Fixed issue in start_ebpf_router.py and start_ebpf_tunnel.py where if an ExternalInterface does not exist but is configured it causes zfw to disable ebpf on the system + for all interfaces preventing the FW from starting. Note this only could occur on initial start of ebpf and did not occur if the start scripts were run after ebpf was already + running on other interfaces. + # [0.8.0] - 2024-06-13 ### diff --git a/files/scripts/start_ebpf_router.py b/files/scripts/start_ebpf_router.py index 76f08e1..c8c87a2 100755 --- a/files/scripts/start_ebpf_router.py +++ b/files/scripts/start_ebpf_router.py @@ -349,7 +349,6 @@ def set_local_rules(resolver): if(not tc_status(e, "ingress")): test1 = os.system("/opt/openziti/bin/zfw -X " + e + " -O " + ingress_object_file + " -z ingress") if(test1): - os.system("/opt/openziti/bin/zfw -Q") print("Cant attach " + e + " to tc ingress with " + ingress_object_file) continue else: @@ -363,7 +362,6 @@ def set_local_rules(resolver): test1 = os.system("/opt/openziti/bin/zfw -X " + e + " -O " + egress_object_file + " -z egress") if(test1): print("Cant attach " + e + " to tc egress with " + egress_object_file) - os.system("/opt/openziti/bin/zfw -Q") continue else: print("Attached " + egress_object_file + " to " + e) diff --git a/files/scripts/start_ebpf_tunnel.py b/files/scripts/start_ebpf_tunnel.py index 11626fb..c252759 100755 --- a/files/scripts/start_ebpf_tunnel.py +++ b/files/scripts/start_ebpf_tunnel.py @@ -113,7 +113,6 @@ def tc_status(interface, direction): if(not tc_status(e, "ingress")): test1 = os.system("/opt/openziti/bin/zfw -X " + e + " -O " + ingress_object_file + " -z ingress") if(test1): - os.system("/opt/openziti/bin/zfw -Q") print("Cant attach " + e + " to tc ingress with " + ingress_object_file) continue else: @@ -127,8 +126,7 @@ def tc_status(interface, direction): if(outbound_passthrough_track[e]): test1 = os.system("/opt/openziti/bin/zfw -X " + e + " -O " + egress_object_file + " -z egress") if(test1): - print("Cant attach " + e + " to tc egress with " + egress_object_file) - os.system("/opt/openziti/bin/zfw -Q") + print("Cant attach " + e + " to tc egress with " + egress_object_file) continue else: print("Attached " + egress_object_file + " to " + e) diff --git a/src/zfw.c b/src/zfw.c index 57103f5..1419876 100644 --- a/src/zfw.c +++ b/src/zfw.c @@ -189,7 +189,7 @@ char *log_file_name; char *object_file; char *direction_string; -const char *argp_program_version = "0.8.0"; +const char *argp_program_version = "0.8.1"; struct ring_buffer *ring_buffer; __u32 if_list[MAX_IF_LIST_ENTRIES];