description:
(reduced version of the universal 'interceptors')
_SAFE_ way to intercept system calls.
Two exported functions:
previous = register_interceptor( handler );
unregister_interceptor( handler );
Goals:
checking or patching something without a need to recompile
extending modules functionality (for example write notifications)
Characteristics:
Performance fee - few tacts per call :-)
Tested on i386; seems to be stable.
The patch is against 2.3.9.
Best regards.
Alexander.
--=====================_1997653==_
Content-Type: application/octet-stream; name="intercept.patch.gz";
x-mac-type="477A6970"; x-mac-creator="477A6970"
Content-Transfer-Encoding: x-uuencode
Content-Disposition: attachment; filename="intercept.patch.gz"
begin 600 intercept.patch.gz
M'XL("/8%@C<`"VEN=&5R8V5P="YP871C:`"E6.E2VT@0_BU7[3MT*LF6;\OF
M"G:@`,<D!".SMDEV*YM2"6F$M98EK0[`F_#NVS,:'=8!"3&4CNEC^OAZID>:
MH>O0"EP)3,,*[EN]]E9[OZ-[G0ME273#).%X>J32:K7*N(53UX"/@06]'>CV
M^N).O]N#[O[^?J71:.15"?.`(+L)L`O=W?YVM[_%V8^.H-45FWO08->CHPJ,
MY?GQ]/UH#OT#H,+>VO/)RFLKE#0Y^3@#_!W`J^H_MF'A;79U(K\[F\YJS>2Y
M__J@\[IMUVH5F*35>6V[TIJDM-@.L=HVN$31Y#O7\`F^:.364`FRLNEE7[DV
MZ?!UH.O$Q8>_*XU?56%8/G%5XOA,'0B"%SB,`->FK2YEE,<7SU<H`[DG*MX<
MPZ$Z+&5%#*I8M7PS$C=LE;U0(S2#*O*(252?&:#;>*-J(WNBB')A3574!6%6
MV1J]*[Y/55RC0]'0J^K)F71Z,9_5H**582GQ2DTPD!HL0E2*+,P7`7Q4+(`N
MB%M]4<1_1,F>N`FJ#8E-7.WU=W827(E-$6'5[/:V*:X:G7JE`74HM@PIC%H=
MUI@".#;)O6)IQ(4+Q5TKEKHPU"54=[>WM]YLO_FM%DET*HU*XZ5AJ6:@$7@;
M*E\I)L:[O3A,DQ1OU?$<PZ*9R)!"J<0>2J5_G7K^![.UIZ+^!$.VZT$!8VB9
MA@5H$9C]-1L>C\?R<'(ES=%#C"FY1WD+;FU#@SI"0J9:0ZA^^3J@PO[:(2B/
M.'0#U0<OG%CFK]\J#2$4!CVP5)00BAGK8.%<C,X)"XRL25R9T@P-*0\9&=EG
M!M`",-0<#:6BH3@(\&7#Q:]8F-]`NAJ/X6&0*.+AEQ,;Z2ORSB[/)'D\&9[+
M5Q*]C=ZE#:!NUK&X;@PL'%?.36Z[52CPC3\V::J@3ES7L@&!DP2N[KCD%F>G
M=M+X!)9GW%A$8P(&HN\>B5Q+ZY`-I,.8Q,-?.1ORIFW=@&XJ-QYS0S!TJ'*%
MAP<9,-18)@5NWP&,SJ1/Q\P<P25^@!")S'N(-+V(;>*FP/?O\"*#(3;=UR+U
M\VF)=NH;IH@E13;<?SWEEE33F6J&3M68/#,EEXMHWH,PK-'\`H8(9U^&I8ER
MQG_$UJO94-::\/[T4CX?3:41R@XB48R^EDH4'Z.XQ]%"QU-L%/X;PN5&`\\D
MB[7`X?%[&7]H09CB7W`P\8_G-1GE'F;SG3!PW\HL9(Q/NLN9"M!3/#4#26!%
M,'&)AR58CI08>R)]X["CL:4K3ZK,:=4%UG/+/"KM?'6FJKP)==S;\9K!1''E
M_N""\%2!IXJM%5?W3]7:-<;$"@M)8[X\FN^[!3895=H$<7Q$-<B=C@EA-3#;
MHR`><#+"D=DM"-?8U"Q#3AY(C65.B&R)-3W$JT(X4;0",-Y$#=//@4T9XRH2
MA!59J<Z:F=YDM&9I'4%J$0KMVIBN#,[QY&S)`V)ISP!TB8]QCJ7)N]$GRKC4
M74(X:RT%?C%"?DF/,;IW;-='W`66<4M<3S'ASE4<[%'+6XW,)KE1-3^V*::!
M@/6.@8>W4?Q3*FH_N65Y=X:O+J`::Z9]3:A"53P"'^8R+YA^2L/CRT`UMP[4
M:[%GW"DZ/[9/2F#Z_4USI0E.6&(N2TMF)7HBEO'*\RQ'GUKQ'G$U[V,*@MQ%
MYE+QD8'WOYU<^PO12`D]=Y`HY?R1,\4CPIO'B]V^N)<[7O#3Q4M#MVBOC-W-
M:#H<7<[E#TGWO3&8]-4TRW0ID'VZ=N-:TVZW64B)%:R2/",W]K*8O"OI7)I\
MEIJI1$*GSEZ''Z98\NSQ9'R>>IR._F"/TF@>C9[.N(:+D\FXWF$-<J[9E^7\
M3L<PAN5(VV>\T>SF+:67XJUK$/>]R5;^D-]0!P6V/,^&!T@KS9QXGKE2#6(U
M/UNC@_1Y+-Q0-3L9P9T`PHU3K#%.',`%L5-/HX>>-XMK:8DF$;.S]-9XL(^.
MWYN#N:K9)`N?,5GTF\Z6"+UNO[>#@,]^T\E(9.I#[&^GCM];^\U=:.`U_*R3
M/>VJMN79)J%GW1S-L4VSD+!:/7UR!BJF0QA6K3J<2*=G[^7+Z62(R*\53.;:
MJJQ[5)2:W1-WJ-T]<;?YAAD^^O-R,HW*I>K[:SG.N>;2W1$S6\"4@L9C;)ZO
MR<BS,FRVM6\R%($KSU4,0CI=A<*'?5'B7Z0@-`6\P*$;/(53QJ;P^Q/]CH0*
*_@==XN@!-A0`````
`
end
--=====================_1997653==_--
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/