File:  [DVB] / dietlibc / lib / siginterrupt.c
Revision 1.1: download - view: text, annotated - select for diffs
Mon Jul 23 18:43:19 2001 UTC (22 years, 10 months ago) by olaf
Branches: MAIN
CVS tags: finnland_test_200301, branch_rc14_fieldtest_finnland, branch_rc13_fieldtest_finnland, branch_rc12_fieldtest_finnland, branch_rc10_fieldtest_finnland, RELEASE_finnland_200301_1, RC12_FIELDTEST_FINNLAND, RC10_FIELDTEST_FINNLAND, HEAD
- now the signal handling in the dietlibc uses the rt_sig* syscalls (less
  pain with different archs).

- rewrote the sig*set functions (some were all the way to black...).

#include <signal.h>

int siginterrupt(int sig, int flag) {
  int ret;
  struct sigaction act;

  sigaction(sig, 0, &act);

  if (flag)
    act.sa_flags &= ~SA_RESTART;
  else
    act.sa_flags |= SA_RESTART;

  ret = sigaction(sig, &act, 0);

  return ret;
}

LinuxTV legacy CVS <linuxtv.org/cvs>