如何在用户空间中使用与其关联的套接字fd获取套接字结构?

时间:2014-05-16 04:45:16

标签: c

我有socket fd,我想得到这个fd绑定的套接字。
我的代码是

   create_socket(int nl_groups)
   {
    int s;
    struct sockaddr_nl nladdr;

    if((   s = socket    (AF_NETLINK,    SOCK_RAW,     NETLINK_GENERIC)) < 0)
    return s;

    memset (&nladdr, 0, sizeof nladdr);`enter code here`
    nladdr.nl_family = AF_NETLINK;
    nladdr.nl_pid = 0;
    nladdr.nl_groups = nl_groups;
    if (bind(s, (struct sockaddr*)&nladdr, sizeof(nladdr)) < 0) {
    close(s);
    return -1;
    }
    return s;
}

我在内核空间中看到我们可以使用struct socket * sockfd_lookup (int fd, int * err);
这将返回套接字对象指针,
但我想知道如何在用户空间中获得套接字。

非常感谢提前

0 个答案:

没有答案