summaryrefslogtreecommitdiff
path: root/gl/lib/se-selinux_.h
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>2007-01-04 16:33:43 +0100
committerJim Meyering <jim@meyering.net>2007-03-29 21:37:05 +0200
commit87516b80a5dcbfc4c2a8bb2193037a249c96674f (patch)
treee2093ff352ca9c0c55ce8916b4a9b779fd4e3361 /gl/lib/se-selinux_.h
parent56fc172d1133f9c97547818ea4c4c156cd431a16 (diff)
downloadcoreutils-87516b80a5dcbfc4c2a8bb2193037a249c96674f.tar.xz
New program: chcon
* gl/modules/selinux-at: New module. Check for libselinux and set LIB_SELINUX here, unconditionally, rather than depending on the configure-time --enable-selinux option. * gl/modules/selinux-h: New module. * bootstrap.conf (gnulib_modules): Add selinux-at. * gl/lib/selinux-at.c, gl/lib/selinux-at.h: New files. * gl/lib/se-selinux_.h: New file. * gl/lib/se-context_.h: New file. * gl/m4/selinux-selinux-h.m4: New file. * gl/m4/selinux-context-h.m4: New file. * src/Makefile.am (bin_PROGRAMS): Add chcon. (chcon_LDADD): Define. * README: Add chcon to the list of programs. * src/chcon.c: Rewrite the original (Red Hat) chcon to use fts.
Diffstat (limited to 'gl/lib/se-selinux_.h')
-rw-r--r--gl/lib/se-selinux_.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/gl/lib/se-selinux_.h b/gl/lib/se-selinux_.h
new file mode 100644
index 000000000..b08c7eee4
--- /dev/null
+++ b/gl/lib/se-selinux_.h
@@ -0,0 +1,54 @@
+#ifndef SELINUX_SELINUX_H
+# define SELINUX_SELINUX_H
+
+# include <sys/types.h>
+# include <errno.h>
+/* Some systems don't have ENOSYS. */
+# ifndef ENOSYS
+# ifdef ENOTSUP
+# define ENOSYS ENOTSUP
+# else
+/* Some systems don't have ENOTSUP either. */
+# define ENOSYS EINVAL
+# endif
+# endif
+
+typedef unsigned short security_class_t;
+# define security_context_t char*
+# define is_selinux_enabled() 0
+
+static inline int getcon (security_context_t *con) { errno = ENOTSUP; return -1; }
+static inline void freecon (security_context_t con) {}
+
+
+static inline int getfscreatecon (security_context_t *con)
+ { errno = ENOTSUP; return -1; }
+static inline int setfscreatecon (security_context_t con)
+ { errno = ENOTSUP; return -1; }
+static inline int matchpathcon (char const *s, mode_t m,
+ security_context_t *con)
+ { errno = ENOTSUP; return -1; }
+
+static inline int getfilecon (char const *s, security_context_t *con)
+ { errno = ENOTSUP; return -1; }
+static inline int lgetfilecon (char const *s, security_context_t *con)
+ { errno = ENOTSUP; return -1; }
+static inline int setfilecon (char const *s, security_context_t con)
+ { errno = ENOTSUP; return -1; }
+static inline int lsetfilecon (char const *s, security_context_t con)
+ { errno = ENOTSUP; return -1; }
+static inline int fsetfilecon (int fd, security_context_t con)
+ { errno = ENOTSUP; return -1; }
+
+static inline int security_check_context (security_context_t con)
+ { errno = ENOTSUP; return -1; }
+static inline int security_check_context_raw (security_context_t con)
+ { errno = ENOTSUP; return -1; }
+static inline int setexeccon (security_context_t con)
+ { errno = ENOTSUP; return -1; }
+static inline int security_compute_create (security_context_t scon,
+ security_context_t tcon,
+ security_class_t tclass,
+ security_context_t *newcon)
+ { errno = ENOTSUP; return -1; }
+#endif