From: greg@kroah.com Date: Thu, 25 Mar 2004 05:18:36 +0000 (-0800) Subject: [PATCH] first cut at standalone udev_selinux program. X-Git-Tag: 023~14 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=b528cd49203c64cf117868b5a5907cb11d934bbb [PATCH] first cut at standalone udev_selinux program. Will not work, need to finish working on this on a system with selinux installed... --- diff --git a/udev_selinux.c b/udev_selinux.c index 3728fd0b5..723af9a02 100644 --- a/udev_selinux.c +++ b/udev_selinux.c @@ -8,10 +8,23 @@ #include #include "udev.h" -#include "udev_version.h" -#include "udev_selinux.h" +#include "udev_lib.h" #include "logging.h" +#ifdef LOG +unsigned char logname[LOGNAME_SIZE]; +void log_message(int level, const char *format, ...) +{ + va_list args; + + if (!udev_log) + return; + + va_start(args, format); + vsyslog(level, format, args); + va_end(args); +} +#endif void selinux_add_node(char *filename) { @@ -32,3 +45,29 @@ void selinux_add_node(char *filename) } } +int main(int argc, char *argv[], char *envp[]) +{ + char *action; + char *devpath; + char *devnode; + int retval = 0; + + init_logging("udev_selinux"); + + action = get_action(); + if (!action) { + dbg("no action?"); + goto exit; + } + devnode = get_devnode(); + if (!devnode) { + dbg("no devnode?"); + goto exit; + } + + if (strcmp(action, "add") == 0) + selinux_add_node(devnode); + +exit: + return retval; +}