当前位置: 首页>>代码示例>>C++>>正文


C++ Endpoint::GetSockAddr方法代码示例

本文整理汇总了C++中Endpoint::GetSockAddr方法的典型用法代码示例。如果您正苦于以下问题:C++ Endpoint::GetSockAddr方法的具体用法?C++ Endpoint::GetSockAddr怎么用?C++ Endpoint::GetSockAddr使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Endpoint的用法示例。


在下文中一共展示了Endpoint::GetSockAddr方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: IOProcessorConnect

// asynchronous connect
bool IOProcessorConnect(FD& fd, Endpoint& endpoint)
{
	sockaddr_in	localAddr;
	IODesc*		iod;

	memset(&localAddr, 0, sizeof(sockaddr_in));
	localAddr.sin_family = AF_INET;
	localAddr.sin_addr.S_un.S_addr = INADDR_ANY;

	// the socket must be bound so that ConnectEx works
	if (bind(fd.sock, (sockaddr*) &localAddr,  sizeof(sockaddr_in)) == SOCKET_ERROR)
	{
		// WSAINVAL means it is already bound
		if (WSAGetLastError() != WSAEINVAL)
			return false;
	}

	iod = GetIODesc(fd);
	memset(&iod->ovlWrite, 0, sizeof(OVERLAPPED));
	if (!ConnectEx(fd.sock, (sockaddr*) endpoint.GetSockAddr(), ENDPOINT_SOCKADDR_SIZE, NULL, 0, NULL, &iod->ovlWrite))
	{
		if (WSAGetLastError() != WSA_IO_PENDING)
			return false;
	}

	return true;
}
开发者ID:agazso,项目名称:keyspace,代码行数:28,代码来源:IOProcessor_Windows.cpp

示例2: GetEndpoint

bool Socket::GetEndpoint(Endpoint &endpoint)
{
    int ret;
    struct sockaddr* sa = (struct sockaddr*) endpoint.GetSockAddr();
    socklen_t len = ENDPOINT_SOCKADDR_SIZE;
    
    ret = getpeername(fd, sa, &len);
    
    if (ret < 0)
    {
        Log_Errno();
        Close();
        return false;
    }
    
    return true;
}
开发者ID:rokiCode,项目名称:scaliendb,代码行数:17,代码来源:Socket_Posix.cpp

示例3: Connect

bool Socket::Connect(Endpoint &endpoint)
{
    int ret;
    struct sockaddr* sa = (struct sockaddr*) endpoint.GetSockAddr();
    
    ret = connect(fd, sa, ENDPOINT_SOCKADDR_SIZE);
    
    if (ret < 0)
    {
        if (errno != EINPROGRESS)
        {
            Log_Errno();
            return false;
        }
    }

    return true;
}
开发者ID:rokiCode,项目名称:scaliendb,代码行数:18,代码来源:Socket_Posix.cpp


注:本文中的Endpoint::GetSockAddr方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。