Subject: A patch to linux emulation
To: None <port-i386@netbsd.org, port-alpha@netbsd.org>
From: Emmanuel Dreyfus <manu@netbsd.org>
List: port-alpha
Date: 08/26/2001 23:20:32
I have made a two fixes in PowerPC Linux emulation:
- Linux's ldd now works
- mmap() is now emulated using only machine independant support

Everything is fine on the PowerPC, but I'd like to be sure that this
patch does not break alpha and i386 (if i386 is okay, m68k should be
okay). So if someone can try this and tell me so that I can commit my
fix...

begin 644 compat_linux.patch
M/R!A<F-H+W!O=V5R<&,O;&EN=7A?8VQO;F4N8PI);F1E>#H@87)C:"]A;'!H
M82]L:6YU>%]S>7-C86QL+F@*/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/0I20U,@
M9FEL93H@+V-V<W)O;W0O<WES<W)C+W-Y<R]C;VUP870O;&EN=7@O87)C:"]A
M;'!H82]L:6YU>%]S>7-C86QL+F@L=@IR971R:65V:6YG(')E=FES:6]N(#$N
M,SD*9&EF9B`M530@+7(Q+C,Y(&QI;G5X7W-Y<V-A;&PN:`HM+2T@87)C:"]A
M;'!H82]L:6YU>%]S>7-C86QL+F@),C`P,2\P-R\P-"`Q,#HR-CHR.`DQ+C,Y
M"BLK*R!A<F-H+V%L<&AA+VQI;G5X7W-Y<V-A;&PN:`DR,#`Q+S`X+S(U(#$U
M.C$V.C4R"D!`("TQ+#4@*S$L-2!`0`HM+RH@)$YE=$)31#H@;&EN=7A?<WES
M8V%L;"YH+'8@,2XS.2`R,#`Q+S`W+S`T(#$P.C(V.C(X(&ID;VQE8V5K($5X
M<"`D("HO"BLO*B`D3F5T0E-$)"`J+PH@"B`O*@H@("H@4WES=&5M(&-A;&P@
M;G5M8F5R<RX*("`J"D!`("TQ,S(L.2`K,3,R+#D@0$`*(`H@+RH@<WES8V%L
M;#H@(FQS=&%T(B!R970Z(")I;G0B(&%R9W,Z(")C;VYS="!C:&%R("HB(")S
M=')U8W0@;&EN=7A?<W1A="`J(B`J+PH@(V1E9FEN90E,24Y56%]365-?;'-T
M870)-C@*(`HM+RH@<WES8V%L;#H@(FUM87`B(')E=#H@(FEN="(@87)G<SH@
M(G5N<VEG;F5D(&QO;F<B(")S:7IE7W0B(")I;G0B(")I;G0B(")I;G0B(")O
M9F9?="(@*B\**R\J('-Y<V-A;&PZ(")M;6%P(B!R970Z(")I;G0B(&%R9W,Z
M(")U;G-I9VYE9"!L;VYG(B`B<VEZ95]T(B`B:6YT(B`B:6YT(B`B:6YT(B`B
M;&EN=7A?;V9F7W0B("HO"B`C9&5F:6YE"4Q)3E587U-94U]M;6%P"3<Q"B`*
M("\J('-Y<V-A;&PZ(")M=6YM87`B(')E=#H@(FEN="(@87)G<SH@(G9O:60@
M*B(@(G-I>F5?="(@*B\*("-D969I;F4)3$E.55A?4UE37VUU;FUA<`DW,PI)
M;F1E>#H@87)C:"]A;'!H82]L:6YU>%]S>7-C86QL87)G<RYH"CT]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T*4D-3(&9I;&4Z("]C=G-R;V]T+W-Y<W-R8R]S>7,O
M8V]M<&%T+VQI;G5X+V%R8V@O86QP:&$O;&EN=7A?<WES8V%L;&%R9W,N:"QV
M"G)E=')I979I;F<@<F5V:7-I;VX@,2XS.0ID:69F("U5-"`M<C$N,SD@;&EN
M=7A?<WES8V%L;&%R9W,N:`HM+2T@87)C:"]A;'!H82]L:6YU>%]S>7-C86QL
M87)G<RYH"3(P,#$O,#<O,#0@,3`Z,C8Z,C@),2XS.0HK*RL@87)C:"]A;'!H
M82]L:6YU>%]S>7-C86QL87)G<RYH"3(P,#$O,#@O,C4@,34Z,38Z-3,*0$`@
M+3$L-2`K,2PU($!`"BTO*B`D3F5T0E-$.B!L:6YU>%]S>7-C86QL87)G<RYH
M+'8@,2XS.2`R,#`Q+S`W+S`T(#$P.C(V.C(X(&ID;VQE8V5K($5X<"`D("HO
M"BLO*B`D3F5T0E-$)"`J+PH@"B`O*@H@("H@4WES=&5M(&-A;&P@87)G=6UE
M;G0@;&ES=',N"B`@*@I);F1E>#H@87)C:"]A;'!H82]L:6YU>%]S>7-C86QL
M<RYC"CT]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T*4D-3(&9I;&4Z("]C=G-R;V]T
M+W-Y<W-R8R]S>7,O8V]M<&%T+VQI;G5X+V%R8V@O86QP:&$O;&EN=7A?<WES
M8V%L;',N8RQV"G)E=')I979I;F<@<F5V:7-I;VX@,2XT,`ID:69F("U5-"`M
M<C$N-#`@;&EN=7A?<WES8V%L;',N8PHM+2T@87)C:"]A;'!H82]L:6YU>%]S
M>7-C86QL<RYC"3(P,#$O,#<O,#0@,3`Z,C8Z,C@),2XT,`HK*RL@87)C:"]A
M;'!H82]L:6YU>%]S>7-C86QL<RYC"3(P,#$O,#@O,C4@,34Z,38Z-3<*0$`@
M+3$L-2`K,2PU($!`"BTO*B`D3F5T0E-$.B!L:6YU>%]S>7-C86QL<RYC+'8@
M,2XT,"`R,#`Q+S`W+S`T(#$P.C(V.C(X(&ID;VQE8V5K($5X<"`D("HO"BLO
M*B`D3F5T0E-$)"`J+PH@"B`O*@H@("H@4WES=&5M(&-A;&P@;F%M97,N"B`@
M*@I);F1E>#H@87)C:"]A;'!H82]L:6YU>%]S>7-E;G0N8PH]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]"E)#4R!F:6QE.B`O8W9S<F]O="]S>7-S<F,O<WES+V-O
M;7!A="]L:6YU>"]A<F-H+V%L<&AA+VQI;G5X7W-Y<V5N="YC+'8*<F5T<FEE
M=FEN9R!R979I<VEO;B`Q+C0P"F1I9F8@+54T("UR,2XT,"!L:6YU>%]S>7-E
M;G0N8PHM+2T@87)C:"]A;'!H82]L:6YU>%]S>7-E;G0N8PDR,#`Q+S`W+S`T
M(#$P.C(V.C(Y"3$N-#`**RLK(&%R8V@O86QP:&$O;&EN=7A?<WES96YT+F,)
M,C`P,2\P."\R-2`Q-3HQ-SHP,`I`0"`M,2PU("LQ+#4@0$`*+2\J("1.971"
M4T0Z(&QI;G5X7W-Y<V5N="YC+'8@,2XT,"`R,#`Q+S`W+S`T(#$P.C(V.C(Y
M(&ID;VQE8V5K($5X<"`D("HO"BLO*B`D3F5T0E-$)"`J+PH@"B`O*@H@("H@
M4WES=&5M(&-A;&P@<W=I=&-H('1A8FQE+@H@("H*26YD97@Z(&%R8V@O86QP
M:&$O<WES8V%L;',N;6%S=&5R"CT]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T*4D-3
M(&9I;&4Z("]C=G-R;V]T+W-Y<W-R8R]S>7,O8V]M<&%T+VQI;G5X+V%R8V@O
M86QP:&$O<WES8V%L;',N;6%S=&5R+'8*<F5T<FEE=FEN9R!R979I<VEO;B`Q
M+C,U"F1I9F8@+54T("UR,2XS-2!S>7-C86QL<RYM87-T97(*+2TM(&%R8V@O
M86QP:&$O<WES8V%L;',N;6%S=&5R"3(P,#$O,#<O,#0@,3`Z,C4Z,S(),2XS
M-0HK*RL@87)C:"]A;'!H82]S>7-C86QL<RYM87-T97(),C`P,2\P."\R-2`Q
M-3HQ-SHP,0I`0"`M,3<R+#D@*S$W,BPY($!`"B`V.0E53DE-4$P@"B`W,`E5
M3DE-4$P*(#LW,0E!3$E!4PD);W-F,5]S>7-?;6UA<`H@-S$)3D]!4D=3"0E[
M(&EN="!L:6YU>%]S>7-?;6UA<"AU;G-I9VYE9"!L;VYG(&%D9'(L('-I>F5?
M="!L96XL(%P*+0D)"2`@("!I;G0@<')O="P@:6YT(&9L86=S+"!I;G0@9F0L
M(&]F9E]T(&]F9G-E="D[('T**PD)"2`@("!I;G0@<')O="P@:6YT(&9L86=S
M+"!I;G0@9F0L(&QI;G5X7V]F9E]T(&]F9G-E="D[('T*(#<R"55.24U03`H@
M-S,)3D]!4D=3"0E[(&EN="!S>7-?;75N;6%P*'9O:60@*F%D9'(L('-I>F5?
M="!L96XI.R!]"B`W-`E.3T%21U,)"7L@:6YT('-Y<U]M<')O=&5C="AV;VED
M("IA9&1R+"!S:7IE7W0@;&5N+"!I;G0@<')O="D[('T*(#L@3&EU;G@@<WES
M7VUA9'9I<V4@:G5S="!R971U<FYS(#`N"DEN9&5X.B!A<F-H+W!O=V5R<&,O
M9FEL97,N;&EN=7A?<&]W97)P8PH]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]"E)#
M4R!F:6QE.B`O8W9S<F]O="]S>7-S<F,O<WES+V-O;7!A="]L:6YU>"]A<F-H
M+W!O=V5R<&,O9FEL97,N;&EN=7A?<&]W97)P8RQV"G)E=')I979I;F<@<F5V
M:7-I;VX@,2XQ"F1I9F8@+54T("UR,2XQ(&9I;&5S+FQI;G5X7W!O=V5R<&,*
M+2TM(&%R8V@O<&]W97)P8R]F:6QE<RYL:6YU>%]P;W=E<G!C"3(P,#$O,#$O
M,3D@,#$Z-3$Z,38),2XQ"BLK*R!A<F-H+W!O=V5R<&,O9FEL97,N;&EN=7A?
M<&]W97)P8PDR,#`Q+S`X+S(U(#$U.C$W.C`R"D!`("TW+#D@*S<L."!`0`H@
M9FEL90EC;VUP870O;&EN=7@O87)C:"]P;W=E<G!C+VQI;G5X7W-Y<V-A;&QS
M+F,)"0EC;VUP871?;&EN=7@*(&9I;&4)8V]M<&%T+VQI;G5X+V%R8V@O<&]W
M97)P8R]L:6YU>%]S>7-E;G0N8PD)"0EC;VUP871?;&EN=7@*(&9I;&4)8V]M
M<&%T+VQI;G5X+V%R8V@O<&]W97)P8R]L:6YU>%]S:6=A<G)A>2YC"0D)8V]M
M<&%T7VQI;G5X"B!F:6QE"6-O;7!A="]L:6YU>"]A<F-H+W!O=V5R<&,O;&EN
M=7A?97AE8U]P;W=E<G!C+F,)"6-O;7!A=%]L:6YU>`HM9FEL90EC;VUP870O
M;&EN=7@O87)C:"]P;W=E<G!C+VQI;G5X7VUM87!?<&]W97)P8RYC"0EC;VUP
M871?;&EN=7@*(&9I;&4)8V]M<&%T+VQI;G5X+V%R8V@O<&]W97)P8R]L:6YU
M>%]S<%]W<F%P7W!O=V5R<&,N4PEC;VUP871?;&EN=7@*(`H@9FEL90EC;VUP
M870O;&EN=7@O8V]M;6]N+VQI;G5X7W!I<&4N8PD)("`@"6-O;7!A=%]L:6YU
M>`H@9FEL90EC;VUP870O;&EN=7@O8V]M;6]N+VQI;G5X7VEP8V-A;&PN8PD)
M"6-O;7!A=%]L:6YU>`I);F1E>#H@87)C:"]P;W=E<G!C+VQI;G5X7V5X96,N
M:`H]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]"E)#4R!F:6QE.B`O8W9S<F]O="]S
M>7-S<F,O<WES+V-O;7!A="]L:6YU>"]A<F-H+W!O=V5R<&,O;&EN=7A?97AE
M8RYH+'8*<F5T<FEE=FEN9R!R979I<VEO;B`Q+C,*9&EF9B`M530@+7(Q+C,@
M;&EN=7A?97AE8RYH"BTM+2!A<F-H+W!O=V5R<&,O;&EN=7A?97AE8RYH"3(P
M,#$O,#<O,C8@,C(Z-3,Z,30),2XS"BLK*R!A<F-H+W!O=V5R<&,O;&EN=7A?
M97AE8RYH"3(P,#$O,#@O,C4@,34Z,3<Z,#(*0$`@+38S+#@@*S8S+#D@0$`*
M("\J"B`@*B!,:6YU>"!%;&8S,B!F;W)M870@<&%R86UE=&5R<PH@("HO"B`*
M*R-D969I;F4@3$E.55A?1T-#7U-)1TY!5%5212`Q"B`O*@H@("H@3$E.55A?
M051%6$E47U-)1TY!5%5212!E;F%B;&4@=&AE(&%T97AI=%]S:6=N871U<F4@
M=&5S="X@4V5E(`H@("H@<WES+V-O;7!A="]L:6YU>"]C;VUM;VXO;&EN=7A?
M97AE8U]E;&8S,BYC.FQI;G5X7V%T97AI=%]S:6=N871U<F4H*0H@("HO"DEN
M9&5X.B!A<F-H+W!O=V5R<&,O;&EN=7A?;6%C:&1E<"YC"CT]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T*4D-3(&9I;&4Z("]C=G-R;V]T+W-Y<W-R8R]S>7,O8V]M
M<&%T+VQI;G5X+V%R8V@O<&]W97)P8R]L:6YU>%]M86-H9&5P+F,L=@IR971R
M:65V:6YG(')E=FES:6]N(#$N,3$*9&EF9B`M530@+7(Q+C$Q(&QI;G5X7VUA
M8VAD97`N8PHM+2T@87)C:"]P;W=E<G!C+VQI;G5X7VUA8VAD97`N8PDR,#`Q
M+S`V+S$S(#(S.C`Y.C`Q"3$N,3$**RLK(&%R8V@O<&]W97)P8R]L:6YU>%]M
M86-H9&5P+F,),C`P,2\P."\R-2`Q-3HQ-SHP,PI`0"`M-S<L."`K-S<L.2!`
M0`H@(VEN8VQU9&4@/&UA8VAI;F4O<'-L+F@^"B`C:6YC;'5D92`\;6%C:&EN
M92]R96<N:#X*("-I;F-L=61E(#QM86-H:6YE+W9M<&%R86TN:#X*(`HK(W5N
M9&5F($1%0E5'7TQ)3E58"B`O*@H@("H@5&\@<V5E('=H971H97(@=W-C;VYS
M(&ES(&-O;F9I9W5R960@*&9O<B!V:7)T=6%L(&-O;G-O;&4@:6]C=&P@8V%L
M;',I+@H@("HO"B`C:68@9&5F:6YE9"A?2T523D5,7T]05"D*26YD97@Z(&%R
M8V@O<&]W97)P8R]L:6YU>%]M;6%P+F@*/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/0I20U,@9FEL93H@+V-V<W)O;W0O<WES<W)C+W-Y<R]C;VUP870O;&EN=7@O
M87)C:"]P;W=E<G!C+VQI;G5X7VUM87`N:"QV"G)E=')I979I;F<@<F5V:7-I
M;VX@,2XR"F1I9F8@+54T("UR,2XR(&QI;G5X7VUM87`N:`HM+2T@87)C:"]P
M;W=E<G!C+VQI;G5X7VUM87`N:`DR,#`Q+S`Q+S$Y(#`Q.C,Q.C(U"3$N,@HK
M*RL@87)C:"]P;W=E<G!C+VQI;G5X7VUM87`N:`DR,#`Q+S`X+S(U(#$U.C$W
M.C`S"D!`("TU-2PR,2`K-34L-2!`0`H@(V1E9FEN92!,24Y56%]-05!?1U)/
M5U-$3U=."3!X,#$P,`H@(V1E9FEN92!,24Y56%]-05!?1$5.65=2251%"3!X
M,#@P,`H@(V1E9FEN90E,24Y56%]-05!?15A%0U5404),10DP>#$P,#`*(`HM
M+RH@"BT@*B!/;B!T:&4@4&]W97)00RP@=V4@:&%V92!A('!R;V)L96T@=VET
M:"!T:&4@;V9F<V5T(&%R9W5M96YT+B!)="=S(#,R(&)I=`HM("H@;&]N9R!O
M;B!,:6YU>"!A;F0@-C0@8FET(&QO;F<@;VX@3F5T0E-$+B!4:&5R969O<F4@
M=V4@=7-E(&$@=W)A<'!E<@HM("H@9G5N8W1I;VX@;&EN=7A?<WES7W!O=V5R
M<&-?;6UA<"@I('1O(&QI;G5X7W-Y<U]M;6%P*"D*+2`J(`HM("H@3&EN=7@G
M<R!O9F9?="!I<R!?7VME<FYE;%]O9F9?="`H:6YC;'5D92]L:6YU>"]T>7!E
M<RYH*2!W:&EC:"!I;B!T=7)N"BT@*B!I<R!A(&QO;F<@*&EN8VQU9&4O87-M
M+7!P8R]P;W-I>%]T>7!E<RYH*0HM("HO"BTC9&5F:6YE(&QI;G5X7V]F9E]T
M(&QO;F<*+0HM(VEF9&5F(%]+15).14P*+5]?0D5'24Y?1$5#3%,@"BUI;G0@
M;&EN=7A?<WES7W!O=V5R<&-?;6UA<"AS=')U8W0@<')O8R`J+"!V;VED("HL
M(')E9VES=&5R7W0@*BD["BU?7T5.1%]$14-,4PHM(V5N9&EF("\J("%?2T52
M3D5,("HO(`HM"B`C96YD:68@+RH@(5]03U=%4E!#7TQ)3E587TU-05!?2"`J
M+PI);F1E>#H@87)C:"]P;W=E<G!C+VQI;G5X7W-Y<V-A;&PN:`H]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]"E)#4R!F:6QE.B`O8W9S<F]O="]S>7-S<F,O<WES
M+V-O;7!A="]L:6YU>"]A<F-H+W!O=V5R<&,O;&EN=7A?<WES8V%L;"YH+'8*
M<F5T<FEE=FEN9R!R979I<VEO;B`Q+CD*9&EF9B`M530@+7(Q+CD@;&EN=7A?
M<WES8V%L;"YH"BTM+2!A<F-H+W!O=V5R<&,O;&EN=7A?<WES8V%L;"YH"3(P
M,#$O,#4O,S`@,3$Z,S<Z,C<),2XY"BLK*R!A<F-H+W!O=V5R<&,O;&EN=7A?
M<WES8V%L;"YH"3(P,#$O,#@O,C4@,34Z,3<Z,#0*0$`@+3$L,3$@*S$L,3$@
M0$`*+2\J("1.971"4T0Z(&QI;G5X7W-Y<V-A;&PN:"QV(#$N.2`R,#`Q+S`U
M+S,P(#$Q.C,W.C(W(&UR9R!%>'`@)"`J+PHK+RH@)$YE=$)31"0@*B\*(`H@
M+RH*("`J(%-Y<W1E;2!C86QL(&YU;6)E<G,N"B`@*@H@("H@1$\@3D]4($5$
M250M+2!T:&ES(&9I;&4@:7,@875T;VUA=&EC86QL>2!G96YE<F%T960N"BT@
M*B!C<F5A=&5D(&9R;VT)3F5T0E-$.B!S>7-C86QL<RYM87-T97(L=B`Q+C4@
M,C`P,2\P-2\Q,R`R,#HU-#HT-2!M86YU($5X<"`@(`HK("H@8W)E871E9"!F
M<F]M"4YE=$)31#H@<WES8V%L;',N;6%S=&5R+'8@,2XV(#(P,#$O,#4O,S`@
M,3$Z,S<Z,C<@;7)G($5X<"`@(`H@("HO"B`*("\J('-Y<V-A;&PZ(")S>7-C
M86QL(B!R970Z(")I;G0B(&%R9W,Z("HO"B`C9&5F:6YE"4Q)3E587U-94U]S
M>7-C86QL"3`*0$`@+3(T-2PQ,"`K,C0U+#$P($!`"B`*("\J('-Y<V-A;&PZ
M(")R96%D9&ER(B!R970Z(")I;G0B(&%R9W,Z(")I;G0B(")C861D<E]T(B`B
M=6YS:6=N960@:6YT(B`J+PH@(V1E9FEN90E,24Y56%]365-?<F5A9&1I<@DX
M.0H@"BTO*B!S>7-C86QL.B`B<&]W97)P8U]M;6%P(B!R970Z(")I;G0B(&%R
M9W,Z(")U;G-I9VYE9"!L;VYG(B`B<VEZ95]T(B`B:6YT(B`B:6YT(B`B:6YT
M(B`B;&EN=7A?;V9F7W0B("HO"BTC9&5F:6YE"4Q)3E587U-94U]P;W=E<G!C
M7VUM87`).3`**R\J('-Y<V-A;&PZ(")M;6%P(B!R970Z(")I;G0B(&%R9W,Z
M(")U;G-I9VYE9"!L;VYG(B`B<VEZ95]T(B`B:6YT(B`B:6YT(B`B:6YT(B`B
M;&EN=7A?;V9F7W0B("HO"BLC9&5F:6YE"4Q)3E587U-94U]M;6%P"3DP"B`*
M("\J('-Y<V-A;&PZ(")M=6YM87`B(')E=#H@(FEN="(@87)G<SH@(F-A9&1R
M7W0B(")I;G0B("HO"B`C9&5F:6YE"4Q)3E587U-94U]M=6YM87`).3$*(`I)
M;F1E>#H@87)C:"]P;W=E<G!C+VQI;G5X7W-Y<V-A;&QA<F=S+F@*/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/0I20U,@9FEL93H@+V-V<W)O;W0O<WES<W)C+W-Y
M<R]C;VUP870O;&EN=7@O87)C:"]P;W=E<G!C+VQI;G5X7W-Y<V-A;&QA<F=S
M+F@L=@IR971R:65V:6YG(')E=FES:6]N(#$N.0ID:69F("U5-"`M<C$N.2!L
M:6YU>%]S>7-C86QL87)G<RYH"BTM+2!A<F-H+W!O=V5R<&,O;&EN=7A?<WES
M8V%L;&%R9W,N:`DR,#`Q+S`U+S,P(#$Q.C,W.C(W"3$N.0HK*RL@87)C:"]P
M;W=E<G!C+VQI;G5X7W-Y<V-A;&QA<F=S+F@),C`P,2\P."\R-2`Q-3HQ-SHP
M-@I`0"`M,2PQ,2`K,2PQ,2!`0`HM+RH@)$YE=$)31#H@;&EN=7A?<WES8V%L
M;&%R9W,N:"QV(#$N.2`R,#`Q+S`U+S,P(#$Q.C,W.C(W(&UR9R!%>'`@)"`J
M+PHK+RH@)$YE=$)31"0@*B\*(`H@+RH*("`J(%-Y<W1E;2!C86QL(&%R9W5M
M96YT(&QI<W1S+@H@("H*("`J($1/($Y/5"!%1$E4+2T@=&AI<R!F:6QE(&ES
M(&%U=&]M871I8V%L;'D@9V5N97)A=&5D+@HM("H@8W)E871E9"!F<F]M"4YE
M=$)31#H@<WES8V%L;',N;6%S=&5R+'8@,2XU(#(P,#$O,#4O,3,@,C`Z-30Z
M-#4@;6%N=2!%>'`@("`**R`J(&-R96%T960@9G)O;0E.971"4T0Z('-Y<V-A
M;&QS+FUA<W1E<BQV(#$N-B`R,#`Q+S`U+S,P(#$Q.C,W.C(W(&UR9R!%>'`@
M("`*("`J+PH@"B`C:69N9&5F(%],24Y56%]365-?7U-94T-!3$Q!4D=37TA?
M"B`C9&5F:6YE"5],24Y56%]365-?7U-94T-!3$Q!4D=37TA?"D!`("TR,S,L
M.2`K,C,S+#D@0$`*(`ES>7-C86QL87)G*&-A9&1R7W0I(&1E;G0["B`)<WES
M8V%L;&%R9RAU;G-I9VYE9"!I;G0I(&-O=6YT.PH@?3L*(`HM<W1R=6-T(&QI
M;G5X7W-Y<U]P;W=E<G!C7VUM87!?87)G<R!["BMS=')U8W0@;&EN=7A?<WES
M7VUM87!?87)G<R!["B`)<WES8V%L;&%R9RAU;G-I9VYE9"!L;VYG*2!A9&1R
M.PH@"7-Y<V-A;&QA<F<H<VEZ95]T*2!L96X["B`)<WES8V%L;&%R9RAI;G0I
M('!R;W0["B`)<WES8V%L;&%R9RAI;G0I(&9L86=S.PI`0"`M-3@P+#D@*S4X
M,"PY($!`"B!I;G0);&EN=7A?<WES7W5S96QI8BAS=')U8W0@<')O8R`J+"!V
M;VED("HL(')E9VES=&5R7W0@*BD["B!I;G0);&EN=7A?<WES7W-W87!O;BAS
M=')U8W0@<')O8R`J+"!V;VED("HL(')E9VES=&5R7W0@*BD["B!I;G0);&EN
M=7A?<WES7W)E8F]O="AS=')U8W0@<')O8R`J+"!V;VED("HL(')E9VES=&5R
M7W0@*BD["B!I;G0);&EN=7A?<WES7W)E861D:7(H<W1R=6-T('!R;V,@*BP@
M=F]I9"`J+"!R96=I<W1E<E]T("HI.PHM:6YT"6QI;G5X7W-Y<U]P;W=E<G!C
M7VUM87`H<W1R=6-T('!R;V,@*BP@=F]I9"`J+"!R96=I<W1E<E]T("HI.PHK
M:6YT"6QI;G5X7W-Y<U]M;6%P*'-T<G5C="!P<F]C("HL('9O:60@*BP@<F5G
M:7-T97)?="`J*3L*(&EN=`ES>7-?;75N;6%P*'-T<G5C="!P<F]C("HL('9O
M:60@*BP@<F5G:7-T97)?="`J*3L*(&EN=`EL:6YU>%]S>7-?=')U;F-A=&4H
M<W1R=6-T('!R;V,@*BP@=F]I9"`J+"!R96=I<W1E<E]T("HI.PH@:6YT"6-O
M;7!A=%\T,U]S>7-?9G1R=6YC871E*'-T<G5C="!P<F]C("HL('9O:60@*BP@
M<F5G:7-T97)?="`J*3L*(&EN=`ES>7-?9F-H;6]D*'-T<G5C="!P<F]C("HL
M('9O:60@*BP@<F5G:7-T97)?="`J*3L*26YD97@Z(&%R8V@O<&]W97)P8R]L
M:6YU>%]S>7-C86QL<RYC"CT]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T*4D-3(&9I
M;&4Z("]C=G-R;V]T+W-Y<W-R8R]S>7,O8V]M<&%T+VQI;G5X+V%R8V@O<&]W
M97)P8R]L:6YU>%]S>7-C86QL<RYC+'8*<F5T<FEE=FEN9R!R979I<VEO;B`Q
M+CD*9&EF9B`M530@+7(Q+CD@;&EN=7A?<WES8V%L;',N8PHM+2T@87)C:"]P
M;W=E<G!C+VQI;G5X7W-Y<V-A;&QS+F,),C`P,2\P-2\S,"`Q,3HS-SHR-PDQ
M+CD**RLK(&%R8V@O<&]W97)P8R]L:6YU>%]S>7-C86QL<RYC"3(P,#$O,#@O
M,C4@,34Z,3<Z,#8*0$`@+3$L,3$@*S$L,3$@0$`*+2\J("1.971"4T0Z(&QI
M;G5X7W-Y<V-A;&QS+F,L=B`Q+CD@,C`P,2\P-2\S,"`Q,3HS-SHR-R!M<F<@
M17AP("0@*B\**R\J("1.971"4T0D("HO"B`*("\J"B`@*B!3>7-T96T@8V%L
M;"!N86UE<RX*("`J"B`@*B!$3R!.3U0@141)5"TM('1H:7,@9FEL92!I<R!A
M=71O;6%T:6-A;&QY(&=E;F5R871E9"X*+2`J(&-R96%T960@9G)O;0E.971"
M4T0Z('-Y<V-A;&QS+FUA<W1E<BQV(#$N-2`R,#`Q+S`U+S$S(#(P.C4T.C0U
M(&UA;G4@17AP("`@"BL@*B!C<F5A=&5D(&9R;VT)3F5T0E-$.B!S>7-C86QL
M<RYM87-T97(L=B`Q+C8@,C`P,2\P-2\S,"`Q,3HS-SHR-R!M<F<@17AP("`@
M"B`@*B\*(`H@(VEF(&1E9FEN960H7TM%4DY%3%]/4%0I"B`C:68@9&5F:6YE
M9"A?2T523D5,7T]05"D*0$`@+3$Q-BPY("LQ,38L.2!`0`H@"2)U<V5L:6(B
M+`D)"2\J(#@V(#T@=7-E;&EB("HO"B`)(G-W87!O;B(L"0D)+RH@.#<@/2!S
M=V%P;VX@*B\*(`DB<F5B;V]T(BP)"0DO*B`X."`](')E8F]O="`J+PH@"2)R
M96%D9&ER(BP)"0DO*B`X.2`](')E861D:7(@*B\*+0DB<&]W97)P8U]M;6%P
M(BP)"0DO*B`Y,"`]('!O=V5R<&-?;6UA<"`J+PHK"2)M;6%P(BP)"0DO*B`Y
M,"`](&UM87`@*B\*(`DB;75N;6%P(BP)"0DO*B`Y,2`](&UU;FUA<"`J+PH@
M"2)T<G5N8V%T92(L"0D)+RH@.3(@/2!T<G5N8V%T92`J+PH@"2)F=')U;F-A
M=&4B+`D)"2\J(#DS(#T@9G1R=6YC871E("HO"B`)(F9C:&UO9"(L"0D)+RH@
M.30@/2!F8VAM;V0@*B\*26YD97@Z(&%R8V@O<&]W97)P8R]L:6YU>%]S>7-E
M;G0N8PH]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]"E)#4R!F:6QE.B`O8W9S<F]O
M="]S>7-S<F,O<WES+V-O;7!A="]L:6YU>"]A<F-H+W!O=V5R<&,O;&EN=7A?
M<WES96YT+F,L=@IR971R:65V:6YG(')E=FES:6]N(#$N.0ID:69F("U5-"`M
M<C$N.2!L:6YU>%]S>7-E;G0N8PHM+2T@87)C:"]P;W=E<G!C+VQI;G5X7W-Y
M<V5N="YC"3(P,#$O,#4O,S`@,3$Z,S<Z,C<),2XY"BLK*R!A<F-H+W!O=V5R
M<&,O;&EN=7A?<WES96YT+F,),C`P,2\P."\R-2`Q-3HQ-SHP.`I`0"`M,2PQ
M,2`K,2PQ,2!`0`HM+RH@)$YE=$)31#H@;&EN=7A?<WES96YT+F,L=B`Q+CD@
M,C`P,2\P-2\S,"`Q,3HS-SHR-R!M<F<@17AP("0@*B\**R\J("1.971"4T0D
M("HO"B`*("\J"B`@*B!3>7-T96T@8V%L;"!S=VET8V@@=&%B;&4N"B`@*@H@
M("H@1$\@3D]4($5$250M+2!T:&ES(&9I;&4@:7,@875T;VUA=&EC86QL>2!G
M96YE<F%T960N"BT@*B!C<F5A=&5D(&9R;VT)3F5T0E-$.B!S>7-C86QL<RYM
M87-T97(L=B`Q+C4@,C`P,2\P-2\Q,R`R,#HU-#HT-2!M86YU($5X<"`@(`HK
M("H@8W)E871E9"!F<F]M"4YE=$)31#H@<WES8V%L;',N;6%S=&5R+'8@,2XV
M(#(P,#$O,#4O,S`@,3$Z,S<Z,C<@;7)G($5X<"`@(`H@("HO"B`*("-I9B!D
M969I;F5D*%]+15).14Q?3U!4*0H@(VEN8VQU9&4@(F]P=%]C;VUP871?;F5T
M8G-D+F@B"D!`("TR,#8L,3`@*S(P-BPQ,"!`0`H@"7L@-"P@<RAS=')U8W0@
M;&EN=7A?<WES7W)E8F]O=%]A<F=S*2P@,"P*(`D@("`@;&EN=7A?<WES7W)E
M8F]O="!]+`D)"2\J(#@X(#T@<F5B;V]T("HO"B`)>R`S+"!S*'-T<G5C="!L
M:6YU>%]S>7-?<F5A9&1I<E]A<F=S*2P@,"P*(`D@("`@;&EN=7A?<WES7W)E
M861D:7(@?2P)"2\J(#@Y(#T@<F5A9&1I<B`J+PHM"7L@-BP@<RAS=')U8W0@
M;&EN=7A?<WES7W!O=V5R<&-?;6UA<%]A<F=S*2P@,"P*+0D@("`@;&EN=7A?
M<WES7W!O=V5R<&-?;6UA<"!]+`D)+RH@.3`@/2!P;W=E<G!C7VUM87`@*B\*
M*PE[(#8L(',H<W1R=6-T(&QI;G5X7W-Y<U]M;6%P7V%R9W,I+"`P+`HK"2`@
M("!L:6YU>%]S>7-?;6UA<"!]+`D)"2\J(#DP(#T@;6UA<"`J+PH@"7L@,BP@
M<RAS=')U8W0@<WES7VUU;FUA<%]A<F=S*2P@,"P*(`D@("`@<WES7VUU;FUA
M<"!]+`D)"2\J(#DQ(#T@;75N;6%P("HO"B`)>R`R+"!S*'-T<G5C="!L:6YU
M>%]S>7-?=')U;F-A=&5?87)G<RDL(#`L"B`)("`@(&QI;G5X7W-Y<U]T<G5N
M8V%T92!]+`D)+RH@.3(@/2!T<G5N8V%T92`J+PI);F1E>#H@87)C:"]P;W=E
M<G!C+W-Y<V-A;&QS+FUA<W1E<@H]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]"E)#
M4R!F:6QE.B`O8W9S<F]O="]S>7-S<F,O<WES+V-O;7!A="]L:6YU>"]A<F-H
M+W!O=V5R<&,O<WES8V%L;',N;6%S=&5R+'8*<F5T<FEE=FEN9R!R979I<VEO
M;B`Q+C8*9&EF9B`M530@+7(Q+C8@<WES8V%L;',N;6%S=&5R"BTM+2!A<F-H
M+W!O=V5R<&,O<WES8V%L;',N;6%S=&5R"3(P,#$O,#4O,S`@,3$Z,S<Z,C<)
M,2XV"BLK*R!A<F-H+W!O=V5R<&,O<WES8V%L;',N;6%S=&5R"3(P,#$O,#@O
M,C4@,34Z,3<Z,#D*0$`@+3$Y-RPY("LQ.3<L.2!`0`H@.#@)4U1$"0E[(&EN
M="!L:6YU>%]S>7-?<F5B;V]T*&EN="!M86=I8S$L(&EN="!M86=I8S(L(%P*
M(`D)"2`@("!I;G0@8VUD+"!V;VED("IA<F<I.R!]"B`X.0E35$0)"7L@:6YT
M(&QI;G5X7W-Y<U]R96%D9&ER*&EN="!F9"P@8V%D9')?="!D96YT+"!<"B`)
M"0D@("`@=6YS:6=N960@:6YT(&-O=6YT*3L@?0HM.3`)(%-41"`@("`@('L@
M:6YT(&QI;G5X7W-Y<U]P;W=E<G!C7VUM87`H=6YS:6=N960@;&]N9R!A9&1R
M+"!S:7IE7W0@;&5N+"!<"BLY,`D@4U1$("`@("`@>R!I;G0@;&EN=7A?<WES
M7VUM87`H=6YS:6=N960@;&]N9R!A9&1R+"!S:7IE7W0@;&5N+"!<"B`@("`@
M("`@("`@("`@:6YT('!R;W0L(&EN="!F;&%G<RP@:6YT(&9D+"!L:6YU>%]O
M9F9?="!O9F9S970I.R!]"B`Y,0E.3T%21U,)"7L@:6YT('-Y<U]M=6YM87`H
M8V%D9')?="!A9&1R+"!I;G0@;&5N*3L@?0H@.3()4U1$"0E[(&EN="!L:6YU
M>%]S>7-?=')U;F-A=&4H8V]N<W0@8VAA<B`J<&%T:"P@7`H@"0D)("`@(&QO
M;F<@;&5N9W1H*3L@?0I);F1E>#H@8V]M;6]N+VQI;G5X7V5X96-?96QF,S(N
M8PH]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]"E)#4R!F:6QE.B`O8W9S<F]O="]S
M>7-S<F,O<WES+V-O;7!A="]L:6YU>"]C;VUM;VXO;&EN=7A?97AE8U]E;&8S
M,BYC+'8*<F5T<FEE=FEN9R!R979I<VEO;B`Q+C4R"F1I9F8@+54T("UR,2XU
M,B!L:6YU>%]E>&5C7V5L9C,R+F,*+2TM(&-O;6UO;B]L:6YU>%]E>&5C7V5L
M9C,R+F,),C`P,2\P-R\Q-"`P,CHP-3HP-@DQ+C4R"BLK*R!C;VUM;VXO;&EN
M=7A?97AE8U]E;&8S,BYC"3(P,#$O,#@O,C4@,34Z,3<Z,3`*0$`@+3,P-2PR
M,B`K,S`U+#$W($!`"B`)8V]N<W0@8VAA<B`J8G`["B`):6YT(&5R<F]R.PH@
M"7-I>F5?="!L96X["B`**PEI9B`H*"AE<G)O<B`]($5,1DY!344R*&QI;G5X
M+'-I9VYA='5R92DH<"P@97!P+"!E:"P@:71P*2D@(3T@,"D@)B8*("-I9F1E
M9B!,24Y56%]'0T-?4TE'3D%455)%"BT):68@*"AE<G)O<B`]($5,1DY!344R
M*&QI;G5X+'-I9VYA='5R92DH<"P@97!P+"!E:"P@:71P*2D@(3T@,"D*+0D)
M:68@*"AE<G)O<B`]($5,1DY!344R*&QI;G5X+&=C8U]S:6=N871U<F4I*'`L
M(&5P<"P@96@I*2`A/2`P*0HM"0D)<F5T=7)N(&5R<F]R.PHM(V5L<V4*+2-I
M9F1E9B!,24Y56%]!5$58251?4TE'3D%455)%"BT):68@*"AE<G)O<B`]($5,
M1DY!344R*&QI;G5X+'-I9VYA='5R92DH<"P@97!P+"!E:"P@:71P*2D@(3T@
M,"D*+0D):68@*"AE<G)O<B`]($5,1DY!344R*&QI;G5X+&%T97AI=%]S:6=N
M871U<F4I*'`L(&5P<"P@96@I*2`A/2`P*0HM"0D)<F5T=7)N(&5R<F]R.PHM
M(V5L<V4*+0EI9B`H*&5R<F]R(#T@14Q&3D%-13(H;&EN=7@L<VEG;F%T=7)E
M*2AP+"!E<'`L(&5H+"!I='`I*2`A/2`P*0HM"0ER971U<FX@97)R;W(["BL)
M("`@("@H97)R;W(@/2!%3$9.04U%,BAL:6YU>"QG8V-?<VEG;F%T=7)E*2AP
M+"!E<'`L(&5H*2D@(3T@,"D@)B8*("-E;F1I9@HK(VEF9&5F($Q)3E587T%4
M15A)5%]324=.05154D4**PD@("`@*"AE<G)O<B`]($5,1DY!344R*&QI;G5X
M+&%T97AI=%]S:6=N871U<F4I*'`L(&5P<"P@96@I*2`A/2`P*2`F)@H@(V5N
M9&EF"BL)("`@(#$I(`HK"0D)<F5T=7)N(&5R<F]R.PH@"B`):68@*&ET<%LP
M72D@>PH@"0EI9B`H*&5R<F]R(#T@96UU;%]F:6YD*'`L($Y53$PL(&5P<"T^
M97!?97-C:"T^97-?96UU;"T^95]P871H+`H@"0D@("`@:71P+"`F8G`L(#`I
M*2D*26YD97@Z(&-O;6UO;B]L:6YU>%]M:7-C+F,*/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/0I20U,@9FEL93H@+V-V<W)O;W0O<WES<W)C+W-Y<R]C;VUP870O
M;&EN=7@O8V]M;6]N+VQI;G5X7VUI<V,N8RQV"G)E=')I979I;F<@<F5V:7-I
M;VX@,2XY,PID:69F("U5-"`M<C$N.3,@;&EN=7A?;6ES8RYC"BTM+2!C;VUM
M;VXO;&EN=7A?;6ES8RYC"3(P,#$O,#<O,3@@,3DZ,3$Z,30),2XY,PHK*RL@
M8V]M;6]N+VQI;G5X7VUI<V,N8PDR,#`Q+S`X+S(U(#$U.C$W.C$R"D!`("TS
M.3`L.2`K,SDP+#D@0$`*(`D)<WES8V%L;&%R9RAS:7IE7W0I(&QE;CL*(`D)
M<WES8V%L;&%R9RAI;G0I('!R;W0["B`)"7-Y<V-A;&QA<F<H:6YT*2!F;&%G
M<SL*(`D)<WES8V%L;&%R9RAI;G0I(&9D.PHM"0ES>7-C86QL87)G*&]F9E]T
M*2!O9F9S970["BL)"7-Y<V-A;&QA<F<H;&EN=7A?;V9F7W0I(&]F9G-E=#L*
M(`E]("HO("IU87`@/2!V.PH@"7-T<G5C="!S>7-?;6UA<%]A<F=S(&-M83L*
M(`EI;G0@9FQA9W,["B`)"D!`("TT,3`L.2`K-#$P+#D@0$`*(`D)4T-!4D<H
M)F-M82QP<F]T*2!\/2!635]04D]47U)%040["B`)4T-!4D<H)F-M82QF;&%G
M<RD@/2!F;&%G<SL*(`E30T%21R@F8VUA+&9D*2`](&9L86=S("8@34%07T%.
M3TX@/R`M,2`Z(%-#05)'*'5A<"P@9F0I.PH@"5-#05)'*"9C;6$L<&%D*2`]
M(#`["BT)4T-!4D<H)F-M82QP;W,I(#T@4T-!4D<H=6%P+"!O9F9S970I.PHK
M"5-#05)'*"9C;6$L<&]S*2`]("AO9F9?="E30T%21RAU87`L(&]F9G-E="D[
M"B`*(`ER971U<FX@<WES7VUM87`H<"P@)F-M82P@<F5T=F%L*3L*('T*(`I)
M;F1E>#H@8V]M;6]N+VQI;G5X7VUM87`N:`H]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]"E)#4R!F:6QE.B`O8W9S<F]O="]S>7-S<F,O<WES+V-O;7!A="]L:6YU
M>"]C;VUM;VXO;&EN=7A?;6UA<"YH+'8*<F5T<FEE=FEN9R!R979I<VEO;B`Q
M+C@*9&EF9B`M530@+7(Q+C@@;&EN=7A?;6UA<"YH"BTM+2!C;VUM;VXO;&EN
M=7A?;6UA<"YH"3(P,#$O,#$O,3D@,3(Z,S4Z-#<),2XX"BLK*R!C;VUM;VXO
M;&EN=7A?;6UA<"YH"3(P,#$O,#@O,C4@,34Z,3<Z,3(*0$`@+3<R+#(P("LW
M,BPX($!`"B`C96QS90H@(V5R<F]R(%5N9&5F:6YE9"!L:6YU>%]M;6%P+F@@
M;6%C:&EN92!T>7!E+@H@(V5N9&EF"B`*+2\J"BT@*B!%;G-U<F4@=&AE(&QI
M;G5X7W-Y<U]M;6%P('-Y<V-A;&P@87!P96%R<R!T;R!E>&ES=#H*+2`J+PHM
M<W1R=6-T(&QI;G5X7W-Y<U]M;6%P7V%R9W,@>PHM"7-Y<V-A;&QA<F<H=6YS
M:6=N960@;&]N9RD@861D<CL*+0ES>7-C86QL87)G*'-I>F5?="D@;&5N.PHM
M"7-Y<V-A;&QA<F<H:6YT*2!P<F]T.PHM"7-Y<V-A;&QA<F<H:6YT*2!F;&%G
M<SL*+0ES>7-C86QL87)G*&EN="D@9F0["BT)<WES8V%L;&%R9RAO9F9?="D@
M;V9F<V5T.PHM?3L*+0H@(VEF9&5F(%]+15).14P*(%]?0D5'24Y?1$5#3%,*
M(&EN="!L:6YU>%]S>7-?;6UA<"!?7U`H*'-T<G5C="!P<F]C("IP+"!V;VED
H("IV+"!R96=I<W1E<E]T("IR971V86PI*3L*(%]?14Y$7T1%0TQ3"B!V
`
end


-- 
Emmanuel Dreyfus
manu@netbsd.org