Exemplo de uso da libiptc
Publicado por Andre Luiz da Silva 04/03/2006
[ Hits: 6.060 ]
Homepage: http://localhost
Exemplo basico de uso da libiptc
/*
* print_all_rules.c - 11/03/2005
* A very simple libiptc functions test - by AndRack <andrack@gmail.com>
* Compile: $gcc -o print_all_rules print_all_rules.c -liptc
*/
#include <stdio.h>
#include <stdlib.h>
#include <iptables.h>
#include <libiptc/libiptc.h>
#define OUTPUT "/dev/stdout"
/*#define OUTPUT "/tmp/fw_rules" */
int main(void)
{
iptc_handle_t table;
const struct ipt_entry *rule;
char *tables[] = {"filter", "mangle", "nat"};
char *chain;
FILE *fp;
int n_table;
fp = fopen (OUTPUT, "w");
for (n_table = 0; n_table <= 2; ++n_table)
{
table = iptc_init (tables[n_table]);
fprintf (fp, "Table [ %s ] \n", tables[n_table]);
chain = (char *) iptc_first_chain (&table);
do {
fprintf (fp, "%s \n", chain);
rule = iptc_first_rule (chain, &table);
while (rule) {
fprintf (fp, "Counter Packets: %llu \n", rule->counters.pcnt);
fprintf (fp, "Counter Bytes: %llu \n", rule->counters.bcnt);
fprintf (fp, "INTFACE: %s \n", (strlen (rule->ip.iniface))? rule->ip.iniface: "any");
fprintf (fp, "OUTFACE: %s \n", (strlen (rule->ip.outiface))? rule->ip.outiface: "any");
rule = iptc_next_rule (rule, &table);
}
chain = (char *) iptc_next_chain (&table);
} while (chain);
}
fclose (fp);
return 0;
}
Rotação à esquerda árvore Binária
Método de Newton Modificado p/ Raízes Multiplas
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Instalando COSMIC no Linux Mint
Turbinando o Linux Mint: o poder das Nemo Actions
Inteligência Artificial no desenvolvimento de software: quando começar a usar?
[Resolvido] Algo deu errado ao abrir seu perfil
Usando o VNSTAT para medir o seu consumo de internet
Habilitando clipboard manager no ambiente COSMIC
Quando vocês pararam de testar distros? (6)
A fórmula da coca-cola foi decompilada e agora é opensource! (4)









