Closed Bug 306707 Opened 19 years ago Closed 19 years ago

could not decode the sub filter sent by Outlook

Categories

(Directory :: LDAP Java SDK, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 306654

People

(Reporter: richm, Assigned: richm)

Details

I could not decode the sub filter sent by Outlook which is hidden in a
virtuallistcontrol requrest’s data section, using the library, as it throws IO
exception:

java.io.IOException
            at netscape.ldap.client.JDAPBERTagDecoder.getElement(Unknown Source)
            at netscape.ldap.ber.stream.BERTag.<init>(Unknown Source)
            at netscape.ldap.ber.stream.BERElement.getElement(Unknown Source)
            at netscape.ldap.ber.stream.BERConstruct.<init>(Unknown Source)
            at netscape.ldap.ber.stream.BERSequence.<init>(Unknown Source)
            at netscape.ldap.ber.stream.BERElement.getElement(Unknown Source)
            at
com.intraspect.ldap.server.LDAPVirtualListRequest.parseResponse(LDAPVirtualListRequest.java:109)
            at
com.intraspect.ldap.server.LDAPVirtualListRequest.<init>(LDAPVirtualListRequest.java:97)
            at
com.intraspect.ldap.server.LDAPConnection.processSearchRequest(LDAPConnection.java:379)
            at
com.intraspect.ldap.server.LDAPConnection.processResponse(LDAPConnection.java:156)
            at com.intraspect.ldap.server.LDAPConnection.run(LDAPConnection.java:73)
            at com.intraspect.util.ThreadPoolThread.run(ThreadPoolThread.java:73)
 
I figured out that the fix is something like this in class JDAPBERTagDecoder,
method:

    public BERElement getElement(BERTagDecoder decoder, int tag,
        InputStream stream, int[] bytes_read, boolean[] implicit)
 
…
            case 0x81:
                element = new BEROctetString(decoder, stream, bytes_read);     
 -> I added this part.
                implicit[0] = true;
            break;
            case 0x85:  /* Context Specific [5]:
                 * (a) Handle Microsoft v3 referral bugs! (Response)           
       -> some existing codes
                 * (b) Handle Microsoft v3 supportedVersion in Bind
                 *     response           
                 */
                element = new BERInteger(stream, bytes_read);
                implicit[0] = true;
            break;
 
 …

I am not 100% sure about this, and not sure if this is MS specific or it is a
library bug, anybody can help??
This is a duplicate of bug 306654 - the bug descriptions (and suggested fixes!) 
are the same.

*** This bug has been marked as a duplicate of 306654 ***
Status: NEW → RESOLVED
Closed: 19 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.