这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » Linux下的AF_NETLINK 在VxWorks下相当于什么(老站转)

共1条 1/1 1 跳转至

Linux下的AF_NETLINK 在VxWorks下相当于什么(老站转)

菜鸟
2002-05-30 19:35:10     打赏
Linux下的AF_NETLINK 在VxWorks下相当于什么? zw84611 于 2002/05/11 16:34 加贴 我需要把一些linux下的程序改成VxWorks下的,请问Linux下的 AF_NETLINK 在VxWorks下相当与什么,是AF_LINK还是AF_ROUTE? ========================================================== Linux下的代码如下: #define NETLINK_ROUTE 0 struct sockaddr_nl { sa_family_t nl_family; /* AF_NETLINK */ unsigned short nl_pad; /* zero */ __u32 nl_pid; /* process pid */ __u32 nl_groups; /* multicast groups mask */ }; int rtnl_open() { struct sockaddr_nl rtaddr; int fd = socket(AF_NETLINK, SOCK_RAW, NETLINK_ROUTE); int rtaddr_len; if(fd <0) { perror(`rtnl_open`); return -1; } rtaddr.nl_family = AF_NETLINK; rtaddr.nl_groups = 0xFFFFFFFF; if(bind(fd,(struct sockaddr*)&rtaddr,sizeof(rtaddr))<0) { perror(`rtnl_open`); return -1; } rtaddr_len = sizeof(rtaddr); getsockname(fd,(struct sockaddr*)&rtaddr,&rtaddr_len); return fd; } ============================================================ 我若把AF_NETLINK改作AF_LINK,则 fd = socket(AF_NETLINK, SOCK_RAW, NETLINK_ROUTE)<0, 若把AF_NETLINK改作AF_ROUTE,则 bind(fd,(struct sockaddr*)&rtaddr,sizeof(rtaddr))时会出现:panic: raw_usrreq。 (我已经在VxWorks image 中包括了 BSD Routing Sockets(INCLUDE_ROUTE_SOCK) )



关键词: Linux     下的     NETLINK     VxWorks         

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]