ldapsdk  0.0.1
Public Member Functions | Static Public Attributes | Friends
LDAPResult Class Reference

This class is for representing LDAP-Result-Messages. More...

#include <LDAPResult.h>

Inheritance diagram for LDAPResult:
LDAPMsg LDAPExtResult LDAPSaslBindResult

List of all members.

Public Member Functions

 LDAPResult (const LDAPRequest *req, LDAPMessage *msg)
 This constructor is called by the LDAPMsg::create method in order to parse a LDAPResult-Message.
 LDAPResult (int type, int resultCode, const std::string &msg)
virtual ~LDAPResult ()
 The destructor.
int getResultCode () const
std::string resToString () const
 This method transforms the result code to a human-readable result message.
const std::string & getErrMsg () const
 In some case of error the server may return addional error messages.
const std::string & getMatchedDN () const
 For messages with a result code of: NO_SUCH_OBJECT, ALIAS_PROBLEM, ALIAS_DEREFERENCING_PROBLEM or INVALID_DN_SYNTAX the server returns the DN of deepest entry in the DIT that could be found for this operation.
const LDAPUrlList & getReferralUrls () const
- Public Member Functions inherited from LDAPMsg
virtual ~LDAPMsg ()
 The destructor has no implemenation, because this is an abstract class.
int getMessageType ()
int getMsgID ()
bool hasControls () const
const LDAPControlSet & getSrvControls () const

Static Public Attributes

static const int SUCCESS = 0
static const int OPERATIONS_ERROR = 1
static const int PROTOCOL_ERROR = 2
static const int TIME_LIMIT_EXCEEDED = 3
static const int SIZE_LIMIT_EXCEEDED = 4
static const int COMPARE_FALSE = 5
static const int COMPARE_TRUE = 6
static const int AUTH_METHOD_NOT_SUPPORTED = 7
static const int STRONG_AUTH_REQUIRED = 8
static const int REFERRAL = 10
static const int ADMIN_LIMIT_EXCEEDED = 11
static const int UNAVAILABLE_CRITICAL_EXTENSION = 12
static const int CONFIDENTIALITY_REQUIRED = 13
static const int SASL_BIND_IN_PROGRESS = 14
static const int NO_SUCH_ATTRIBUTE = 16
static const int UNDEFINED_ATTRIBUTE_TYP = 17
static const int INAPPROPRIATE_MATCHING = 18
static const int CONSTRAINT_VIOLATION = 19
static const int ATTRIBUTE_OR_VALUE_EXISTS = 20
static const int INVALID_ATTRIBUTE_SYNTAX = 21
static const int NO_SUCH_OBJECT = 32
static const int ALIAS_PROBLEM = 33
static const int INVALID_DN_SYNTAX = 34
static const int ALIAS_DEREFERENCING_PROBLEM = 36
static const int INAPPROPRIATE_AUTENTICATION = 48
static const int INVALID_CREDENTIALS = 49
static const int INSUFFICIENT_ACCESS = 50
static const int BUSY = 51
static const int UNAVAILABLE = 52
static const int UNWILLING_TO_PERFORM = 53
static const int LOOP_DETECT = 54
static const int NAMING_VIOLATION = 64
static const int OBJECT_CLASS_VIOLATION = 65
static const int NOT_ALLOWED_ON_NONLEAF = 66
static const int NOT_ALLOWED_ON_RDN = 67
static const int ENTRY_ALREADY_EXISTS = 68
static const int OBJECT_CLASS_MODS_PROHIBITED = 69
static const int AFFECTS_MULTIPLE_DSAS = 71
static const int OTHER = 80
static const int SERVER_DOWN = 81
static const int LOCAL_ERROR = 82
static const int ENCODING_ERROR = 83
static const int DECODING_ERROR = 84
static const int TIMEOUT = 85
static const int AUTH_UNKNOWN = 86
static const int FILTER_ERROR = 87
static const int USER_CANCELLED = 88
static const int PARAM_ERROR = 89
static const int NO_MEMORY = 90
static const int CONNECT_ERROR = 91
static const int NOT_SUPPORTED = 92
static const int CONTROL_NOT_FOUND = 93
static const int NO_RESULTS_RETURNED = 94
static const int MORE_RESULTS_TO_RETURN = 95
static const int CLIENT_LOOP = 96
static const int REFERRAL_LIMIT_EXCEEDED = 97
- Static Public Attributes inherited from LDAPMsg
static const int BIND_RESPONSE = LDAP_RES_BIND
static const int SEARCH_ENTRY = LDAP_RES_SEARCH_ENTRY
static const int SEARCH_DONE = LDAP_RES_SEARCH_RESULT
static const int SEARCH_REFERENCE = LDAP_RES_SEARCH_REFERENCE
static const int MODIFY_RESPONSE = LDAP_RES_MODIFY
static const int ADD_RESPONSE = LDAP_RES_ADD
static const int DEL_RESPONSE = LDAP_RES_DELETE
static const int MODDN_RESPONSE = LDAP_RES_MODDN
static const int COMPARE_RESPONSE = LDAP_RES_COMPARE
static const int EXTENDED_RESPONSE = LDAP_RES_EXTENDED
static const int BIND_REQUEST = LDAP_REQ_BIND
static const int UNBIND_REQUEST = LDAP_REQ_UNBIND
static const int SEARCH_REQUEST = LDAP_REQ_SEARCH
static const int MODIFY_REQUEST = LDAP_REQ_MODIFY
static const int ADD_REQUEST = LDAP_REQ_ADD
static const int DELETE_REQUEST = LDAP_REQ_DELETE
static const int MODRDN_REQUEST = LDAP_REQ_MODRDN
static const int COMPARE_REQUEST = LDAP_REQ_COMPARE
static const int ABANDON_REQUEST = LDAP_REQ_ABANDON
static const int EXTENDED_REQUEST = LDAP_REQ_EXTENDED

