home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / std_unix / volume.31 / text0036.txt < prev    next >
Encoding:
Text File  |  1993-07-15  |  1.9 KB  |  48 lines

  1. Submitted-by: willcox@urbana.mcd.mot.com (David A Willcox)
  2.  
  3. This is in reply to a posting on 25 Feb by salevin@dal.mobile.com.
  4. Unfortunately, my system has long since purged that message, and I
  5. have only a hard copy.
  6.  
  7. The original message said, in effect, that POSIX requires read to
  8. return -1 and set errno to EINTR if it is interrupted by a job control
  9. signal before transferring any data.  This caused the poster's csh job
  10. (which contained a pipeline) to die when suspended.
  11.  
  12. This issue was discussed today at the POSIX.1 meeting.  While I think
  13. that I have captured the consensus of the group, you should take this
  14. as my personal opinion, and not anything official from the IEEE.  If
  15. you want something official, you'll have to ask the IEEE for an
  16. interpretation request.  (This certainly is not an official Motorola
  17. position, either.)
  18.  
  19. I think that the failure described here is due to a misunderstanding
  20. of the phrase "interrupted by a signal."  The description of read() does
  21. contain the sentence:
  22.  
  23.     If a read() is interrupted by a signal before it reads any data, it
  24.     shall return -1 with errno set to [EINTR].
  25.  
  26. However, see subclause 3.3.1.4, which describes the effects of signals
  27. on other functions, and contains:
  28.  
  29.     If the action of the signal is to invoke a signal-catching
  30.     function, ... the original function is said to be *interrupted* by
  31.     the signal.
  32.  
  33. This, and other wording in 3.3.1.4 makes it clear, I think, that the
  34. bit about EINTR in the description of read() does not apply to job
  35. control signals that were not caught.
  36.  
  37. I'd suggest that the original poster point this out to the vendor's
  38. customer support people.
  39.  
  40. David A. Willcox        "Just say 'NO' to universal drug testing"
  41. Motorola MCG - Urbana        UUCP: ...!uiucuxc!udc!willcox
  42. 1101 E. University Ave.        INET: willcox@urbana.mcd.mot.com
  43. Urbana, IL 61801        FONE: 217-384-8534
  44.  
  45.  
  46. Volume-Number: Volume 31, Number 40
  47.  
  48.