final class com.sun.jndi.ldap.Filter
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.sun.jndi.ldap.Filter
super_class: java.lang.Object
{
private static final boolean dbg;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static int dbgIndent;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static final int LDAP_FILTER_AND;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 160
static final int LDAP_FILTER_OR;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 161
static final int LDAP_FILTER_NOT;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 162
static final int LDAP_FILTER_EQUALITY;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 163
static final int LDAP_FILTER_SUBSTRINGS;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 164
static final int LDAP_FILTER_GE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 165
static final int LDAP_FILTER_LE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 166
static final int LDAP_FILTER_PRESENT;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 135
static final int LDAP_FILTER_APPROX;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 168
static final int LDAP_FILTER_EXT;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 169
static final int LDAP_FILTER_EXT_RULE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 129
static final int LDAP_FILTER_EXT_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 130
static final int LDAP_FILTER_EXT_VAL;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 131
static final int LDAP_FILTER_EXT_DN;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 132
static final int LDAP_SUBSTRING_INITIAL;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 128
static final int LDAP_SUBSTRING_ANY;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 129
static final int LDAP_SUBSTRING_FINAL;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 130
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: .line 621
iconst_0
putstatic com.sun.jndi.ldap.Filter.dbgIndent:I
1: .line 666
return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 // com.sun.jndi.ldap.Filter this
0: .line 41
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // com.sun.jndi.ldap.Filter this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jndi/ldap/Filter;
static void encodeFilterString(com.sun.jndi.ldap.BerEncoder, java.lang.String, boolean);
descriptor: (Lcom/sun/jndi/ldap/BerEncoder;Ljava/lang/String;Z)V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=5, args_size=3
start local 0 // com.sun.jndi.ldap.BerEncoder ber
start local 1 // java.lang.String filterStr
start local 2 // boolean isLdapv3
0: .line 55
aload 1 /* filterStr */
ifnull 1
aload 1 /* filterStr */
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: .line 56
StackMap locals:
StackMap stack:
new javax.naming.directory.InvalidSearchFilterException
dup
ldc "Empty filter"
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
2: .line 60
StackMap locals:
StackMap stack:
iload 2 /* isLdapv3 */
ifeq 5
3: .line 61
aload 1 /* filterStr */
ldc "UTF8"
invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
astore 3 /* filter */
start local 3 // byte[] filter
4: .line 62
goto 6
end local 3 // byte[] filter
5: .line 63
StackMap locals:
StackMap stack:
aload 1 /* filterStr */
ldc "8859_1"
invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
astore 3 /* filter */
start local 3 // byte[] filter
6: .line 65
StackMap locals: byte[]
StackMap stack:
aload 3 /* filter */
arraylength
istore 4 /* filterLen */
start local 4 // int filterLen
7: .line 73
aload 0 /* ber */
aload 3 /* filter */
iconst_0
iload 4 /* filterLen */
invokestatic com.sun.jndi.ldap.Filter.encodeFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BII)V
8: .line 74
return
end local 4 // int filterLen
end local 3 // byte[] filter
end local 2 // boolean isLdapv3
end local 1 // java.lang.String filterStr
end local 0 // com.sun.jndi.ldap.BerEncoder ber
LocalVariableTable:
Start End Slot Name Signature
0 9 0 ber Lcom/sun/jndi/ldap/BerEncoder;
0 9 1 filterStr Ljava/lang/String;
0 9 2 isLdapv3 Z
4 5 3 filter [B
6 9 3 filter [B
7 9 4 filterLen I
Exceptions:
throws java.io.IOException, javax.naming.NamingException
MethodParameters:
Name Flags
ber
filterStr
isLdapv3
private static void encodeFilter(com.sun.jndi.ldap.BerEncoder, byte[], int, int);
descriptor: (Lcom/sun/jndi/ldap/BerEncoder;[BII)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=9, args_size=4
start local 0 // com.sun.jndi.ldap.BerEncoder ber
start local 1 // byte[] filter
start local 2 // int filterStart
start local 3 // int filterEnd
0: .line 84
iload 3 /* filterEnd */
iload 2 /* filterStart */
isub
ifgt 2
1: .line 85
new javax.naming.directory.InvalidSearchFilterException
dup
ldc "Empty filter"
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
2: .line 92
StackMap locals:
StackMap stack:
iconst_0
istore 5 /* parens */
start local 5 // int parens
3: .line 94
iconst_1
newarray 10
astore 8 /* filtOffset */
start local 8 // int[] filtOffset
4: .line 96
aload 8 /* filtOffset */
iconst_0
iload 2 /* filterStart */
iastore
5: .line 97
goto 57
6: .line 99
StackMap locals: com.sun.jndi.ldap.BerEncoder byte[] int int top int top top int[]
StackMap stack:
aload 1 /* filter */
aload 8 /* filtOffset */
iconst_0
iaload
baload
lookupswitch { // 3
32: 52
40: 7
41: 48
default: 54
}
7: .line 101
StackMap locals:
StackMap stack:
aload 8 /* filtOffset */
iconst_0
dup2
iaload
iconst_1
iadd
iastore
8: .line 102
iinc 5 /* parens */ 1
9: .line 103
aload 1 /* filter */
aload 8 /* filtOffset */
iconst_0
iaload
baload
lookupswitch { // 3
33: 20
38: 10
124: 15
default: 25
}
10: .line 105
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
11: .line 106
sipush 160
aload 8 /* filtOffset */
iload 3 /* filterEnd */
12: .line 105
invokestatic com.sun.jndi.ldap.Filter.encodeComplexFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BI[II)V
13: .line 107
iinc 5 /* parens */ -1
14: .line 108
goto 56
15: .line 111
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
16: .line 112
sipush 161
aload 8 /* filtOffset */
iload 3 /* filterEnd */
17: .line 111
invokestatic com.sun.jndi.ldap.Filter.encodeComplexFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BI[II)V
18: .line 113
iinc 5 /* parens */ -1
19: .line 114
goto 56
20: .line 117
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
21: .line 118
sipush 162
aload 8 /* filtOffset */
iload 3 /* filterEnd */
22: .line 117
invokestatic com.sun.jndi.ldap.Filter.encodeComplexFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BI[II)V
23: .line 119
iinc 5 /* parens */ -1
24: .line 120
goto 56
25: .line 123
StackMap locals:
StackMap stack:
iconst_1
istore 6 /* balance */
start local 6 // int balance
26: .line 124
iconst_0
istore 7 /* escape */
start local 7 // boolean escape
27: .line 125
aload 8 /* filtOffset */
iconst_0
iaload
istore 4 /* nextOffset */
start local 4 // int nextOffset
28: .line 126
goto 39
29: .line 127
StackMap locals: com.sun.jndi.ldap.BerEncoder byte[] int int int int int int int[]
StackMap stack:
iload 7 /* escape */
ifne 34
30: .line 128
aload 1 /* filter */
iload 4 /* nextOffset */
baload
bipush 40
if_icmpne 32
31: .line 129
iinc 6 /* balance */ 1
goto 34
32: .line 130
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 4 /* nextOffset */
baload
bipush 41
if_icmpne 34
33: .line 131
iinc 6 /* balance */ -1
34: .line 133
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 4 /* nextOffset */
baload
bipush 92
if_icmpne 36
iload 7 /* escape */
ifne 36
35: .line 134
iconst_1
istore 7 /* escape */
goto 37
36: .line 136
StackMap locals:
StackMap stack:
iconst_0
istore 7 /* escape */
37: .line 137
StackMap locals:
StackMap stack:
iload 6 /* balance */
ifle 39
38: .line 138
iinc 4 /* nextOffset */ 1
39: .line 126
StackMap locals:
StackMap stack:
iload 4 /* nextOffset */
iload 3 /* filterEnd */
if_icmpge 40
iload 6 /* balance */
ifgt 29
40: .line 140
StackMap locals:
StackMap stack:
iload 6 /* balance */
ifeq 44
41: .line 141
new javax.naming.directory.InvalidSearchFilterException
dup
42: .line 142
ldc "Unbalanced parenthesis"
43: .line 141
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
44: .line 144
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
aload 8 /* filtOffset */
iconst_0
iaload
iload 4 /* nextOffset */
invokestatic com.sun.jndi.ldap.Filter.encodeSimpleFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BII)V
45: .line 147
aload 8 /* filtOffset */
iconst_0
iload 4 /* nextOffset */
iastore
46: .line 149
iinc 5 /* parens */ -1
end local 7 // boolean escape
end local 6 // int balance
end local 4 // int nextOffset
47: .line 153
goto 56
48: .line 159
StackMap locals: com.sun.jndi.ldap.BerEncoder byte[] int int top int top top int[]
StackMap stack:
aload 0 /* ber */
invokevirtual com.sun.jndi.ldap.BerEncoder.endSeq:()V
49: .line 160
aload 8 /* filtOffset */
iconst_0
dup2
iaload
iconst_1
iadd
iastore
50: .line 161
iinc 5 /* parens */ -1
51: .line 162
goto 56
52: .line 165
StackMap locals:
StackMap stack:
aload 8 /* filtOffset */
iconst_0
dup2
iaload
iconst_1
iadd
iastore
53: .line 166
goto 56
54: .line 169
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
aload 8 /* filtOffset */
iconst_0
iaload
iload 3 /* filterEnd */
invokestatic com.sun.jndi.ldap.Filter.encodeSimpleFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BII)V
55: .line 170
aload 8 /* filtOffset */
iconst_0
iload 3 /* filterEnd */
iastore
56: .line 98
StackMap locals:
StackMap stack:
aload 8 /* filtOffset */
iconst_0
dup2
iaload
iconst_1
iadd
iastore
57: .line 97
StackMap locals:
StackMap stack:
aload 8 /* filtOffset */
iconst_0
iaload
iload 3 /* filterEnd */
58: .line 96
if_icmplt 6
59: .line 175
iload 5 /* parens */
ifle 61
60: .line 176
new javax.naming.directory.InvalidSearchFilterException
dup
ldc "Unbalanced parenthesis"
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
61: .line 183
StackMap locals:
StackMap stack:
return
end local 8 // int[] filtOffset
end local 5 // int parens
end local 3 // int filterEnd
end local 2 // int filterStart
end local 1 // byte[] filter
end local 0 // com.sun.jndi.ldap.BerEncoder ber
LocalVariableTable:
Start End Slot Name Signature
0 62 0 ber Lcom/sun/jndi/ldap/BerEncoder;
0 62 1 filter [B
0 62 2 filterStart I
0 62 3 filterEnd I
28 47 4 nextOffset I
3 62 5 parens I
26 47 6 balance I
27 47 7 escape Z
4 62 8 filtOffset [I
Exceptions:
throws java.io.IOException, javax.naming.NamingException
MethodParameters:
Name Flags
ber
filter
filterStart
filterEnd
private static int hexchar2int(byte);
descriptor: (B)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 // byte c
0: .line 191
iload 0 /* c */
bipush 48
if_icmplt 2
iload 0 /* c */
bipush 57
if_icmpgt 2
1: .line 192
iload 0 /* c */
bipush 48
isub
ireturn
2: .line 194
StackMap locals:
StackMap stack:
iload 0 /* c */
bipush 65
if_icmplt 4
iload 0 /* c */
bipush 70
if_icmpgt 4
3: .line 195
iload 0 /* c */
bipush 65
isub
bipush 10
iadd
ireturn
4: .line 197
StackMap locals:
StackMap stack:
iload 0 /* c */
bipush 97
if_icmplt 6
iload 0 /* c */
bipush 102
if_icmpgt 6
5: .line 198
iload 0 /* c */
bipush 97
isub
bipush 10
iadd
ireturn
6: .line 200
StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 0 // byte c
LocalVariableTable:
Start End Slot Name Signature
0 7 0 c B
MethodParameters:
Name Flags
c
static byte[] unescapeFilterValue(byte[], int, int);
descriptor: ([BII)[B
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=11, args_size=3
start local 0 // byte[] orig
start local 1 // int start
start local 2 // int end
0: .line 206
iconst_0
istore 3 /* escape */
start local 3 // boolean escape
1: iconst_0
istore 4 /* escStart */
start local 4 // boolean escStart
2: .line 214
iload 2 /* end */
iload 1 /* start */
isub
istore 7 /* len */
start local 7 // int len
3: .line 215
iload 7 /* len */
newarray 8
astore 8 /* tbuf */
start local 8 // byte[] tbuf
4: .line 216
iconst_0
istore 9 /* j */
start local 9 // int j
5: .line 217
iload 1 /* start */
istore 10 /* i */
start local 10 // int i
6: goto 29
7: .line 218
StackMap locals: byte[] int int int int top top int byte[] int int
StackMap stack:
aload 0 /* orig */
iload 10 /* i */
baload
istore 6 /* ch */
start local 6 // byte ch
8: .line 219
iload 3 /* escape */
ifeq 23
9: .line 221
iload 6 /* ch */
invokestatic com.sun.jndi.ldap.Filter.hexchar2int:(B)I
dup
istore 5 /* ival */
start local 5 // int ival
10: ifge 16
11: .line 228
iload 4 /* escStart */
ifeq 15
12: .line 230
iconst_0
istore 3 /* escape */
13: .line 231
aload 8 /* tbuf */
iload 9 /* j */
iinc 9 /* j */ 1
iload 6 /* ch */
bastore
14: .line 232
goto 28
15: .line 234
StackMap locals: byte[] int int int int int int int byte[] int int
StackMap stack:
new javax.naming.directory.InvalidSearchFilterException
dup
new java.lang.StringBuilder
dup
ldc "invalid escape sequence: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* orig */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
16: .line 237
StackMap locals:
StackMap stack:
iload 4 /* escStart */
ifeq 20
17: .line 238
aload 8 /* tbuf */
iload 9 /* j */
iload 5 /* ival */
iconst_4
ishl
i2b
bastore
18: .line 239
iconst_0
istore 4 /* escStart */
19: .line 240
goto 28
20: .line 241
StackMap locals:
StackMap stack:
aload 8 /* tbuf */
iload 9 /* j */
iinc 9 /* j */ 1
dup2
baload
iload 5 /* ival */
i2b
ior
i2b
bastore
21: .line 242
iconst_0
istore 3 /* escape */
22: .line 245
goto 28
end local 5 // int ival
StackMap locals: byte[] int int int int top int int byte[] int int
StackMap stack:
23: iload 6 /* ch */
bipush 92
if_icmpeq 27
24: .line 246
aload 8 /* tbuf */
iload 9 /* j */
iinc 9 /* j */ 1
iload 6 /* ch */
bastore
25: .line 247
iconst_0
istore 3 /* escape */
26: .line 248
goto 28
27: .line 249
StackMap locals:
StackMap stack:
iconst_1
dup
istore 3 /* escape */
istore 4 /* escStart */
28: .line 217
StackMap locals:
StackMap stack:
iinc 10 /* i */ 1
end local 6 // byte ch
StackMap locals: byte[] int int int int top top int byte[] int int
StackMap stack:
29: iload 10 /* i */
iload 2 /* end */
if_icmplt 7
end local 10 // int i
30: .line 252
iload 9 /* j */
newarray 8
astore 10 /* answer */
start local 10 // byte[] answer
31: .line 253
aload 8 /* tbuf */
iconst_0
aload 10 /* answer */
iconst_0
iload 9 /* j */
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
32: .line 257
aload 10 /* answer */
areturn
end local 10 // byte[] answer
end local 9 // int j
end local 8 // byte[] tbuf
end local 7 // int len
end local 4 // boolean escStart
end local 3 // boolean escape
end local 2 // int end
end local 1 // int start
end local 0 // byte[] orig
LocalVariableTable:
Start End Slot Name Signature
0 33 0 orig [B
0 33 1 start I
0 33 2 end I
1 33 3 escape Z
2 33 4 escStart Z
10 23 5 ival I
8 29 6 ch B
3 33 7 len I
4 33 8 tbuf [B
5 33 9 j I
6 30 10 i I
31 33 10 answer [B
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
orig
start
end
private static int indexOf(byte[], char, int, int);
descriptor: ([BCII)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=5, args_size=4
start local 0 // byte[] str
start local 1 // char ch
start local 2 // int start
start local 3 // int end
0: .line 261
iload 2 /* start */
istore 4 /* i */
start local 4 // int i
1: goto 5
2: .line 262
StackMap locals: int
StackMap stack:
aload 0 /* str */
iload 4 /* i */
baload
iload 1 /* ch */
if_icmpne 4
3: .line 263
iload 4 /* i */
ireturn
4: .line 261
StackMap locals:
StackMap stack:
iinc 4 /* i */ 1
StackMap locals:
StackMap stack:
5: iload 4 /* i */
iload 3 /* end */
if_icmplt 2
end local 4 // int i
6: .line 265
iconst_m1
ireturn
end local 3 // int end
end local 2 // int start
end local 1 // char ch
end local 0 // byte[] str
LocalVariableTable:
Start End Slot Name Signature
0 7 0 str [B
0 7 1 ch C
0 7 2 start I
0 7 3 end I
1 6 4 i I
MethodParameters:
Name Flags
str
ch
start
end
private static int indexOf(byte[], java.lang.String, int, int);
descriptor: ([BLjava/lang/String;II)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=4
start local 0 // byte[] str
start local 1 // java.lang.String target
start local 2 // int start
start local 3 // int end
0: .line 269
aload 0 /* str */
aload 1 /* target */
iconst_0
invokevirtual java.lang.String.charAt:(I)C
iload 2 /* start */
iload 3 /* end */
invokestatic com.sun.jndi.ldap.Filter.indexOf:([BCII)I
istore 4 /* where */
start local 4 // int where
1: .line 270
iload 4 /* where */
iflt 8
2: .line 271
iconst_1
istore 5 /* i */
start local 5 // int i
3: goto 7
4: .line 272
StackMap locals: int int
StackMap stack:
aload 0 /* str */
iload 4 /* where */
iload 5 /* i */
iadd
baload
aload 1 /* target */
iload 5 /* i */
invokevirtual java.lang.String.charAt:(I)C
if_icmpeq 6
5: .line 273
iconst_m1
ireturn
6: .line 271
StackMap locals:
StackMap stack:
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
7: iload 5 /* i */
aload 1 /* target */
invokevirtual java.lang.String.length:()I
if_icmplt 4
end local 5 // int i
8: .line 277
StackMap locals:
StackMap stack:
iload 4 /* where */
ireturn
end local 4 // int where
end local 3 // int end
end local 2 // int start
end local 1 // java.lang.String target
end local 0 // byte[] str
LocalVariableTable:
Start End Slot Name Signature
0 9 0 str [B
0 9 1 target Ljava/lang/String;
0 9 2 start I
0 9 3 end I
1 9 4 where I
3 8 5 i I
MethodParameters:
Name Flags
str
target
start
end
private static int findUnescaped(byte[], char, int, int);
descriptor: ([BCII)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=7, args_size=4
start local 0 // byte[] str
start local 1 // char ch
start local 2 // int start
start local 3 // int end
0: .line 281
goto 10
1: .line 282
StackMap locals:
StackMap stack:
aload 0 /* str */
iload 1 /* ch */
iload 2 /* start */
iload 3 /* end */
invokestatic com.sun.jndi.ldap.Filter.indexOf:([BCII)I
istore 4 /* where */
start local 4 // int where
2: .line 294
iconst_0
istore 6 /* backSlashCnt */
start local 6 // int backSlashCnt
3: .line 295
iload 4 /* where */
iconst_1
isub
istore 5 /* backSlashPos */
start local 5 // int backSlashPos
4: .line 296
goto 6
5: .line 297
StackMap locals: int int int
StackMap stack:
iinc 5 /* backSlashPos */ -1
iinc 6 /* backSlashCnt */ 1
6: .line 296
StackMap locals:
StackMap stack:
iload 5 /* backSlashPos */
iload 2 /* start */
if_icmplt 7
aload 0 /* str */
iload 5 /* backSlashPos */
baload
bipush 92
if_icmpeq 5
7: .line 300
StackMap locals:
StackMap stack:
iload 4 /* where */
iload 2 /* start */
if_icmpeq 8
iload 4 /* where */
iconst_m1
if_icmpeq 8
iload 6 /* backSlashCnt */
iconst_2
irem
ifne 9
8: .line 301
StackMap locals:
StackMap stack:
iload 4 /* where */
ireturn
9: .line 304
StackMap locals:
StackMap stack:
iload 4 /* where */
iconst_1
iadd
istore 2 /* start */
end local 6 // int backSlashCnt
end local 5 // int backSlashPos
end local 4 // int where
10: .line 281
StackMap locals:
StackMap stack:
iload 2 /* start */
iload 3 /* end */
if_icmplt 1
11: .line 306
iconst_m1
ireturn
end local 3 // int end
end local 2 // int start
end local 1 // char ch
end local 0 // byte[] str
LocalVariableTable:
Start End Slot Name Signature
0 12 0 str [B
0 12 1 ch C
0 12 2 start I
0 12 3 end I
2 10 4 where I
4 10 5 backSlashPos I
3 10 6 backSlashCnt I
MethodParameters:
Name Flags
str
ch
start
end
private static void encodeSimpleFilter(com.sun.jndi.ldap.BerEncoder, byte[], int, int);
descriptor: (Lcom/sun/jndi/ldap/BerEncoder;[BII)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=10, args_size=4
start local 0 // com.sun.jndi.ldap.BerEncoder ber
start local 1 // byte[] filter
start local 2 // int filtStart
start local 3 // int filtEnd
0: .line 322
aload 1 /* filter */
bipush 61
iload 2 /* filtStart */
iload 3 /* filtEnd */
invokestatic com.sun.jndi.ldap.Filter.indexOf:([BCII)I
dup
istore 8 /* eq */
start local 8 // int eq
1: iconst_m1
if_icmpne 3
2: .line 323
new javax.naming.directory.InvalidSearchFilterException
dup
ldc "Missing 'equals'"
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
3: .line 327
StackMap locals: com.sun.jndi.ldap.BerEncoder byte[] int int top top top top int
StackMap stack:
iload 8 /* eq */
iconst_1
iadd
istore 4 /* valueStart */
start local 4 // int valueStart
4: .line 328
iload 3 /* filtEnd */
istore 5 /* valueEnd */
start local 5 // int valueEnd
5: .line 329
iload 2 /* filtStart */
istore 6 /* typeStart */
start local 6 // int typeStart
6: .line 333
aload 1 /* filter */
iload 8 /* eq */
iconst_1
isub
baload
lookupswitch { // 4
58: 16
60: 7
62: 10
126: 13
default: 19
}
7: .line 335
StackMap locals: com.sun.jndi.ldap.BerEncoder byte[] int int int int int top int
StackMap stack:
sipush 166
istore 9 /* ftype */
start local 9 // int ftype
8: .line 336
iload 8 /* eq */
iconst_1
isub
istore 7 /* typeEnd */
start local 7 // int typeEnd
9: .line 337
goto 30
end local 9 // int ftype
end local 7 // int typeEnd
10: .line 339
StackMap locals:
StackMap stack:
sipush 165
istore 9 /* ftype */
start local 9 // int ftype
11: .line 340
iload 8 /* eq */
iconst_1
isub
istore 7 /* typeEnd */
start local 7 // int typeEnd
12: .line 341
goto 30
end local 9 // int ftype
end local 7 // int typeEnd
13: .line 343
StackMap locals:
StackMap stack:
sipush 168
istore 9 /* ftype */
start local 9 // int ftype
14: .line 344
iload 8 /* eq */
iconst_1
isub
istore 7 /* typeEnd */
start local 7 // int typeEnd
15: .line 345
goto 30
end local 9 // int ftype
end local 7 // int typeEnd
16: .line 347
StackMap locals:
StackMap stack:
sipush 169
istore 9 /* ftype */
start local 9 // int ftype
17: .line 348
iload 8 /* eq */
iconst_1
isub
istore 7 /* typeEnd */
start local 7 // int typeEnd
18: .line 349
goto 30
end local 9 // int ftype
end local 7 // int typeEnd
19: .line 351
StackMap locals:
StackMap stack:
iload 8 /* eq */
istore 7 /* typeEnd */
start local 7 // int typeEnd
20: .line 352
aload 1 /* filter */
bipush 42
iload 4 /* valueStart */
iload 5 /* valueEnd */
invokestatic com.sun.jndi.ldap.Filter.findUnescaped:([BCII)I
iconst_m1
if_icmpne 23
21: .line 353
sipush 163
istore 9 /* ftype */
start local 9 // int ftype
22: .line 354
goto 30
end local 9 // int ftype
StackMap locals: com.sun.jndi.ldap.BerEncoder byte[] int int int int int int int
StackMap stack:
23: aload 1 /* filter */
iload 4 /* valueStart */
baload
bipush 42
if_icmpne 26
iload 4 /* valueStart */
iload 5 /* valueEnd */
iconst_1
isub
if_icmpne 26
24: .line 355
sipush 135
istore 9 /* ftype */
start local 9 // int ftype
25: .line 356
goto 30
end local 9 // int ftype
26: .line 357
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
27: .line 358
iload 6 /* typeStart */
iload 7 /* typeEnd */
iload 4 /* valueStart */
iload 5 /* valueEnd */
28: .line 357
invokestatic com.sun.jndi.ldap.Filter.encodeSubstringFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BIIII)V
29: .line 359
return
start local 9 // int ftype
30: .line 368
StackMap locals: int
StackMap stack:
iload 9 /* ftype */
sipush 135
if_icmpne 33
31: .line 369
aload 0 /* ber */
aload 1 /* filter */
iload 9 /* ftype */
iload 6 /* typeStart */
iload 7 /* typeEnd */
iload 6 /* typeStart */
isub
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
32: .line 370
goto 47
StackMap locals:
StackMap stack:
33: iload 9 /* ftype */
sipush 169
if_icmpne 38
34: .line 371
aload 0 /* ber */
aload 1 /* filter */
35: .line 372
iload 6 /* typeStart */
iload 7 /* typeEnd */
iload 4 /* valueStart */
iload 5 /* valueEnd */
36: .line 371
invokestatic com.sun.jndi.ldap.Filter.encodeExtensibleMatch:(Lcom/sun/jndi/ldap/BerEncoder;[BIIII)V
37: .line 373
goto 47
38: .line 374
StackMap locals:
StackMap stack:
aload 0 /* ber */
iload 9 /* ftype */
invokevirtual com.sun.jndi.ldap.BerEncoder.beginSeq:(I)V
39: .line 375
aload 0 /* ber */
aload 1 /* filter */
iconst_4
40: .line 376
iload 6 /* typeStart */
iload 7 /* typeEnd */
iload 6 /* typeStart */
isub
41: .line 375
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
42: .line 377
aload 0 /* ber */
43: .line 378
aload 1 /* filter */
iload 4 /* valueStart */
iload 5 /* valueEnd */
invokestatic com.sun.jndi.ldap.Filter.unescapeFilterValue:([BII)[B
44: .line 379
iconst_4
45: .line 377
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BI)V
46: .line 380
aload 0 /* ber */
invokevirtual com.sun.jndi.ldap.BerEncoder.endSeq:()V
47: .line 386
StackMap locals:
StackMap stack:
return
end local 9 // int ftype
end local 8 // int eq
end local 7 // int typeEnd
end local 6 // int typeStart
end local 5 // int valueEnd
end local 4 // int valueStart
end local 3 // int filtEnd
end local 2 // int filtStart
end local 1 // byte[] filter
end local 0 // com.sun.jndi.ldap.BerEncoder ber
LocalVariableTable:
Start End Slot Name Signature
0 48 0 ber Lcom/sun/jndi/ldap/BerEncoder;
0 48 1 filter [B
0 48 2 filtStart I
0 48 3 filtEnd I
4 48 4 valueStart I
5 48 5 valueEnd I
6 48 6 typeStart I
9 10 7 typeEnd I
12 13 7 typeEnd I
15 16 7 typeEnd I
18 19 7 typeEnd I
20 48 7 typeEnd I
1 48 8 eq I
8 10 9 ftype I
11 13 9 ftype I
14 16 9 ftype I
17 19 9 ftype I
22 23 9 ftype I
25 26 9 ftype I
30 48 9 ftype I
Exceptions:
throws java.io.IOException, javax.naming.NamingException
MethodParameters:
Name Flags
ber
filter
filtStart
filtEnd
private static void encodeSubstringFilter(com.sun.jndi.ldap.BerEncoder, byte[], int, int, int, int);
descriptor: (Lcom/sun/jndi/ldap/BerEncoder;[BIIII)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=8, args_size=6
start local 0 // com.sun.jndi.ldap.BerEncoder ber
start local 1 // byte[] filter
start local 2 // int typeStart
start local 3 // int typeEnd
start local 4 // int valueStart
start local 5 // int valueEnd
0: .line 398
aload 0 /* ber */
sipush 164
invokevirtual com.sun.jndi.ldap.BerEncoder.beginSeq:(I)V
1: .line 399
aload 0 /* ber */
aload 1 /* filter */
iconst_4
2: .line 400
iload 2 /* typeStart */
iload 3 /* typeEnd */
iload 2 /* typeStart */
isub
3: .line 399
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
4: .line 401
aload 0 /* ber */
bipush 48
invokevirtual com.sun.jndi.ldap.BerEncoder.beginSeq:(I)V
5: .line 403
iload 4 /* valueStart */
istore 7 /* previndex */
start local 7 // int previndex
6: .line 404
goto 20
start local 6 // int index
7: .line 405
StackMap locals: int int
StackMap stack:
iload 7 /* previndex */
iload 4 /* valueStart */
if_icmpne 14
8: .line 406
iload 7 /* previndex */
iload 6 /* index */
if_icmpge 19
9: .line 410
aload 0 /* ber */
10: .line 411
aload 1 /* filter */
iload 7 /* previndex */
iload 6 /* index */
invokestatic com.sun.jndi.ldap.Filter.unescapeFilterValue:([BII)[B
11: .line 412
sipush 128
12: .line 410
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BI)V
13: .line 414
goto 19
14: .line 415
StackMap locals:
StackMap stack:
iload 7 /* previndex */
iload 6 /* index */
if_icmpge 19
15: .line 418
aload 0 /* ber */
16: .line 419
aload 1 /* filter */
iload 7 /* previndex */
iload 6 /* index */
invokestatic com.sun.jndi.ldap.Filter.unescapeFilterValue:([BII)[B
17: .line 420
sipush 129
18: .line 418
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BI)V
19: .line 423
StackMap locals:
StackMap stack:
iload 6 /* index */
iconst_1
iadd
istore 7 /* previndex */
end local 6 // int index
20: .line 404
StackMap locals: com.sun.jndi.ldap.BerEncoder byte[] int int int int top int
StackMap stack:
aload 1 /* filter */
bipush 42
iload 7 /* previndex */
iload 5 /* valueEnd */
invokestatic com.sun.jndi.ldap.Filter.findUnescaped:([BCII)I
dup
istore 6 /* index */
start local 6 // int index
21: iconst_m1
if_icmpne 7
22: .line 425
iload 7 /* previndex */
iload 5 /* valueEnd */
if_icmpge 27
23: .line 428
aload 0 /* ber */
24: .line 429
aload 1 /* filter */
iload 7 /* previndex */
iload 5 /* valueEnd */
invokestatic com.sun.jndi.ldap.Filter.unescapeFilterValue:([BII)[B
25: .line 430
sipush 130
26: .line 428
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BI)V
27: .line 432
StackMap locals: com.sun.jndi.ldap.BerEncoder byte[] int int int int int int
StackMap stack:
aload 0 /* ber */
invokevirtual com.sun.jndi.ldap.BerEncoder.endSeq:()V
28: .line 433
aload 0 /* ber */
invokevirtual com.sun.jndi.ldap.BerEncoder.endSeq:()V
29: .line 438
return
end local 7 // int previndex
end local 6 // int index
end local 5 // int valueEnd
end local 4 // int valueStart
end local 3 // int typeEnd
end local 2 // int typeStart
end local 1 // byte[] filter
end local 0 // com.sun.jndi.ldap.BerEncoder ber
LocalVariableTable:
Start End Slot Name Signature
0 30 0 ber Lcom/sun/jndi/ldap/BerEncoder;
0 30 1 filter [B
0 30 2 typeStart I
0 30 3 typeEnd I
0 30 4 valueStart I
0 30 5 valueEnd I
7 20 6 index I
21 30 6 index I
6 30 7 previndex I
Exceptions:
throws java.io.IOException, javax.naming.NamingException
MethodParameters:
Name Flags
ber
filter
typeStart
typeEnd
valueStart
valueEnd
private static void encodeComplexFilter(com.sun.jndi.ldap.BerEncoder, byte[], int, int[], int);
descriptor: (Lcom/sun/jndi/ldap/BerEncoder;[BI[II)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=6, args_size=5
start local 0 // com.sun.jndi.ldap.BerEncoder ber
start local 1 // byte[] filter
start local 2 // int filterType
start local 3 // int[] filtOffset
start local 4 // int filtEnd
0: .line 455
aload 3 /* filtOffset */
iconst_0
dup2
iaload
iconst_1
iadd
iastore
1: .line 457
aload 0 /* ber */
iload 2 /* filterType */
invokevirtual com.sun.jndi.ldap.BerEncoder.beginSeq:(I)V
2: .line 459
aload 1 /* filter */
aload 3 /* filtOffset */
iload 4 /* filtEnd */
invokestatic com.sun.jndi.ldap.Filter.findRightParen:([B[II)[I
astore 5 /* parens */
start local 5 // int[] parens
3: .line 460
aload 0 /* ber */
aload 1 /* filter */
aload 5 /* parens */
iconst_0
iaload
aload 5 /* parens */
iconst_1
iaload
invokestatic com.sun.jndi.ldap.Filter.encodeFilterList:(Lcom/sun/jndi/ldap/BerEncoder;[BII)V
4: .line 462
aload 0 /* ber */
invokevirtual com.sun.jndi.ldap.BerEncoder.endSeq:()V
5: .line 468
return
end local 5 // int[] parens
end local 4 // int filtEnd
end local 3 // int[] filtOffset
end local 2 // int filterType
end local 1 // byte[] filter
end local 0 // com.sun.jndi.ldap.BerEncoder ber
LocalVariableTable:
Start End Slot Name Signature
0 6 0 ber Lcom/sun/jndi/ldap/BerEncoder;
0 6 1 filter [B
0 6 2 filterType I
0 6 3 filtOffset [I
0 6 4 filtEnd I
3 6 5 parens [I
Exceptions:
throws java.io.IOException, javax.naming.NamingException
MethodParameters:
Name Flags
ber
filter
filterType
filtOffset
filtEnd
private static int[] findRightParen(byte[], int[], int);
descriptor: ([B[II)[I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=7, args_size=3
start local 0 // byte[] filter
start local 1 // int[] filtOffset
start local 2 // int end
0: .line 478
iconst_1
istore 3 /* balance */
start local 3 // int balance
1: .line 479
iconst_0
istore 4 /* escape */
start local 4 // boolean escape
2: .line 480
aload 1 /* filtOffset */
iconst_0
iaload
istore 5 /* nextOffset */
start local 5 // int nextOffset
3: .line 482
goto 14
4: .line 483
StackMap locals: int int int
StackMap stack:
iload 4 /* escape */
ifne 9
5: .line 484
aload 0 /* filter */
iload 5 /* nextOffset */
baload
bipush 40
if_icmpne 7
6: .line 485
iinc 3 /* balance */ 1
goto 9
7: .line 486
StackMap locals:
StackMap stack:
aload 0 /* filter */
iload 5 /* nextOffset */
baload
bipush 41
if_icmpne 9
8: .line 487
iinc 3 /* balance */ -1
9: .line 489
StackMap locals:
StackMap stack:
aload 0 /* filter */
iload 5 /* nextOffset */
baload
bipush 92
if_icmpne 11
iload 4 /* escape */
ifne 11
10: .line 490
iconst_1
istore 4 /* escape */
goto 12
11: .line 492
StackMap locals:
StackMap stack:
iconst_0
istore 4 /* escape */
12: .line 493
StackMap locals:
StackMap stack:
iload 3 /* balance */
ifle 14
13: .line 494
iinc 5 /* nextOffset */ 1
14: .line 482
StackMap locals:
StackMap stack:
iload 5 /* nextOffset */
iload 2 /* end */
if_icmpge 15
iload 3 /* balance */
ifgt 4
15: .line 496
StackMap locals:
StackMap stack:
iload 3 /* balance */
ifeq 17
16: .line 497
new javax.naming.directory.InvalidSearchFilterException
dup
ldc "Unbalanced parenthesis"
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
17: .line 502
StackMap locals:
StackMap stack:
iconst_2
newarray 10
dup
iconst_0
aload 1 /* filtOffset */
iconst_0
iaload
iastore
dup
iconst_1
iload 5 /* nextOffset */
iastore
astore 6 /* tmp */
start local 6 // int[] tmp
18: .line 504
aload 1 /* filtOffset */
iconst_0
iload 5 /* nextOffset */
iconst_1
iadd
iastore
19: .line 506
aload 6 /* tmp */
areturn
end local 6 // int[] tmp
end local 5 // int nextOffset
end local 4 // boolean escape
end local 3 // int balance
end local 2 // int end
end local 1 // int[] filtOffset
end local 0 // byte[] filter
LocalVariableTable:
Start End Slot Name Signature
0 20 0 filter [B
0 20 1 filtOffset [I
0 20 2 end I
1 20 3 balance I
2 20 4 escape Z
3 20 5 nextOffset I
18 20 6 tmp [I
Exceptions:
throws java.io.IOException, javax.naming.NamingException
MethodParameters:
Name Flags
filter
filtOffset
end
private static void encodeFilterList(com.sun.jndi.ldap.BerEncoder, byte[], int, int);
descriptor: (Lcom/sun/jndi/ldap/BerEncoder;[BII)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=8, args_size=4
start local 0 // com.sun.jndi.ldap.BerEncoder ber
start local 1 // byte[] filter
start local 2 // int start
start local 3 // int end
0: .line 521
iconst_1
newarray 10
astore 4 /* filtOffset */
start local 4 // int[] filtOffset
1: .line 523
aload 4 /* filtOffset */
iconst_0
iload 2 /* start */
iastore
goto 14
2: .line 525
StackMap locals: int[]
StackMap stack:
aload 1 /* filter */
aload 4 /* filtOffset */
iconst_0
iaload
baload
i2c
invokestatic java.lang.Character.isSpaceChar:(C)Z
ifeq 4
3: .line 526
goto 13
4: .line 528
StackMap locals:
StackMap stack:
aload 1 /* filter */
aload 4 /* filtOffset */
iconst_0
iaload
baload
bipush 40
if_icmpne 6
5: .line 529
goto 13
6: .line 532
StackMap locals:
StackMap stack:
aload 1 /* filter */
aload 4 /* filtOffset */
iload 3 /* end */
invokestatic com.sun.jndi.ldap.Filter.findRightParen:([B[II)[I
astore 5 /* parens */
start local 5 // int[] parens
7: .line 535
aload 5 /* parens */
iconst_1
iaload
aload 5 /* parens */
iconst_0
iaload
isub
istore 6 /* len */
start local 6 // int len
8: .line 536
iload 6 /* len */
iconst_2
iadd
newarray 8
astore 7 /* newfilter */
start local 7 // byte[] newfilter
9: .line 537
aload 1 /* filter */
aload 5 /* parens */
iconst_0
iaload
aload 7 /* newfilter */
iconst_1
iload 6 /* len */
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
10: .line 538
aload 7 /* newfilter */
iconst_0
bipush 40
bastore
11: .line 539
aload 7 /* newfilter */
iload 6 /* len */
iconst_1
iadd
bipush 41
bastore
12: .line 540
aload 0 /* ber */
aload 7 /* newfilter */
iconst_0
aload 7 /* newfilter */
arraylength
invokestatic com.sun.jndi.ldap.Filter.encodeFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BII)V
end local 7 // byte[] newfilter
end local 6 // int len
end local 5 // int[] parens
13: .line 524
StackMap locals:
StackMap stack:
aload 4 /* filtOffset */
iconst_0
dup2
iaload
iconst_1
iadd
iastore
14: .line 523
StackMap locals:
StackMap stack:
aload 4 /* filtOffset */
iconst_0
iaload
iload 3 /* end */
if_icmplt 2
15: .line 547
return
end local 4 // int[] filtOffset
end local 3 // int end
end local 2 // int start
end local 1 // byte[] filter
end local 0 // com.sun.jndi.ldap.BerEncoder ber
LocalVariableTable:
Start End Slot Name Signature
0 16 0 ber Lcom/sun/jndi/ldap/BerEncoder;
0 16 1 filter [B
0 16 2 start I
0 16 3 end I
1 16 4 filtOffset [I
7 13 5 parens [I
8 13 6 len I
9 13 7 newfilter [B
Exceptions:
throws java.io.IOException, javax.naming.NamingException
MethodParameters:
Name Flags
ber
filter
start
end
private static void encodeExtensibleMatch(com.sun.jndi.ldap.BerEncoder, byte[], int, int, int, int);
descriptor: (Lcom/sun/jndi/ldap/BerEncoder;[BIIII)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=10, args_size=6
start local 0 // com.sun.jndi.ldap.BerEncoder ber
start local 1 // byte[] filter
start local 2 // int matchStart
start local 3 // int matchEnd
start local 4 // int valueStart
start local 5 // int valueEnd
0: .line 556
iconst_0
istore 6 /* matchDN */
start local 6 // boolean matchDN
1: .line 561
aload 0 /* ber */
sipush 169
invokevirtual com.sun.jndi.ldap.BerEncoder.beginSeq:(I)V
2: .line 564
aload 1 /* filter */
bipush 58
iload 2 /* matchStart */
iload 3 /* matchEnd */
invokestatic com.sun.jndi.ldap.Filter.indexOf:([BCII)I
dup
istore 7 /* colon */
start local 7 // int colon
3: iflt 28
4: .line 567
aload 1 /* filter */
ldc ":dn"
iload 7 /* colon */
iload 3 /* matchEnd */
invokestatic com.sun.jndi.ldap.Filter.indexOf:([BLjava/lang/String;II)I
dup
istore 9 /* i */
start local 9 // int i
5: iflt 7
6: .line 568
iconst_1
istore 6 /* matchDN */
7: .line 572
StackMap locals: com.sun.jndi.ldap.BerEncoder byte[] int int int int int int top int
StackMap stack:
aload 1 /* filter */
bipush 58
iload 7 /* colon */
iconst_1
iadd
iload 3 /* matchEnd */
invokestatic com.sun.jndi.ldap.Filter.indexOf:([BCII)I
dup
istore 8 /* colon2 */
start local 8 // int colon2
8: ifge 10
9: .line 573
iload 9 /* i */
iconst_m1
if_icmpne 23
10: .line 575
StackMap locals: com.sun.jndi.ldap.BerEncoder byte[] int int int int int int int int
StackMap stack:
iload 9 /* i */
iload 7 /* colon */
if_icmpne 15
11: .line 576
aload 0 /* ber */
aload 1 /* filter */
sipush 129
12: .line 577
iload 8 /* colon2 */
iconst_1
iadd
iload 3 /* matchEnd */
iload 8 /* colon2 */
iconst_1
iadd
isub
13: .line 576
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
14: .line 579
goto 23
StackMap locals:
StackMap stack:
15: iload 9 /* i */
iload 8 /* colon2 */
if_icmpne 20
iload 9 /* i */
iflt 20
16: .line 580
aload 0 /* ber */
aload 1 /* filter */
sipush 129
17: .line 581
iload 7 /* colon */
iconst_1
iadd
iload 8 /* colon2 */
iload 7 /* colon */
iconst_1
iadd
isub
18: .line 580
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
19: .line 583
goto 23
20: .line 584
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
sipush 129
21: .line 585
iload 7 /* colon */
iconst_1
iadd
iload 3 /* matchEnd */
iload 7 /* colon */
iconst_1
iadd
isub
22: .line 584
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
23: .line 590
StackMap locals:
StackMap stack:
iload 7 /* colon */
iload 2 /* matchStart */
if_icmple 31
24: .line 591
aload 0 /* ber */
aload 1 /* filter */
25: .line 592
sipush 130
iload 2 /* matchStart */
iload 7 /* colon */
iload 2 /* matchStart */
isub
26: .line 591
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
27: .line 594
goto 31
end local 9 // int i
end local 8 // int colon2
28: .line 595
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
sipush 130
iload 2 /* matchStart */
29: .line 596
iload 3 /* matchEnd */
iload 2 /* matchStart */
isub
30: .line 595
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
31: .line 599
StackMap locals:
StackMap stack:
aload 0 /* ber */
32: .line 600
aload 1 /* filter */
iload 4 /* valueStart */
iload 5 /* valueEnd */
invokestatic com.sun.jndi.ldap.Filter.unescapeFilterValue:([BII)[B
33: .line 601
sipush 131
34: .line 599
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BI)V
35: .line 608
aload 0 /* ber */
iload 6 /* matchDN */
sipush 132
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeBoolean:(ZI)V
36: .line 610
aload 0 /* ber */
invokevirtual com.sun.jndi.ldap.BerEncoder.endSeq:()V
37: .line 611
return
end local 7 // int colon
end local 6 // boolean matchDN
end local 5 // int valueEnd
end local 4 // int valueStart
end local 3 // int matchEnd
end local 2 // int matchStart
end local 1 // byte[] filter
end local 0 // com.sun.jndi.ldap.BerEncoder ber
LocalVariableTable:
Start End Slot Name Signature
0 38 0 ber Lcom/sun/jndi/ldap/BerEncoder;
0 38 1 filter [B
0 38 2 matchStart I
0 38 3 matchEnd I
0 38 4 valueStart I
0 38 5 valueEnd I
1 38 6 matchDN Z
3 38 7 colon I
8 28 8 colon2 I
5 28 9 i I
Exceptions:
throws java.io.IOException, javax.naming.NamingException
MethodParameters:
Name Flags
ber
filter
matchStart
matchEnd
valueStart
valueEnd
private static void dprint(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 // java.lang.String msg
0: .line 624
aload 0 /* msg */
iconst_0
newarray 8
iconst_0
iconst_0
invokestatic com.sun.jndi.ldap.Filter.dprint:(Ljava/lang/String;[BII)V
1: .line 625
return
end local 0 // java.lang.String msg
LocalVariableTable:
Start End Slot Name Signature
0 2 0 msg Ljava/lang/String;
MethodParameters:
Name Flags
msg
private static void dprint(java.lang.String, byte[]);
descriptor: (Ljava/lang/String;[B)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 // java.lang.String msg
start local 1 // byte[] str
0: .line 628
aload 0 /* msg */
aload 1 /* str */
iconst_0
aload 1 /* str */
arraylength
invokestatic com.sun.jndi.ldap.Filter.dprint:(Ljava/lang/String;[BII)V
1: .line 629
return
end local 1 // byte[] str
end local 0 // java.lang.String msg
LocalVariableTable:
Start End Slot Name Signature
0 2 0 msg Ljava/lang/String;
0 2 1 str [B
MethodParameters:
Name Flags
msg
str
private static void dprint(java.lang.String, byte[], int, int);
descriptor: (Ljava/lang/String;[BII)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=7, args_size=4
start local 0 // java.lang.String msg
start local 1 // byte[] str
start local 2 // int start
start local 3 // int end
0: .line 632
ldc " "
astore 4 /* dstr */
start local 4 // java.lang.String dstr
1: .line 633
getstatic com.sun.jndi.ldap.Filter.dbgIndent:I
istore 5 /* i */
start local 5 // int i
2: .line 634
goto 4
3: .line 635
StackMap locals: java.lang.String int
StackMap stack:
new java.lang.StringBuilder
dup
aload 4 /* dstr */
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4 /* dstr */
4: .line 634
StackMap locals:
StackMap stack:
iload 5 /* i */
iinc 5 /* i */ -1
ifgt 3
5: .line 637
new java.lang.StringBuilder
dup
aload 4 /* dstr */
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* msg */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4 /* dstr */
6: .line 639
getstatic java.lang.System.err:Ljava/io/PrintStream;
aload 4 /* dstr */
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
7: .line 640
iload 2 /* start */
istore 6 /* j */
start local 6 // int j
8: goto 11
9: .line 641
StackMap locals: int
StackMap stack:
getstatic java.lang.System.err:Ljava/io/PrintStream;
aload 1 /* str */
iload 6 /* j */
baload
i2c
invokevirtual java.io.PrintStream.print:(C)V
10: .line 640
iinc 6 /* j */ 1
StackMap locals:
StackMap stack:
11: iload 6 /* j */
iload 3 /* end */
if_icmplt 9
end local 6 // int j
12: .line 643
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokevirtual java.io.PrintStream.println:()V
13: .line 644
return
end local 5 // int i
end local 4 // java.lang.String dstr
end local 3 // int end
end local 2 // int start
end local 1 // byte[] str
end local 0 // java.lang.String msg
LocalVariableTable:
Start End Slot Name Signature
0 14 0 msg Ljava/lang/String;
0 14 1 str [B
0 14 2 start I
0 14 3 end I
1 14 4 dstr Ljava/lang/String;
2 14 5 i I
8 12 6 j I
MethodParameters:
Name Flags
msg
str
start
end
}
SourceFile: "Filter.java"