Friends

std::ostream & operator<< (std::ostream &s, LDAPResult &l)
 This method can be used to dump the data of a LDAPResult-Object.

Additional Inherited Members

- Static Public Member Functions inherited from LDAPMsg
static LDAPMsg * create (const LDAPRequest *req, LDAPMessage *msg)
 This method is used by the library to parse the results returned by the C-API.
- Protected Member Functions inherited from LDAPMsg
 LDAPMsg (LDAPMessage *msg)
 This constructor make a copy of a LDAPMsg-pointer.
 LDAPMsg (int msgType, int msgID)
- Protected Attributes inherited from LDAPMsg
LDAPControlSet m_srvControls
 This attribute stores Server-Control that were returned with the message.
bool m_hasControls

Detailed Description

This class is for representing LDAP-Result-Messages.

It represents all Messages that were returned from LDAP-Operations except for Messages of the Type LDAPMsg::SEARCH_ENTRY, LDAPMsg::SEARCH_REFERENCE and LDAPMsg::EXTENDED_RESPONSE.
It defines a integer constant for every possible result type that can be returned by the server.


Constructor & Destructor Documentation

LDAPResult::LDAPResult ( const LDAPRequest *  req,
LDAPMessage *  msg 
)

This constructor is called by the LDAPMsg::create method in order to parse a LDAPResult-Message.

Parameters:
reqThe request the result is associated with.
msgThe LDAPMessage-structure that contains the Message.

References DEBUG, LDAPRequest::getConnection(), LDAPAsynConnection::getSessionHandle(), LDAP_DEBUG_CONSTRUCT, LDAPMsg::m_hasControls, and LDAPMsg::m_srvControls.

LDAPResult::LDAPResult ( int  type,
int  resultCode,
const std::string &  msg 
)
LDAPResult::~LDAPResult ( )
virtual

The destructor.

References DEBUG, and LDAP_DEBUG_DESTROY.


Member Function Documentation

const string & LDAPResult::getErrMsg ( ) const

In some case of error the server may return addional error messages.

Returns:
The additional error message returned by the server.

References DEBUG, and LDAP_DEBUG_TRACE.

Referenced by LDAPConnection::add(), LDAPConnection::bind(), LDAPConnection::compare(), LDAPConnection::del(), LDAPConnection::extOperation(), LDAPConnection::modify(), LDAPConnection::rename(), LDAPConnection::saslInteractiveBind(), and LDAPConnection::search().

const string & LDAPResult::getMatchedDN ( ) const

For messages with a result code of: NO_SUCH_OBJECT, ALIAS_PROBLEM, ALIAS_DEREFERENCING_PROBLEM or INVALID_DN_SYNTAX the server returns the DN of deepest entry in the DIT that could be found for this operation.

Returns:
The Matched-DN value that was returned by the server.

References DEBUG, and LDAP_DEBUG_TRACE.

const LDAPUrlList & LDAPResult::getReferralUrls ( ) const
Returns:
If the result code is REFERRAL this methode returns the URLs of the referral that was sent by the server.

References DEBUG, and LDAP_DEBUG_TRACE.

Referenced by LDAPConnection::add(), LDAPConnection::bind(), LDAPConnection::compare(), LDAPConnection::del(), LDAPConnection::extOperation(), LDAPConnection::modify(), LDAPConnection::rename(), LDAPConnection::saslInteractiveBind(), and LDAPConnection::search().

