%!PS-Adobe-1.0 %%Creator: devps (Pipeline Associates, Inc.) %%CreationDate: Fri Sep 13 13:06:02 1996 %%Pages: (atend) %%DocumentFonts: (atend) /devps 180 dict def devps begin /res 10.000000 def /y_offset 843 def /X{exch}bind def /mm {transform round X round X itransform} bind def /r{rmoveto}bind def /m{moveto}bind def /l{lineto}bind def /rl{rlineto}bind def /st{stroke}bind def /gs{gsave}bind def /gr{grestore}bind def /cp{currentpoint}bind def /np{newpath}bind def /ct{curveto}bind def systemdict /setpacking known { /savepacking currentpacking def true setpacking } if /m0{0 0 moveto}bind def /xc{//res div}bind def /yc{//res neg div //y_offset add}bind def /lc{yc X xc X l st}bind def /mc{yc X xc X m}bind def /el{gs /a X def a div 1 X scale cp np a xc 2 div 0 360 arc st gr}bind def /ar{cp 7 2 roll np xc 5 1 roll atan 3 1 roll atan X arc st}bind def /sp{yc X xc X 6 2 roll yc X xc X 6 2 roll yc X xc X 6 2 roll ct}bind def /V{//res neg div //y_offset add currentpoint pop X m}bind def /H{//res div 0 transform X round X itransform pop currentpoint X pop moveto}bind def /h{//res div 0 r}bind def /v{//res neg div 0 X r}bind def /S{X H show}bind def /A{H //res div 1 index stringwidth pop sub 1 index length div 0 3 2 roll ashow}bind def /psize 10 def /height 0 def /cheight { height 0 ne { height } { psize } ifelse } bind def /slant 0 def /FF{findfont X dup 30 div 0 mm pop setlinewidth /psize X def [psize 0 cheight slant sin slant cos div mul cheight 0 0] makefont setfont}bind def /shade{gs /dy X def /dx X def np m 0 /dy rl /dx 0 rl 0 /dy neg rl /dx neg 0 rl closepath .9 setgray fill gr}bind def 1 setlinecap /resolution res 72 mul def /startFig { /SavedState save def userdict maxlength dict begin currentpoint transform DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix itransform moveto /ury exch def /urx exch def /lly exch def /llx exch def /y exch 72 mul resolution div def /x exch 72 mul resolution div def currentpoint /cy exch def /cx exch def /sx x urx llx sub div def /sy y ury lly sub div def sx sy scale cx sx div llx sub cy sy div ury sub translate /DefFigCTM matrix currentmatrix def /initmatrix { DefFigCTM setmatrix } def /defaultmatrix { DefFigCTM exch copy } def /initgraphics { DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix DefFigCTM setmatrix } def /showpage { initgraphics } def }bind def /clipFig { currentpoint 6 2 roll newpath 4 copy 4 2 roll moveto 6 -1 roll exch lineto exch lineto exch lineto closepath clip newpath moveto }bind def /doclip { llx lly urx ury clipFig } def /endFig { end SavedState restore }bind def /globalstart { fontnum psize slant height resolution currentpoint pagesave restore gsave }bind def /globalend { grestore moveto /resolution exch def /height exch def /slant exch def /psize exch def /fontnum exch def F /pagesave save def }bind def /fontnum 1 def systemdict /setpacking known { savepacking setpacking} if end /BP{ save mark devps begin m0 /DocumentInitState [ matrix currentmatrix currentlinewidth currentlinecap currentlinejoin currentdash currentgray currentmiterlimit ] cvx def }bind def /EP{ end cleartomark restore showpage}def /Encoding-1 256 array def 0 1 255 {Encoding-1 exch /.notdef put} for Encoding-1 8#301 StandardEncoding 8#101 26 getinterval putinterval %A-B Encoding-1 8#341 StandardEncoding 8#141 26 getinterval putinterval %a-b Encoding-1 8#241 StandardEncoding 8#301 16 getinterval putinterval %accents Encoding-1 8#373 StandardEncoding 8#365 1 getinterval putinterval %dotlessi Encoding-1 dup 8#41 /copyright put dup 8#42 /registered put dup 8#43 /trademark put dup 8#44 /logicalnot put dup 8#45 /Eth put dup 8#46 /eth put dup 8#47 /Thorn put dup 8#50 /thorn put dup 8#51 /brokenbar put dup 8#52 /degree put dup 8#53 /divide put dup 8#54 /multiply put dup 8#55 /minus put dup 8#56 /onehalf put dup 8#57 /onequarter put dup 8#60 /threequarters put dup 8#101 /Aacute put dup 8#102 /Acircumflex put dup 8#103 /Adieresis put dup 8#104 /Agrave put dup 8#105 /Aring put dup 8#106 /Atilde put dup 8#107 /Ccedilla put dup 8#110 /Eacute put dup 8#111 /Ecircumflex put dup 8#112 /Edieresis put dup 8#113 /Egrave put dup 8#114 /Iacute put dup 8#115 /Icircumflex put dup 8#116 /Idieresis put dup 8#117 /Igrave put dup 8#120 /Ntilde put dup 8#121 /Oacute put dup 8#122 /Ocircumflex put dup 8#123 /Odieresis put dup 8#124 /Ograve put dup 8#125 /Otilde put dup 8#126 /Scaron put dup 8#127 /Uacute put dup 8#130 /Ucircumflex put dup 8#131 /Udieresis put dup 8#132 /Ugrave put dup 8#133 /Ydieresis put dup 8#134 /Zcaron put dup 8#135 /aacute put dup 8#136 /acircumflex put dup 8#137 /adieresis put dup 8#140 /agrave put dup 8#141 /aring put dup 8#142 /atilde put dup 8#143 /ccedilla put dup 8#144 /eacute put dup 8#145 /ecircumflex put dup 8#146 /edieresis put dup 8#147 /egrave put dup 8#150 /iacute put dup 8#151 /icircumflex put dup 8#152 /idieresis put dup 8#153 /igrave put dup 8#154 /ntilde put dup 8#155 /oacute put dup 8#156 /ocircumflex put dup 8#157 /odieresis put dup 8#160 /ograve put dup 8#161 /otilde put dup 8#162 /scaron put dup 8#163 /uacute put dup 8#164 /ucircumflex put dup 8#165 /udieresis put dup 8#166 /ugrave put dup 8#167 /ydieresis put dup 8#170 /zcaron put pop /Enc-dict 30 dict def Enc-dict /tmpstr1 50 string put Enc-dict /tmpstr2 50 string put Enc-dict /tmpstr3 50 string dup (Encoding-) exch cvs pop put /AEnc-def { % arguments: the original font's name, encoding nr Enc-dict begin tmpstr2 cvs /Enc-no exch def % Remember the number in a string dup /OrigName exch def % remember the name findfont dup maxlength dict /newdict exch def % get dictionary for new font { exch dup /FID ne { exch newdict 3 1 roll put } { pop pop } % Ignore FID ifelse } forall newdict begin /Encoding tmpstr3 9 Enc-no putinterval tmpstr3 0 9 Enc-no length add getinterval cvn load def % Replace encoding currentdict /UniqueID known { /UniqueID UniqueID Enc-no cvi 49999 mul add def } if % Derive New UniqueID end % newdict /FNlength OrigName tmpstr1 cvs length def % convert name, remember length FNlength 1 add Enc-no length add string dup 0 OrigName tmpstr1 cvs putinterval dup FNlength (-) putinterval dup FNlength 1 add Enc-no putinterval dup 0 tmpstr1 0 FNlength getinterval putinterval % Add old name cvn dup newdict /FontName 3 2 roll put newdict definefont end % Enc-dict } def /Times-Roman 1 AEnc-def pop /R-1{/Times-Roman-1 FF}def /R{/Times-Roman FF}def /B{/Times-Bold FF}def /I{/Times-Italic FF}def %%EndProlog %%Page: 1 1 BP /slant 0 def /height 0 def 480 V 10 R 720(WRITE)S 1048(\()S 1090(2)S 1148(\))S 2696(Eighth)S (Edition)296 2989 A 4799(WRITE)S 5127(\()S 5169(2)S 5227(\))S 960 V 9 R 720(N)S 722(NA)S 790(AM)S 858(ME)S 940(E)S 1080 V 10 R 1080(write)S 10 R-1 1313(-)S 10 R 1395(write)S 1628(output)S 1248 V 9 R 720(S)S 722(SY)S 774(YN)S 842(NO)S 910(OP)S 978(PS)S 1030(SI)S 1082(IS)S 1115(S)S 1368 V 10 B 1080(#include)S 1482()S 1488 V 1080(#include)S 1482()S 1728 V 1080(ssize_t)S 1398(write\(int)S 10 I 1813(d)S 10 B 1863(,)S 1926(const)S 2188(void)S 2410(*)S 10 I 2460(buf)S 10 B 2588(,)S 2651(size_t)S 10 I 2930(nbytes)S 10 B 3187(\))S 1896 V 9 R 720(D)S 722(DE)S 790(ES)S 848(SC)S 900(CR)S 962(RI)S 1024(IP)S 1057(PT)S 1109(TI)S 1167(IO)S 1200(ON)S 1268(N)S 2016 V 10 B 1080(Write)S 10 R 1371(attempts)S 1751(to)S 1868(write)S 10 I 2116(nbytes)S 10 R 2413(of)S 2537(data)S 2745(to)S 2863(the)S 3026(object)S 3312(referenced)S 3779(by)S 3919(the)S 4082(descriptor)S 10 I 4525(d)S 10 R 4615(from)S 4851(the)S 5014(buffer)S 2136 V 1080(pointed)S 1406(to)S 1509(by)S 10 I 1634(buf)S 10 R 1770(.)S 2304 V 1080(On)S 1231(objects)S 1544(capable)S 1880(of)S 1992(seeking,)S 2352(the)S 10 B 2503(write)S 10 R 2756(starts)S 2997(at)S 3098(a)S (position)323 3171 A 3522(given)S 3774(by)S 3903(the)S 4055(pointer)S 4369(associated)S 4812(with)S 10 I 5020(d)S 10 R 5078(,)S 5132(see)S 2424 V 10 B 1080(lseek)S 10 R 1293(\(2\).)S (Upon)223 1486 A 1734(return)S 2000(from)S 10 B 2221(write)S 10 R 2446(,)S 2496(the)S 2644(pointer)S 2954(is)S 3046(incremented)S 3569(by)S 3694(the)S 3842(number)S 4174(of)S 4283(bytes)S 4520(actually)S (written.)311 4864 A 2592 V 1080(Objects)S 1413(that)S 1589(are)S 1738(not)S 1891(capable)S 2225(of)S 2335(seeking)S 2668(always)S 2974(write)S 3208(from)S 3430(the)S 3579(current)S (position.)348 3891 A 4290(The)S 4473(value)S 4717(of)S 4827(the)S 4976(pointer)S 2712 V 1080(associated)S 1519(with)S 1723(such)S 1932(an)S 2052(object)S 2323(is)S (unde\256ned.)421 2415 A 2880 V 1080(When)S 1361(using)S (non-blocking)535 1619 A 2195(I/O)S 2371(on)S 2512(objects)S 2838(such)S 3063(as)S 3188(TCP/IP)S 3532(channels)S 3925(that)S 4117(are)S 4283(subject)S 4610(to)S 4730(\257ow)S 4951(control,)S 3000 V 10 B 1080(write)S 10 R 1337(may)S 1542(write)S 1782(fewer)S 2045(bytes)S 2289(than)S 2494(requested;)S 2940(the)S 3095(return)S 3368(value)S 3618(must)S 3845(be)S 3972(noted,)S 4252(and)S 4429(the)S 4583(remainder)S 5023(of)S 5138(the)S 3120 V 1080(operation)S (should)267 1485 A 1777(be)S 1897(retried)S 2186(when)S 2429(possible.)S 3288 V 9 R 720(R)S 722(RE)S 784(ET)S 842(TU)S 900(UR)S 968(RN)S 1030(N)S 1121(V)S 1123(VA)S 1191(AL)S 1259(LU)S 1317(UE)S 1385(E)S 3408 V 10 R (Upon)223 1080 A (successful)414 1351 A 1813(completion)S 2313(the)S 2484(number)S 2839(of)S 2971(bytes)S 3231(actually)S (written)286 3598 A 3932(is)S 4047(returned.)S 4481(Otherwise)S 4944(a)S 10 R-1 5038(-)S 10 R 5095(1)S 5194(is)S 3528 V 1080(returned)S 1441(and)S 1611(the)S 1759(global)S 2035(variable)S 10 B (errno)241 2385 A 10 R 2651(is)S 2743(set)S 2880(to)S 2983(indicate)S 3327(the)S 3475(error.)S 3696 V 9 R 720(E)S 722(ER)S 780(RR)S 842(RO)S 904(OR)S 972(RS)S 1034(S)S 3816 V 10 B 1080(Write)S 10 R (will)157 1357 A 1539(fail)S 1699(and)S 1869(the)S 2017(\256le)S 2171(pointer)S (will)157 2481 A 2663(remain)S 2968(unchanged)S 3428(if)S 3515(one)S 3685(or)S 3794(more)S 4026(of)S 4135(the)S 4283(following)S 4699(are)S 4848(true:)S 3984 V 1080([EBADF])S 10 I 1830(D)S 10 R 1928(is)S 2020(not)S 2173(a)S 2243(valid)S 2469(descriptor)S 2897(open)S 3117(for)S (writing.)316 3260 A 4152 V 1080([EPIPE])S 1830(An)S 1978(attempt)S 2305(is)S 2397(made)S 2640(to)S 2743(write)S 2976(to)S 3079(a)S 3149(pipe)S 3347(that)S 3523(is)S 3615(not)S 3768(open)S 3988(for)S 4131(reading)S 4458(by)S 4583(any)S 4753(process.)S 4320 V 1080([EPIPE])S 1830(An)S 1978(attempt)S 2305(is)S 2397(made)S 2640(to)S 2743(write)S 2976(to)S 3079(a)S 3149(TCP)S 3359(channel)S 3697(that)S 3873(is)S 3965(not)S (connected)408 4118 A 4551(to)S 4654(a)S 4724(peer)S 4923(socket.)S 4488 V 1080([EFBIG])S 1830(An)S 1985(attempt)S 2319(was)S 2508(made)S 2758(to)S 2868(write)S 3108(a)S 3185(\256le)S 3346(that)S (exceeds)319 3530 A 3882(the)S 4038(process's)S 4446(\256le)S 4608(size)S 4798(limit)S 5021(or)S 5138(the)S 4608 V 1830(maximum)S 2262(\256le)S 2416(size.)S 4776 V 1080([EFAULT])S 1830(Part)S 2020(of)S 2131(the)S 2281(data)S 2476(to)S 2581(be)S (written)286 2703 A 3016(to)S 3121(the)S 3271(\256le)S 3427(points)S 3699(outside)S 4016(the)S 4166(process's)S 4568(allocated)S 4959(address)S 4896 V (space.)249 1830 A 5064 V 1080([ENOSPC])S 1830(There)S 2091(is)S 2183(no)S 2308(free)S (space)224 2491 A 2740(remaining)S 3173(on)S 3298(the)S 3446(\256le)S 3600(system)S 3904(containing)S 4353(the)S 4501(\256le.)S 5232 V 1080([EIO])S 1830(An)S 1978(I/O)S 2138(error)S 2360(occurred)S 2738(while)S 2987(reading)S 3314(from)S 3535(or)S (writing)291 3644 A 3960(to)S 4063(the)S 4211(\256le)S 4365(system.)S 5400 V ([EAGAIN])456 1080 A 1830(The)S 2012(\256le)S 2166(was)S 2348(marked)S 2675(for)S (non-blocking)535 2818 A 3378(I/O,)S 3563(and)S 3733(no)S 3858(data)S 4051(could)S 4299(be)S (written)286 4419 A 4730(immediately.)S 5568 V 9 R 720(S)S 722(SE)S 774(EE)S 832(E)S 913(A)S 915(AL)S 983(LS)S 1041(SO)S 1093(O)S 5688 V 10 B 1080(fcntl)S 10 R 1277(\(2\),)S 10 B 1445(lseek)S 10 R 1658(\(2\),)S 10 B 1826(open)S 10 R 2033(\(2\),)S 10 B 2201(pipe)S 10 R 2386(\(2\),)S 10 B 2554(read)S 10 R 2750(\(2\).)S 7903 V 720(Page)S 941(1)S 2669(\()S 2711(May)S 2920(14,)S (1986)200 3070 A 3278(\))S 4455(September)S 4911(13,)S (1996)200 5061 A 8143 V EP %%Trailer %%DocumentFonts: Times-Roman Times-Bold Times-Italic %%Pages: 1