Edit C:\Users\Admin\.m2\repository\org\dspace\handle\6.2\net\handle\hdllib\HandleResolver.class
???? 0 ???? ? ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?` ?? ??? ? ?? ??? ? ?? ???? ? ? ????? "?? "? "? "? !? ?? ]??? ,?? /? ?? /? ?? /? ?? /? ?? /? ?? /? ?? /? /? /? /? /? /? ?? /? ?? /? ?? /? ???? I??? ???? ?? ?? C? ,?? T? ?? ??? ]? ?? ]? ??? ?? ?? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ] ? ?? ? ! ??" #$ ?%& '( ?) *+ ?,- *. /0 12 *3 ?4 ?5?67 ?89 ?:; *< ?= *? *? ?? ?? ?> *? ?@ *A C= ?B ?C D ?EF ? ? ?G ?H IJ IK ?L IMN IO ?P IQR ?S ?S ?T ?? ?U ?V ?WX /Y ?Z ?[ ?\] ?^_` ?a CSb ?c ?d ? ?S ? !ef ?g /S / ?h ?i jk ? ?l ?mn C? ?? ?o ? ?p ?q rs jt ?u ?v ?wx ?y ? ?? ?S ?Sz{| j}~ ?? ?? ?? ?? /? ?? /? ?? ?? ?? ?? ??? "? C? ??? C? ,???? C??? !?? ?? C? ?? ?? C?? ??? ? ? ? ?? ? S ?? ??? ?? ??? ? ?? ? r? '?? -? -? N???? ?? "? -? -?? '? -? '? '? r? ??? ?? r??? ?? ???? !??? ?? ?? ?? ?? ?? ?? ?? ??? ?????? C? C?? ?? ?? C?? _)?? ???? e?? ??? ?? ?? ?? ???? ??? q??? t?? v? v?? N? N? N? N? tD N N ?? ? ? traceMessages Z HTTP_ACCEPT_HEADER [B HTTP_AGENT_HEADER HTTP_CONTENT_TYPE_HEADER HTTP_NEWLINE nextRequestId I globalMessageId random Ljava/util/Random; config !Lnet/handle/hdllib/Configuration; preferredProtocols [I resolverSessions (Lnet/handle/hdllib/ClientSessionTracker; maxUDPDataSize secureCache Lnet/handle/hdllib/Cache; cache udpRetryScheme tcpTimeout checkSignatures responseTimeTbl Lnet/handle/util/LRUCacheTable; preferredEncryptionAlgorithm )class$net$handle$hdllib$ChallengeResponse Ljava/lang/Class; Synthetic <init> ()V Code LineNumberTable LocalVariableTable this "Lnet/handle/hdllib/HandleResolver; protocolsByPreference ()[I i protocolList retrieveHandleIndexData ([BI)[B handle index req %Lnet/handle/hdllib/ResolutionRequest; response $Lnet/handle/hdllib/AbstractResponse; values [Lnet/handle/hdllib/HandleValue; Exceptions createSessionSetupRequest s(Lnet/handle/hdllib/AuthenticationInfo;Lnet/handle/hdllib/SessionSetupInfo;)Lnet/handle/hdllib/SessionSetupRequest; authInfo &Lnet/handle/hdllib/AuthenticationInfo; options $Lnet/handle/hdllib/SessionSetupInfo; ssreq 'Lnet/handle/hdllib/SessionSetupRequest; getNextRequestId ()I setCache (Lnet/handle/hdllib/Cache;)V setCertifiedCache clearCaches c setSessionTracker +(Lnet/handle/hdllib/ClientSessionTracker;)V sessionTracker getSessionTracker *()Lnet/handle/hdllib/ClientSessionTracker; setConfiguration $(Lnet/handle/hdllib/Configuration;)V setPreferredProtocols ([I)V prefProtocols setMaxUDPDataSize (I)V newMaxUDPDataSize getMaxUDPDataSize getConfiguration #()Lnet/handle/hdllib/Configuration; setTcpTimeout newTcpTimeout getTcpTimeout getUdpRetryScheme urs setUdpRetryScheme newudpRetryScheme setCheckSignatures (Z)V checkSigs resolveHandle I(Ljava/lang/String;[Ljava/lang/String;[I)[Lnet/handle/hdllib/HandleValue; msg Ljava/lang/String; sHandle sTypes [Ljava/lang/String; indexes types [[B numValues filteredVals j 4(Ljava/lang/String;)[Lnet/handle/hdllib/HandleValue; processRequest t(Lnet/handle/hdllib/AbstractRequest;Lnet/handle/hdllib/ResponseMessageCallback;)Lnet/handle/hdllib/AbstractResponse; cacheSites [Lnet/handle/hdllib/SiteInfo; #Lnet/handle/hdllib/AbstractRequest; callback +Lnet/handle/hdllib/ResponseMessageCallback; I(Lnet/handle/hdllib/AbstractRequest;)Lnet/handle/hdllib/AbstractResponse; processRequestGlobally findLocalSites B(Lnet/handle/hdllib/AbstractRequest;)[Lnet/handle/hdllib/SiteInfo; svcReq svcRes srvHdlValue Lnet/handle/hdllib/HandleValue; nsInfo !Lnet/handle/hdllib/NamespaceInfo; sites resReq resResponse sendRequestToService ?(Lnet/handle/hdllib/AbstractRequest;[Lnet/handle/hdllib/SiteInfo;Lnet/handle/hdllib/ResponseMessageCallback;)Lnet/handle/hdllib/AbstractResponse; f(Lnet/handle/hdllib/AbstractRequest;[Lnet/handle/hdllib/SiteInfo;)Lnet/handle/hdllib/AbstractResponse; ?(Lnet/handle/hdllib/AbstractRequest;[Lnet/handle/hdllib/SiteInfo;ZLnet/handle/hdllib/ResponseMessageCallback;)Lnet/handle/hdllib/AbstractResponse; cachedVals e Ljava/lang/Throwable; rreq ignoreRestricted #Lnet/handle/hdllib/HandleException; p ip l Ljava/lang/Long; cacheResult isCacheable resp requestSent sendRequestToSite e(Lnet/handle/hdllib/AbstractRequest;Lnet/handle/hdllib/SiteInfo;)Lnet/handle/hdllib/AbstractResponse; Ljava/lang/Exception; site Lnet/handle/hdllib/SiteInfo; f(Lnet/handle/hdllib/AbstractRequest;Lnet/handle/hdllib/SiteInfo;I)Lnet/handle/hdllib/AbstractResponse; protocol ?(Lnet/handle/hdllib/AbstractRequest;Lnet/handle/hdllib/SiteInfo;ILnet/handle/hdllib/ResponseMessageCallback;)Lnet/handle/hdllib/AbstractResponse; time2 J time1 sendRequestToServer g(Lnet/handle/hdllib/AbstractRequest;Lnet/handle/hdllib/ServerInfo;)Lnet/handle/hdllib/AbstractResponse; server Lnet/handle/hdllib/ServerInfo; ?(Lnet/handle/hdllib/AbstractRequest;Lnet/handle/hdllib/ServerInfo;Lnet/handle/hdllib/ResponseMessageCallback;)Lnet/handle/hdllib/AbstractResponse; sendRequestToServerByProtocol ?(Lnet/handle/hdllib/AbstractRequest;Lnet/handle/hdllib/ServerInfo;ILnet/handle/hdllib/ResponseMessageCallback;)Lnet/handle/hdllib/AbstractResponse; setupInfo newSessionInfo )Lnet/handle/hdllib/ClientSideSessionInfo; answer *Lnet/handle/hdllib/ChallengeAnswerRequest; challResponse %Lnet/handle/hdllib/ChallengeResponse; sig challengeSessionID protocolToUse origServer exception interfce Lnet/handle/hdllib/Interface; sessionInfo setupSessionWithServer ?(Lnet/handle/hdllib/AuthenticationInfo;Lnet/handle/hdllib/SessionSetupInfo;Lnet/handle/hdllib/ServerInfo;Lnet/handle/hdllib/ResponseMessageCallback;)Lnet/handle/hdllib/ClientSideSessionInfo; sessionOptions ?(Lnet/handle/hdllib/AuthenticationInfo;Lnet/handle/hdllib/SessionSetupInfo;Lnet/handle/hdllib/ServerInfo;Lnet/handle/hdllib/ClientSideSessionInfo;Lnet/handle/hdllib/ResponseMessageCallback;)Lnet/handle/hdllib/ClientSideSessionInfo; tmp pubExchangeKey encryptKey oldServer serverRSAPubKey Ljava/security/PublicKey; key sekr -Lnet/handle/hdllib/SessionExchangeKeyRequest; rsp pub %Ljavax/crypto/interfaces/DHPublicKey; provider )Lnet/handle/security/HdlSecurityProvider; ssresp (Lnet/handle/hdllib/SessionSetupResponse; currSession sessionKey sessionKeyAlg identityHandle identityIndex sessionsetupReq oldTcpTimeout oldUdpRetryScheme csinfo sendRequestToInterface ?(Lnet/handle/hdllib/AbstractRequest;Lnet/handle/hdllib/ServerInfo;Lnet/handle/hdllib/Interface;)Lnet/handle/hdllib/AbstractResponse; ?(Lnet/handle/hdllib/AbstractRequest;Lnet/handle/hdllib/ServerInfo;Lnet/handle/hdllib/Interface;Lnet/handle/hdllib/ResponseMessageCallback;)Lnet/handle/hdllib/AbstractResponse; addr Ljava/net/InetAddress; port Ljava/net/UnknownHostException; verifyResponse `(Lnet/handle/hdllib/AbstractRequest;Lnet/handle/hdllib/AbstractResponse;Ljava/net/InetAddress;)Z veriPass J(Lnet/handle/hdllib/AbstractRequest;Lnet/handle/hdllib/AbstractResponse;)V requestDigest pubKey sendHdlUdpRequest `(Lnet/handle/hdllib/AbstractRequest;Ljava/net/InetAddress;I)Lnet/handle/hdllib/AbstractResponse; ?(Lnet/handle/hdllib/AbstractRequest;Ljava/net/InetAddress;ILnet/handle/hdllib/ResponseMessageCallback;)Lnet/handle/hdllib/AbstractResponse; thisPacketSize buf packetNum e2 packet pr numPkts he rspnsPktData rspnsPktDataLen rspnsPkt Ljava/net/DatagramPacket; returnMessage packetsReceived [Z haveAllPackets whenToTimeout attempt socket Ljava/net/DatagramSocket; sndEnvelope #Lnet/handle/hdllib/MessageEnvelope; requestBuf numPackets packets [Ljava/net/DatagramPacket; bytesRemaining rcvEnvelope lastException sendHdlTcpRequest r messageBuf envBuf n Ljava/io/IOException; Ljava/net/Socket; out Ljava/io/OutputStream; in Ljava/io/InputStream; encodeHandleAsUri ([B)Ljava/lang/String; sendHttpRequest line colIdx headers Ljava/util/Hashtable; din Ljava/io/DataInputStream; class$ %(Ljava/lang/String;)Ljava/lang/Class; x1 "Ljava/lang/ClassNotFoundException; x0 <clinit> SourceFile HandleResolver.java ? java/lang/ClassNotFoundException java/lang/NoClassDefFoundError??????????????????????? net/handle/util/LRUCacheTable?????? net/handle/hdllib/MemCache???? #net/handle/hdllib/ResolutionRequest???? $net/handle/hdllib/ResolutionResponse java/lang/Exception java/lang/StringBuffer +Unable to verify resolve the handle/index ? #The index specified does not exist !net/handle/hdllib/HandleException >Cannot create session setup request with null SessionSetupInfo? %net/handle/hdllib/SessionSetupRequest ?!"V?#?W?$?%?&?'?(?)?*+,+-?.?/?0?1??? java/lang/RuntimeException HError: attempt to set the certified and regular cache to the same value23?456 java/lang/String789??:? net/handle/hdllib/ErrorResponse;?<?=>? : @?AB??AC net/handle/hdllib/HandleValue??D?EF?G?H?IJ ?KLMN??OPQRST?UVW?XJY?Z[\?>2??]^_`abc?dVe?f? "Unable to find service for handle ; prefix resolution response: g?h?i?jk?l java/lang/Throwablemn Cache get error: opqrst?% &Cannot contact an acceptable interfaceuvwxyz java/lang/Long{'|}~?? Cache set error: ?? #No acceptable site found in service# *Unable to contact site on any interfaces: ?????}??./????????)- /There were no acceptable interfaces to server: ??????????@?? Error setting up session: ???B?? Error modifying session: ????????? 2Unable to sign original request with session key: ??\^???? #net.handle.hdllib.ChallengeResponse?? No authentication info provided #net/handle/hdllib/ChallengeResponse?? (net/handle/hdllib/ChallengeAnswerRequest???q? Got Exception: ????????????? &net/handle/hdllib/SessionSetupResponse???????????????(? +net/handle/hdllib/SessionExchangeKeyRequest?? "Server cipher key exchange failed. #javax/crypto/interfaces/DHPublicKey $javax/crypto/interfaces/DHPrivateKey?? Unknown key exchange mode 'net/handle/hdllib/ClientSideSessionInfo???????H?????a?$+ik?k?k unknown protocol: ??? java/net/UnknownHostException #Unknown host - should never happen!???? Error verifying MAC code: EUnable to verify certified message: no pubkey associated with request Unable to extract public key: ?? Verification failed. Unable to verify signature: '? ' for message: ?+???g? .Message came back with invalid request digest.?? !net/handle/hdllib/MessageEnvelope?+?+????? )Cannot encrypt messages without a session???? Cannot send empty request java/net/DatagramPacket??????????? java/net/DatagramSocket???? setting SO timeout sending HDL-UDP request ( ) to ??????? sending UDP request to ???????? (Cannot decrypt message without a session Decrypting UDP message: ???? "net/handle/hdllib/AbstractResponse received HDL-UDP response: cdcf??? Unable to connect to server: sending HDL-TCP request (??????????? ? sending TCP request to %Message came back with different ID: != )Cannot decrypt messages without a session Decrypting TCP message: ?? received HDL-TCP response: ? java/io/IOException Error talking to / sending HDL-HTTP request ( java/io/BufferedOutputStream? POST ?? HTTP/1.0 ???????? Content-Length: ?? java/io/BufferedInputStream? sending HTTP request to java/util/Hashtable java/io/DataInputStream? /: Unexpected end of HTTP message during headers? ??? 6Invalid response session id. Cannot decrypt response. #Accept: application/x-hdl-message User-Agent: CNRI-HCL 2.0 )Content-Type: application/x-hdl-message java/util/Random? net/handle/hdllib/HandleResolver java/lang/Object java/lang/Class forName initCause ,(Ljava/lang/Throwable;)Ljava/lang/Throwable; net/handle/hdllib/Configuration defaultConfiguration 0([B[[B[ILnet/handle/hdllib/AuthenticationInfo;)V certify append ,(Ljava/lang/String;)Ljava/lang/StringBuffer; ,(Ljava/lang/Object;)Ljava/lang/StringBuffer; toString ()Ljava/lang/String; (Ljava/lang/String;)V getHandleValues "()[Lnet/handle/hdllib/HandleValue; getData ()[B (ILjava/lang/String;)V "net/handle/hdllib/SessionSetupInfo keyExchangeMode $net/handle/hdllib/AuthenticationInfo getUserIdHandle getUserIdIndex exchangeKeyHandle exchangeKeyIndex publicExchangeKey publicKey encrypt returnRequestDigest majorProtocolVersion B minorProtocolVersion encrypted encryptAllSessionMsg authenticated authAllSessionMsg timeout net/handle/hdllib/Cache clear java/lang/System arraycopy *(Ljava/lang/Object;ILjava/lang/Object;II)V net/handle/hdllib/Util encodeString (Ljava/lang/String;)[B responseCode message decodeString !net/handle/hdllib/AbstractMessage getResponseCodeMessage (I)Ljava/lang/String; type isInArray ([[B[B)Z ([II)Z getResolutionMethod !net/handle/hdllib/AbstractRequest isAdminRequest requiresConnection ignoreRestrictedValues getCacheSites ()[Lnet/handle/hdllib/SiteInfo; getGlobalNamespace #()Lnet/handle/hdllib/NamespaceInfo; setNamespace $(Lnet/handle/hdllib/NamespaceInfo;)V getNAHandle ([B)[B getLocalSites !([B)[Lnet/handle/hdllib/SiteInfo; net/handle/hdllib/Common GLOBAL_NA_PREFIX startsWithCI ([B[B)Z GLOBAL_NA getGlobalSites LOCATION_TYPES takeValuesFrom &(Lnet/handle/hdllib/AbstractMessage;)V authoritative recursionCount S getNamespaceFromValues C([Lnet/handle/hdllib/HandleValue;)Lnet/handle/hdllib/NamespaceInfo; getSitesFromValues ?([Lnet/handle/hdllib/HandleValue;)[Lnet/handle/hdllib/SiteInfo; SERVICE_HANDLE_TYPE equals data SITE_INFO_TYPES opCode requestedTypes requestedIndexes getCachedValues ([B[[B[I)[[B +(Lnet/handle/hdllib/AbstractRequest;[B[[B)V err Ljava/io/PrintStream; java/io/PrintStream println printStackTrace (Ljava/io/PrintStream;)V net/handle/hdllib/SiteInfo isPrimary servers [Lnet/handle/hdllib/ServerInfo; net/handle/hdllib/ServerInfo getAddressString get &(Ljava/lang/Object;)Ljava/lang/Object; responseTime longValue ()J orderSitesByPreference <([Lnet/handle/hdllib/SiteInfo;)[Lnet/handle/hdllib/SiteInfo; setCachedValues *([B[Lnet/handle/hdllib/HandleValue;[[B[I)V refreshRootInfoFromNet serialNumber siteInfoSerial currentTimeMillis determineServer "([B)Lnet/handle/hdllib/ServerInfo; isRoot notifyRootInfoOutdated (J)V put 8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; hasExpired ()Z &net/handle/hdllib/ClientSessionTracker getSession o(Lnet/handle/hdllib/ServerInfo;Lnet/handle/hdllib/AuthenticationInfo;)Lnet/handle/hdllib/ClientSideSessionInfo; getSessionSetupInfo &()Lnet/handle/hdllib/SessionSetupInfo; putSession p(Lnet/handle/hdllib/ClientSideSessionInfo;Lnet/handle/hdllib/ServerInfo;Lnet/handle/hdllib/AuthenticationInfo;)V sessionOptionChanged P(Lnet/handle/hdllib/ClientSideSessionInfo;Lnet/handle/hdllib/SessionSetupInfo;)Z removeSession ,(Lnet/handle/hdllib/ClientSideSessionInfo;)V sessionId getAuthenticateMessageFlag getEncryptedMesssageFlag getSessionKey signMessage ([B)V interfaceWithProtocol C(ILnet/handle/hdllib/AbstractRequest;)Lnet/handle/hdllib/Interface; getClass ()Ljava/lang/Class; authenticate L(Lnet/handle/hdllib/ChallengeResponse;Lnet/handle/hdllib/AbstractRequest;)[B getAuthType 0([B[BI[BLnet/handle/hdllib/AuthenticationInfo;)V 'net/handle/security/HdlSecurityProvider getInstance +()Lnet/handle/security/HdlSecurityProvider; privateExchangeKey Ljava/security/PrivateKey; decrypt (Ljava/security/PrivateKey;[B)[B hasEqualOrGreaterVersion (BB)Z net/handle/hdllib/Encoder readInt ([BI)I generateSecretKey (I)[B substring getPublicKeyFromBytes ([BI)Ljava/security/PublicKey; (Ljava/security/PublicKey;[B)[B getDESKeyFromDH O(Ljavax/crypto/interfaces/DHPublicKey;Ljavax/crypto/interfaces/DHPrivateKey;)[B '(I[B[BILnet/handle/hdllib/ServerInfo;)V setEncryptionAlgorithmCode takeValuesFromOption '(Lnet/handle/hdllib/SessionSetupInfo;)V serverPubKey serverPubKeyBytes getInetAddress ()Ljava/net/InetAddress; net/handle/hdllib/Interface (I)Ljava/lang/StringBuffer; expiration verifyMessage ([B)Z getCode (Ljava/security/PublicKey;)Z getMessage rdHashType getEncodedMessageBody doDigest (B[B)[B mapLocalAddress .(Ljava/net/InetAddress;)Ljava/net/InetAddress; protocolMajorVersion protocolMinorVersion requestId getEncodedMessage encryptBuffer ([BII)[B messageLength truncated java/lang/Math min (II)I messageId encodeEnvelope ((Lnet/handle/hdllib/MessageEnvelope;[B)V ([BILjava/net/InetAddress;I)V close valueOf &(Ljava/lang/Object;)Ljava/lang/String; java/net/InetAddress getHostAddress (C)Ljava/lang/StringBuffer; setSoTimeout send (Ljava/net/DatagramPacket;)V ([BI)V receive getLength decodeEnvelope (([BLnet/handle/hdllib/MessageEnvelope;)V decryptBuffer decodeMessage K([BILnet/handle/hdllib/MessageEnvelope;)Lnet/handle/hdllib/AbstractMessage; )net/handle/hdllib/ResponseMessageCallback handleResponse '(Lnet/handle/hdllib/AbstractResponse;)V !net/handle/hdllib/TimedConnection getSocket +(Ljava/net/InetAddress;II)Ljava/net/Socket; java/net/Socket setSoLinger (ZI)V getOutputStream ()Ljava/io/OutputStream; java/io/OutputStream write ([BII)V flush getInputStream ()Ljava/io/InputStream; java/io/InputStream read ([BII)I streaming stream continuous java/net/URLEncoder encode &(Ljava/lang/String;)Ljava/lang/String; (Ljava/io/OutputStream;I)V (Ljava/io/InputStream;I)V (Ljava/io/InputStream;)V readLine trim length indexOf (I)I toUpperCase (II)Ljava/lang/String; nextInt abs !?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ? 3 ?? ? ? ?*? *? *? ? *? YOYOYO? *? *? *? *? *? Y?OY?OY?O? *? *? *? Y@? ? *? *? Y? ? *? Y? ? ? ? B E * , # 0 ( 1 / 2 4 3 9 4 R 7 X <