projects
/
tinc
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use enums for command-line options
[tinc]
/
src
/
dropin.c
diff --git
a/src/dropin.c
b/src/dropin.c
index
a4f7a65
..
d086ae1
100644
(file)
--- a/
src/dropin.c
+++ b/
src/dropin.c
@@
-1,7
+1,7
@@
/*
dropin.c -- a set of drop-in replacements for libc functions
Copyright (C) 2000-2005 Ivo Timmermans,
/*
dropin.c -- a set of drop-in replacements for libc functions
Copyright (C) 2000-2005 Ivo Timmermans,
- 2000-20
16
Guus Sliepen <guus@tinc-vpn.org>
+ 2000-20
22
Guus Sliepen <guus@tinc-vpn.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@
-20,7
+20,9
@@
#include "system.h"
#include "system.h"
+#ifndef HAVE_ASPRINTF
#include "xalloc.h"
#include "xalloc.h"
+#endif
#ifndef HAVE_DAEMON
/*
#ifndef HAVE_DAEMON
/*
@@
-50,8
+52,9
@@
int daemon(int nochdir, int noclose) {
}
/* If we are the parent, terminate */
}
/* If we are the parent, terminate */
- if(pid)
+ if(pid)
{
exit(0);
exit(0);
+ }
/* Detach by becoming the new process group leader */
if(setsid() < 0) {
/* Detach by becoming the new process group leader */
if(setsid() < 0) {
@@
-81,6
+84,8
@@
int daemon(int nochdir, int noclose) {
return 0;
#else
return 0;
#else
+ (void)nochdir;
+ (void)noclose;
return -1;
#endif
}
return -1;
#endif
}
@@
-108,8
+113,9
@@
int vasprintf(char **buf, const char *fmt, va_list ap) {
status = vsnprintf(*buf, len, fmt, aq);
va_end(aq);
status = vsnprintf(*buf, len, fmt, aq);
va_end(aq);
- if(status >= 0)
+ if(status >= 0)
{
*buf = xrealloc(*buf, status + 1);
*buf = xrealloc(*buf, status + 1);
+ }
if(status > len - 1) {
len = status + 1;
if(status > len - 1) {
len = status + 1;
@@
-124,7
+130,7
@@
int vasprintf(char **buf, const char *fmt, va_list ap) {
#ifndef HAVE_GETTIMEOFDAY
int gettimeofday(struct timeval *tv, void *tz) {
#ifndef HAVE_GETTIMEOFDAY
int gettimeofday(struct timeval *tv, void *tz) {
-#ifdef HAVE_
MINGW
+#ifdef HAVE_
WINDOWS
FILETIME ft;
GetSystemTimeAsFileTime(&ft);
uint64_t lt = (uint64_t)ft.dwLowDateTime | ((uint64_t)ft.dwHighDateTime << 32);
FILETIME ft;
GetSystemTimeAsFileTime(&ft);
uint64_t lt = (uint64_t)ft.dwLowDateTime | ((uint64_t)ft.dwHighDateTime << 32);
@@
-140,9
+146,11
@@
int gettimeofday(struct timeval *tv, void *tz) {
}
#endif
}
#endif
-#ifndef HAVE_NANOSLEEP
-int nanosleep(const struct timespec *req, struct timespec *rem) {
- struct timeval tv = {req->tv_sec, req->tv_nsec / 1000};
- return select(0, NULL, NULL, NULL, &tv);
-}
+bool sleep_millis(unsigned int ms) {
+#ifdef _MSC_VER
+ Sleep(ms);
+ return true;
+#else
+ return !usleep(ms * 1000);
#endif
#endif
+}