xref: /freebsd/contrib/ntp/html/hints/hpux (revision d6b92ffa)
1Last update: Sun Mar 13 15:05:31 PST 1994
2
3This file hopefully describes the whatever and however of how to get xntp
4running on hpux 7.0 and later s300. s400, s700, and s800.
5
6First off,  all the standard disclaimers hold here ... HP doesn't have anthing
7to do with this stuff.  I fool with it in my spare time because we use it and
8because I like to.  We just happen to have a lot of HP machines around here :-)
9Xntpd has been in use here for several years and has a fair amount of mileage
10on various HP platforms within the company.  I can't really guarantee bug fixes
11but I'd certainly like to hear about bugs and I won't hestitate to look at
12any fixes sent to me.
13
14Now lets talk OS.  If you don't have 7.0 or later, pretty much hang it up now.
15This stuff has run here on pretty much everything from 8.0 upward on s300,
16s700, and s800.  It is known to run on 7.0 s300/s400 but all reports are
17from the field and not my personal experience.
18
19If you are lucky enough to have a s300 or s400 with 9.03, then you no longer
20have to worry about adjtimed as HP-UX now has adjtime(2).  The rest of you
21will have to wait on 10.0 which will have adjtime(2) and a supported though
22a bit older version of xntpd.
23
24Next, let me explain a bit about how this stuff works on HP-UX's that do not
25have adjtime(2).  The directory adjtime contains libadjtime.a and the adjtimed
26daemon.  Instead of the adjtime(2) system call, we use a library routine to
27talk to adjtimed thru message queues.  Adjtimed munges into /dev/kmem and
28causes the clock to skew properly as needed.  PLEASE NOTE that the adjtime
29code provided here is NOT a general replacement for adjtime(2) ... use of
30this adjtime(3)/adjtimed(8) other than with xntpd may yield very odd results.
31
32What to do to get this stuff running ?
33
34    * If you are running an OS less than 10.0 or do not have a s300/s400
35      with 9.03 or better
36	-> cd machines
37	-> vi hpux
38	-> (change -DSYS_HPUX=? to match whatever you are running [7,8,9])
39	-> cd ..
40
41    * Say "make makeconfig"
42
43    * Say "make", sit back for a few minutes.
44
45    * cd authstuff
46	* Say "./authcert < certdata" and check the output.  Every line should
47	  end with "OK" ... if not, we got trouble.
48	* Now try "./authspeed auth.samplekeys".  What we want to
49	  remember here is the "authentication delay in CPU time"
50	* cd ..
51
52    * Say "make install"
53
54    * I'd suggest reading the xntp docs about now :-) ... seriously !!
55
56    * One thing I have added to this version of xntpd is a way to select
57      config files if you are sharing /usr/local thru NFS or whatever.
58      If the file /usr/local/etc/xntp.conf happens to be a directory, the
59      files in that directory are searched until a match is found.  The
60      rules for a match are:
61
62	1. Our hostname
63	2. default.<machine id> (as in default.375 or default.850)
64	3. default
65
66    * Ok, make sure adjtimed is running (just start it up for now with
67      "/usr/local/etc/adjtimed").  Using -z as an option will get you
68      a usage message.
69
70    * Now start up xntpd and watch it work.
71
72    * Make sure that adjtimed gets started at boot right before xntpd.
73      We do this in /etc/netbsdsrc.  They must both run as root !!
74
75Possible problems ?
76
77    * On some 320's and 835's we have had to run adjtimed with "-p 45" or
78      so to get rid of syslog messages about "last adjust did not finish".
79
80    * At 9.0, there is a problem with DIAGMON (patch available from the
81      response center) which causes it to delete the message queue that
82      adjtimed/xntpd use to communicate. (see next note for result)
83
84    * Xntpd has been known to get really ticked off when adjtime() fails
85      which is usually only while running the emulation code on HP-UX.
86      When it gets mad, it usually jumps the clock into never never land.
87      Possible reasons for this are adjtimed being killed or just never
88      started or adjtimed being completely swapped out on a really busy
89      machine (newer adjtimed try to lock themselves in memory to prevent
90      this one).
91
92Anything else ... just drop me a line at ken@sdd.hp.com
93
94Received: from louie.udel.edu by huey.udel.edu id aa14418; 15 Jun 95 9:19 EDT
95Received: from host5.colby.edu (host-05.colby.edu) by host-04.colby.edu with ESMTP  (1.37.109.15/Colby 1.1)
96	id AA165442355; Thu, 15 Jun 1995 09:19:16 -0400
97Received: by host5.colby.edu  (1.37.109.15/Colby 1.1)
98	id AA056252339; Thu, 15 Jun 1995 09:18:59 -0400
99Date: Thu, 15 Jun 1995 09:18:59 -0400 (EDT)
100From: "Jeff A. Earickson" <jaearick@colby.edu>
101To: Mills@huey.udel.edu
102Subject: More minor bugs in xntp3.4s
103In-Reply-To: <9506150022.aa12727@huey.udel.edu>
104Message-Id: <Pine.HPP.3.91.950615083549.4557A-100000@host5.colby.edu>
105Mime-Version: 1.0
106Content-Type: TEXT/PLAIN; charset=US-ASCII
107
108Dave,
109   After reading the hpux hints file, I realized I didn't install or
110start adjtimed.  In the course of doing this, I discovered that:
111
112--> $(TOP) is not defined in adjtime/Makefile, so "make install" can't
113    find the install.sh script.
114
115--> "make install" from the main Makefile never goes into the adjtime
116    directory, so I added the following two lines into the install
117    target of the main Makefile:
118
119    @echo installing from adjtime
120    @cd adjtime && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" install
121
122This twiddle may not be right for all systems, but it got adjtimed
123installed for me.
124
125   You might also want to add to the hpux hints file that one way to
126fire things up at boot time is to add the following lines to the localrc
127function of /etc/rc:
128
129    #---daemons for Network Time Protocol (version 3.4s)
130    #---note that adjtimed is only needed for HP-UX 9.X, not 10.0
131    #---adjtimed must be running or xntpd won't work right...
132    if [ -x /usr/local/bin/adjtimed ]; then
133        /usr/local/bin/adjtimed -r & echo -n ' adjtimed'
134        if [ -x /usr/local/bin/xntpd ]; then
135            /usr/local/bin/xntpd &    echo -n ' xntpd'
136        fi
137    fi
138
139I discovered that the "-r" option of adjtimed is needed to clear out any
140trash from a previous execution of it.  Otherwise adjtimed quietly dies
141and leaves xntpd in the lurch...
142
143Thanks for the help.
144
145** Jeff A. Earickson, Ph.D                         PHONE: 207-872-3659
146** Senior UNIX Sysadmin, Information Technology    EMAIL: jaearick@colby.edu
147** Colby College, 4214 Mayflower Hill,               FAX: 207-872-3555
148** Waterville ME, 04901-8842
149
150On Thu, 15 Jun 1995 Mills@huey.udel.edu wrote:
151
152> Jeff,
153>
154> Read the hpux file in the hints directory.
155>
156> Dave
157>
158
159