Import selfpipe code from skalibs 1.2.5

[andersk@mit.edu: Move code to new third/libstddjb directory]
This commit is contained in:
Quentin Smith
2012-02-26 15:58:37 -05:00
committed by Keith Winstein
parent 9a3ab83783
commit 77f3a9073f
24 changed files with 697 additions and 0 deletions
+35
View File
@@ -0,0 +1,35 @@
/* ISC license. */
/* MT-unsafe */
#include <signal.h>
#include "sysdeps.h"
#include "djbunix.h"
#include "selfpipe-internal.h"
#include "selfpipe.h"
#ifdef HASSIGNALFD
void selfpipe_finish (void)
{
sigprocmask(SIG_UNBLOCK, &selfpipe_caught, 0) ;
sigemptyset(&selfpipe_caught) ;
fd_close(selfpipe_fd) ;
selfpipe_fd = -1 ;
}
#else
#include "sig.h"
#include "nsig.h"
void selfpipe_finish (void)
{
sig_restoreto(&selfpipe_caught, NSIG) ;
sigemptyset(&selfpipe_caught) ;
fd_close(selfpipe[1]) ;
fd_close(selfpipe[0]) ;
selfpipe[0] = selfpipe[1] = -1 ;
}
#endif