diff options
Diffstat (limited to 'radsecproxy.c')
-rw-r--r-- | radsecproxy.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/radsecproxy.c b/radsecproxy.c index 2f3c99b..f6cbaa1 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; |