From c000cad09d0b54c455c99271bfb996c2dfe13073 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Mon, 6 May 2024 03:23:53 +0200 Subject: Adding upstream version 2.4.47+dfsg. Signed-off-by: Daniel Baumann --- contrib/ldapc++/src/LDAPMessage.cpp | 72 +++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 contrib/ldapc++/src/LDAPMessage.cpp (limited to 'contrib/ldapc++/src/LDAPMessage.cpp') diff --git a/contrib/ldapc++/src/LDAPMessage.cpp b/contrib/ldapc++/src/LDAPMessage.cpp new file mode 100644 index 0000000..d1a1730 --- /dev/null +++ b/contrib/ldapc++/src/LDAPMessage.cpp @@ -0,0 +1,72 @@ +// $OpenLDAP$ +/* + * Copyright 2000-2018 The OpenLDAP Foundation, All Rights Reserved. + * COPYING RESTRICTIONS APPLY, see COPYRIGHT file + */ + + +#include "LDAPMessage.h" + +#include "LDAPResult.h" +#include "LDAPExtResult.h" +#include "LDAPSaslBindResult.h" +#include "LDAPRequest.h" +#include "LDAPSearchResult.h" +#include "LDAPSearchReference.h" +#include "debug.h" +#include + +using namespace std; + +LDAPMsg::LDAPMsg(LDAPMessage *msg){ + DEBUG(LDAP_DEBUG_CONSTRUCT,"LDAPMsg::LDAPMsg()" << endl); + msgType=ldap_msgtype(msg); + m_hasControls=false; +} + +LDAPMsg::LDAPMsg(int type, int id=0){ + DEBUG(LDAP_DEBUG_CONSTRUCT,"LDAPMsg::LDAPMsg()" << endl); + msgType = type; + msgID = id; + m_hasControls=false; +} + +LDAPMsg* LDAPMsg::create(const LDAPRequest *req, LDAPMessage *msg){ + DEBUG(LDAP_DEBUG_TRACE,"LDAPMsg::create()" << endl); + switch(ldap_msgtype(msg)){ + case SEARCH_ENTRY : + return new LDAPSearchResult(req,msg); + break; + case SEARCH_REFERENCE : + return new LDAPSearchReference(req, msg); + break; + case EXTENDED_RESPONSE : + return new LDAPExtResult(req,msg); + break; + case BIND_RESPONSE : + return new LDAPSaslBindResult(req,msg); + default : + return new LDAPResult(req, msg); + } + return 0; +} + + +int LDAPMsg::getMessageType(){ + DEBUG(LDAP_DEBUG_TRACE,"LDAPMsg::getMessageType()" << endl); + return msgType; +} + +int LDAPMsg::getMsgID(){ + DEBUG(LDAP_DEBUG_TRACE,"LDAPMsg::getMsgID()" << endl); + return msgID; +} + +bool LDAPMsg::hasControls() const{ + return m_hasControls; +} + +const LDAPControlSet& LDAPMsg::getSrvControls() const { + return m_srvControls; +} + -- cgit v1.2.3