%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/url/ |
Current File : //usr/local/share/emacs/27.2/lisp/url/url-auth.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\305\"\210\303\306\307\"\207" [require url-vars url-parse autoload url-warn "url" auth-source-search "auth-source"] 3) #@59 String to usefully prompt for a username. (fn URL REALM) (defalias 'url-auth-user-prompt #[514 "\300\206 \301\302!\303\304 \305\306#\"\307Q\207" ["Username [for " url-truncate-url-for-viewing url-recreate-url - window-width 10 20 "]: "] 9 (#$ . 573)]) (put 'url-auth-user-prompt 'byte-optimizer 'byte-compile-inline-expand) #@343 Where usernames and passwords are stored. Must be a symbol pointing to another variable that will actually store the information. The value of this variable is an assoc list of assoc lists. The first assoc list is keyed by the server name. The cdr of this is an assoc list based on the "directory" specified by the URL we are looking up. (defvar url-basic-auth-storage 'url-http-real-basic-auth-storage (#$ . 908)) #@423 Get the username/password for the specified URL. If optional argument PROMPT is non-nil, ask for the username/password to use for the url and its descendants. If optional third argument OVERWRITE is non-nil, overwrite the old username/password pair if it is found in the assoc list. If REALM is specified, use that as the realm instead of the filename inheritance method. (fn URL &optional PROMPT OVERWRITE REALM ARGS) (defalias 'url-basic-auth #[1281 ";\203 \303!\202\f \304!>\204 \305\306\307D\"\210\211\310H\304!>\204- \305\306\307D\"\210\311H\304!>\204@ \305\306\307D\"\210\211\312H\206p \304!>\204U \305\306\307D\"\210\211\311H\205p \313\304!>\204k \305\306\307D\"\210\311H\314\"\262\304!>\204\202 \305\306\307D\"\210\315H\304!>\204\225 \305\306\307D\"\210\316H\304!>\204\251 \305\306\307D\"\210\317H\320\321\211\211\322\323\n #\262 \203\304 \202\336 \324\230\203\316 \325\202\336 \326\327\"\203\332 \202\336 \330!\262\331 \nJ\"\243\262\203 \203 \332\322\333#\320\"\262\202 \203k\204k\334 \335#\2064\336\n \337\206(\340\341!\342\343 \344\345#\"\346Q\266\202\2063\347 \"\262\334 \350#\206J\351\352\321\206I\324#\262\n \332\322\333\n\353\354\"#\320\"\211\262BD\nJBL\210\202 \203\331\"\243\262\204\267\326\325\"\203\267\203\267\204\267@@\262\326\325\"\203\253GGY\203\260\211\355\356G#\230\203\260@A\262A\262\202\203\204\300 \204\305\f\203 \334 \335#\206\353\336\n \337\206\344\340\341!\342\343 \344\345#\"\346Q\266\202\347 \"\262\334 \350#\206\372\351\352!\262\332\322\333#\320\"\262\331 \nJ\"\262BAB\241\210\202 \321\262\203)\357P\262)\207" [cl-struct-url-tags enable-recursive-minibuffers url-basic-auth-storage url-generic-parse-url type-of signal wrong-type-argument url 4 1 5 url-scheme-get-property default-port 6 2 3 t nil format "%s:%d" "" "/" string-match "/$" url-file-directory assoc base64-encode-string "%s:%s" url-do-auth-source-search :user read-string "Username [for " url-truncate-url-for-viewing url-recreate-url - window-width 10 20 "]: " user-real-login-name :secret read-passwd "Password: " encode-coding-string utf-8 substring 0 "Basic "] 25 (#$ . 1334)]) #@236 Where usernames and passwords are stored. Its value is an assoc list of assoc lists. The first assoc list is keyed by the server name. The cdr of this is an assoc list based on the "directory" specified by the url we are looking up. (defvar url-digest-auth-storage nil (#$ . 3596)) #@73 Concatenate ARGS as strings with colon as a separator. (fn &rest ARGS) (defalias 'url-digest-auth-colonjoin #[128 "\300\301\302#\207" [mapconcat identity ":"] 5 (#$ . 3886)]) (put 'url-digest-auth-colonjoin 'byte-optimizer 'byte-compile-inline-expand) #@86 Apply digest algorithm to DATA using SECRET and return the result. (fn DATA SECRET) (defalias 'url-digest-auth-kd #[514 "\300D\301\302\303#\262!\207" [md5 mapconcat identity ":"] 8 (#$ . 4146)]) (put 'url-digest-auth-kd 'byte-optimizer 'byte-compile-inline-expand) #@86 Compute checksum out of strings USER, REALM, and PASSWORD. (fn USER REALM PASSWORD) (defalias 'url-digest-auth-make-ha1 #[771 "\300E\301\302\303#\262!\207" [md5 mapconcat identity ":"] 9 (#$ . 4422)]) (put 'url-digest-auth-make-ha1 'byte-optimizer 'byte-compile-inline-expand) #@80 Compute checksum out of strings METHOD and DIGEST-URI. (fn METHOD DIGEST-URI) (defalias 'url-digest-auth-make-ha2 #[514 "\300D\301\302\303#\262!\207" [md5 mapconcat identity ":"] 8 (#$ . 4711)]) (put 'url-digest-auth-make-ha2 'byte-optimizer 'byte-compile-inline-expand) #@167 Construct the request-digest from hash strings HA1, HA2, and NONCE. This is the value that server receives as a proof that user knows a password. (fn HA1 HA2 NONCE) (defalias 'url-digest-auth-make-request-digest #[771 "\211D\300\301\302#\262\303D\300\301\302#\262!\207" [mapconcat identity ":" md5] 11 (#$ . 4994)]) (put 'url-digest-auth-make-request-digest 'byte-optimizer 'byte-compile-inline-expand) #@344 Construct the request-digest with qop. QOP describes the "quality of protection" and algorithm to use. All of the strings QOP, HA1, HA2, NONCE, NC, and CNONCE are combined into a single hash value that proves to a server the user knows a password. It's worth noting that HA2 already depends on value of QOP. (fn QOP HA1 HA2 NONCE NC CNONCE) (defalias 'url-digest-auth-make-request-digest-qop #[1542 "\257\300\301\302#\262\303D\300\301\302#\262!\207" [mapconcat identity ":" md5] 14 (#$ . 5413)]) (put 'url-digest-auth-make-request-digest-qop 'byte-optimizer 'byte-compile-inline-expand) #@222 Make an identifier for selecting a key in key cache. The identifier is made either from URL or REALM. It represents a protection space within a server so that one server can have multiple authorizations. (fn URL REALM) (defalias 'url-digest-auth-directory-id #[514 "\211\206 \301\302!>\204 \303\304\305D\"\210\306H!\206 \307\207" [cl-struct-url-tags url-file-directory type-of signal wrong-type-argument url 6 "/"] 7 (#$ . 6024)]) (put 'url-digest-auth-directory-id 'byte-optimizer 'byte-compile-inline-expand) #@234 Make an identifier for selecting a server in key cache. The identifier is made from URL's host and port. Together with `url-digest-auth-directory-id' these identify a single key in the key cache `url-digest-auth-storage'. (fn URL) (defalias 'url-digest-auth-server-id #[257 "\301\302\303!>\204 \304\305\306D\"\210\307H\303!>\204$ \304\305\306D\"\210\211\310H\206T \303!>\2049 \304\305\306D\"\210\211\311H\205T \312\303!>\204O \304\305\306D\"\210\311H\313\"\262#\207" [cl-struct-url-tags format "%s:%d" type-of signal wrong-type-argument url 4 5 1 url-scheme-get-property default-port] 10 (#$ . 6551)]) (put 'url-digest-auth-server-id 'byte-optimizer 'byte-compile-inline-expand) #@42 Compute a new unique client nonce value. (defalias 'url-digest-auth-make-cnonce #[0 "\300\301\302\303 \304\305\306\"@#\306\"\207" [base64-encode-string format "%016x%016x" random time-convert nil t] 7 (#$ . 7255)]) #@263 The number requests sent to server with the given NONCE. This count includes the request we're preparing here. Currently, this is not implemented and will always return 1. Value returned is in string format with leading zeroes, such as "00000001". (fn NONCE) (defalias 'url-digest-auth-nonce-count #[257 "\300\301\302\"\207" [format "%08x" 1] 4 (#$ . 7477)]) #@135 Concatenate name-value pairs in association list PAIRS. Output is formatted as "name1=\"value1\", name2=\"value2\", ..." (fn PAIRS) (defalias 'url-digest-auth-name-value-string #[257 "\300\301\302#\207" [mapconcat #[257 "\300\301\302@!A#\207" [format "%s=\"%s\"" symbol-name] 5 "\n\n(fn PAIR)"] ", "] 5 (#$ . 7846)]) #@180 Find credentials for URL object from the Emacs auth-source. Return value is a plist that has `:user' and `:secret' properties if credentials were found. Otherwise nil. (fn URL) (defalias 'url-digest-auth-source-creds #[257 "\211\301\302\303!>\204 \304\305\306D\"\210\307H\303!>\204% \304\305\306D\"\210\211\310H\206U \303!>\204: \304\305\306D\"\210\211\311H\205U \312\303!>\204P \304\305\306D\"\210\311H\313\"\262#\262\303!>\204i \304\305\306D\"\210\311H\314\315\314#\316\315\316#F\207" [cl-struct-url-tags format "%s:%d" type-of signal wrong-type-argument url 4 5 1 url-scheme-get-property default-port :user url-do-auth-source-search :secret] 11 (#$ . 8175)]) #@157 Prompt credentials for URL and REALM, defaulting to CREDS. CREDS is a plist that may have properties `:user' and `:secret'. (fn URL REALM &optional CREDS) (defalias 'url-digest-prompt-creds #[770 "\300\301\302\303\206 \304\305!\306\307 \310\311#\"\312Q\266\202\313\301\"\206&