From: Felix Fietkau Date: Mon, 26 Sep 2022 12:42:54 +0000 (+0200) Subject: map: fix deleting port based rules X-Git-Url: http://git.openwrt.org/feed/telephony.git%5Eac6415e61f147a6892fd2785337aec93ddc68fa9?a=commitdiff_plain;h=9c625ae96f2d204f7417d6c9b7092b9e4ac653a8;p=project%2Fqosify.git map: fix deleting port based rules ensure that they are properly replaced with default values Signed-off-by: Felix Fietkau --- diff --git a/map.c b/map.c index f88848e..4b38155 100644 --- a/map.c +++ b/map.c @@ -196,11 +196,14 @@ void qosify_map_set_dscp_default(enum qosify_map_id id, uint8_t val) else return; - if (!memcmp(&qosify_dscp_default[udp], &val, sizeof(val))) - return; + if (val != 0xff) { + if (qosify_dscp_default[udp] == val) + return; - qosify_dscp_default[udp] = val; - __qosify_map_set_dscp_default(id, val); + qosify_dscp_default[udp] = val; + } + + __qosify_map_set_dscp_default(id, qosify_dscp_default[udp]); } int qosify_map_init(void) @@ -648,6 +651,9 @@ void qosify_map_reload(void) __qosify_map_load_file(f->filename); qosify_map_gc(); + + qosify_map_set_dscp_default(CL_MAP_TCP_PORTS, 0xff); + qosify_map_set_dscp_default(CL_MAP_UDP_PORTS, 0xff); } static void qosify_map_free_entry(struct qosify_map_entry *e)