emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Emacs 21.1 ldap.el/openldap incompatibility?


From: Martin Schwenke
Subject: Emacs 21.1 ldap.el/openldap incompatibility?
Date: Tue, 6 Nov 2001 17:34:44 +1100

[I sent this to bug-gnu-emacs, but it got lost/ignored.  RMS suggested
 I send bug fixes to "emacs-hackers", but I'm not on that list and I'm
 not sure how to get on it.  I've tried to become an Emacs pretester
 before, and haven't been able to figure out how to do that either...
 Help?]

When I try to use eudc with openldap (the version packaged for Debian
GNU/Linux), I have 2 problems:

* The default value of ldap-ldapsearch-args includes "-B", which is
  not recognised by openldap's ldapsearch.  I set it like:

    (setq ldap-ldapsearch-args '("-x" "-tt" "-LL"))

  I'm not sure how sensible this is.

* With this setting, the "-tt" causes ldapsearch to save bits of the
  output into files (as ldap-search-internal seems to expect).
  However, ldap-search-internal is unable to properly parse
  ldapsearch's output because it doesn't understand the file:// part
  of the filename (well, it's a URI now).  The following patch fixes
  this in a reasonably safe manner (I don't see how it could break
  backwards compatibility, but I don't have an old version of
  ldapsearch to try it with :-).

--------8<---------8<-------- CUT HERE --------8<---------8<--------
*** ldap.el     2001/10/31 02:06:31     1.1
--- ldap.el     2001/10/31 02:06:57
***************
*** 584,592 ****
                                               (end-of-line)
                                               (point))))
          (forward-line 1)
!         (while (looking-at "^\\(\\w*\\)[=:\t ]+\\(.*\\)$")
            (setq name (match-string 1)
!                 value (match-string 2))
            (save-excursion
              (set-buffer bufval)
              (erase-buffer)
--- 584,592 ----
                                               (end-of-line)
                                               (point))))
          (forward-line 1)
!         (while (looking-at "^\\(\\w*\\)[=:\t ]+\\(<[\t 
]*file://\\)?\\(.*\\)$")
            (setq name (match-string 1)
!                 value (match-string 3))
            (save-excursion
              (set-buffer bufval)
              (erase-buffer)
--------8<---------8<-------- CUT HERE --------8<---------8<--------

peace & happiness,
martin



reply via email to

[Prev in Thread] Current Thread [Next in Thread]