Set the process execution domain
#include <sys/personality.h>
int personality(unsigned long persona);
Linux supports different execution domains, or personalities, for each process. Among other things, execution domains tell Linux how to map signal numbers into signal actions. The execution domain system allows Linux to provide limited support for binaries compiled under other UNIX-like operating systems.
If persona is not 0xffffffff, then personality() sets the caller's execution domain to the value specified by persona. Specifying persona as 0xffffffff provides a way of retrieving the current persona without changing it.
A list of the available execution domains can be found in <sys/personality.h>.
On success, the previous persona is returned. On error, -1 is returned, and errno is set appropriately.
EINVAL
The kernel was unable to change the personality.
personality() is Linux-specific and should not be used in programs intended to be portable.
This page is part of release 3.74 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at http://www.kernel.org/doc/man-pages/.