Attempting to compile cisco-vpnclient-3des-4.6.03.0190 against the 2.6.14-rc2 vanilla-sources fails with the following error: make -C /lib/modules/2.6.14-rc2/build SUBDIRS=/var/tmp/portage/cisco-vpnclient-3des-4.6.03.0190/work/vpnclient modules make[1]: Entering directory `/usr/src/linux-2.6.14-rc2' CC [M] /var/tmp/portage/cisco-vpnclient-3des-4.6.03.0190/work/vpnclient/linuxcniapi.o /var/tmp/portage/cisco-vpnclient-3des-4.6.03.0190/work/vpnclient/linuxcniapi.c: In function `CniInjectReceive': /var/tmp/portage/cisco-vpnclient-3des-4.6.03.0190/work/vpnclient/linuxcniapi.c:292: error: structure has no member named `stamp' /var/tmp/portage/cisco-vpnclient-3des-4.6.03.0190/work/vpnclient/linuxcniapi.c: In function `CniInjectSend': /var/tmp/portage/cisco-vpnclient-3des-4.6.03.0190/work/vpnclient/linuxcniapi.c:432: error: structure has no member named `stamp' make[2]: *** [/var/tmp/portage/cisco-vpnclient-3des-4.6.03.0190/work/vpnclient/linuxcniapi.o] Error 1 make[1]: *** [_module_/var/tmp/portage/cisco-vpnclient-3des-4.6.03.0190/work/vpnclient] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.14-rc2' make: *** [default] Error 2 !!! ERROR: net-misc/cisco-vpnclient-3des-4.6.03.0190 failed. !!! Function src_compile, Line 34, Exitcode 0 !!! Failed to make module 'cisco_ipsec' !!! If you need support, post the topmost build error, NOT this status message. I realise this is almost certainly because it's the latest/unsupported kernel, however this is just to give you advance warning, so that it doesn't come as a surprise when the final 2.6.14 comes out... Reproducible: Always Steps to Reproduce: 1. Emerge vanilla-sources-2.6.14_rc2 2. Symlink the directory to /usr/src/linux 3. emerge cisco-vpnclient-3des Actual Results: Emerge failed with the errors above. Expected Results: Compiled successfully. Portage 2.0.52-r1 (default-linux/x86/2005.0, gcc-3.4.4, glibc-2.3.5-r1, 2.6.14-rc2 i686) ================================================================= System uname: 2.6.14-rc2 i686 Intel(R) Pentium(R) M processor 1400MHz Gentoo Base System version 1.12.0_pre8 ccache version 2.4 [enabled] dev-lang/python: 2.4.1-r1 sys-apps/sandbox: 1.2.13 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.20 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-mtune=pentium4 -march=pentium4 -O3 -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d" CXXFLAGS="-mtune=pentium4 -march=pentium4 -O3 -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache cvs distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/overlays/shc-tools /usr/local/overlays/personal" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 GAPING_SECURITY_HOLE X aalib acl acpi adns alsa animation apm avi bash-completion berkdb bitmap-fonts bluetooth boundschecking browserplugin cairo cdr crypt cups dbus dlloader dvb dvd eds emboss encode flac foomaticdb fortran freetds gd gdbm gif glitz gnome gps gstreamer gtk gtk2 gtkhtml hal hardened imagemagick ipv6 java john jpeg junit ldap libg++ libwww mad mailwrapper mikmod mmx motif mozilla mp3 mpeg mscash mssql mysql ncurses nls nptl nptlonly ntlm ogg oggvorbis opengl pam pcmcia pdflib pic pie plot png postgres pylibpcap python quicktime readline samba sasl sdl slang slp smux snmp sox spell ssl svg svga tcpd tetex theora threads tiff truetype truetype-fonts type1-fonts usb vorbis win32codecs xine xml2 xv xvid zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Well, I'd recommend asking Cisco for a patch. After all, you are paying them for support on it, right? ;] Once someone posts a patch here, I'll add it, but I'm not spending my time writing a patch for a commercial product. I'm not trying to be rude, I just don't think I should be spending my volunteer time working for Cisco without compensation. Feel free to REOPEN this if you get a patch from Cisco (or somewhere else).
see http://forums.gentoo.org/viewtopic-t-375714.html for solving the problem. Don't know how to make a patch that's why I don't do it. But I hope, someone is able to...
Created attachment 71759 [details] Updated ebuild running the linux-2.6.14 patch. First *real* ebuild modification, it works for me.. but may break on older kernel versions (the patch runs with no condition).
Created attachment 71760 [details, diff] Patch for 2.6.14 kernel (use ebuild) As above, first real time fiddling with ebuilds/C.. probably best if experienced eyes give it a good run over :)
There is now a patch courtesy of DaNIsH (and whilst the patch works, the ebuild will apply it to every system whether or not it's 2.6.14 so more work is needed there), but it's not from Cisco, and it's unclear if any other changes to the skbuffer made in the latest kernel updates will suddenly show up as bugs. However, it'd be nice to see it in a new ebuild just to get people back up and working again, especially as 2.6.14's just gone stable, so I've marked the bug as open again.
The patch breaks 2.6.13 (at least) so I have forced it to only apply if the kernel is 2.6.14 for now. I don't know if 2.6.15 will require this patch also. If it does, then I'll need to rework the current conditions in the ebuild to match all kernels >=2.6.14 instead. Added to CVS and taken to stable.
Thanks for sorting that. 2.6.15 will require the patch, the changes to the skbuffer seem to have been intentional and will stay. The patch does still work though, and nothing else needs to be added...
The new r1 ebuild has a problem with the kernel version checking code. The following line (in src_unpack()) is being used to make sure that the kernel version is greater than 2.6.14. if kernel_is 2 6 && [ ${KV_MINOR} -ge 14 ] The variable KV_PATCH should be used here instead of KV_MINOR.
d'oh! Fixed...