We have a windows app that uses an LDAP server for authentication.

For our clients that don't already have an LDAP server we provide FDS.  However many of our clients already have an LDAP server (AD, Novell, IBM, Oracle).

How interchangeable are LDAP servers?  Are we likely to be able to just talk to any server, or will we need custom code for each?

In addition to authentication we plan to create and assign roles, and possibly use a small custom schema.

Any information or pointers to information on this would be appreciated.  I couldn't find anything via Google.