You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by "Gerrit Telkamp (JIRA)" <ji...@apache.org> on 2014/11/18 22:47:34 UTC
[jira] [Created] (DIRSERVER-2022) Asn1Decoder throws exception
while decoding OID 1.2.840.113556.1.4.473
Gerrit Telkamp created DIRSERVER-2022:
-----------------------------------------
Summary: Asn1Decoder throws exception while decoding OID 1.2.840.113556.1.4.473
Key: DIRSERVER-2022
URL: https://issues.apache.org/jira/browse/DIRSERVER-2022
Project: Directory ApacheDS
Issue Type: Bug
Components: asn1
Affects Versions: 2.0.0-M17
Reporter: Gerrit Telkamp
Since updating from ApacheDS 1.5.7 to ApacheDS 2.0.0 M17, our printer Brother MFC8860DN is not able to access our LDAP repository anymore. The problem is caused by org.apache.directory.api.asn1.ber.Asn1Decoder.java, ignoring the request and throwing a stack trace:
{code}
[18:06:18] ERROR [org.apache.directory.api.asn1.ber.Asn1Decoder] - ERR_00009_MORE_TLV_EXPECTED The PDU is decoded, but we should have had more TLVs
[18:06:18] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Unexpected exception forcing session to close: sending disconnect notice to client.
org.apache.mina.filter.codec.ProtocolDecoderException: org.apache.directory.api.ldap.codec.api.ResponseCarryingException: ERR_00010_TRUNCATED_PDU Truncated PDU. Some elements are lacking, accordingly to the grammar (Hexdump: 30 81 BE 02 01 02 63 81 91 04 14 6F 75 3D 75 73 65 72 73 2C 6F 3D 41 42 43 44 45 46 47 48 49 0A 01 02 0A 01 03 02 01 02 02 01 05 01 01 00 A0 27 A1 20 87 04 6D 61 69 6C 87 18 66 61 63 73 69 6D 69 6C 65 54 65 6C 65 70 68 6F 6E 65 4E 75 6D 62 65 72 87 03 75 69 64 30 41 04 03 75 69 64 04 04 6D 61 69 6C 04 18 66 61 63 73 69 6D 69 6C 65 54 65 6C 65 70 68 6F 6E 65 4E 75 6D 62 65 72 04 02 73 6E 04 05 74 69 74 6C 65 04 02 6F 75 04 0B 64 65 73 63 72 69 70 74 69 6F 6E A0 25 30 23 04 16 31 2E 32 2E 38 34 30 2E 31 31 33 35 35 36 2E 31 2E 34 2E 34 37 33 04 09 30 07 30 05 04 03 75 69 64 00 00 00 [...]
at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:242)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:417)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:47)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:765)
at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:109)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:417)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:410)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:710)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:664)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:653)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:67)
at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1124)
at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.directory.api.ldap.codec.api.ResponseCarryingException: ERR_00010_TRUNCATED_PDU Truncated PDU. Some elements are lacking, accordingly to the grammar
at org.apache.directory.api.ldap.codec.protocol.mina.LdapProtocolDecoder.decode(LdapProtocolDecoder.java:177)
at org.apache.directory.api.ldap.codec.protocol.mina.LdapProtocolDecoder.decode(LdapProtocolDecoder.java:94)
at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:232)
... 15 more
{code}
Here is the decoded request:
{code}
SEQUENCE {
INTEGER 0x02 (2 decimal)
BITSTRING {
OCTETSTRING 6F753D75736572732C6F3D414243444546474849 #ou=users,o=abcdefghi
[0A] 02
[0A] 03
INTEGER 0x02 (2 decimal)
INTEGER 0x05 (5 decimal)
BOOLEAN TRUE
[0] {
[1] {
[7] 6D61696C #mail
[7] 66616373696D696C6554656C6570686F6E654E756D626572 #facsimileTelephoneNumber
}
[7] 756964 #uid
}
SEQUENCE {
OCTETSTRING 756964 #uid
OCTETSTRING 6D61696C #uidmail
OCTETSTRING 66616373696D696C6554656C6570686F6E654E756D626572 #facsimileTelephoneNumber
OCTETSTRING 736E #sn
OCTETSTRING 7469746C65 #title
OCTETSTRING 6F75 #ou
OCTETSTRING 6465736372697074696F6E #description
}
}
[0] {
SEQUENCE {
OCTETSTRING 312E322E3834302E3131333535362E312E342E343733 #1.2.840.113556.1.4.473
OCTETSTRING 300730050403756964 #00uid
}
}
}
[00]
[00]
{code}
For me it seems that the 1.2.840.113556.1.4.473 with value 0x300730050403756964 is the problem.
The same device worked when we used ApacheDS 1.5.7.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)