bammi@dsrgsun.ces.cwru.edu (Jwahar R. Bammi) (11/29/89)
i am posting this for a friend Kai-Uwe who has been having problems posting to info-minix. please follow up to him at: Kai-Uwe Bloem, I5110401@DBSTU1.BitNet, ...!unido!dbstu1.bitnet!i5110401, I5110401%DBSTU1.BITNET@CORNELLC.CCS.CORNELL.EDU (or other known gateways) --------- Subject: fs/mm interface bug discovered and fixed (and some minor cleanups) hello all, some time ago i discovered a bug in the mm/fs interface. Namely you must have read rights to execute a file. I found this is a conceptual problem in the interface between mm and fs. mm does an open(name,0) and an fstat(fd) call to check the permissions for the file. However, the open call can only succeed if you have read rights on the file, because mm temporarily switches to the users working directory and the users effective uid/gid. The problem is fixed by doing a dirty trick similar to that used by mm to tell fs the address of the data in a read/write call : pass the access bits desired by mm directly in the open call (i use bits 12-15 for that). do_open() now recognizes this and take those bits instead of calculating its own set of bits from the given access mode. The read code has been modified to allow read on a file with only the x-bit set. The user can't set this bit in the file descriptor, so this should not do any harm. Another problem i found was with mounted file systems : the file system gets bus errors when crossing from the mounted file system to the mounted-on file system and you don't have the permission to search the mount-on directory. I found no obvious solution to this, but the bus error can be avoided by an extension in a while condition. Ideas for soultion, anyone ? What happens on real UNIX in this case ? The cdiff set also contains some minor cleanups i've done to the fs code, mostly inconsistent use of sizeof(super_block) where SUPER_SIZE should be used. uuencoded compressed cdiff file follows. Copy to /usr/src (or where else your minix source tree is located) and call patch on it. Regards, ========================================================================= " This space intentionally left blank " Kai-Uwe Bloem, I5110401@DBSTU1.BitNet, ...!unido!dbstu1.bitnet!i5110401, I5110401%DBSTU1.BITNET@CORNELLC.CCS.CORNELL.EDU (or other known gateways) student of cs at Technische Universitaet Braunschweig / w-germany ps: i'm no longer able to post things to info-minix@udel.edu directly. Has someone mentioned similar problems and found a solution for it ? ===snip===snip===snip===snip===snip===snip===snip===snip===snip===snip=== table !"#$%&'()*+,-./0123456789:;<=>? @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ begin 644 /usr/src/diffs.Z M'YV-*@*",#/GQ1LX9=RX&.,G09,W;D \&4,'A(P9(&#DT$%CA@X8-D#$R($Cz MAX(6* <6/)AP80(C<M* </+&CD4:(FGHF%&#(\Z1)14$'$JTJ JA F/,D,%"y M:0X01!6 F HBC9N*8^24"4.GS)<V;\B4 =$CXPZI5*U6E'-VJH(05%^H #$&x M39DQ:ZJ: 0%6[$ V8<[, 1%&*P@V9<Z$80/UQ=NT>U'T'6L"A)\G7Y@4.1*$w M20H06NG4D>,&19$D3JQT3M$6!-JI<O5*_#)$2I$@5*H.GE.&#@L0+".B"3.8v M#AJM8^$4#M.F=QDY<WZ_,?[\3AK>(.C<>=/XM6S)82G/KGV;RN<])U,J9>H4u M!$J4WM72U<K5ZV2R9N-?!=WZ,>RY==V55QI[W6<&8((19AABBC&&0A--@*#<t M'+P-%L888Y1!(0ABI$''8%:!4(<;=?!&QD!IE,$&&7-\IH)C<$U%( @HW($&s M=R&4!>$74$CQQ!!?."$%""94=E]EEV6VV6J@]39:::>EMEI_5($0VXR8D8>;r M;B#PYAMP" E'7';'E9'<<LUU!9UTU,EA'7;:<?=B?)$=.9YMN)V'E%%\[BF2q M#38T=8,,4 V%UJ%5QJ95&V' 0>988DQ'QQMM9+<=AQX.]L9>FR(XV)PQ8OHAp M?I(1M\87'7[XV61?-;I%IX$-5MD,7;3V'PA3F"F;&6D@!H)8<V25!AR3RD&8o M&R?RRH:C<[ QG86&A6%'&+V&(09B+G17Y8PHT&AL66?T]H499* PV^I1D<Dn MN;^9H.P7Q,J1PF<Y2K3$9Z$]B8*\_;WW9Z QW%"#>^\AZEJB<RW:Z*,<2DJIm MI=RE"QRG!\;:7:C<VLA=#SHVP:./0 I)9&6P)H@D9IIQYMEC"4A<5JESG)KNl M9R4/YH,/(LEP5J@J\L:RRS0R&C.JF:X:7JMPO%JQR2#0:JN5<^4ZUHS*C@6Lk ML,2^86P8R**X;)?.CEK86-)2"]BU960[Y[:1>8M?N'2,6^ZYHJKK+AGMOAOOj MO"#4^\2]38I&VKZL'3J42B_01\9"#5U1QHFY.JI41C'H$ ,.']T@$DDF^4M0i MXELM/L9+,<U4TTTY[=13#3!L'A2?L/LI0Z!+%1H06B-8-08;=?@E@G)R,.<"h M&B+@KCOOOL]1!T)R#%^\6W"-(!:O;HQE!!%?-!'$%$M4Z7U&-]R00&R,XN&Ug MU1IB72R7-F"T]L$@])B$:E04P9>&<P0V5AW-4;A# N.;2__R%ZZ!:(TP,;/*f M&7"5A2E087O=,\,!2_0<NAPD#]J*7Q6$P(0D#*$J^Y$#&>X0M^>P!8"Q\5)Ve MN'.:)\B&#-?)BPD/^ 8,C>93CO'7[%A0N_>TP'ANV%WOQO([-#D/B$),WO*>d M<T3H@4!Z9:">];"G/>Y]CRHP"%\ ^1(&\U7M5^F+2=:,=1T0M"^#:)$?_>PWc M0/V):(#_VV(;"RC!K270#0N<0@,?:,4ZBH@WQAK#!3,(A0UV\(/R$2$)OV#"b M.*:P-RL$00M?&$,0S-!8-1S##;L#NSX=3F LP$$,;'<4MM'(#6+(0U<&P[&,a MX,M)@X,!:[8X!^[4I3!=0L@8TK"8\PVF>H\#@1NF0Q>[X,6 QH+!^V04&52Jz M4D,@X($K Z>O**G&,T_C%HWV BYQ*0L.*" 7WUKIA"0PX0M&,"<47BFXTICPy M"X(42^$PUC84A+,%/OCF5\+SF<KLZP[C0A!9RH(G(J#F""#X 0BD\ 4A)"$Wx M.@#!%1KZT'&6199H24"^!E<$(02!"$8H7)7@\(8Y>"@-$,&/&?"I3Y+.(9N1w M<>E)4RK-</;**R[]C"RIR5'47+-P_@*E* D&'U.BP)FK'.@T-UH:6?XOA;8<v MCK'FH$M>,J9JOS33B8:)%6/FQ8_*=(Q1D0I-:>Z4J:;QZ93H1*-MOLV;O0*Gu M.#]#3G.B4YWLU-<[XUF&>4*FK?9<:3[CND]Y$LE; %V:4@MZT(0NE**YX0,(t ML !9$$1TH@XU#UTOFH*,HK6C'PWITV1*!Y1&I"R";6E)84HCTIHVFMN\*;Q*s MJM.\]E1*V/33YY1C',:13B8TL8D,?J(3&MB (Q@!2N=2LENNH,$E5*C#6(*;r M$XMX! 8>"9CK3-))H_AI)#5@@0Q@,,JH>$^ ;QA15Y)UTR[E80Y=:4.V0$ %q MNW1IB7) E;.."0<YU"0-P&(8&ZRR!C>*H3=W,%-$J.,=J( P/'Q)[U6"F5*Np MG8@ZH'D#,6&H%8IH#8.;8AA8U!O,+\[AO?%U08-!114;M7=?P\)G&O:I7J4Fo M(7M/J((3S ,"]$QEB_6=VC#]4D:KB"68(Y[PB2"B-K&"( %^1 %5\6,"Y3%/n MOS5<PQ9@4*M<PK;*^,4R7K8@I"],H0I0*((4IM!EJJY@!7KZ<0*X155\SN$+m M:4AR15HI1CWY"[SB)2]1?WC>").8O;XZ,7S+(-^I!/F^5[Y6EB7D7SL &)H8l M'K ;"ES VM'P8]:\8/]HF<*1\3"#//OAM/0X6*!>"\8+C6BQZ+H%*\81BU&k MPXO%.#+0Q-@',]:SC7&L8Q[[^,FQ>;15(%QD9&G5T$H&CD(R".4#2ME190%Sj MI/>K92[OP,O2U/9SQ*SE,I\YS6MN,QS>'.<GSSDR=?;!G?,LX3V7I<\]UFU!i M&&45WSH.<F607')AH ,95(X&/^%<>EJ .'XK9'0/B0AUQRL2@F-7!S5(^.NZh M&Y7#*24&39F!YLP+-1 DP0TG74P:]#"6,SA+#+V<5DRLA1AUT8'F&OI-;\;0g M9(--12MGN(Z:ND0'.=2!(J,>BPK$>!:&RV@_:7A:&?"@IHC U^A(7[9?5 Wf M/ ^Y#"@0*?RF(H8ZF&&V;V!#V..X1:ND?, LYY#9S5!!DJ:].W^> <B5$A(?e M[HGC1_'X#'+0%..2TCO."@,9OF#EYZP=@%MDPAL4#^D*2OJ8?E1U1<1BZ0RAd M$6$F1WEI51YW#)_ #/VMX0E0I"(6(9/2-<1?1HYUHM1G:$,RZ'FHHBR3BWY;c M)M*<P>]74!89Z DN4,;VNFR_A334RK/#>FO<M YV'SV!"E\@0A&L\!OK8Q\Ub M3]"^V)//4CA\0?,<Q@_3,TJ&Y7D]/#"& U#5,P,<%!XG?J]2XA??>#D\'H5Sa M(7F4UW\<PFVOIWE@U'E*YV3>$1LG]W8K-Q:FAWK^-0:KQRNM-QA^9'NRUSJHz MQH&XIWM4$66H1V446$-;UF4E&&XG. 9;X#0#X2C$9Q'MIE'1UTW3]W4HX'W9y MMWW=]P37]P7@)WZM07[Y9'[HQVKJ-RQ%V'[F1WWQ5SB 9RB'(P,U$"BS0R@Dx M=RN2-P:+$5$(6$8S !*_42)D-!ACZ#Y.]G,:%C><EP:>=U%X,(8V\&WD$P9Jw M<$ S\!MML&S&$A)E1%5W85491DQ<84E=$V)JZ!UBH'Q==WEKL"]M^ 5OF"&_v M<6YJUE!,\"-+\!M.\ 12H#W8="MPLU!!$"$$"(D70Q6"! =Y(&5A!HGH @?Xu M) :4R!5A\!LFQ7*;(F5%=W05T7_D-B]/,V79)HR0F(*L=6UVUBI!-P9*A8D,t MI3U'X$&?D5%G,!W<D8W31P=-EQ)62 /B90.MDW]Q$8 U](6%6!%B2(9_=(9-s M@UT9Q(;308EEH(#X 0-S"!)V*$!XJ(=\Z(=FQ"6"N$N]A("'F!!+MA>+6"6-r M*'WD)HGU6(EE<(EHEHD<Q(F>"(JBR!JD"$E2<(J59RRJR&)3T8JOB(S<-HNUq M>(LW9Y'H9F9)H 5%('9388Q$HI)9IHQLQ8SRYHQP&(T7.8U!4(U#<(T_QHW;p M6(\><A93>#M5: ,W(%XW\!0D-P(*22#>H7GVB(]E(01 B'W:9P5/-1=%AT$'o M<A"N^"N5Q"O041'+Q"&.*"Z0*)%N>(]P6)&X,I2:J)$SP9%3\I$5$9*HB%\%n M.&DF:4&N"(O;EF4LZ0.V2 :XJ(L1V(M7!XPC.8PVZ67'&(O<QI-&%6]WQBC/m MV#=E(8W94Y36F&\_!@=U$#=UV8B_8015P 3G1 2X$01].03W4H1<29'X09A"l M2(U%4(0/B8,1^9MX:8E[&9,9R9L;&8J!67*E2)@C>9C'Q&()@)*,.6ZR*)<Mk M*9DOV265:0:^B'7!Z)E91HP9A9/BEE_)Z&W>T0?&LQ=($ 164 2;. 2=L7 6j M80/A)0/A,VBXDY5FL)63")Q?&98]2)9;=)9_H988!$,Q@R)O.8]R"9%UJ9P*i M"),8N9^=^)?2.8K4"9(BF8H&F)C<J9-X\9B1.9G-F8E3,),U68S*]Y[D!II_h MY9.C&1A!62^H28VK>6P)X)JPR6TH()L@0)NVF7VYN9N]Z5D)NIQC05"G.)Q%g M69P9=9P@\(A(RJ%YZ:$,]9PA^HDCZI$E.I@G:I@EB6O;>4'="9\K"9Z0Z9*Yf M&*,,-:,T.7[NR:+=]GQ50I]3D3OVB9_Z^2/]^92!)Q TD .!PCKE92C^TJCBe MV*A/88X_EQA"5T&7B71^"A5]JIYC)I]5 G2;.E6_B'1EMQ<JT(A/8ZJ+-E4Wd M(@=P>0?Q\ALJ< <#U@9GL0)4,7551W3H*7>LZJ59MG8^!P)Z '/8<9I\2:8@c MX*NCY*NBB6>,8GZ0^%+>81QE5!;5ZI;P)9YAH <0409.*1!MT 8O\)J]XB%Yb MX%LP 5RG,URIPSH%ISG*Y9_INJZE-6!T\*ZC$Z^F(US$I3H8AZ\*IZA^,@.!a M0@-::"A5 JS/$1$F-$Q4<HX2$28,\T6H!E^'Z"$BR$R 12[X$1Q'Q1Q>L:J_z M(4N?85:V51HM4+%OL)G<0A W1P?AA#==@BIFU[+3I!PH-P8H( *+X2P)1@81y M9;.': 9F\S@BL)%!4@5-('8-.!=/X 9L@$% 5P> 82Q811=<PR%C,75W\9J/x MTW/^PK LX+ $&K%4-[&6) >D\087>RM/H+$8QK%=X['L2 <A^QW;=")E8;)Nw M@+(\:P9\:"K1)$TQ8'P^>U:P!+,R2[.1H;0XRRX[NZJ/^QE "X=#6[1O<+1)v FR[<#T;1D\+1_&;536[<E=[59VR1GP+6X]+5>&!$'9DEX4+;KU7-#u t end bang: {any internet host}!dsrgsun.ces.CWRU.edu!bammi jwahar r. bammi domain: bammi@dsrgsun.ces.CWRU.edu GEnie: J.Bammi