Переглянути джерело

add linux setfs[ug]id syscall wrappers

patch by Jeremy Huntwork
Rich Felker 13 роки тому
батько
коміт
4619901ec4
3 змінених файлів з 36 додано та 0 видалено
  1. 20 0
      include/sys/fsuid.h
  2. 8 0
      src/linux/setfsgid.c
  3. 8 0
      src/linux/setfsuid.c

+ 20 - 0
include/sys/fsuid.h

@@ -0,0 +1,20 @@
+#ifndef	_FSUID_H
+#define	_FSUID_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define __NEED_uid_t
+#define __NEED_gid_t
+
+#include <bits/alltypes.h>
+
+int setfsuid(uid_t);
+int setfsgid(gid_t);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif

+ 8 - 0
src/linux/setfsgid.c

@@ -0,0 +1,8 @@
+#include <unistd.h>
+#include "syscall.h"
+#include "libc.h"
+
+int setfsgid(gid_t gid)
+{
+	return syscall(SYS_setfsgid, gid);
+}

+ 8 - 0
src/linux/setfsuid.c

@@ -0,0 +1,8 @@
+#include <unistd.h>
+#include "syscall.h"
+#include "libc.h"
+
+int setfsuid(uid_t uid)
+{
+	return syscall(SYS_setfsuid, uid);
+}