Re: Syscall table AKA hijacking syscalls

From: Libor Vanek
Date: Fri Jan 02 2004 - 10:41:24 EST




I'm writing some project which needs to hijack some syscalls in VFS layer. AFAIK in 2.6 is this "not-wanted" solution (even that there are some very nasty ways of doing it - see http://mail.nl.linux.org/kernelnewbies/2002-12/msg00266.html )

Also I've found out that Linus stated that intercepting syscalls is "bad thing" (load module a, load module b, unload module b => crash) but I think that there are some very good reasons (and ways) to do it (see http://syscalltrack.sourceforge.net ). My main reason to do it is that I want my GPLed module to be able to modify some VFS syscalls without patching and recompiling whole kernel and rebooting the machine.



As part of the openxdsm-project we wrote an syscall-intercept module
that "solves" the (load module a, load module b, unload module b =>
crash) part by providing a common infrastructure for intercepting
syscalls.


The code looks very nice'n'simple but it won't run on 2.6 because mentioned hidden sys_call_table. But I can imagine that this with some small tweaks can be integrated into 2.6 to provide generall infrastructure for syscall hijacking when really needed.


--

Libor Vanek


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/