[PATCH 38/42] tools/nolibc/unistd: add usleep()

From: Willy Tarreau
Date: Mon Feb 07 2022 - 11:34:00 EST


This call is trivial to implement based on select() to complete sleep()
and msleep(), let's add it.

Signed-off-by: Willy Tarreau <w@xxxxxx>
---
tools/include/nolibc/unistd.h | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/tools/include/nolibc/unistd.h b/tools/include/nolibc/unistd.h
index 87b448ff2191..1c25e20ee360 100644
--- a/tools/include/nolibc/unistd.h
+++ b/tools/include/nolibc/unistd.h
@@ -37,6 +37,14 @@ unsigned int sleep(unsigned int seconds)
return 0;
}

+static __attribute__((unused))
+int usleep(unsigned int usecs)
+{
+ struct timeval my_timeval = { usecs / 1000000, usecs % 1000000 };
+
+ return sys_select(0, 0, 0, 0, &my_timeval);
+}
+
static __attribute__((unused))
int tcsetpgrp(int fd, pid_t pid)
{
--
2.35.1