comparison src/eldap.h @ 412:697ef44129c6 r21-2-14

Import from CVS: tag r21-2-14
author cvs
date Mon, 13 Aug 2007 11:20:41 +0200
parents a86b2b5e0111
children e804706bfb8c
comparison
equal deleted inserted replaced
411:12e008d41344 412:697ef44129c6
16 You should have received a copy of the GNU General Public License 16 You should have received a copy of the GNU General Public License
17 along with XEmacs; see the file COPYING. If not, write to 17 along with XEmacs; see the file COPYING. If not, write to
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */ 19 Boston, MA 02111-1307, USA. */
20 20
21 #ifndef INCLUDED_eldap_h_ 21 #ifndef _XEMACS_ELDAP_H_
22 #define INCLUDED_eldap_h_ 22 #define _XEMACS_ELDAP_H_
23 23
24 #include <lber.h> 24 #include <lber.h>
25 #include <ldap.h> 25 #include <ldap.h>
26 26
27 /* 27 /*
35 struct lcrecord_header header; 35 struct lcrecord_header header;
36 /* The LDAP connection handle used by the LDAP API */ 36 /* The LDAP connection handle used by the LDAP API */
37 LDAP *ld; 37 LDAP *ld;
38 /* Name of the host we connected to */ 38 /* Name of the host we connected to */
39 Lisp_Object host; 39 Lisp_Object host;
40 /* Status of the LDAP connection. */
41 int livep;
40 }; 42 };
41 typedef struct Lisp_LDAP Lisp_LDAP;
42 43
43 44
44 DECLARE_LRECORD (ldap, Lisp_LDAP); 45 DECLARE_LRECORD (ldap, struct Lisp_LDAP);
45 #define XLDAP(x) XRECORD (x, ldap, Lisp_LDAP) 46 #define XLDAP(x) XRECORD (x, ldap, struct Lisp_LDAP)
46 #define XSETLDAP(x, p) XSETRECORD (x, p, ldap) 47 #define XSETLDAP(x, p) XSETRECORD (x, p, ldap)
47 #define LDAPP(x) RECORDP (x, ldap) 48 #define LDAPP(x) RECORDP (x, ldap)
49 #define GC_LDAPP(x) GC_RECORDP (x, ldap)
48 #define CHECK_LDAP(x) CHECK_RECORD (x, ldap) 50 #define CHECK_LDAP(x) CHECK_RECORD (x, ldap)
49 #define CONCHECK_LDAP(x) CONCHECK_RECORD (x, ldap) 51 #define CONCHECK_LDAP(x) CONCHECK_RECORD (x, ldap)
50 52
51 #define CHECK_LIVE_LDAP(ldap) do { \ 53 #define CHECK_LIVE_LDAP(ldap) do { \
52 CHECK_LDAP (ldap); \ 54 CHECK_LDAP (ldap); \
53 if (!XLDAP (ldap)->ld) \ 55 if (!XLDAP (ldap)->livep) \
54 signal_simple_error ("Attempting to access closed LDAP connection", \ 56 signal_simple_error ("Attempting to access closed LDAP connection", \
55 ldap); \ 57 ldap); \
56 } while (0) 58 } while (0)
57 59
58 60
60 Lisp_Object Fldap_host (Lisp_Object ldap); 62 Lisp_Object Fldap_host (Lisp_Object ldap);
61 Lisp_Object Fldap_status (Lisp_Object ldap); 63 Lisp_Object Fldap_status (Lisp_Object ldap);
62 Lisp_Object Fldap_open (Lisp_Object host, 64 Lisp_Object Fldap_open (Lisp_Object host,
63 Lisp_Object ldap_plist); 65 Lisp_Object ldap_plist);
64 Lisp_Object Fldap_close (Lisp_Object ldap); 66 Lisp_Object Fldap_close (Lisp_Object ldap);
65 Lisp_Object Fldap_search_basic (Lisp_Object ldap, 67 Lisp_Object Fldap_search_internal (Lisp_Object ldap,
66 Lisp_Object filter, 68 Lisp_Object filter,
67 Lisp_Object base, 69 Lisp_Object base,
68 Lisp_Object scope, 70 Lisp_Object scope,
69 Lisp_Object attrs, 71 Lisp_Object attrs,
70 Lisp_Object attrsonly, 72 Lisp_Object attrsonly,
71 Lisp_Object withdn, 73 Lisp_Object withdn);
72 Lisp_Object verbose);
73 Lisp_Object Fldap_add (Lisp_Object ldap,
74 Lisp_Object dn,
75 Lisp_Object entry);
76 Lisp_Object Fldap_modify (Lisp_Object ldap,
77 Lisp_Object dn,
78 Lisp_Object entry);
79 Lisp_Object Fldap_delete (Lisp_Object ldap,
80 Lisp_Object dn);
81 74
82 #endif /* INCLUDED_eldap_h_ */ 75 #endif /* _XEMACS_ELDAP_H_ */