Problem under FC4 with Cisco VPN Client

Feb 18, 2006 1 Replies

Necessary kernel and kernel-devel packages installed.



# uname -a Linux fedora 2.6.15-1.1831_FC4 xxxx i686 athlon i386 GNU/Linux



# rpm -q kernel | tail -1 kernel-2.6.15-1.1831_FC4



# rpm -q kernel-devel | tail -1 kernel-devel-2.6.15-1.1831_FC4



All of the binaries compiled okay. I get to the service start-up.



# /etc/init.d/vpnclient_init start Starting /opt/cisco-vpnclient/bin/vpnclient: insmod: error inserting '/lib/modules/2.6.15-1.1831_FC4/CiscoVPN/cisco_ipsec.ko': -1 Invalid module format Failed (insmod)



How do I start the troubleshooting process for the module issue?



# file /lib/modules/2.6.15-1.1831_FC4/CiscoVPN/cisco_ipsec.ko /lib/modules/2.6.15-1.1831_FC4/CiscoVPN/cisco_ipsec.ko: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV), not stripped



I saw something about running "file" on the module, but I'm not sure what information I'm suppose to be trying to find in the output.



Any help on this?



Thanks, Scott Moseman

formatting link


When you ran the Cisco "vpn_install" script to build your cisco vpn module, are you sure you were running the

2.6.15-1.1831_FC4 kernel? Apparently you did that ok because it installed it in /modules/2.6.15-1.1831_FC4/CiscoVPN/

One problem that nailed me is that I ran vpn_install on a earlier kernel, then later updated my kernel source then reran the vpn_install. But what I didn't notice is that because I didn't delete all the old *.o files, GCC compiler just relinked the o files and made the cisco module. I couldn't run this module with the new kernel because the "vermagic" label in the kernel was still the one from the previous kernel.

You can run modinfo and check the vermagic, this is mine:

modinfo /lib/modules/2.6.14-mos/CiscoVPN/cisco_ipsec.ko filename: /lib/modules/2.6.14-mos/CiscoVPN/cisco_ipsec.ko license: Proprietary vermagic: 2.6.14-mos SMP K8 REGPARM gcc-4.0 depends: ^^^^^^^^^^

The "2.6.14-mos" should match the `uname -r` and on my box which is working with cisco vpn it does:

uname -r

2.6.14-mos

If you try to install a module and the vermagic refers to a different kernel, then it will refuse to load it and say "invalid module format"

The solution is to make sure you clean out all the old object files and then recompile the cisco vpn module while running the kernel you're going to use it with.

Mark

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required