diff options
author | peter <peter@FreeBSD.org> | 1995-12-30 19:02:48 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 1995-12-30 19:02:48 +0000 |
commit | c3f352d4ad515968c54d216a0e53252eff8ab3ef (patch) | |
tree | 48ddeda3c6c8d8572cc34bf52ccf9cb9bd97d488 /usr.sbin/xntpd/patches | |
parent | ab124e78b0271ddb904b761b31e5c9a0cf24e070 (diff) | |
download | FreeBSD-src-c3f352d4ad515968c54d216a0e53252eff8ab3ef.zip FreeBSD-src-c3f352d4ad515968c54d216a0e53252eff8ab3ef.tar.gz |
This commit was generated by cvs2svn to compensate for changes in r13122,
which included commits to RCS files with non-trunk default branches.
Diffstat (limited to 'usr.sbin/xntpd/patches')
43 files changed, 0 insertions, 18787 deletions
diff --git a/usr.sbin/xntpd/patches/patch.1 b/usr.sbin/xntpd/patches/patch.1 deleted file mode 100644 index a6089ff..0000000 --- a/usr.sbin/xntpd/patches/patch.1 +++ /dev/null @@ -1,790 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa12064; 26 Jan 94 16:33 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa12284; - 26 Jan 94 16:26 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA16418 (5.65c-6/7.3v-FAU); Wed, 26 Jan 1994 22:26:48 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA29418 (5.65c-6/7.3m-FAU); Wed, 26 Jan 1994 22:26:45 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199401262126.AA29418@faui43.informatik.uni-erlangen.de> -Subject: Re: Solaribum -To: Mills@udel.edu -Date: Wed, 26 Jan 94 22:26:38 MET -Cc: Frank.Kardel@informatik.uni-erlangen.de, Piete.Brooks@cl.cam.ac.uk, - Paul_Vixie@corpmis.sjc.hw.sony.com -In-Reply-To: <9401261207.aa10860@huey.udel.edu>; from "Mills@udel.edu" at Jan 26, 94 12:07 pm -X-Mailer: ELM [version 2.3 PL11] - - -> Frank, - -> Your command-line weenie sounds rather useful, especially in cases where -> 1-pps signals, kernel mods, etc., are involved. Better be quick about -> patches, though. Paul Vixie is burning rubber on changes. - -> Dave - -Ok, you overan me with 3.3c - thus the following patches will be -relative to 3.3c around Jan 26th 11:something. - -The patches include additional sys and refclock variables, the -adjtime fix from Lewis, doc fixes and a include botch fix for -lib/numtohost.c. - -For examples how to add extra refclock variables see refclock_parse.c -(as usual 8-). The variable mechanism is documented in doc/xntpd.8. - -Ok, here it goes... - -begin 644 patches-fau.Z -M'YV09-*8,0.BQ1@05)X0>:(CA@N'#F<@5,APAHL:"E1HG+BPX<./,Q)<*4,& -MA)(P;D#(L*$RA@X:-E[> !$C1PX:"EKHY/A$)$F3*%6RE.$2YDL<-&WBU,BT -MJ5,5&3?&8%$#1%,%($",4!!"*T\6=D!8I)'TY@L8,5[(D!CC1L,<.F"P7!-& -M#IDR;$ 4P0,'JU:_5-"DF0/"3!HV94",>>.&3I@T;@C#D?-&#.(VA->X>7,G -M)9TW(.B@21RFCN@W<@B+#D,'Q!PZA_.Z*?/S,P@QB<DP+N/"[T@0=][485,R -M#)S)9<:D89U8((@\PA4+)^X:3MW$<]ZT2?R&(/0Z<D*GV1X:-)LW;]:$1D.Y -MSADT.7=.K:I3I]^M74=\#6NQ:DVS:*GE'UPPS*!##57191=>>O%U'V""$688 -M8M(U]EAD($Q6V669;=99>>N19AH:J*F&!FNNP<:&;+259!MN(.@V6V]9_1;< -M<,4=)T=RR]'1G'?1+89C==>YIAUW0((G'GFVG9?>>NV]IT! Q5TD&YCO(!' -M8W"0X0(.'D'T4 PQOI'EEG1T^:4.%A$5E0IEGLFEEV"*"5$,/I5T4DHKM233 -M@63]AU-]<6HYYY=Y L7G4$6YA6!92STE*51,@7 ##2S<D(-53,77@J68XD!? -M?7YU <(6?KD@1$%TI)I$:'+4\1I):Y21AP(K@& JJKFJ6I =N(+@PJMVU+6< -M964$NVNPOK9@!;/$&AL&LJ6F.@42(!!1Q!1#2)$$%%0D\803KH* Q9QO3GI5 -MI3'0 ,+[59U%:'MV@#OH_6UX-<<</!H1AX@A!%C&CN.\9D< +^8F*P_F8&: -M8CNR!MD9*4K\6AIC2'A8&7.X"@>K(.#@5QAD% ="K0"[44<;N(5GFVB)T1'K -MK"6A# (;@[7::Q(?MQ"6R+F2;/(<><S:!@C%RG$L8M#V;$7(P0H=L&M%^WAT -MTDLGAC/-MP%\EQFEL=%J5BY<"X((0XQK1!)'5"%%$.&."\+:3!0!PA/@BNO$ -M%"*X*H6Y<X)P0L=9+>:&86> )S%CA6T,PF @[,B&Q';@!; 9.R;FL!QML.9" -M5D-HMUUC<[ G&!CH %"YP#CEJZZ&KT) @TWL4#[IO/N5 ,,F-8P UGY0@CY -M8FUT[D9)D%>6'6(^!GP\")NU%D:QATU+(63K05YY:FDPWEVY:*J9*A10,+OJ -M'&70D32T2$M+[<ZG?ATV'5TP2WZP@0TO.DK%E4Q84$)+ VP8$X:\$,UH[5.: -M]7B#D-&@+X%9(\P8@N*Z7#',1: )R&N4)@;3D*9D NR>&PKXN,.AIG,#3,D< -MZI"Z@)F(-&,8 \<D\P:<C2$/GTN"&8(%,P@N$ 3="5%A*',T'HQP.S[H 0^* -MQ88ZE,$'CY-0#<]SAY^((6&C89_\AJ.SD]DJ.'81(M9^>(?8W$9K.?M)&"13 -ME]8$L8=;%!O5C!:L,2*+,"C@4APB%Q;B&8\,*?A<8#CVP8"DD(1V1 QAT">' -MRI5P<R@480&#!0?PP.$-Z",,8]B PP;:*F [@MX;6B,YYF!0B!KZS&+R,LK1 -MN.Q$K8$9P":8D@K>+(U>\N3)/)225)JIACZ\(W#,6, [A*%H0-Q>&N[B/( E -MDF,Q*H-A9D.&.BXG1.Q#G_KJ$JSMI XE@VE#;WIUOUP-,I1%$DWFJL,C1+I/ -MD>M!D>$<@[T>'A&:02Q@7IX)Q!WFJH=S" -YSM >. @RB_ [X!>2]H6M=9%$ -MQ'DA] 2*3X+H<XY6"Z8B#YHL^/6K#')8:%T:FK-@090,$KVG)BVZH@S1)CS/ -M_-_S8,:^,9QG#&L0:4@=:M(:NF@T$]W.2H6X(S. M QND*%B;JJ>F(Y36/<C -MVZIVM+SME>L%UA&-H=)$U?&5#W9.D5T,8)"#&<!KK&2Z2E9@LQT:W<TS0)W> -M8R8GAL,($&!!)-\4'GG"Q<$U661[%5O+( .N%*8.9#B#YL)@L(?-@41W$"*5 -MC+JCI"8&-W2X@X^0*D2]+@D[CFG#Q_A'U.24 0XI-.Q@*R;:?@J1D<LQ8!K. -M,$(V'!1RUI$#17T4'LA%K"2;!!AKK(9:U;S!L-K,'AMUNQW>#K.E,)KM9G;D -M)0@!5EBO,L/DS@ #OR!U@82!3"5;,R'>3NRV_UL=29:3DO*"=)BBJ1!L5":< -M10H4#CASPQDXZBF:Q$ &.#BKNPI"JK6.AS=^><)? T8]NMJ5#G@EB&<A TF_ -M8C.PGRUL5\R 6,46AK$'B^8TH0G06D46LU7D; \]N]K7W-=Y/TU,P4Z;VJZT -M.+0?>R-0/3L'Z180O1FJRV[?"SE9U4&? (.!"T%@9"2K=L=0V&N/:4M"R.$& -M9V6H'/(\<V 8WVVO=YD<,A\[G9+ :#%R*)B/JMF5>@*U<ZF##';ZI1S#' 1] -M!A.A:WM8*SG,)B]D4-KV>M.58678L+,AB2;=P,DSNB9]IU-Q7/-,0A[[."^0 -M"_,Q&^;8(QDV8MEQ@UL'62[MAH&[WAVA,,5KFL:)#:3G;2#D!+:=@ 3%O>$I -M8WSG"9DZU-<U]\WO?CWY.MB)=:PY."M1.!4[#.O1+X-=##.?Z57##O*STDX, -M/]V<&#U&K@PD6ZJ9FOK.Q/B1M/.\T"*S#-));C@->$$I1QN7&O+"FSJ0Z^%- -M2;A:[%7!#6G 0V'Z2H=YXYDQ)3%,O*/X9"29(;FVJ0(5A@ "%%2X-4A 0A.: -M$$A=C@$\E:5#HT&<!D?.N.3O-?49_A=*AY($T67 0\%!$ 00'C(O1F4->#2W -MW:'V\.3; R5W4"O)%0',Y5L.LFX;X\#!$%J7(#YR7E:;[2B" *DVQ>1/L(>2 -M,U!(#+K%:?H(PP,0^.!S00!!'*0N$(Q96,?)ZLI=LNVB+E?]XE9WV(HX,S$A -M4OT-=YGWY%Z3(7@K-8@4)K@(#9MOH+YA>Q>-E1L KM_/>KF'C/UX&X9CRL]* -M\97F9NK5*]>8BOEH#FYU051!\&\!7CVI@)]8M>G5K@#'H"TR(+!]G)VF.$#[ -MP%6G-MGNUY5K>_NWXL:I1J%Y[N<Y]-&0WV>Y4>])]!GVI /?>QD/QU?.^54' -MAC5T4;..TR\,EO$2W??4NZQKU?6P.P^'=,0G7G&\9WSC@;0V4#^>9J2*7+AY -M9G*FA7+AH7(LAT9< QGA]RKCQU1?X&)T("M/5W.&5'2% 6X1&$H&N&= !73O -M521O0'0$9'2WE("])&1,QS%.IW\P%('\9G> UQR$@70EM(#8%H,3J'9L9V=O -M1Q!PE!PQ6'?D<7<$EW=3Q'>5IX"%QH#21'XY=7%/=VV#UQIP8'A(TGV1Q#B- -MQQW1EQ>21WD4LUJDA7DQM#*<MV:J=6"?)T1..'K^9WK0I(38]6UFX(0/Z!BG -M]W17,!HI,6$FY'TI9'7(@3ZE%T WMWQ"QV!SM4!/)WY-Z(#'<3';85@.]4(+ -MQF)JB&,P9H,-.&Y?$(ES8&*4F#,2-5E'95EGE%FTD1)2, 5KD7MW(6BUD8DO -M-H90ME>#Y6*BE7JKUWJM@76QIU_5-EE64D(VA5AE\ )<\@7S1!FVA09A\A%5 -M 1G'>!?*F";,R!@R4T,N (T680.R0XU-9(W+V(S<"(UV<A&)LB="X2<T ";+ -M)BC])8[(>(UPD(V-X8S=N(Y!T2=$<10Z$(]*46SJ(E8V8%9MD5:=DA4C\#5R -ME@!#, 5?, 59, 544 1-D !M<1\..1L0*9%+4 19D 1$H)$BPY =608?^052 -M4 1&, 4A>04:F0.&U9#2]) 1^0564 2MJ#<)( /=E14UF9(KV01!@ 5IHRTK -MN9,].2Y^X1<O !59814@ 4OM7R$445,=CP@Y6+'TU\Q<)#P<@-D$CPH>9,> -MF9,4:9$8J9$WP)%HJ9(Y&9(C69(Q<)):090YV9(O&9,S.91Q"0(Y:05!( 5, -MD 06^9-!"0* .6)%>91)601+69B':9%/F151Z1=4:97O%5/ L3!<66_\0Y"3 -M(CM B2E$D7MJE9=Q"9%0,)%%X 14D ), .%=9:..02O23<7*052\ 124)LS -M )>YN9M,$ 374ILXD1]Z^9I$@)A00)LS@!',V9JZ^05&B90*(9G7^9Q34#Y" -MB9E2F15P,@2BYYE:60>AZ975-)4J\ +]=9HL0!0289:L69RP*9O2>9OWB9.[ -MF01,T)N_&9PS,)RXZ9]?8 3'F9R_TYAR)IBO29B&B9BS.9U/F2LVB9_9&9FN -MJ9.42:'! I7C297F.6Y8^9E;&8OLJ9GO29J28IHR( /S*0.XLY#]F99#D*!5 -M0 1'4 2$R00RH)&+F:$XF:,*&@1', 4:&0/$6:1?H"U6D 1#()G_]935F9LY -MNJ';"9$Y"J526@27"0*9Z9[9@I8AY#T^"%0;Q$(9N##HLV6\55N-9AO8)S/& -M@85^U1N$$J-FM19E66 W*I=&NJ,]^J-!.E9-BJ,)>IQ)NJ2)*JA/ZJ-?JI&% -MA:$I*9@Y*J&5.9LQ8*",>:5.JJ5*.029^J&6&9YB.J)P0@1F&HAPER*Q8C [ -MQV1O6D)QBF0@4J>Z]3&)!X@BU!O$:!#&.([)N(P34@:*)6KH^!$1,:SU:*P; -MDZS=R"8N\):50H_DB(W'*JW+*B8A,1)ZTH^, I Q"BGSF%3$:H]?L*U(M8_@ -MJBCM^(_O&)"Y)X]@M2Y2017,-IZ9V154":V(P:U@(18NP!+_,0-GD0-G02;_ -M6 ,N(0-DH2!AUB!]X9XL*F*0<:88LCD@()M0X&J)D:SMED*+5 ?'@1IC0YY@ -MJ:_VV:_D"3W:&JWMB@8#:Q$S(2@+*R!)$1<TT!!S41<3NQ<5J[)DVI$:NX8> -M"[(@(+*Z1;*N8;*7) <I:Q53(A $(:S86JS8"&>",2/=^A&;DK7JRK5R-JT. -M ;'AB*[/NK6,U;6\\;4.D0/\N"CN"(\W.Y"$(K;+2+9>.[?Q6A1V:Z[WVBGL -MLA;P\CO[&J99@01!L)-?4 5.0*%$\ 78,I4% 0)-<$PP0F9# B.YY48$X;%? -M 5/, 5)@ 43^01N,Z4@\ -AF@5!4F8@H :R0H6M]H,CMFA"I"TO>4NS44*K -MT[9R-@<OP .8!$7'ZE:O(B,GT!H]AHHP@TXMATF@.S #<8JQE ?](D':486( -M\4HH(C '9#5'TP:SA08I>R*58SK9P22PI!A!H1L90ADOH[U]1UJMU)7QU!JT -M%#U M& !509',[X"K+Q+"VD"\TV1$3.@D5G+1 84TKY7V$.&@SB*$XBY)5!K -MQ%O_P[_=NS&_1QYBL$8_P3C$@U\@]0)\:V[:45<C1 <]QAB$<46TVG>B 3E9 -M"[)/-P6T42&5@P>F\Q@"1UHKE!(5/%L7+$+KEAB0)1VBA1@"YWJ*57!AVJ*6 -M"Y:&VZE(89^:"0*,Z[B0*[F4:[F7F[EYL+DDTKF)\;FN);JD:[JH.P6J*P6L -MZ[I"F2N\FP21&S=[,S? "0)K>9%- (F8 )5^9M3.@5R+ 7!DA46*04369&" -M3,93^2E,Y$2N1<!74VZ-#,A4 ,E0@,C;LLAD;,D%A,E!I"$R- ?9 5.<G"M^ -M ;MU(!U#0KN$-UZ2%9>ZVT.\NU?YU1PIL<+$:[QS@+P;8\#,Z[S4&#.N1!K3 -M2WA!9(HA%QK:RWP?_+W[.S6:7+[GF[[34P;L>R393$ME,K^CU,#V6WGX&[TF -M(D\HX;^, U!A(, 85<!^\2I3/#4*_$ O4T8E$\'B_*I'G#A-JV<9W#FSDAH! -MX\&B!<(&)L(D#%Q&W+W?J\+"^[O$X\*L$<,80L.R8L,1XJS,E+R&Q<,L[ 8_ -M',0!YV5%7"$67- R_&A,S!E.C,)1W!I3C'I5#)]7/+BQPRXU(*,Q4 ,SD3N? -M,M3V$I; Z@C@%14<A].[1Q1^05", 5$8!4\':@)\,5%0-56_061.Z7!,@(" -MP94$\<B1S)9-,-:7BM:!C)%G$\98\ )!<+I]@Z%1O4,,F=>I"@*M: ,P$-A8 -M'::9Z=.4(A4VD-1DF;CT<@,(B0-_NGM:W9)48+I'0 59 62:0=OL$R/F@"B -MNY9#$ 1,P 1?T*.<:IN?'=H5.=JE_05!0 1*H)$T\)886M9?X\F0_-9K;:F! -MZ=:2#-<B(-<O, 7J6;JSXP)X<-=:D==0?3P"0=B'/;ABA0-"C0-(8=1)(:- -M&=GZ<J"_Z\:E>[JIN[I@"MZ)P=6P3054 )M4 5'( 7@&:A>W+A=#3?M'=9@ -M>MMF8-:ZG=:"S-:__<D +MS$;;J1BP4MT 1]L]?0[4_-_>#2?;'&[0;(70,/ -M 43A4>$7[@*Y]S!34$/&0A@RD.$@+N)*0^(>[J)/(58Y$&! *1':3113012; -M8I]$^KOJC=_N#=_R_:CU[;@\KM] OJ.O>04 2@2C+063JRV'R919,-:X+4W_ -MS=L"/F)5'MR#/-P)7MPH#CDEOMQC[=P._M2H6M@^#:,U+@-%W2E[.@,W,)\P -MH7O?3=_B#<?E3<?G3=\[SMX]'M_SW=02SM_^#=QJ?>4/:NB3S.6G^P*A@](Q -M5[H-'N%/C=<2?N:J"@))X"U8D-R=3EJ;?KH@@.%XP.)A52EK40-RKF0S7@.H -M:0.YA^.7VN?M/05%\-Z #N3J7=632^3HW;'O/;KC'<=S+-:$GMN*CI&(_KO) -MON7$'>I8P-R";N:4'MV8;NKX"B<0&^<RX#N,O1,KD6QLOL5,/>OV[=6]_J6? -M3=F6C=F:G0"<[=GH#=K!+MJDS002:9%$(.7]C>P$;N6^C>7-'M==7@5BHS1B -M7N;1;>G4+J(7&P15@ 783K@;P>;<?0-M'CM[F@-Q/@,P,"J2G>/I?>Z\_@7L -M79% S@1/< 1@_=X@H/(LK_*NS:2_KMZ6[02D7023*R[\7NC_KN7+GA@#S^AS -M#?'1/N:77NUZS9CB.?$_7?$XT*<X4*,:OQ,S<'LL8)M*)NN!N>M?[>M\?NY. -M\+CDPI#JF=MW3MYR;-X][^^[#?0!G^@_K]8$W^A.$'-T,.G3OO!*/^%DB@10 -M$/%./]UB@199+Q??_BD%*J._L_5,C1?65_/GWI*QO01-H.P*#^%DW>]4WNQ! -MG^5T3_0O /@1+^UDWO?7;MBR<_53<?4LH=V_H^K369_EWO7G?IA"L 16L-:_ -MGO;$SO:2[[@E3^3'WOES'^!QS^S';^!=SNM)8/I)+_)!WM4E?_)3\-P-K_J5 -M8IL=;YN)+Q8V@"EP'NN 2I4%Q!@4TW[:[!C' [1!Q1V_2P;'! )=8<7TO8PD -MHP:K]05?D/^#5>K!C_I]/757_,[:\NMM]&WH$3<FT&O$',.S=JB/Z:6JP;?Z -M9D" ^1UD ?;=@ N( V8"U\-RZHWR$0'+A_GL7+![8VJOV.TYZ>?UTIVQTPI3 -MS@"^O4.7_(3> :Q[<TT%\#J]Y]P>X-)S>&1*6Z2-*6 $F)3VVPB_(]E,IPSH -MYJQ>#I!1[L+QA;Q+Y?ORG%B;=ZR-6]R[?$<%]MV\:X%@C0#"0,XG PL< I1^ -M"K#+"<'2502A'[7;>S^PZ1U!.#&=+F#X^W[N E/0@$Y%YW3=Y"L"E>_R#3(@ -M)Y&& .."9'G,">@\"<@"2=X ?(&;S^?-0.27 &^@Z$L"%M &\,!!%P&!X,MJ -M FD #G2,.0C^[ 6<4TA5[U/L055' ]9"'V1(SB$ED0$4L):PT[>8 BD R#F! -M)T "!V$ 1'=A$!+&0-!'"=&@)21NH% 4ND$(" <G'"F$<V8%SE$]J$ H6B$K -M1%SV:;#!0H(@"VEA18)-4: *Q"8JD M_X? 3@Y'0[9G!SY<&&QT/6SMOB CD -M 8 C<&; )JQTG;#ID2EP(?%(H;N(<WM0-35!50CK;,<-D()U#L+TB]RFGJ8, -M-7$-)$)J,9D'%!'IP Z -M6,(48&Z?(3SD/EJ0,-!?U=Q,S7]HS?)%1V-9 8 -M,C]W6 ;@8>GAA\MPZ35#5$4!*\4>!(BN4+O5-E:( Y;:% Q,NW BL0U%.+D, -M86&*5$. "3!"<^>X1& O](/"[Q'NMS$H"==A2FR'<RW$N8$\< _YWDR4@&/J -M91&F?ICF;.)*L!U7#P]V0-N1 T!>G9-^0?'FZ;PO8!0181%(BDO1]C5%0#@" -M!6%>!(&.T 5.Q71H$JUB)3R)SJ[+C<68B/T@H(AB3/Z0!K#"1[&:I)_,6P*C -M2Y0I,D)8D:R R4L"E^\)& $B$ 2BW*\S75J@JU$VMT$4OX >HVI5P @8 9Y4 -MDYQ;5ZA) L'M <*,1)NBDF[;C8_CB<$;PM";FH"XV"LM*C\,0_56'(^C@])Q -MYZXYEJ[&*!-/7W_9'<G&8;&$#_B@+F-F? *)[/J=QL[X&4/C:"R-A# )I$:6 -M=.M8XUQ\C4(@-LY&1J8<R:!*7&N@2ODA1AQ8W(J&%9 "-* K5L>D5Q,W DS0 -M@S9@&E[';D<59L"-JWU8+@NZ-GPWD;I@D;-UWS$AN+MM4>2(P)%+<DNNR16! -M)\>3HEP!O(_L\!BJP2=@E/28I$-Z^+ 9PC+^IAN# &], +[QD0''\8!?AB-" -MX$G&$;FUJ!/)'(&D<TR)15(*!,GKYP.I8Y@BC&8@ ; [MK$AJU:5P%IJ*UO= -MHTZ$4\P6L_H2(DUK;<E'-&ZFE440&=<J2XK)+\ EUX"7%!,XP&_Y(\ 5D)"" -M/,I;:E)=M4EW]1/8T9PD5W9R()'"&Z#J>F+BR@H)0.4Y@2-P6!)+EBD@,F D -M@H $ !*_27C@/R$' LD*24DIF=&)" ]3B-TTAHO8%3JEI=Q*%V0+Q( N("G[ -M@*3,"6 QTTD!:7**E$H;2@(OX G *C:U<SX'ZZE5MD%#V(%E0AI2 F3@+6!# -MJ:"8572Q?@ZMK"RV4O0$&@(D4V*,ILN5JP/P# <$0R@()0LPE/8I48X+1LEA -M'"43B91^P51^2L4 <OR/IIP#G+)2KLM027HLHF%1EW4!5;XI4CDIUY3!4 PB -M1Z=8A35@!TC*:]@!.!).&"(+Y)GLGZOT>R]K5E(6K!-Z3!2NU)7^LDWYRBH -M+$&#L"26SL-6@91D>5G21XIQ \VR SU+BIE\U,.TW![54HA<S&Q)!K8EL+): -MQ4AOI0DO ;<*5IBT1SS3(V"$-%F-Q&303$<V0$Z.JWDUG<P5GBR:0)-/ABNZ -M):_ 1-.T5V4Q7S'!V-$5?..AH%G\(<,=K+-P \X"2T +<<$M%(C9)0;4 ,6Z -M6%_S<D$!^C5*JMD:"A_5Q3UEM97E$_5%U\QT<?-3S,USIA"A"<?"FVY%&T+& -MK*GM:MSK&X@M@2JX1>\B<T"*&X!WG8T,) !5-D/PT39B PD "J %) QO\T8 -ML ,=A""H --Q+%- "I"4>,]R8LYED@!V1-2B U] 5-*!T#DZCR7[DAELRJ6\ -M%Q7@.E]EKO":V,@<V9:#,"0G8*Z@2E, >,HJ#?0P[%1DF!R!R#$(DV7)68ZE -MY20AFJR1P8EM ]U6V>7!>P,'$#V5P98K2J?!8 ,"<P\$BTY)9B1BMKF(N8)^ -M5L3"T'/PYZ0\E2K 1\@<__DPCR=4>)YPP@ALE_;11#B&^(1/-1 B!8&Q)P(3 -M S V@AZ$G0L7<%O,5%LJ 8M%(QII3(NVC3!05*&A0*Q+;GM"A-*!YP%QJT -M"#P!*^!"<4!WF9&3K2>@@-%&0?EB+HR@5T"'\M OT$&3P$7ZH9--)NW0"<H> -M8QL?&*)%](B&J%P1._U,X5B7<")@E R!*3I)I_3D7P$S:7 *T]$0.6))\(AG -M@'4VAN(9+*IH2D :F=-R80[:H%.>3Q=UGV$T7Q+/U]E&*Z<5A:/+Q')I$RXZ -M.O$H_!2C&L%T % RNA%I2T=$?VJ4#K!1*NI'WVB\*PE3:9 J%#':11?I5G*( -MCU2_1-))&BMAUCTZEE3%!3#/K.9&9Z?F7$:HE&/P3A1P2=FH4 I6!T%LY1;T -M\28_ DO0I76!EWJCAS"<B&:ZVJ5O*QHYA*3YKOSDTK2:!@MO[01@FAK>EM*L -M6VPBFMZ$ @DGID+&XU=0P5_!B1<P!^1 EO!8+Z EH<"$( 6RP NP PB+F@K3 -MFO40ZI52R%FNL"T$) /Q\4X&T&(00HM%&1:JA$R[$3W]+Y "G[(%M[ 6XD*" -M^*=Y(:!:+#(5.N! 'E :[Z$UH( QD *2PM2#%S;A7?R'J? ?A)I-0$@#B4P9 -M@:6C'I8 1)T;2H,D*(W4T0*" !3C'^^E]<!, 3+/6D,1D .30[\@E1;@!)R( -MGVD99V!E>4! Y;*H$CDUIR\ G:K3\<9.W2D\?0'R]&T=5+9P3P-$M]M9O",@ -MD0F)!5 =A,42ITIGGH9-/HBSO.J X%EBU9\NB(AJ5HG6RZJH%[6;51R.ZE&3 -MS7\0J3:!I-H$DUI60.HV5:DL%02XU+D*4^'-M*2I-C7FX-3PH%.[$D^%-#\U -MJ"8KHFI4W0!2Y:8T0=4MF\HX#/F?"FU%70T)\#\@9UH+$X94K5_@/@B$!! " -M4$ WS"^2% 3P 3Z L:@)"N!_1\ )5($<]05<YT U/1A#,:Q+9,H>,L8RV0)= -MH >(@((*-@D60FVK:2&?,E1^^E 9J]":&Q!/!$C*KRA;U>396$:%$_6@@;Y! -M+T2K=Y.M]K&UHE;*M5I_G7Q]K?5U#-)6VQJ79B%N[:B[M;>2A-]ZVH0K<36N -M_@JY'H13R5S-:8\A ]!5NE+7K9I0W2I8[5G+AJS2U8]A!,+K>+6.L-"\B@#T -M:C>[4=]XAC9 ]AW$[S<#4FS6<VRO\&4A@9R!&O( ^)FH+VO" @L$ZM>RS� -M,Q:!#U;8[%H5+FQ<E:MA1GR" "1725"P6 ,R@%[+AX$>K%FY;#D:-8U]PQ9 -MM2 1:,)V=:A90<->+$%A.J%L]4@M%@N7_DQDBH_,0"]U"-,H3[+9"F8F+T+: -M@IISEC&XV9Y9 ZYIU603=VN;/LUC&DS+0)N5FO#J3S+-0!LIJ!N[R!2'<@*B -MU:=Z3M];.BT"ZQ0X6=5X*F<+[:&MKF-ARVK7?9HVD6Q9'5I4"ZWFV<-A4,-F -MH.BJ3=;+DEH8,!,T[-O$L20J!.75C+I7.^K!,JPX ;&BA);Z4E>J8YVI:*"F -MWM30Q'H SDYU#)@5J':=H5I4+>=GI1>0MF6%TY=%::.JI9VJIJNJOE-.BV<] -M+9T%M1=!U+[5L.H*;:U$55FJUMSJV59+L 8$D]59-0&NMMN7^FZI%D75M1@5 -M??7:LH!2#^O+6JG#5K$6VYCZ6)-M9,4#D[794LO+ZE.EK5!U YS5VH*4I$H* -MA]I\0H7C"4J"@/O:U=*&$S "]#6VVM?1Y5I+KMI(N?!UO][6UJE;>6LW!*X& -MEO\AV$R*AY+KJ20#8\ ,--<'&V&GJ[QEM>CVU=[;4=M0::VIW;#@M0J(5R=Y -M[=KKQXVQ(I?DTL67"UM9*\N=KR87Y7;=;2AS^RL*^*\U5\#.0IP[7'5N+DRP -M$,CGKDN@*W0=['.-KD:WFGY:>FIO:0 ^7;<85B*X6[X0=:<N2;QV:E9L'1"L -M4F@W"+C!#&_69RK>HL%XJZGC%2CJE5K=GCN;KA8O,KV\D+=G,M,^*:ZP*0U0 -MNH-BFN9)S]MX9<;C5:]^EDZ>7L'%.&D"I%U-376<EM-*"P4N;:9MI^,6JZY> -MROMY72_FI;=!5LE@5RXK:QLJ0AV\J';;$M36&S%"[T%5OK"6^>I3YYM[H*] -M_;<6->!J5+Y:$S[J7S6L@O4)&M:"&VP/;F)=K!/+V,I4C.%PEVTLDKC/MJ?J -M!8N[6:OM4=VX2C7&YEXQM7N];>\%MT94TP;?R4N\BF_U5:\'E4PLWZ^:;\.J -MQWNZMQ;>YECJ^WJ1[YA0MT;V GM?7%N> *Y>W:B^]L7YU9"*?@TK866_%POA -MN@%BRUCE;\-5MI*5V596[@%M*ZYFI;:=];-V7)0::15GS*VM,W>-IMV;6V#; -M;G%]NSQ78BS8Y5IH,=[0O;L2E@,?7W0[5D3M0B6USY??\@7#FP^UPMFC<J?5 -MUH4D*: (F0!8(L+9T/X=8?XZ8OPKS0VP3#BX.N&=FQ7B[A3.E\C4"MM="(MW -M'7 'YL(2./M28 +1LT2P&(8#9)B\FCW_EH:+P!INPU;R:AV$/O-G7D#FJA7) -MBPX\,67J @2OY<0+GC@,@.)C)HKQ"[4"1Y6"$Z/B3WR3$(,+:,5L@!1_*])+ -M-67OIKB3.T$6LX%4O(IM,2Z.O0")=M!>1YNOONF#R \$&*I*54Q+517P517& -MQ+@6\P9<S'>]L*R%<P="\#[B!_$IM@)#2JLR1CC,%V8F3V07C+@@P"NS>,S) -ML<H>!.A@D5 0/&D'J 8QL#*VHY,K29%8][K>ZLQ\+W&IW@8T^)0_,3HJ3;U -MNQ:V C?B[AJTZJHY]@K(-'*HXP>U&CR8&J-56\<S!(<,08\=*$/R"VFC">3C -MNB$%^'$,R<3%"&>( 7):-0Z,*B7%75@FTV1)Q!O&@$>P5AM!)X\OF^R3T]%8 -M0<:[(RY@7T&[$X1R36XK8P IPP"EO(SOE6FR@/,)QE;&TY< ^L!3^A0)0*'8 -M(?BC35P _*P#:0 $\&.RG#Z^0!JXB&!9+#L@MEQPSC)!6,L#89": ;@L 1. -M<T !_N_ H 3X/_L@.DP 6^@,'?4L@,#.JK\1)1AN6B<AS. F#>%^!)4L!T -MH V4T+S*F1@B [9,%/L?'0 "2D ;$ %\%#(W$A+"CV$ O^S*5X<-1+Y)63N9 -MB%JF":]R&^8V;1$?X]L4 &R![5X>D,E<F5?>9?9-FCG_/:"G7 900 F8 RF -M--/EV_R<GS,7< ,B@ 7<RP1@N=J &4 MB7ETYC\> -^0 MP"8TYB(%FTY$# -M4@#KG .SX0S\ !'0 D2 #A !V7D[6ZZ5\9T_0QA 739+9N. &T&V#,;+97# -M^0U09LN,F35S"2@)#[HT0V@R<)VS<\6AN87Y%A=,/*.=2V4"0 $8&C2K#PW] -M!1C&&# =(%H))V81;0=(-(>^T&MT.Z]H_=>BU4>)QC.I6>GU-=Y<!7PS<&9U -M>[-4_F4 G:%M-)ZA?ZTY[<[H$6VC3322!@&-F9 9,A30.?# %]@,V>B)I8_$ -M $4:LV/>SG. "E@!#3D%!O.2-LR$;$E#Y]><*&$;$2 "@UDN>R*Z?)C5-!_U -MT EZ01OG*U"8(M>BU,QST\?^FL\<FD=':P@(9, -=.83QCS* &H>K[F1RO'H -M(["=__)=Z" 4 XK0 "A,FR+S'"#.EGE2=VC:S)VGD@@(U,/RUP3F[8 ".BHU -MHFA;VG10E64B=:CS'*C0H[I36R[UX9_-M&+.T<W00_]EG5"EK_0;R-(HK'GT -M@-;<4?-T<69Y?)H-Z[$CD*MIDPBH%$X -+0!U) 83@"JMCSY;V DZD4-JWW$ -M"7C4Z=(K(\H=D8'< I8S6P@1WOE-P?C,![6Y<KJNB__Y57=G DSBZ[3BAD$ -M,.8O#9F=-8-&SF=C"'#F0]W NDS^JUV&FC2;9G2MFFUS:W[-?2 V/Q#YB:>+ -M!C.:RWDY?9CE$IV6\7+\P9UO&4Q[[+$<LNMRB;[+_>1DKRM.69M9,VY^DI&: -M($SJOQ;8NDO'_M0*^ED?Y\Q\-I3S4&;5SSDZQ^SDPH^K\ZW&SM4Z 7AG\/R? -M 3-H)L_F&3V[9RVJ!@ST>X[/\[D^W^?\[*$IY=3NU0$Z#0SHEKVN#/2=ILT& -MVS@WZ+,1H>OVA,;5,#JW%ND-G1RB=HK6VRR:1)MH%$USS[2+[MMYFU/3)L/= -MI''TAWUP.[H(]&:>+=CDL+ F"$0Z<!OIY/"DE4R 9=P%TTF' &8- C@VJ0[3 -M8_H)5#9?_:_3M/];T]NY3:_0.+VR0?;)!M@B&G:7[;]<K+$TH][29@=*?^FR -M[:E!]9[NT],Z:I?JK'"J=T2JEA7@&C1#[#>$J!4U0TO6CAI8Y^QL(;E[=.SV -MRYC[4KN'X+VIOW?Q#MJANGM3:_-MN9JWH(;>_+I5&Z-R#<Z^S8.MU4W[:9-M -M4DV;=K4=Z-6(^5<_[J=&O(=U"^C=Q_IW*VMF;;[C-K1&WG^:?9MJ;*VMN;7@ -M^-:$6EQ;[YK6J,_UV^[47ME#Y^NNG"[9-7APU_!:7L-D8:5'[%$<N,GI""B9 -MTCC@PF]RF^@NE:*%ZQ$8_B6!DE0^$+]8FGX*'=Y[5.D/KP%!?)N2PFZ'\>93 -M#;!NWX^)<[LG3OLD6^U$5FGD4F+1,0 '..6.. -97+GJ43?0Q4LX%D]H8CP\ -MJ N[M3\IU\N/6MGE/R$BYTN_7 :?W];(#MIJMC$*NMXS_W#KJR!YO&C]*/J -MAA/HXT)IB<.Z/G606)V-2@!W0#!0B(WZ,<H.&W\>A>Q"LS+K($-0P!J' QTU -MDW_R)WT"N( <. %2VBIP<5)^G4^ <87,7'P%K !.2<9O\R4K Z\YDCL.2BZP -M%4._P.2&;)2/;L'! ESY=E8!9%R6W^9/+LLYI2Z?Y+4<BMSR5#X8^ 5C:<XJ -M((_ @?/L.LLA;2;C.H%3(O./P8]+.0PX 7 9W,&Z5X<- 14DE^2)@9=;\E]> -M$C(YB-[DU]R3<_%0'LQ7^3 OY:<\E0OS<M[*7SEMCN6S/%W6<GY\RW,Y/-^K -ME=R7.[54/CH'.C%WY6DWCJ^9G5NJ3??RUD%RO"1X 7Y<T9-YKN#'S'P%=-1E -M+3A$@"M_S5DAA/?E9Q[/HSD#Q629O)IS<FRNS;FY0:=-X+P%B/.%+CBXP#F_ -MB&H6F6;CY"6,27'N4>H+^9@U]3,I.Z"Z*M;&+J"IQW"D[!)NC]/<"5:]&/,& -M8<S5&T(B5N*UU^/9CL?9;"8E=6@!X:$%>,Q"BXZ7QXAS >8A#8@!-BN,78# -M< $NX 7H9)G,)?QZN@0"R8%$G U"D00B@V-H*2< F:)R[/$"L/$&V=8)YV&4 -MAL\020[">2 9$V/2&1;1HH4A[QL@S8;X^!X$\S4&Z)=-!@V 7;#K==DN!@J[ -MP)#)?#TA^W5A$=BS:C?B[<(7:K)>RVM\0V^ZC"'%J 40 >/8+50W:+0;) % -M]+*.V@*20&S/8:D=\OIC1/G6XSIH( % H*X7=]0#VP/[8-?KMOV6['5/V]<% -M!A=(EQ^=M;OVMG)<UO71: $$(;N3]WN)V%,':*#/.T&6!:^CLZ)7AW['ZTCC -MFIP S/[92P)I)^X/&*]/]L;0P("*,!;M7>' GW;Q'N$/0FP_[[4]3>QVW,[> -M=?M?[^V=MIK^]NL^?!MP:5>OQ_T@"*OH/MT+@G5'\463PW=@?UPJNWM!^.[A -M';P#=Q"?WDF\WFWO_#VQ_W="(>!9Q\TH\!H^P0N,!0]X&KR./[YO8,*_# N? -MD$5[5I#OH^2UD^;HSMQ_4[BX?!UUC1 -<4(X_J>,MQO5_7.0>2EEYI\[@'TT -M):$%=.L7P 5<@->I#"2D1 .<.#!87@ 90.50!+R[@#307]2ZPXJQ"<#'RW5T -M7->_''E7[[G=S^"%W?[A9SMA%_%AX+ K^<6^$QJ[BX'LDAUX5?:$3$YE!F9/ -MGP'#-&@'*?SD0;M^P? &_L7C==+\X#/)>,?K+B"Z+X'"9 @Y=7]7[ #^4S3Y -M^6?E>SW'^/5O(-BC@&%/QY! 1QV64Y[!%WAG#WK)N[2G]L5>RU?XQ'#A#<MH -MU_#?GMA;>]2NZU<[QICOO*&\TW;:7N3U>J;_,YP>QQ-:%:\Z6+QP)[ZZ'CX@ -M2N0NK)1[F7?NEP\$T'B7A MMO+\G5E=>NZ=+20_D(_ZE[_0S^=,;E-MN[TN\ -MIK<M[AV^=^=W'^;I>PF_[_E=UQ^7VYCA53Z[A_ =.-H+>W5O[$=]L@<!RY[ -MAQMT/_.K_;57\-I^YZO\=._SQ;T0*?="J>7#?"Q/](O]R_?U'7[(>WKT#NHQ -MO<?']R<^N.][80K<&7#EA?J'.,87HX7_DJC[C=?ZR,CBJ])[2?$5?GB/\AB? -MWE=](X\^O@"2+Y6<HR"D_*5OVL,4F!\LNU[AHX"#?^:+0)IG97F S8O]%@#G -MK;O@)_QV7K?B^8*PY_O\GQ]A>4'0IP%"?V ,/:)W^XM^A1\$I6Y3<@K=/8B! -MC8>+B9E ^MF Z0^ZJ!\&V/"'@,,W0NM__68@]JO^CW #RGI8^NJ?XO9_@=/? -MLXUX,RV]#:NK,UK0.A6RFXW:?&H7!?"EI @>EP _KSC=L!(#6)MK=BNQ7G&= -MJ;P;4O\A@!F5G!&(_=Y\ '?;:?Q[-^W73T:E?_C#_N)_HL-F$H?(L7;[NH1' -M/X)?UJ=Z6?$?\9?ZU7\$R_VG4#5?^]]8-8Z18'H!$_ TF'^Q'\VT+0E4V!:Y -M$_+$0F;7]'<977]TF)PQ"VE_2UCWUW)]?]>?^.<=08 ]6_HG?>E>TMBW18V% -M6]88PB+\"8"R'P&8?(%@%5@-4&KU?U3)_T>5!(#SWP!X?>& !((.Z'3Q@)G. -MB/0 #@'G7\\F 3(-:1;.)*P(?]L!9(!4[7X. >M7:+T \5\5Z%EM7+/?YE4I -M4(%E@!4(!A9E7U+O=_SU8@>"\@?\H6-<H.OW!7B!5V!4M@;^+6U@0Q HH77, -M6#?U+45:T%\WI %6?QQ@]M=R;7_1G_<798!_F9P)6/UA)T6 'B,$\"1'@ HX -M4+& !!D")FY=562@&2@'[!<V(.WGC>E_@ (&UF]E49?@4I%3T(%GX! X@7UA -M#4O$L@#:551)$U &?H&?8,OTM)PL4@L%*!_\@3@.!EB'27\NR?AG_5%TAB!J -MA0@F@[8."1C^F5W&("0H"5*"EN"D58"Q?P:9^]<)XH*@8 1&!#I4#8&2@00F -M?0"@',@*?H*JE#<X@:U;.F 7A@1>++:@)T@QM"$K!"\XM4PW5IE-U"[8#C4! -M'K0/MD+DCV1#E<Q8KT&-=6/1@G!"%W@+UH%@@9)E9?U8C$.012: 8&!5.ZAD -M/%U*UM+E9 $A2<69-64AA#W6E05DB8+>& )8"F*$9 J9]61UA%(68R!0)75; -M8/RG6]P!=!<66*W @3)A&$ 3!EVS'TTR!L:$<N!,6!.B@:N?[W?_]1?"GU#( -M$]J!O!@>Z+"\!5496"%6_(&D%3>4 1:#&R R* (J@R'@,*@(XD(E(#3H';T- -M5X#Y5PUR6]>@"]C^!5])H4XX%-)3>R#^IQ;4*P]+S^+5C8,^8$(8%+J%2R%< -M*&K1A0&)7:@ >E=UE;\5,>F$V0(3:*]5$K)9Q:1\U(.WDR]XU "#3(TPZ $2 -M@T: ,5@(;H6VSC+(&6):BV!8. Q&@V2A6>CP6(,MX 'V B9@!YD,"!3F%$JA -MFQ4*&H 161'8$'1?LV /F KFA#NA;$A/T89$5D5X&YJ"A:&LA!A"@*S?</! -MT(-0"\HB4)%"04UVA+AH-]%A@[14"81P D%X,-A8WU<Y"!ORA;[ACA4Q^5A8 -MED6P*5"$.>!PB!'R6!IAF<42^A7B4Y5%'HZ$2,%?F!7<'H&A61=F0507BV& -M!_P$GL6)<#P(&R^A%#CZO88/2.I@OG@)1"'OAQ/*@7. @KA,A(&U'YP@_$6( -M:,"":!.J@4WAG_04RG# 6/"'(&*(&B)3.#4YA0_+4M9HY8/YBO/7U@6"5V%F -MF!7:<\R@X=<57H9?(2-HR#B"Y-]$8@@91T3 6>A4I86JX5K("8Z($B*#^!N. -M@@S5_O>S$(;1%SGX T*(26(Z:/\QB6+5@? D5F31%X63).J"D*%S:+%4@%B7 -M9>A;#8+DWV;H%1Z"-Z)OE2.*AI=A-,@M:!PDB9"("1I@!1D,V!J^?W%@3D$B -M3HBA8!>V#@J'0PUQ&"7FA:I@@I@A HJNH"+&#C8$%-FIU1U"3U\B<V@//H>U -M5UAB>VAED).F.)8 9-BA%T-C(0P'H6$X)?J)56+]YQ#.AQ$A23@H$HI%EIC% -M'LJ%KM!*&&7!AU06F?(0EH<NP'GX"MZ'3:*6N!_.56.64N >WHIHELH"$U93 -M?:+YH32P#+98@WBV/(@YA<PP'B +LQ]09B$BB-8BM-B3.75EG4#"E(F(S&+\ -MURUBBR9BHC6N?(AGW8HH%3Y:;%W(928.6&CB,4@C?H:>X9J(6CF#C:!8^ A^ -M,J#1%& %V !VXD"&)VJ",2"?:"X^B^BB0T9PO0!CQ0MP@9$5+T'/(AD9BI,B -MG$ %,(P4@L#($EB*D:'>](^5B5;A,%@OJHDX(IN(AWV&_.*.Z"_VB !C$^ Q -M%HSKGUJ8#;*%W"+'V)/14XS6WT4HUEJY8::S,5Z+'>/ ""8VA[V@R-AQR05G -M!<@%EC"-MT??=+%HAP9AQI@HGHO18D/(8^V*(^%,@![:AFW!L)ADS8H'H*WH -M$;J$N>)X*!*VBBS!PQ@Q7F!0&EQP>KT$L2)_2*88#A7("%+3G(WMQ0)E4X ; -M*D.7N"RB#^_?A@@'%E0^69#E$]I^6R#B2(IQB">BAU@7OH%*'>(8+J)>S!]5 -M^/S-B[/0R:@5ZHN=89LX8+V)IR%:F!KFB:RA-M@X%EI6HG45%QZ I" 2AS&2 -M*8@BXGA0O8Y>%2RX_VT*[^ ^5&B%!YC=M@3K%16UDF.X!DB&MI<%^!9QCIBA -M9O@YIHQ<X<H(.H*&8&'I."2>C@CCGE@YLHZ!(G"(;]F&,AQ>F K:CFN5][B( -M@8/A8]!XL4 !O^,3J#D\#,0CM&0\8HI]H$K W;B(JLK>1'8A8687VB4]7H9L -MUX$%A=EQI](@!EW=9GD7+Q4HXH[Y7[ H.T)?D1B(!0.)6(M7>F5BQ2?W8XQE -MA.V/':!OY3]R?\-@ .EV(1=_W!UG0)H*_%@"N3.6C]_@QQ.0B(./6 1)((58 -M.9X(4$&66.L5\]>I^%7MPM9$#<D'.Z2 <1W6.0/AJ,@=,H#DXZJX-J8$BN-] -MZ"@ZD>CC12@KOBSMH=G8$J),:2-5PC6VBG>)$]D>FH2R(TKXLJB$'"&RN'A$ -M@5?2@<@LKEJRX>-X.!Y=;62054PQCFLD'+DAAHM]%U*X.NI==%:ZZ$SY"1]B -M'MEQ:8XO(O/H.=Z+TV.^"#TV@Z&A]7@G8H-ZHNI81_*1\U:@:$^UA]N7#! 7 -MX(90XL52.]J1EB26&*-LDK,C2,@^5E.7DIZ%Q, TP8RV1"%P+/$CR^2$M'E4 -M"YD8#):,E^$A.:75B(JDFS@"-I)-#VJ8":Z&FZ!K.$G6?7TDA34HIH?[5B=) -M.XZ/H*0R^40RD^*8,VE*MH\#31+#. 2/KR3\N#*A(K,D_<@BP@F0S;<4+_87 -MY>34HT%FAT9DJ9CIL)%6HA()$3*1Q)0722L66=2DV(@79(2TXD9H.)B1:"-( -MN$72DPA529A)DI)B)%5"1OZ3?&.!F$:^D9:7I6<3D@7;8T0Y.:0X/6%5MT=F -M$A*EM.@"T #AXD.F1QZ3'$-'&2XN?X.D,Q9,FH[#I)%H3!*.GU='Z1?^B@<E -M[U!*ZH;QED5YUX6"#*3VQ5!IDC9E[_BRZ$@VTE[!3;Z/X4$L"4XR%;0DG$ + -M'3=3 *ESN?@O' 8)<GJL&9=+!Y$'O!>X@3$12G0%GP)RLP0 *"R943G_7 S0 -M1;* ;0V1CJ3!"$FFCC@C26G7892S80NI _8)XF-.R5%>E$Y'7;E,@H];HJ3( -M !*5,J/[.#Q^D]'2N-%45AP<3E2IW$R5H\1A854^>S_!IZ!5<I5E@%>9&("5 -M7X9B15;R)&8EP(!6Y@6N0\<E[L@+-LH&217E-K@5"4GK%9#.%2&&0,:4?"7J -MP5.*DD"E+ @ERI -3]-#+YR6ZZ3^N%I2.:UE5T! KDLGY&S9>,F45^)?B3X& -MEAL6;^D8R4&9HH,$+UR,N)<*4)@D*56 K4,$V#_'TLB5L= !M%3FY,V9;GU8 -M"5E LHINP &90IY)9-@5I4>5#E;!%& Z!%"2$JKB6\H'UF6\((!IEU( =^E= -M@I>EAUL&<)"7M91?@%XJ6"8D>^E>G@WF87QYQZD ]*4*8%]:!?;2%6.YH#GU -MX^VA*9P5AI)VXV'RD!W0.BDJ%H2DHM5(6^Z46J/:.$\6@/:DSR@<]@GK(179 -M3QZ+#646"2<,E 1+??@K-E^YI3[)!A2+-P&.>44ZE)H81 GVJ7:D&$M042Z9 -MVIWF55C\A'+EK^=1CEZ1X[KXL,2%(R5,V>Z%BUQF2AEIJ7]$(NI83/*)!UZ@ -MV"["CC_E#A@T2HG;(M]G6ZJ#BA@L"%0"C=:DJ0@G$)9&I2N)5-(AQ6/+M%@^ -ME1;.%$ #*#>YT%KY7Z:"-6.1>#,>B55FAW=079+WI'#HB.69J*!>^>Q)FFL5 -MI>DSIH>7)I=H-?*9AB4LB5@:CX-F8WEHX@&Y4,=E+Y0KJXEJ*7(5EPPF;$ET -MH9!G0YI)9V*2;>81&$,.<-/E!%E#WI#;RP5)+[R: 2$1*8=M0_X-K7E<YDO) -M90JI:W::=B6; $/NEL!F'"1L0GPV).5E0>:0IJ5HA19$6B0<)9,50#[7A;E9 -MNMU+Z>5KB5PZF+BF"" 1DF&E&@!585Z8^&6ZA*J4:AM$4F%1@6AF0!O0 O@ -M9L"51E&8#FW /6$Z& %- ,YS^4P!6@ ?]5N*F^\5HI2O43+H9A=#R7AT[29L -M ,A]&TOD@REOUE/TIGRIQMV;]V6&.2GMF^FEG\'%Y0$ I\!)<!J<VP'"J7#. -M#0VGC;0M1)P74<?5[=@>*X&,TRG^G/#"2@ J*ILGYG;H3EXLTZ8\R2L6E*\B -MJ"E%\H=D8^YH9.** B5[:5U-A#]F3>DUBEDIH;%H1<*':&22J=29!H?!4L>* -MC6(Q'!R(=BID5QU#YHH%65,F'4DXOIUJIS'&=O9P95U:%"*ZG2I"WKF-/3%] -M9[N8.:*6+Z) UFB:F0GCV1EX1G5Z)WZQ:R(LMP?$>+,8"+_#<-C_760IV4JV -MC_5C?D$OTP.L+)/320:-+9[9HR1Y=SZ><>?:*7E2F\ZE"^D@E9*<)SZFC[5D -MH&=6('J*?H!GVDEW,8BD&$6Y!>*=OV<8.#39G<D(\1ET 9_I"$AY!TJ.; )7 -M-2[VGL-8\>E'(G\)8/09%1H;CY9**6FQE <C,=EX#I^!I_4I3?*:] JD>%-F -MFB^+^;E629\WYD%9* J55 ER2!,$-FI!8(,99 C*(78P#Z4.E ' $5 $(O*/ -M ,,X: @$A4!1<6![HPX,( 24!B4!;$%"_#+>7"WY"[*5*^7UV%(^FB]E\EE^ -M+I^M8Y#5=WV:MF$KM'["F3$""!HHCJ"U(3AH@M*?JXIB>+/@GT )#+!_,H8/ -M!-&05+ 'C,%@8&$4H-M:+T$9)*!' RUU3>P.#RAB\6@H$'D!!2I.OHL;@6-C -M5EP*CEQ;1Z:H>2L#.]8::"6&P_802P ?,0A\T;4($>I)P/$"2!P4QVEA)J@. -M1&2.Y8R@/] $$[%,W!6N!2PR6[@>6V4PI7$F1U/)7^:$#)QY:'A0=M0$@0T4 -M9KG\H3Y ( H"K #\V%CAFO5&< (6((DJ%\\%H $:N!XJ0E[ P E3Y!JJ0]9 -M+G#"YD%XJ"\E$V<A,$0,)$A\1CDD!HIHU?$I!!HAR./0*G1+!4JF,&!D0R\+ -M%NJ^H A<*&/@A=X@S$3[P6UL)68H&GIU7!(M1!M*4+VA0A5A((<:$A&&2C P -M@'&M02!*2Y(G\$F"Y8<R%8 HN"&(0@J&Z%2"B"JBC.C]^8@F3.;")'K#9"5F -MA/R"B9H1FRA9D0$)EY\HF2**M@:DZ!EABGX;N(HJ"ALX$JUH&/J*4@:\2JLP -M.'J@:>=5.1228E6!XYF0/GL+J7FH43*+>*="NA0RI'UG'DDH.*3#F$4J&V:D -MVV=!TGV.F2N@6VDS1I)QY>KYD+X&;V'8U%,R79ID^HAIHJ >:0@*)M&4;:9, -M*FHR@#V&EI88GG\S* R0?]J@DD'_&1H\>^8,$;J 'J$.* 2ZA,86ODL94('^ -MD),A!OI]:J#AITO))U:D$&E?V%Q.DR5HI+AA>9*I8$WJ5X*E+JA8FH'IF:X! -MCT0AV)^.Z%!Z@QJE5V52REPLI0(#$NJ42J!-J)PQE?*>$:+24%R\ $> $\'* -MN "/19/I&K1VH1 ,0Y@:IJA'8GHGR Z!:6-*O!2F,P1B*GHA99JD5_=W5J:# -M*69ZF#X6G.EPB#5UF,#E:D*;/"\!QP'GS75JB<,,T0.PIGC 0??)0 [ )M6 -MQ& 2'17\\D"( "2 /52#0&8)P*$9 Q!/2PMD*EWMIG- @ 0"Y*:W*883 _2F -MR:EL:D.J)YB$="H"/*<T6P* X2"G64%LRLHLI]CI'(#AR #;*73Z6\XG1R=\ -M1YNZIK>I>#H'S*892VW:!MRFT"F>5I[R 7/E8*"X)0 3Q&\:G&ZG"@AQ:IPB -MI_(I>;H9-*?I:7<JG5*G">IUNJ!JI]QI=.H"@*?5Z7@JH6:G'DZ#"EHA<2Q -MBD5NTB81ZFQ !X@!<P 9,.ET:M I9*8?> A"!(>A0C@&4@MA\"E$+\Z,MN'4 -ME C[RW:F'\@O_@LJVF@02XV!0(!%E('A 7*CGFPE%(5;09OH!T; @S+$T32O -M@I.@'J (P@%,85DQ#J0%B= OP'?Z04<F2H@!@ ? @&Z" "?"3P$Y= Z-!%YP -M'D!OQ%(8X*0F /K!JZ" ^B]EQ(I@PVAK_H>>T4.0'KI!>!!S]$C*P?_17P V -M(6I[2IR6J.D#BJJBXJ<TVXM*T_00,FK%4*->+CAJ(@*H\J@=F8]:S@2IX 8) -M0J3"!O]"B$ P=);8@WK2I(*I<X.4*DI$%E4J>G"ENA%*PD[%I3X/7NIU\:1F -M,YL!F4H&F*F-(9H:;JRCP4N;NG? J7>!G,JJVJE' YX:&^RIZD61&L\ %9NJ -MH,H7V! "!"?!>^)-ZLI 8Q-VD=QJ.:)*@H+4BIM0*82KR=.X^JW&2<_GNJA) -MRHY_)[IZCWBKUR<;Z#M09:?I.+EDF14OSO=36-D$6->E$G:Q#:-+E$&;H"WS -MSL#*\N1C1 #=()G\)!A!PJHV$*PPC\-ZL((C*9'"ZMY(* ?K6X*JB#P0R<O5 -M!"@$.@EHZ9/0/%I-V(6=D*QTR<'*_#5Q=XE E IY6;8'N.3.[0%G0]QU,60, -MV1EMHK%:)' #A2*E[!5]@':&*.<]4R<:STK"'KR46P,JP.*PA0M*9+2.MD -MMK2R #[KQ!KSK#Q1Z]2:/R&MVD32P+3^K+>.A"*U&JV3$M+*M#:M:P/+ [DL -M ;O0%> $2*U^P<.4R*5U84G6 VL^?Z>/&S5A1JG'PZ.#.+1J^24E T AH/<$ -MO_1LJG'APQ<0@C@M*>2TX)/=!3J &: #K $Z0"X&!^@ <H ., ?H '3 ?9:; -M,9C'4@(PQ7P&M4)D,$M%K:O3A*E(85&M:WBY1TE*=ESIBD*D#BC#+.5)E4XH -M QA1$LRNC=Y=HK=*C8?7U5%)_:V0 1D@N,X6A*O&>8AB48@K1:&XJI=85./Z -MN"HQ"*3DJ@-0KI8KYJJY<JZ>*^BJ ]@!.H 5(+J&*;5K8V"ZI@^H*U(Q!ZRN -M^IA5\+KJ4?.K&A>[EA[ :\>97-FNK 'N:BOHKEC4[Q2KM :]*VKPN[)1S]"E -MD/5 -B/J")<N_64@A1R@75 ,GQO1\3P,<W7!&<!7>70?6BU5&$P&QY(9X$7% -M(G) M=:^R0JG1AD@L1$&6T!!( :4!+M",3+0K"N.0Q> MT6OVT&.1IO$' ($ -M"B #Z+ CW/7Z/%QLD*C]!FD(L:<$54&CXC3IP^/:4 PVA *<8PJ)"I!>N3DI -M/;"86P0[P2II%FQ)@,%^@AOL=E9>+A,=U7>F-#0&(BQ+&L%J9BBL8K'"G@H% -MP;0 P\*QPLH,>ZSH"G1L8H!U( PB2$J@:0 ,-BS4EI3>$Q]<!VM>?K!G+!V0 -MQM(!)*QFQ@70 8]L"XO?#1$MD1.15%P.-2P=JQ[8#'=L#-L"-*$*FM(2R*)K -M'MH8"T@@LB'L"+O&G@V/;"1;$'P,54C"D<E*LN$!V+&B!:B'&EXP_WBRBP0> -M KT%!&I&C:4K5&B%K"E;QH*P:*PJFV8XLI L'2#)QA(S U9I,WBR8<$!@8AX -MLD]#'.&\(!/\Q"BKPR8 /"QY^<-R2D%L%WN;G:.^$55QQ)JSMH$2VT8<,)\! -M:O'$MBC^$("!%@F=,RL-8)N@1<KC<;<NH0S'RB"'!3BL#F<1@,A-2GYK>(G$ -M<DI^*P#UN&:P;EQ#BT59 5NJ&\#0'J]5P!>@*#%*B4?_,R+8?;;",L$I.:P] -MRMRJ K K%NU3$AF9%:<7_MA?M+2V@^P8+E$5ZPHYU[%4 :4-IT2*LDDE)1L0 -M=/!C.RU ZSC0<7?,I)29Y$]4"61PZN4% L-FX,=*$_,#(J+^$*M *.-@JV*1 -M*V?S9,B2L=5!(BO"_C*:657K!BP4%6T/P 6( -89?F8Z4+3< V/ 1^5/FI3' -MEC2<77*& (L8N&L4Z HP%?@U3\!;RPAM;RV)'., =C5Z3&^"\[AAZUI/6SD8 -MF+=*7M"(9IL?*DP@.3F-A *"$.?4 (E-%0N;T7051V/6G8(=X,8:T)W.3P J -M"2,XV $G /B1/Y6V#\0)8 6DMJ1M6-:6;5)U 8"&6F2P=BU28=O2J&= "J#7 -MF@Y2P!4@^8U.!P%+Y]IB=#\ ]V8$@ "DF9?FQM$FH*TJ-MI"9MKL0=BI:;%L -MP!G0S#%_F=#ATHFJIKK:5(("R$MU00KP4<@!* .*1M[* >;M2V& ?+-6;*<6 -MW8JVL1M\-\*-<,9L89!UH \6!RB7SATU[@))M0<]2%9<>)L5C+>>4GE[WJ:W -M%<=ZV]Z.3#T'?#O"0;<1 WW+\AUTIBW9*J85)N#'[H:Y47BI*]FA$ORG60$' -M^]$Y<$.;\F9NCEB@P33'L82M^5+SD>=%I8\#;<&MJ:B%;*DFTUVWC6'L5N+Z -MN)G4;"O7UK;M:V2@*G4!N:V[5N3. 4>N;[O7!K>ZE?DV.HU.(*[[&KS]L*E< -M"+!!C &B!0JPY&X!,@"2>S9HLZ@9^)?<\B[,K?"6X\9TL=M\2[/=M^E2?EN' -MG ?\[7?&1W5<IY>J$R]4H50I35#;"#6U33^;V()Q:!P Q<5Y<6><<Q%>E@$U -M!*)+Z"JZI0>(Z\9]<6%<>*G1S7%0VNB:,.F;"53R:JE6+X9!O5$>I*[,'TS@ -M5]4VYR2B!.*>L\[<0X<"A ",;KRV;D)F1:Y#L06 N+(<KGGH;F><[:N+F,A0 -M3( ^!\IEN8C)=Q($3"G"+D='FR!T--M?]NL^ <'N)P?^/6:DVBA'T!UUMVFL -M>YO% /^MG\OQW O]5+BTZA*UDU*O"^O6$ 0;;5;KY@RW+NJ:Z]YFNZZ'9NX^ -MN]'N/D?1A0#%K@J%[$J[&9VOL=']IY>N2$?2I71J63GGTKUM\)VS:^M N\EN -MNMNI6;M%';9+G&J[C^VV.B=TJ]J(/N)1%HKRJN>D\9:K1M!&T/$J3]]JG]6N -M I+\E.%)*(R\&2\W4J\ZA?P4I9DY^I"&!?(TK[:\R]-!]3#26F83E-;5=742 -M@1K0-JVE<(*XFH^XO)<+57%)S!2@@?*D7K R*6S,1(@4!SKH06"GB$(L2E9# -MUIA7/ !+VCUT(SX W]0'_4UP4[IZ]"Y/22_'L/2>$DZO4!%0*!92[T2W1OR? -ML()QT%1JO3E,U\O(?KUH0-A+"MD 4T%FJ]T OB&J5>J'N5( :L T7C@ALY3O -MM"O]2VT2!"*_VBJVE-*#CM:+BM/A:T@)3&M<P#3%"! "S"RU^2)2]2NG0$K9 -M<9^4&?7D51Y"0F- 2'E1 RS =$CI497OX7M) :@XKZ#'+R0'HN\793JA3G6 -MZC1*Y6BV;^9TQ9$,=XC.\;[>4;YOP0#\"K^4+_'[QR&^OX5.$4'TOK&O\YLZ -M3;ZMTYU;>T4]9P4^.YXD #AK4-22A$/; A6 M5I0=&M,]RI]"K!29O(I0$]? -MU*S"L5A/GYJ%H3W!$]R3L=08?$\&1-4@P,!*5 GY%!"83V,(^@2%$, MRJ<P -M^N9+\A-8!A+53Q[,7<"7Z4\H"_]T:L!+L!* BD4)4/;2I_ PP;^^Y<&U0-UR -M'</\VP"GK$Q4!75!,2GEF%["1$51DLD)!2N!K"K4FS:MU5#=10S<FLA0-!0( -M!4/!OSZP8_*;?&A#E B4:&HU0102/ -[4(;?#4R4!+=.< _E1$%14/ 2#"O% -MOYG.%" ;S(*!+)PTW$,OM*U41?H%K,$!0',W 7_H9EQ*Y I?VJY44*PP2#" -M-&$M@<"UVCV1.#7 .T%/Q +D @1=POH.HU'JV"2[V@Y6.MO@K5VFT;#=EJT -MHJ-AH_U#_AK"7P!=0I(DPD_ (HPR+!..,-;J&W61DC#.NI<P?#$))KP(%Q6A -M2&;9"4/"N$,VFK92PDR)Z3(NF,()@ @@UI*U;2UV=K:BHS)<* REK;] \"(L -M EBQ=FNL1.%\P2>*5H+,M@8TC#8+HQT6>H >@/FQ$@M""9LM[0ARG1SPR<X0 -M4RE\0B^0%45G(%P(JR6(L)24"=?"FLPJ_ D7-5G-)#R7B"27L#FL"8>T*NHN -M_ EG-^VP*"R1\"4P21%P!=#"(@ J;&*HP]U4*WPOZ<,>RH1BD0#$M.U.D3-T -MPKY1+YP/_\*T23!<"P_#^5HQ'"QHOK[O^\3YXCW+V1P@,)%T#[ :EP*X9B%* -M/;IG(L/HR1J3R'8-(D94FZ)!P]+P16' @A0()[>6#6_#K$PWS/SY#O>"@H0H -MY22BT4MRZZ"M*PD1X"T8 >IONI23=)Z'R00UI6AG8-E@8K+.PNG28J(1TPO[ -M;*?"5IJ6W X,(+/VN6V!GLO ADNB\&MBZ\@F#+'_01"+!:K)1'R=\":8&7 " -M$.,:E($<\!87*(J3.VR<("=(P%T\>*Q7]C =-(_.3VEQ0KRI ,3GK4YA,.4] -M9VM?TS3YPN]"13Q#"</$\*NTQ"$(["F?&Y_\#JL.I"<*#RH\BH]"VL@H\G M -M7"XI%N?26]R%^<*DRJ*"I-B7J;$(8("XQFF%7-RE2"I3<6U\%PQ+,H1K'!<C -MQIB*8DRA ,1V"$/A4$#$W92,,Q%7Q@F 18R?9<8J;>T%8/0I@' 4)Y:P.59I -M6 0](<.D!>?$RCP,1@O)4@8[$(E!GIH7*# >QOT+5(!Q>L"V=ALD9G;!'@Q! -M#9=ED)4S[S0[M;!<PQB=2&A-* ,>C3+ R6<3(&M&BTPMK)YH!IP!=@8C\3T; -M,?6:+VT0(;'5\& V._[3X@JK?"*4P2K3RES(!(Z '!X!)Z.K=ZPQ[BJ/;YM" -M?8 OT%P$3!H'U.#41%9P!WH0Q#S/$R]S%^,0E+%*-ZG1SQ>'!"TE+$ 2#RP -MI0?60 9(2A$P0GN\ E!L+4?#*<%/WUEH(%IHNG. KM%"!,E*PRD; <L'0 G0 -MR0<%#SZG#55TY@"$\$&G^)H&:%EC0#H-N7+ %I"3U U! !00K?EI1T 7<(OA -M/2A:1KO1I@"(@7'P!7B58,@WZ^8>=QFN1"(B$\A20(=K)L-//[+,L":+Q$F# -MFVPH(\C B9T, IL.!_* K,C8Q?I9)I4&Z &,K@B;*8_(4@!U1Q,(RA4NIQ2@ -M)@;DL%JC*"^[9S(,XR@WQ)*R&60IX\GWD0GK*8/*W0$M= "9RM,IS38H#WR% -M<B4,#Q,!UFWBRRBCR<?2HZQ3U,J6,!%P*\L<>;)&.RZ=Q!(GEYS8%)WV6KBD -M+'\BS+*:3"N_R8"0G S!U<EW,K5<<>C)UW*??(\ RA,#JAS:JLK%\J&\*2?* -MVYF/;!IL$,YRI)R3V,N+S+1,!PBP'+*9,$.@!KIR'_8IA\JP;\'L(:,&P+*\ -M+-T2R@]$JRS(O,K?<J,L!_3+=4&MS-L(S 2S)I,PMZ6\\B(;4F@R$;.PG"I3 -MS*PR2'(L)\OZ<@32+(_++G-= C*OR];RHH0M]YR9(HV"D'@\93)KVS*S1WV) -M/PPSQ\ILP'?&,;?)HW#1? 7<S": 0B$09Y82LX7[/Q7+L;#>@#''S/PRS5RR -M-B6'7+H\,(, 3;((,3)O$'<M"E VN[55,SE;MV(Q'V:G8@%!>JLR)<P/QR1' -M\[(L<BC-7O/=[ ]#S5*S-)$*WP%M\[U4-P\FI@H5@#%SL";G;1#\NLE4@&F3 -MG3PI<$,0H-'R<6Q:5D#I%KI85(7)RJ2<]R5ND#E_&X\ND5%ZI&P>FN:<Z+X7 -M)?' Q"]URH0!/Y8ZC<XP@NP<_"ZB)#/#G#J9RFBS;NLU:RH4BL!L*M, H_-? -M1AA $;B!XF:YN+GHJ)!*X%4>8M0]$3*T "C Y;($Q ;#DRO<O_U_V_.6^V_2 -ME[]SXBP\C\Y;+FM .FEF9BU^5LCV88LH/]8[NVNZ&VVV5MQF'/"%NSUS+"B -M>N ^L\D[ /V3/P^<&X@) 2_3B>#+*<\3R6,,QE3LL$J:?,:,'""P.NS HVY -MS0$K0!J@UYH=LK-4VN:NS*FS!%UQ$ ;#G"05NU&8REPY5\R-SH*4S/!RGL\G -MPP.-]T30@E3[_#B@T'2K_5RJX<_ZL_&*.S7$_;-ZD,G55@XTP=ES$#(#= ]M -M0'?*/VX'+4C%SBVT#P "T]!9P5^FY4)GL1NOH3+@<N:>$CV5]+H4)F$@RK$R -MI%P/8,R5;:S,=FM#4S(+-!C]*0313S02W8=.T!7T!9U$G!'_Z:"L14?1$_23 -M)D*7;23T27?10=&PBK\)<]*7;#2NG ; T)F4#(TZR\]3B4S7*1O/*T#N,4<G -MSVZT'<U(=\I]]&UVKJ%SF#03;<YQTF>T[ LN,[*LP7^6.K$O667P:SIXMMO9 -MA#LL3TH9<:EKS[8+?+&("1/HN;N#52HT0RCYB>(,W\7,:3)YV1C[RVKQ.'0S -MG[<#)R$B2:G,\_+\=#A'*(FS:DN;R4^K;>.<.D'.DO-10CE3 9:S(=?'5=.D -M<QAG;X+.5H'H3-JJSJ5S;W$Z/[?H=!C7.JL ]"T.U3W?9K/S.>UHV,X$0?NT -M,/?*N_/E\CZC ,-TQWR= ,\6B?!\N1#/]K3Q'+Q1TN!T5L \I[.A:J.!1B40 -M[\_T7#U_"M?SBI ]V]/VM/<\2)L. 373#$TKQ%3 ^-Q1J]#F,WTI J3/Z!HX -M31B4H_\T[ 9.MP;NL_]D3^/0MUE(W3\#T0#T$"U SU $]!IP1#?4ZR91'473 -MSS)# ^U"RQQ^[?9LN4#2%C29,$EKT*MM C H&]6/0QX=0B-1#R\%[4>? ">T -M/9U"FU/?L^E02#/5[#09\U+S8RD;4>V5R=.E&B0M26?07/5'=U5?TN!T)FWP -M<M)YM2=MU/'5(Q0C'3/+/XX!"G!*NP:I=($FO#VW;S5M]DH3P]5QA[D[D%2[ -MPSG97GE+84F+I=F.U6DS(NJ$W 418N5+F[C2*W/^=#B7*B2U-$V;4-."];IT -M30\!D3-VHDV31MSTY7S(I=6;LW,Q3EL%GS.&&3ICT>!T;FTZMP9M-2,M7(<' -M[W0\'5C/T_AT6ET[.\[Y=.[,3P>_O'-2K=LFQP(U:KVI&-2J4%JM4"//5#4C -M[5"GRLUS1/T\4PS1,T5A45O/V+,:=Q]OSR<U6?U1MTS/<FQ,4)?48G-3S6^B -MU.2E2LU2Z]?L,TQM7<// '9H0#_;U. T3NV2.2!)PT[]/PO1&S 1#50;T2J= -M6%U4B]=]*%(-5.FV9_4R;6'CT1]T'"U5T]6Q[5WM5+_1'[0>75<G 'KU'_UA -MPRHK-"&]5'O86/5:/4-;V(WU3?TPY,_P+C?J Q!,CW$/G>4^V %T$5U 5]A$ -M-6M]8O=A3'2'G58_U9C;%+UB6]%.Q),]E;S87#08_46#T.6<&+UBE]$)'5R- -M1M//-FH3W49CU5"U'$UB5]4F]D<'8I-.*G9LVV*#U8#UDAU(Q]AF]8S-.A78 -M,70Y6ES;V12F)OU76]DY-C@M5V/0=+2%W687M=OSG.W2I=6!]K4+6-O3@W4I -M;5BKTHBU98EIL]*K;6--X3;3%N?;3!)U7 Y+G#/4[*TSJU)C:J=855R=0^U> -M<>ETBBQ*(U)V@*,K3F]Q<$#*6<;!M25DZTSQEFZ_L%YP&4NMG)*&?$W_%SC -M09LN<9CZZJEM>_@.XB]8DF+Y58F-58K%5AP[0AR 6B#:V;93\YI><>U:ICM% -M34I_F7*<,Q2\'W1'G$>9Q(W9_*0ZA]LF0*S+*2W;XR]5P@3(JK">P!#J$AZ6 -M$HCQ7MRNJL.T&C.<&KZ2#H&BV,$_,58VU+PCY*:Y2TOUU!&V(3- .[S@6\51 -M6]D!$/?*0<A4)2O4M';]6;LHW</M1+_0%'<"D";8<C,VF_;.[7(!U,?PS_W5 -MJ=PJ5W9TV\"<*D?.H71I0LD-H,(!VRUQ:G+SW D=<;KCTB9_6<N-;G_2.G>O -M*W-_&W' 1)?3X7.=G+3[;7=JS.YM6G'S<BP=S5T2!%@@]T7WI1V;-X!08P- -M<>&2PXUQ0]@:M\0-5%/<4K3('4!SW#JPSBS0K7(L739W=D/0)??)S="EW+$; -M%WURO]SGG$#W=W?9J%PFMW1KW7/WS8UA#KNO-M4-='>G/W?/3:H-W5>W)Z=W -M2]J(H.6M>)\ 7G;2[>H>WBV1TVW(Z'3YG-1M=>_<DG>G=G73W?P8XLUUL]Y> -M][KI:HH*\$*"-!:;<;'V.UUKX]Z5[CKMS^I1MUP95RJMM\ !2@##; $[E$0B -MJA0!/L!ULGQW5,EM\BU;:R?:@E[;49%F.]1KLGQ;WWV<D%9ZG &C1(,=IES= -M-*V:9R8$4BQ=E-9XR[_R 63C5UDWBNJD=%S+VAXQK6UKHW'A9<HV\&%1P?=K -M1GRK ,8$Z?":A9?@]S81'I!T.<GRW7QKWY#)=@)]5QP)> ->?4^G:6[V/7U' -M)M:WION7E=_CL7)0$J3?%#>S#85V4PF28N-T@;=R !RP!A0<[])MAK[(,!N5 -MR'% O$NMVC>[@7,,'NUI0!?D 5.W1ZQ0J QM0.Y4+S'1*+&')@: RI0!<8M% -MI0 !. QC.D3@U'<1D('#=P6X&$7NTB:]+BT%[WJ^Z0/HVP8LS8=9\ W^#7/J -M]VU:;F?<7K2P;04,;_R;1QS!H@8[%&9&]L"M3X#<*J'DN.#V"=>=3KB0G/'- -MY)[=V0:NR>W&I^%WOE3QT@M1CT@E*K3:\%T*OH(CIKXL$_V"1P8QN&Q6--#@ -MHC7YC8-O=B3"#MZ#!TP_^,H@A+M+K.YV5H7G2^5HZXL[S;4@<4-<R#;A3#2" -M"T"E *,/F$FH "G.'O+IAWA(,4;H(33OK"XZ9"+?[.Y>"D.F67A88%+QH7# -M!E8#&$[(B.$=%1E><I_A:'<:/D"OFV6;NCFD)>.B].?;C+?B;'(8?LJ<%F,X -MZ6;BNMDHMMOM4ZOA;+CJC8X7#@'3&[XQ3RF^R1P>MSH!=[C*W:G-4<W91K6$ -MP^)X.&UBPOD9^C@)1[SUX:1#K;Q]QP K " >@PCB!7DQ7O$>Y%0V%IV-4S*P -MV9EZCJN;;FY?P[D0!QO<B7 <<!;UC_8,PMVF?#@LO@4XY'<!1$Z(&^#;+L_< -M89(E(E78'333)OCS LWM/@X"&S\&A4<F_;,%76'[W'^92IX&= %3-ZRL-P/) -MA_2;J[$E!HTWK!W&_=\9@Z:+D^_8&<-M]C6$Q#I%_[S&<=F9KF+@5?^G&?.^ -M7#3T3FO45_[-WK=/^:Q+F\W?I=-Y:Q6<M^]O^XW9P@L=4/R]C^_8.GE0WI-3 -MPLMW4'Y$$^68FU&.E)_>7/-9WI3'MCDYJZM#<^5BU ^- H#CD'+'?)2[ &^W -MD2V4K]C:>&'NAV\!%O1/OIWHM8=Y5?V.B]+C!6']GU'FS_)E?BG'M@8N ZW; -MLN:1LFO^0J_2:WE;'I7/WU0Y!UQ5P^7J]NRKQA%,5GD"@#]GY?S85LY#JW)@ -MN6LFEA_1%[GA&BL#R7];"J"6J]PX-#=.F]<%/718()D33&CXQFUD$TS0.:G6 -MF5<<X'DUOG'S+F2YNEEI%];I^:4LF[MK\?EMOEC;MZ0M/_Z+F\0 .3FKFS?B -MJS-R[?O*Y2H 71Y9-]N.C5!S*=S>JID*SH)'XB[X9T")OT_G+0U^WF;B-[A( -MS(FG!\?$U(U,^P! ^"A..I3B1C@2[HO[XW4!\12,\](+.3%>B!_@XO8Q[NIJ -MX<HX_.2-"S ]4NA4XCC#10H%XV;XV8XYG9V9^9 M5NN>KOA:08<3H]#,F_K -M/9Z/6]T#>4HK=-^F*CE+7@:XY(CX6G27 *S>LB/^H"N_$3H,3J&_%!;Z2X&A -M8V[E]XC H?/@M^F''J+K3D0XFP:+WV:R^!)>B^\=8P N_J(7LKQX$HZBRP$J -MNA\NC._I-)M$'J/39LCX%FZC=^'->$C-HSL1/GKG-HT+Z>&YVKV&&^E4=SR> -MI,_C<GB37H?CXX6)?HV39P[[N57 A/OA\&T>3I"CY%3Z9VZEN^0=%Z&DH!,U -MWP\ANH(5BMZR<8Z5V[1;N4YM<W=N_3-"EY3'S.<M6BY)?7(@M9G^YN;GI/J? -M;JKWY^G:<1<P:1>R AK@H*, K#2;&ZN/W6,)IYAJ/T%)35F1;!+)I,2FB3&H -MG*\V<![[UM_ ]Z0;H-LJC[GXO7\#W^-X&8<H;;0,5+R4X()*X$85<CR8#NXR -MH"R3(^AM$5Z>%JFF]C:^K4X(!^^!&#%]^$I$P,J08[0:* *E2C 0'@[1GM$> -M8(N<;CN<J-?H7\"-_H4WQ(\Z.?ZC"V^8.C5.I%_J)BZ2GA?'X?6XIVZ'A^HJ -M=Y2^K$-F;?>0OHYCP4:4X5=RN^Q*NARNV2A)Q:[> -_:[/CYY59QJ #!]]$- -M<P=8(0!KT-FHR<$WCS[MWJ9 .Z=>CPL!L0W#20YUIT@[9#9T;^,DA"'C!\#) -MK\DN%"[L#5F $S $G.QE.'&:M</LD S73@3\*.+0T9X^Z.'X.3D(B>IG&F-( -MLQO(-/MG0#$C.#+?C"SZ=/1O?.AJ:B6C 2)WMM&.[]+D<IR\-1?+:+L>@RS' -M;NZRITO2.;A,A,IM22^[F'NY/"=/:QASI->O \IT.NA>0(CN'#1M5MU6T9KZ -MR[ZDDSW?R5WT.A6Q6>J'P47(:N;U8%.VA>VT&9PKE$R<J E:P(@C2@G[D["P -MNP?N![7ZL.N>$CL00;''$D#%OJW,T!8:NW# L3/ODO#'WHTSZC@ZR?Z,U^OE -M.,JN9(.S,L=(?*@3W92Z>FZI3^Z5-S?N$8OLDWG[;KZ; -"XI(Z-\V\J^SI^ -MC9_CW[(\3K?;XY_ZDWZ0(^W$&^7-OJ_BAOC-5K9E;!KY]S:ZC]9].VV6LU?J -M@LD3W+-?[7)[[1ZTU^-#NW&DR!CM8/O>OJJ+[95:E T21^93&M->KSOM@3?4 -M+K4WRU7[^1ZO@?"DVMQ^N]OM7KO>WJXMZTK[J_O"YTOVG&UFMJ/M8(USQ[:[ -M[7#[SR[":^UU>VR#MQM^*?P0G\&W\!7'$<_>_N]4=^=\F]WI-P7LFS;?W2_T -M"O!/B^&1-"+]O.I18W, 15.[!J_S'3V5S/%H_ #5=[NZ 93@'4:/T>8YADD' -ME- 8IAE-JHW0=, @_U6+T2IW^4Q>)O*F@QA>QY]N0FYEOC&#SP,VZ>3D1O)H -M>(ZKG\?/H_5_7K:Y++I:X)X\_"[H@P!C7QSN@$SB+D L[HR[21Z6/>Z1>PQ" -MOQ_.$@G:GKKC\I=SG*RYI^ZJNW'@N3>X^WH*$+I;\+$[U5VZQ\FG^Z($S ?L -M=4%*\+D7\\<\\7;!)P"S._'FPW?J>X-F\[8C3.AH[PXV_.[\* G2N&_/JGI* -M.\%G\%8L\X<#$+YWB0W@?4KE^+?O/>BZTP/Z55*@OQ2J,O]=K_O?^WKQG9#' -MQ@OY0?O&X30O>K'=_))).(7DZX34Y9_":=*G\ X$;IU#ST.ZQ/7][5S$Y?J\ -M@3ZOJW']][WT?\/BG!(!GM#[<=DO0[\&./1,A6:<*4X]M@>9C'B.OV$1=P8G -M&-Q:20&.IAX5*$H^*C#(Y;I<"S%KM$R^TA$ :80T[Y*3VA>W21YO#3&8?>B[ -M%\E@#<.^P5/DBX>8ZN\"(>.$Y&CT-J?[\N#;'(MG,HQR<K4"%0.^M\->.B0. -MI@.U$OH<4(F7?C2X";#5Z["&>A$^*?7I)[JE%*B3#D]XEB*!2^'!\KTDOM_O -MY/O('H[K\)!Z^AZW:_#Q^\I^RT_Q![S,#JJ7RC6["B^E%^_P794^< ;B,3D5 -M_J)W]GL*#" FTSCC.J)4TU,E.'W($EDV,SU]XO[37R5!O>HPU#LA1?U1#SDD -M]1V[,\U49'4%T_-!$@?GG.])[,:9<7.N)Z(\/?4O13)M3DGU*%KI9-6C",13 -M5B_7,Q5<O6E?;\,)]_:3$-9/'_$84$'6BVRY_;KFH*OU$8@DWM:_]:Y?7#_7 -MNW&&.D'_U^NU*X JKE-L5+L]D.U0--5S^C0_BY/QM_@P[L;A]?OY7N^$+RV$ -M>KI4USMTNQR-/KXSXS@Z=FT-\^_H>Q2?LC?V GR1GD"CT9B;@D_8,_A?.&UO -MW^<,)7ND+HV#\7;VFZVS1]SL.(E?XHO2!OSM+MDK\/R;<=ZLZ_6G.ND0D//C -M=53.0-^721_^:Q"0,_#\FP.ODKOW43A\_ZIW]L2;H3Z(:_/:2*]AD4_>HGP@ -M3\ETY+[11SZNX:/&P2]'_PCODS<[CY ?WT=^Q0N9*?D#^PB>%-0$(-4%-N/< -M'J_F#EG%-N:/+4_. _CD?GT4+I@/Y:1:4?Z9'^7#>JSLA(!HAYD38CH$]JLM -MG!^6UU8>?F_/[E[FCOV=OV+K^0EY:%[G8^"K$F=N;K[G_UFB_QB#YB S;'[B -M9O*:OJUKFS/5N+E_7L&K9N\Z53X&/+?J>O#$K@_GN_>^J:N'!QM5<2MB?&R> -M2(.MRAT$9'BP/@8,YCV\G\]4&.O6>0P1Z#,5I7Y^OF,33#TVCZ_H'TPG@W=N -MR #1)W[:S8YWYT,U(WUUI^=O-WL>V[KGL;)JGC_G\6/S/UV?D_KW>:@M3^OG -M?[J +U-/2CA^TN!0[/A=4H]/8_=E'C&U_EA<Z]EZ!.25+7%K ;<#L0C%\K,D -M?'5'L.BVCR*;T$6741& E( +%+>ZZ=RK]"S]N*&/,_7'O0D U2_W@092K'JG -MVRE]<=_07_71O<>OJTWWXP9\&S./!G@ "A 04_R1>'[F<XNW[++._#[!]9'X -M8+;>WZ:&_DZ>ELWYQ7%@_C@ ^[&YY5*6TP%_OMJFU2/[Z3YFG_FD*O6B)$S! -M!ZM;<D1_>KV:,(&@6_"WPP=_FI'P6P$+OS'H\.LFY!"F+O$O]"+_2G_5/_2Q -M6W*]>]O0 &I]_^S/\53]O_3J8_63?*>&\>.\R#U(H=Q/$!W_Z0WR5_4P/W1_ -M$IO\_1O*CU.H_+$RR^_R/_?EO<S/O]'\.7,E>/.G]SF_XK\&D%(\/U\>D\OY -M=/X%OITX^K>INGGT)_W'_KB1[%?5V7FS7^_/_=WYD,WM5_AK.+:/9$OY'O2X -MS\%[^U6UN@GNZ\WB_KE?[F?RPO_6QFDOUZ,Z'27OZ_BA?LZPEE-'4#]66/U) -M_?\YP%\0\<@T[Y[RCM0XNP/Q:IX;_%W_ <Z/*?SMC6;#DSB/4?G9'_+/DFM_ -M2P^;N_T(=ALN]S_&=/H[+=S#YIJ)ZKWWG[U]OS;L T3U@3^?6_^F[E>N2_M) -MODI^IS?NC.;/KV5U6_G%'!Y_A;_('^)O>8,"J/E9_D0..#_EE\Z/NL< ]+GU -M_/QR0#\B'U!NZ(?GP_T9_6)FJ+^EG^KO/F>::_TMV)Q]0;9HG^ROVF>-F[!% -M^[)]'S]STU]F]H?BX_W%^'Y_H[3@'[DOR:7[&[FA^XY_L+EX7UU@WM?\\_'M -MX:!_48FH7SOLWV<=\WCT*3P>,[WX!+2-/57;@/0 X=XG(PS=@$T+):;J6AG, -MO9(*F &-&[FKT,9@*J,X4LXHZ(]@@7QOKK7YZV0DU_PGK+5V&AK'#?@0F:BM -M^L9MA8-2W//D=+#+\:%-^_)GLAP.WL2MDU$XV&[A4-YM)QS% %EW 9 B1IL -M4>B :)H> ZC,=/ U0**HU8![B!1XVNYM$#B5X .&4B@&FD#@&AJM]/ UP -V -M,GASC90^(/I#$O@*?-?= 0&!B@%XEW# ]377$@4R >!.311H/^$/,'LJ_^! -M FE?_+T\W4:EC4=AVJ>9S%Q]ZS92RINM#D@*O+!-^18#_R9G'?%D#8"BF<6) -M MD7SD "X*RMO+7&\6M1,MA]L[C-WS"PD88+].003%( 6X Q@)VLZ@#O6@>Z -M ^T \$!YH-@L*T#2V>]U#O!TI).%F3EP:?<.C ?:R380R3EI@CW0%Q@/),VI -M4L)0@D#Q%D/PU[<JV0?2Z69Q*+%!X#TP'^@01 BJX=:!43J"(#[0("@VFP3B -M4"XI&[&V#":0$UA* P=N D4,GL"Q&C10.,<I(,XQ AMG*@#5W#JP%!@+/ 7F -MSG:"4316H$(P6) '#*>A<6Z!@\#YVVXMW_0(S*I9W%1S:1<MET#P)HBT:PH. -M:8*![\"8X(^K&I@5<+@%T1Q[7#4E&_LL.5=*<^/,S_@Q3C9WFU/0R\55LUR( -M!<D8?K<_GD"GS-;' \&1MM9W?1A'("--D<=84PM"V99VL3.<&T7'\G9T\[)% -M!0,HQI75%EZ0DM6<Z; 5V#IL%T$[W3^PC)<*++") ;"!,"?57)[-"%CN$PBF -MU;Z"0[2$X%[&GE85Q.PAM=B!I\&,TVEP*[AR(F- !ON!DD%;7)ZN,F@6)&-< -M!G4MMI66H)D-5T8;] M.)4"#$3;18&W0<E$:_.AXVL(L>D$23C6PL786U**0 -M >9[!!.78/VF$[@.O W^FS2#H0'IH%^+#8@2;)]4\N9[V,%4("=0FJ 5Q GJ -M!&^"J:\WX.H+%;@P PK"ZUJ!1$$[H$JPMA5OT]\=]L*#"[/QH!E@.SANZPXR -M!G-\KX%Q7WF0_K9N&YB, JV!!$*:(#QM';@#Q ?>!(N"<I1EWVV&..<_ PY: -M^\9S.$#]G&/0/<@8+-5M _&!0,'&FE=&S=+Q0FG9A*H")4*9A:@A<51/D1VD -M" ,6[0J/DLFK0[0NXJ=@CE9>%R^ !;(B1HB4L1&&I$H3CY8L8 :JZ!6S@!&N -M"!M%906(D0S@+" 1*! <"'1 39/)0!T 8' *\B2YI008I+@[%M/"KU"RL ?! -M>CP6GB2KU<9 ZM5SV5F!+%)@OZ#2TU6*2'B/,!&&DF)/,8&[D/J(=G0E--1H -M#"@$6T*G19A((L*Q !/2CL2$\ 0B1IG0XW0FM'CM3/0DE:QGS[=*(M#QRK89 -MI@H.+,).A8LP1XB-<!0J"C=>NY@L$\I+#_0&:A0F"E\#QA\:X::PBY2O,O/1 -M.&H<;+XHSNT!5=@/RM5EV_H?. 72"<?/&N8]H162<59PI@,]AA'@"3"T:>+1 -MUH( 0CR^'0L/KM8$I/O9_S*"?9DK3MJOJ<<&&,P(#:9Z$S\#(,GO\*<"7/Q9 -MY3 &FSVF@E3O-O,L1$Q!!OH?)0,Y &(*7!AH*/-QGRH>R+:/2RT-<D*?0!7. -MS;QEV$*"4X?A4<(&(!.P]38)]#XWR6J,7AC8P]F- 0!H\\)S29B.T9 OQ,P% -M#"$E7+U"7^8 0$A>*A9V #5XMCYQ8$>K#4$\V=;L"#X1*[CF5:@-4:+O0P-@ -M#,E+?!02X<6+J><X2D=L"KA5)$/N$;5",C(I/!2F#%4\'B6YQ<FK88%Y.@KA -M"%V&*KU/!/>H1\@F. H-DEQ:VY#HCRX)^X,O$AU]@'Y)U:,AH4G*T822NJJ@ -M#'.&Y"."A3YK%!03 ##T#-=/J:"7H0*)GC(UI"E5#:TFO*,YX<N":9%<42HE -MEI0/+Y.4@S=)AD M01XU?TA&0D/I7YKH>>1+BAZ!D!9)U".##ID)>R1^VA,] -M#9>%4<.Q LJ.%2!J1KBF792&ABJA-9PA20U'!Q^C^("AD.L(9F";'@0,!L: -MCV($LH@"Q-JP# 0S>4*="[LI-(K#A9!PVY3V42%=D#Y6SH$00#<D+D*J,%T$ -MB;)<29C<R@\M#Y-S*:ZXE@B%MB8LS,L/<,@]XAK"GV!'7\.K(00)LH7I4 $L -M:XZ'R,/DH?)P><@\;!XZ#Y^'SD,LAE^E:1(,$K%05[P\8Q#ZQ^J05\@MB$C4 -MB6"'_2.:R^S0[")"LAT:ER1D2:784M%E<6B3NAC!"0,2A\-3BW1)VQ25,!Y" -M#^^'^,/\H?X0>0A:@5CT*1AN,PY]EIRCHK>' A/1&=H."Y9QE38)94+&L']D -M!:!D'P/?WY0OHJ'+R@/TS\Q-OI$VA/HA0W B>"!,9YHG#\2:E@21DA&)^&-= -M$#&(>B$3Q08Q$L%!-&U]$.E1$Y &(I@(#\'$X!\(&UX MA.4A>QAB5.P\WAX -MQC8>IA"Q6, **,(KC$V4)+9:)0%/3@J@!C>DH(+P"G^%M E3%E9/%\(KW!4J -M2> &%['/1U!$K^#D*(V0,1830 [SCVODB"@",/\,PWPCE,.?E.)$^B%&M)R1 -M)&IAYI\PP!D13F CB29PDRP,]*S:"^W@LB5$U(G8!*@"X:[R!R %DZ+*@9_H -M!(M8&T2HX'5 W_8PF*Y,$;93W@0!43A!<9(5 (E$R<11\!/*P"C!A%C$TB0R -MLBJ(E$360^6O< _&6&\*2J(X+P,8KND]#"=^128 L\H(D3, <E!;\3& "&* -M$O%U2X5/A"B$DXB.PI2\(3P+K<3T8!\PEAAV.$34$K,:C3/RA$W!+7,D*V*1 -M)*0#S(3QU@H!5U%&9 *A9D*)IQ)EHB&18\"8ZF,A3'PCOS&,0;=!O>9 O.-H -M$]<5!(=4(IS /\1I $0,-J!#>:N@!F5+=X#F"VJH"2T709%?(=K*<F'^@0)H -M 8P OH,: $OB":"ZZ2)F ?:)4XE^XC\QH$C50$[H/$8DI1'M3#5PBQAE,"@B -M%'5/3*#1Q1CQHOB3\B<"%*<3D0IN@;<@;X 5HV0$1:R(1HFF&'0(-.8[4)!4 -MMK RK@[O'S[QB5@YXR@J%#^*-0#P"!: 5_B;*"A"% ^*SJN;8D!1I\@KY-IY -MEWZ*$D4R!D71JH%4#"IF%%\3ES"GHA' HSA4' +L%$.*W8)O 1^#HWA2!$ZD -M%+4ST*&@AN3$&5/9(FI0!0X2&J2I1#ZQIBA5K ($ :X> T6?XG$"J$C),/^X -M%>&*1L6'XEPQJ3A3+%@Q%?>*4D78QD:QK?A6C %@%4>*6T7G55?QBJA2K+T0 -M-=X%1(TL8&7K!F O>.*4]I2*-$5NFDU1,=2SB2MV09J*=47.8F"CH7A4!"Q. -M%'F%7$30(AFCC3A8#"TV@4:+V@*1HE91;\!5K")Z%>$&8$7'(G:#*E!6^'X@ -M<50=@(V*$QGC"F#5R"CJ$YU7Q$4Q8D_QLPA8I&0D%S.*>46+XDUPJ2A=="T* -M%J.*SL7B(LHEMIA5)"DZ 3B*ST64"TH1MPA: 6S8"P!?\\1/ > +4P#K$(=A -M%K=I00".8FDHH[A<K"Z2,4PN;X/)172QJ7A:]"O:%_F)&44W(A& HXA?C&T< -M%F>+)44RQGQ1O'A;;"S6C]8Y(2H:Q??C(&%6.$@0$$V*F<7XHO-JP>A9_"]. -M)0H_0@!O08]HOVA:?"^F%IN+J\4 8VN1C %B%#&6?[8%W<7$(B6#PSA>=##J -MJ\(?,HKP!UEQ)Y!BR3$^<=**68$C0)0A+&$#@"]R%(6,4P B8X=1M6BY0#(J -M&4F,$<7I(FJQHLADG$HX&1,;*\8FXY 1R\A=1"S2%IU75\8B8XTQM_A@1%0E -M-B2+/$:R1.'+*F6YB!D) >H&'B,CH_/*S0AG'!@M&5&,;49O01/@S;@ML#-" -M&8&*_<438Y21DD%G[#,6&;&++$8](Y\QSMAE1#!^%^>,BL8ZHYBQP4AFU%?9 -M.& <,8XH#E'@7: CT_IE!9 I R=3(DF@@CBR0<NPNM!17*B@@(L,.6 04""& -M$OY8,X@90CPA)4 F.#@\#\J)H$8?@*CQCU5JA-GD&MDLA9-LX1=@UXA*O%!, -M)7Z-NT12XUDF+7-J](VD&E,"JT9L6#;IU5A!C#6"T58#M,9' ]Z(?7)L++0, -MG$J(RL:7#3\0'?-M]+0$&WT RT1PHYC!IF:Y^-!Y$O]8YB9^S*_1W%C-$#:^ -M&XN-[<;DWO_O-5#Z*9Q0,N2-WD8? +"QWHANA)\43@I7'SKD@'( R_)OG"-P -MR'@$3K+^(8( -8$@<"F".S!;IR5""9!Q*J&."362#/ .EHNUC&G XU@R**6% -M' ]UE(R.HQ/MP*#.:@V<',F YB:5HR^1= "A$SG2 09.])(WA$^._-?$,XX< -MMCB$*D=[7[QQ\&?W*Q!&]PI7;"[]TEJP#-4:F*-E)\(8E8U6DW6,J'%:HF*M -M)IQ7;S;(P,")%/5V2XI@1K@:A9\?%M6*W=37\%]TEQ8A4C_%1>Y/Z^@#X#KN -M[)@ 7T?[QH]B.J4%+-BM!,9-7(SS7(IFZ_C-Z#K"'2D7]HVPXVN*XT1N%#@F -M&\4,MQFVX[YPL( NV1A*0#!\,!J^8^7 [QAWW$G,':6.]:.5 )HOZ.1]>K.I -M8RI0"#2LHU'0N?!*?'F,2YX61P,Z3H*%./BN Z"HG"@9K;Y_B2@&P]0&0#I. -M)>!R^Q/3P&)@(&![U /JUM8E#I'>X^AQN'9C4S<-%LP/2X)7R>J1XSAR;#OV -M'4.#@HF_(]CQN1,#>*)('^6.I(WJH]<1\+B3.%(< ;2/U\?N(Z-"!F!]K#RZ -M)!@5,P#AH\R1J0!:L_7-&_4NY\9E8OM1,)5"&%VE')N/B\<#@[VP\$AL7#=: -M*<Q-IHVDB!3 3(-_G!<R'JM[,<<"I+FD@+!_+,[HS'Z-^L8-@LZA]OB54>=, -M)]A3^ )!XE_F\^B\HG;!'E-]/<&2 +YNA9!Z%+<M'WV/[P778\KI]4C&B#W& -M$HX& 10*I+H)]Y@!TSW"'X2/2D'@HW0!!_FNR[\)'X^/7R@9I ^(C*&.>9=L -M 6 N*9/VB3O_GAS=#Y.'J&/V\?IX^4#_&A^##N6'[F/IC$F !42"^E]W$)R -M-;R/Y,<HI'W#^YA^%#VN'\<-[<><6L!QX-@O$#;.'QM3(@3[(Q%2 ?GYV@[L -M'W.-_<=C@O(Q =F$S#]N!W(/ ,=JRK?Q\*B'5#M:+E2.^T(F0@-R3P:!]/O] -M_^P4$0@A9/\PQ<+MJ+:-J"1A,<<J02 2??! L\FP67@RF#E[76N0C&':F )4 -M 80 9IJ!P&$FUPCX8;,0'=H*=J[^F6\$>.)P2"XT[OB0 $-'">/Q-G.#)#O. -M(9N0;L<(&Q_ )Q=^O'4\=QJ/H\BDX\HI7R-Z](Y1,A0F+05B%<<B--,X@&Y4 -M'M0Q0H050 L #\"-%#BP,;Q<K+TB03'AF'"-DB'.!B(+Z 8!$1BG\J!PB"AT -M]T +_ .@!6$ !T ]RS_L*>1YHI4$B7"1-H&)3#EJ(@N/K4A/"RCR.\,I 4!. -M)$Z1J4C%FL8OX!B0U+N\(GD#L<B^!BUR:0-IN$52,A)YW,)+('TPZ#CW,QVX -M"X!;?2V8#B6#7^#5\G*-S7:'=@A0A(FA!_"<L= DS< SF(&$I.F 8*3#(F., -M<-I?@37((PJ@$N-7!*@Q)#V1 DD:8F(P;:46Q$CR8X0&\SW$3//1WF<Z$)/Q -MM?@ [+G:($DRE07).QN0#$4A@X7T65K+0H,<2.3E 0AK_1I6)%#2(0GXL7,U -MU7)LZB9GI SQHB"-?!A0(^U@?0=L9 ]!&]F-]$:^L\"1/#UQ)!O F% T$#W^ -M*S)+7@;V6-^A'8E2>$=6#-H?=H%Y9#VR-Z#(>>=E9?J(CQR%&?>NG+,"X*0Y -M'H\KNYKQ@!I2$+ER;"L &VTRWYE28UKF4Z $8*+4! XB_)*1I KMWU2$C,0I -M4@8+@QFVPH'&W#3'VR"84]@# )I]F6NRJ*.H>=OH)$, (K2C%=EQCM>:!-.U -M3S)YQ<GRGF]R*F'%PCCUN(23I9(^S#),A'62+,V, 4H 8C$R '92!J"B @?2 -M%L@H2#_X@Y@"!("H8C*$)ZL$)0#R)"LM.FE@$[!MV)1<0"Q#9#HN!,"31&T4 -M?B(3/LEJRF&F%?,^,:[L*6AR61D)8[A$,BG-$QQ4)MUF4B(RAE'2.9B4Y$@^ -MQ@9]]JRG9%02,YE)F4Z:)#4S3+VLY%F+E$6;; VX)]-FB3R$UPER+2B6]$R: -M&T&3!H5E([JMW0:=; UZU"Z49P,> .0B$:+S\ %L*#\X%R<R1L:I1;E?DZ_! -M*+N2$ :PY%/O)VFBA#^B*&>3I9HY'D;R./F>-$E^</QVTLF29'72.7.=S$YN -M)P$)&TKOI!L /+E[) B\ -237$KQ9'H2L!&?5#K^!5]=]<E;QWUR.Y&?K)$1 -M,OB3(@?CRA+G("):<6P$S7*4EHL=)5&2>1=#'$4FA'0M58DH@P9,XX8YT [< -M##88_"@7P=(AH)!G8!RD:"X.%HC@PFM*9,2GA%/:%I IIZLQ@ O@$TE#U*UL -M(LL G<@B9=T' I$8, $(_@Y<E1@A@%^1#Y"JG$CX%;EZ[,F_S!XM&4EX!$7- -M\5 YH+1DY('+@U5\80YXN40+[Y--9:$E4RFLU+N0*DT'@[S 'GN2S<6>S#@M -M*\%XJLGE'GDI.2DKT,R<#9Z49(S\5J_21_"KA ,$*S&5["M-):>2.3"@T4T: -M)^=SN4E9F?(+26FYV'&UG"8(TTIS97F/!;"=X@%0;%J#LDI@I<BA6(D^(%;F -M6=03L\KX#ET@0I0&2 .D*]\E:CSDI+Q25K"U207VRJB5T!E_FL)27:F<O%Q, -M!40^=SQ]Y:5R6!FNY%<:6E(GE 5DI<;28^FOE+< +"V6V$I'WL'2-2D"\ '< -M*TLU>,B/8Q&B'&6I)%EV+-DL8<"+ X+RBO6?W&>Q.3*05AP\Y51"3TG^*DK. -M\9"2<RVE9!.2*4D3B%#^)J"2+HFF6I22*GF29.J]2_YKM<$EI?LLDQ>B9#>V -M!D][ "! I6=A U&H/!I,(1*5=:_(P"PQ)?"H5#SHC225^B9L5-RR9@FN3.2) -M*X.2S %/)4!R+#FJ[%2:*@6 XJU6I5Z!5=ER454:RA9!>\A2C;:R]>*KI%MR -M+.V6'LODEX\ 6>EALY^]*\UG54D1P(WR=<:GS%=Z*_>5=4ND7^12%<>IZ<X, -M+)4#!DN(9<*R20FQ;%B& UN7#K")Y;L$6.;QV]6,+$.7=TN]"\@2)R8E^UQN -M+*LI)4M*TLGRJ('PXE/&+,D > >:Y>WR<2FZQ%G*+ $1.\L$0/_0L<'MD-61 -MFX26YZ;G)%&2/:FRA%C2*RL.',H>95+!?.:][%U^*PLM4 B<9? K9&F^!%VB -M+PD.H\M=8.721<E?6UDJO^B5*8"7)3,R+3FB>$8N+5@#K@0X!')E9U6.!$4% -M:6B3O,B%Y4L-7=FZE$-&"&E]"S3GW,]OYPCV:V]D)TA_PLG_).%KW.%>;$[J -M*+6714OVY((2:;F17$IV)$,&6;VGY822>VFAS%PR]2X.6,LL&OW2Y82Y')LY -M+JLIZ4M/R^[2&G;#1!_D,(67:Q21I,H2DJ>Y5)_M+)N1_4L9XAD @,DZZU3J -MK#Q.!4Q*Y1!R5W.TU$ANS)26 R>F90T*) FU- (L)\=J*S079LZ05#F?VEQ2 -M*-<*'LJM99.R:RF?S H8^B28?[DI105S^H;!)$K.*1,D69D2T]6Q<SE!&RQ, -M*D./S\JI93+K).FT><Z\L9PS7H(K90F@!)"_')GU858&K8NS0?]L.T6:V4YM -M 21_(\018IL25/F(7.NQU1YPUQI*YME \F=G8_]I ]IM4LR!ORD#;""$\SP -M9-PS&,M\HSGE#?&E=$0EZV:9I8?TI".J)JE6@V0*V X,(LE=S53B0ZG;\K#Q -M*961[;P1Y51RD*F9Z9]](6P8!X855A? )3D':F6R:DB0E2\S9//QKD4/)&.H -M,=-F#4QM9A-R"M'-G$K8'-\EZL?FXV"AY>C-W%L*%998)(%N%YOCVP5@@%C$ -M6.*6QC,_9MPRB::K[&I1+1TT<P"GS2'S0>,"4&0R,O<W=C829"13O'(V2'.I -MM?R2F4SQ5JZQ!<?2.:0M-%4 HLR')F3&<,54ROFA,F.94XE5IC6S.?/*3&7* -M,F4(I8=:9F#CEHG2; WH,@M1!<E>YM'@E[D="&;>\5R.Q$PEES$S&6F\FV)6 -M**64)TEGIGH"#/%96&%E*6\&U4S8)#931-FAS$@^!Y.6#DJ'@NE@G\77^F+^ -M-/^95LF<X3)!*WFK46L5'MF0G,QE(AG+>-+4/$I:,0F02\L3IE/R-S$0%*2T -M,*N66DWM0 R"JWG4Q$,FKR8&H<;GX!NRC_4++&LR**&:)LP'9=,RP%#5Y! N -M,Q59,$J4I ,B;1A2N&JES]B'H2#W(5I*+@ _-!29,6$9ZB:5(S<3(MC._*>% -M,S.;V\P-1CESW BQ3&<V(=>9A 27HSG3G?GL:2/$,T$K'@_'I,>#3,9B^2]$ -M0SH5[D5S4SGQ$-FRV4QJ$PX,Y4:R)(J2K$G),&W,;A S+9M5Y!J2$,F#\UKJ -M)'F2:TIMP29SL!#<[%LR!WXZK[8W6Q/ -3(%Z%%$ 0 T X&1C=(/_C"R4:R= -M9U9I> ;2L\F!22E@6W./K(>=1 6BX.$\>$N6-[)6-I)5B/(9HM)BZ1U$AS& -MF"PL8)7(88V)*E%%*B/EF%066Z/^YD>)+( ><@O8)O8I0B8EBS9A_Z7'JIQP -M)4H",87XD*Y(P3DU-"@%#V=/":7L4'3$2(+<0*5H2V0([0EED8&H(" '2$<@ -M!70R0+C/ (D 5.B/J13 .%<&,D[JA4TH3C*!&0I,9?X+;:#^PHVS#9#CI''. -M))8NXPI]2@9ED&19NT#]EZ '.,XWP(P34JCS&IOPO! ?:!/1WDM R2#T<IN< -M@J"<1$XI)_7B<M&% BFT!DQ48 3U !"N99"K&'/JP;)>4@X1"XFEV)1#HB%Q -8FY81&X3S0IV3=,A,,"*D#\@ 8@"PUU," - -end - --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.10 b/usr.sbin/xntpd/patches/patch.10 deleted file mode 100644 index 1771b5f..0000000 --- a/usr.sbin/xntpd/patches/patch.10 +++ /dev/null @@ -1,1925 +0,0 @@ -diff -c COPYRIGHT:1.1.1.16 COPYRIGHT:1.21 -*** COPYRIGHT:1.1.1.16 Wed Feb 2 18:09:17 1994 ---- COPYRIGHT Wed Feb 2 18:09:18 1994 -*************** -*** 1,6 **** - /****************************************************************************** - * * -! * Copyright (c) David L. Mills 1992, 1993, 1994 * - * * - * Permission to use, copy, modify, and distribute this software and its * - * documentation for any purpose and without fee is hereby granted, provided * ---- 1,6 ---- - /****************************************************************************** - * * -! * Copyright (c) David L. Mills 1992, 1993, 1994 * - * * - * Permission to use, copy, modify, and distribute this software and its * - * documentation for any purpose and without fee is hereby granted, provided * -*************** -*** 55,58 **** - * Torsten Duwe <duwe@immd4.informatik.uni-erlangen.de> (Linux Port) - * Paul A Vixie <vixie@vix.com> (TrueTime GPS driver) - * Jim Jagielski <jim@jagubox.gsfc.nasa.gov> (A/UX port) -! */ ---- 55,58 ---- - * Torsten Duwe <duwe@immd4.informatik.uni-erlangen.de> (Linux Port) - * Paul A Vixie <vixie@vix.com> (TrueTime GPS driver) - * Jim Jagielski <jim@jagubox.gsfc.nasa.gov> (A/UX port) -! */ -diff -c doc/xntpd.8:1.1.1.12 doc/xntpd.8:3.24 -*** doc/xntpd.8:1.1.1.12 Wed Feb 2 18:10:44 1994 ---- doc/xntpd.8 Wed Feb 2 18:10:45 1994 -*************** -*** 446,451 **** ---- 446,467 ---- - .Ip notrust 10 - Treat these hosts normally in other respects, but never use them as - synchronization sources. -+ .Ip limited 10 -+ These hosts are subject to limitation of number of clients from the -+ same net. Net in this context refers to the IP notion of net (class A, -+ class B, class C, etc.). Only the first \*(L"client_limit\*(R" hosts -+ that have shown up at the server and that have been active during the -+ last \*(L"client_limit_period\*(R" seconds are accepted. Requests from -+ other clients from the same net are rejected. Only time request -+ packets are taken into account. \*(L"Private\*(R", \*(L"control\*(R", -+ and \*(L"broadcast\*(R" packets are not subject to client limitation -+ and therefore are not contributing to client count. History of clients -+ is kept using the monitoring capability of -+ .IR xntpd . -+ Thus, monitoring is active as long as there is a restriction entry -+ with the \*(L"limited\*(R" flag. The default value for -+ \*(L"client_limit\*(R" is 3. The default value for -+ \*(L"client_limit_period\*(R" is 3600 seconds. - .Ip ntpport 10 - This is actually a match algorithm modifier, rather than a restriction - flag. Its presence causes the restriction entry to be matched only if -*************** -*** 469,474 **** ---- 485,505 ---- - considered an alternative to the standard NTP authentication facility. Source - address based restrictions are easily circumvented by a determined cracker. - .PP -+ .B clientlimit -+ .I limit -+ .PP -+ Sets \*(L"client_limit\*(R" to \*(L"limit\*(R", allows configuration -+ of client limitation policy. This variable defines the number of -+ clients from the same network that are allowed to use the server. -+ .PP -+ .B clientperiod -+ .I period -+ .PP -+ Sets \*(L"client_limit_period\*(R", allows configuration of client -+ limitation policy. This variable specifies the number -+ of seconds after which a client is considered inactive and thus no -+ longer is counted for client limit restriction. -+ .PP - .B trap - .I host_address - [ -diff -c doc/xntpdc.8:1.1.1.2 doc/xntpdc.8:3.4 -*** doc/xntpdc.8:1.1.1.2 Wed Feb 2 18:10:46 1994 ---- doc/xntpdc.8 Wed Feb 2 18:10:47 1994 -*************** -*** 539,544 **** ---- 539,555 ---- - Ignore all NTP mode 7 packets which attempt to modify the state of the - server (i.e. run time reconfiguration). Queries which return information - are permitted. -+ .Ip notrap 10 -+ Decline to provide mode 6 control message trap service to matching -+ hosts. The trap service is a subsystem of the mode 6 control message -+ protocol which is intended for use by remote event logging programs. -+ .Ip lowpriotrap 10 -+ Declare traps set by matching hosts to be low priority. The number -+ of traps a server can maintain is limited (the current limit is 3). -+ Traps are usually assigned on a first come, first served basis, with -+ later trap requestors being denied service. This flag modifies the -+ assignment algorithm by allowing low priority traps to be overridden -+ by later requests for normal priority traps. - .Ip noserve 10 - Ignore NTP packets whose mode is other than 7. In effect, time service is - denied, though queries may still be permitted. -*************** -*** 549,554 **** ---- 560,582 ---- - .Ip notrust 10 - Treat these hosts normally in other respects, but never use them as - synchronization sources. -+ .Ip limited 10 -+ These hosts are subject to limitation of number of clients from the -+ same net. Net in this context refers to the IP notion of net (class A, -+ class B, class C, etc.). Only the first \*(L"client_limit\*(R" hosts -+ that have shown up at the server and that have been active during the -+ last \*(L"client_limit_period\*(R" seconds are accepted. Requests from -+ other clients from the same net are rejected. Only time request -+ packets are taken into account. \*(L"Private\*(R", \*(L"control\*(R", -+ and \*(L"broadcast\*(R" packets are not subject to client limitation -+ and therefore are not contributing to client count. History of clients -+ is kept using the monitoring capability of -+ .IR xntpd. -+ Thus, monitoring is active as long as there is a restriction entry -+ with the \*(L"limited\*(R" flag. The default value for -+ \*(L"client_limit\*(R" is 3. The default value for -+ \*(L"client_limit_period\*(R" is 3600 seconds. Currently both -+ variables are not runtime configurable. - .Ip ntpport 10 - This is actually a match algorithm modifier, rather than a restriction - flag. Its presence causes the restriction entry to be matched only if -diff -c hints/linux:1.1.1.1 hints/linux:1.2 -*** hints/linux:1.1.1.1 Wed Feb 2 18:10:58 1994 ---- hints/linux Wed Feb 2 18:10:59 1994 -*************** -*** 1,29 **** - -! Requirements: kernel 0.99.14 or newer, libc 4.5 or newer - ------------ - -! With this configuration, xntp should build an run right out of the -! box (see generic hints for how-to), with one big limitation: tickadj doesn't -! work yet. This is especially painful since PCs are usually equipped with -! untuned, badly-drifting quartzes, values up to 200 ppm being no exception. -! Because the loop filter algorithms are limited to compensating no more than -! 100 ppm, currently only one workaround is possible: -! Compile your own kernel and adjust linux/include/linux/timex.h, -! line 67 (in pl14): -! -! #define CLOCK_TICK_RATE 1193180 /* Underlying HZ */ -! -! Since this is surely not true for your hardware, adjust the hundreds -! to match your quartz. Adding 100 compensates for a drift of -83.8 ppm -! (1/CLOCK_TICK_RATE). The number gets rounded to the nearest 100 so don't -! bother to tune any finer. -! -! Fixing tickadj is already in my work queue, so the previous comment should be -! obsolete RSN. If you really need to run xntp on any earlier versions of the -! kernel or libc, or have any other question not covered in the READMEs / hint -! files (sorry, necessary comment in the Linux community ;-) feel free to ask -! me (duwe@informatik.uni-erlangen.de) -! -! xntp3.3b of 1993/12/06 : remember to change #define ntp_adjtime adjtimex to -! __adjtimex in the Linux section (line 316). This is hopefully done if you -! (don't :-) see this paragraph in the xntp3.x distribution. ---- 1,9 ---- - -! Requirements: kernel 0.99.14y or newer, libc 4.5.8 or newer - ------------ - -! With this configuration, xntp should build an run right out of the box -! (see generic hints for how-to). If you really need to run xntp on any earlier -! versions of the kernel or libc, or have any other question not covered in the -! READMEs / hint files (sorry, necessary comment in the Linux community ;-) feel -! free to ask me (duwe@informatik.uni-erlangen.de) -diff -c include/ntp.h:1.1.1.17 include/ntp.h:3.23 -*** include/ntp.h:1.1.1.17 Wed Feb 2 18:11:18 1994 ---- include/ntp.h Wed Feb 2 18:11:18 1994 -*************** -*** 612,617 **** ---- 612,620 ---- - struct mon_data *hash_prev; /* previous structure in hash list */ - struct mon_data *mru_next; /* next structure in MRU list */ - struct mon_data *mru_prev; /* previous structure in MRU list */ -+ struct mon_data *fifo_next; /* next structure in FIFO list */ -+ struct mon_data *fifo_prev; /* previous structure in FIFO list */ -+ U_LONG lastdrop; /* last time dropped due to RES_LIMIT*/ - U_LONG lasttime; /* last time data updated */ - U_LONG firsttime; /* time structure initialized */ - U_LONG count; /* count we have seen */ -*************** -*** 621,627 **** - u_char version; /* version of incoming packet */ - }; - -! - /* - * Structure used for restrictlist entries - */ ---- 624,635 ---- - u_char version; /* version of incoming packet */ - }; - -! /* -! * Values used with mon_enabled to indicate reason for enabling monitoring -! */ -! #define MON_OFF 0x00 /* no monitoring */ -! #define MON_ON 0x01 /* monitoring explicitly enabled */ -! #define MON_RES 0x02 /* implicit monitoring for RES_LIMITED */ - /* - * Structure used for restrictlist entries - */ -*************** -*** 645,654 **** - #define RES_NOPEER 0x20 /* don't allocate memory resources */ - #define RES_NOTRAP 0x40 /* don't allow him to set traps */ - #define RES_LPTRAP 0x80 /* traps set by him are low priority */ - - #define RES_ALLFLAGS \ - (RES_IGNORE|RES_DONTSERVE|RES_DONTTRUST|RES_NOQUERY\ -! |RES_NOMODIFY|RES_NOPEER|RES_NOTRAP|RES_LPTRAP) - - /* - * Match flags ---- 653,663 ---- - #define RES_NOPEER 0x20 /* don't allocate memory resources */ - #define RES_NOTRAP 0x40 /* don't allow him to set traps */ - #define RES_LPTRAP 0x80 /* traps set by him are low priority */ -+ #define RES_LIMITED 0x100 /* limit per net number of clients */ - - #define RES_ALLFLAGS \ - (RES_IGNORE|RES_DONTSERVE|RES_DONTTRUST|RES_NOQUERY\ -! |RES_NOMODIFY|RES_NOPEER|RES_NOTRAP|RES_LPTRAP|RES_LIMITED) - - /* - * Match flags -diff -c include/ntp_request.h:1.1.1.7 include/ntp_request.h:3.7 -*** include/ntp_request.h:1.1.1.7 Wed Feb 2 18:11:27 1994 ---- include/ntp_request.h Wed Feb 2 18:11:28 1994 -*************** -*** 429,438 **** ---- 429,456 ---- - U_LONG processed; /* packets processed */ - U_LONG badauth; /* packets dropped because of authorization */ - U_LONG wanderhold; -+ U_LONG limitrejected; /* rejected because of client limitation */ - }; - - - /* -+ * System stats - old version -+ */ -+ struct old_info_sys_stats { -+ U_LONG timeup; /* time we have been up and running */ -+ U_LONG timereset; /* time since these were last cleared */ -+ U_LONG badstratum; /* packets claiming an invalid stratum */ -+ U_LONG oldversionpkt; /* old version packets received */ -+ U_LONG newversionpkt; /* new version packets received */ -+ U_LONG unknownversion; /* don't know version packets */ -+ U_LONG badlength; /* packets with bad length */ -+ U_LONG processed; /* packets processed */ -+ U_LONG badauth; /* packets dropped because of authorization */ -+ U_LONG wanderhold; -+ }; -+ -+ -+ /* - * Peer memory statistics. Collected in the peer module. - */ - struct info_mem_stats { -*************** -*** 546,551 **** ---- 564,570 ---- - struct info_monitor { - U_LONG lasttime; /* last packet from this host */ - U_LONG firsttime; /* first time we received a packet */ -+ U_LONG lastdrop; /* last time we rejected a packet due to client limitation policy */ - U_LONG count; /* count of packets received */ - U_LONG addr; /* host address */ - u_short port; /* port number of last reception */ -*************** -*** 553,558 **** ---- 572,589 ---- - u_char version; /* version number of last packet */ - }; - -+ /* -+ * Structure used for returning monitor data (old format -+ */ -+ struct old_info_monitor { -+ U_LONG lasttime; /* last packet from this host */ -+ U_LONG firsttime; /* first time we received a packet */ -+ U_LONG count; /* count of packets received */ -+ U_LONG addr; /* host address */ -+ u_short port; /* port number of last reception */ -+ u_char mode; /* mode of last packet */ -+ u_char version; /* version number of last packet */ -+ }; - - /* - * Structure used for passing indication of flags to clear -diff -c include/ntp_stdlib.h:1.1.1.7 include/ntp_stdlib.h:1.2 -*** include/ntp_stdlib.h:1.1.1.7 Wed Feb 2 18:11:31 1994 ---- include/ntp_stdlib.h Wed Feb 2 18:11:31 1994 -*************** -*** 79,84 **** ---- 79,85 ---- - extern char * mfptoa P((U_LONG, U_LONG, int)); - extern char * mfptoms P((U_LONG, U_LONG, int)); - extern char * modetoa P((int)); -+ extern U_LONG netof P((U_LONG)); - extern char * numtoa P((U_LONG)); - extern char * numtohost P((U_LONG)); - extern int octtoint P((const char *, U_LONG *)); -diff -c include/ntpd.h:1.1.1.7 include/ntpd.h:1.6 -*** include/ntpd.h:1.1.1.7 Wed Feb 2 18:11:38 1994 ---- include/ntpd.h Wed Feb 2 18:11:38 1994 -*************** -*** 93,100 **** - - /* ntp_monitor.c */ - extern void init_mon P((void)); -! extern void mon_start P((void)); -! extern void mon_stop P((void)); - extern void monitor P((struct recvbuf *)); - - /* ntp_peer.c */ ---- 93,100 ---- - - /* ntp_monitor.c */ - extern void init_mon P((void)); -! extern void mon_start P((int)); -! extern void mon_stop P((int)); - extern void monitor P((struct recvbuf *)); - - /* ntp_peer.c */ -diff -c lib/Makefile.tmpl:1.1.1.14 lib/Makefile.tmpl:3.25 -*** lib/Makefile.tmpl:1.1.1.14 Wed Feb 2 18:12:06 1994 ---- lib/Makefile.tmpl Wed Feb 2 18:12:07 1994 -*************** -*** 31,37 **** - uglydate.c uinttoa.c utvtoa.c machines.c clocktypes.c \ - md5.c a_md5encrypt.c a_md5decrypt.c \ - a_md512crypt.c decodenetnum.c systime.c msyslog.c syssignal.c \ -! findconfig.c - - OBJS= atoint.o atolfp.o atouint.o auth12crypt.o authdecrypt.o authdes.o \ - authencrypt.o authkeys.o authparity.o authreadkeys.o authusekey.o \ ---- 31,37 ---- - uglydate.c uinttoa.c utvtoa.c machines.c clocktypes.c \ - md5.c a_md5encrypt.c a_md5decrypt.c \ - a_md512crypt.c decodenetnum.c systime.c msyslog.c syssignal.c \ -! findconfig.c netof.c - - OBJS= atoint.o atolfp.o atouint.o auth12crypt.o authdecrypt.o authdes.o \ - authencrypt.o authkeys.o authparity.o authreadkeys.o authusekey.o \ -*************** -*** 44,50 **** - uglydate.o uinttoa.o utvtoa.o machines.o clocktypes.o \ - md5.o a_md5encrypt.o a_md5decrypt.o \ - a_md512crypt.o decodenetnum.o systime.o msyslog.o syssignal.o \ -! findconfig.o - - $(LIBNAME).a: $(OBJS) - ar rv $@ $? ---- 44,50 ---- - uglydate.o uinttoa.o utvtoa.o machines.o clocktypes.o \ - md5.o a_md5encrypt.o a_md5decrypt.o \ - a_md512crypt.o decodenetnum.o systime.o msyslog.o syssignal.o \ -! findconfig.o netof.o - - $(LIBNAME).a: $(OBJS) - ar rv $@ $? -diff -c /dev/null lib/netof.c:3.1 -*** /dev/null Wed Feb 2 18:13:07 1994 ---- lib/netof.c Wed Feb 2 18:13:07 1994 -*************** -*** 0 **** ---- 1,25 ---- -+ /* -+ * netof - return the net address part of an ip address -+ * (zero out host part) -+ */ -+ #include <stdio.h> -+ -+ #include "ntp_fp.h" -+ #include "ntp_stdlib.h" -+ -+ U_LONG -+ netof(num) -+ U_LONG num; -+ { -+ register U_LONG netnum; -+ -+ netnum = num; -+ -+ if(IN_CLASSC(netnum)) -+ netnum &= IN_CLASSC_NET; -+ else if (IN_CLASSB(netnum)) -+ netnum &= IN_CLASSB_NET; -+ else /* treat als other like class A */ -+ netnum &= IN_CLASSA_NET; -+ return netnum; -+ } -diff -c /dev/null parse/README.new_clocks:3.2 -*** /dev/null Wed Feb 2 18:14:30 1994 ---- parse/README.new_clocks Wed Feb 2 18:14:30 1994 -*************** -*** 0 **** ---- 1,203 ---- -+ Here is an attempt to scetch out what you need to do in order to -+ add another clock to the parse driver: -+ -+ Prerequsites: -+ - Does the system you want the clock connect to have -+ termio.h or termios.h ? (You need that for the parse driver) -+ -+ What to do: -+ -+ Make a conversion module (parse/clk_*.c) -+ -+ - What ist the time code format ? -+ - find year, month, day, hour, minute, second, status (synchronised or -+ not), possibly time zone information (you need to give the offset to UTC) -+ You will have to convert the data from a string into a struct clocktime: -+ struct clocktime /* clock time broken up from time code */ -+ { -+ LONG day; -+ LONG month; -+ LONG year; -+ LONG hour; -+ LONG minute; -+ LONG second; -+ LONG usecond; -+ LONG utcoffset; /* in seconds */ -+ LONG flags; /* current clock status */ -+ }; -+ -+ Conversion is usually simple and straight forward. For the flags following -+ values can be OR'ed together: -+ -+ PARSEB_ANNOUNCE switch time zone warning (informational only) -+ PARSEB_POWERUP no synchronisation - clock confused (must set then) -+ PARSEB_NOSYNC timecode currently not confirmed (must set then) -+ usually on reception error when the is still a -+ chance the the generated time is still ok. -+ -+ PARSEB_DST DST in effect (informational only) -+ PARSEB_UTC timecode contains UTC time (informational only) -+ PARSEB_LEAP LEAP warning (prior to leap happening - must set when imminent) -+ PARSEB_ALTERNATE backup transmitter (informational only) -+ PARSEB_POSITION geographic position available (informational only) -+ PARSEB_LEAPSECOND actual leap second (this time code is the leap -+ second - informational only) -+ -+ These are feature flags denoting items that are supported by the clock: -+ PARSEB_S_LEAP supports LEAP - might set PARSEB_LEAP -+ PARSEB_S_ANTENNA supports ANTENNA - might set PARSEB_ALTERNATE -+ PARSEB_S_PPS supports PPS time stamping -+ PARSEB_S_POSITION supports position information (GPS) -+ -+ Conversion is done in the cvt_* routine in parse/clk_*.c files. look in -+ them for examples. The basic structure is: -+ -+ struct clockformat <yourclock>_format = { -+ lots of field for you to fill out (see below) -+ }; -+ -+ static cvt_<yourclock>() -+ ... -+ { -+ if (<I do not recognize my time code>) { -+ return CVT_NONE; -+ } else { -+ if (<conversion into clockformat is ok>) { -+ <set all necessary flags>; -+ return CVT_OK; -+ } else { -+ return CVT_FAIL|CVT_BADFMT; -+ } -+ } -+ -+ The struct clockformat is the interface to the rest of the parse -+ driver - it holds all information necessary for finding the -+ clock message and doing the appropriate time stamping. -+ -+ struct clockformat -+ { -+ unsigned LONG (*convert)(); -+ /* conversion routine - your routine - cvt_<yourclock> */ -+ void (*syncevt)(); -+ /* routine for handling RS232 sync events (time stamps) - usually sync_simple */ -+ unsigned LONG (*syncpps)(); -+ /* PPS input routine - usually pps_simple */ -+ unsigned LONG (*synth)(); -+ /* time code synthesizer - usually not used - (LONG (*)())0 */ -+ void *data; -+ /* local parameters - any parameters/data/configuration info your conversion -+ routine might need */ -+ char *name; -+ /* clock format name - Name of the time code */ -+ unsigned short length; -+ /* maximum length of data packet for your clock format */ -+ unsigned LONG flags; -+ /* information for the parser what to look for */ -+ struct timeval timeout; -+ /* buffer restart after timeout (us) - some clocks preceede new data by -+ a longer period of silence - unsually not used */ -+ unsigned char startsym; -+ /* start symbol - character at the beginning of the clock data */ -+ unsigned char endsym; -+ /* end symbol - character at the end of the clock data */ -+ unsigned char syncsym; -+ /* sync symbol - character that is "on time" - where the time stamp should be taken */ -+ }; -+ -+ The flags: -+ F_START use startsym to find the beginning of the clock data -+ F_END use endsym to find the end of the clock data -+ SYNC_TIMEOUT packet restart after timeout in timeout field -+ SYNC_START packet start is sync event (time stamp at paket start) -+ SYNC_END packet end is sync event (time stamp at paket end) -+ SYNC_CHAR special character (syncsym) is sync event -+ SYNC_ONE PPS synchronize on 'ONE' transition -+ SYNC_ZERO PPS synchronize on 'ZERO' transition -+ SYNC_SYNTHESIZE generate intermediate time stamps (very special case!) -+ CVT_FIXEDONLY convert only in fixed configuration - (data format not -+ suitable for auto-configuration) -+ -+ -+ The above should have given you some hints on how to build a clk_*.c -+ file with the time code conversion. See the examples and pick a clock -+ closest to yours and tweak the code to match your clock. -+ -+ In order to make your clk_*.c file usable a referenc to the clockformat -+ structure must be put into parse_conf.c. -+ -+ -+ -+ TTY setup and initialisation/configuration will be done in -+ xntpd/refclock_parse.c -+ -+ - Find out the exact tty settings for your clock (baud rate, parity, -+ stop bits, character size, ...) and note them in terms of -+ termio*.h c_cflag macros. -+ -+ - in xntpd/refclock_parse.c fill out a new the struct clockinfo element -+ (allocates a new "IP" address - see comments) -+ (see all the other clocks for example) -+ struct clockinfo -+ { -+ U_LONG cl_flags; /* operation flags (io modes) */ -+ PARSE_F_NOPOLLONLY always do async io - read whenever input comes -+ PARSE_F_POLLONLY never do async io - only read when expecting data -+ PARSE_F_PPSPPS use loopfilter PPS code (CIOGETEV) -+ PARSE_F_PPSONSECOND PPS pulses are on second -+ usually flags stay 0 as they are used only for special setups -+ -+ void (*cl_poll)(); /* active poll routine */ -+ The routine to call when the clock needs data sent to it in order to -+ get a time code from the clock (e.g. Trimble clock) -+ int (*cl_init)(); /* active poll init routine */ -+ The routine to call for very special initializations. -+ void (*cl_end)(); /* active poll end routine */ -+ The routine to call to undo any special initialisation (free memory/timers) -+ void *cl_data; /* local data area for "poll" mechanism */ -+ local data for polling routines -+ u_fp cl_rootdelay; /* rootdelay */ -+ NTP rottdelay estimate (usually 0) -+ U_LONG cl_basedelay; /* current offset - unsigned l_fp fractional par -+ time (fraction) by which the RS232 time code is delayed from the actual time. -+ t */ -+ U_LONG cl_ppsdelay; /* current PPS offset - unsigned l_fp fractional -+ time (fraction) by which the PPS time stamp is delayed (usually 0) -+ part */ -+ char *cl_id; /* ID code (usually "DCF") */ -+ Refclock id - (max 4 chars) -+ char *cl_description; /* device name */ -+ Name of this device. -+ char *cl_format; /* fixed format */ -+ If the data format cann not ne detected automatically this is the name -+ as in clk_*.c clockformat. -+ u_char cl_type; /* clock type (ntp control) */ -+ Type if clock as in clock status word (ntp control messages) - usually 0 -+ U_LONG cl_maxunsync; /* time to trust oscillator after loosing synch -+ */ -+ seconds a clock can be trusted after loosing synchronisation. -+ -+ U_LONG cl_cflag; /* terminal io flags */ -+ U_LONG cl_iflag; /* terminal io flags */ -+ U_LONG cl_oflag; /* terminal io flags */ -+ U_LONG cl_lflag; /* terminal io flags */ -+ termio*.h tty modes. -+ } clockinfo[] = { -+ ...,<other clocks>,... -+ { < your parameters> }, -+ }; -+ -+ -+ Well, this is very sketchy, i know. But I hope it helps a little bit. -+ The best way is to look which clock comes closet to your and tweak that -+ code. -+ Two sorts of clocks are used with parse. Clocks that automatically sent -+ thier time code (once a second) do not nee entries in the poll routines because -+ they sent the data all the time. The second sort are the clocks that need a -+ command sent to then in order to reply with a time code (like the Trimble -+ clock). -+ -+ For questions: kardel@informatik.uni-erlangen.de. Please include -+ an exact description on how your clock works. (initialisation, -+ TTY modes, strings to be sent to it, responses received from the clock). -+ -+ Frank Kardel -diff -c /dev/null parse/README.parse_clocks:3.1 -*** /dev/null Wed Feb 2 18:14:33 1994 ---- parse/README.parse_clocks Wed Feb 2 18:14:33 1994 -*************** -*** 0 **** ---- 1,263 ---- -+ The parse driver currently supports several clock with different -+ query mechanisms. In order for you to find a sample that might be -+ similar to a clock you might want to integrate into parse i'll sum -+ up the major features of the clocks (this information is distributed -+ in the parse/clk_*.c and xntpd/refclock_parse.c files). -+ -+ --- -+ Meinberg: 127.127.8. 0- 3 (PZF535TCXO) -+ 127.127.8. 4- 7 (PZF535OCXO) -+ 127.127.8. 8-11 (DCFUA31) -+ 127.127.8.28-31 (GPS166) -+ Meinberg: start=<STX>, end=<ETX>, sync on start -+ pattern="\2D: . . ;T: ;U: . . ; \3" -+ pattern="\2 . . ; ; : : ; \3" -+ pattern="\2 . . ; ; : : ; : ; ; . . " -+ -+ Meinberg is a german manufacturer of time code receivers. Those clocks -+ have a pretty common output format in the stock version. In order to -+ support NTP Meinberg was so kind to produce some special versions of -+ the firmware for the use with NTP. So, if you are going to use a -+ Meinberg clock please ask whether there is a special Uni Erlangen -+ version. -+ -+ General characteristics: -+ Meinberg clocks primarily output pulse per second and a describing -+ ASCII string. This string can be produced in two modes. either upon -+ the reception of a question mark or every second. NTP uses the latter -+ mechanism. The DCF77 variants have a pretty good relationship between -+ RS232 time code and the PPS signal while the GPS receiver has no fixed -+ timeing between the datagram and the pulse (you need to use PPS with -+ GPS!) on DCF77 you might get away without the PPS signal. -+ -+ The preferred tty setting for Meinberg is: -+ CFLAG (B9600|CS7|PARENB|CREAD|HUPCL) -+ IFLAG (IGNBRK|IGNPAR|ISTRIP) -+ OFLAG 0 -+ LFLAG 0 -+ -+ The clock is run at datagram once per second. -+ Stock dataformat is: -+ -+ <STX>D:<dd>.<mm>.<yy>;T:<w>;U:<hh>:<mm>:<ss>;<S><F><D><A><ETX> -+ pos: 0 00 00 0 00 0 11 111 1 111 12 2 22 2 22 2 2 2 3 3 3 -+ 1 23 45 6 78 9 01 234 5 678 90 1 23 4 56 7 8 9 0 1 2 -+ -+ <STX> = '\002' ASCII start of text -+ <ETX> = '\003' ASCII end of text -+ <dd>,<mm>,<yy> = day, month, year(2 digits!!) -+ <w> = day of week (sunday= 0) -+ <hh>,<mm>,<ss> = hour, minute, second -+ <S> = '#' if never synced since powerup else ' ' for DCF U/A 31 -+ '#' if not PZF sychronisation available else ' ' for PZF 535 -+ <F> = '*' if time comes from internal quartz else ' ' -+ <D> = 'S' if daylight saving time is active else ' ' -+ <A> = '!' during the hour preceeding an daylight saving time -+ start/end change -+ -+ For the university of Erlangen a special format was implemented to support -+ LEAP announcement and anouncement of alternate antenna. -+ -+ Version for UNI-ERLANGEN Software is: PZFUERL V4.6 (Meinberg) -+ -+ The use of this software release (or higher) is *ABSOLUTELY* -+ recommended (ask for PZFUERL version as some minor HW fixes have -+ been introduced) due to the LEAP second support and UTC indication. -+ The standard timecode does not indicate when the timecode is in -+ UTC (by front panel configuration) thus we have no chance to find -+ the correct utc offset. For the standard format do not ever use -+ UTC display as this is not detectable in the time code !!! -+ -+ <STX><dd>.<mm>.<yy>; <w>; <hh>:<mm>:<ss>; <U><S><F><D><A><L><R><ETX> -+ pos: 0 00 0 00 0 00 11 1 11 11 1 11 2 22 22 2 2 2 2 2 3 3 3 -+ 1 23 4 56 7 89 01 2 34 56 7 89 0 12 34 5 6 7 8 9 0 1 2 -+ <STX> = '\002' ASCII start of text -+ <ETX> = '\003' ASCII end of text -+ <dd>,<mm>,<yy> = day, month, year(2 digits!!) -+ <w> = day of week (sunday= 0) -+ <hh>,<mm>,<ss> = hour, minute, second -+ <U> = 'U' UTC time display -+ <S> = '#' if never synced since powerup else ' ' for DCF U/A 31 -+ '#' if not PZF sychronisation available else ' ' for PZF 535 -+ <F> = '*' if time comes from internal quartz else ' ' -+ <D> = 'S' if daylight saving time is active else ' ' -+ <A> = '!' during the hour preceeding an daylight saving time -+ start/end change -+ <L> = 'A' LEAP second announcement -+ <R> = 'R' alternate antenna -+ -+ Meinberg GPS166 receiver -+ -+ You must get the Uni-Erlangen firmware for the GPS receiver support -+ to work to full satisfaction ! -+ -+ <STX><dd>.<mm>.<yy>; <w>; <hh>:<mm>:<ss>; <+/-><00:00>; <U><S><F><D><A><L><R><L>; <position...><ETX> -+ * -+ 000000000111111111122222222223333333333444444444455555555556666666 -+ 123456789012345678901234567890123456789012345678901234567890123456 -+ \x0209.07.93; 5; 08:48:26; +00:00; ; 49.5736N 11.0280E 373m\x03 -+ * -+ -+ <STX> = '\002' ASCII start of text -+ <ETX> = '\003' ASCII end of text -+ <dd>,<mm>,<yy> = day, month, year(2 digits!!) -+ <w> = day of week (sunday= 0) -+ <hh>,<mm>,<ss> = hour, minute, second -+ <+/->,<00:00> = offset to UTC -+ <S> = '#' if never synced since powerup else ' ' for DCF U/A 31 -+ '#' if not PZF sychronisation available else ' ' for PZF 535 -+ <U> = 'U' UTC time display -+ <F> = '*' if time comes from internal quartz else ' ' -+ <D> = 'S' if daylight saving time is active else ' ' -+ <A> = '!' during the hour preceeding an daylight saving time -+ start/end change -+ <L> = 'A' LEAP second announcement -+ <R> = 'R' alternate antenna (reminiscent of PZF535) usually ' ' -+ <L> = 'L' on 23:59:60 -+ -+ -+ For the Meinberg parse look into clock_meinberg.c -+ -+ --- -+ RAWDCF: 127.127.8.20-23 (Conrad receiver module - delay 210ms) -+ 127.127.8.24-27 (FAU receiver - delay 258ms) -+ RAWDCF: end=TIMEOUT>1.5s, sync each char (any char),generate psuedo time -+ codes, fixed format -+ -+ direct DCF77 code input -+ In Europe it is relatively easy/cheap the receive the german time code -+ transmitter DCF77. The simplest version to process its signal is to -+ feed the 100/200ms pulse of the demodulated AM signal via a level -+ converter to an RS232 port at 50Baud. parse/clk_rawdcf.c holds all -+ necessary decoding logic for the time code which is transmitted each -+ minute for one minute. A bit of the time code is sent once a second. -+ -+ The preferred tty setting is: -+ CFLAG (B50|CS8|CREAD|CLOCAL) -+ IFLAG 0 -+ OFLAG 0 -+ LFLAG 0 -+ -+ DCF77 raw time code -+ -+ From "Zur Zeit", Physikalisch-Technische Bundesanstalt (PTB), Braunschweig -+ und Berlin, Maerz 1989 -+ -+ Timecode transmission: -+ AM: -+ time marks are send every second except for the second before the -+ next minute mark -+ time marks consist of a reduction of transmitter power to 25% -+ of the nominal level -+ the falling edge is the time indication (on time) -+ time marks of a 100ms duration constitute a logical 0 -+ time marks of a 200ms duration constitute a logical 1 -+ FM: -+ see the spec. (basically a (non-)inverted psuedo random phase shift) -+ -+ Encoding: -+ Second Contents -+ 0 - 10 AM: free, FM: 0 -+ 11 - 14 free -+ 15 R - alternate antenna -+ 16 A1 - expect zone change (1 hour before) -+ 17 - 18 Z1,Z2 - time zone -+ 0 0 illegal -+ 0 1 MEZ (MET) -+ 1 0 MESZ (MED, MET DST) -+ 1 1 illegal -+ 19 A2 - expect leap insertion/deletion (1 hour before) -+ 20 S - start of time code (1) -+ 21 - 24 M1 - BCD (lsb first) Minutes -+ 25 - 27 M10 - BCD (lsb first) 10 Minutes -+ 28 P1 - Minute Parity (even) -+ 29 - 32 H1 - BCD (lsb first) Hours -+ 33 - 34 H10 - BCD (lsb first) 10 Hours -+ 35 P2 - Hour Parity (even) -+ 36 - 39 D1 - BCD (lsb first) Days -+ 40 - 41 D10 - BCD (lsb first) 10 Days -+ 42 - 44 DW - BCD (lsb first) day of week (1: Monday -> 7: Sunday) -+ 45 - 49 MO - BCD (lsb first) Month -+ 50 MO0 - 10 Months -+ 51 - 53 Y1 - BCD (lsb first) Years -+ 54 - 57 Y10 - BCD (lsb first) 10 Years -+ 58 P3 - Date Parity (even) -+ 59 - usually missing (minute indication), except for leap insertion -+ -+ --- -+ Schmid clock: 127.127.8.16-19 -+ Schmid clock: needs poll, binary input, end='\xFC', sync start -+ -+ The Schmid clock is a DCF77 receiver that sends a binary -+ time code at the reception of a flag byte. The contents -+ if the flag byte determined the time code format. The -+ binary time code is delimited by the byte 0xFC. -+ -+ TTY setup is: -+ CFLAG (B1200|CS8|CREAD|CLOCAL) -+ IFLAG 0 -+ OFLAG 0 -+ LFLAG 0 -+ -+ The command to Schmid's DCF77 clock is a single byte; each bit -+ allows the user to select some part of the time string, as follows (the -+ output for the lsb is sent first). -+ -+ Bit 0: time in MEZ, 4 bytes *binary, not BCD*; hh.mm.ss.tenths -+ Bit 1: date 3 bytes *binary, not BCD: dd.mm.yy -+ Bit 2: week day, 1 byte (unused here) -+ Bit 3: time zone, 1 byte, 0=MET, 1=MEST. (unused here) -+ Bit 4: clock status, 1 byte, 0=time invalid, -+ 1=time from crystal backup, -+ 3=time from DCF77 -+ Bit 5: transmitter status, 1 byte, -+ bit 0: backup antenna -+ bit 1: time zone change within 1h -+ bit 3,2: TZ 01=MEST, 10=MET -+ bit 4: leap second will be -+ added within one hour -+ bits 5-7: Zero -+ Bit 6: time in backup mode, units of 5 minutes (unused here) -+ -+ -+ --- -+ Trimble SV6: 127.127.8.32-35 -+ Trimble SV6: needs poll, ascii timecode, start='>', end='<', -+ query='>QTM<', eol='<' -+ -+ Trimble SV6 is a GPS receiver with PPS output. It needs to be polled. -+ It also need a special tty mode setup (EOL='<'). -+ -+ TTY setup is: -+ CFLAG (B4800|CS8|CREAD) -+ IFLAG (BRKINT|IGNPAR|ISTRIP|ICRNL|IXON) -+ OFLAG (OPOST|ONLCR) -+ LFLAG (ICANON|ECHOK) -+ -+ Special flags are: -+ PARSE_F_PPSPPS - use CIOGETEV for PPS time stamping -+ PARSE_F_PPSONSECOND - the time code is not related to -+ the PPS pulse (so use the time code -+ only for the second epoch) -+ -+ Timecode -+ 0000000000111111111122222222223333333 / char -+ 0123456789012345678901234567890123456 \ posn -+ >RTMhhmmssdddDDMMYYYYoodnnvrrrrr;*xx< Actual -+ ----33445566600112222BB7__-_____--99- Parse -+ >RTM 1 ;* <", Check -+ -+ --- -+ ELV DCF7000: 127.127.8.12-15 -+ ELV DCF7000: end='\r', pattern=" - - - - - - - \r" -+ -+ The ELV DCF7000 is a cheap DCF77 receiver sending each second -+ a time code (though not very precise!) delimited by '`r' -+ -+ Timecode -+ YY-MM-DD-HH-MM-SS-FF\r -+ -+ FF&0x1 - DST -+ FF&0x2 - DST switch warning -+ FF&0x4 - unsynchronised -+ -diff -c parse/parsesolaris.c:1.1.1.5 parse/parsesolaris.c:3.11 -*** parse/parsesolaris.c:1.1.1.5 Wed Feb 2 18:14:49 1994 ---- parse/parsesolaris.c Wed Feb 2 18:14:49 1994 -*************** -*** 65,71 **** - { - "parse", /* module name */ - &parseinfo, /* module information */ -! 0, /* not clean yet */ - /* lock ptr */ - }; - ---- 65,71 ---- - { - "parse", /* module name */ - &parseinfo, /* module information */ -! D_NEW, /* not clean yet */ - /* lock ptr */ - }; - -diff -c scripts/support/bin/monl:1.1.1.1 scripts/support/bin/monl:1.2 -*** scripts/support/bin/monl:1.1.1.1 Wed Feb 2 18:16:01 1994 ---- scripts/support/bin/monl Wed Feb 2 18:16:01 1994 -*************** -*** 143,149 **** - { - chop; - split; -! ($host, $count, $mode, $version, $lasttime, $firsttime) = (@_[$[, $[+2 .. $[+6]); - - $Seen{$host, $mode} = 1; - ---- 143,150 ---- - { - chop; - split; -! ($host, $count, $mode, $version, $lasttime, $firsttime) = -! (@_[$[, $[+2 .. $[+4, $#_-1,$#_]); - - $Seen{$host, $mode} = 1; - -diff -c util/tickadj.c:1.1.1.16 util/tickadj.c:3.17 -*** util/tickadj.c:1.1.1.16 Wed Feb 2 18:16:23 1994 ---- util/tickadj.c Wed Feb 2 18:16:23 1994 -*************** -*** 1,4 **** -! /* tickadj.c,v 3.1 1993/07/06 01:11:05 jbj Exp - * tickadj - read, and possibly modify, the kernel `tick' and - * `tickadj' variables, as well as `dosynctodr'. Note that - * this operates on the running kernel only. I'd like to be ---- 1,4 ---- -! /* - * tickadj - read, and possibly modify, the kernel `tick' and - * `tickadj' variables, as well as `dosynctodr'. Note that - * this operates on the running kernel only. I'd like to be -*************** -*** 6,11 **** ---- 6,46 ---- - * mastered this yet. - */ - #include <stdio.h> -+ -+ #ifdef SYS_LINUX -+ #include <sys/timex.h> -+ -+ struct timex txc; -+ -+ int -+ main(int argc, char ** argv) -+ { -+ if (argc > 2) -+ { -+ fprintf(stderr, "Usage: %s [tick_value]\n", argv[0]); -+ exit(-1); -+ } -+ else if (argc == 2) -+ { -+ if ( (txc.tick = atoi(argv[1])) < 1 ) -+ { -+ fprintf(stderr, "Silly value for tick: %s\n", argv[1]); -+ exit(-1); -+ } -+ txc.mode = ADJ_TICK; -+ } -+ else -+ txc.mode = 0; -+ -+ if (__adjtimex(&txc) < 0) -+ perror("adjtimex"); -+ else -+ printf("tick = %d\n", txc.tick); -+ -+ return(0); -+ } -+ #else /* not Linux... kmem tweaking: */ -+ - #include <sys/types.h> - #include <sys/file.h> - #include <sys/stat.h> -*************** -*** 513,515 **** ---- 548,551 ---- - exit(1); - } - } -+ #endif /* not Linux */ -diff -c xntpd/ntp_config.c:1.1.1.19 xntpd/ntp_config.c:3.24 -*** xntpd/ntp_config.c:1.1.1.19 Wed Feb 2 18:16:36 1994 ---- xntpd/ntp_config.c Wed Feb 2 18:16:37 1994 -*************** -*** 58,63 **** ---- 58,64 ---- - * statsdir /var/NTP/ - * filegen peerstats [ file peerstats ] [ type day ] [ link ] - * resolver /path/progname -+ * netlimit integer - * - * And then some. See the manual page. - */ -*************** -*** 94,99 **** ---- 95,102 ---- - #define CONFIG_PIDFILE 25 - #define CONFIG_LOGFILE 26 - #define CONFIG_SETVAR 27 -+ #define CONFIG_CLIENTLIMIT 28 -+ #define CONFIG_CLIENTPERIOD 29 - - #define CONF_MOD_VERSION 1 - #define CONF_MOD_KEY 2 -*************** -*** 114,119 **** ---- 117,123 ---- - #define CONF_RES_NOTRAP 8 - #define CONF_RES_LPTRAP 9 - #define CONF_RES_NTPPORT 10 -+ #define CONF_RES_LIMITED 11 - - #define CONF_TRAP_PORT 1 - #define CONF_TRAP_INTERFACE 2 -*************** -*** 179,184 **** ---- 183,190 ---- - { "pidfile", CONFIG_PIDFILE }, - { "logfile", CONFIG_LOGFILE }, - { "setvar", CONFIG_SETVAR }, -+ { "clientlimit", CONFIG_CLIENTLIMIT }, -+ { "clientperiod", CONFIG_CLIENTPERIOD }, - { "", CONFIG_UNKNOWN } - }; - -*************** -*** 217,222 **** ---- 223,229 ---- - { "notrap", CONF_RES_NOTRAP }, - { "lowpriotrap", CONF_RES_LPTRAP }, - { "ntpport", CONF_RES_NTPPORT }, -+ { "limited", CONF_RES_LIMITED }, - { "", CONFIG_UNKNOWN } - }; - -*************** -*** 817,825 **** - errflg = 0; - if (ntokens >= 2) { - if (STREQ(tokens[1], "yes")) -! mon_start(); - else if (STREQ(tokens[1], "no")) -! mon_stop(); - else - errflg++; - } else { ---- 824,832 ---- - errflg = 0; - if (ntokens >= 2) { - if (STREQ(tokens[1], "yes")) -! mon_start(MON_ON); - else if (STREQ(tokens[1], "no")) -! mon_stop(MON_ON); - else - errflg++; - } else { -*************** -*** 965,970 **** ---- 972,981 ---- - peerkey |= RESM_NTPONLY; - break; - -+ case CONF_RES_LIMITED: -+ peerversion |= RES_LIMITED; -+ break; -+ - case CONFIG_UNKNOWN: - errflg++; - break; -*************** -*** 1413,1418 **** ---- 1424,1483 ---- - set_sys_var(tokens[1], strlen(tokens[1])+1, RW | - ((((ntokens > 2) && !strcmp(tokens[2], "default"))) ? DEF : 0)); - } -+ break; -+ -+ case CONFIG_CLIENTLIMIT: -+ if (ntokens < 2) -+ { -+ syslog(LOG_ERR, -+ "no value for clientlimit command - line ignored"); -+ } -+ else -+ { -+ U_LONG i; -+ if (!atouint(tokens[1], &i) || !i) -+ { -+ syslog(LOG_ERR, -+ "illegal value for clientlimit command - line ignored"); -+ } -+ else -+ { -+ extern U_LONG client_limit; -+ char bp[80]; -+ -+ sprintf(bp, "client_limit=%d", i); -+ set_sys_var(bp, strlen(bp)+1, RO); -+ -+ client_limit = i; -+ } -+ } -+ break; -+ -+ case CONFIG_CLIENTPERIOD: -+ if (ntokens < 2) -+ { -+ syslog(LOG_ERR, -+ "no value for clientperiod command - line ignored"); -+ } -+ else -+ { -+ U_LONG i; -+ if (!atouint(tokens[1], &i) || i < 64) -+ { -+ syslog(LOG_ERR, -+ "illegal value for clientperiod command - line ignored"); -+ } -+ else -+ { -+ extern U_LONG client_limit_period; -+ char bp[80]; -+ -+ sprintf(bp, "client_limit_period=%d", i); -+ set_sys_var(bp, strlen(bp)+1, RO); -+ -+ client_limit_period = i; -+ } -+ } - break; - } - } -diff -c xntpd/ntp_monitor.c:1.1.1.10 xntpd/ntp_monitor.c:3.9 -*** xntpd/ntp_monitor.c:1.1.1.10 Wed Feb 2 18:16:48 1994 ---- xntpd/ntp_monitor.c Wed Feb 2 18:16:48 1994 -*************** -*** 58,64 **** - static struct mon_data *mon_hash; /* Pointer to array of hash buckets */ - static int *mon_hash_count; /* Point to hash count stats keeper */ - struct mon_data mon_mru_list; -! - /* - * List of free structures structures, and counters of free and total - * structures. The free structures are linked with the hash_next field. ---- 58,64 ---- - static struct mon_data *mon_hash; /* Pointer to array of hash buckets */ - static int *mon_hash_count; /* Point to hash count stats keeper */ - struct mon_data mon_mru_list; -! struct mon_data mon_fifo_list; - /* - * List of free structures structures, and counters of free and total - * structures. The free structures are linked with the hash_next field. -*************** -*** 93,99 **** - * Don't do much of anything here. We don't allocate memory - * until someone explicitly starts us. - */ -! mon_enabled = 0; - mon_have_memory = 0; - - mon_free_mem = 0; ---- 93,99 ---- - * Don't do much of anything here. We don't allocate memory - * until someone explicitly starts us. - */ -! mon_enabled = MON_OFF; - mon_have_memory = 0; - - mon_free_mem = 0; -*************** -*** 103,108 **** ---- 103,109 ---- - mon_hash = 0; - mon_hash_count = 0; - memset((char *)&mon_mru_list, 0, sizeof mon_mru_list); -+ memset((char *)&mon_fifo_list, 0, sizeof mon_fifo_list); - } - - -*************** -*** 110,122 **** - * mon_start - start up the monitoring software - */ - void -! mon_start() - { - register struct mon_data *md; - register int i; - -! if (mon_enabled) - return; - - if (!mon_have_memory) { - mon_hash = (struct mon_data *) ---- 111,128 ---- - * mon_start - start up the monitoring software - */ - void -! mon_start(mode) -! int mode; - { - register struct mon_data *md; - register int i; - -! if (mon_enabled != MON_OFF) { -! mon_enabled |= mode; - return; -+ } -+ if (mode == MON_OFF) -+ return; /* Ooops.. */ - - if (!mon_have_memory) { - mon_hash = (struct mon_data *) -*************** -*** 142,148 **** - mon_mru_list.mru_next = &mon_mru_list; - mon_mru_list.mru_prev = &mon_mru_list; - -! mon_enabled = 1; - } - - ---- 148,157 ---- - mon_mru_list.mru_next = &mon_mru_list; - mon_mru_list.mru_prev = &mon_mru_list; - -! mon_fifo_list.fifo_next = &mon_fifo_list; -! mon_fifo_list.fifo_prev = &mon_fifo_list; -! -! mon_enabled = mode; - } - - -*************** -*** 150,161 **** - * mon_stop - stop the monitoring software - */ - void -! mon_stop() - { - register struct mon_data *md; - register int i; - -! if (!mon_enabled) - return; - - /* ---- 159,177 ---- - * mon_stop - stop the monitoring software - */ - void -! mon_stop(mode) -! int mode; - { - register struct mon_data *md; - register int i; - -! if (mon_enabled == MON_OFF) -! return; -! if ((mon_enabled & mode) == 0 || mode == MON_OFF) -! return; -! -! mon_enabled &= ~mode; -! if (mon_enabled != MON_OFF) - return; - - /* -*************** -*** 176,182 **** - mon_mru_list.mru_next = &mon_mru_list; - mon_mru_list.mru_prev = &mon_mru_list; - -! mon_enabled = 0; - } - - ---- 192,199 ---- - mon_mru_list.mru_next = &mon_mru_list; - mon_mru_list.mru_prev = &mon_mru_list; - -! mon_fifo_list.fifo_next = &mon_fifo_list; -! mon_fifo_list.fifo_prev = &mon_fifo_list; - } - - -*************** -*** 194,200 **** - register int mode; - register struct mon_data *mdhash; - -! if (!mon_enabled) - return; - - pkt = &rbufp->recv_pkt; ---- 211,217 ---- - register int mode; - register struct mon_data *mdhash; - -! if (mon_enabled == MON_OFF) - return; - - pkt = &rbufp->recv_pkt; -*************** -*** 220,225 **** ---- 237,243 ---- - md->mru_prev = &mon_mru_list; - mon_mru_list.mru_next->mru_prev = md; - mon_mru_list.mru_next = md; -+ - return; - } - md = md->hash_next; -*************** -*** 240,245 **** ---- 258,269 ---- - md->hash_next->hash_prev = md->hash_prev; - md->hash_prev->hash_next = md->hash_next; - *(mon_hash_count + MON_HASH(md->rmtadr)) -= 1; -+ /* -+ * Get it from FIFO list -+ */ -+ md->fifo_prev->fifo_next = md->fifo_next; -+ md->fifo_next->fifo_prev = md->fifo_prev; -+ - } else { - if (mon_free_mem == 0) - mon_getmoremem(); -*************** -*** 252,257 **** ---- 276,282 ---- - * Got one, initialize it - */ - md->lasttime = md->firsttime = current_time; -+ md->lastdrop = 0; - md->count = 1; - md->rmtadr = netnum; - md->rmtport = NSRCPORT(&rbufp->recv_srcadr); -*************** -*** 260,266 **** - - /* - * Shuffle him into the hash table, inserting him at the -! * end. Also put him on top of the MRU list. - */ - mdhash = mon_hash + MON_HASH(netnum); - md->hash_next = mdhash; ---- 285,292 ---- - - /* - * Shuffle him into the hash table, inserting him at the -! * end. Also put him on top of the MRU list -! * and at bottom of FIFO list - */ - mdhash = mon_hash + MON_HASH(netnum); - md->hash_next = mdhash; -*************** -*** 273,278 **** ---- 299,309 ---- - md->mru_prev = &mon_mru_list; - mon_mru_list.mru_next->mru_prev = md; - mon_mru_list.mru_next = md; -+ -+ md->fifo_prev = mon_fifo_list.fifo_prev; -+ md->fifo_next = &mon_fifo_list; -+ mon_fifo_list.fifo_prev->fifo_next = md; -+ mon_fifo_list.fifo_prev = md; - } - - -diff -c xntpd/ntp_proto.c:1.1.1.19 xntpd/ntp_proto.c:3.21 -*** xntpd/ntp_proto.c:1.1.1.19 Wed Feb 2 18:16:51 1994 ---- xntpd/ntp_proto.c Wed Feb 2 18:16:52 1994 -*************** -*** 49,54 **** ---- 49,55 ---- - U_LONG sys_processed; /* packets processed */ - U_LONG sys_badauth; /* packets dropped because of authorization */ - U_LONG sys_wanderhold; /* sys_peer held to prevent wandering */ -+ U_LONG sys_limitrejected; /* pkts rejected due toclient count per net */ - - /* - * Imported from ntp_timer.c -*************** -*** 373,378 **** ---- 374,394 ---- - return; - - /* -+ * See if we only accept limited number of clients -+ * from the net this guy is from. -+ * Note: the flag is determined dynamically within restrictions() -+ */ -+ if (restrict & RES_LIMITED) { -+ extern U_LONG client_limit; -+ -+ sys_limitrejected++; -+ syslog(LOG_NOTICE, -+ "rejected mode %d request from %s - per net client limit (%d) exceeded", -+ PKT_MODE(pkt->li_vn_mode), -+ ntoa(&rbufp->recv_srcadr), client_limit); -+ return; -+ } -+ /* - * Dump anything with a putrid stratum. These will most likely - * come from someone trying to poll us with ntpdc. - */ -*************** -*** 2165,2168 **** ---- 2181,2185 ---- - sys_badauth = 0; - sys_wanderhold = 0; - sys_stattime = current_time; -+ sys_limitrejected = 0; - } -diff -c xntpd/ntp_request.c:1.1.1.14 xntpd/ntp_request.c:3.15 -*** xntpd/ntp_request.c:1.1.1.14 Wed Feb 2 18:16:55 1994 ---- xntpd/ntp_request.c Wed Feb 2 18:16:55 1994 -*************** -*** 916,921 **** ---- 916,922 ---- - extern U_LONG sys_processed; - extern U_LONG sys_badauth; - extern U_LONG sys_wanderhold; -+ extern U_LONG sys_limitrejected; - - ss = (struct info_sys_stats *)prepare_pkt(srcadr, inter, inpkt, - sizeof(struct info_sys_stats)); -*************** -*** 930,936 **** - ss->processed = htonl(sys_processed); - ss->badauth = htonl(sys_badauth); - ss->wanderhold = htonl(sys_wanderhold); -! - (void) more_pkt(); - flush_pkt(); - } ---- 931,937 ---- - ss->processed = htonl(sys_processed); - ss->badauth = htonl(sys_badauth); - ss->wanderhold = htonl(sys_wanderhold); -! ss->limitrejected = htonl(sys_limitrejected); - (void) more_pkt(); - flush_pkt(); - } -*************** -*** 1311,1317 **** - struct interface *inter; - struct req_pkt *inpkt; - { -! mon_start(); - req_ack(srcadr, inter, inpkt, INFO_OKAY); - } - ---- 1312,1318 ---- - struct interface *inter; - struct req_pkt *inpkt; - { -! mon_start(MON_ON); - req_ack(srcadr, inter, inpkt, INFO_OKAY); - } - -*************** -*** 1325,1331 **** - struct interface *inter; - struct req_pkt *inpkt; - { -! mon_stop(); - req_ack(srcadr, inter, inpkt, INFO_OKAY); - } - ---- 1326,1332 ---- - struct interface *inter; - struct req_pkt *inpkt; - { -! mon_stop(MON_ON); - req_ack(srcadr, inter, inpkt, INFO_OKAY); - } - -*************** -*** 1497,1502 **** ---- 1498,1507 ---- - md = md->mru_next) { - im->lasttime = htonl(current_time - md->lasttime); - im->firsttime = htonl(current_time - md->firsttime); -+ if (md->lastdrop) -+ im->lastdrop = htonl(current_time - md->lastdrop); -+ else -+ im->lastdrop = 0; - im->count = htonl(md->count); - im->addr = md->rmtadr; - im->port = md->rmtport; -diff -c xntpd/ntp_restrict.c:1.1.1.10 xntpd/ntp_restrict.c:3.10 -*** xntpd/ntp_restrict.c:1.1.1.10 Wed Feb 2 18:16:57 1994 ---- xntpd/ntp_restrict.c Wed Feb 2 18:16:57 1994 -*************** -*** 1,4 **** -! /* ntp_restrict.c,v 3.1 1993/07/06 01:11:28 jbj Exp - * ntp_restrict.c - find out what restrictions this host is running under - */ - #include <stdio.h> ---- 1,4 ---- -! /* - * ntp_restrict.c - find out what restrictions this host is running under - */ - #include <stdio.h> -*************** -*** 60,65 **** ---- 60,80 ---- - U_LONG res_timereset; - - /* -+ * Parameters of the RES_LIMITED restriction option. -+ * client_limit is the number of hosts allowed per source net -+ * client_limit_period is the number of seconds after which an entry -+ * is no longer considered for client limit determination -+ */ -+ U_LONG client_limit; -+ U_LONG client_limit_period; -+ /* -+ * count number of restriction entries referring to RES_LIMITED -+ * controls activation/deactivation of monitoring -+ * (with respect ro RES_LIMITED control) -+ */ -+ U_LONG res_limited_refcnt; -+ -+ /* - * Our initial allocation of list entries. - */ - static struct restrictlist resinit[INITRESLIST]; -*************** -*** 70,81 **** ---- 85,102 ---- - extern U_LONG current_time; - - /* -+ * debug flag -+ */ -+ extern int debug; -+ -+ /* - * init_restrict - initialize the restriction data structures - */ - void - init_restrict() - { - register int i; -+ char bp[80]; - - /* - * Zero the list and put all but one on the free list -*************** -*** 108,113 **** ---- 129,146 ---- - res_found = 0; - res_not_found = 0; - res_timereset = 0; -+ -+ /* -+ * set default values for RES_LIMIT functionality -+ */ -+ client_limit = 3; -+ client_limit_period = 3600; -+ res_limited_refcnt = 0; -+ -+ sprintf(bp, "client_limit=%d", client_limit); -+ set_sys_var(bp, strlen(bp)+1, RO); -+ sprintf(bp, "client_limit_period=%d", client_limit_period); -+ set_sys_var(bp, strlen(bp)+1, RO); - } - - -*************** -*** 150,155 **** ---- 183,302 ---- - else - res_found++; - -+ /* -+ * The following implements limiting the number of clients -+ * accepted from a given network. The notion of "same network" -+ * is determined by the mask and addr fields of the restrict -+ * list entry. The monitor mechanism has to be enabled for -+ * collecting info on current clients. -+ * -+ * The policy is as follows: -+ * - take the list of clients recorded -+ * from the given "network" seen within the last -+ * client_limit_period seconds -+ * - if there are at most client_limit entries: -+ * --> access allowed -+ * - otherwise sort by time first seen -+ * - current client among the first client_limit seen -+ * hosts? -+ * if yes: access allowed -+ * else: eccess denied -+ */ -+ if (match->flags & RES_LIMITED) { -+ int lcnt; -+ struct mon_data *md, *this_client; -+ extern int mon_enabled; -+ extern struct mon_data mon_fifo_list, mon_mru_list; -+ -+ #ifdef DEBUG -+ if (debug > 2) -+ printf("limited clients check: %d clients, period %d seconds, net is 0x%X\n", -+ client_limit, client_limit_period, -+ netof(hostaddr)); -+ #endif /*DEBUG*/ -+ if (mon_enabled == MON_OFF) { -+ #ifdef DEBUG -+ if (debug > 4) -+ printf("no limit - monitoring is off\n"); -+ #endif -+ return (int)(match->flags & ~RES_LIMITED); -+ } -+ -+ /* -+ * How nice, MRU list provides our current client as the -+ * first entry in the list. -+ * Monitoring was verified to be active above, thus we -+ * know an entry for our client must exist, or some -+ * brain dead set the memory limit for mon entries to ZERO!!! -+ */ -+ this_client = mon_mru_list.mru_next; -+ -+ for (md = mon_fifo_list.fifo_next,lcnt = 0; -+ md != &mon_fifo_list; -+ md = md->fifo_next) { -+ if ((current_time - md->lasttime) -+ > client_limit_period) { -+ #ifdef DEBUG -+ if (debug > 5) -+ printf("checking: %s: ignore: too old: %d\n", -+ numtoa(md->rmtadr), -+ current_time - md->lasttime); -+ #endif -+ continue; -+ } -+ if (md->mode == MODE_BROADCAST || -+ md->mode == MODE_CONTROL || -+ md->mode == MODE_PRIVATE) { -+ #ifdef DEBUG -+ if (debug > 5) -+ printf("checking: %s: ignore mode %d\n", -+ numtoa(md->rmtadr), -+ md->mode); -+ #endif -+ continue; -+ } -+ if (netof(md->rmtadr) != -+ netof(hostaddr)) { -+ #ifdef DEBUG -+ if (debug > 5) -+ printf("checking: %s: different net 0x%X\n", -+ numtoa(md->rmtadr), -+ netof(md->rmtadr)); -+ #endif -+ continue; -+ } -+ lcnt++; -+ if (lcnt > client_limit || -+ md->rmtadr == hostaddr) { -+ #ifdef DEBUG -+ if (debug > 5) -+ printf("considering %s: found host\n", -+ numtoa(md->rmtadr)); -+ #endif -+ break; -+ } -+ #ifdef DEBUG -+ else { -+ if (debug > 5) -+ printf("considering %s: same net\n", -+ numtoa(md->rmtadr)); -+ } -+ #endif -+ -+ } -+ #ifdef DEBUG -+ if (debug > 4) -+ printf("this one is rank %d in list, limit is %d: %s\n", -+ lcnt, client_limit, -+ (lcnt <= client_limit) ? "ALLOW" : "REJECT"); -+ #endif -+ if (lcnt <= client_limit) { -+ this_client->lastdrop = 0; -+ return (int)(match->flags & ~RES_LIMITED); -+ } else { -+ this_client->lastdrop = current_time; -+ } -+ } - return (int)match->flags; - } - -*************** -*** 257,262 **** ---- 404,413 ---- - rlprev->next = rl; - restrictcount++; - } -+ if ((rl->flags ^ (u_short)flags) & RES_LIMITED) { -+ res_limited_refcnt++; -+ mon_start(MON_RES); /* ensure data gets collected */ -+ } - rl->flags |= (u_short)flags; - break; - -*************** -*** 265,272 **** - * Remove some bits from the flags. If we didn't - * find this one, just return. - */ -! if (rl != 0) - rl->flags &= (u_short)~flags; - break; - - case RESTRICT_REMOVE: ---- 416,429 ---- - * Remove some bits from the flags. If we didn't - * find this one, just return. - */ -! if (rl != 0) { -! if ((rl->flags ^ (u_short)flags) & RES_LIMITED) { -! res_limited_refcnt--; -! if (res_limited_refcnt == 0) -! mon_stop(MON_RES); -! } - rl->flags &= (u_short)~flags; -+ } - break; - - case RESTRICT_REMOVE: -*************** -*** 280,285 **** ---- 437,447 ---- - && !(rl->mflags & RESM_INTERFACE)) { - rlprev->next = rl->next; - restrictcount--; -+ if (rl->flags & RES_LIMITED) { -+ res_limited_refcnt--; -+ if (res_limited_refcnt == 0) -+ mon_stop(MON_RES); -+ } - memset((char *)rl, 0, sizeof(struct restrictlist)); - - rl->next = resfree; -diff -c xntpd/ntp_unixclock.c:1.1.1.27 xntpd/ntp_unixclock.c:3.29 -*** xntpd/ntp_unixclock.c:1.1.1.27 Wed Feb 2 18:17:00 1994 ---- xntpd/ntp_unixclock.c Wed Feb 2 18:17:01 1994 -*************** -*** 556,568 **** - #endif /* SOLARIS */ - - #ifdef SYS_LINUX -! /* XXX should look this up somewhere ! */ - static void - clock_parms(tickadj, tick) - U_LONG *tickadj; - U_LONG *tick; - { -! *tickadj = (U_LONG)1; -! *tick = (U_LONG)10000; - } - #endif /* SYS_LINUX */ ---- 556,573 ---- - #endif /* SOLARIS */ - - #ifdef SYS_LINUX -! #include <sys/timex.h> - static void - clock_parms(tickadj, tick) - U_LONG *tickadj; - U_LONG *tick; - { -! struct timex txc; -! -! txc.mode = 0; -! __adjtimex(&txc); -! -! *tickadj = (U_LONG)1; /* our adjtime is accurate */ -! *tick = (U_LONG)txc.tick; - } - #endif /* SYS_LINUX */ -diff -c xntpdc/ntpdc_ops.c:1.1.1.12 xntpdc/ntpdc_ops.c:3.16 -*** xntpdc/ntpdc_ops.c:1.1.1.12 Wed Feb 2 18:17:35 1994 ---- xntpdc/ntpdc_ops.c Wed Feb 2 18:17:36 1994 -*************** -*** 846,853 **** - if (!check1item(items, fp)) - return; - -! if (!checkitemsize(itemsize, sizeof(struct info_sys_stats))) - return; - - (void) fprintf(fp, "system uptime: %d\n", - ntohl(ss->timeup)); ---- 846,857 ---- - if (!check1item(items, fp)) - return; - -! if (itemsize != sizeof(struct info_sys_stats) && -! itemsize != sizeof(struct old_info_sys_stats)) { -! /* issue warning according to new structure size */ -! checkitemsize(itemsize, sizeof(struct info_sys_stats)); - return; -+ } - - (void) fprintf(fp, "system uptime: %d\n", - ntohl(ss->timeup)); -*************** -*** 869,874 **** ---- 873,883 ---- - ntohl(ss->badauth)); - (void) fprintf(fp, "wander hold downs: %d\n", - ntohl(ss->wanderhold)); -+ if (itemsize != sizeof(struct info_sys_stats)) -+ return; -+ -+ (void) fprintf(fp, "limitation rejects: %d\n", -+ ntohl(ss->limitrejected)); - } - - -*************** -*** 1243,1248 **** ---- 1252,1258 ---- - { "nopeer", RES_NOPEER }, - { "notrap", RES_NOTRAP }, - { "lptrap", RES_LPTRAP }, -+ { "limited", RES_LIMITED }, - { "", 0 } - }; - -*************** -*** 1463,1468 **** ---- 1473,1479 ---- - FILE *fp; - { - struct info_monitor *ml; -+ struct old_info_monitor *oml; - int items; - int itemsize; - int res; -*************** -*** 1476,1498 **** - if (!checkitems(items, fp)) - return; - -! if (!checkitemsize(itemsize, sizeof(struct info_monitor))) -! return; - -! (void) fprintf(fp, -! " address port count mode version lasttime firsttime\n"); -! (void) fprintf(fp, -! "=====================================================================\n"); -! while (items > 0) { -! (void) fprintf(fp, "%-20.20s %5d %9d %4d %3d %9u %9u\n", -! nntohost(ml->addr), -! ntohs(ml->port), -! ntohl(ml->count), -! ml->mode, ml->version, -! ntohl(ml->lasttime), -! ntohl(ml->firsttime)); -! ml++; -! items--; - } - } - ---- 1487,1535 ---- - if (!checkitems(items, fp)) - return; - -! if (itemsize == sizeof(struct info_monitor)) { - -! (void) fprintf(fp, -! " address port count mode version lastdrop lasttime firsttime\n"); -! (void) fprintf(fp, -! "===============================================================================\n"); -! while (items > 0) { -! (void) fprintf(fp, "%-20.20s %5d %9d %4d %3d %9u %9u %9u\n", -! nntohost(ml->addr), -! ntohs(ml->port), -! ntohl(ml->count), -! ml->mode, -! ml->version, -! ntohl(ml->lastdrop), -! ntohl(ml->lasttime), -! ntohl(ml->firsttime)); -! ml++; -! items--; -! } -! } else { -! if (itemsize != sizeof(struct old_info_monitor)) { -! /* issue warning according to new info_monitor size */ -! checkitemsize(itemsize, sizeof(struct info_monitor)); -! return; -! } -! -! oml = (struct old_info_monitor *)ml; -! (void) fprintf(fp, -! " address port count mode version lasttime firsttime\n"); -! (void) fprintf(fp, -! "======================================================================\n"); -! while (items > 0) { -! (void) fprintf(fp, "%-20.20s %5d %9d %4d %3d %9u %9u\n", -! nntohost(oml->addr), -! ntohs(oml->port), -! ntohl(oml->count), -! oml->mode, -! oml->version, -! ntohl(oml->lasttime), -! ntohl(oml->firsttime)); -! oml++; -! items--; -! } - } - } - diff --git a/usr.sbin/xntpd/patches/patch.11 b/usr.sbin/xntpd/patches/patch.11 deleted file mode 100644 index 8554d88..0000000 --- a/usr.sbin/xntpd/patches/patch.11 +++ /dev/null @@ -1,536 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa05908; 9 Feb 94 18:18 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa21398; - 9 Feb 94 18:13 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA29809 (5.65c-6/7.3v-FAU); Thu, 10 Feb 1994 00:12:50 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA11633 (5.65c-6/7.3m-FAU); Thu, 10 Feb 1994 00:12:46 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199402092312.AA11633@faui43.informatik.uni-erlangen.de> -Subject: .zz Patches -To: Mills@udel.edu -Date: Thu, 10 Feb 94 0:12:41 MET -Cc: Frank.Kardel@informatik.uni-erlangen.de, - Paul_Vixie@corpmis.sjc.hw.sony.com, Piete.Brooks@cl.cam.ac.uk -X-Mailer: ELM [version 2.3 PL11] - -Guys, - -Ok, here are some patches (including some WWVB cleanup 8-) relative -to the zz version. The KERNEL stuff in ntp_timex.h must still -be resolved. - -diff -c Makefile:1.1.1.11 Makefile:3.46 -*** Makefile:1.1.1.11 Wed Feb 9 23:54:57 1994 ---- Makefile Wed Feb 9 23:54:57 1994 -*************** -*** 162,168 **** - FRC: - - savebin: -! @test -d bin || mkdir bin - @echo - @echo '### saving $(TARGETS) $(OPTTARG) in bin' - -@for f in $(TARGETS) $(OPTTARG); \ ---- 162,168 ---- - FRC: - - savebin: -! -@test -d bin || mkdir bin - @echo - @echo '### saving $(TARGETS) $(OPTTARG) in bin' - -@for f in $(TARGETS) $(OPTTARG); \ -diff -c include/ntp_machine.h:1.1.1.11 include/ntp_machine.h:1.27 -*** include/ntp_machine.h:1.1.1.11 Wed Feb 9 23:56:27 1994 ---- include/ntp_machine.h Wed Feb 9 23:56:27 1994 -*************** -*** 274,280 **** - #ifndef STR_SYSTEM - #define STR_SYSTEM "UNIX/Ultrix" - #endif -- #define HAVE_TERMIOS - #endif - - /* ---- 274,279 ---- -diff -c lib/systime.c:1.1.1.11 lib/systime.c:1.9 -*** lib/systime.c:1.1.1.11 Wed Feb 9 23:57:45 1994 ---- lib/systime.c Wed Feb 9 23:57:45 1994 -*************** -*** 47,58 **** - * We also remember the clock precision we computed from the kernel in - * case someone asks us. - */ - LONG adj_precision; /* adj precision in usec (tickadj) */ - LONG tvu_maxslew; /* maximum adjust doable in 1<<CLOCK_ADJ sec (usec) */ - - U_LONG tsf_maxslew; /* same as above, as LONG format */ - -- LONG sys_clock; - l_fp sys_clock_offset; /* correction for current system time */ - - /* ---- 47,59 ---- - * We also remember the clock precision we computed from the kernel in - * case someone asks us. - */ -+ LONG sys_clock; -+ - LONG adj_precision; /* adj precision in usec (tickadj) */ - LONG tvu_maxslew; /* maximum adjust doable in 1<<CLOCK_ADJ sec (usec) */ - - U_LONG tsf_maxslew; /* same as above, as LONG format */ - - l_fp sys_clock_offset; /* correction for current system time */ - - /* -diff -c machines/sunos4.bsd:1.1.1.3 machines/sunos4.bsd:1.3 -*** machines/sunos4.bsd:1.1.1.3 Wed Feb 9 23:58:15 1994 ---- machines/sunos4.bsd Wed Feb 9 23:58:15 1994 -*************** -*** 1,6 **** - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_SUNOS4 - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -lkvm ---- 1,6 ---- - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_SUNOS4 -DHAVE_BSD_TTYS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -lkvm -diff -c machines/ultrix.bsd:1.1.1.2 machines/ultrix.bsd:1.3 -*** machines/ultrix.bsd:1.1.1.2 Wed Feb 9 23:58:19 1994 ---- machines/ultrix.bsd Wed Feb 9 23:58:19 1994 -*************** -*** 1,6 **** - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_ULTRIX - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,6 ---- - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_ULTRIX -DHAVE_TERMIOS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -diff -c machines/ultrix.posix:1.1.1.2 machines/ultrix.posix:1.3 -*** machines/ultrix.posix:1.1.1.2 Wed Feb 9 23:58:20 1994 ---- machines/ultrix.posix Wed Feb 9 23:58:20 1994 -*************** -*** 1,6 **** - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_ULTRIX -DNTP_POSIX_SOURCE -DHAVE_SIGNALED_IO - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,6 ---- - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_ULTRIX -DNTP_POSIX_SOURCE -DHAVE_SIGNALED_IO -DHAVE_TERMIOS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -diff -c parse/clk_dcf7000.c:1.1.1.8 parse/clk_dcf7000.c:3.11 -*** parse/clk_dcf7000.c:1.1.1.8 Wed Feb 9 23:58:51 1994 ---- parse/clk_dcf7000.c Wed Feb 9 23:58:51 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_DCF7000) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_dcf7000.c,v 3.10 1994/01/25 19:05:07 kardel Exp - * -! * clk_dcf7000.c,v 3.10 1994/01/25 19:05:07 kardel Exp - * - * ELV DCF7000 module - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_DCF7000) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_dcf7000.c,v 3.11 1994/02/02 17:45:14 kardel Exp - * -! * clk_dcf7000.c,v 3.11 1994/02/02 17:45:14 kardel Exp - * - * ELV DCF7000 module - * -*************** -*** 121,126 **** ---- 121,129 ---- - * History: - * - * clk_dcf7000.c,v -+ * Revision 3.11 1994/02/02 17:45:14 kardel -+ * rcs ids fixed -+ * - * Revision 3.6 1993/10/09 15:01:27 kardel - * file structure unified - * -diff -c parse/clk_meinberg.c:1.1.1.8 parse/clk_meinberg.c:3.13 -*** parse/clk_meinberg.c:1.1.1.8 Wed Feb 9 23:58:53 1994 ---- parse/clk_meinberg.c Wed Feb 9 23:58:53 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_MEINBERG) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_meinberg.c,v 3.11 1994/01/25 19:05:10 kardel Exp - * -! * clk_meinberg.c,v 3.11 1994/01/25 19:05:10 kardel Exp - * - * Meinberg clock support - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_MEINBERG) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_meinberg.c,v 3.13 1994/02/02 17:45:21 kardel Exp - * -! * clk_meinberg.c,v 3.13 1994/02/02 17:45:21 kardel Exp - * - * Meinberg clock support - * -*************** -*** 414,419 **** ---- 414,422 ---- - * History: - * - * clk_meinberg.c,v -+ * Revision 3.13 1994/02/02 17:45:21 kardel -+ * rcs ids fixed -+ * - * Revision 3.11 1994/01/25 19:05:10 kardel - * 94/01/23 reconcilation - * -diff -c parse/clk_rawdcf.c:1.1.1.8 parse/clk_rawdcf.c:3.11 -*** parse/clk_rawdcf.c:1.1.1.8 Wed Feb 9 23:58:54 1994 ---- parse/clk_rawdcf.c Wed Feb 9 23:58:54 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_RAWDCF) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_rawdcf.c,v 3.9 1994/01/25 19:05:12 kardel Exp - * -! * clk_rawdcf.c,v 3.9 1994/01/25 19:05:12 kardel Exp - * - * Raw DCF77 pulse clock support - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_RAWDCF) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_rawdcf.c,v 3.11 1994/02/02 17:45:23 kardel Exp - * -! * clk_rawdcf.c,v 3.11 1994/02/02 17:45:23 kardel Exp - * - * Raw DCF77 pulse clock support - * -*************** -*** 529,534 **** ---- 529,537 ---- - * History: - * - * clk_rawdcf.c,v -+ * Revision 3.11 1994/02/02 17:45:23 kardel -+ * rcs ids fixed -+ * - * Revision 3.9 1994/01/25 19:05:12 kardel - * 94/01/23 reconcilation - * -diff -c parse/clk_schmid.c:1.1.1.8 parse/clk_schmid.c:3.12 -*** parse/clk_schmid.c:1.1.1.8 Wed Feb 9 23:58:55 1994 ---- parse/clk_schmid.c Wed Feb 9 23:58:55 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_SCHMID) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_schmid.c,v 3.10 1994/01/25 19:05:15 kardel Exp - * -! * clk_schmid.c,v 3.10 1994/01/25 19:05:15 kardel Exp - * - * Schmid clock support - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_SCHMID) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_schmid.c,v 3.12 1994/02/02 17:45:25 kardel Exp - * -! * clk_schmid.c,v 3.12 1994/02/02 17:45:25 kardel Exp - * - * Schmid clock support - * -*************** -*** 168,173 **** ---- 168,176 ---- - * History: - * - * clk_schmid.c,v -+ * Revision 3.12 1994/02/02 17:45:25 kardel -+ * rcs ids fixed -+ * - * Revision 3.10 1994/01/25 19:05:15 kardel - * 94/01/23 reconcilation - * -diff -c parse/clk_trimble.c:1.1.1.3 parse/clk_trimble.c:3.9 -*** parse/clk_trimble.c:1.1.1.3 Wed Feb 9 23:58:56 1994 ---- parse/clk_trimble.c Wed Feb 9 23:58:57 1994 -*************** -*** 1,6 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_TRIMSV6) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_trimble.c,v 3.7 1994/01/25 19:05:17 kardel Exp - * - * Trimble SV6 clock support - */ ---- 1,6 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_TRIMSV6) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_trimble.c,v 3.9 1994/02/02 17:45:27 kardel Exp - * - * Trimble SV6 clock support - */ -*************** -*** 106,111 **** ---- 106,114 ---- - * History: - * - * clk_trimble.c,v -+ * Revision 3.9 1994/02/02 17:45:27 kardel -+ * rcs ids fixed -+ * - * Revision 3.7 1994/01/25 19:05:17 kardel - * 94/01/23 reconcilation - * -diff -c parse/parse.c:1.1.1.8 parse/parse.c:3.21 -*** parse/parse.c:1.1.1.8 Wed Feb 9 23:58:59 1994 ---- parse/parse.c Wed Feb 9 23:59:00 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse.c,v 3.19 1994/01/25 19:05:20 kardel Exp - * -! * parse.c,v 3.19 1994/01/25 19:05:20 kardel Exp - * - * Parser module for reference clock - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse.c,v 3.21 1994/02/02 17:45:30 kardel Exp - * -! * parse.c,v 3.21 1994/02/02 17:45:30 kardel Exp - * - * Parser module for reference clock - * -*************** -*** 1148,1153 **** ---- 1148,1156 ---- - * History: - * - * parse.c,v -+ * Revision 3.21 1994/02/02 17:45:30 kardel -+ * rcs ids fixed -+ * - * Revision 3.19 1994/01/25 19:05:20 kardel - * 94/01/23 reconcilation - * -diff -c parse/parse_conf.c:1.1.1.8 parse/parse_conf.c:3.15 -*** parse/parse_conf.c:1.1.1.8 Wed Feb 9 23:59:01 1994 ---- parse/parse_conf.c Wed Feb 9 23:59:01 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse_conf.c,v 3.13 1994/01/25 19:05:23 kardel Exp - * -! * parse_conf.c,v 3.13 1994/01/25 19:05:23 kardel Exp - * - * Parser configuration module for reference clocks - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse_conf.c,v 3.15 1994/02/02 17:45:32 kardel Exp - * -! * parse_conf.c,v 3.15 1994/02/02 17:45:32 kardel Exp - * - * Parser configuration module for reference clocks - * -*************** -*** 81,86 **** ---- 81,89 ---- - * History: - * - * parse_conf.c,v -+ * Revision 3.15 1994/02/02 17:45:32 kardel -+ * rcs ids fixed -+ * - * Revision 3.13 1994/01/25 19:05:23 kardel - * 94/01/23 reconcilation - * -diff -c parse/parsesolaris.c:1.1.1.6 parse/parsesolaris.c:3.12 -*** parse/parsesolaris.c:1.1.1.6 Wed Feb 9 23:59:02 1994 ---- parse/parsesolaris.c Wed Feb 9 23:59:02 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/parse/parsesolaris.c,v 3.9 1994/01/25 19:05:26 kardel Exp - * -! * parsesolaris.c,v 3.9 1994/01/25 19:05:26 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS5.x - not fully tested - buyer beware ! - OS KILLERS may still be ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/parsesolaris.c,v 3.12 1994/02/02 17:45:35 kardel Exp - * -! * parsesolaris.c,v 3.12 1994/02/02 17:45:35 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS5.x - not fully tested - buyer beware ! - OS KILLERS may still be -*************** -*** 139,145 **** - /*ARGSUSED*/ - int _init(void) - { -! static char revision[] = "3.9"; - char *s, *S, *t; - - /* ---- 139,145 ---- - /*ARGSUSED*/ - int _init(void) - { -! static char revision[] = "3.12"; - char *s, *S, *t; - - /* -*************** -*** 1179,1184 **** ---- 1179,1187 ---- - * History: - * - * parsesolaris.c,v -+ * Revision 3.12 1994/02/02 17:45:35 kardel -+ * rcs ids fixed -+ * - * Revision 3.9 1994/01/25 19:05:26 kardel - * 94/01/23 reconcilation - * -diff -c parse/parsestreams.c:1.1.1.7 parse/parsestreams.c:3.14 -*** parse/parsestreams.c:1.1.1.7 Wed Feb 9 23:59:03 1994 ---- parse/parsestreams.c Wed Feb 9 23:59:04 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/parse/parsestreams.c,v 3.12 1994/01/25 19:05:30 kardel Exp - * -! * parsestreams.c,v 3.12 1994/01/25 19:05:30 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS4.x) ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/parsestreams.c,v 3.14 1994/02/02 17:45:38 kardel Exp - * -! * parsestreams.c,v 3.14 1994/02/02 17:45:38 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS4.x) -*************** -*** 1258,1263 **** ---- 1258,1266 ---- - * History: - * - * parsestreams.c,v -+ * Revision 3.14 1994/02/02 17:45:38 kardel -+ * rcs ids fixed -+ * - * Revision 3.12 1994/01/25 19:05:30 kardel - * 94/01/23 reconcilation - * -diff -c xntpd/ntp_proto.c:1.1.1.20 xntpd/ntp_proto.c:3.22 -*** xntpd/ntp_proto.c:1.1.1.20 Thu Feb 10 00:00:36 1994 ---- xntpd/ntp_proto.c Thu Feb 10 00:00:36 1994 -*************** -*** 25,31 **** - l_fp sys_refskew; /* accumulated skew since last update */ - struct peer *sys_peer; /* our current peer */ - u_char sys_poll; /* log2 of desired system poll interval */ -! LONG sys_clock; /* second part of current time */ - LONG sys_lastselect; /* sys_clock at last synch-dist update */ - - /* ---- 25,31 ---- - l_fp sys_refskew; /* accumulated skew since last update */ - struct peer *sys_peer; /* our current peer */ - u_char sys_poll; /* log2 of desired system poll interval */ -! extern LONG sys_clock; /* second part of current time - now in systime.c */ - LONG sys_lastselect; /* sys_clock at last synch-dist update */ - - /* -diff -c xntpd/ntpd.c:1.1.1.28 xntpd/ntpd.c:3.32 -*** xntpd/ntpd.c:1.1.1.28 Thu Feb 10 00:00:43 1994 ---- xntpd/ntpd.c Thu Feb 10 00:00:43 1994 -*************** -*** 139,145 **** - (void) dup2(0, 1); - (void) dup2(0, 2); - #ifdef NTP_POSIX_SOURCE -! #if defined(SOLARIS) || defined(SYS_PTX) || defined(SYS_AUX3) || defined(SYS_AIX) - (void) setsid(); - #else - (void) setpgid(0, 0); ---- 139,145 ---- - (void) dup2(0, 1); - (void) dup2(0, 2); - #ifdef NTP_POSIX_SOURCE -! #if defined(SOLARIS) || defined(SYS_PTX) || defined(SYS_AUX3) || defined(SYS_AIX) || defined(SYS_ULTRIX) - (void) setsid(); - #else - (void) setpgid(0, 0); -diff -c xntpd/refclock_parse.c:1.1.1.10 xntpd/refclock_parse.c:3.47 -*** xntpd/refclock_parse.c:1.1.1.10 Thu Feb 10 00:00:54 1994 ---- xntpd/refclock_parse.c Thu Feb 10 00:00:54 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v 3.45 1994/01/25 19:06:27 kardel Exp - * -! * refclock_parse.c,v 3.45 1994/01/25 19:06:27 kardel Exp - * - * generic reference clock driver for receivers - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v 3.47 1994/02/02 17:44:30 kardel Exp - * -! * refclock_parse.c,v 3.47 1994/02/02 17:44:30 kardel Exp - * - * generic reference clock driver for receivers - * -*************** -*** 3396,3401 **** ---- 3396,3404 ---- - * History: - * - * refclock_parse.c,v -+ * Revision 3.47 1994/02/02 17:44:30 kardel -+ * rcs ids fixed -+ * - * Revision 3.45 1994/01/25 19:06:27 kardel - * 94/01/23 reconcilation - * - --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.12 b/usr.sbin/xntpd/patches/patch.12 deleted file mode 100644 index 9d7db0f..0000000 --- a/usr.sbin/xntpd/patches/patch.12 +++ /dev/null @@ -1,66 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa16020; 11 Feb 94 10:28 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa27338; - 11 Feb 94 10:12 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA00715 (5.65c-6/7.3v-FAU); Fri, 11 Feb 1994 14:26:34 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA24390 (5.65c-6/7.3m-FAU); Fri, 11 Feb 1994 14:26:31 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199402111326.AA24390@faui43.informatik.uni-erlangen.de> -Subject: Re: Beep, beep, beep -To: Mills@udel.edu -Date: Fri, 11 Feb 94 14:26:25 MET -Cc: Frank.Kardel@informatik.uni-erlangen.de, - Paul_Vixie@corpmis.sjc.hw.sony.com, Piete.Brooks@cl.cam.ac.uk -In-Reply-To: <9402101138.aa10259@huey.udel.edu>; from "Mills@udel.edu" at Feb 10, 94 11:38 am -X-Mailer: ELM [version 2.3 PL11] - - -> Frank, - -> In the latest xntp3.3zz.tar.Z the Ultrix kernel finds joy of clock. -> (Whew). - -Ok, I just dug out an old allocation failure in xntpdc. While -reading respones the input buffer might be realloced(and MOVED) without -telling the rest of the system. This was fatal when stdio needed a -buffer for non terminal operation. Net result was confused output. - -Ok, here ist the patch: - -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/xntpdc/ntpdc.c,v -retrieving revision 3.17 -diff -c -r3.17 xntpdc/ntpdc.c -*** xntpdc/ntpdc.c:3.17 1994/01/28 14:07:13 ---- xntpdc/ntpdc.c 1994/02/11 13:20:56 -*************** -*** 598,605 **** - /* - * So far, so good. Copy this data into the output array. - */ -! if ((datap + datasize) > (pktdata + pktdatasize)) - growpktdata(); - memmove(datap, (char *)rpkt.data, datasize); - datap += datasize; - if (firstpkt) { ---- 598,609 ---- - /* - * So far, so good. Copy this data into the output array. - */ -! if ((datap + datasize) > (pktdata + pktdatasize)) { -! int offset = datap - pktdata; - growpktdata(); -+ *rdata = pktdata; /* might have been realloced ! */ -+ datap = pktdata + offset; -+ } - memmove(datap, (char *)rpkt.data, datasize); - datap += datasize; - if (firstpkt) { - --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.13 b/usr.sbin/xntpd/patches/patch.13 deleted file mode 100644 index 17363e2..0000000 --- a/usr.sbin/xntpd/patches/patch.13 +++ /dev/null @@ -1,68 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id af16153; 14 Feb 94 7:27 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa27498; - 13 Feb 94 13:23 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA22387 (5.65c-6/7.3v-FAU); Sun, 13 Feb 1994 19:22:59 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA27117 (5.65c-6/7.3m-FAU); Sun, 13 Feb 1994 19:22:57 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199402131822.AA27117@faui43.informatik.uni-erlangen.de> -Subject: compilation setup for solaris -To: mills@udel.edu -Date: Sun, 13 Feb 94 19:22:53 MET -X-Mailer: ELM [version 2.3 PL11] - -Hi, Dave. - -Just to remove some compilation noise in solaris (NTP_POSIX_SOURCE -redefined): - -For 3.3e: -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/machines/sunos5.1,v -retrieving revision 1.4 -diff -c -r1.4 machines/sunos5.1 -*** machines/sunos5.1:1.4 1994/02/01 23:30:54 ---- machines/sunos5.1 1994/02/13 18:16:24 -*************** -*** 1,6 **** - RANLIB= : - DEFS_LOCAL=-DREFCLOCK -! DEFS= -DSTREAM -DSOLARIS -DSYS_SOLARIS -DNTP_POSIX_SOURCE - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,6 ---- - RANLIB= : - DEFS_LOCAL=-DREFCLOCK -! DEFS= -DSTREAM -DSOLARIS -DSYS_SOLARIS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/machines/sunos5.2,v -retrieving revision 1.4 -diff -c -r1.4 machines/sunos5.2 -*** machines/sunos5.2:1.4 1994/02/01 23:30:56 ---- machines/sunos5.2 1994/02/13 18:16:27 -*************** -*** 1,6 **** - RANLIB= : - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSTREAM -DSOLARIS -DSYS_SOLARIS -DADJTIME_IS_ACCURATE -DNTP_POSIX_SOURCE - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,6 ---- - RANLIB= : - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSTREAM -DSOLARIS -DSYS_SOLARIS -DADJTIME_IS_ACCURATE - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.14 b/usr.sbin/xntpd/patches/patch.14 deleted file mode 100644 index 775f9da..0000000 --- a/usr.sbin/xntpd/patches/patch.14 +++ /dev/null @@ -1,116 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa16187; 14 Feb 94 7:27 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa27096; - 13 Feb 94 13:04 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA21590 (5.65c-6/7.3v-FAU); Sun, 13 Feb 1994 19:04:48 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA26947 (5.65c-6/7.3m-FAU); Sun, 13 Feb 1994 19:04:46 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199402131804.AA26947@faui43.informatik.uni-erlangen.de> -Subject: patches for 3.3e -To: mills@udel.edu -Date: Sun, 13 Feb 94 19:04:42 MET -X-Mailer: ELM [version 2.3 PL11] - -Hi, Dave. - -Here is something to make Sequent PTX happier. -I also changed the version number from 3.3zz to 3.3e. -The patch is relative to the current 3.3e version. - -diff -c Makefile:1.1.1.12 Makefile:3.47 -*** Makefile:1.1.1.12 Sun Feb 13 18:53:06 1994 ---- Makefile Sun Feb 13 18:53:07 1994 -*************** -*** 144,150 **** - @echo '###' creating XNTPRES utility - @cd xntpres && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" - -! util/tickadj: util/Makefile FRC - @echo - @echo '###' creating TICKADJ utility - @cd util && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" ---- 144,150 ---- - @echo '###' creating XNTPRES utility - @cd xntpres && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" - -! util/tickadj: util/Makefile lib/libntp.a FRC - @echo - @echo '###' creating TICKADJ utility - @cd util && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" -diff -c VERSION:1.1.1.7 VERSION:3.12 -*** VERSION:1.1.1.7 Sun Feb 13 18:53:10 1994 ---- VERSION Sun Feb 13 18:53:10 1994 -*************** -*** 1 **** -! version=3.3zz (beta) ---- 1 ---- -! version=3.3e (beta) -diff -c authstuff/Makefile.tmpl:1.1.1.9 authstuff/Makefile.tmpl:3.12 -*** authstuff/Makefile.tmpl:1.1.1.9 Sun Feb 13 18:53:18 1994 ---- authstuff/Makefile.tmpl Sun Feb 13 18:53:18 1994 -*************** -*** 38,50 **** - all: $(PROGRAM) - - authcert: $(CRTOBJS) $(LIB) -! $(CC) $(COPTS) -o $@ $(CRTOBJS) $(LIB) - - authspeed: $(SPDOBJS) $(LIB) - $(CC) $(COPTS) -o $@ $(SPDOBJS) $(LIB) $(COMPAT) $(RESLIB) - - keyparity: $(PAROBJS) $(LIB) -! $(CC) $(COPTS) -o $@ $(PAROBJS) $(LIB) - - makeIPFP: $(IFPOBJS) - $(CC) $(COPTS) -o $@ $(IFPOBJS) ---- 38,50 ---- - all: $(PROGRAM) - - authcert: $(CRTOBJS) $(LIB) -! $(CC) $(COPTS) -o $@ $(CRTOBJS) $(LIB) $(COMPAT) $(RESLIB) - - authspeed: $(SPDOBJS) $(LIB) - $(CC) $(COPTS) -o $@ $(SPDOBJS) $(LIB) $(COMPAT) $(RESLIB) - - keyparity: $(PAROBJS) $(LIB) -! $(CC) $(COPTS) -o $@ $(PAROBJS) $(LIB) $(COMPAT) $(RESLIB) - - makeIPFP: $(IFPOBJS) - $(CC) $(COPTS) -o $@ $(IFPOBJS) -*************** -*** 68,74 **** - $(CC) $(COPTS) -o $@ $(UNXBJS) - - md5: $(MD5OBJS) -! $(CC) $(COPTS) -o $@ $(MD5OBJS) $(LIB) - - tags: - ctags *.c *.h ---- 68,74 ---- - $(CC) $(COPTS) -o $@ $(UNXBJS) - - md5: $(MD5OBJS) -! $(CC) $(COPTS) -o $@ $(MD5OBJS) $(LIB) $(COMPAT) $(RESLIB) - - tags: - ctags *.c *.h -diff -c include/ntp_machine.h:1.1.1.12 include/ntp_machine.h:1.28 -*** include/ntp_machine.h:1.1.1.12 Sun Feb 13 18:54:32 1994 ---- include/ntp_machine.h Sun Feb 13 18:54:32 1994 -*************** -*** 457,462 **** ---- 457,463 ---- - #define HAVE_READKMEM - #define UDP_WILDCARD_DELIVERY - #define NTP_POSIX_SOURCE -+ #define memmove(x, y, z) memcpy(x, y, z) - struct timezone { int __0; }; /* unused placebo */ - /* - * no comment !@! --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.15 b/usr.sbin/xntpd/patches/patch.15 deleted file mode 100644 index 1ef861d..0000000 --- a/usr.sbin/xntpd/patches/patch.15 +++ /dev/null @@ -1,39 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aq16153; 14 Feb 94 7:28 EST -Received: from jagubox.gsfc.nasa.gov by louie.udel.edu id aa24615; - 14 Feb 94 6:34 EST -Received: by jagubox.gsfc.nasa.gov (Smail3.1.28.1 #1) - id m0pW1Zk-000C8UC; Mon, 14 Feb 94 06:34 EST -Message-Id: <m0pW1Zk-000C8UC@jagubox.gsfc.nasa.gov> -From: Jim Jagielski <jim@jagubox.gsfc.nasa.gov> -Subject: xntp 3.3e (or is that zz ;) ) -To: Mills@udel.edu -Date: Mon, 14 Feb 1994 06:34:52 -0500 (EST) -Reply-To: Jim Jagielski <jim@jagubox.gsfc.nasa.gov> -In-Reply-To: <9308051324.aa24396@huey.udel.edu> from "Mills@udel.edu" at Aug 5, 93 01:24:24 pm -X-Mailer: ELM [version 2.4 PL23] -Content-Type: text -Content-Length: 621 - -This latest version requires the NTP_NEED_BOPS define in ntp_machine.h for -A/UX: - -*** ntp_machine.h.orig Mon Feb 14 06:34:34 1994 ---- ntp_machine.h Mon Feb 14 06:20:57 1994 -*************** -*** 299,304 **** ---- 299,305 ---- - #define HAVE_BSD_TTYS - #define LOG_NTP LOG_LOCAL1 - #define HAVE_SIGNALED_IO -+ #define NTP_NEED_BOPS - #ifndef STR_SYSTEM - #define STR_SYSTEM "UNIX/AUX" - #endif --- -#include <std/disclaimer.h> - Jim Jagielski | - jim@jagubox.gsfc.nasa.gov | "Ahh... west and wewaxation at wast" - NASA/GSFC, Code 734.4 | Elmer Fudd - Greenbelt, MD 20771 | - diff --git a/usr.sbin/xntpd/patches/patch.16 b/usr.sbin/xntpd/patches/patch.16 deleted file mode 100644 index 909f0c7..0000000 --- a/usr.sbin/xntpd/patches/patch.16 +++ /dev/null @@ -1,267 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa25712; 15 Feb 94 17:54 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa18345; - 15 Feb 94 17:51 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA15109 (5.65c-6/7.3v-FAU); Tue, 15 Feb 1994 23:50:53 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA17375 (5.65c-6/7.3m-FAU); Tue, 15 Feb 1994 23:50:51 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199402152250.AA17375@faui43.informatik.uni-erlangen.de> -Subject: fixed for parse kernel stuff... -To: mills@udel.edu -Date: Tue, 15 Feb 94 23:50:47 MET -X-Mailer: ELM [version 2.3 PL11] - - -Hi, Dave ! - -Here are some fixes for the PARSE kernel modules. Basically they -fix a memory leak on an open error condition and pronounce the -Solaris 2.x stream module MT safe. - -Well, actually I should put something for you to eat here 8-). - -RCS file: /src/NTP/REPOSITORY/v3/parse/parsesolaris.c,v -retrieving revision 1.1.1.7 -diff -c -r1.1.1.7 parsesolaris.c -*** parse/parsesolaris.c:1.1.1.7 1994/02/12 09:53:42 ---- parse/parsesolaris.c 1994/02/15 22:20:51 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/parse/parsesolaris.c,v 3.12 1994/02/02 17:45:35 kardel Exp - * -! * parsesolaris.c,v 3.12 1994/02/02 17:45:35 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS5.x - not fully tested - buyer beware ! - OS KILLERS may still be ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/parsesolaris.c,v 3.15 1994/02/15 22:20:51 kardel Exp - * -! * parsesolaris.c,v 3.15 1994/02/15 22:20:51 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS5.x - not fully tested - buyer beware ! - OS KILLERS may still be -*************** -*** 19,25 **** - */ - - #ifndef lint -! static char rcsid[] = "parsesolaris.c,v 3.9 1994/01/25 19:05:26 kardel Exp"; - #endif - - /* ---- 19,25 ---- - */ - - #ifndef lint -! static char rcsid[] = "parsesolaris.c,v 3.15 1994/02/15 22:20:51 kardel Exp"; - #endif - - /* -*************** -*** 65,71 **** - { - "parse", /* module name */ - &parseinfo, /* module information */ -! D_NEW, /* not clean yet */ - /* lock ptr */ - }; - ---- 65,71 ---- - { - "parse", /* module name */ - &parseinfo, /* module information */ -! D_NEW|D_MP|D_MTQPAIR, /* exclusive for q pair */ - /* lock ptr */ - }; - -*************** -*** 139,145 **** - /*ARGSUSED*/ - int _init(void) - { -! static char revision[] = "3.12"; - char *s, *S, *t; - - /* ---- 139,145 ---- - /*ARGSUSED*/ - int _init(void) - { -! static char revision[] = "3.15"; - char *s, *S, *t; - - /* -*************** -*** 413,418 **** ---- 413,420 ---- - parse->parse_ppsclockev.tv.tv_usec = 0; - parse->parse_ppsclockev.serial = 0; - -+ qprocson(q); -+ - parseprintf(DD_OPEN,("parse: OPEN - initializing io subsystem q=%x\n", q)); - - if (!parse_ioinit(&parse->parse_io)) -*************** -*** 420,425 **** ---- 422,429 ---- - /* - * ok guys - beat it - */ -+ qprocsoff(q); -+ - kmem_free((caddr_t)parse, sizeof(parsestream_t)); - - parsebusy--; -*************** -*** 441,447 **** - */ - if (!notice) - { -! printf("%s: Copyright (c) 1991-1993, Frank Kardel\n", modlstrmod.strmod_linkinfo); - notice = 1; - } - ---- 445,451 ---- - */ - if (!notice) - { -! printf("%s: Copyright (c) 1991-1994, Frank Kardel\n", modlstrmod.strmod_linkinfo); - notice = 1; - } - -*************** -*** 449,455 **** ---- 453,464 ---- - } - else - { -+ qprocsoff(q); -+ -+ kmem_free((caddr_t)parse, sizeof(parsestream_t)); -+ - parsebusy--; -+ - return EIO; - } - } -*************** -*** 462,467 **** ---- 471,478 ---- - - parseprintf(DD_CLOSE,("parse: CLOSE\n")); - -+ qprocsoff(q); -+ - s = splhigh(); - - if (parse->parse_dqueue) -*************** -*** 1178,1184 **** - /* - * History: - * -! * parsesolaris.c,v - * Revision 3.12 1994/02/02 17:45:35 kardel - * rcs ids fixed - * ---- 1189,1204 ---- - /* - * History: - * -! * parsesolaris.c,v -! * Revision 3.15 1994/02/15 22:20:51 kardel -! * rcsid fixed -! * -! * Revision 3.14 1994/02/15 22:06:04 kardel -! * added qprocsx & flags for MT capability -! * -! * Revision 3.13 1994/02/13 19:16:47 kardel -! * updated verbose Copyright message -! * - * Revision 3.12 1994/02/02 17:45:35 kardel - * rcs ids fixed - * -RCS file: /src/NTP/REPOSITORY/v3/parse/parsestreams.c,v -retrieving revision 1.1.1.8 -diff -c -r1.1.1.8 parsestreams.c -*** parse/parsestreams.c:1.1.1.8 1994/02/12 09:53:45 ---- parse/parsestreams.c 1994/02/15 22:39:50 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/parse/parsestreams.c,v 3.14 1994/02/02 17:45:38 kardel Exp - * -! * parsestreams.c,v 3.14 1994/02/02 17:45:38 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS4.x) ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/parsestreams.c,v 3.16 1994/02/15 22:39:50 kardel Exp - * -! * parsestreams.c,v 3.16 1994/02/15 22:39:50 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS4.x) -*************** -*** 527,533 **** - */ - if (!notice) - { -! printf("%s: Copyright (c) 1991-1993, Frank Kardel\n", parsesync_vd.Drv_name); - notice = 1; - } - ---- 527,533 ---- - */ - if (!notice) - { -! printf("%s: Copyright (c) 1991-1994, Frank Kardel\n", parsesync_vd.Drv_name); - notice = 1; - } - -*************** -*** 535,540 **** ---- 535,542 ---- - } - else - { -+ kmem_free((caddr_t)parse, sizeof(parsestream_t)); -+ - #ifdef VDDRV - parsebusy--; - #endif -*************** -*** 1257,1263 **** - /* - * History: - * -! * parsestreams.c,v - * Revision 3.14 1994/02/02 17:45:38 kardel - * rcs ids fixed - * ---- 1259,1271 ---- - /* - * History: - * -! * parsestreams.c,v -! * Revision 3.16 1994/02/15 22:39:50 kardel -! * memory leak on open failure closed -! * -! * Revision 3.15 1994/02/13 19:16:50 kardel -! * updated verbose Copyright message -! * - * Revision 3.14 1994/02/02 17:45:38 kardel - * rcs ids fixed - * - --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.17 b/usr.sbin/xntpd/patches/patch.17 deleted file mode 100644 index f98f754..0000000 --- a/usr.sbin/xntpd/patches/patch.17 +++ /dev/null @@ -1,50 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa00480; 16 Feb 94 12:17 EST -Received: from quack.kfu.com by louie.udel.edu id aa24950; 16 Feb 94 12:12 EST -Received: by quack.kfu.com id AA03532 - (5.65c8/IDA-1.4.4 for mills@udel.edu); Wed, 16 Feb 1994 09:12:04 -0800 -Date: Wed, 16 Feb 1994 09:12:04 -0800 -From: Nick Sayer <nsayer@quack.kfu.com> -Message-Id: <199402161712.AA03532@quack.kfu.com> -To: mills@udel.edu -Subject: CHU debug patch - -I don't know what you think about this, but I thought I'd pass it -along. I'm sorry I don't have a proper 'patch' format patch, but -it should be aparent from the context where this goes in refclock_chu.c: - - return; - } - - /* - * Get the clock this applies to and a pointer to the data - */ - chu = (struct chuunit *)rbufp->recv_srcclock; - chuc = (struct chucode *)&rbufp->recv_space; - chu->responses++; - chu->lastupdate = current_time; - - /* - * Just for fun, we can debug the whole frame if - * we want. - */ - -#ifndef NO_CHU_DEBUG - syslog(LOG_DEBUG,"CHU %s packet:",(chuc->chutype==CHU_YEAR)? - "year":"time"); - for (i=0;i<NCHUCHARS;i++) - { - char c[64]; - - sprintf(c,"%c%c %s",hexstring[chuc->codechars[i]&0xf], - hexstring[chuc->codechars[i]>>4], - ctime(&(chuc->codetimes[i].tv_sec))); - c[strlen(c)-1]=0; /* ctime() adds a damn \n */ - syslog(LOG_DEBUG,"%s .%06d",c,chuc->codetimes[i].tv_usec); - } -#endif - - /* - * At this point we're assured that both halves of the - * data match because of what the kernel has done. - diff --git a/usr.sbin/xntpd/patches/patch.18 b/usr.sbin/xntpd/patches/patch.18 deleted file mode 100644 index e81eb62..0000000 --- a/usr.sbin/xntpd/patches/patch.18 +++ /dev/null @@ -1,99 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa00679; 16 Feb 94 13:00 EST -Received: from spatula.csv.warwick.ac.uk by louie.udel.edu id aa26092; - 16 Feb 94 12:48 EST -Date: Wed, 16 Feb 1994 17:47:50 GMT -From: Ian Dickinson <cudep@csv.warwick.ac.uk> -Message-Id: <7051.199402161747@spatula.csv.warwick.ac.uk> -Received: from localhost by spatula.csv.warwick.ac.uk - id RAA07051; Wed, 16 Feb 1994 17:47:50 GMT -In-Reply-To: Mills@udel.edu - "Re: xntp sunos5 config" (Feb 16, 10:50am) -X-Mailer: Mail User's Shell (7.2.4 2/2/92) -To: Mills@udel.edu -Subject: Re: xntp sunos5 config -MIME-Version: 1.0 -Content-Type: text/plain; charset=US-ASCII - -On Feb 16, 10:50am, Mills@udel.edu wrote: -} Subject: Re: xntp sunos5 config - -BTW, 3.3f seems to work fine on an SC2000 sunos5.3 (including the patch below) - -> Your message did not say in which file sunos5.1 or sunos5.2 or both -> you wanted the -DLOCK_PROCESS. I'll wait for your patches. - -I've never done any heavy work on a sunos5.1 machine, so I can't remember if -plock() exists there. I *think* sunso5.2 will work with it. -Perhaps it's time to create a sunos5.3 file which has -DLOCK_PROCESS and is -otherwise identical to sunos5.2, though this is getting silly for supposedly -a single SVR4-based operating system. - -As far as I'm aware, the choice between plock() and mlockall() can be done -with feature testing and doesn't need a seperate #define. - -This patch applies to 3.3b and 3.3f (with line fuzz). -I'm certainly not sure this is the best way to do this, but it does work here. -Perhaps it's worth asking around how widely this works in sunos5.x - -*** 1.1 1994/02/01 17:16:13 ---- xntpd/ntpd.c 1994/02/16 16:32:47 -*************** -*** 28,35 **** ---- 28,39 ---- - #include "ntp_stdlib.h" - - #ifdef LOCK_PROCESS -+ #ifdef SYS_SOLARIS -+ #include <sys/mman.h> -+ #else - #include <sys/lock.h> - #endif -+ #endif - - /* - * Signals we catch for debugging. If not debugging we ignore them. -*************** -*** 218,229 **** - if (rtprio(0, 120) < 0) - syslog(LOG_ERR, "rtprio() error: %m"); - #else -! #if defined(PROCLOCK) && defined(LOCK_PROCESS) - /* - * lock the process into memory - */ - if (plock(PROCLOCK) < 0) - syslog(LOG_ERR, "plock(): %m"); - #endif - #if defined(NTPD_PRIO) && NTPD_PRIO != 0 - /* ---- 222,243 ---- - if (rtprio(0, 120) < 0) - syslog(LOG_ERR, "rtprio() error: %m"); - #else -! #if defined(LOCK_PROCESS) -! #if defined(MCL_CURRENT) && defined(MCL_FUTURE) -! /* -! * lock the process into memory -! */ -! if (mlockall(MCL_CURRENT|MCL_FUTURE) < 0) -! syslog(LOG_ERR, "mlockall(): %m"); -! #else -! #if defined(PROCLOCK) - /* - * lock the process into memory - */ - if (plock(PROCLOCK) < 0) - syslog(LOG_ERR, "plock(): %m"); -+ #endif -+ #endif - #endif - #if defined(NTPD_PRIO) && NTPD_PRIO != 0 - /* - - - -Cheers, --- -Ian - diff --git a/usr.sbin/xntpd/patches/patch.19 b/usr.sbin/xntpd/patches/patch.19 deleted file mode 100644 index 396f16f..0000000 --- a/usr.sbin/xntpd/patches/patch.19 +++ /dev/null @@ -1,599 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa08047; 17 Feb 94 15:26 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa17403; - 17 Feb 94 15:15 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA04056 (5.65c-6/7.3v-FAU); Thu, 17 Feb 1994 21:14:43 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA29721 (5.65c-6/7.3m-FAU); Thu, 17 Feb 1994 21:14:39 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199402172014.AA29721@faui43.informatik.uni-erlangen.de> -Subject: Re: Beep, beep, beep -To: Mills@udel.edu -Date: Thu, 17 Feb 94 21:14:33 MET -Cc: Frank.Kardel@informatik.uni-erlangen.de, - Paul_Vixie@corpmis.sjc.hw.sony.com, Piete.Brooks@cl.cam.ac.uk -In-Reply-To: <9402171155.aa07032@huey.udel.edu>; from "Mills@udel.edu" at Feb 17, 94 11:55 am -X-Mailer: ELM [version 2.3 PL11] - - -> Guys, - -> Trouble with HAVE_BSD_TTYS on a VAX - -> ### creating NTP library -> cc -O -DDES -DXNTP_LITTLE_ENDIAN -DSYS_VAX -DDEBUG -DREFCLOCK -I../include -c atoint.c -> "../include/ntp_machine.h", line 570: syntax error -Yupp, nit TTY define set. - -> "atoint.c", line 12: redeclaration of ival -> "atoint.c", line 13: syntax error -> ... - -Well, I guess the trouble is more that none of the tty defines was -defined. For the sake of completeness i have added the tty defines to -(hopefully) all machine/* files. Some configurations were unknown to -me so I assumed HAVE_BSD_TTYS. Would be nice if someone could run -the whole suite 8-). -I have put the tty defines into the machine files so that the -refconf scripts can pick up the define without having to run the -preprocessor to dig out the configuration. -Hope this works. - -diff -c include/ntp_machine.h:1.1.1.13 include/ntp_machine.h:1.30 -*** include/ntp_machine.h:1.1.1.13 Thu Feb 17 20:17:59 1994 ---- include/ntp_machine.h Thu Feb 17 20:17:59 1994 -*************** -*** 44,54 **** - WHICH TERMINAL MODEL TO USE - I would assume HAVE_TERMIOS if - NTP_POSIX_SOURCE was set but can't. The - posix tty driver is too restrictive on most systems. -! It defined if you define STREAMS. - - HAVE_SYSV_TTYS - Use SYSV termio.h - HAVE_BSD_TTYS - Use BSD stty.h -- HAVE_TERMIOS - Use POSIX termios.h - - THIS MAKES PORTS TO NEW SYSTEMS EASY - You only have to wory about - kernel mucking. ---- 44,59 ---- - WHICH TERMINAL MODEL TO USE - I would assume HAVE_TERMIOS if - NTP_POSIX_SOURCE was set but can't. The - posix tty driver is too restrictive on most systems. -! It is defined if you define STREAMS. - -+ We do not put these defines in the ntp_machine.h as some systems -+ offer multiple interfaces and refclock configuration likes to -+ peek into the configuration defines for tty model restrictions. -+ Thus all tty definitions should be in the files in the machines directory. -+ -+ HAVE_TERMIOS - Use POSIX termios.h - HAVE_SYSV_TTYS - Use SYSV termio.h - HAVE_BSD_TTYS - Use BSD stty.h - - THIS MAKES PORTS TO NEW SYSTEMS EASY - You only have to wory about - kernel mucking. -*************** -*** 296,302 **** - #define FORCE_NTPDATE_STEP - #define RETSIGTYPE void - #define HAVE_ATT_SETPGRP -- #define HAVE_BSD_TTYS - #define LOG_NTP LOG_LOCAL1 - #define HAVE_SIGNALED_IO - #define NTP_NEED_BOPS ---- 301,306 ---- -*************** -*** 352,359 **** - #ifndef STR_SYSTEM - #define STR_SYSTEM "UNIX/BSDI" - #endif -- #define HAVE_BSD_TTYS -- #define HAVE_TERMIOS - #endif - - /* ---- 356,361 ---- -*************** -*** 441,449 **** - */ - #if defined(SYS_PTX) - #define NO_SIGNED_CHAR_DECL -- #ifndef HAVE_SYSV_TTYS -- #define HAVE_SYSV_TTYS -- #endif - #define STREAMS_TLI - #define HAVE_ATT_SETPGRP - #define HAVE_SIGNALED_IO ---- 443,448 ---- -*************** -*** 528,534 **** - #define HAVE_BSD_NICE - #define NOKMEM - #define HAVE_SIGNALED_IO -- #define HAVE_BSD_TTYS - #define NTP_SYSCALLS_STD - #define USE_PROTOTYPES - #define UDP_WILDCARD_DELIVERY ---- 527,532 ---- -*************** -*** 565,570 **** ---- 563,582 ---- - && !defined(HAVE_NO_NICE) - ERROR You_must_define_one_of_the_HAVE_xx_NICE_defines - #endif -+ -+ /* -+ * use only one tty model - no use in initialising -+ * a tty in three ways -+ * HAVE_TERMIOS is preferred over HAVE_SYSV_TTYS over HAVE_BSD_TTYS -+ */ -+ #ifdef HAVE_TERMIOS -+ #undef HAVE_BSD_TTYS -+ #undef HAVE_SYSV_TTYS -+ #endif -+ -+ #ifdef HAVE_SYSV_TTYS -+ #undef HAVE_BSD_TTYS -+ #endif - - #if !defined(HAVE_SYSV_TTYS) \ - && !defined(HAVE_BSD_TTYS) \ -diff -c machines/aux2:1.1.1.2 machines/aux2:1.4 -*** machines/aux2:1.1.1.2 Thu Feb 17 20:19:50 1994 ---- machines/aux2 Thu Feb 17 20:19:50 1994 -*************** -*** 1,6 **** - RANLIB= true # ar does the work of ranlib under System V - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_AUX2 - AUTHDEFS= -DDES -DMD5 -DFASTMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,6 ---- - RANLIB= true # ar does the work of ranlib under System V - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_AUX2 -DHAVE_BSD_TTYS - AUTHDEFS= -DDES -DMD5 -DFASTMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -diff -c machines/aux3:1.1.1.2 machines/aux3:1.4 -*** machines/aux3:1.1.1.2 Thu Feb 17 20:19:52 1994 ---- machines/aux3 Thu Feb 17 20:19:52 1994 -*************** -*** 1,6 **** - RANLIB= true # ar does the work of ranlib under System V - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_AUX3 - AUTHDEFS= -DDES -DMD5 -DFASTMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,6 ---- - RANLIB= true # ar does the work of ranlib under System V - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_AUX3 -DHAVE_BSD_TTYS - AUTHDEFS= -DDES -DMD5 -DFASTMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -diff -c machines/bsdi:1.1.1.4 machines/bsdi:1.6 -*** machines/bsdi:1.1.1.4 Thu Feb 17 20:19:53 1994 ---- machines/bsdi Thu Feb 17 20:19:53 1994 -*************** -*** 1,6 **** - RANLIB= ranlib - DEFS_LOCAL=-DREFCLOCK -! DEFS= -DSYS_BSDI - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -lkvm ---- 1,6 ---- - RANLIB= ranlib - DEFS_LOCAL=-DREFCLOCK -! DEFS= -DSYS_BSDI -DHAVE_TERMIOS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -lkvm -diff -c machines/convexos10:1.1.1.2 machines/convexos10:1.3 -*** machines/convexos10:1.1.1.2 Thu Feb 17 20:19:54 1994 ---- machines/convexos10 Thu Feb 17 20:19:54 1994 -*************** -*** 1,6 **** - RANLIB= ranlib - DEFS_LOCAL=-DREFCLOCK -! DEFS= -DSYS_CONVEXOS10 - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - RESLIB= ---- 1,6 ---- - RANLIB= ranlib - DEFS_LOCAL=-DREFCLOCK -! DEFS= -DSYS_CONVEXOS10 -DHAVE_BSD_TTYS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - RESLIB= -diff -c machines/convexos9:1.1.1.2 machines/convexos9:1.3 -*** machines/convexos9:1.1.1.2 Thu Feb 17 20:19:55 1994 ---- machines/convexos9 Thu Feb 17 20:19:56 1994 -*************** -*** 1,6 **** - RANLIB= ranlib - DEFS_LOCAL=-DREFCLOCK -! DEFS= -DSYS_CONVEXOS9 - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - RESLIB= ---- 1,6 ---- - RANLIB= ranlib - DEFS_LOCAL=-DREFCLOCK -! DEFS= -DSYS_CONVEXOS9 -DHAVE_BSD_TTYS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - RESLIB= -diff -c machines/decosf1:1.1.1.2 machines/decosf1:1.4 -*** machines/decosf1:1.1.1.2 Thu Feb 17 20:19:57 1994 ---- machines/decosf1 Thu Feb 17 20:19:57 1994 -*************** -*** 1,6 **** - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSTREAM -DSYS_DECOSF1 - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,6 ---- - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSTREAM -DSYS_DECOSF1 -DHAVE_TERMIOS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -diff -c machines/dell.svr4:1.1.1.1 machines/dell.svr4:1.2 -*** machines/dell.svr4:1.1.1.1 Thu Feb 17 20:19:58 1994 ---- machines/dell.svr4 Thu Feb 17 20:19:58 1994 -*************** -*** 1,7 **** - SHELL= /bin/sh - RANLIB= ls # ar does the work of ranlib under System V - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_SVR4 - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,7 ---- - SHELL= /bin/sh - RANLIB= ls # ar does the work of ranlib under System V - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_SVR4 -DHAVE_TERMIOS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -diff -c machines/domainos:1.1.1.1 machines/domainos:1.2 -*** machines/domainos:1.1.1.1 Thu Feb 17 20:19:59 1994 ---- machines/domainos Thu Feb 17 20:19:59 1994 -*************** -*** 1,6 **** - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_DOMAINOS -D_INCLUDE_BSD_SOURCE -D_INCLUDE_XOPEN_SOURCE -D_INCLUDE_POSIX_SOURCE - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,6 ---- - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_DOMAINOS -D_INCLUDE_BSD_SOURCE -D_INCLUDE_XOPEN_SOURCE -D_INCLUDE_POSIX_SOURCE -DHAVE_BSD_TTYS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -diff -c machines/i386:1.1.1.2 machines/i386:1.3 -*** machines/i386:1.1.1.2 Thu Feb 17 20:20:04 1994 ---- machines/i386 Thu Feb 17 20:20:05 1994 -*************** -*** 1,6 **** - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_I386 - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,6 ---- - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_I386 -DHAVE_BSD_TTYS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -diff -c machines/i386svr4:1.1.1.3 machines/i386svr4:1.4 -*** machines/i386svr4:1.1.1.3 Thu Feb 17 20:20:05 1994 ---- machines/i386svr4 Thu Feb 17 20:20:05 1994 -*************** -*** 1,7 **** - SHELL= /bin/sh - RANLIB= ls # ar does the work of ranlib under System V - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_SVR4 -DSTREAMS_TLI - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,7 ---- - SHELL= /bin/sh - RANLIB= ls # ar does the work of ranlib under System V - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_SVR4 -DSTREAMS_TLI -DHAVE_TERMIOS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -diff -c machines/mips:1.1.1.2 machines/mips:1.3 -*** machines/mips:1.1.1.2 Thu Feb 17 20:20:10 1994 ---- machines/mips Thu Feb 17 20:20:10 1994 -*************** -*** 1,7 **** - #RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK - DEFS= -! AUTHDEFS= -DDES -DMD5 -DSYS_MIPS - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -lmld - RESLIB= ---- 1,7 ---- - #RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK - DEFS= -! AUTHDEFS= -DDES -DMD5 -DSYS_MIPS -DHAVE_BSD_TTYS - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -lmld - RESLIB= -diff -c machines/next:1.1.1.1 machines/next:1.2 -*** machines/next:1.1.1.1 Thu Feb 17 20:20:12 1994 ---- machines/next Thu Feb 17 20:20:13 1994 -*************** -*** 1,6 **** - RANLIB= ranlib -c -s - DEFS= -DSYS_NEXT -! AUTHDEFS= -DDES -DMD5 -DFAST_MD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= - RESLIB= ---- 1,6 ---- - RANLIB= ranlib -c -s - DEFS= -DSYS_NEXT -! AUTHDEFS= -DDES -DMD5 -DFAST_MD5 -DHAVE_BSD_TTYS - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= - RESLIB= -diff -c machines/sequent:1.1.1.3 machines/sequent:1.4 -*** machines/sequent:1.1.1.3 Thu Feb 17 20:20:14 1994 ---- machines/sequent Thu Feb 17 20:20:14 1994 -*************** -*** 1,6 **** - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DHAVE_READ_KMEM -DSYS_SEQUENT - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,6 ---- - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DHAVE_READ_KMEM -DSYS_SEQUENT -DHAVE_BSD_TTYS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -diff -c machines/sinix-m:1.1.1.2 machines/sinix-m:1.5 -*** machines/sinix-m:1.1.1.2 Thu Feb 17 20:20:15 1994 ---- machines/sinix-m Thu Feb 17 20:20:15 1994 -*************** -*** 1,6 **** - RANLIB= : - DEFS_LOCAL=-DREFCLOCK -! DEFS= -DSYS_SINIXM - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= ---- 1,6 ---- - RANLIB= : - DEFS_LOCAL=-DREFCLOCK -! DEFS= -DSYS_SINIXM -DHAVE_TERMIOS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -diff -c machines/sony:1.1.1.2 machines/sony:1.3 -*** machines/sony:1.1.1.2 Thu Feb 17 20:20:16 1994 ---- machines/sony Thu Feb 17 20:20:16 1994 -*************** -*** 1,6 **** - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_SONY - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -lmld ---- 1,6 ---- - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_SONY -DHAVE_TERMIOS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= -lmld -diff -c machines/svr4:1.1.1.4 machines/svr4:1.4 -*** machines/svr4:1.1.1.4 Thu Feb 17 20:20:20 1994 ---- machines/svr4 Thu Feb 17 20:20:20 1994 -*************** -*** 1,6 **** - SHELL= /bin/sh - RANLIB= ls # ar does the work of ranlib under System V -! DEFS= -DSYS_SVR4 -DSTREAMS_TLI - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= - DAEMONLIBS= -lnet -lnsl -lsocket -lelf ---- 1,6 ---- - SHELL= /bin/sh - RANLIB= ls # ar does the work of ranlib under System V -! DEFS= -DSYS_SVR4 -DSTREAMS_TLI -DHAVE_TERMIOS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= - DAEMONLIBS= -lnet -lnsl -lsocket -lelf -diff -c machines/vax:1.1.1.2 machines/vax:1.3 -*** machines/vax:1.1.1.2 Thu Feb 17 20:20:23 1994 ---- machines/vax Thu Feb 17 20:20:23 1994 -*************** -*** 1,6 **** - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_VAX - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= - RESLIB= ---- 1,6 ---- - RANLIB= ranlib - DEFS_LOCAL= -DREFCLOCK -! DEFS= -DSYS_VAX -DHAVE_BSD_TTYS - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= - RESLIB= -RCS file: /src/NTP/REPOSITORY/v3/parse/README.new_clocks,v -retrieving revision 1.1.1.2 -retrieving revision 3.3 -diff -c -r1.1.1.2 -r3.3 -*** parse/README.new_clocks:1.1.1.2 1994/02/12 09:53:48 ---- parse/README.new_clocks 1994/02/17 20:09:58 -*************** -*** 1,7 **** -! Here is an attempt to scetch out what you need to do in order to - add another clock to the parse driver: - -! Prerequsites: - - Does the system you want the clock connect to have - termio.h or termios.h ? (You need that for the parse driver) - ---- 1,7 ---- -! Here is an attempt to sketch out what you need to do in order to - add another clock to the parse driver: - -! Prerequisites: - - Does the system you want the clock connect to have - termio.h or termios.h ? (You need that for the parse driver) - -*************** -*** 32,38 **** - PARSEB_ANNOUNCE switch time zone warning (informational only) - PARSEB_POWERUP no synchronisation - clock confused (must set then) - PARSEB_NOSYNC timecode currently not confirmed (must set then) -! usually on reception error when the is still a - chance the the generated time is still ok. - - PARSEB_DST DST in effect (informational only) ---- 32,38 ---- - PARSEB_ANNOUNCE switch time zone warning (informational only) - PARSEB_POWERUP no synchronisation - clock confused (must set then) - PARSEB_NOSYNC timecode currently not confirmed (must set then) -! usually on reception error when there is still a - chance the the generated time is still ok. - - PARSEB_DST DST in effect (informational only) -*************** -*** 53,59 **** - them for examples. The basic structure is: - - struct clockformat <yourclock>_format = { -! lots of field for you to fill out (see below) - }; - - static cvt_<yourclock>() ---- 53,59 ---- - them for examples. The basic structure is: - - struct clockformat <yourclock>_format = { -! lots of fields for you to fill out (see below) - }; - - static cvt_<yourclock>() -*************** -*** 122,132 **** - file with the time code conversion. See the examples and pick a clock - closest to yours and tweak the code to match your clock. - -! In order to make your clk_*.c file usable a referenc to the clockformat - structure must be put into parse_conf.c. - -- -- - TTY setup and initialisation/configuration will be done in - xntpd/refclock_parse.c - ---- 122,130 ---- - file with the time code conversion. See the examples and pick a clock - closest to yours and tweak the code to match your clock. - -! In order to make your clk_*.c file usable a reference to the clockformat - structure must be put into parse_conf.c. - - TTY setup and initialisation/configuration will be done in - xntpd/refclock_parse.c - -*************** -*** 135,141 **** - termio*.h c_cflag macros. - - - in xntpd/refclock_parse.c fill out a new the struct clockinfo element -! (allocates a new "IP" address - see comments) - (see all the other clocks for example) - struct clockinfo - { ---- 133,139 ---- - termio*.h c_cflag macros. - - - in xntpd/refclock_parse.c fill out a new the struct clockinfo element -! (that allocates a new "IP" address - see comments) - (see all the other clocks for example) - struct clockinfo - { -*************** -*** 188,199 **** - - - Well, this is very sketchy, i know. But I hope it helps a little bit. -! The best way is to look which clock comes closet to your and tweak that - code. -! Two sorts of clocks are used with parse. Clocks that automatically sent -! thier time code (once a second) do not nee entries in the poll routines because -! they sent the data all the time. The second sort are the clocks that need a -! command sent to then in order to reply with a time code (like the Trimble - clock). - - For questions: kardel@informatik.uni-erlangen.de. Please include ---- 186,197 ---- - - - Well, this is very sketchy, i know. But I hope it helps a little bit. -! The best way is to look which clock comes closest to your and tweak that - code. -! Two sorts of clocks are used with parse. Clocks that automatically send -! their time code (once a second) do not need entries in the poll routines because -! they send the data all the time. The second sort are the clocks that need a -! command sent to them in order to reply with a time code (like the Trimble - clock). - - For questions: kardel@informatik.uni-erlangen.de. Please include -RCS file: /src/NTP/REPOSITORY/v3/parse/README.parse_clocks,v -retrieving revision 1.1.1.1 -retrieving revision 3.2 -diff -c -r1.1.1.1 -r3.2 -*** parse/README.parse_clocks:1.1.1.1 1994/01/01 00:00:00 ---- parse/README.parse_clocks 1994/02/17 20:10:02 -*************** -*** 1,4 **** -! The parse driver currently supports several clock with different - query mechanisms. In order for you to find a sample that might be - similar to a clock you might want to integrate into parse i'll sum - up the major features of the clocks (this information is distributed ---- 1,4 ---- -! The parse driver currently supports several clocks with different - query mechanisms. In order for you to find a sample that might be - similar to a clock you might want to integrate into parse i'll sum - up the major features of the clocks (this information is distributed --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.2 b/usr.sbin/xntpd/patches/patch.2 deleted file mode 100644 index 50a10235..0000000 --- a/usr.sbin/xntpd/patches/patch.2 +++ /dev/null @@ -1,129 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa12171; 26 Jan 94 17:04 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa15368; - 26 Jan 94 17:00 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA17953 (5.65c-6/7.3v-FAU); Wed, 26 Jan 1994 23:00:40 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA29710 (5.65c-6/7.3m-FAU); Wed, 26 Jan 1994 23:00:37 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199401262200.AA29710@faui43.informatik.uni-erlangen.de> -Subject: Re: Solaribum -To: Mills@udel.edu -Date: Wed, 26 Jan 94 23:00:31 MET -Cc: Frank.Kardel@informatik.uni-erlangen.de, Piete.Brooks@cl.cam.ac.uk, - Paul_Vixie@corpmis.sjc.hw.sony.com -In-Reply-To: <9401261207.aa10860@huey.udel.edu>; from "Mills@udel.edu" at Jan 26, 94 12:07 pm -X-Mailer: ELM [version 2.3 PL11] - - -Sorry, guys - i tripped over a backward compatibility -variable. Thus the second patch: - -diff -c include/ntp_control.h:3.6 include/ntp_control.h:3.7 -*** include/ntp_control.h:3.6 Wed Jan 26 22:57:52 1994 ---- include/ntp_control.h Wed Jan 26 22:57:52 1994 -*************** -*** 204,210 **** - #define CP_SENT 32 - #define CP_FILTERROR 33 - #define CP_FLASH 34 -! #define CP_VARLIST 35 - - #define CP_MAXCODE CP_VARLIST - ---- 204,211 ---- - #define CP_SENT 32 - #define CP_FILTERROR 33 - #define CP_FLASH 34 -! #define CP_DISP 35 -! #define CP_VARLIST 36 - - #define CP_MAXCODE CP_VARLIST - -diff -c xntpd/ntp_control.c:3.21 xntpd/ntp_control.c:3.22 -*** xntpd/ntp_control.c:3.21 Wed Jan 26 22:58:30 1994 ---- xntpd/ntp_control.c Wed Jan 26 22:58:31 1994 -*************** -*** 175,181 **** - { CP_SENT, RO, "sent" }, /* 32 */ - { CP_FILTERROR, RO, "filterror" }, /* 33 */ - { CP_FLASH, RO, "flash" }, /* 34 */ -! { CP_VARLIST, RO, "peer_var_list" }, /* 35 */ - { 0, EOV, "" } - }; - ---- 175,182 ---- - { CP_SENT, RO, "sent" }, /* 32 */ - { CP_FILTERROR, RO, "filterror" }, /* 33 */ - { CP_FLASH, RO, "flash" }, /* 34 */ -! { CP_DISP, PADDING,"" }, /* 35 */ -! { CP_VARLIST, RO, "peer_var_list" }, /* 36 */ - { 0, EOV, "" } - }; - -*************** -*** 1298,1303 **** ---- 1299,1307 ---- - - for (k = sys_var; !(k->flags &EOV); k++) - { -+ if (k->flags & PADDING) -+ continue; -+ - i = strlen(k->text); - if (s+i+1 >= be) - break; -*************** -*** 1309,1314 **** ---- 1313,1321 ---- - - for (k = ext_sys_var; k && !(k->flags &EOV); k++) - { -+ if (k->flags & PADDING) -+ continue; -+ - ss = k->text; - if (!ss) - continue; -*************** -*** 1484,1489 **** ---- 1491,1499 ---- - - for (k = peer_var; !(k->flags &EOV); k++) - { -+ if (k->flags & PADDING) -+ continue; -+ - i = strlen(k->text); - if (s+i+1 >= be) - break; -*************** -*** 1594,1599 **** ---- 1604,1612 ---- - - for (k = clock_var; !(k->flags &EOV); k++) - { -+ if (k->flags & PADDING) -+ continue; -+ - i = strlen(k->text); - if (s+i+1 >= be) - break; -*************** -*** 1605,1610 **** ---- 1618,1626 ---- - - for (k = clock->kv_list; k && !(k->flags &EOV); k++) - { -+ if (k->flags & PADDING) -+ continue; -+ - ss = k->text; - if (!ss) - continue; --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.20 b/usr.sbin/xntpd/patches/patch.20 deleted file mode 100644 index 3975507..0000000 --- a/usr.sbin/xntpd/patches/patch.20 +++ /dev/null @@ -1,1031 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa03713; 20 Feb 94 10:36 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa02155; - 20 Feb 94 10:26 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA03871 (5.65c-6/7.3v-FAU); Sun, 20 Feb 1994 16:26:26 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA04409 (5.65c-6/7.3m-FAU); Sun, 20 Feb 1994 16:26:24 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199402201526.AA04409@faui43.informatik.uni-erlangen.de> -Subject: 3.3g patches -To: mills@udel.edu -Date: Sun, 20 Feb 94 16:26:19 MET -X-Mailer: ELM [version 2.3 PL11] - -Hi, Dave, - -here are some more patches. They fix the following: - - nroff macros from John Line - - parse add/delete leap second (as opposed to just add second) - - some rcs ids - - linux support - - xntpd.8 leap variable documentation - -And here we go... - -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/compilers/linux.gcc,v -retrieving revision 1.2 -diff -c -r1.2 linux.gcc -*** 1.2 1993/10/10 23:10:03 ---- compilers/linux.gcc 1994/02/20 13:03:27 -*************** -*** 1,2 **** - COMPILER= gcc -DUSE_PROTOTYPES -Wall -! COPTS= -O6 -finline-functions -fomit-frame-pointer ---- 1,2 ---- - COMPILER= gcc -DUSE_PROTOTYPES -Wall -! COPTS= -O2 -finline-functions -fomit-frame-pointer -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/doc/notes.txt,v -retrieving revision 1.3 -diff -c -r1.3 notes.txt -*** 1.3 1993/08/24 21:24:55 ---- doc/notes.txt 1994/02/20 11:57:24 -*************** -*** 785,791 **** - with mode-6 messages is set the leap-second warning bits) and the ntpq - program provides generic support for the latter. The leap bits that can be - set in the leap_warning variable (up to one month ahead) and in the -! leap_indication variable have a slighly different encoding than the - usual interpretation: - - Value Action ---- 785,791 ---- - with mode-6 messages is set the leap-second warning bits) and the ntpq - program provides generic support for the latter. The leap bits that can be - set in the leap_warning variable (up to one month ahead) and in the -! leap_indication variable have a slightly different encoding than the - usual interpretation: - - Value Action -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/doc/ntpdate.8,v -retrieving revision 3.0 -diff -c -r3.0 ntpdate.8 -*** 3.0 1992/08/14 15:11:44 ---- doc/ntpdate.8 1994/02/20 11:27:53 -*************** -*** 20,32 **** - ''' - ''' Set up \*(-- to give an unbreakable dash; - ''' string Tr holds user defined translation string. -! ''' Bell System Logo is used as a dummy character. - ''' -! .tr \(bs-|\(bv\*(Tr - .ie n \{\ -! .ds -- \(bs- -! .if (\n(.H=4u)&(1m=24u) .ds -- \(bs\h'-12u'\(bs\h'-12u'-\" diablo 10 pitch -! .if (\n(.H=4u)&(1m=20u) .ds -- \(bs\h'-12u'\(bs\h'-8u'-\" diablo 12 pitch - .ds L" "" - .ds R" "" - .ds L' ' ---- 20,32 ---- - ''' - ''' Set up \*(-- to give an unbreakable dash; - ''' string Tr holds user defined translation string. -! ''' Greek uppercase omega is used as a dummy character. - ''' -! .tr \(*W-|\(bv\*(Tr - .ie n \{\ -! .ds -- \(*W- -! .if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -! .if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch - .ds L" "" - .ds R" "" - .ds L' ' -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/doc/ntpq.8,v -retrieving revision 3.3 -diff -c -r3.3 ntpq.8 -*** 3.3 1993/10/22 14:26:57 ---- doc/ntpq.8 1994/02/20 11:27:55 -*************** -*** 20,32 **** - ''' - ''' Set up \*(-- to give an unbreakable dash; - ''' string Tr holds user defined translation string. -! ''' Bell System Logo is used as a dummy character. - ''' -! .tr \(bs-|\(bv\*(Tr - .ie n \{\ -! .ds -- \(bs- -! .if (\n(.H=4u)&(1m=24u) .ds -- \(bs\h'-12u'\(bs\h'-12u'-\" diablo 10 pitch -! .if (\n(.H=4u)&(1m=20u) .ds -- \(bs\h'-12u'\(bs\h'-8u'-\" diablo 12 pitch - .ds L" "" - .ds R" "" - .ds L' ' ---- 20,32 ---- - ''' - ''' Set up \*(-- to give an unbreakable dash; - ''' string Tr holds user defined translation string. -! ''' Greek uppercase omega is used as a dummy character. - ''' -! .tr \(*W-|\(bv\*(Tr - .ie n \{\ -! .ds -- \(*W- -! .if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -! .if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch - .ds L" "" - .ds R" "" - .ds L' ' -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/doc/ntptrace.8,v -retrieving revision 1.1.1.2 -diff -c -r1.1.1.2 ntptrace.8 -*** 1.1.1.2 1993/01/26 18:55:43 ---- doc/ntptrace.8 1994/02/20 11:27:58 -*************** -*** 20,32 **** - ''' - ''' Set up \*(-- to give an unbreakable dash; - ''' string Tr holds user defined translation string. -! ''' Bell System Logo is used as a dummy character. - ''' -! .tr \(bs-|\(bv\*(Tr - .ie n \{\ -! .ds -- \(bs- -! .if (\n(.H=4u)&(1m=24u) .ds -- \(bs\h'-12u'\(bs\h'-12u'-\" diablo 10 pitch -! .if (\n(.H=4u)&(1m=20u) .ds -- \(bs\h'-12u'\(bs\h'-8u'-\" diablo 12 pitch - .ds L" "" - .ds R" "" - .ds L' ' ---- 20,32 ---- - ''' - ''' Set up \*(-- to give an unbreakable dash; - ''' string Tr holds user defined translation string. -! ''' Greek uppercase omega is used as a dummy character. - ''' -! .tr \(*W-|\(bv\*(Tr - .ie n \{\ -! .ds -- \(*W- -! .if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -! .if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch - .ds L" "" - .ds R" "" - .ds L' ' -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/doc/tickadj.8,v -retrieving revision 3.0 -diff -c -r3.0 tickadj.8 -*** 3.0 1992/08/14 15:11:53 ---- doc/tickadj.8 1994/02/20 11:28:00 -*************** -*** 20,32 **** - ''' - ''' Set up \*(-- to give an unbreakable dash; - ''' string Tr holds user defined translation string. -! ''' Bell System Logo is used as a dummy character. - ''' -! .tr \(bs-|\(bv\*(Tr - .ie n \{\ -! .ds -- \(bs- -! .if (\n(.H=4u)&(1m=24u) .ds -- \(bs\h'-12u'\(bs\h'-12u'-\" diablo 10 pitch -! .if (\n(.H=4u)&(1m=20u) .ds -- \(bs\h'-12u'\(bs\h'-8u'-\" diablo 12 pitch - .ds L" "" - .ds R" "" - .ds L' ' ---- 20,32 ---- - ''' - ''' Set up \*(-- to give an unbreakable dash; - ''' string Tr holds user defined translation string. -! ''' Greek uppercase omega is used as a dummy character. - ''' -! .tr \(*W-|\(bv\*(Tr - .ie n \{\ -! .ds -- \(*W- -! .if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -! .if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch - .ds L" "" - .ds R" "" - .ds L' ' -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/doc/xntpd.8,v -retrieving revision 3.24 -diff -c -r3.24 xntpd.8 -*** 3.24 1994/02/02 16:42:25 ---- doc/xntpd.8 1994/02/20 11:57:28 -*************** -*** 20,32 **** - ''' - ''' Set up \*(-- to give an unbreakable dash; - ''' string Tr holds user defined translation string. -! ''' Bell System Logo is used as a dummy character. - ''' -! .tr \(bs-|\(bv\*(Tr - .ie n \{\ -! .ds -- \(bs- -! .if (\n(.H=4u)&(1m=24u) .ds -- \(bs\h'-12u'\(bs\h'-12u'-\" diablo 10 pitch -! .if (\n(.H=4u)&(1m=20u) .ds -- \(bs\h'-12u'\(bs\h'-8u'-\" diablo 12 pitch - .ds L" "" - .ds R" "" - .ds L' ' ---- 20,32 ---- - ''' - ''' Set up \*(-- to give an unbreakable dash; - ''' string Tr holds user defined translation string. -! ''' Greek uppercase omega is used as a dummy character. - ''' -! .tr \(*W-|\(bv\*(Tr - .ie n \{\ -! .ds -- \(*W- -! .if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -! .if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch - .ds L" "" - .ds R" "" - .ds L' ' -*************** -*** 374,380 **** - Certain changes can be made to the - .I xntpd - server via mode 6 control messages, in particular the setting of -! leap second indications in a server with a radio clock. The - .B controlkey - statement specifies an encription key number to be used for authenticating - such messages. Omitting this statement will cause control messages ---- 374,381 ---- - Certain changes can be made to the - .I xntpd - server via mode 6 control messages, in particular the setting of -! leap second indications in a server with a radio clock. -! The - .B controlkey - statement specifies an encription key number to be used for authenticating - such messages. Omitting this statement will cause control messages -*************** -*** 1401,1406 **** ---- 1402,1432 ---- - If flag3 is set, then the sample information is dumped. - If flag4 is set, then the input data is smoothed, and all data - points are used. -+ .PP -+ .SH VARIABLES -+ Most variables used by the NTP protocol can be examined with the xntpdc -+ (mode 7 messages) and the ntpq (mode 6 messages). Currently very few variables -+ can be modified via mode 6 messages. These variables are either created with the -+ .I setvar -+ directive or the leap warning variables. The leap warning bits that can be -+ set in the -+ .B leapwarning -+ variable (up to one month ahead). Both, the -+ .B leapwarning and in the -+ .B leapindication -+ variable, have a slightly different encoding than the usual -+ .B leap -+ bits interpretation: -+ .P -+ .Ip 00 8 -+ The daemon passes the leap bits of its synchronisation source (usual mode of -+ operation). -+ .Ip 01/10 8 -+ A leap second is added/deleted (operator forced leap second). -+ .Ip 11 8 -+ Leap information from the sychronisation source is ignored (thus LEAP_NOWARNING -+ is passed on). -+ .PP - .SH FILES - .Ip /etc/ntp.conf 20 - the default name of the configuration file -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/doc/xntpdc.8,v -retrieving revision 3.4 -diff -c -r3.4 xntpdc.8 -*** 3.4 1994/02/02 15:54:14 ---- doc/xntpdc.8 1994/02/20 11:28:06 -*************** -*** 20,32 **** - ''' - ''' Set up \*(-- to give an unbreakable dash; - ''' string Tr holds user defined translation string. -! ''' Bell System Logo is used as a dummy character. - ''' -! .tr \(bs-|\(bv\*(Tr - .ie n \{\ -! .ds -- \(bs- -! .if (\n(.H=4u)&(1m=24u) .ds -- \(bs\h'-12u'\(bs\h'-12u'-\" diablo 10 pitch -! .if (\n(.H=4u)&(1m=20u) .ds -- \(bs\h'-12u'\(bs\h'-8u'-\" diablo 12 pitch - .ds L" "" - .ds R" "" - .ds L' ' ---- 20,32 ---- - ''' - ''' Set up \*(-- to give an unbreakable dash; - ''' string Tr holds user defined translation string. -! ''' Greek uppercase omega is used as a dummy character. - ''' -! .tr \(*W-|\(bv\*(Tr - .ie n \{\ -! .ds -- \(*W- -! .if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -! .if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch - .ds L" "" - .ds R" "" - .ds L' ' -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/hints/linux,v -retrieving revision 1.2 -diff -c -r1.2 linux -*** 1.2 1994/02/01 23:19:26 ---- hints/linux 1994/02/20 11:26:44 -*************** -*** 1,5 **** - -! Requirements: kernel 0.99.14y or newer, libc 4.5.8 or newer - ------------ - - With this configuration, xntp should build an run right out of the box ---- 1,5 ---- - -! Requirements: kernel 0.99.14y or newer, libc 4.5.20 or newer - ------------ - - With this configuration, xntp should build an run right out of the box -*************** -*** 7,9 **** ---- 7,14 ---- - versions of the kernel or libc, or have any other question not covered in the - READMEs / hint files (sorry, necessary comment in the Linux community ;-) feel - free to ask me (duwe@informatik.uni-erlangen.de) -+ -+ [NOTE: libc-4.5.20 is (or was ? ;-) a beta testing release, but the first -+ binary compiled under the appropriate kernel. Get this one from -+ tsx-11:.../GCC/private/dontuse , compile 4.5.19 yourself or wait for the next -+ puplic relase after 4.5.20] -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/include/parse.h,v -retrieving revision 3.14 -diff -c -r3.14 parse.h -*** 3.14 1994/01/28 14:03:35 ---- include/parse.h 1994/02/20 13:04:26 -*************** -*** 81,115 **** - /* - * state flags - */ -! #define PARSEB_ANNOUNCE 0x0001 /* switch time zone warning (DST switch) */ -! #define PARSEB_POWERUP 0x0002 /* no synchronisation */ -! #define PARSEB_NOSYNC 0x0004 /* timecode currently not confirmed */ -! #define PARSEB_DST 0x0008 /* DST in effect */ -! #define PARSEB_UTC 0x0010 /* UTC time */ -! #define PARSEB_LEAP 0x0020 /* LEAP warning (1 hour prior to occurence) */ -! #define PARSEB_ALTERNATE 0x0040 /* alternate antenna used */ -! #define PARSEB_POSITION 0x0080 /* position available */ -! #define PARSEB_LEAPSECOND 0x0100 /* actual leap second */ -! -! #define PARSEB_S_LEAP 0x0200 /* supports LEAP */ -! #define PARSEB_S_ANTENNA 0x0400 /* supports antenna information */ -! #define PARSEB_S_PPS 0x0800 /* supports PPS time stamping */ -! #define PARSEB_S_POSITION 0x1000 /* supports position information (GPS) */ - -! #define PARSEB_TIMECODE 0x2000 /* valid time code sample */ -! #define PARSEB_PPS 0x4000 /* valid PPS sample */ - - #define PARSE_TCINFO (PARSEB_ANNOUNCE|PARSEB_POWERUP|PARSEB_NOSYNC|PARSEB_DST|\ -! PARSEB_UTC|PARSEB_LEAP|PARSEB_ALTERNATE|PARSEB_S_LEAP|\ - PARSEB_S_LOCATION|PARSEB_TIMECODE) - -! #define PARSE_POWERUP(x) ((x) & PARSEB_POWERUP) -! #define PARSE_NOSYNC(x) (((x) & (PARSEB_POWERUP|PARSEB_NOSYNC)) == PARSEB_NOSYNC) -! #define PARSE_SYNC(x) (((x) & (PARSEB_POWERUP|PARSEB_NOSYNC)) == 0) -! #define PARSE_ANNOUNCE(x) ((x) & PARSEB_ANNOUNCE) -! #define PARSE_DST(x) ((x) & PARSEB_DST) - #define PARSE_UTC(x) ((x) & PARSEB_UTC) -! #define PARSE_LEAP(x) (PARSE_SYNC(x) && ((x) & PARSEB_LEAP)) - #define PARSE_ALTERNATE(x) ((x) & PARSEB_ALTERNATE) - #define PARSE_LEAPSECOND(x) (PARSE_SYNC(x) && ((x) & PARSEB_LEAP_SECOND)) - ---- 81,135 ---- - /* - * state flags - */ -! #define PARSEB_POWERUP 0x00000001 /* no synchronisation */ -! #define PARSEB_NOSYNC 0x00000002 /* timecode currently not confirmed */ - -! /* -! * time zone information -! */ -! #define PARSEB_ANNOUNCE 0x00000010 /* switch time zone warning (DST switch) */ -! #define PARSEB_DST 0x00000020 /* DST in effect */ -! #define PARSEB_UTC 0x00000040 /* UTC time */ -! -! /* -! * leap information -! */ -! #define PARSEB_LEAPDEL 0x00000100 /* LEAP deletion warning */ -! #define PARSEB_LEAPADD 0x00000200 /* LEAP addition warning */ -! #define PARSEB_LEAPS 0x00000300 /* LEAP warnings */ -! #define PARSEB_LEAPSECOND 0x00000400 /* actual leap second */ -! /* -! * optional status information -! */ -! #define PARSEB_ALTERNATE 0x00001000 /* alternate antenna used */ -! #define PARSEB_POSITION 0x00002000 /* position available */ -! -! /* -! * feature information -! */ -! #define PARSEB_S_LEAP 0x00010000 /* supports LEAP */ -! #define PARSEB_S_ANTENNA 0x00020000 /* supports antenna information */ -! #define PARSEB_S_PPS 0x00040000 /* supports PPS time stamping */ -! #define PARSEB_S_POSITION 0x00080000 /* supports position information (GPS) */ -! -! /* -! * time stamp availality -! */ -! #define PARSEB_TIMECODE 0x10000000 /* valid time code sample */ -! #define PARSEB_PPS 0x20000000 /* valid PPS sample */ - - #define PARSE_TCINFO (PARSEB_ANNOUNCE|PARSEB_POWERUP|PARSEB_NOSYNC|PARSEB_DST|\ -! PARSEB_UTC|PARSEB_LEAPS|PARSEB_ALTERNATE|PARSEB_S_LEAP|\ - PARSEB_S_LOCATION|PARSEB_TIMECODE) - -! #define PARSE_POWERUP(x) ((x) & PARSEB_POWERUP) -! #define PARSE_NOSYNC(x) (((x) & (PARSEB_POWERUP|PARSEB_NOSYNC)) == PARSEB_NOSYNC) -! #define PARSE_SYNC(x) (((x) & (PARSEB_POWERUP|PARSEB_NOSYNC)) == 0) -! #define PARSE_ANNOUNCE(x) ((x) & PARSEB_ANNOUNCE) -! #define PARSE_DST(x) ((x) & PARSEB_DST) - #define PARSE_UTC(x) ((x) & PARSEB_UTC) -! #define PARSE_LEAPADD(x) (PARSE_SYNC(x) && (((x) & PARSEB_LEAPS) == PARSEB_LEAPADD)) -! #define PARSE_LEAPDEL(x) (PARSE_SYNC(x) && (((x) & PARSEB_LEAPS) == PARSEB_LEAPDEL)) - #define PARSE_ALTERNATE(x) ((x) & PARSEB_ALTERNATE) - #define PARSE_LEAPSECOND(x) (PARSE_SYNC(x) && ((x) & PARSEB_LEAP_SECOND)) - -*************** -*** 118,126 **** - #define PARSE_S_PPS(x) ((x) & PARSEB_S_PPS) - #define PARSE_S_POSITION(x) ((x) & PARSEB_S_POSITION) - -! #define PARSE_TIMECODE(x) ((x) & PARSEB_TIMECODE) - #define PARSE_PPS(x) ((x) & PARSEB_PPS) -! #define PARSE_POSITION(x) ((x) & PARSEB_POSITION) - - /* - * operation flags - some are also fudge flags ---- 138,146 ---- - #define PARSE_S_PPS(x) ((x) & PARSEB_S_PPS) - #define PARSE_S_POSITION(x) ((x) & PARSEB_S_POSITION) - -! #define PARSE_TIMECODE(x) ((x) & PARSEB_TIMECODE) - #define PARSE_PPS(x) ((x) & PARSEB_PPS) -! #define PARSE_POSITION(x) ((x) & PARSEB_POSITION) - - /* - * operation flags - some are also fudge flags -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/parse/README.new_clocks,v -retrieving revision 3.3 -diff -c -r3.3 README.new_clocks -*** 3.3 1994/02/17 20:09:58 ---- parse/README.new_clocks 1994/02/20 13:04:34 -*************** -*** 37,43 **** - - PARSEB_DST DST in effect (informational only) - PARSEB_UTC timecode contains UTC time (informational only) -! PARSEB_LEAP LEAP warning (prior to leap happening - must set when imminent) - PARSEB_ALTERNATE backup transmitter (informational only) - PARSEB_POSITION geographic position available (informational only) - PARSEB_LEAPSECOND actual leap second (this time code is the leap ---- 37,46 ---- - - PARSEB_DST DST in effect (informational only) - PARSEB_UTC timecode contains UTC time (informational only) -! PARSEB_LEAPADD LEAP addition warning (prior to leap happening - must set when imminent) -! also used for time code that do not encode the -! direction (as this is currently the default). -! PARSEB_LEAPDEL LEAP deletion warning (prior to leap happening - must set when imminent) - PARSEB_ALTERNATE backup transmitter (informational only) - PARSEB_POSITION geographic position available (informational only) - PARSEB_LEAPSECOND actual leap second (this time code is the leap -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/parse/clk_meinberg.c,v -retrieving revision 3.13 -diff -c -r3.13 clk_meinberg.c -*** 3.13 1994/02/02 17:45:21 ---- parse/clk_meinberg.c 1994/02/20 13:04:37 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_MEINBERG) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_meinberg.c,v 3.13 1994/02/02 17:45:21 kardel Exp - * -! * clk_meinberg.c,v 3.13 1994/02/02 17:45:21 kardel Exp - * - * Meinberg clock support - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_MEINBERG) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_meinberg.c,v 3.14 1994/02/20 13:04:37 kardel Exp - * -! * clk_meinberg.c,v 3.14 1994/02/20 13:04:37 kardel Exp - * - * Meinberg clock support - * -*************** -*** 284,291 **** - clock->flags |= PARSEB_S_LEAP; - clock->flags |= PARSEB_S_ANTENNA; - - if (f[4] == 'A') -! clock->flags |= PARSEB_LEAP; - - if (f[5] == 'R') - clock->flags |= PARSEB_ALTERNATE; ---- 284,296 ---- - clock->flags |= PARSEB_S_LEAP; - clock->flags |= PARSEB_S_ANTENNA; - -+ /* -+ * DCF77 does not encode the direction - -+ * so we take the current default - -+ * earth slowing down -+ */ - if (f[4] == 'A') -! clock->flags |= PARSEB_LEAPADD; - - if (f[5] == 'R') - clock->flags |= PARSEB_ALTERNATE; -*************** -*** 394,402 **** - - /* - * oncoming leap second - */ - if (f[5] == 'A') -! clock->flags |= PARSEB_LEAP; - - /* - * this is the leap second ---- 399,410 ---- - - /* - * oncoming leap second -+ * data format does not (yet) specify whether -+ * to add or to delete a second - thus we -+ * pick the current default - */ - if (f[5] == 'A') -! clock->flags |= PARSEB_LEAPADD; - - /* - * this is the leap second -*************** -*** 413,419 **** - /* - * History: - * -! * clk_meinberg.c,v - * Revision 3.13 1994/02/02 17:45:21 kardel - * rcs ids fixed - * ---- 421,430 ---- - /* - * History: - * -! * clk_meinberg.c,v -! * Revision 3.14 1994/02/20 13:04:37 kardel -! * parse add/delete second support -! * - * Revision 3.13 1994/02/02 17:45:21 kardel - * rcs ids fixed - * -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/parse/clk_rawdcf.c,v -retrieving revision 3.11 -diff -c -r3.11 clk_rawdcf.c -*** 3.11 1994/02/02 17:45:23 ---- parse/clk_rawdcf.c 1994/02/20 13:04:39 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_RAWDCF) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_rawdcf.c,v 3.11 1994/02/02 17:45:23 kardel Exp - * -! * clk_rawdcf.c,v 3.11 1994/02/02 17:45:23 kardel Exp - * - * Raw DCF77 pulse clock support - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_RAWDCF) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_rawdcf.c,v 3.12 1994/02/20 13:04:39 kardel Exp - * -! * clk_rawdcf.c,v 3.12 1994/02/20 13:04:39 kardel Exp - * - * Raw DCF77 pulse clock support - * -*************** -*** 278,284 **** - clock->flags |= PARSEB_ANNOUNCE; - - if (ext_bf(buffer, DCF_A2, dcfparam->zerobits)) -! clock->flags |= PARSEB_LEAP; - - if (ext_bf(buffer, DCF_R, dcfparam->zerobits)) - clock->flags |= PARSEB_ALTERNATE; ---- 278,284 ---- - clock->flags |= PARSEB_ANNOUNCE; - - if (ext_bf(buffer, DCF_A2, dcfparam->zerobits)) -! clock->flags |= PARSEB_LEAPADD; /* default: DCF77 data format deficiency */ - - if (ext_bf(buffer, DCF_R, dcfparam->zerobits)) - clock->flags |= PARSEB_ALTERNATE; -*************** -*** 528,534 **** - /* - * History: - * -! * clk_rawdcf.c,v - * Revision 3.11 1994/02/02 17:45:23 kardel - * rcs ids fixed - * ---- 528,537 ---- - /* - * History: - * -! * clk_rawdcf.c,v -! * Revision 3.12 1994/02/20 13:04:39 kardel -! * parse add/delete second support -! * - * Revision 3.11 1994/02/02 17:45:23 kardel - * rcs ids fixed - * -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/parse/clk_schmid.c,v -retrieving revision 3.12 -diff -c -r3.12 clk_schmid.c -*** 3.12 1994/02/02 17:45:25 ---- parse/clk_schmid.c 1994/02/20 13:04:41 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_SCHMID) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_schmid.c,v 3.12 1994/02/02 17:45:25 kardel Exp - * -! * clk_schmid.c,v 3.12 1994/02/02 17:45:25 kardel Exp - * - * Schmid clock support - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_SCHMID) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_schmid.c,v 3.13 1994/02/20 13:04:41 kardel Exp - * -! * clk_schmid.c,v 3.13 1994/02/20 13:04:41 kardel Exp - * - * Schmid clock support - * -*************** -*** 152,158 **** - - if (buffer[8] & WS_LEAP) - { -! clock->flags |= PARSEB_LEAP; - } - } - ---- 152,158 ---- - - if (buffer[8] & WS_LEAP) - { -! clock->flags |= PARSEB_LEAPADD; /* default: DCF77 data format deficiency */ - } - } - -*************** -*** 167,173 **** - /* - * History: - * -! * clk_schmid.c,v - * Revision 3.12 1994/02/02 17:45:25 kardel - * rcs ids fixed - * ---- 167,176 ---- - /* - * History: - * -! * clk_schmid.c,v -! * Revision 3.13 1994/02/20 13:04:41 kardel -! * parse add/delete second support -! * - * Revision 3.12 1994/02/02 17:45:25 kardel - * rcs ids fixed - * -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v -retrieving revision 3.47 -diff -c -r3.47 refclock_parse.c -*** 3.47 1994/02/02 17:44:30 ---- xntpd/refclock_parse.c 1994/02/20 13:26:00 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v 3.47 1994/02/02 17:44:30 kardel Exp - * -! * refclock_parse.c,v 3.47 1994/02/02 17:44:30 kardel Exp - * - * generic reference clock driver for receivers - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v 3.49 1994/02/20 13:26:00 kardel Exp - * -! * refclock_parse.c,v 3.49 1994/02/20 13:26:00 kardel Exp - * - * generic reference clock driver for receivers - * -*************** -*** 129,135 **** - #include "parse.h" - - #if !defined(NO_SCCSID) && !defined(lint) && !defined(__GNUC__) -! static char rcsid[]="refclock_parse.c,v 3.45 1994/01/25 19:06:27 kardel Exp"; - #endif - - /**=========================================================================== ---- 129,135 ---- - #include "parse.h" - - #if !defined(NO_SCCSID) && !defined(lint) && !defined(__GNUC__) -! static char rcsid[]="refclock_parse.c,v 3.49 1994/02/20 13:26:00 kardel Exp"; - #endif - - /**=========================================================================== -*************** -*** 1706,1712 **** - { PARSEB_NOSYNC, "TIME CODE NOT CONFIRMED" }, - { PARSEB_DST, "DST" }, - { PARSEB_UTC, "UTC DISPLAY" }, -! { PARSEB_LEAP, "LEAP WARNING" }, - { PARSEB_LEAPSECOND, "LEAP SECOND" }, - { PARSEB_ALTERNATE,"ALTERNATE ANTENNA" }, - { PARSEB_TIMECODE, "TIME CODE" }, ---- 1706,1713 ---- - { PARSEB_NOSYNC, "TIME CODE NOT CONFIRMED" }, - { PARSEB_DST, "DST" }, - { PARSEB_UTC, "UTC DISPLAY" }, -! { PARSEB_LEAPADD, "LEAP ADD WARNING" }, -! { PARSEB_LEAPDEL, "LEAP DELETE WARNING" }, - { PARSEB_LEAPSECOND, "LEAP SECOND" }, - { PARSEB_ALTERNATE,"ALTERNATE ANTENNA" }, - { PARSEB_TIMECODE, "TIME CODE" }, -*************** -*** 2539,2547 **** - parse_leap() - { - /* -- * PARSE does encode a leap warning... we are aware but not afraid of that -- * as long as we get a little help for the direction from the operator until - * PARSE encodes the LEAP correction direction. - */ - } - ---- 2540,2549 ---- - parse_leap() - { - /* - * PARSE encodes the LEAP correction direction. -+ * For timecodes that do not pass on the leap correction direction -+ * the default PARSEB_LEAPADD must be used. It may then be modified -+ * with a fudge flag (flag2). - */ - } - -*************** -*** 2821,2827 **** - sprintf(tt, "refclock_iomode=\"%s\"", parse->binding->bd_description); - - tt = add_var(&out->kv_list, 128, RO); -! sprintf(tt, "refclock_driver_version=\"refclock_parse.c,v 3.45 1994/01/25 19:06:27 kardel Exp\""); - - out->lencode = strlen(outstatus); - out->lastcode = outstatus; ---- 2823,2829 ---- - sprintf(tt, "refclock_iomode=\"%s\"", parse->binding->bd_description); - - tt = add_var(&out->kv_list, 128, RO); -! sprintf(tt, "refclock_driver_version=\"refclock_parse.c,v 3.49 1994/02/20 13:26:00 kardel Exp\""); - - out->lencode = strlen(outstatus); - out->lastcode = outstatus; -*************** -*** 3245,3258 **** - } - else - { -! if (PARSE_LEAP(parsetime->parse_state)) - { - leap = (parse->flags & PARSE_LEAP_DELETE) ? LEAP_DELSECOND : LEAP_ADDSECOND; - } - else -! { -! leap = LEAP_NOWARNING; -! } - } - - refclock_receive(parse->peer, &off, 0, LFPTOFP(&dispersion), &reftime, &rectime, leap); ---- 3247,3270 ---- - } - else - { -! if (PARSE_LEAPADD(parsetime->parse_state)) - { -+ /* -+ * we pick this state also for time code that pass leap warnings -+ * without direction information (as earth is currently slowing -+ * down). -+ */ - leap = (parse->flags & PARSE_LEAP_DELETE) ? LEAP_DELSECOND : LEAP_ADDSECOND; - } - else -! if (PARSE_LEAPDEL(parsetime->parse_state)) -! { -! leap = LEAP_DELSECOND; -! } -! else -! { -! leap = LEAP_NOWARNING; -! } - } - - refclock_receive(parse->peer, &off, 0, LFPTOFP(&dispersion), &reftime, &rectime, leap); -*************** -*** 3395,3401 **** - /* - * History: - * -! * refclock_parse.c,v - * Revision 3.47 1994/02/02 17:44:30 kardel - * rcs ids fixed - * ---- 3407,3419 ---- - /* - * History: - * -! * refclock_parse.c,v -! * Revision 3.49 1994/02/20 13:26:00 kardel -! * rcs id cleanup -! * -! * Revision 3.48 1994/02/20 13:04:56 kardel -! * parse add/delete second support -! * - * Revision 3.47 1994/02/02 17:44:30 kardel - * rcs ids fixed - * -*** parse/util/parsetest.c Sun Feb 20 15:54:11 1994 ---- parse/util/parsetest.c Sun Feb 20 14:04:46 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/kernel/parsetest.c,v 3.4 1993/03/17 17:16:57 kardel Exp - * -! * parsetest.c,v 3.10 1994/01/23 17:22:18 kardel Exp - * - * Copyright (c) 1989,1990,1991,1992,1993,1994 - * Frank Kardel Friedrich-Alexander Universitaet Erlangen-Nuernberg ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/util/parsetest.c,v 3.13 1994/02/20 13:04:46 kardel Exp - * -! * parsetest.c,v 3.13 1994/02/20 13:04:46 kardel Exp - * - * Copyright (c) 1989,1990,1991,1992,1993,1994 - * Frank Kardel Friedrich-Alexander Universitaet Erlangen-Nuernberg -*************** -*** 10,26 **** - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * -! * parsetest.c,v -! * Revision 3.4 1993/03/17 17:16:57 kardel -! * DEC OSF/1 ALPHA Integration - 930314 - * -! * Revision 3.3 1993/01/18 09:24:33 kardel -! * updated copyright conditions in conjunction with -! * conditions set up in the COPYRIGHT file - * -- * Revision 3.2 1993/01/17 13:43:00 kardel -- * 1993 initial update -- * - */ - - #ifndef STREAM ---- 10,22 ---- - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * -! * parsetest.c,v -! * Revision 3.13 1994/02/20 13:04:46 kardel -! * parse add/delete second support - * -! * Revision 3.12 1994/02/02 17:45:51 kardel -! * rcs ids fixed - * - */ - - #ifndef STREAM -*************** -*** 199,205 **** - parsetime_t parsetime; - struct strioctl strioc; - -! printf("parsetest.c,v 3.10 1994/01/23 17:22:18 kardel Exp\n"); - - while (ioctl(fd, I_POP, 0) == 0) - ; ---- 195,201 ---- - parsetime_t parsetime; - struct strioctl strioc; - -! printf("parsetest.c,v 3.13 1994/02/20 13:04:46 kardel Exp\n"); - - while (ioctl(fd, I_POP, 0) == 0) - ; -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/parse/parsestreams.c,v -retrieving revision 3.16 -diff -c -r3.16 parsestreams.c -*** 3.16 1994/02/15 22:39:50 ---- parse/parsestreams.c 1994/02/20 15:18:02 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/parse/parsestreams.c,v 3.16 1994/02/15 22:39:50 kardel Exp - * -! * parsestreams.c,v 3.16 1994/02/15 22:39:50 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS4.x) ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/parsestreams.c,v 3.17 1994/02/20 15:18:02 kardel Exp - * -! * parsestreams.c,v 3.17 1994/02/20 15:18:02 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS4.x) -*************** -*** 16,22 **** - */ - - #ifndef lint -! static char rcsid[] = "parsestreams.c,v 3.12 1994/01/25 19:05:30 kardel Exp"; - #endif - - #include "sys/types.h" ---- 16,22 ---- - */ - - #ifndef lint -! static char rcsid[] = "parsestreams.c,v 3.17 1994/02/20 15:18:02 kardel Exp"; - #endif - - #include "sys/types.h" -*************** -*** 195,201 **** - } - else - { -! static char revision[] = "3.12"; - char *s, *S, *t; - - strncpy(ifm->f_name, mname, FMNAMESZ); ---- 195,201 ---- - } - else - { -! static char revision[] = "3.17"; - char *s, *S, *t; - - strncpy(ifm->f_name, mname, FMNAMESZ); -*************** -*** 1259,1265 **** - /* - * History: - * -! * parsestreams.c,v - * Revision 3.16 1994/02/15 22:39:50 kardel - * memory leak on open failure closed - * ---- 1259,1268 ---- - /* - * History: - * -! * parsestreams.c,v -! * Revision 3.17 1994/02/20 15:18:02 kardel -! * rcs id cleanup -! * - * Revision 3.16 1994/02/15 22:39:50 kardel - * memory leak on open failure closed - * --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.21 b/usr.sbin/xntpd/patches/patch.21 deleted file mode 100644 index 9299971..0000000 --- a/usr.sbin/xntpd/patches/patch.21 +++ /dev/null @@ -1,54 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa25363; 23 Feb 94 18:50 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa28210; - 23 Feb 94 18:44 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA07903 (5.65c-6/7.3v-FAU); Thu, 24 Feb 1994 00:44:18 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA19013 (5.65c-6/7.3m-FAU); Thu, 24 Feb 1994 00:44:17 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199402232344.AA19013@faui43.informatik.uni-erlangen.de> -Subject: TRAK clock -To: mills@udel.edu -Date: Thu, 24 Feb 94 0:44:12 MET -X-Mailer: ELM [version 2.3 PL11] - -Hi, Dave - some obvious things about the TRAK clock: - - please removed the 4 ^A at the end of the - xntpd/reflock_trak.c file (email leftovers). - - add following refclocks/rclk.TRAK file - -#!/bin/sh - -CMD="$1" -shift; - -. refclocks/setup - -case "$CMD" in - info) - echo " TRAK - TRAK 8810 GPS station clock" - ;; - check) - if check "$RCONFIG" '$0 ~ /TRAK/'; then - echo "TRAK - TRAK 8810 GPS station clock" - fi - ;; - config) - if check "$REFCONF" '$0 ~ /TRAK/' || - ( [ ! "$REFCONF" ] && query "Include TRAK 8810 GPS station clock (TRAK)" n); then - if check "$PPSFEATURES" '$0 ~ /CD/' && - [ "$PPSOK" -eq 1 ] && - (check "$REFCONF" '$0 ~ /TRAKPPS/' || - ( [ ! "$REFCONF" ] && query " Use TRAK for PPS" n)); then - echo "-DTRAKPPS" >> $RCONFIG - else - echo "-DTRAK" >> $RCONFIG - fi - fi - ;; -esac --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.22 b/usr.sbin/xntpd/patches/patch.22 deleted file mode 100644 index 8b4296c..0000000 --- a/usr.sbin/xntpd/patches/patch.22 +++ /dev/null @@ -1,296 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa02110; 24 Feb 94 18:54 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa13897; - 24 Feb 94 18:53 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA27796 (5.65c-6/7.3v-FAU); Fri, 25 Feb 1994 00:53:32 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA16114 (5.65c-6/7.3m-FAU); Fri, 25 Feb 1994 00:53:31 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199402242353.AA16114@faui43.informatik.uni-erlangen.de> -Subject: patches (parse pps/pll control) -To: mills@udel.edu -Date: Fri, 25 Feb 94 0:52:59 MET -X-Mailer: ELM [version 2.3 PL11] - -Hi, here are some patches. - -pps pll control is nor supported by parse. -pps output variable are readable via mode 6 messages. - -diff -c v3/parse/parsestreams.c:1.1.1.10 v3/parse/parsestreams.c:3.19 -*** v3/parse/parsestreams.c:1.1.1.10 Fri Feb 25 00:44:41 1994 ---- v3/parse/parsestreams.c Fri Feb 25 00:44:41 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/parse/parsestreams.c,v 3.17 1994/02/20 15:18:02 kardel Exp - * -! * parsestreams.c,v 3.17 1994/02/20 15:18:02 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS4.x) ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/parsestreams.c,v 3.19 1994/02/24 16:33:54 kardel Exp - * -! * parsestreams.c,v 3.19 1994/02/24 16:33:54 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS4.x) -*************** -*** 16,22 **** - */ - - #ifndef lint -! static char rcsid[] = "parsestreams.c,v 3.17 1994/02/20 15:18:02 kardel Exp"; - #endif - - #include "sys/types.h" ---- 16,22 ---- - */ - - #ifndef lint -! static char rcsid[] = "parsestreams.c,v 3.19 1994/02/24 16:33:54 kardel Exp"; - #endif - - #include "sys/types.h" -*************** -*** 195,201 **** - } - else - { -! static char revision[] = "3.17"; - char *s, *S, *t; - - strncpy(ifm->f_name, mname, FMNAMESZ); ---- 195,201 ---- - } - else - { -! static char revision[] = "3.19"; - char *s, *S, *t; - - strncpy(ifm->f_name, mname, FMNAMESZ); -*************** -*** 1076,1081 **** ---- 1076,1086 ---- - - #define MAXDEPTH 50 /* maximum allowed stream crawl */ - -+ #ifdef PPS_SYNC -+ extern hardpps(); -+ extern struct timeval time; -+ #endif -+ - /* - * take external status interrupt (only CD interests us) - */ -*************** -*** 1087,1101 **** - register queue_t *q; - register unsigned char zsstatus; - register int loopcheck; -- register unsigned char cdstate; - register char *dname; - - /* - * pick up current state - */ - zsstatus = zsaddr->zscc_control; - -! if (za->za_rr0 ^ (cdstate = zsstatus & ZSRR0_CD)) - { - timestamp_t cdevent; - register int status; ---- 1092,1109 ---- - register queue_t *q; - register unsigned char zsstatus; - register int loopcheck; - register char *dname; -+ #ifdef PPS_SYNC -+ register int s; -+ register long usec; -+ #endif - - /* - * pick up current state - */ - zsstatus = zsaddr->zscc_control; - -! if ((za->za_rr0 ^ zsstatus) & (ZSRR0_CD|ZSRR0_SYNC)) - { - timestamp_t cdevent; - register int status; -*************** -*** 1103,1129 **** - /* - * CONDITIONAL external measurement support - */ -! SET_LED(cdstate); /* - * inconsistent with upper SET_LED, but this - * is for oscilloscope business anyway and we - * are just interested in edge delays in the - * lower us range - */ -! - /* - * time stamp - */ - uniqtime(&cdevent.tv); -! -! TIMEVAL_USADD(&cdevent.tv, xsdelay); -! -! q = za->za_ttycommon.t_readq; - - /* - * logical state - */ -! status = cd_invert ? cdstate == 0 : cdstate != 0; - - /* - * ok - now the hard part - find ourself - */ ---- 1111,1155 ---- - /* - * CONDITIONAL external measurement support - */ -! SET_LED(zsstatus & (ZSRR0_CD|ZSRR0_SYNC)); /* - * inconsistent with upper SET_LED, but this - * is for oscilloscope business anyway and we - * are just interested in edge delays in the - * lower us range - */ -! #ifdef PPS_SYNC -! s = splclock(); -! usec = time.tv_usec; -! #endif - /* - * time stamp - */ - uniqtime(&cdevent.tv); -! -! #ifdef PPS_SYNC -! splx(s); -! #endif - - /* - * logical state - */ -! status = cd_invert ? (zsstatus & (ZSRR0_CD|ZSRR0_SYNC)) == 0 : (zsstatus & (ZSRR0_CD|ZSRR0_SYNC)) != 0; - -+ #ifdef PPS_SYNC -+ if (status) -+ { -+ usec = cdevent.tv.tv_usec - usec; -+ if (usec < 0) -+ usec += 1000000; -+ -+ hardpps(&cdevent.tv, usec); -+ } -+ #endif -+ -+ TIMEVAL_USADD(&cdevent.tv, xsdelay); -+ -+ q = za->za_ttycommon.t_readq; -+ - /* - * ok - now the hard part - find ourself - */ -*************** -*** 1179,1188 **** - /* - * only pretend that CD has been handled - */ -! za->za_rr0 = za->za_rr0 & ~ZSRR0_CD | zsstatus & ZSRR0_CD; - ZSDELAY(2); - -! if (!((za->za_rr0 ^ zsstatus) & ~ZSRR0_CD)) - { - /* - * all done - kill status indication and return ---- 1205,1214 ---- - /* - * only pretend that CD has been handled - */ -! za->za_rr0 = za->za_rr0 & ~(ZSRR0_CD|ZSRR0_SYNC) | zsstatus & (ZSRR0_CD|ZSRR0_SYNC); - ZSDELAY(2); - -! if (!((za->za_rr0 ^ zsstatus) & ~(ZSRR0_CD|ZSRR0_SYNC))) - { - /* - * all done - kill status indication and return -*************** -*** 1260,1265 **** ---- 1286,1297 ---- - * History: - * - * parsestreams.c,v -+ * Revision 3.19 1994/02/24 16:33:54 kardel -+ * CD events can also be posted on sync flag -+ * -+ * Revision 3.18 1994/02/24 14:12:58 kardel -+ * initial PPS_SYNC support version -+ * - * Revision 3.17 1994/02/20 15:18:02 kardel - * rcs id cleanup - * -diff -c v3/xntpd/ntp_loopfilter.c:1.1.1.33 v3/xntpd/ntp_loopfilter.c:3.40 -*** v3/xntpd/ntp_loopfilter.c:1.1.1.33 Fri Feb 25 00:46:20 1994 ---- v3/xntpd/ntp_loopfilter.c Fri Feb 25 00:46:21 1994 -*************** -*** 522,529 **** ---- 522,545 ---- - ntv.maxerror = sys_rootdispersion + sys_rootdelay / 2; - ntv.esterror = sys_rootdispersion; - ntv.time_constant = time_constant; -+ ntv.shift = 0; - (void)ntp_adjtime(&ntv); - drift_comp = ntv.frequency; -+ if (ntv.shift != 0) { -+ char buf[128]; -+ (void) sprintf(buf, "pps_freq=%s", fptoa(ntv.ybar, 3)); -+ set_sys_var(buf, strlen(buf)+1, RO|DEF); -+ (void) sprintf(buf, "pps_disp=%s", fptoa(ntv.disp, 3)); -+ set_sys_var(buf, strlen(buf)+1, RO|DEF); -+ (void) sprintf(buf, "pps_interval=%ld",1 << ntv.shift); -+ set_sys_var(buf, strlen(buf)+1, RO); -+ (void) sprintf(buf, "pps_intervals=%ld", ntv.calcnt); -+ set_sys_var(buf, strlen(buf)+1, RO); -+ (void) sprintf(buf, "pps_jitterexceeded=%ld", ntv.jitcnt); -+ set_sys_var(buf, strlen(buf)+1, RO); -+ (void) sprintf(buf, "pps_dispersionexceeded=%ld", ntv.discnt); -+ set_sys_var(buf, strlen(buf)+1, RO); -+ } - #endif /* KERNEL_PLL */ - } else { - if (offset < 0) { -*************** -*** 725,730 **** ---- 741,748 ---- - "loop_config: skew compensation %s too large", - fptoa(tmp, 5)); - } else { -+ char var[40]; -+ - drift_comp = tmp; - - #if defined(KERNEL_PLL) -*************** -*** 751,756 **** ---- 769,778 ---- - syslog(LOG_NOTICE, - "%susing kernel phase-lock loop", - (pll_control) ? "" : "Not "); -+ (void)sprintf(var, "kernel_pll=%s", pll_control ? "true" : "false"); -+ -+ set_sys_var(var, strlen(var)+1, RO); -+ - #if DEBUG - if (debug) - printf("pll_control %d\n", pll_control); --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.23 b/usr.sbin/xntpd/patches/patch.23 deleted file mode 100644 index 5fee16f..0000000 --- a/usr.sbin/xntpd/patches/patch.23 +++ /dev/null @@ -1,80 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa18634; 27 Feb 94 13:54 EST -Received: from rincewind.mech.virginia.edu by louie.udel.edu id aa11711; - 27 Feb 94 13:53 EST -Received: from localhost (dmm0t@localhost) by rincewind.mech.virginia.edu (8.6.5/8.6.5) id NAA04646 for mills@udel.edu; Sun, 27 Feb 1994 13:53:35 -0500 -From: David Meyer <dmm0t@rincewind.mech.virginia.edu> -Message-Id: <199402271853.NAA04646@rincewind.mech.virginia.edu> -Subject: patches to xntpd-3.3j for NeXT -To: mills@udel.edu -Date: Sun, 27 Feb 1994 13:53:34 -0500 (EST) -X-Mailer: ELM [version 2.4 PL23] -MIME-Version: 1.0 -Content-Type: text/plain; charset=US-ASCII -Content-Transfer-Encoding: 7bit -Content-Length: 2043 - -I have a couple of patches to make the 3.3j beta compile on a NeXT -running NS3.1. - -The first patch just defines RETSIGTYPE. The second patch puts -HAVE_BSD_TTYS in DEFS rather than AUTHDEFS. The last patch just fixes -a type - using # rather than * in a comment block. - -*** ../orig/include/ntp_machine.h Sun Feb 20 22:23:29 1994 ---- include/ntp_machine.h Sun Feb 27 13:47:59 1994 -*************** -*** 313,318 **** ---- 313,319 ---- - * Next - */ - #if defined(SYS_NEXT) -+ #define RETSIGTYPE void - #define DOSYNCTODR - #define HAVE_READKMEM - #define HAVE_BSD_NICE - -*** ../orig/machines/next Sun Feb 20 22:23:36 1994 ---- machines/next Sun Feb 27 13:47:15 1994 -*************** -*** 1,6 **** - RANLIB= ranlib -c -s -! DEFS= -DSYS_NEXT -! AUTHDEFS= -DDES -DMD5 -DFAST_MD5 -DHAVE_BSD_TTYS - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= - RESLIB= ---- 1,6 ---- - RANLIB= ranlib -c -s -! DEFS= -DSYS_NEXT -DHAVE_BSD_TTYS -! AUTHDEFS= -DDES -DMD5 -DFAST_MD5 - CLOCKDEFS= -DLOCAL_CLOCK - DAEMONLIBS= - RESLIB= - -*** ../orig/xntpd/refclock_irig.c Thu Jan 27 09:03:58 1994 ---- xntpd/refclock_irig.c Sun Feb 27 13:36:30 1994 -*************** -*** 19,25 **** - * This driver supports the IRIG audio decoder. This clever gadget uses - * a modified BSD audio driver for the Sun SPARCstation which provides - * a timestamp, raw binary timecode, status byte and decoded ASCII -! # timecode. The data are represented in the structure: - * - * struct irig_time { - * struct timeval stamp; timestamp ---- 19,25 ---- - * This driver supports the IRIG audio decoder. This clever gadget uses - * a modified BSD audio driver for the Sun SPARCstation which provides - * a timestamp, raw binary timecode, status byte and decoded ASCII -! * timecode. The data are represented in the structure: - * - * struct irig_time { - * struct timeval stamp; timestamp - - --- -David M. Meyer Mechanical & Aerospace Engineering -dmm0t@rincewind.mech.virginia.edu University of Virginia -NeXTmail ok - diff --git a/usr.sbin/xntpd/patches/patch.24 b/usr.sbin/xntpd/patches/patch.24 deleted file mode 100644 index 6ab00e2..0000000 --- a/usr.sbin/xntpd/patches/patch.24 +++ /dev/null @@ -1,474 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa16943; 4 Mar 94 6:43 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa02686; - 4 Mar 94 6:34 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA12349 (5.65c-6/7.3v-FAU); Fri, 4 Mar 1994 12:34:08 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA26044 (5.65c-6/7.3m-FAU); Fri, 4 Mar 1994 12:34:06 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199403041134.AA26044@faui43.informatik.uni-erlangen.de> -Subject: Re: patches for 3.3l -To: Mills@udel.edu -Date: Fri, 4 Mar 94 12:33:49 MET -In-Reply-To: <9403040253.aa16147@huey.udel.edu>; from "Mills@udel.edu" at Mar 4, 94 2:53 am -X-Mailer: ELM [version 2.3 PL11] - - -> Frank, - - -> ld: ../lib/libntp.a: warning: archive has no table of contents; add one using ranlib(1) -I didn't fiddle with lib/* this round. Thus it must be some problem -with the lib building process. Try make clean and again. I just checked -the patches with my 3.3l tree - fine. I do admit being a bit lax when -sending you the patches - you might have had to enter some paths -manually. - -> ld: Undefined symbol -> _DESauth1crypt .... -Happens if ranlib isn't run. - -> Obviously, it bombed. -Not likely being a problem from my patches - the lib/libntp.a got -inconsistent. -Usually this should not happen (ranlib need to be run on BSD systems). -Try building again from scratch (make clean all). If the problem -persists look (or send me) at the output of the lib building step -something is amiss there at your site. - -I'll include the patches here again not properly prepared for a -plain "patch < patchfile". - - -Hi, Dave, - -Here are some more patches: - - allow parse conversion routines to deliver UTC directly - - irix4 machine/cc from Amos - - rcs id fixing - - linux hints - - modload hints - - full integration of trak refclock driver (was only partially integrated) - -diff -c /dev/null compilers/irix4.cc:1.1 -*** /dev/null Thu Mar 3 10:29:50 1994 ---- compilers/irix4.cc Thu Mar 3 10:29:50 1994 -*************** -*** 0 **** ---- 1,2 ---- -+ COMPILER= cc -cckr -+ COPTS= -O2 -diff -c hints/linux:1.1.1.3 hints/linux:1.5 -*** hints/linux:1.1.1.3 Thu Mar 3 10:30:53 1994 ---- hints/linux Thu Mar 3 10:30:53 1994 -*************** -*** 1,5 **** - -! Requirements: kernel 0.99.14y or newer, libc 4.5.20 or newer - ------------ - - With this configuration, xntp should build an run right out of the box ---- 1,5 ---- - -! Requirements: kernel 0.99.14y or newer, libc 4.5.21 or newer - ------------ - - With this configuration, xntp should build an run right out of the box -*************** -*** 7,14 **** - versions of the kernel or libc, or have any other question not covered in the - READMEs / hint files (sorry, necessary comment in the Linux community ;-) feel - free to ask me (duwe@informatik.uni-erlangen.de) -- -- [NOTE: libc-4.5.20 is (or was ? ;-) a beta testing release, but the first -- binary compiled under the appropriate kernel. Get this one from -- tsx-11:.../GCC/private/dontuse , compile 4.5.19 yourself or wait for the next -- puplic relase after 4.5.20] ---- 7,9 ---- -diff -c include/parse.h:1.1.1.8 include/parse.h:3.17 -*** include/parse.h:1.1.1.8 Thu Mar 3 10:31:37 1994 ---- include/parse.h Thu Mar 3 10:31:37 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/include/parse.h,v 3.13 1994/01/25 19:04:21 kardel Exp - * -! * parse.h,v 3.13 1994/01/25 19:04:21 kardel Exp - * - * Copyright (c) 1989,1990,1991,1992,1993,1994 - * Frank Kardel Friedrich-Alexander Universitaet Erlangen-Nuernberg ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/include/parse.h,v 3.17 1994/03/03 09:27:20 kardel Exp - * -! * parse.h,v 3.17 1994/03/03 09:27:20 kardel Exp - * - * Copyright (c) 1989,1990,1991,1992,1993,1994 - * Frank Kardel Friedrich-Alexander Universitaet Erlangen-Nuernberg -*************** -*** 15,21 **** - #ifndef __PARSE_H__ - #define __PARSE_H__ - #if !(defined(lint) || defined(__GNUC__)) -! static char parsehrcsid[]="parse.h,v 3.13 1994/01/25 19:04:21 kardel Exp FAU"; - #endif - - #include "ntp_types.h" ---- 15,21 ---- - #ifndef __PARSE_H__ - #define __PARSE_H__ - #if !(defined(lint) || defined(__GNUC__)) -! static char parsehrcsid[]="parse.h,v 3.17 1994/03/03 09:27:20 kardel Exp"; - #endif - - #include "ntp_types.h" -*************** -*** 301,306 **** ---- 301,307 ---- - LONG second; - LONG usecond; - LONG utcoffset; /* in seconds */ -+ time_t utctime; /* the actual time - alternative to date/time */ - LONG flags; /* current clock status */ - }; - -*************** -*** 385,390 **** ---- 386,394 ---- - * History: - * - * parse.h,v -+ * Revision 3.17 1994/03/03 09:27:20 kardel -+ * rcs ids fixed -+ * - * Revision 3.13 1994/01/25 19:04:21 kardel - * 94/01/23 reconcilation - * -diff -c parse/Makefile.kernel:1.1.1.3 parse/Makefile.kernel:3.9 -*** parse/Makefile.kernel:1.1.1.3 Thu Mar 3 10:35:48 1994 ---- parse/Makefile.kernel Thu Mar 3 10:35:48 1994 -*************** -*** 40,46 **** - rm -f parsestreams.o - - parsestreams.o: parsestreams.o.$(KARCH) -! @echo "--- You may load parsestreams.o.$(KARCH) via 'modload parsestreams.o.$(KARCH)' into the kernel" - - parsestreams.o.$(KARCH): parsestreams.c ../lib/libntp.a libparse_kernel.a ../include/parse.h ../include/sys/parsestreams.h - cc -c $(DEFS) -I../include parsestreams.c ---- 40,46 ---- - rm -f parsestreams.o - - parsestreams.o: parsestreams.o.$(KARCH) -! @echo "--- You may load parsestreams.o.$(KARCH) via 'modload parsestreams.o' (put in e.g. /sys/<karch>/OBJ) into the kernel" - - parsestreams.o.$(KARCH): parsestreams.c ../lib/libntp.a libparse_kernel.a ../include/parse.h ../include/sys/parsestreams.h - cc -c $(DEFS) -I../include parsestreams.c -diff -c parse/README.new_clocks:1.1.1.3 parse/README.new_clocks:3.5 -*** parse/README.new_clocks:1.1.1.3 Thu Mar 3 10:35:52 1994 ---- parse/README.new_clocks Thu Mar 3 10:35:53 1994 -*************** -*** 23,28 **** ---- 23,29 ---- - LONG second; - LONG usecond; - LONG utcoffset; /* in seconds */ -+ time_t utcoffset; /* true utc time instead of date/time */ - LONG flags; /* current clock status */ - }; - -*************** -*** 52,57 **** ---- 53,65 ---- - PARSEB_S_PPS supports PPS time stamping - PARSEB_S_POSITION supports position information (GPS) - -+ If the utctime field is non zero this value will be take as -+ time code value. This allows for conversion routines that -+ already have the utc time value. The utctime field gives the seconds -+ since Jan 1st 1970, 0:00:00. The useconds field gives the respective -+ usec value. The fields for date and time (down to second resolution) -+ will be ignored. -+ - Conversion is done in the cvt_* routine in parse/clk_*.c files. look in - them for examples. The basic structure is: - -diff -c parse/parse.c:1.1.1.9 parse/parse.c:3.22 -*** parse/parse.c:1.1.1.9 Thu Mar 3 10:36:06 1994 ---- parse/parse.c Thu Mar 3 10:36:07 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse.c,v 3.21 1994/02/02 17:45:30 kardel Exp - * -! * parse.c,v 3.21 1994/02/02 17:45:30 kardel Exp - * - * Parser module for reference clock - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse.c,v 3.22 1994/02/25 12:34:49 kardel Exp - * -! * parse.c,v 3.22 1994/02/25 12:34:49 kardel Exp - * - * Parser module for reference clock - * -*************** -*** 556,561 **** ---- 556,564 ---- - register int i; - time_t t; - -+ if (clock->utctime) -+ return clock->utctime; /* if the conversion routine gets it right away - why not */ -+ - if (clock->year < 100) - clock->year += 1900; - -*************** -*** 628,633 **** ---- 631,639 ---- - t += clock->utcoffset; /* warp to UTC */ - - /* done */ -+ -+ clock->utctime = t; /* documentray only */ -+ - return t; - } - -*************** -*** 890,895 **** ---- 896,903 ---- - - if (parseio->parse_flags & PARSE_FIXED_FMT) - { -+ clock.utctime = 0; -+ - switch ((cvtrtc = clockformats[format]->convert ? clockformats[format]->convert(parseio->parse_data, parseio->parse_index, clockformats[format]->data, &clock) : CVT_NONE) & CVT_MASK) - { - case CVT_FAIL: -*************** -*** 941,946 **** ---- 949,956 ---- - { - do - { -+ clock.utctime = 0; -+ - switch ((cvtrtc = (clockformats[format]->convert && !(clockformats[format]->flags & CVT_FIXEDONLY)) ? - clockformats[format]->convert(parseio->parse_data, parseio->parse_index, clockformats[format]->data, &clock) : - CVT_NONE) & CVT_MASK) -*************** -*** 1148,1153 **** ---- 1158,1166 ---- - * History: - * - * parse.c,v -+ * Revision 3.22 1994/02/25 12:34:49 kardel -+ * allow for converter generated utc times -+ * - * Revision 3.21 1994/02/02 17:45:30 kardel - * rcs ids fixed - * -diff -c parse/util/testdcf.c:1.1.1.6 parse/util/testdcf.c:3.11 -*** parse/util/testdcf.c:1.1.1.6 Thu Mar 3 10:36:27 1994 ---- parse/util/testdcf.c Thu Mar 3 10:36:27 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/parse/util/testdcf.c,v 3.9 1994/01/25 19:05:45 kardel Exp - * -! * testdcf.c,v 3.9 1994/01/25 19:05:45 kardel Exp - * - * simple DCF77 100/200ms pulse test program (via 50Baud serial line) - * ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/util/testdcf.c,v 3.11 1994/02/02 17:45:55 kardel Exp - * -! * testdcf.c,v 3.11 1994/02/02 17:45:55 kardel Exp - * - * simple DCF77 100/200ms pulse test program (via 50Baud serial line) - * -diff -c xntpd/Makefile.tmpl:1.1.1.18 xntpd/Makefile.tmpl:3.28 -*** xntpd/Makefile.tmpl:1.1.1.18 Thu Mar 3 10:38:13 1994 ---- xntpd/Makefile.tmpl Thu Mar 3 10:38:13 1994 -*************** -*** 34,40 **** - refclock_wwvb.c refclock_goes.c refclock_mx4200.c \ - refclock_parse.c refclock_as2201.c refclock_omega.c \ - refclock_tpro.c refclock_leitch.c refclock_irig.c \ -! refclock_msfees.c refclock_gpstm.c ntp_intres.c ntp_filegen.c - - OBJS= ntp_config.o ntp_control.o ntp_io.o ntp_leap.o \ - ntp_loopfilter.o ntp_monitor.o ntp_peer.o ntp_proto.o \ ---- 34,41 ---- - refclock_wwvb.c refclock_goes.c refclock_mx4200.c \ - refclock_parse.c refclock_as2201.c refclock_omega.c \ - refclock_tpro.c refclock_leitch.c refclock_irig.c \ -! refclock_msfees.c refclock_gpstm.c refclock_trak.c \ -! ntp_intres.c ntp_filegen.c - - OBJS= ntp_config.o ntp_control.o ntp_io.o ntp_leap.o \ - ntp_loopfilter.o ntp_monitor.o ntp_peer.o ntp_proto.o \ -*************** -*** 44,50 **** - refclock_wwvb.o refclock_goes.o refclock_mx4200.o \ - refclock_parse.o refclock_as2201.o refclock_omega.o \ - refclock_tpro.o refclock_leitch.o refclock_irig.o \ -! refclock_msfees.o refclock_gpstm.o ntp_intres.o ntp_filegen.o - - all: $(PROGRAM) - ---- 45,52 ---- - refclock_wwvb.o refclock_goes.o refclock_mx4200.o \ - refclock_parse.o refclock_as2201.o refclock_omega.o \ - refclock_tpro.o refclock_leitch.o refclock_irig.o \ -! refclock_msfees.o refclock_gpstm.o refclock_trak.o \ -! ntp_intres.o ntp_filegen.o - - all: $(PROGRAM) - -*************** -*** 136,141 **** ---- 138,146 ---- - - refclock_msfees.o: refclock_msfees.c - $(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c -+ -+ refclock_trak.o: refclock_trak.c -+ $(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c - - refclock_gpstm.o: refclock_gpstm.c - $(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c -diff -c xntpd/ntp_control.c:1.1.1.17 xntpd/ntp_control.c:3.26 -*** xntpd/ntp_control.c:1.1.1.17 Thu Mar 3 10:38:16 1994 ---- xntpd/ntp_control.c Thu Mar 3 10:38:17 1994 -*************** -*** 301,307 **** - static u_char clocktypes[] = { - CTL_SST_TS_NTP, /* REFCLK_NONE */ - CTL_SST_TS_UNSPEC, /* REFCLK_LOCALCLOCK */ -! CTL_SST_TS_HF, /* REFCLK_WWV_HEATH */ - CTL_SST_TS_HF, /* REFCLK_WWV_PST */ - CTL_SST_TS_LF, /* REFCLK_WWVB_SPECTRACOM */ - CTL_SST_TS_UHF, /* REFCLK_GOES_TRUETIME */ ---- 301,307 ---- - static u_char clocktypes[] = { - CTL_SST_TS_NTP, /* REFCLK_NONE */ - CTL_SST_TS_UNSPEC, /* REFCLK_LOCALCLOCK */ -! CTL_SST_TS_HF, /* REFCLK_GPS_TRAK */ - CTL_SST_TS_HF, /* REFCLK_WWV_PST */ - CTL_SST_TS_LF, /* REFCLK_WWVB_SPECTRACOM */ - CTL_SST_TS_UHF, /* REFCLK_GOES_TRUETIME */ -diff -c xntpd/refclock_conf.c:1.1.1.22 xntpd/refclock_conf.c:3.21 -*** xntpd/refclock_conf.c:1.1.1.22 Thu Mar 3 10:38:54 1994 ---- xntpd/refclock_conf.c Thu Mar 3 10:38:54 1994 -*************** -*** 113,119 **** - struct refclock *refclock_conf[] = { - &refclock_none, /* 0 REFCLK_NONE */ - &refclock_local, /* 1 REFCLK_LOCAL */ -! &refclock_none, /* 2 REFCLK_WWV_HEATH */ - &refclock_pst, /* 3 REFCLK_WWV_PST */ - &refclock_wwvb, /* 4 REFCLK_WWVB_SPECTRACOM */ - &refclock_goes, /* 5 REFCLK_GOES_TRUETIME */ ---- 113,119 ---- - struct refclock *refclock_conf[] = { - &refclock_none, /* 0 REFCLK_NONE */ - &refclock_local, /* 1 REFCLK_LOCAL */ -! &refclock_trak, /* 2 REFCLK_GPS_TRAK */ - &refclock_pst, /* 3 REFCLK_WWV_PST */ - &refclock_wwvb, /* 4 REFCLK_WWVB_SPECTRACOM */ - &refclock_goes, /* 5 REFCLK_GOES_TRUETIME */ -RCS file: /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v -retrieving revision 1.1.1.12 -diff -c -r1.1.1.12 xntpd/refclock_parse.c -*** xntpd/refclock_parse.c:1.1.1.12 1994/02/22 21:57:57 ---- xntpd/refclock_parse.c 1994/03/03 09:49:54 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v 3.49 1994/02/20 13:26:00 kardel Exp - * -! * refclock_parse.c,v 3.49 1994/02/20 13:26:00 kardel Exp - * - * generic reference clock driver for receivers - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v 3.51 1994/03/03 09:49:54 kardel Exp - * -! * refclock_parse.c,v 3.51 1994/03/03 09:49:54 kardel Exp - * - * generic reference clock driver for receivers - * -*************** -*** 129,135 **** - #include "parse.h" - - #if !defined(NO_SCCSID) && !defined(lint) && !defined(__GNUC__) -! static char rcsid[]="refclock_parse.c,v 3.49 1994/02/20 13:26:00 kardel Exp"; - #endif - - /**=========================================================================== ---- 129,135 ---- - #include "parse.h" - - #if !defined(NO_SCCSID) && !defined(lint) && !defined(__GNUC__) -! static char rcsid[]="refclock_parse.c,v 3.51 1994/03/03 09:49:54 kardel Exp"; - #endif - - /**=========================================================================== -*************** -*** 1653,1659 **** - * done if no more characters are available - */ - FD_SET(fd, &fdmask); -! if (select(fd + 1, &fdmask, 0, 0, &null_time) == 0) - return; - } - } ---- 1653,1660 ---- - * done if no more characters are available - */ - FD_SET(fd, &fdmask); -! if ((i == 0) && -! (select(fd + 1, &fdmask, 0, 0, &null_time) == 0)) - return; - } - } -*************** -*** 2823,2829 **** - sprintf(tt, "refclock_iomode=\"%s\"", parse->binding->bd_description); - - tt = add_var(&out->kv_list, 128, RO); -! sprintf(tt, "refclock_driver_version=\"refclock_parse.c,v 3.49 1994/02/20 13:26:00 kardel Exp\""); - - out->lencode = strlen(outstatus); - out->lastcode = outstatus; ---- 2824,2830 ---- - sprintf(tt, "refclock_iomode=\"%s\"", parse->binding->bd_description); - - tt = add_var(&out->kv_list, 128, RO); -! sprintf(tt, "refclock_driver_version=\"refclock_parse.c,v 3.51 1994/03/03 09:49:54 kardel Exp\""); - - out->lencode = strlen(outstatus); - out->lastcode = outstatus; --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - - --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.25 b/usr.sbin/xntpd/patches/patch.25 deleted file mode 100644 index 6ab00e2..0000000 --- a/usr.sbin/xntpd/patches/patch.25 +++ /dev/null @@ -1,474 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa16943; 4 Mar 94 6:43 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa02686; - 4 Mar 94 6:34 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA12349 (5.65c-6/7.3v-FAU); Fri, 4 Mar 1994 12:34:08 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA26044 (5.65c-6/7.3m-FAU); Fri, 4 Mar 1994 12:34:06 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199403041134.AA26044@faui43.informatik.uni-erlangen.de> -Subject: Re: patches for 3.3l -To: Mills@udel.edu -Date: Fri, 4 Mar 94 12:33:49 MET -In-Reply-To: <9403040253.aa16147@huey.udel.edu>; from "Mills@udel.edu" at Mar 4, 94 2:53 am -X-Mailer: ELM [version 2.3 PL11] - - -> Frank, - - -> ld: ../lib/libntp.a: warning: archive has no table of contents; add one using ranlib(1) -I didn't fiddle with lib/* this round. Thus it must be some problem -with the lib building process. Try make clean and again. I just checked -the patches with my 3.3l tree - fine. I do admit being a bit lax when -sending you the patches - you might have had to enter some paths -manually. - -> ld: Undefined symbol -> _DESauth1crypt .... -Happens if ranlib isn't run. - -> Obviously, it bombed. -Not likely being a problem from my patches - the lib/libntp.a got -inconsistent. -Usually this should not happen (ranlib need to be run on BSD systems). -Try building again from scratch (make clean all). If the problem -persists look (or send me) at the output of the lib building step -something is amiss there at your site. - -I'll include the patches here again not properly prepared for a -plain "patch < patchfile". - - -Hi, Dave, - -Here are some more patches: - - allow parse conversion routines to deliver UTC directly - - irix4 machine/cc from Amos - - rcs id fixing - - linux hints - - modload hints - - full integration of trak refclock driver (was only partially integrated) - -diff -c /dev/null compilers/irix4.cc:1.1 -*** /dev/null Thu Mar 3 10:29:50 1994 ---- compilers/irix4.cc Thu Mar 3 10:29:50 1994 -*************** -*** 0 **** ---- 1,2 ---- -+ COMPILER= cc -cckr -+ COPTS= -O2 -diff -c hints/linux:1.1.1.3 hints/linux:1.5 -*** hints/linux:1.1.1.3 Thu Mar 3 10:30:53 1994 ---- hints/linux Thu Mar 3 10:30:53 1994 -*************** -*** 1,5 **** - -! Requirements: kernel 0.99.14y or newer, libc 4.5.20 or newer - ------------ - - With this configuration, xntp should build an run right out of the box ---- 1,5 ---- - -! Requirements: kernel 0.99.14y or newer, libc 4.5.21 or newer - ------------ - - With this configuration, xntp should build an run right out of the box -*************** -*** 7,14 **** - versions of the kernel or libc, or have any other question not covered in the - READMEs / hint files (sorry, necessary comment in the Linux community ;-) feel - free to ask me (duwe@informatik.uni-erlangen.de) -- -- [NOTE: libc-4.5.20 is (or was ? ;-) a beta testing release, but the first -- binary compiled under the appropriate kernel. Get this one from -- tsx-11:.../GCC/private/dontuse , compile 4.5.19 yourself or wait for the next -- puplic relase after 4.5.20] ---- 7,9 ---- -diff -c include/parse.h:1.1.1.8 include/parse.h:3.17 -*** include/parse.h:1.1.1.8 Thu Mar 3 10:31:37 1994 ---- include/parse.h Thu Mar 3 10:31:37 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/include/parse.h,v 3.13 1994/01/25 19:04:21 kardel Exp - * -! * parse.h,v 3.13 1994/01/25 19:04:21 kardel Exp - * - * Copyright (c) 1989,1990,1991,1992,1993,1994 - * Frank Kardel Friedrich-Alexander Universitaet Erlangen-Nuernberg ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/include/parse.h,v 3.17 1994/03/03 09:27:20 kardel Exp - * -! * parse.h,v 3.17 1994/03/03 09:27:20 kardel Exp - * - * Copyright (c) 1989,1990,1991,1992,1993,1994 - * Frank Kardel Friedrich-Alexander Universitaet Erlangen-Nuernberg -*************** -*** 15,21 **** - #ifndef __PARSE_H__ - #define __PARSE_H__ - #if !(defined(lint) || defined(__GNUC__)) -! static char parsehrcsid[]="parse.h,v 3.13 1994/01/25 19:04:21 kardel Exp FAU"; - #endif - - #include "ntp_types.h" ---- 15,21 ---- - #ifndef __PARSE_H__ - #define __PARSE_H__ - #if !(defined(lint) || defined(__GNUC__)) -! static char parsehrcsid[]="parse.h,v 3.17 1994/03/03 09:27:20 kardel Exp"; - #endif - - #include "ntp_types.h" -*************** -*** 301,306 **** ---- 301,307 ---- - LONG second; - LONG usecond; - LONG utcoffset; /* in seconds */ -+ time_t utctime; /* the actual time - alternative to date/time */ - LONG flags; /* current clock status */ - }; - -*************** -*** 385,390 **** ---- 386,394 ---- - * History: - * - * parse.h,v -+ * Revision 3.17 1994/03/03 09:27:20 kardel -+ * rcs ids fixed -+ * - * Revision 3.13 1994/01/25 19:04:21 kardel - * 94/01/23 reconcilation - * -diff -c parse/Makefile.kernel:1.1.1.3 parse/Makefile.kernel:3.9 -*** parse/Makefile.kernel:1.1.1.3 Thu Mar 3 10:35:48 1994 ---- parse/Makefile.kernel Thu Mar 3 10:35:48 1994 -*************** -*** 40,46 **** - rm -f parsestreams.o - - parsestreams.o: parsestreams.o.$(KARCH) -! @echo "--- You may load parsestreams.o.$(KARCH) via 'modload parsestreams.o.$(KARCH)' into the kernel" - - parsestreams.o.$(KARCH): parsestreams.c ../lib/libntp.a libparse_kernel.a ../include/parse.h ../include/sys/parsestreams.h - cc -c $(DEFS) -I../include parsestreams.c ---- 40,46 ---- - rm -f parsestreams.o - - parsestreams.o: parsestreams.o.$(KARCH) -! @echo "--- You may load parsestreams.o.$(KARCH) via 'modload parsestreams.o' (put in e.g. /sys/<karch>/OBJ) into the kernel" - - parsestreams.o.$(KARCH): parsestreams.c ../lib/libntp.a libparse_kernel.a ../include/parse.h ../include/sys/parsestreams.h - cc -c $(DEFS) -I../include parsestreams.c -diff -c parse/README.new_clocks:1.1.1.3 parse/README.new_clocks:3.5 -*** parse/README.new_clocks:1.1.1.3 Thu Mar 3 10:35:52 1994 ---- parse/README.new_clocks Thu Mar 3 10:35:53 1994 -*************** -*** 23,28 **** ---- 23,29 ---- - LONG second; - LONG usecond; - LONG utcoffset; /* in seconds */ -+ time_t utcoffset; /* true utc time instead of date/time */ - LONG flags; /* current clock status */ - }; - -*************** -*** 52,57 **** ---- 53,65 ---- - PARSEB_S_PPS supports PPS time stamping - PARSEB_S_POSITION supports position information (GPS) - -+ If the utctime field is non zero this value will be take as -+ time code value. This allows for conversion routines that -+ already have the utc time value. The utctime field gives the seconds -+ since Jan 1st 1970, 0:00:00. The useconds field gives the respective -+ usec value. The fields for date and time (down to second resolution) -+ will be ignored. -+ - Conversion is done in the cvt_* routine in parse/clk_*.c files. look in - them for examples. The basic structure is: - -diff -c parse/parse.c:1.1.1.9 parse/parse.c:3.22 -*** parse/parse.c:1.1.1.9 Thu Mar 3 10:36:06 1994 ---- parse/parse.c Thu Mar 3 10:36:07 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse.c,v 3.21 1994/02/02 17:45:30 kardel Exp - * -! * parse.c,v 3.21 1994/02/02 17:45:30 kardel Exp - * - * Parser module for reference clock - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse.c,v 3.22 1994/02/25 12:34:49 kardel Exp - * -! * parse.c,v 3.22 1994/02/25 12:34:49 kardel Exp - * - * Parser module for reference clock - * -*************** -*** 556,561 **** ---- 556,564 ---- - register int i; - time_t t; - -+ if (clock->utctime) -+ return clock->utctime; /* if the conversion routine gets it right away - why not */ -+ - if (clock->year < 100) - clock->year += 1900; - -*************** -*** 628,633 **** ---- 631,639 ---- - t += clock->utcoffset; /* warp to UTC */ - - /* done */ -+ -+ clock->utctime = t; /* documentray only */ -+ - return t; - } - -*************** -*** 890,895 **** ---- 896,903 ---- - - if (parseio->parse_flags & PARSE_FIXED_FMT) - { -+ clock.utctime = 0; -+ - switch ((cvtrtc = clockformats[format]->convert ? clockformats[format]->convert(parseio->parse_data, parseio->parse_index, clockformats[format]->data, &clock) : CVT_NONE) & CVT_MASK) - { - case CVT_FAIL: -*************** -*** 941,946 **** ---- 949,956 ---- - { - do - { -+ clock.utctime = 0; -+ - switch ((cvtrtc = (clockformats[format]->convert && !(clockformats[format]->flags & CVT_FIXEDONLY)) ? - clockformats[format]->convert(parseio->parse_data, parseio->parse_index, clockformats[format]->data, &clock) : - CVT_NONE) & CVT_MASK) -*************** -*** 1148,1153 **** ---- 1158,1166 ---- - * History: - * - * parse.c,v -+ * Revision 3.22 1994/02/25 12:34:49 kardel -+ * allow for converter generated utc times -+ * - * Revision 3.21 1994/02/02 17:45:30 kardel - * rcs ids fixed - * -diff -c parse/util/testdcf.c:1.1.1.6 parse/util/testdcf.c:3.11 -*** parse/util/testdcf.c:1.1.1.6 Thu Mar 3 10:36:27 1994 ---- parse/util/testdcf.c Thu Mar 3 10:36:27 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/parse/util/testdcf.c,v 3.9 1994/01/25 19:05:45 kardel Exp - * -! * testdcf.c,v 3.9 1994/01/25 19:05:45 kardel Exp - * - * simple DCF77 100/200ms pulse test program (via 50Baud serial line) - * ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/util/testdcf.c,v 3.11 1994/02/02 17:45:55 kardel Exp - * -! * testdcf.c,v 3.11 1994/02/02 17:45:55 kardel Exp - * - * simple DCF77 100/200ms pulse test program (via 50Baud serial line) - * -diff -c xntpd/Makefile.tmpl:1.1.1.18 xntpd/Makefile.tmpl:3.28 -*** xntpd/Makefile.tmpl:1.1.1.18 Thu Mar 3 10:38:13 1994 ---- xntpd/Makefile.tmpl Thu Mar 3 10:38:13 1994 -*************** -*** 34,40 **** - refclock_wwvb.c refclock_goes.c refclock_mx4200.c \ - refclock_parse.c refclock_as2201.c refclock_omega.c \ - refclock_tpro.c refclock_leitch.c refclock_irig.c \ -! refclock_msfees.c refclock_gpstm.c ntp_intres.c ntp_filegen.c - - OBJS= ntp_config.o ntp_control.o ntp_io.o ntp_leap.o \ - ntp_loopfilter.o ntp_monitor.o ntp_peer.o ntp_proto.o \ ---- 34,41 ---- - refclock_wwvb.c refclock_goes.c refclock_mx4200.c \ - refclock_parse.c refclock_as2201.c refclock_omega.c \ - refclock_tpro.c refclock_leitch.c refclock_irig.c \ -! refclock_msfees.c refclock_gpstm.c refclock_trak.c \ -! ntp_intres.c ntp_filegen.c - - OBJS= ntp_config.o ntp_control.o ntp_io.o ntp_leap.o \ - ntp_loopfilter.o ntp_monitor.o ntp_peer.o ntp_proto.o \ -*************** -*** 44,50 **** - refclock_wwvb.o refclock_goes.o refclock_mx4200.o \ - refclock_parse.o refclock_as2201.o refclock_omega.o \ - refclock_tpro.o refclock_leitch.o refclock_irig.o \ -! refclock_msfees.o refclock_gpstm.o ntp_intres.o ntp_filegen.o - - all: $(PROGRAM) - ---- 45,52 ---- - refclock_wwvb.o refclock_goes.o refclock_mx4200.o \ - refclock_parse.o refclock_as2201.o refclock_omega.o \ - refclock_tpro.o refclock_leitch.o refclock_irig.o \ -! refclock_msfees.o refclock_gpstm.o refclock_trak.o \ -! ntp_intres.o ntp_filegen.o - - all: $(PROGRAM) - -*************** -*** 136,141 **** ---- 138,146 ---- - - refclock_msfees.o: refclock_msfees.c - $(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c -+ -+ refclock_trak.o: refclock_trak.c -+ $(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c - - refclock_gpstm.o: refclock_gpstm.c - $(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c -diff -c xntpd/ntp_control.c:1.1.1.17 xntpd/ntp_control.c:3.26 -*** xntpd/ntp_control.c:1.1.1.17 Thu Mar 3 10:38:16 1994 ---- xntpd/ntp_control.c Thu Mar 3 10:38:17 1994 -*************** -*** 301,307 **** - static u_char clocktypes[] = { - CTL_SST_TS_NTP, /* REFCLK_NONE */ - CTL_SST_TS_UNSPEC, /* REFCLK_LOCALCLOCK */ -! CTL_SST_TS_HF, /* REFCLK_WWV_HEATH */ - CTL_SST_TS_HF, /* REFCLK_WWV_PST */ - CTL_SST_TS_LF, /* REFCLK_WWVB_SPECTRACOM */ - CTL_SST_TS_UHF, /* REFCLK_GOES_TRUETIME */ ---- 301,307 ---- - static u_char clocktypes[] = { - CTL_SST_TS_NTP, /* REFCLK_NONE */ - CTL_SST_TS_UNSPEC, /* REFCLK_LOCALCLOCK */ -! CTL_SST_TS_HF, /* REFCLK_GPS_TRAK */ - CTL_SST_TS_HF, /* REFCLK_WWV_PST */ - CTL_SST_TS_LF, /* REFCLK_WWVB_SPECTRACOM */ - CTL_SST_TS_UHF, /* REFCLK_GOES_TRUETIME */ -diff -c xntpd/refclock_conf.c:1.1.1.22 xntpd/refclock_conf.c:3.21 -*** xntpd/refclock_conf.c:1.1.1.22 Thu Mar 3 10:38:54 1994 ---- xntpd/refclock_conf.c Thu Mar 3 10:38:54 1994 -*************** -*** 113,119 **** - struct refclock *refclock_conf[] = { - &refclock_none, /* 0 REFCLK_NONE */ - &refclock_local, /* 1 REFCLK_LOCAL */ -! &refclock_none, /* 2 REFCLK_WWV_HEATH */ - &refclock_pst, /* 3 REFCLK_WWV_PST */ - &refclock_wwvb, /* 4 REFCLK_WWVB_SPECTRACOM */ - &refclock_goes, /* 5 REFCLK_GOES_TRUETIME */ ---- 113,119 ---- - struct refclock *refclock_conf[] = { - &refclock_none, /* 0 REFCLK_NONE */ - &refclock_local, /* 1 REFCLK_LOCAL */ -! &refclock_trak, /* 2 REFCLK_GPS_TRAK */ - &refclock_pst, /* 3 REFCLK_WWV_PST */ - &refclock_wwvb, /* 4 REFCLK_WWVB_SPECTRACOM */ - &refclock_goes, /* 5 REFCLK_GOES_TRUETIME */ -RCS file: /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v -retrieving revision 1.1.1.12 -diff -c -r1.1.1.12 xntpd/refclock_parse.c -*** xntpd/refclock_parse.c:1.1.1.12 1994/02/22 21:57:57 ---- xntpd/refclock_parse.c 1994/03/03 09:49:54 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v 3.49 1994/02/20 13:26:00 kardel Exp - * -! * refclock_parse.c,v 3.49 1994/02/20 13:26:00 kardel Exp - * - * generic reference clock driver for receivers - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v 3.51 1994/03/03 09:49:54 kardel Exp - * -! * refclock_parse.c,v 3.51 1994/03/03 09:49:54 kardel Exp - * - * generic reference clock driver for receivers - * -*************** -*** 129,135 **** - #include "parse.h" - - #if !defined(NO_SCCSID) && !defined(lint) && !defined(__GNUC__) -! static char rcsid[]="refclock_parse.c,v 3.49 1994/02/20 13:26:00 kardel Exp"; - #endif - - /**=========================================================================== ---- 129,135 ---- - #include "parse.h" - - #if !defined(NO_SCCSID) && !defined(lint) && !defined(__GNUC__) -! static char rcsid[]="refclock_parse.c,v 3.51 1994/03/03 09:49:54 kardel Exp"; - #endif - - /**=========================================================================== -*************** -*** 1653,1659 **** - * done if no more characters are available - */ - FD_SET(fd, &fdmask); -! if (select(fd + 1, &fdmask, 0, 0, &null_time) == 0) - return; - } - } ---- 1653,1660 ---- - * done if no more characters are available - */ - FD_SET(fd, &fdmask); -! if ((i == 0) && -! (select(fd + 1, &fdmask, 0, 0, &null_time) == 0)) - return; - } - } -*************** -*** 2823,2829 **** - sprintf(tt, "refclock_iomode=\"%s\"", parse->binding->bd_description); - - tt = add_var(&out->kv_list, 128, RO); -! sprintf(tt, "refclock_driver_version=\"refclock_parse.c,v 3.49 1994/02/20 13:26:00 kardel Exp\""); - - out->lencode = strlen(outstatus); - out->lastcode = outstatus; ---- 2824,2830 ---- - sprintf(tt, "refclock_iomode=\"%s\"", parse->binding->bd_description); - - tt = add_var(&out->kv_list, 128, RO); -! sprintf(tt, "refclock_driver_version=\"refclock_parse.c,v 3.51 1994/03/03 09:49:54 kardel Exp\""); - - out->lencode = strlen(outstatus); - out->lastcode = outstatus; --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - - --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.26 b/usr.sbin/xntpd/patches/patch.26 deleted file mode 100644 index a55360d..0000000 --- a/usr.sbin/xntpd/patches/patch.26 +++ /dev/null @@ -1,36 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa24501; 5 Mar 94 21:23 EST -Received: from goofus.wustl.edu by louie.udel.edu id aa01087; 5 Mar 94 21:15 EST -Received: from mumps.pfcs.com by goofus.wustl.edu with UUCP id AA17154 - (5.67a+/IDA-1.5 for mills@udel.edu); Sat, 5 Mar 1994 20:15:06 -0600 -Received: by mumps.pfcs.com id AA09821 - (5.65c/IDA-1.4.4 for mills@udel.edu); Sat, 5 Mar 1994 19:10:18 -0600 -Date: Sat, 5 Mar 1994 19:10:18 -0600 -From: Harlan Stenn <harlan@mumps.pfcs.com> -Message-Id: <199403060110.AA09821@mumps.pfcs.com> -To: mills@udel.edu -Subject: xntpd/Makefile and 3.3l - -Dave, - -xntpd/Makefile doesn't get -DSYS_whatever and -DHAVE_xxx_TTYS "installed" -when the Makefile gets created. This is for OS=mips. - -Same for xntpdc/Makefile. - -A patch follows... - -Harlan - -PS - might you have a copy of the message I sent you a couple of weeks -ago where I asked about broadcast servers and clients and the ntp.conf -file? I was going to send it to the maling list but I lost my copy. - -machines/mips -3,4c3,4 -< DEFS= -< AUTHDEFS= -DDES -DMD5 -DSYS_MIPS -DHAVE_BSD_TTYS ---- -> DEFS= -DSYS_MIPS -DHAVE_BSD_TTYS -> AUTHDEFS= -DDES -DMD5 - diff --git a/usr.sbin/xntpd/patches/patch.27 b/usr.sbin/xntpd/patches/patch.27 deleted file mode 100644 index 5d450d4..0000000 --- a/usr.sbin/xntpd/patches/patch.27 +++ /dev/null @@ -1,86 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa23654; 11 Mar 94 7:49 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa14038; - 10 Mar 94 14:14 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA13885 (5.65c-6/7.3v-FAU); Thu, 10 Mar 1994 20:10:36 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA03872 (5.65c-6/7.3m-FAU); Thu, 10 Mar 1994 20:10:33 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199403101910.AA03872@faui43.informatik.uni-erlangen.de> -Subject: RAW dcf77 showstopper 8-(. -To: mills@udel.edu -Date: Thu, 10 Mar 94 20:10:25 MET -Cc: dpk@morgan.com, Frank.Kardel@informatik.uni-erlangen.de, - Piete.Brooks@cl.cam.ac.uk, jcs@bear.zoo.bt.co.uk -X-Mailer: ELM [version 2.3 PL11] - -Hi, my changes for 3.3m introduced a subtle reliability problem for -the cheap DCF77 receiver code - it only returned somtimes the -correct time 8-(. - -Well, here is the patch. (I'll post this one to the news group -also as it is a show stopper for the cheap clocks 8-(). So -don't be confused. - - -RCS file: /src/NTP/REPOSITORY/v3/parse/clk_rawdcf.c,v -retrieving revision 3.12 -diff -c -r3.12 clk_rawdcf.c -*** parse/clk_rawdcf.c:3.12 1994/02/20 13:04:39 ---- parse/clk_rawdcf.c 1994/03/10 19:00:43 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_RAWDCF) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_rawdcf.c,v 3.12 1994/02/20 13:04:39 kardel Exp - * -! * clk_rawdcf.c,v 3.12 1994/02/20 13:04:39 kardel Exp - * - * Raw DCF77 pulse clock support - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_RAWDCF) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_rawdcf.c,v 3.13 1994/03/10 19:00:43 kardel Exp - * -! * clk_rawdcf.c,v 3.13 1994/03/10 19:00:43 kardel Exp - * - * Raw DCF77 pulse clock support - * -*************** -*** 245,250 **** ---- 245,251 ---- - parseprintf(DD_RAWDCF,("parse: convert_rawdcf: parity check passed\n")); - - clock->flags = PARSEB_S_ANTENNA|PARSEB_S_LEAP; -+ clock->utctime= 0; - clock->usecond= 0; - clock->second = 0; - clock->minute = ext_bf(buffer, DCF_M10, dcfparam->zerobits); -*************** -*** 528,534 **** - /* - * History: - * -! * clk_rawdcf.c,v - * Revision 3.12 1994/02/20 13:04:39 kardel - * parse add/delete second support - * ---- 529,538 ---- - /* - * History: - * -! * clk_rawdcf.c,v -! * Revision 3.13 1994/03/10 19:00:43 kardel -! * clear utctime field to avoid confusion on synthesize time stamps -! * - * Revision 3.12 1994/02/20 13:04:39 kardel - * parse add/delete second support - * - --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.28 b/usr.sbin/xntpd/patches/patch.28 deleted file mode 100644 index 37e2065..0000000 --- a/usr.sbin/xntpd/patches/patch.28 +++ /dev/null @@ -1,454 +0,0 @@ - -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 - - - diff --git a/usr.sbin/xntpd/patches/patch.29 b/usr.sbin/xntpd/patches/patch.29 deleted file mode 100644 index ee161a2..0000000 --- a/usr.sbin/xntpd/patches/patch.29 +++ /dev/null @@ -1,52 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa24239; 16 Mar 94 18:01 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa18720; - 16 Mar 94 17:57 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA25324 (5.65c-6/7.3v-FAU); Wed, 16 Mar 1994 23:57:39 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA18230 (5.65c-6/7.3m-FAU); Wed, 16 Mar 1994 23:57:37 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199403162257.AA18230@faui43.informatik.uni-erlangen.de> -Subject: hpadjtime.sh -To: mills@udel.edu, ken@sdd.hp.com -Date: Wed, 16 Mar 94 23:57:32 MET -Return-Receipt-To: "Frank Kardel" <Frank.Kardel@informatik.uni-erlangen.de> -X-Mailer: ELM [version 2.3 PL11] - -Hi, 3.3n is somewhat broken... - -First of all - - scripts/hpadjtime.sh is missing (it's in patch.28) - -And - - scripts/hpadjtime.sh is broken for non hp-ux - (will try to build adjtime libs on non hp-ux architectures - as a default value was no set) - -Please use this version of scripts/hpadjtime.sh for increased safety: - -#! /bin/sh -val=1 -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 - --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.3 b/usr.sbin/xntpd/patches/patch.3 deleted file mode 100644 index beba805..0000000 --- a/usr.sbin/xntpd/patches/patch.3 +++ /dev/null @@ -1,3032 +0,0 @@ -diff -c TODO:1.1.1.3 TODO:3.5 -*** TODO:1.1.1.3 Wed Jan 26 21:46:47 1994 ---- TODO Wed Jan 26 21:46:48 1994 -*************** -*** 1,5 **** - # -! # TODO,v 3.4 1994/01/23 17:19:06 kardel Exp - # - This file contains problems known to the authors that still need to be done. - We would appreciate if you could spare some of your time to look through ---- 1,5 ---- - # -! # TODO,v 3.5 1994/01/25 19:03:55 kardel Exp - # - This file contains problems known to the authors that still need to be done. - We would appreciate if you could spare some of your time to look through -diff -c doc/xntpd.8:1.1.1.11 doc/xntpd.8:3.21 -*** doc/xntpd.8:1.1.1.11 Wed Jan 26 21:47:54 1994 ---- doc/xntpd.8 Wed Jan 26 21:47:55 1994 -*************** -*** 74,79 **** ---- 74,85 ---- - ] [ - .B -t - .I trustedkey -+ ] [ -+ .B -v -+ .I variable -+ ] [ -+ .B -V -+ .I variable - ] - .SH DESCRIPTION - .I Xntpd -*************** -*** 140,145 **** ---- 146,155 ---- - specify a directory to be used for creating statistics files - .Ip -t 8 - add a key number to the trusted key list -+ .Ip -v 8 -+ add a system variable -+ .Ip -V 8 -+ add a system variable listed by default - .SH "CONFIGURATION FILE OPTIONS" - .IR Xntpd 's - configuration file is relatively free format. Comments, which may be -*************** -*** 494,499 **** ---- 504,534 ---- - This command is obsolete and not available in this version of - .I xntpd. - .PP -+ .B setvar -+ .I variable -+ .I [default] -+ .PP -+ This command adds an additional system variable. These variables can be -+ used to distribute additional information such as the access policy. If -+ the variable of the from <name>=<value> is followed by the -+ .I default -+ keyword the variable will be listed as part of the default system -+ variables (ntpq rv command). These additional variables serve informational -+ purposes only. They are not related to the protocol other that they can be -+ listed. The known protocol variables will always overide any variables defined -+ via the -+ .I setvar -+ mechanism. -+ .PP -+ There are three special variables that contain the names of all variable of -+ the same group. The -+ .I sys_var_list -+ holds the names of all system variables. The -+ .I peer_var_list -+ holds the names of all peer variables and the -+ .I clock_var_list -+ hold the names of the reference clock variables. -+ .PP - .B resolver - .I /path/xntpres - .PP -*************** -*** 1093,1101 **** - time. - On the availability of PPS information the - .I time2 -! fudge factor show the difference betwteen the PPS time stamp and the reception -! time stamp of the serial signal. This parameter is read only attempts to -! set this parameter will be ignored. - The - .I flag0 - enables input filtering. This a median filter with continuous sampling. The ---- 1128,1140 ---- - time. - On the availability of PPS information the - .I time2 -! fudge factor defines the skew between the PPS time stamp and the reception -! time stamp of the PPS signal. This parameter is usually 0 as usually -! the PPS signal is believed in time and OS delays should be corrected -! in the machine specific section of the kernel driver. -! .I time2 -! needs only be set when the actial PPS signal is delayed for some -! reason. - The - .I flag0 - enables input filtering. This a median filter with continuous sampling. The -*************** -*** 1109,1121 **** - .I ntpq - timecode variable - .PP -! The timecode variable in the ntpq read clock variable command contains several -! fields. The first field is the local time in Unix format. The second field is -! the offset to UTC (format HHMM). The currently active receiver flags are listed -! next. Additional feature flags of the receiver are optionally listed in paranthesis. -! The actual time code is enclosed in angle brackets < >. A qualification of the -! decoded time code format is following the time code. The last piece of information -! is the overall running time and the accumulated times for the clock event states. - .PP - Unit encoding - .PP ---- 1148,1172 ---- - .I ntpq - timecode variable - .PP -! The ntpq read clock variables command list several variables. These -! hold followinf information: -! .I refclock_time -! is the local time with the offset to UTC (format HHMM). -! The currently active receiver flags are listed in -! .I refclock_status. -! Additional feature flags of the receiver are optionally listed in paranthesis. -! The actual time code is listed in -! .I timecode. -! A qualification of the decoded time code format is following in -! .I refclock_format. -! The last piece of information is the overall running time and the accumulated -! times for the clock event states in -! .I refclock_states. -! When PPS information is present additional variable are available. -! .I refclock_ppstime -! lists then the PPS timestamp and -! .I refclock_ppsskew -! lists the difference between RS232 derived timestamp and the PPS timestamp. - .PP - Unit encoding - .PP -diff -c include/ntp_control.h:1.1.1.5 include/ntp_control.h:3.6 -*** include/ntp_control.h:1.1.1.5 Wed Jan 26 21:48:21 1994 ---- include/ntp_control.h Wed Jan 26 21:48:21 1994 -*************** -*** 163,171 **** - #define CS_SYSTEM 17 - #define CS_KEYID 18 - #define CS_REFSKEW 19 -! #define CS_VERSION 20 - -! #define CS_MAXCODE CS_VERSION - - /* - * Peer variables we understand ---- 163,171 ---- - #define CS_SYSTEM 17 - #define CS_KEYID 18 - #define CS_REFSKEW 19 -! #define CS_VARLIST 20 - -! #define CS_MAXCODE CS_VARLIST - - /* - * Peer variables we understand -*************** -*** 204,212 **** - #define CP_SENT 32 - #define CP_FILTERROR 33 - #define CP_FLASH 34 -! #define CP_DISP 35 -! #define CP_MAXCODE CP_DISP - - /* - * Clock variables we understand - */ ---- 204,213 ---- - #define CP_SENT 32 - #define CP_FILTERROR 33 - #define CP_FLASH 34 -! #define CP_VARLIST 35 - -+ #define CP_MAXCODE CP_VARLIST -+ - /* - * Clock variables we understand - */ -*************** -*** 222,229 **** - #define CC_FUDGEVAL2 10 - #define CC_FLAGS 11 - #define CC_DEVICE 12 - -! #define CC_MAXCODE CC_DEVICE - - /* - * Definition of the structure used internally to hold trap information. ---- 223,231 ---- - #define CC_FUDGEVAL2 10 - #define CC_FLAGS 11 - #define CC_DEVICE 12 -+ #define CC_VARLIST 13 - -! #define CC_MAXCODE CC_VARLIST - - /* - * Definition of the structure used internally to hold trap information. -diff -c include/ntp_filegen.h:1.1.1.3 include/ntp_filegen.h:3.7 -*** include/ntp_filegen.h:1.1.1.3 Wed Jan 26 21:48:22 1994 ---- include/ntp_filegen.h Wed Jan 26 21:48:22 1994 -*************** -*** 1,5 **** - /* -! * ntp_filegen.h,v 3.6 1993/09/01 21:51:24 kardel Exp - * - * definitions for NTP file generations support - * ---- 1,5 ---- - /* -! * ntp_filegen.h,v 3.7 1994/01/25 19:04:16 kardel Exp - * - * definitions for NTP file generations support - * -diff -c include/ntp_machine.h:1.1.1.9 include/ntp_machine.h:1.24 -*** include/ntp_machine.h:1.1.1.9 Wed Jan 26 21:48:27 1994 ---- include/ntp_machine.h Wed Jan 26 21:48:27 1994 -*************** -*** 123,134 **** - - HAVE_UNISTD_H - Maybe should be part of NTP_POSIX_SOURCE ? - - You could just put the defines on the DEFS line in machines/<os> file. - I don't since there are lost of different types compiler that a systemm might - have, some that can do proto typing and others that cannot on the saem system. - I get a chanse to twiddle some of the configuration paramasters at compile - time based on compler/machine combinatsions by using this include file. -! See convex, aix and sun configurations see how complex it get. - - */ - ---- 123,138 ---- - - HAVE_UNISTD_H - Maybe should be part of NTP_POSIX_SOURCE ? - -+ DEFINITIONS FOR SYSTEM && PROCESSOR -+ STR_SYSTEM - value of system variable -+ STR_PROCESSOR - value of processor variable -+ - You could just put the defines on the DEFS line in machines/<os> file. - I don't since there are lost of different types compiler that a systemm might - have, some that can do proto typing and others that cannot on the saem system. - I get a chanse to twiddle some of the configuration paramasters at compile - time based on compler/machine combinatsions by using this include file. -! See convex, aix and sun configurations see how complex it gets. - - */ - -*************** -*** 152,157 **** ---- 156,164 ---- - #endif - #endif /*_BSD */ - #define HAVE_BSD_NICE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/AIX" -+ #endif - #endif /* RS6000 */ - - /* -*************** -*** 166,171 **** ---- 173,181 ---- - #define RETSIGTYPE void - #define NTP_SYSCALL_GET 132 - #define NTP_SYSCALL_ADJ 147 -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/SunOS 4.x" -+ #endif - #endif - - /* -*************** -*** 182,188 **** ---- 192,201 ---- - #define NTP_POSIX_SOURCE - #define HAVE_ATT_SETPGRP - #define HAVE_ATT_NICE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/SINIX-M" - #endif -+ #endif - - /* - * SunOS 5.1 or SunOS 5.2 or Solaris 2.1 or Solaris 2.2 -*************** -*** 198,203 **** ---- 211,219 ---- - #define HAVE_ATT_SETPGRP - #define HAVE_ATT_NICE - #define UDP_WILDCARD_DELIVERY -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/Solaris 2.x" -+ #endif - #endif - - /* -*************** -*** 221,227 **** ---- 237,246 ---- - #define NTP_POSIX_SOURCE - #define HAVE_ATT_SETPGRP - #endif -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/ConvexOS" - #endif -+ #endif - - /* - * IRIX 4.X and IRIX 5.x -*************** -*** 235,240 **** ---- 254,262 ---- - #define HAVE_ATT_SETPGRP - #define HAVE_BSD_NICE - #define NTP_POSIX_SOURCE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/IRIX" -+ #endif - #endif - - /* -*************** -*** 247,253 **** ---- 269,278 ---- - #define HAVE_BSD_NICE - #define RETSIGTYPE void - #define NTP_SYSCALLS_STD -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/Ultrix" - #endif -+ #endif - - /* - * AUX -*************** -*** 272,277 **** ---- 297,305 ---- - #define HAVE_BSD_TTYS - #define LOG_NTP LOG_LOCAL1 - #define HAVE_SIGNALED_IO -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/AUX" -+ #endif - #endif - - /* -*************** -*** 283,289 **** ---- 311,320 ---- - #define HAVE_BSD_NICE - #define HAVE_N_UN - #undef NTP_POSIX_SOURCE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/Next" - #endif -+ #endif - - /* - * HPUX -*************** -*** 301,306 **** ---- 332,340 ---- - #else - #define HAVE_READKMEM - #endif -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/HPUX" -+ #endif - #endif - - /* -*************** -*** 311,316 **** ---- 345,353 ---- - #define HAVE_LIBKVM - #define NTP_POSIX_SOURCE - #define HAVE_BSD_NICE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/BSDI" -+ #endif - #define HAVE_BSD_TTYS - #endif - -*************** -*** 327,332 **** ---- 364,372 ---- - * along with a standard name one day ! */ - #define ntp_adjtime __adjtimex - #define HAVE_BSD_NICE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/Linux" -+ #endif - #endif - - /* -*************** -*** 338,344 **** ---- 378,387 ---- - #define HAVE_READKMEM - #define NTP_POSIX_SOURCE - #define HAVE_BSD_NICE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/*BSD" - #endif -+ #endif - - /* - * DECOSF1 -*************** -*** 349,354 **** ---- 392,400 ---- - #define NTP_POSIX_SOURCE - #define NTP_SYSCALLS_STD - #define HAVE_BSD_NICE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/DECOSF1" -+ #endif - #endif - - /* -*************** -*** 358,364 **** ---- 404,413 ---- - #define HAVE_READKMEM - #define S_CHAR_DEFINED - #define HAVE_BSD_NICE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/I386" - #endif -+ #endif - - /* - * Mips -*************** -*** 366,371 **** ---- 415,423 ---- - #if defined(SYS_MIPS) - #define NOKMEM - #define HAVE_BSD_NICE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/Mips" -+ #endif - #endif - - /* -*************** -*** 373,379 **** ---- 425,434 ---- - */ - #if defined(SYS_SEQUENT) - #define HAVE_BSD_NICE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/Sequent Dynix 3" - #endif -+ #endif - - /* - * PTX -*************** -*** 407,412 **** ---- 462,470 ---- - typedef unsigned short u_short; - typedef unsigned long u_long; - #endif -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/Sequent PTX" -+ #endif - #endif - - -*************** -*** 417,423 **** ---- 475,484 ---- - #define NO_SIGNED_CHAR_DECL - #define HAVE_READKMEM - #define HAVE_BSD_NICE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/Sony" - #endif -+ #endif - - /* - * VAX -*************** -*** 426,431 **** ---- 487,495 ---- - #define NO_SIGNED_CHAR_DECL - #define HAVE_READKMEM - #define HAVE_BSD_NICE -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/VAX" -+ #endif - #endif - - /* -*************** -*** 445,455 **** - #define LOCK_PROCESS - #define SYSV_TIMEOFDAY - #define SIZE_RETURNED_IN_BUFFER -! #endif -! -! #ifdef STREAM /* STREAM implies TERMIOS */ -! #ifndef HAVE_TERMIOS -! #define HAVE_TERMIOS - #endif - #endif - ---- 509,516 ---- - #define LOCK_PROCESS - #define SYSV_TIMEOFDAY - #define SIZE_RETURNED_IN_BUFFER -! #ifndef STR_SYSTEM -! #define STR_SYSTEM "UNIX/SysVR4" - #endif - #endif - -*************** -*** 464,469 **** ---- 525,539 ---- - #define NTP_SYSCALLS_STD - #define USE_PROTOTYPES - #define UDP_WILDCARD_DELIVERY -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/DOMAINOS" -+ #endif -+ #endif -+ -+ #ifdef STREAM /* STREAM implies TERMIOS */ -+ #ifndef HAVE_TERMIOS -+ #define HAVE_TERMIOS -+ #endif - #endif - - #ifndef RETSIGTYPE -diff -c include/ntp_refclock.h:1.1.1.8 include/ntp_refclock.h:3.8 -*** include/ntp_refclock.h:1.1.1.8 Wed Jan 26 21:48:28 1994 ---- include/ntp_refclock.h Wed Jan 26 21:48:28 1994 -*************** -*** 75,84 **** - LONG fudgeval2; - u_char currentstatus; - u_char lastevent; -! u_char unused[1]; - }; - -- - /* - * Reference clock I/O structure. Used to provide an interface between - * the reference clock drivers and the I/O module. ---- 75,84 ---- - LONG fudgeval2; - u_char currentstatus; - u_char lastevent; -! u_char unused; -! struct ctl_var *kv_list; /* additional variables */ - }; - - /* - * Reference clock I/O structure. Used to provide an interface between - * the reference clock drivers and the I/O module. -diff -c include/ntpd.h:1.1.1.6 include/ntpd.h:1.5 -*** include/ntpd.h:1.1.1.6 Wed Jan 26 21:48:35 1994 ---- include/ntpd.h Wed Jan 26 21:48:35 1994 -*************** -*** 1,4 **** -! /* ntpd.h,v 3.1 1993/07/06 01:07:03 jbj Exp - * ntpd.h - Prototypes for xntpd. - */ - ---- 1,4 ---- -! /* - * ntpd.h - Prototypes for xntpd. - */ - -*************** -*** 21,26 **** ---- 21,55 ---- - extern void process_control P((struct recvbuf *, int)); - extern void report_event P((int, struct peer *)); - -+ /* ntp_control.c */ -+ /* -+ * Structure for translation tables between internal system -+ * variable indices and text format. -+ */ -+ struct ctl_var { -+ u_short code; -+ u_short flags; -+ char *text; -+ }; -+ /* -+ * Flag values -+ */ -+ #define CAN_READ 0x01 -+ #define CAN_WRITE 0x02 -+ -+ #define DEF 0x20 -+ #define PADDING 0x40 -+ #define EOV 0x80 -+ -+ #define RO (CAN_READ) -+ #define WO (CAN_WRITE) -+ #define RW (CAN_READ|CAN_WRITE) -+ -+ extern char * add_var P((struct ctl_var **, unsigned long, int)); -+ extern void free_varlist P((struct ctl_var *)); -+ extern void set_var P((struct ctl_var **, char *, unsigned long, int)); -+ extern void set_sys_var P((char *, unsigned long, int)); -+ - /* ntp_intres.c */ - extern void ntp_intres P((void)); - -diff -c include/parse.h:1.1.1.6 include/parse.h:3.13 -*** include/parse.h:1.1.1.6 Wed Jan 26 21:48:36 1994 ---- include/parse.h Wed Jan 26 21:48:36 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/include/parse.h,v 3.12 1994/01/23 17:23:05 kardel Exp - * -! * parse.h,v 3.12 1994/01/23 17:23:05 kardel Exp - * - * Copyright (c) 1989,1990,1991,1992,1993,1994 - * Frank Kardel Friedrich-Alexander Universitaet Erlangen-Nuernberg ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/include/parse.h,v 3.13 1994/01/25 19:04:21 kardel Exp - * -! * parse.h,v 3.13 1994/01/25 19:04:21 kardel Exp - * - * Copyright (c) 1989,1990,1991,1992,1993,1994 - * Frank Kardel Friedrich-Alexander Universitaet Erlangen-Nuernberg -*************** -*** 15,21 **** - #ifndef __PARSE_H__ - #define __PARSE_H__ - #if !(defined(lint) || defined(__GNUC__)) -! static char parsehrcsid[]="parse.h,v 3.12 1994/01/23 17:23:05 kardel Exp FAU"; - #endif - - #include "ntp_types.h" ---- 15,21 ---- - #ifndef __PARSE_H__ - #define __PARSE_H__ - #if !(defined(lint) || defined(__GNUC__)) -! static char parsehrcsid[]="parse.h,v 3.13 1994/01/25 19:04:21 kardel Exp FAU"; - #endif - - #include "ntp_types.h" -*************** -*** 365,370 **** ---- 365,373 ---- - * History: - * - * parse.h,v -+ * Revision 3.13 1994/01/25 19:04:21 kardel -+ * 94/01/23 reconcilation -+ * - * Revision 3.12 1994/01/23 17:23:05 kardel - * 1994 reconcilation - * -diff -c include/parse_conf.h:1.1.1.5 include/parse_conf.h:3.5 -*** include/parse_conf.h:1.1.1.5 Wed Jan 26 21:48:37 1994 ---- include/parse_conf.h Wed Jan 26 21:48:37 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/include/parse_conf.h,v 3.4 1994/01/23 17:23:07 kardel Exp - * -! * parse_conf.h,v 3.4 1994/01/23 17:23:07 kardel Exp - * - * Copyright (c) 1993,1994 - * Frank Kardel Friedrich-Alexander Universitaet Erlangen-Nuernberg ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/include/parse_conf.h,v 3.5 1994/01/25 19:04:23 kardel Exp - * -! * parse_conf.h,v 3.5 1994/01/25 19:04:23 kardel Exp - * - * Copyright (c) 1993,1994 - * Frank Kardel Friedrich-Alexander Universitaet Erlangen-Nuernberg -*************** -*** 15,21 **** - #ifndef __PARSE_CONF_H__ - #define __PARSE_CONF_H__ - #if !(defined(lint) || defined(__GNUC__)) -! static char dcfhrcsid[]="parse_conf.h,v 3.4 1994/01/23 17:23:07 kardel Exp FAU"; - #endif - - /* ---- 15,21 ---- - #ifndef __PARSE_CONF_H__ - #define __PARSE_CONF_H__ - #if !(defined(lint) || defined(__GNUC__)) -! static char dcfhrcsid[]="parse_conf.h,v 3.5 1994/01/25 19:04:23 kardel Exp FAU"; - #endif - - /* -diff -c include/sys/parsestreams.h:1.1.1.6 include/sys/parsestreams.h:3.11 -*** include/sys/parsestreams.h:1.1.1.6 Wed Jan 26 21:48:44 1994 ---- include/sys/parsestreams.h Wed Jan 26 21:48:44 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/include/sys/parsestreams.h,v 3.10 1994/01/23 17:23:12 kardel Exp - * -! * parsestreams.h,v 3.10 1994/01/23 17:23:12 kardel Exp - * - * Copyright (c) 1989,1990,1991,1992,1993,1994 - * Frank Kardel Friedrich-Alexander Universitaet Erlangen-Nuernberg ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/include/sys/parsestreams.h,v 3.11 1994/01/25 19:04:30 kardel Exp - * -! * parsestreams.h,v 3.11 1994/01/25 19:04:30 kardel Exp - * - * Copyright (c) 1989,1990,1991,1992,1993,1994 - * Frank Kardel Friedrich-Alexander Universitaet Erlangen-Nuernberg -*************** -*** 13,19 **** - */ - - #if !(defined(lint) || defined(__GNUC__)) -! static char parse77hrcsid[]="parsestreams.h,v 3.10 1994/01/23 17:23:12 kardel Exp"; - #endif - - #undef PARSEKERNEL ---- 13,19 ---- - */ - - #if !(defined(lint) || defined(__GNUC__)) -! static char parse77hrcsid[]="parsestreams.h,v 3.11 1994/01/25 19:04:30 kardel Exp"; - #endif - - #undef PARSEKERNEL -diff -c kernel/Makefile.tmpl:1.1.1.3 kernel/Makefile.tmpl:3.6 -*** kernel/Makefile.tmpl:1.1.1.3 Wed Jan 26 21:48:49 1994 ---- kernel/Makefile.tmpl Wed Jan 26 21:48:49 1994 -*************** -*** 1,7 **** - # -! # /src/NTP/REPOSITORY/v3/kernel/Makefile.tmpl,v 3.5 1994/01/23 17:37:53 kardel Exp - # -- # - # parse routine that could be used in two places - # - COMPILER= cc ---- 1,6 ---- - # -! # /src/NTP/REPOSITORY/v3/kernel/Makefile.tmpl,v 3.6 1994/01/25 19:04:35 kardel Exp - # - # parse routine that could be used in two places - # - COMPILER= cc -diff -c lib/systime.c:1.1.1.10 lib/systime.c:1.7 -*** lib/systime.c:1.1.1.10 Wed Jan 26 21:50:00 1994 ---- lib/systime.c Wed Jan 26 21:50:00 1994 -*************** -*** 238,273 **** - #endif - } - -- sys_clock_offset.l_ui = offset_i; -- sys_clock_offset.l_uf = offset_f; -- - if (adjtime(&adjtv, &oadjtv) < 0) { - syslog(LOG_ERR, "Can't do time adjustment: %m"); - rval = 0; -! } else - rval = 1; - - #ifdef DEBUGRS6000 -! syslog(LOG_ERR, "adj_systime(%s): offset = %s%s\n", -! mfptoa((adj<0?-1:0), adj, 9), isneg?"-":"", -! umfptoa(offset_i, offset_f, 9)); -! syslog(LOG_ERR, "%d %d %d %d\n", (int) adjtv.tv_sec, -! (int) adjtv.tv_usec, (int) oadjtv.tv_sec, (int) -! oadjtv.tv_usec); - #endif /* DEBUGRS6000 */ - -! if ((oadjtv.tv_sec != 0 || oadjtv.tv_usec != 0) && (max_no_complete > 0)) { -! sTVTOTS(&oadjtv, &oadjts); -! L_ADD(&sys_clock_offset, &oadjts); -! syslog(LOG_WARNING, "Previous time adjustment didn't complete"); - #ifdef DEBUG -! if (debug > 4) -! syslog(LOG_DEBUG, -! "Previous adjtime() incomplete, residual = %s\n", -! tvtoa(&oadjtv)); - #endif -! if (--max_no_complete == 0) syslog(LOG_WARNING, -! "*** No more 'Prev time adj didn't complete'"); - } - return(rval); - } ---- 238,277 ---- - #endif - } - - if (adjtime(&adjtv, &oadjtv) < 0) { - syslog(LOG_ERR, "Can't do time adjustment: %m"); - rval = 0; -! } else { -! sys_clock_offset.l_ui = offset_i; -! sys_clock_offset.l_uf = offset_f; - rval = 1; - - #ifdef DEBUGRS6000 -! syslog(LOG_ERR, "adj_systime(%s): offset = %s%s\n", -! mfptoa((adj<0?-1:0), adj, 9), isneg?"-":"", -! umfptoa(offset_i, offset_f, 9)); -! syslog(LOG_ERR, "%d %d %d %d\n", (int) adjtv.tv_sec, -! (int) adjtv.tv_usec, (int) oadjtv.tv_sec, (int) -! oadjtv.tv_usec); - #endif /* DEBUGRS6000 */ - -! if (oadjtv.tv_sec != 0 || oadjtv.tv_usec != 0) { -! sTVTOTS(&oadjtv, &oadjts); -! L_ADD(&sys_clock_offset, &oadjts); -! if (max_no_complete > 0) { -! syslog(LOG_WARNING, -! "Previous time adjustment didn't complete"); - #ifdef DEBUG -! if (debug > 4) -! syslog(LOG_DEBUG, -! "Previous adjtime() incomplete, residual = %s\n", -! tvtoa(&oadjtv)); - #endif -! if (--max_no_complete == 0) -! syslog(LOG_WARNING, -! "*** No more 'Prev time adj didn't complete'"); -! } -! } - } - return(rval); - } -diff -c ntpq/ntpq.c:1.1.1.20 ntpq/ntpq.c:3.20 -*** ntpq/ntpq.c:1.1.1.20 Wed Jan 26 21:50:59 1994 ---- ntpq/ntpq.c Wed Jan 26 21:50:59 1994 -*************** -*** 2577,2582 **** ---- 2577,2583 ---- - register char *cp; - register char *np; - register char *cpend; -+ int quoted = 0; - static char name[MAXVARLEN]; - static char value[MAXVALLEN]; - -*************** -*** 2623,2630 **** - while (cp < cpend && (isspace(*cp) && *cp != '\r' && *cp != '\n')) - cp++; - np = value; -! while (cp < cpend && *cp != ',') -! *np++ = *cp++; - while (np > value && isspace(*(np-1))) - np--; - *np = '\0'; ---- 2624,2634 ---- - while (cp < cpend && (isspace(*cp) && *cp != '\r' && *cp != '\n')) - cp++; - np = value; -! while (cp < cpend && ((*cp != ',') || quoted)) -! { -! quoted ^= ((*np++ = *cp++) == '"'); -! } -! - while (np > value && isspace(*(np-1))) - np--; - *np = '\0'; -diff -c parse/Makefile.kernel:1.1.1.2 parse/Makefile.kernel:3.8 -*** parse/Makefile.kernel:1.1.1.2 Wed Jan 26 21:51:11 1994 ---- parse/Makefile.kernel Wed Jan 26 21:51:11 1994 -*************** -*** 30,46 **** - ld -r -o parse parsesolaris.o libparse_kernel.a ../lib/libntp.a - @echo "--- Install 'parse' in /kernel/strmod for automatic loading" - -! mparsestreams.o: parsestreams.c microtime.o ../lib/libntp.a libparse_kernel.a ../include/parse.h ../include/sys/parsestreams.h - cc -c -DMICROTIME $(DEFS) -I../include parsestreams.c - ld -r -o $@ parsestreams.o ../lib/libntp.a libparse_kernel.a \ - microtime.o - rm -f parsestreams.o -! @echo "--- You may load mparsestreams.o via 'modload mparsestreams.o' into the kernel" - -! parsestreams.o: parsestreams.c ../lib/libntp.a libparse_kernel.a ../include/parse.h ../include/sys/parsestreams.h - cc -c $(DEFS) -I../include parsestreams.c -! ld -r -o $@ $@ ../lib/libntp.a libparse_kernel.a -! @echo "--- You may load parsestreams.o via 'modload parsestreams.o' into the kernel" - - microtime.o: $(MICROTIME) assym.s - cc -E -I. $(MICROTIME) | sed -e '/\.global _uniqtime/d' > $@.i ---- 30,51 ---- - ld -r -o parse parsesolaris.o libparse_kernel.a ../lib/libntp.a - @echo "--- Install 'parse' in /kernel/strmod for automatic loading" - -! mparsestreams.o: mparsestreams.o.$(KARCH) -! @echo "--- You may load mparsestreams.o.$(KARCH) via 'modload mparsestreams.o.$(KARCH)' into the kernel" -! -! mparsestreams.o.$(KARCH): parsestreams.c microtime.o ../lib/libntp.a libparse_kernel.a ../include/parse.h ../include/sys/parsestreams.h - cc -c -DMICROTIME $(DEFS) -I../include parsestreams.c - ld -r -o $@ parsestreams.o ../lib/libntp.a libparse_kernel.a \ - microtime.o - rm -f parsestreams.o -! -! parsestreams.o: parsestreams.o.$(KARCH) -! @echo "--- You may load parsestreams.o.$(KARCH) via 'modload parsestreams.o.$(KARCH)' into the kernel" - -! parsestreams.o.$(KARCH): parsestreams.c ../lib/libntp.a libparse_kernel.a ../include/parse.h ../include/sys/parsestreams.h - cc -c $(DEFS) -I../include parsestreams.c -! ld -r -o $@ parsestreams.o ../lib/libntp.a libparse_kernel.a -! rm -f parsestreams.o - - microtime.o: $(MICROTIME) assym.s - cc -E -I. $(MICROTIME) | sed -e '/\.global _uniqtime/d' > $@.i -diff -c parse/clk_dcf7000.c:1.1.1.7 parse/clk_dcf7000.c:3.10 -*** parse/clk_dcf7000.c:1.1.1.7 Wed Jan 26 21:51:16 1994 ---- parse/clk_dcf7000.c Wed Jan 26 21:51:17 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_DCF7000) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_dcf7000.c,v 3.9 1994/01/23 17:21:51 kardel Exp - * -! * clk_dcf7000.c,v 3.9 1994/01/23 17:21:51 kardel Exp - * - * ELV DCF7000 module - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_DCF7000) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_dcf7000.c,v 3.10 1994/01/25 19:05:07 kardel Exp - * -! * clk_dcf7000.c,v 3.10 1994/01/25 19:05:07 kardel Exp - * - * ELV DCF7000 module - * -diff -c parse/clk_meinberg.c:1.1.1.7 parse/clk_meinberg.c:3.11 -*** parse/clk_meinberg.c:1.1.1.7 Wed Jan 26 21:51:17 1994 ---- parse/clk_meinberg.c Wed Jan 26 21:51:18 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_MEINBERG) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_meinberg.c,v 3.10 1994/01/23 17:21:54 kardel Exp - * -! * clk_meinberg.c,v 3.10 1994/01/23 17:21:54 kardel Exp - * - * Meinberg clock support - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_MEINBERG) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_meinberg.c,v 3.11 1994/01/25 19:05:10 kardel Exp - * -! * clk_meinberg.c,v 3.11 1994/01/25 19:05:10 kardel Exp - * - * Meinberg clock support - * -*************** -*** 414,419 **** ---- 414,422 ---- - * History: - * - * clk_meinberg.c,v -+ * Revision 3.11 1994/01/25 19:05:10 kardel -+ * 94/01/23 reconcilation -+ * - * Revision 3.10 1994/01/23 17:21:54 kardel - * 1994 reconcilation - * -diff -c parse/clk_rawdcf.c:1.1.1.7 parse/clk_rawdcf.c:3.9 -*** parse/clk_rawdcf.c:1.1.1.7 Wed Jan 26 21:51:19 1994 ---- parse/clk_rawdcf.c Wed Jan 26 21:51:19 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_RAWDCF) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_rawdcf.c,v 3.8 1994/01/22 11:24:11 kardel Exp - * -! * clk_rawdcf.c,v 3.8 1994/01/22 11:24:11 kardel Exp - * - * Raw DCF77 pulse clock support - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_RAWDCF) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_rawdcf.c,v 3.9 1994/01/25 19:05:12 kardel Exp - * -! * clk_rawdcf.c,v 3.9 1994/01/25 19:05:12 kardel Exp - * - * Raw DCF77 pulse clock support - * -*************** -*** 529,534 **** ---- 529,537 ---- - * History: - * - * clk_rawdcf.c,v -+ * Revision 3.9 1994/01/25 19:05:12 kardel -+ * 94/01/23 reconcilation -+ * - * Revision 3.8 1994/01/22 11:24:11 kardel - * fixed PPS handling - * -diff -c parse/clk_schmid.c:1.1.1.7 parse/clk_schmid.c:3.10 -*** parse/clk_schmid.c:1.1.1.7 Wed Jan 26 21:51:20 1994 ---- parse/clk_schmid.c Wed Jan 26 21:51:20 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_SCHMID) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_schmid.c,v 3.9 1994/01/23 17:21:56 kardel Exp - * -! * clk_schmid.c,v 3.9 1994/01/23 17:21:56 kardel Exp - * - * Schmid clock support - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_SCHMID) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_schmid.c,v 3.10 1994/01/25 19:05:15 kardel Exp - * -! * clk_schmid.c,v 3.10 1994/01/25 19:05:15 kardel Exp - * - * Schmid clock support - * -*************** -*** 168,173 **** ---- 168,176 ---- - * History: - * - * clk_schmid.c,v -+ * Revision 3.10 1994/01/25 19:05:15 kardel -+ * 94/01/23 reconcilation -+ * - * Revision 3.9 1994/01/23 17:21:56 kardel - * 1994 reconcilation - * -diff -c parse/clk_trimble.c:1.1.1.2 parse/clk_trimble.c:3.7 -*** parse/clk_trimble.c:1.1.1.2 Wed Jan 26 21:51:21 1994 ---- parse/clk_trimble.c Wed Jan 26 21:51:21 1994 -*************** -*** 1,6 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_TRIMSV6) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_trimble.c,v 3.6 1993/10/30 09:44:45 kardel Exp - * - * Trimble SV6 clock support - */ ---- 1,6 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) && defined(CLOCK_TRIMSV6) - /* -! * /src/NTP/REPOSITORY/v3/parse/clk_trimble.c,v 3.7 1994/01/25 19:05:17 kardel Exp - * - * Trimble SV6 clock support - */ -*************** -*** 106,111 **** ---- 106,114 ---- - * History: - * - * clk_trimble.c,v -+ * Revision 3.7 1994/01/25 19:05:17 kardel -+ * 94/01/23 reconcilation -+ * - * Revision 3.6 1993/10/30 09:44:45 kardel - * conditional compilation flag cleanup - * -diff -c parse/parse.c:1.1.1.7 parse/parse.c:3.19 -*** parse/parse.c:1.1.1.7 Wed Jan 26 21:51:24 1994 ---- parse/parse.c Wed Jan 26 21:51:24 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse.c,v 3.18 1994/01/23 17:21:59 kardel Exp - * -! * parse.c,v 3.18 1994/01/23 17:21:59 kardel Exp - * - * Parser module for reference clock - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse.c,v 3.19 1994/01/25 19:05:20 kardel Exp - * -! * parse.c,v 3.19 1994/01/25 19:05:20 kardel Exp - * - * Parser module for reference clock - * -*************** -*** 22,28 **** - */ - - #if !(defined(lint) || defined(__GNUC__)) -! static char rcsid[] = "parse.c,v 3.18 1994/01/23 17:21:59 kardel Exp"; - #endif - - #include "sys/types.h" ---- 22,28 ---- - */ - - #if !(defined(lint) || defined(__GNUC__)) -! static char rcsid[] = "parse.c,v 3.19 1994/01/25 19:05:20 kardel Exp"; - #endif - - #include "sys/types.h" -*************** -*** 1139,1144 **** ---- 1139,1147 ---- - * History: - * - * parse.c,v -+ * Revision 3.19 1994/01/25 19:05:20 kardel -+ * 94/01/23 reconcilation -+ * - * Revision 3.18 1994/01/23 17:21:59 kardel - * 1994 reconcilation - * -diff -c parse/parse_conf.c:1.1.1.7 parse/parse_conf.c:3.13 -*** parse/parse_conf.c:1.1.1.7 Wed Jan 26 21:51:25 1994 ---- parse/parse_conf.c Wed Jan 26 21:51:25 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse_conf.c,v 3.12 1994/01/23 17:22:02 kardel Exp - * -! * parse_conf.c,v 3.12 1994/01/23 17:22:02 kardel Exp - * - * Parser configuration module for reference clocks - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse_conf.c,v 3.13 1994/01/25 19:05:23 kardel Exp - * -! * parse_conf.c,v 3.13 1994/01/25 19:05:23 kardel Exp - * - * Parser configuration module for reference clocks - * -*************** -*** 81,86 **** ---- 81,89 ---- - * History: - * - * parse_conf.c,v -+ * Revision 3.13 1994/01/25 19:05:23 kardel -+ * 94/01/23 reconcilation -+ * - * Revision 3.12 1994/01/23 17:22:02 kardel - * 1994 reconcilation - * -diff -c parse/parsesolaris.c:1.1.1.4 parse/parsesolaris.c:3.9 -*** parse/parsesolaris.c:1.1.1.4 Wed Jan 26 21:51:26 1994 ---- parse/parsesolaris.c Wed Jan 26 21:51:27 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/parse/parsesolaris.c,v 3.8 1994/01/23 17:22:04 kardel Exp - * -! * parsesolaris.c,v 3.8 1994/01/23 17:22:04 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS5.x - not fully tested - buyer beware ! - OS KILLERS may still be ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/parsesolaris.c,v 3.9 1994/01/25 19:05:26 kardel Exp - * -! * parsesolaris.c,v 3.9 1994/01/25 19:05:26 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS5.x - not fully tested - buyer beware ! - OS KILLERS may still be -*************** -*** 19,25 **** - */ - - #ifndef lint -! static char rcsid[] = "parsesolaris.c,v 3.8 1994/01/23 17:22:04 kardel Exp"; - #endif - - /* ---- 19,25 ---- - */ - - #ifndef lint -! static char rcsid[] = "parsesolaris.c,v 3.9 1994/01/25 19:05:26 kardel Exp"; - #endif - - /* -*************** -*** 139,145 **** - /*ARGSUSED*/ - int _init(void) - { -! static char revision[] = "3.8"; - char *s, *S, *t; - - /* ---- 139,145 ---- - /*ARGSUSED*/ - int _init(void) - { -! static char revision[] = "3.9"; - char *s, *S, *t; - - /* -*************** -*** 1179,1184 **** ---- 1179,1187 ---- - * History: - * - * parsesolaris.c,v -+ * Revision 3.9 1994/01/25 19:05:26 kardel -+ * 94/01/23 reconcilation -+ * - * Revision 3.8 1994/01/23 17:22:04 kardel - * 1994 reconcilation - * -diff -c parse/parsestreams.c:1.1.1.6 parse/parsestreams.c:3.12 -*** parse/parsestreams.c:1.1.1.6 Wed Jan 26 21:51:28 1994 ---- parse/parsestreams.c Wed Jan 26 21:51:28 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/parse/parsestreams.c,v 3.11 1994/01/23 17:22:07 kardel Exp - * -! * parsestreams.c,v 3.11 1994/01/23 17:22:07 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS4.x) ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/parsestreams.c,v 3.12 1994/01/25 19:05:30 kardel Exp - * -! * parsestreams.c,v 3.12 1994/01/25 19:05:30 kardel Exp - * - * STREAMS module for reference clocks - * (SunOS4.x) -*************** -*** 16,22 **** - */ - - #ifndef lint -! static char rcsid[] = "parsestreams.c,v 3.11 1994/01/23 17:22:07 kardel Exp"; - #endif - - #include "sys/types.h" ---- 16,22 ---- - */ - - #ifndef lint -! static char rcsid[] = "parsestreams.c,v 3.12 1994/01/25 19:05:30 kardel Exp"; - #endif - - #include "sys/types.h" -*************** -*** 195,201 **** - } - else - { -! static char revision[] = "3.11"; - char *s, *S, *t; - - strncpy(ifm->f_name, mname, FMNAMESZ); ---- 195,201 ---- - } - else - { -! static char revision[] = "3.12"; - char *s, *S, *t; - - strncpy(ifm->f_name, mname, FMNAMESZ); -*************** -*** 1258,1263 **** ---- 1258,1266 ---- - * History: - * - * parsestreams.c,v -+ * Revision 3.12 1994/01/25 19:05:30 kardel -+ * 94/01/23 reconcilation -+ * - * Revision 3.11 1994/01/23 17:22:07 kardel - * 1994 reconcilation - * -diff -c parse/util/Makefile.tmpl:1.1.1.2 parse/util/Makefile.tmpl:3.12 -*** parse/util/Makefile.tmpl:1.1.1.2 Wed Jan 26 21:51:31 1994 ---- parse/util/Makefile.tmpl Wed Jan 26 21:51:31 1994 -*************** -*** 1,5 **** - # -! # /src/NTP/REPOSITORY/v3/parse/util/Makefile.tmpl,v 3.11 1993/11/17 13:34:12 kardel Exp - # - COMPILER= cc - DEFS= ---- 1,5 ---- - # -! # /src/NTP/REPOSITORY/v3/parse/util/Makefile.tmpl,v 3.12 1994/01/25 19:05:39 kardel Exp - # - COMPILER= cc - DEFS= -diff -c parse/util/dcfd.c:1.1.1.4 parse/util/dcfd.c:3.15 -*** parse/util/dcfd.c:1.1.1.4 Wed Jan 26 21:51:33 1994 ---- parse/util/dcfd.c Wed Jan 26 21:51:33 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/parse/util/dcfd.c,v 3.13 1994/01/23 17:22:15 kardel Exp - * -! * dcfd.c,v 3.13 1994/01/23 17:22:15 kardel Exp - * - * DCF77 100/200ms pulse synchronisation daemon program (via 50Baud serial line) - * ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/util/dcfd.c,v 3.15 1994/01/25 19:05:42 kardel Exp - * -! * dcfd.c,v 3.15 1994/01/25 19:05:42 kardel Exp - * - * DCF77 100/200ms pulse synchronisation daemon program (via 50Baud serial line) - * -*************** -*** 733,740 **** - * assume that we convert timecode within the unix/UTC epoch - - * prolonges validity of 2 digit years - */ -! if (clock->year < 1900) -! clock->year += 100; /* XXX this will do it till <2092 */ - - /* - * must have been a really negative year code - drop it ---- 733,740 ---- - * assume that we convert timecode within the unix/UTC epoch - - * prolonges validity of 2 digit years - */ -! if (clock->year < 1994) -! clock->year += 100; /* XXX this will do it till <2094 */ - - /* - * must have been a really negative year code - drop it -diff -c parse/util/testdcf.c:1.1.1.5 parse/util/testdcf.c:3.9 -*** parse/util/testdcf.c:1.1.1.5 Wed Jan 26 21:51:35 1994 ---- parse/util/testdcf.c Wed Jan 26 21:51:35 1994 -*************** -*** 1,7 **** - /* -! * /src/NTP/REPOSITORY/v3/parse/util/testdcf.c,v 3.8 1994/01/23 17:22:20 kardel Exp - * -! * testdcf.c,v 3.8 1994/01/23 17:22:20 kardel Exp - * - * simple DCF77 100/200ms pulse test program (via 50Baud serial line) - * ---- 1,7 ---- - /* -! * /src/NTP/REPOSITORY/v3/parse/util/testdcf.c,v 3.9 1994/01/25 19:05:45 kardel Exp - * -! * testdcf.c,v 3.9 1994/01/25 19:05:45 kardel Exp - * - * simple DCF77 100/200ms pulse test program (via 50Baud serial line) - * -diff -c scripts/Guess.sh:1.1.1.6 scripts/Guess.sh:1.11 -*** scripts/Guess.sh:1.1.1.6 Wed Jan 26 21:52:11 1994 ---- scripts/Guess.sh Wed Jan 26 21:52:12 1994 -*************** -*** 19,25 **** - sinix-m) - guess=sinix-m - ;; -! sunos) case "$3" in - 4.1*) guess="sunos4" ;; - 5.1) guess="sunos5.1" ;; - 5.*) guess="sunos5.2" ;; ---- 19,26 ---- - sinix-m) - guess=sinix-m - ;; -! sunos|solaris) -! case "$3" in - 4.1*) guess="sunos4" ;; - 5.1) guess="sunos5.1" ;; - 5.*) guess="sunos5.2" ;; -*************** -*** 59,65 **** - guess="netbsd" - ;; - # now the fun starts - there are vendors that -! # do not really identify their OS un uname. - # Fine - now I look at our version and hope - # that nobody else had this marvellous idea. - # I am not willing to mention the vendor explicitly ---- 60,66 ---- - guess="netbsd" - ;; - # now the fun starts - there are vendors that -! # do not really identify their OS in uname. - # Fine - now I look at our version and hope - # that nobody else had this marvellous idea. - # I am not willing to mention the vendor explicitly -diff -c xntpd/ntp_config.c:1.1.1.18 xntpd/ntp_config.c:3.21 -*** xntpd/ntp_config.c:1.1.1.18 Wed Jan 26 21:52:59 1994 ---- xntpd/ntp_config.c Wed Jan 26 21:53:00 1994 -*************** -*** 93,98 **** ---- 93,99 ---- - #define CONFIG_PPS 24 - #define CONFIG_PIDFILE 25 - #define CONFIG_LOGFILE 26 -+ #define CONFIG_SETVAR 27 - - #define CONF_MOD_VERSION 1 - #define CONF_MOD_KEY 2 -*************** -*** 177,182 **** ---- 178,184 ---- - { "statistics", CONFIG_STATISTICS }, - { "pidfile", CONFIG_PIDFILE }, - { "logfile", CONFIG_LOGFILE }, -+ { "setvar", CONFIG_SETVAR }, - { "", CONFIG_UNKNOWN } - }; - -*************** -*** 316,322 **** - #endif - extern char *FindConfig(); - char *progname; -! static char *xntp_options = "abc:de:f:k:l:p:r:s:t:"; - - static int gettokens P((FILE *, char *, char **, int *)); - static int matchkey P((char *, struct keyword *)); ---- 318,324 ---- - #endif - extern char *FindConfig(); - char *progname; -! static char *xntp_options = "abc:de:f:k:l:p:r:s:t:v:V:"; - - static int gettokens P((FILE *, char *, char **, int *)); - static int matchkey P((char *, struct keyword *)); -*************** -*** 374,381 **** - } - - if (errflg || optind != argc) { -! (void) fprintf(stderr, -! "usage: %s [ -bd ] [ -c config_file ]\n", progname); - exit(2); - } - optind = 0; /* reset optind to restart getopt_l */ ---- 376,385 ---- - } - - if (errflg || optind != argc) { -! (void) fprintf(stderr, "usage: %s [ -abd ] [ -c config_file ] [ -e encryption delay ]\n", progname); -! (void) fprintf(stderr, "\t\t[ -f frequency file ] [ -k key file ] [ -l log file ]\n"); -! (void) fprintf(stderr, "\t\t[ -p pid file ] [ -r broadcast delay ] [ -s status directory ]\n"); -! (void) fprintf(stderr, "\t\t[ -t trusted key ] [ -v sys variable ] [ -V default sys variable ]\n"); - exit(2); - } - optind = 0; /* reset optind to restart getopt_l */ -*************** -*** 428,433 **** ---- 432,438 ---- - char keyfile[MAXFILENAME]; - extern int optind; - extern char *optarg; -+ extern char *Version; - extern U_LONG info_auth_keyid; - FILEGEN *filegen; - -*************** -*** 443,448 **** ---- 448,459 ---- - res_fp = NULL; - have_resolver = have_keyfile = 0; - -+ /* -+ * install a non default variable with this daemon version -+ */ -+ (void) sprintf(line, "daemon_version=\"%s\"", Version); -+ set_sys_var(line, strlen(line)+1, RO); -+ - #ifdef RESOLVE_INTERNAL - resolve_internal = 1; - #endif -*************** -*** 546,551 **** ---- 557,566 ---- - } while (0); - break; - -+ case 'v': -+ case 'V': -+ set_sys_var(optarg, strlen(optarg)+1, RW | ((c == 'V') ? DEF : 0)); -+ break; - - default: - errflg++; -*************** -*** 1386,1392 **** - (u_char)peerkey, (u_char)peerflags); - } - break; -! - } - } - (void) fclose(fp); ---- 1401,1419 ---- - (u_char)peerkey, (u_char)peerflags); - } - break; -! -! case CONFIG_SETVAR: -! if (ntokens < 2) -! { -! syslog(LOG_ERR, -! "no value for setvar command - line ignored"); -! } -! else -! { -! set_sys_var(tokens[1], strlen(tokens[1])+1, RW | -! ((((ntokens > 2) && !strcmp(tokens[2], "default"))) ? DEF : 0)); -! } -! break; - } - } - (void) fclose(fp); -*************** -*** 1445,1450 **** ---- 1472,1478 ---- - register char *cp; - register int eol; - register int ntok; -+ register int quoted = 0; - - /* - * Find start of first token -*************** -*** 1469,1476 **** - ntok = 0; - while (!eol) { - tokenlist[ntok++] = cp; -! while (!ISEOL(*cp) && !ISSPACE(*cp)) -! cp++; - if (ISEOL(*cp)) { - *cp = '\0'; - eol = 1; ---- 1497,1505 ---- - ntok = 0; - while (!eol) { - tokenlist[ntok++] = cp; -! while (!ISEOL(*cp) && (!ISSPACE(*cp) || quoted)) -! quoted ^= (*cp++ == '"'); -! - if (ISEOL(*cp)) { - *cp = '\0'; - eol = 1; -diff -c xntpd/ntp_control.c:1.1.1.15 xntpd/ntp_control.c:3.21 -*** xntpd/ntp_control.c:1.1.1.15 Wed Jan 26 21:53:01 1994 ---- xntpd/ntp_control.c Wed Jan 26 21:53:02 1994 -*************** -*** 1,4 **** -! /* ntp_control.c,v 3.1 1993/07/06 01:11:13 jbj Exp - * ntp_control.c - respond to control messages and send async traps - */ - #include <stdio.h> ---- 1,4 ---- -! /* - * ntp_control.c - respond to control messages and send async traps - */ - #include <stdio.h> -*************** -*** 61,66 **** ---- 61,67 ---- - static void ctl_putclock P((int, struct refclockstat *, int)); - #endif /* REFCLOCK */ - static struct ctl_var *ctl_getitem P((struct ctl_var *, char **)); -+ static unsigned long count_var P((struct ctl_var *)); - static void control_unspec P((struct recvbuf *, int)); - static void read_status P((struct recvbuf *, int)); - static void read_variables P((struct recvbuf *, int)); -*************** -*** 83,113 **** - { NO_REQUEST, 0 } - }; - -- -- /* -- * Structure for translation tables between internal system -- * variable indices and text format. -- */ -- struct ctl_var { -- u_short code; -- u_short flags; -- char *text; -- }; -- - /* -- * Flag values -- */ -- #define CAN_READ 0x1 -- #define CAN_WRITE 0x2 -- #define PADDING 0x80 -- #define EOV 0x40 -- -- #define RO (CAN_READ) -- #define WO (CAN_WRITE) -- #define RW (CAN_READ|CAN_WRITE) -- -- -- /* - * System variable values. The array can be indexed by - * the variable index to find the textual name. - */ ---- 84,90 ---- -*************** -*** 132,141 **** - { CS_SYSTEM, RO, "system" }, /* 17 */ - { CS_KEYID, RO, "keyid" }, /* 18 */ - { CS_REFSKEW, RO, "refskew" }, /* 19 */ -! { CS_VERSION, RO, "daemon_version" }, /* 20 */ - { 0, EOV, "" } - }; - - /* - * System variables we print by default (in fuzzball order, more-or-less) - */ ---- 109,120 ---- - { CS_SYSTEM, RO, "system" }, /* 17 */ - { CS_KEYID, RO, "keyid" }, /* 18 */ - { CS_REFSKEW, RO, "refskew" }, /* 19 */ -! { CS_VARLIST, RO, "sys_var_list" },/* 20 */ - { 0, EOV, "" } - }; - -+ static struct ctl_var *ext_sys_var = (struct ctl_var *)0; -+ - /* - * System variables we print by default (in fuzzball order, more-or-less) - */ -*************** -*** 153,159 **** - CS_OFFSET, - CS_DRIFT, - CS_COMPLIANCE, -- CS_VERSION, - 0 - }; - ---- 132,137 ---- -*************** -*** 197,202 **** ---- 175,181 ---- - { CP_SENT, RO, "sent" }, /* 32 */ - { CP_FILTERROR, RO, "filterror" }, /* 33 */ - { CP_FLASH, RO, "flash" }, /* 34 */ -+ { CP_VARLIST, RO, "peer_var_list" }, /* 35 */ - { 0, EOV, "" } - }; - -*************** -*** 255,260 **** ---- 234,240 ---- - { CC_FUDGEVAL2, RO, "fudgeval2" }, /* 10 */ - { CC_FLAGS, RO, "flags" }, /* 11 */ - { CC_DEVICE, RO, "device" }, /* 12 */ -+ { CC_VARLIST, RO, "clock_var_list" },/* 13 */ - { 0, EOV, "" } - }; - -*************** -*** 283,290 **** ---- 263,277 ---- - /* - * System and processor definitions. These will change for the gizmo board. - */ -+ #ifndef STR_SYSTEM - #define STR_SYSTEM "UNIX" -+ #endif -+ #ifndef STR_PROCESSOR - #define STR_PROCESSOR "unknown" -+ #endif -+ -+ static char str_system[] = STR_SYSTEM; -+ static char str_processor[] = STR_PROCESSOR; - - /* - * Trap structures. We only allow a few of these, and send -*************** -*** 1221,1227 **** - ctl_putsys(varid) - int varid; - { -- extern char *Version; - l_fp tmp; - - switch (varid) { ---- 1208,1213 ---- -*************** -*** 1280,1291 **** - ctl_putuint(sys_var[CS_LEAPWARNING].text, (U_LONG)leap_warning); - break; - case CS_PROCESSOR: -! ctl_putstr(sys_var[CS_PROCESSOR].text, STR_PROCESSOR, -! sizeof(STR_PROCESSOR) - 1); - break; - case CS_SYSTEM: -! ctl_putstr(sys_var[CS_SYSTEM].text, STR_SYSTEM, -! sizeof(STR_SYSTEM) - 1); - break; - case CS_KEYID: - ctl_putuint(sys_var[CS_KEYID].text, (U_LONG)0); ---- 1266,1277 ---- - ctl_putuint(sys_var[CS_LEAPWARNING].text, (U_LONG)leap_warning); - break; - case CS_PROCESSOR: -! ctl_putstr(sys_var[CS_PROCESSOR].text, str_processor, -! sizeof(str_processor) - 1); - break; - case CS_SYSTEM: -! ctl_putstr(sys_var[CS_SYSTEM].text, str_system, -! sizeof(str_system) - 1); - break; - case CS_KEYID: - ctl_putuint(sys_var[CS_KEYID].text, (U_LONG)0); -*************** -*** 1293,1301 **** - case CS_REFSKEW: - ctl_putlfp(sys_var[CS_REFSKEW].text, &sys_refskew); - break; -! case CS_VERSION: -! ctl_putstr(sys_var[CS_VERSION].text, Version, -! strlen(Version)); - break; - } - } ---- 1279,1338 ---- - case CS_REFSKEW: - ctl_putlfp(sys_var[CS_REFSKEW].text, &sys_refskew); - break; -! case CS_VARLIST: -! { -! char buf[CTL_MAX_DATA_LEN]; -! register char *s, *ss, *t, *be; -! register int i; -! register struct ctl_var *k; -! -! s = buf; -! be = buf + sizeof(buf) - strlen(sys_var[CS_VARLIST].text) - 4; -! if (s > be) -! break; /* really long var name 8-( - Killer */ -! -! strcpy(s, sys_var[CS_VARLIST].text); -! strcat(s, "=\""); -! s += strlen(s); -! t = s; -! -! for (k = sys_var; !(k->flags &EOV); k++) -! { -! i = strlen(k->text); -! if (s+i+1 >= be) -! break; -! if (s != t) -! *s++ = ','; -! strcpy(s, k->text); -! s += i; -! } -! -! for (k = ext_sys_var; k && !(k->flags &EOV); k++) -! { -! ss = k->text; -! if (!ss) -! continue; -! -! while (*ss && *ss != '=') -! ss++; -! -! i = ss - k->text; -! if (s+i+1 >= be) -! break; -! if (s != t) -! *s++ = ','; -! strncpy(s, k->text, i); -! s += i; -! } -! -! if (s+2 >= be) -! break; -! -! *s++ = '"'; -! *s = '\0'; -! -! ctl_putdata(buf, s - buf, 0); -! } - break; - } - } -*************** -*** 1428,1433 **** ---- 1465,1507 ---- - case CP_SENT: - ctl_putuint(peer_var[CP_SENT].text, peer->sent); - break; -+ case CP_VARLIST: -+ { -+ char buf[CTL_MAX_DATA_LEN]; -+ register char *s, *t, *be; -+ register int i; -+ register struct ctl_var *k; -+ -+ s = buf; -+ be = buf + sizeof(buf) - strlen(peer_var[CP_VARLIST].text) - 4; -+ if (s > be) -+ break; /* really long var name 8-( - Killer */ -+ -+ strcpy(s, peer_var[CP_VARLIST].text); -+ strcat(s, "=\""); -+ s += strlen(s); -+ t = s; -+ -+ for (k = peer_var; !(k->flags &EOV); k++) -+ { -+ i = strlen(k->text); -+ if (s+i+1 >= be) -+ break; -+ if (s != t) -+ *s++ = ','; -+ strcpy(s, k->text); -+ s += i; -+ } -+ -+ if (s+2 >= be) -+ break; -+ -+ *s++ = '"'; -+ *s = '\0'; -+ -+ ctl_putdata(buf, s - buf, 0); -+ } -+ break; - } - } - -*************** -*** 1501,1506 **** ---- 1575,1636 ---- - strlen(clock->clockdesc)); - } - break; -+ case CC_VARLIST: -+ { -+ char buf[CTL_MAX_DATA_LEN]; -+ register char *s, *ss, *t, *be; -+ register int i; -+ register struct ctl_var *k; -+ -+ s = buf; -+ be = buf + sizeof(buf) - strlen(clock_var[CC_VARLIST].text) - 4; -+ if (s > be) -+ break; /* really long var name 8-( - Killer */ -+ -+ strcpy(s, clock_var[CC_VARLIST].text); -+ strcat(s, "=\""); -+ s += strlen(s); -+ t = s; -+ -+ for (k = clock_var; !(k->flags &EOV); k++) -+ { -+ i = strlen(k->text); -+ if (s+i+1 >= be) -+ break; -+ if (s != t) -+ *s++ = ','; -+ strcpy(s, k->text); -+ s += i; -+ } -+ -+ for (k = clock->kv_list; k && !(k->flags &EOV); k++) -+ { -+ ss = k->text; -+ if (!ss) -+ continue; -+ -+ while (*ss && *ss != '=') -+ ss++; -+ -+ i = ss - k->text; -+ if (s+i+1 >= be) -+ break; -+ if (s != t) -+ *s++ = ','; -+ strncpy(s, k->text, i); -+ s += i; -+ *s = '\0'; -+ } -+ -+ if (s+2 >= be) -+ break; -+ -+ *s++ = '"'; -+ *s = '\0'; -+ -+ ctl_putdata(buf, s - buf, 0); -+ } -+ break; - } - } - #endif -*************** -*** 1517,1522 **** ---- 1647,1653 ---- - { - register struct ctl_var *v; - register char *cp, *tp; -+ static struct ctl_var eol = { 0, EOV, }; - static char buf[128]; - - /* -*************** -*** 1528,1533 **** ---- 1659,1667 ---- - - if (reqpt >= reqend) - return 0; -+ -+ if (var_list == (struct ctl_var *)0) -+ return &eol; - - /* - * Look for a first character match on the tag. If we find -*************** -*** 1538,1548 **** - while (!(v->flags & EOV)) { - if (!(v->flags & PADDING) && *cp == *(v->text)) { - tp = v->text; -! while (*tp != '\0' && cp < reqend && *cp == *tp) { - cp++; - tp++; - } -! if (*tp == '\0') { - while (cp < reqend && isspace(*cp)) - cp++; - if (cp == reqend || *cp == ',') { ---- 1672,1682 ---- - while (!(v->flags & EOV)) { - if (!(v->flags & PADDING) && *cp == *(v->text)) { - tp = v->text; -! while (*tp != '\0' && *tp != '=' && cp < reqend && *cp == *tp) { - cp++; - tp++; - } -! if ((*tp == '\0') || (*tp == '=')) { - while (cp < reqend && isspace(*cp)) - cp++; - if (cp == reqend || *cp == ',') { -*************** -*** 1685,1692 **** - register struct ctl_var *v; - register int i; - char *valuep; -! u_char wants[(CS_MAXCODE>CP_MAXCODE) ? (CS_MAXCODE+1) : (CP_MAXCODE+1)]; -! int gotvar; - - if (res_associd == 0) { - /* ---- 1819,1826 ---- - register struct ctl_var *v; - register int i; - char *valuep; -! u_char *wants; -! int gotvar = (CS_MAXCODE>CP_MAXCODE) ? (CS_MAXCODE+1) : (CP_MAXCODE+1); - - if (res_associd == 0) { - /* -*************** -*** 1696,1707 **** - rpkt.status = htons(ctlsysstatus()); - if (res_authokay) - ctl_sys_num_events = 0; -! bzero((char *)wants, CS_MAXCODE+1); - gotvar = 0; - while ((v = ctl_getitem(sys_var, &valuep)) != 0) { - if (v->flags & EOV) { -! ctl_error(CERR_UNKNOWNVAR); -! return; - } - wants[v->code] = 1; - gotvar = 1; ---- 1830,1853 ---- - rpkt.status = htons(ctlsysstatus()); - if (res_authokay) - ctl_sys_num_events = 0; -! gotvar += count_var(ext_sys_var); -! wants = (u_char *)emalloc(gotvar); -! bzero((char *)wants, gotvar); - gotvar = 0; - while ((v = ctl_getitem(sys_var, &valuep)) != 0) { - if (v->flags & EOV) { -! if ((v = ctl_getitem(ext_sys_var, &valuep)) != 0) { -! if (v->flags & EOV) { -! ctl_error(CERR_UNKNOWNVAR); -! free((char *)wants); -! return; -! } -! wants[CS_MAXCODE+1+v->code] = 1; -! gotvar = 1; -! continue; -! } else { -! break; /* shouldn't happen ! */ -! } - } - wants[v->code] = 1; - gotvar = 1; -*************** -*** 1710,1721 **** - for (i = 1; i <= CS_MAXCODE; i++) - if (wants[i]) - ctl_putsys(i); - } else { - register u_char *cs; - - for (cs = def_sys_var; *cs != 0; cs++) -! ctl_putsys((int)*cs); - } - } else { - register struct peer *peer; - ---- 1856,1876 ---- - for (i = 1; i <= CS_MAXCODE; i++) - if (wants[i]) - ctl_putsys(i); -+ for (i = 0; ext_sys_var && !(ext_sys_var[i].flags & EOV); i++) -+ if (wants[i+CS_MAXCODE+1]) -+ ctl_putdata(ext_sys_var[i].text, -+ strlen(ext_sys_var[i].text), 0); - } else { - register u_char *cs; -+ register struct ctl_var *kv; - - for (cs = def_sys_var; *cs != 0; cs++) -! ctl_putsys((int)*cs); -! for (kv = ext_sys_var; kv && !(kv->flags & EOV); kv++) -! if (kv->flags & DEF) -! ctl_putdata(kv->text, strlen(kv->text), 0); - } -+ free((char *)wants); - } else { - register struct peer *peer; - -*************** -*** 1732,1742 **** - rpkt.status = htons(ctlpeerstatus(peer)); - if (res_authokay) - peer->num_events = 0; -! bzero((char*)wants, CP_MAXCODE+1); - gotvar = 0; - while ((v = ctl_getitem(peer_var, &valuep)) != 0) { - if (v->flags & EOV) { - ctl_error(CERR_UNKNOWNVAR); - return; - } - wants[v->code] = 1; ---- 1887,1899 ---- - rpkt.status = htons(ctlpeerstatus(peer)); - if (res_authokay) - peer->num_events = 0; -! wants = (u_char *)emalloc(gotvar); -! bzero((char*)wants, gotvar); - gotvar = 0; - while ((v = ctl_getitem(peer_var, &valuep)) != 0) { - if (v->flags & EOV) { - ctl_error(CERR_UNKNOWNVAR); -+ free((char *)wants); - return; - } - wants[v->code] = 1; -*************** -*** 1752,1757 **** ---- 1909,1915 ---- - for (cp = def_peer_var; *cp != 0; cp++) - ctl_putpeer((int)*cp, peer); - } -+ free((char *)wants); - } - ctl_flushpkt(0); - } -*************** -*** 1768,1773 **** ---- 1926,1932 ---- - int restrict; - { - register struct ctl_var *v; -+ register int ext_var; - char *valuep; - LONG val; - u_char leapind, leapwarn; -*************** -*** 1795,1831 **** - * Look through the variables. Dump out at the first sign of trouble. - */ - while ((v = ctl_getitem(sys_var, &valuep)) != 0) { - if (v->flags & EOV) { -! ctl_error(CERR_UNKNOWNVAR); -! return; - } - if (!(v->flags & CAN_WRITE)) { - ctl_error(CERR_PERMISSION); - return; - } -! if (*valuep == '\0' || !atoint(valuep, &val)) { - ctl_error(CERR_BADFMT); - return; - } -! if ((val & ~LEAP_NOTINSYNC) != 0) { - ctl_error(CERR_BADVALUE); - return; - } - -! /* -! * This one seems sane. Save it. -! */ -! switch(v->code) { -! case CS_LEAP: -! case CS_LEAPIND: -! leapind = (u_char)val; -! break; -! case CS_LEAPWARNING: -! leapwarn = (u_char)val; -! break; -! default: -! ctl_error(CERR_UNSPEC); /* our fault, really */ -! return; - } - } - ---- 1954,2013 ---- - * Look through the variables. Dump out at the first sign of trouble. - */ - while ((v = ctl_getitem(sys_var, &valuep)) != 0) { -+ ext_var = 0; - if (v->flags & EOV) { -! if ((v = ctl_getitem(ext_sys_var, &valuep)) != 0) { -! if (v->flags & EOV) { -! ctl_error(CERR_UNKNOWNVAR); -! return; -! } -! ext_var = 1; -! } else { -! break; -! } - } - if (!(v->flags & CAN_WRITE)) { - ctl_error(CERR_PERMISSION); - return; - } -! if (!ext_var && (*valuep == '\0' || !atoint(valuep, &val))) { - ctl_error(CERR_BADFMT); - return; - } -! if (!ext_var && (val & ~LEAP_NOTINSYNC) != 0) { - ctl_error(CERR_BADVALUE); - return; - } - -! if (ext_var) { -! char *s = emalloc(strlen(v->text)+strlen(valuep)+2); -! char *t, *tt = s; -! -! t = v->text; -! while (*t && *t != '=') -! *tt++ = *t++; -! -! *tt++ = '='; -! strcat(tt, valuep); -! -! set_sys_var(s, strlen(s)+1, v->flags); -! free(s); -! } else { -! /* -! * This one seems sane. Save it. -! */ -! switch(v->code) { -! case CS_LEAP: -! case CS_LEAPIND: -! leapind = (u_char)val; -! break; -! case CS_LEAPWARNING: -! leapwarn = (u_char)val; -! break; -! default: -! ctl_error(CERR_UNSPEC); /* our fault, really */ -! return; -! } - } - } - -*************** -*** 1861,1867 **** - register int i; - register struct peer *peer; - char *valuep; -! u_char wants[CC_MAXCODE+1]; - int gotvar; - struct refclockstat clock; - ---- 2043,2049 ---- - register int i; - register struct peer *peer; - char *valuep; -! u_char *wants; - int gotvar; - struct refclockstat clock; - -*************** -*** 1898,1915 **** - /* - * If we got here we have a peer which is a clock. Get his status. - */ - refclock_control(&peer->srcadr, (struct refclockstat *)0, &clock); - - /* - * Look for variables in the packet. - */ - rpkt.status = htons(ctlclkstatus(&clock)); - gotvar = 0; -! bzero((char*)wants, CC_MAXCODE+1); -! while ((v = ctl_getitem(sys_var, &valuep)) != 0) { - if (v->flags & EOV) { -! ctl_error(CERR_UNKNOWNVAR); -! return; - } - wants[v->code] = 1; - gotvar = 1; ---- 2080,2112 ---- - /* - * If we got here we have a peer which is a clock. Get his status. - */ -+ clock.kv_list = (struct ctl_var *)0; -+ - refclock_control(&peer->srcadr, (struct refclockstat *)0, &clock); - - /* - * Look for variables in the packet. - */ - rpkt.status = htons(ctlclkstatus(&clock)); -+ gotvar = CC_MAXCODE+1+count_var(clock.kv_list); -+ wants = (u_char *)emalloc(gotvar); -+ bzero((char*)wants, gotvar); - gotvar = 0; -! while ((v = ctl_getitem(clock_var, &valuep)) != 0) { - if (v->flags & EOV) { -! if ((v = ctl_getitem(clock.kv_list, &valuep)) != 0) { -! if (v->flags & EOV) { -! ctl_error(CERR_UNKNOWNVAR); -! free((char*)wants); -! free_varlist(clock.kv_list); -! return; -! } -! wants[CC_MAXCODE+1+v->code] = 1; -! gotvar = 1; -! continue; -! } else { -! break; /* shouldn't happen ! */ -! } - } - wants[v->code] = 1; - gotvar = 1; -*************** -*** 1919,1930 **** ---- 2116,2139 ---- - for (i = 1; i <= CC_MAXCODE; i++) - if (wants[i]) - ctl_putclock(i, &clock, 1); -+ for (i = 0; !(clock.kv_list[i].flags & EOV); i++) -+ if (wants[i+CC_MAXCODE+1]) -+ ctl_putdata(clock.kv_list[i].text, -+ strlen(clock.kv_list[i].text), 0); - } else { - register u_char *cc; -+ register struct ctl_var *kv; - - for (cc = def_clock_var; *cc != 0; cc++) - ctl_putclock((int)*cc, &clock, 0); -+ for (kv = clock.kv_list; kv && !(kv->flags & EOV); kv++) -+ if (kv->flags & DEF) -+ ctl_putdata(kv->text, strlen(kv->text), 0); - } -+ -+ free((char*)wants); -+ free_varlist(clock.kv_list); -+ - ctl_flushpkt(0); - #endif - } -*************** -*** 2237,2249 **** - */ - if (err == EVNT_CLOCKEXCPT) { - struct refclockstat clock; -! refclock_control(&peer->srcadr, - (struct refclockstat *)0, - &clock); - ctl_puthex("refclockstatus", - (U_LONG)ctlclkstatus(&clock)); - for (i = 1; i <= CC_MAXCODE; i++) - ctl_putclock(i, &clock, 0); - } - #endif /*REFCLOCK*/ - } else { ---- 2446,2468 ---- - */ - if (err == EVNT_CLOCKEXCPT) { - struct refclockstat clock; -! struct ctl_var *kv; -! -! clock.kv_list = (struct ctl_var *)0; -! -! refclock_control(&peer->srcadr, - (struct refclockstat *)0, - &clock); - ctl_puthex("refclockstatus", - (U_LONG)ctlclkstatus(&clock)); -+ - for (i = 1; i <= CC_MAXCODE; i++) - ctl_putclock(i, &clock, 0); -+ for (kv = clock.kv_list; kv && !(kv->flags & EOV); kv++) -+ if (kv->flags & DEF) -+ ctl_putdata(kv->text, strlen(kv->text), 0); -+ -+ free_varlist(clock.kv_list); - } - #endif /*REFCLOCK*/ - } else { -*************** -*** 2262,2274 **** ---- 2481,2504 ---- - */ - if (err == EVNT_PEERCLOCK) { - struct refclockstat clock; -+ struct ctl_var *kv; -+ -+ clock.kv_list = (struct ctl_var *)0; -+ - refclock_control(&peer->srcadr, - (struct refclockstat *)0, - &clock); -+ - ctl_puthex("refclockstatus", - (U_LONG)ctlclkstatus(&clock)); -+ - for (i = 1; i <= CC_MAXCODE; i++) - ctl_putclock(i, &clock, 0); -+ for (kv = clock.kv_list; kv && !(kv->flags & EOV); kv++) -+ if (kv->flags & DEF) -+ ctl_putdata(kv->text, strlen(kv->text), 0); -+ -+ free_varlist(clock.kv_list); - } - #endif /*REFCLOCK*/ - } -*************** -*** 2303,2305 **** ---- 2533,2647 ---- - numctlbadop = 0; - numasyncmsgs = 0; - } -+ -+ static unsigned long -+ count_var(k) -+ struct ctl_var *k; -+ { -+ register unsigned long c; -+ -+ c = 0; -+ while (k && !(k++->flags & EOV)) -+ c++; -+ -+ return c; -+ } -+ -+ char * -+ add_var(kv, size, def) -+ struct ctl_var **kv; -+ unsigned long size; -+ int def; -+ { -+ register unsigned long c; -+ register struct ctl_var *k; -+ -+ c = count_var(*kv); -+ -+ k = *kv; -+ *kv = (struct ctl_var *)emalloc((c+2)*sizeof(struct ctl_var)); -+ if (k) -+ { -+ bcopy((char *)k, (char *)*kv, sizeof(struct ctl_var)*c); -+ free((char *)k); -+ } -+ -+ (*kv)[c].code = c; -+ (*kv)[c].text = (char *)emalloc(size); -+ (*kv)[c].flags = def; -+ (*kv)[c+1].code = 0; -+ (*kv)[c+1].text = (char *)0; -+ (*kv)[c+1].flags = EOV; -+ return (*kv)[c].text; -+ } -+ -+ void -+ set_var(kv, data, size, def) -+ struct ctl_var **kv; -+ char *data; -+ unsigned long size; -+ int def; -+ { -+ register struct ctl_var *k; -+ register char *s, *t; -+ -+ if (!data || !size) -+ return; -+ -+ if ((k = *kv)) -+ { -+ while (!(k->flags & EOV)) -+ { -+ s = data; -+ t = k->text; -+ if (t) -+ { -+ while (*t != '=' && *s - *t == 0) -+ { -+ s++; -+ t++; -+ } -+ if (*s == *t && ((*t == '=') || !*t)) -+ { -+ free(k->text); -+ k->text = (char *)emalloc(size); -+ bcopy(data, k->text, size); -+ k->flags = def; -+ return; -+ } -+ } -+ else -+ { -+ k->text = (char *)emalloc(size); -+ bcopy(data, k->text, size); -+ k->flags = def; -+ return; -+ } -+ k++; -+ } -+ } -+ t = add_var(kv, size, def); -+ bcopy(data, t, size); -+ } -+ -+ void -+ set_sys_var(data, size, def) -+ char *data; -+ unsigned long size; -+ int def; -+ { -+ set_var(&ext_sys_var, data, size, def); -+ } -+ -+ void -+ free_varlist(kv) -+ struct ctl_var *kv; -+ { -+ struct ctl_var *k; -+ if (kv) -+ { -+ for (k = kv; !(k->flags & EOV); k++) -+ free(k->text); -+ free((char *)kv); -+ } -+ } -diff -c xntpd/ntp_filegen.c:1.1.1.5 xntpd/ntp_filegen.c:3.12 -*** xntpd/ntp_filegen.c:1.1.1.5 Wed Jan 26 21:53:04 1994 ---- xntpd/ntp_filegen.c Wed Jan 26 21:53:04 1994 -*************** -*** 1,5 **** - /* -! * ntp_filegen.c,v 3.10 1993/12/03 03:55:35 pruy Exp - * - * implements file generations support for NTP - * logfiles and statistic files ---- 1,5 ---- - /* -! * ntp_filegen.c,v 3.12 1994/01/25 19:06:11 kardel Exp - * - * implements file generations support for NTP - * logfiles and statistic files -diff -c xntpd/ntp_request.c:1.1.1.13 xntpd/ntp_request.c:3.13 -*** xntpd/ntp_request.c:1.1.1.13 Wed Jan 26 21:53:18 1994 ---- xntpd/ntp_request.c Wed Jan 26 21:53:18 1994 -*************** -*** 2111,2116 **** ---- 2111,2119 ---- - req_ack(srcadr, inter, inpkt, INFO_ERR_NODATA); - return; - } -+ -+ clock.kv_list = (struct ctl_var *)0; -+ - refclock_control(&addr, (struct refclockstat *)0, &clock); - - ic->clockadr = addr.sin_addr.s_addr; -*************** -*** 2128,2133 **** ---- 2131,2138 ---- - ic->fudgeval1 = htonl(clock.fudgeval1); - ic->fudgeval2 = htonl(clock.fudgeval2); - -+ free_varlist(clock.kv_list); -+ - ic = (struct info_clock *)more_pkt(); - } - flush_pkt(); -diff -c xntpd/refclock_parse.c:1.1.1.9 xntpd/refclock_parse.c:3.45 -*** xntpd/refclock_parse.c:1.1.1.9 Wed Jan 26 21:53:39 1994 ---- xntpd/refclock_parse.c Wed Jan 26 21:53:39 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v 3.43 1994/01/23 16:28:39 kardel Exp - * -! * refclock_parse.c,v 3.43 1994/01/23 16:28:39 kardel Exp - * - * generic reference clock driver for receivers - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v 3.45 1994/01/25 19:06:27 kardel Exp - * -! * refclock_parse.c,v 3.45 1994/01/25 19:06:27 kardel Exp - * - * generic reference clock driver for receivers - * -*************** -*** 129,135 **** - #include "parse.h" - - #if !defined(NO_SCCSID) && !defined(lint) && !defined(__GNUC__) -! static char rcsid[]="refclock_parse.c,v 3.43 1994/01/23 16:28:39 kardel Exp"; - #endif - - /**=========================================================================== ---- 129,135 ---- - #include "parse.h" - - #if !defined(NO_SCCSID) && !defined(lint) && !defined(__GNUC__) -! static char rcsid[]="refclock_parse.c,v 3.45 1994/01/25 19:06:27 kardel Exp"; - #endif - - /**=========================================================================== -*************** -*** 243,248 **** ---- 243,249 ---- - * clock specific configuration - */ - l_fp basedelay; /* clock local phase offset */ -+ l_fp ppsdelay; /* clock local pps phase offset */ - - /* - * clock state handling/reporting -*************** -*** 295,300 **** ---- 296,302 ---- - #define NO_END (void (*)())0 - #define NO_DATA (void *)0 - #define NO_FORMAT "" -+ #define NO_PPSDELAY 0 - - #define DCF_ID "DCF" /* generic DCF */ - #define DCF_A_ID "DCFa" /* AM demodulation */ -*************** -*** 497,502 **** ---- 499,505 ---- - void *cl_data; /* local data area for "poll" mechanism */ - u_fp cl_rootdelay; /* rootdelay */ - U_LONG cl_basedelay; /* current offset - unsigned l_fp fractional part */ -+ U_LONG cl_ppsdelay; /* current PPS offset - unsigned l_fp fractional part */ - char *cl_id; /* ID code (usually "DCF") */ - char *cl_description; /* device name */ - char *cl_format; /* fixed format */ -*************** -*** 516,521 **** ---- 519,525 ---- - NO_DATA, - DCFPZF535_ROOTDELAY, - DCFPZF535_BASEDELAY, -+ NO_PPSDELAY, - DCF_P_ID, - DCFPZF535_DESCRIPTION, - NO_FORMAT, -*************** -*** 534,539 **** ---- 538,544 ---- - NO_DATA, - DCFPZF535OCXO_ROOTDELAY, - DCFPZF535OCXO_BASEDELAY, -+ NO_PPSDELAY, - DCF_P_ID, - DCFPZF535OCXO_DESCRIPTION, - NO_FORMAT, -*************** -*** 552,557 **** ---- 557,563 ---- - NO_DATA, - DCFUA31_ROOTDELAY, - DCFUA31_BASEDELAY, -+ NO_PPSDELAY, - DCF_A_ID, - DCFUA31_DESCRIPTION, - NO_FORMAT, -*************** -*** 570,575 **** ---- 576,582 ---- - NO_DATA, - DCF7000_ROOTDELAY, - DCF7000_BASEDELAY, -+ NO_PPSDELAY, - DCF_A_ID, - DCF7000_DESCRIPTION, - NO_FORMAT, -*************** -*** 588,593 **** ---- 595,601 ---- - WSDCF_DATA, - WSDCF_ROOTDELAY, - WSDCF_BASEDELAY, -+ NO_PPSDELAY, - DCF_A_ID, - WSDCF_DESCRIPTION, - WSDCF_FORMAT, -*************** -*** 606,611 **** ---- 614,620 ---- - NO_DATA, - RAWDCF_ROOTDELAY, - CONRAD_BASEDELAY, -+ NO_PPSDELAY, - DCF_A_ID, - CONRAD_DESCRIPTION, - RAWDCF_FORMAT, -*************** -*** 624,629 **** ---- 633,639 ---- - NO_DATA, - RAWDCF_ROOTDELAY, - TIMEBRICK_BASEDELAY, -+ NO_PPSDELAY, - DCF_A_ID, - TIMEBRICK_DESCRIPTION, - RAWDCF_FORMAT, -*************** -*** 642,647 **** ---- 652,658 ---- - GPS166_DATA, - GPS166_ROOTDELAY, - GPS166_BASEDELAY, -+ NO_PPSDELAY, - GPS166_ID, - GPS166_DESCRIPTION, - GPS166_FORMAT, -*************** -*** 660,665 **** ---- 671,677 ---- - TRIMBLESV6_DATA, - TRIMBLESV6_ROOTDELAY, - TRIMBLESV6_BASEDELAY, -+ NO_PPSDELAY, - TRIMBLESV6_ID, - TRIMBLESV6_DESCRIPTION, - TRIMBLESV6_FORMAT, -*************** -*** 2198,2203 **** ---- 2210,2218 ---- - parse->basedelay.l_ui = 0; /* we can only pre-configure delays less than 1 second */ - parse->basedelay.l_uf = parse->parse_type->cl_basedelay; - -+ parse->ppsdelay.l_ui = 0; /* we can only pre-configure delays less than 1 second */ -+ parse->ppsdelay.l_uf = parse->parse_type->cl_ppsdelay; -+ - peer->rootdelay = parse->parse_type->cl_rootdelay; - peer->sstclktype = parse->parse_type->cl_type; - peer->precision = sys_precision; -*************** -*** 2554,2559 **** ---- 2569,2575 ---- - out->badformat = out->baddata = 0; - out->timereset = 0; - out->currentstatus = out->lastevent = CEVNT_NOMINAL; -+ out->kv_list = (struct ctl_var *)0; - } - - if (unit >= MAXUNITS) -*************** -*** 2579,2585 **** - - if (in->haveflags & CLK_HAVETIME2) - { -! /* not USED */ - } - - if (in->haveflags & CLK_HAVEVAL1) ---- 2595,2601 ---- - - if (in->haveflags & CLK_HAVETIME2) - { -! parse->ppsdelay = in->fudgetime2; - } - - if (in->haveflags & CLK_HAVEVAL1) -*************** -*** 2619,2637 **** - if (out) - { - register unsigned LONG sum = 0; -! register char *t; - register struct tm *tm; - register short utcoff; - register char sign; - register int i; - time_t tim; - -! out->haveflags = CLK_HAVETIME1|CLK_HAVEVAL1|CLK_HAVEFLAG1|CLK_HAVEFLAG2|CLK_HAVEFLAG3; - out->clockdesc = parse->parse_type->cl_description; - - out->fudgetime1 = parse->basedelay; - -! L_CLR(&out->fudgetime2); - - out->fudgeval1 = (LONG)parse->peer->stratum; - ---- 2635,2655 ---- - if (out) - { - register unsigned LONG sum = 0; -! register char *t, *tt; - register struct tm *tm; - register short utcoff; - register char sign; - register int i; - time_t tim; - -! outstatus[0] = '\0'; -! -! out->haveflags = CLK_HAVETIME1|CLK_HAVETIME2|CLK_HAVEVAL1|CLK_HAVEFLAG1|CLK_HAVEFLAG2|CLK_HAVEFLAG3; - out->clockdesc = parse->parse_type->cl_description; - - out->fudgetime1 = parse->basedelay; - -! out->fudgetime2 = parse->ppsdelay; - - out->fudgeval1 = (LONG)parse->peer->stratum; - -*************** -*** 2657,2667 **** - */ - off = parse->time.parse_stime.fp; - L_SUB(&off, &parse->time.parse_ptime.fp); /* true offset */ -! out->fudgetime2 = off; -! out->haveflags |= CLK_HAVETIME2; - } - } - - /* - * all this for just finding out the +-xxxx part (there are always - * new and changing fields in the standards 8-(). ---- 2675,2691 ---- - */ - off = parse->time.parse_stime.fp; - L_SUB(&off, &parse->time.parse_ptime.fp); /* true offset */ -! tt = add_var(&out->kv_list, 40, RO); -! sprintf(tt, "refclock_ppsskew=%s", lfptoms(&off, 6)); - } - } - -+ if (PARSE_PPS(parse->time.parse_state)) -+ { -+ tt = add_var(&out->kv_list, 80, RO|DEF); -+ sprintf(tt, "refclock_ppstime=\"%s\"", prettydate(&parse->time.parse_ptime.fp)); -+ } -+ - /* - * all this for just finding out the +-xxxx part (there are always - * new and changing fields in the standards 8-(). -*************** -*** 2686,2702 **** - sign = '+'; - } - -! tim = parse->time.parse_time.fp.l_ui - JAN_1970; -! strcpy(outstatus, ctime(&tim)); -! t = strrchr(outstatus, '\n'); -! if (!t) - { -! t = outstatus + strlen(outstatus); -! } - else - { -! sprintf(t, " %c%02d%02d", sign, utcoff / 60, utcoff % 60); -! t += strlen(t); - } - - if (!PARSE_GETTIMECODE(parse, &tmpctl)) ---- 2710,2729 ---- - sign = '+'; - } - -! tt = add_var(&out->kv_list, 128, RO|DEF); -! sprintf(tt, "refclock_time=\""); -! tt += strlen(tt); -! -! if (parse->time.parse_time.fp.l_ui == 0) - { -! strcpy(tt, "<UNDEFINED>\""); -! } - else - { -! strcpy(tt, prettydate(&parse->time.parse_time.fp)); -! t = tt + strlen(tt); -! -! sprintf(t, " (%c%02d%02d)\"", sign, utcoff / 60, utcoff % 60); - } - - if (!PARSE_GETTIMECODE(parse, &tmpctl)) -*************** -*** 2705,2731 **** - } - else - { - /* - * copy PPS flags from last read transaction (informational only) - */ - tmpctl.parsegettc.parse_state |= parse->time.parse_state & - (PARSEB_PPS|PARSEB_S_PPS); - -! if (t) -! { -! *t = ' '; -! (void) parsestate(tmpctl.parsegettc.parse_state, t+1); -! } -! else -! { -! strcat(outstatus, " "); -! (void) parsestate(tmpctl.parsegettc.parse_state, outstatus + strlen(outstatus)); -! } -! strcat(outstatus," <"); - if (tmpctl.parsegettc.parse_count) -! mkascii(outstatus+strlen(outstatus), sizeof(outstatus) - strlen(outstatus) - 1, - tmpctl.parsegettc.parse_buffer, tmpctl.parsegettc.parse_count - 1); -! strcat(outstatus,">"); - parse->badformat += tmpctl.parsegettc.parse_badformat; - } - ---- 2732,2755 ---- - } - else - { -+ tt = add_var(&out->kv_list, 128, RO|DEF); -+ sprintf(tt, "refclock_status=\""); -+ tt += strlen(tt); -+ - /* - * copy PPS flags from last read transaction (informational only) - */ - tmpctl.parsegettc.parse_state |= parse->time.parse_state & - (PARSEB_PPS|PARSEB_S_PPS); - -! (void) parsestate(tmpctl.parsegettc.parse_state, tt); -! -! strcat(tt, "\""); -! - if (tmpctl.parsegettc.parse_count) -! mkascii(outstatus+strlen(outstatus), sizeof(outstatus)- strlen(outstatus) - 1, - tmpctl.parsegettc.parse_buffer, tmpctl.parsegettc.parse_count - 1); -! - parse->badformat += tmpctl.parsegettc.parse_badformat; - } - -*************** -*** 2737,2752 **** - } - else - { -! strcat(outstatus," ("); -! strncat(outstatus, tmpctl.parseformat.parse_buffer, tmpctl.parseformat.parse_count); -! strcat(outstatus,")"); - } - - /* - * gather state statistics - */ - -! t = outstatus + strlen(outstatus); - - for (i = 0; i <= CEVNT_MAX; i++) - { ---- 2761,2780 ---- - } - else - { -! tt = add_var(&out->kv_list, 80, RO|DEF); -! sprintf(tt, "refclock_format=\""); -! -! strncat(tt, tmpctl.parseformat.parse_buffer, tmpctl.parseformat.parse_count); -! strcat(tt,"\""); - } - - /* - * gather state statistics - */ - -! tt = add_var(&out->kv_list, 200, RO|DEF); -! strcpy(tt, "refclock_states=\""); -! tt += strlen(tt); - - for (i = 0; i <= CEVNT_MAX; i++) - { -*************** -*** 2769,2787 **** - - if (stime) - { -! sprintf(t, "%s%s%s: %s (%d.%02d%%)", -! sum ? "; " : " [", - (parse->status == i) ? "*" : "", - clockstatus(i), - l_mktime(stime), - percent / 100, percent % 100); - sum += stime; -! t += strlen(t); - } - } - -! sprintf(t, "; running time: %s]", l_mktime(sum)); - - out->lencode = strlen(outstatus); - out->lastcode = outstatus; - out->timereset = parse->timestarted; ---- 2797,2824 ---- - - if (stime) - { -! sprintf(tt, "%s%s%s: %s (%d.%02d%%)", -! sum ? "; " : "", - (parse->status == i) ? "*" : "", - clockstatus(i), - l_mktime(stime), - percent / 100, percent % 100); - sum += stime; -! tt += strlen(tt); - } - } - -! sprintf(tt, "; running time: %s\"", l_mktime(sum)); -! -! tt = add_var(&out->kv_list, 32, RO); -! sprintf(tt, "refclock_id=\"%s\"", parse->parse_type->cl_id); - -+ tt = add_var(&out->kv_list, 80, RO); -+ sprintf(tt, "refclock_iomode=\"%s\"", parse->binding->bd_description); -+ -+ tt = add_var(&out->kv_list, 128, RO); -+ sprintf(tt, "refclock_driver_version=\"refclock_parse.c,v 3.45 1994/01/25 19:06:27 kardel Exp\""); -+ - out->lencode = strlen(outstatus); - out->lastcode = outstatus; - out->timereset = parse->timestarted; -*************** -*** 3086,3091 **** ---- 3123,3130 ---- - */ - offset = parsetime->parse_ptime.fp; - -+ L_ADD(&offset, &parse->ppsdelay); -+ - if (PARSE_TIMECODE(parsetime->parse_state)) - { - if (M_ISGEQ(off.l_i, off.l_f, -1, 0x80000000) && -*************** -*** 3353,3358 **** ---- 3392,3403 ---- - * History: - * - * refclock_parse.c,v -+ * Revision 3.45 1994/01/25 19:06:27 kardel -+ * 94/01/23 reconcilation -+ * -+ * Revision 3.44 1994/01/25 17:32:23 kardel -+ * settable extended variables -+ * - * Revision 3.43 1994/01/23 16:28:39 kardel - * HAVE_TERMIOS introduced - * -diff -c -r1.1.1.8 lib/numtohost.c -*** lib/numtohost.c:1.1.1.8 1994/01/26 20:12:51 ---- lib/numtohost.c 1994/01/26 21:17:01 -*************** -*** 1,6 **** ---- 1,7 ---- - /* numtohost.c,v 3.1 1993/07/06 01:08:40 jbj Exp - * numtohost - convert network number to host name. - */ -+ #include "ntp_types.h" - #include "ntp_string.h" - #include <netdb.h> - diff --git a/usr.sbin/xntpd/patches/patch.30 b/usr.sbin/xntpd/patches/patch.30 deleted file mode 100644 index 55897f9..0000000 --- a/usr.sbin/xntpd/patches/patch.30 +++ /dev/null @@ -1,73 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa14619; 22 Mar 94 11:53 EST -Received: from jagubox.gsfc.nasa.gov by louie.udel.edu id aa24926; - 22 Mar 94 11:48 EST -Received: by jagubox.gsfc.nasa.gov (Smail3.1.28.1 #2) - id m0pj9dD-000C8UC; Tue, 22 Mar 94 11:48 EST -Message-Id: <m0pj9dD-000C8UC@jagubox.gsfc.nasa.gov> -From: Jim Jagielski <jim@jagubox.gsfc.nasa.gov> -Subject: Small patch for xntpd 3.3p and A/UX (tickadj) -To: Mills@udel.edu -Date: Tue, 22 Mar 1994 11:48:42 -0500 (EST) -Reply-To: Jim Jagielski <jim@jagubox.gsfc.nasa.gov> -In-Reply-To: <9308051324.aa24396@huey.udel.edu> from "Mills@udel.edu" at Aug 5, 93 01:24:24 pm -X-Mailer: ELM [version 2.4 PL23] -Content-Type: text -Content-Length: 1355 - -This little patch streamlines things a bit for tickadj and A/UX: - ------------>8 cut here -------------------------------- - -*** tickadj.c.orig Mon Mar 14 02:47:28 1994 ---- tickadj.c Tue Mar 22 11:41:19 1994 -*************** -*** 333,342 **** - - #if defined(SYS_AUX3) || defined(SYS_AUX2) - #define X_TICKADJ 0 -! #define X_V 1 -! #define X_TICK 2 - #define X_DEF -! static struct nlist nl[4]; - #endif - - #ifdef NeXT ---- 333,345 ---- - - #if defined(SYS_AUX3) || defined(SYS_AUX2) - #define X_TICKADJ 0 -! #define X_TICK 1 - #define X_DEF -! static struct nlist nl[] = -! { {"tickadj"}, -! {"tick"}, -! {""}, -! }; - #endif - - #ifdef NeXT -*************** -*** 428,440 **** - NULL - }; - struct stat stbuf; -- -- #if defined(SYS_AUX3) || defined(SYS_AUX2) -- strcpy (nl[X_TICKADJ].n_name, "tickadj"); -- strcpy (nl[X_V].n_name, "v"); -- strcpy (nl[X_TICK].n_name, "tick"); -- nl[3].n_name[0] = '\0'; -- #endif - - for (kname = kernels; *kname != NULL; kname++) { - if (stat(*kname, &stbuf) == -1) ---- 431,436 ---- ------------>8 cut here -------------------------------- --- -#include <std/disclaimer.h> - Jim Jagielski | - jim@jagubox.gsfc.nasa.gov | "Dead or alive, you're coming with me." - NASA/GSFC, Code 734.4 | RoboCop - Greenbelt, MD 20771 | - diff --git a/usr.sbin/xntpd/patches/patch.31 b/usr.sbin/xntpd/patches/patch.31 deleted file mode 100644 index 33048f9..0000000 --- a/usr.sbin/xntpd/patches/patch.31 +++ /dev/null @@ -1,83 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa12734; 27 Mar 94 8:52 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa20329; - 27 Mar 94 8:48 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA05771 (5.65c-6/7.3v-FAU); Sun, 27 Mar 1994 15:48:38 +0200 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA01229 (5.65c-6/7.3m-FAU); Sun, 27 Mar 1994 14:48:37 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199403271348.AA01229@faui43.informatik.uni-erlangen.de> -Subject: minor patches -To: mills@udel.edu -Date: Sun, 27 Mar 94 15:48:32 MET DST -X-Mailer: ELM [version 2.3 PL11] - -Hi, Dave, - -I just got through manually read news (in the spool area 8-( - when -will they ever fix our news installation). - -In order to avoid ptx being picked up in AT&T machine i added hope-fully -an additional check. Why do vendor have to make machine look the -same when they aren't ? I though uname was supposed to find out - I -guess I was wrong - every vendor seems to have his own ideas about -uname and they all do not mix very well. - -The fix to numtohost allows it to compile on ptx - I hope it still -compiles on all others (should though). - -diff -c lib/numtohost.c:1.1.1.9 lib/numtohost.c:3.7 -*** lib/numtohost.c:1.1.1.9 Sun Mar 27 15:36:54 1994 ---- lib/numtohost.c Sun Mar 27 15:36:54 1994 -*************** -*** 1,12 **** -! /* numtohost.c,v 3.1 1993/07/06 01:08:40 jbj Exp - * numtohost - convert network number to host name. - */ -- #include "ntp_types.h" - #include <netdb.h> - - #include "ntp_fp.h" -- #include "lib_strbuf.h" - #include "ntp_stdlib.h" - - #define LOOPBACKNET 0x7f000000 - #define LOOPBACKHOST 0x7f000001 ---- 1,11 ---- -! /* - * numtohost - convert network number to host name. - */ - #include <netdb.h> - - #include "ntp_fp.h" - #include "ntp_stdlib.h" -+ #include "lib_strbuf.h" - - #define LOOPBACKNET 0x7f000000 - #define LOOPBACKHOST 0x7f000001 -diff -c scripts/Guess.sh:1.1.1.8 scripts/Guess.sh:1.13 -*** scripts/Guess.sh:1.1.1.8 Sun Mar 27 15:38:53 1994 ---- scripts/Guess.sh Sun Mar 27 15:38:53 1994 -*************** -*** 78,84 **** - 3.2.*) - case "$4" in - v*) -! (i386) >/dev/null 2>&1 && guess=ptx;; - esac - esac - fi ---- 78,84 ---- - 3.2.*) - case "$4" in - v*) -! (i386) >/dev/null 2>&1 && [ -f /usr/lib/libseq.a ] && guess=ptx;; - esac - esac - fi --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.32 b/usr.sbin/xntpd/patches/patch.32 deleted file mode 100644 index 2e951cb..0000000 --- a/usr.sbin/xntpd/patches/patch.32 +++ /dev/null @@ -1,89 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa12910; 27 Mar 94 10:06 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa22473; - 27 Mar 94 10:05 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA09307 (5.65c-6/7.3v-FAU); Sun, 27 Mar 1994 17:05:03 +0200 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA05359 (5.65c-6/7.3m-FAU); Sun, 27 Mar 1994 16:05:01 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199403271505.AA05359@faui43.informatik.uni-erlangen.de> -Subject: more PTX related patches... -To: mills@udel.edu -Date: Sun, 27 Mar 94 17:04:56 MET DST -X-Mailer: ELM [version 2.3 PL11] - -Hi, Dave ! - -And another patche to make parse compile on PTX (Sequents -SysVR2 version). - -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/parse/parse.c,v -retrieving revision 3.23 -retrieving revision 3.24 -diff -c -r3.23 -r3.24 -*** parse/parse.c:3.23 1994/03/25 13:09:02 ---- parse/parse.c 1994/03/27 15:01:36 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse.c,v 3.23 1994/03/25 13:09:02 kardel Exp - * -! * parse.c,v 3.23 1994/03/25 13:09:02 kardel Exp - * - * Parser module for reference clock - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse.c,v 3.24 1994/03/27 15:01:36 kardel Exp - * -! * parse.c,v 3.24 1994/03/27 15:01:36 kardel Exp - * - * Parser module for reference clock - * -*************** -*** 29,34 **** ---- 29,38 ---- - #include "sys/time.h" - #include "sys/errno.h" - -+ #include "ntp_fp.h" -+ #include "ntp_unixtime.h" -+ #include "ntp_calendar.h" -+ - #include "ntp_machine.h" - - #if defined(PARSESTREAM) && (defined(SYS_SUNOS4) || defined(SYS_SOLARIS)) && defined(STREAM) -*************** -*** 49,58 **** - #endif - #endif - -- #include "ntp_fp.h" -- #include "ntp_unixtime.h" -- #include "ntp_calendar.h" -- - #include "parse.h" - - #include "ntp_stdlib.h" ---- 53,58 ---- -*************** -*** 1162,1167 **** ---- 1162,1170 ---- - * History: - * - * parse.c,v -+ * Revision 3.24 1994/03/27 15:01:36 kardel -+ * reorder include file to cope with PTX -+ * - * Revision 3.23 1994/03/25 13:09:02 kardel - * considering FIXEDONLY entries only in FIXEDONLY mode - * --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.33 b/usr.sbin/xntpd/patches/patch.33 deleted file mode 100644 index e7d1934..0000000 --- a/usr.sbin/xntpd/patches/patch.33 +++ /dev/null @@ -1,75 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa13737; 27 Mar 94 15:27 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa29101; - 27 Mar 94 15:23 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA24270 (5.65c-6/7.3v-FAU); Sun, 27 Mar 1994 22:23:35 +0200 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA07515 (5.65c-6/7.3m-FAU); Sun, 27 Mar 1994 21:23:34 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199403272023.AA07515@faui43.informatik.uni-erlangen.de> -Subject: and for patch 33? -To: mills@udel.edu -Date: Sun, 27 Mar 94 22:23:30 MET DST -X-Mailer: ELM [version 2.3 PL11] - -This should get you to Patch 33. or higher. - - gcc 2.5.8 (from Per Hedeland - gcc 2.5.8 is just - causing to many poeple to complain 8-()_ - - a an note what one can do in Config.local in HACKermode. - -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/RELNOTES,v -retrieving revision 1.1.1.11 -diff -c -r1.1.1.11 RELNOTES -*** 1.1.1.11 1994/01/30 17:08:20 ---- RELNOTES 1994/03/27 19:40:27 -*************** -*** 31,36 **** ---- 31,40 ---- - For custom tailored configuration copying Config.local.dist to Config.local - and editing Config.local to suit the local needs is neccessary (at most - 3 lines to change), or use one of the make's above and then tweak it. -+ Config.local can also be used to override common settings from the -+ machines/* files like the AUTHDEFS= to select very specific configurations. -+ Please use this feature with care and don't be disappointed if it doesn't -+ work the way you expect. - - (2) Type "make" to compile everything of general interest. Expect few or - no warnings using cc and a moderate level of warnings using gcc. -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/include/l_stdlib.h,v -retrieving revision 1.1.1.6 -diff -c -r1.1.1.6 l_stdlib.h -*** include/l_stdlib.h:1.1.1.6 1994/01/28 13:07:49 ---- include/l_stdlib.h 1994/03/27 19:34:40 -*************** -*** 70,80 **** - - extern int close P((int)); - extern int ioctl P((int, int, char *)); -! extern int read P((int, char *, unsigned)); - extern int rename P((char *, char *)); -! extern int write P((int, char *, int)); -! extern int unlink P((char *)); -! extern int link P((char *, char *)); - - #ifdef FILE - extern int fclose P((FILE *)); ---- 70,80 ---- - - extern int close P((int)); - extern int ioctl P((int, int, char *)); -! extern int read P((int, void *, unsigned)); - extern int rename P((char *, char *)); -! extern int write P((int, const void *, unsigned)); -! extern int unlink P((const char *)); -! extern int link P((const char *, const char *)); - - #ifdef FILE - extern int fclose P((FILE *)); --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.34 b/usr.sbin/xntpd/patches/patch.34 deleted file mode 100644 index a382889..0000000 --- a/usr.sbin/xntpd/patches/patch.34 +++ /dev/null @@ -1,303 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa02155; 25 Mar 94 8:47 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa05544; - 25 Mar 94 8:45 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA27199 (5.65c-6/7.3v-FAU); Fri, 25 Mar 1994 14:45:13 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA06935 (5.65c-6/7.3m-FAU); Fri, 25 Mar 1994 14:45:11 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199403251345.AA06935@faui43.informatik.uni-erlangen.de> -Subject: bugfixes for parse & ntpq enhancements -To: mills@udel.edu -Date: Fri, 25 Mar 94 14:45:05 MET -X-Mailer: ELM [version 2.3 PL11] - -Hi Dave, - -I have a 2 bug fixes and an ntpq enhancement: - - parse bitmap initialisation fixed - - allow for large offsets in refclock_parse (>4 min 8-() - - decode the flash bits in cooked mode - -diff -c ntpq/ntpq.c:1.1.1.21 ntpq/ntpq.c:3.22 -*** ntpq/ntpq.c:1.1.1.21 Fri Mar 25 14:32:38 1994 ---- ntpq/ntpq.c Fri Mar 25 14:32:38 1994 -*************** -*** 75,80 **** ---- 75,81 ---- - #define OC 12 /* integer, print in octal */ - #define MD 13 /* mode */ - #define AR 14 /* array of times */ -+ #define TST 15 /* test flags */ - #define EOV 255 /* end of table */ - - -*************** -*** 145,151 **** - { CP_RECEIVED, UI, "received" }, /* 31 */ - { CP_SENT, UI, "sent" }, /* 32 */ - { CP_FILTERROR, AR, "filterror" }, /* 33 */ -! { CP_FLASH, ST, "flash"}, /* 34 */ - { CP_DISP, AR, "disp" }, /* 35 */ - /* - * These are duplicate entires so that we can ---- 146,152 ---- - { CP_RECEIVED, UI, "received" }, /* 31 */ - { CP_SENT, UI, "sent" }, /* 32 */ - { CP_FILTERROR, AR, "filterror" }, /* 33 */ -! { CP_FLASH, TST, "flash"}, /* 34 */ - { CP_DISP, AR, "disp" }, /* 35 */ - /* - * These are duplicate entires so that we can -*************** -*** 189,194 **** ---- 190,209 ---- - }; - - /* -+ * flasher bits -+ */ -+ static char *tstflagnames[] = { -+ "DUPLICATE PKT", -+ "BOGUS PKT", -+ "PROTO UNSYNC", -+ "PEER BOUNDS", -+ "BAD AUTH", -+ "PEER CLOCK UNSYNC", -+ "BAD STRATUM", -+ "ROOT BOUNDS" -+ }; -+ -+ /* - * Leap values - */ - struct codestring leap_codes[] = { -*************** -*** 2836,2842 **** - output(fp, name, buf); - } - -! - - /* - * cookedprint - output variables in cooked mode ---- 2851,2895 ---- - output(fp, name, buf); - } - -! static char * -! tstflags(val) -! U_LONG val; -! { -! register char *cb, *s; -! register int i; -! register char *sep; -! -! sep = ""; -! i = 0; -! s = cb = &circ_buf[nextcb][0]; -! if (++nextcb >= NUMCB) -! nextcb = 0; -! -! sprintf(cb, "0x%x", val); -! cb += strlen(cb); -! if (val <= ((1<<8)-1)) { -! if (!val) { -! strcat(cb, "<OK>"); -! cb += strlen(cb); -! } else { -! *cb++ = '<'; -! while (val) { -! if (val & 0x1) { -! sprintf(cb, "%s%s", sep, tstflagnames[i]); -! sep = ";"; -! cb += strlen(cb); -! } -! i++; -! val >>= 1; -! } -! *cb++ = '>'; -! } -! } else { -! *cb++ = '?'; -! } -! *cb = '\0'; -! return s; -! } - - /* - * cookedprint - output variables in cooked mode -*************** -*** 2994,2999 **** ---- 3047,3059 ---- - outputarr(fp, name, narr, lfparr); - break; - -+ case TST: -+ if (!decodeuint(value, &uval)) -+ output_raw = '?'; -+ else -+ output(fp, name, tstflags(uval)); -+ break; -+ - default: - (void) fprintf(stderr, - "Internal error in cookedprint, %s=%s, fmt %d\n", -diff -c parse/parse.c:1.1.1.10 parse/parse.c:3.23 -*** parse/parse.c:1.1.1.10 Fri Mar 25 14:33:02 1994 ---- parse/parse.c Fri Mar 25 14:33:02 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse.c,v 3.22 1994/02/25 12:34:49 kardel Exp - * -! * parse.c,v 3.22 1994/02/25 12:34:49 kardel Exp - * - * Parser module for reference clock - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/parse/parse.c,v 3.23 1994/03/25 13:09:02 kardel Exp - * -! * parse.c,v 3.23 1994/03/25 13:09:02 kardel Exp - * - * Parser module for reference clock - * -*************** -*** 178,183 **** ---- 178,187 ---- - { - fmt = clockformats[i]; - -+ if (!(parseio->parse_flags & PARSE_FIXED_FMT) && -+ (fmt->flags & CVT_FIXEDONLY)) -+ continue; -+ - if (fmt->flags & F_START) - { - index = fmt->startsym / 8; -*************** -*** 1158,1163 **** ---- 1162,1170 ---- - * History: - * - * parse.c,v -+ * Revision 3.23 1994/03/25 13:09:02 kardel -+ * considering FIXEDONLY entries only in FIXEDONLY mode -+ * - * Revision 3.22 1994/02/25 12:34:49 kardel - * allow for converter generated utc times - * -diff -c xntpd/refclock_parse.c:1.1.1.13 xntpd/refclock_parse.c:3.53 -*** xntpd/refclock_parse.c:1.1.1.13 Fri Mar 25 14:35:07 1994 ---- xntpd/refclock_parse.c Fri Mar 25 14:35:08 1994 -*************** -*** 1,8 **** - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v 3.51 1994/03/03 09:49:54 kardel Exp - * -! * refclock_parse.c,v 3.51 1994/03/03 09:49:54 kardel Exp - * - * generic reference clock driver for receivers - * ---- 1,8 ---- - #if defined(REFCLOCK) && (defined(PARSE) || defined(PARSEPPS)) - /* -! * /src/NTP/REPOSITORY/v3/xntpd/refclock_parse.c,v 3.53 1994/03/25 13:07:39 kardel Exp - * -! * refclock_parse.c,v 3.53 1994/03/25 13:07:39 kardel Exp - * - * generic reference clock driver for receivers - * -*************** -*** 129,135 **** - #include "parse.h" - - #if !defined(NO_SCCSID) && !defined(lint) && !defined(__GNUC__) -! static char rcsid[]="refclock_parse.c,v 3.51 1994/03/03 09:49:54 kardel Exp"; - #endif - - /**=========================================================================== ---- 129,135 ---- - #include "parse.h" - - #if !defined(NO_SCCSID) && !defined(lint) && !defined(__GNUC__) -! static char rcsid[]="refclock_parse.c,v 3.53 1994/03/25 13:07:39 kardel Exp"; - #endif - - /**=========================================================================== -*************** -*** 2824,2830 **** - sprintf(tt, "refclock_iomode=\"%s\"", parse->binding->bd_description); - - tt = add_var(&out->kv_list, 128, RO); -! sprintf(tt, "refclock_driver_version=\"refclock_parse.c,v 3.51 1994/03/03 09:49:54 kardel Exp\""); - - out->lencode = strlen(outstatus); - out->lastcode = outstatus; ---- 2824,2830 ---- - sprintf(tt, "refclock_iomode=\"%s\"", parse->binding->bd_description); - - tt = add_var(&out->kv_list, 128, RO); -! sprintf(tt, "refclock_driver_version=\"refclock_parse.c,v 3.53 1994/03/25 13:07:39 kardel Exp\""); - - out->lencode = strlen(outstatus); - out->lastcode = outstatus; -*************** -*** 3103,3109 **** - L_ADD(&off, &offset); - rectime = off; /* this makes org time and xmt time somewhat artificial */ - -! if (parse->flags & PARSE_STAT_FILTER) - { - struct timeval usecerror; - /* ---- 3103,3113 ---- - L_ADD(&off, &offset); - rectime = off; /* this makes org time and xmt time somewhat artificial */ - -! L_SUB(&off, &parsetime->parse_stime.fp); -! -! if ((parse->flags & PARSE_STAT_FILTER) && -! (off.l_i > -60) && -! (off.l_i < 60)) /* take usec error only if within +- 60 secs */ - { - struct timeval usecerror; - /* -*************** -*** 3115,3124 **** - sTVTOTS(&usecerror, &off); - L_ADD(&off, &offset); - } -- else -- { -- L_SUB(&off, &parsetime->parse_stime.fp); -- } - } - - if (PARSE_PPS(parsetime->parse_state) && CL_PPS(parse->unit)) ---- 3119,3124 ---- -*************** -*** 3409,3414 **** ---- 3409,3420 ---- - * History: - * - * refclock_parse.c,v -+ * Revision 3.53 1994/03/25 13:07:39 kardel -+ * fixed offset calculation for large (>4 Min) offsets -+ * -+ * Revision 3.52 1994/03/03 09:58:00 kardel -+ * stick -kv in cvs is no fun -+ * - * Revision 3.49 1994/02/20 13:26:00 kardel - * rcs id cleanup - * --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.35 b/usr.sbin/xntpd/patches/patch.35 deleted file mode 100644 index e6b1ea4..0000000 --- a/usr.sbin/xntpd/patches/patch.35 +++ /dev/null @@ -1,914 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa25410; 3 Apr 94 18:04 EDT -Received: from adrastea.lcs.mit.edu by louie.udel.edu id aa09227; - 3 Apr 94 17:56 EDT -Received: by adrastea.lcs.mit.edu; id AA26407; Sun, 3 Apr 1994 17:56:48 -0400 -Date: Sun, 3 Apr 1994 17:56:48 -0400 -From: Garrett Wollman <wollman@adrastea.lcs.mit.edu> -Message-Id: <9404032156.AA26407@adrastea.lcs.mit.edu> -To: Dave Mills <Mills@udel.edu> -Subject: xntpd 3.3p changes for FreeBSD - -This still doesn't solve the 18-second discrepancy. However, the -patch file below shows the current differences between xntp3.3p and -the FreeBSD version of same, deleted files not included. I have also -included the Makefiles that we use to provide some idea of our build -structure. (Thankfully, xntp---unlike some other popular pieces of -software---has a sane directory structure to begin with, so it isn't -nearly as difficult to handle this sort of thing than it is with, say, -GCC.) - -diff -c /dev/null 386BSD/src/contrib/xntpd/Makefile.inc:1.3 -*** /dev/null Sun Apr 3 13:42:15 1994 ---- 386BSD/src/contrib/xntpd/Makefile.inc Sun Apr 3 13:42:15 1994 -*************** -*** 0 **** ---- 1,7 ---- -+ DEFS_LOCAL=-DREFCLOCK -DPARSE -+ NTPDEFS= -DSYS_FREEBSD -DSYS_386BSD -DHAVE_TERMIOS -+ AUTHDEFS= -DMD5 -+ CLOCKDEFS= -DLOCAL_CLOCK -DPST -DWWVB -DAS2201 -DGOES -DGPSTM -DOMEGA \ -+ -DLEITCH -DTRAK -+ CFLAGS+= ${NTPDEFS} ${DEFS_LOCAL} ${AUTHDEFS} ${CLOCKDEFS} ${COPTS} -+ BINDIR?= /usr/sbin -diff -c /dev/null 386BSD/src/contrib/xntpd/README.FreeBSD:1.5 -*** /dev/null Sun Apr 3 13:42:15 1994 ---- 386BSD/src/contrib/xntpd/README.FreeBSD Sun Apr 3 13:42:15 1994 -*************** -*** 0 **** ---- 1,78 ---- -+ This version of NTP was converted to the BSD-style Makefile system by -+ Garrett Wollman (wollman@freefall.cdrom.com); it is based on version -+ 3.3p (late beta) from the University of Delaware. -+ -+ Besides the Makefile changes, the DES code has been completely removed -+ in order to make this code exportable. If you have a legal copy of -+ `authdes.c', you can just add it to the lib/ directory and add `-DDES' -+ to the AUTHDEFS in Makefile.inc. -+ -+ You can change CLOCKDEFS in the same file to add other reference clocks. -+ -+ ---------------------------------------------------- -+ Support for Conrad electronic's "DCF-77 Uhr, Mobil". -+ ---------------------------------------------------- -+ Conrad electronic in Germany,, Phone (+49) 962230111 (?), sells a gadget -+ called "DCF77 Uhr, mobil", which is a DCF77 timecode receiver with a -+ rs-232 interface. The price is around DM130. -+ 9-pin interface is Order# 97 94 57 66 -+ 25-pin interface is Order# 97 94 81 66 -+ -+ You must define -+ -DDCF77 -DPPS -DFREEBSD_CONRAD -DDEBUG -+ when you compile xntpd. You can later remove -DDEBUG, if you feel like it. -+ -+ You must also have -+ options COM_BIDIR -+ defined in your kernel, and finally the ttyport you intend to use must -+ have special interrupt vector: -+ device sio1 at isa? port "IO_COM2" tty irq 3 vector siointrts -+ ^^^^^^^^^^^^ -+ connect the radio-clock to the tty port and link it to /dev/refclock-0: -+ -+ cd /dev -+ sh MAKEDEV cua1 -+ ln -s /dev/cua01 /dev/refclock-0 -+ -+ make a directory to gather statistics in: -+ mkdir /var/tmp/ntp -+ -+ Create a /etc/ntp.conf along these lines: -+ -+ # DCF77 without PPS -+ server 127.127.8.20 -+ # DCF77 with PPS -+ #server 127.127.8.148 prefer -+ -+ driftfile /var/tmp/ntp/ntp.drift -+ statsdir /var/tmp/ntp -+ statistics loopstats -+ statistics peerstats -+ statistics clockstats -+ filegen peerstats file peerstats type day enable -+ filegen loopstats file loopstats type day enable -+ filegen clockstats file clockstats type day enable -+ -+ Try to start it: -+ comcontrol ttyd1 bidir -+ tickadj -A -+ xntpd -d -d -d -+ -+ You should see the red LED flash on the receiver every second now. You -+ may have to experiment a bit with the location, and possibly adjust the -+ minute variable resistor inside to get a good signal. Be aware, that just -+ because you see the light flash, is not the same as the signal being -+ received by the computer. The chip doing the work in the reciver uses -+ less than 1 micro-ampere, so even if RTS isn't pulled low, it will happily -+ receive, but be unable to buffer the signal to the rs-232 levels needed. -+ -+ You can see what's going on in /var/log/messages, and query the -+ daemon using xntpdc and ntpq, in particular the "clockvar" command -+ of ntpq will tell about the clocks healt. -+ -+ I live in Slagelse, Denmark, which is ~1000 Km from Mainflingen, yet -+ I have +/- 2 ms precision from this cheap gadget. If you have a very -+ stable signal, you can use the 'pps' address instead to improve your -+ timing. -+ -+ Have fun... Poul-Henning Kamp <phk@login.dkuug.dk> -diff -c /dev/null 386BSD/src/contrib/xntpd/authstuff/Makefile:1.2 -*** /dev/null Sun Apr 3 13:42:19 1994 ---- 386BSD/src/contrib/xntpd/authstuff/Makefile Sun Apr 3 13:42:20 1994 -*************** -*** 0 **** ---- 1,27 ---- -+ # -+ # $Id: Makefile,v 1.2 1993/12/22 11:32:10 rgrimes Exp $ -+ # -+ # Most of the programs in this directory are completely useless for the -+ # NTP configuration that we provide by default. -+ # We provide the `md5' program as a public service. -+ -+ CFLAGS+= -I${.CURDIR}/../include -+ -+ .if exists(${.CURDIR}/../lib/obj) -+ LDADD+= -L${.CURDIR}/../lib/obj -+ DPADD+= ${.CURDIR}/../lib/obj/libntp.a -+ .else -+ LDADD+= -L${.CURDIR}/../lib -+ DPADD+= ${.CURDIR}/../lib/libntp.a -+ .endif -+ -+ LDADD+= -lntp -+ -+ PROG= md5 -+ -+ SRCS= md5driver.c -+ NOMAN= -+ -+ install: -+ -+ .include <bsd.prog.mk> -diff -c 386BSD/src/contrib/xntpd/authstuff/md5driver.c:1.1.1.2 386BSD/src/contrib/xntpd/authstuff/md5driver.c:1.2 -*** 386BSD/src/contrib/xntpd/authstuff/md5driver.c:1.1.1.2 Sun Apr 3 13:42:20 1994 ---- 386BSD/src/contrib/xntpd/authstuff/md5driver.c Sun Apr 3 13:42:20 1994 -*************** -*** 30,36 **** ---- 30,38 ---- - #endif /* SYS_BSDI */ - #include "md5.h" - -+ #ifndef MD5 - #define MD5 -+ #endif - #include "ntp_string.h" - #include "ntp_stdlib.h" - -diff -c /dev/null 386BSD/src/contrib/xntpd/clockstuff/Makefile:1.1 -*** /dev/null Sun Apr 3 13:42:21 1994 ---- 386BSD/src/contrib/xntpd/clockstuff/Makefile Sun Apr 3 13:42:21 1994 -*************** -*** 0 **** ---- 1,16 ---- -+ # -+ # $Id: Makefile,v 1.1 1993/12/21 21:06:24 wollman Exp $ -+ # -+ -+ PROG= propdelay -+ LIBADD= -L${.CURDIR}/../lib -lntp -lm -+ DPADD= ${.CURDIR}/../lib/libntp.a -+ -+ SRCS= propdelay.c -+ NOMAN= -+ -+ install: -+ -+ CLEANFILES+= chutest clktest chutest.o clktest.o -+ -+ .include <bsd.prog.mk> -diff -c /dev/null 386BSD/src/contrib/xntpd/lib/Makefile:1.5 -*** /dev/null Sun Apr 3 13:43:01 1994 ---- 386BSD/src/contrib/xntpd/lib/Makefile Sun Apr 3 13:43:01 1994 -*************** -*** 0 **** ---- 1,30 ---- -+ # -+ # $Id: Makefile,v 1.5 1994/04/03 20:37:05 wollman Exp $ -+ # -+ -+ CFLAGS+= -I${.CURDIR}/../include -+ -+ SRCS= atoint.c atolfp.c atouint.c auth12crypt.c authdecrypt.c authdes.c \ -+ authencrypt.c authkeys.c authparity.c authreadkeys.c authusekey.c \ -+ buftvtots.c caljulian.c calleapwhen.c caltontp.c calyearstart.c \ -+ clocktime.c dofptoa.c dolfptoa.c emalloc.c fptoa.c fptoms.c \ -+ gettstamp.c hextoint.c hextolfp.c humandate.c inttoa.c \ -+ lib_strbuf.c mfptoa.c mfptoms.c modetoa.c mstolfp.c \ -+ msutotsf.c netof.c numtoa.c refnumtoa.c numtohost.c octtoint.c \ -+ prettydate.c ranny.c tsftomsu.c tstotv.c tvtoa.c tvtots.c \ -+ uglydate.c uinttoa.c utvtoa.c clocktypes.c \ -+ md5.c a_md5encrypt.c a_md5decrypt.c \ -+ a_md512crypt.c decodenetnum.c systime.c msyslog.c syssignal.c \ -+ findconfig.c getopt.c -+ -+ NOMAN= -+ NOPROFILE= -+ LIB= ntp -+ CLEANFILES+=authdes.c -+ -+ install: -+ -+ authdes.c: authdes.c.export -+ cp ${.CURDIR}/authdes.c.export authdes.c -+ -+ .include <bsd.lib.mk> -diff -c /dev/null 386BSD/src/contrib/xntpd/ntpdate/Makefile:1.3 -*** /dev/null Sun Apr 3 13:43:27 1994 ---- 386BSD/src/contrib/xntpd/ntpdate/Makefile Sun Apr 3 13:43:27 1994 -*************** -*** 0 **** ---- 1,28 ---- -+ # -+ # $Id: Makefile,v 1.3 1993/12/22 11:32:56 rgrimes Exp $ -+ # -+ -+ CFLAGS+= -I${.CURDIR}/../include -+ -+ .if exists(${.CURDIR}/../lib/obj) -+ LDADD+= -L${.CURDIR}/../lib/obj -+ DPADD+= -L${.CURDIR}/../lib/obj/libntp.a -+ .else -+ LDADD+= -L${.CURDIR}/../lib -+ DPADD+= -L${.CURDIR}/../lib/libntp.a -+ .endif -+ -+ LDADD+= -lntp -+ -+ PROG= ntpdate -+ MAN8= ${.CURDIR}/../doc/ntpdate.8 -+ CLEANFILES+= .version version.c -+ -+ SRCS= ntpdate.c version.c -+ -+ beforedepend: version.c -+ -+ version.c: ${.CURDIR}/../VERSION -+ ${.CURDIR}/../scripts/mkversion ntpdate -+ -+ .include <bsd.prog.mk> -diff -c /dev/null 386BSD/src/contrib/xntpd/ntpq/Makefile:1.3 -*** /dev/null Sun Apr 3 13:43:28 1994 ---- 386BSD/src/contrib/xntpd/ntpq/Makefile Sun Apr 3 13:43:29 1994 -*************** -*** 0 **** ---- 1,29 ---- -+ # -+ # $Id: Makefile,v 1.3 1993/12/22 11:33:07 rgrimes Exp $ -+ # -+ -+ CFLAGS+= -I${.CURDIR}/../include -+ -+ .if exists(${.CURDIR}/../lib/obj) -+ LDADD+= -L${.CURDIR}/../lib/obj -+ DPADD+= -L${.CURDIR}/../lib/obj/libntp.a -+ .else -+ LDADD+= -L${.CURDIR}/../lib -+ DPADD+= -L${.CURDIR}/../lib/libntp.a -+ .endif -+ -+ LDADD+= -lntp -+ -+ PROG= ntpq -+ MAN8= ${.CURDIR}/../doc/ntpq.8 -+ CLEANFILES+= .version version.c -+ BINDIR= /usr/bin -+ -+ SRCS= ntpq.c ntpq_ops.c version.c -+ -+ beforedepend: version.c -+ -+ version.c: ${.CURDIR}/../VERSION -+ ${.CURDIR}/../scripts/mkversion ntpq -+ -+ .include <bsd.prog.mk> -diff -c 386BSD/src/contrib/xntpd/ntpq/ntpq.c:1.1.1.2 386BSD/src/contrib/xntpd/ntpq/ntpq.c:1.2 -*** 386BSD/src/contrib/xntpd/ntpq/ntpq.c:1.1.1.2 Sun Apr 3 13:43:30 1994 ---- 386BSD/src/contrib/xntpd/ntpq/ntpq.c Sun Apr 3 13:43:30 1994 -*************** -*** 301,307 **** - static int decodearr P((char *, int *, l_fp *)); - static char * getcode P((int, struct codestring *)); - static void help P((struct parse *, FILE *)); -! #if defined(sgi) || defined(SYS_BSDI) - static int helpsort P((const void *, const void *)); - #else - static int helpsort P((char **, char **)); ---- 301,307 ---- - static int decodearr P((char *, int *, l_fp *)); - static char * getcode P((int, struct codestring *)); - static void help P((struct parse *, FILE *)); -! #if defined(sgi) || defined(SYS_BSDI) || defined(__STDC__) - static int helpsort P((const void *, const void *)); - #else - static int helpsort P((char **, char **)); -*************** -*** 335,341 **** - static void endoutput P((FILE *)); - static void outputarr P((FILE *, char *, int, l_fp *)); - static void cookedprint P((int, int, char *, int, FILE *)); -! #if defined(sgi) || defined(SYS_BSDI) - static int assoccmp P((const void *, const void *)); - #else - static int assoccmp P((struct association *, struct association *)); ---- 335,341 ---- - static void endoutput P((FILE *)); - static void outputarr P((FILE *, char *, int, l_fp *)); - static void cookedprint P((int, int, char *, int, FILE *)); -! #if defined(sgi) || defined(SYS_BSDI) || defined(__STDC__) - static int assoccmp P((const void *, const void *)); - #else - static int assoccmp P((struct association *, struct association *)); -*************** -*** 1888,1894 **** - for (xcp = opcmds; xcp->keyword != 0; xcp++) - cmdsort[n++] = xcp->keyword; - -! #if defined(sgi) || defined(SYS_BSDI) - qsort((void *)cmdsort, n, sizeof(char *), helpsort); - #else - qsort((char *)cmdsort, n, sizeof(char *), helpsort); ---- 1888,1894 ---- - for (xcp = opcmds; xcp->keyword != 0; xcp++) - cmdsort[n++] = xcp->keyword; - -! #if defined(sgi) || defined(SYS_BSDI) || defined(__STDC__) - qsort((void *)cmdsort, n, sizeof(char *), helpsort); - #else - qsort((char *)cmdsort, n, sizeof(char *), helpsort); -*************** -*** 1934,1940 **** - * helpsort - do hostname qsort comparisons - */ - static int -! #if defined(sgi) || defined(SYS_BSDI) - helpsort(t1, t2) - const void *t1; - const void *t2; ---- 1934,1940 ---- - * helpsort - do hostname qsort comparisons - */ - static int -! #if defined(sgi) || defined(SYS_BSDI) || defined(__STDC__) - helpsort(t1, t2) - const void *t1; - const void *t2; -*************** -*** 3028,3034 **** - sortassoc() - { - if (numassoc > 1) -! #if defined(sgi) || defined(SYS_BSDI) - qsort((void *)assoc_cache, numassoc, - sizeof(struct association), assoccmp); - #else ---- 3028,3034 ---- - sortassoc() - { - if (numassoc > 1) -! #if defined(sgi) || defined(SYS_BSDI) || defined(__STDC__) - qsort((void *)assoc_cache, numassoc, - sizeof(struct association), assoccmp); - #else -*************** -*** 3042,3048 **** - * assoccmp - compare two associations - */ - static int -! #if defined(sgi) || defined(SYS_BSDI) - assoccmp(t1, t2) - const void *t1; - const void *t2; ---- 3042,3048 ---- - * assoccmp - compare two associations - */ - static int -! #if defined(sgi) || defined(SYS_BSDI) || defined(__STDC__) - assoccmp(t1, t2) - const void *t1; - const void *t2; -diff -c /dev/null 386BSD/src/contrib/xntpd/ntptrace/Makefile:1.2 -*** /dev/null Sun Apr 3 13:43:31 1994 ---- 386BSD/src/contrib/xntpd/ntptrace/Makefile Sun Apr 3 13:43:31 1994 -*************** -*** 0 **** ---- 1,28 ---- -+ # -+ # $Id: Makefile,v 1.2 1993/12/22 11:33:14 rgrimes Exp $ -+ # -+ -+ CFLAGS+= -I${.CURDIR}/../include -+ -+ .if exists(${.CURDIR}/../lib/obj) -+ LDADD+= -L${.CURDIR}/../lib/obj -+ DPADD+= -L${.CURDIR}/../lib/obj/libntp.a -+ .else -+ LDADD+= -L${.CURDIR}/../lib -+ DPADD+= -L${.CURDIR}/../lib/libntp.a -+ .endif -+ -+ LDADD+= -lntp -+ -+ PROG= ntptrace -+ MAN8= ${.CURDIR}/../doc/ntptrace.8 -+ CLEANFILES+= .version version.c -+ -+ SRCS= ntptrace.c version.c -+ -+ beforedepend: version.c -+ -+ version.c: ${.CURDIR}/../VERSION -+ ${.CURDIR}/../scripts/mkversion ntptrace -+ -+ .include <bsd.prog.mk> -diff -c /dev/null 386BSD/src/contrib/xntpd/parse/Makefile:1.1 -*** /dev/null Sun Apr 3 13:43:32 1994 ---- 386BSD/src/contrib/xntpd/parse/Makefile Sun Apr 3 13:43:32 1994 -*************** -*** 0 **** ---- 1,19 ---- -+ # -+ # $Id: Makefile,v 1.1 1993/12/21 20:04:14 wollman Exp $ -+ # -+ -+ PARSEFLAGS= -DCLOCK_SCHMID -DCLOCK_DCF7000 -DCLOCK_MEINBERG \ -+ -DCLOCK_RAWDCF -DCLOCK_TRIMSV6 -+ -+ CFLAGS+= -I${.CURDIR}/../include ${PARSEFLAGS} -+ -+ SRCS= parse.c parse_conf.c clk_meinberg.c clk_schmid.c clk_rawdcf.c \ -+ clk_dcf7000.c clk_trimble.c -+ -+ NOMAN= -+ NOPROFILE= -+ LIB= parse -+ -+ install: -+ -+ .include <bsd.lib.mk> -diff -c 386BSD/src/contrib/xntpd/scripts/mkversion:1.1.1.1 386BSD/src/contrib/xntpd/scripts/mkversion:1.2 -*** 386BSD/src/contrib/xntpd/scripts/mkversion:1.1.1.1 Sun Apr 3 13:43:49 1994 ---- 386BSD/src/contrib/xntpd/scripts/mkversion Sun Apr 3 13:43:49 1994 -*************** -*** 9,20 **** - echo $RUN > .version - - DATE="`date`" - - if [ -r VERSION ]; then - VERSION=VERSION - else - VERSION=../VERSION -! fi - - if [ -f "$VERSION" ]; then - FLAGS="`egrep '^[0-9a-zA-Z_]+=' "$VERSION" | tr '\012' ';'` " ---- 9,23 ---- - echo $RUN > .version - - DATE="`date`" -+ TOPDIR=`echo $0 | sed -e 's;mkversion;..;'` - - if [ -r VERSION ]; then - VERSION=VERSION -+ else if [ -r ${TOPDIR}/VERSION ]; then -+ VERSION=${TOPDIR}/VERSION - else - VERSION=../VERSION -! fi; fi - - if [ -f "$VERSION" ]; then - FLAGS="`egrep '^[0-9a-zA-Z_]+=' "$VERSION" | tr '\012' ';'` " -diff -c /dev/null 386BSD/src/contrib/xntpd/util/Makefile:1.2 -*** /dev/null Sun Apr 3 13:43:53 1994 ---- 386BSD/src/contrib/xntpd/util/Makefile Sun Apr 3 13:43:54 1994 -*************** -*** 0 **** ---- 1,28 ---- -+ # -+ # $Id: Makefile,v 1.2 1993/12/22 11:33:28 rgrimes Exp $ -+ # -+ -+ CFLAGS+= -I${.CURDIR}/../include -+ -+ .if exists(${.CURDIR}/../lib/obj) -+ LDADD+= -L${.CURDIR}/../lib/obj -+ DPADD+= -L${.CURDIR}/../lib/obj/libntp.a -+ .else -+ LDADD+= -L${.CURDIR}/../lib -+ DPADD+= -L${.CURDIR}/../lib/libntp.a -+ .endif -+ -+ LDADD+= -lntp -+ -+ PROG= tickadj -+ MAN8= ${.CURDIR}/../doc/tickadj.8 -+ CLEANFILES+= .version version.c -+ -+ SRCS= tickadj.c version.c -+ -+ beforedepend: version.c -+ -+ version.c: ${.CURDIR}/../VERSION -+ ${.CURDIR}/../scripts/mkversion tickadj -+ -+ .include <bsd.prog.mk> -diff -c /dev/null 386BSD/src/contrib/xntpd/xntpd/Makefile:1.5 -*** /dev/null Sun Apr 3 13:43:56 1994 ---- 386BSD/src/contrib/xntpd/xntpd/Makefile Sun Apr 3 13:43:56 1994 -*************** -*** 0 **** ---- 1,45 ---- -+ # -+ # $Id: Makefile,v 1.5 1994/04/03 20:37:26 wollman Exp $ -+ # -+ -+ CFLAGS+= -I${.CURDIR}/../include -+ -+ .if exists(${.CURDIR}/../lib/obj) -+ LDADD+= -L${.CURDIR}/../lib/obj -+ DPADD+= ${.CURDIR}/../lib/obj/libntp.a -+ .else -+ LDADD+= -L${.CURDIR}/../lib -+ DPADD+= ${.CURDIR}/../lib/libntp.a -+ .endif -+ -+ .if exists(${.CURDIR}/../parse/obj) -+ LDADD+= -L${.CURDIR}/../parse/obj -+ DPADD+= ${.CURDIR}/../parse/obj/libparse.a -+ .else -+ LDADD+= -L${.CURDIR}/../parse -+ DPADD+= ${.CURDIR}/../parse/libparse.a -+ .endif -+ -+ LDADD+= -lntp -lparse -+ -+ PROG= xntpd -+ MAN8= ${.CURDIR}/../doc/xntpd.8 -+ CLEANFILES+= .version version.c -+ -+ SRCS= ntp_config.c ntp_control.c ntp_io.c ntp_leap.c \ -+ ntp_loopfilter.c ntp_monitor.c ntp_peer.c ntp_proto.c \ -+ ntp_refclock.c ntp_request.c ntp_restrict.c ntp_timer.c \ -+ ntp_unixclock.c ntp_util.c ntpd.c refclock_chu.c \ -+ refclock_conf.c refclock_local.c refclock_pst.c \ -+ refclock_wwvb.c refclock_goes.c refclock_mx4200.c \ -+ refclock_parse.c refclock_as2201.c refclock_omega.c \ -+ refclock_tpro.c refclock_leitch.c refclock_irig.c \ -+ refclock_msfees.c refclock_gpstm.c refclock_trak.c ntp_intres.c \ -+ ntp_filegen.c version.c -+ -+ beforedepend: version.c -+ -+ version.c: ${.CURDIR}/../VERSION -+ ${.CURDIR}/../scripts/mkversion xntpd -+ -+ .include <bsd.prog.mk> -diff -c 386BSD/src/contrib/xntpd/xntpd/ntp_control.c:1.1.1.3 386BSD/src/contrib/xntpd/xntpd/ntp_control.c:1.3 -*** 386BSD/src/contrib/xntpd/xntpd/ntp_control.c:1.1.1.3 Sun Apr 3 13:43:59 1994 ---- 386BSD/src/contrib/xntpd/xntpd/ntp_control.c Sun Apr 3 13:44:00 1994 -*************** -*** 264,278 **** - /* - * System and processor definitions. These will change for the gizmo board. - */ -! #ifndef STR_SYSTEM -! #define STR_SYSTEM "UNIX" -! #endif -! #ifndef STR_PROCESSOR -! #define STR_PROCESSOR "unknown" -! #endif -! -! static char str_system[] = STR_SYSTEM; -! static char str_processor[] = STR_PROCESSOR; - - /* - * Trap structures. We only allow a few of these, and send ---- 264,271 ---- - /* - * System and processor definitions. These will change for the gizmo board. - */ -! #include <sys/utsname.h> -! static struct utsname utsname; - - /* - * Trap structures. We only allow a few of these, and send -*************** -*** 433,438 **** ---- 426,433 ---- - { - int i; - -+ uname(&utsname); -+ - ctl_clr_stats(); - - ctl_auth_keyid = 0; -*************** -*** 1267,1278 **** - ctl_putuint(sys_var[CS_LEAPWARNING].text, (U_LONG)leap_warning); - break; - case CS_PROCESSOR: -! ctl_putstr(sys_var[CS_PROCESSOR].text, str_processor, -! sizeof(str_processor) - 1); - break; - case CS_SYSTEM: -! ctl_putstr(sys_var[CS_SYSTEM].text, str_system, -! sizeof(str_system) - 1); - break; - case CS_KEYID: - ctl_putuint(sys_var[CS_KEYID].text, (U_LONG)0); ---- 1262,1273 ---- - ctl_putuint(sys_var[CS_LEAPWARNING].text, (U_LONG)leap_warning); - break; - case CS_PROCESSOR: -! ctl_putstr(sys_var[CS_PROCESSOR].text, utsname.machine, -! strlen(utsname.machine)); - break; - case CS_SYSTEM: -! ctl_putstr(sys_var[CS_SYSTEM].text, utsname.sysname, -! strlen(utsname.sysname)); - break; - case CS_KEYID: - ctl_putuint(sys_var[CS_KEYID].text, (U_LONG)0); -diff -c 386BSD/src/contrib/xntpd/xntpd/refclock_parse.c:1.1.1.3 386BSD/src/contrib/xntpd/xntpd/refclock_parse.c:1.3 -*** 386BSD/src/contrib/xntpd/xntpd/refclock_parse.c:1.1.1.3 Sun Apr 3 13:44:01 1994 ---- 386BSD/src/contrib/xntpd/xntpd/refclock_parse.c Sun Apr 3 13:44:01 1994 -*************** -*** 30,35 **** ---- 30,37 ---- - * PPS - supply loopfilter with PPS samples (if configured) - * PPSPPS - notify loopfilter of PPS file descriptor - * -+ * FREEBSD_CONRAD - Make very cheap "Conrad DCF77 RS-232" gadget work -+ * with FreeBSD. - * TTY defines: - * HAVE_BSD_TTYS - currently unsupported - * HAVE_SYSV_TTYS - will use termio.h -*************** -*** 82,87 **** ---- 84,92 ---- - #include <time.h> - - #include <sys/errno.h> -+ #ifdef FREEBSD_CONRAD -+ #include <sys/ioctl.h> -+ #endif - extern int errno; - - #if !defined(STREAM) && !defined(HAVE_SYSV_TTYS) && !defined(HAVE_BSD_TTYS) && !defined(HAVE_TERMIOS) -*************** -*** 440,446 **** ---- 445,456 ---- - #define RAWDCF_ROOTDELAY 0x00000364 /* 13 ms */ - #define RAWDCF_FORMAT "RAW DCF77 Timecode" - #define RAWDCF_MAXUNSYNC (0) /* sorry - its a true receiver - no signal - no time */ -+ -+ #ifdef FREEBSD_CONRAD -+ #define RAWDCF_CFLAG (CS8|CREAD|CLOCAL) -+ #else - #define RAWDCF_CFLAG (B50|CS8|CREAD|CLOCAL) -+ #endif - #define RAWDCF_IFLAG 0 - #define RAWDCF_OFLAG 0 - #define RAWDCF_LFLAG 0 -*************** -*** 1482,1492 **** ---- 1492,1513 ---- - struct parseunit *parse = (struct parseunit *)rbufp->recv_srcclock; - register int count; - register char *s; -+ #ifdef FREEBSD_CONRAD -+ struct timeval foo; -+ #endif -+ - /* - * eat all characters, parsing then and feeding complete samples - */ - count = rbufp->recv_length; - s = rbufp->recv_buffer; -+ #ifdef FREEBSD_CONRAD -+ ioctl(parse->fd,TIOCTIMESTAMP,&foo); -+ TVTOTS(&foo, &rbufp->recv_time); -+ rbufp->recv_time.l_uf += TS_ROUNDBIT; -+ rbufp->recv_time.l_ui += JAN_1970; -+ rbufp->recv_time.l_uf &= TS_MASK; -+ #endif - - while (count--) - { -*************** -*** 2271,2277 **** - tm.c_iflag = clockinfo[type].cl_iflag; - tm.c_oflag = clockinfo[type].cl_oflag; - tm.c_lflag = clockinfo[type].cl_lflag; -! - if (TTY_SETATTR(fd232, &tm) == -1) - { - syslog(LOG_ERR, "PARSE receiver #%d: parse_start: tcsetattr(%d, &tm): %m", unit, fd232); ---- 2292,2301 ---- - tm.c_iflag = clockinfo[type].cl_iflag; - tm.c_oflag = clockinfo[type].cl_oflag; - tm.c_lflag = clockinfo[type].cl_lflag; -! #ifdef FREEBSD_CONRAD -! tm.c_ispeed = 50; -! tm.c_ospeed = 50; -! #endif - if (TTY_SETATTR(fd232, &tm) == -1) - { - syslog(LOG_ERR, "PARSE receiver #%d: parse_start: tcsetattr(%d, &tm): %m", unit, fd232); -*************** -*** 2314,2319 **** ---- 2338,2358 ---- - return 0; /* well, ok - special initialisation broke */ - } - -+ #ifdef FREEBSD_CONRAD -+ { -+ int i,j; -+ struct timeval tv; -+ ioctl(parse->fd,TIOCTIMESTAMP,&tv); -+ j = TIOCM_RTS; -+ i = ioctl(fd232, TIOCMBIC, &j); -+ if (i < 0) { -+ syslog(LOG_ERR, -+ "PARSE receiver #%d: lowrts_poll: failed to lower RTS: %m", -+ CL_UNIT(parse->unit)); -+ } -+ } -+ #endif -+ - strcpy(tmp_ctl.parseformat.parse_buffer, parse->parse_type->cl_format); - tmp_ctl.parseformat.parse_count = strlen(tmp_ctl.parseformat.parse_buffer); - -diff -c 386BSD/src/contrib/xntpd/xntpd/refclock_trak.c:1.1.1.1 386BSD/src/contrib/xntpd/xntpd/refclock_trak.c:1.2 -*** 386BSD/src/contrib/xntpd/xntpd/refclock_trak.c:1.1.1.1 Sun Apr 3 13:44:02 1994 ---- 386BSD/src/contrib/xntpd/xntpd/refclock_trak.c Sun Apr 3 13:44:02 1994 -*************** -*** 14,19 **** ---- 14,21 ---- - #include "ntp_refclock.h" - #include "ntp_unixtime.h" - -+ static void gps_send(); -+ - #if defined(HAVE_BSD_TTYS) - #include <sgtty.h> - #endif /* HAVE_BSD_TTYS */ -*************** -*** 841,847 **** - /* - * usually trak_receive can get a timestamp every second - */ -! #ifndef TRAKPPS && TRAKCLK - gettstamp(&gps->lastrec); - #endif - gps->polls++; ---- 843,849 ---- - /* - * usually trak_receive can get a timestamp every second - */ -! #if !defined(TRAKPPS) && !defined(TRAKCLK) - gettstamp(&gps->lastrec); - #endif - gps->polls++; -diff -c /dev/null 386BSD/src/contrib/xntpd/xntpdc/Makefile:1.2 -*** /dev/null Sun Apr 3 13:44:03 1994 ---- 386BSD/src/contrib/xntpd/xntpdc/Makefile Sun Apr 3 13:44:03 1994 -*************** -*** 0 **** ---- 1,28 ---- -+ # -+ # $Id: Makefile,v 1.2 1993/12/22 11:34:00 rgrimes Exp $ -+ # -+ -+ CFLAGS+= -I${.CURDIR}/../include -+ -+ .if exists(${.CURDIR}/../lib/obj) -+ LDADD+= -L${.CURDIR}/../lib/obj -+ DPADD+= -L${.CURDIR}/../lib/obj/libntp.a -+ .else -+ LDADD+= -L${.CURDIR}/../lib -+ DPADD+= -L${.CURDIR}/../lib/libntp.a -+ .endif -+ -+ LDADD+= -lntp -+ -+ PROG= xntpdc -+ MAN8= ${.CURDIR}/../doc/xntpdc.8 -+ CLEANFILES+= .version version.c -+ -+ SRCS= ntpdc.c ntpdc_ops.c version.c -+ -+ beforedepend: version.c -+ -+ version.c: ${.CURDIR}/../VERSION -+ ${.CURDIR}/../scripts/mkversion xntpdc -+ -+ .include <bsd.prog.mk> -diff -c 386BSD/src/contrib/xntpd/xntpdc/ntpdc.c:1.1.1.3 386BSD/src/contrib/xntpd/xntpdc/ntpdc.c:1.2 -*** 386BSD/src/contrib/xntpd/xntpdc/ntpdc.c:1.1.1.3 Sun Apr 3 13:44:04 1994 ---- 386BSD/src/contrib/xntpd/xntpdc/ntpdc.c Sun Apr 3 13:44:04 1994 -*************** -*** 53,59 **** - static int getarg P((char *, int, arg_v *)); - static int getnetnum P((char *, U_LONG *, char *)); - static void help P((struct parse *, FILE *)); -! #if defined(sgi) || defined(SYS_BSDI) - static int helpsort P((const void *, const void *)); - #else - static int helpsort P((char **, char **)); ---- 53,59 ---- - static int getarg P((char *, int, arg_v *)); - static int getnetnum P((char *, U_LONG *, char *)); - static void help P((struct parse *, FILE *)); -! #if defined(sgi) || defined(SYS_BSDI) || defined(__STDC__) - static int helpsort P((const void *, const void *)); - #else - static int helpsort P((char **, char **)); -*************** -*** 1153,1159 **** - for (xcp = opcmds; xcp->keyword != 0; xcp++) - cmdsort[n++] = xcp->keyword; - -! #if defined(sgi) || defined(SYS_BSDI) - qsort((void *)cmdsort, n, sizeof(char *), helpsort); - #else - qsort((char *)cmdsort, n, sizeof(char *), helpsort); ---- 1153,1159 ---- - for (xcp = opcmds; xcp->keyword != 0; xcp++) - cmdsort[n++] = xcp->keyword; - -! #if defined(sgi) || defined(SYS_BSDI) || defined(__STDC__) - qsort((void *)cmdsort, n, sizeof(char *), helpsort); - #else - qsort((char *)cmdsort, n, sizeof(char *), helpsort); -*************** -*** 1199,1205 **** - * helpsort - do hostname qsort comparisons - */ - static int -! #if defined(sgi) || defined(SYS_BSDI) - helpsort(t1, t2) - const void *t1; - const void *t2; ---- 1199,1205 ---- - * helpsort - do hostname qsort comparisons - */ - static int -! #if defined(sgi) || defined(SYS_BSDI) || defined(__STDC__) - helpsort(t1, t2) - const void *t1; - const void *t2; -diff -c /dev/null 386BSD/src/contrib/xntpd/xntpres/Makefile:1.2 -*** /dev/null Sun Apr 3 13:44:05 1994 ---- 386BSD/src/contrib/xntpd/xntpres/Makefile Sun Apr 3 13:44:05 1994 -*************** -*** 0 **** ---- 1,28 ---- -+ # -+ # $Id: Makefile,v 1.2 1993/12/22 11:34:09 rgrimes Exp $ -+ # -+ -+ CFLAGS+= -I${.CURDIR}/../include -+ -+ .if exists(${.CURDIR}/../lib/obj) -+ LDADD+= -L${.CURDIR}/../lib/obj -+ DPADD+= -L${.CURDIR}/../lib/obj/libntp.a -+ .else -+ LDADD+= -L${.CURDIR}/../lib -+ DPADD+= -L${.CURDIR}/../lib/libntp.a -+ .endif -+ -+ LDADD+= -lntp -+ -+ PROG= xntpres -+ NOMAN= -+ CLEANFILES+= .version version.c -+ -+ SRCS= xntpres.c version.c -+ -+ beforedepend: version.c -+ -+ version.c: ${.CURDIR}/../VERSION -+ ${.CURDIR}/../scripts/mkversion xntpres -+ -+ .include <bsd.prog.mk> - --GAWollman - --- -Garrett A. Wollman | Shashish is simple, it's discreet, it's brief. ... -wollman@lcs.mit.edu | Shashish is the bonding of hearts in spite of distance. -formerly known as | It is a bond more powerful than absence. We like people -wollman@emba.uvm.edu | who like Shashish. - Claude McKenzie + Florent Vollant -[no save] - diff --git a/usr.sbin/xntpd/patches/patch.36 b/usr.sbin/xntpd/patches/patch.36 deleted file mode 100644 index b90df0d..0000000 --- a/usr.sbin/xntpd/patches/patch.36 +++ /dev/null @@ -1,42 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa18708; 7 Apr 94 14:50 EDT -Received: from mudshark.artisoft.com by louie.udel.edu id aa16541; - 7 Apr 94 14:46 EDT -Received: by mudshark.artisoft.com id AA11987 - (5.67b/IDA-1.5 for mills@udel.edu); Thu, 7 Apr 1994 11:46:32 -0700 -Date: Thu, 7 Apr 1994 11:46:32 -0700 -From: Matt Day <mday@artisoft.com> -Message-Id: <199404071846.AA11987@mudshark.artisoft.com> -To: mills@udel.edu -Subject: XNTP bug on Linux - -adjtime() on Linux fails if you try to adjust more than 131072 -microseconds. This causes `ntpdate' to fail on Linux when the system -clock is off by more than 131072 microseconds but less than -NTPDATE_THRESHOLD (500 ms). - -Reducing NTPDATE_THRESHOLD to less than 131072 microseconds fixed the -problem. - -From the comments in the code for Linux's adjtime(), it looks like this -problem might go away someday. - -Thanks! - -*** ntpdate.h- Tue Aug 24 14:29:30 1993 ---- ntpdate.h Thu Apr 7 11:33:53 1994 -*************** -*** 54,60 **** ---- 54,64 ---- - * are close, or step the time if the times are farther apart. The - * following defines what is "close". - */ -+ #ifdef linux -+ #define NTPDATE_THRESHOLD (FP_SECOND / 8) /* 1/8 second */ -+ #else - #define NTPDATE_THRESHOLD (FP_SECOND >> 1) /* 1/2 second */ -+ #endif - - /* - * When doing adjustments, ntpdate actually overadjusts (currently - diff --git a/usr.sbin/xntpd/patches/patch.37 b/usr.sbin/xntpd/patches/patch.37 deleted file mode 100644 index e17267f..0000000 --- a/usr.sbin/xntpd/patches/patch.37 +++ /dev/null @@ -1,204 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa25219; 8 Apr 94 17:07 EDT -Received: from ni.umd.edu by louie.udel.edu id aa03359; 8 Apr 94 16:58 EDT -Received: by ni.umd.edu id AA18341 - (5.65c/IDA-1.4.4 for ntp-list); Fri, 8 Apr 1994 16:55:09 -0400 -Received: from RUTGERS.EDU by ni.umd.edu with SMTP id AA18337 - (5.65c/IDA-1.4.4 for <ntp@ni.umd.edu>); Fri, 8 Apr 1994 16:55:02 -0400 -Received: from unipress-link.rutgers.edu by rutgers.edu (5.59/SMI4.0/RU1.5/3.08) - id AA16356; Fri, 8 Apr 94 16:54:44 EDT -Received: from huh.unipress.com by repo.unipress.com (4.1/SMI-4.1/UniPress022294.2) - id AA10459; Fri, 8 Apr 94 16:54:36 EDT via -Message-Id: <9404082054.AA10459@repo.unipress.com> -To: ntp@ni.umd.edu -Subject: Re: xntp for univel/unix-ware on x86 -Date: Fri, 08 Apr 94 16:54:31 -0400 -From: Ray Schnitzler <ras@unipress.com> - - -I am happy (but not particularly proud - it's more than a - little rough around the edges) to report a working - xntpd for Univel. - -It wound up being a hack on solaris, svr4, and (for the lack - of kernel tickadj) irix. - -util/tickadj does *not* work, even for controlling 'tick'. - I'm not sure what the right behavior should be. - -Most of the changes are signalled by SYS_UNIVEL, as - initiated by OS=univel. - -There are many additional loose ends, which are not terribly - important to me to clean up, since the univel is a - very low usage machine, here, and my because - employer expects me to be working on other things, - altogether. - -Nevertheless, it seems to work. - -Special thanks go to Denton Gentry for advice along the way. - - -Enjoy. - - -Here are the changes I made. First, the (new) - machines/univel file, and then the (rest of the) - context diffs: - -*** /dev/null Fri Apr 8 16:49:24 1994 ---- machines/univel Fri Apr 8 12:38:20 1994 -*************** -*** 0 **** ---- 1,10 ---- -+ SHELL= /bin/sh -+ RANLIB= ls # ar does the work of ranlib under System V -+ DEFS= -DSYS_UNIVEL -DSTREAMS_TLI -DHAVE_TERMIOS -+ AUTHDEFS= -DDES -DMD5 -+ CLOCKDEFS= -+ DAEMONLIBS= -lnsl -lsocket -lelf -+ RESLIB= -lnsl -lsocket -lelf -+ INSTALL=$(TOP)scripts/install.sh -+ SHELL= /bin/sh -+ RANLIB= ls # ar does the work of ranlib under System V -*** authstuff/authspeed.c.orig Thu Jan 27 09:03:12 1994 ---- authstuff/authspeed.c Fri Apr 8 14:19:35 1994 -*************** -*** 2,8 **** - * authspeed - figure out how LONG it takes to do an NTP encryption - */ - -! #if defined(SYS_HPUX) || defined(SYS_AUX3) || defined(SYS_AUX2) || defined(SOLARIS) || defined(SYS_SVR4) || defined(SYS_PTX) - #define FAKE_RUSAGE - #endif - ---- 2,8 ---- - * authspeed - figure out how LONG it takes to do an NTP encryption - */ - -! #if defined(SYS_HPUX) || defined(SYS_AUX3) || defined(SYS_AUX2) || defined(SOLARIS) || defined(SYS_SVR4) || defined(SYS_PTX) || defined(SYS_UNIVEL) - #define FAKE_RUSAGE - #endif -*** include/ntp_if.h.orig Mon Nov 15 16:21:29 1993 ---- include/ntp_if.h Fri Apr 8 14:51:49 1994 -*************** -*** 16,21 **** ---- 16,25 ---- - #include <sys/sockio.h> - #endif - -+ #if defined(SYS_UNIVEL) -+ #include <sys/sockio.h> -+ #endif -+ - #if defined(SYS_PTX) || defined(SYS_SINIXM) - #include <sys/stream.h> - #include <sys/stropts.h> -*** include/ntp_machine.h.orig Mon Mar 14 02:47:02 1994 ---- include/ntp_machine.h Fri Apr 8 14:45:42 1994 -*************** -*** 526,531 **** ---- 526,563 ---- - #endif - - /* -+ * Univel SVR4 on intel x86 processor -+ */ -+ #if defined(SYS_UNIVEL) -+ /* #define _POSIX_SOURCE */ -+ #define NTP_POSIX_SOURCE -+ #define HAVE_ATT_NICE -+ #define HAVE_READKMEM -+ #define USE_PROTOTYPES -+ #undef HAVE_ATT_SETPGRP -+ #define UDP_WILDCARD_DELIVERY -+ #define HAVE_SIGNALED_IO -+ #define USE_TTY_SIGPOLL -+ #define USE_UDP_SIGPOLL -+ #define STREAM -+ #define STREAMS -+ #ifndef STREAMS_TLI -+ /*#define STREAMS_TLI*/ -+ #endif -+ /* #define USE_STREAMS_DEVICE_FOR_IF_CONFIG */ -+ #undef STEP_SLEW /* TWO step */ -+ #define LOCK_PROCESS -+ #undef SYSV_TIMEOFDAY -+ #define SIZE_RETURNED_IN_BUFFER -+ #define RETSIGTYPE void -+ #include <sys/types.h> -+ #include <netinet/in_systm.h> -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/Univel" -+ #endif -+ #endif -+ -+ /* - * DomainOS - */ - #if defined(SYS_DOMAINOS) -*** xntpd/ntp_unixclock.c.orig Thu Feb 3 00:20:20 1994 ---- xntpd/ntp_unixclock.c Fri Apr 8 14:40:55 1994 -*************** -*** 255,260 **** ---- 255,277 ---- - /* Define the following to be what the tick and tickadj variables are - * called in your kernel. - */ -+ #if defined(SYS_UNIVEL) -+ /* -+ * clock_parms - return the local clock tickadj and tick parameters -+ * -+ * The values set here were determined experimentally on a 486 system -+ * I'm not confident in them. - RAS -+ * -+ */ -+ static void -+ clock_parms(tickadj, tick) -+ U_LONG *tickadj; -+ U_LONG *tick; -+ { -+ *tick = 10000; /* microseconds */ -+ *tickadj = 80; /* microseconds */ -+ } -+ #else /* SYS_UNIVEL */ - - #if defined(SYS_AUX3) || defined(SYS_AUX2) || defined(SYS_SVR4) || defined(SYS_PTX) - #define K_TICKADJ_NAME "tickadj" -*************** -*** 421,427 **** - } - #endif /* sgi */ - -- - #ifdef NOKMEM - - #ifndef HZ ---- 438,443 ---- -*************** -*** 571,573 **** ---- 587,590 ---- - *tick = (U_LONG)txc.tick; - } - #endif /* SYS_LINUX */ -+ #endif /* SYS_UNIVEL */ -*** xntpd/ntpd.c.orig Wed Feb 16 22:09:35 1994 ---- xntpd/ntpd.c Fri Apr 8 16:35:57 1994 -*************** -*** 14,20 **** - #include <sys/rtprio.h> - #endif - -! #if defined(SYS_SVR4) - #include <termios.h> - #endif - ---- 14,20 ---- - #include <sys/rtprio.h> - #endif - -! #if defined(SYS_SVR4) || defined (SYS_UNIVEL) - #include <termios.h> - #endif - diff --git a/usr.sbin/xntpd/patches/patch.38 b/usr.sbin/xntpd/patches/patch.38 deleted file mode 100644 index dddba69..0000000 --- a/usr.sbin/xntpd/patches/patch.38 +++ /dev/null @@ -1,226 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa09565; 11 Apr 94 13:04 EDT -Received: from ni.umd.edu by louie.udel.edu id aa10661; 11 Apr 94 12:57 EDT -Received: by ni.umd.edu id AA00787 - (5.65c/IDA-1.4.4 for ntp-list); Mon, 11 Apr 1994 12:50:20 -0400 -Received: from RUTGERS.EDU by ni.umd.edu with SMTP id AA00783 - (5.65c/IDA-1.4.4 for <ntp@ni.umd.edu>); Mon, 11 Apr 1994 12:50:13 -0400 -Received: from unipress-link.rutgers.edu by rutgers.edu (5.59/SMI4.0/RU1.5/3.08) - id AA26905; Mon, 11 Apr 94 12:49:43 EDT -Received: from huh.unipress.com by repo.unipress.com (4.1/SMI-4.1/UniPress022294.2) - id AA03031; Mon, 11 Apr 94 12:49:27 EDT via -Message-Id: <9404111649.AA03031@repo.unipress.com> -To: ntp@ni.umd.edu -Subject: Re: xntp for univel/unix-ware on x86 -Date: Mon, 11 Apr 94 12:49:25 -0400 -From: Ray Schnitzler <ras@unipress.com> - - -As seems usual, every patch is followed by a re-patch. This - is a (modified) re-posting of patches to make xntp - work on unixware svr4. It now uses - machines/unixware1 and SYS_UNIXWARE1 (instead of - univel, as suggested by J J Farrell), and now - includes some RELNOTES and COPYRIGHT text (as - suggested by Dave) - -It is still rough, but it still works. The tickadj utility - still does *not* work, even for controlling 'tick'. - I'm not sure what the right behavior should be since - there is no 'tickadj' kernel var. - -In addition to the credits I mentioned above, special thanks - go to Denton Gentry for advice along the way. - - -Enjoy. - -Ray Schnitzler -UniPress Software, Inc. ------------------------------------------------------------- -Here are the changes I made. First, the (new) - machines/univel file, and then the (rest of the) - context diffs: - -*** machines/unixware1.3.3p Fri Apr 8 16:48:35 1994 ---- machines/unixware1 Mon Apr 11 11:08:10 1994 -*************** -*** 0 **** ---- 1,10 ---- -+ SHELL= /bin/sh -+ RANLIB= ls # ar does the work of ranlib under System V -+ DEFS= -DSYS_UNIXWARE1 -DSTREAMS_TLI -DHAVE_TERMIOS -DCONFIG_FILE=\\"/usr/local/etc/ntp.conf\\" -+ AUTHDEFS= -DDES -DMD5 -+ CLOCKDEFS= -+ DAEMONLIBS= -lnsl -lsocket -lelf -+ RESLIB= -lnsl -lsocket -lelf -+ INSTALL=$(TOP)scripts/install.sh -+ SHELL= /bin/sh -+ RANLIB= ls # ar does the work of ranlib under System V -*** COPYRIGHT.3.3p Thu Feb 3 00:20:07 1994 ---- COPYRIGHT Mon Apr 11 10:47:24 1994 -*************** -*** 55,58 **** ---- 55,59 ---- - * Torsten Duwe <duwe@immd4.informatik.uni-erlangen.de> (Linux Port) - * Paul A Vixie <vixie@vix.com> (TrueTime GPS driver) - * Jim Jagielski <jim@jagubox.gsfc.nasa.gov> (A/UX port) -+ * Ray Schnitzler <schnitz@unipress.com> (First pass at a Unixware1 port.) - */ -*** RELNOTES.3.3p Thu Jan 27 09:33:09 1994 ---- RELNOTES Mon Apr 11 11:14:35 1994 -*************** -*** 140,145 **** ---- 140,146 ---- - PC BSD/386 1.0 gcc LOCAL_CLOCK possibly see "build problems" - PC Linux (pl14) gcc LOCAL_CLOCK (dw 93/10/30) - PC Dell SVR4 v2.2 gcc ? (tl 93/12/30) -+ PC Unixware1/SVR4 cc no tickadj, ? (ras 93/04/11) - NCR3445 NCR SVR4 cc LOCAL_CLOCK (tm 93/11/29) - - pb: Piete Brooks -*************** -*** 149,154 **** ---- 150,156 ---- - tl: Tony Lill <ajlill@tlill.hookup.net> - tm: Tom Moore <Tom.Moore@DaytonOH.NCR.COM> - jmj: Jim Jagielski <jim@jagubox.gsfc.nasa.gov> -+ ras: Ray Schnitzler <schnitz@unipress.com> - - Build Problems (and workaround): - -*** authstuff/authspeed.c.3.3p Thu Jan 27 09:03:12 1994 ---- authstuff/authspeed.c Mon Apr 11 10:29:47 1994 -*************** -*** 2,8 **** - * authspeed - figure out how LONG it takes to do an NTP encryption - */ - -! #if defined(SYS_HPUX) || defined(SYS_AUX3) || defined(SYS_AUX2) || defined(SOLARIS) || defined(SYS_SVR4) || defined(SYS_PTX) - #define FAKE_RUSAGE - #endif - ---- 2,8 ---- - * authspeed - figure out how LONG it takes to do an NTP encryption - */ - -! #if defined(SYS_HPUX) || defined(SYS_AUX3) || defined(SYS_AUX2) || defined(SOLARIS) || defined(SYS_SVR4) || defined(SYS_PTX) || defined(SYS_UNIXWARE1) - #define FAKE_RUSAGE - #endif - -*** include/ntp_if.h.3.3p Mon Nov 15 16:21:29 1993 ---- include/ntp_if.h Mon Apr 11 10:30:21 1994 -*************** -*** 16,21 **** ---- 16,25 ---- - #include <sys/sockio.h> - #endif - -+ #if defined(SYS_UNIXWARE1) -+ #include <sys/sockio.h> -+ #endif -+ - #if defined(SYS_PTX) || defined(SYS_SINIXM) - #include <sys/stream.h> - #include <sys/stropts.h> -*** include/ntp_machine.h.3.3p Mon Mar 14 02:47:02 1994 ---- include/ntp_machine.h Mon Apr 11 10:31:11 1994 -*************** -*** 526,531 **** ---- 526,565 ---- - #endif - - /* -+ * (Univel/Novell) Unixware1 SVR4 on intel x86 processor -+ */ -+ #if defined(SYS_UNIXWARE1) -+ /* #define _POSIX_SOURCE */ -+ #undef HAVE_ATT_SETPGRP -+ #define USE_PROTOTYPES -+ #define NTP_POSIX_SOURCE -+ #define HAVE_ATT_NICE -+ #define HAVE_READKMEM -+ #define USE_TTY_SIGPOLL -+ #define USE_UDP_SIGPOLL -+ #define UDP_WILDCARD_DELIVERY -+ #undef HAVE_SIGNALED_IO -+ #define STREAM -+ #define STREAMS -+ #ifndef STREAMS_TLI -+ /*#define STREAMS_TLI*/ -+ #endif -+ /* #define USE_STREAMS_DEVICE_FOR_IF_CONFIG */ -+ #undef STEP_SLEW /* TWO step */ -+ #define LOCK_PROCESS -+ #define NO_SIGNED_CHAR_DECL -+ #undef SYSV_TIMEOFDAY -+ #define SIZE_RETURNED_IN_BUFFER -+ #define RETSIGTYPE void -+ #include <sys/sockio.h> -+ #include <sys/types.h> -+ #include <netinet/in_systm.h> -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX/Unixware1" -+ #endif -+ #endif -+ -+ /* - * DomainOS - */ - #if defined(SYS_DOMAINOS) -*** xntpd/ntp_unixclock.c.3.3p Thu Feb 3 00:20:20 1994 ---- xntpd/ntp_unixclock.c Mon Apr 11 10:33:23 1994 -*************** -*** 255,260 **** ---- 255,277 ---- - /* Define the following to be what the tick and tickadj variables are - * called in your kernel. - */ -+ #if defined(SYS_UNIXWARE1) -+ /* -+ * clock_parms - return the local clock tickadj and tick parameters -+ * -+ * The values set here were determined experimentally on a 486 system -+ * I'm not confident in them. - RAS -+ * -+ */ -+ static void -+ clock_parms(tickadj, tick) -+ U_LONG *tickadj; -+ U_LONG *tick; -+ { -+ *tick = 10000; /* microseconds */ -+ *tickadj = 80; /* microseconds */ -+ } -+ #else /* SYS_UNIXWARE1 */ - - #if defined(SYS_AUX3) || defined(SYS_AUX2) || defined(SYS_SVR4) || defined(SYS_PTX) - #define K_TICKADJ_NAME "tickadj" -*************** -*** 571,573 **** ---- 587,590 ---- - *tick = (U_LONG)txc.tick; - } - #endif /* SYS_LINUX */ -+ #endif /* SYS_UNIXWARE1 */ -*** xntpd/ntpd.c.3.3p Wed Feb 16 22:09:35 1994 ---- xntpd/ntpd.c Mon Apr 11 10:33:58 1994 -*************** -*** 14,20 **** - #include <sys/rtprio.h> - #endif - -! #if defined(SYS_SVR4) - #include <termios.h> - #endif - ---- 14,21 ---- - #include <sys/rtprio.h> - #endif - -! /* Shouldn't this test for HAVE_TERMIOS - RAS */ -! #if defined(SYS_SVR4) || defined (SYS_UNIXWARE1) - #include <termios.h> - #endif - - diff --git a/usr.sbin/xntpd/patches/patch.39 b/usr.sbin/xntpd/patches/patch.39 deleted file mode 100644 index 12e09fe..0000000 --- a/usr.sbin/xntpd/patches/patch.39 +++ /dev/null @@ -1,78 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa21593; 13 Apr 94 8:23 EDT -Received: from jagubox.gsfc.nasa.gov by louie.udel.edu id aa20245; - 13 Apr 94 8:15 EDT -Received: by jagubox.gsfc.nasa.gov (Smail3.1.28.1 #2) - id m0pr3rH-0005s0C; Wed, 13 Apr 94 08:15 EDT -Message-Id: <m0pr3rH-0005s0C@jagubox.gsfc.nasa.gov> -From: Jim Jagielski <jim@jagubox.gsfc.nasa.gov> -Subject: Minor change for ntp_loopfilter (and loop.c) in 3.3q -To: Mills@udel.edu -Date: Wed, 13 Apr 1994 08:15:55 -0400 (EDT) -Reply-To: Jim Jagielski <jim@jagubox.gsfc.nasa.gov> -In-Reply-To: <9308051324.aa24396@huey.udel.edu> from "Mills@udel.edu" at Aug 5, 93 01:24:24 pm -X-Mailer: ELM [version 2.4 PL23] -Content-Type: text -Content-Length: 1738 - -One of the changes between 3.3p and 3.3q was the format change of the syslog -message when the clock is reset when xntpd sees a "large" offset. This change -is nice, but it would be "better" is the notice also made mention of whether -the reset was a step or slew (as defined by SLEWALWAYS). - -This patch adds that: -*** xntpd/Oloop.c Wed Apr 13 08:05:09 1994 ---- xntpd/loop.c Wed Apr 13 08:06:32 1994 -*************** -*** 458,464 **** - lfptoa(fp_offset, 6)); - return (0); - } -! syslog(LOG_NOTICE, "clock reset %s\n", - lfptoa(fp_offset, 6)); - step_systime(fp_offset); - clock_adjust = 0; ---- 458,469 ---- - lfptoa(fp_offset, 6)); - return (0); - } -! syslog(LOG_NOTICE, "clock reset (%s) %s\n", -! #ifdef SLEWALWAYS -! "slew", -! #else -! "step", -! #endif - lfptoa(fp_offset, 6)); - step_systime(fp_offset); - clock_adjust = 0; -*** xntpd/Ontp_loopfilter.c Wed Apr 13 08:05:23 1994 ---- xntpd/ntp_loopfilter.c Wed Apr 13 08:07:03 1994 -*************** -*** 458,464 **** - lfptoa(fp_offset, 6)); - return (0); - } -! syslog(LOG_NOTICE, "clock reset %s\n", - lfptoa(fp_offset, 6)); - step_systime(fp_offset); - clock_adjust = 0; ---- 458,469 ---- - lfptoa(fp_offset, 6)); - return (0); - } -! syslog(LOG_NOTICE, "clock reset (%s) %s\n", -! #ifdef SLEWALWAYS -! "slew", -! #else -! "step", -! #endif - lfptoa(fp_offset, 6)); - step_systime(fp_offset); - clock_adjust = 0; --- -#include <std/disclaimer.h> - Jim Jagielski | "Is this something you can share with - jim@jagubox.gsfc.nasa.gov | the rest of us Amazing Larry!!??" - NASA/GSFC, Code 734.4 | Pee Wee - Greenbelt, MD 20771 | - diff --git a/usr.sbin/xntpd/patches/patch.4 b/usr.sbin/xntpd/patches/patch.4 deleted file mode 100644 index ef06ee9..0000000 --- a/usr.sbin/xntpd/patches/patch.4 +++ /dev/null @@ -1,4719 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa12898; 26 Jan 94 21:06 EST -Received: from sony.com by louie.udel.edu id aa05924; 26 Jan 94 21:01 EST -Received: by sony.com id AA18168; Wed, 26 Jan 94 18:00:44 -0800 -X-Btw: sony.com is also sonygate.sony.com -Received: by mail1.gw.in.sel.sony.com id AA25072; Wed, 26 Jan 94 18:00:43 -0800 -Received: by mail1.sjc.in.sel.sony.com id AA13634; Wed, 26 Jan 94 18:00:41 -0800 -Received: by morality.sjc.hw.sony.com; id AA23624; Wed, 26 Jan 94 18:00:40 -0800 -Date: Wed, 26 Jan 94 18:00:40 -0800 -From: Paul Vixie <Paul_Vixie@corpmis.sjc.hw.sony.com> -Message-Id: <9401270200.AA23624@morality.sjc.hw.sony.com> -To: mills@udel.edu -Subject: diffs against 3.3c (26-jan 11:36) -Cc: paul@vix.com - -These have been tested on BSD/386 1.0 and on HP-UX 8.??. I have more to do, -but this is the last I'm going to do before 3.3d (or whatever) comes out with -the other patches you're expecting. I need to have a day with just me and NTP -and everybody else with their mits outa the code while I finish the portability -stuff. - -*** /tmp/RCSA023397 Wed Jan 26 17:56:22 1994 ---- adjtime/adjtimed.c Wed Jan 26 16:33:27 1994 -*************** -*** 42,47 **** - - double atof(); -! extern int optind; -! extern char *optarg; - - int InitClockRate(); ---- 42,47 ---- - - double atof(); -! extern int ntp_optind; -! extern char *ntp_optarg; - - int InitClockRate(); -*************** -*** 84,88 **** - openlog("adjtimed", LOG_PID, LOG_LOCAL6); - -! while ((ch = getopt(argc, argv, "hkrvdfp:")) != EOF) { - switch (ch) { - case 'k': ---- 84,88 ---- - openlog("adjtimed", LOG_PID, LOG_LOCAL6); - -! while ((ch = ntp_getopt(argc, argv, "hkrvdfp:")) != EOF) { - switch (ch) { - case 'k': -*************** -*** 114,118 **** - - case 'p': -! if ((RATE = atof(optarg)) <= 0.0 || RATE >= 100.0) { - fputs("adjtimed: percentage must be between 0.0 and 100.0\n", stderr); - exit(1); ---- 114,118 ---- - - case 'p': -! if ((RATE = atof(ntp_optarg)) <= 0.0 || RATE >= 100.0) { - fputs("adjtimed: percentage must be between 0.0 and 100.0\n", stderr); - exit(1); -*** /tmp/RCSA023401 Wed Jan 26 17:56:23 1994 ---- authstuff/authspeed.c Wed Jan 26 16:33:28 1994 -*************** -*** 66,75 **** - int i; - int errflg = 0; -! extern int optind; -! extern char *optarg; - - progname = argv[0]; - loops = DEFLOOPS; -! while ((c = getopt_l(argc, argv, "cdmn:")) != EOF) - switch (c) { - case 'c': ---- 66,75 ---- - int i; - int errflg = 0; -! extern int ntp_optind; -! extern char *ntp_optarg; - - progname = argv[0]; - loops = DEFLOOPS; -! while ((c = ntp_getopt(argc, argv, "cdmn:")) != EOF) - switch (c) { - case 'c': -*************** -*** 83,91 **** - break; - case 'n': -! loops = atoi(optarg); - if (loops <= 0) { - (void) fprintf(stderr, - "%s: %s is unlikely to be a useful number of loops\n", -! progname, optarg); - errflg++; - } ---- 83,91 ---- - break; - case 'n': -! loops = atoi(ntp_optarg); - if (loops <= 0) { - (void) fprintf(stderr, - "%s: %s is unlikely to be a useful number of loops\n", -! progname, ntp_optarg); - errflg++; - } -*************** -*** 95,99 **** - break; - } -! if (errflg || optind == argc) { - (void) fprintf(stderr, - "usage: %s [-d] [-n loops] [ -c ] auth.samplekeys\n", ---- 95,99 ---- - break; - } -! if (errflg || ntp_optind == argc) { - (void) fprintf(stderr, - "usage: %s [-d] [-n loops] [ -c ] auth.samplekeys\n", -*************** -*** 109,113 **** - - init_auth(); -! authreadkeys(argv[optind]); - for (i = 0; i < 16; i++) { - if (!auth_havekey(i + domd5)) { ---- 109,113 ---- - - init_auth(); -! authreadkeys(argv[ntp_optind]); - for (i = 0; i < 16; i++) { - if (!auth_havekey(i + domd5)) { -*** /tmp/RCSA023401 Wed Jan 26 17:56:23 1994 ---- authstuff/keyparity.c Wed Jan 26 16:33:28 1994 -*************** -*** 50,58 **** - int keytype; - U_LONG key[2]; -! extern int optind; -! extern char *optarg; - - progname = argv[0]; -! while ((c = getopt_l(argc, argv, "adno:s")) != EOF) - switch (c) { - case 'a': ---- 50,58 ---- - int keytype; - U_LONG key[2]; -! extern int ntp_optind; -! extern char *ntp_optarg; - - progname = argv[0]; -! while ((c = ntp_getopt(argc, argv, "adno:s")) != EOF) - switch (c) { - case 'a': -*************** -*** 69,76 **** - break; - case 'o': -! if (*optarg == 'n') { - ntpoutflag = 1; - gotoopt = 1; -! } else if (*optarg == 's') { - ntpoutflag = 0; - gotoopt = 1; ---- 69,76 ---- - break; - case 'o': -! if (*ntp_optarg == 'n') { - ntpoutflag = 1; - gotoopt = 1; -! } else if (*ntp_optarg == 's') { - ntpoutflag = 0; - gotoopt = 1; -*************** -*** 86,90 **** - break; - } -! if (errflg || optind == argc) { - (void) fprintf(stderr, - "usage: %s -n|-s [-a] [-o n|s] key [...]\n", ---- 86,90 ---- - break; - } -! if (errflg || ntp_optind == argc) { - (void) fprintf(stderr, - "usage: %s -n|-s [-a] [-o n|s] key [...]\n", -*************** -*** 119,127 **** - keytype = KEY_TYPE_STD; - -! for (; optind < argc; optind++) { -! if (!decodekey(keytype, argv[optind], key)) { - (void) fprintf(stderr, - "%s: format of key %s invalid\n", -! progname, argv[optind]); - exit(1); - } ---- 119,127 ---- - keytype = KEY_TYPE_STD; - -! for (; ntp_optind < argc; ntp_optind++) { -! if (!decodekey(keytype, argv[ntp_optind], key)) { - (void) fprintf(stderr, - "%s: format of key %s invalid\n", -! progname, argv[ntp_optind]); - exit(1); - } -*************** -*** 243,247 **** - * Make up key from ascii representation - */ -! bzero(keybytes, sizeof(keybytes)); - for (i = 0; i < 8 && i < len; i++) - keybytes[i] = *cp++ << 1; ---- 243,247 ---- - * Make up key from ascii representation - */ -! memset(keybytes, 0, sizeof(keybytes)); - for (i = 0; i < 8 && i < len; i++) - keybytes[i] = *cp++ << 1; -*** /tmp/RCSA023401 Wed Jan 26 17:56:23 1994 ---- authstuff/makeIPFP.c Wed Jan 26 16:33:28 1994 -*************** -*** 29,37 **** - int c; - int errflg = 0; -! extern int optind; -! extern char *optarg; - - progname = argv[0]; -! while ((c = getopt_l(argc, argv, "d")) != EOF) - switch (c) { - case 'd': ---- 29,37 ---- - int c; - int errflg = 0; -! extern int ntp_optind; -! extern char *ntp_optarg; - - progname = argv[0]; -! while ((c = ntp_getopt(argc, argv, "d")) != EOF) - switch (c) { - case 'd': -*************** -*** 184,188 **** - int octbits; - -! bzero((char *)bits, sizeof bits); - - /* ---- 184,188 ---- - int octbits; - -! memset((char *)bits, 0, sizeof bits); - - /* -*** /tmp/RCSA023401 Wed Jan 26 17:56:23 1994 ---- authstuff/makePC1.c Wed Jan 26 16:33:28 1994 -*************** -*** 26,34 **** - int c; - int errflg = 0; -! extern int optind; -! extern char *optarg; - - progname = argv[0]; -! while ((c = getopt_l(argc, argv, "d")) != EOF) - switch (c) { - case 'd': ---- 26,34 ---- - int c; - int errflg = 0; -! extern int ntp_optind; -! extern char *ntp_optarg; - - progname = argv[0]; -! while ((c = ntp_getopt(argc, argv, "d")) != EOF) - switch (c) { - case 'd': -*************** -*** 83,88 **** - u_char d[28]; - -! bzero((char *)c, sizeof c); -! bzero((char *)d, sizeof d); - - for (i = 0; i < 28; i++) { ---- 83,88 ---- - u_char d[28]; - -! memset((char *)c, 0, sizeof c); -! memset((char *)d, 0, sizeof d); - - for (i = 0; i < 28; i++) { -*************** -*** 141,145 **** - u_char bits[64]; - -! bzero((char *)bits, sizeof bits); - - printf("static U_LONG PC1_CL[8] = {"); ---- 141,145 ---- - u_char bits[64]; - -! memset((char *)bits, 0, sizeof bits); - - printf("static U_LONG PC1_CL[8] = {"); -*** /tmp/RCSA023401 Wed Jan 26 17:56:24 1994 ---- authstuff/makePC2.c Wed Jan 26 16:33:28 1994 -*************** -*** 27,35 **** - int c; - int errflg = 0; -! extern int optind; -! extern char *optarg; - - progname = argv[0]; -! while ((c = getopt_l(argc, argv, "d")) != EOF) - switch (c) { - case 'd': ---- 27,35 ---- - int c; - int errflg = 0; -! extern int ntp_optind; -! extern char *ntp_optarg; - - progname = argv[0]; -! while ((c = ntp_getopt(argc, argv, "d")) != EOF) - switch (c) { - case 'd': -*************** -*** 88,92 **** - u_char res[24]; - -! bzero((char *)res, sizeof res); - - for (i = 0; i < 24; i++) { ---- 88,92 ---- - u_char res[24]; - -! memset((char *)res, 0, sizeof res); - - for (i = 0; i < 24; i++) { -*************** -*** 118,122 **** - u_char res[24]; - -! bzero((char *)res, sizeof res); - - for (i = 0; i < 24; i++) { ---- 118,122 ---- - u_char res[24]; - -! memset((char *)res, 0, sizeof res); - - for (i = 0; i < 24; i++) { -*************** -*** 169,173 **** - u_char bits[28]; - -! bzero((char *)bits, sizeof bits); - - printf("static U_LONG PC2_C[4][64] = {"); ---- 169,173 ---- - u_char bits[28]; - -! memset((char *)bits, 0, sizeof bits); - - printf("static U_LONG PC2_C[4][64] = {"); -*** /tmp/RCSA023401 Wed Jan 26 17:56:24 1994 ---- authstuff/makeSP.c Wed Jan 26 16:33:28 1994 -*************** -*** 26,34 **** - int c; - int errflg = 0; -! extern int optind; -! extern char *optarg; - - progname = argv[0]; -! while ((c = getopt_l(argc, argv, "d")) != EOF) - switch (c) { - case 'd': ---- 26,34 ---- - int c; - int errflg = 0; -! extern int ntp_optind; -! extern char *ntp_optarg; - - progname = argv[0]; -! while ((c = ntp_getopt(argc, argv, "d")) != EOF) - switch (c) { - case 'd': -*************** -*** 166,170 **** - int sixbits; - -! bzero((char *)bits, sizeof bits); - printf("static U_LONG SP[8][64] = {"); - for (selno = 0; selno < 8; selno++) { ---- 166,170 ---- - int sixbits; - -! memset((char *)bits, 0, sizeof bits); - printf("static U_LONG SP[8][64] = {"); - for (selno = 0; selno < 8; selno++) { -*** /tmp/RCSA023401 Wed Jan 26 17:56:24 1994 ---- authstuff/mkrandkeys.c Wed Jan 26 16:33:28 1994 -*************** -*** 35,40 **** - U_LONG tmp; - char *passwd; -! extern int optind; -! extern char *optarg; - extern char *getpass(); - ---- 35,40 ---- - U_LONG tmp; - char *passwd; -! extern int ntp_optind; -! extern char *ntp_optarg; - extern char *getpass(); - -*************** -*** 42,46 **** - progname = argv[0]; - passwd = NULL; -! while ((c = getopt_l(argc, argv, "dnp:s")) != EOF) - switch (c) { - case 'd': ---- 42,46 ---- - progname = argv[0]; - passwd = NULL; -! while ((c = ntp_getopt(argc, argv, "dnp:s")) != EOF) - switch (c) { - case 'd': -*************** -*** 51,55 **** - break; - case 'p': -! passwd = optarg; - break; - case 's': ---- 51,55 ---- - break; - case 'p': -! passwd = ntp_optarg; - break; - case 's': -*************** -*** 62,70 **** - - numkeys = 0; -! for (; !errflg && optind < argc; optind++) { -! c = atoi(argv[optind]); - if (c <= 0 || c > 15) { - (void) fprintf(stderr, "%s: invalid key number `%s'\n", -! progname, argv[optind]); - exit(2); - } ---- 62,70 ---- - - numkeys = 0; -! for (; !errflg && ntp_optind < argc; ntp_optind++) { -! c = atoi(argv[ntp_optind]); - if (c <= 0 || c > 15) { - (void) fprintf(stderr, "%s: invalid key number `%s'\n", -! progname, argv[ntp_optind]); - exit(2); - } -*** /tmp/RCSA023401 Wed Jan 26 17:56:24 1994 ---- authstuff/omakeIPFP.c Wed Jan 26 16:33:29 1994 -*************** -*** 35,43 **** - int c; - int errflg = 0; -! extern int optind; -! extern char *optarg; - - progname = argv[0]; -! while ((c = getopt_l(argc, argv, "d")) != EOF) - switch (c) { - case 'd': ---- 35,43 ---- - int c; - int errflg = 0; -! extern int ntp_optind; -! extern char *ntp_optarg; - - progname = argv[0]; -! while ((c = ntp_getopt(argc, argv, "d")) != EOF) - switch (c) { - case 'd': -*************** -*** 189,193 **** - int quadbits; - -! bzero((char *)bits, sizeof bits); - - /* ---- 189,193 ---- - int quadbits; - -! memset((char *)bits, 0, sizeof bits); - - /* -*** /tmp/RCSA023419 Wed Jan 26 17:56:25 1994 ---- clockstuff/chutest.c Wed Jan 26 16:33:29 1994 -*************** -*** 69,78 **** - int c; - int errflg = 0; -! extern int optind; -! extern char *optarg; - void init_chu(); - - progname = argv[0]; -! while ((c = getopt_l(argc, argv, "cdfpt")) != EOF) - switch (c) { - case 'c': ---- 69,78 ---- - int c; - int errflg = 0; -! extern int ntp_optind; -! extern char *ntp_optarg; - void init_chu(); - - progname = argv[0]; -! while ((c = ntp_getopt(argc, argv, "cdfpt")) != EOF) - switch (c) { - case 'c': -*************** -*** 108,112 **** - break; - } -! if (errflg || optind+1 != argc) { - #ifdef STREAM - (void) fprintf(stderr, "usage: %s [-dft] tty_device\n", ---- 108,112 ---- - break; - } -! if (errflg || ntp_optind+1 != argc) { - #ifdef STREAM - (void) fprintf(stderr, "usage: %s [-dft] tty_device\n", -*************** -*** 127,131 **** - - (void) gettimeofday(&lasttv, (struct timezone *)0); -! c = openterm(argv[optind]); - init_chu(); - #ifdef STREAM ---- 127,131 ---- - - (void) gettimeofday(&lasttv, (struct timezone *)0); -! c = openterm(argv[ntp_optind]); - init_chu(); - #ifdef STREAM -*** /tmp/RCSA023419 Wed Jan 26 17:56:25 1994 ---- clockstuff/clktest.c Wed Jan 26 16:33:29 1994 -*************** -*** 106,111 **** - struct sgttyb ttyb; - struct itimerval itimer; -! extern int optind; -! extern char *optarg; - int alarming(); - int ioready(); ---- 106,111 ---- - struct sgttyb ttyb; - struct itimerval itimer; -! extern int ntp_optind; -! extern char *ntp_optarg; - int alarming(); - int ioready(); -*************** -*** 115,119 **** - magic[0] = 0; - #endif -! while ((c = getopt_l(argc, argv, "a:b:c:dfs:t:")) != EOF) - switch (c) { - #ifdef CLKLDISC ---- 115,119 ---- - magic[0] = 0; - #endif -! while ((c = ntp_getopt(argc, argv, "a:b:c:dfs:t:")) != EOF) - switch (c) { - #ifdef CLKLDISC -*************** -*** 121,125 **** - #endif - case 'c': -! if (!atouint(optarg, &tmp)) { - (void) fprintf(stderr, - "%s: argument for -%c must be integer\n", ---- 121,125 ---- - #endif - case 'c': -! if (!atouint(ntp_optarg, &tmp)) { - (void) fprintf(stderr, - "%s: argument for -%c must be integer\n", -*************** -*** 140,144 **** - break; - case 'b': -! if (!atouint(optarg, &tmp)) { - errflg++; - break; ---- 140,144 ---- - break; - case 'b': -! if (!atouint(ntp_optarg, &tmp)) { - errflg++; - break; -*************** -*** 164,175 **** - break; - case 's': -! cmdlen = strlen(optarg); - if (cmdlen == 0) - errflg++; - else -! cmd = optarg; - break; - case 't': -! if (!atouint(optarg, &tmp)) - errflg++; - else { ---- 164,175 ---- - break; - case 's': -! cmdlen = strlen(ntp_optarg); - if (cmdlen == 0) - errflg++; - else -! cmd = ntp_optarg; - break; - case 't': -! if (!atouint(ntp_optarg, &tmp)) - errflg++; - else { -*************** -*** 182,186 **** - break; - } -! if (errflg || optind+1 != argc) { - (void) fprintf(stderr, - #ifdef CLKLDISC ---- 182,186 ---- - break; - } -! if (errflg || ntp_optind+1 != argc) { - (void) fprintf(stderr, - #ifdef CLKLDISC -*************** -*** 200,209 **** - - if (docmd) -! fd = open(argv[optind], O_RDWR, 0777); - else -! fd = open(argv[optind], O_RDONLY, 0777); - if (fd == -1) { - (void) fprintf(stderr, "%s: open(%s): ", progname, -! argv[optind]); - perror(""); - exit(1); ---- 200,209 ---- - - if (docmd) -! fd = open(argv[ntp_optind], O_RDWR, 0777); - else -! fd = open(argv[ntp_optind], O_RDONLY, 0777); - if (fd == -1) { - (void) fprintf(stderr, "%s: open(%s): ", progname, -! argv[ntp_optind]); - perror(""); - exit(1); -*** /tmp/RCSA023419 Wed Jan 26 17:56:25 1994 ---- clockstuff/propdelay.c Wed Jan 26 16:33:29 1994 -*************** -*** 141,149 **** - double lat2, long2; - double lat3, long3; -! extern int optind; -! extern char *optarg; - - progname = argv[0]; -! while ((c = getopt_l(argc, argv, "dh:CWG")) != EOF) - switch (c) { - case 'd': ---- 141,149 ---- - double lat2, long2; - double lat3, long3; -! extern int ntp_optind; -! extern char *ntp_optarg; - - progname = argv[0]; -! while ((c = ntp_getopt(argc, argv, "dh:CWG")) != EOF) - switch (c) { - case 'd': -*************** -*** 152,159 **** - case 'h': - hflag++; -! height = atof(optarg); - if (height <= 0.0) { - (void) fprintf(stderr, "height %s unlikely\n", -! optarg); - errflg++; - } ---- 152,159 ---- - case 'h': - hflag++; -! height = atof(ntp_optarg); - if (height <= 0.0) { - (void) fprintf(stderr, "height %s unlikely\n", -! ntp_optarg); - errflg++; - } -*************** -*** 172,177 **** - break; - } -! if (errflg || (!(Cflag || Wflag || Gflag) && optind+4 != argc) || -! ((Cflag || Wflag || Gflag) && optind+2 != argc)) { - (void) fprintf(stderr, - "usage: %s [-d] [-h height] lat1 long1 lat2 long2\n", ---- 172,177 ---- - break; - } -! if (errflg || (!(Cflag || Wflag || Gflag) && ntp_optind+4 != argc) || -! ((Cflag || Wflag || Gflag) && ntp_optind+2 != argc)) { - (void) fprintf(stderr, - "usage: %s [-d] [-h height] lat1 long1 lat2 long2\n", -*************** -*** 186,193 **** - - if (!(Cflag || Wflag || Gflag)) { -! lat1 = latlong(argv[optind], 1); -! long1 = latlong(argv[optind + 1], 0); -! lat2 = latlong(argv[optind + 2], 1); -! long2 = latlong(argv[optind + 3], 0); - if (hflag) { - doit(lat1, long1, lat2, long2, height, ""); ---- 186,193 ---- - - if (!(Cflag || Wflag || Gflag)) { -! lat1 = latlong(argv[ntp_optind], 1); -! long1 = latlong(argv[ntp_optind + 1], 0); -! lat2 = latlong(argv[ntp_optind + 2], 1); -! long2 = latlong(argv[ntp_optind + 3], 0); - if (hflag) { - doit(lat1, long1, lat2, long2, height, ""); -*************** -*** 202,207 **** - * Compute delay from WWV - */ -! lat1 = latlong(argv[optind], 1); -! long1 = latlong(argv[optind + 1], 0); - lat2 = latlong(wwvlat, 1); - long2 = latlong(wwvlong, 0); ---- 202,207 ---- - * Compute delay from WWV - */ -! lat1 = latlong(argv[ntp_optind], 1); -! long1 = latlong(argv[ntp_optind + 1], 0); - lat2 = latlong(wwvlat, 1); - long2 = latlong(wwvlong, 0); -*************** -*** 229,234 **** - } - } else if (Cflag) { -! lat1 = latlong(argv[optind], 1); -! long1 = latlong(argv[optind + 1], 0); - lat2 = latlong(chulat, 1); - long2 = latlong(chulong, 0); ---- 229,234 ---- - } - } else if (Cflag) { -! lat1 = latlong(argv[ntp_optind], 1); -! long1 = latlong(argv[ntp_optind + 1], 0); - lat2 = latlong(chulat, 1); - long2 = latlong(chulong, 0); -*************** -*** 244,249 **** - lat1 = latlong(goes_up_lat, 1); - long1 = latlong(goes_up_long, 0); -! lat3 = latlong(argv[optind], 1); -! long3 = latlong(argv[optind + 1], 0); - - lat2 = latlong(goes_sat_lat, 1); ---- 244,249 ---- - lat1 = latlong(goes_up_lat, 1); - long1 = latlong(goes_up_long, 0); -! lat3 = latlong(argv[ntp_optind], 1); -! long3 = latlong(argv[ntp_optind + 1], 0); - - lat2 = latlong(goes_sat_lat, 1); -*** /tmp/RCSA023428 Wed Jan 26 17:56:27 1994 ---- conf/Config.CHATHAM Wed Jan 26 16:33:29 1994 -*************** -*** 90,96 **** - # CLOCKDEFS= line below. This flag affects xntpd only. - # -- # There is an occurance of a call to rindex() in the daemon. You may -- # have to include a -Drindex=strrchr to get this to load right. -- # - # To change the location of the configuration file, use a - # -DCONFIG_FILE=\\"/local/etc/ntp.conf\\" or something similar. ---- 90,93 ---- -*************** -*** 110,114 **** - # generated by the pps signal. Only one of these flags should be defined. - # -! DEFS= -DUSELIBKVM -DDEBUG -DSTREAM -DREFCLOCK -DNO_SIGNED_CHAR_DECL -DPPS -DPPSDEV -DXNTP_RETROFIT_STDLIB -DHAVE_UNISTD_H - - # ---- 107,111 ---- - # generated by the pps signal. Only one of these flags should be defined. - # -! DEFS= -DUSELIBKVM -DDEBUG -DSTREAM -DREFCLOCK -DNO_SIGNED_CHAR_DECL -DPPS -DPPSDEV -DXNTP_RETROFIT_STDLIB -DNTP_POSIX_SOURCE - - # -*** /tmp/RCSA023428 Wed Jan 26 17:56:27 1994 ---- conf/Config.MONOMOY Wed Jan 26 16:33:29 1994 -*************** -*** 85,91 **** - # CLOCKDEFS= line below. This flag affects xntpd only. - # -- # There is an occurance of a call to rindex() in the daemon. You may -- # have to include a -Drindex=strrchr to get this to load right. -- # - # To change the location of the configuration file, use a - # -DCONFIG_FILE=\\"/local/etc/ntp.conf\\" or something similar. ---- 85,88 ---- -*************** -*** 105,109 **** - # be used) - # -! DEFS= -DBSDI -DUSELIBKVM -DDEBUG -DREFCLOCK -DPPS -DCONFIG_FILE=\\"/usr/local/etc/xntp.conf\\" -DHAVE_UNISTD_H - - # ---- 102,106 ---- - # be used) - # -! DEFS= -DBSDI -DUSELIBKVM -DDEBUG -DREFCLOCK -DPPS -DCONFIG_FILE=\\"/usr/local/etc/xntp.conf\\" -DNTP_POSIX_SOURCE - - # -*** /tmp/RCSA023428 Wed Jan 26 17:56:27 1994 ---- conf/Config.TIGER Wed Jan 26 16:33:30 1994 -*************** -*** 81,87 **** - # CLOCKDEFS= line below. This flag affects xntpd only. - # -- # There is an occurance of a call to rindex() in the daemon. You may -- # have to include a -Drindex=strrchr to get this to load right. -- # - # To change the location of the configuration file, use a - # -DCONFIG_FILE=\\"/local/etc/ntp.conf\\" or something similar. ---- 81,84 ---- -*************** -*** 101,105 **** - # be used) - # -! DEFS= -DREFCLOCK -DS_CHAR_DEFINED -DREADKMEM -DDEBUG -DPLL -DXNTP_RETROFIT_STDLIB -DHAVE_UNISTD_H - - # ---- 98,102 ---- - # be used) - # -! DEFS= -DREFCLOCK -DS_CHAR_DEFINED -DREADKMEM -DDEBUG -DPLL -DXNTP_RETROFIT_STDLIB -DNTP_POSIX_SOURCE - - # -*** /tmp/RCSA023428 Wed Jan 26 17:56:27 1994 ---- conf/Config.TRURO Wed Jan 26 16:33:30 1994 -*************** -*** 87,93 **** - # CLOCKDEFS= line below. This flag affects xntpd only. - # -- # There is an occurance of a call to rindex() in the daemon. You may -- # have to include a -Drindex=strrchr to get this to load right. -- # - # To change the location of the configuration file, use a - # -DCONFIG_FILE=\\"/local/etc/ntp.conf\\" or something similar. ---- 87,90 ---- -*************** -*** 110,114 **** - # generated by the pps signal. Only one of these flags should be defined. - # -! DEFS= -DDEBUG -DSTREAM -DREFCLOCK -DNO_SIGNED_CHAR_DECL -DSLEWALWAYS -DSOLARIS -DPPS -DSTUPID_SIGNAL -DXNTP_RETROFIT_STDLIB -DHAVE_UNISTD_H - - # ---- 107,111 ---- - # generated by the pps signal. Only one of these flags should be defined. - # -! DEFS= -DDEBUG -DSTREAM -DREFCLOCK -DNO_SIGNED_CHAR_DECL -DSLEWALWAYS -DSOLARIS -DPPS -DSTUPID_SIGNAL -DXNTP_RETROFIT_STDLIB -DNTP_POSIX_SOURCE - - # -*** /tmp/RCSA023441 Wed Jan 26 17:56:29 1994 ---- include/l_stdlib.h Wed Jan 26 16:33:30 1994 -*************** -*** 39,43 **** - #if !defined(NTP_POSIX_SOURCE) - extern int atoi P((char *)); -- extern void bcopy P((char *, char *, int)); - extern int dup2 P((int, int)); - extern int execve P((char *, char **,char **)); ---- 39,42 ---- -*************** -*** 51,58 **** - #endif - -- #ifndef bzero /* XXX macro prototyping clash */ -- extern void bzero P((char *, int)); -- extern int bcmp P((char *, char *, int)); -- #endif - extern char *mktemp P((char *)); - ---- 50,53 ---- -*************** -*** 193,200 **** - #ifndef NTP_POSIX_SOURCE - extern int atoi P((char *)); -- extern void bcopy P((char *, char *, int)); -- extern void bzero P((char *, int)); -- extern int bcmp P((char *, char *, int)); -- extern void bcopy P((char *, char *, int)); - extern int execve P((char *, char **,char **)); - extern int fork P((void)); ---- 188,191 ---- -*** /tmp/RCSA023441 Wed Jan 26 17:56:29 1994 ---- include/ntp.h Wed Jan 26 16:33:30 1994 -*************** -*** 329,333 **** - - /* -! * Definitions for the clear() routine. We use bzero() to clear - * the parts of the peer structure which go to zero. These are - * used to calculate the start address and length of the area. ---- 329,333 ---- - - /* -! * Definitions for the clear() routine. We use memset() to clear - * the parts of the peer structure which go to zero. These are - * used to calculate the start address and length of the area. -*** /tmp/RCSA023441 Wed Jan 26 17:56:29 1994 ---- include/ntp_machine.h Wed Jan 26 16:33:31 1994 -*************** -*** 1,3 **** -! /* ntp_compat.h,v 3.1 1993/07/06 01:06:49 jbj Exp - * Collect all machine dependent idiosyncrasies in one place. - */ ---- 1,3 ---- -! /* ntp_machine.h,v 3.1 1993/07/06 01:06:49 jbj Exp - * Collect all machine dependent idiosyncrasies in one place. - */ -*************** -*** 53,61 **** - - THIS MAKES PORTS TO NEW SYSTEMS EASY - You only have to wory about -! kernal mucking. - - NTP_POSIX_SOURCE - Use POSIX functions over bsd functions and att functions. - This is NOT the same as _POSIX_SOURCE. -! It is much weeker! - - ---- 53,61 ---- - - THIS MAKES PORTS TO NEW SYSTEMS EASY - You only have to wory about -! kernel mucking. - - NTP_POSIX_SOURCE - Use POSIX functions over bsd functions and att functions. - This is NOT the same as _POSIX_SOURCE. -! It is much weaker! - - -*************** -*** 95,99 **** - UNIX V.4 machines implement a sockets library on top of streams. - When requesting the IP interface configuration with an ioctl(2) calll, -! an arrat of ifreq structures are placed in the provided buffer. Some - implementations also place the length of the buffer information in - the first integer position of the buffer. ---- 95,99 ---- - UNIX V.4 machines implement a sockets library on top of streams. - When requesting the IP interface configuration with an ioctl(2) calll, -! an array of ifreq structures are placed in the provided buffer. Some - implementations also place the length of the buffer information in - the first integer position of the buffer. -*************** -*** 115,121 **** - RETSIGTYPE - Define signal function type. - NO_SIGNED_CHAR_DECL - No "signed char" see include/ntp.h -! LOCK_PROCESS - Have plock. - UDP_WILDCARD_DELIVERY -! - these systems deliver broadcast pakets to the wildcard - port instead to a port bound to the interface bound - to the correct broadcast address - are these ---- 115,121 ---- - RETSIGTYPE - Define signal function type. - NO_SIGNED_CHAR_DECL - No "signed char" see include/ntp.h -! LOCK_PROCESS - Have plock. - UDP_WILDCARD_DELIVERY -! - these systems deliver broadcast packets to the wildcard - port instead to a port bound to the interface bound - to the correct broadcast address - are these -*************** -*** 122,133 **** - implementations broken or did the spec change ? - -- HAVE_UNISTD_H - Maybe should be part of NTP_POSIX_SOURCE ? -- - You could just put the defines on the DEFS line in machines/<os> file. -! I don't since there are lost of different types compiler that a systemm might -! have, some that can do proto typing and others that cannot on the saem system. -! I get a chanse to twiddle some of the configuration paramasters at compile -! time based on compler/machine combinatsions by using this include file. -! See convex, aix and sun configurations see how complex it get. - - */ ---- 122,135 ---- - implementations broken or did the spec change ? - - You could just put the defines on the DEFS line in machines/<os> file. -! I don't since there are lots of different types of compiler that a system might -! have, some that can do prototyping and others that cannot on the saem system. -! I get a chance to twiddle some of the configuration paramasters at compile -! time based on compler/machine combinations by using this include file. -! See convex, aix and sun configurations see how complex it gets. -! -! Note that it _is_ considered reasonable to add some system-specific defines -! to the machine/<os> file if it would be too inconvenient to puzzle them out -! in this file. - - */ -*************** -*** 145,152 **** - * Keep USE_PROTOTYPES and _NO_PROTO in step. - */ -! #if defined(_NO_PROTO)&&defined(USE_PROTOTYPES) - #undef USE_PROTOTYPES - #endif -! #if !defined(_NO_PROTO)&&!defined(USE_PROTOTYPES) - #define USE_PROTOTYPES - #endif ---- 147,154 ---- - * Keep USE_PROTOTYPES and _NO_PROTO in step. - */ -! #if defined(_NO_PROTO) && defined(USE_PROTOTYPES) - #undef USE_PROTOTYPES - #endif -! #if !defined(_NO_PROTO) && !defined(USE_PROTOTYPES) - #define USE_PROTOTYPES - #endif -*************** -*** 204,208 **** - * Convex - */ -! #if defined(SYS_CONVEXOS10)||defined(SYS_CONVEXOS9) - #define HAVE_SIGNALED_IO - #define HAVE_N_UN ---- 206,210 ---- - * Convex - */ -! #if defined(SYS_CONVEXOS10) || defined(SYS_CONVEXOS9) - #define HAVE_SIGNALED_IO - #define HAVE_N_UN -*************** -*** 213,221 **** - #define NO_SIGNED_CHAR_DECL - #else -! #if defined(__stdc__)&&!defined(USE_PROTOTYPES) - #define USE_PROTOTYPES - #endif -! #if !defined(__stdc__)&&defined(USE_PROTOTYPES) -! #undef USE_PROTOTYPES - #endif - #define NTP_POSIX_SOURCE ---- 215,223 ---- - #define NO_SIGNED_CHAR_DECL - #else -! #if defined(__stdc__) && !defined(USE_PROTOTYPES) - #define USE_PROTOTYPES - #endif -! #if !defined(__stdc__) && defined(USE_PROTOTYPES) -! #undef USE_PROTOTYPES - #endif - #define NTP_POSIX_SOURCE -*************** -*** 253,257 **** - * AUX - */ -! #if defined(SYS_AUX2)||defined(SYS_AUX3) - #define NO_SIGNED_CHAR_DECL - #define HAVE_READKMEM ---- 255,259 ---- - * AUX - */ -! #if defined(SYS_AUX2) || defined(SYS_AUX3) - #define NO_SIGNED_CHAR_DECL - #define HAVE_READKMEM -*************** -*** 292,296 **** - #define NTP_POSIX_SOURCE - #define HAVE_SIGNALED_IO -- #define HAVE_UNISTD_H - #define NO_SIGNED_CHAR_DECL - #define LOCK_PROCESS ---- 294,297 ---- -*************** -*** 302,305 **** ---- 303,308 ---- - #define HAVE_READKMEM - #endif -+ #define getdtablesize() sysconf(_SC_OPEN_MAX) -+ #define setlinebuf(f) setvbuf(f, NULL, _IOLBF, 0) - #endif - -*************** -*** 313,316 **** ---- 316,320 ---- - #define HAVE_BSD_NICE - #define HAVE_BSD_TTYS -+ #define HAVE_TERMIOS - #endif - -*************** -*** 342,346 **** - - /* -! * DECOSF1 - */ - #if defined(SYS_DECOSF1) ---- 346,350 ---- - - /* -! * DEC AXP OSF/1 - */ - #if defined(SYS_DECOSF1) -*************** -*** 354,357 **** ---- 358,362 ---- - /* - * I386 -+ * XXX - what OS? - */ - #if defined(SYS_I386) -*************** -*** 412,416 **** - - /* -! * Sony - */ - #if defined(SYS_SONY) ---- 417,421 ---- - - /* -! * Sony NEWS - */ - #if defined(SYS_SONY) -*************** -*** 422,425 **** ---- 427,431 ---- - /* - * VAX -+ * XXX - VMS? - */ - #if defined(SYS_VAX) -*************** -*** 435,439 **** - #define HAVE_ATT_SETPGRP - #define USE_PROTOTYPES -- #define HAVE_UNISTD_H - #define NTP_POSIX_SOURCE - #define HAVE_ATT_NICE ---- 441,444 ---- -*************** -*** 484,490 **** - #endif /* NTP_SYSCALLS_STD */ - -! #if !defined(HAVE_ATT_NICE) && !defined(HAVE_BSD_NICE) && !defined(HAVE_NO_NICE) - ERROR You_must_define_one_of_the_HAVE_xx_NICE_defines - #endif - - #endif /* __ntp_machine */ ---- 489,545 ---- - #endif /* NTP_SYSCALLS_STD */ - -! #if !defined(HAVE_ATT_NICE) \ -! && !defined(HAVE_BSD_NICE) \ -! && !defined(HAVE_NO_NICE) - ERROR You_must_define_one_of_the_HAVE_xx_NICE_defines - #endif -+ -+ -+ #if !defined(XNTP_BIG_ENDIAN) && !defined(XNTP_LITTLE_ENDIAN) -+ -+ # if defined(XNTP_AUTO_ENDIAN) -+ # include <netinet/in.h> -+ -+ # if BYTE_ORDER == BIG_ENDIAN -+ # define XNTP_BIG_ENDIAN -+ # endif -+ # if BYTE_ORDER == LITTLE_ENDIAN -+ # define XNTP_LITTLE_ENDIAN -+ # endif -+ -+ # else /* AUTO */ -+ -+ # ifdef WORDS_BIGENDIAN -+ # define XNTP_BIG_ENDIAN 1 -+ # else -+ # define XNTP_LITTLE_ENDIAN 1 -+ # endif -+ -+ # endif /* AUTO */ -+ -+ #endif /* !BIG && !LITTLE */ -+ -+ /* -+ * Byte order woes. The DES code is sensitive to byte order. This -+ * used to be resolved by calling ntohl() and htonl() to swap things -+ * around, but this turned out to be quite costly on Vaxes where those -+ * things are actual functions. The code now straightens out byte -+ * order troubles on its own, with no performance penalty for little -+ * end first machines, but at great expense to cleanliness. -+ */ -+ #if !defined(XNTP_BIG_ENDIAN) && !defined(XNTP_LITTLE_ENDIAN) -+ /* -+ * Pick one or the other. -+ */ -+ BYTE_ORDER_NOT_DEFINED_FOR_AUTHENTICATION -+ #endif -+ -+ #if defined(XNTP_BIG_ENDIAN) && defined(XNTP_LITTLE_ENDIAN) -+ /* -+ * Pick one or the other. -+ */ -+ BYTE_ORDER_NOT_DEFINED_FOR_AUTHENTICATION -+ #endif -+ - - #endif /* __ntp_machine */ -*** /tmp/RCSA023441 Wed Jan 26 17:56:30 1994 ---- include/ntp_select.h Wed Jan 26 16:33:31 1994 -*************** -*** 15,19 **** - #define FD_CLR(n, p) ((p)->fds_bits[(n)/NFDBITS] &= ~(1 << ((n) % NFDBITS))) - #define FD_ISSET(n, p) ((p)->fds_bits[(n)/NFDBITS] & (1 << ((n) % NFDBITS))) -! #define FD_ZERO(p) bzero((char *)(p), sizeof(*(p))) - #endif - ---- 15,19 ---- - #define FD_CLR(n, p) ((p)->fds_bits[(n)/NFDBITS] &= ~(1 << ((n) % NFDBITS))) - #define FD_ISSET(n, p) ((p)->fds_bits[(n)/NFDBITS] & (1 << ((n) % NFDBITS))) -! #define FD_ZERO(p) memset((char *)(p), 0, sizeof(*(p))) - #endif - -*** /tmp/RCSA023441 Wed Jan 26 17:56:30 1994 ---- include/ntp_stdlib.h Wed Jan 26 16:33:31 1994 -*************** -*** 48,52 **** - extern int clocktime P((int, int, int, int, int, U_LONG, U_LONG *, U_LONG *)); - extern char * emalloc P((u_int)); -! extern int getopt_l P((int, char **, char *)); - extern void init_auth P((void)); - extern void init_lib P((void)); ---- 48,52 ---- - extern int clocktime P((int, int, int, int, int, U_LONG, U_LONG *, U_LONG *)); - extern char * emalloc P((u_int)); -! extern int ntp_getopt P((int, char **, char *)); - extern void init_auth P((void)); - extern void init_lib P((void)); -*** /tmp/RCSA023441 Wed Jan 26 17:56:30 1994 ---- include/ntp_string.h Wed Jan 26 16:33:31 1994 -*************** -*** 1,4 **** - /* -! * Define bcopy, bzero, and bcmp and string op's - */ - ---- 1,4 ---- - /* -! * Define string ops: strchr strrchr memcmp memmove memset - */ - -*************** -*** 8,27 **** - #ifdef NTP_POSIX_SOURCE - -! #if defined(HAVE_MEMORY_H) -! #include <memory.h> -! #endif -! -! #include <string.h> -! -! #define bcopy(s1,s2,n) memcpy(s2, s1, n) -! #define bzero(s,n) memset(s, 0, n) -! #define bcmp(s1,s2,n) memcmp(s1, s2, n) - - #else /* NTP_POSIX_SOURCE */ - -! #include <strings.h> - -! #define strrchr rindex -! #define strchr index - - #endif /* NTP_POSIX_SOURCE */ ---- 8,27 ---- - #ifdef NTP_POSIX_SOURCE - -! # if defined(HAVE_MEMORY_H) -! # include <memory.h> -! # endif - -+ # include <string.h> -+ - #else /* NTP_POSIX_SOURCE */ - -! # include <strings.h> - -! # define strchr(s,c) index(s,c) -! # define strrchr(s,c) rindex(s,c) -! # define memcmp(a,b,c) bcmp(a,b,c) -! # define memmove(t,f,c) bcopy(f,t,c) -! # define memset(a,x,c) if (x == 0x00) bzero(a,c) else ntp_memset((char*)a,x,c) -! void ntp_memset P((char *, int, int)); - - #endif /* NTP_POSIX_SOURCE */ -*** /tmp/RCSA023456 Wed Jan 26 17:56:31 1994 ---- kernel/tty_clk_STREAMS.c Wed Jan 26 16:33:31 1994 -*************** -*** 63,67 **** - - /* -! * God only knows why, but linking with strchr() and index() fail - * on my system, so here's a renamed copy. - */ ---- 63,67 ---- - - /* -! * God only knows why, but linking with strchr() fails - * on my system, so here's a renamed copy. - */ -*** /tmp/RCSA023460 Wed Jan 26 17:56:32 1994 ---- lib/a_md512crypt.c Wed Jan 26 16:33:31 1994 -*************** -*** 81,86 **** - MD5Final(&ctx); - -! bcopy((char *)ctx.digest, (char *) &pkt[NOCRYPT_LONGS + length/sizeof(U_LONG)], -! BLOCK_OCTETS); -! return 4 + BLOCK_OCTETS; - } ---- 81,87 ---- - MD5Final(&ctx); - -! memmove((char *) &pkt[NOCRYPT_LONGS + length/sizeof(U_LONG)], -! (char *) ctx.digest, -! BLOCK_OCTETS); -! return (4 + BLOCK_OCTETS); - } -*** /tmp/RCSA023460 Wed Jan 26 17:56:33 1994 ---- lib/a_md5decrypt.c Wed Jan 26 16:33:32 1994 -*************** -*** 55,58 **** - MD5Final(&ctx); - -! return (0 == bcmp((char *)ctx.digest, (char *)pkt + length + 4, BLOCK_OCTETS)); - } ---- 55,60 ---- - MD5Final(&ctx); - -! return (!memcmp((char *)ctx.digest, -! (char *)pkt + length + 4, -! BLOCK_OCTETS)); - } -*** /tmp/RCSA023460 Wed Jan 26 17:56:33 1994 ---- lib/a_md5encrypt.c Wed Jan 26 16:33:32 1994 -*************** -*** 64,68 **** - MD5Final(&ctx); - -! bcopy((char *)ctx.digest, (char *) &pkt[NOCRYPT_LONGS + len], BLOCK_OCTETS); -! return 4 + BLOCK_OCTETS; /* return size of key and MAC */ - } ---- 64,70 ---- - MD5Final(&ctx); - -! memmove((char *)&pkt[NOCRYPT_LONGS + len], -! (char *)ctx.digest, -! BLOCK_OCTETS); -! return (4 + BLOCK_OCTETS); /* return size of key and MAC */ - } -*** /tmp/RCSA023460 Wed Jan 26 17:56:33 1994 ---- lib/authdes.c Wed Jan 26 16:33:32 1994 -*************** -*** 4,31 **** - #include "ntp_stdlib.h" - -- #if !defined(XNTP_BIG_ENDIAN) && !defined(XNTP_LITTLE_ENDIAN) -- -- #if defined(XNTP_AUTO_ENDIAN) -- #include <netinet/in.h> -- -- #if BYTE_ORDER == BIG_ENDIAN -- #define XNTP_BIG_ENDIAN -- #endif -- #if BYTE_ORDER == LITTLE_ENDIAN -- #define XNTP_LITTLE_ENDIAN -- #endif -- -- #else /* AUTO */ -- -- #ifdef WORDS_BIGENDIAN -- #define XNTP_BIG_ENDIAN 1 -- #else -- #define XNTP_LITTLE_ENDIAN 1 -- #endif -- -- #endif /* AUTO */ -- -- #endif /* !BIG && !LITTLE */ -- - /* - * There are two entries in here. auth_subkeys() called to ---- 4,7 ---- -*************** -*** 33,58 **** - * auth_des() is called to do the actual encryption/decryption - */ -- -- /* -- * Byte order woes. The DES code is sensitive to byte order. This -- * used to be resolved by calling ntohl() and htonl() to swap things -- * around, but this turned out to be quite costly on Vaxes where those -- * things are actual functions. The code now straightens out byte -- * order troubles on its own, with no performance penalty for little -- * end first machines, but at great expense to cleanliness. -- */ -- #if !defined(XNTP_BIG_ENDIAN) && !defined(XNTP_LITTLE_ENDIAN) -- /* -- * Pick one or the other. -- */ -- BYTE_ORDER_NOT_DEFINED_FOR_AUTHENTICATION -- #endif -- -- #if defined(XNTP_BIG_ENDIAN) && defined(XNTP_LITTLE_ENDIAN) -- /* -- * Pick one or the other. -- */ -- BYTE_ORDER_NOT_DEFINED_FOR_AUTHENTICATION -- #endif - - /* ---- 9,12 ---- -*** /tmp/RCSA023460 Wed Jan 26 17:56:33 1994 ---- lib/authkeys.c Wed Jan 26 16:33:32 1994 -*************** -*** 110,114 **** - * Initialize hash table and free list - */ -! bzero((char *)key_hash, sizeof key_hash); - cache_flags = cache_keyid = 0; - ---- 110,114 ---- - * Initialize hash table and free list - */ -! memset((char *)key_hash, 0, sizeof key_hash); - cache_flags = cache_keyid = 0; - -*** /tmp/RCSA023460 Wed Jan 26 17:56:34 1994 ---- lib/authusekey.c Wed Jan 26 16:33:32 1994 -*************** -*** 97,101 **** - * Make up key from ascii representation - */ -! bzero((char *) keybytes, sizeof(keybytes)); - for (i = 0; i < 8 && i < len; i++) - keybytes[i] = *cp++ << 1; ---- 97,101 ---- - * Make up key from ascii representation - */ -! memset((char *) keybytes, 0, sizeof(keybytes)); - for (i = 0; i < 8 && i < len; i++) - keybytes[i] = *cp++ << 1; -*** /tmp/RCSA023460 Wed Jan 26 17:56:34 1994 ---- lib/dofptoa.c Wed Jan 26 16:33:33 1994 -*************** -*** 32,36 **** - * Zero out the buffer - */ -! bzero((char *)cbuf, sizeof cbuf); - - /* ---- 32,36 ---- - * Zero out the buffer - */ -! memset((char *)cbuf, 0, sizeof cbuf); - - /* -*** /tmp/RCSA023460 Wed Jan 26 17:56:34 1994 ---- lib/dolfptoa.c Wed Jan 26 16:33:33 1994 -*************** -*** 33,37 **** - * Zero the character buffer - */ -! bzero((char *) cbuf, sizeof(cbuf)); - - /* ---- 33,37 ---- - * Zero the character buffer - */ -! memset((char *) cbuf, 0, sizeof(cbuf)); - - /* -*** /tmp/RCSA023460 Wed Jan 26 17:56:34 1994 ---- lib/getopt.c Wed Jan 26 16:33:33 1994 -*************** -*** 5,9 **** - * Henry Spencer, changed for 4.3BSD compatibility (in addition to System V). - * It allows rescanning of an option list by setting optind to 0 before -! * calling. Thanks to Dennis Ferguson for the appropriate modifications. - * - * This file is in the Public Domain. ---- 5,11 ---- - * Henry Spencer, changed for 4.3BSD compatibility (in addition to System V). - * It allows rescanning of an option list by setting optind to 0 before -! * calling, which is why we use it even if the system has its own (in fact, -! * this one has a unique name so as not to conflict with the system's). -! * Thanks to Dennis Ferguson for the appropriate modifications. - * - * This file is in the Public Domain. -*************** -*** 21,57 **** - #endif /* lint */ - -! char *optarg; /* Global argument pointer. */ -! #ifndef __convex__ -! int optind = 0; /* Global argv index. */ -! #else /* __convex__ */ -! extern int optind; /* Global argv index. */ -! #endif /* __convex__ */ - -- /* -- * N.B. use following at own risk -- */ -- #ifndef __convex__ -- int opterr = 1; /* for compatibility, should error be printed? */ -- #else /* __convex__ */ -- extern int opterr; /* for compatibility, should error be printed? */ -- #endif /* __convex__ */ -- int optopt; /* for compatibility, option character checked */ -- - static char *scan = NULL; /* Private scan pointer. */ - - /* -! * Print message about a bad option. Watch this definition, it's -! * not a single statement. - */ -! #define BADOPT(mess, ch) if (opterr) { \ -! fputs(argv[0], stderr); \ -! fputs(mess, stderr); \ -! (void) putc(ch, stderr); \ -! (void) putc('\n', stderr); \ -! } \ -! return('?') - - int -! getopt_l(argc, argv, optstring) - int argc; - char *argv[]; ---- 23,53 ---- - #endif /* lint */ - -! char *ntp_optarg; /* Global argument pointer. */ -! int ntp_optind = 0; /* Global argv index. */ -! int ntp_opterr = 1; /* for compatibility, should error be printed? */ -! int ntp_optopt; /* for compatibility, option character checked */ - - static char *scan = NULL; /* Private scan pointer. */ -+ static char *prog = "amnesia"; - - /* -! * Print message about a bad option. - */ -! static int -! badopt(mess, ch) -! char *mess; -! int ch; -! { -! if (ntp_opterr) { -! fputs(prog, stderr); -! fputs(mess, stderr); -! (void) putc(ch, stderr); -! (void) putc('\n', stderr); -! } -! return ('?'); -! } - - int -! ntp_getopt(argc, argv, optstring) - int argc; - char *argv[]; -*************** -*** 61,85 **** - register char *place; - -! optarg = NULL; - -! if (optind == 0) { - scan = NULL; -! optind++; - } - - if (scan == NULL || *scan == '\0') { -! if (optind >= argc || argv[optind][0] != '-' || argv[optind][1] == '\0') -! return EOF; -! if (argv[optind][1] == '-' && argv[optind][2] == '\0') { -! optind++; -! return EOF; - } - -! scan = argv[optind]+1; -! optind++; - } - - c = *scan++; -! optopt = c & 0377; - for (place = optstring; place != NULL && *place != '\0'; ++place) - if (*place == c) ---- 57,85 ---- - register char *place; - -! prog = argv[0]; -! ntp_optarg = NULL; - -! if (ntp_optind == 0) { - scan = NULL; -! ntp_optind++; - } - - if (scan == NULL || *scan == '\0') { -! if (ntp_optind >= argc -! || argv[ntp_optind][0] != '-' -! || argv[ntp_optind][1] == '\0') { -! return (EOF); -! } -! if (argv[ntp_optind][1] == '-' -! && argv[ntp_optind][2] == '\0') { -! ntp_optind++; -! return (EOF); - } - -! scan = argv[ntp_optind++]+1; - } - - c = *scan++; -! ntp_optopt = c & 0377; - for (place = optstring; place != NULL && *place != '\0'; ++place) - if (*place == c) -*************** -*** 87,91 **** - - if (place == NULL || *place == '\0' || c == ':' || c == '?') { -! BADOPT(": unknown option -", c); - } - ---- 87,91 ---- - - if (place == NULL || *place == '\0' || c == ':' || c == '?') { -! return (badopt(": unknown option -", c)); - } - -*************** -*** 93,106 **** - if (*place == ':') { - if (*scan != '\0') { -! optarg = scan; - scan = NULL; -! } else if (optind >= argc) { -! BADOPT(": option requires argument -", c); - } else { -! optarg = argv[optind]; -! optind++; - } - } - -! return c&0377; - } ---- 93,105 ---- - if (*place == ':') { - if (*scan != '\0') { -! ntp_optarg = scan; - scan = NULL; -! } else if (ntp_optind >= argc) { -! return (badopt(": option requires argument -", c)); - } else { -! ntp_optarg = argv[ntp_optind++]; - } - } - -! return (c & 0377); - } -*** /tmp/RCSA023460 Wed Jan 26 17:56:34 1994 ---- lib/machines.c Wed Jan 26 16:33:33 1994 -*************** -*** 1,18 **** -! /* -! * provide special support for peculiar architectures - * - * Real bummers unite ! - */ - - #ifdef SYS_PTX - #include <sys/types.h> - #include <sys/procstats.h> -! int settimeofday(tvp) - struct timeval *tvp; - { -! return stime(&tvp->tv_sec); /* lie as bad as SysVR4 */ - } - -! int gettimeofday(tvp) - struct timeval *tvp; - { ---- 1,24 ---- -! /* machines.c - provide special support for peculiar architectures - * - * Real bummers unite ! -+ * -+ * $Id:$ - */ - -+ #include "ntp_stdlib.h" -+ - #ifdef SYS_PTX - #include <sys/types.h> - #include <sys/procstats.h> -! -! int -! settimeofday(tvp) - struct timeval *tvp; - { -! return (stime(&tvp->tv_sec)); /* lie as bad as SysVR4 */ - } - -! int -! gettimeofday(tvp) - struct timeval *tvp; - { -*************** -*** 21,118 **** - * this is also the most logical syscall for such a function - */ -! return get_process_stats(tvp, PS_SELF, (struct procstats *) 0, -! (struct procstats *) 0); -! } -! #endif -! -! #ifdef SYS_HPUX -! /* hpux.c,v 3.1 1993/07/06 01:08:23 jbj Exp -! * hpux.c -- compatibility routines for HP-UX. -! * XXX many of these are not needed anymore. -! */ -! #include "ntp_machine.h" -! -! #ifdef HAVE_UNISTD_H -! #include <unistd.h> -! #endif -! #include <stdio.h> -! -! #include "ntp_stdlib.h" -! -! #if (SYS_HPUX < 8) -! char -! *index(s, c) -! register char *s; -! register int c; -! { -! return strchr (s, c); -! } -! -! -! char -! *rindex(s, c) -! register char *s; -! register int c; -! { -! return strrchr (s, c); -! } -! -! -! int -! bcmp(a, b, count) -! register char *a, *b; -! register int count; -! { -! return memcmp (a, b, count); -! } -! -! -! void -! bcopy(from, to, count) -! register char *from; -! register char *to; -! register int count; -! { -! if ((to == from) || (count <= 0)) -! return; -! -! if ((to > from) && (to <= (from + count))) { -! to += count; -! from += count; -! -! do { -! *--to = *--from; -! } while (--count); -! } -! else { -! do { -! *to++ = *from++; -! } while (--count); -! } -! } -! -! -! void -! bzero(area, count) -! register char *area; -! register int count; -! { -! memset(area, 0, count); - } - #endif - -! -! getdtablesize() -! { -! return(sysconf(_SC_OPEN_MAX)); -! } -! -! -! int -! setlinebuf(a_stream) -! FILE *a_stream; - { -! return setvbuf(a_stream, (char *) NULL, _IOLBF, 0); - } -! -! #endif ---- 27,43 ---- - * this is also the most logical syscall for such a function - */ -! return (get_process_stats(tvp, PS_SELF, (struct procstats *) 0, -! (struct procstats *) 0)); - } - #endif - -! #if !defined(NTP_POSIX_SOURCE) -! void -! ntp_memset(a, x, c) -! char *a; -! int x, c; - { -! while (c-- > 0) -! *a++ = x; - } -! #endif /*POSIX*/ -*** /tmp/RCSA023460 Wed Jan 26 17:56:34 1994 ---- lib/numtohost.c Wed Jan 26 16:37:59 1994 -*************** -*** 2,6 **** - * numtohost - convert network number to host name. - */ -- #include "ntp_string.h" - #include <netdb.h> - ---- 2,5 ---- -*** /tmp/RCSA023460 Wed Jan 26 17:56:34 1994 ---- lib/systime.c Wed Jan 26 16:33:33 1994 -*************** -*** 346,350 **** - */ - if (oldtime != timetv.tv_sec) { -! bzero((char *)&ut, sizeof(ut)); - ut.ut_type = OLD_TIME; - ut.ut_time = oldtime; ---- 346,350 ---- - */ - if (oldtime != timetv.tv_sec) { -! memset((char *)&ut, 0, sizeof(ut)); - ut.ut_type = OLD_TIME; - ut.ut_time = oldtime; -*** /tmp/RCSA023486 Wed Jan 26 17:56:35 1994 ---- machines/bsdi Wed Jan 26 16:33:33 1994 -*************** -*** 1,5 **** - RANLIB= ranlib - DEFS_LOCAL=-DREFCLOCK -! DEFS= -DSYS_BSDI -DHAVE_TERMIOS - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK ---- 1,5 ---- - RANLIB= ranlib - DEFS_LOCAL=-DREFCLOCK -! DEFS= -DSYS_BSDI - AUTHDEFS= -DDES -DMD5 - CLOCKDEFS= -DLOCAL_CLOCK -*** /tmp/RCSA023490 Wed Jan 26 17:56:36 1994 ---- ntpdate/ntpdate.c Wed Jan 26 16:33:34 1994 -*************** -*** 168,173 **** - int errflg; - int c; -! extern char *optarg; -! extern int optind; - extern char *Version; - ---- 168,173 ---- - int errflg; - int c; -! extern char *ntp_optarg; -! extern int ntp_optind; - extern char *Version; - -*************** -*** 179,186 **** - * Decode argument list - */ -! while ((c = getopt_l(argc, argv, "a:bde:k:o:p:qst:v")) != EOF) - switch (c) { - case 'a': -! c = atoi(optarg); - sys_authenticate = 1; - sys_authkey = (U_LONG)c; ---- 179,186 ---- - * Decode argument list - */ -! while ((c = ntp_getopt(argc, argv, "a:bde:k:o:p:qst:v")) != EOF) - switch (c) { - case 'a': -! c = atoi(ntp_optarg); - sys_authenticate = 1; - sys_authkey = (U_LONG)c; -*************** -*** 193,201 **** - break; - case 'e': -! if (!atolfp(optarg, &tmp) - || tmp.l_ui != 0) { - (void) fprintf(stderr, - "%s: encryption delay %s is unlikely\n", -! progname, optarg); - errflg++; - } else { ---- 193,201 ---- - break; - case 'e': -! if (!atolfp(ntp_optarg, &tmp) - || tmp.l_ui != 0) { - (void) fprintf(stderr, - "%s: encryption delay %s is unlikely\n", -! progname, ntp_optarg); - errflg++; - } else { -*************** -*** 204,214 **** - break; - case 'k': -! key_file = optarg; - break; - case 'o': -! sys_version = atoi(optarg); - break; - case 'p': -! c = atoi(optarg); - if (c <= 0 || c > NTP_SHIFT) { - (void) fprintf(stderr, ---- 204,214 ---- - break; - case 'k': -! key_file = ntp_optarg; - break; - case 'o': -! sys_version = atoi(ntp_optarg); - break; - case 'p': -! c = atoi(ntp_optarg); - if (c <= 0 || c > NTP_SHIFT) { - (void) fprintf(stderr, -*************** -*** 227,234 **** - break; - case 't': -! if (!atolfp(optarg, &tmp)) { - (void) fprintf(stderr, - "%s: timeout %s is undecodeable\n", -! progname, optarg); - errflg++; - } else { ---- 227,234 ---- - break; - case 't': -! if (!atolfp(ntp_optarg, &tmp)) { - (void) fprintf(stderr, - "%s: timeout %s is undecodeable\n", -! progname, ntp_optarg); - errflg++; - } else { -*************** -*** 249,253 **** - } - -! sys_maxservers = argc - optind; - if (errflg || sys_maxservers == 0) { - (void) fprintf(stderr, ---- 249,253 ---- - } - -! sys_maxservers = argc - ntp_optind; - if (errflg || sys_maxservers == 0) { - (void) fprintf(stderr, -*************** -*** 294,299 **** - * Add servers we are going to be polling - */ -! for ( ; optind < argc; optind++) -! addserver(argv[optind]); - - if (sys_numservers == 0) { ---- 294,299 ---- - * Add servers we are going to be polling - */ -! for ( ; ntp_optind < argc; ntp_optind++) -! addserver(argv[ntp_optind]); - - if (sys_numservers == 0) { -*************** -*** 1031,1035 **** - - server = (struct server *)emalloc(sizeof(struct server)); -! bzero((char *)server, sizeof(struct server)); - - server->srcadr.sin_family = AF_INET; ---- 1031,1035 ---- - - server = (struct server *)emalloc(sizeof(struct server)); -! memset((char *)server, 0, sizeof(struct server)); - - server->srcadr.sin_family = AF_INET; -*************** -*** 1189,1193 **** - struct sockaddr_in addr; - -! bzero((char *)&addr, sizeof addr); - addr.sin_family = AF_INET; - addr.sin_port = htons(NTP_PORT); ---- 1189,1193 ---- - struct sockaddr_in addr; - -! memset((char *)&addr, 0, sizeof addr); - addr.sin_family = AF_INET; - addr.sin_port = htons(NTP_PORT); -*************** -*** 1483,1490 **** - return 1; - } else if ((hp = gethostbyname(host)) != 0) { -! bcopy(hp->h_addr, (char *)num, sizeof(U_LONG)); -! return 1; - } -! return 0; - } - ---- 1483,1490 ---- - return 1; - } else if ((hp = gethostbyname(host)) != 0) { -! memmove((char *)num, hp->h_addr, sizeof(U_LONG)); -! return (1); - } -! return (0); - } - -*************** -*** 1520,1524 **** - if (pp->stratum == 1) { - junk[4] = 0; -! bcopy((char *)&pp->refid, junk, 4); - str = junk; - } else { ---- 1520,1524 ---- - if (pp->stratum == 1) { - junk[4] = 0; -! memmove(junk, (char *)&pp->refid, 4); - str = junk; - } else { -*** /tmp/RCSA023494 Wed Jan 26 17:56:37 1994 ---- ntpq/ntpq.c Wed Jan 26 16:33:34 1994 -*************** -*** 510,515 **** - int c; - int errflg = 0; -! extern int optind; -! extern char *optarg; - - delay_time.l_ui = 0; ---- 510,515 ---- - int c; - int errflg = 0; -! extern int ntp_optind; -! extern char *ntp_optarg; - - delay_time.l_ui = 0; -*************** -*** 517,524 **** - - progname = argv[0]; -! while ((c = getopt_l(argc, argv, "c:dinp")) != EOF) - switch (c) { - case 'c': -! ADDCMD(optarg); - break; - case 'd': ---- 517,524 ---- - - progname = argv[0]; -! while ((c = ntp_getopt(argc, argv, "c:dinp")) != EOF) - switch (c) { - case 'c': -! ADDCMD(ntp_optarg); - break; - case 'd': -*************** -*** 544,552 **** - exit(2); - } -! if (optind == argc) { - ADDHOST(DEFHOST); - } else { -! for (; optind < argc; optind++) -! ADDHOST(argv[optind]); - } - ---- 544,552 ---- - exit(2); - } -! if (ntp_optind == argc) { - ADDHOST(DEFHOST); - } else { -! for (; ntp_optind < argc; ntp_optind++) -! ADDHOST(argv[ntp_optind]); - } - -*************** -*** 983,987 **** - * Copy the data into the data buffer. - */ -! bcopy((char *)rpkt.data, (char *)pktdata + offset, count); - - /* ---- 983,987 ---- - * Copy the data into the data buffer. - */ -! memmove((char *)pktdata + offset, (char *)rpkt.data, count); - - /* -*************** -*** 1051,1055 **** - */ - if (qsize > 0) { -! bcopy(qdata, (char *)qpkt.data, qsize); - pktsize = qsize + CTL_HEADER_LEN; - while (pktsize & (sizeof(U_LONG)-1)) { ---- 1051,1055 ---- - */ - if (qsize > 0) { -! memmove((char *)qpkt.data, qdata, qsize); - pktsize = qsize + CTL_HEADER_LEN; - while (pktsize & (sizeof(U_LONG)-1)) { -*************** -*** 1542,1546 **** - return 1; - } else if ((hp = gethostbyname(host)) != 0) { -! bcopy(hp->h_addr, (char *)num, sizeof(U_LONG)); - if (fullhost != 0) - (void) strcpy(fullhost, hp->h_name); ---- 1542,1546 ---- - return 1; - } else if ((hp = gethostbyname(host)) != 0) { -! memmove((char *)num, hp->h_addr, sizeof(U_LONG)); - if (fullhost != 0) - (void) strcpy(fullhost, hp->h_name); -*** /tmp/RCSA023494 Wed Jan 26 17:56:37 1994 ---- ntpq/ntpq_ops.c Wed Jan 26 16:33:34 1994 -*************** -*** 218,221 **** ---- 218,222 ---- - /* - * strsave - save a string -+ * XXX - should be in libntp.a - */ - static char * -*************** -*** 232,237 **** - } - -! bcopy(str, cp, len); -! return cp; - } - ---- 233,238 ---- - } - -! memmove(cp, str, len); -! return (cp); - } - -*************** -*** 373,381 **** - if (cp != data) - *cp++ = ','; -! bcopy(vl->name, cp, namelen); - cp += namelen; - if (valuelen != 0) { - *cp++ = '='; -! bcopy(vl->value, cp, valuelen); - cp += valuelen; - } ---- 374,382 ---- - if (cp != data) - *cp++ = ','; -! memmove(cp, vl->name, namelen); - cp += namelen; - if (valuelen != 0) { - *cp++ = '='; -! memmove(cp, vl->value, valuelen); - cp += valuelen; - } -*************** -*** 601,605 **** - return; - -! bzero((char *)tmplist, sizeof(tmplist)); - if (pcmd->nargs >= 2) - doaddvlist(tmplist, pcmd->argval[1].string); ---- 602,606 ---- - return; - -! memset((char *)tmplist, 0, sizeof(tmplist)); - if (pcmd->nargs >= 2) - doaddvlist(tmplist, pcmd->argval[1].string); -*************** -*** 632,636 **** - return; - -! bzero((char *)tmplist, sizeof(tmplist)); - doaddvlist(tmplist, pcmd->argval[1].string); - ---- 633,637 ---- - return; - -! memset((char *)tmplist, 0, sizeof(tmplist)); - doaddvlist(tmplist, pcmd->argval[1].string); - -*************** -*** 691,695 **** - return; - -! bzero((char *)tmplist, sizeof(tmplist)); - if (pcmd->nargs >= 2) - doaddvlist(tmplist, pcmd->argval[1].string); ---- 692,696 ---- - return; - -! memset((char *)tmplist, 0, sizeof(tmplist)); - if (pcmd->nargs >= 2) - doaddvlist(tmplist, pcmd->argval[1].string); -*************** -*** 803,807 **** - return; - -! bzero((char *)tmplist, sizeof(tmplist)); - if (pcmd->nargs >= 3) - doaddvlist(tmplist, pcmd->argval[2].string); ---- 804,808 ---- - return; - -! memset((char *)tmplist, 0, sizeof(tmplist)); - if (pcmd->nargs >= 3) - doaddvlist(tmplist, pcmd->argval[2].string); -*************** -*** 1283,1287 **** - extern struct ctl_var peer_var[]; - -! bzero((char *)havevar, sizeof(havevar)); - gettstamp(&ts); - ---- 1284,1288 ---- - extern struct ctl_var peer_var[]; - -! memset((char *)havevar, 0, sizeof(havevar)); - gettstamp(&ts); - -*** /tmp/RCSA023500 Wed Jan 26 17:56:38 1994 ---- ntptrace/ntptrace.c Wed Jan 26 16:33:35 1994 -*************** -*** 112,117 **** - int errflg; - int c; -! extern char *optarg; -! extern int optind; - extern char *Version; - ---- 112,117 ---- - int errflg; - int c; -! extern char *ntp_optarg; -! extern int ntp_optind; - extern char *Version; - -*************** -*** 122,126 **** - * Decode argument list - */ -! while ((c = getopt_l(argc, argv, "do:nr:t:v")) != EOF) - switch (c) { - case 'd': ---- 122,126 ---- - * Decode argument list - */ -! while ((c = ntp_getopt(argc, argv, "do:nr:t:v")) != EOF) - switch (c) { - case 'd': -*************** -*** 131,138 **** - break; - case 'o': -! sys_version = atoi(optarg); - break; - case 'r': -! sys_retries = atoi(optarg); - if (sys_retries < 1) { - (void)fprintf(stderr, ---- 131,138 ---- - break; - case 'o': -! sys_version = atoi(ntp_optarg); - break; - case 'r': -! sys_retries = atoi(ntp_optarg); - if (sys_retries < 1) { - (void)fprintf(stderr, -*************** -*** 143,147 **** - break; - case 't': -! sys_timeout = atoi(optarg); - if (sys_timeout < 1) { - (void)fprintf(stderr, ---- 143,147 ---- - break; - case 't': -! sys_timeout = atoi(ntp_optarg); - if (sys_timeout < 1) { - (void)fprintf(stderr, -*************** -*** 161,165 **** - } - -! if (errflg || (argc - optind) > 1) { - (void) fprintf(stderr, - "usage: %s [-vnd] [-r retries] [-t timeout] [server]\n", ---- 161,165 ---- - } - -! if (errflg || (argc - ntp_optind) > 1) { - (void) fprintf(stderr, - "usage: %s [-vnd] [-r retries] [-t timeout] [server]\n", -*************** -*** 183,188 **** - syslog(LOG_NOTICE, "%s", Version); - -! if ((argc - optind) == 1) -! firstserver = addservbyname(argv[optind]); - else - firstserver = addservbyname("localhost"); ---- 183,188 ---- - syslog(LOG_NOTICE, "%s", Version); - -! if ((argc - ntp_optind) == 1) -! firstserver = addservbyname(argv[ntp_optind]); - else - firstserver = addservbyname("localhost"); -*************** -*** 503,507 **** - - server = (struct server *)emalloc(sizeof(struct server)); -! bzero((char *)server, sizeof(struct server)); - - server->srcadr.sin_family = AF_INET; ---- 503,507 ---- - - server = (struct server *)emalloc(sizeof(struct server)); -! memset((char *)server, 0, sizeof(struct server)); - - server->srcadr.sin_family = AF_INET; -*************** -*** 617,621 **** - return 1; - } else if ((hp = gethostbyname(host)) != 0) { -! bcopy(hp->h_addr, (char *)num, sizeof(U_LONG)); - return 1; - } ---- 617,621 ---- - return 1; - } else if ((hp = gethostbyname(host)) != 0) { -! memmove((char *)num, hp->h_addr, sizeof(U_LONG)); - return 1; - } -*************** -*** 736,740 **** - if (pp->stratum == 1) { - junk[4] = 0; -! bcopy((char *)&pp->refid, junk, 4); - str = junk; - (void) fprintf(fp, "'%s'", str); ---- 736,740 ---- - if (pp->stratum == 1) { - junk[4] = 0; -! memmove(junk, (char *)&pp->refid, 4); - str = junk; - (void) fprintf(fp, "'%s'", str); -*** /tmp/RCSA023505 Wed Jan 26 17:56:39 1994 ---- parse/util/testdcf.c Wed Jan 26 16:33:35 1994 -*************** -*** 353,357 **** - } - -! bzero(term.c_cc, sizeof(term.c_cc)); - term.c_cc[VMIN] = 1; - term.c_cflag = B50|CS8|CREAD|CLOCAL; ---- 353,357 ---- - } - -! memset(term.c_cc, 0, sizeof(term.c_cc)); - term.c_cc[VMIN] = 1; - term.c_cflag = B50|CS8|CREAD|CLOCAL; -*** /tmp/RCSA023510 Wed Jan 26 17:56:40 1994 ---- ppsclock/ppstest/ppstest.c Wed Jan 26 16:33:35 1994 -*************** -*** 103,107 **** - speed_t speed = B4800; - -! bzero((char *)&termios, sizeof(termios)); - termios.c_cflag = CS8 | CREAD | CLOCAL; - termios.c_iflag = IGNCR; ---- 103,107 ---- - speed_t speed = B4800; - -! memset((char *)&termios, 0, sizeof(termios)); - termios.c_cflag = CS8 | CREAD | CLOCAL; - termios.c_iflag = IGNCR; -*** /tmp/RCSA023525 Wed Jan 26 17:56:43 1994 ---- scripts/autoconf Wed Jan 26 16:33:35 1994 -*************** -*** 324,329 **** - { - test -n "$verbose" && \ -! echo ' defining' HAVE_UNISTD_H -! DEFS="$DEFS -DHAVE_UNISTD_H=1" - } - ---- 324,329 ---- - { - test -n "$verbose" && \ -! echo ' defining' NTP_POSIX_SOURCE -! DEFS="$DEFS -DNTP_POSIX_SOURCE=1" - } - -*** /tmp/RCSA023535 Wed Jan 26 17:56:46 1994 ---- util/Makefile.tmpl Wed Jan 26 16:33:35 1994 -*************** -*** 33,37 **** - - tickadj: $(TKOBJS) -! $(CC) $(COPTS) -o $@ $(TKOBJS) $(DAEMONLIBS) $(RESLIB) $(COMPAT) - - ntptime: $(NTOBJS) ---- 33,37 ---- - - tickadj: $(TKOBJS) -! $(CC) $(COPTS) -o $@ $(TKOBJS) $(LIB) $(DAEMONLIBS) $(RESLIB) $(COMPAT) - - ntptime: $(NTOBJS) -*** /tmp/RCSA023535 Wed Jan 26 17:56:47 1994 ---- util/ntptime.c Wed Jan 26 16:33:36 1994 -*************** -*** 38,42 **** - extern int sigvec P((int, struct sigvec *, struct sigvec *)); - void pll_trap P((void)); -- extern int getopt_l P((int, char **, char *)); - - static struct sigvec newsigsys; /* new sigvec status */ ---- 38,41 ---- -*************** -*** 52,57 **** - char *argv[]; - { -! extern int optind; -! extern char *optarg; - int status; - struct ntptimeval ntv; ---- 51,56 ---- - char *argv[]; - { -! extern int ntp_optind; -! extern char *ntp_optarg; - int status; - struct ntptimeval ntv; -*************** -*** 67,71 **** - ntx.mode = 0; - progname = argv[0]; -! while ((c = getopt_l(argc, argv, optargs)) != EOF) switch (c) { - case 'c': - cost++; ---- 66,70 ---- - ntx.mode = 0; - progname = argv[0]; -! while ((c = ntp_getopt(argc, argv, optargs)) != EOF) switch (c) { - case 'c': - cost++; -*************** -*** 73,81 **** - case 'e': - ntx.mode |= ADJ_ESTERROR; -! ntx.esterror = atoi(optarg); - break; - case 'f': - ntx.mode |= ADJ_FREQUENCY; -! ntx.frequency = (int) (atof(optarg) * (1 << SHIFT_USEC)); - if (ntx.frequency < (-100 << SHIFT_USEC) - || ntx.frequency > ( 100 << SHIFT_USEC)) errflg++; ---- 72,81 ---- - case 'e': - ntx.mode |= ADJ_ESTERROR; -! ntx.esterror = atoi(ntp_optarg); - break; - case 'f': - ntx.mode |= ADJ_FREQUENCY; -! ntx.frequency = (int) (atof(ntp_optarg) -! * (1 << SHIFT_USEC)); - if (ntx.frequency < (-100 << SHIFT_USEC) - || ntx.frequency > ( 100 << SHIFT_USEC)) errflg++; -*************** -*** 83,91 **** - case 'm': - ntx.mode |= ADJ_MAXERROR; -! ntx.maxerror = atoi(optarg); - break; - case 'o': - ntx.mode |= ADJ_OFFSET; -! ntx.offset = atoi(optarg); - break; - case 'r': ---- 83,91 ---- - case 'm': - ntx.mode |= ADJ_MAXERROR; -! ntx.maxerror = atoi(ntp_optarg); - break; - case 'o': - ntx.mode |= ADJ_OFFSET; -! ntx.offset = atoi(ntp_optarg); - break; - case 'r': -*************** -*** 94,98 **** - case 's': - ntx.mode |= ADJ_STATUS; -! ntx.status = atoi(optarg); - if (ntx.status < 0 || ntx.status > 4) errflg++; - break; ---- 94,98 ---- - case 's': - ntx.mode |= ADJ_STATUS; -! ntx.status = atoi(ntp_optarg); - if (ntx.status < 0 || ntx.status > 4) errflg++; - break; -*************** -*** 99,103 **** - case 't': - ntx.mode |= ADJ_TIMECONST; -! ntx.time_constant = atoi(optarg); - if (ntx.time_constant < 0 || ntx.time_constant > MAXTC) - errflg++; ---- 99,103 ---- - case 't': - ntx.mode |= ADJ_TIMECONST; -! ntx.time_constant = atoi(ntp_optarg); - if (ntx.time_constant < 0 || ntx.time_constant > MAXTC) - errflg++; -*************** -*** 106,110 **** - errflg++; - } -! if (errflg || (optind != argc)) { - (void) fprintf(stderr, - "usage: %s [-%s]\n\n\ ---- 106,110 ---- - errflg++; - } -! if (errflg || (ntp_optind != argc)) { - (void) fprintf(stderr, - "usage: %s [-%s]\n\n\ -*** /tmp/RCSA023535 Wed Jan 26 17:56:47 1994 ---- util/tickadj.c Wed Jan 26 16:33:36 1994 -*************** -*** 62,68 **** - static void writevar P((int, unsigned long, int)); - static void readvar P((int, unsigned long, int *)); -- #ifndef NTP_POSIX_SOURCE -- extern int getopt P((int, char **, char *)); -- #endif - - /* ---- 62,65 ---- -*************** -*** 76,81 **** - int c; - int errflg = 0; -! extern int optind; -! extern char *optarg; - unsigned long tickadj_offset; - unsigned long tick_offset; ---- 73,78 ---- - int c; - int errflg = 0; -! extern int ntp_optind; -! extern char *ntp_optarg; - unsigned long tickadj_offset; - unsigned long tick_offset; -*************** -*** 95,99 **** - - progname = argv[0]; -! while ((c = getopt(argc, argv, "a:Adkqpst:")) != EOF) - switch (c) { - case 'd': ---- 92,96 ---- - - progname = argv[0]; -! while ((c = ntp_getopt(argc, argv, "a:Adkqpst:")) != EOF) - switch (c) { - case 'd': -*************** -*** 110,118 **** - break; - case 'a': -! writetickadj = atoi(optarg); - if (writetickadj <= 0) { - (void) fprintf(stderr, - "%s: unlikely value for tickadj: %s\n", -! progname, optarg); - errflg++; - } ---- 107,115 ---- - break; - case 'a': -! writetickadj = atoi(ntp_optarg); - if (writetickadj <= 0) { - (void) fprintf(stderr, - "%s: unlikely value for tickadj: %s\n", -! progname, ntp_optarg); - errflg++; - } -*************** -*** 125,133 **** - break; - case 't': -! writetick = atoi(optarg); - if (writetick <= 0) { - (void) fprintf(stderr, - "%s: unlikely value for tick: %s\n", -! progname, optarg); - errflg++; - } ---- 122,130 ---- - break; - case 't': -! writetick = atoi(ntp_optarg); - if (writetick <= 0) { - (void) fprintf(stderr, - "%s: unlikely value for tick: %s\n", -! progname, ntp_optarg); - errflg++; - } -*************** -*** 137,141 **** - break; - } -! if (errflg || optind != argc) { - (void) fprintf(stderr, - "usage: %s [-Aqsp] [-a newadj] [-t newtick]\n", progname); ---- 134,138 ---- - break; - } -! if (errflg || ntp_optind != argc) { - (void) fprintf(stderr, - "usage: %s [-Aqsp] [-a newadj] [-t newtick]\n", progname); -*** /tmp/RCSA023543 Wed Jan 26 17:56:49 1994 ---- xntpd/ntp_config.c Wed Jan 26 16:33:36 1994 -*************** -*** 341,345 **** - int errflg; - int c; -! extern int optind; - - debug = 0; /* no debugging by default */ ---- 341,345 ---- - int errflg; - int c; -! extern int ntp_optind; - - debug = 0; /* no debugging by default */ -*************** -*** 353,357 **** - * the terminal, but we won't know to do that until we've - * parsed the command line. Do that now, crudely, and do it -! * again later. Our getopt_l() is explicitly reusable, by the - * way. Your own mileage may vary. - */ ---- 353,357 ---- - * the terminal, but we won't know to do that until we've - * parsed the command line. Do that now, crudely, and do it -! * again later. Our ntp_getopt() is explicitly reusable, by the - * way. Your own mileage may vary. - */ -*************** -*** 362,366 **** - * Decode argument list - */ -! while ((c = getopt_l(argc, argv, xntp_options)) != EOF) - switch (c) { - case 'd': ---- 362,366 ---- - * Decode argument list - */ -! while ((c = ntp_getopt(argc, argv, xntp_options)) != EOF) - switch (c) { - case 'd': -*************** -*** 374,378 **** - } - -! if (errflg || optind != argc) { - (void) fprintf(stderr, - "usage: %s [ -bd ] [ -c config_file ]\n", progname); ---- 374,378 ---- - } - -! if (errflg || ntp_optind != argc) { - (void) fprintf(stderr, - "usage: %s [ -bd ] [ -c config_file ]\n", progname); -*************** -*** 379,383 **** - exit(2); - } -! optind = 0; /* reset optind to restart getopt_l */ - - if (debug) { ---- 379,383 ---- - exit(2); - } -! ntp_optind = 0; /* reset optind to restart ntp_getopt() */ - - if (debug) { -*************** -*** 427,432 **** - int have_keyfile; - char keyfile[MAXFILENAME]; -! extern int optind; -! extern char *optarg; - extern U_LONG info_auth_keyid; - FILEGEN *filegen; ---- 427,432 ---- - int have_keyfile; - char keyfile[MAXFILENAME]; -! extern int ntp_optind; -! extern char *ntp_optarg; - extern U_LONG info_auth_keyid; - FILEGEN *filegen; -*************** -*** 451,455 **** - * Decode argument list - */ -! while ((c = getopt_l(argc, argv, xntp_options)) != EOF) { - switch (c) { - case 'a': ---- 451,455 ---- - * Decode argument list - */ -! while ((c = ntp_getopt(argc, argv, xntp_options)) != EOF) { - switch (c) { - case 'a': -*************** -*** 460,464 **** - break; - case 'c': -! config_file = optarg; - break; - case 'd': ---- 460,464 ---- - break; - case 'c': -! config_file = ntp_optarg; - break; - case 'd': -*************** -*** 474,481 **** - l_fp tmp; - -! if (!atolfp(optarg, &tmp)) { - syslog(LOG_ERR, - "command line encryption delay value %s undecodable", -! optarg); - errflg++; - } else if (tmp.l_ui != 0) { ---- 474,481 ---- - l_fp tmp; - -! if (!atolfp(ntp_optarg, &tmp)) { - syslog(LOG_ERR, - "command line encryption delay value %s undecodable", -! ntp_optarg); - errflg++; - } else if (tmp.l_ui != 0) { -*************** -*** 482,486 **** - syslog(LOG_ERR, - "command line encryption delay value %s is unlikely", -! optarg); - errflg++; - } else { ---- 482,486 ---- - syslog(LOG_ERR, - "command line encryption delay value %s is unlikely", -! ntp_optarg); - errflg++; - } else { -*************** -*** 491,500 **** - - case 'f': -! stats_config(STATS_FREQ_FILE, optarg); - break; - - case 'k': -! getauthkeys(optarg); -! if ((int)strlen(optarg) >= MAXFILENAME) { - syslog(LOG_ERR, - "key file name too LONG (>%d, sigh), no name resolution possible", ---- 491,500 ---- - - case 'f': -! stats_config(STATS_FREQ_FILE, ntp_optarg); - break; - - case 'k': -! getauthkeys(ntp_optarg); -! if ((int)strlen(ntp_optarg) >= MAXFILENAME) { - syslog(LOG_ERR, - "key file name too LONG (>%d, sigh), no name resolution possible", -*************** -*** 502,506 **** - } else { - have_keyfile = 1; -! (void)strcpy(keyfile, optarg); - } - break; ---- 502,506 ---- - } else { - have_keyfile = 1; -! (void)strcpy(keyfile, ntp_optarg); - } - break; -*************** -*** 507,511 **** - - case 'p': -! stats_config(STATS_PID_FILE, optarg); - break; - ---- 507,511 ---- - - case 'p': -! stats_config(STATS_PID_FILE, ntp_optarg); - break; - -*************** -*** 514,525 **** - l_fp tmp; - -! if (!atolfp(optarg, &tmp)) { - syslog(LOG_ERR, - "command line broadcast delay value %s undecodable", -! optarg); - } else if (tmp.l_ui != 0) { - syslog(LOG_ERR, - "command line broadcast delay value %s is unlikely", -! optarg); - } else { - proto_config(PROTO_BROADDELAY, tmp.l_f); ---- 514,525 ---- - l_fp tmp; - -! if (!atolfp(ntp_optarg, &tmp)) { - syslog(LOG_ERR, - "command line broadcast delay value %s undecodable", -! ntp_optarg); - } else if (tmp.l_ui != 0) { - syslog(LOG_ERR, - "command line broadcast delay value %s is unlikely", -! ntp_optarg); - } else { - proto_config(PROTO_BROADDELAY, tmp.l_f); -*************** -*** 529,533 **** - - case 's': -! stats_config(STATS_STATSDIR, optarg); - break; - ---- 529,533 ---- - - case 's': -! stats_config(STATS_STATSDIR, ntp_optarg); - break; - -*************** -*** 536,544 **** - int tkey; - -! tkey = atoi(optarg); - if (tkey <= 0 || tkey > NTP_MAXKEY) { - syslog(LOG_ERR, - "command line trusted key %s is unlikely", -! optarg); - } else { - authtrust(tkey, (LONG)1); ---- 536,544 ---- - int tkey; - -! tkey = atoi(ntp_optarg); - if (tkey <= 0 || tkey > NTP_MAXKEY) { - syslog(LOG_ERR, - "command line trusted key %s is unlikely", -! ntp_optarg); - } else { - authtrust(tkey, (LONG)1); -*************** -*** 554,558 **** - } - -! if (errflg || optind != argc) { - (void) fprintf(stderr, - "usage: %s [ -bd ] [ -c config_file ]\n", progname); ---- 554,558 ---- - } - -! if (errflg || ntp_optind != argc) { - (void) fprintf(stderr, - "usage: %s [ -bd ] [ -c config_file ]\n", progname); -*************** -*** 1130,1134 **** - } - -! bzero((char *)&clock, sizeof clock); - errflg = 0; - for (i = 2; i < ntokens-1; i++) { ---- 1130,1134 ---- - } - -! memset((char *)&clock, 0, sizeof clock); - errflg = 0; - for (i = 2; i < ntokens-1; i++) { -*************** -*** 1582,1586 **** - * make up socket address. Clear it out for neatness. - */ -! bzero((char *)addr, sizeof(struct sockaddr_in)); - addr->sin_family = AF_INET; - addr->sin_port = htons(NTP_PORT); ---- 1582,1586 ---- - * make up socket address. Clear it out for neatness. - */ -! memset((char *)addr, 0, sizeof(struct sockaddr_in)); - addr->sin_family = AF_INET; - addr->sin_port = htons(NTP_PORT); -*** /tmp/RCSA023543 Wed Jan 26 17:56:49 1994 ---- xntpd/ntp_control.c Wed Jan 26 16:33:36 1994 -*************** -*** 873,877 **** - } - -! bcopy(dp, (char *)datapt, dlen); - datapt += dlen; - datalinelen += dlen; ---- 873,877 ---- - } - -! memmove((char *)datapt, dp, dlen); - datapt += dlen; - datalinelen += dlen; -*************** -*** 901,905 **** - if (len > (sizeof(buffer) - (cp - buffer) - 1)) - len = sizeof(buffer) - (cp - buffer) - 1; -! bcopy(data, cp, len); - cp += len; - *cp++ = '"'; ---- 901,905 ---- - if (len > (sizeof(buffer) - (cp - buffer) - 1)) - len = sizeof(buffer) - (cp - buffer) - 1; -! memmove(cp, data, len); - cp += len; - *cp++ = '"'; -*************** -*** 1697,1701 **** - if (res_authokay) - ctl_sys_num_events = 0; -! bzero((char *)wants, CS_MAXCODE+1); - gotvar = 0; - while ((v = ctl_getitem(sys_var, &valuep)) != 0) { ---- 1697,1701 ---- - if (res_authokay) - ctl_sys_num_events = 0; -! memset((char *)wants, 0, CS_MAXCODE+1); - gotvar = 0; - while ((v = ctl_getitem(sys_var, &valuep)) != 0) { -*************** -*** 1733,1737 **** - if (res_authokay) - peer->num_events = 0; -! bzero((char*)wants, CP_MAXCODE+1); - gotvar = 0; - while ((v = ctl_getitem(peer_var, &valuep)) != 0) { ---- 1733,1737 ---- - if (res_authokay) - peer->num_events = 0; -! memset((char*)wants, 0, CP_MAXCODE+1); - gotvar = 0; - while ((v = ctl_getitem(peer_var, &valuep)) != 0) { -*************** -*** 1906,1910 **** - rpkt.status = htons(ctlclkstatus(&clock)); - gotvar = 0; -! bzero((char*)wants, CC_MAXCODE+1); - while ((v = ctl_getitem(sys_var, &valuep)) != 0) { - if (v->flags & EOV) { ---- 1906,1910 ---- - rpkt.status = htons(ctlclkstatus(&clock)); - gotvar = 0; -! memset((char*)wants, 0, CC_MAXCODE+1); - while ((v = ctl_getitem(sys_var, &valuep)) != 0) { - if (v->flags & EOV) { -*** /tmp/RCSA023543 Wed Jan 26 17:56:50 1994 ---- xntpd/ntp_intres.c Wed Jan 26 16:33:37 1994 -*************** -*** 295,299 **** - len = strlen(name) + 1; - cp = emalloc((unsigned)len); -! bcopy(name, cp, len); - - ce = (struct conf_entry *)emalloc(sizeof(struct conf_entry)); ---- 295,299 ---- - len = strlen(name) + 1; - cp = emalloc((unsigned)len); -! memmove(cp, name, len); - - ce = (struct conf_entry *)emalloc(sizeof(struct conf_entry)); -*************** -*** 348,354 **** - - if (h_errno == TRY_AGAIN) -! return 1; - #endif -! return 0; - } - ---- 348,354 ---- - - if (h_errno == TRY_AGAIN) -! return (1); - #endif -! return (0); - } - -*************** -*** 358,364 **** - * only return one. - */ -! (void) bcopy(hp->h_addr, (char *)&(entry->ce_peeraddr), -! sizeof(struct in_addr)); -! return 1; - } - ---- 358,365 ---- - * only return one. - */ -! memmove((char *)&(entry->ce_peeraddr), -! (char *)hp->h_addr, -! sizeof(struct in_addr)); -! return (1); - } - -*************** -*** 381,385 **** - } - -! bzero((char *)&saddr, sizeof(saddr)); - saddr.sin_family = AF_INET; - saddr.sin_port = htons(NTP_PORT); /* trash */ ---- 382,386 ---- - } - -! memset((char *)&saddr, 0, sizeof(saddr)); - saddr.sin_family = AF_INET; - saddr.sin_port = htons(NTP_PORT); /* trash */ -*************** -*** 449,453 **** - * Make up a request packet with the configuration info - */ -! bzero((char *)&reqpkt, sizeof(reqpkt)); - - reqpkt.rm_vn_mode = RM_VN_MODE(0, 0); ---- 450,454 ---- - * Make up a request packet with the configuration info - */ -! memset((char *)&reqpkt, 0, sizeof(reqpkt)); - - reqpkt.rm_vn_mode = RM_VN_MODE(0, 0); -*************** -*** 457,461 **** - reqpkt.err_nitems = ERR_NITEMS(0, 1); /* one item */ - reqpkt.mbz_itemsize = MBZ_ITEMSIZE(sizeof(struct conf_peer)); -! bcopy((char *)conf, reqpkt.data, sizeof(struct conf_peer)); - reqpkt.keyid = htonl(req_keyid); - ---- 458,462 ---- - reqpkt.err_nitems = ERR_NITEMS(0, 1); /* one item */ - reqpkt.mbz_itemsize = MBZ_ITEMSIZE(sizeof(struct conf_peer)); -! memmove(reqpkt.data, (char *)conf, sizeof(struct conf_peer)); - reqpkt.keyid = htonl(req_keyid); - -*** /tmp/RCSA023543 Wed Jan 26 17:56:50 1994 ---- xntpd/ntp_monitor.c Wed Jan 26 16:33:37 1994 -*************** -*** 103,107 **** - mon_hash = 0; - mon_hash_count = 0; -! bzero((char *)&mon_mru_list, sizeof mon_mru_list); - } - ---- 103,107 ---- - mon_hash = 0; - mon_hash_count = 0; -! memset((char *)&mon_mru_list, 0, sizeof mon_mru_list); - } - -*************** -*** 122,126 **** - mon_hash = (struct mon_data *) - emalloc(MON_HASH_SIZE * sizeof(struct mon_data)); -! bzero((char *)mon_hash, MON_HASH_SIZE*sizeof(struct mon_data)); - mon_hash_count = (int *)emalloc(MON_HASH_SIZE * sizeof(int)); - mon_free_mem = 0; ---- 122,127 ---- - mon_hash = (struct mon_data *) - emalloc(MON_HASH_SIZE * sizeof(struct mon_data)); -! memset((char *)mon_hash, 0, -! MON_HASH_SIZE*sizeof(struct mon_data)); - mon_hash_count = (int *)emalloc(MON_HASH_SIZE * sizeof(int)); - mon_free_mem = 0; -*** /tmp/RCSA023543 Wed Jan 26 17:56:50 1994 ---- xntpd/ntp_peer.c Wed Jan 26 16:33:37 1994 -*************** -*** 440,444 **** - * Zero the whole thing for now. We might be pickier later. - */ -! bzero((char *)peer, sizeof(struct peer)); - - peer->srcadr = *srcadr; ---- 440,444 ---- - * Zero the whole thing for now. We might be pickier later. - */ -! memset((char *)peer, 0, sizeof(struct peer)); - - peer->srcadr = *srcadr; -*** /tmp/RCSA023543 Wed Jan 26 17:56:51 1994 ---- xntpd/ntp_proto.c Wed Jan 26 16:33:37 1994 -*************** -*** 1079,1083 **** - else { - if (pps_control) -! bcopy(PPSREFID, (char *)&sys_refid, 4); - else - sys_refid = peer->srcadr.sin_addr.s_addr; ---- 1079,1083 ---- - else { - if (pps_control) -! memmove((char *)&sys_refid, PPSREFID, 4); - else - sys_refid = peer->srcadr.sin_addr.s_addr; -*************** -*** 1128,1132 **** - sys_refid = peer->refid; - else -! bcopy(PPSREFID, (char *)&sys_refid, 4); - } - } ---- 1128,1132 ---- - sys_refid = peer->refid; - else -! memmove((char *)&sys_refid, PPSREFID, 4); - } - } -*************** -*** 1251,1255 **** - printf("clear(%s)\n", ntoa(&peer->srcadr)); - #endif -! bzero(CLEAR_TO_ZERO(peer), LEN_CLEAR_TO_ZERO); - peer->hpoll = peer->minpoll; - peer->dispersion = NTP_MAXDISPERSE; ---- 1251,1255 ---- - printf("clear(%s)\n", ntoa(&peer->srcadr)); - #endif -! memset(CLEAR_TO_ZERO(peer), 0, LEN_CLEAR_TO_ZERO); - peer->hpoll = peer->minpoll; - peer->dispersion = NTP_MAXDISPERSE; -*** /tmp/RCSA023543 Wed Jan 26 17:56:51 1994 ---- xntpd/ntp_request.c Wed Jan 26 16:33:38 1994 -*************** -*** 313,317 **** - * Copy data out of exbuf into the packet. - */ -! bcopy(exbuf, &rpkt.data[0], itemsize); - seqno++; - databytes = 0; ---- 313,317 ---- - * Copy data out of exbuf into the packet. - */ -! memmove(&rpkt.data[0], exbuf, itemsize); - seqno++; - databytes = 0; -*************** -*** 683,687 **** - extern struct peer *sys_peer; - -! bzero((char *)&addr, sizeof addr); - addr.sin_family = AF_INET; - items = INFO_NITEMS(inpkt->err_nitems); ---- 683,687 ---- - extern struct peer *sys_peer; - -! memset((char *)&addr, 0, sizeof addr); - addr.sin_family = AF_INET; - items = INFO_NITEMS(inpkt->err_nitems); -*************** -*** 774,778 **** - extern struct peer *sys_peer; - -! bzero((char *)&addr, sizeof addr); - addr.sin_family = AF_INET; - items = INFO_NITEMS(inpkt->err_nitems); ---- 774,778 ---- - extern struct peer *sys_peer; - -! memset((char *)&addr, 0, sizeof addr); - addr.sin_family = AF_INET; - items = INFO_NITEMS(inpkt->err_nitems); -*************** -*** 1142,1146 **** - items = INFO_NITEMS(inpkt->err_nitems); - cp = (struct conf_peer *)inpkt->data; -! bzero((char *)&peeraddr, sizeof(struct sockaddr_in)); - peeraddr.sin_family = AF_INET; - peeraddr.sin_port = htons(NTP_PORT); ---- 1142,1146 ---- - items = INFO_NITEMS(inpkt->err_nitems); - cp = (struct conf_peer *)inpkt->data; -! memset((char *)&peeraddr, 0, sizeof(struct sockaddr_in)); - peeraddr.sin_family = AF_INET; - peeraddr.sin_port = htons(NTP_PORT); -*************** -*** 1452,1457 **** - items = INFO_NITEMS(inpkt->err_nitems); - cr = (struct conf_restrict *)inpkt->data; -! bzero((char *)&matchaddr, sizeof(struct sockaddr_in)); -! bzero((char *)&matchmask, sizeof(struct sockaddr_in)); - matchaddr.sin_family = AF_INET; - matchmask.sin_family = AF_INET; ---- 1452,1457 ---- - items = INFO_NITEMS(inpkt->err_nitems); - cr = (struct conf_restrict *)inpkt->data; -! memset((char *)&matchaddr, 0, sizeof(struct sockaddr_in)); -! memset((char *)&matchmask, 0, sizeof(struct sockaddr_in)); - matchaddr.sin_family = AF_INET; - matchmask.sin_family = AF_INET; -*************** -*** 1870,1874 **** - * Prepare sockaddr_in structure - */ -! bzero((char *)&laddr, sizeof laddr); - laddr.sin_family = AF_INET; - laddr.sin_port = ntohs(NTP_PORT); ---- 1870,1874 ---- - * Prepare sockaddr_in structure - */ -! memset((char *)&laddr, 0, sizeof laddr); - laddr.sin_family = AF_INET; - laddr.sin_port = ntohs(NTP_PORT); -*************** -*** 2096,2100 **** - struct sockaddr_in addr; - -! bzero((char *)&addr, sizeof addr); - addr.sin_family = AF_INET; - addr.sin_port = htons(NTP_PORT); ---- 2096,2100 ---- - struct sockaddr_in addr; - -! memset((char *)&addr, 0, sizeof addr); - addr.sin_family = AF_INET; - addr.sin_port = htons(NTP_PORT); -*************** -*** 2150,2155 **** - struct sockaddr_in addr; - -! bzero((char *)&addr, sizeof addr); -! bzero((char *)&clock, sizeof clock); - addr.sin_family = AF_INET; - addr.sin_port = htons(NTP_PORT); ---- 2150,2155 ---- - struct sockaddr_in addr; - -! memset((char *)&addr, 0, sizeof addr); -! memset((char *)&clock, 0, sizeof clock); - addr.sin_family = AF_INET; - addr.sin_port = htons(NTP_PORT); -*************** -*** 2287,2291 **** - struct sockaddr_in addr; - -! bzero((char *)&addr, sizeof addr); - addr.sin_family = AF_INET; - addr.sin_port = htons(NTP_PORT); ---- 2287,2291 ---- - struct sockaddr_in addr; - -! memset((char *)&addr, 0, sizeof addr); - addr.sin_family = AF_INET; - addr.sin_port = htons(NTP_PORT); -*************** -*** 2304,2308 **** - } - -! bzero((char *)&bug, sizeof bug); - refclock_buginfo(&addr, &bug); - if (bug.nvalues == 0 && bug.ntimes == 0) { ---- 2304,2308 ---- - } - -! memset((char *)&bug, 0, sizeof bug); - refclock_buginfo(&addr, &bug); - if (bug.nvalues == 0 && bug.ntimes == 0) { -*** /tmp/RCSA023543 Wed Jan 26 17:56:52 1994 ---- xntpd/ntp_restrict.c Wed Jan 26 16:33:38 1994 -*************** -*** 82,86 **** - */ - resfree = 0; -! bzero((char *)resinit, sizeof resinit); - - for (i = 1; i < INITRESLIST; i++) { ---- 82,86 ---- - */ - resfree = 0; -! memset((char *)resinit, 0, sizeof resinit); - - for (i = 1; i < INITRESLIST; i++) { -*************** -*** 235,239 **** - rl = (struct restrictlist *) emalloc( - INCRESLIST*sizeof(struct restrictlist)); -! bzero((char *)rl, - INCRESLIST*sizeof(struct restrictlist)); - ---- 235,239 ---- - rl = (struct restrictlist *) emalloc( - INCRESLIST*sizeof(struct restrictlist)); -! memset((char *)rl, 0, - INCRESLIST*sizeof(struct restrictlist)); - -*************** -*** 281,285 **** - rlprev->next = rl->next; - restrictcount--; -! bzero((char *)rl, sizeof(struct restrictlist)); - - rl->next = resfree; ---- 281,285 ---- - rlprev->next = rl->next; - restrictcount--; -! memset((char *)rl, 0, sizeof(struct restrictlist)); - - rl->next = resfree; -*** /tmp/RCSA023543 Wed Jan 26 17:56:52 1994 ---- xntpd/ntp_util.c Wed Jan 26 16:33:39 1994 -*************** -*** 224,230 **** - stats_drift_file = emalloc((u_int)(len + 1)); - stats_temp_file = emalloc((u_int)(len + sizeof(".TEMP"))); -! bcopy(value, stats_drift_file, len+1); -! bcopy(value, stats_temp_file, len); -! bcopy(".TEMP", stats_temp_file + len, sizeof(".TEMP")); - L_CLR(&old_drift); - ---- 224,230 ---- - stats_drift_file = emalloc((u_int)(len + 1)); - stats_temp_file = emalloc((u_int)(len + sizeof(".TEMP"))); -! memmove(stats_drift_file, value, len+1); -! memmove(stats_temp_file, value, len); -! memmove(stats_temp_file + len, ".TEMP", sizeof(".TEMP")); - L_CLR(&old_drift); - -*************** -*** 450,454 **** - key_file_name = emalloc((u_int)(len + 1)); - -! bcopy(keyfile, key_file_name, len+1); - - authreadkeys(key_file_name); ---- 450,454 ---- - key_file_name = emalloc((u_int)(len + 1)); - -! memmove(key_file_name, keyfile, len+1); - - authreadkeys(key_file_name); -*** /tmp/RCSA023543 Wed Jan 26 17:56:52 1994 ---- xntpd/refclock_as2201.c Wed Jan 26 16:33:39 1994 -*************** -*** 251,256 **** - * Just zero the data arrays - */ -! bzero((char *)gpsunits, sizeof gpsunits); -! bzero((char *)unitinuse, sizeof unitinuse); - - /* ---- 251,256 ---- - * Just zero the data arrays - */ -! memset((char *)gpsunits, 0, sizeof gpsunits); -! memset((char *)unitinuse, 0, sizeof unitinuse); - - /* -*************** -*** 442,446 **** - } - } -! bzero((char *)gps, sizeof(struct gpsunit)); - gpsunits[unit] = gps; - ---- 442,446 ---- - } - } -! memset((char *)gps, 0, sizeof(struct gpsunit)); - gpsunits[unit] = gps; - -*************** -*** 480,484 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(GPSREFID, (char *)&peer->refid, 4); - else - peer->refid = htonl(GPSHSREFID); ---- 480,484 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, GPSREFID, 4); - else - peer->refid = htonl(GPSHSREFID); -*************** -*** 908,913 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(GPSREFID, (char *)&peer->refid, -! 4); - else - peer->refid = htonl(GPSHSREFID); ---- 908,913 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, -! GPSREFID, 4); - else - peer->refid = htonl(GPSHSREFID); -*** /tmp/RCSA023543 Wed Jan 26 17:56:52 1994 ---- xntpd/refclock_chu.c Wed Jan 26 16:33:39 1994 -*************** -*** 294,299 **** - * Just zero the data arrays - */ -! bzero((char *)chuunits, sizeof chuunits); -! bzero((char *)unitinuse, sizeof unitinuse); - - /* ---- 294,299 ---- - * Just zero the data arrays - */ -! memset((char *)chuunits, 0, sizeof chuunits); -! memset((char *)unitinuse, 0, sizeof unitinuse); - - /* -*************** -*** 462,466 **** - } - } -! bzero((char *)chu, sizeof(struct chuunit)); - chuunits[unit] = chu; - ---- 462,466 ---- - } - } -! memset((char *)chu, 0, sizeof(struct chuunit)); - chuunits[unit] = chu; - -*************** -*** 499,507 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(CHUREFID, (char *)&peer->refid, 4); - else - peer->refid = htonl(CHUHSREFID); - unitinuse[unit] = 1; -! return 1; - - /* ---- 499,507 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, CHUREFID, 4); - else - peer->refid = htonl(CHUHSREFID); - unitinuse[unit] = 1; -! return (1); - - /* -*************** -*** 1091,1095 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(CHUREFID, (char *)&peer->refid,4); - else - peer->refid = htonl(CHUHSREFID); ---- 1091,1096 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, -! CHUREFID, 4); - else - peer->refid = htonl(CHUHSREFID); -*** /tmp/RCSA023543 Wed Jan 26 17:56:53 1994 ---- xntpd/refclock_goes.c Wed Jan 26 16:33:39 1994 -*************** -*** 211,216 **** - * Just zero the data arrays - */ -! bzero((char *)goesunits, sizeof goesunits); -! bzero((char *)unitinuse, sizeof unitinuse); - - /* ---- 211,216 ---- - * Just zero the data arrays - */ -! memset((char *)goesunits, 0, sizeof goesunits); -! memset((char *)unitinuse, 0, sizeof unitinuse); - - /* -*************** -*** 401,405 **** - } - } -! bzero((char *)goes, sizeof(struct goesunit)); - goesunits[unit] = goes; - ---- 401,405 ---- - } - } -! memset((char *)goes, 0, sizeof(struct goesunit)); - goesunits[unit] = goes; - -*************** -*** 429,433 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(GOESREFID, (char *)&peer->refid, 4); - else - peer->refid = htonl(GOESHSREFID); ---- 429,433 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, GOESREFID, 4); - else - peer->refid = htonl(GOESHSREFID); -*************** -*** 924,929 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(GOESREFID, (char *)&peer->refid, -! 4); - else - peer->refid = htonl(GOESHSREFID); ---- 924,929 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, -! GOESREFID, 4); - else - peer->refid = htonl(GOESHSREFID); -*** /tmp/RCSA023543 Wed Jan 26 17:56:53 1994 ---- xntpd/refclock_gpstm.c Wed Jan 26 16:52:22 1994 -*************** -*** 18,22 **** - #ifdef SYS_BSDI - #undef HAVE_BSD_TTYS -- #define HAVE_POSIX_TTYS - #include <sys/ioctl.h> - #endif ---- 18,21 ---- -*************** -*** 30,34 **** - #endif /* HAVE_SYSV_TTYS */ - -! #if defined(HAVE_POSIX_TTYS) - #include <termios.h> - #endif ---- 29,33 ---- - #endif /* HAVE_SYSV_TTYS */ - -! #if defined(HAVE_TERMIOS) - #include <termios.h> - #endif -*************** -*** 203,208 **** - * Just zero the data arrays - */ -! bzero((char *)gpstm_units, sizeof gpstm_units); -! bzero((char *)unitinuse, sizeof unitinuse); - - /* ---- 202,207 ---- - * Just zero the data arrays - */ -! memset((char *)gpstm_units, 0, sizeof gpstm_units); -! memset((char *)unitinuse, 0, sizeof unitinuse); - - /* -*************** -*** 278,282 **** - } - #endif /* HAVE_SYSV_TTYS */ -! #if defined(HAVE_POSIX_TTYS) - /* - * POSIX serial line parameters (termios interface) ---- 277,281 ---- - } - #endif /* HAVE_SYSV_TTYS */ -! #if defined(HAVE_TERMIOS) - /* - * POSIX serial line parameters (termios interface) -*************** -*** 331,335 **** - #endif /* STREAM */ - } -! #endif /* HAVE_POSIX_TTYS */ - #if defined(HAVE_BSD_TTYS) - /* ---- 330,334 ---- - #endif /* STREAM */ - } -! #endif /* HAVE_TERMIOS */ - #if defined(HAVE_BSD_TTYS) - /* -*************** -*** 393,397 **** - } - } -! bzero((char *)gpstm, sizeof(struct gpstm_unit)); - gpstm_units[unit] = gpstm; - ---- 392,396 ---- - } - } -! memset((char *)gpstm, 0, sizeof(struct gpstm_unit)); - gpstm_units[unit] = gpstm; - -*************** -*** 420,424 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(REFID, (char *)&peer->refid, 4); - else - peer->refid = htonl(HSREFID); ---- 419,423 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, REFID, 4); - else - peer->refid = htonl(HSREFID); -*************** -*** 928,932 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(REFID, (char *)&peer->refid, 4); - else - peer->refid = htonl(HSREFID); ---- 927,932 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, -! REFID, 4); - else - peer->refid = htonl(HSREFID); -*** /tmp/RCSA023543 Wed Jan 26 17:56:53 1994 ---- xntpd/refclock_irig.c Wed Jan 26 16:33:40 1994 -*************** -*** 170,175 **** - * Just zero the data arrays - */ -! bzero((char *) irigunits, sizeof irigunits); -! bzero((char *) unitinuse, sizeof unitinuse); - - /* ---- 170,175 ---- - * Just zero the data arrays - */ -! memset((char *) irigunits, 0, sizeof irigunits); -! memset((char *) unitinuse, 0, sizeof unitinuse); - - /* -*************** -*** 251,255 **** - } - } -! bzero((char *) irig, sizeof(struct irigunit)); - - irigunits[unit] = irig; ---- 251,255 ---- - } - } -! memset((char *) irig, 0, sizeof(struct irigunit)); - - irigunits[unit] = irig; -*************** -*** 277,281 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(IRIGREFID, (char *) &peer->refid, 4); - else - peer->refid = htonl(IRIGHSREFID); ---- 277,281 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *) &peer->refid, IRIGREFID, 4); - else - peer->refid = htonl(IRIGHSREFID); -*************** -*** 486,491 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(IRIGREFID, (char *) &peer->refid, -! 4); - else - peer->refid = htonl(IRIGHSREFID); ---- 486,491 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *) &peer->refid, -! IRIGREFID, 4); - else - peer->refid = htonl(IRIGHSREFID); -*** /tmp/RCSA023543 Wed Jan 26 17:56:53 1994 ---- xntpd/refclock_leitch.c Wed Jan 26 16:33:40 1994 -*************** -*** 145,150 **** - leitch_init() - { -! bzero((char*)leitchunits,sizeof(leitchunits)); -! bzero((char*)unitinuse,sizeof(unitinuse)); - } - ---- 145,150 ---- - leitch_init() - { -! memset((char*)leitchunits, 0, sizeof(leitchunits)); -! memset((char*)unitinuse, 0, sizeof(unitinuse)); - } - -*************** -*** 271,275 **** - - leitch = &leitchunits[unit]; -! bzero((char*)leitch,sizeof(*leitch)); - - #if defined(HAVE_SYSV_TTYS) ---- 271,275 ---- - - leitch = &leitchunits[unit]; -! memset((char*)leitch, 0, sizeof(*leitch)); - - #if defined(HAVE_SYSV_TTYS) -*** /tmp/RCSA023543 Wed Jan 26 17:56:54 1994 ---- xntpd/refclock_local.c Wed Jan 26 16:33:40 1994 -*************** -*** 101,106 **** - * Just zero the data arrays - */ -! bzero((char *)lclunits, sizeof lclunits); -! bzero((char *)unitinuse, sizeof unitinuse); - } - ---- 101,106 ---- - * Just zero the data arrays - */ -! memset((char *)lclunits, 0, sizeof lclunits); -! memset((char *)unitinuse, 0, sizeof unitinuse); - } - -*************** -*** 149,153 **** - } - } -! bzero((char *)lcl, sizeof(struct lclunit)); - lclunits[unit] = lcl; - ---- 149,153 ---- - } - } -! memset((char *)lcl, 0, sizeof(struct lclunit)); - lclunits[unit] = lcl; - -*************** -*** 167,171 **** - peer->stratum = (u_char)unit; - if (unit <= 1) -! bcopy(LCLREFID, (char *)&peer->refid, 4); - else - peer->refid = htonl(LCLHSREFID); ---- 167,171 ---- - peer->stratum = (u_char)unit; - if (unit <= 1) -! memmove((char *)&peer->refid, LCLREFID, 4); - else - peer->refid = htonl(LCLHSREFID); -*** /tmp/RCSA023576 Wed Jan 26 17:56:54 1994 ---- xntpd/refclock_msfees.c Wed Jan 26 16:33:41 1994 -*************** -*** 380,385 **** - register int i; - /* Just zero the data arrays */ -! bzero((char *)eesunits, sizeof eesunits); -! bzero((char *)unitinuse, sizeof unitinuse); - - acceptable_slop.l_ui = 0; ---- 380,385 ---- - register int i; - /* Just zero the data arrays */ -! memset((char *)eesunits, 0, sizeof eesunits); -! memset((char *)unitinuse, 0, sizeof unitinuse); - - acceptable_slop.l_ui = 0; -*************** -*** 507,511 **** - else ees = (struct eesunit *) emalloc(sizeof(struct eesunit)); - } -! bzero((char *)ees, sizeof(struct eesunit)); - eesunits[unit] = ees; - ---- 507,511 ---- - else ees = (struct eesunit *) emalloc(sizeof(struct eesunit)); - } -! memset((char *)ees, 0, sizeof(struct eesunit)); - eesunits[unit] = ees; - -*************** -*** 548,553 **** - if (!io_addclock(&ees->io)) { - /* Oh shit. Just close and return. */ -! syslog(LOG_ERR, "ees clock: io_addclock(%s): %m", -! eesdev); - goto screwed; - } ---- 548,552 ---- - if (!io_addclock(&ees->io)) { - /* Oh shit. Just close and return. */ -! syslog(LOG_ERR, "ees clock: io_addclock(%s): %m", eesdev); - goto screwed; - } -*************** -*** 560,575 **** - peer->rootdelay = 0; /* ++++ */ - peer->rootdispersion = 0; /* ++++ */ -! if (stratumtouse[unit] <= 1) -! { bcopy(EESREFID, (char *)&peer->refid, 4); -! if (unit>0 && unit<10) ((char *)&peer->refid)[3] = '0' + unit; - } -- else peer->refid = htonl(EESHSREFID); - unitinuse[unit] = 1; - syslog(LOG_ERR, "ees clock: %s OK on %d", eesdev, unit); -! return 1; - - screwed: -! if (fd232 != -1) (void) close(fd232); -! return 0; - } - ---- 559,577 ---- - peer->rootdelay = 0; /* ++++ */ - peer->rootdispersion = 0; /* ++++ */ -! if (stratumtouse[unit] <= 1) { -! memmove((char *)&peer->refid, EESREFID, 4); -! if (unit > 0 && unit < 10) -! ((char *)&peer->refid)[3] = '0' + unit; -! } else { -! peer->refid = htonl(EESHSREFID); - } - unitinuse[unit] = 1; - syslog(LOG_ERR, "ees clock: %s OK on %d", eesdev, unit); -! return (1); - - screwed: -! if (fd232 != -1) -! (void) close(fd232); -! return (0); - } - -*************** -*** 860,864 **** - sincelast = this_uisec - ees->last_step; - -! bzero(&ppsclockev, sizeof ppsclockev); - - rc = ioctl(ees->io.fd, CIOGETEV, (char *) &ppsclockev); ---- 862,866 ---- - sincelast = this_uisec - ees->last_step; - -! memset(&ppsclockev, 0, sizeof ppsclockev); - - rc = ioctl(ees->io.fd, CIOGETEV, (char *) &ppsclockev); -*************** -*** 1444,1449 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) { -! bcopy(EESREFID, (char *)&peer->refid, -! 4); - if (unit>0 && unit<10) - ((char *)&peer->refid)[3] = ---- 1446,1451 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) { -! memmove((char *)&peer->refid, -! EESREFID, 4); - if (unit>0 && unit<10) - ((char *)&peer->refid)[3] = -*** /tmp/RCSA023576 Wed Jan 26 17:56:55 1994 ---- xntpd/refclock_mx4200.c Wed Jan 26 16:33:41 1994 -*************** -*** 263,268 **** - * Just zero the data arrays - */ -! bzero((char *)mx4200units, sizeof mx4200units); -! bzero((char *)unitinuse, sizeof unitinuse); - - /* ---- 263,268 ---- - * Just zero the data arrays - */ -! memset((char *)mx4200units, 0, sizeof mx4200units); -! memset((char *)unitinuse, 0, sizeof unitinuse); - - /* -*************** -*** 487,491 **** - } - -! bzero((char *)mx4200, sizeof(struct mx4200unit)); - mx4200units[unit] = mx4200; - ---- 487,491 ---- - } - -! memset((char *)mx4200, 0, sizeof(struct mx4200unit)); - mx4200units[unit] = mx4200; - -*************** -*** 513,517 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(MX4200REFID, (char *)&peer->refid, 4); - else - peer->refid = htonl(MX4200HSREFID); ---- 513,517 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, MX4200REFID, 4); - else - peer->refid = htonl(MX4200HSREFID); -*************** -*** 702,706 **** - return; - mx4200->lencode = n; -! bcopy(dpt, mx4200->lastcode, n); - - /* ---- 702,706 ---- - return; - mx4200->lencode = n; -! memmove(mx4200->lastcode, dpt, n); - - /* -*************** -*** 1052,1057 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(MX4200REFID, (char *)&peer->refid, -! 4); - else - peer->refid = htonl(MX4200HSREFID); ---- 1052,1057 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, -! MX4200REFID, 4); - else - peer->refid = htonl(MX4200HSREFID); -*************** -*** 1116,1120 **** - mx4200 = mx4200units[unit]; - -! bzero((char *)bug, sizeof(*bug)); - bug->nvalues = 10; - bug->ntimes = 2; ---- 1116,1120 ---- - mx4200 = mx4200units[unit]; - -! memset((char *)bug, 0, sizeof(*bug)); - bug->nvalues = 10; - bug->ntimes = 2; -*************** -*** 1212,1216 **** - - cp = buf; -! bzero((char *)jt, sizeof(*jt)); - - if ((cp = strchr(cp, ',')) == NULL) ---- 1212,1216 ---- - - cp = buf; -! memset((char *)jt, 0, sizeof(*jt)); - - if ((cp = strchr(cp, ',')) == NULL) -*** /tmp/RCSA023576 Wed Jan 26 17:56:55 1994 ---- xntpd/refclock_omega.c Wed Jan 26 16:33:42 1994 -*************** -*** 227,232 **** - * Just zero the data arrays - */ -! bzero((char *)omegaunits, sizeof omegaunits); -! bzero((char *)unitinuse, sizeof unitinuse); - - /* ---- 227,232 ---- - * Just zero the data arrays - */ -! memset((char *)omegaunits, 0, sizeof omegaunits); -! memset((char *)unitinuse, 0, sizeof unitinuse); - - /* -*************** -*** 417,421 **** - } - } -! bzero((char *)omega, sizeof(struct omegaunit)); - omegaunits[unit] = omega; - ---- 417,421 ---- - } - } -! memset((char *)omega, 0, sizeof(struct omegaunit)); - omegaunits[unit] = omega; - -*************** -*** 445,449 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(OMEGAREFID, (char *)&peer->refid, 4); - else - peer->refid = htonl(OMEGAHSREFID); ---- 445,449 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, OMEGAREFID, 4); - else - peer->refid = htonl(OMEGAHSREFID); -*************** -*** 928,933 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(OMEGAREFID, (char *)&peer->refid, -! 4); - else - peer->refid = htonl(OMEGAHSREFID); ---- 928,933 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, -! OMEGAREFID, 4); - else - peer->refid = htonl(OMEGAHSREFID); -*** /tmp/RCSA023576 Wed Jan 26 17:56:56 1994 ---- xntpd/refclock_parse.c Wed Jan 26 16:33:42 1994 -*************** -*** 1068,1072 **** - return; - } -! bcopy((caddr_t)&rbufp->recv_space, (caddr_t)&parsetime, sizeof(parsetime_t)); - - /* ---- 1068,1074 ---- - return; - } -! memmove((caddr_t)&parsetime, -! (caddr_t)&rbufp->recv_space, -! sizeof(parsetime_t)); - - /* -*************** -*** 2009,2013 **** - parse_init() - { -! bzero((caddr_t)parseunits, sizeof parseunits); - } - ---- 2011,2015 ---- - parse_init() - { -! memset((caddr_t)parseunits, 0, sizeof parseunits); - } - -*************** -*** 2169,2173 **** - } - -! bzero((char *)parse, sizeof(struct parseunit)); - parseunits[unit] = parse; - ---- 2171,2175 ---- - } - -! memset((char *)parse, 0, sizeof(struct parseunit)); - parseunits[unit] = parse; - -*************** -*** 2204,2208 **** - peer->stratum = STRATUM_REFCLOCK; - if (peer->stratum <= 1) -! bcopy(parse->parse_type->cl_id, (char *)&peer->refid, 4); - else - peer->refid = htonl(PARSEHSREFID); ---- 2206,2210 ---- - peer->stratum = STRATUM_REFCLOCK; - if (peer->stratum <= 1) -! memmove((char *)&peer->refid, parse->parse_type->cl_id, 4); - else - peer->refid = htonl(PARSEHSREFID); -*************** -*** 2233,2237 **** - { - #ifndef _PC_VDISABLE -! bzero((char *)tm.c_cc, sizeof(tm.c_cc)); - #else - int disablec; ---- 2235,2239 ---- - { - #ifndef _PC_VDISABLE -! memset((char *)tm.c_cc, 0, sizeof(tm.c_cc)); - #else - int disablec; -*************** -*** 2587,2591 **** - parse->peer->stratum = (u_char)(in->fudgeval1 & 0xf); - if (parse->peer->stratum <= 1) -! bcopy(parse->parse_type->cl_id, (char *)&parse->peer->refid, 4); - else - parse->peer->refid = htonl(PARSEHSREFID); ---- 2589,2595 ---- - parse->peer->stratum = (u_char)(in->fudgeval1 & 0xf); - if (parse->peer->stratum <= 1) -! memmove((char *)&parse->peer->refid, -! parse->parse_type->cl_id, -! 4); - else - parse->peer->refid = htonl(PARSEHSREFID); -*************** -*** 3280,3284 **** - { - parse->localdata = (void *)malloc(sizeof(poll_timer_t)); -! bzero((char *)parse->localdata, sizeof(poll_timer_t)); - - pt = (poll_timer_t *)parse->localdata; ---- 3284,3288 ---- - { - parse->localdata = (void *)malloc(sizeof(poll_timer_t)); -! memset((char *)parse->localdata, 0, sizeof(poll_timer_t)); - - pt = (poll_timer_t *)parse->localdata; -*** /tmp/RCSA023576 Wed Jan 26 17:56:56 1994 ---- xntpd/refclock_pst.c Wed Jan 26 16:33:42 1994 -*************** -*** 438,443 **** - * Just zero the data arrays - */ -! bzero((char *)pstunits, sizeof pstunits); -! bzero((char *)unitinuse, sizeof unitinuse); - - /* ---- 438,443 ---- - * Just zero the data arrays - */ -! memset((char *)pstunits, 0, sizeof pstunits); -! memset((char *)unitinuse, 0, sizeof unitinuse); - - /* -*************** -*** 630,634 **** - } - } -! bzero((char *)pst, sizeof(struct pstunit)); - pstunits[unit] = pst; - ---- 630,634 ---- - } - } -! memset((char *)pst, 0, sizeof(struct pstunit)); - pstunits[unit] = pst; - -*************** -*** 663,667 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(WWVREFID, (char *)&peer->refid, 4); - else - peer->refid = htonl(PSTHSREFID); ---- 663,667 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, WWVREFID, 4); - else - peer->refid = htonl(PSTHSREFID); -*************** -*** 1461,1467 **** - if (stratumtouse[pst->unit] <= 1) { - if (pst->station >= 0) -! bcopy(WWVREFID, (char *)&pst->peer->refid, 4); - else -! bcopy(WWVHREFID, (char *)&pst->peer->refid, 4); - } - ---- 1461,1467 ---- - if (stratumtouse[pst->unit] <= 1) { - if (pst->station >= 0) -! memmove((char *)&pst->peer->refid, WWVREFID, 4); - else -! memmove((char *)&pst->peer->refid, WWVHREFID, 4); - } - -*** /tmp/RCSA023576 Wed Jan 26 17:56:57 1994 ---- xntpd/refclock_tpro.c Wed Jan 26 16:33:43 1994 -*************** -*** 131,136 **** - * Just zero the data arrays - */ -! bzero((char *)tprounits, sizeof tprounits); -! bzero((char *)unitinuse, sizeof unitinuse); - - /* ---- 131,136 ---- - * Just zero the data arrays - */ -! memset((char *)tprounits, 0, sizeof tprounits); -! memset((char *)unitinuse, 0, sizeof unitinuse); - - /* -*************** -*** 201,205 **** - } - } -! bzero((char *)tpro, sizeof(struct tprounit)); - tprounits[unit] = tpro; - ---- 201,205 ---- - } - } -! memset((char *)tpro, 0, sizeof(struct tprounit)); - tprounits[unit] = tpro; - -*************** -*** 226,230 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(TPROREFID, (char *)&peer->refid, 4); - else - peer->refid = htonl(TPROHSREFID); ---- 226,230 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, TPROREFID, 4); - else - peer->refid = htonl(TPROHSREFID); -*************** -*** 416,421 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(TPROREFID, (char *)&peer->refid, -! 4); - else - peer->refid = htonl(TPROHSREFID); ---- 416,421 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, -! TPROREFID, 4); - else - peer->refid = htonl(TPROHSREFID); -*** /tmp/RCSA023576 Wed Jan 26 17:56:57 1994 ---- xntpd/refclock_wwvb.c Wed Jan 26 16:33:43 1994 -*************** -*** 220,225 **** - * Just zero the data arrays - */ -! bzero((char *)wwvbunits, sizeof wwvbunits); -! bzero((char *)unitinuse, sizeof unitinuse); - - /* ---- 220,225 ---- - * Just zero the data arrays - */ -! memset((char *)wwvbunits, 0, sizeof wwvbunits); -! memset((char *)unitinuse, 0, sizeof unitinuse); - - /* -*************** -*** 408,412 **** - } - } -! bzero((char *)wwvb, sizeof(struct wwvbunit)); - wwvbunits[unit] = wwvb; - ---- 408,412 ---- - } - } -! memset((char *)wwvb, 0, sizeof(struct wwvbunit)); - wwvbunits[unit] = wwvb; - -*************** -*** 436,440 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(WWVBREFID, (char *)&peer->refid, 4); - else - peer->refid = htonl(WWVBHSREFID); ---- 436,440 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, WWVBREFID, 4); - else - peer->refid = htonl(WWVBHSREFID); -*************** -*** 957,962 **** - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! bcopy(WWVBREFID, (char *)&peer->refid, -! 4); - else - peer->refid = htonl(WWVBHSREFID); ---- 957,962 ---- - peer->stratum = stratumtouse[unit]; - if (stratumtouse[unit] <= 1) -! memmove((char *)&peer->refid, -! WWVBREFID, 4); - else - peer->refid = htonl(WWVBHSREFID); -*** /tmp/RCSA023592 Wed Jan 26 17:56:58 1994 ---- xntpdc/ntpdc.c Wed Jan 26 16:33:43 1994 -*************** -*** 222,227 **** - int c; - int errflg = 0; -! extern int optind; -! extern char *optarg; - - delay_time.l_ui = 0; ---- 222,227 ---- - int c; - int errflg = 0; -! extern int ntp_optind; -! extern char *ntp_optarg; - - delay_time.l_ui = 0; -*************** -*** 229,236 **** - - progname = argv[0]; -! while ((c = getopt_l(argc, argv, "c:dilnps")) != EOF) - switch (c) { - case 'c': -! ADDCMD(optarg); - break; - case 'd': ---- 229,236 ---- - - progname = argv[0]; -! while ((c = ntp_getopt(argc, argv, "c:dilnps")) != EOF) - switch (c) { - case 'c': -! ADDCMD(ntp_optarg); - break; - case 'd': -*************** -*** 262,270 **** - exit(2); - } -! if (optind == argc) { - ADDHOST(DEFHOST); - } else { -! for (; optind < argc; optind++) -! ADDHOST(argv[optind]); - } - ---- 262,270 ---- - exit(2); - } -! if (ntp_optind == argc) { - ADDHOST(DEFHOST); - } else { -! for (; ntp_optind < argc; ntp_optind++) -! ADDHOST(argv[ntp_optind]); - } - -*************** -*** 440,444 **** - *rdata = datap = pktdata; - lastseq = 999; /* too big to be a sequence number */ -! bzero(haveseq, sizeof(haveseq)); - FD_ZERO(&fds); - ---- 440,444 ---- - *rdata = datap = pktdata; - lastseq = 999; /* too big to be a sequence number */ -! memset(haveseq, 0, sizeof(haveseq)); - FD_ZERO(&fds); - -*************** -*** 601,605 **** - if ((datap + datasize) > (pktdata + pktdatasize)) - growpktdata(); -! bcopy((char *)rpkt.data, datap, datasize); - datap += datasize; - if (firstpkt) { ---- 601,605 ---- - if ((datap + datasize) > (pktdata + pktdatasize)) - growpktdata(); -! memmove(datap, (char *)rpkt.data, datasize); - datap += datasize; - if (firstpkt) { -*************** -*** 635,639 **** - int datasize; - -! bzero((char *)&qpkt, sizeof qpkt); - - qpkt.rm_vn_mode = RM_VN_MODE(0, 0); ---- 635,639 ---- - int datasize; - -! memset((char *)&qpkt, 0, sizeof qpkt); - - qpkt.rm_vn_mode = RM_VN_MODE(0, 0); -*************** -*** 643,647 **** - datasize = qitems * qsize; - if (datasize != 0 && qdata != NULL) { -! bcopy(qdata, (char *)qpkt.data, datasize); - qpkt.err_nitems = ERR_NITEMS(0, qitems); - qpkt.mbz_itemsize = MBZ_ITEMSIZE(qsize); ---- 643,647 ---- - datasize = qitems * qsize; - if (datasize != 0 && qdata != NULL) { -! memmove((char *)qpkt.data, qdata, datasize); - qpkt.err_nitems = ERR_NITEMS(0, qitems); - qpkt.mbz_itemsize = MBZ_ITEMSIZE(qsize); -*************** -*** 1092,1096 **** - return 1; - } else if ((hp = gethostbyname(host)) != 0) { -! bcopy(hp->h_addr, (char *)num, sizeof(U_LONG)); - if (fullhost != 0) - (void) strcpy(fullhost, hp->h_name); ---- 1092,1096 ---- - return 1; - } else if ((hp = gethostbyname(host)) != 0) { -! memmove((char *)num, hp->h_addr, sizeof(U_LONG)); - if (fullhost != 0) - (void) strcpy(fullhost, hp->h_name); -*** /tmp/RCSA023592 Wed Jan 26 17:56:58 1994 ---- xntpdc/ntpdc_ops.c Wed Jan 26 16:33:44 1994 -*************** -*** 443,447 **** - if (pp->stratum <= 1) { - junk[4] = 0; -! bcopy((char *)&pp->refid, junk, 4); - str = junk; - } else { ---- 443,447 ---- - if (pp->stratum <= 1) { - junk[4] = 0; -! memmove(junk, (char *)&pp->refid, 4); - str = junk; - } else { -*************** -*** 789,793 **** - if (is->stratum <= 1) { - junk[4] = 0; -! bcopy((char *)&is->refid, junk, 4); - str = junk; - } else { ---- 789,793 ---- - if (is->stratum <= 1) { - junk[4] = 0; -! memmove(junk, (char *)&is->refid, 4); - str = junk; - } else { -*************** -*** 2193,2197 **** - - err = 0; -! bzero((char *)&fudgedata, sizeof fudgedata); - fudgedata.clockadr = pcmd->argval[0].netnum; - ---- 2193,2197 ---- - - err = 0; -! memset((char *)&fudgedata, 0, sizeof fudgedata); - fudgedata.clockadr = pcmd->argval[0].netnum; - -*** /tmp/RCSA023598 Wed Jan 26 17:56:59 1994 ---- xntpres/xntpres.c Wed Jan 26 16:33:44 1994 -*************** -*** 149,153 **** - char *cp; - FILE *in; -! extern int optind; - - progname = argv[0]; ---- 149,153 ---- - char *cp; - FILE *in; -! extern int ntp_optind; - - progname = argv[0]; -*************** -*** 181,185 **** - syslog(LOG_NOTICE, Version); - -! while ((c = getopt_l(argc, argv, "dr")) != EOF) - switch (c) { - case 'd': ---- 181,185 ---- - syslog(LOG_NOTICE, Version); - -! while ((c = ntp_getopt(argc, argv, "dr")) != EOF) - switch (c) { - case 'd': -*************** -*** 193,197 **** - break; - } -! if (errflg || (optind + 3) != argc) { - (void) fprintf(stderr, - "usage: %s [-d] [-r] keyid keyfile conffile\n", progname); ---- 193,197 ---- - break; - } -! if (errflg || (ntp_optind + 3) != argc) { - (void) fprintf(stderr, - "usage: %s [-d] [-r] keyid keyfile conffile\n", progname); -*************** -*** 200,210 **** - } - -! if (!atouint(argv[optind], &req_keyid)) { -! syslog(LOG_ERR, "undecodeable keyid %s", argv[optind]); - exit(1); - } - -! keyfile = argv[optind+1]; -! conffile = argv[optind+2]; - - /* ---- 200,210 ---- - } - -! if (!atouint(argv[ntp_optind], &req_keyid)) { -! syslog(LOG_ERR, "undecodeable keyid %s", argv[ntp_optind]); - exit(1); - } - -! keyfile = argv[ntp_optind+1]; -! conffile = argv[ntp_optind+2]; - - /* -*************** -*** 354,358 **** - len = strlen(name) + 1; - cp = emalloc((unsigned)len); -! bcopy(name, cp, len); - - ce = (struct conf_entry *)emalloc(sizeof(struct conf_entry)); ---- 354,358 ---- - len = strlen(name) + 1; - cp = emalloc((unsigned)len); -! memmove(cp, name, len); - - ce = (struct conf_entry *)emalloc(sizeof(struct conf_entry)); -*************** -*** 409,413 **** - return 1; - #endif -! return 0; - } - ---- 409,413 ---- - return 1; - #endif -! return (0); - } - -*************** -*** 417,423 **** - * only return one. - */ -! (void) bcopy(hp->h_addr, (char *)&(entry->ce_peeraddr), -! sizeof(struct in_addr)); -! return 1; - } - ---- 417,424 ---- - * only return one. - */ -! memmove((char *)&(entry->ce_peeraddr), -! hp->h_addr, -! sizeof(struct in_addr)); -! return (1); - } - -*************** -*** 440,444 **** - } - -! bzero((char *)&saddr, sizeof(saddr)); - saddr.sin_family = AF_INET; - saddr.sin_port = htons(NTP_PORT); /* trash */ ---- 441,445 ---- - } - -! memset((char *)&saddr, 0, sizeof(saddr)); - saddr.sin_family = AF_INET; - saddr.sin_port = htons(NTP_PORT); /* trash */ -*************** -*** 500,504 **** - * Make up a request packet with the configuration info - */ -! bzero((char *)&reqpkt, sizeof(reqpkt)); - - reqpkt.rm_vn_mode = RM_VN_MODE(0, 0); ---- 501,505 ---- - * Make up a request packet with the configuration info - */ -! memset((char *)&reqpkt, 0, sizeof(reqpkt)); - - reqpkt.rm_vn_mode = RM_VN_MODE(0, 0); -*************** -*** 508,512 **** - reqpkt.err_nitems = ERR_NITEMS(0, 1); /* one item */ - reqpkt.mbz_itemsize = MBZ_ITEMSIZE(sizeof(struct conf_peer)); -! bcopy((char *)conf, reqpkt.data, sizeof(struct conf_peer)); - reqpkt.keyid = htonl(req_keyid); - ---- 509,513 ---- - reqpkt.err_nitems = ERR_NITEMS(0, 1); /* one item */ - reqpkt.mbz_itemsize = MBZ_ITEMSIZE(sizeof(struct conf_peer)); -! memmove(reqpkt.data, (char *)conf, sizeof(struct conf_peer)); - reqpkt.keyid = htonl(req_keyid); - - diff --git a/usr.sbin/xntpd/patches/patch.40 b/usr.sbin/xntpd/patches/patch.40 deleted file mode 100644 index 7f1941d..0000000 --- a/usr.sbin/xntpd/patches/patch.40 +++ /dev/null @@ -1,92 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa23994; 13 Apr 94 15:58 EDT -Received: from adrastea.lcs.mit.edu by louie.udel.edu id aa07113; - 13 Apr 94 15:44 EDT -Received: by adrastea.lcs.mit.edu; id AA04845; Wed, 13 Apr 1994 15:44:23 -0400 -Date: Wed, 13 Apr 1994 15:44:23 -0400 -From: Garrett Wollman <wollman@adrastea.lcs.mit.edu> -Message-Id: <9404131944.AA04845@adrastea.lcs.mit.edu> -To: Mills@udel.edu -Cc: Garrett Wollman <wollman@adrastea.lcs.mit.edu>, - Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Subject: Re: You xntp modifications... -In-Reply-To: <9404122159.aa18355@huey.udel.edu> -References: <9404122159.aa18355@huey.udel.edu> - -<<On Tue, 12 Apr 94 21:59:57 EDT, Mills@udel.edu said: - -> Note that we are two versions further along, what with the average of -> a patch per day, so it would be survivable if this issue could be -> cleared up ASAP. - -This patch, applied relative to my previous patch, provides for both -behaviors. - - -*** xntpd/xntpd/ntp_control.c Wed Apr 13 12:37:51 1994 ---- ntp_control.c Wed Apr 13 12:38:42 1994 -*************** -*** 264,271 **** ---- 264,283 ---- - /* - * System and processor definitions. These will change for the gizmo board. - */ -+ #ifndef HAVE_UNAME -+ #ifndef STR_SYSTEM -+ #define STR_SYSTEM "UNIX" -+ #endif -+ #ifndef STR_PROCESSOR -+ #define STR_PROCESSOR "unknown" -+ #endif -+ -+ static char str_system[] = STR_SYSTEM; -+ static char str_processor[] = STR_PROCESSOR; -+ #else - #include <sys/utsname.h> - static struct utsname utsname; -+ #endif /* HAVE_UNAME */ - - /* - * Trap structures. We only allow a few of these, and send -*************** -*** 426,433 **** ---- 438,447 ---- - { - int i; - -+ #ifdef HAVE_UNAME - uname(&utsname); - -+ #endif /* HAVE_UNAME */ - ctl_clr_stats(); - - ctl_auth_keyid = 0; -*************** -*** 1262,1273 **** ---- 1276,1297 ---- - ctl_putuint(sys_var[CS_LEAPWARNING].text, (U_LONG)leap_warning); - break; - case CS_PROCESSOR: -+ #ifndef HAVE_UNAME -+ ctl_putstr(sys_var[CS_PROCESSOR].text, str_processor, -+ sizeof(str_processor) - 1); -+ #else - ctl_putstr(sys_var[CS_PROCESSOR].text, utsname.machine, - strlen(utsname.machine)); -+ #endif /* HAVE_UNAME */ - break; - case CS_SYSTEM: -+ #ifndef HAVE_UNAME -+ ctl_putstr(sys_var[CS_SYSTEM].text, str_system, -+ sizeof(str_system) - 1); -+ #else - ctl_putstr(sys_var[CS_SYSTEM].text, utsname.sysname, - strlen(utsname.sysname)); -+ #endif /* HAVE_UNAME */ - break; - case CS_KEYID: - ctl_putuint(sys_var[CS_KEYID].text, (U_LONG)0); - - -[no save] - diff --git a/usr.sbin/xntpd/patches/patch.41 b/usr.sbin/xntpd/patches/patch.41 deleted file mode 100644 index 5d1f91c..0000000 --- a/usr.sbin/xntpd/patches/patch.41 +++ /dev/null @@ -1,50 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa13197; 16 Apr 94 22:05 EDT -Received: from motgate.mot.com by louie.udel.edu id aa18176; 16 Apr 94 21:57 EDT -Received: from pobox.mot.com ([129.188.137.100]) by motgate.mot.com with SMTP (5.67b/IDA-1.4.4/MOT-3.1 for <mills@udel.edu>) - id AA01015; Sat, 16 Apr 1994 20:57:21 -0500 -Received: from merlin.dev.cdx.mot.com by pobox.mot.com with SMTP (5.67b/IDA-1.4.4/MOT-3.1 for <mills@udel.edu>) - id AA29067; Sat, 16 Apr 1994 20:57:19 -0500 -Received: from ronald.dev.cdx.mot.com (ronald.dev.cdx.mot.com [134.33.39.18]) by merlin.dev.cdx.mot.com (8.6.5/8.6.5) with ESMTP id VAA06544; Sat, 16 Apr 1994 21:57:12 -0400 -From: "Gregory M. Paris" <paris@merlin.dev.cdx.mot.com> -Received: from localhost (paris@localhost) by ronald.dev.cdx.mot.com (8.6.5/8.6.5) id VAA22231; Sat, 16 Apr 1994 21:57:11 -0400 -Date: Sat, 16 Apr 1994 21:57:11 -0400 -Message-Id: <199404170157.VAA22231@ronald.dev.cdx.mot.com> -To: mills@udel.edu -Subject: 3.3y patch - -Dave, - -I had the same problem compiling 3.3p as I got with 3.3y. The fix -was to move a #endif that seems to be out of place in xntpd/ntp_unixclock.c. -It now compiles fine on my HP-UX 9.03. Here's the patch. - -Greg - --- -Greg Paris <paris@merlin.dev.cdx.mot.com> -Motorola Inc, Information Systems Group, 20 Cabot Blvd, Mansfield, MA 02048-1193 -"Your Plastic Pal who's fun to be with." TM Sirius Cybernetics -These posts are self-disclamatory. - -################################################## -*** xntpd/ntp_unixclock.c.orig Mon Apr 11 22:19:21 1994 ---- xntpd/ntp_unixclock.c Sat Apr 16 21:49:15 1994 -*************** -*** 386,391 **** ---- 386,392 ---- - #undef K_TICK_NAME - #undef N_NAME - } -+ #endif /* SYS_UNIXWARE1 */ - #endif /* HAVE_READKMEM */ - - #if defined(SOLARIS)&&defined(ADJTIME_IS_ACCURATE) -*************** -*** 583,586 **** - *tick = (U_LONG)txc.tick; - } - #endif /* SYS_LINUX */ -- #endif /* SYS_UNIXWARE1 */ ---- 584,586 ---- - diff --git a/usr.sbin/xntpd/patches/patch.42 b/usr.sbin/xntpd/patches/patch.42 deleted file mode 100644 index 78c9bdf..0000000 --- a/usr.sbin/xntpd/patches/patch.42 +++ /dev/null @@ -1,38 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa00358; 19 Apr 94 17:48 EDT -Received: from swan.cl.cam.ac.uk by louie.udel.edu id aa12986; - 19 Apr 94 17:40 EDT -Received: from labes.cl.cam.ac.uk (user pb (rfc931)) by swan.cl.cam.ac.uk - with SMTP (PP-6.5) to cl; Tue, 19 Apr 1994 22:39:48 +0100 -To: Mills@udel.edu -cc: Piete Brooks <Piete.Brooks@cl.cam.ac.uk> -Subject: Re: Multicast NTP - take 1 -In-reply-to: Your message of Tue, 19 Apr 1994 12:29:25 -0400. <9404191229.aa28742@huey.udel.edu> -Date: Tue, 19 Apr 1994 22:39:44 +0100 -From: Piete Brooks <Piete.Brooks@cl.cam.ac.uk> -Message-ID: <"swan.cl.cam.:138990:940419214000"@cl.cam.ac.uk> - -Shucks ! - -I omitted the "-c" to diff ... - -*** xntpd/refclock_msfees.c.dist Thu Jan 27 14:03:59 1994 ---- xntpd/refclock_msfees.c Tue Apr 19 10:58:57 1994 -*************** -*** 139,145 **** - #define INH_DELAY_PPS BITS_TO_L_FP( 0, 9600) - - #ifndef STREAM_PP1 -! #define STREAM_PP1 "ppsclockd\0<-- patch space for module name1 -->" - #endif - #ifndef STREAM_PP2 - #define STREAM_PP2 "ppsclock\0<-- patch space for module name2 -->" ---- 139,145 ---- - #define INH_DELAY_PPS BITS_TO_L_FP( 0, 9600) - - #ifndef STREAM_PP1 -! #define STREAM_PP1 "ppsclocd\0<-- patch space for module name1 -->" - #endif - #ifndef STREAM_PP2 - #define STREAM_PP2 "ppsclock\0<-- patch space for module name2 -->" - diff --git a/usr.sbin/xntpd/patches/patch.43 b/usr.sbin/xntpd/patches/patch.43 deleted file mode 100644 index 92f9200..0000000 --- a/usr.sbin/xntpd/patches/patch.43 +++ /dev/null @@ -1,48 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa00412; 19 Apr 94 18:04 EDT -Received: from swan.cl.cam.ac.uk by louie.udel.edu id aa13181; - 19 Apr 94 17:44 EDT -Received: from labes.cl.cam.ac.uk (user pb (rfc931)) by swan.cl.cam.ac.uk - with SMTP (PP-6.5) to cl; Tue, 19 Apr 1994 22:44:05 +0100 -To: Mills@udel.edu -cc: Piete Brooks <Piete.Brooks@cl.cam.ac.uk> -Subject: Re: Cisco/Multicast/ntp3.3m -In-reply-to: Your message of Tue, 19 Apr 1994 12:24:31 -0400. <9404191224.aa28707@huey.udel.edu> -Date: Tue, 19 Apr 1994 22:43:58 +0100 -From: Piete Brooks <Piete.Brooks@cl.cam.ac.uk> -Message-ID: <"swan.cl.cam.:140740:940419214417"@cl.cam.ac.uk> - -> Yes, I think you have caught all the gotchas. - -I fear not :-(( - -> I take it you have the latest kernel mods. - -Look for a call sign I assume .... -Do I take it that they are **REQUIRED** ? :-((( - - -Other problems ..... - -It appears that you have your own in.h in include/ntp_in.h - -I suspect that that is why things are failing ... -Why not use the syatem's own in.h ?? - -To make it compile I added: - -*** include/ntp_in.h.dist Thu Apr 14 16:20:29 1994 ---- include/ntp_in.h Tue Apr 19 21:40:12 1994 -*************** -*** 19,24 **** ---- 19,27 ---- - - #ifndef _netinet_in_h - #define _netinet_in_h -+ #define _NETINET_IN_H_ -+ #define _SYS_IN_INCLUDED -+ #define __IN_HEADER - - /* - * Protocols - diff --git a/usr.sbin/xntpd/patches/patch.5 b/usr.sbin/xntpd/patches/patch.5 deleted file mode 100644 index 2225804..0000000 --- a/usr.sbin/xntpd/patches/patch.5 +++ /dev/null @@ -1,49 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa14816; 27 Jan 94 5:15 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa11733; - 27 Jan 94 5:09 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA25056 (5.65c-6/7.3v-FAU); Thu, 27 Jan 1994 11:09:06 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA09091 (5.65c-6/7.3m-FAU); Thu, 27 Jan 1994 11:09:03 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199401271009.AA09091@faui43.informatik.uni-erlangen.de> -Subject: Re: Solaribum -To: Mills@udel.edu -Date: Thu, 27 Jan 94 11:08:55 MET -Cc: Frank.Kardel@informatik.uni-erlangen.de, Piete.Brooks@cl.cam.ac.uk, - Paul_Vixie@corpmis.sjc.hw.sony.com -In-Reply-To: <9401261207.aa10860@huey.udel.edu>; from "Mills@udel.edu" at Jan 26, 94 12:07 pm -X-Mailer: ELM [version 2.3 PL11] - - -And another corer generator to be removed: - -=================================================================== -RCS file: /src/NTP/REPOSITORY/v3/xntpd/ntp_control.c,v -retrieving revision 3.22 -diff -c -r3.22 xntpd/ntp_control.c -*** xntpd/ntp_control.c:3.22 1994/01/26 21:56:23 ---- xntpd/ntp_control.c 1994/01/27 10:03:01 -*************** -*** 2132,2138 **** - for (i = 1; i <= CC_MAXCODE; i++) - if (wants[i]) - ctl_putclock(i, &clock, 1); -! for (i = 0; !(clock.kv_list[i].flags & EOV); i++) - if (wants[i+CC_MAXCODE+1]) - ctl_putdata(clock.kv_list[i].text, - strlen(clock.kv_list[i].text), 0); ---- 2132,2138 ---- - for (i = 1; i <= CC_MAXCODE; i++) - if (wants[i]) - ctl_putclock(i, &clock, 1); -! for (i = 0; clock.kv_list && !(clock.kv_list[i].flags & EOV); i++) - if (wants[i+CC_MAXCODE+1]) - ctl_putdata(clock.kv_list[i].text, - strlen(clock.kv_list[i].text), 0); --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.6 b/usr.sbin/xntpd/patches/patch.6 deleted file mode 100644 index 220acad..0000000 --- a/usr.sbin/xntpd/patches/patch.6 +++ /dev/null @@ -1,550 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa17107; 27 Jan 94 14:37 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa16998; - 27 Jan 94 14:34 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA29914 (5.65c-6/7.3v-FAU); Thu, 27 Jan 1994 20:34:08 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA23509 (5.65c-6/7.3m-FAU); Thu, 27 Jan 1994 20:34:05 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199401271934.AA23509@faui43.informatik.uni-erlangen.de> -Subject: Re: Solaribum -To: Mills@udel.edu -Date: Thu, 27 Jan 94 20:33:59 MET -Cc: Frank.Kardel@informatik.uni-erlangen.de, Piete.Brooks@cl.cam.ac.uk, - Paul_Vixie@corpmis.sjc.hw.sony.com -In-Reply-To: <9401271111.aa16183@huey.udel.edu>; from "Mills@udel.edu" at Jan 27, 94 11:11 am -X-Mailer: ELM [version 2.3 PL11] - - -> Guys, - -> Two masive patches collided in midair here, leaving broken parts scattered -> over three counties. The National Time Safety Board has investigated, -> but been unable, ... - -Additional efforts of the european branch of the NTPSB have uncovered -that the collision was due to low visibility across the atlantic. - -And I wanted to go on: - All measures have been taken to limit the effects of the crash to a - minimum and to resume normal aircraft operation as soon as possible. - - All crew members and passengers are required to apply following patch - to xntp3.3y.tar.Z for increased comfort and safety. This patch should - enable us to resume normal operation again. - - After applying the patches you may remove following debris: - - include/ntp_machine.h.rej - xntpd/ntp_config.c.rej - xntpd/ntp_control.c.rej - -Unfortunately I did a test compile and the results of that will -extend the ground stay of the 3.3y aircraft considerably. -(You may start thinking about bringing up 3.3xx - see below) - -SunOS 4.x.x does NOT have the new highly portable "memmove()" -routine. The lack of this will mean that we will have to -#define memmove(a, b, c) memcpy(a, b, c) -or find something else. I'd like to leave this to Paul. -Also on Sunos 4.x there are implicit declarations of bzero due -the the FDSET macro from the system header files. So I am not -so sure whether strictly using mem* is the best or whether we should -add b* prototypes to l_stdlib.h. I think Paul has now something -to work on. Anyhow, the patches below will rectify some problems -but the resulting code still needs much polishing (providing memmove -where it is missing e.g. SunOS4.x). - -In order to get a flying version fast (3.3xx) Dave could apply my -patch he is holding to 3.3x - that should then make a workable -version. 3.3y can then be cleaned up slowly (starting with the -patches below and then port it again to the rest of the systems). - -Sorry about the bad news. - -> I have one more patch from Frank which I will hold on to until the aircraft -> is recertified. - -That one is still to be applied because without it, it is possible -to shoot down any plane around the NTP universe that is bearing -the 3.3x banner (but can be applied to 3.3x). - - -For the 3.3y construction crew: - -diff -c -r ../yy/include/ntp_machine.h ./include/ntp_machine.h -*** ../yy/include/ntp_machine.h Thu Jan 27 15:03:23 1994 ---- ./include/ntp_machine.h Thu Jan 27 19:13:35 1994 -*************** -*** 121,139 **** - to the correct broadcast address - are these - implementations broken or did the spec change ? - -- HAVE_UNISTD_H - Maybe should be part of NTP_POSIX_SOURCE ? -- - DEFINITIONS FOR SYSTEM && PROCESSOR - STR_SYSTEM - value of system variable - STR_PROCESSOR - value of processor variable - - You could just put the defines on the DEFS line in machines/<os> file. -! I don't since there are lost of different types compiler that a systemm might -! have, some that can do proto typing and others that cannot on the saem system. -! I get a chanse to twiddle some of the configuration paramasters at compile -! time based on compler/machine combinatsions by using this include file. -! See convex, aix and sun configurations see how complex it gets. -! - */ - - ---- 121,141 ---- - to the correct broadcast address - are these - implementations broken or did the spec change ? - - DEFINITIONS FOR SYSTEM && PROCESSOR - STR_SYSTEM - value of system variable - STR_PROCESSOR - value of processor variable - - You could just put the defines on the DEFS line in machines/<os> file. -! I don't since there are lots of different types of compilers that a system might -! have, some that can do proto typing and others that cannot on the same system. -! I get a chance to twiddle some of the configuration parameters at compile -! time based on compiler/machine combinations by using this include file. -! See convex, aix and sun configurations see how complex it get. -! -! Note that it _is_ considered reasonable to add some system-specific defines -! to the machine/<os> file if it would be too inconvenient to puzzle them out -! in this file. -! - */ - - -diff -c -r ../yy/parse/parse.c ./parse/parse.c -*** ../yy/parse/parse.c Thu Jan 27 00:25:18 1994 ---- ./parse/parse.c Thu Jan 27 20:18:58 1994 -*************** -*** 29,40 **** - #include "sys/time.h" - #include "sys/errno.h" - -- #include "ntp_fp.h" -- #include "ntp_unixtime.h" -- #include "ntp_calendar.h" -- -- #include "parse.h" -- - #if defined(PARSESTREAM) && (defined(SYS_SUNOS4) || defined(SYS_SOLARIS)) && defined(STREAM) - /* - * Sorry, but in SunOS 4.x kernels there are no ---- 29,34 ---- -*************** -*** 44,51 **** ---- 38,54 ---- - #define _ntp_string_h - extern void bcopy(); - extern void bzero(); -+ #else -+ #define bzero(_X_, _Y_) memset(_X_, 0, _Y_) -+ #define bcopy(_X_, _Y_, _Z_) memmove(_Y_, _X_, _Z_) - #endif - -+ #include "ntp_fp.h" -+ #include "ntp_unixtime.h" -+ #include "ntp_calendar.h" -+ -+ #include "parse.h" -+ - #include "ntp_stdlib.h" - - #ifdef PARSESTREAM -diff -c -r ../yy/xntpd/ntp_config.c ./xntpd/ntp_config.c -*** ../yy/xntpd/ntp_config.c Thu Jan 27 15:03:47 1994 ---- ./xntpd/ntp_config.c Thu Jan 27 19:18:40 1994 -*************** -*** 1,4 **** -! /* ntp_config.c,v 3.1 1993/07/06 01:11:12 jbj Exp - * ntp_config.c - read and apply configuration information - */ - #define RESOLVE_INTERNAL /* gdt */ ---- 1,4 ---- -! /* - * ntp_config.c - read and apply configuration information - */ - #define RESOLVE_INTERNAL /* gdt */ -*************** -*** 375,388 **** - break; - } - -! if (errflg || optind != argc) { - (void) fprintf(stderr, "usage: %s [ -abd ] [ -c config_file ] [ -e encryption delay ]\n", progname); - (void) fprintf(stderr, "\t\t[ -f frequency file ] [ -k key file ] [ -l log file ]\n"); - (void) fprintf(stderr, "\t\t[ -p pid file ] [ -r broadcast delay ] [ -s status directory ]\n"); - (void) fprintf(stderr, "\t\t[ -t trusted key ] [ -v sys variable ] [ -V default sys variable ]\n"); - exit(2); - } -! optind = 0; /* reset optind to restart getopt_l */ - - if (debug) { - #ifdef NTP_POSIX_SOURCE ---- 375,388 ---- - break; - } - -! if (errflg || ntp_optind != argc) { - (void) fprintf(stderr, "usage: %s [ -abd ] [ -c config_file ] [ -e encryption delay ]\n", progname); - (void) fprintf(stderr, "\t\t[ -f frequency file ] [ -k key file ] [ -l log file ]\n"); - (void) fprintf(stderr, "\t\t[ -p pid file ] [ -r broadcast delay ] [ -s status directory ]\n"); - (void) fprintf(stderr, "\t\t[ -t trusted key ] [ -v sys variable ] [ -V default sys variable ]\n"); - exit(2); - } -! ntp_optind = 0; /* reset ntp_optind to restart ntp_getopt */ - - if (debug) { - #ifdef NTP_POSIX_SOURCE -*************** -*** 430,437 **** - char resolver_name[MAXFILENAME]; - int have_keyfile; - char keyfile[MAXFILENAME]; -! extern int optind; -! extern char *optarg; - extern char *Version; - extern U_LONG info_auth_keyid; - FILEGEN *filegen; ---- 430,437 ---- - char resolver_name[MAXFILENAME]; - int have_keyfile; - char keyfile[MAXFILENAME]; -! extern int ntp_optind; -! extern char *ntp_optarg; - extern char *Version; - extern U_LONG info_auth_keyid; - FILEGEN *filegen; -*************** -*** 461,467 **** - /* - * Decode argument list - */ -! while ((c = getopt_l(argc, argv, xntp_options)) != EOF) { - switch (c) { - case 'a': - proto_config(PROTO_AUTHENTICATE, (LONG)1); ---- 461,467 ---- - /* - * Decode argument list - */ -! while ((c = ntp_getopt(argc, argv, xntp_options)) != EOF) { - switch (c) { - case 'a': - proto_config(PROTO_AUTHENTICATE, (LONG)1); -*************** -*** 470,476 **** - proto_config(PROTO_BROADCLIENT, (LONG)1); - break; - case 'c': -! config_file = optarg; - break; - case 'd': - #ifdef DEBUG ---- 470,476 ---- - proto_config(PROTO_BROADCLIENT, (LONG)1); - break; - case 'c': -! config_file = ntp_optarg; - break; - case 'd': - #ifdef DEBUG -*************** -*** 484,498 **** - do { - l_fp tmp; - -! if (!atolfp(optarg, &tmp)) { - syslog(LOG_ERR, - "command line encryption delay value %s undecodable", -! optarg); - errflg++; - } else if (tmp.l_ui != 0) { - syslog(LOG_ERR, - "command line encryption delay value %s is unlikely", -! optarg); - errflg++; - } else { - proto_config(PROTO_AUTHDELAY, tmp.l_f); ---- 484,498 ---- - do { - l_fp tmp; - -! if (!atolfp(ntp_optarg, &tmp)) { - syslog(LOG_ERR, - "command line encryption delay value %s undecodable", -! ntp_optarg); - errflg++; - } else if (tmp.l_ui != 0) { - syslog(LOG_ERR, - "command line encryption delay value %s is unlikely", -! ntp_optarg); - errflg++; - } else { - proto_config(PROTO_AUTHDELAY, tmp.l_f); -*************** -*** 501,537 **** - break; - - case 'f': -! stats_config(STATS_FREQ_FILE, optarg); - break; - - case 'k': -! getauthkeys(optarg); -! if ((int)strlen(optarg) >= MAXFILENAME) { - syslog(LOG_ERR, - "key file name too LONG (>%d, sigh), no name resolution possible", - MAXFILENAME); - } else { - have_keyfile = 1; -! (void)strcpy(keyfile, optarg); - } - break; - - case 'p': -! stats_config(STATS_PID_FILE, optarg); - break; - - case 'r': - do { - l_fp tmp; - -! if (!atolfp(optarg, &tmp)) { - syslog(LOG_ERR, - "command line broadcast delay value %s undecodable", -! optarg); - } else if (tmp.l_ui != 0) { - syslog(LOG_ERR, - "command line broadcast delay value %s is unlikely", -! optarg); - } else { - proto_config(PROTO_BROADDELAY, tmp.l_f); - } ---- 501,537 ---- - break; - - case 'f': -! stats_config(STATS_FREQ_FILE, ntp_optarg); - break; - - case 'k': -! getauthkeys(ntp_optarg); -! if ((int)strlen(ntp_optarg) >= MAXFILENAME) { - syslog(LOG_ERR, - "key file name too LONG (>%d, sigh), no name resolution possible", - MAXFILENAME); - } else { - have_keyfile = 1; -! (void)strcpy(keyfile, ntp_optarg); - } - break; - - case 'p': -! stats_config(STATS_PID_FILE, ntp_optarg); - break; - - case 'r': - do { - l_fp tmp; - -! if (!atolfp(ntp_optarg, &tmp)) { - syslog(LOG_ERR, - "command line broadcast delay value %s undecodable", -! ntp_optarg); - } else if (tmp.l_ui != 0) { - syslog(LOG_ERR, - "command line broadcast delay value %s is unlikely", -! ntp_optarg); - } else { - proto_config(PROTO_BROADDELAY, tmp.l_f); - } -*************** -*** 539,556 **** - break; - - case 's': -! stats_config(STATS_STATSDIR, optarg); - break; - - case 't': - do { - int tkey; - -! tkey = atoi(optarg); - if (tkey <= 0 || tkey > NTP_MAXKEY) { - syslog(LOG_ERR, - "command line trusted key %s is unlikely", -! optarg); - } else { - authtrust(tkey, (LONG)1); - } ---- 539,556 ---- - break; - - case 's': -! stats_config(STATS_STATSDIR, ntp_optarg); - break; - - case 't': - do { - int tkey; - -! tkey = atoi(ntp_optarg); - if (tkey <= 0 || tkey > NTP_MAXKEY) { - syslog(LOG_ERR, - "command line trusted key %s is unlikely", -! ntp_optarg); - } else { - authtrust(tkey, (LONG)1); - } -*************** -*** 559,565 **** - - case 'v': - case 'V': -! set_sys_var(optarg, strlen(optarg)+1, RW | ((c == 'V') ? DEF : 0)); - break; - - default: ---- 559,565 ---- - - case 'v': - case 'V': -! set_sys_var(ntp_optarg, strlen(ntp_optarg)+1, RW | ((c == 'V') ? DEF : 0)); - break; - - default: -diff -c -r ../yy/xntpd/ntp_control.c ./xntpd/ntp_control.c -*** ../yy/xntpd/ntp_control.c Thu Jan 27 15:03:48 1994 ---- ./xntpd/ntp_control.c Thu Jan 27 19:29:06 1994 -*************** -*** 1848,1854 **** - ctl_sys_num_events = 0; - gotvar += count_var(ext_sys_var); - wants = (u_char *)emalloc(gotvar); -! bzero((char *)wants, gotvar); - gotvar = 0; - while ((v = ctl_getitem(sys_var, &valuep)) != 0) { - if (v->flags & EOV) { ---- 1848,1854 ---- - ctl_sys_num_events = 0; - gotvar += count_var(ext_sys_var); - wants = (u_char *)emalloc(gotvar); -! memset((char *)wants, 0, gotvar); - gotvar = 0; - while ((v = ctl_getitem(sys_var, &valuep)) != 0) { - if (v->flags & EOV) { -*************** -*** 1904,1910 **** - if (res_authokay) - peer->num_events = 0; - wants = (u_char *)emalloc(gotvar); -! bzero((char*)wants, gotvar); - gotvar = 0; - while ((v = ctl_getitem(peer_var, &valuep)) != 0) { - if (v->flags & EOV) { ---- 1904,1910 ---- - if (res_authokay) - peer->num_events = 0; - wants = (u_char *)emalloc(gotvar); -! memset((char*)wants, 0, gotvar); - gotvar = 0; - while ((v = ctl_getitem(peer_var, &valuep)) != 0) { - if (v->flags & EOV) { -*************** -*** 2106,2112 **** - rpkt.status = htons(ctlclkstatus(&clock)); - gotvar = CC_MAXCODE+1+count_var(clock.kv_list); - wants = (u_char *)emalloc(gotvar); -! bzero((char*)wants, gotvar); - gotvar = 0; - while ((v = ctl_getitem(clock_var, &valuep)) != 0) { - if (v->flags & EOV) { ---- 2106,2112 ---- - rpkt.status = htons(ctlclkstatus(&clock)); - gotvar = CC_MAXCODE+1+count_var(clock.kv_list); - wants = (u_char *)emalloc(gotvar); -! memset((char*)wants, 0, gotvar); - gotvar = 0; - while ((v = ctl_getitem(clock_var, &valuep)) != 0) { - if (v->flags & EOV) { -*************** -*** 2578,2584 **** - *kv = (struct ctl_var *)emalloc((c+2)*sizeof(struct ctl_var)); - if (k) - { -! bcopy((char *)k, (char *)*kv, sizeof(struct ctl_var)*c); - free((char *)k); - } - ---- 2578,2584 ---- - *kv = (struct ctl_var *)emalloc((c+2)*sizeof(struct ctl_var)); - if (k) - { -! memmove((char *)*kv, (char *)k, sizeof(struct ctl_var)*c); - free((char *)k); - } - -*************** -*** 2621,2627 **** - { - free(k->text); - k->text = (char *)emalloc(size); -! bcopy(data, k->text, size); - k->flags = def; - return; - } ---- 2621,2627 ---- - { - free(k->text); - k->text = (char *)emalloc(size); -! memmove(k->text, data, size); - k->flags = def; - return; - } -*************** -*** 2629,2635 **** - else - { - k->text = (char *)emalloc(size); -! bcopy(data, k->text, size); - k->flags = def; - return; - } ---- 2629,2635 ---- - else - { - k->text = (char *)emalloc(size); -! memmove(k->text, data, size); - k->flags = def; - return; - } -*************** -*** 2637,2643 **** - } - } - t = add_var(kv, size, def); -! bcopy(data, t, size); - } - - void ---- 2637,2643 ---- - } - } - t = add_var(kv, size, def); -! memmove(t, data, size); - } - - void --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.7 b/usr.sbin/xntpd/patches/patch.7 deleted file mode 100644 index 682065f..0000000 --- a/usr.sbin/xntpd/patches/patch.7 +++ /dev/null @@ -1,274 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa21105; 28 Jan 94 9:25 EST -Received: from faui45.informatik.uni-erlangen.de by louie.udel.edu id aa08838; - 28 Jan 94 9:20 EST -Received: from faui43.informatik.uni-erlangen.de by uni-erlangen.de with SMTP; - id AA29169 (5.65c-6/7.3v-FAU); Fri, 28 Jan 1994 15:19:56 +0100 -Received: from faui45x.informatik.uni-erlangen.de by immd4.informatik.uni-erlangen.de with SMTP; - id AA11999 (5.65c-6/7.3m-FAU); Fri, 28 Jan 1994 15:19:51 +0100 -From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de> -Message-Id: <199401281419.AA11999@faui43.informatik.uni-erlangen.de> -Subject: Re: Solaribum -To: Paul A Vixie <Paul_Vixie@corpmis.sjc.hw.sony.com> -Date: Fri, 28 Jan 94 14:02:02 MET -Cc: Mills@udel.edu, Frank.Kardel@informatik.uni-erlangen.de, - Piete.Brooks@cl.cam.ac.uk, Paul_Vixie@corpmis.sjc.hw.sony.com -In-Reply-To: <9401272236.AA27835@morality.sjc.hw.sony.com>; from "Paul A Vixie" at Jan 27, 94 2:36 pm -X-Mailer: ELM [version 2.3 PL11] - - -> >memmove() and crumps in loading with an unknown external. If the missing -> >routine is not there in SunOS 4, why not conditionally compile one -> >and be done with it? - -> as i said in earlier mail, there is already a macro for memmove, to define -> it in terms of bcopy, but it is only enabled on systems that don't have a -> native memmove. include/*.h tells the story. - -Ok, in order to cope with the problems (non existent memmove() and -sys header files that use bops) I fixed SUNOS4 and ULTRIX to use the -b-ops (via the NTP_NEED_BOPS define). All other should to my knowledge -use the mem* stuff (I'd rather use either mem* or b* instead of mixtures -of both). - -Now, the following patch should get 3.3y (and 3.3yy) to fly -(=compile) on suns. Functional test have not been done. ULTRIX -has not been tested. - -> there are too many x's and y's now. i'm confused. i promise not to send -> any more patches until the dust clears.. - -With this patch we should get to 3.3yyy which should be the -base for all next efforts (-> and 3.3{x,xx,y,yy} can be deleted). - -May the source be with us: - -diff -c -r ../yy/include/l_stdlib.h ./include/l_stdlib.h -*** ../yy/include/l_stdlib.h Thu Jan 27 15:03:21 1994 ---- ./include/l_stdlib.h Fri Jan 28 12:46:31 1994 -*************** -*** 47,54 **** ---- 47,60 ---- - extern int rand P((void)); - extern int setpgrp P((int, int)); - extern void srand P((unsigned int)); -+ extern void bcopy P((char *, char *, int)); - #endif - -+ #ifndef bzero /* XXX macro prototyping clash */ -+ extern void bzero P((char *, int)); -+ extern int bcmp P((char *, char *, int)); -+ extern void bcopy P((char *, char *, int)); -+ #endif - extern char *mktemp P((char *)); - - extern int tolower P((int)); -*************** -*** 92,102 **** ---- 98,110 ---- - - #ifdef _ntp_string_h - #ifdef NTP_POSIX_SOURCE /* these are builtins */ -+ #ifndef NTP_NEED_BOPS /* but may be emulated by bops */ - extern char *memcpy(); - extern char *memset(); - extern int memcmp(); - #endif - #endif -+ #endif - - #ifdef _sys_socket_h - extern int bind P((int, struct sockaddr *, int)); -*************** -*** 187,192 **** ---- 195,203 ---- - - #ifndef NTP_POSIX_SOURCE - extern int atoi P((char *)); -+ extern void bzero P((char *, int)); -+ extern int bcmp P((char *, char *, int)); -+ extern void bcopy P((char *, char *, int)); - extern int execve P((char *, char **,char **)); - extern int fork P((void)); - extern int getdtablesize P((void)); -diff -c -r ../yy/include/ntp_machine.h ./include/ntp_machine.h -*** ../yy/include/ntp_machine.h Fri Jan 28 13:32:33 1994 ---- ./include/ntp_machine.h Fri Jan 28 12:25:29 1994 -*************** -*** 168,173 **** ---- 168,174 ---- - * Note: posix version has NTP_POSIX_SOURCE and HAVE_SIGNALED_IO - */ - #if defined(SYS_SUNOS4) -+ #define NTP_NEED_BOPS - #define NO_SIGNED_CHAR_DECL - #define HAVE_LIBKVM - #define HAVE_MALLOC_H -*************** -*** 266,271 **** ---- 267,273 ---- - * Note: posix version has NTP_POSIX_SOURCE and HAVE_SIGNALED_IO - */ - #if defined(SYS_ULTRIX) -+ #define NTP_NEED_BOPS - #define S_CHAR_DEFINED - #define HAVE_READKMEM - #define HAVE_BSD_NICE -diff -c -r ../yy/include/ntp_string.h ./include/ntp_string.h -*** ../yy/include/ntp_string.h Thu Jan 27 15:03:24 1994 ---- ./include/ntp_string.h Fri Jan 28 12:36:44 1994 -*************** -*** 5,11 **** - #ifndef _ntp_string_h - #define _ntp_string_h - -! #ifdef NTP_POSIX_SOURCE - - # if defined(HAVE_MEMORY_H) - # include <memory.h> ---- 5,11 ---- - #ifndef _ntp_string_h - #define _ntp_string_h - -! #if defined(NTP_POSIX_SOURCE) - - # if defined(HAVE_MEMORY_H) - # include <memory.h> -*************** -*** 13,29 **** - - # include <string.h> - -! #else /* NTP_POSIX_SOURCE */ - - # include <strings.h> -- - # define strchr(s,c) index(s,c) - # define strrchr(s,c) rindex(s,c) - # define memcmp(a,b,c) bcmp(a,b,c) - # define memmove(t,f,c) bcopy(f,t,c) -! # define memset(a,x,c) if (x == 0x00) bzero(a,c) else ntp_memset((char*)a,x,c) - void ntp_memset P((char *, int, int)); - -! #endif /* NTP_POSIX_SOURCE */ - - #endif /* _ntp_string_h */ ---- 13,35 ---- - - # include <string.h> - -! #else - - # include <strings.h> - # define strchr(s,c) index(s,c) - # define strrchr(s,c) rindex(s,c) -+ # ifndef NTP_NEED_BOPS -+ # define NTP_NEED_BOPS -+ # endif -+ #endif /* NTP_POSIX_SOURCE */ -+ -+ #ifdef NTP_NEED_BOPS -+ - # define memcmp(a,b,c) bcmp(a,b,c) - # define memmove(t,f,c) bcopy(f,t,c) -! # define memset(a,x,c) if (x == 0x00) bzero(a,c); else ntp_memset((char*)a,x,c) - void ntp_memset P((char *, int, int)); - -! #endif /* NTP_NEED_BOPS */ - - #endif /* _ntp_string_h */ -diff -c -r ../yy/lib/machines.c ./lib/machines.c -*** ../yy/lib/machines.c Thu Jan 27 15:03:35 1994 ---- ./lib/machines.c Fri Jan 28 13:55:26 1994 -*************** -*** 31,37 **** - } - #endif - -! #if !defined(NTP_POSIX_SOURCE) - void - ntp_memset(a, x, c) - char *a; ---- 31,37 ---- - } - #endif - -! #if !defined(NTP_POSIX_SOURCE) || defined(NTP_NEED_BOPS) - void - ntp_memset(a, x, c) - char *a; -diff -c -r ../yy/parse/Makefile.tmpl ./parse/Makefile.tmpl -*** ../yy/parse/Makefile.tmpl Fri Nov 26 05:28:30 1993 ---- ./parse/Makefile.tmpl Fri Jan 28 13:47:30 1994 -*************** -*** 92,98 **** - - clean: - -@rm -f $(LIBNAME).a $(KLIBNAME).a *.o *.out *.ln make.log Makefile.bak \ -! lintlib.errs lint.errs genassym assym.s parsestreams parse - -@cd util && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl clean - - distclean: clean ---- 92,98 ---- - - clean: - -@rm -f $(LIBNAME).a $(KLIBNAME).a *.o *.out *.ln make.log Makefile.bak \ -! lintlib.errs lint.errs genassym assym.s parsestreams parse parsestreams.o.* - -@cd util && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl clean - - distclean: clean -diff -c -r ../yy/parse/parse.c ./parse/parse.c -*** ../yy/parse/parse.c Fri Jan 28 13:32:34 1994 ---- ./parse/parse.c Fri Jan 28 13:08:01 1994 -*************** -*** 29,47 **** - #include "sys/time.h" - #include "sys/errno.h" - - #if defined(PARSESTREAM) && (defined(SYS_SUNOS4) || defined(SYS_SOLARIS)) && defined(STREAM) - /* -! * Sorry, but in SunOS 4.x kernels there are no - * mem* operations. I don't want them - bcopy, bzero - * are fine in the kernel - */ -! #define _ntp_string_h -! extern void bcopy(); -! extern void bzero(); - #else - #define bzero(_X_, _Y_) memset(_X_, 0, _Y_) - #define bcopy(_X_, _Y_, _Z_) memmove(_Y_, _X_, _Z_) - #endif - - #include "ntp_fp.h" - #include "ntp_unixtime.h" ---- 29,53 ---- - #include "sys/time.h" - #include "sys/errno.h" - -+ #include "ntp_machine.h" -+ - #if defined(PARSESTREAM) && (defined(SYS_SUNOS4) || defined(SYS_SOLARIS)) && defined(STREAM) - /* -! * Sorry, but in SunOS 4.x AND Solaris 2.x kernels there are no - * mem* operations. I don't want them - bcopy, bzero - * are fine in the kernel - */ -! #ifndef NTP_NEED_BOPS -! #define NTP_NEED_BOPS -! #endif - #else -+ #ifndef NTP_NEED_BOPS -+ #ifndef bzero - #define bzero(_X_, _Y_) memset(_X_, 0, _Y_) - #define bcopy(_X_, _Y_, _Z_) memmove(_Y_, _X_, _Z_) - #endif -+ #endif -+ #endif - - #include "ntp_fp.h" - #include "ntp_unixtime.h" --- - Frank Kardel (kardel@informatik.uni-erlangen.de) - All SCSI disks will from now on be required to send an email - notice 24 hours prior to complete hardware failure! - diff --git a/usr.sbin/xntpd/patches/patch.8 b/usr.sbin/xntpd/patches/patch.8 deleted file mode 100644 index 52e928c..0000000 --- a/usr.sbin/xntpd/patches/patch.8 +++ /dev/null @@ -1,44 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa21136; 28 Jan 94 9:30 EST -Received: from relay1.uu.net by louie.udel.edu id aa09355; 28 Jan 94 9:29 EST -Received: from outpost.wg.waii.com by relay1.UU.NET with SMTP - (5.61/UUNET-internet-primary) id AAwaur00219; Fri, 28 Jan 94 09:29:28 -0500 -Received: from airgun.wg.waii.com by outpost.wg.waii.com with SMTP id AA18918 - (5.65c/IDA-1.4.4 for <mills@udel.edu>); Fri, 28 Jan 1994 08:29:23 -0600 -Received: from merlin.london.waii.com by airgun.wg.waii.com with SMTP id AA18376 - (5.65c/IDA-1.4.4 for <mills@udel.edu>); Fri, 28 Jan 1994 08:29:16 -0600 -Received: from phoenix.london.waii.com by merlin.london.waii.com with SMTP id AA21698 - (5.65c/IDA-1.4.4 for <mills@udel.edu>); Fri, 28 Jan 1994 14:24:29 GMT -Received: by phoenix.london.waii.com (4.1/SMI-4.1) - id AA21825; Fri, 28 Jan 94 14:29:12 GMT -Date: Fri, 28 Jan 94 14:29:12 GMT -From: Marc Brett <ltso@london.waii.com> -Message-Id: <9401281429.AA21825@phoenix.london.waii.com> -To: mills@udel.edu -Subject: Bug in export version of xntp.3.3c - -Dave, - -The crippled DES routine fails to compile on my machine (SunOS 1.4.3, cc). -It complains about U_LONG being unrecognized. Luckily, the fix is a -one-liner. - -*** authdes.c.export Tue Aug 24 22:26:45 1993 ---- authdes.c Fri Jan 28 12:18:40 1994 -*************** -*** 15,20 **** ---- 15,21 ---- - * to its exportable state, copy this file to authdes.c . - */ - #include <sys/types.h> -+ #include "ntp_stdlib.h" - - /* - * This routine is normally called to compute the key schedule. - - -Regards, - -Marc Brett marc.brett@london.waii.com -Western Geophysical Tel: +44 81 560 3160 - diff --git a/usr.sbin/xntpd/patches/patch.9 b/usr.sbin/xntpd/patches/patch.9 deleted file mode 100644 index 76b3309..0000000 --- a/usr.sbin/xntpd/patches/patch.9 +++ /dev/null @@ -1,83 +0,0 @@ - -Received: from louie.udel.edu by huey.udel.edu id aa04410; 31 Jan 94 4:58 EST -Received: from gw.home.vix.com by louie.udel.edu id aa00370; 31 Jan 94 4:52 EST -Received: by gw.home.vix.com id AA12643; Mon, 31 Jan 94 01:52:12 -0800 -Message-Id: <9401310952.AA12643@gw.home.vix.com> -X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us -To: Mills@udel.edu -Cc: Frank.Kardel@informatik.uni-erlangen.de, Piete.Brooks@cl.cam.ac.uk -Subject: diffs to yyy to make ultrix/GOES happy -Date: Mon, 31 Jan 94 01:52:11 PST -From: Paul A Vixie <vixie@vix.com> - -diff -r -c2 yyy.ref/adjtime/adjtimed.c xntp3.3yyy/adjtime/adjtimed.c -*** yyy.ref/adjtime/adjtimed.c Thu Jan 27 06:03:11 1994 ---- xntp3.3yyy/adjtime/adjtimed.c Mon Jan 31 01:24:49 1994 -*************** -*** 82,86 **** ---- 82,90 ---- - progname = argv[0]; - -+ #ifdef LOG_LOCAL6 - openlog("adjtimed", LOG_PID, LOG_LOCAL6); -+ #else -+ openlog("adjtimed", LOG_PID); -+ #endif - - while ((ch = ntp_getopt(argc, argv, "hkrvdfp:")) != EOF) { -diff -r -c2 yyy.ref/include/ntp_machine.h xntp3.3yyy/include/ntp_machine.h -*** yyy.ref/include/ntp_machine.h Fri Jan 28 07:26:11 1994 ---- xntp3.3yyy/include/ntp_machine.h Mon Jan 31 01:01:11 1994 -*************** -*** 42,47 **** - - -! WHICH TERMINAL MODEL TO USE - I would assume HAVE_POSIX_TTYS if -! NTP_POSIX_SOURCE was set but cann't. The - posix tty driver is too restrictive on most systems. - It defined if you define STREAMS. ---- 42,47 ---- - - -! WHICH TERMINAL MODEL TO USE - I would assume HAVE_TERMIOS if -! NTP_POSIX_SOURCE was set but can't. The - posix tty driver is too restrictive on most systems. - It defined if you define STREAMS. -*************** -*** 50,54 **** - HAVE_BSD_TTYS - Use BSD stty.h - HAVE_TERMIOS - Use POSIX termios.h -- HAVE_POSIX_TTYS - "struct termios" has c_line defined - - THIS MAKES PORTS TO NEW SYSTEMS EASY - You only have to wory about ---- 50,53 ---- -*************** -*** 268,272 **** - */ - #if defined(SYS_ULTRIX) -- #define NTP_NEED_BOPS - #define S_CHAR_DEFINED - #define HAVE_READKMEM ---- 267,270 ---- -*************** -*** 277,280 **** ---- 275,279 ---- - #define STR_SYSTEM "UNIX/Ultrix" - #endif -+ #define HAVE_TERMIOS - #endif - -*************** -*** 565,568 **** ---- 564,573 ---- - && !defined(HAVE_NO_NICE) - ERROR You_must_define_one_of_the_HAVE_xx_NICE_defines -+ #endif -+ -+ #if !defined(HAVE_SYSV_TTYS) \ -+ && !defined(HAVE_BSD_TTYS) \ -+ && !defined(HAVE_TERMIOS) -+ ERROR no_tty_type_defined - #endif - - |