--- Eugene Teo <eugene.teo@eugeneteo.net> wrote: > Now that I did this: > > LD_PRELOAD=/topath/to/libdriver.so > export LD_PRELOAD > > I get: > > insmod ./interceptor.ko > insmod: error while loading shared libraries: > /path/to/libdriver.so: ELF file's phentsize not the > expected size Using LD_PRELOAD to pre-load a library is a facility useful for user applications. This will not help in whatever you are trying to do. The error you are seeing is not from insmod, it's from the run-time linker. If you had run 'ls' instead of insmod, you would have seen the same error. > > I am trying to port the cisco vpn client to then > > kernel 2.5.x. I have made changes, and managed to > > compile the module. When I load the module, > > I get this: > > > > insmod ./interceptor.ko > > Error inserting './interceptor.ko': -1 Unknown symbol in module > > > > And in my log, I get this: > > > > Jun 28 11:22:44 philyra kernel: interceptor: Unknown symbol > CniPluginUnload > > Jun 28 11:22:44 philyra kernel: interceptor: Unknown symbol > CNICallbackTable > > ... > > ... > > > > Apparently, all the unknown symbols seem to come from > > the shared library, libdriver.so, that i do not have > > source from. Is there any way to make these symbols > > exported so that i can use the vpn client? The shared library is implementing some functionality to be used in user-mode. You can't access is directly from a kernel module. Does your module really belong in the kernel? Or is it better to have it as a user-mode app? -Ravi. __________________________________ Do you Yahoo!? SBC Yahoo! DSL - Now only $29.95 per month! http://sbc.yahoo.com -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/