套接字属性设置

一、基本概念

        1.设置套接字的选项对套接字进行控制

        2.除了设置选项外,还可以获取选项

        3.选项的概念相当于属性,所以套接字选项也可说是套接字属性

        4.有些选项(属性)只可获取,不可设置;

        5.有些选项既可设置也可获取

选项级别

        SOL_SOCKET            该级别的选项只作用于套接字本身

        SOL_LRLMP            该级别的选项作用于IrDA协议

        IPPROTO_IP            该级别的选项作用于IPv4协议

        IPPROTO_IPV6          该级别的选项作用于IPv6协议

        IPPROTO_RM          该级别的选项作用于可靠的多播传输

        IPPROTO_TCP          该级别的选项适用于流式套接字

        IPPROTO_UDP          该级别的选项适用于数据报套接字

 

 二、getsockopt获取套接字选项

#include /* See NOTES */

#include

int getsockopt(int sockfd, int level, int optname, void *optval, socklen_t*optlen);

sockfd:套接字描述符

level:表示选项的级别

optname:表示要获取的选项名称

optval:指向存放接收到的选项内容的缓冲区

optlen:指向optval所指缓冲区的大小

函数返回值:

       执行成功返回0,否则返回‒1,errno来获取错误码

三、setsockopt设置套接字选项

#include /* See NOTES */

#include

int setsockopt(int sockfd, int level, int optname, const void *optval, socklen_t optlen);

sockfd:套接字描述符

level:表示选项的级别

optname:表示要设置的选项名称

optval:指向存放接收到的选项内容的缓冲区

optlen:指向optval所指缓冲区的大小

函数返回值:

       执行成功返回0,否则返回‒1,errno来获取错误码

你可能感兴趣的:(服务器,linux,网络)