Nucleus
Barry Files namespace f0dcd54 (3 years, 3 months ago)
diff --git a/include/nucleus/task.h b/include/nucleus/task.h
index 397fae7..cfc0c99 100644
--- a/include/nucleus/task.h
+++ b/include/nucleus/task.h
@@ -30,7 +30,9 @@ enum State {
/* Structure for a Task */
struct Task {
Object obj;
- pid_t tid;
+ pid_t tid, tgid;
+ uid_t uid, euid, suid;
+ gid_t gid, egid, sgid;
enum Priority priority;
enum State state;
@@ -39,6 +41,7 @@ struct Task {
/* Namespaces */
FileSystem *fs;
+ Files *files;
};
extern ObjectType taskType;
@@ -46,6 +49,13 @@ extern ObjectType taskType;
extern Task *currentTask[];
#define current currentTask[CPUID]
+/* Check if super-user */
+static inline int
+super_user(void)
+{
+ return (current->euid == 0);
+}
+
void init_tasking(void);
void schedule(void);
pid_t clone(int flags);