]> git.sur5r.net Git - openldap/blobdiff - include/ac/signal.h
ITS#2202, set SASL_SUCCESS_DATA on sasl_server_new().
[openldap] / include / ac / signal.h
index f2ca1b13a182f8432a0b1daaf6c631b13dd24b39..4e689326441ccef1f81c27f7e29af3d28fa739d4 100644 (file)
@@ -1,13 +1,14 @@
 /* Generic signal.h */
 /* $OpenLDAP$ */
 /*
- * Copyright 1998,1999 The OpenLDAP Foundation, Redwood City, California, USA
+ * Copyright 1998-2002 The OpenLDAP Foundation, Redwood City, California, USA
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms are permitted only
- * as authorized by the OpenLDAP Public License.  A copy of this
- * license is available at http://www.OpenLDAP.org/license.html or
- * in file LICENSE in the top-level directory of the distribution.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted only as authorized by the OpenLDAP
+ * Public License.  A copy of this license is available at
+ * http://www.OpenLDAP.org/license.html or in file LICENSE in the
+ * top-level directory of the distribution.
  */
 
 #ifndef _AC_SIGNAL_H
 #include <signal.h>
 
 #undef SIGNAL
-#ifdef HAVE_SIGSET
+
+#if defined( HAVE_SIGACTION )
+#define SIGNAL lutil_sigaction
+typedef void (*lutil_sig_t)(int);
+LDAP_LUTIL_F(lutil_sig_t) lutil_sigaction( int sig, lutil_sig_t func );
+#define SIGNAL_REINSTALL(sig,act)      (void)0
+#elif defined( HAVE_SIGSET )
 #define SIGNAL sigset
+#define SIGNAL_REINSTALL sigset
 #else
 #define SIGNAL signal
+#define SIGNAL_REINSTALL signal
 #endif
 
 #if !defined( LDAP_SIGUSR1 ) || !defined( LDAP_SIGUSR2 )
 
 #      else
                /*
-               LinuxThreads implemented unfortunately uses the only
-               two signals reserved for user applications.  This forces
-               OpenLDAP to use, hopefullly unused, signals reserved
-               for other uses.
-               */
-           
+                * Some versions of LinuxThreads unfortunately uses the only
+                * two signals reserved for user applications.  This forces
+                * OpenLDAP to use other signals reserved for other uses.
+                */
+
 #              if defined( SIGSTKFLT )
 #                      define LDAP_SIGUSR1     SIGSTKFLT
 #              elif defined ( SIGSYS )