@TTCPV1.0 7-JUL-2011 06:56 HP C V7.3-009 8 ,$DATA$ $READONLY$BUFLENNBUFWINDOWRCVMINUDPOPTIONSONEPORT`USAGENBYTESB_FLAGi&$CODE$0 $LITERAL$p$LINK$P$BSS$ SINME(SINME SINHIM(SINHIM SINDUM(SINDUM FROMINET0FROMINET DOMAIN(DOMAIN FROMLEN(FROMLEN FD(FD( BUFLEN BUF(BUF( NBUF( WINDOW( RCVMIN( UDP( OPTIONS( ONE( PORT HOST(HOST TRANS(TRANS SINKMODE0SINKMODE ADDR(ADDR( USAGE STATS(STATS T(T( NBYTES( B_FLAG0J   PREP_TIMER0J  READ_TIMER CPUT(CPUT REALT( REALT(J`$ MREAD0JP%  GETRUSAGE(J ERR(J0 MES(J0$ DELAY(JP" NWRITE(J0" NREAD(J PATTERN(J@ MAIN(J0 __MAIN  =malloc=-t=-r=socket =socket(=bind0= connectconnectacceptH=acceptP=IOX=-t`=-rh=-tp=-rx=-t=-r=-t=-r=-t=-r=-t=-r= %d.%01d%d.%01d%d%%=%d=%d=%d=%d=%d=%d=%d=%d=%d=%d+%d =%d:(=%d%d0=%d8=%d%d@=H>@(#)$Header: ttcp.c,v 1.10 87/09/02 23:26:36 mike Exp $ (BRL)= bad hostname=0%ttcp%s: nbuf=%d, buflen=%d, port=%d = setsockopt= setsockopt= setsockopt= setsockopt= setsockopt= ttcp%s: %s =(ttcp%s: %ld bytes processed 8=H;ttcp%s: %9g CPU sec = %9g KB/cpu sec, %9g Kbits/cpu sec x=@7ttcp%s: %9g real sec = %9g KB/real sec, %9g Kbits/sec = ttcp%s: = errno=%d = ttcp%s: %s =@6%Uuser %Ssys %Ereal %P %Xi+%Dd %Mmaxrss %F+%Rpf %Ccsw= ttcp_mread(=  @6= $=  $=  $=  $=  $=  $=  $=  " =  ~ =f^Usage: ttcp -t [-options] host out -l## length of network read buf (default 1024) -s sink (discard) all data from network -p## port number to listen at (default 2000) -B Only output full blocks, as specified in -l## (for TAR) -u use UDP instead of TCP -w TCP window set (socket size) -m## Argument for SO_RCVMIN $ =  $ =   =#8^0[~ "0#@^4GHcGG#  (#ݶ8b@Zk(=0b#@BG4Gb/@ZkcG8]@]HP#/k///`#YB^~^ ~(08޴@HP>X^`~hpx޵^GG@$1Bp ^`ۤۥ[{0h;e"#,C"#H%DN c/[rKgK2QHBFB\\BXCk//4G;/4G.7/4//-4 F-.PB4GXb"@Zk '/PB4GXb"@Zk /PB4GXb"@Zk /PB4GXb"@Zk /4G /PB4GXb"@Zk/4G&$1@ 8D4GbPBXb#/C 60¤ @@ZkB F4Gb*_I T@EF@Zk/pB84Gxb@Zkb# "$@&"B)?I$vH $E&O /J@Zk}f4GBb0vI@Zk`SH%vHD$vHB4G"b0vI/@Zk`SH/vIEB0B( 4G8b@Zk b#G/@¤E"!á0"%"GB`bEib /II@Zk BTGTGG(btG4E@Zk"b#//@ "b#@BGtGb"@Zk("b#@?&GáBG1"bCHb@@Zk"b#@BGtG0"b@Zk0"b#@8"+BGTGb@ZkOB?&GbG1"b@///@Zk"b#{@ӀB GTGPBtGXb`"@Zk@"b#j@H"b#@B%_"G!bGGG@Zk"b#U@BG_"GGGb/@Zk///"b#D@hbB?&_"Gb1"G /@Zk///"b#0@Өb#@PBGXb/@Zk೰b#*/K*//g@b#G'@ɡ(1A ////'b#J@ɡ D A01A kl`'b#G@f/Pb#'J@^H!@b#/W 4G(w@//A 'JPb#p@G//#`4GGB*b o//@Zk7 G/'Gb#@  DB4G+*Gob A @Zk G///'Pb#J?@Gp"@BG4GiGHb/@Zk͡Pb#'JA +@G//PBGXb@ZkP"b#@Ӱ¥@b#GG-@kGb#'E`/7@'b#G2@'Gb#-@b#'G(@BXE"`E!hG%"Gb E/@Zk "/,Gb@gCBhE"p!%"NEmGb@Zk l?'xE"Bc!8%"B9# b_hEWH/k3TA Ta3T/TbUU"T@Zk g?'E"Hc%"9#Bb_eDWk3TA,T/a3TTbUU"T/@ZkBG4Gb@Zk//BTGb"@ZkB4G4Gb/@Zk///#P;tG^~ [ ^(~0G{GqC"# 0[8b#"c aF@Zk`B4Ghb/@Zk BGb/@Zk0BGtG@8b/@Zk@B4G4GHb@Zk//;;#GG~^;GQ#Q"{1"F^ #k//B #~^^~ (0޴8@G(G$1 BGG ۤ////&DAAC!0D // ///0BD4G8b@Zk/#.DGr#H$1@ Q#Jc 2F#>/G]]} (0ݤ8@P#/k///#TGG~^[^GG"b@ZkGb#"]]G #/#^~^ ~(GG(G{#,>@>"@@B bG "HbTG@ZkGc"@=" ]""`b#@@`B(tG=",]hb@ZkC"0B" ="@H]""P8@="5J_00}WWa*TaU7@GC""@"="]"@(5J _88ݍWWjU/ UOUj^WG]] }(J]  =0#/k///#0^~^~ @޴:CD>^~ (޵08GGG3GGH{ $0B #R4Cs[OĢF@P!1@$ ¤N5C2SBc!DRRBRRBGN13BEKJ;CF0B4C0BDhPBPBPBƦJ[[B2CF1C5D`"8޲{GB NAH:C`G!C GZG5L,LvJ4C$HUGUAUBPBPBPB0J+PC"02C~kELNDJ1CrE C1F L%!-wIvH2C FCG4`G(P ^ZRB2C!EABF@>H^ZC::BX^//FpJ `.TJ F>///G/XG"g#"RKZ[KGK@ :qHCBC\\CCk///GGG"@ 0B&"G]8b5CFNJ3CF@Zk,H///. DJe. eJ`. J~. Jz%/ %Kv e/ eKr , Hm/0]8=G"@ 0B&"G]8b6CFNJ3CF@Zk,HW///. DJNe. eJJ`. JF. JB%/ %K> e/ eK: , H5/P0BG G@¥PbG@&"]8btG/W///@Zk,H/!/// .!E Jl.!lJ`.!J.!J ,/!,K l/!lK  ,! H0BH&"] ]X}GG8b@Zk , HP// .!E JHl.!lJD`.!J@.!J<,/!,K8 l/!lK4  ,! H//0B GH]P&"GtG8b/@Zk,H/!/// .!E Jl.!lJ`.!J.!J ,/!,K l/!lK  ,! H2CJENN.TGX&"GzJ8bWJF0B>I0CNEpBPBPB*PA "4CJE NvdI2CKESRBsB3SA@Zk-I/`///E- DEIv@%, %Hr %. %Jn e. eJj`. Jf. Jb%/ %K?]/@ݡ(}G&"0B8btG.I+aI`ݵh}`h=[[/`X[pp]@ZkE-EI/C@///- DI:%, %H6 %. %J2 e. eJ.`. J*. J&%/ %K?!/(d(cG&"0BtG2kC8b@Zk-I////E- DEI @%, %H %. %J e. eJ`. J. J%/ %K?/G+I&"/ġ,A,Ix}x=[[/`X[]0BGtG8b@ZkE-EI/@///e- DeI`%, %H %. %J e. eJ`. J. J%/ %K?/G+I&"/ġD AA @A H}=[[/`X[]0BGtG8b@Zk-I////E- DEI@%, %H %. %J~ e. eJz`. Jv. Jr%/ %K?m/G!I&"/ġcD A`A A@ @A H==[[/`X[]0BGtG8b@Zk-I/G`///- DI>@%, %H: %. %J6 e. eJ2`. J.. J*%/ %K?%/d0BG&"tG`CnC8b7I@Zk-I@///e- DeI`%, %H  %. %J e. eJ`. J. J%/ %K?/$d$G&"0BtG2lC8b@Zk-I/`///E- DEI@%, %H %. %J e. eJ`. J. J%/ %K?/ d áG &"0BtG2nC8b@Zk-I/@///e- DeI`%, %H %. %J e. eJ`. J. J%/ %K?/,d,G(&"0BtG2lC8b@Zk-I/`///E- DEI~@%, %Hz %. %Jv e. eJr`. Jn. Jj%/ %K?e/0d0áG0&"  =0BtG2nC8b@Zk-I/W@///e- DeIN`%, %HJ %. %JF e. eJB`. J>. J:%/ %K?5/@d@G8&"DDDáG0B2lC8b3NA/@Zke-eI/#`///E- DEI@%, %H %. %J e. eJ`. J . J%/ %K?//g/ gK/7-NI=G]]}ݤ=]} (ݥ08@#k/q`B&@Bs"1R2B0@ 3B013B 0k///q `B1R12B 1@0 1&@B1"0k/{#G ^~""(^0GGs0[G8b`G@Zk "b#!/ @/BtGb/@ZkG ](]0@#k/P{#GG~^^~s0[ (0޴8@G ۤGGGG*`G8bG@ZkG/+///@BGHb/@ZkPF"b#D//+@@BGHb@Zk0BGGGGGGG8b/@ZkG`BGGGtGhb@ZkGG]]G} (0ݤ8@P#/k///#PB? ^B~>" [0CGG^ GG >GG(b@Zk0BG4G8b@Zk@BG4GHb/@ZkG]]4G 0#/k///#~^^~ (0޴8GGGGGG/ B2@GGtG(b@Zk@@@?G//G]]} (0ݤ8@#k//B4Gb8"@Zk #G^ [~^ ~(GGG(b  $(,048<@D/@Zk1CB=D2N @!  @F $J3CDTsBcTBTB @@@@@@@@@ HG/GG]] }(0#/k4= G \ DECC$MAIN4> Lb#0 DECC$MAIN4= X@ \ DECC$MAIN4 lG DECC$EXIT4 xb#0 DECC$EXIT4 @ DECC$EXIT41 G  DECC$ATOI42 b#@ DECC$ATOI41 @  DECC$ATOI41 G  DECC$ATOI42 b#@ DECC$ATOI41 @  DECC$ATOI41 G $ DECC$ATOI42 b#@ DECC$ATOI41 @ $ DECC$ATOI41 0G D DECC$ATOI42 8b#@ DECC$ATOI41 @@ D DECC$ATOI41 `G t DECC$ATOI42 hb#@ DECC$ATOI41 p@ t DECC$ATOI41 G  DECC$ATOI42 b#@ DECC$ATOI41 @  DECC$ATOI<5 G MULTINET_INET_ADDR<6 b#@MULTINET_INET_ADDR<5 @ MULTINET_INET_ADDR<+ G (MULTINET_GETHOSTBYNAME<, b#@MULTINET_GETHOSTBYNAME<+ $@ (MULTINET_GETHOSTBYNAME49 LG tOTS$MOVE49 p@ tOTS$MOVE43 G MULTINET_HTONS44 b#@MULTINET_HTONS43 @ MULTINET_HTONS43 G MULTINET_HTONS44 b#@MULTINET_HTONS43 @ MULTINET_HTONS4% G  DECC$MALLOC4& b#@ DECC$MALLOC4% @  DECC$MALLOC4 TG DECC$GXFPRINTF 4 pb#@DECC$GXFPRINTF4 @ DECC$GXFPRINTF4# G MULTINET_SOCKET4$ b#@MULTINET_SOCKET4# @ MULTINET_SOCKET4! G  MULTINET_BIND4" b#@ MULTINET_BIND4! @  MULTINET_BIND</ G <MULTINET_SETSOCKOPT<0 b#@MULTINET_SETSOCKOPT</ 8@ <MULTINET_SETSOCKOPT<; LG hMULTINET_CONNECT<< `b#@MULTINET_CONNECT<; d@ hMULTINET_CONNECT47 G MULTINET_LISTEN48 b#@MULTINET_LISTEN47 @ MULTINET_LISTEN</ G MULTINET_SETSOCKOPT<0 b#@MULTINET_SETSOCKOPT</ @ MULTINET_SETSOCKOPT4) G MULTINET_ACCEPT4* b#@MULTINET_ACCEPT4) @ MULTINET_ACCEPT</ 8G lMULTINET_SETSOCKOPT<0 Pb#@MULTINET_SETSOCKOPT</ h@ lMULTINET_SETSOCKOPT</ |G MULTINET_SETSOCKOPT<0 b#@MULTINET_SETSOCKOPT</ @ MULTINET_SETSOCKOPT</ G MULTINET_SETSOCKOPT<0 b#@MULTINET_SETSOCKOPT</ @ MULTINET_SETSOCKOPTD G 4MULTINET_GET_SOCKET_ERRNO_ADDRD (b#@MULTINET_GET_SOCKET_ERRNO_ADDRD 0@ 4MULTINET_GET_SOCKET_ERRNO_ADDR4- G  DECC$FREAD4. b#@ DECC$FREAD4- @  DECC$FREAD4- G  DECC$FREAD4. b#@ DECC$FREAD4-  @  DECC$FREAD4' @ G d DECC$FWRITE4( X b#@ DECC$FWRITE4' ` @ d DECC$FWRITED G MULTINET_GET_SOCKET_ERRNO_ADDRD b#@MULTINET_GET_SOCKET_ERRNO_ADDRD @ MULTINET_GET_SOCKET_ERRNO_ADDR4 4 G d DECC$GXFPRINTF4 T b#@DECC$GXFPRINTF4 ` @ d DECC$GXFPRINTF4 G DECC$GXFPRINTF4 b#@DECC$GXFPRINTF4 @ DECC$GXFPRINTF4 G  DECC$GXFPRINTF4 b#@DECC$GXFPRINTF4  @  DECC$GXFPRINTF4 < G t DECC$GXFPRINTF4 D b#@DECC$GXFPRINTF4 p @ t DECC$GXFPRINTF4 t G DECC$EXIT4 b#@ DECC$EXIT4 @ DECC$EXIT4 G DECC$GXFPRINTF4 b#@DECC$GXFPRINTF4 @ DECC$GXFPRINTF4 G DECC$EXIT4 b#@ DECC$EXIT4 @ DECC$EXIT4  G , DECC$GXFPRINTF4  b#DECC$GXFPRINTF4 ( @ , DECC$GXFPRINTF4 , G D SOCKET_PERROR4 8 b# SOCKET_PERROR 4 @ @ D SOCKET_PERRORD H G d MULTINET_GET_SOCKET_ERRNO_ADDRD P b#MULTINET_GET_SOCKET_ERRNO_ADDRD ` @ d MULTINET_GET_SOCKET_ERRNO_ADDR4 d G DECC$GXFPRINTF4 x b#DECC$GXFPRINTF4 @ DECC$GXFPRINTF4 G DECC$EXIT4 b# DECC$EXIT4 @ DECC$EXIT4 G DECC$GXFPRINTF4 {#0DECC$GXFPRINTF4 DECC$GXFPRINTF4 G DECC$ISPRINT4 b# DECC$ISPRINT4 @ DECC$ISPRINT4 8G X GETTIMEOFDAY4 Pb# GETTIMEOFDAY4 T@ X GETTIMEOFDAY4 G  GETTIMEOFDAY4 b# GETTIMEOFDAY4 @  GETTIMEOFDAY4 G  DECC$STRNCPY4 b# DECC$STRNCPY4 @  DECC$STRNCPY4 G DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 G DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 dG DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 8G \DECC$GXSPRINTF4 Tb#DECC$GXSPRINTF4 X@ \DECC$GXSPRINTF4 G DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 G $DECC$GXSPRINTF4 @ $DECC$GXSPRINTF4 G DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 G DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 G DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 G DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 G DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 G DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 pG DECC$GXSPRINTF4 |b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 0G DDECC$GXSPRINTF4 <b#DECC$GXSPRINTF4 @@ DDECC$GXSPRINTF4 G DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 G DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF4 | G DECC$GXSPRINTF4 b#DECC$GXSPRINTF4 @ DECC$GXSPRINTF< `"G |"MULTINET_RECVFROM ,< l"b#MULTINET_RECVFROM< x"@ |"MULTINET_RECVFROM4 "G " SOCKET_READ4 "b# SOCKET_READ4 "@ " SOCKET_READ4 "G 8#MULTINET_SENDTO4 ,#b#PMULTINET_SENDTO4 4#@ 8#MULTINET_SENDTOD P#G d#MULTINET_GET_SOCKET_ERRNO_ADDRD X#b#PMULTINET_GET_SOCKET_ERRNO_ADDRD `#@ d#MULTINET_GET_SOCKET_ERRNO_ADDRD #G #MULTINET_GET_SOCKET_ERRNO_ADDRD #b#PMULTINET_GET_SOCKET_ERRNO_ADDRD #@ #MULTINET_GET_SOCKET_ERRNO_ADDR4 #G #MULTINET_SENDTO4 #b#PMULTINET_SENDTO4 #@ #MULTINET_SENDTO4 #G # SOCKET_WRITE4 #b#P SOCKET_WRITE4 #@ # SOCKET_WRITE4 L$G $ SYS$SETIMR4 |$b# SYS$SETIMR4 $@ $ SYS$SETIMR4 $G $SYS$EXIT4 $b#SYS$EXIT4 $@ $SYS$EXIT4 $G $ SYS$WAITFR4 $b# SYS$WAITFR4 $@ $ SYS$WAITFR4 %G <% SOCKET_READ4 4%b#` SOCKET_READ4 8%@ <% SOCKET_READ4 %G % SOCKET_PERROR4 %b#` SOCKET_PERROR4 %@ % SOCKET_PERROR4 %G 4& DECC$CLOCK4 %b#P DECC$CLOCK4 0&@ 4& DECC$CLOCK X=`Xp pp @@@ @ @@0@@ =  @    ` =0" 0$;=08  SYS$SETIMRSYS$EXIT SYS$WAITFR=0" ";=P@ 7SINHIM MULTINET_SENDTO( MULTINET_GET_SOCKET_ERRNO_ADDR; SOCKET_WRITE=0 !;=0 !;=0  ;=@` ; DECC$GXSPRINTF= Y;=ų> ף=0" %;=0$  DECC$CLOCK=0& ;=0 ;7CPUT=tJ$=?h GETTIMEOFDAY7REALT DECC$STRNCPY=0" ;=@( 7DECC$GA_STDERR DECC$GXFPRINTF DECC$EXIT7TRANSP SOCKET_PERROR=0" $;=@(|  SOCKET_READ=0 " 0";=@(  ; MULTINET_RECVFROM=0  ;= ( =0" ;=P0 7DECC$$GA___CTYPET7DECC$$GL___CTYPEA DECC$ISPRINT=0" ;= 0 ! MULTINET_BIND #MULTINET_SOCKET% DECC$MALLOC' DECC$FWRITE )MULTINET_ACCEPT7FROMINET +MULTINET_GETHOSTBYNAME7FROMLEN- DECC$FREAD7SINME7SINKMODE7STATS /MULTINET_SETSOCKOPT ;;=;(;; ;=0" ;=T 7FD7BUF;7ADDR7HOST=B1 DECC$ATOI7 DECC$GA_STDIN;7DECC$GA_STDOUT3MULTINET_HTONS=p?Mb; 5MULTINET_INET_ADDR7DOMAIN ; 7MULTINET_LISTEN8OTS$MOVE  ;MULTINET_CONNECT=08" ;=P0 7DECC$$SHELL_HANDLER== DECC$MAIN 9=)! TTCP HP C V7.3-009 ?= @4=TRANSFER$BREAK$GO =  4@4= main 4=WO T T T! T T T T T T T T* T T T T T T T T T T T T T T T T T T T T T T U U U U$ U U U U6 U !U !U &U &U &U *U ,U ,U *U  7U :U 9U 9U BU BU  NU TU WU WU WU YU ZU YU YU ZU \U \U YU< ^U _U ^U _U aU ^U$ =  =  44= err 4=<43 jU jU jU jU mU =  =  404= mes 4=:21 vU sU sU sU vU vU = ` =  44= pattern 4=IA@ U yU yU U U U U< =   =  44= prep_timer 4=B:9 U U U U U U = ` =  44= read_timer 4=h`_ U U U U U U U U U = p =  44= prusage 4= U  U  U  U U  U U~ U U U U U U U U U U U U U Uv U  U U_ U_ _V _V V^ _V Uj cV Ui `V V[ V Uc dV U U U U Ud Uk aV _V `V cV gV lV lV lV kV( V V VL V V V V V V4 V 9V 9V UQP :=   4= V }=_v  4=  4=  H4=  P4=  t4=  4= ( 4=  4=  4=  `4=  p4=  =  =  !44= tvadd !4=6.- GV GV IV HV IV = P =  !44= tvsub !4= RV SV = @ =psecs =  =  0"44= Nread 0"4=OGF {V tV tV tV yV {V ~V =  =  "4P4= Nwrite "4=c[Z V V V V V V V V V0 = ` =  0$44= delay 0$4=OGF V V V V V V V =  =  $4`4= mread $4=5-, V  V0 V =  =  %4P4= getrusage %4=phg V V V V V V V W W =  s=  404= __main 4= T =  L e4 =  DECC$GA_STDERR DECC$GA_STDINDECC$GA_STDOUT DECC$FREAD DECC$FWRITEDECC$GXFPRINTFDECC$GXSPRINTF DECC$ISPRINT DECC$$GA___CTYPET DECC$$GL___CTYPEA DECC$ATOI DECC$EXIT DECC$MALLOC DECC$STRNCPYSYS$EXIT SYS$SETIMR SYS$WAITFR(MULTINET_GET_SOCKET_ERRNO_ADDRMULTINET_ACCEPT MULTINET_BIND MULTINET_CONNECT MULTINET_RECVFROMMULTINET_SENDTOMULTINET_HTONSMULTINET_LISTEN MULTINET_SETSOCKOPTMULTINET_SOCKET SOCKET_PERROR SOCKET_READ SOCKET_WRITE MULTINET_GETHOSTBYNAME DECC$CLOCK GETTIMEOFDAY MULTINET_INET_ADDR DECC$MAIN DECC$$SHELL_HANDLEROTS$MOVE 0C$GA