diff options
Diffstat (limited to 'usr.sbin/xntpd/patches/patch.28')
-rw-r--r-- | usr.sbin/xntpd/patches/patch.28 | 454 |
1 files changed, 454 insertions, 0 deletions
diff --git a/usr.sbin/xntpd/patches/patch.28 b/usr.sbin/xntpd/patches/patch.28 new file mode 100644 index 0000000..37e2065 --- /dev/null +++ b/usr.sbin/xntpd/patches/patch.28 @@ -0,0 +1,454 @@ + +Received: from louie.udel.edu by huey.udel.edu id aa07183; 13 Mar 94 23:57 EST +Received: from hpsdlo.sdd.hp.com by louie.udel.edu id aa17483; + 13 Mar 94 23:50 EST +Received: from hpsdlz.sdd.hp.com by hpsdlo.sdd.hp.com with SMTP + (1.36.108.4/15.5+IOS 3.21+sdd) id AA07032; Sun, 13 Mar 1994 20:50:23 -0800 +Received: from localhost by hpsdlz.sdd.hp.com with SMTP + (1.36.108.4/15.5+IOS 3.21+sdd) id AA05726; Sun, 13 Mar 1994 20:50:21 -0800 +Message-Id: <9403140450.AA05726@hpsdlz.sdd.hp.com> +To: mills@udel.edu +Subject: patches for xntpd +Date: Sun, 13 Mar 1994 20:50:21 -0800 +From: Ken Stone <ken@sdd.hp.com> + + +Ok Dave, + +I guess I'll take a poke at the "m" version for cleanup and updates. This +should take care of the newly released 9.03 for s300/s400 which has the +adjtime(2) syscall. Also, cleanup in readiness for 10.0 all around. + + -- Ken + +P.S. How is your HP hardware/software deal going ? I haven't heard anything + lately. + + + +First do a "rm */hpux10+*" as I have renamed all that to hpux-adj ... that +9.03 blew me out of the water on the naming scheme :-) + +Then unshar the following ... it will add a few new files and give you +diff to apply (diffs.hpux). + + +#---------------------------------- cut here ---------------------------------- +# This is a shell archive. Remove anything before this line, +# then unpack it by saving it in a file and typing "sh file". +# +# Wrapped by Source Hacker <src@hpsdlz> on Sun Mar 13 20:47:57 1994 +# +# This archive contains: +# compilers/hpux-adj.cc compilers/hpux-adj.gcc +# machines/hpux-adj scripts/hpadjtime.sh +# diffs.hpux +# +# Error checking via wc(1) will be performed. +# Error checking via sum(1) will be performed. + +LANG=""; export LANG +PATH=/bin:/usr/bin:$PATH; export PATH + +if sum -r </dev/null >/dev/null 2>&1 +then + sumopt='-r' +else + sumopt='' +fi + +echo x - compilers/hpux-adj.cc +cat >compilers/hpux-adj.cc <<'@EOF' +COMPILER=cc +O1 +@EOF +set `sum $sumopt <compilers/hpux-adj.cc`; if test $1 -ne 22541 +then + echo ERROR: compilers/hpux-adj.cc checksum is $1 should be 22541 +fi +set `wc -lwc <compilers/hpux-adj.cc` +if test $1$2$3 != 1216 +then + echo ERROR: wc results of compilers/hpux-adj.cc are $* should be 1 2 16 +fi + +chmod 644 compilers/hpux-adj.cc + +echo x - compilers/hpux-adj.gcc +cat >compilers/hpux-adj.gcc <<'@EOF' +COMPILER=gcc -O2 +@EOF +set `sum $sumopt <compilers/hpux-adj.gcc`; if test $1 -ne 23593 +then + echo ERROR: compilers/hpux-adj.gcc checksum is $1 should be 23593 +fi +set `wc -lwc <compilers/hpux-adj.gcc` +if test $1$2$3 != 1217 +then + echo ERROR: wc results of compilers/hpux-adj.gcc are $* should be 1 2 17 +fi + +chmod 644 compilers/hpux-adj.gcc + +echo x - machines/hpux-adj +cat >machines/hpux-adj <<'@EOF' +SHELL= /bin/sh +RANLIB= ls # ar does the work of ranlib under System V +DEFS_LOCAL= -DREFCLOCK +DEFS= -DHAVE_TERMIOS -DSYS_HPUX=10 +AUTHDEFS= -DDES -DMD5 +CLOCKDEFS= -DLOCAL_CLOCK +COPTS= +INSTALL=$(TOP)scripts/install.sh +@EOF +set `sum $sumopt <machines/hpux-adj`; if test $1 -ne 42265 +then + echo ERROR: machines/hpux-adj checksum is $1 should be 42265 +fi +set `wc -lwc <machines/hpux-adj` +if test $1$2$3 != 826251 +then + echo ERROR: wc results of machines/hpux-adj are $* should be 8 26 251 +fi + +chmod 644 machines/hpux-adj + +echo x - scripts/hpadjtime.sh +cat >scripts/hpadjtime.sh <<'@EOF' +#! /bin/sh + +if [ -f /bin/uname -o -f /usr/bin/uname ]; then + set `uname -a | tr '[A-Z]' '[a-z]'` + case "$1" in + hp-ux) case "$3" in + *.10.*) val=1 ;; + *.09.03) case "$5" in + 9000/3*) val=1 ;; + *) val=0 ;; + esac ;; + *) val=0 ;; + esac + ;; + *) + esac +fi +exit $val +@EOF +set `sum $sumopt <scripts/hpadjtime.sh`; if test $1 -ne 1497 +then + echo ERROR: scripts/hpadjtime.sh checksum is $1 should be 1497 +fi +set `wc -lwc <scripts/hpadjtime.sh` +if test $1$2$3 != 1850287 +then + echo ERROR: wc results of scripts/hpadjtime.sh are $* should be 18 50 287 +fi + +chmod 755 scripts/hpadjtime.sh + +echo x - diffs.hpux +cat >diffs.hpux <<'@EOF' +*** xntp3.3m.orig/compilers/hpux.cc Thu Sep 2 13:19:56 1993 +--- xntp3.3m/compilers/hpux.cc Sun Mar 13 12:10:23 1994 +*************** +*** 1,2 **** +! COMPILER=cc +! COPTS=+O1 +--- 1 ---- +! COMPILER=cc +O1 +*** xntp3.3m.orig/compilers/hpux.gcc Thu Sep 2 13:19:59 1993 +--- xntp3.3m/compilers/hpux.gcc Sun Mar 13 12:10:29 1994 +*************** +*** 1,2 **** +! COMPILER=gcc +! COPTS=-O2 +--- 1 ---- +! COMPILER=gcc -O2 +*** xntp3.3m.orig/hints/hpux Fri Dec 3 02:28:57 1993 +--- xntp3.3m/hints/hpux Sun Mar 13 20:20:38 1994 +*************** +*** 1,59 **** + This file hopefully describes the whatever and however of how to get xntp +! running on hpux 8.0 and later s300, s700, and s800. + + First off, all the standard disclaimers hold here ... HP doesn't have anthing + to do with this stuff. I fool with it in my spare time because we use it and + because I like to. We just happen to have a lot of HP machines around here :-) +! Xntp has been in use here for several months and has a fair amount of mileage + on various HP platforms within the company. I can't really guarantee bug fixes + but I'd certainly like to hear about bugs and I won't hestitate to look at + any fixes sent to me. + +! Now lets talk OS. If you don't have 8.0 or later, pretty much hang it up now. +! This stuff has run here on 8.0 s300, s700, and s800. Its possible that it +! runs on 7.0 but I have not tried v3 code on 7.0 at all. + +! [Note that recent reports state that this release does in fact run on HP +! 300 and 400 boxes, which run 7.0 - Ed.] + +! Next, let me explain a bit about how this stuff works on HP-UX since we don't + have adjtime(2). The directory adjtime contains libadjtime.a and the adjtimed + daemon. Instead of the adjtime(2) system call, we use a library routine to + talk to adjtimed thru message queues. Adjtimed munges into /dev/kmem and + causes the clock to skew properly as needed. PLEASE NOTE that the adjtime + code provided here is NOT a general replacement for adjtime(2) ... use of +! this adjtime(3)/adjtimed(8) other than here may yield very odd results. + + What to do to get this stuff running ? + +! * cd .. +! * Say "make makeconfig" + +! * cd .. +! * Say "make", sit back for a few minutes. + + * cd authstuff + * Say "./authcert < certdata" and check the output. Every line should + end with "OK" ... if not, we got trouble. + * Now try "./authspeed auth.samplekeys". What we want to + remember here is the "authentication delay in CPU time" + +! * cd .. +! * Now we need to install this stuff ... make install will not work +! unless you have replaced the SYSV install command with a BSD +! compatible version. So ... the simplest thing to do is run +! make -n install and do manually what it would have done. + + * I'd suggest reading the xntp docs about now :-) ... seriously !! + +! * Check out the docs and the stuff in xntp/conf and build a config +! file ... put it in /usr/local/etc/xntp.conf (or where ever you +! defined the config file to be in Config). One thing we have +! added to this version of xntpd is a way to select config files +! if you are sharing /usr/local thru NFS or whatever. If the +! file /usr/local/etc/xntp.conf happens to be a directory, the files +! in that directory are searched until a match is found. The rules +! for a match are: + + 1. Our hostname + 2. default.<machine id> (as in default.375 or default.850) +--- 1,63 ---- ++ Last update: Sun Mar 13 15:05:31 PST 1994 ++ + This file hopefully describes the whatever and however of how to get xntp +! running on hpux 7.0 and later s300. s400, s700, and s800. + + First off, all the standard disclaimers hold here ... HP doesn't have anthing + to do with this stuff. I fool with it in my spare time because we use it and + because I like to. We just happen to have a lot of HP machines around here :-) +! Xntpd has been in use here for several years and has a fair amount of mileage + on various HP platforms within the company. I can't really guarantee bug fixes + but I'd certainly like to hear about bugs and I won't hestitate to look at + any fixes sent to me. + +! Now lets talk OS. If you don't have 7.0 or later, pretty much hang it up now. +! This stuff has run here on pretty much everything from 8.0 upward on s300, +! s700, and s800. It is known to run on 7.0 s300/s400 but all reports are +! from the field and not my personal experience. + +! If you are lucky enough to have a s300 or s400 with 9.03, then you no longer +! have to worry about adjtimed as HP-UX now has adjtime(2). The rest of you +! will have to wait on 10.0 which will have adjtime(2) and a supported though +! a bit older version of xntpd. + +! Next, let me explain a bit about how this stuff works on HP-UX's that do not + have adjtime(2). The directory adjtime contains libadjtime.a and the adjtimed + daemon. Instead of the adjtime(2) system call, we use a library routine to + talk to adjtimed thru message queues. Adjtimed munges into /dev/kmem and + causes the clock to skew properly as needed. PLEASE NOTE that the adjtime + code provided here is NOT a general replacement for adjtime(2) ... use of +! this adjtime(3)/adjtimed(8) other than with xntpd may yield very odd results. + + What to do to get this stuff running ? + +! * If you are running an OS less than 10.0 or do not have a s300/s400 +! with 9.03 or better +! -> cd machines +! -> vi hpux +! -> (change -DSYS_HPUX=? to match whatever you are running [7,8,9]) +! -> cd .. + +! * Say "make makeconfig" + ++ * Say "make", sit back for a few minutes. ++ + * cd authstuff + * Say "./authcert < certdata" and check the output. Every line should + end with "OK" ... if not, we got trouble. + * Now try "./authspeed auth.samplekeys". What we want to + remember here is the "authentication delay in CPU time" ++ * cd .. + +! * Say "make install" + + * I'd suggest reading the xntp docs about now :-) ... seriously !! + +! * One thing I have added to this version of xntpd is a way to select +! config files if you are sharing /usr/local thru NFS or whatever. +! If the file /usr/local/etc/xntp.conf happens to be a directory, the +! files in that directory are searched until a match is found. The +! rules for a match are: + + 1. Our hostname + 2. default.<machine id> (as in default.375 or default.850) +*************** +*** 72,76 **** +--- 76,92 ---- + + * On some 320's and 835's we have had to run adjtimed with "-p 45" or + so to get rid of syslog messages about "last adjust did not finish". ++ ++ * At 9.0, there is a problem with DIAGMON (patch available from the ++ response center) which causes it to delete the message queue that ++ adjtimed/xntpd use to communicate. (see next note for result) ++ ++ * Xntpd has been known to get really ticked off when adjtime() fails ++ which is usually only while running the emulation code on HP-UX. ++ When it gets mad, it usually jumps the clock into never never land. ++ Possible reasons for this are adjtimed being killed or just never ++ started or adjtimed being completely swapped out on a really busy ++ machine (newer adjtimed try to lock themselves in memory to prevent ++ this one). + + Anything else ... just drop me a line at ken@sdd.hp.com +*** xntp3.3m.orig/include/ntp_machine.h Sun Feb 27 19:34:59 1994 +--- xntp3.3m/include/ntp_machine.h Sun Mar 13 15:35:33 1994 +*************** +*** 334,341 **** + #define setlinebuf(f) setvbuf(f, NULL, _IOLBF, 0) + #define NO_SIGNED_CHAR_DECL + #define LOCK_PROCESS +- #define HAVE_NO_NICE /* HPUX uses rtprio instead */ + #define RETSIGTYPE void + #if (SYS_HPUX < 10) + #define NOKMEM + #else +--- 334,345 ---- + #define setlinebuf(f) setvbuf(f, NULL, _IOLBF, 0) + #define NO_SIGNED_CHAR_DECL + #define LOCK_PROCESS + #define RETSIGTYPE void ++ #if (SYS_HPUX < 9) ++ #define HAVE_NO_NICE /* HPUX uses rtprio instead */ ++ #else ++ #define HAVE_BSD_NICE /* new at 9.X */ ++ #endif + #if (SYS_HPUX < 10) + #define NOKMEM + #else +*** xntp3.3m.orig/lib/Makefile.tmpl Wed Feb 2 21:20:13 1994 +--- xntp3.3m/lib/Makefile.tmpl Sun Mar 13 16:27:50 1994 +*************** +*** 49,55 **** + $(LIBNAME).a: $(OBJS) + ar rv $@ $? + -rm -f $? +! @if ( hp-pa || hp-mc680x0 ) > /dev/null 2>&1; then \ + ( cd ../adjtime && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" ) && ar rv $@ ../adjtime/adjtime.o; \ + else \ + :; \ +--- 49,55 ---- + $(LIBNAME).a: $(OBJS) + ar rv $@ $? + -rm -f $? +! @if ( ../scripts/hpadjtime.sh ) > /dev/null 2>&1; then \ + ( cd ../adjtime && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" ) && ar rv $@ ../adjtime/adjtime.o; \ + else \ + :; \ +*** xntp3.3m.orig/scripts/Guess.sh Wed Jan 26 15:26:03 1994 +--- xntp3.3m/scripts/Guess.sh Sun Mar 13 14:10:19 1994 +*************** +*** 40,46 **** + guess="ultrix" + ;; + hp-ux) case "$3" in +! *.10.*) guess="hpux10+" ;; + *) guess="hpux" ;; + esac + ;; +--- 40,50 ---- + guess="ultrix" + ;; + hp-ux) case "$3" in +! *.10.*) guess="hpux-adj" ;; +! *.09.03) case "$5" in +! 9000/3*) guess="hpux-adj" ;; +! *) guess="hpux" ;; +! esac ;; + *) guess="hpux" ;; + esac + ;; +*** xntp3.3m.orig/util/tickadj.c Wed Feb 2 21:20:17 1994 +--- xntp3.3m/util/tickadj.c Sun Mar 13 13:55:53 1994 +*************** +*** 388,393 **** +--- 388,409 ---- + #endif + #endif + ++ #if defined(SYS_HPUX) ++ #define X_TICKADJ 0 ++ #define X_TICK 1 ++ #define X_DEF ++ static struct nlist nl[] = ++ #ifdef hp9000s300 ++ { {"_tickadj"}, ++ {"_old_tick"}, ++ #else ++ { {"tickadj"}, ++ {"old_tick"}, ++ #endif ++ {""}, ++ }; ++ #endif ++ + #if !defined(X_DEF) + #define X_TICKADJ 0 + #define X_TICK 1 +*************** +*** 408,413 **** +--- 424,430 ---- + "/kernel/unix", + "/386bsd", + "/netbsd", ++ "/hp-ux", + NULL + }; + struct stat stbuf; +*** xntp3.3m.orig/xntpd/ntp_loopfilter.c Sun Feb 27 19:36:16 1994 +--- xntp3.3m/xntpd/ntp_loopfilter.c Sun Mar 13 14:03:54 1994 +*************** +*** 349,356 **** + } + } + #endif /* HAVE_BSD_TTYS */ +- fdpps = fd232; + #endif /* HPUXGADGET */ + + /* + * Insert in device list. +--- 349,356 ---- + } + } + #endif /* HAVE_BSD_TTYS */ + #endif /* HPUXGADGET */ ++ fdpps = fd232; + + /* + * Insert in device list. +@EOF +set `sum $sumopt <diffs.hpux`; if test $1 -ne 46307 +then + echo ERROR: diffs.hpux checksum is $1 should be 46307 +fi +set `wc -lwc <diffs.hpux` +if test $1$2$3 != 288172410391 +then + echo ERROR: wc results of diffs.hpux are $* should be 288 1724 10391 +fi + +chmod 664 diffs.hpux + +exit 0 + + + |