class com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker implements sun.misc.ObjectInputFilter
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker
super_class: java.lang.Object
{
private static final sun.misc.ObjectInputFilter OWN_FILTER;
descriptor: Lsun/misc/ObjectInputFilter;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final int maxLength;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=0
0: .line 118
new com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker$1
dup
invokespecial com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker$1.<init>:()V
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
astore 0 /* prop */
start local 0 // java.lang.String prop
1: .line 129
aload 0 /* prop */
ifnonnull 3
2: .line 130
aconst_null
goto 4
3: .line 131
StackMap locals: java.lang.String
StackMap stack:
aload 0 /* prop */
invokestatic sun.misc.ObjectInputFilter$Config.createFilter:(Ljava/lang/String;)Lsun/misc/ObjectInputFilter;
4: .line 129
StackMap locals:
StackMap stack: sun.misc.ObjectInputFilter
putstatic com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker.OWN_FILTER:Lsun/misc/ObjectInputFilter;
end local 0 // java.lang.String prop
5: .line 132
return
LocalVariableTable:
Start End Slot Name Signature
1 5 0 prop Ljava/lang/String;
private void <init>(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 // com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker this
start local 1 // int maxLength
0: .line 137
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 138
aload 0 /* this */
iload 1 /* maxLength */
putfield com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker.maxLength:I
2: .line 139
return
end local 1 // int maxLength
end local 0 // com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/crypto/provider/SealedObjectForKeyProtector$DeserializationChecker;
0 3 1 maxLength I
MethodParameters:
Name Flags
maxLength
public sun.misc.ObjectInputFilter$Status checkInput(sun.misc.ObjectInputFilter$FilterInfo);
descriptor: (Lsun/misc/ObjectInputFilter$FilterInfo;)Lsun/misc/ObjectInputFilter$Status;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 // com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker this
start local 1 // sun.misc.ObjectInputFilter$FilterInfo info
0: .line 145
aload 1 /* info */
invokeinterface sun.misc.ObjectInputFilter$FilterInfo.arrayLength:()J
aload 0 /* this */
getfield com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker.maxLength:I
i2l
lcmp
ifle 2
1: .line 146
getstatic sun.misc.ObjectInputFilter$Status.REJECTED:Lsun/misc/ObjectInputFilter$Status;
areturn
2: .line 149
StackMap locals:
StackMap stack:
aload 1 /* info */
invokeinterface sun.misc.ObjectInputFilter$FilterInfo.serialClass:()Ljava/lang/Class;
ldc Ljava/lang/Object;
if_acmpne 4
3: .line 150
getstatic sun.misc.ObjectInputFilter$Status.UNDECIDED:Lsun/misc/ObjectInputFilter$Status;
areturn
4: .line 153
StackMap locals:
StackMap stack:
getstatic com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker.OWN_FILTER:Lsun/misc/ObjectInputFilter;
ifnull 8
5: .line 154
getstatic com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker.OWN_FILTER:Lsun/misc/ObjectInputFilter;
aload 1 /* info */
invokeinterface sun.misc.ObjectInputFilter.checkInput:(Lsun/misc/ObjectInputFilter$FilterInfo;)Lsun/misc/ObjectInputFilter$Status;
astore 2 /* result */
start local 2 // sun.misc.ObjectInputFilter$Status result
6: .line 155
aload 2 /* result */
getstatic sun.misc.ObjectInputFilter$Status.UNDECIDED:Lsun/misc/ObjectInputFilter$Status;
if_acmpeq 8
7: .line 156
aload 2 /* result */
areturn
end local 2 // sun.misc.ObjectInputFilter$Status result
8: .line 161
StackMap locals:
StackMap stack:
invokestatic sun.misc.ObjectInputFilter$Config.getSerialFilter:()Lsun/misc/ObjectInputFilter;
9: .line 160
astore 2 /* defaultFilter */
start local 2 // sun.misc.ObjectInputFilter defaultFilter
10: .line 162
aload 2 /* defaultFilter */
ifnull 12
11: .line 163
aload 2 /* defaultFilter */
aload 1 /* info */
invokeinterface sun.misc.ObjectInputFilter.checkInput:(Lsun/misc/ObjectInputFilter$FilterInfo;)Lsun/misc/ObjectInputFilter$Status;
areturn
12: .line 166
StackMap locals: sun.misc.ObjectInputFilter
StackMap stack:
getstatic sun.misc.ObjectInputFilter$Status.UNDECIDED:Lsun/misc/ObjectInputFilter$Status;
areturn
end local 2 // sun.misc.ObjectInputFilter defaultFilter
end local 1 // sun.misc.ObjectInputFilter$FilterInfo info
end local 0 // com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/crypto/provider/SealedObjectForKeyProtector$DeserializationChecker;
0 13 1 info Lsun/misc/ObjectInputFilter$FilterInfo;
6 8 2 result Lsun/misc/ObjectInputFilter$Status;
10 13 2 defaultFilter Lsun/misc/ObjectInputFilter;
MethodParameters:
Name Flags
info
}
SourceFile: "SealedObjectForKeyProtector.java"
NestHost: com.sun.crypto.provider.SealedObjectForKeyProtector
InnerClasses:
private DeserializationChecker = com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker of com.sun.crypto.provider.SealedObjectForKeyProtector
com.sun.crypto.provider.SealedObjectForKeyProtector$DeserializationChecker$1
public final Config = sun.misc.ObjectInputFilter$Config of sun.misc.ObjectInputFilter
public abstract FilterInfo = sun.misc.ObjectInputFilter$FilterInfo of sun.misc.ObjectInputFilter
public final Status = sun.misc.ObjectInputFilter$Status of sun.misc.ObjectInputFilter