kdk_net_get_netmask3
释放由kdk_net_get_iptable_rules返回的防火墙信息结构体
Usage
#include <libkynetinfo.h> extern void kdk_net_get_netmask(IN const char *nc, OUT char *mask); Link with -lkynetinfo.
Detailed Description
The main function of the interface is to obtain subnet mask information.
The argument nc is the name of the NIC, such as "eno1".
The argument mask is the subnet mask information.
Return value
No return value
Examples
#include "libkynetinfo.h"
#include "stdio.h"
#include "stdlib.h"
int main(int argc, char *argv[])
{
prouteMapList list = kdk_net_get_route(), tmp = list;
while (tmp)
{
printf("%s default route %s0, tmp->name, tmp->addr);
tmp = tmp->next;
}
kdk_net_free_route(list);
if (argc < 2)
printf("please input test port num0);
else
printf("port:%s's state %d0, argv[1], kdk_net_get_port_stat(atoi(argv[1])));
pChain chain = kdk_net_get_iptable_rules();
pChain tmpchain = chain;
while(tmpchain)
{
printf("Chain: %s police: %s0,tmpchain->total,tmpchain->policy);
pChainData tmpData = tmpchain->data;
if(tmpData)
printf("target: %s prot: %s opt: %s source: %s destination: %s option: %s0,tmpData->target,tmpData->prot,tmpData->opt,
tmpData->source,tmpData->destination,tmpData->option);
printf("0);
tmpchain = tmpchain->next;
}
kdk_net_free_chain(chain);
int result[65536];
int net = kdk_net_get_multiple_port_stat(0, 1000, result);
if(net == 0)
{
size_t count = 0;
for(;count < 1000 ;count++)
{
printf("%d ", result[count]);
}
}
else
printf("Failed With %d", net);
printf("0);
char mask[32] = " ";
kdk_net_get_netmask("enaftgm1i0", mask);
printf("mask = %s0, mask);
char **port = kdk_net_get_proc_port();
size_t index = 0;
while(port[index])
{
printf("No.%ld, port = %s0, index+1, port[index]);
index++;
}
kdk_net_freeall(port);
port = kdk_net_get_up_port();
index = 0;
while(port[index])
{
printf("No.%ld, port = %s0, index+1, port[index]);
index++;
}
kdk_net_freeall(port);
char *hosts = kdk_net_get_hosts();
if (hosts != NULL)
{
printf("hosts = %s0, hosts);
free(hosts);
}
char *domain = kdk_net_get_hosts_domain();
if (domain != NULL)
{
printf("domain = %s0, domain);
free(domain);
}
char **resolv = kdk_net_get_resolv_conf();
index = 0;
while(resolv[index])
{
printf("No.%ld, resolv = %s0, index+1, resolv[index]);
index++;
}
kdk_net_freeall(resolv);
return 0;
}