• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<assertions>
2  <assertion id="1" tag="ref:XSH6:35397:35399 pt:CX pt:THR">
3     pthread_sigmask( ) function is used to examine or change (or both) the calling thread's signal
4     mask, independent of the number of threads the process contains. The function shall be
5equivalent to sigprocmask( ), but with the ability to be used in a thread of a multi-threaded
6process.
7  </assertion>
8  <assertion id="2" tag="ref:XSH6:35400:35401 pt:CX">
9	The sigprocmask( ) function is used to examine or change (or both) the signal mask of the calling
10thread of a single-threaded process.
11  </assertion>
12  <assertion id="3" tag="ref:XSH6:35402:35403 pt:CX pt:THR">
13The argument set points to a set of signals to be used to change the currently blocked set, unless the
14argument is a null pointer.
15  </assertion>
16  <assertion id="4" tag="ref:XSH6:35406:35407 pt:CX pt:THR">
17 The resulting set shall be the union of the current set and the signal set pointed to by set, if the value
18of the argument how is SIG_BLOCK.
19  </assertion>
20  <assertion id="5" tag="ref:XSH6:35408:35408 pt:CX pt:THR">
21 The resulting set shall be the signal set pointed to by set, if the value of the argument how is SIG_SETMASK
22  </assertion>
23  <assertion id="6" tag="ref:XSH6:35409:35410 pt:CX pt:THR">
24 The resulting set shall be the intersection of the current set and the complement of the signal set
25pointed to by set, if the value of the argument how is SIG_UNBLOCK
26  </assertion>
27  <assertion id="7" tag="ref:XSH6:35411:35412 pt:CX pt:THR">
28  The previous mask shall be stored in the location pointed to by oset, if the argument oset is not a null
29pointer.
30  </assertion>
31  <assertion id="8" tag="ref:XSH6:35412:35414 pt:CX pt:THR">
32  The value of the argument how is not significant and the process's signal mask shall be unchanged, and
33thus the call can be used to enquire about currently blocked signals, if the argument set is a null
34pointer.
35  </assertion>
36  <assertion id="9" tag="ref:XSH6:35415:35416 pt:CX pt:THR">
37After the call to sigprocmask(), if there are any pending unblocked signals, at least one of those
38signals shall be delivered before the call to sigprocmask() returns.
39  </assertion>
40  <assertion id="10" tag="ref:XSH6:35417:35418 pt:CX pt:THR">
41The system shall not allow the blocking of signals which cannot be ignored, and shall not cause an error
42to be indicated.
43  </assertion>
44  <assertion id="11" tag="ref:XSH6:35419:35421 pt:CX pt:THR">
45If any of the SIGFPE, SIGILL, SIGSEGV, or SIGBUS signals are generated while they are blocked, and the
46signal was not generated by the kill(), sigqueue() or raise()functions, the result is undefined.
47  </assertion>
48  <assertion id="12" tag="ref:XSH6:35422:35422 pt:CX pt:THR">
49  The thread's signal mask shall not be changed, if sigprocmask( ) fails.
50  </assertion>
51  <assertion id="13" tag="ref:XSH6:35423:35423 pt:CX">
52In a multi-threaded process, the use of the sigprocmask( ) function is unspecified.
53  </assertion>
54  <assertion id="14" tag="ref:XSH6:35425:35426 pt:THR">
55pthread_sigmask( ) shall return 0, Upon successful completion; otherwise, it shall return the corresponding
56error number.
57  </assertion>
58  <assertion id="15" tag="ref:XSH6:35427:35428 pt:CX pt:THR">
59sigprocmask( ) shall return 0, Upon successful completion; otherwise, it shall return -1
60and errno shall be set to indicate the error, and the process' signal mask shall be unchanged.
61  </assertion>
62  <assertion id="16" tag="ref:XSH6:35430:35431 pt:THR">
63   An errno value of [EINVAL] shall be returned and the pthreadsigmask() function shall fail, if the
64value of
65the how argument is not equal to one of the defined values.
66  </assertion>
67  <assertion id="17" tag="ref:XSH6:35430:35431 pt:CX pt:THR">
68   An errno value of [EINVAL] shall be returned and the sigprocmask() function shall fail, if the value of
69the how argument is not equal to one of the defined values.
70  </assertion>
71  <assertion id="18" tag="ref:XSH6:35432:35432 pt:THR">
72  An error code of [EINTR] shall not be returned by the pthread_sigmask( ) function.
73  </assertion>
74</assertions>
75