c++ - linux系统调用getpeername C++

标签 c++ linux system-calls

在我的 C++ 应用程序中,我使用 getpeername 系统调用,它在 var sa 中返回 0.0.0.0。 errno没有错误,返回码为0。

代码如下:

int GetSock(int sock)
{
    struct sockaddr_storage ss;
    socklen_t salen = sizeof(ss);
    struct sockaddr *sa;
    struct addrinfo hints, *paddr, *paddrp;

    sa = (struct sockaddr *)&ss;

    if (getpeername(sock, sa, &salen) != 0) {
        error = errno;
        return -1;
    }
}

注意:我在 Eclipse 中使用 GCC 编译这段代码。 有帮助吗?

谢谢!

最佳答案

        error = errno;
        return -1;
    }
    /* Did you mean to return something right here? */
}

关于c++ - linux系统调用getpeername C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4452269/

相关文章:

c++ - 显式调用时,析构函数被调用两次

c++ - 如何查找不带 "111"的 0 和 1 序列的数量

c++ - 如何解决在 opencv 中显示空图像的问题?

c++ - 如何使用 wininet 强制执行 tls 1.x

c - 如何解码gcc编译的c源代码

unix - Go 中 Syscall.RawSyscall() 和 Syscall.Syscall() 的详细信息?

unix 系统调用监视器

c - 使用 Unix 域套接字进行电话通话的 IPC 机制

ruby - 使用 select 进行 GPIO 监控

unix - 非阻塞系统调用和模式切换