lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <201804180604.kFRCpfNP%fengguang.wu@intel.com>
Date:   Wed, 18 Apr 2018 06:21:07 +0800
From:   kbuild test robot <lkp@...el.com>
To:     Pablo Neira Ayuso <pablo@...filter.org>
Cc:     kbuild-all@...org, linux-kernel@...r.kernel.org
Subject: net/ipv6/netfilter/nft_chain_nat_ipv6.c:37: undefined reference to
 `nft_do_chain'

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   a27fc14219f2e3c4a46ba9177b04d9b52c875532
commit: 02c7b25e5f54321b9063e18d4f52cce07f8e081d netfilter: nf_tables: build-in filter chain type
date:   3 weeks ago
config: x86_64-randconfig-s3-04180252 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        git checkout 02c7b25e5f54321b9063e18d4f52cce07f8e081d
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All errors (new ones prefixed by >>):

   net/ipv6/netfilter/nft_chain_nat_ipv6.o: In function `nft_nat_do_chain':
>> net/ipv6/netfilter/nft_chain_nat_ipv6.c:37: undefined reference to `nft_do_chain'
   net/ipv6/netfilter/nft_chain_nat_ipv6.o: In function `nft_chain_nat_ipv6_exit':
>> net/ipv6/netfilter/nft_chain_nat_ipv6.c:94: undefined reference to `nft_unregister_chain_type'
   net/ipv6/netfilter/nft_chain_nat_ipv6.o: In function `nft_chain_nat_ipv6_init':
