Index: iptables-save.c =================================================================== --- iptables-save.c (révision 7568) +++ iptables-save.c (copie de travail) @@ -35,6 +35,7 @@ static int for_each_table(int (*func)(const char *tablename)) { int ret = 1; + unsigned int count = 0; FILE *procfile = NULL; char tablename[IPT_TABLE_MAXNAMELEN+1]; @@ -51,8 +52,13 @@ tablename); tablename[strlen(tablename) - 1] = '\0'; ret &= func(tablename); + count += 1; } + if (!count) + exit_error(OTHER_PROBLEM, + "/proc/net/ip_tables_names is empty\n", + tablename); return ret; } Index: ip6tables-save.c =================================================================== --- ip6tables-save.c (révision 7568) +++ ip6tables-save.c (copie de travail) @@ -37,6 +37,7 @@ static int for_each_table(int (*func)(const char *tablename)) { int ret = 1; + unsigned int count = 0; FILE *procfile = NULL; char tablename[IP6T_TABLE_MAXNAMELEN+1]; @@ -53,8 +54,13 @@ tablename); tablename[strlen(tablename) - 1] = '\0'; ret &= func(tablename); + count += 1; } + if (!count) + exit_error(OTHER_PROBLEM, + "/proc/net/ip6_tables_names is empty\n", + tablename); return ret; }