summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog-97a7
-rw-r--r--ace/OS.i23
2 files changed, 16 insertions, 14 deletions
diff --git a/ChangeLog-97a b/ChangeLog-97a
index 65adb7fc24c..fb8c05eeea6 100644
--- a/ChangeLog-97a
+++ b/ChangeLog-97a
@@ -1,3 +1,10 @@
+Fri May 16 11:39:51 1997 Nanbor Wang <nw1@cs.wustl.edu>
+
+ * ace/OS.i (sigaddset, sigdelset, sigemptyset, sigfillset,
+ sigismember): Added implementation when ACE_LACKS_SIGSET so that
+ platforms (NT?) without these functions can still manipulate
+ sigset_t variables.
+
Thu May 15 22:19:59 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
* examples/ASX/Event_Server/Event_Server: Removed the THR_DETACHED
diff --git a/ace/OS.i b/ace/OS.i
index 0835407ab04..2f5ac27ce83 100644
--- a/ace/OS.i
+++ b/ace/OS.i
@@ -6790,9 +6790,8 @@ ACE_OS::sigaddset (sigset_t *s, int signum)
#if !defined (ACE_LACKS_SIGSET)
ACE_OSCALL_RETURN (::sigaddset (s, signum), int, -1);
#else
- ACE_UNUSED_ARG (s);
- ACE_UNUSED_ARG (signum);
- ACE_NOTSUP_RETURN (-1);
+ *s |= (1 << (signum-1)) ;
+ return 0 ;
#endif /* !ACE_LACKS_SIGSET */
}
@@ -6802,9 +6801,8 @@ ACE_OS::sigdelset (sigset_t *s, int signum)
#if !defined (ACE_LACKS_SIGSET)
ACE_OSCALL_RETURN (::sigdelset (s, signum), int, -1);
#else
- ACE_UNUSED_ARG (s);
- ACE_UNUSED_ARG (signum);
- ACE_NOTSUP_RETURN (-1);
+ *s &= ~(1 << (signum-1)) ;
+ return 0 ;
#endif /* !ACE_LACKS_SIGSET */
}
@@ -6814,8 +6812,8 @@ ACE_OS::sigemptyset (sigset_t *s)
#if !defined (ACE_LACKS_SIGSET)
ACE_OSCALL_RETURN (::sigemptyset (s), int, -1);
#else
- ACE_UNUSED_ARG (s);
- ACE_NOTSUP_RETURN (-1);
+ *s = 0 ;
+ return 0 ;
#endif /* !ACE_LACKS_SIGSET */
}
@@ -6825,9 +6823,8 @@ ACE_OS::sigfillset (sigset_t *s)
#if !defined (ACE_LACKS_SIGSET)
ACE_OSCALL_RETURN (::sigfillset (s), int, -1);
#else
- ACE_UNUSED_ARG (s);
- ACE_NOTSUP_RETURN (0);
- ACE_NOTSUP_RETURN (-1);
+ *s = ~(sigset_t) 0 ;
+ return 0 ;
#endif /* !ACE_LACKS_SIGSET */
}
@@ -6837,9 +6834,7 @@ ACE_OS::sigismember (sigset_t *s, int signum)
#if !defined (ACE_LACKS_SIGSET)
ACE_OSCALL_RETURN (::sigismember (s, signum), int, -1);
#else
- ACE_UNUSED_ARG (s);
- ACE_UNUSED_ARG (signum);
- ACE_NOTSUP_RETURN (-1);
+ return ((*s & ~(1 << (signum-1))) != 0) ;
#endif /* !ACE_LACKS_SIGSET */
}