Advertisement

Linux address information function: implementing local and remote socket addresses

阅读量:

1、在特定场景下,若需获取与当前socket连接相关的本地地址信息及远程socket的地址信息,可借助以下两个函数实现。

查询本地socket地址的途径:

复制代码
    #include <sys/socket.h>
    
    int getsockname(int sockfd, struct sockaddr *addr, socklen_t *addrlen);
    
    

获取远程socket地址信息:

复制代码
    #include <sys/socket.h>
    
    int getpeername(int sockfd, struct sockaddr *addr, socklen_t *addrlen);
    

2、sockaddr 与sockaddr_in结构体的差异

复制代码
    struct sockaddr {
    sa_family_t sa_family;
    char        sa_data[14];
    }
    
复制代码
    struct sockaddr_in
    
    {
    
    short sin_family;/*Addressfamily一般来说AF_INET(地址族)PF_INET(协议族)*/

全部评论 (0)

还没有任何评论哟~