home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / protocol / time / ntp / 1175 < prev    next >
Encoding:
Text File  |  1993-01-09  |  2.2 KB  |  51 lines

  1. Newsgroups: comp.protocols.time.ntp
  2. Path: sparky!uunet!haven.umd.edu!darwin.sura.net!paladin.american.edu!howland.reston.ans.net!usc!rpi!newsserver.pixel.kodak.com!laidbak!stevea
  3. From: stevea@i88.isc.com (Steve Alexander)
  4. Subject: Re: Does anyone have a port of XNTP3 for SVR4.
  5. Message-ID: <1993Jan09.185833.1342@i88.isc.com>
  6. Sender: usenet@i88.isc.com (Usenet News)
  7. Nntp-Posting-Host: ozzy.i88.isc.com
  8. Organization: Lachman Technology, Inc., Naperville, IL
  9. References: <C0GEEn.FKD@agora.rain.com>
  10. Date: Sat, 09 Jan 1993 18:58:33 GMT
  11. Lines: 38
  12.  
  13. In article <C0GEEn.FKD@agora.rain.com> rgrimes@agora.rain.com (Rodney Grimes) writes:
  14. >Hi,
  15. >I am trying to get XNTP V3 running on a SVR4 system.  I got it to
  16. >compile and I can talk to it with xntpdc and ntpq.  It seems to 
  17. >come up and get the time from the servers I have listed and then
  18. >it just sits, it never seems to talk to the other servers again.
  19.  
  20. I haven't looked at XNTP V3 yet, but we had problems with XNTP V2 on SVR4
  21. because of socket operations being done from the SIGIO handler.  On SVR4,
  22. SIGIO is defined as SIGPOLL.  Due to the design of the socket emulation 
  23. package, the socket library uses SIGPOLL for its own purposes, and there is a 
  24. bizarre sequence of events that can cause you to come out of the signal 
  25. handler for SIGIO with SIGIO held.  It's something like:
  26.  
  27.     sigset(SIGIO, input_handler)
  28.     ...
  29.     input_handler() (called due to SIGIO) at this point, SIGIO is SIG_HOLD,
  30.         because you are in the handler
  31.     recvfrom()
  32.         -- set SIGPOLL to SIG_IGN and save the old value
  33.         -- do socket stuff
  34.         -- reset SIGIO to old value, which is SIG_HOLD
  35.     return from input_handler with SIGIO held
  36.  
  37. This is bad, because you will never find out about messages on your sockets
  38. again.  The fix was to do a sigset(SIGIO, handler) before exiting the SIGIO
  39. handler.  Sigrelse(SIGIO) might work too, but I don't remember the exact
  40. details anymore.
  41.  
  42. As I said, I haven't looked at XNTP V3, so this may be useless information,
  43. but we did see similar problems with V2, so you may want to look for this
  44. sort of behavior.  I believe that ntpdate had a similar problem.
  45.  
  46. Good luck,
  47. -- Steve
  48. -- 
  49. Steve Alexander, Lachman Technology, Inc. | stevea@isc.com
  50. (708) 505-9555 x256 FAX: (708) 505-9574      | ...!{sun,ico}!laidbak!stevea
  51.