.hy 0 .ad l .nf

Prev, Top | Notes, Next

# Strange and Interesting System Calls
EFAULT, Bad address

> If a system call only has one pointer argument, it is easy to figure out.
>     unlink(pathname = 0x7FFFDB0B49C9) failed, Bad address (14, EFAULT) because
>     pathname refers to memory that is outside the process's accessible address
>     space; this is more likely to be a software error (a bug) than it is to be a
>     user error
> But what if there is more than one pointer argument?
>     rename(oldpath = "fred", newpath = 0x7FFFDB0B49C9) failed, Bad address (14,
>     EFAULT) because newpath refers to memory that is outside the process's
>     accessible address space; this is more likely to be a software error (a bug)
>     than it is to be a user error
The library does not disturb process signal handlers.