Blame SOURCES/0009-Fix-all-debug-mode-warnings.patch

74da1b
From aba564ecc621345fcfea2fe883cbfd8d02e54026 Mon Sep 17 00:00:00 2001
74da1b
From: Jozsef Kadlecsik <kadlec@netfilter.org>
74da1b
Date: Sun, 20 Nov 2022 22:43:59 +0100
74da1b
Subject: [PATCH] Fix all debug mode warnings
74da1b
74da1b
(cherry picked from commit e39e3466d2d38cdfe83447f391b550e607bc3ce8)
74da1b
74da1b
Conflicts:
74da1b
	lib/parse.c
74da1b
- Fixed code does not exist due to missing commit 79184e760edfb
74da1b
  ("Add missing hunk to patch "Allow specifying protocols by number"")
74da1b
---
74da1b
 include/libipset/list_sort.h |  4 ++--
74da1b
 lib/ipset.c                  | 32 +++++++++++++++++++-------------
74da1b
 2 files changed, 21 insertions(+), 15 deletions(-)
74da1b
74da1b
diff --git a/include/libipset/list_sort.h b/include/libipset/list_sort.h
74da1b
index 70bb02d3d1b68..d9d7b36b8380f 100644
74da1b
--- a/include/libipset/list_sort.h
74da1b
+++ b/include/libipset/list_sort.h
74da1b
@@ -61,7 +61,7 @@ static inline void list_del(struct list_head *entry)
74da1b
 	// entry->prev = (void *) 0;
74da1b
 }
74da1b
 
