亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? socklib.c

?? vxwork源代碼
?? C
?? 第 1 頁 / 共 4 頁
字號(hào):
* sender's socket is copied to it.  The value-result parameter <pFromLen>* should be initialized to the size of the <from> buffer.  On return,* <pFromLen> contains the actual size of the address stored in <from>.** The maximum length of <buf> is subject to the limits on UDP buffer* size; see the discussion of SO_RCVBUF in the setsockopt() manual* entry.** You may OR the following values into the <flags> parameter with this* operation:** .IP "MSG_OOB (0x1)" 26* Out-of-band data.** .IP "MSG_PEEK (0x2)"* Return data without removing it from socket.* .LP** RETURNS* The number of number of bytes received, or ERROR if the call fails.** SEE ALSO* setsockopt()*/int recvfrom    (    FAST int             s,         /* socket to receive from */    FAST char            *buf,      /* pointer to data buffer */    FAST int             bufLen,    /* length of buffer */    FAST int             flags,     /* flags to underlying protocols */    FAST struct sockaddr *from,     /* where to copy sender's addr */    FAST int             *pFromLen  /* value/result length of <from> */    )    {    SOCK_FUNC *	pSockFunc = NULL;    if (buf == NULL || from == NULL || pFromLen == NULL || iosFdValue (s) ==  ERROR)        {        netErrnoSet (EINVAL);        return (ERROR);        }    pSockFunc = pSockFdMap[s];    if ((pSockFunc == NULL) || (pSockFunc->recvfromRtn == NULL))	{        netErrnoSet (ENOTSUP);	return (ERROR);	}    return ((pSockFunc->recvfromRtn) (s, buf, bufLen, flags,	from, pFromLen));    }/********************************************************************************* recv - receive data from a socket** This routine receives data from a connection-based (stream) socket.** The maximum length of <buf> is subject to the limits on TCP buffer* size; see the discussion of SO_RCVBUF in the setsockopt() manual* entry.** You may OR the following values into the <flags> parameter with this* operation:** .IP "MSG_OOB (0x1)" 26* Out-of-band data.** .IP "MSG_PEEK (0x2)"* Return data without removing it from socket.* .LP** RETURNS* The number of bytes received, or ERROR if the call fails.** SEE ALSO* setsockopt()*/int recv    (    FAST int    s,      /* socket to receive data from */    FAST char   *buf,   /* buffer to write data to */    FAST int    bufLen, /* length of buffer */    FAST int    flags   /* flags to underlying protocols */    )    {    SOCK_FUNC *	pSockFunc = NULL;    if (buf == NULL || iosFdValue (s) ==  ERROR)        {        netErrnoSet (EINVAL);        return (ERROR);        }    pSockFunc = pSockFdMap[s];    if ((pSockFunc == NULL) || (pSockFunc->recvRtn == NULL))	{        netErrnoSet (ENOTSUP);	return (ERROR);	}    return ((pSockFunc->recvRtn) (s, buf, bufLen, flags));    }/********************************************************************************* recvmsg - receive a message from a socket** This routine receives a message from a datagram socket.  It may be used in* place of recvfrom() to decrease the overhead of breaking down the* message-header structure `msghdr' for each message.** For BSD 4.4 sockets a copy of the <mp>->msg_iov array will be made.  This* requires a cluster from the network stack system pool of size * <mp>->msg_iovlen * sizeof (struct iovec) or 8 bytes. ** RETURNS* The number of bytes received, or ERROR if the call fails.*/int recvmsg    (    int                 sd,     /* socket to receive from */    struct msghdr       *mp,    /* scatter-gather message header */    int                 flags   /* flags to underlying protocols */    )    {    SOCK_FUNC *	pSockFunc = NULL;    if (mp == NULL || iosFdValue (sd) ==  ERROR)         {        netErrnoSet (EINVAL);        return (ERROR);        }    pSockFunc = pSockFdMap[sd];    if ((pSockFunc == NULL) || (pSockFunc->recvmsgRtn == NULL))	{        netErrnoSet (ENOTSUP);	return (ERROR);	}    return ((pSockFunc->recvmsgRtn) (sd, mp, flags));    }/********************************************************************************* setsockopt - set socket options** This routine sets the options associated with a socket.* To manipulate options at the "socket" level, <level> should be SOL_SOCKET.* Any other levels should use the appropriate protocol number.** OPTIONS FOR STREAM SOCKETS* The following sections discuss the socket options available for* stream (TCP) sockets.** .SS "SO_KEEPALIVE -- Detecting a Dead Connection"* Specify the SO_KEEPALIVE option to make the transport protocol (TCP)* initiate a timer to detect a dead connection:* .CS*     setsockopt (sock, SOL_SOCKET, SO_KEEPALIVE, &optval, sizeof (optval));* .CE* This prevents an application from  hanging on an invalid connection.* The value at <optval> for this option is an integer (type `int'),* either 1 (on) or 0 (off).** The integrity of a connection is verified by transmitting* zero-length TCP segments triggered by a timer, to force a response* from a peer node.  If the peer does not respond after repeated* transmissions of the KEEPALIVE segments, the connection is dropped,* all protocol data structures are reclaimed, and processes sleeping* on the connection are awakened with an ETIMEDOUT error.** The ETIMEDOUT timeout can happen in two ways.  If the connection is* not yet established, the KEEPALIVE timer expires after idling* for TCPTV_KEEP_INIT.  If the connection is established, the* KEEPALIVE timer starts up when there is no traffic for* TCPTV_KEEP_IDLE.  If no response is received from the peer after* sending the KEEPALIVE segment TCPTV_KEEPCNT times with interval* TCPTV_KEEPINTVL, TCP assumes that the connection is invalid.* The TCPTV_KEEP_INIT, TCPTV_KEEP_IDLE, TCPTV_KEEPCNT, and TCPTV_KEEPINTVL * parameters are defined in the file target/h/netinet/tcp_timer.h.** .SS "SO_LINGER -- Closing a Connection"* Specify the SO_LINGER option to determine whether TCP should perform a* "graceful" close:* .CS*     setsockopt (sock, SOL_SOCKET, SO_LINGER, &optval, sizeof (optval));* .CE* To achieve a "graceful" close in response to the shutdown of a connection,* TCP puts itself through an elaborate set of state transitions.  The goal is * to assure that all the unacknowledged data in the transmission channel are * acknowledged, and that the peer is shut down properly.** The value at <optval> indicates the amount of time to linger if* there is unacknowledged data, using `struct linger' in* target/h/sys/socket.h.  The `linger' structure has two members:* `l_onoff' and `l_linger'.  `l_onoff' can be set to 1 to turn on the* SO_LINGER option, or set to 0 to turn off the SO_LINGER option.* `l_linger' indicates the amount of time to linger.  If `l_onoff' is* turned on and `l_linger' is set to 0, a default value TCP_LINGERTIME* (specified in netinet/tcp_timer.h) is used for incoming* connections accepted on the socket.** When SO_LINGER is turned on and the `l_linger' field is set to 0,* TCP simply drops the connection by sending out an RST (if a* connection is already established).  This frees up the space for the TCP* protocol control block, and wakes up all tasks sleeping on the* socket.** For the client side socket, the value of `l_linger' is not changed* if it is set to 0.  To make sure that the value of `l_linger' is 0* on a newly accepted socket connection, issue another setsockopt()* after the accept() call.** Currently the exact value of `l_linger' time is actually ignored* (other than checking for 0); that is, TCP performs the state* transitions if `l_linger' is not 0, but does not explicitly use its* value.** .SS "TCP_NODELAY -- Delivering Messages Immediately"* Specify the TCP_NODELAY option for real-time protocols, such as the X* Window System Protocol, that require immediate delivery of many small* messages:* .CS* setsockopt (sock, IPPROTO_TCP, TCP_NODELAY, &optval, sizeof (optval));* .CE* The value at <optval> is an integer (type `int') set to either 1* (on) or 0 (off).** By default, the VxWorks TCP implementation employs an algorithm that* attempts to avoid the congestion that can be produced by a large number* of small TCP segments. This typically arises with virtual terminal* applications (such as telnet or rlogin) across networks that have* low bandwidth and long delays.  The algorithm attempts to have no* more than one outstanding unacknowledged segment in the transmission* channel while queueing up the rest of the smaller segments for later* transmission.  Another segment is sent only if enough new data is* available to make up a maximum sized segment, or if the outstanding* data is acknowledged.** This congestion-avoidance algorithm works well for virtual terminal* protocols and bulk data transfer protocols such as FTP without any* noticeable side effects.  However, real-time protocols that require* immediate delivery of many small messages, such as the X Window* System Protocol, need to defeat this facility to guarantee proper* responsiveness in their operation.** TCP_NODELAY is a mechanism to turn off the use of this algorithm.* If this option is turned on and there is data to be sent out, TCP* bypasses the congestion-avoidance algorithm: any available data* segments are sent out if there is enough space in the send window.** .SS "TCP_MAXSEG -- Changing TCP MSS for the connection"* Specify the TCP_MAXSEG option to decrease the maximum allowable size of an* outgoing TCP segment. This option cannot be used to increase the MSS.* .CS* setsockopt (sock, IPPROTO_TCP, TCP_MAXSEG, &optval, sizeof (optval));* .CE* The value at <optval> is an integer set to the desired MSS (eg. 1024).** When a TCP socket is created, the MSS is initialized to the default MSS* value which is determined by the configuration parameter `TCP_MSS_DFLT' (512* by default). When a connection request is received from the other end with* an MSS option, the MSS is modified depending on the value of the received* MSS and on the results of Path MTU Discovery (which is enabled by default). * The MSS may be set as high as the outgoing interface MTU (1460 for an * Ethernet). Therefore, after a call to `socket' but before a connection is * established, an application can only decrease the MSS from its default of 512. * After a connection is established, the application can decrease the MSS from * whatever value was selected.** .SS "SO_DEBUG -- Debugging the  underlying protocol"* Specify the SO_DEBUG option to let the underlying protocol module record* debug information.* .CS*     setsockopt (sock, SOL_SOCKET, SO_DEBUG, &optval, sizeof (optval));* .CE* The value at <optval> for this option is an integer (type `int'),* either 1 (on) or 0 (off).** OPTION FOR DATAGRAM SOCKETS* The following section discusses an option for datagram (UDP) sockets.** .SS "SO_BROADCAST -- Sending to Multiple Destinations"* Specify the SO_BROADCAST option when an application needs to send* data to more than one destination:* .CS*     setsockopt (sock, SOL_SOCKET, SO_BROADCAST, &optval, sizeof (optval));* .CE* The value at <optval> is an integer (type <int>), either 1 (on) or 0* (off).** OPTIONS FOR DATAGRAM AND RAW SOCKETS* The following section discusses options for multicasting on UDP and RAW* sockets.** .SS "IP_ADD_MEMBERSHIP -- Join a Multicast Group"* Specify the IP_ADD_MEMBERSHIP option when a process needs to join* multicast group:* .CS*     setsockopt (sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char *)&ipMreq,*                 sizeof (ipMreq));* .CE* The value of <ipMreq> is an 'ip_mreq' structure. * `ipMreq.imr_multiaddr.s_addr' is the internet multicast address* `ipMreq.imr_interface.s_addr' is the internet unicast address of the * interface through which the multicast packet needs to pass.** .SS "IP_DROP_MEMBERSHIP -- Leave a Multicast Group"* Specify the IP_DROP_MEMBERSHIP option when a process needs to leave* a previously joined multicast group:* .CS*     setsockopt (sock, IPPROTO_IP, IP_DROP_MEMBERSHIP, (char *)&ipMreq,*                 sizeof (ipMreq));* .CE* The value of <ipMreq> is an 'ip_mreq' structure.  * `ipMreq.imr_multiaddr.s_addr' is the internet multicast address.* `ipMreq.imr_interface.s_addr' is the internet unicast address of the * interface to which the multicast address was bound.** .SS "IP_MULTICAST_IF -- Select a Default Interface for Outgoing Multicasts"* Specify the IP_MULTICAST_IF option when an application needs to specify* an outgoing network interface through which all multicast packets* are sent:* .CS*     setsockopt (sock, IPPROTO_IP, IP_MULTICAST_IF, (char *)&ifAddr,*                 sizeof (mCastAddr));* .CE* The value of <ifAddr> is an 'in_addr' structure.  * `ifAddr.s_addr' is the internet network interface address.** .SS "IP_MULTICAST_TTL -- Select a Default TTL"* Specify the IP_MULTICAST_TTL option when an application needs to select* a default TTL (time to live) for outgoing multicast* packets:** .CS*     setsockopt (sock, IPPROTO_IP, IP_MULTICAST_TTL, &optval, sizeof(optval));* .CE* The value at <optval> is an integer (type <int>), time to live value.** .TS* tab(|);* lf3 lf3 lf3* l l l.* optval(TTL)  |  Application                   | Scope* _* 0            |                                | same interface* 1            |                                | same subnet* 31           | local event video              | * 32           |                                | same site* 63           | local event audio              | * 64           |                                | same region* 95           | IETF channel 2 video           | * 127          | IETF channel 1 video           | * 128          |                                | same continent* 159          | IETF channel 2 audio           | * 191          | IETF channel 1 audio           | * 223          | IETF channel 2 low-rate audio  | * 255          | IETF channel 1 low-rate audio  |*              | unrestricted in scope          |* .TE** .SS "IP_MULTICAST_LOOP -- Enable or Disable Loopback"* Enable or disable loopback of outgoing multicasts.* .CS*     setsockopt (sock, IPPROTO_IP, IP_MULTICAST_LOOP, &optval, sizeof(optval));* .CE* The value at <optval> is an integer (type <int>), either 1(on) or 0* (off).** OPTIONS FOR DATAGRAM, STREAM AND RAW SOCKETS

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产cao| 国产麻豆精品在线观看| 国产视频亚洲色图| 91福利资源站| 国产99一区视频免费| 午夜视频一区在线观看| 中文字幕亚洲电影| 国产亚洲精品中文字幕| 欧美系列日韩一区| a4yy欧美一区二区三区| 九色综合狠狠综合久久| 五月婷婷久久综合| 亚洲精品国产精华液| 国产精品乱人伦中文| 久久久久久久久岛国免费| 欧美一区二区三区小说| 欧美三区在线视频| 色呦呦国产精品| 国产成人免费视频网站高清观看视频 | 久久成人精品无人区| 亚洲欧美日韩电影| 国产精品国产三级国产| 久久免费视频色| 日韩欧美www| 91精品国产一区二区三区蜜臀| 在线观看三级视频欧美| 91麻豆精品秘密| 色哟哟日韩精品| 日本精品免费观看高清观看| 99国产精品视频免费观看| jizz一区二区| 91麻豆精品在线观看| 色天天综合久久久久综合片| 色综合天天综合网天天狠天天| 成人app软件下载大全免费| 懂色av中文字幕一区二区三区| 精品综合久久久久久8888| 另类欧美日韩国产在线| 日韩国产精品大片| 蜜臂av日日欢夜夜爽一区| 麻豆专区一区二区三区四区五区| 日产欧产美韩系列久久99| 免费人成精品欧美精品 | 精品在线免费视频| 久久99精品一区二区三区三区| 久久99久久久久久久久久久| 久久er99精品| 国产精品亚洲成人| 成人v精品蜜桃久久一区| 波多野结衣中文字幕一区二区三区| 成人国产电影网| 日韩欧美一级二级三级久久久| 在线播放/欧美激情| 欧美一区二区视频在线观看| 精品日韩欧美在线| 国产精品色婷婷| 一区二区在线观看不卡| 天天亚洲美女在线视频| 美女www一区二区| 成人妖精视频yjsp地址| 色综合久久久久综合体桃花网| 欧美日韩另类一区| 久久丝袜美腿综合| 亚洲欧美日韩一区二区三区在线观看| 亚洲国产cao| 狠狠色2019综合网| 东方aⅴ免费观看久久av| 国产xxx精品视频大全| 色天天综合色天天久久| 欧美一区二区精品久久911| wwww国产精品欧美| 中文字幕字幕中文在线中不卡视频| 亚洲福利视频导航| 国产一区二区三区不卡在线观看| caoporn国产精品| 欧美猛男男办公室激情| 久久久精品综合| 亚洲高清在线精品| 国产伦精品一区二区三区视频青涩 | 欧美日韩在线电影| 久久久综合视频| 亚洲在线免费播放| 国产伦精一区二区三区| 欧美日韩成人激情| 欧美国产欧美亚州国产日韩mv天天看完整| 亚洲最大色网站| 国产经典欧美精品| 91精品国产综合久久精品麻豆 | 成人午夜大片免费观看| 欧美日本在线观看| 韩国中文字幕2020精品| 成人av在线网站| 欧美日韩日日夜夜| 中文字幕日韩一区二区| 精品一区二区在线视频| 欧美性猛片xxxx免费看久爱| 欧美国产一区二区| 日韩av电影免费观看高清完整版在线观看| 色中色一区二区| 欧美国产日韩精品免费观看| 奇米在线7777在线精品| 欧美在线免费播放| 亚洲视频免费在线观看| 国产在线视频一区二区| 欧美精品 国产精品| 亚洲精选一二三| 国产sm精品调教视频网站| 日韩视频在线永久播放| 亚洲午夜电影网| 色狠狠av一区二区三区| 自拍偷拍亚洲激情| 高清成人在线观看| www久久精品| 热久久久久久久| 欧美视频日韩视频| 亚洲精品成人天堂一二三| 国产成人精品午夜视频免费 | 欧美一区二区三区思思人| 一区二区在线观看视频在线观看| 成人av一区二区三区| 国产无一区二区| 黄色日韩网站视频| 日韩欧美123| 美国十次综合导航| 日韩欧美一级片| 久久不见久久见免费视频7| 欧美精品一二三| 亚洲国产成人91porn| 欧美视频在线播放| 婷婷国产在线综合| 欧美绝品在线观看成人午夜影视| 午夜精品福利在线| 欧美二区乱c少妇| 人人狠狠综合久久亚洲| 日韩一二三区视频| 精品一区二区三区免费观看| 欧美不卡一区二区| 激情成人综合网| 国产日韩av一区| 成人爱爱电影网址| 伊人开心综合网| 欧美日本韩国一区二区三区视频| 天堂精品中文字幕在线| 欧美日韩精品三区| 日韩制服丝袜先锋影音| 91精品国产综合久久久久久漫画| 日本免费在线视频不卡一不卡二 | 欧美久久一二区| 久久精品99国产国产精| 欧美变态tickling挠脚心| 国产一区福利在线| 国产精品家庭影院| 欧美日韩色一区| 久久99久久久久久久久久久| 久久精品综合网| 99久久婷婷国产综合精品电影| 一区二区三区四区不卡视频 | 欧美视频在线观看一区| 免费看欧美女人艹b| 国产亚洲综合在线| 91免费精品国自产拍在线不卡| 亚洲动漫第一页| 欧美电影免费观看高清完整版| 国产一区二区视频在线播放| 中文在线免费一区三区高中清不卡| 91同城在线观看| 日韩国产精品久久久| 久久精品一区二区三区不卡| 91在线你懂得| 久久er精品视频| 亚洲日本va午夜在线影院| 91精品免费观看| 成人国产精品免费观看视频| 天天影视涩香欲综合网| 久久精品夜色噜噜亚洲a∨| 在线观看视频一区二区| 黑人巨大精品欧美黑白配亚洲| 亚洲欧洲日韩av| 日韩一区二区三免费高清| 本田岬高潮一区二区三区| 日韩精品亚洲一区| 国产精品丝袜一区| 日韩一区二区三区免费观看| 91麻豆精品秘密| 经典三级视频一区| 夜夜亚洲天天久久| 国产午夜亚洲精品不卡| 欧美日本韩国一区| 99国产精品国产精品久久| 另类小说综合欧美亚洲| 亚洲精品免费在线观看| 26uuu久久天堂性欧美| 欧美午夜在线一二页| 成人激情视频网站| 麻豆91免费观看| 婷婷中文字幕综合| 亚洲毛片av在线| 久久久久国产精品免费免费搜索 | 国产精品少妇自拍| 欧美va在线播放|