1/* $NetBSD$ */ 2 3// OpenLDAP: pkg/ldap/contrib/ldapc++/src/LDAPBindRequest.h,v 1.4.10.2 2008/04/14 23:09:26 quanah Exp 4/* 5 * Copyright 2000, OpenLDAP Foundation, All Rights Reserved. 6 * COPYING RESTRICTIONS APPLY, see COPYRIGHT file 7 */ 8 9#ifndef LDAP_BIND_REQUEST_H 10#define LDAP_BIND_REQUEST_H 11 12#include <LDAPRequest.h> 13#include <LDAPResult.h> 14#include <SaslInteractionHandler.h> 15 16class LDAPBindRequest : LDAPRequest { 17 private: 18 std::string m_dn; 19 std::string m_cred; 20 std::string m_mech; 21 22 public: 23 LDAPBindRequest( const LDAPBindRequest& req); 24 //just for simple authentication 25 LDAPBindRequest(const std::string&, const std::string& passwd, 26 LDAPAsynConnection *connect, const LDAPConstraints *cons, 27 bool isReferral=false); 28 virtual ~LDAPBindRequest(); 29 virtual LDAPMessageQueue *sendRequest(); 30}; 31 32class LDAPSaslBindRequest : LDAPRequest 33{ 34 public: 35 LDAPSaslBindRequest( const std::string& mech, const std::string& cred, 36 LDAPAsynConnection *connect, const LDAPConstraints *cons, 37 bool isReferral=false); 38 virtual LDAPMessageQueue *sendRequest(); 39 virtual ~LDAPSaslBindRequest(); 40 41 private: 42 std::string m_mech; 43 std::string m_cred; 44}; 45 46class LDAPSaslInteractiveBind : LDAPRequest 47{ 48 public: 49 LDAPSaslInteractiveBind( const std::string& mech, int flags, 50 SaslInteractionHandler *sih, LDAPAsynConnection *connect, 51 const LDAPConstraints *cons, bool isReferral=false); 52 virtual LDAPMessageQueue *sendRequest(); 53 virtual LDAPMsg* getNextMessage() const; 54 virtual ~LDAPSaslInteractiveBind(); 55 56 private: 57 std::string m_mech; 58 int m_flags; 59 SaslInteractionHandler *m_sih; 60 LDAPResult *m_res; 61}; 62#endif //LDAP_BIND_REQUEST_H 63 64