Index: fusl/src/signal/siginterrupt.c |
diff --git a/fusl/src/signal/siginterrupt.c b/fusl/src/signal/siginterrupt.c |
new file mode 100644 |
index 0000000000000000000000000000000000000000..70063400325c0f74f82235ffc4b9440dd4e264f2 |
--- /dev/null |
+++ b/fusl/src/signal/siginterrupt.c |
@@ -0,0 +1,12 @@ |
+#include <signal.h> |
+ |
+int siginterrupt(int sig, int flag) |
+{ |
+ struct sigaction sa; |
+ |
+ sigaction(sig, 0, &sa); |
+ if (flag) sa.sa_flags &= ~SA_RESTART; |
+ else sa.sa_flags |= SA_RESTART; |
+ |
+ return sigaction(sig, &sa, 0); |
+} |