1. 程式人生 > >套接字選項之getsockopt和setsockopt

套接字選項之getsockopt和setsockopt

這兩個函式僅用於套接字。

#include<sys/socket.h>

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

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

均返回:若成功則為0,若出錯則為1.

其中,sockfd必須指向一個開啟的套接字描述符,level(級別)指定系統中解釋選項的程式碼或為通用套接字程式碼,或為某個特定於協議(IPv4,IPv6,TCP,SCTP)的程式碼。

optval 是一個指向某個變數的指標,setsockopt從*optval中取得選項待設定的新值,getsockopt則把已獲取的選項當前值存放到*optval中。*optval的大小由最後一個引數指定,它對於setsockopt是一個值,對於getsockopt是一種值-結果引數。