Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!udel!mmdf From: v892231@si.hhs.nl (Edvard Tuinder) Newsgroups: comp.os.minix Subject: Additional group id's Message-ID: <52461@nigel.ee.udel.edu> Date: 2 May 91 16:51:02 GMT Sender: mmdf@ee.udel.edu Lines: 223 Hello *, This patch is an implementation of additional groups for MINIX. It is possible for each user to belong to up to 17 different groups. Being a member of a certain group allows to execute/read/write files or directory's belonging to that specific group. It is implemented as follows: mproc and fproc each have an additional field, resp. mp_addgid, fp_addgid. This are int array's of 16 fields. The groups are initiated in mm/getset/setuid, by calling init_group(). Init_group scans /etc/group and sets all (MAX 16) groups. At every group it calls a libfunction which checks if the give user belongs to the given group. This function returns 0 or -1. Every correct gid is put in the array and fs gets informed about this. Posix limits the number of groups to 16, so do I. All empty fields are filled with -1, an illegal value for a group. The existence of aditional groups is only checked twice, for executing programs and for accessing files or directories (~mm/utility/allowed and ~fs/protect/forbidden) so not many real changes are needed to MM or FS. The groups are initiated at login time or whenever the setuid() function is called. In addition to this, a little patch to chgrp.c/chown.c is required. There is also one new program, groups. This prints out the groups a user belongs to (or another user). Edvard ------------------------- cut here ------------------------- table !"#$%&'()*+,-./0123456789:;<=>? @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ begin 644 groups_sh.Z M'YV-9<:@>0,"#X@6()(XF4(E"!,F"N:4(0/BQ LO6%[,><'Q! @?"16.G# @Z:-+, 6$F#1N;= BR22/FQ1N<9>2X #'Dy M31LX/FVFH0,"Q9@Q!YDD$7*0R)5)%RI B*5:&<4,Qx M#!F*4V\2S/.FCAP00\6,<1%FY4J!9^3 @4DFC9F50># 89/G9LZ=CL7!&+%,)>.<0KU)V>Z($"+#L.@Y3LO<09.TC(N51J*V>9,Yv MS9@P=-*\"7U[8!TV%,64T6$:S7"*-&K$B%$],9RJ M_<<1,7R\K$?>',@;FRu MZ=.HEG7RA#^7XO":L:D&!?&BSAPY+[#QQG%LO" &:$L-85T9;>2G%P@XQ)"#t M#+^9A\50;4RUWAB9K00%<@+%MU-/KH'&GW\ @C8&&W60X5M51)1A1AEN3*6>>VA,=<99>RTGQ%3K(20&7#(,2!CCH&0X1R#<5CEr M&W#02.5F41X5$!U?>@@B&I;91&*2G'DFFWZ\R6'3&W*D<09HM.UDHA]FK >"q M% &Q1A]L;82QADUA@."&;BOU66&11[*Y7Q--. E"'7X* )!T2D:GEp M9D])F66'6'Q(1XA(S??33IU]%AJ58YYUNY!D;CGZTT<92@*[VGFOU66DHo MHHHRBH6OCV(A1!T^U97L';$5BN125/ &PJ%R+&K;HA,I>A0(TH$@I["M3;24n M$T?EY,89L>TD4*1DK(24G,TFL1EI(!B)7YAB_-3&3G=,A28<9X(&[UR5Z9BFm M1*XFR0)G\+"@0T4$$'_5E$l M$$0T441$X5J$D48;IU(*.<=*)H+EA%C-(JWG4P)OG=QRYI81![1R*JDMj MPJNB:0;&?=Y&$$[(@4"I:5>;(6<9E($@UU5L,ARQ@W?,!>I2A[KH4)+!@JS$VB;?%W*\;<H+ ^\Xg M%J+1&:Z)5X-&5[,Q0!S>,@76[LE(;e M7O"I4,$$<;71FU1J1(71(RAQT;"Z-_T.!C,R0QA"R8%%WL&$(6^"#b MQ'R!>6VH(@Cz M,'=XP1&=&I.K,)XO3(D)P\# @P;O'#&"50S9%7BS*.EE+#"7!&(1>0F"&$P,y M-%.Q(1)AR$6>$,Q@Y\MC;;[0)Q1,H0A4.$(2B,""W;SAD+I1)!D8Z4A#MN!=x M(4S!Q)X'/(CB98A!H0,#K7:&"CGA3A91J)*GUYPI3&\0)A?w M"-6V2'<'O14N+TK#46=V)9HRV&4E#KO:-/%D39!6:)PT2A/P4F83TEE)?08Dv M%Z8RUA/\Q4M<*O7)3RBRL33(B3(30\I*Y%0H>+[K?M#YG9JT&BXW'H0[^XE2u M]#;F/SWR1$H-^E1RSBJ:^+W+)H<1U$_^XJ(NT85&=3G#Q# 6!L\]J%4P>.5Bt M0@;,(39VDV-;7M:8YP:-LFY\M6*JX)A7G4BI$@0J[$^FII*'%VQ1/!.1"VQ6s M&J8\GO %WSO079+ZO>JXA(Z];55G\L7,G9".*HOR7,HJLQ_5]4^-#]*0K>R$r M)]D)_!0Rq MDI7L9"FKEX50^X7^^O>_ ZP@ =,X (;>, KX0\(3(8RE4T26H?]"VHGS ,[p MX&!",IA!#( PAS2X UH6(\;V "2"9=D(@TF Q#$$# ZV,$%(W9!&^IPAD61o MB4YG D7$LP'$$QADR[J+%-8@RG=36$,4S.A31""A#!T!F)(> .2L#20-]@&n M(=FR29//4 >;9!D$3BABG-A0GYWP00$L!^; /5L)G$_K9)CR PQW$AX9!6\A]OOVC&E%@/18X$I+El M@;3U=M#'E(% !2JX-(,XC84])!BU?:W#">L8ACG,8=&?5C092#UA2*NA!S"@k M-6I/74=8]\")=%"T]2@=45V?;\*U@OY(IY5,1VME&[RVZA( 8I(#6Oi MZ^T&%, @WROI YI;%AZ8M;F;J!D5SN)\D3GWS",@.0 4"(03AGTX(@LVV/K+Xe MW J,O&+\.I@*$720'UW]Zc M9&QWS-0HTEO5A:UUDI6@?)@W%YN^KS9UI:7O53 R<%%D/^4*0\" 0I RX"$@b M1>;NFK [U;S,6#2[HPH(];OZWR= 2D>Q8MWNYE4V'4=.)+1-E$;I$SO9Y(QTa M% +'QGHL,Q8#6&@KTB*(-@=YL!&;TB7KT6A-MW1+UW0[]W0SD .?AG&G!FDIz M,DTO;v MUH=P@ )_" *!B'!P0(@@8(BP)V^*6(.-" )&X!#_)(65:!,JB%H)P%[N8P;>u M1@>\)P> 6 )[1$'/(7F*HDWAP@6=N(C":"L@((P2)XQ&IK6(*%=X(IF(>U)F0_.(,O>"DS"%*+98HWB!PYs M"'M2F&JK)H2O1A%%N&A9F(1W,&P2U83\&(;S6(95.$]7" ?[^(6%MX3_Z(5@r MJ$U1R(/TJ'Z>U8-J:"0DV(:A>!N:)X=TF'AW.&'G2!&_]BG^.(GGHX=54HMRq M &Z9N(G#.(B%>(@@H()ZF K.9*S8Y,3-C*RV%F7:(M)@8LBD 5]P1D5-2ZOp M=0?ALA^"Z ;+2(@H"8L)X'U3@0(M@&]3"0()(' KR)6+J#N."(F22(ZHU0<:o MPT52$90MZ8? "(@2!XJB^&^G5HJ,N)&IR 2KR(.M6)-U^9-T0(NB<8NYN(N0n MUXL7U(84@8P#,1[%B#&,Z1W*R(S."(QB2(&8:8$V\'0W8#]3AP71> -/EP-8m MEW5_N7] 68N$R8FZ2!TEM 8TA2.O$Y65"6^Z5I5X<)5:R8->V7Y[:!5^A$:3l M-I*6IA@,-6Z8%FV_QATF8 +F8CT[Z7M<"9A!29A%>92B=5S] TFSY#6MHHN2k M19O><9SN9IFDYINX>959*8:^V9L3QH.]A0)IL)$RL .Q41)("8+VF0;G%IT&j MB)-!B1QS&(Y;D ;I!@(F(!JS(VUOY9]4N9)A*0<.RI4C8TJ_MFX^T&Z;E@ Oi MD'&(1(-WJ0(%2)4) %(;*1HN(!H*M0,2:(6VH,I6D,;VJ$:1Q%/*J)U.3(F6I+&V4CC!E(L:J8?&J-Kf M*G!I5G!LQA/P529PAA([0V<^ Q+L-244EV=%8X$ORD]]B@8)<',X$AE_P7,[e MIW(R8 ,Z0 .1)2%&1W5\:BH?]J@X)ZD[UW.6*G0TT'*<>G18@)D4:($L!W4Ed M]YG1&*L2;H3(O< < -!O FQ0(4)+,4G:LAHCU5L^%2+#=%7*!!K,E5(.@I%D0!F.RWCATT9Tu M@A/)EK*%3NQP:)1L9 T\Ut M=$/IU#6]Y;UIP#5G91?'1QO3EWQ+ 5"P)WNT!W-;)Z.GAH"'QHG,@@8B,(&!s M*[T8!P(Y '4TL(%,!YJ)&P.%&P,EU[@&:+\*B+^-NK\-W&VJNr M9P1/( 57$ 120 0@8 =OH*S>*T_I$9$&V*&&V,(N_,(P',,R/,,T7,,T++V@q M:U\P!;;VE6TXS'HV',1"/,1$_,+HVK^?^;\T0 /5J(&(BQ T@ ,L4 ,#S, Dp MRF\H4 104 12T 1B2)7@ P>,]!31ZE,LHJR_AB)?$$*W^7Y/,<:_&JQH[#_Co MQL:N-S(G_#HH$,9?3*'ZQ ;\- ?^!%!5,%"==U!TO,9D (/_HT7(1#?D2SR6!3:L,S:OLQ-!%7W0^WI,$FD6TRK_k M1 0")<+/\W>M,D@FZ@.^E!";<5SO5%S]HSHM\#KKJSWG_+&K)YV09E&XQ@)Ij MT*5D2(54887>P=#GXYO>L9%:*">=I<*^.;Q54=$,RI)F:(4I$%G-J2@F>A+Pi MBA98\ 7S6J]5<*_YB@7^Z9LMN)%G!$A)L<=O[ -D+,>+/)YP2FZ1)-$MN&UIh M,-/S9BX[3<;M&D);8%'0YJ9B'-1R*ITF]L>!/,@!9<@&59Q3[4CL^% @5:7Sg M9E$@<&Y$#0+N:6(579)/A-%TH-$3MM;87%E8$[R6LQ2V%">XA"ANP!=EYTS>f M!WYY] +@98PR.Q5K]2I6[:*;<4.1A0+ZDC'H$A6$)2.@$3DX FF153B5_1,Me MD!SP-M $:-72R=&:>-(@D-+R2J_VBJ]-H*^S4Y,3G6UA#,=?T-1D\-0@=6Y1d M_59IC=7]]$];35!=#=1@[5 61=9J+9V(!4497:5X2G!6&S/C_&9;&Z@/]S/7c MC6=$DQ(K8:;='3.H^=!(=%JU$R*X\S^GU#L)AL,9%P:8TC34P6#Y]6"@P7OOb M/3(6AF$:QF$>!F(BQ@;[796XIV(LQ@8N!F-L(&,T9F,N@&/O/:*$1L%_-IC*a M(6@5;F@/S ,,Z(!Y ($:C@4._&)--;&1J-J^:/9%J8FR9!Zw MWM; MH5+J(4,V0Jv M,#M.4 4/$>E%715'S8,FQNE5(0(@\.D3H^NC#NRE_M:Gu MGNB\)NPH( )1*8;3K68&YT49DZG,F]^XH-\#TGLD%_+\U, -3[,2:s MC%HCX"(]47:LO=*QO=)#$ 1.\ 1.<($U,*P=I@=SLAFM$D#+81R9Y09P,%5Wr M4P9=EK,@L/"8[?!FH=(Q_04* 0550 48/ZS\XDP/:!-!1W0C""N\81FPKG&0O5'o MVT[VLR;D;%A#+_n MO_A)L,5?( 158 2HI1TR,*Q0 8%M5"=Y1,Z;@?KDD@>O;R7^0179%Q09@A7Hm M&HT%?_"FG(T-C/B>K_@Q/_$5?_&0;Z8;W_&4/1#_ZI> 2%\;"^I8+^ME_A@'N.C H[O HJ__B'Y*%]EP%B8i MK^?Q/PA8 M,"% A]2H_TF3X0@/I47QI@?8FM]CD,V2<&:!^;.#^X#U'H/N/Ph ML02>_S);-J!PV8!9E?"PV13(#=Z)-T",%_6+F,=.,!*2IV/ICG)!_"C"\\ 1g MVNGS+841" KWA?0"F#!YB6UJ ,#GIX<.! ^B&"Y 8 U2^S3O<,JH^-[$"UMf MI<&^$@FT"0+PI<$V?974QIX!E P(4*-8EP5(!(R+4D(9/D'[N 8VV/EZA!0Xe M O-OWFBJ') !S12/*()"T&H4GIVP>FB$U) 2. )V?9\QP$8XH?L; D@@"3 !d MKW !6=H3>(-)( Z:&#.E-L0"Z7D#;$([_4&!$"TP&@VT"130 C+"1KASZJ Ic M#(&Q\&.PP VX$Z9>_L,/O2]Q14$6, 6#WZDQ4U>0M#@,I+ %+4@;^H)"3SJ(b MP;] !CN?&20G@% -/L/5Y@;A8!*0@_.&#MI!/ A&*L,>; -]$-PAEW%!(P1Aa MN,!^Y.@0@AG7I@A#(=,KA?[J HL28BM&*!V6EF?@^M292J ][<\%5MD6V^Q5%4JH"-Tw M8,"\JXN#"XE9H*!#C8+.X:J""2 P3361Y=,V4E6P'KUJ=@P2G%;'9@UOXD$Kv M:6%I#S?G8P#*._-/B4@Q,A+&"*[F6$<+(9&16!$2[Z#(4%)BA!*C\5=)JS9Uu M&KO5[)!6\N17_3D3\Z5$TCJQ-Y*LCWFE:$086<"E8ERY"A:)1A] &DF(:20Vt MME$U4L;6>!E!UK;1C%N$,Q*WS_BC;M)*FHRL45G9,]#(E2;,Z4JCE/,I&,T8;EPUJI .WT8SE1O>8B!2=1"!'\/$FP$;F^*MTVQ9Hr M >Q1-Y*!WX8;PZ-EU%6]D=[\QGX3'%G9P+%V>ZI4&*H.P>VXEJ"".-(,5!VJq M[Y86S=9:;%1X<=_M+1IP X!.R:%WT4A##@9'Y195Y%YDD2NGW0%&)PBKI%B&p M"66>2H$9QRJ6'"<,9*0*/4TS""N3Q0T]PKC2(?C!E&"_9G4?I5D9HPWABDD.o M",[E$:Z5B9J2W.I9)4DSD"4SSE6< TZR6$%)F_ E"Q!%JY),[2ZXJP!($<.>n MON)7C]#L)<#*T.,@HJXR4T+ _(0!V-%;.DR-R1-K<%N5$,CC-*RDG4@O92!Hm M91SNP'R8PZ.$*M3C4=*&B1%9*B5F6 Y0:RMBR)@Q%9_7MLMN#F;:LOR)S5)C'"EH63=^0JN9(<3A1?B_-;=$7@:#HA1Ei MH5X- 98F!1"4<]*6OX9;EKD$\"TKEHL8EW"@7$[(/78N+Z2>(F]2PK:$+<>Ph M< !5JOQVM65,L$J+4^XV3L@\(7AKW>E%N"47662P]%0G4U3PREG),FG RGF1g M.W)8;K*F9_"N#G?X3"9F);T^,H7&?LT4J )?H) 1@0G%,)-"&_@">' GZ* ;f M((7\HRL"D$(S21!-DO1KZL142P.%A S,#J;A&*C"K[$!DA)$Z8Y]69467=94e M46VJ:_Y 1@(V3=38S EFP&Q*HSF5<>S4>^Q+9#-O;J1<8U^&5;M8FS*J:8(/d MJ"E=5EW4_ @@(7#B1P0%>ZAF==PU]<[J]4ST9PZM8U48FF%3.R)-IW B"S34E[G=)FBI3/>9,9%V.!E)-.S:+XMN3Y-14*(BJ/U/!Uz M0L_8^?3 V8T09P8I<9I.QDEW'*=T\0&1$V].3N<$=JJF!JM:71$A8(K^LRG y MHL?T=B!R@FH*3C$B2:9:W#@:E+6DS+SXMBQ5BZP!FPHP1J,06D%CIE'Fs M(41S<*1V^#'*6CHXC5X-%HMT?)0!^=r MI8 T*I"!0>HD?2Z2M=)'6#4?J:2+IU9BDL]"26E$>N?CKY@.D:Q6,OZIG\RXT@!.X$&W@<9p M4 .W+V-(2Y0A9&2*PS"=.H'&X8BH64OY)0I8:G%,219-9YJTZ.G6=)YZ$VUBo M2^.Y;4#JMR*3(W4.S%,? #$3P?J/ST)_!0$^-.*$U EJV.--V84k MJJK5=XE:S-1"-1T.%:*BGU8Q4HV@34INRRI[&i M;WLNPNZY5:=:G"0#[DI\,JBL9#"3Z[Q!G]#S?E)#C^I2PV=O0S><<;C>UL1Jh M/[WK>#VN.?4K84O9:EU#JG.LK425BQU5+F8PC05395!.-;/:F\T:6[?-85VOg M5G6D(-"L.CNV:JOIJE]5:X;5GT!1<9]939P&5:KJU=3:5NG&6\TCA%!7S=7_f 15%?OJEK=L.!#M=*-(/-7MR+5e d end ------------------------- cut here ------------------------- `` Life without gin is like a guitar without strings '' - Eddie van Halen __________________________________________________________________________ / Edvard Tuinder \ | Student Computer Science - Haagse Hogeschool - The Hague The Netherlands |