]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/commitdiff
squid-asnbl: Update to 0.2.5
authorPeter Müller <peter.mueller@ipfire.org>
Mon, 14 Aug 2023 23:14:00 +0000 (23:14 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 15 Aug 2023 09:27:19 +0000 (09:27 +0000)
This upstream release incorporates the patch added for resolving #13023.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
lfs/squid-asnbl
src/patches/squid/squid-asnbl-0.2.4_initialise_global_variables_to_make_compatible_with_python_3.patch [deleted file]

index b003d605b291da57e50540474d569c7b2a9a008a..32c109e15e3ace468ad77fd23f20363b53bada72 100644 (file)
@@ -25,7 +25,7 @@
 
 include Config
 
-VER        = 0.2.4
+VER        = 0.2.5
 
 THISAPP    = squid-asnbl-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -45,7 +45,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_BLAKE2 = 98bdf0ecff1fc4d4ac0e0eb43d37682acf76900df783bf31b172134ebe31a857594e0a98ee06347da40d97b86a6ac0ce9a63ea7a80a1d73948e338f72d1c3af2
+$(DL_FILE)_BLAKE2 = 7206b9fe6c4a0509c9ce0301a5d3553274d005daae2050f23e26056d356c328719821d58d94ed2eac7942a6cafb0ca8de2cb619ce28a0f514b6eef413350e249
 
 install : $(TARGET)
 
@@ -75,7 +75,6 @@ $(subst %,%_BLAKE2,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zvxf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/squid/squid-asnbl-0.2.4_initialise_global_variables_to_make_compatible_with_python_3.patch
 
        # Install ASNBL helper script
        cd $(DIR_APP) && install -o root -g root -m 0755 asnbl-helper.py /usr/bin/asnbl-helper.py
diff --git a/src/patches/squid/squid-asnbl-0.2.4_initialise_global_variables_to_make_compatible_with_python_3.patch b/src/patches/squid/squid-asnbl-0.2.4_initialise_global_variables_to_make_compatible_with_python_3.patch
deleted file mode 100644 (file)
index e540d4e..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
---- squid-asnbl-0.2.4/asnbl-helper_orig.py
-+++ squid-asnbl-0.2.4/asnbl-helper.py
-@@ -172,17 +172,19 @@
-     return parsedasns
--def resolve_asn(ipaddr: str, asndb):
--    """ Function call: resolve_asn(IP address to be resolved,
--                                   ASN database instance object)
--    This function looks up the Autonomous System for the given IP address. It expects
--    an IPFire location database object to be passed as a second parameter, hence relying
--    on another function to set that up. """
-+def resolve_asn(ipaddr: str):
-+    """ Function call: resolve_asn(IP address to be resolved)
-+    This function looks up the Autonomous System for the given IP address. """
-+
-+    # Fix for #13023
-+    # Initialize the result variable before it's first use, otherwise python3
-+    # will sometimes detect a 'mismatch' using global and local variables
-+    lookup_result = None
-     # libloc cannot handle ipaddress objects here, so casting into a string is necessary
-     # for good measure, to avoid exceptions here...
-     try:
--        result = asndb.lookup(str(ipaddr))
-+        lookup_result = ASNDB.lookup(str(ipaddr))
-     except BlockingIOError:
-         # XXX: Prevent likely libloc bug from causing this helper to crash
-         # (see upstream bug https://bugzilla.ipfire.org/show_bug.cgi?id=13023)
-@@ -190,21 +192,25 @@
-     # In case nothing was returned above, satisfy result expectation to this function...
-     try:
--        if not result.asn:
-+        if not lookup_result.asn:
-             return 0
-     except AttributeError:
-         return 0
--    return result.asn
--
--
--def asndb_response_tests(testdata: str, asndb):
--    """ Function call: asndb_response_tests(response rest data,
--                                            ASN database instance object)
-+    return lookup_result.asn
-+
-+
-+def asndb_response_tests(testdata: str):
-+    """ Function call: asndb_response_tests(response rest data)
-     This function asserts the given ASN database to return expected ASNs for
-     given IP addresses in order to be considered operational. It returns
-     True if this test succeeds, and False otherwise. """
-+
-+    # Fix for #13023
-+    # Initialize the result variable before it's first use, otherwise python3
-+    # will sometimes detect a 'mismatch' using global and local variables
-+    lookup_result_test = None
-     tresult = True
-@@ -216,13 +222,13 @@
-     for stestdata in ptdata:
-         LOGIT.debug("Running response test for '%s' against ASNDB '%s' ...",
--                    stestdata, asndb)
--
--        returndata = resolve_asn(stestdata[0], asndb)
--
--        if returndata != int(stestdata[1]):
-+                    stestdata, ASNDB)
-+
-+        lookup_result_test = resolve_asn(stestdata[0])
-+
-+        if lookup_result_test != int(stestdata[1]):
-             LOGIT.error("Response test failed for ASNDB '%s' (tuple: %s), aborting",
--                        asndb, stestdata)
-+                        ASNDB, stestdata)
-             tresult = False
-             break
-@@ -428,7 +434,7 @@
- ASNDB = set_up_location_database(config["GENERAL"]["ASNDB_PATH"])
- LOGIT.debug("Running ASN database response tests...")
--if asndb_response_tests(config["GENERAL"]["TESTDATA"], ASNDB):
-+if asndb_response_tests(config["GENERAL"]["TESTDATA"]):
-     LOGIT.debug("ASN database operational - excellent. Waiting for input...")
- else:
-     LOGIT.error("ASN database response tests failed, aborting")
-@@ -490,7 +496,7 @@
-     ASNS = []
-     for singleip in IPS:
-         # Enumerate ASN for this IP address...
--        resolvedasn = resolve_asn(singleip, ASNDB)
-+        resolvedasn = resolve_asn(singleip)
-         # In case protection against destinations without public AS announcements for their
-         # IP addresses is desired, the query will be denied in case ASN = 0 appears in an