summaryrefslogtreecommitdiffstats
path: root/cpukit/posix/src/psignal.c
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1995-09-26 19:27:15 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1995-09-26 19:27:15 +0000
commit5e9b32b439627068a0292370fe595220dbfc95a0 (patch)
tree3740b62de3aaa10140867de33adad9a1fcc15b26 /cpukit/posix/src/psignal.c
parentfixed Id strings (diff)
downloadrtems-5e9b32b439627068a0292370fe595220dbfc95a0.tar.bz2
posix support initially added
Diffstat (limited to 'cpukit/posix/src/psignal.c')
-rw-r--r--cpukit/posix/src/psignal.c261
1 files changed, 261 insertions, 0 deletions
diff --git a/cpukit/posix/src/psignal.c b/cpukit/posix/src/psignal.c
new file mode 100644
index 0000000000..48701c3880
--- /dev/null
+++ b/cpukit/posix/src/psignal.c
@@ -0,0 +1,261 @@
+/* signal.c
+ *
+ */
+
+#include <signal.h>
+
+#include <rtems/score/thread.h>
+
+#ifdef NOT_IMPLEMENTED_YET
+
+/*
+ * 3.3.2 Send a Signal to a Process, P1003.1b-1993, p. 68
+ *
+ * NOTE: Behavior of kill() depends on _POSIX_SAVED_IDS.
+ */
+
+int kill(
+ int pid_t,
+ int sig
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.3 Manipulate Signal Sets, P1003.1b-1993, p. 69
+ */
+
+int sigemptyset(
+ sigset_t *set
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.3 Manipulate Signal Sets, P1003.1b-1993, p. 69
+ */
+
+int sigfillset(
+ sigset_t *set
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.3 Manipulate Signal Sets, P1003.1b-1993, p. 69
+ */
+
+int sigaddset(
+ sigset_t *set,
+ int signo
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.3 Manipulate Signal Sets, P1003.1b-1993, p. 69
+ */
+
+int sigdelset(
+ sigset_t *set,
+ int signo
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.3 Manipulate Signal Sets, P1003.1b-1993, p. 69
+ */
+
+int sigismembet(
+ const sigset_t *set,
+ int signo
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.4 Examine and Change Signal Action, P1003.1b-1993, p. 70
+ */
+
+int sigaction(
+ int sig,
+ const struct sigaction *act,
+ struct sigaction *oact
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.5 Examine and Change Blocked Signals, P1003.1b-1993, p. 73
+ *
+ * NOTE: P1003.1c/D10, p. 37 adds pthread_sigmask().
+ */
+
+int sigprocmask(
+ int how,
+ const sigset_t *set,
+ sigset_t *oset
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.5 Examine and Change Blocked Signals, P1003.1b-1993, p. 73
+ *
+ * NOTE: P1003.1c/D10, p. 37 adds pthread_sigmask().
+ */
+
+int pthread_sigmask(
+ int how,
+ const sigset_t *set,
+ sigset_t *oset
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.6 Examine Pending Signals, P1003.1b-1993, p. 75
+ */
+
+int sigpending(
+ sigset_t *set
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.7 Wait for a Signal, P1003.1b-1993, p. 75
+ */
+
+int sigsuspend(
+ const sigset_t *sigmask
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.8 Synchronously Accept a Signal, P1003.1b-1993, p. 76
+ *
+ * NOTE: P1003.1c/D10, p. 39 adds sigwait().
+ */
+
+int sigwaitinfo(
+ const sigset_t *set,
+ siginfo_t *info
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.8 Synchronously Accept a Signal, P1003.1b-1993, p. 76
+ *
+ * NOTE: P1003.1c/D10, p. 39 adds sigwait().
+ */
+
+int sigtimedwait(
+ const sigset_t *set,
+ siginfo_t *info,
+ const struct timespec *timeout
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.8 Synchronously Accept a Signal, P1003.1b-1993, p. 76
+ *
+ * NOTE: P1003.1c/D10, p. 39 adds sigwait().
+ */
+
+int sigwait(
+ const sigset_t *set,
+ int *sig
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.9 Queue a Signal to a Process, P1003.1b-1993, p. 78
+ */
+
+int sigqueue(
+ pid_t pid,
+ int signo,
+ const union sigval value
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.3.10 Send a Signal to a Thread, P1003.1c/D10, p. 43
+ */
+
+int pthread_kill(
+ pthread_t thread,
+ int sig
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.4.1 Schedule Alarm, P1003.1b-1993, p. 79
+ */
+
+unsigned int alarm(
+ unsigned int seconds
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+/*
+ * 3.4.2 Suspend Process Execution, P1003.1b-1993, p. 80
+ */
+
+int pause( void )
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+#endif
+
+/*
+ * 3.4.3 Delay Process Execution, P1003.1b-1993, p. 73
+ */
+
+unsigned int sleep(
+ unsigned int seconds
+)
+{
+ _Thread_Disable_dispatch();
+ _Thread_Set_state( _Thread_Executing, STATES_WAITING_FOR_TIME );
+ _Watchdog_Initialize(
+ &_Thread_Executing->Timer,
+ _Thread_Delay_ended, /* XXX may need to be POSIX specific */
+ _Thread_Executing->Object.id,
+ NULL
+ );
+ _Watchdog_Insert_seconds(
+ &_Thread_Executing->Timer,
+ seconds,
+ WATCHDOG_ACTIVATE_NOW
+ );
+ _Thread_Enable_dispatch();
+ return 0; /* XXX should account for signal */
+}