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 824
iconst_0
putstatic com.sun.jndi.ldap.Filter.dbgIndent:I
1: .line 869
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 42
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 56
aload 1 /* filterStr */
ifnull 1
aload 1 /* filterStr */
invokevirtual java.lang.String.isEmpty:()Z
ifeq 2
1: .line 57
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 61
StackMap locals:
StackMap stack:
iload 2 /* isLdapv3 */
ifeq 5
3: .line 62
aload 1 /* filterStr */
ldc "UTF8"
invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
astore 3 /* filter */
start local 3 // byte[] filter
4: .line 63
goto 6
end local 3 // byte[] filter
5: .line 64
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 66
StackMap locals: byte[]
StackMap stack:
aload 3 /* filter */
arraylength
istore 4 /* filterLen */
start local 4 // int filterLen
7: .line 74
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 75
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 85
iload 3 /* filterEnd */
iload 2 /* filterStart */
isub
ifgt 2
1: .line 86
new javax.naming.directory.InvalidSearchFilterException
dup
ldc "Empty filter"
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
2: .line 93
StackMap locals:
StackMap stack:
iconst_0
istore 5 /* parens */
start local 5 // int parens
3: .line 95
iconst_1
newarray 10
astore 8 /* filtOffset */
start local 8 // int[] filtOffset
4: .line 97
aload 8 /* filtOffset */
iconst_0
iload 2 /* filterStart */
iastore
goto 59
5: .line 98
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: 51
40: 6
41: 47
default: 53
}
6: .line 100
StackMap locals:
StackMap stack:
aload 8 /* filtOffset */
iconst_0
dup2
iaload
iconst_1
iadd
iastore
7: .line 101
iinc 5 /* parens */ 1
8: .line 102
aload 1 /* filter */
aload 8 /* filtOffset */
iconst_0
iaload
baload
lookupswitch { // 3
33: 19
38: 9
124: 14
default: 24
}
9: .line 104
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
10: .line 105
sipush 160
aload 8 /* filtOffset */
iload 3 /* filterEnd */
11: .line 104
invokestatic com.sun.jndi.ldap.Filter.encodeComplexFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BI[II)V
12: .line 107
iinc 5 /* parens */ -1
13: .line 108
goto 55
14: .line 111
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
15: .line 112
sipush 161
aload 8 /* filtOffset */
iload 3 /* filterEnd */
16: .line 111
invokestatic com.sun.jndi.ldap.Filter.encodeComplexFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BI[II)V
17: .line 114
iinc 5 /* parens */ -1
18: .line 115
goto 55
19: .line 118
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
20: .line 119
sipush 162
aload 8 /* filtOffset */
iload 3 /* filterEnd */
21: .line 118
invokestatic com.sun.jndi.ldap.Filter.encodeComplexFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BI[II)V
22: .line 121
iinc 5 /* parens */ -1
23: .line 122
goto 55
24: .line 125
StackMap locals:
StackMap stack:
iconst_1
istore 6 /* balance */
start local 6 // int balance
25: .line 126
iconst_0
istore 7 /* escape */
start local 7 // boolean escape
26: .line 127
aload 8 /* filtOffset */
iconst_0
iaload
istore 4 /* nextOffset */
start local 4 // int nextOffset
27: .line 128
goto 38
28: .line 129
StackMap locals: com.sun.jndi.ldap.BerEncoder byte[] int int int int int int int[]
StackMap stack:
iload 7 /* escape */
ifne 33
29: .line 130
aload 1 /* filter */
iload 4 /* nextOffset */
baload
bipush 40
if_icmpne 31
30: .line 131
iinc 6 /* balance */ 1
goto 33
31: .line 132
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 4 /* nextOffset */
baload
bipush 41
if_icmpne 33
32: .line 133
iinc 6 /* balance */ -1
33: .line 135
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 4 /* nextOffset */
baload
bipush 92
if_icmpne 35
iload 7 /* escape */
ifne 35
34: .line 136
iconst_1
istore 7 /* escape */
goto 36
35: .line 138
StackMap locals:
StackMap stack:
iconst_0
istore 7 /* escape */
36: .line 139
StackMap locals:
StackMap stack:
iload 6 /* balance */
ifle 38
37: .line 140
iinc 4 /* nextOffset */ 1
38: .line 128
StackMap locals:
StackMap stack:
iload 4 /* nextOffset */
iload 3 /* filterEnd */
if_icmpge 39
iload 6 /* balance */
ifgt 28
39: .line 142
StackMap locals:
StackMap stack:
iload 6 /* balance */
ifeq 43
40: .line 143
new javax.naming.directory.InvalidSearchFilterException
dup
41: .line 144
ldc "Unbalanced parenthesis"
42: .line 143
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
43: .line 146
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
44: .line 149
aload 8 /* filtOffset */
iconst_0
iload 4 /* nextOffset */
iconst_1
iadd
iastore
45: .line 151
iinc 5 /* parens */ -1
end local 7 // boolean escape
end local 6 // int balance
end local 4 // int nextOffset
46: .line 155
goto 55
47: .line 161
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
48: .line 162
aload 8 /* filtOffset */
iconst_0
dup2
iaload
iconst_1
iadd
iastore
49: .line 163
iinc 5 /* parens */ -1
50: .line 164
goto 55
51: .line 167
StackMap locals:
StackMap stack:
aload 8 /* filtOffset */
iconst_0
dup2
iaload
iconst_1
iadd
iastore
52: .line 168
goto 55
53: .line 171
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
54: .line 172
aload 8 /* filtOffset */
iconst_0
iload 3 /* filterEnd */
iastore
55: .line 176
StackMap locals:
StackMap stack:
iload 5 /* parens */
ifge 59
56: .line 177
new javax.naming.directory.InvalidSearchFilterException
dup
57: .line 178
ldc "Unbalanced parenthesis"
58: .line 177
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
59: .line 97
StackMap locals:
StackMap stack:
aload 8 /* filtOffset */
iconst_0
iaload
iload 3 /* filterEnd */
if_icmplt 5
60: .line 182
iload 5 /* parens */
ifeq 62
61: .line 183
new javax.naming.directory.InvalidSearchFilterException
dup
ldc "Unbalanced parenthesis"
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
62: .line 190
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 63 0 ber Lcom/sun/jndi/ldap/BerEncoder;
0 63 1 filter [B
0 63 2 filterStart I
0 63 3 filterEnd I
27 46 4 nextOffset I
3 63 5 parens I
25 46 6 balance I
26 46 7 escape Z
4 63 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 198
iload 0 /* c */
bipush 48
if_icmplt 2
iload 0 /* c */
bipush 57
if_icmpgt 2
1: .line 199
iload 0 /* c */
bipush 48
isub
ireturn
2: .line 201
StackMap locals:
StackMap stack:
iload 0 /* c */
bipush 65
if_icmplt 4
iload 0 /* c */
bipush 70
if_icmpgt 4
3: .line 202
iload 0 /* c */
bipush 65
isub
bipush 10
iadd
ireturn
4: .line 204
StackMap locals:
StackMap stack:
iload 0 /* c */
bipush 97
if_icmplt 6
iload 0 /* c */
bipush 102
if_icmpgt 6
5: .line 205
iload 0 /* c */
bipush 97
isub
bipush 10
iadd
ireturn
6: .line 207
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 213
iconst_0
istore 3 /* escape */
start local 3 // boolean escape
1: iconst_0
istore 4 /* escStart */
start local 4 // boolean escStart
2: .line 221
iload 2 /* end */
iload 1 /* start */
isub
istore 7 /* len */
start local 7 // int len
3: .line 222
iload 7 /* len */
newarray 8
astore 8 /* tbuf */
start local 8 // byte[] tbuf
4: .line 223
iconst_0
istore 9 /* j */
start local 9 // int j
5: .line 224
iload 1 /* start */
istore 10 /* i */
start local 10 // int i
6: goto 29
7: .line 225
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 226
iload 3 /* escape */
ifeq 23
9: .line 228
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 235
iload 4 /* escStart */
ifeq 15
12: .line 237
iconst_0
istore 3 /* escape */
13: .line 238
aload 8 /* tbuf */
iload 9 /* j */
iinc 9 /* j */ 1
iload 6 /* ch */
bastore
14: .line 239
goto 28
15: .line 241
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 244
StackMap locals:
StackMap stack:
iload 4 /* escStart */
ifeq 20
17: .line 245
aload 8 /* tbuf */
iload 9 /* j */
iload 5 /* ival */
iconst_4
ishl
i2b
bastore
18: .line 246
iconst_0
istore 4 /* escStart */
19: .line 247
goto 28
20: .line 248
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 249
iconst_0
istore 3 /* escape */
22: .line 252
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 253
aload 8 /* tbuf */
iload 9 /* j */
iinc 9 /* j */ 1
iload 6 /* ch */
bastore
25: .line 254
iconst_0
istore 3 /* escape */
26: .line 255
goto 28
27: .line 256
StackMap locals:
StackMap stack:
iconst_1
dup
istore 3 /* escape */
istore 4 /* escStart */
28: .line 224
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 259
iload 9 /* j */
newarray 8
astore 10 /* answer */
start local 10 // byte[] answer
31: .line 260
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 264
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 268
iload 2 /* start */
istore 4 /* i */
start local 4 // int i
1: goto 5
2: .line 269
StackMap locals: int
StackMap stack:
aload 0 /* str */
iload 4 /* i */
baload
iload 1 /* ch */
if_icmpne 4
3: .line 270
iload 4 /* i */
ireturn
4: .line 268
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 272
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 276
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 277
iload 4 /* where */
iflt 8
2: .line 278
iconst_1
istore 5 /* i */
start local 5 // int i
3: goto 7
4: .line 279
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 280
iconst_m1
ireturn
6: .line 278
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 284
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 288
goto 10
1: .line 289
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 301
iconst_0
istore 6 /* backSlashCnt */
start local 6 // int backSlashCnt
3: .line 302
iload 4 /* where */
iconst_1
isub
istore 5 /* backSlashPos */
start local 5 // int backSlashPos
4: .line 303
goto 6
5: .line 304
StackMap locals: int int int
StackMap stack:
iinc 5 /* backSlashPos */ -1
iinc 6 /* backSlashCnt */ 1
6: .line 303
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 307
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 308
StackMap locals:
StackMap stack:
iload 4 /* where */
ireturn
9: .line 311
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 288
StackMap locals:
StackMap stack:
iload 2 /* start */
iload 3 /* end */
if_icmplt 1
11: .line 313
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=16, 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 329
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 330
new javax.naming.directory.InvalidSearchFilterException
dup
ldc "Missing 'equals'"
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
3: .line 334
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 335
iload 3 /* filtEnd */
istore 5 /* valueEnd */
start local 5 // int valueEnd
5: .line 336
iload 2 /* filtStart */
istore 6 /* typeStart */
start local 6 // int typeStart
6: .line 340
aload 1 /* filter */
iload 8 /* eq */
iconst_1
isub
baload
lookupswitch { // 4
58: 16
60: 7
62: 10
126: 13
default: 19
}
7: .line 342
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 343
iload 8 /* eq */
iconst_1
isub
istore 7 /* typeEnd */
start local 7 // int typeEnd
9: .line 344
goto 21
end local 9 // int ftype
end local 7 // int typeEnd
10: .line 346
StackMap locals:
StackMap stack:
sipush 165
istore 9 /* ftype */
start local 9 // int ftype
11: .line 347
iload 8 /* eq */
iconst_1
isub
istore 7 /* typeEnd */
start local 7 // int typeEnd
12: .line 348
goto 21
end local 9 // int ftype
end local 7 // int typeEnd
13: .line 350
StackMap locals:
StackMap stack:
sipush 168
istore 9 /* ftype */
start local 9 // int ftype
14: .line 351
iload 8 /* eq */
iconst_1
isub
istore 7 /* typeEnd */
start local 7 // int typeEnd
15: .line 352
goto 21
end local 9 // int ftype
end local 7 // int typeEnd
16: .line 354
StackMap locals:
StackMap stack:
sipush 169
istore 9 /* ftype */
start local 9 // int ftype
17: .line 355
iload 8 /* eq */
iconst_1
isub
istore 7 /* typeEnd */
start local 7 // int typeEnd
18: .line 356
goto 21
end local 9 // int ftype
end local 7 // int typeEnd
19: .line 358
StackMap locals:
StackMap stack:
iload 8 /* eq */
istore 7 /* typeEnd */
start local 7 // int typeEnd
20: .line 360
iconst_0
istore 9 /* ftype */
start local 9 // int ftype
21: .line 387
StackMap locals: com.sun.jndi.ldap.BerEncoder byte[] int int int int int int int int
StackMap stack:
iconst_m1
istore 10 /* optionsStart */
start local 10 // int optionsStart
22: .line 388
iconst_m1
istore 11 /* extensibleStart */
start local 11 // int extensibleStart
23: .line 389
aload 1 /* filter */
iload 6 /* typeStart */
baload
bipush 48
if_icmplt 24
aload 1 /* filter */
iload 6 /* typeStart */
baload
bipush 57
if_icmple 26
24: .line 390
StackMap locals: int int
StackMap stack:
aload 1 /* filter */
iload 6 /* typeStart */
baload
bipush 65
if_icmplt 25
aload 1 /* filter */
iload 6 /* typeStart */
baload
bipush 90
if_icmple 26
25: .line 391
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 6 /* typeStart */
baload
bipush 97
if_icmplt 63
aload 1 /* filter */
iload 6 /* typeStart */
baload
bipush 122
if_icmpgt 63
26: .line 394
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 6 /* typeStart */
baload
bipush 48
if_icmplt 28
aload 1 /* filter */
iload 6 /* typeStart */
baload
bipush 57
27: .line 393
if_icmpgt 28
iconst_1
goto 29
StackMap locals:
StackMap stack:
28: iconst_0
StackMap locals:
StackMap stack: int
29: istore 12 /* isNumericOid */
start local 12 // boolean isNumericOid
30: .line 395
iload 6 /* typeStart */
iconst_1
iadd
istore 13 /* i */
start local 13 // int i
31: goto 61
32: .line 397
StackMap locals: int int
StackMap stack:
aload 1 /* filter */
iload 13 /* i */
baload
bipush 59
if_icmpne 39
33: .line 398
iload 12 /* isNumericOid */
ifeq 37
aload 1 /* filter */
iload 13 /* i */
iconst_1
isub
baload
bipush 46
if_icmpne 37
34: .line 399
new javax.naming.directory.InvalidSearchFilterException
dup
35: .line 400
ldc "invalid attribute description"
36: .line 399
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
37: .line 404
StackMap locals:
StackMap stack:
iload 13 /* i */
istore 10 /* optionsStart */
38: .line 405
goto 69
39: .line 409
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 13 /* i */
baload
bipush 58
if_icmpne 46
iload 9 /* ftype */
sipush 169
if_icmpne 46
40: .line 410
iload 12 /* isNumericOid */
ifeq 44
aload 1 /* filter */
iload 13 /* i */
iconst_1
isub
baload
bipush 46
if_icmpne 44
41: .line 411
new javax.naming.directory.InvalidSearchFilterException
dup
42: .line 412
ldc "invalid attribute description"
43: .line 411
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
44: .line 416
StackMap locals:
StackMap stack:
iload 13 /* i */
istore 11 /* extensibleStart */
45: .line 417
goto 69
46: .line 420
StackMap locals:
StackMap stack:
iload 12 /* isNumericOid */
ifeq 53
47: .line 422
aload 1 /* filter */
iload 13 /* i */
baload
bipush 46
if_icmpne 48
aload 1 /* filter */
iload 13 /* i */
iconst_1
isub
baload
bipush 46
if_icmpeq 50
48: .line 423
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 13 /* i */
baload
bipush 46
if_icmpeq 60
49: .line 424
aload 1 /* filter */
iload 13 /* i */
baload
bipush 48
if_icmplt 50
aload 1 /* filter */
iload 13 /* i */
baload
bipush 57
if_icmple 60
50: .line 425
StackMap locals:
StackMap stack:
new javax.naming.directory.InvalidSearchFilterException
dup
51: .line 426
ldc "invalid attribute description"
52: .line 425
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
53: .line 433
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 13 /* i */
baload
bipush 45
if_icmpeq 60
aload 1 /* filter */
iload 13 /* i */
baload
bipush 95
if_icmpeq 60
54: .line 434
aload 1 /* filter */
iload 13 /* i */
baload
bipush 48
if_icmplt 55
aload 1 /* filter */
iload 13 /* i */
baload
bipush 57
if_icmple 60
55: .line 435
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 13 /* i */
baload
bipush 65
if_icmplt 56
aload 1 /* filter */
iload 13 /* i */
baload
bipush 90
if_icmple 60
56: .line 436
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 13 /* i */
baload
bipush 97
if_icmplt 57
aload 1 /* filter */
iload 13 /* i */
baload
bipush 122
if_icmple 60
57: .line 437
StackMap locals:
StackMap stack:
new javax.naming.directory.InvalidSearchFilterException
dup
58: .line 438
ldc "invalid attribute description"
59: .line 437
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
60: .line 395
StackMap locals:
StackMap stack:
iinc 13 /* i */ 1
StackMap locals:
StackMap stack:
61: iload 13 /* i */
iload 7 /* typeEnd */
if_icmplt 32
end local 13 // int i
end local 12 // boolean isNumericOid
62: .line 442
goto 69
StackMap locals:
StackMap stack:
63: iload 9 /* ftype */
sipush 169
if_icmpne 66
aload 1 /* filter */
iload 6 /* typeStart */
baload
bipush 58
if_icmpne 66
64: .line 444
iload 6 /* typeStart */
istore 11 /* extensibleStart */
65: .line 445
goto 69
66: .line 446
StackMap locals:
StackMap stack:
new javax.naming.directory.InvalidSearchFilterException
dup
67: .line 447
ldc "invalid attribute description"
68: .line 446
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
69: .line 451
StackMap locals:
StackMap stack:
iload 10 /* optionsStart */
ifle 93
70: .line 452
iload 10 /* optionsStart */
iconst_1
iadd
istore 12 /* i */
start local 12 // int i
71: goto 92
72: .line 453
StackMap locals: int
StackMap stack:
aload 1 /* filter */
iload 12 /* i */
baload
bipush 59
if_icmpne 77
73: .line 454
aload 1 /* filter */
iload 12 /* i */
iconst_1
isub
baload
bipush 59
if_icmpne 91
74: .line 455
new javax.naming.directory.InvalidSearchFilterException
dup
75: .line 456
ldc "invalid attribute description"
76: .line 455
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
77: .line 462
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 12 /* i */
baload
bipush 58
if_icmpne 84
iload 9 /* ftype */
sipush 169
if_icmpne 84
78: .line 463
aload 1 /* filter */
iload 12 /* i */
iconst_1
isub
baload
bipush 59
if_icmpne 82
79: .line 464
new javax.naming.directory.InvalidSearchFilterException
dup
80: .line 465
ldc "invalid attribute description"
81: .line 464
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
82: .line 469
StackMap locals:
StackMap stack:
iload 12 /* i */
istore 11 /* extensibleStart */
83: .line 470
goto 93
84: .line 476
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 12 /* i */
baload
bipush 45
if_icmpeq 91
aload 1 /* filter */
iload 12 /* i */
baload
bipush 95
if_icmpeq 91
85: .line 477
aload 1 /* filter */
iload 12 /* i */
baload
bipush 48
if_icmplt 86
aload 1 /* filter */
iload 12 /* i */
baload
bipush 57
if_icmple 91
86: .line 478
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 12 /* i */
baload
bipush 65
if_icmplt 87
aload 1 /* filter */
iload 12 /* i */
baload
bipush 90
if_icmple 91
87: .line 479
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 12 /* i */
baload
bipush 97
if_icmplt 88
aload 1 /* filter */
iload 12 /* i */
baload
bipush 122
if_icmple 91
88: .line 480
StackMap locals:
StackMap stack:
new javax.naming.directory.InvalidSearchFilterException
dup
89: .line 481
ldc "invalid attribute description"
90: .line 480
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
91: .line 452
StackMap locals:
StackMap stack:
iinc 12 /* i */ 1
StackMap locals:
StackMap stack:
92: iload 12 /* i */
iload 7 /* typeEnd */
if_icmplt 72
end local 12 // int i
93: .line 487
StackMap locals:
StackMap stack:
iload 11 /* extensibleStart */
ifle 143
94: .line 488
iconst_0
istore 12 /* isMatchingRule */
start local 12 // boolean isMatchingRule
95: .line 489
iload 11 /* extensibleStart */
iconst_1
iadd
istore 13 /* i */
start local 13 // int i
96: goto 142
97: .line 490
StackMap locals: int int
StackMap stack:
aload 1 /* filter */
iload 13 /* i */
baload
bipush 58
if_icmpne 101
98: .line 491
new javax.naming.directory.InvalidSearchFilterException
dup
99: .line 492
ldc "invalid attribute description"
100: .line 491
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
101: .line 493
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 13 /* i */
baload
bipush 48
if_icmplt 102
aload 1 /* filter */
iload 13 /* i */
baload
bipush 57
if_icmple 104
102: .line 494
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 13 /* i */
baload
bipush 65
if_icmplt 103
aload 1 /* filter */
iload 13 /* i */
baload
bipush 90
if_icmple 104
103: .line 495
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 13 /* i */
baload
bipush 97
if_icmplt 138
aload 1 /* filter */
iload 13 /* i */
baload
bipush 122
if_icmpgt 138
104: .line 496
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 13 /* i */
baload
bipush 48
if_icmplt 105
aload 1 /* filter */
iload 13 /* i */
baload
bipush 57
if_icmpgt 105
iconst_1
goto 106
StackMap locals:
StackMap stack:
105: iconst_0
StackMap locals:
StackMap stack: int
106: istore 14 /* isNumericOid */
start local 14 // boolean isNumericOid
107: .line 497
iinc 13 /* i */ 1
108: .line 498
iload 13 /* i */
istore 15 /* j */
start local 15 // int j
109: goto 136
110: .line 500
StackMap locals: int int
StackMap stack:
aload 1 /* filter */
iload 15 /* j */
baload
bipush 58
if_icmpne 121
111: .line 501
iload 12 /* isMatchingRule */
ifeq 115
112: .line 502
new javax.naming.directory.InvalidSearchFilterException
dup
113: .line 503
ldc "invalid attribute description"
114: .line 502
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
115: .line 505
StackMap locals:
StackMap stack:
iload 14 /* isNumericOid */
ifeq 119
aload 1 /* filter */
iload 15 /* j */
iconst_1
isub
baload
bipush 46
if_icmpne 119
116: .line 506
new javax.naming.directory.InvalidSearchFilterException
dup
117: .line 507
ldc "invalid attribute description"
118: .line 506
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
119: .line 510
StackMap locals:
StackMap stack:
iconst_1
istore 12 /* isMatchingRule */
120: .line 511
goto 141
121: .line 514
StackMap locals:
StackMap stack:
iload 14 /* isNumericOid */
ifeq 128
122: .line 516
aload 1 /* filter */
iload 15 /* j */
baload
bipush 46
if_icmpne 123
aload 1 /* filter */
iload 15 /* j */
iconst_1
isub
baload
bipush 46
if_icmpeq 125
123: .line 517
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 15 /* j */
baload
bipush 46
if_icmpeq 135
124: .line 518
aload 1 /* filter */
iload 15 /* j */
baload
bipush 48
if_icmplt 125
aload 1 /* filter */
iload 15 /* j */
baload
bipush 57
if_icmple 135
125: .line 519
StackMap locals:
StackMap stack:
new javax.naming.directory.InvalidSearchFilterException
dup
126: .line 520
ldc "invalid attribute description"
127: .line 519
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
128: .line 527
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 15 /* j */
baload
bipush 45
if_icmpeq 135
aload 1 /* filter */
iload 15 /* j */
baload
bipush 95
if_icmpeq 135
129: .line 528
aload 1 /* filter */
iload 15 /* j */
baload
bipush 48
if_icmplt 130
aload 1 /* filter */
iload 15 /* j */
baload
bipush 57
if_icmple 135
130: .line 529
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 15 /* j */
baload
bipush 65
if_icmplt 131
aload 1 /* filter */
iload 15 /* j */
baload
bipush 90
if_icmple 135
131: .line 530
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 15 /* j */
baload
bipush 97
if_icmplt 132
aload 1 /* filter */
iload 15 /* j */
baload
bipush 122
if_icmple 135
132: .line 531
StackMap locals:
StackMap stack:
new javax.naming.directory.InvalidSearchFilterException
dup
133: .line 532
ldc "invalid attribute description"
134: .line 531
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
135: .line 498
StackMap locals:
StackMap stack:
iinc 15 /* j */ 1
iinc 13 /* i */ 1
StackMap locals:
StackMap stack:
136: iload 15 /* j */
iload 7 /* typeEnd */
if_icmplt 110
end local 15 // int j
end local 14 // boolean isNumericOid
137: .line 536
goto 141
138: .line 537
StackMap locals:
StackMap stack:
new javax.naming.directory.InvalidSearchFilterException
dup
139: .line 538
ldc "invalid attribute description"
140: .line 537
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
141: .line 489
StackMap locals:
StackMap stack:
iinc 13 /* i */ 1
StackMap locals:
StackMap stack:
142: iload 13 /* i */
iload 7 /* typeEnd */
if_icmplt 97
end local 13 // int i
end local 12 // boolean isMatchingRule
143: .line 544
StackMap locals:
StackMap stack:
aload 1 /* filter */
iload 7 /* typeEnd */
iconst_1
isub
baload
bipush 46
if_icmpeq 145
aload 1 /* filter */
iload 7 /* typeEnd */
iconst_1
isub
baload
bipush 59
if_icmpeq 145
144: .line 545
aload 1 /* filter */
iload 7 /* typeEnd */
iconst_1
isub
baload
bipush 58
if_icmpne 148
145: .line 546
StackMap locals:
StackMap stack:
new javax.naming.directory.InvalidSearchFilterException
dup
146: .line 547
ldc "invalid attribute description"
147: .line 546
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
148: .line 550
StackMap locals:
StackMap stack:
iload 7 /* typeEnd */
iload 8 /* eq */
if_icmpne 160
149: .line 551
aload 1 /* filter */
bipush 42
iload 4 /* valueStart */
iload 5 /* valueEnd */
invokestatic com.sun.jndi.ldap.Filter.findUnescaped:([BCII)I
iconst_m1
if_icmpne 152
150: .line 552
sipush 163
istore 9 /* ftype */
151: .line 553
goto 160
StackMap locals:
StackMap stack:
152: aload 1 /* filter */
iload 4 /* valueStart */
baload
bipush 42
if_icmpne 156
153: .line 554
iload 4 /* valueStart */
iload 5 /* valueEnd */
iconst_1
isub
if_icmpne 156
154: .line 555
sipush 135
istore 9 /* ftype */
155: .line 556
goto 160
156: .line 557
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
157: .line 558
iload 6 /* typeStart */
iload 7 /* typeEnd */
iload 4 /* valueStart */
iload 5 /* valueEnd */
158: .line 557
invokestatic com.sun.jndi.ldap.Filter.encodeSubstringFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BIIII)V
159: .line 559
return
160: .line 563
StackMap locals:
StackMap stack:
iload 9 /* ftype */
sipush 135
if_icmpne 163
161: .line 564
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
162: .line 565
goto 177
StackMap locals:
StackMap stack:
163: iload 9 /* ftype */
sipush 169
if_icmpne 168
164: .line 566
aload 0 /* ber */
aload 1 /* filter */
165: .line 567
iload 6 /* typeStart */
iload 7 /* typeEnd */
iload 4 /* valueStart */
iload 5 /* valueEnd */
166: .line 566
invokestatic com.sun.jndi.ldap.Filter.encodeExtensibleMatch:(Lcom/sun/jndi/ldap/BerEncoder;[BIIII)V
167: .line 568
goto 177
168: .line 569
StackMap locals:
StackMap stack:
aload 0 /* ber */
iload 9 /* ftype */
invokevirtual com.sun.jndi.ldap.BerEncoder.beginSeq:(I)V
169: .line 570
aload 0 /* ber */
aload 1 /* filter */
iconst_4
170: .line 571
iload 6 /* typeStart */
iload 7 /* typeEnd */
iload 6 /* typeStart */
isub
171: .line 570
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
172: .line 572
aload 0 /* ber */
173: .line 573
aload 1 /* filter */
iload 4 /* valueStart */
iload 5 /* valueEnd */
invokestatic com.sun.jndi.ldap.Filter.unescapeFilterValue:([BII)[B
174: .line 574
iconst_4
175: .line 572
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BI)V
176: .line 575
aload 0 /* ber */
invokevirtual com.sun.jndi.ldap.BerEncoder.endSeq:()V
177: .line 581
StackMap locals:
StackMap stack:
return
end local 11 // int extensibleStart
end local 10 // int optionsStart
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 178 0 ber Lcom/sun/jndi/ldap/BerEncoder;
0 178 1 filter [B
0 178 2 filtStart I
0 178 3 filtEnd I
4 178 4 valueStart I
5 178 5 valueEnd I
6 178 6 typeStart I
9 10 7 typeEnd I
12 13 7 typeEnd I
15 16 7 typeEnd I
18 19 7 typeEnd I
20 178 7 typeEnd I
1 178 8 eq I
8 10 9 ftype I
11 13 9 ftype I
14 16 9 ftype I
17 19 9 ftype I
21 178 9 ftype I
22 178 10 optionsStart I
23 178 11 extensibleStart I
30 62 12 isNumericOid Z
31 62 13 i I
71 93 12 i I
95 143 12 isMatchingRule Z
96 143 13 i I
107 137 14 isNumericOid Z
109 137 15 j 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 593
aload 0 /* ber */
sipush 164
invokevirtual com.sun.jndi.ldap.BerEncoder.beginSeq:(I)V
1: .line 594
aload 0 /* ber */
aload 1 /* filter */
iconst_4
2: .line 595
iload 2 /* typeStart */
iload 3 /* typeEnd */
iload 2 /* typeStart */
isub
3: .line 594
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
4: .line 596
aload 0 /* ber */
bipush 48
invokevirtual com.sun.jndi.ldap.BerEncoder.beginSeq:(I)V
5: .line 598
iload 4 /* valueStart */
istore 7 /* previndex */
start local 7 // int previndex
6: .line 599
goto 20
start local 6 // int index
7: .line 600
StackMap locals: int int
StackMap stack:
iload 7 /* previndex */
iload 4 /* valueStart */
if_icmpne 14
8: .line 601
iload 7 /* previndex */
iload 6 /* index */
if_icmpge 19
9: .line 605
aload 0 /* ber */
10: .line 606
aload 1 /* filter */
iload 7 /* previndex */
iload 6 /* index */
invokestatic com.sun.jndi.ldap.Filter.unescapeFilterValue:([BII)[B
11: .line 607
sipush 128
12: .line 605
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BI)V
13: .line 609
goto 19
14: .line 610
StackMap locals:
StackMap stack:
iload 7 /* previndex */
iload 6 /* index */
if_icmpge 19
15: .line 613
aload 0 /* ber */
16: .line 614
aload 1 /* filter */
iload 7 /* previndex */
iload 6 /* index */
invokestatic com.sun.jndi.ldap.Filter.unescapeFilterValue:([BII)[B
17: .line 615
sipush 129
18: .line 613
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BI)V
19: .line 618
StackMap locals:
StackMap stack:
iload 6 /* index */
iconst_1
iadd
istore 7 /* previndex */
end local 6 // int index
20: .line 599
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 620
iload 7 /* previndex */
iload 5 /* valueEnd */
if_icmpge 27
23: .line 623
aload 0 /* ber */
24: .line 624
aload 1 /* filter */
iload 7 /* previndex */
iload 5 /* valueEnd */
invokestatic com.sun.jndi.ldap.Filter.unescapeFilterValue:([BII)[B
25: .line 625
sipush 130
26: .line 623
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BI)V
27: .line 627
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 628
aload 0 /* ber */
invokevirtual com.sun.jndi.ldap.BerEncoder.endSeq:()V
29: .line 633
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=6, 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 652
aload 3 /* filtOffset */
iconst_0
dup2
iaload
iconst_1
iadd
iastore
1: .line 654
aload 0 /* ber */
iload 2 /* filterType */
invokevirtual com.sun.jndi.ldap.BerEncoder.beginSeq:(I)V
2: .line 656
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 657
aload 0 /* ber */
aload 1 /* filter */
iload 2 /* filterType */
aload 5 /* parens */
iconst_0
iaload
aload 5 /* parens */
iconst_1
iaload
invokestatic com.sun.jndi.ldap.Filter.encodeFilterList:(Lcom/sun/jndi/ldap/BerEncoder;[BIII)V
4: .line 659
aload 0 /* ber */
invokevirtual com.sun.jndi.ldap.BerEncoder.endSeq:()V
5: .line 665
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 675
iconst_1
istore 3 /* balance */
start local 3 // int balance
1: .line 676
iconst_0
istore 4 /* escape */
start local 4 // boolean escape
2: .line 677
aload 1 /* filtOffset */
iconst_0
iaload
istore 5 /* nextOffset */
start local 5 // int nextOffset
3: .line 679
goto 14
4: .line 680
StackMap locals: int int int
StackMap stack:
iload 4 /* escape */
ifne 9
5: .line 681
aload 0 /* filter */
iload 5 /* nextOffset */
baload
bipush 40
if_icmpne 7
6: .line 682
iinc 3 /* balance */ 1
goto 9
7: .line 683
StackMap locals:
StackMap stack:
aload 0 /* filter */
iload 5 /* nextOffset */
baload
bipush 41
if_icmpne 9
8: .line 684
iinc 3 /* balance */ -1
9: .line 686
StackMap locals:
StackMap stack:
aload 0 /* filter */
iload 5 /* nextOffset */
baload
bipush 92
if_icmpne 11
iload 4 /* escape */
ifne 11
10: .line 687
iconst_1
istore 4 /* escape */
goto 12
11: .line 689
StackMap locals:
StackMap stack:
iconst_0
istore 4 /* escape */
12: .line 690
StackMap locals:
StackMap stack:
iload 3 /* balance */
ifle 14
13: .line 691
iinc 5 /* nextOffset */ 1
14: .line 679
StackMap locals:
StackMap stack:
iload 5 /* nextOffset */
iload 2 /* end */
if_icmpge 15
iload 3 /* balance */
ifgt 4
15: .line 693
StackMap locals:
StackMap stack:
iload 3 /* balance */
ifeq 17
16: .line 694
new javax.naming.directory.InvalidSearchFilterException
dup
ldc "Unbalanced parenthesis"
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
17: .line 699
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 701
aload 1 /* filtOffset */
iconst_0
iload 5 /* nextOffset */
iconst_1
iadd
iastore
19: .line 703
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, int);
descriptor: (Lcom/sun/jndi/ldap/BerEncoder;[BIII)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=10, 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 start
start local 4 // int end
0: .line 718
iconst_1
newarray 10
astore 5 /* filtOffset */
start local 5 // int[] filtOffset
1: .line 719
iconst_0
istore 6 /* listNumber */
start local 6 // int listNumber
2: .line 720
aload 5 /* filtOffset */
iconst_0
iload 3 /* start */
iastore
goto 20
3: .line 721
StackMap locals: int[] int
StackMap stack:
aload 1 /* filter */
aload 5 /* filtOffset */
iconst_0
iaload
baload
i2c
invokestatic java.lang.Character.isSpaceChar:(C)Z
ifeq 5
4: .line 722
goto 19
5: .line 724
StackMap locals:
StackMap stack:
iload 2 /* filterType */
sipush 162
if_icmpne 9
iload 6 /* listNumber */
ifle 9
6: .line 725
new javax.naming.directory.InvalidSearchFilterException
dup
7: .line 726
ldc "Filter (!) cannot be followed by more than one filters"
8: .line 725
invokespecial javax.naming.directory.InvalidSearchFilterException.<init>:(Ljava/lang/String;)V
athrow
9: .line 729
StackMap locals:
StackMap stack:
aload 1 /* filter */
aload 5 /* filtOffset */
iconst_0
iaload
baload
bipush 40
if_icmpne 11
10: .line 730
goto 19
11: .line 733
StackMap locals:
StackMap stack:
aload 1 /* filter */
aload 5 /* filtOffset */
iload 4 /* end */
invokestatic com.sun.jndi.ldap.Filter.findRightParen:([B[II)[I
astore 7 /* parens */
start local 7 // int[] parens
12: .line 736
aload 7 /* parens */
iconst_1
iaload
aload 7 /* parens */
iconst_0
iaload
isub
istore 8 /* len */
start local 8 // int len
13: .line 737
iload 8 /* len */
iconst_2
iadd
newarray 8
astore 9 /* newfilter */
start local 9 // byte[] newfilter
14: .line 738
aload 1 /* filter */
aload 7 /* parens */
iconst_0
iaload
aload 9 /* newfilter */
iconst_1
iload 8 /* len */
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
15: .line 739
aload 9 /* newfilter */
iconst_0
bipush 40
bastore
16: .line 740
aload 9 /* newfilter */
iload 8 /* len */
iconst_1
iadd
bipush 41
bastore
17: .line 741
aload 0 /* ber */
aload 9 /* newfilter */
iconst_0
aload 9 /* newfilter */
arraylength
invokestatic com.sun.jndi.ldap.Filter.encodeFilter:(Lcom/sun/jndi/ldap/BerEncoder;[BII)V
18: .line 743
iinc 6 /* listNumber */ 1
end local 9 // byte[] newfilter
end local 8 // int len
end local 7 // int[] parens
19: .line 720
StackMap locals:
StackMap stack:
aload 5 /* filtOffset */
iconst_0
dup2
iaload
iconst_1
iadd
iastore
StackMap locals:
StackMap stack:
20: aload 5 /* filtOffset */
iconst_0
iaload
iload 4 /* end */
if_icmplt 3
21: .line 750
return
end local 6 // int listNumber
end local 5 // int[] filtOffset
end local 4 // int end
end local 3 // int start
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 22 0 ber Lcom/sun/jndi/ldap/BerEncoder;
0 22 1 filter [B
0 22 2 filterType I
0 22 3 start I
0 22 4 end I
1 22 5 filtOffset [I
2 22 6 listNumber I
12 19 7 parens [I
13 19 8 len I
14 19 9 newfilter [B
Exceptions:
throws java.io.IOException, javax.naming.NamingException
MethodParameters:
Name Flags
ber
filter
filterType
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 759
iconst_0
istore 6 /* matchDN */
start local 6 // boolean matchDN
1: .line 764
aload 0 /* ber */
sipush 169
invokevirtual com.sun.jndi.ldap.BerEncoder.beginSeq:(I)V
2: .line 767
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 770
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 771
iconst_1
istore 6 /* matchDN */
7: .line 775
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 776
iload 9 /* i */
iconst_m1
if_icmpne 23
10: .line 778
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 779
aload 0 /* ber */
aload 1 /* filter */
sipush 129
12: .line 780
iload 8 /* colon2 */
iconst_1
iadd
iload 3 /* matchEnd */
iload 8 /* colon2 */
iconst_1
iadd
isub
13: .line 779
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
14: .line 782
goto 23
StackMap locals:
StackMap stack:
15: iload 9 /* i */
iload 8 /* colon2 */
if_icmpne 20
iload 9 /* i */
iflt 20
16: .line 783
aload 0 /* ber */
aload 1 /* filter */
sipush 129
17: .line 784
iload 7 /* colon */
iconst_1
iadd
iload 8 /* colon2 */
iload 7 /* colon */
iconst_1
iadd
isub
18: .line 783
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
19: .line 786
goto 23
20: .line 787
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
sipush 129
21: .line 788
iload 7 /* colon */
iconst_1
iadd
iload 3 /* matchEnd */
iload 7 /* colon */
iconst_1
iadd
isub
22: .line 787
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
23: .line 793
StackMap locals:
StackMap stack:
iload 7 /* colon */
iload 2 /* matchStart */
if_icmple 31
24: .line 794
aload 0 /* ber */
aload 1 /* filter */
25: .line 795
sipush 130
iload 2 /* matchStart */
iload 7 /* colon */
iload 2 /* matchStart */
isub
26: .line 794
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
27: .line 797
goto 31
end local 9 // int i
end local 8 // int colon2
28: .line 798
StackMap locals:
StackMap stack:
aload 0 /* ber */
aload 1 /* filter */
sipush 130
iload 2 /* matchStart */
29: .line 799
iload 3 /* matchEnd */
iload 2 /* matchStart */
isub
30: .line 798
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BIII)V
31: .line 802
StackMap locals:
StackMap stack:
aload 0 /* ber */
32: .line 803
aload 1 /* filter */
iload 4 /* valueStart */
iload 5 /* valueEnd */
invokestatic com.sun.jndi.ldap.Filter.unescapeFilterValue:([BII)[B
33: .line 804
sipush 131
34: .line 802
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeOctetString:([BI)V
35: .line 811
aload 0 /* ber */
iload 6 /* matchDN */
sipush 132
invokevirtual com.sun.jndi.ldap.BerEncoder.encodeBoolean:(ZI)V
36: .line 813
aload 0 /* ber */
invokevirtual com.sun.jndi.ldap.BerEncoder.endSeq:()V
37: .line 814
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 827
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 828
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 831
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 832
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 835
ldc " "
astore 4 /* dstr */
start local 4 // java.lang.String dstr
1: .line 836
getstatic com.sun.jndi.ldap.Filter.dbgIndent:I
istore 5 /* i */
start local 5 // int i
2: .line 837
goto 4
3: .line 838
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 837
StackMap locals:
StackMap stack:
iload 5 /* i */
iinc 5 /* i */ -1
ifgt 3
5: .line 840
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 842
getstatic java.lang.System.err:Ljava/io/PrintStream;
aload 4 /* dstr */
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
7: .line 843
iload 2 /* start */
istore 6 /* j */
start local 6 // int j
8: goto 11
9: .line 844
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 843
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 846
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokevirtual java.io.PrintStream.println:()V
13: .line 847
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"