kdk_net_get_proc_port(3)

kdk_net_get_proc_port3

获取进程对应端口

Usage

#include <libkynetinfo.h>

extern char **kdk_net_get_proc_port();

Link with -lkynetinfo.

Detailed Description

The main function of the interface is to obtain the port corresponding to the process.

Return value

On success, returns the port corresponding to the process of type char **, ending with a NULL character; Generated by alloc and needs to be recycled by kdk_net_freeall

On error, return NULL.

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;
}

Conforming to

These functions are as per the withdrawn POSIX.1e draft specification. The following functions are Linux extensions: kdk_net_get_multiple_port_stat(), kdk_net_get_port_stat(), kdk_net_get_route(), kdk_net_get_iptable_rules(), kdk_net_free_route(), kdk_net_free_chain(), kdk_net_get_netmask(), kdk_net_get_up_port(), kdk_net_get_hosts(), kdk_net_get_hosts_domain(), kdk_net_get_resolv_conf() and kdk_net_freeall().

From libkysdk-system 3.0.1.4-1 in Arch Linux 2026-11-07. Parsed by carta from the page's man source.