X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/5f4f16c074be65639b5c3333441d48b1d418104c..b297c96099a08a9f2b7e20e80a8f43515fabd714:/lunaix-os/includes/lunaix/process.h diff --git a/lunaix-os/includes/lunaix/process.h b/lunaix-os/includes/lunaix/process.h index 8d4c70b..868a9fc 100644 --- a/lunaix-os/includes/lunaix/process.h +++ b/lunaix-os/includes/lunaix/process.h @@ -175,6 +175,7 @@ struct proc_info gid_t sgid; struct user_scope uscope; + struct v_dnode* root; int state; int exit_code; @@ -484,10 +485,28 @@ current_euid() return __current->euid; } +static inline bool must_inline +current_is_root() +{ + return current_euid() == 0; +} + static inline gid_t must_inline current_egid() { return __current->egid; } +static inline void must_inline +current_set_egid(gid_t gid) +{ + __current->egid = gid; +} + +static inline void must_inline +current_set_euid(uid_t uid) +{ + __current->euid = uid; +} + #endif /* __LUNAIX_PROCESS_H */