netlink机制使用实例

本文介绍了NETLINK_ID客户端和服务器的实现。客户端通过创建套接字、绑定、接收和发送消息与服务端交互。服务端则通过netlink_kernel_create注册、netlink发送函数处理消息,并接收用户空间传递的消息。
摘要由CSDN通过智能技术生成

(一)客户端:

1./*创建NETLINK_ID客户端套接字

netlink _id = open_socket_for_netlink();

int open_socket_for_netlink()  

{

    int sock = -1;

    int bindsock = -1;

    struct sockaddr_nl nlskaddr;

 

    sock = socket(AF_NETLINK,SOCK_RAW,NETLINK_ID);

    if (sock > 0)

    {

        memset ( &nlskaddr, 0 , sizeof( nlskaddr ) );

        nlskaddr.nl_family = (sa_family_t)AF_NETLINK;      

           nlskaddr.nl_pid = 0; //getpid();

           nlskaddr.nl_groups = TRAPTYPE_GROUP;

    }

    else

        return -1;

 

    bindsock = bind (sock,(struct sockaddr *)&nlskaddr,sizeof(nlskaddr));

    if (bindsock != 0)

    {

        perror("bind failure!\n");

        return -1;

    }

    {           

         int on = n

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值