[OpenSER-Devel] [ openser-Patches-1748544 ] New LDAP module

SourceForge.net noreply at sourceforge.net
Mon Jul 9 15:25:00 CEST 2007


Patches item #1748544, was opened at 2007-07-05 11:26
Message generated for change (Comment added) made by cschlatter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=743022&aid=1748544&group_id=139143

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: modules
Group: ver devel
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Christian Schlatter (cschlatter)
Assigned to: Daniel-Constantin Mierla (miconda)
Summary: New LDAP module

Initial Comment:
This new LDAP module implements an LDAP search interface for OpenSER. It exports script functions to perform an LDAP search operation and to store the search results as OpenSER AVPs. This allows for using LDAP directory data in the OpenSER SIP message routing script.

The following features are offered by the LDAP module:

  * LDAP search function taking an LDAP URL as input
  * LDAP result parsing functions to store LDAP data as AVP
  * Support for accessing multiple LDAP servers
  * LDAP SIMPLE authentication
  * LDAP server failover and automatic reconnect
  * Configurable LDAP connection and bind timeouts
  * Module API for LDAP search operations that can be used by other OpenSER modules

The module implementation makes use of the open source OpenLDAP library available on most UNIX/Linux platforms. Besides LDAP server failover and automatic reconnect, this module can handle multiple LDAP sessions concurrently allowing to access data stored on different LDAP servers. Each OpenSER worker process maintains one LDAP TCP connection per configured LDAP server. This enables parallel execution of LDAP requests and offloads LDAP concurrency control to the LDAP server(s).

An LDAP search module API is provided that can be used by other OpenSER modules. A module using this API does not have to implement LDAP connection management and configuration, while still having access to the full OpenLDAP API for searching and result handling.

Since LDAP server implementations are optimized for fast read access they are a good choice to store SIP provisioning data. Performance tests have shown that this module achieves lower data access times and higher call rates than other database modules like e.g. the OpenSER MYSQL module.

The code was tested with openser svn trunk and 1.2 branch.

----------------------------------------------------------------------

>Comment By: Christian Schlatter (cschlatter)
Date: 2007-07-09 09:25

Message:
Logged In: YES 
user_id=1787345
Originator: YES

> I have few questions:

> 1) is it that the values loaded from LDAP are attempted to be converted
to
> integer, and if success, the AVP is going to have integer value? It is
what
> I got during review, maybe I am wrong.

Yes, that's how it is supposed to work. I'm using str2sint from ut.h to
test if an LDAP value is of type integer or string. Depending on the return
value of str2sint, the AVP will either be of type integer or string.


> 2) I see you import the SL API, but it is not in usage anywhere, any
plans
> with it?

This is a left over from a previous version of the module which I forgot
to delete.

----------------------------------------------------------------------

Comment By: Daniel-Constantin Mierla (miconda)
Date: 2007-07-09 06:23

Message:
Logged In: YES 
user_id=1246013
Originator: NO

I have few questions:

1) is it that the values loaded from LDAP are attempted to be converted to
integer, and if success, the AVP is going to have integer value? It is what
I got during review, maybe I am wrong.

2) I see you import the SL API, but it is not in usage anywhere, any plans
with it?

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=743022&aid=1748544&group_id=139143



More information about the Devel mailing list