int LDAPResult::getResultCode ( ) const
string LDAPResult::resToString ( ) const

This method transforms the result code to a human-readable result message.

Returns:
A std::string containing the result message.

References DEBUG, and LDAP_DEBUG_TRACE.


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  s,
LDAPResult &  l 
)
friend

This method can be used to dump the data of a LDAPResult-Object.

It is only useful for debugging purposes at the moment


Member Data Documentation

const int LDAPResult::ADMIN_LIMIT_EXCEEDED = 11
static
const int LDAPResult::AFFECTS_MULTIPLE_DSAS = 71
static
const int LDAPResult::ALIAS_DEREFERENCING_PROBLEM = 36
static
const int LDAPResult::ALIAS_PROBLEM = 33
static
const int LDAPResult::ATTRIBUTE_OR_VALUE_EXISTS = 20
static
const int LDAPResult::AUTH_METHOD_NOT_SUPPORTED = 7
static
const int LDAPResult::AUTH_UNKNOWN = 86
static
const int LDAPResult::BUSY = 51
static
const int LDAPResult::CLIENT_LOOP = 96
static
const int LDAPResult::COMPARE_FALSE = 5
static

Referenced by LDAPConnection::compare().

const int LDAPResult::COMPARE_TRUE = 6
static

Referenced by LDAPConnection::compare().

const int LDAPResult::CONFIDENTIALITY_REQUIRED = 13
static
const int LDAPResult::CONNECT_ERROR = 91
static
const int LDAPResult::CONSTRAINT_VIOLATION = 19
static
const int LDAPResult::CONTROL_NOT_FOUND = 93
static
const int LDAPResult::DECODING_ERROR = 84
static
const int LDAPResult::ENCODING_ERROR = 83
static
const int LDAPResult::ENTRY_ALREADY_EXISTS = 68
static
const int LDAPResult::FILTER_ERROR = 87
static
const int LDAPResult::INAPPROPRIATE_AUTENTICATION = 48
static
const int LDAPResult::INAPPROPRIATE_MATCHING = 18
static
const int LDAPResult::INSUFFICIENT_ACCESS = 50
static
const int LDAPResult::INVALID_ATTRIBUTE_SYNTAX = 21
static
const int LDAPResult::INVALID_CREDENTIALS = 49
static
const int LDAPResult::INVALID_DN_SYNTAX = 34
static
const int LDAPResult::LOCAL_ERROR = 82
static
const int LDAPResult::LOOP_DETECT = 54
static
const int LDAPResult::MORE_RESULTS_TO_RETURN = 95
static
const int LDAPResult::NAMING_VIOLATION = 64
static
const int LDAPResult::NO_MEMORY = 90
static
const int LDAPResult::NO_RESULTS_RETURNED = 94
static
const int LDAPResult::NO_SUCH_ATTRIBUTE = 16
static
const int LDAPResult::NO_SUCH_OBJECT = 32
static
const int LDAPResult::NOT_ALLOWED_ON_NONLEAF = 66
static
const int LDAPResult::NOT_ALLOWED_ON_RDN = 67
static
const int LDAPResult::NOT_SUPPORTED = 92
static
const int LDAPResult::OBJECT_CLASS_MODS_PROHIBITED = 69
static
const int LDAPResult::OBJECT_CLASS_VIOLATION = 65
static
const int LDAPResult::OPERATIONS_ERROR = 1
static
const int LDAPResult::OTHER = 80
static
const int LDAPResult::PARAM_ERROR = 89
static
const int LDAPResult::PROTOCOL_ERROR = 2
static
const int LDAPResult::REFERRAL = 10
static
const int LDAPResult::REFERRAL_LIMIT_EXCEEDED = 97
static
const int LDAPResult::SASL_BIND_IN_PROGRESS = 14
static
const int LDAPResult::SERVER_DOWN = 81
static
const int LDAPResult::SIZE_LIMIT_EXCEEDED = 4
static
const int LDAPResult::STRONG_AUTH_REQUIRED = 8
static
const int LDAPResult::SUCCESS = 0
static
const int LDAPResult::TIME_LIMIT_EXCEEDED = 3
static
const int LDAPResult::TIMEOUT = 85
static
const int LDAPResult::UNAVAILABLE = 52
static
const int LDAPResult::UNAVAILABLE_CRITICAL_EXTENSION = 12
static
const int LDAPResult::UNDEFINED_ATTRIBUTE_TYP = 17
static
const int LDAPResult::UNWILLING_TO_PERFORM = 53
static
const int LDAPResult::USER_CANCELLED = 88
static

The documentation for this class was generated from the following files: