%!PS-Adobe-1.0 %%Creator: devps (Pipeline Associates, Inc.) %%CreationDate: Fri Sep 13 14:24:00 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 /Times-Bold 1 AEnc-def pop /B-1{/Times-Bold-1 FF}def /R{/Times-Roman FF}def /B{/Times-Bold FF}def %%EndProlog %%Page: 1 1 BP /slant 0 def /height 0 def 480 V 10 R 720(RLOGIND)S 1183(\()S 1225(8)S 1283(\))S 2696(Eighth)S (Edition)296 2989 A 4664(RLOGIND)S 5127(\()S 5169(8)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(rlogind,)S 1420(in.rld)S 10 R-1 1660(-)S 10 R 1742(remote)S 2047(login)S 2278(server)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(login)S 1330(stream)S 1665(tcp)S 1838(nowait)S 2167(root)S 2384(/usr/sbin/in.rld)S 3063(in.rld)S 1488 V 1080(tcpd)S 1309(login)S 1559(/usr/sbin/in.rld)S 1656 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 1776 V 10 B 1080(Rlogind)S 10 R 1464(is)S 1574(the)S 1740(server)S 2030(for)S 2191(the)S 10 B 2357(rlogin)S 10 R 2614(\(1\))S 2775(program.)S 3209(The)S 3409(server)S 3699(provides)S 4089(a)S 4178(remote)S 4502(login)S (facility)286 4752 A 5082(with)S 1896 V 1080(authentication)S 1675(based)S 1929(on)S 2054(privileged)S 2487(port)S 2674(numbers)S 3045(from)S 3266(trusted)S 3565(hosts.)S 2064 V 10 B 1080(Rlogind)S 10 R 1451(listens)S 1739(for)S 1888(service)S 2205(requests)S 2566(at)S 2670(the)S 2824(port)S 3017(indicated)S 3417(in)S 3526(the)S 3680(``login'')S 4053(service)S 4370(speci\256cation;)S 4938(see)S 10 B 5098(ser-)S 2184 V 1080(vices)S 10 R 1287(\(5\).)S 1480(When)S 1745(a)S 1815(service)S 2126(request)S 2442(is)S (received)342 2534 A 2901(the)S 3049(following)S 3465(protocol)S 3825(is)S (initiated:)358 3917 A 2352 V 1080(1\))S 1440(The)S 1632(server)S 1914(checks)S 2223(the)S 2381(client's)S 2713(source)S 3011(port.)S 3258(If)S 3361(the)S 3519(port)S 3716(is)S 3818(not)S 3981(in)S 4094(the)S 4252(range)S (0-1023,)309 4511 A 4855(the)S 5014(server)S 2472 V 1440(aborts)S 1711(the)S (connection.)466 1859 A 2640 V 1080(2\))S 1440(The)S 1630(server)S 1910(checks)S 2217(the)S 2373(client's)S 2703(source)S 3000(address)S 3336(and)S 3515(requests)S 3879(the)S (corresponding)575 4036 A 4645(host)S 4846(name)S 5098(\(see)S 2760 V 10 B 1440(gethostbyaddr)S 10 R 2061(\(3\),)S 10 B 2239(hosts)S 10 R 2457(\(5\))S 2610(and)S 10 B 2790(named)S 10 R 3081(\(8\)\).)S 3318(If)S 3421(the)S 3579(hostname)S (cannot)268 3999 A 4301(be)S 4430(determined,)S 4942(the)S 5099(dot-)S 2880 V 1440(notation)S 1794(representation)S 2390(of)S 2499(the)S 2647(host)S 2839(address)S 3166(is)S 3258(used.)S 3048 V 1080(Once)S 1322(the)S 1475(source)S 1768(port)S 1960(and)S 2135(address)S 2467(have)S 2687(been)S 2907(checked,)S 10 B 3292(rlogind)S 10 R 3635(allocates)S 4018(a)S (pseudo)284 4093 A 4407(terminal)S 4773(\(see)S 10 B 4966(tty)S 10 R 5084(\(4\)\),)S 3168 V 1080(and)S 1252(manipulates)S 1764(\256le)S 1919(descriptors)S 2387(so)S 2502(that)S 2679(the)S 2828(slave)S 3061(half)S 3244(of)S 3354(the)S (pseudo)284 3503 A 3813(terminal)S 4175(becomes)S 4553(the)S 10 B 4702(stdin)S 4941(,)S 4992(stdout)S 3288 V 1080(,)S 10 R 1130(and)S 10 B (stderr)264 1300 A 10 R 1589(for)S 1732(a)S 1803(login)S 2035(process.)S 2413(The)S 2596(login)S 2828(process)S 3156(is)S 3249(an)S 3370(instance)S 3726(of)S 3836(the)S 10 B 3985(login)S 10 R 4197(\(1\))S 4341(program,)S (invoked)323 4733 A 5082(with)S 3408 V 1080(the)S 10 B-1 1230(-)S 10 B 1287(r)S 10 R 1359(option.)S 1692(The)S 1875(login)S 2107(process)S 2435(then)S (proceeds)358 2634 A 3018(with)S 3223(the)S 3372(authentication)S 3968(process)S 4296(as)S 4406(described)S 4818(in)S 10 B 4922(rshd)S 10 R 5118(\(8\),)S 3528 V 1080(but)S 1239(if)S 1332(automatic)S 1760(authentication)S 2361(fails,)S 2592(it)S 2680(reprompts)S 3120(the)S 3275(user)S 3475(to)S 3585(login)S 3823(as)S 3939(one)S 4116(\256nds)S 4343(on)S 4475(a)S 4552(standard)S 4925(terminal)S 3648 V 1080(line.)S 3816 V 1080(The)S 1274(parent)S 1563(of)S 1685(the)S 1846(login)S 2090(process)S 2430(manipulates)S 2954(the)S 3115(master)S 3422(side)S 3622(of)S 3744(the)S (pseduo)284 3905 A 4227(terminal,)S 4626(operating)S 5044(as)S 5166(an)S 3936 V 1080(intermediary)S 1622(between)S 1985(the)S 2135(login)S 2368(process)S 2697(and)S 2868(the)S 3017(client)S 3267(instance)S 3623(of)S 3733(the)S 10 B 3882(rlogin)S 10 R 4165(program.)S 4582(In)S 4692(normal)S 5003(opera-)S 4056 V 1080(tion,)S 1295(the)S 1452(packet)S 1749(protocol)S 2118(described)S 2538(in)S 10 B 2650(tty)S 10 R 2768(\(4\))S 2920(is)S (invoked)323 3021 A 3378(to)S 3491(provide)S 3833(\303S/\303Q)S 4093(type)S (facilities)348 4301 A 4684(and)S 4864(propagate)S 4176 V 1080(interrupt)S 1459(signals)S 1770(to)S 1880(the)S 2035(remote)S 2347(programs.)S 2809(The)S 2997(login)S 3234(process)S 3567(propagates)S 4034(the)S 4188(client)S 4443(terminal's)S 4883(baud)S 5109(rate)S 4296 V 1080(and)S 1264(terminal)S 1639(type,)S 1876(as)S (found)234 1999 A 2272(in)S 2390(the)S 2553(environment)S 3101(variable,)S 3491(``TERM'';)S 3975(see)S 10 B 4144(environ)S 10 R 4474(\(7\).)S 4682(The)S 4879(screen)S 5177(or)S 4416 V (window)324 1080 A 1435(size)S 1623(of)S 1738(the)S 1892(terminal)S 2259(is)S 2357(requested)S 2774(from)S 3001(the)S 3155(client,)S 3434(and)S (window)324 3609 A 3963(size)S 4150(changes)S 4504(from)S 4730(the)S 4883(client)S 5137(are)S 4536 V 1080(propagated)S 1552(to)S 1655(the)S (pseudo)284 1803 A 2112(terminal.)S 4704 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 4824 V 10 B 1080(rlogin)S 10 R 1337(\(1\).)S 4992 V 9 R 720(D)S 722(DI)S 790(IA)S 823(AG)S 891(GN)S 959(NO)S 1027(OS)S 1095(ST)S 1147(TI)S 1205(IC)S 1238(CS)S 1300(S)S 5112 V 10 R 1080(All)S (diagnostic)413 1235 A 1674(messages)S 2080(are)S 2230(returned)S 2592(on)S 2718(the)S (connection)441 2867 A 3334(associated)S 3774(with)S 3980(the)S 10 B (stderr)264 4130 A 10 R 4394(,)S 4446(after)S 4659(which)S 4932(any)S 5104(net-)S 5232 V 1080(work)S (connections)480 1312 A 1817(are)S 1966(closed.)S 2298(An)S 2446(error)S 2668(is)S 2760(indicated)S 3154(by)S 3279(a)S 3349(leading)S 3670(byte)S 3868(with)S 4072(a)S 4142(value)S 4385(of)S 4494(1.)S 5400 V 10 B 1080(``Try)S (again.'')327 1335 A 5520 V 10 R 1080(A)S 10 B 1178(fork)S 10 R 1388(by)S 1513(the)S 1661(server)S 1933(failed.)S 5688 V 10 B 1080(``/bin/sh:)S (...'')143 1498 A 5808 V 10 R 1080(The)S 1262(user's)S 1528(login)S 1759(shell)S 1974(could)S 2222(not)S 2375(be)S 2495(started.)S 5976 V 9 R 720(B)S 722(BU)S 784(UG)S 852(GS)S 920(S)S 6096 V 10 R 1080(The)S 1262(authentication)S 1857(procedure)S 2285(used)S 2494(here)S 2693(assumes)S 3053(the)S 3201(integrity)S 3567(of)S (each)185 3676 A 3886(client)S 4135(machine)S 4501(and)S 4671(the)S (connecting)441 4820 A 6216 V 1080(medium.)S 1484(This)S 1688(is)S 1780(insecure,)S 2166(but)S 2319(is)S 2411(useful)S 2682(in)S 2785(an)S 2905(``open'')S 3261(environment.)S 6384 V 1080(A)S (facility)286 1178 A 1489(to)S 1592(allow)S 1841(all)S 1967(data)S 2160(exchanges)S 2604(to)S 2707(be)S 2827(encrypted)S (should)267 3249 A 3541(be)S 3661(present.)S 6552 V 1080(A)S 1178(more)S 1410(extensible)S 1843(protocol)S (should)267 2203 A 2495(be)S 2615(used.)S 7903 V 720(Page)S 941(1)S 2669(\()S 2711(May)S 2920(24,)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 %%Pages: 1