Define a system call for reading the current umask value. Signed-off-by: Richard W.M. Jones <rjones@xxxxxxxxxx> --- include/linux/syscalls.h | 1 + kernel/sys.c | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index d795472..e96e88f 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h @@ -659,6 +659,7 @@ asmlinkage long sys_prlimit64(pid_t pid, unsigned int resource, struct rlimit64 __user *old_rlim); asmlinkage long sys_getrusage(int who, struct rusage __user *ru); asmlinkage long sys_umask(int mask); +asmlinkage long sys_getumask(void); asmlinkage long sys_msgget(key_t key, int msgflg); asmlinkage long sys_msgsnd(int msqid, struct msgbuf __user *msgp, diff --git a/kernel/sys.c b/kernel/sys.c index cf8ba54..026c146 100644 --- a/kernel/sys.c +++ b/kernel/sys.c @@ -1649,6 +1649,11 @@ SYSCALL_DEFINE1(umask, int, mask) return mask; } +SYSCALL_DEFINE0(getumask) +{ + return current->fs->umask; +} + static int prctl_set_mm_exe_file(struct mm_struct *mm, unsigned int fd) { struct fd exe; -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html