1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 #include "xshared.h" 5 6 #include "xtables-multi.h" 7 8 static const struct subcommand multi_subcommands[] = { 9 {"iptables-xml", iptables_xml_main}, 10 {"xml", iptables_xml_main}, 11 {"iptables", xtables_ip4_main}, 12 {"iptables-compat", xtables_ip4_main}, 13 {"main4", xtables_ip4_main}, 14 {"save4", xtables_ip4_save_main}, 15 {"restore4", xtables_ip4_restore_main}, 16 {"iptables-save", xtables_ip4_save_main}, 17 {"iptables-restore", xtables_ip4_restore_main}, 18 {"iptables-compat-save", xtables_ip4_save_main}, 19 {"iptables-compat-restore", xtables_ip4_restore_main}, 20 {"ip6tables", xtables_ip6_main}, 21 {"ip6tables-compat", xtables_ip6_main}, 22 {"main6", xtables_ip6_main}, 23 {"save6", xtables_ip6_save_main}, 24 {"restore6", xtables_ip6_restore_main}, 25 {"ip6tables-save", xtables_ip6_save_main}, 26 {"ip6tables-restore", xtables_ip6_restore_main}, 27 {"ip6tables-compat-save", xtables_ip6_save_main}, 28 {"ip6tables-compat-restore", xtables_ip6_restore_main}, 29 {"iptables-translate", xtables_ip4_xlate_main}, 30 {"ip6tables-translate", xtables_ip6_xlate_main}, 31 {"iptables-restore-translate", xtables_ip4_xlate_restore_main}, 32 {"ip6tables-restore-translate", xtables_ip6_xlate_restore_main}, 33 {"arptables", xtables_arp_main}, 34 {"arptables-compat", xtables_arp_main}, 35 {"ebtables-compat", xtables_eb_main}, 36 {NULL}, 37 }; 38 39 int main(int argc, char **argv) 40 { 41 return subcmd_main(argc, argv, multi_subcommands); 42 } 43