4,org/postgresql/gss/GssEncActionLjava/lang/Object;Ljava/security/PrivilegedAction;Ljava/util/concurrent/Callable;java/lang/Objectjava/security/PrivilegedActionjava/util/concurrent/CallableGssEncAction.java5Lorg/checkerframework/checker/nullness/qual/Nullable;LOGGERLjava/util/logging/Logger;pgStreamLorg/postgresql/core/PGStream;hostLjava/lang/String;userkerberosServerName useSpnegoZgssUseDefaultCredssubjectLjavax/security/auth/Subject;logServerErrorDetailw(Lorg/postgresql/core/PGStream;Ljavax/security/auth/Subject;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZZ)V()V      !  #  %  '  )  +  -this!Lorg/postgresql/gss/GssEncAction;hasSpnegoSupport(Lorg/ietf/jgss/GSSManager;)Zorg/ietf/jgss/GSSException3org/ietf/jgss/Oid5 1.3.6.1.5.5.27(Ljava/lang/String;)V 9 6:org/ietf/jgss/GSSManager<getMechs()[Lorg/ietf/jgss/Oid; >? =@[Lorg/ietf/jgss/Oid;Bequals(Ljava/lang/Object;)Z DE 6FmechLorg/ietf/jgss/Oid;managerLorg/ietf/jgss/GSSManager;spnegomechsrun()Ljava/lang/Exception;java/io/IOExceptionP getInstance()Lorg/ietf/jgss/GSSManager; RS =Torg/ietf/jgss/GSSCredentialVjavax/security/auth/SubjectXgetPrivateCredentials"(Ljava/lang/Class;)Ljava/util/Set; Z[ Y\ java/util/Set^isEmpty()Z `a _biterator()Ljava/util/Iterator; de _fjava/util/Iteratorhnext()Ljava/lang/Object; jk il 12 n1.2.840.113554.1.2.2p getPrincipals()Ljava/util/Set; rs YthasNext va iwjava/security/PrincipalygetName()Ljava/lang/String; {| z}java/lang/StringcreateCredential (I)Lorg/ietf/jgss/GSSCredential; =org/ietf/jgss/GSSName NT_USER_NAME I  createName>(Ljava/lang/String;Lorg/ietf/jgss/Oid;)Lorg/ietf/jgss/GSSName; =L(Lorg/ietf/jgss/GSSName;I[Lorg/ietf/jgss/Oid;I)Lorg/ietf/jgss/GSSCredential; =java/lang/StringBuilder append-(Ljava/lang/String;)Ljava/lang/StringBuilder; @toString | NT_HOSTBASED_SERVICE I  createContextd(Lorg/ietf/jgss/GSSName;Lorg/ietf/jgss/Oid;Lorg/ietf/jgss/GSSCredential;I)Lorg/ietf/jgss/GSSContext; =org/ietf/jgss/GSSContextrequestMutualAuth(Z)V  requestConf  requestInteg [BinitSecContext([BII)[B java/util/logging/LevelFINESTLjava/util/logging/Level; ( FE=> Password(GSS Authentication Token)java/util/logging/Loggerlog.(Ljava/util/logging/Level;Ljava/lang/String;)V org/postgresql/core/PGStream sendInteger4(I)V send([B)V flush   isEstablished a receiveInteger4()I receive(I)[B  setSecContext(Lorg/ietf/jgss/GSSContext;)V !org/postgresql/util/PSQLExceptionGSS Authentication failedorg/postgresql/util/GTtr9(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; org/postgresql/util/PSQLStateCONNECTION_FAILURELorg/postgresql/util/PSQLState; I(Ljava/lang/String;Lorg/postgresql/util/PSQLState;Ljava/lang/Throwable;)V  gssCreds.Ljava/util/Set;Ljava/util/Set; principals*Ljava/util/Set;principalIterator/Ljava/util/Iterator;Ljava/util/Iterator; principalLjava/security/Principal; clientNameLorg/ietf/jgss/GSSName; principalNamelenI clientCredsLorg/ietf/jgss/GSSCredential; desiredMechs gssCredential serverName secContextLorg/ietf/jgss/GSSContext;inTokenoutToken establishedeLjava/io/IOException;gsseLorg/ietf/jgss/GSSException;calljava/lang/Exception NO  O org/postgresql/gss/GssActionjava/lang/Class } getLogger.(Ljava/lang/String;)Ljava/util/logging/Logger;  !RuntimeVisibleTypeAnnotationsCodeLineNumberTableLocalVariableTable StackMapTable ExceptionsLocalVariableTypeTable Signature SourceFile!  # $ 2**+ *,"*-$*&*(***,*.%* /0 12345%6+718&\ 2/022222222#  12$86Y8;L*AM,N-66-2:+G'=6CC%; <>%?.@0>6D&*% HI8JK .LI)MB(4NO$ ʸULM6N:*".*"W]:cgmW:**+o-6Y8;S-6Yq;S*&:*"7*"u:g::xmz:~:*, +M+:+p-M-6Yq;SM+Y*(*$:+-2,:::6  l:(* * * * 6 *  :6 * L+LY+Q4'^@=WCW! @U =WCW= BQB4%7JKL OPQ R/S@YEZS[b]n_t`{abdefgklnorstv wy{#|+}38;>CRWblu|& +" tb  JK B  8t ;q >n  /0)  +"# O$/*%& /0(# ANk$/*% & /0# Ak$/*% & /0(# $% "%!*+ #