sane-project-website/old-archive/1998-04/0175.html

255 wiersze
13 KiB
HTML

<!-- received="Fri Apr 17 11:28:48 1998 PDT" -->
<!-- sent="Fri, 17 Apr 1998 20:28:36 +0200 (MET DST)" -->
<!-- name="Oliver.Rauch@Wolfsburg.DE" -->
<!-- email="Oliver.Rauch@Wolfsburg.DE" -->
<!-- subject="readproc for SANE" -->
<!-- id="199804171828.UAA19949@Babylon5.wolfsburg.de" -->
<!-- inreplyto="" -->
<title>sane-devel: readproc for SANE</title>
<h1>readproc for SANE</h1>
<a href="mailto:Oliver.Rauch@Wolfsburg.DE"><i>Oliver.Rauch@Wolfsburg.DE</i></a><br>
<i>Fri, 17 Apr 1998 20:28:36 +0200 (MET DST)</i>
<p>
<ul>
<li> <b>Messages sorted by:</b> <a href="date.html#175">[ date ]</a><a href="index.html#175">[ thread ]</a><a href="subject.html#175">[ subject ]</a><a href="author.html#175">[ author ]</a>
<!-- next="start" -->
<li> <b>Next message:</b> <a href="0176.html">David Mosberger-Tang: "Re: Minolta Reply (was:Public Relation Department (Ref. No. CR-3255 V)"</a>
<li> <b>Previous message:</b> <a href="0174.html">Hugo van der Kooij: "Re: Minolta Reply (was:Public Relation Department (Ref. No. CR-3255 V)"</a>
<!-- nextthread="start" -->
<!-- reply="end" -->
</ul>
<!-- body="start" -->
Hello backend-developers!<br>
<p>
I included the readproc routine into sane. It already works with<br>
the umax-backend.<br>
<p>
I added sanei_readproc to sane-0.72/sanei with the function:<br>
char *sanei_readproc_get_device(char *findvendor, char *findmodel,<br>
int findbus, int findcha, int findid, int findlun)<br>
<p>
You call it with findvendor and findmodel set or<br>
with findbus, findcha, findid and findlun set, see example!<br>
There three differnt possibilities to specifiy a device in the config-file:<br>
SCSI_ID: 0 0 5 0<br>
SCSI_NAME: "UMAX " "UMAX S-12"<br>
/dev/scanner<br>
<p>
<p>
And I added two functions to sanei/sanei_config.c:<br>
void sanei_config_kill_spaces(char **string)<br>
char *sanei_config_read_string(char **string)<br>
<p>
Example for reading configure-file and using readproc:<br>
( you have to #include "sane/sanei_readproc.h" )<br>
<p>
<p>
-------------------------------------------------------------------------------<br>
<p>
fp = sanei_config_open(UMAX_CONFIG_FILE);<br>
if (!fp) <br>
{<br>
attach_scanner("/dev/scanner", 0); /* no config-file: /dev/scanner */<br>
return SANE_STATUS_GOOD;<br>
}<br>
<p>
while(fgets(dev_name, sizeof(dev_name), fp))<br>
{<br>
if (dev_name[0] == '#') { continue; } /* ignore line comments */<br>
<p>
len = strlen (dev_name);<br>
if (dev_name[len - 1] == '\n') { dev_name[--len] = '\0'; }<br>
<p>
if (!len) { continue; } /* ignore empty lines */<br>
<p>
if (strncmp(dev_name, "SCSI_ID:",8) == 0)<br>
{<br>
int bus, cha, id, lun;<br>
char *dev;<br>
char *pos = &amp;dev_name[8];<br>
<p>
bus = strtol(pos, &amp;pos, 10);<br>
cha = strtol(pos, &amp;pos, 10);<br>
id = strtol(pos, &amp;pos, 10);<br>
lun = strtol(pos, &amp;pos, 10);<br>
<p>
dev = sanei_readproc_get_device(NULL,NULL,bus,cha,id,lun);<br>
if (dev != NULL)<br>
{<br>
attach_scanner(dev,0);<br>
}<br>
}<br>
else if (strncmp(dev_name, "SCSI_NAME:",10) == 0)<br>
{<br>
char *vendor, *model;<br>
char *dev;<br>
char *pos = &amp;dev_name[10];<br>
<p>
vendor = sanei_config_read_string(&amp;pos);<br>
model = sanei_config_read_string(&amp;pos);<br>
<p>
DBG(DBG_info, "looking for vendor=\"%s\", model=\"%s\"\n",vendor, model);<br>
<p>
dev = sanei_readproc_get_device(vendor, model, -1, -1, -1, -1);<br>
if (dev != NULL)<br>
{<br>
attach_scanner(dev,0);<br>
}<br>
<p>
free(vendor);<br>
free(model);<br>
}<br>
else<br>
{<br>
attach_scanner(dev_name, 0);<br>
}<br>
}<br>
<p>
fclose(fp);<br>
<p>
-------------------------------------------------------------------------------<br>
<p>
This is the snapshot of the readproc-changes.<br>
It overwirtes/creates the following files:<br>
<p>
sane-0.72/backend/Makefile.in<br>
sane-0.72/include/sane/sanei_readproc.h<br>
sane-0.72/include/sane/sanei_config.h<br>
sane-0.72/sanei/Makefile.in<br>
sane-0.72/sanei/sanei_config.c<br>
sane-0.72/sanei/sanei_readproc.c<br>
<p>
Bye<br>
Oliver<br>
<p>
=============================================================<br>
<p>
begin 644 readproc-0.72.tar.gz<br>
M'XL(`*^:-S4``^T[:W/;MK+]*OX*5'4:T9'U\NO$JC-6_$ATZM=8&lt;MM,TE$I<br>
M$K)X3)&amp;Z!&amp;G')\W][7=W`?`AR7&amp;=VLZ=*3%C"UP`BWT"BR4H+)^O-&amp;J;K?IW<br>
MCU;86F-S?9U]QQC;W%BCW^::_%6EP=C&amp;&gt;G-]L[G&gt;6MV`UL;:YMIW;/WQ2$I+<br>
M+"(K9.R[P'/OZ,=#\10$/6T1B?Z'EGW)?&gt;&lt;1[.`^^F]NK$)KJ['1*O3_%&amp;5&gt;<br>
M_T?6)1^Y'J^Y_@/-T6PT-I2^%^E_=76])?7?:C0WFRUL;377OV.-!YK_B^4?<br>
MKO_&gt;V_W#0[;-ZD/7KXNQ8?QRVNF_!&lt;"."&amp;W'#7&lt;,^9N%1,%TD$+3)]DRC%W/<br>
MD6TUPYB&amp;8$P?L9^L[1C\([&lt;'*3CSN&amp;,`$0JKK,'L*4AHF.&lt;.&lt;90"IT\[AF-%<br>
ME@*K*F"X$7;@CS22Y`E:QE;('=!_Q'5K#@(S!;;E93OD`$1)2@5!7'\4*)"J<br>
M[A@32[,@:]C+]F*')QWUTXX1&gt;$ZNL1Z+L*X@AG'T\U[W#*!+E53J9GURZ?I`<br>
MDP=#0V%TCWO]#NET1U5W-&amp;QP&gt;G;RYJQSE&amp;G3H+3/7J??R7;`YQW#V.GM]P='<br>
MG9_WH:Z:]O&lt;&amp;W&gt;/=P_.]_1[19#F.TFN&gt;/D5^'=&gt;:&gt;A7_U\8,?USX_6"4J#I0<br>
MZX]N&amp;MB!`Y9A"=MU9V!@!PG$X&lt;/X(HO&amp;YU'2*&amp;R1CKUVPV3&gt;0&lt;@MH#6P%2"8<br>
M1J(V-A%+CE@T%1?0&amp;T;O_#6(OE?:9J!IB80IBMDH#/P(*TY@LR@(/&amp;$8H(TM<br>
M!O]60F['H7"O0'N&amp;4M,64Y5,8VFI0LHU07:I`9A$AE$"\Q+1=GFI,B]YL]QF<br>
MHR!DN&amp;0#7K:TA'W;0`MRPQBWQX&amp;&gt;S_4OH/T3=OU,?&gt;&gt;FJM5J;3DNF8L,P$S'<br>
MS0]B?_[)^$&lt;W8DT:ZP1`LF%[W/*W&amp;/UDA&gt;``==DVE@"RT@@G;&amp;7$EO^7:75D<br>
MJJ09&gt;%ZN&gt;&lt;$%_!]:EZ@4%+P&gt;N%")3.]L3$%LRQXG#^C4L=`(_F--W60G!*+Y<br>
M%/2[Q&gt;1OEIV&lt;%N?U.LO_(FY!9K-XMXP2ZE3$M+R0II0!FJC94HE4!!O7!8^V<br>
M_R`5+^VP/YG@#A/U%$^]_D&lt;[8P83ZU*:@!PIS45.TI8H*[:3@-B//\*\Z/)F<br>
M,L24W5#CMB4X`Y,\.CCLO`$S1&amp;S+E\LF&amp;UFNMWW#1;O-X$D91IMQ8=F)?2#N<br>
MB(N(K?P7&lt;"SAD+)AU$[?GAR_([_1QD&amp;"P5'W%O2LJK[U3OO_LZ3QG_:9AY_C<br>
M*^+_9G.CB/^?HLSKG];,!YWC_OI?;:P5Y_\G*;?H?S9*^EMSW''^:[56UZ7^<br>
MFYN;ZZTFM&amp;ZT-EO%^&gt;\I2GUY+B(V0"&gt;[P?0F="_&amp;$:OLFJSY\N6_V(D'NVC(<br>
MSJS8IB[]L2M4U"G8U`HC%HQ8!`%5KW.\#P#[TKK@&lt;`+470'Y16A-L/&lt;HY)R)<br>
M8!1=PW&amp;KS6Z"&amp;*()G\'1"Z*CT!W&amp;$2"-&amp;!R6ZD&amp;(""9PD!K=("SV'2`"IXEX<br>
M.!%ZSC?'Y^P-]WEH&gt;&gt;PT'GJNS0Y=F_L0HE@",4P1*,80'PUO:,0!TM!3-+"#<br>
M`!!;D1OX$*BXT!XR8%;`,<a href="mailto:VNI.1">VNI.1</a>"+PEEE$)Q5K`@I#QD&lt;'J"?"&gt;3&gt;,`].ALG0<br>
MQ&lt;RG/#H8,B$MXV`*_(P!(7!X[4+T,^0,#&amp;X4&gt;U4&amp;/1'-K]W^VY/S/NL&lt;OV._<br>
M=L[..L?]=VWH'(V#.&amp;+\BDM4[F3JN8`9N`HM/[H!XG'TT?[9[EL8TGG=/&gt;SV<br>
MWR']!]W^\7ZOQPY.SEB'G7;.^MW=\\/.&amp;3L]/SL]Z&gt;W7&amp;.MQKJ6+2&amp;X1,$:J<br>
MDR#$D"N".$Y(MM^!4@70YCEL;$$\!H$8!P-RF`41]_3F;L4A$LL+(%Y%)J%S<br>
M*L8V&lt;T?,#Z(JNPY=L)4HF%&lt;I#D^U6F5=WZY5V?I+UN&lt;@(LY./&lt;OF;(7U8L2P<br>
MNMJHLM&gt;!B*`KR:O#&amp;A"$-%=@*]JLLO-&gt;1W*U7#&lt;,&lt;)F5ARJ$\`=W!%8]FG'$<br>
MP=CX`:`N!,MS#3!$KM;L)W$CZM'-E,/Y]546K%=Q!!L&amp;_PAVZ3-[#&amp;O=\@PZ<br>
M".OA&amp;'T%4J_(=IC3`7MR@K#*4@CX(/=(.`N+ZT&lt;,NPUC44T&gt;8'3ZX#IIW8M]<br>
MLPULP"R@RKE%:#`FP7SKQ?$?4+ZX_^N3\]^&lt;XX[]?ZW94OG?C4WXOPFMZYMK<br>
M&amp;\7^_Q1%N1XNA+`%PSK,.K;-A6#'P37;M\1-;6$XL,G^S4&gt;PC=^P7HW676=B<br>
M^4544$0%_\BHH".`?C'EM@OT\H\VGTKL.+T5@RY",DER@0M,3DW!2EU!AC22<br>
MMFPYCHN#``&amp;<a href="mailto:H.%22%@SQV">H.+%@SQV</a>&amp;5N@"`-9BD*.OS0/8#KG',0&gt;G,&amp;N[XBD%:%AH0%64<br>
M#/J3Y_J70"H1(E'?2#D&amp;9-SHM^07(#H0JA.#+,`#\?5*'%E#CU?ES$X`!(&amp;D<br>
MT6O&lt;2'!O!)X*9&amp;N'"+F(O0A3C&gt;E0Q#G$;"NX0&gt;<a href="mailto:IO\XK..%2-">IO\XK..%2-</a>["5$@4AY@"MD<br>
M$`(A(`H_`*N^P2G!?VQTGX`6(LNV0&lt;^T_"#72$RR#&amp;G6\74"AB0!&lt;)%QRU1^<br>
MFM$J..,U&gt;%.($&lt;R5Y;E@/YQ&lt;6PH.XA81^()=CV](?*2$A%!:#B&gt;T?-Y7`D14<br>
M5RI/Q,,)K`004_D70!903&lt;PH,Y^`&lt;9"!A$*)6J?IH4("002"_T_,02K*=JJ$<br>
MV+I`%P%ZY`R1EE4R$PA&gt;LA6(%#H!J0]Y;N%*73)C@D"5'&gt;48D&gt;Y)J[=KDR.2<br>
MO&lt;ME\YI&lt;@EBKXL('R*C!'@&lt;@$\1R/&gt;8D=#12]*-H=DIHL*93[P8K-#8W52U#<br>
MB1.0&amp;5_#'J`&lt;!6)&lt;CFM''B-T@LDS)D(J!1&gt;Y&lt;AT0Q07J#]8H&amp;2_%(4T$TIQ.<br>
M@S"JL05!ONPY$\E'CAM0N*ZB]8/NX;Z.UM4`V!)\5H$'$:G0W+&lt;F'$-I-&gt;8J<br>
M&lt;)W\')&gt;P&lt;PP$[+Q&lt;J/A^&amp;37F7V1&amp;9&lt;\%:AB&amp;X@/9&lt;7Z8C-M+2=RNV4%.OW5$<br>
M4Y3[E#3^)TT^RBVP^^=_H5K&lt;_WF2,JO_A[_]&lt;_?]GXW--9W_;6VT\/RWNKG&gt;<br>
M*,Y_3U$&gt;]_Y/&lt;0'H82\`R7U6-BQ]2EGY+%-]CO%(MW_@7'G8?8UP6=LQC-U=<br>
M?-S=Q:')':"5;@W^EBKJY@_5LS:1W`5*6F;N"!F[IZ=TGX"0J_J.L9O"%.1P<br>
M+P&amp;I*L"ZKR4`?G&gt;,O?T#&gt;L)?I/?DZ!3C*;RHM+L+I-E0P3:3KKJHRS38J&amp;:E<br>
MNJPAYO[)R2&amp;9=%W?-3E"E"5@&gt;@53H]MV,)GB99&amp;CP^[QSRD8#Q_YVU-('D2W<br>
MW&lt;')ZW\CA3*$LH:KC8U:D`94$&amp;U!.#^`TT;,$[CKNY&amp;Z\Q3D[SP%V6M.P8([<br>
M5,'&lt;':H,!@&amp;'&lt;3F52#IZ`42`"2SMBI&gt;J@ES@ESQ.(8`-9E\H!1F6#_L+F/9N<br>
MX]I;P+8WP[&gt;78]Q;Q+DWS[IW"^_&gt;(N:]6&gt;Z]&amp;?:]+/_&gt;G``\D$"_&lt;_9FOX^&lt;<br>
M@_G(NV^6T=_O]94'8@M&gt;B"$V#*/6.S\XZ/ZVW]O*5%G-9B#-&amp;HATRRCM+%64<br>
M6:*EDC&amp;2R4H[A^I/\A9:::FB)C&lt;-(YU\B]'XU!)-HP0;88@7B&gt;9;EBK2\0'M<br>
M3GJ/S3#L,;&lt;OMS*4EVKU#!M)-=,%#"0C@EDVT'E,[:)TJRD[$/KN*&gt;?,X#`R<br>
M7;(3V4AW3A[J'I=1FD"8H^X6R34+_%HO3&lt;LP4%U?2RZBU3"=!O_ITAFCRV&gt;6<br>
MNGJV5"$9P6]6G:8&lt;&amp;HY8#2F=O_&gt;F4:&gt;7S+*WGY2$&amp;&lt;E7WX*:N2_W("&gt;MV?@O<br>
M9]?V0\QP5_S7;#9;ZSK^7VTVFM2Z4=S_?I)2Y/^+_'^1_R_R_T7^O\C_%_G_<br>
M1\W_9V_LP,YH369N[.CT?PX$ICH+PR3\+9=]7'I]H*\-O&gt;[L_KQ_O#&lt;X[ASM<br>
ME[*!W&lt;*A^E.:5^F["DP%P:GU-^,'IE!J2*G9:*VIUP#47W5P*F\[O^P/3GJM<br>
MP5LS';;7/1OT]D]+Y79Y!A="GW_X\!QP&gt;;"ZSX_86CBB_CR=7(_8/^B&lt;'_8'<br>
M])E.N5;6*%BO?]8]?M,]&gt;%&gt;1X\&amp;R!KLGQP?=-]@7#D68SI':2]ZJ.&amp;XXH.]H<br>
MZ+I7CUNA/9Y1+YD`OJ)!\:H]"89Q.PI@:&lt;'!1,%AM]&lt;G]X,`/N11'*J1TP`\<br>
M`ZP81"=B0&amp;Y),/\(`P783()9;9=#N?51+WSG(YT-W]_XM(]4)!;!RA,(:?EE<br>
M#:DMFV"SI::(MM@,VXS[5VX8^!-&lt;#:Y@B\&amp;5JF:46OB9RR(Y,&lt;$CYL1H?'E!<br>
MP*#5$`;MQF&amp;(R!(9D*.=Q-$TAND/,CQ3H'1\?GBH-FQP&gt;-B1E9_(EU[&amp;'6^]<br>
MM!1,XQ/,(F$80%39L@\RJ9(&amp;JVHC&gt;J^M]O&gt;VP=1;M=$4#MP-?!;N?_D@8H"O<br>
MC?X-)%6^U^HWZ;K;)W7I;&gt;_UFT'WN-NOF-03B^X(R"Y@W?"O6*4\([BRV5:=<br>
M$76*N?0)OZ2!:3$;$H5825O;V);M_Q[;5UCS=[:]K2W[?&gt;-WD[[&amp;89_D#\.;<br>
M=+#TT;=H?&amp;0![Z`VLEVM%0@EME#.JC^]+ER&gt;\`D0,8$#9V"S"L[T@L0"BW(E<br>
MZU8F,JY&amp;PA@;`K8*_%83,521'TE\MH]Z@6@B`%!#GVK.7:NWSE::$S.@4.#/<br>
M1NFSDBRM':5,KRP&gt;*?[/J#**,4G&lt;3CS-B9O1KE-!XX$.V*]-[;*WX-#[1VE9<br>
M2OBFR;Y'"V)Y&amp;Q'^%%PD`E:D[:6LR6&gt;SRLK/Q#/[F2B3V*K)HE9-7#LQ&amp;#"X<br>
MRAH,F'.&amp;+69%$42L&lt;JL.&amp;#G('\_$\P]^65M]@H5,?21]2!-5#O-F.9IJ@\0Y<br>
M5Q?/&amp;0N&lt;CI:I^;E@Z!#"H,NVU@K^IR-=!:5IILZ%&lt;VGN6HMGLFG)HZ7!Q&lt;0'<br>
MM&lt;W,G)&amp;6P9*E==HV/C_"%5WC/N_5:4VZ'B.UE02*?ON&lt;/4?6/[$$EM1&gt;X,&gt;3<br>
MGY'VAR?^7F_WD7B\I&gt;MNX^JHAD9PD"&lt;QWRJ!]&amp;Z`U'*.[;)DF[2^F'5JHFG2<br>
M!K7(*D&amp;F&amp;,'MGG]H/#?Q&amp;\(\%.;)&gt;Z/[XH6V\B_,2TL#FBLM(WKT'#7W)(8M<br>
M`)*LS9=?2:6D=+%TOV!3AG8.5)(/"U^%6(/H&amp;E?8Q["X;YW4*LI?+HOSO\FK<br>
MBP?)`-^1_UU=7]_0^=_6&gt;K.!][\;JVM%_O&lt;IROSW7W;Q_5&gt;1Z2TRO4_S_==?<br>
MV4U_&lt;$&gt;8C!ETNK]E$C&lt;&gt;G=:LVO@5RQ2@[&gt;B\UP&lt;13S#O&amp;(J(U`-#OR=42&lt;(F<br>
ME__1W_F\6H@_V]T2L`Q&amp;^9X\#/V9Q-7(]B/OZW)9L0_^X=R2&amp;IO)HKF!/3?-<br>
M+&lt;FU[%=R&lt;_PGJ;.%&gt;;<a href="mailto:%4.@LS:Q0KYI;0N">%4.@LS:Q0KYI;0N</a>])K3VY!Z@0@O^E3P2&amp;4;5;^A4!;<br>
MY;;J0A_YI3VPRQ&amp;"TAXAOW)Q&lt;=.=H,&lt;9O\)VU6$8BPP"ZH"7)A($F#_V,Y-`<br>
<a href="mailto:M^ZX$I9.X3@X%">M^ZX$I9.X3@X%</a>]NDZ:;,7^[-3',8^T?#DHDVRAT19^BTE'DTK&gt;)"2C\FY"AX'<br>
M(Z&lt;M'_QX,N2ARD01!ASVOK6^@:FJ'&amp;:)9H#M,B'T.PS[Q,IU:*C'EW`@EE5Q<br>
ML:AZ(6RH?YY!JG"2OW#8N%+$Y4;#:I21*$JZ3:R/0.KV&amp;AW)U!E(T?Z3:DQ/<br>
M&gt;$)F0"I(JLIV8*YCEGXY_O?J+52HYA=*?.HP**4'!&amp;*&gt;0,YP,CC;^_5,93,H<br>
M92;[O&amp;+-_#'+]@+!56LNQ=*LEF66C#N*&amp;-RGGPE,,^3R,?H&lt;I?-9,H]$9)AF<br>
MYBS)E&amp;+EN0Y`:B#F/!\\/_&amp;7K/3O?_C[%1_XHLG+;"M-1U8OT&gt;(SA8[DNW5\<br>
MK.,B45&lt;KA&gt;KGP5JKG"%-1:C#&gt;'9)JZJ%JYHN3\K!B%A))!`'1"&amp;FG.&gt;M-,FT<br>
M9G*[BF"=<a href="mailto:.*MH@JLZ">.*MH@JLZ</a>&lt;8:&amp;EG0"_TW-7UE4FL*BS-LS01LQRA[H1\O2*)7A2!.I<br>
MH(F8RFH8DH_9R+$%_UVD!CA(:5:.^/V(!R--C)D2,@+]B@K*L,I`B%7-E*FS<br>
M+2I=@#T4Z+;LSH])&gt;@&gt;[2:%C+A:%#K]:Z%"5)I[-E&lt;QF2O*ICY',2MB3J4HA<br>
M55EVFZJJU'@E"S3-1.197`E+C+W87CBNG?:\F].28I-L-)L#2D7P_E^X5B)7<br>
M[84TO+S7A+)C-J6]4#R9+3J13@9V'^%DAWT%J4P9P&amp;(14=O[YL:71=3&lt;?`P9<br>
<a href="mailto:MY8.41$QY\">MY8.41$QY\</a>)V22@4U,_"K9)5QDEE1Z:;W:U\6UMICR"J)UQ(Q)9!;)93=WFZU<br>
MKA3-_?P.%SVFC,J*`K&lt;RCR5K0(\ADUR,FL@E![V/G^4'WD\:N/C_=6FT'D,:<br>
<a href="mailto:M.AI/!*$!">M.AI/!*$!</a>]_"@9,B]"#1*L.M]8^Z3PT;"?@*Y!__IF*]:/'#??S(Q:'844G!S<br>
MIE_I)4$V4SLK;NL4L]"[#KD?)*"YU^&gt;5U6I91=C/'+9%[_'D6I(+R*%7&amp;F1\<br>
M@!/$AW(U"3;T,RR:M&gt;21,.E@4,6"&gt;E6=0RVCJF=.XN?JB2*L9S).I!IAG0LA<br>
MT[?_4A!IU)P71A([SPI$#4Q-31.&gt;C;^5W:2@&amp;6.#@I-H%(IGE@G8LR@(!!@D<br>
M"F8R8\YF1_)\E`\2L:C(=.9HJ]26,:`YH9"&lt;MU&amp;`J4`HEJ60-H6Y%$*[3@HA<br>
M!5"TF\KL`2F5OU\(KG4W&gt;H&lt;]/]LMA\;D*@O8#?73YT45U'\N7HP5I2A%*4I1<br>
BBE*4HA2E*$4I2E&amp;*4I2B%*4H12E*49ZH_!_&gt;=R:P`'@`````<br>
`<br>
end<br>
<p>
<pre>
--
Source code, list archive, and docs: <a href="http://www.mostang.com/sane/">http://www.mostang.com/sane/</a>
To unsubscribe: echo unsubscribe sane-devel | mail <a href="mailto:majordomo@mostang.com">majordomo@mostang.com</a>
</pre>
<!-- body="end" -->
<p>
<ul>
<!-- next="start" -->
<li> <b>Next message:</b> <a href="0176.html">David Mosberger-Tang: "Re: Minolta Reply (was:Public Relation Department (Ref. No. CR-3255 V)"</a>
<li> <b>Previous message:</b> <a href="0174.html">Hugo van der Kooij: "Re: Minolta Reply (was:Public Relation Department (Ref. No. CR-3255 V)"</a>
<!-- nextthread="start" -->
<!-- reply="end" -->
</ul>