>> net/ipv6/netfilter/nft_chain_nat_ipv6.c:87: undefined reference to `nft_register_chain_type'

vim +37 net/ipv6/netfilter/nft_chain_nat_ipv6.c

eb31628e3 Tomasz Bursztyka  2013-10-10  26  
06198b34a Eric W. Biederman 2015-09-18  27  static unsigned int nft_nat_do_chain(void *priv,
eb31628e3 Tomasz Bursztyka  2013-10-10  28  				     struct sk_buff *skb,
8fe22382d David S. Miller   2015-04-03  29  				     const struct nf_hook_state *state,
876665eaf Pablo Neira Ayuso 2014-09-09  30  				     struct nf_conn *ct)
eb31628e3 Tomasz Bursztyka  2013-10-10  31  {
eb31628e3 Tomasz Bursztyka  2013-10-10  32  	struct nft_pktinfo pkt;
eb31628e3 Tomasz Bursztyka  2013-10-10  33  
7a4473a31 Pablo Neira Ayuso 2017-12-10  34  	nft_set_pktinfo(&pkt, skb, state);
7a4473a31 Pablo Neira Ayuso 2017-12-10  35  	nft_set_pktinfo_ipv6(&pkt, skb);
eb31628e3 Tomasz Bursztyka  2013-10-10  36  
06198b34a Eric W. Biederman 2015-09-18 @37  	return nft_do_chain(&pkt, priv);
eb31628e3 Tomasz Bursztyka  2013-10-10  38  }
eb31628e3 Tomasz Bursztyka  2013-10-10  39  
06198b34a Eric W. Biederman 2015-09-18  40  static unsigned int nft_nat_ipv6_fn(void *priv,
876665eaf Pablo Neira Ayuso 2014-09-09  41  				    struct sk_buff *skb,
238e54c9c David S. Miller   2015-04-03  42  				    const struct nf_hook_state *state)
876665eaf Pablo Neira Ayuso 2014-09-09  43  {
06198b34a Eric W. Biederman 2015-09-18  44  	return nf_nat_ipv6_fn(priv, skb, state, nft_nat_do_chain);
eb31628e3 Tomasz Bursztyka  2013-10-10  45  }
eb31628e3 Tomasz Bursztyka  2013-10-10  46  
06198b34a Eric W. Biederman 2015-09-18  47  static unsigned int nft_nat_ipv6_in(void *priv,
eb31628e3 Tomasz Bursztyka  2013-10-10  48  				    struct sk_buff *skb,
238e54c9c David S. Miller   2015-04-03  49  				    const struct nf_hook_state *state)
eb31628e3 Tomasz Bursztyka  2013-10-10  50  {
06198b34a Eric W. Biederman 2015-09-18  51  	return nf_nat_ipv6_in(priv, skb, state, nft_nat_do_chain);
eb31628e3 Tomasz Bursztyka  2013-10-10  52  }
eb31628e3 Tomasz Bursztyka  2013-10-10  53  
06198b34a Eric W. Biederman 2015-09-18  54  static unsigned int nft_nat_ipv6_out(void *priv,
eb31628e3 Tomasz Bursztyka  2013-10-10  55  				     struct sk_buff *skb,
238e54c9c David S. Miller   2015-04-03  56  				     const struct nf_hook_state *state)
eb31628e3 Tomasz Bursztyka  2013-10-10  57  {
06198b34a Eric W. Biederman 2015-09-18  58  	return nf_nat_ipv6_out(priv, skb, state, nft_nat_do_chain);
eb31628e3 Tomasz Bursztyka  2013-10-10  59  }
eb31628e3 Tomasz Bursztyka  2013-10-10  60  
06198b34a Eric W. Biederman 2015-09-18  61  static unsigned int nft_nat_ipv6_local_fn(void *priv,
eb31628e3 Tomasz Bursztyka  2013-10-10  62  					  struct sk_buff *skb,
238e54c9c David S. Miller   2015-04-03  63  					  const struct nf_hook_state *state)
eb31628e3 Tomasz Bursztyka  2013-10-10  64  {
06198b34a Eric W. Biederman 2015-09-18  65  	return nf_nat_ipv6_local_fn(priv, skb, state, nft_nat_do_chain);
eb31628e3 Tomasz Bursztyka  2013-10-10  66  }
eb31628e3 Tomasz Bursztyka  2013-10-10  67  
32537e918 Pablo Neira Ayuso 2018-03-27  68  static const struct nft_chain_type nft_chain_nat_ipv6 = {
eb31628e3 Tomasz Bursztyka  2013-10-10  69  	.name		= "nat",
eb31628e3 Tomasz Bursztyka  2013-10-10  70  	.type		= NFT_CHAIN_T_NAT,
fa2c1de0b Patrick McHardy   2014-01-09  71  	.family		= NFPROTO_IPV6,
fa2c1de0b Patrick McHardy   2014-01-09  72  	.owner		= THIS_MODULE,
eb31628e3 Tomasz Bursztyka  2013-10-10  73  	.hook_mask	= (1 << NF_INET_PRE_ROUTING) |
eb31628e3 Tomasz Bursztyka  2013-10-10  74  			  (1 << NF_INET_POST_ROUTING) |
eb31628e3 Tomasz Bursztyka  2013-10-10  75  			  (1 << NF_INET_LOCAL_OUT) |
eb31628e3 Tomasz Bursztyka  2013-10-10  76  			  (1 << NF_INET_LOCAL_IN),
fa2c1de0b Patrick McHardy   2014-01-09  77  	.hooks		= {
876665eaf Pablo Neira Ayuso 2014-09-09  78  		[NF_INET_PRE_ROUTING]	= nft_nat_ipv6_in,
876665eaf Pablo Neira Ayuso 2014-09-09  79  		[NF_INET_POST_ROUTING]	= nft_nat_ipv6_out,
876665eaf Pablo Neira Ayuso 2014-09-09  80  		[NF_INET_LOCAL_OUT]	= nft_nat_ipv6_local_fn,
2a5538e9a Pablo Neira Ayuso 2014-08-25  81  		[NF_INET_LOCAL_IN]	= nft_nat_ipv6_fn,
eb31628e3 Tomasz Bursztyka  2013-10-10  82  	},
eb31628e3 Tomasz Bursztyka  2013-10-10  83  };
eb31628e3 Tomasz Bursztyka  2013-10-10  84  
eb31628e3 Tomasz Bursztyka  2013-10-10  85  static int __init nft_chain_nat_ipv6_init(void)
eb31628e3 Tomasz Bursztyka  2013-10-10  86  {
cc07eeb0e Pablo Neira Ayuso 2018-03-27 @87  	nft_register_chain_type(&nft_chain_nat_ipv6);
eb31628e3 Tomasz Bursztyka  2013-10-10  88  
eb31628e3 Tomasz Bursztyka  2013-10-10  89  	return 0;
eb31628e3 Tomasz Bursztyka  2013-10-10  90  }
eb31628e3 Tomasz Bursztyka  2013-10-10  91  
eb31628e3 Tomasz Bursztyka  2013-10-10  92  static void __exit nft_chain_nat_ipv6_exit(void)
eb31628e3 Tomasz Bursztyka  2013-10-10  93  {
eb31628e3 Tomasz Bursztyka  2013-10-10 @94  	nft_unregister_chain_type(&nft_chain_nat_ipv6);
eb31628e3 Tomasz Bursztyka  2013-10-10  95  }
eb31628e3 Tomasz Bursztyka  2013-10-10  96  

:::::: The code at line 37 was first introduced by commit
:::::: 06198b34a3e09e06d9aecaa3727e0d37206cea77 netfilter: Pass priv instead of nf_hook_ops to netfilter hooks

:::::: TO: Eric W. Biederman <ebiederm@...ssion.com>
:::::: CC: Pablo Neira Ayuso <pablo@...filter.org>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Download attachment ".config.gz" of type "application/gzip" (34574 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