[Openswan dev] ipcomp.c: structure has no member named `ips_comp_adapt_skip'

Ken Bantoft ken at xelerance.com
Sat Apr 10 17:29:38 CEST 2004


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Sat, 10 Apr 2004, Axel Thimm wrote:

> Hi,
> 
> I have built FC1 kernels with openswan 2.1.1 natt/kern patches
> included and the following config:
> 
> CONFIG_IPSEC=m
> CONFIG_IPSEC_IPIP=y
> CONFIG_IPSEC_AH=y
> CONFIG_IPSEC_AUTH_HMAC_MD5=y
> CONFIG_IPSEC_AUTH_HMAC_SHA1=y
> CONFIG_IPSEC_ESP=y
> CONFIG_IPSEC_ENC_3DES=y
> # CONFIG_IPSEC_IPCOMP is not set

Flip this on, and see if the error still occurs, which I'm pretty sure it 
won't.  However, read below for an explaination.

> CONFIG_IPSEC_DEBUG=y
> # CONFIG_IPSEC_REGRESS is not set
> CONFIG_IPSEC_NAT_TRAVERSAL=y
> 
> Building openswan against such a kernel (*), I get the following
> error:
> /usr/bin/gcc32  -DIPCOMP_PREFIX -I../../include -I/amd/heretic/1/data_nobkp/bach/bach-kernel/rhfc1/2.4.22-1.2174.nptl_44.rhfc1.at-i686/include -I../. ./lib/zlib  -Wall -DARCH=i386  -DMODVERSIONS -include /amd/heretic/1/data_nobkp/bach/bach-kernel/rhfc1/2.4.22-1.2174.nptl_44.rhfc1.at-i686/include/linux/modversions.h -include /tmp/atrpms-mykernel-2.4.22-1.2174.nptl_44.rhfc1.at-i686.h -DMODULE -DMODVERSIONS -include /amd/heretic/1/data_nobkp/bach/bach-kernel/rhfc1/2.4.22-1.2174.nptl_44.rhfc1.at-i686/include/linux/modversions.h -include /var/tmp/bach-build/BUILD/openswan-2.1.1/autoconf_ipsec.h  -D __KERNEL__ -I/amd/heretic/1/data_nobkp/bach/bach-kernel/rhfc1/2.4.22-1.2174.nptl_44.rhfc1.at-i686/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -DKBUILD_BASENAME=ipcomp   -c -o ipcomp.o ipcomp.c
> ipcomp.c: In function `skb_compress':
> ipcomp.c:169: structure has no member named `ips_comp_adapt_skip'
> ipcomp.c:173: structure has no member named `ips_comp_adapt_skip'
> ipcomp.c:174: structure has no member named `ips_comp_adapt_skip'
> ipcomp.c:256: structure has no member named `ips_comp_adapt_tries'
> ipcomp.c:263: structure has no member named `ips_comp_adapt_skip'
> ipcomp.c:265: structure has no member named `ips_comp_adapt_tries'
> ipcomp.c:272: structure has no member named `ips_comp_adapt_skip'
> ipcomp.c:273: structure has no member named `ips_comp_adapt_tries'
> ipcomp.c:336: structure has no member named `ips_comp_adapt_skip'
> ipcomp.c:337: structure has no member named `ips_comp_adapt_tries'
> make[1]: *** [ipcomp.o] Error 1

It seems 'struct ipsec_sa *ips', which is passed to skb_compress() doesn't 
have all members of struct if CONFIG_IPSEC_IPCOMP is disabled.

linux/include/openswan/ipsec_sa.h:181

#ifdef CONFIG_IPSEC_IPCOMP
        __u16           ips_comp_adapt_tries;   /* ipcomp self-adaption tries */
        __u16           ips_comp_adapt_skip;    /* ipcomp self-adaption to-skip */
        __u64           ips_comp_ratio_cbytes;  /* compressed bytes */   
        __u64           ips_comp_ratio_dbytes;  /* decompressed (or uncompressed bytes) */
#endif /* CONFIG_IPSEC_IPCOMP */

So you could always just remove the #ifdefs and keep compression disabled 
and see if that builds, or we need to #ifdef around the ipcomp code.

I'll leave the final decision to mcr on which is the 'correct' solution 
for this.


- -- 
Ken Bantoft			VP Business Development
ken at xelerance.com		Xelerance Corporation
sip://toronto.xelerance.com	http://www.xelerance.com

The future is here. It's just not evenly distributed yet. 
        -- William Gibson

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQFAeATUPiOgilmwgkgRAsuiAKDXIxso/pvMZTV2T4yX3l5sZz0x6wCfTRcb
5fhX3HbweqlyoEDqVj5cEVs=
=6OOQ
-----END PGP SIGNATURE-----



More information about the Dev mailing list