Mercurial > hg > xemacs-beta
view modules/ldap/eldap.h @ 4903:70089046adef
fix compile problems in intl-encap* under VS6
-------------------- ChangeLog entries follow: --------------------
lib-src/ChangeLog addition:
2010-01-30 Ben Wing <ben@xemacs.org>
* make-mswin-unicode.pl:
Make it possible to specify an overridden prototype in cases where
either Cygwin or Visual Studio has errors in their headers that
can be corrected by falling back to a less qualified type (typically
without const).
src/ChangeLog addition:
2010-01-30 Ben Wing <ben@xemacs.org>
* intl-auto-encap-win32.c:
* intl-auto-encap-win32.c (qxeExtractAssociatedIcon):
* intl-auto-encap-win32.c (qxeExtractIconEx):
* intl-auto-encap-win32.c (qxeCreateMDIWindow):
* intl-auto-encap-win32.c (qxeCreateWindowStation):
* intl-auto-encap-win32.c (qxeDdeCreateStringHandle):
* intl-auto-encap-win32.c (qxeAbortSystemShutdown):
* intl-auto-encap-win32.c (qxeRegConnectRegistry):
* intl-auto-encap-win32.c (qxeGetICMProfile):
* intl-auto-encap-win32.h:
Rebuild.
* intl-encap-win32.c:
* intl-encap-win32.c (qxeUpdateICMRegKey):
Delete manual definitions of functions with former errors in
Cygwin headers but no longer. Use "override" with some functions
where Cygwin or VS6 accidentally omits a const declaration or
includes an extra one. Use "no" on SendMessageTimeout, which
has an error in the VS6 prototype (you could manually fix this
with an ifdef to split the Cygwin vs. VS6 calls, if we ever
actually used this function).
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Sat, 30 Jan 2010 20:34:23 -0600 |
parents | c56a675b3b05 |
children | e0db3c197671 |
line wrap: on
line source
/* Definitions for the LDAP client interface for XEmacs. Copyright (C) 1998 Free Software Foundation, Inc. This file is part of XEmacs. XEmacs is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. XEmacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with XEmacs; see the file COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef INCLUDED_eldap_h_ #define INCLUDED_eldap_h_ #include <lber.h> /* #### NEEDS REWRITE! Thanks to Mats Lidell <matsl@xemacs.org> for the report & patch: <871wgnqunm.fsf@spencer.lidell.homelinux.net> "See http://www.openldap.org/faq/data/cache/1278.html. Temporary workaround would be use the deprecated interface. Long term solution is a rewrite." */ #define LDAP_DEPRECATED 1 #include <ldap.h> /* * The following structure records pertinent information about a * LDAP connection. */ struct Lisp_LDAP { struct LCRECORD_HEADER header; /* The LDAP connection handle used by the LDAP API */ LDAP *ld; /* Name of the host we connected to */ Lisp_Object host; }; typedef struct Lisp_LDAP Lisp_LDAP; DECLARE_LRECORD (ldap, Lisp_LDAP); #define XLDAP(x) XRECORD (x, ldap, Lisp_LDAP) #define wrap_ldap(p) wrap_record (p, ldap) #define LDAPP(x) RECORDP (x, ldap) #define CHECK_LDAP(x) CHECK_RECORD (x, ldap) #define CONCHECK_LDAP(x) CONCHECK_RECORD (x, ldap) #define CHECK_LIVE_LDAP(ldap) do { \ CHECK_LDAP (ldap); \ if (!XLDAP (ldap)->ld) \ invalid_operation ("Attempting to access closed LDAP connection", \ ldap); \ } while (0) Lisp_Object Fldapp (Lisp_Object object); Lisp_Object Fldap_host (Lisp_Object ldap); Lisp_Object Fldap_live_p (Lisp_Object ldap); Lisp_Object Fldap_open (Lisp_Object host, Lisp_Object ldap_plist); Lisp_Object Fldap_close (Lisp_Object ldap); Lisp_Object Fldap_search_basic (Lisp_Object ldap, Lisp_Object filter, Lisp_Object base, Lisp_Object scope, Lisp_Object attrs, Lisp_Object attrsonly, Lisp_Object withdn, Lisp_Object verbose); Lisp_Object Fldap_add (Lisp_Object ldap, Lisp_Object dn, Lisp_Object entry); Lisp_Object Fldap_modify (Lisp_Object ldap, Lisp_Object dn, Lisp_Object entry); Lisp_Object Fldap_delete (Lisp_Object ldap, Lisp_Object dn); #endif /* INCLUDED_eldap_h_ */