kern___getcwd() returns ENOTDIR
Kentucky Mandeloid Mo.
ky at df.ru
Sun Jun 27 08:25:44 PDT 2004
I'm writng a smal kernel module that catches file access syscalls.
At every syscall I need a full name of file is being passed to a syscall.
I'm getting it with a path passed to syscall and if path is not starting
with / I get current working directory of process using kern___getcwd().
In every syscall all works just fine except rmdir & unlink.
Sometimes in unlink and everytime in rmdir it returns "not a directory" error.
I know already that kern___getcwd() works through vnode cache and this method
is not a reliable way to get file names.
So is there any other way get cwd of a proccess?
More information about the freebsd-hackers
mailing list