;ELC   
;;; Compiled by aatharuv@cutter-john.mit.edu on Sun Jan  5 18:16:23 2003
;;; from file /afs/sipb.mit.edu/contrib/emacs/packages/w3-4.0pre.47/lisp/url-cookie.el
;;; in Emacs version 21.1.1
;;; with bytecomp version 2.85
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`url-cookie.el' was compiled for Emacs 19.29 or later"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\301\302!\210\301\303!\210\304\305@!\204 @@L\210A\211\204\n )\301\207" [keywords require timezone cl (:name :value :expires :path :domain :test :secure) boundp] 3)
(defalias 'url-cookie-name #[(cookie) "\301H\207" [cookie 1] 2])
(put 'url-cookie-name 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-value #[(cookie) "\301H\207" [cookie 2] 2])
(put 'url-cookie-value 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-expires #[(cookie) "\301H\207" [cookie 3] 2])
(put 'url-cookie-expires 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-path #[(cookie) "\301H\207" [cookie 4] 2])
(put 'url-cookie-path 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-domain #[(cookie) "\301H\207" [cookie 5] 2])
(put 'url-cookie-domain 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-secure #[(cookie) "\301H\207" [cookie 6] 2])
(put 'url-cookie-secure 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-set-name #[(cookie val) "\302	I\207" [cookie val 1] 3])
(put 'url-cookie-set-name 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-set-value #[(cookie val) "\302	I\207" [cookie val 2] 3])
(put 'url-cookie-set-value 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-set-expires #[(cookie val) "\302	I\207" [cookie val 3] 3])
(put 'url-cookie-set-expires 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-set-path #[(cookie val) "\302	I\207" [cookie val 4] 3])
(put 'url-cookie-set-path 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-set-domain #[(cookie val) "\302	I\207" [cookie val 5] 3])
(put 'url-cookie-set-domain 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-set-secure #[(cookie val) "\302	I\207" [cookie val 6] 3])
(put 'url-cookie-set-secure 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-retrieve-arg #[(key args) "	>A@\207" [key args] 2])
(put 'url-cookie-retrieve-arg 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-create #[(&rest args) "\305\306\307\"\211\310\304I\210\311	\211	>A@*\211\312I\210*\313	\211	>A@*\211\314I\210*\315	\211	>A@*\211\316I\210*\317	\211	>A@*\211\320I\210*\321	\211	>A@*\211\322I\210*\323	\211	>A@*\211\324I\210*)\207" [retval args key val cookie make-vector 7 nil 0 :name 1 :value 2 :expires 3 :path 4 :domain 5 :secure 6] 4])
(put 'url-cookie-create 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'url-cookie-p #[(obj) "\301!\205 G\302U\205 \303H\304=\207" [obj vectorp 7 0 cookie] 2])
(defalias 'url-cookie-parse-file #[(&optional fname) "\206 	\302\303\304\217\207" [fname url-cookie-file nil (load fname nil t) ((error (message "Could not load cookie file %s" fname)))] 3])
(defalias 'url-cookie-clean-up #[(&optional secure) "\203 \306\202	 \307\211J\310\310\310\310\f\310\n\203h \n@\nA\310A\203W @\fA\311\f!\203) \312\f!\204) \f\211\313H)\203) \fB\202) \203 \241\210\fB\202 	\fL.\207" [secure var val cur new cookies url-cookie-secure-storage url-cookie-storage nil url-cookie-p url-cookie-expired-p 3 cur-cookie new-cookies cookie] 3])
(defalias 'url-cookie-write-file #[(&optional fname) "\206 	\n\204\f \305\207\306!\204 \307\310\"\207\311 \210\311\312!\210\212\313\314!q\210\315 \210\316 \210\317\320\321\261\210\322p\"\210\323c\210\322\fp\"\210\324c\210\325!\210\326p!)\207" [fname url-cookie-file url-cookies-changed-since-last-save url-cookie-storage url-cookie-secure-storage nil file-writable-p message "Cookies file %s (see variable `url-cookie-file') is unwritable." url-cookie-clean-up t get-buffer-create " *cookies*" erase-buffer fundamental-mode ";; Emacs-W3 HTTP cookies file\n" ";; Automatically generated file!!! DO NOT EDIT!!!\n\n" "(setq url-cookie-storage\n '" pp ")\n(setq url-cookie-secure-storage\n '" ")\n" write-file kill-buffer] 3])
#@32 Stores a netscape-style cookie
(defalias 'url-cookie-store #[(name value &optional expires domain path secure) "\203 	\202	 \n\211\306\306\307\"\211\203;A\306\203g @A\211\310H)\232\203\" \211\311H)\232\203\" \211\312I\210*\211\313I\210*\314\202\" \f?\205&\315\316\317\320\321\322\257\f \323\324\306\"\211!\325\326I\210!\315  \211\" >A@*\211\311I\210*!\316  \211\" >A@*\211\313I\210*!\317  \211\" >A@*\211\312I\210*!\321  \211\" >A@*\211\310I\210*!\320  \211\" >A@*\211\327I\210*!\322  \211\" >A@*\211\330I\210*!*AB\241\202&\315\316\317\320\321\322\257\f \323\324\306\"\211!\325\326I\210!\315  \211\" >A@*\211\311I\210*!\316  \211\" >A@*\211\313I\210*!\317  \211\" >A@*\211\312I\210*!\321  \211\" >A@*\211\310I\210*!\320  \211\" >A@*\211\327I\210*!\322  \211\" >A@*\211\330I\210*!*\203\fDAB\241\202&\203\fDC\211\202&\fDC\211,\207" [secure url-cookie-secure-storage url-cookie-storage storage tmp cur nil assoc 4 1 3 2 t :name :value :expires :domain :path :secure make-vector 7 0 cookie 5 6 found-domain domain path name expires val value args retval key] 14 (#$ . 4616)])
(defalias 'url-cookie-expired-p #[(cookie) "\211\306H)\211\205 \307\310 !	\205 \307	!\n\205- \311\312\n\313H!\312\n\314H!\312\n\315H!#	\205C \311\312\313H!\312\314H!\312\315H!#	\205K \fZ	\204U \316\202\271 \315W\203` \316\202\271 \315V\203k \317\202\271 \320\n\306H!\320\306H!\312\314H!\321_\312\313H!\322_\\\312\315H!\315\\\\\312\314H!\321_\312\313H!\322_\\\312\315H!\315\\\\Z\313V,.\207" [cookie exp cur-date exp-date cur-greg exp-greg 3 timezone-parse-date current-time-string timezone-absolute-from-gregorian string-to-int 1 2 0 nil t timezone-parse-time 360 60 diff-in-days cur-time exp-time cur-norm exp-norm] 7])
#@72 Retrieves all the netscape-style cookies for a specified HOST and PATH
(defalias 'url-cookie-retrieve #[(host path &optional secure) "\203 \306	\n\"\202\f \n\307\310\211\211\211\203n @AA@\203 \311\312\313@!\314Q\"\203 \203 @A\315\313\211\316H)!P\311\"\203? \317!\204? \fB\202? \f.\207" [secure url-cookie-secure-storage url-cookie-storage path-regexp retval cur append t nil string-match "^.*" regexp-quote "$" "^" 4 url-cookie-expired-p cookies case-fold-search storage host cookie path] 7 (#$ . 6595)])
(defalias 'url-cookie-generate-header-lines #[(host path secure) "\306	\n#\307\307\307\205 \310\311\"\203\\ @A\312\313\211\314H)\211\315H)#\316\fGG\\\317\\W\203H \f\320Q\202X \f\203T \f\321Q\202X \322P\202 \f\203f \f\323P\202g \324,\207" [host path secure cookies retval cur url-cookie-retrieve nil sort #[(x y) "\211\303H)G\n\211\303H)GV\207" [x cookie y 4] 4] format "%s=%s" 1 2 80 4 "\nCookie: " "; " "Cookie: " "\n" "" chunk cookie] 6])
#@124 A regular expression of top-level domains that only require two matching
'.'s in the domain name in order to set a cookie.
(defvar url-cookie-two-dot-domains (byte-code "\300\301\302\303\304\305\306\307\310\311\257\312#\313Q\207" ["\\.\\(" mapconcat identity "com" "edu" "net" "org" "gov" "mil" "int" "\\|" "\\)$"] 10) (#$ . 7636))
#@77 *A list of regular expressions matching URLs to always accept cookies from.
(custom-declare-variable 'url-cookie-trusted-urls 'nil '(#$ . -7975) :type '(repeat regexp) :group 'url-cookie)
#@76 *A list of regular expressions matching URLs to never accept cookies from.
(custom-declare-variable 'url-cookie-untrusted-urls 'nil '(#$ . -8169) :type '(repeat regexp) :group 'url-cookie)
(defalias 'url-cookie-host-can-set-p #[(host domain) "\306\307\310\311\312\313#\211\203 TT\202\n \312\"\203' \314\230\2032 \310\202E 	Y\203D \312\315!\316P\"\202E \307-\207" [domain mindots case-fold-search last tmp numdots 0 nil t 3 string-match "\\." 2 regexp-quote "$" url-cookie-two-dot-domains host] 5])
(defalias 'url-header-comparison #[(x y) "\227	\227\230\207" [x y] 2])
(defalias 'url-cookie-handle-set-cookie #[(str) "\306\307	\310\306#\306\311\312\n\313\314$\205 \306\311\315\n\313\314$\243\206\" \316H*\317\306!+,-./\311\320\n\313\314$\2430\311\321\n\313\314$\243\206I \322\323H!1\3102\n\203i \n@@\227\324\235\204b \n@2B2\nA\211\204R 0\203\230 \325\3260\"\203\230 \3270\330\"\331\3270\332\"\331\3270\316\"\331\3270\333\"\334\3270\323\"\335\260\n00\203\306 \325\3360\"\203\306 \3270\330\"\337\3270\332\"\337\3270\316\"\331\3270\333\"\340\3270\341\"\260	0-:\203\353 \325-@+\"\203\341 \342\225\342\224Z\211-\202\310 -\211A-\210\202\306 /:\203\325/@+\"\203\342\225\342\224Z\211/\202\355 /\211A/\210\202\353 -\203+/\203+-/V\203(\310/\202+\310-/\2034\310\202\2323\343=\204H3<\203L\3443>\203L\310\202\2324\203_-\204_\345\213\203_\310\202\232\346\316H*\"\203\222\31052\205\2162\211A2@5\3475@5A0*1\f&\210\202l)\202\232\350\351\316H*#.\n\207" [url-cookies-changed-since-last-save str args case-fold-search secure url-current-object t mm-parse-args nil assoc* "secure" :test url-header-comparison "domain" 3 url-view-url "expires" "path" file-name-directory 5 ("secure" "domain" "expires" "path") string-match "^[^,]+, +\\(..\\)-\\(...\\)-\\(..\\) +\\(..:..:..\\) +\\[*\\([^]]+\\)\\]*$" url-match 1 " " 2 4 " [" "]" "\\([0-9]+\\)-\\([A-Za-z]+\\)-\\([0-9]+\\)[ 	]+\\([0-9]+:[0-9]+:[0-9]+\\)\\(\\.[0-9]+\\)*[ 	]+\\([-+a-zA-Z0-9]+\\)" "-" ".00 " 6 0 paranoid cookies ((byte-code "\303\220\304\305\"\221\210	\306\307\n\310H\"!?\311\303!\203 \312\303!\210\207" [rest url-confirmation-func url-current-object "*Cookie Warning*" mapcar #[(x) "\301\302\303@A#!\207" [x princ format "%s - %s"] 5] format "Allow %s to set these cookies? " 3 get-buffer kill-buffer] 5)) url-cookie-host-can-set-p url-cookie-store message "%s tried to set a cookie for domain %s - rejected." domain current-url url-cookie-trusted-urls trusted url-cookie-untrusted-urls untrusted expires path rest url-privacy-level url-cookie-confirmation cur] 12])
(provide 'url-cookie)
