PTLib Version 2.12.9

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Macros
pldap.h File Reference
`#include <ptlib/sockets.h>`
`#include <ptlib/pluginmgr.h>`
`#include <map>`
`#include <list>`
Include dependency graph for pldap.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
class | PLDAPSession
| This class will create an LDAP client to access a remote LDAP server. More...
class | PLDAPSession::ModAttrib
class | PLDAPSession::StringModAttrib
class | PLDAPSession::BinaryModAttrib
class | PLDAPSession::SearchContext
class | PLDAPAttributeBase
class | PLDAPStructBase
class | PLDAPSchema
class | PLDAPSchema::Attribute
class | LDAPPluginServiceDescriptor< className >

## Macros
#define | LDAP_Schema(name)
#define | PLDAP_STRUCT_BEGIN(name)
#define | PLDAP_ATTRIBUTE(base, type, attribute, pointer, init)
#define | PLDAP_ATTR_SIMP(base, type, attribute) PLDAP_ATTRIBUTE(base, type, attribute, NULL, ;)
#define | PLDAP_ATTR_INIT(base, type, attribute, init) PLDAP_ATTRIBUTE(base, type, attribute, NULL, instance = init;)
#define | PLDAP_BINATTRIB(base, type, attribute) PLDAP_ATTRIBUTE(base, type, attribute, &((base &)base::GetInitialiser()).attribute, ;)
#define | PLDAP_STRUCT_END() };

## Macro Definition Documentation

#define LDAP_Schema | ( |  | name | ) |

Value:
static LDAPPluginServiceDescriptor<name##_schema> name##_schema_descriptor; \
PCREATE_PLUGIN(name##_schema, PLDAPSchema, &name##_schema_descriptor)

#define PLDAP_ATTR_INIT | ( |  | base,
|  |  | type,
|  |  | attribute,
|  |  | init
| ) |  | PLDAP_ATTRIBUTE(base, type, attribute, NULL, instance = init;)

#define PLDAP_ATTR_SIMP | ( |  | base,
|  |  | type,
|  |  | attribute
| ) |  | PLDAP_ATTRIBUTE(base, type, attribute, NULL, ;)

#define PLDAP_ATTRIBUTE | ( |  | base,
|  |  | type,
|  |  | attribute,
|  |  | pointer,
|  |  | init
| ) |  |

Value:
public: type attribute; \
private: struct PLDAPAttr_##attribute : public PLDAPAttributeBase { \
PLDAPAttr_##attribute() \
: PLDAPAttributeBase(#attribute, pointer, sizeof(type)), \
instance(((base &)base::GetInitialiser()).attribute) \
{ init } \
virtual void PrintOn (ostream & s) const { s << instance; } \
virtual void ReadFrom(istream & s) { s >> instance; } \
virtual void Copy(const PLDAPAttributeBase & other) \
{ instance = ((PLDAPAttr_##attribute &)other).instance; } \
type & instance; \
} pldapvar_##attribute

#define PLDAP_BINATTRIB | ( |  | base,
|  |  | type,
|  |  | attribute
| ) |  | PLDAP_ATTRIBUTE(base, type, attribute, &((base &)base::GetInitialiser()).attribute, ;)

#define PLDAP_STRUCT_BEGIN | ( |  | name | ) |

Value:
class name : public PLDAPStructBase { \
public: name() : PLDAPStructBase() { EndConstructor(); } \
public: name(const name & other) : PLDAPStructBase() { EndConstructor(); operator=(other); } \
public: name(const PStringArray & array) : PLDAPStructBase() { EndConstructor(); operator=(array); } \
public: name(const PStringToString & dict) : PLDAPStructBase() { EndConstructor(); operator=(dict); } \
public: name & operator=(const name & other) { PLDAPStructBase::operator=(other); return *this; } \
public: name & operator=(const PStringArray & array) { PLDAPStructBase::operator=(array); return *this; } \
public: name & operator=(const PStringToString & dict) { PLDAPStructBase::operator=(dict); return *this; } \
PLDAP_ATTR_INIT(name, PString, objectClass, #name);

#define PLDAP_STRUCT_END | ( |  | ) | };