.TH "KDK_NET_GET_HOSTS_DOMAIN" 3 "Thu Sep 14 2023" "Linux Programmer's Manual" \" .SH NAME kdk_net_get_hosts_domain - 获取hosts配置的域名映射 .SH SYNOPSIS .nf .B #include .sp .BI "extern char* kdk_net_get_hosts_domain();" .sp Link with \fI\-lkynetinfo\fP. .SH "Detailed Description" The main function of the interface is to obtain the domain name mapping configured by hosts. .SH "RETURN VALUE" On success, returns the domain name mapping configured by hosts of type char *; The returned string needs to be released by .I free .PP On error, return .BR NULL. .SH EXAMPLES .EX #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 %s\n", tmp->name, tmp->addr); tmp = tmp->next; } kdk_net_free_route(list); if (argc < 2) printf("please input test port num\n"); else printf("port:%s's state %d\n", 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\tpolice: %s\n",tmpchain->total,tmpchain->policy); pChainData tmpData = tmpchain->data; if(tmpData) printf("target: %s\tprot: %s\topt: %s\tsource: %s\tdestination: %s\toption: %s\n",tmpData->target,tmpData->prot,tmpData->opt, tmpData->source,tmpData->destination,tmpData->option); printf("\n"); 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\t", result[count]); } } else printf("Failed With %d", net); printf("\n"); char mask[32] = "\0"; kdk_net_get_netmask("enaftgm1i0", mask); printf("mask = %s\n", mask); char **port = kdk_net_get_proc_port(); size_t index = 0; while(port[index]) { printf("No.%ld, port = %s\n", index+1, port[index]); index++; } kdk_net_freeall(port); port = kdk_net_get_up_port(); index = 0; while(port[index]) { printf("No.%ld, port = %s\n", index+1, port[index]); index++; } kdk_net_freeall(port); char *hosts = kdk_net_get_hosts(); if (hosts != NULL) { printf("hosts = %s\n", hosts); free(hosts); } char *domain = kdk_net_get_hosts_domain(); if (domain != NULL) { printf("domain = %s\n", domain); free(domain); } char **resolv = kdk_net_get_resolv_conf(); index = 0; while(resolv[index]) { printf("No.%ld, resolv = %s\n", index+1, resolv[index]); index++; } kdk_net_freeall(resolv); return 0; } .SH "CONFORMING TO" These functions are as per the withdrawn POSIX.1e draft specification. The following functions are Linux extensions: .BR kdk_net_get_multiple_port_stat (), .BR kdk_net_get_port_stat (), .BR kdk_net_get_route (), .BR kdk_net_get_iptable_rules (), .BR kdk_net_free_route (), .BR kdk_net_free_chain (), .BR kdk_net_get_netmask (), .BR kdk_net_get_proc_port (), .BR kdk_net_get_up_port (), .BR kdk_net_get_hosts (), .BR kdk_net_get_resolv_conf () and .BR kdk_net_freeall (). .SH "SEE ALSO" .BR kdk_net_get_multiple_port_stat (3), .BR kdk_net_get_port_stat (3), .BR kdk_net_get_route (3), .BR kdk_net_get_iptable_rules (3), .BR kdk_net_free_route (3), .BR kdk_net_free_chain (3), .BR kdk_net_get_netmask (), .BR kdk_net_get_proc_port (3), .BR kdk_net_get_up_port (3), .BR kdk_net_get_hosts (3), .BR kdk_net_get_resolv_conf (3) and .BR kdk_net_freeall (3).