- man 2 socket
int socket(int domain,int type,int protocol)
ソケットを作って、そのソケットのディスクリプタを返す。
domain
プロトコルファミリの指定
PF_INET IPv4
PF_INET6 IPv6
などがある。とりあえず今のところは、PF_INETしか使わないと思う。
type
通信方法の指定
SOCK_STREAM
SOCK_DGRAM
などがある。色々とあるが、とりあえずこの2つしか使わないと思う。
protocol
そのソケットが利用するプロトコルを指定する。
戻り値は、ソケットのディスクリプタ、エラーの場合には-1
- man 2 connect
int connect(int sockfd,const struct sockaddr *serv_addr,socklen_t addr_len)
ディスクリプタsockfdが参照するソケットを*serv_addrのアドレスに接続する。
sockfd
接続するソケットのディスクリプタ
*serv_addr
接続先のIPアドレス、ポート番号等を指定する。
addr
serv_addrのサイズを指定する。
socketlen_tとなっているが実際にはint。
戻り値
成功時は、0。失敗したときは、-1
- man 2 send
ssize_t send(int s,const void *buf,size_t len,int flags)
ソケットにメッセージを送る。
s
ソケットのディスクリプタ
*buf
送信したいメッセージのポインタ
len
送信したいメッセージのサイズ
flags
send()が呼び出されたときのプログラムの振舞を決める。
man を読んでも良く理解できない。0でデフォルトになる。
戻り値
成功時は、送信したメッセージのサイズ。失敗したときは、-1
- man 3 recv
ssize_t recv(int s,void *buf,size_t len,int flags)
s
ソケットのディスクリプタ
*buf
受信したメッセージを入れるバッファ
len
バッファのサイズ
flags
recv()が呼び出されたときのプログラムの振舞を決める。
man を読んでも良く理解できない。0でデフォルトになる。
戻り値
成功時は、受信したメッセージのサイズ。失敗したときは-1
0 件のコメント:
コメントを投稿