Uploaded image for project: 'Directory Client API'
  1. Directory Client API
  2. DIRAPI-366

NPE for reading Root DSE with Oracle Unified Directory

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.0.1
    • 2.0.2
    • None

    Description

      Hello,

      when we try to read the Root DSE of an Oracle Unified Directory Server (OUD) we get the following stack trace:

      {{
      org.apache.mina.filter.codec.ProtocolDecoderException: java.lang.NullPointerException (Hexdump: 30 82 01 17 02 01 08 65 07 0A 01 00 04 00 04 00 A0 82 01 07 30 82 01 03 04 17 31 2E 33 2E 36 2E 31 2E 34 2E 31 2E 32 36 30 32 37 2E 31 2E 35 2E 34 01 01 FF 04 81 E4 30 81 E1 04 81 DE 64 63 3D 76 66 64 32 2C 64 63 3D 64 65 3A 30 30 30 30 30 31 37 37 61 64 38 32 32 35 36 32 35 65 39 35 30 30 30 30 30 32 61 39 20 30 30 30 30 30 31 37 37 62 35 37 30 63 63 66 36 30 66 39 62 30 30 30 30 30 35 66 63 3B 6F 3D 74 72 61 6E 73 66 65 72 3A 30 30 30 30 30 31 37 37 62 30 34 61 37 62 37 64 31 34 65 31 30 30 30 30 32 65 65 61 20 30 30 30 30 30 31 37 37 62 35 37 30 64 37 62 38 34 63 36 39 30 30 30 30 30 31 33 65 3B 6F 75 3D 6E 6D 73 2C 64 63 3D 61 72 63 6F 72 2C 64 63 3D 6E 65 74 3A 30 30 30 30 30 31 37 36 36 62 39 34 62 65 62 62 37 33 32 34 30 30 30 30 33 62 64 61 20 30 30 30 30 30 31 37 36 36 61 66 66 39 35 30 34 32 63 34 65 30 30 30 30 34 34 30 62 3B)
      at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:263)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:650)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:49)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1128)
      at org.apache.mina.filter.ssl.SslHandler.flushMessageReceived(SslHandler.java:330)
      at org.apache.mina.filter.ssl.SslFilter.messageReceived(SslFilter.java:552)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:650)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:49)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1128)
      at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:122)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:650)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:643)
      at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:539)
      at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$1200(AbstractPollingIoProcessor.java:68)
      at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1222)
      at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1211)
      at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:683)
      at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
      at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
      at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
      at java.base/java.lang.Thread.run(Thread.java:834)
      Caused by: java.lang.NullPointerException
      at org.apache.directory.api.ldap.codec.actions.controls.StoreControlValue.action(StoreControlValue.java:81)
      at org.apache.directory.api.ldap.codec.actions.controls.StoreControlValue.action(StoreControlValue.java:49)
      at org.apache.directory.api.asn1.ber.grammar.AbstractGrammar.executeAction(AbstractGrammar.java:136)
      at org.apache.directory.api.asn1.ber.Asn1Decoder.treatTLVDoneState(Asn1Decoder.java:604)
      at org.apache.directory.api.asn1.ber.Asn1Decoder.decode(Asn1Decoder.java:740)
      }}

      Using a debugger, we end up in the code of StoreControlValue Line 80:
      {{ControlFactory<?> factory = container.getControlFactory();
      factory.decodeValue( control, value.getData() );}}

      Here factory is null.

      The OID which is evaluated is 1.3.6.1.4.1.26027.1.5.4.

      The bug was introduced between Apache Directory Studio M14 and M15.

      Attachments

        Issue Links

          Activity

            People

              elecharny Emmanuel Lécharny
              tkriener Thomas Kriener
              Votes:
              1 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: