2 * Copyright 2000, OpenLDAP Foundation, All Rights Reserved.
3 * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
10 #include "LDAPModifyRequest.h"
11 #include "LDAPException.h"
12 #include "LDAPMessageQueue.h"
14 LDAPModifyRequest::LDAPModifyRequest(const LDAPModifyRequest& req) :
16 DEBUG(LDAP_DEBUG_TRACE,
17 "LDAPModifyRequest::LDAPModifyRequest(LDAPModifyRequest&)"
21 LDAPModifyRequest::LDAPModifyRequest(const char *dn,
22 const LDAPModList *modList, const LDAPAsynConnection *connect,
23 const LDAPConstraints *cons, bool isReferral=false) :
24 LDAPRequest(connect, cons, isReferral){
25 DEBUG(LDAP_DEBUG_TRACE,
26 "LDAPModifyRequest::LDAPModifyRequest(LDAPModifyRequest&)"
28 DEBUG(LDAP_DEBUG_PARAMETER, " dn:" << dn << endl);
31 m_modList = new LDAPModList(*modList);
34 LDAPModifyRequest::~LDAPModifyRequest(){
35 DEBUG(LDAP_DEBUG_TRACE, "LDAPModifyRequest::~LDAPModifyRequest()" << endl);
40 LDAPMessageQueue* LDAPModifyRequest::sendRequest(){
41 DEBUG(LDAP_DEBUG_TRACE, "LDAPModifyRequest::sendRequest()" << endl);
43 int err=ldap_modify_ext(m_connection->getSessionHandle(),m_dn,
44 m_modList->toLDAPModArray(), m_cons->getSrvCtrlsArray(),
45 m_cons->getClCtrlsArray(),&msgID);
46 if(err != LDAP_SUCCESS){
48 throw LDAPException(err);
51 return new LDAPMessageQueue(this);
55 LDAPRequest* LDAPModifyRequest::followReferral(LDAPUrlList *refs){
56 DEBUG(LDAP_DEBUG_TRACE, "LDAPModifyRequest::followReferral()" << endl);
57 cerr << "to be implemented ..." << endl;