[dtrace-discuss] userland data
Ashok Nair
mail4ashok at gmail.com
Mon Jan 22 02:41:02 PST 2007
Hi,
Have a question about one of the example I came across:
syscall::open*:entry
{
self->path = arg0;
}
syscall::open*:return
/self->path != NULL && (int)arg0 == -1 && errno == EACCES/
{
printf("UID %d perm denied to open %s\n", uid, copyinstr(self->path));
self->path =0;
}
the reasoning for using copyinstr is to copy userland data to kernel space, but the data is referenced in the predicate without using copyinstr (or is that check for some pointer to the data)?
How to generally know if some piece of data lies in userland or not? Is the understanding that data for pointers to all system calls lies in userland space?
Thanks
Ashok
This message posted from opensolaris.org
More information about the dtrace-discuss
mailing list