[Date Prev][Date Next] [Chronological] [Thread] [Top]

Extended Request Response Behavior



Hi Kurt,
 I was trying to use PasswordModify Extended Operation through OpenLDAP
API, WinLDAP API and OpenVMS LDAP API. slapd doesnt return the ResponseOID
for any extended operation - this isnt a problem for openldap clients, but
is certainly a problem for WinLDAP and OpenVMS ldap clients.

Current Response frmo slapd:
ldap_write: want=14, written=14
  0000:  30 0c 02 01 04 78 07 0a  01 00 04 00 04 00         0....x........

OpenVMS client output:
%SYSTEM-F-ACCVIO, access violation, reason mask=00, virtual
address=000000000000
0000, PC=FFFFFFFF8098C8E8, PS=0000001B

  Improperly handled condition, image exit forced.
    Signal arguments:   Number = 0000000000000005
                        Name   = 000000000000000C
                                 0000000000000000
                                 0000000000000000
                                 FFFFFFFF8098C8E8
                                 000000000000001B

    Register dump:
    R0  = 00000000000E52D0  R1  = 000000007B610008  R2  = 000000007BFD1940
    R3  = 0000000000000000  R4  = 000000007AE7E420  R5  = 0000000000000000
    R6  = 0000000000000000  R7  = 000000007AE7E998  R8  = 000000007AE7E898
    R9  = 000000007AE7E420  R10 = 00000000000E5310  R11 = 000000007FFCE3E0
    R12 = 00000000002A5728  R13 = 000000007AF4A5C0  R14 = FFFFFFFF81B744C0
    R15 = 000000007AF49C20  R16 = 0000000000000000  R17 = 0000000000000001
    R18 = 0000000000063A60  R19 = 000000000000011E  R20 = 00000011000E4C40
    R21 = 0000000077770000  R22 = 000000007B6101A0  R23 = 00000011000E52E0
    R24 = 0000000000000000  R25 = 0000000000000001  R26 = FFFFFFFF80A94BC0
    R27 = 000000007BFD1BA0  R28 = FFFFFFFF809D92B0  R29 = 000000007AE7E2F0
    SP  = 000000007AE7E2F0  PC  = FFFFFFFF8098C8E8  PS  = 300000000000001B

WinLDAP client output:
	1 - Operations Error

So, I modified extended.c to return the OID and thus allow winLDAP and
openVMS clients work for the moment.

Modified Response from slapd:
ldap_write: want=39, written=39
  0000:  30 25 02 01 04 78 20 0a  01 00 04 00 04 00 8a 17   0%...x .........
  0010:  31 2e 33 2e 36 2e 31 2e  34 2e 31 2e 34 32 30 33   1.3.6.1.4.1.4203
  0020:  2e 31 2e 31 31 2e 31                               .1.11.1

this makes all the clients happy.

Question 1:
 I remember you telling me that RFC 3062 was under revision and this
requirement of sending repsonseOID back is under consideration - So does
this mean that the revision would remove this requirement ?

Question 2:
 Can we have a configuration flag that allows us to follow 3062 verbatim ?
maybe when the revision is released/standard we can remove this option.

Thanks,
Siva