(E-Mail Removed) wrote:
>
> 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
> http://www.Highflow.com/
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