+ -
当前位置:首页 → 问答吧 → 传送结构体的一个问题。

传送结构体的一个问题。

时间:2010-11-06

来源:互联网

本帖最后由 程序c 于 2010-11-06 23:19 编辑

问题: 传送结构体的小问题,请高手看看。

程序如下:

这是一个内核模块,使用netlink接收结构体的程序

struct nl_cmd
{
    char cmd;
    unsigned int ipadr;
};


然后在netlink处理函数这样写的

static void nl_data_ready(struct sk_buff *skb)
{
     struct nlmsghdr *nlh=NULL;
     struct nl_cmd *command=NULL;
     if (skb==NULL)  return;
     nlh=(struct nlmsghdr *)skb->data;
     command=(struct nl_cmd *)(NLMSG_DATA(nlh));
     printk(KERN_INFO"nl: %c%x",command->cmd,command->ipadr); /* 错误点 */
}

make编译总是错误,提示是error: dereferencing pointer to incomplete type



这个程序我是模仿一个udp例子写的
http://blog.csdn.net/lxb316/archive/2010/03/04/5345604.aspx
我找了数个小时,就是不知道我写的程序的问题。编译都通不过
请各位高手给小弟看一下

作者: 程序c   发布时间: 2010-11-06



QUOTE:
问题: 传送结构体的小问题,请高手看看。

程序如下:

这是一个内核模块,使用netlink接收结构体的程 ...
程序c 发表于 2010-11-06 21:20




结构体定义的时候少个分号?

作者: ktty445655619   发布时间: 2010-11-06



QUOTE:
结构体定义的时候少个分号?
ktty445655619 发表于 2010-11-06 22:47



不好意思,这是我从另一台电脑打过来了,忘记打了,本身的代码是有分号的,不好意思,耽误您时间了,麻烦在给我看看。

作者: 程序c   发布时间: 2010-11-06