diff options
-rw-r--r-- | debug.c | 2 | ||||
-rw-r--r-- | debug.h | 2 | ||||
-rw-r--r-- | radsecproxy.c | 20 |
3 files changed, 24 insertions, 0 deletions
@@ -6,7 +6,9 @@ * copyright notice and this permission notice appear in all copies. */ +#ifndef SYS_SOLARIS9 #include <stdint.h> +#endif #include <stdio.h> #include <stdlib.h> #include <stdarg.h> @@ -6,7 +6,9 @@ * copyright notice and this permission notice appear in all copies. */ +#ifndef SYS_SOLARIS9 #include <stdint.h> +#endif #define DBG_DBG 8 #define DBG_INFO 16 diff --git a/radsecproxy.c b/radsecproxy.c index d4a2fc8..a4ffed8 100644 --- a/radsecproxy.c +++ b/radsecproxy.c @@ -34,6 +34,9 @@ #include <netdb.h> #include <string.h> #include <unistd.h> +#ifdef SYS_SOLARIS9 +#include <fcntl.h> +#endif #include <sys/time.h> #include <sys/types.h> #include <arpa/inet.h> @@ -2768,6 +2771,23 @@ void getargs(int argc, char **argv, uint8_t *foreground, uint8_t *pretend, uint8 exit(1); } +#ifdef SYS_SOLARIS9 +int daemon(int a, int b) { + int i; + + if (fork()) + exit(0); + + setsid(); + + for (i = 0; i < 3; i++) { + close(i); + open("/dev/null", O_RDWR); + } + return 1; +} +#endif + int main(int argc, char **argv) { pthread_t udpserverth, udpaccserverth, udpclient4rdth, udpclient6rdth; struct list_node *entry; |