(RADIATOR) OpenLDAP 2 says "unknown LDAP request"

Hugh Irvine hugh at open.com.au
Mon May 21 20:00:11 CDT 2001


Hello Eric -

This is the error I see in the LDAP log:

> ldap_read: want=1 error=Resource temporarily unavailable
> ber_get_next on fd 15 failed errno=11 (Resource temporarily unavailable)
> unknown LDAP request 0x40
> send_ldap_disconnect 2:unknown LDAP request

I would suggest checking the perl-ldap docs and the OpenLDAP docs for any 
known issues, and perhaps trying an earlier version of perl-ldap. I don't 
think there is any use in trying to make Radiator work if perl-ldap itself is 
not working.

Have you also made sure that you can issue the same query directly to the 
LDAP server?

hth

Hugh


> Ok, here's my setup:
>
> Sparc / Solaris8
> Perl 5.6.0
> OpenLDAP 2.0.12
> perl-ldap 0.23
>
> For some reason... when I try to make Radiator query the LDAP directory
> for usernames, OpenLDAP responds with "Unknown LDAP request".  Has anyone
> had a similar problem?  One thing that i have noticed is that some of the
> "make test" tests for perl-ldap-0.23 failed.  Specifically, the filter
> test failed.  Has anyone tried get perl-ldap-0.23 going on Solaris?
>
> I have successfully gotten this working in the past on Solaris7 and a
> much older version of perl-ldap.
>
> Anyway, here is my AuthBY clause for LDAP
>
>     <AuthBy LDAP2>
>                 Host auth1.viawest.net
>                 AuthDN  cn=server,dc=ldapusers,dc=viawest,dc=net
>                 AuthPassword XXXXXXXX
>                 BaseDN ou=Customers,dc=viawest,dc=net
>                 Scope sub
>                 UsernameAttr uid
>                 PasswordAttr userPassword
>                 Debug 255
>     </AuthBy>
>
> And here is the debug output i have.
>
> Here is a connection attempt from Radiator:
>
> ------[ slapd debug output ]--------------
> daemon: activity on 1 descriptors
> daemon: new connection on 15
> daemon: conn=5 fd=15 connection from IP=216.87.64.20:35593 (IP=0.0.0.0:389)
> accepted.
> daemon: added 15r
> daemon: activity on:
> daemon: select: listen=7 active_threads=0 tvp=NULL
> daemon: activity on 1 descriptors
> daemon: activity on: 15r
> daemon: read activity on 15
> connection_get(15)
> connection_get(15): got connid=5
> connection_read(15): checking for input on id=5
> ber_get_next
> ldap_read: want=1, got=1
>   0000:  30                                                 0
> ldap_read: want=1, got=1
>   0000:  3d                                                 =
> ldap_read: want=61, got=61
>   0000:  02 01 01 40 38 02 01 02  04 28 63 6e 3d 73 65 72  
> ... at 8....(cn=ser 0010:  76 65 72 2c 64 63 3d 6c  64 61 70 75 73 65 72 73  
> ver,dc=ldapusers 0020:  2c 64 63 3d 76 69 61 77  65 73 74 2c 64 63 3d 6e  
> ,dc=viawest,dc=n 0030:  65 74 80 09 XX XX XX XX  XX XX XX XX XX           
> et..XXXXXXXXX ber_get_next: tag 0x30 len 61 contents:
> ber_dump: buf=0x0022e000 ptr=0x0022e000 end=0x0022e03d len=61
>   0000:  02 01 01 40 38 02 01 02  04 28 63 6e 3d 73 65 72  
> ... at 8....(cn=ser 0010:  76 65 72 2c 64 63 3d 6c  64 61 70 75 73 65 72 73  
> ver,dc=ldapusers 0020:  2c 64 63 3d 76 69 61 77  65 73 74 2c 64 63 3d 6e  
> ,dc=viawest,dc=n 0030:  65 74 80 09 72 6f 74 6f  21 63 6c 69 70           
> et..XXXXXXXXX ber_get_next
> ldap_read: want=1 error=Resource temporarily unavailable
> ber_get_next on fd 15 failed errno=11 (Resource temporarily unavailable)
> unknown LDAP request 0x40
> send_ldap_disconnect 2:unknown LDAP request
> send_ldap_response: msgid=0 tag=120 err=2
> ber_flush: 58 bytes to sd 15
>   0000:  30 38 02 01 00 78 33 0a  01 02 04 00 04 14 75 6e  
> 08...x3.......un 0010:  6b 6e 6f 77 6e 20 4c 44  41 50 20 72 65 71 75 65  
> known LDAP reque 0020:  73 74 8a 16 31 2e 33 2e  36 2e 31 2e 34 2e 31 2e  
> st..1.3.6.1.4.1. 0030:  31 34 36 36 2e 32 30 30  33 36                    
> 1466.20036 ldap_write: want=58, written=58
>   0000:  30 38 02 01 00 78 33 0a  01 02 04 00 04 14 75 6e  
> 08...x3.......un 0010:  6b 6e 6f 77 6e 20 4c 44  41 50 20 72 65 71 75 65  
> known LDAP reque 0020:  73 74 8a 16 31 2e 33 2e  36 2e 31 2e 34 2e 31 2e  
> st..1.3.6.1.4.1. 0030:  31 34 36 36 2e 32 30 30  33 36                    
> 1466.20036 conn=5 op=0 DISCONNECT err=120 tag=2 text=unknown LDAP request
> daemon: select: listen=7 active_threads=1 tvp=NULL
> --------------------
>
> It doesn't really look like it's able to bind to the server properly.
>
> I turned on a level 4 trace on radiator, and put "debug 255" in the AuthBy
> LDAP2 clause.  It provided this information
>
> --------[ radiator debug output ]-------------
>
> Mon May 21 16:33:08 2001: INFO: Server started: Radiator 2.18 on
> book.viawest.net
> Mon May 21 16:33:13 2001: DEBUG: Packet dump:
> *** Received from 127.0.0.1 port 41436 ....
> Code:       Access-Request
> Identifier: 133
> Authentic:  1234567890123456
> Attributes:
>         User-Name = "edk"
>         Service-Type = Framed-User
>         NAS-IP-Address = 203.63.154.1
>         NAS-Port = 1234
>         Called-Station-Id = "123456789"
>         Calling-Station-Id = "987654321"
>         NAS-Port-Type = Async
>         Password = "<15>!<30><250>8<195><28><246>O<156><203>d<I3g"
>
> Mon May 21 16:33:13 2001: DEBUG: Handling request with Handler
> 'Realm=test.viawest.net'
> Mon May 21 16:33:13 2001: DEBUG: Rewrote user name to edk
> Mon May 21 16:33:13 2001: DEBUG:  Deleting session for edk, 203.63.154.1,
> 1234 Mon May 21 16:33:13 2001: DEBUG: do query is: delete from radonline
> where username='edk' and nasidentifier='203.63.154.1' and nasport=1234
>
> Mon May 21 16:33:13 2001: DEBUG: Handling with Radius::AuthSQL
> Mon May 21 16:33:13 2001: DEBUG: Handling with Radius::AuthLDAP2
> Mon May 21 16:33:13 2001: DEBUG: Connecting to auth1.viawest.net, port 389
> Net::LDAP=HASH(0x98cb88) sending:
>
> 30 3D 02 01 01 40 38 02 01 02 04 28 63 6E 3D 73 0=... at 8....(cn=s
> 65 72 76 65 72 2C 64 63 3D 6C 64 61 70 75 73 65 erver,dc=ldapuse
> 72 73 2C 64 63 3D 76 69 61 77 65 73 74 2C 64 63 rs,dc=viawest,dc
> 3D 6E 65 74 80 09 XX XX XX XX XX XX XX XX XX __ =net..XXXXXXXXX
>
> 0000 30   61: SEQUENCE {
> 0002 02    1:   INTEGER = 1
> 0005 40   56:   [APPLICATION 0]
> 0007        :     02 01 02 04 28 63 6E 3D 73 65 72 76 65 72 2C 64
> .....(cn=server,d
> 0017        :     63 3D 6C 64 61 70 75 73 65 72 73 2C 64 63 3D 76
> c=ldapusers,dc=v
> 0027        :     69 61 77 65 73 74 2C 64 63 3D 6E 65 74 80 09 XX
> iawest,dc=net..X
> 0037        :     XX XX XX XX XX XX XX XX __ __ __ __ __ __ __ __ XXXXXXXX
> 003F        : }
> Net::LDAP=HASH(0x98cb88) received:
>
> 30 38 02 01 00 78 33 0A 01 02 04 00 04 14 75 6E 08...x3.......un
> 6B 6E 6F 77 6E 20 4C 44 41 50 20 72 65 71 75 65 known LDAP reque
> 73 74 8A 16 31 2E 33 2E 36 2E 31 2E 34 2E 31 2E st..1.3.6.1.4.1.
> 31 34 36 36 2E 32 30 30 33 36 __ __ __ __ __ __ 1466.20036
>
> 0000 30   56: SEQUENCE {
> 0002 02    1:   INTEGER = 0
> 0005 78   51:   [APPLICATION 24] {
> 0007 0A    1:     ENUM = 2
> 000A 04    0:     STRING = ''
> 000C 04   20:     STRING = 'unknown LDAP request'
> 0022 8A   22:     [CONTEXT 10]
> 0024        :       31 2E 33 2E 36 2E 31 2E 34 2E 31 2E 31 34 36 36
> 1.3.6.1.4.1.1466
> 0034        :       2E 32 30 30 33 36 __ __ __ __ __ __ __ __ __ __ .20036
> 003A        :   }
> 003A        : }
> Unexpected PDU, ignored
> ----------------
>
> Has anyone had a similar problem?
>
>
>
>
> ---End of forwarded mail from owner-radiator at open.com.au

-- 
Radiator: the most portable, flexible and configurable RADIUS server 
anywhere. Available on *NIX, *BSD, Windows 95/98/2000, NT, MacOS X.
-
Nets: internetwork inventory and management - graphical, extensible,
flexible with hardware, software, platform and database independence.
===
Archive at http://www.open.com.au/archives/radiator/
Announcements on radiator-announce at open.com.au
To unsubscribe, email 'majordomo at open.com.au' with
'unsubscribe radiator' in the body of the message.


More information about the radiator mailing list