关闭

(1)套接口地址结构和数据类型

383人阅读 评论(0) 收藏 举报
<sys/types.h>
int8_t;    带符号的8位整数;
uint8_t;   无符号的8位整数;
int16_t;
uint16_t;
int32_t;
uint32_t;
sa_family_t    套接口地址结构的地址族;
socklen_t      套接口地址结构的地址族一般为uint16_t;

<nettinet/in.h>
in_addr_t      ipv4地址。一般为uint32_t;
in_port_t      TCP或UDP端口。一般为uint_16;

网际IPV4套接口地址结构sockaddr_in命名。
在<netinet/in.h>中
struct in_addr
{
in_addr_t     s_addr;          //32bit address ipv4
};
struct sockaddr_in
{
uint8_t       sin_len;          //length of structure
sa_family_t   sin_family;        //AF_INET   (ipv4地址族)
in_port_t     sin_port;          //16_bit TCP or UDP port number
struct inaddr sin_addr;     
char          sin_zero[8];       //unused
}; 

网际IPV6套接口地址结构in6_addr命名
在<netinet/in.h>中
struct in6_addr
{
uint8_t       s6_addr[16];       //128bit  address ipv6;
};
#define sockaddr_in6
{
uint8_t       sin6_len;           //length of this struct
sa_family_t   sin6_family;        //AF_INET6  (ipv6地址族)
in_port_t     sin6_port;          //transport layer port
uint32_t      sin6_flowinfo;      //priority flow label
struct in6_addr  sin6_addr;       //IPv6 address
};

定义在<sys/socket.h>中的一个通用套接口地址结构
struct sockaddr
{
uint8_t     sa_len;
sa_family   sa_family;    //address family;AF_XXXX value
char        sa_data[14];  //address
 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:4766次
    • 积分:101
    • 等级:
    • 排名:千里之外
    • 原创:7篇
    • 转载:0篇
    • 译文:0篇
    • 评论:1条
    文章分类
    文章存档
    最新评论