// 测试指定udp端口是否可以绑定,WIN32下记得要先初始化WSAStartup
bool udpBindTest(uint16_t port)
{
SOCKET sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_IP);
if (sockfd == INVALID_SOCKET)
return false;
struct sockaddr_in sockAddr;
sockAddr.sin_family = AF_INET;
sockAddr.sin_port = htons(port);
sockAddr.sin_addr.s_addr = INADDR_ANY;
if (bind(sockfd, (const sockaddr*)&sockAddr, sizeof(sockAddr)) == SOCKET_ERROR)
{
#ifdef _WIN32
printf("bind test error: %d\n", WSAGetLastError());
#else
printf("bind test error: %d\n", errno);
#endif
closesocket(sockfd);
return false;
}
else
{
closesocket(sockfd);
return true;
}
}
测试指定udp端口是否可以绑定
最新推荐文章于 2022-09-22 22:35:23 发布