%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/net/ |
Current File : //usr/local/share/emacs/27.2/lisp/net/eudcb-ldap.elc |
;ELC ;;; Compiled ;;; in Emacs version 27.2 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\210\303\304!\203 \305\304M\210\202 \306\305\307\"\210\300\207" [require eudc ldap fboundp ldap-get-host-parameter eudc-ldap-get-host-parameter defalias #[(host parameter) "\303\304 \"A\n\"\207" [host ldap-host-parameters-alist parameter plist-get assoc] 4 "Get the value of PARAMETER for HOST in `ldap-host-parameters-alist'."]] 3) #@51 Alist mapping EUDC attribute names to LDAP names. (defvar eudc-ldap-attributes-translation-alist '((name . sn) (firstname . givenname) (email . mail) (phone . telephonenumber)) (#$ . 778)) (byte-code "\300\301\302\303#\210\300\304\305\303#\210\300\306\307\303#\210\300\310\311\303#\210\300\312\313\303#\210\300\314\315\303#\207" [eudc-protocol-set eudc-query-function eudc-ldap-simple-query-internal ldap eudc-list-attributes-function eudc-ldap-get-field-list eudc-protocol-attributes-translation-alist eudc-ldap-attributes-translation-alist eudc-bbdb-conversion-alist eudc-ldap-bbdb-conversion-alist eudc-protocol-has-default-query-attributes nil eudc-attribute-display-method-alist (("jpegphoto" . eudc-display-jpeg-inline) ("labeledurl" . eudc-display-url) ("audio" . eudc-display-sound) ("labeleduri" . eudc-display-url) ("mail" . eudc-display-mail) ("url" . eudc-display-url))] 4) #@59 Do some cleanup in a RECORD to make it suitable for EUDC. (defalias 'eudc-ldap-cleanup-record-simple #[(record) "\301\302\"\207" [record mapcar #[(field) "\301@\227!AA\203 A\202 A@B\207" [field intern] 2]] 3 (#$ . 1670)]) (make-obsolete 'eudc-ldap-cleanup-record-simple 'eudc-ldap-cleanup-record-filtering-addresses "25.1") (defalias 'eudc-filter-$ #[(string) "\301\302\303\304\"\305#\207" [string mapconcat identity split-string "\\$" "\n"] 5]) #@252 Clean up RECORD to make it suitable for EUDC. Make the record a cons-cell instead of a list if it is single-valued. Change the `$' character in postal addresses to a newline. Combine separate mail fields into one mail field with multiple addresses. (defalias 'eudc-ldap-cleanup-record-filtering-addresses #[(record) "\306\300!?\206 ?\307\211\f\307\211\203f @\310 @\227! A\2038 \311>\2038 \312\313\"\314=\203H \315 \"\202\\ A\203U \202X @B\nB*A\211\204 *\314 A\203q \202s @B\nB\211\237+\207" [ldap-ignore-attribute-codings mail-addresses result clean-up-addresses record field boundp nil intern (postaladdress registeredaddress) mapcar eudc-filter-$ mail append --dolist-tail-- value name] 4 (#$ . 2131)]) #@226 Query the LDAP server with QUERY. QUERY is a list of cons cells (ATTR . VALUE) where ATTRs should be valid LDAP attribute names. RETURN-ATTRS is a list of attributes to return, defaulting to `eudc-default-return-attributes'. (defalias 'eudc-ldap-simple-query-internal #[(query &optional return-attrs) "\306\307! \n<\205 \310\311\n\"#\312\310\313\f\" \203* \n\203* \n\314=\204* \315\f\n\"\316=\2046 \317\320\f\"\210*\207" [query eudc-server return-attrs final-result result eudc-strict-return-matches ldap-search eudc-ldap-format-query-as-rfc1558 mapcar symbol-name nil eudc-ldap-cleanup-record-filtering-addresses all eudc-filter-partial-records list mapc #[(record) "\302\303! \"\211\207" [record final-result append eudc-filter-duplicate-attributes] 3] eudc-duplicate-attribute-handling-method] 6 (#$ . 2889)]) #@173 Return a list of valid attribute names for the current server. OBJECTCLASS is the LDAP object class for which the valid attribute names are returned. Default to `person'. (defalias 'eudc-ldap-get-field-list #[(_dummy &optional objectclass) "\204 \303\304!\210\305BC\306\307\310\311\312\n\206 \313BC!\314\315$\")\207" [eudc-server ldap-host-parameters-alist objectclass call-interactively eudc-set-server (scope subtree sizelimit 1) mapcar eudc-ldap-cleanup-record-filtering-addresses ldap-search eudc-ldap-format-query-as-rfc1558 "objectclass" "person" nil t] 7 (#$ . 3720) nil]) #@68 Value is STRING with characters forbidden in LDAP queries escaped. (defalias 'eudc-ldap-escape-query-special-chars #[(string) "\301\211\211\211\302\303#\304\305#\306\307#\310\311!\312#\207" [string eudc-replace-in-string "\\\\" "\\5c" "(" "\\28" ")" "\\29" char-to-string 0 "\\00"] 7 (#$ . 4313)]) #@61 Format the EUDC QUERY list as a RFC1558 LDAP search filter. (defalias 'eudc-ldap-format-query-as-rfc1558 #[(query) "\302\303\304\305\306 !\307#\310 !@\311\"P\")\207" [formatter query #[(item &optional wildcard) "\302\303@\304A! \203 \305\202 \306P#\207" [item wildcard format "(%s=%s)" eudc-ldap-escape-query-special-chars "*" #1=""] 5] format "(&%s)" mapconcat butlast #1# last t] 6 (#$ . 4618)]) #@34 Customize the EUDC LDAP support. (defalias 'eudc-ldap-customize #[nil "\300\301!\207" [customize-group eudc-ldap] 2 (#$ . 5029) nil]) #@64 Check if the current LDAP server has a configured search base. (defalias 'eudc-ldap-check-base #[nil "\303\304\"\206 \206 \305\306!??\205\"