link(2) and EFAULT

Michael Galassi nerd at xyz.com
Thu Jul 26 12:44:09 PDT 2007


>Under what conditions does link() return EFAULT? The man
>page says:
>
>  [EFAULT]  One of the pathnames specified is outside the
>            process's allocated address space.
>
>However I would think that if I had a (char *) pointing
>outside the address space that I would get a segfault
>somewhere before getting this error. How would you even
>handle this error, should your code get it?

copyin() is called by the system call code and returns efault after
validating the address, before actually touching it.

-michael





More information about the Kernel mailing list