chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[PATCH] catchup with recent klibc
[elogind.git]
/
udevd.c
diff --git
a/udevd.c
b/udevd.c
index b2cb62f386c4d7a7b0383161fe629dad963e7eb1..5756b46122d0f03037c4b9521679fd53e2b14bab 100644
(file)
--- a/
udevd.c
+++ b/
udevd.c
@@
-34,9
+34,7
@@
#include <sys/un.h>
#include <fcntl.h>
#include "klibc_fixups.h"
#include <sys/un.h>
#include <fcntl.h>
#include "klibc_fixups.h"
-#ifndef __KLIBC__
#include <sys/sysinfo.h>
#include <sys/sysinfo.h>
-#endif
#include "list.h"
#include "udev.h"
#include "list.h"
#include "udev.h"
@@
-60,6
+58,7
@@
static void exec_queue_manager(void);
static void msg_queue_manager(void);
static void user_sighandler(void);
static void reap_kids(void);
static void msg_queue_manager(void);
static void user_sighandler(void);
static void reap_kids(void);
+char *udev_bin;
#ifdef LOG
unsigned char logname[LOGNAME_SIZE];
#ifdef LOG
unsigned char logname[LOGNAME_SIZE];
@@
-146,7
+145,7
@@
static void udev_run(struct hotplug_msg *msg)
switch (pid) {
case 0:
/* child */
switch (pid) {
case 0:
/* child */
- execle(
UDEV_BIN
, "udev", msg->subsystem, NULL, env);
+ execle(
udev_bin
, "udev", msg->subsystem, NULL, env);
dbg("exec of child failed");
exit(1);
break;
dbg("exec of child failed");
exit(1);
break;
@@
-458,6
+457,13
@@
int main(int argc, char *argv[])
/* enable receiving of the sender credentials */
setsockopt(ssock, SOL_SOCKET, SO_PASSCRED, &on, sizeof(on));
/* enable receiving of the sender credentials */
setsockopt(ssock, SOL_SOCKET, SO_PASSCRED, &on, sizeof(on));
+ /* possible override of udev binary, used for testing */
+ udev_bin = getenv("UDEV_BIN");
+ if (udev_bin != NULL)
+ dbg("udev binary is set to '%s'", udev_bin);
+ else
+ udev_bin = UDEV_BIN;
+
FD_ZERO(&readfds);
FD_SET(ssock, &readfds);
FD_SET(pipefds[0], &readfds);
FD_ZERO(&readfds);
FD_SET(ssock, &readfds);
FD_SET(pipefds[0], &readfds);