class org.eclipse.jgit.transport.HttpAuthMethod$Negotiate extends org.eclipse.jgit.transport.HttpAuthMethod
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.eclipse.jgit.transport.HttpAuthMethod$Negotiate
super_class: org.eclipse.jgit.transport.HttpAuthMethod
{
private static final org.eclipse.jgit.util.GSSManagerFactory GSS_MANAGER_FACTORY;
descriptor: Lorg/eclipse/jgit/util/GSSManagerFactory;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.ietf.jgss.Oid OID;
descriptor: Lorg/ietf/jgss/Oid;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final byte[] prevToken;
descriptor: [B
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=1, args_size=0
0: invokestatic org.eclipse.jgit.util.GSSManagerFactory.detect:()Lorg/eclipse/jgit/util/GSSManagerFactory;
1: putstatic org.eclipse.jgit.transport.HttpAuthMethod$Negotiate.GSS_MANAGER_FACTORY:Lorg/eclipse/jgit/util/GSSManagerFactory;
2: new org.ietf.jgss.Oid
dup
ldc "1.3.6.1.5.5.2"
invokespecial org.ietf.jgss.Oid.<init>:(Ljava/lang/String;)V
putstatic org.eclipse.jgit.transport.HttpAuthMethod$Negotiate.OID:Lorg/ietf/jgss/Oid;
3: goto 6
StackMap locals:
StackMap stack: org.ietf.jgss.GSSException
4: astore 0
start local 0 5: new java.lang.Error
dup
ldc "Cannot create NEGOTIATE oid."
aload 0
invokespecial java.lang.Error.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 0 6: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
5 6 0 e Lorg/ietf/jgss/GSSException;
Exception table:
from to target type
2 3 4 Class org.ietf.jgss.GSSException
public void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getstatic org.eclipse.jgit.transport.HttpAuthMethod$Type.NEGOTIATE:Lorg/eclipse/jgit/transport/HttpAuthMethod$Type;
invokespecial org.eclipse.jgit.transport.HttpAuthMethod.<init>:(Lorg/eclipse/jgit/transport/HttpAuthMethod$Type;)V
1: aload 0
aload 1
invokestatic org.eclipse.jgit.util.Base64.decode:(Ljava/lang/String;)[B
putfield org.eclipse.jgit.transport.HttpAuthMethod$Negotiate.prevToken:[B
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jgit/transport/HttpAuthMethod$Negotiate;
0 3 1 hdr Ljava/lang/String;
MethodParameters:
Name Flags
hdr
void authorize(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=0, locals=3, args_size=3
start local 0 start local 1 start local 2 0: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/transport/HttpAuthMethod$Negotiate;
0 1 1 user Ljava/lang/String;
0 1 2 pass Ljava/lang/String;
MethodParameters:
Name Flags
user
pass
void configureRequest(org.eclipse.jgit.transport.http.HttpConnection);
descriptor: (Lorg/eclipse/jgit/transport/http/HttpConnection;)V
flags: (0x0000)
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: getstatic org.eclipse.jgit.transport.HttpAuthMethod$Negotiate.GSS_MANAGER_FACTORY:Lorg/eclipse/jgit/util/GSSManagerFactory;
aload 1
1: invokeinterface org.eclipse.jgit.transport.http.HttpConnection.getURL:()Ljava/net/URL;
2: invokevirtual org.eclipse.jgit.util.GSSManagerFactory.newInstance:(Ljava/net/URL;)Lorg/ietf/jgss/GSSManager;
astore 2
start local 2 3: aload 1
invokeinterface org.eclipse.jgit.transport.http.HttpConnection.getURL:()Ljava/net/URL;
invokevirtual java.net.URL.getHost:()Ljava/lang/String;
astore 3
start local 3 4: new java.lang.StringBuilder
dup
ldc "HTTP@"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
getstatic java.util.Locale.ROOT:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
start local 4 5: aload 2
aload 4
6: getstatic org.ietf.jgss.GSSName.NT_HOSTBASED_SERVICE:Lorg/ietf/jgss/Oid;
7: invokevirtual org.ietf.jgss.GSSManager.createName:(Ljava/lang/String;Lorg/ietf/jgss/Oid;)Lorg/ietf/jgss/GSSName;
astore 5
start local 5 8: aload 2
aload 5
getstatic org.eclipse.jgit.transport.HttpAuthMethod$Negotiate.OID:Lorg/ietf/jgss/Oid;
9: aconst_null
iconst_0
10: invokevirtual org.ietf.jgss.GSSManager.createContext:(Lorg/ietf/jgss/GSSName;Lorg/ietf/jgss/Oid;Lorg/ietf/jgss/GSSCredential;I)Lorg/ietf/jgss/GSSContext;
astore 6
start local 6 11: aload 6
iconst_1
invokeinterface org.ietf.jgss.GSSContext.requestCredDeleg:(Z)V
12: aload 6
aload 0
getfield org.eclipse.jgit.transport.HttpAuthMethod$Negotiate.prevToken:[B
iconst_0
13: aload 0
getfield org.eclipse.jgit.transport.HttpAuthMethod$Negotiate.prevToken:[B
arraylength
14: invokeinterface org.ietf.jgss.GSSContext.initSecContext:([BII)[B
astore 7
start local 7 15: aload 1
ldc "Authorization"
new java.lang.StringBuilder
dup
aload 0
invokevirtual org.eclipse.jgit.transport.HttpAuthMethod$Negotiate.getType:()Lorg/eclipse/jgit/transport/HttpAuthMethod$Type;
invokevirtual org.eclipse.jgit.transport.HttpAuthMethod$Type.getSchemeName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
16: ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokestatic org.eclipse.jgit.util.Base64.encodeBytes:([B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
17: invokeinterface org.eclipse.jgit.transport.http.HttpConnection.setRequestProperty:(Ljava/lang/String;Ljava/lang/String;)V
end local 7 end local 6 end local 5 18: goto 21
StackMap locals: org.eclipse.jgit.transport.HttpAuthMethod$Negotiate org.eclipse.jgit.transport.http.HttpConnection org.ietf.jgss.GSSManager java.lang.String java.lang.String
StackMap stack: org.ietf.jgss.GSSException
19: astore 5
start local 5 20: new java.io.IOException
dup
aload 5
invokespecial java.io.IOException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 5 21: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lorg/eclipse/jgit/transport/HttpAuthMethod$Negotiate;
0 22 1 conn Lorg/eclipse/jgit/transport/http/HttpConnection;
3 22 2 gssManager Lorg/ietf/jgss/GSSManager;
4 22 3 host Ljava/lang/String;
5 22 4 peerName Ljava/lang/String;
8 18 5 gssName Lorg/ietf/jgss/GSSName;
11 18 6 context Lorg/ietf/jgss/GSSContext;
15 18 7 token [B
20 21 5 e Lorg/ietf/jgss/GSSException;
Exception table:
from to target type
5 18 19 Class org.ietf.jgss.GSSException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
conn
}
SourceFile: "HttpAuthMethod.java"
NestHost: org.eclipse.jgit.transport.HttpAuthMethod
InnerClasses:
private Negotiate = org.eclipse.jgit.transport.HttpAuthMethod$Negotiate of org.eclipse.jgit.transport.HttpAuthMethod
public abstract Type = org.eclipse.jgit.transport.HttpAuthMethod$Type of org.eclipse.jgit.transport.HttpAuthMethod