Home | History | Annotate | Download | only in pthread_sigmask
      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
      5 equivalent to sigprocmask( ), but with the ability to be used in a thread of a multi-threaded
      6 process.
      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
     10 thread of a single-threaded process.
     11   </assertion>
     12   <assertion id="3" tag="ref:XSH6:35402:35403 pt:CX pt:THR">
     13 The argument set points to a set of signals to be used to change the currently blocked set, unless the
     14 argument 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
     18 of 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
     25 pointed 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
     29 pointer.
     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
     33 thus the call can be used to enquire about currently blocked signals, if the argument set is a null
     34 pointer.
     35   </assertion>
     36   <assertion id="9" tag="ref:XSH6:35415:35416 pt:CX pt:THR">
     37 After the call to sigprocmask(), if there are any pending unblocked signals, at least one of those
     38 signals shall be delivered before the call to sigprocmask() returns.
     39   </assertion>
     40   <assertion id="10" tag="ref:XSH6:35417:35418 pt:CX pt:THR">
     41 The system shall not allow the blocking of signals which cannot be ignored, and shall not cause an error
     42 to be indicated.
     43   </assertion>
     44   <assertion id="11" tag="ref:XSH6:35419:35421 pt:CX pt:THR">
     45 If any of the SIGFPE, SIGILL, SIGSEGV, or SIGBUS signals are generated while they are blocked, and the
     46 signal 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">
     52 In 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">
     55 pthread_sigmask( ) shall return 0, Upon successful completion; otherwise, it shall return the corresponding
     56 error number.
     57   </assertion>
     58   <assertion id="15" tag="ref:XSH6:35427:35428 pt:CX pt:THR">
     59 sigprocmask( ) shall return 0, Upon successful completion; otherwise, it shall return -1
     60 and 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
     64 value of
     65 the 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
     69 the 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