[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: slapo-dds and data decoding error
Added an OpenLDAP trace at the end.
Ciao, Michael.
Michael Ströder wrote:
> For the fun of it I'm implementing a small Python script which sends a Refresh
> Request (RFC 2589). But slapo-dds (OpenLDAP 2.4.24) returns a protocol error
> due to a decoding error:
>
> Mar 24 20:48:38 nb2 slapd[8202]: conn=1015 op=1 EXT
> oid=1.3.6.1.4.1.1466.101.119.1
> Mar 24 20:48:38 nb2 slapd[8202]: conn=1015 op=1 RESULT oid= err=2 text=data
> decoding error
>
> But what's wrong with the request value (BER file attached)?
>
> dumpasn1 output seems right to me:
>
> 0 51: SEQUENCE {
> 2 45: OCTET STRING
> : 'cn=DDS Test Raum,ou=Testing,dc=stroeder,dc=de'
> 49 2: INTEGER 332
> : }
conn=1000 fd=18 ACCEPT from PATH=/tmp/openldap-socket (PATH=/tmp/openldap-socket)
daemon: activity on 2 descriptors
daemon: activity on: 18r
daemon: read active on 18
daemon: epoll: listen=7 active_threads=0 tvp=zero
daemon: epoll: listen=8 active_threads=0 tvp=zero
daemon: epoll: listen=9 active_threads=0 tvp=zero
connection_get(18)
connection_get(18): got connid=1000
connection_read(18): checking for input on id=1000
ber_get_next
ldap_read: want=8, got=8
0000: 30 0c 02 01 01 60 07 02 0....`..
ldap_read: want=6, got=6
0000: 01 03 04 00 80 00 ......
ber_get_next: tag 0x30 len 12 contents:
ber_dump: buf=0xe8bd70 ptr=0xe8bd70 end=0xe8bd7c len=12
0000: 02 01 01 60 07 02 01 03 04 00 80 00 ...`........
op tag 0x60, time 1301049188
ber_get_next
ldap_read: want=8 error=Resource temporarily unavailable
conn=1000 op=0 do_bind
ber_scanf fmt ({imt) ber:
ber_dump: buf=0xe8bd70 ptr=0xe8bd73 end=0xe8bd7c len=9
0000: 60 07 02 01 03 04 00 80 00 `........
ber_scanf fmt (m}) ber:
ber_dump: buf=0xe8bd70 ptr=0xe8bd7a end=0xe8bd7c len=2
0000: 00 00 ..
>>> dnPrettyNormal: <>
<<< dnPrettyNormal: <>, <>
conn=1000 op=0 BIND dn="" method=128
do_bind: version=3 dn="" method=128
send_ldap_result: conn=1000 op=0 p=3
send_ldap_result: err=0 matched="" text=""
send_ldap_response: msgid=1 tag=97 err=0
ber_flush2: 14 bytes to sd 18
0000: 30 0c 02 01 01 61 07 0a 01 00 04 00 04 00 0....a........
ldap_write: want=14, written=14
0000: 30 0c 02 01 01 61 07 0a 01 00 04 00 04 00 0....a........
conn=1000 op=0 RESULT tag=97 err=0 text=
do_bind: v3 anonymous bind
daemon: activity on 1 descriptor
daemon: activity on:
daemon: epoll: listen=7 active_threads=0 tvp=zero
daemon: epoll: listen=8 active_threads=0 tvp=zero
daemon: epoll: listen=9 active_threads=0 tvp=zero
daemon: activity on 1 descriptor
daemon: activity on: 18r
daemon: read active on 18
daemon: epoll: listen=7 active_threads=0 tvp=zero
daemon: epoll: listen=8 active_threads=0 tvp=zero
daemon: epoll: listen=9 active_threads=0 tvp=zero
connection_get(18)
connection_get(18): got connid=1000
connection_read(18): checking for input on id=1000
ber_get_next
ldap_read: want=8, got=8
0000: 30 59 02 01 02 77 54 80 0Y...wT.
ldap_read: want=83, got=83
0000: 1a 31 2e 33 2e 36 2e 31 2e 34 2e 31 2e 31 34 36 .1.3.6.1.4.1.146
0010: 36 2e 31 30 31 2e 31 31 39 2e 31 81 36 30 34 04 6.101.119.1.604.
0020: 2d 63 6e 3d 44 44 53 20 54 65 73 74 20 52 61 75 -cn=DDS Test Rau
0030: 6d 2c 6f 75 3d 54 65 73 74 69 6e 67 2c 64 63 3d m,ou=Testing,dc=
0040: 73 74 72 6f 65 64 65 72 2c 64 63 3d 64 65 02 03 stroeder,dc=de..
0050: 01 51 80 .Q.
ber_get_next: tag 0x30 len 89 contents:
ber_dump: buf=0x7fae6d002260 ptr=0x7fae6d002260 end=0x7fae6d0022b9 len=89
0000: 02 01 02 77 54 80 1a 31 2e 33 2e 36 2e 31 2e 34 ...wT..1.3.6.1.4
0010: 2e 31 2e 31 34 36 36 2e 31 30 31 2e 31 31 39 2e .1.1466.101.119.
0020: 31 81 36 30 34 04 2d 63 6e 3d 44 44 53 20 54 65 1.604.-cn=DDS Te
0030: 73 74 20 52 61 75 6d 2c 6f 75 3d 54 65 73 74 69 st Raum,ou=Testi
0040: 6e 67 2c 64 63 3d 73 74 72 6f 65 64 65 72 2c 64 ng,dc=stroeder,d
0050: 63 3d 64 65 02 03 01 51 80 c=de...Q.
op tag 0x77, time 1301049188
ber_get_next
ldap_read: want=8 error=Resource temporarily unavailable
conn=1000 op=1 do_extended
ber_scanf fmt ({m) ber:
ber_dump: buf=0x7fae6d002260 ptr=0x7fae6d002263 end=0x7fae6d0022b9 len=86
0000: 77 54 80 1a 31 2e 33 2e 36 2e 31 2e 34 2e 31 2e wT..1.3.6.1.4.1.
0010: 31 34 36 36 2e 31 30 31 2e 31 31 39 2e 31 81 36 1466.101.119.1.6
0020: 30 34 04 2d 63 6e 3d 44 44 53 20 54 65 73 74 20 04.-cn=DDS Test
0030: 52 61 75 6d 2c 6f 75 3d 54 65 73 74 69 6e 67 2c Raum,ou=Testing,
0040: 64 63 3d 73 74 72 6f 65 64 65 72 2c 64 63 3d 64 dc=stroeder,dc=d
0050: 65 02 03 01 51 80 e...Q.
ber_scanf fmt (m) ber:
ber_dump: buf=0x7fae6d002260 ptr=0x7fae6d002281 end=0x7fae6d0022b9 len=56
0000: 00 36 30 34 04 2d 63 6e 3d 44 44 53 20 54 65 73 .604.-cn=DDS Tes
0010: 74 20 52 61 75 6d 2c 6f 75 3d 54 65 73 74 69 6e t Raum,ou=Testin
0020: 67 2c 64 63 3d 73 74 72 6f 65 64 65 72 2c 64 63 g,dc=stroeder,dc
0030: 3d 64 65 02 03 01 51 80 =de...Q.
conn=1000 op=1 EXT oid=1.3.6.1.4.1.1466.101.119.1
do_extended: oid=1.3.6.1.4.1.1466.101.119.1
ber_scanf fmt ({) ber:
ber_dump: buf=0xc89a40 ptr=0xc89a40 end=0xc89a76 len=54
0000: 30 34 04 2d 63 6e 3d 44 44 53 20 54 65 73 74 20 04.-cn=DDS Test
0010: 52 61 75 6d 2c 6f 75 3d 54 65 73 74 69 6e 67 2c Raum,ou=Testing,
0020: 64 63 3d 73 74 72 6f 65 64 65 72 2c 64 63 3d 64 dc=stroeder,dc=d
0030: 65 02 03 01 51 80 e...Q.
slap_parse_refresh: decoding error.
slap_parse_refresh: decoding error, len=45
send_ldap_extended: err=2 oid= len=0
send_ldap_response: msgid=2 tag=120 err=2
ber_flush2: 33 bytes to sd 18
0000: 30 1f 02 01 02 78 1a 0a 01 02 04 00 04 13 64 61 0....x........da
0010: 74 61 20 64 65 63 6f 64 69 6e 67 20 65 72 72 6f ta decoding erro
0020: 72 r
ldap_write: want=33, written=33
0000: 30 1f 02 01 02 78 1a 0a 01 02 04 00 04 13 64 61 0....x........da
0010: 74 61 20 64 65 63 6f 64 69 6e 67 20 65 72 72 6f ta decoding erro
0020: 72 r
conn=1000 op=1 RESULT oid= err=2 text=data decoding error