snew.c
来自「这是一个开放源代码的与WINNT/WIN2K/WIN2003兼容的操作系统」· C语言 代码 · 共 82 行
C
82 行
#include "syshdrs.h"
int
SNewStreamClient(void)
{
int sfd;
sfd = socket(AF_INET, SOCK_STREAM, 0);
if (sfd < 0)
return kSNewFailed;
return (sfd);
} /* SNewStreamClient */
int
SNewDatagramClient(void)
{
int sfd;
sfd = socket(AF_INET, SOCK_DGRAM, 0);
if (sfd < 0)
return kSNewFailed;
return (sfd);
} /* SNewDatagramClient */
int
SNewStreamServer(const int port, const int nTries, const int reuseFlag, int listenQueueSize)
{
int oerrno;
int sfd;
sfd = socket(AF_INET, SOCK_STREAM, 0);
if (sfd < 0)
return kSNewFailed;
if (SBind(sfd, port, nTries, reuseFlag) < 0) {
oerrno = errno;
(void) closesocket(sfd);
errno = oerrno;
return kSBindFailed;
}
if (SListen(sfd, listenQueueSize) < 0) {
oerrno = errno;
(void) closesocket(sfd);
errno = oerrno;
return kSListenFailed;
}
return (sfd);
} /* SNewStreamServer */
int
SNewDatagramServer(const int port, const int nTries, const int reuseFlag)
{
int oerrno;
int sfd;
sfd = socket(AF_INET, SOCK_DGRAM, 0);
if (sfd < 0)
return kSNewFailed;
if (SBind(sfd, port, nTries, reuseFlag) < 0) {
oerrno = errno;
(void) closesocket(sfd);
errno = oerrno;
return kSBindFailed;
}
return (sfd);
} /* SNewDatagramServer */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?