74da1b
-static inline void __list_splice(const struct list_head *list,
74da1b
+static inline void __list_splice(struct list_head *list,
74da1b
 				 struct list_head *prev,
74da1b
 				 struct list_head *next)
74da1b
 {
74da1b
@@ -75,7 +75,7 @@ static inline void __list_splice(const struct list_head *list,
74da1b
 	next->prev = last;
74da1b
 }
74da1b
 
74da1b
-static inline void list_splice(const struct list_head *list,
74da1b
+static inline void list_splice(struct list_head *list,
74da1b
 			       struct list_head *head)
74da1b
 {
74da1b
 	if (!list_empty(list))
74da1b
diff --git a/lib/ipset.c b/lib/ipset.c
74da1b
index 50f86aee045bc..f57b07413cba5 100644
74da1b
--- a/lib/ipset.c
74da1b
+++ b/lib/ipset.c
74da1b
@@ -30,6 +30,7 @@
74da1b
 #include <libipset/ipset.h>			/* prototypes */
74da1b
 #include <libipset/ip_set_compiler.h>		/* compiler attributes */
74da1b
 #include <libipset/list_sort.h>			/* lists */
74da1b
+#include <libipset/xlate.h>			/* ipset_xlate_argv */
74da1b
 
74da1b
 static char program_name[] = PACKAGE;
74da1b
 static char program_version[] = PACKAGE_VERSION;
74da1b
@@ -936,10 +937,10 @@ static const char *cmd_prefix[] = {
74da1b
 	[IPSET_TEST]   = "test   SETNAME",
74da1b
 };
74da1b
 
74da1b
-static const struct ipset_xlate_set *
74da1b
+static struct ipset_xlate_set *
74da1b
 ipset_xlate_set_get(struct ipset *ipset, const char *name)
74da1b
 {
74da1b
-	const struct ipset_xlate_set *set;
74da1b
+	struct ipset_xlate_set *set;
74da1b
 
74da1b
 	list_for_each_entry(set, &ipset->xlate_sets, list) {
74da1b
 		if (!strcmp(set->name, name))
74da1b
@@ -958,7 +959,7 @@ ipset_parser(struct ipset *ipset, int oargc, char *oargv[])
74da1b
 	char *arg0 = NULL, *arg1 = NULL;
74da1b
 	const struct ipset_envopts *opt;
74da1b
 	const struct ipset_commands *command;
74da1b
-	const struct ipset_type *type;
74da1b
+	const struct ipset_type *type = NULL;
74da1b
 	struct ipset_session *session = ipset->session;
74da1b
 	void *p = ipset_session_printf_private(session);
74da1b
 	int argc = oargc;
74da1b
@@ -1127,6 +1128,7 @@ ipset_parser(struct ipset *ipset, int oargc, char *oargv[])
74da1b
 			if (arg0) {
74da1b
 				const struct ipset_arg *arg;
74da1b
 				int k;
74da1b
+				enum ipset_adt c;
74da1b
 
74da1b
 				/* Type-specific help, without kernel checking */
74da1b
 				type = type_find(arg0);
74da1b
@@ -1136,11 +1138,11 @@ ipset_parser(struct ipset *ipset, int oargc, char *oargv[])
74da1b
 						"Unknown settype: `%s'", arg0);
74da1b
 				printf("\n%s type specific options:\n\n", type->name);
74da1b
 				for (i = 0; cmd_help_order[i] != IPSET_CADT_MAX; i++) {
74da1b
-					cmd = cmd_help_order[i];
74da1b
+					c = cmd_help_order[i];
74da1b
 					printf("%s %s %s\n",
74da1b
-						cmd_prefix[cmd], type->name, type->cmd[cmd].help);
74da1b
-					for (k = 0; type->cmd[cmd].args[k] != IPSET_ARG_NONE; k++) {
74da1b
-						arg = ipset_keyword(type->cmd[cmd].args[k]);
74da1b
+						cmd_prefix[c], type->name, type->cmd[c].help);
74da1b
+					for (k = 0; type->cmd[c].args[k] != IPSET_ARG_NONE; k++) {
74da1b
+						arg = ipset_keyword(type->cmd[c].args[k]);
74da1b
 						if (!arg->help || arg->help[0] == '\0')
74da1b
 							continue;
74da1b
 						printf("               %s\n", arg->help);
74da1b
@@ -1548,7 +1550,7 @@ ipset_fini(struct ipset *ipset)
74da1b
 }
74da1b
 
74da1b
 /* Ignore the set family, use inet. */
74da1b
-static const char *ipset_xlate_family(uint8_t family)
74da1b
+static const char *ipset_xlate_family(uint8_t family UNUSED)
74da1b
 {
74da1b
 	return "inet";
74da1b
 }
74da1b
@@ -1705,6 +1707,10 @@ ipset_xlate_type_to_nftables(int family, enum ipset_xlate_set_type type,
74da1b
 		else if (family == AF_INET6)
74da1b
 			return "ipv6_addr";
74da1b
 		break;
74da1b
+	case IPSET_XLATE_TYPE_UNKNOWN:
74da1b
+		break;
74da1b
+	default:
74da1b
+		break;
74da1b
 	}
74da1b
 	/* This should not ever happen. */
74da1b
 	return "unknown";
74da1b
@@ -1729,7 +1735,6 @@ static int ipset_xlate(struct ipset *ipset, enum ipset_cmd cmd,
74da1b
 	char buf[64];
74da1b
 	bool concat;
74da1b
 	char *term;
74da1b
-	int i;
74da1b
 
74da1b
 	session = ipset_session(ipset);
74da1b
 	data = ipset_session_data(session);
74da1b
@@ -1843,7 +1848,7 @@ static int ipset_xlate(struct ipset *ipset, enum ipset_cmd cmd,
74da1b
 		return -1;
74da1b
 	case IPSET_CMD_LIST:
74da1b
 		if (!set) {
74da1b
-			printf("list sets %s\n",
74da1b
+			printf("list sets %s %s\n",
74da1b
 			       ipset_xlate_family(family), table);
74da1b
 		} else {
74da1b
 			printf("list set %s %s %s\n",
74da1b
@@ -1902,6 +1907,8 @@ static int ipset_xlate(struct ipset *ipset, enum ipset_cmd cmd,
74da1b
 		}
74da1b
 		if (ipset_data_test(data, IPSET_OPT_ETHER)) {
74da1b
 			ipset_print_ether(buf, sizeof(buf), data, IPSET_OPT_ETHER, 0);
74da1b
+			size_t i;
74da1b
+
74da1b
 			for (i = 0; i < strlen(buf); i++)
74da1b
 				buf[i] = tolower(buf[i]);
74da1b
 
74da1b
@@ -1964,7 +1971,6 @@ static int ipset_xlate_restore(struct ipset *ipset)
74da1b
 	struct ipset_session *session = ipset_session(ipset);
74da1b
 	struct ipset_data *data = ipset_session_data(session);
74da1b
 	void *p = ipset_session_printf_private(session);
74da1b
-	const char *filename;
74da1b
 	enum ipset_cmd cmd;
74da1b
 	FILE *f = stdin;
74da1b
 	int ret = 0;
74da1b
@@ -1973,7 +1979,7 @@ static int ipset_xlate_restore(struct ipset *ipset)
74da1b
 	if (ipset->filename) {
74da1b
 		f = fopen(ipset->filename, "r");
74da1b
 		if (!f) {
74da1b
-			fprintf(stderr, "cannot open file `%s'\n", filename);
74da1b
+			fprintf(stderr, "cannot open file `%s'\n", ipset->filename);
74da1b
 			return -1;
74da1b
 		}
74da1b
 	}
74da1b
@@ -2007,7 +2013,7 @@ static int ipset_xlate_restore(struct ipset *ipset)
74da1b
 		ipset_data_reset(data);
74da1b
 	}
74da1b
 
74da1b
-	if (filename)
74da1b
+	if (ipset->filename)
74da1b
 		fclose(f);
74da1b
 
74da1b
 	return ret;
74da1b
-- 
74da1b
2.38.0
74da1b