Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does not build in Linux 4.4.0.. Tried tomerb and FS1360472174 fork also. #16

Open
abhishekismdhn opened this issue Aug 27, 2016 · 2 comments

Comments

@abhishekismdhn
Copy link

include/net/inet_hashtables.h: In function ‘sk_daddr_set’:
include/net/inet_hashtables.h:354:2: error: implicit declaration of function ‘ipv6_addr_set_v4mapped’ [-Werror=implicit-function-declaration]
ipv6_addr_set_v4mapped(addr, &sk->sk_v6_daddr);
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c: In function ‘ip_output’:
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:362:15: error: passing argument 1 of ‘dst_output’ from incompatible pointer type [-Werror=incompatible-pointer-types]
dst_output(skb);
^
In file included from include/net/sock.h:67:0,
from include/linux/tcp.h:22,
from include/linux/ipv6.h:72,
from include/net/netfilter/nf_queue.h:5,
from ~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:71:
include/net/dst.h:490:19: note: expected ‘struct net *’ but argument is of type ‘struct sk_buff *’
static inline int dst_output(struct net *net, struct sock *sk, struct sk_buff *skb)
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:362:4: error: too few arguments to function ‘dst_output’
dst_output(skb);
^
In file included from include/net/sock.h:67:0,
from include/linux/tcp.h:22,
from include/linux/ipv6.h:72,
from include/net/netfilter/nf_queue.h:5,
from ~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:71:
include/net/dst.h:490:19: note: declared here
static inline int dst_output(struct net *net, struct sock *sk, struct sk_buff *skb)
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:848:35: note: (near initialization for ‘ipfw_ops[0].hook’)
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:852:17: error: unknown field ‘owner’ specified in initializer
SET_MOD_OWNER
^
In file included from include/linux/linkage.h:6:0,
from include/linux/kernel.h:6,
from include/linux/list.h:8,
from include/linux/msg.h:4,
from ~/Practice/netemu/dummynet/kipfw-mod/../glue.h:101,
from :0:
include/linux/export.h:34:21: error: excess elements in struct initializer [-Werror]
#define THIS_MODULE (&__this_module)
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:842:32: note: in expansion of macro ‘THIS_MODULE’
#define SET_MOD_OWNER .owner = THIS_MODULE,
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:852:17: note: in expansion of macro ‘SET_MOD_OWNER’
SET_MOD_OWNER
^
include/linux/export.h:34:21: note: (near initialization for ‘ipfw_ops[0]’)
#define THIS_MODULE (&__this_module)
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:842:32: note: in expansion of macro ‘THIS_MODULE’
#define SET_MOD_OWNER .owner = THIS_MODULE,
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:852:17: note: in expansion of macro ‘SET_MOD_OWNER’
SET_MOD_OWNER
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:855:35: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
.hook = call_ipfw,
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:855:35: note: (near initialization for ‘ipfw_ops[1].hook’)
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:859:3: error: unknown field ‘owner’ specified in initializer
SET_MOD_OWNER
^
In file included from include/linux/linkage.h:6:0,
from include/linux/kernel.h:6,
from include/linux/list.h:8,
from include/linux/msg.h:4,
from ~/Practice/netemu/dummynet/kipfw-mod/../glue.h:101,
from :0:
include/linux/export.h:34:21: error: excess elements in struct initializer [-Werror]
#define THIS_MODULE (&__this_module)
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:842:32: note: in expansion of macro ‘THIS_MODULE’
#define SET_MOD_OWNER .owner = THIS_MODULE,
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:859:3: note: in expansion of macro ‘SET_MOD_OWNER’
SET_MOD_OWNER
^
include/linux/export.h:34:21: note: (near initialization for ‘ipfw_ops[1]’)
#define THIS_MODULE (&__this_module)
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:842:32: note: in expansion of macro ‘THIS_MODULE’
#define SET_MOD_OWNER .owner = THIS_MODULE,
^
~/Practice/netemu/dummynet/kipfw-mod/ipfw2_mod.c:859:3: note: in expansion of macro ‘SET_MOD_OWNER’
SET_MOD_OWNER

@kabo
Copy link

kabo commented May 29, 2017

I'm getting the same error. Did you find a solution?

@kabo
Copy link

kabo commented May 29, 2017

I managed to get by the first error by disabling IPv6 (Global build settings > uncheck "Enable IPv6 support in packages")

Next error seems to be because the signature for dst_output changed in linux 4.4 compared to 4.3.

Compare

http://elixir.free-electrons.com/linux/v4.3.6/source/include/net/dst.h#L494

to

http://elixir.free-electrons.com/linux/v4.4/source/include/net/dst.h#L490

Anyone have a patch for this change?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants