rtapi_open_as_root - Open a file with "root" privilege
#include <rtapi.h>
int rtapi_open_as_root(const char *filename, int flags) |
filename
The filename to open, as in open(2). Note that rtapi has no well-defined "current directory", so this should be an absolute path, but this is not enforced.
flags |
The open flags, as in open(2). Should never include bits that open or create files (e.g., O_CREAT, O_APPEND, etc) as this API is not intended for creating or writing files, but this is not enforced. |
In "uspace" realtime, root privileges are dropped whenever possible. This API temporarily switches on root privileges to open a file, and switches them off before returning. This can be useful for example when accessing device nodes or memory-mapped I/O.
In the case of PCI devices on x86 and x86-64 systems, prefer the linux-style PCI interfaces provided in <rtapi_pci.h>.
In case of success, the nonnegative file descriptor opened. If the caller does not close it, it remains open until rtapi_app exits.
In case of failure, a negative errno value.
Call only from realtime initcode in "uspace" realtime.
open(2), rtapi_pci(3)