2  "  "  " "  " " "      ! "# $% &'( )* + ,-./  0 1 2 34 56 7 "89 5: ; <= &2 > ?@ -2A &B CDE 2BF $G 5H IJ KLM 5NO PQ R S T "U "V "W "X "Y "Z "[ <\ ] ^ _` _a b "c $d e "f g hi j kl mn 5op qr 5s "t uvw _x uy _z{ _| }~ _ " _ q <     y y u y3 ~B q   q " _                     =     q  q  q         InnerClassesserventLphex/servent/Servent;messageService!Lphex/msghandling/MessageService;securityService#Lphex/security/PhexSecurityManager; headerBuffer[B connectedHostLphex/host/Host; connection Lphex/net/connection/Connection; headersReadLphex/http/HTTPHeaderGroup; headersSend)(Lphex/servent/Servent;Lphex/host/Host;)VCodeLineNumberTableprocessIncomingData()V StackMapTable4.99@@ Exceptions readHeader()Lphex/msg/MsgHeader;initHostHandshakeinitializeIncomingWith06winitializeOutgoingWith06configureConnectionType9(Lphex/http/HTTPHeaderGroup;Lphex/http/HTTPHeaderGroup;)VhandleXTryHeaders(Lphex/http/HTTPHeaderGroup;)VhandleXTryHosts([Lphex/http/HTTPHeader;Z)VconfigureRemoteHostpostHandshakeConfigurationsendStringToHost(Ljava/lang/String;)V SourceFileConnectionEngine.java           TTL or hops below 0      java/lang/Integer Hops larger then maxNetworkTTL  Unknown message type phex/msg/InvalidMessageExceptionjava/lang/StringBuilderInvalid message:    phex/connection/ConnectionEngine   java/io/IOException   !"# $% &' (java/lang/ExceptionException occured:  )*)phex/connection/ConnectionClosedException Connection closed by remote host2Negative body size. Disconnecting the remote host. + ,-. /0 1 - Body too big. Header:  Body(256KB): 2.Packet too big. Disconnecting the remote host.3 45 67 89 :"  ;% &< =>? @9 A9 BC DE F G HI J"K LM NOP QRS TU V- - Connect headers:  W  2  XY)phex/connection/handshake/HandshakeStatus Z[ \] GNUTELLA/0.6 ^ _ `   Connection not accepted: ab - Response Code: ''. - Response Message: ' - Response Headers: Host rejected connection: c d%Negotiate0_6Handshakee fg hij k l0.6java/lang/StringBuffer m n o]+phex/connection/ConnectionRejectedException*Gnutella 0.6 connection rejected. Status:  -  X-Ultrapeer pq r s"X-Try tu X-Try-Ultrapeers vwjava/util/StringTokenizer x, y z" { |} ~      " 1phex/common/address/MalformedDestAddressException User-Agent   Listen-IP X-My-Address  m Remote-IP phex/common/address/IpAddress   EX-Query-Routing  java/lang/NumberFormatExceptionX-Ultrapeer-Query-Routing X-Dynamic-Querying   X-Max-TTL  X-Degree  mAccept-Encodingdeflate Content-Encoding  Vendor-Message   - Send:  ISO8859-1    java/lang/Object#phex/connection/ConnectionConstants"phex/connection/ConnectionEngine$1phex/msg/MsgHeaderphex/msg/Messagejava/lang/Throwable*phex/connection/handshake/HandshakeHandlerjava/lang/Stringphex/http/HTTPHeaderGroupphex/http/HTTPHeader[Lphex/http/HTTPHeader;phex/host/CaughtHostsContainerphex/common/address/DestAddressphex/security/AccessTypephex/servent/ServentgetMessageService#()Lphex/msghandling/MessageService;getSecurityService%()Lphex/security/PhexSecurityManager;phex/host/Host getConnection"()Lphex/net/connection/Connection; getDataLength()Iphex/msg/MessageProcessorreadMessageBody%(Lphex/net/connection/Connection;I)[BincReceivedCountgetTTL()B getHopsTakenphex/msghandling/MessageService dropMessage;(Lphex/msg/MsgHeader;[BLjava/lang/String;Lphex/host/Host;)Vphex/prefs/core/MessagePrefs MaxNetworkTTLLphex/prefs/api/Setting;phex/prefs/api/Settingget()Ljava/lang/Object;intValuesetTTL(B)VcreateMessageFromBodyM(Lphex/msg/MsgHeader;[BLphex/security/PhexSecurityManager;)Lphex/msg/Message;append-(Ljava/lang/String;)Ljava/lang/StringBuilder; getMessage()Ljava/lang/String;toStringphex/common/log/NLoggerwarn;(Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Throwable;)VcountHopdispatchMessage%(Lphex/msg/Message;Lphex/host/Host;)Vdebug isConnected()Zphex/host/HostStatusERRORLphex/host/HostStatus; setStatus+(Lphex/host/HostStatus;Ljava/lang/String;)V disconnectparseMessageHeader8(Lphex/net/connection/Connection;[B)Lphex/msg/MsgHeader; MaxLength isWarnEnabled(Ljava/lang/Class;)Zphex/utils/HexConverter toHexString([B)Ljava/lang/String;-(Ljava/lang/Object;)Ljava/lang/StringBuilder;&(Ljava/lang/Class;Ljava/lang/Object;)Vjava/lang/SystemcurrentTimeMillis()JsetArrivalTime(J)V setFromHost(Lphex/host/Host;)V isIncomming CONNECTED(Lphex/host/HostStatus;)VgetHostService()Lphex/host/HostManager;phex/host/HostManageraddIncomingHostaddConnectedHostgetHostAddress#()Lphex/common/address/DestAddress; sendUdpPing$(Lphex/common/address/DestAddress;)VTTL byteValuepingHost(Lphex/host/Host;B)VisVendorMessageSupported%phex/msg/vendor/MessagesSupportedVMsggetMyMsgSupported)()Lphex/msg/vendor/MessagesSupportedVMsg;queueMessageToSend(Lphex/msg/Message;)V phex/msg/vendor/CapabilitiesVMsggetMyCapabilitiesVMsg$()Lphex/msg/vendor/CapabilitiesVMsg;phex/http/HTTPProcessorparseHTTPHeaders=(Lphex/net/connection/Connection;)Lphex/http/HTTPHeaderGroup;isDebugEnabledbuildHTTPHeaderStringcreateHandshakeHandlerT(Lphex/servent/Servent;Lphex/host/Host;)Lphex/connection/handshake/HandshakeHandler;createHandshakeResponseY(Lphex/connection/handshake/HandshakeStatus;Z)Lphex/connection/handshake/HandshakeStatus;getResponseHeaders()Lphex/http/HTTPHeaderGroup; getStatusCode(I)Ljava/lang/StringBuilder;getStatusMessageparseHandshakeResponseM(Lphex/net/connection/Connection;)Lphex/connection/handshake/HandshakeStatus;replaceHeaders CONNECTINGphex/utils/Localizer getString&(Ljava/lang/String;)Ljava/lang/String;getGnutellaNetwork()Lphex/common/GnutellaNetwork;phex/common/GnutellaNetworkgetNetworkGreeting(C)Ljava/lang/StringBuilder;(I)V,(Ljava/lang/String;)Ljava/lang/StringBuffer;createOutgoingHandshakeHeaders getHeader*(Ljava/lang/String;)Lphex/http/HTTPHeader;setConnectionType booleanValue getHeaders+(Ljava/lang/String;)[Lphex/http/HTTPHeader;getCaughtHostsContainer"()Lphex/host/CaughtHostsContainer;getValue'(Ljava/lang/String;Ljava/lang/String;)V hasMoreTokens nextTokentrim#phex/net/repres/PresentationManager getInstance'()Lphex/net/repres/PresentationManager;createHostAddress6(Ljava/lang/String;I)Lphex/common/address/DestAddress;!phex/security/PhexSecurityManagercontrolHostAddressAccess=(Lphex/common/address/DestAddress;)Lphex/security/AccessType;#$SwitchMap$phex$security$AccessType[Iordinal getIpAddress!()Lphex/common/address/IpAddress; isSiteLocalIP addCaughtHost%(Lphex/common/address/DestAddress;S)V setVendor phex/common/address/AddressUtils parsePort(Ljava/lang/String;)IsetPortparseIP(Ljava/lang/String;)[B([B)VC(Lphex/common/address/IpAddress;I)Lphex/common/address/DestAddress;updateLocalAddressjava/lang/Float parseFloat(Ljava/lang/String;)FsetQueryRoutingSupported(Z)VsetUPQueryRoutingSupported floatValue()FsetDynamicQuerySupportedgetByteHeaderValue(Ljava/lang/String;B)B setMaxTTLgetIntHeaderValue(Ljava/lang/String;I)IsetUltrapeerDegreeisHeaderValueContaining'(Ljava/lang/String;Ljava/lang/String;)ZactivateInputInflationactivateOutputDeflationequals(Ljava/lang/Object;)ZsetVendorMessageSupportedgetBytesphex/io/buffer/ByteBufferwrap([B)Lphex/io/buffer/ByteBuffer;phex/net/connection/Connectionwrite(Lphex/io/buffer/ByteBuffer;)Vflush!" W'**+*+*+*,*, \] ^_`a&bi* * L* + M*+>+6*+,**+,*+d+,*:*+,*\6:*+,Y !*"#&+$**%L"++'*(*)+*+*,+L"++#*(*)+.+*,&YY/+.!0&#-&gl mp r%s+u4wCyF|W~fiy !#$,6DK_ +"#!2''&* * 1L+ 2Y34+ = &Y506P"7=* 8 N-9:"Y*:;+:<!=&Y>0+?@+*A+> #-=FPVR &*B *C*D**E*FG**E*FH*F4**FI*F*EL*F**FI*F*E+*JK*B*L*M*L*N**OP**QRS*TUL*+VWM*,V-IIJIf !-4<AIQY^eoy s$ L&0** XF"Y)"Y*:Z*F[!\**F]**^L+_Y*F`aM*,bE*Yc,def,gh!i,b[N*-i*hi,dȟ-&YYj,def,g!0* k:"Y|"Y*:ldem!\"Y*:ngm!\"Y*:ob[!\dȟ/&YYpdefg!0*FbqZ  :#B'N)_+g.01246:<>@=BdGoIMN:6& *rst+*uvLY+/wxh!MyYdzN-,{W**^:|:-[{W-h{W*E-}:*i* k:*bF"Y{"Y*:ldem!\"Y*:ngm!\"Y*:o*F[!\dȟad*~YYdefg!~YYdeg!**F]a:b: *E q*Ycdefgh!i [: * i*hidȟ/~YYjdefg!!SWY8ZB[H_Ub\dfemfshyikmnprty{(}O{/<+&d+N,:-*C-!*)** *2 #*2=HP[c  b#+M, *,+M, *, "  >>*L:6+Y+2:w:ʶ:*:  .:   >:hEV  !3;ER]L L +M,*,*B7+M, +M,!*ON,6 -+M,-,N-!Y-::*+M,,F% *N+M,,F% *N+M,,F% *N+>*+6*-   '+26>GLT[ _"g#k%u&'+,01386;<@ACHFKLPQSXV[]_ab !4!B!BBZ+, *,+ *,N-- *"imo3s:wAyQ{Y} &  b:"Y*:+!\+¶M* ,Ķ* Ʊ '29&  "