Quoting Samuel Thibault (2013-09-09 19:40:23)
> Ludovic Courtès, le Mon 09 Sep 2013 18:48:03 +0200, a écrit :
> > Samuel Thibault <samuel.thiba...@gnu.org> skribis:
> > > Ludovic Courtès, le Sat 07 Sep 2013 22:04:06 +0200, a écrit :
> > >> However, wouldn’t it be preferable to fix it by interposing on
> > >> ‘task_create’ calls, à la clans & chiefs?  (IIUC, this can be done with
> > >> by setting the TASK_KERNEL_PORT of a task.)
> > >
> > > Apparently task_create is a kernel trap.
> > 
> > Isn’t rpctrace able to interpose on it?
> 
> I don't think there is any way to interpose a trap.
> 
> It probably happens that libc nicely uses the RPC, but nothing prevents
> a process from raising a trap.

As I understand [0] one can interpose all Mach system calls and I
vaguely recall having read somewhere that one of Mach design goals is
to make any kernel interface/concept interposable by userspace. Then
again, I do not think it is meant as a mechanism to change the
semantic of one system call for all processes and I do not know the
performance implications of this mechanism.

0: http://www.gnu.org/software/hurd/gnumach-doc/Syscall-Emulation.html

Justus

Reply via email to