Edit C:\Users\Admin\.m2\repository\org\dspace\handle\6.2\net\handle\server\SessionManager.class
???? 0? e ? e ? f ? ? e ? ? e ? e ? e ? ? ? e ? e ? ? ? e ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ! ? ? ! e e 0 ? 0 0 0 e e e e ; ? ; e @ @ @!" D# @$ D% & ' ( )* L+,- ./0 1234 T5 16 78 79: ; <= ?> ]? @ A B eC ?DEF InnerClasses CheckSessionTimeOut RSA_PRIVATE_KEY_FILE Ljava/lang/String; ConstantValue RSA_PUBLIC_KEY_FILE rsaPubKey Ljava/security/PublicKey; rsaPrivKey Ljava/security/PrivateKey; maxAnonymousSession I sessionInfoDict Ljava/util/Hashtable; sessionOptionsDict anonymousSessionOption $Lnet/handle/hdllib/SessionSetupInfo; anonymousSessionDict Lnet/handle/util/IntTable; keepRunning Z sessionRandom Ljava/util/Random; sessionRandomLock SESSION_NOT_AVAILABLE???? SESSION_MAXNUM_PER_SERVER <init> ()V Code LineNumberTable LocalVariableTable this "Lnet/handle/server/SessionManager; getSession ,(I)Lnet/handle/server/ServerSideSessionInfo; sessionId ssinfo )Lnet/handle/server/ServerSideSessionInfo; removeSession (I)V replaceServerSideSessionInfo -(ILnet/handle/server/ServerSideSessionInfo;)Z newInfo addSession ,(Lnet/handle/server/ServerSideSessionInfo;)Z sessionInfo Exceptions checkTimeoutSession cst 6Lnet/handle/server/SessionManager$CheckSessionTimeOut; getSessions ()Ljava/util/Vector; sssinfo vecSessions Ljava/util/Vector; enumSession Ljava/util/Enumeration; :(Lnet/handle/hdllib/AuthenticationInfo;)Ljava/util/Vector; info &Lnet/handle/hdllib/AuthenticationInfo; ([BI)Ljava/util/Vector; identityHandle [B identityIndex getAllKeys ()Ljava/util/Enumeration; finalize t Ljava/lang/Throwable; shutdown getGeneratedSecretKey ()[B sessionKey initializeSessionKeyRandom ([B)V seed getSessionRandom ()Ljava/util/Random; loadRSAKeys ([BLjava/io/File;)Z r i inRSA Ljava/io/FileInputStream; rsaencKeyBytes n rsakeyBytes e Ljava/lang/Exception; pubkey rsaprivateKeyFile Ljava/io/File; rsapublicKeyFile secKey dir generateRSAKeys cryptoProvider )Lnet/handle/security/HdlSecurityProvider; keys Ljava/security/KeyPair; f in Ljava/io/DataInputStream; encrypt encKeyBytes keyBytes access$100 %(Lnet/handle/server/SessionManager;)Z x0 Synthetic access$200 9(Lnet/handle/server/SessionManager;)Ljava/util/Hashtable; <clinit> SourceFile SessionManager.java u v | } ? ? rsapriv.bin k l rsapub.bin n l o p q r java/util/Hashtable ? ? w v x y net/handle/util/IntTable z { java/lang/IntegerGH 'net/handle/server/ServerSideSessionInfoI ?JHKLM 2The new session info is null. No info is replaced.NOPQR ? t 4net/handle/server/SessionManager$CheckSessionTimeOut ?STUV ?W ? java/util/VectorX ?YZ[\]^_`a ?bc ? ?d ?efgh t ? ? ? ? java/lang/Throwable java/lang/StringBuffer "Error finalizing session manager: ijiklm ? ?no ? ? ? ~ ? l java/security/SecureRandom ? ?pc ? ? java/io/File ?qr[s[ java/io/FileInputStream ?tuvwxyz{|}~? java/lang/Exception?? %java/security/interfaces/RSAPublicKey &java/security/interfaces/RSAPrivateKey?? =Unable to initialize server session exchange key object. &Generating RSA session exchange key...??? !net/handle/hdllib/HandleException (Encryption/Key generation engine missing ????????? $Unable to generate RSA session key: ???? java/io/DataInputStream ?? ?????z ?? s t net/handle/server/SessionManager java/lang/Object "net/handle/server/SessionManager$1 get &(Ljava/lang/Object;)Ljava/lang/Object; touch remove java/lang/System err Ljava/io/PrintStream; java/io/PrintStream println (Ljava/lang/String;)V put 8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; I(Lnet/handle/server/SessionManager;Lnet/handle/server/SessionManager$1;)V setDaemon (Z)V setPriority start elements java/util/Enumeration hasMoreElements ()Z nextElement ()Ljava/lang/Object; addElement (Ljava/lang/Object;)V $net/handle/hdllib/AuthenticationInfo getUserIdHandle getUserIdIndex ()I identityKeyHandle net/handle/hdllib/Util equals ([B[B)Z identityKeyIndex append ,(Ljava/lang/String;)Ljava/lang/StringBuffer; ,(Ljava/lang/Object;)Ljava/lang/StringBuffer; toString ()Ljava/lang/String; java/util/Random nextBytes nextInt #(Ljava/io/File;Ljava/lang/String;)V exists canRead (Ljava/io/File;)V length ()J read ([BII)I decrypt ([B[B)[B getPrivateKeyFromBytes ([BI)Ljava/security/PrivateKey; getBytesFromFile (Ljava/io/File;)[B getPublicKeyFromBytes ([BI)Ljava/security/PublicKey; printStackTrace (Ljava/io/PrintStream;)V isMatchingKeyPair 6(Ljava/security/PublicKey;Ljava/security/PrivateKey;)Z 'net/handle/security/HdlSecurityProvider getInstance +()Lnet/handle/security/HdlSecurityProvider; (ILjava/lang/String;)V generateRSAKeyPair (I)Ljava/security/KeyPair; java/security/KeyPair getPublic ()Ljava/security/PublicKey; getPrivate ()Ljava/security/PrivateKey; getBytesFromPublicKey (Ljava/security/PublicKey;)[B writeBytesToFile (Ljava/io/File;[B)Z Ljava/io/InputStream; (Ljava/io/InputStream;)V getBytesFromPrivateKey (Ljava/security/PrivateKey;)[B encryptIfPossible ([B[BI)[B ! e f k l m n l m o p q r s t u v w v x y z { | } ~ ? l ? t m ? ? t m ? ? ? ? ? L*? *? *? *? *? *? Y ? ? *? Y ? ? *? *? Y ? ? *? ? ? . 8 $ ' ( 4 - 9 . F 0 K 8 ? L ? ? ? ? ? m *? ? Y? ? ? M,? ,? ,?? ? @ A B C F ? ? ? ? t ? ? ? ? ? r "*? YM?*? ? Y? ? W,ç N,?-?? ? M N O ! P ? "