User manual - デバイス制御ライブラリリファレンスマニュアル(2014年10月10日)

308
17.2.16 net_recvfrom
送信元情報を取得して、データを受信します。
int net_recvfrom (
int
socket
,
char *
buf
,
int
buflen
,
int
flags
,
struct sockaddr *
from
,
int *
fromlen
)
パラメータ
socket
ソケット番号を指定します。
buf
受信データ格納領域を指定します。
buflen
最大受信長を指定します。
flags
UDP ソケットの場合は、0 を指定してください。
TCP ソケットの場合は、下記オプションを指定します。
MSG_OOB
TCP 緊急データのみを受信します。
from
UDPソケットの場合、sockaddr_in構造体のポインタを sockaddr*型にキャストして指定してください。
送信元の IP アドレス情報が返ります。
送信元情報が不要な場合は 0 を指定します。
sockaddr_in構造体については、net_bind関数を参
照してください。
TCP ソケットの場合は、0 を指定してください。
fromlen
UDP ソケットの場合、
from
のサイズを格納した変数のポインタを指定します。
TCP ソケットの場合は、0 を指定してください。
戻り値
下記の値を返します。
正の値 :受信したデータ長
0
:相手からの正常切断
-1
:エラー (詳細は net_getsockerr関数で取得してください。)
説明
引数で指定した相手に対して、データを受信します。
本関数は、ソケット種別により処理が異なります。詳細は各引数の内容を確認してください。