home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 18 REXX / 18-REXX.zip / NTP.ZIP / ntp.cmd next >
OS/2 REXX Batch file  |  1993-04-13  |  1KB  |  65 lines

  1. /* REXX NTP Client
  2.    (C) 1993 by Steve Luzynski
  3.  
  4.    Revision history:
  5.    V.1 - Initial Release
  6.  
  7.    This program requires the rxSock dll function library, available
  8.    anywhere IBM EWS is found.
  9. */
  10.  
  11. trace on
  12.  
  13. /* setup socket package */
  14. if RxFuncQuery("SockLoadFuncs") then
  15. do
  16.   rc = RxFuncAdd("SockLoadFuncs", "RxSock", "SockLoadFuncs")
  17.   rc = SockLoadFuncs()
  18. end
  19.  
  20. /* get ntp server address */
  21. rc = SockGetHostByName("slc13.ins.cwru.edu", "host.!")
  22. if (rc = 0) then
  23. do
  24.   say "Unable to resolve name of ntp server."
  25.   exit
  26. end
  27.  
  28. server = host.!addr
  29.  
  30. /* open a socket to the server */
  31. sock = SockSocket("AF_INET", "SOCK_STREAM", "IPPROTO_TCP")
  32. if (sock = -1) then
  33. do
  34.   say "Error opening socket: " errno
  35.   exit
  36. end
  37.  
  38. /* connect to server */
  39. server.!family = "AF_INET"
  40. server.!port   = 13
  41. server.!addr   = server
  42.  
  43. rc = SockConnect(sock, "server.!")
  44. if (sock = -1) then
  45. do
  46.   say "Error connecting socket: " errno
  47.   exit
  48. end
  49.  
  50. rc = SockRecv(sock, "data", 8000)
  51.  
  52. parse var data d1 d2 d3 d4 d5
  53.  
  54. say "Time set to" d4
  55.  
  56. time d4
  57.  
  58. rc = SockSend(sock, "quit")
  59. rc = SockSoClose(sock)
  60. exit
  61.  
  62.  
  63.  
  64.  
  65.