;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (require 'tramp) #@66 When this method name is used, call sudoedit for editing a file. (defconst tramp-sudoedit-method "sudoedit" (#$ . 104)) (add-hook 'tramp--startup-hook #[0 "\302\303\304B\"\210\302\305\306\"\210\307 \"\207" [tramp-sudoedit-method tramp-completion-function-alist-su add-to-list tramp-methods ((tramp-sudo-login (("sudo") ("-u" "%u") ("-S") ("-H") ("-p" "Password:") ("--")))) tramp-default-user-alist ("\\`sudoedit\\'" nil "root") tramp-set-completion-function] 4]) #@114 List of pattern/action pairs. This list is used for sudo calls. See `tramp-actions-before-shell' for more info. (defconst tramp-sudoedit-sudo-actions '((tramp-password-prompt-regexp tramp-action-password) (tramp-wrong-passwd-regexp tramp-action-permission-denied) (tramp-process-alive-regexp tramp-sudoedit-action-sudo)) (#$ . 577)) #@55 Alist of handler functions for Tramp SUDOEDIT method. (defconst tramp-sudoedit-file-name-handler-alist '((access-file . tramp-handle-access-file) (add-name-to-file . tramp-sudoedit-handle-add-name-to-file) (byte-compiler-base-file-name . ignore) (copy-directory . tramp-handle-copy-directory) (copy-file . tramp-sudoedit-handle-copy-file) (delete-directory . tramp-sudoedit-handle-delete-directory) (delete-file . tramp-sudoedit-handle-delete-file) (diff-latest-backup-file . ignore) (directory-files . tramp-handle-directory-files) (directory-files-and-attributes . tramp-handle-directory-files-and-attributes) (dired-compress-file . ignore) (dired-uncache . tramp-handle-dired-uncache) (exec-path . ignore) (expand-file-name . tramp-sudoedit-handle-expand-file-name) (file-accessible-directory-p . tramp-handle-file-accessible-directory-p) (file-acl . tramp-sudoedit-handle-file-acl) (file-attributes . tramp-sudoedit-handle-file-attributes) (file-directory-p . tramp-handle-file-directory-p) (file-equal-p . tramp-handle-file-equal-p) (file-executable-p . tramp-sudoedit-handle-file-executable-p) (file-exists-p . tramp-sudoedit-handle-file-exists-p) (file-in-directory-p . tramp-handle-file-in-directory-p) (file-local-copy . tramp-handle-file-local-copy) (file-modes . tramp-handle-file-modes) (file-name-all-completions . tramp-sudoedit-handle-file-name-all-completions) (file-name-as-directory . tramp-handle-file-name-as-directory) (file-name-case-insensitive-p . tramp-handle-file-name-case-insensitive-p) (file-name-completion . tramp-handle-file-name-completion) (file-name-directory . tramp-handle-file-name-directory) (file-name-nondirectory . tramp-handle-file-name-nondirectory) (file-newer-than-file-p . tramp-handle-file-newer-than-file-p) (file-notify-add-watch . ignore) (file-notify-rm-watch . ignore) (file-notify-valid-p . ignore) (file-ownership-preserved-p . ignore) (file-readable-p . tramp-sudoedit-handle-file-readable-p) (file-regular-p . tramp-handle-file-regular-p) (file-remote-p . tramp-handle-file-remote-p) (file-selinux-context . tramp-sudoedit-handle-file-selinux-context) (file-symlink-p . tramp-handle-file-symlink-p) (file-system-info . tramp-sudoedit-handle-file-system-info) (file-truename . tramp-sudoedit-handle-file-truename) (file-writable-p . tramp-sudoedit-handle-file-writable-p) (find-backup-file-name . tramp-handle-find-backup-file-name) (insert-directory . tramp-handle-insert-directory) (insert-file-contents . tramp-handle-insert-file-contents) (load . tramp-handle-load) (make-auto-save-file-name . tramp-handle-make-auto-save-file-name) (make-directory . tramp-sudoedit-handle-make-directory) (make-directory-internal . ignore) (make-nearby-temp-file . tramp-handle-make-nearby-temp-file) (make-process . ignore) (make-symbolic-link . tramp-sudoedit-handle-make-symbolic-link) (process-file . ignore) (rename-file . tramp-sudoedit-handle-rename-file) (set-file-acl . tramp-sudoedit-handle-set-file-acl) (set-file-modes . tramp-sudoedit-handle-set-file-modes) (set-file-selinux-context . tramp-sudoedit-handle-set-file-selinux-context) (set-file-times . tramp-sudoedit-handle-set-file-times) (set-visited-file-modtime . tramp-handle-set-visited-file-modtime) (shell-command . ignore) (start-file-process . ignore) (substitute-in-file-name . tramp-handle-substitute-in-file-name) (temporary-file-directory . tramp-handle-temporary-file-directory) (tramp-get-remote-gid . tramp-sudoedit-handle-get-remote-gid) (tramp-get-remote-uid . tramp-sudoedit-handle-get-remote-uid) (tramp-set-file-uid-gid . tramp-sudoedit-handle-set-file-uid-gid) (unhandled-file-name-directory . ignore) (vc-registered . ignore) (verify-visited-file-modtime . tramp-handle-verify-visited-file-modtime) (write-region . tramp-sudoedit-handle-write-region)) (#$ . 917)) #@55 Check if it's a FILENAME for SUDOEDIT. (fn FILENAME) (defalias 'tramp-sudoedit-file-name-p #[257 "\302!\205\303!\211\242>\204\304\305\306D\"\210\211A@\262 \230\207" [cl-struct-tramp-file-name-tags tramp-sudoedit-method tramp-tramp-file-p tramp-dissect-file-name signal wrong-type-argument tramp-file-name] 6 (#$ . 4718)]) (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put tramp-sudoedit-file-name-p speed -1 put byte-optimizer byte-compile-inline-expand] 5) #@175 Invoke the SUDOEDIT handler for OPERATION and ARGS. First arg specifies the OPERATION, second arg is a list of arguments to pass to the OPERATION. (fn OPERATION &rest ARGS) (defalias 'tramp-sudoedit-file-name-handler #[385 "\301\"\211\203\302 \303\304\"\216\305A\")\207\306\"\207" [tramp-sudoedit-file-name-handler-alist assoc match-data make-closure #[0 "\301\300\302\"\207" [V0 set-match-data evaporate] 3] apply tramp-run-real-handler] 7 (#$ . 5209)]) (add-hook 'tramp--startup-hook #[0 "\300\301\302\"\207" [tramp-register-foreign-file-name-handler tramp-sudoedit-file-name-p tramp-sudoedit-file-name-handler] 3]) #@96 Like `add-name-to-file' for Tramp files. (fn FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS) (defalias 'tramp-sudoedit-handle-add-name-to-file #[770 "\302\"\204\233\303\304!\203\202!\211\242>\204\"\305\306\307D\"\210\211A@\242>\2043\305\306\307D\"\210\3108\242>\204D\305\306\307D\"\210\3118\242>\204V\305\306\307D\"\210\3128\242>\204h\305\306\307D\"\210\3138\242>\204z\305\306\307D\"\210\3148\242>\204\216\305\306\307 D\"\210\3158\316\317\320\321$\266 \303!\211\242>\204\254\305\306\307D\"\210\211A@\242>\204\275\305\306\307D\"\210\3108\242>\204\316\305\306\307D\"\210\3118\242>\204\340\305\306\307D\"\210\3128\242>\204\362\305\306\307D\"\210\3138\242>\204\305\306\307D\"\210\3148\242>\204\305\306\307 D\"\210\3158\303\n!\211\242>\204.\305\306\307D\"\210\211A@\242>\204?\305\306\307D\"\210\3108\242>\204P\305\306\307D\"\210\3118\242>\204b\305\306\307D\"\210\3128\242>\204t\305\306\307D\"\210\3138\242>\204\206\305\306\307D\"\210\3148\242>\204\232\305\306\307 D\"\210\3158\322!\203\311\203\271\247\203\304\323\324\325\"!\204\304\316\326#\210\202\311\327!\210\330\"\210\331\332\f\333\211?\205\334 \334!\211\211?\205\350 \335\336\334!\")\266\202\203\211G\310U\203\337\202\211\310\333O\262\340!P)\266\203\333\211?\205 \334!\211\211?\205\" \335\336\334!\")\266\202\203@\211G\310U\203:\337\202>\211\310\333O\262\340!P)\266\203$?\205U\316\317\341\342 $\207" [cl-struct-tramp-file-name-tags file-name-handler-alist tramp-equal-remote tramp-dissect-file-name tramp-tramp-file-p signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 tramp-error file-error "add-name-to-file: %s" "only implemented for same method, same user, same host" file-exists-p yes-or-no-p format "File %s already exists; make it a link anyway? " file-already-exists delete-file tramp-flush-file-properties tramp-sudoedit-send-command "ln" nil file-local-name string-prefix-p "/:" "/" file-remote-p "error with add-name-to-file, see buffer `%s' for details" buffer-name] 32 (#$ . 5843)]) #@873 Copy or rename a remote file. OP must be `copy' or `rename' and indicates the operation to perform. FILENAME specifies the file to copy or rename, NEWNAME is the name of the new file (for copy) or the new name of the file (for rename). OK-IF-ALREADY-EXISTS means don't barf if NEWNAME exists already. KEEP-DATE means to make sure that NEWNAME has the same timestamp as FILENAME. PRESERVE-UID-GID, when non-nil, instructs to keep the uid and gid if both files are on the same host. PRESERVE-EXTENDED-ATTRIBUTES activates selinux and acl commands. This function is invoked by `tramp-sudoedit-handle-copy-file' and `tramp-sudoedit-handle-rename-file'. It is an error if OP is neither of `copy' and `rename'. FILENAME and NEWNAME must be absolute file names. (fn OP FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS KEEP-DATE PRESERVE-UID-GID PRESERVE-EXTENDED-ATTRIBUTES) (defalias 'tramp-sudoedit-do-copy-or-rename-file #[1795 "C\306>\204\307\310 \"\210\211\311\242!\240\210\312\242!\2034\313\242\314$\210\315=\205\316\242\317\"\207\211\242\320!\205T\321!\211\242>\204M\322\323\324D\"\210\211A@\262 \230\262\320!\205v\321!\211\242>\204o\322\323\324D\"\210\211A@\262 \230\262\325\242!\3268\262\327\242!\205\220\330\331\242C\"\f\332=\203\240\203\240\333\202\274\f\334\267\202\257\335\202\274\336\202\274\f\332=\205\274\205\274\333 \332=\203\307\337\202\310\340\321\203\324\242\202\326 !\211\242>\204\345\322\323\324D\"\210\211A@\242>\204\366\322\323\324D\"\210\3418\242>\204\322\323\324D\"\210\3428\242>\204\322\323\324D\"\210\3438\242>\204+\322\323\324D\"\210\3268\242>\204=\322\323\324D\"\210\3448\242>\204Q\322\323\324 D\"\210\3458\346\242!\204z\242\347\350N\203r\351\n#\266\202z\351\n\352$\266\204\216\346!\203\216\351\353#\210\312!\203\245\354!\204\245\351\355\356$\210\357\242!\203\262\203\276\357!\203\373 \204\373\242\360\361\362 \363\364\365N@\314\"\"\366\314\"#\266\202\332=\203\347\367\242\314#\210\202\357\370\242\314#\210\370#\266\202}\f\204 \203'\371 \372\242!\372!$\204}\351\355\373\f\242&\210\202}\374\375\376\377 \242$C\201B1\376@X\205\370\342X\203\200A\204\200\330\201C\374U\203^\201D\202{\201EU\203l\201D\202{\341U\203x\201F\202{\201GP#\210@\343Y\205\370\374@\201EU\203\316\201H1\315r\201I!\203\251\201J!\202\261\201K\201L\"q\210\201MP\262\201N\201O C\"\211\262)0\210\202\316\210\201I!\203\340\201P\201Q\"\262)\242>\205\370\330\201R\376\201S\"P$0\266\202\266\201TCA?\205#\374@\342^X\205#\201U\376\377\f\242$\360\211#\211\2053\201V\342\201W\201X$\262\201Y\201Z&\216A\206P\211A\371\n \372\242!\372!$\204s\351\n\355\373\242&\210)\201[\240\210)\266\357!\204\237\201\\\357\242!P\201]\201^!\201_\201^!#\210\203\316\201`1\311\201a?\205\272\201b#\210\201c \"0\210\202\316\210\202\316\210\n\203\355\201d1\350\330\201e D\"0\210\202\355\210\202\355\210\203\205\315=\203\205\321\242!\211\242>\204\f\322\323\324D\"\210\211A@\242>\204\322\323\324D\"\210\3418\242>\204.\322\323\324D\"\210\3428\242>\204@\322\323\324D\"\210\3438\242>\204R\322\323\324D\"\210\3268\242>\204d\322\323\324D\"\210\3448\242>\204x\322\323\324 D\"\210\3458\201f\"\266  \205\321!\211\242>\204\234\322\323\324D\"\210\211A@\242>\204\255\322\323\324D\"\210\3418\242>\204\276\322\323\324D\"\210\3428\242>\204\320\322\323\324D\"\210\3438\242>\204\342\322\323\324D\"\210\3268\242>\204\364\322\323\324D\"\210\3448\242>\204\322\323\324 D\"\210\3458\201f\"\266\210\266\217\207" [cl-struct-tramp-file-name-tags tramp-sudoedit-method tramp-file-missing tramp-temp-name-prefix noninteractive inhibit-message (copy rename) error "Unknown operation `%s', must be `copy' or `rename'" file-truename file-directory-p copy-directory t rename delete-directory recursive tramp-tramp-file-p tramp-dissect-file-name signal wrong-type-argument tramp-file-name file-attributes 5 tramp-default-file-modes apply file-extended-attributes copy ("cp" "-f" "-p") #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (copy 167 rename 171)) ("cp" "-f") ("mv" "-f") "Copying" "Renaming" 2 3 4 6 7 file-exists-p file-missing error-conditions tramp-error "No such file or directory: %s" file-already-exists directory-name-p file-error "File is a directory %s" file-remote-p nil make-temp-file expand-file-name eval temporary-file-directory standard-value file-name-extension copy-file rename-file tramp-sudoedit-send-command tramp-unquote-file-local-name "Error %s `%s' `%s'" 0 "%s..." format #1="%s %s to %s" tramp-verbose tramp-inhibit-progress-reporter #2=(error) message #3="" 1 #4="Warning: " #5="Tramp: " #6=(error) processp process-buffer tramp-get-connection-buffer dont-create #7="\n%s" append buffer-string process-get vector tramp-debug-message #8="(%d) # " "failed" make-progress-reporter run-at-time 0.1 tramp-progress-reporter-update make-closure #[0 "\305\203\306\305!\210\303\307\310\311\312\302\300\242\301$\304\242D\3131\260\"X\205\256\314X\203Q#\204Q\315\316\307U\2037\317\202L\320U\203A\317\202L\321U\203K\322\202L\323P#\210\"\324Y\205\256\307\"\320U\203\215\3251\214r\326!\203r\327!\202v\330\331\"q\210\332P\262\333\334 C\"\211\262)0\210\202\215\210\326!\203\231\335\336\"\262)\242$>\205\256\315\337\311\340\"P$0\207\266\341\207" [V0 V1 V2 V3 V4 V5 cancel-timer 0 "%s...%s" format #1# #2# 3 apply message #3# 1 2 #4# #5# 4 #6# processp process-buffer tramp-get-connection-buffer dont-create #7# append buffer-string process-get vector tramp-debug-message #8# nil tramp-verbose tramp-inhibit-progress-reporter cl-struct-tramp-file-name-tags] 10] "done" tramp-set-file-uid-gid tramp-get-local-uid integer tramp-get-local-gid (error) tramp-compat-set-file-times nofollow set-file-modes (error) set-file-extended-attributes tramp-flush-file-properties] 34 (#$ . 7994)]) #@145 Like `copy-file' for Tramp files. (fn FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS KEEP-DATE PRESERVE-UID-GID PRESERVE-EXTENDED-ATTRIBUTES) (defalias 'tramp-sudoedit-handle-copy-file #[1538 "\300!\262\300!\262\301!\204\301!\203)\302\303&\207\304\305\257\"\207" [expand-file-name tramp-tramp-file-p tramp-sudoedit-do-copy-or-rename-file copy tramp-run-real-handler copy-file] 14 (#$ . 14184)]) #@84 Like `delete-directory' for Tramp files. (fn DIRECTORY &optional RECURSIVE TRASH) (defalias 'tramp-sudoedit-handle-delete-directory #[769 "\303\304!!\211\242>\204\305\306\307D\"\210\211A@\242>\204$\305\306\307D\"\210\3108\242>\2045\305\306\307D\"\210\3118\242>\204G\305\306\307D\"\210\3128\242>\204Y\305\306\307D\"\210\3138\242>\204k\305\306\307D\"\210\3148\242>\204\305\306\307 D\"\210\3158 \203\252\203\252 \204\242\316 !\204\242\317\320\321#\210\202\376\322 !\210\202\376\323 \203\266\324\202\267\325\326\211?\205\277\n\327!\211\211?\205\313\n\330\331\327!\")\266\202\203\351\211G\310U\203\343\332\202\347\211\310\326O\262\333!P)\266\203#\204\376\317\320\334$\210\335\"\207" [cl-struct-tramp-file-name-tags delete-by-moving-to-trash file-name-handler-alist tramp-dissect-file-name expand-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 tramp-compat-directory-empty-p tramp-error file-error "Directory is not empty, not moving to trash" move-file-to-trash tramp-sudoedit-send-command ("rm" "-rf") "rmdir" nil file-local-name string-prefix-p "/:" "/" file-remote-p "Couldn't delete %s" tramp-flush-directory-properties] 23 (#$ . 14624)]) #@68 Like `delete-file' for Tramp files. (fn FILENAME &optional TRASH) (defalias 'tramp-sudoedit-handle-delete-file #[513 "\304!\211\242>\204\305\306\307D\"\210\211A@\242>\204\"\305\306\307D\"\210\3108\242>\2043\305\306\307D\"\210\3118\242>\204E\305\306\307D\"\210\3128\242>\204W\305\306\307D\"\210\3138\242>\204i\305\306\307D\"\210\3148\242>\204}\305\306\307 D\"\210\3158\316\"\210 \203\225\203\225\317\n!\207\320\321\322\211?\205\241\n\323!\211\211?\205\255\n\324\325\323!\")\266\202\203\313\211G\310U\203\305\326\202\311\211\310\322O\262\327!P)\266\203#?\205Er\330!q\210eb\210\322\331\332 C\333 \334\335\"\216\336!\203\374\206\337!\203\340!\206\242>\205\330!\242>\203\206)\211\205)r\211q\210\304 !)\334\341%\216\342\343%)\266\202)\266\206)\207" [cl-struct-tramp-file-name-tags delete-by-moving-to-trash file-name-handler-alist default-directory tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 tramp-flush-file-properties move-file-to-trash tramp-sudoedit-send-command "rm" nil file-local-name string-prefix-p "/:" "/" file-remote-p tramp-get-connection-buffer file-error "Couldn't delete %s" current-window-configuration make-closure #[0 "\301\300!\207" [V0 set-window-configuration] 2] bufferp processp process-buffer #[0 "\302\203+\f\306U\204+ \204+\307 \203+\310\311\312\313\300\301#\210\314\302!\210\315 \210\316\317!\210*\320\303@\"\2059\321 \241\207" [V0 V1 V2 V3 tramp-verbose non-essential 0 current-message t nil apply message pop-to-buffer discard-input sit-for 30 tramp-file-name-equal-p current-time inhibit-message enable-recursive-minibuffers tramp-current-connection] 4] apply tramp-error] 24 (#$ . 15869)]) #@186 Like `expand-file-name' for Tramp files. If the localname part of the given file name starts with "/../" then the result will be a local, non-Tramp, file name. (fn NAME &optional DIR) (defalias 'tramp-sudoedit-handle-expand-file-name #[513 "\211\206 \206 \303\262G\304U\203\305\262\306!\204\"\307!P\262\310!\211\242 >\2043\311\312\313D\"\210\211A@\242 >\204D\311\312\313D\"\210\3148\242 >\204U\311\312\313D\"\210\3158\242 >\204g\311\312\313D\"\210\3168\242 >\204y\311\312\313D\"\210\3178\242 >\204\213\311\312\313D\"\210\3208\242 >\204\237\311\312\313 D\"\210\3218G\304U\203\255\322\262\306!\204\273\323\324#\262\325\326\"\203\335\327\330\"\327\314\"\322\230\203\326P\262P\262\266\331\332\333\325#)\266\203\203\360\303\262\334\335!\"\207" [default-directory cl-struct-tramp-file-name-tags inhibit-changing-match-data "/" 0 "." file-name-absolute-p file-name-as-directory tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 "~" format "~%s/%s" string-match "\\`\\(~[^/]*\\)\\(.*\\)\\'" match-string 1 "^/\\.\\.?$" nil t tramp-make-tramp-file-name expand-file-name] 17 (#$ . 17652)]) #@61 Check, whether ACL is enabled on the remote host. (fn VEC) (defalias 'tramp-sudoedit-remote-acl-p #[257 "\301\302!\303#\211=\203\"\304\305\306\211\211\307&\310U\262\311\302!\303#\210\207" [tramp-cache-undefined tramp-get-connection-property tramp-get-process "acl-p" tramp-call-process "getfacl" nil "/" 0 tramp-set-connection-property] 9 (#$ . 18847)]) #@49 Like `file-acl' for Tramp files. (fn FILENAME) (defalias 'tramp-sudoedit-handle-file-acl #[257 "\303!\211\242>\204\304\305\306D\"\210\211A@\242>\204\"\304\305\306D\"\210\3078\242>\2043\304\305\306D\"\210\3108\242>\204E\304\305\306D\"\210\3118\242>\204W\304\305\306D\"\210\3128\242>\204i\304\305\306D\"\210\3138\242>\204}\304\305\306 D\"\210\3148\315!\203\361\316\317 $\211 =\203\360\320 !\205\334\321 \322\323\324\211?\205\251\n\325!\211\211?\205\265\n\326\327\325!\")\266\202\203\323\211G\307U\203\315\330\202\321\211\307\324O\262\331!P)\266\203$\211;\205\344\211\332P\262\262\333 \317$\210\207\320!\2058\321\322\323\324\211?\205\n\325!\211\211?\205\n\326\327\325!\")\266\202\203/\211G\307U\203)\330\202-\211\307\324O\262\331!P)\266\203$\211;\205@\211\332P\207" [cl-struct-tramp-file-name-tags tramp-cache-undefined file-name-handler-alist tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 file-name-absolute-p tramp-get-file-property "file-acl" tramp-sudoedit-remote-acl-p tramp-sudoedit-send-command-string "getfacl" "-acp" nil file-local-name string-prefix-p "/:" "/" file-remote-p "\n" tramp-set-file-property] 23 (#$ . 19217)]) #@76 Like `file-attributes' for Tramp files. (fn FILENAME &optional ID-FORMAT) (defalias 'tramp-sudoedit-handle-file-attributes #[513 "\211\204\306\262\307\310!!\211\242>\204\311\312\313D\"\210\211A@\242>\204+\311\312\313D\"\210\3148\242>\204<\311\312\313D\"\210\3158\242>\204N\311\312\313D\"\210\3168\242>\204`\311\312\313D\"\210\3178\242>\204r\311\312\313D\"\210\3208\242>\204\206\311\312\313 D\"\210\3218\322!\203\304\323\324\325 \" $\211 =\203\303\317\326C\3271A\nX\205;\315X\203\341 \204\341\330\331\332U\203\307\333\202\334\334U\203\321\333\202\334\314U\203\333\335\202\334\336P#\210\n\316Y\205;\332\334U\203\3371r\340!\203\341!\202\342\343\"q\210\344P\262\345\346 C\"\211\262)0\210\202\210\340!\203'\347\350\"\262)\242>\205;\330\351\324\352\"P$0\266\202C\266\3531\263\354 \355 \356\357\360\361\324\362\f\211\306=\203`\363\202a\364\306=\203l\365\202m\366\f\211& \367\211?\205z \370!\211\211?\205\206 \371\372\370!\")\266\202\203\244\211G\314U\203\236\373\202\242\211\314\367O\262\374!P)\266\203&\"0\202\265\210\367\262\375 \324\325\"$\210\207\317\326C\3271d\nX\205^\315X\203 \204\330\331\332U\203\352\333\202\377\334U\203\364\333\202\377\314U\203\376\335\202\377\336P#\210\n\316Y\205^\332\334U\203>\3371=r\340!\203#\341!\202'\342\343\"q\210\344P\262\345\346 C\"\211\262)0\210\202>\210\340!\203J\347\350\"\262)\242>\205^\330\351\324\352\"P$0\266\202f\266\3761\324\354\355\n\356\357\360\361\324\362\f\211\306=\203\203\363\202\204\364\306=\203\217\365\202\220\366\f\211&\n\367\211?\205\235 \370!\211\211?\205\251 \371\372\370!\")\266\202\203\307\211G\314U\203\301\373\202\305\211\314\367O\262\374!P)\266\203&\"0\207\210\367\207" [cl-struct-tramp-file-name-tags tramp-cache-undefined tramp-verbose tramp-inhibit-progress-reporter tramp-stat-marker file-name-handler-alist integer tramp-dissect-file-name expand-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 file-name-absolute-p tramp-get-file-property format "file-attributes-%s" "file attributes: %s" (error) apply message 0 "" 1 "Warning: " "Tramp: " (error) processp process-buffer tramp-get-connection-buffer dont-create "\n%s" append buffer-string process-get vector tramp-debug-message "(%d) # " (error) tramp-convert-file-attributes tramp-sudoedit-send-command-and-read "env" "QUOTING_STYLE=locale" "stat" "-c" "((%s%%N%s) %%h %s %s %%X %%Y %%Z %%s %s%%A%s t %%i -1)" "%u" "/////%U/////" "%g" "/////%G/////" nil file-local-name string-prefix-p "/:" "/" file-remote-p tramp-set-file-property (error)] 29 (#$ . 20480)]) #@58 Like `file-executable-p' for Tramp files. (fn FILENAME) (defalias 'tramp-sudoedit-handle-file-executable-p #[257 "\303!\211\242>\204\304\305\306D\"\210\211A@\242>\204\"\304\305\306D\"\210\3078\242>\2043\304\305\306D\"\210\3108\242>\204E\304\305\306D\"\210\3118\242>\204W\304\305\306D\"\210\3128\242>\204i\304\305\306D\"\210\3138\242>\204}\304\305\306 D\"\210\3148\315!\203\340\316\317 $\211 =\203\337\320 \321\322\323\211?\205\242\n\324!\211\211?\205\256\n\325\326\324!\")\266\202\203\314\211G\307U\203\306\327\202\312\211\307\323O\262\330!P)\266\203$\262\331 \317$\210\207\320\321\322\323\211?\205\355\n\324!\211\211?\205\371\n\325\326\324!\")\266\202\203\211G\307U\203\327\202\211\307\323O\262\330!P)\266\203$\207" [cl-struct-tramp-file-name-tags tramp-cache-undefined file-name-handler-alist tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 file-name-absolute-p tramp-get-file-property "file-executable-p" tramp-sudoedit-send-command "test" "-x" nil file-local-name string-prefix-p "/:" "/" file-remote-p tramp-set-file-property] 23 (#$ . 23198)]) #@54 Like `file-exists-p' for Tramp files. (fn FILENAME) (defalias 'tramp-sudoedit-handle-file-exists-p #[257 "\303!\205(\304!\211\242>\204\305\306\307D\"\210\211A@\242>\204(\305\306\307D\"\210\3108\242>\2049\305\306\307D\"\210\3118\242>\204K\305\306\307D\"\210\3128\242>\204]\305\306\307D\"\210\3138\242>\204o\305\306\307D\"\210\3148\242>\204\203\305\306\307 D\"\210\3158\316!\203\346\317\320 $\211 =\203\345\321 \322\323\324\211?\205\250\n\325!\211\211?\205\264\n\326\327\325!\")\266\202\203\322\211G\310U\203\314\330\202\320\211\310\324O\262\331!P)\266\203$\262\332 \320$\210\207\321\322\323\324\211?\205\363\n\325!\211\211?\205\377\n\326\327\325!\")\266\202\203\211G\310U\203\330\202\211\310\324O\262\331!P)\266\203$\266\210\207" [cl-struct-tramp-file-name-tags tramp-cache-undefined file-name-handler-alist tramp-connectable-p tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 file-name-absolute-p tramp-get-file-property "file-exists-p" tramp-sudoedit-send-command "test" "-e" nil file-local-name string-prefix-p "/:" "/" file-remote-p tramp-set-file-property] 23 (#$ . 24372)]) #@76 Like `file-name-all-completions' for Tramp files. (fn FILENAME DIRECTORY) (defalias 'tramp-sudoedit-handle-file-name-all-completions #[514 "\303\304\305!!\211\242>\204\306\307\310D\"\210\211A@\242>\204&\306\307\310D\"\210\3118\242>\2047\306\307\310D\"\210\3128\242>\204I\306\307\310D\"\210\3138\242>\204[\306\307\310D\"\210\3148\242>\204m\306\307\310D\"\210\3158\242>\204\201\306\307\310 D\"\210\3168\317!\203\320\321 $\211 =\203\322 \323\324\325\326G\327U\203\253\330\202\346\331\211?\205\264\n\332!\211\211?\205\300\n\333\334\332!\")\266\202\203\336\211G\311U\203\330\335\202\334\211\311\331O\262\336!P)\266\203&\210\337\340\341\"r\342 !q\210\343\331\337\344\345\346 \347\350#\"\")\"\262\351 \321$\210\211\262\266\210\202\204\322\323\324\325\326G\327U\203)\330\202d\331\211?\2052\n\332!\211\211?\205>\n\333\334\332!\")\266\202\203\\\211G\311U\203V\335\202Z\211\311\331O\262\336!P)\266\203&\210\337\340\352 \"r\342\n!q\210\343\331\337\353\345\346 \347\350#\"\")\"\266\210\"\207" [cl-struct-tramp-file-name-tags tramp-cache-undefined file-name-handler-alist all-completions tramp-dissect-file-name expand-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 file-name-absolute-p tramp-get-file-property "file-name-all-completions" tramp-sudoedit-send-command "ls" "-a1" "--quoting-style=literal" "--show-control-chars" 0 "" nil file-local-name string-prefix-p "/:" "/" file-remote-p mapcar make-closure #[257 "\301\302\300\"!\203 \303!\207\207" [V0 file-directory-p expand-file-name file-name-as-directory] 5 "\n\n(fn F)"] tramp-get-connection-buffer delq #[257 "\301\302\303\304#)\266\203?\205\211\207" [inhibit-changing-match-data #1="^[[:space:]]*$" nil t string-match] 8 "\n\n(fn L)"] split-string buffer-string "\n" omit tramp-set-file-property #[257 "\301\302\300\"!\203 \303!\207\207" [V0 file-directory-p expand-file-name file-name-as-directory] 5 "\n\n(fn F)"] #[257 "\301\302\303\304#)\266\203?\205\211\207" [inhibit-changing-match-data #1# nil t string-match] 8 "\n\n(fn L)"]] 28 (#$ . 25576)]) #@56 Like `file-readable-p' for Tramp files. (fn FILENAME) (defalias 'tramp-sudoedit-handle-file-readable-p #[257 "\303!\211\242>\204\304\305\306D\"\210\211A@\242>\204\"\304\305\306D\"\210\3078\242>\2043\304\305\306D\"\210\3108\242>\204E\304\305\306D\"\210\3118\242>\204W\304\305\306D\"\210\3128\242>\204i\304\305\306D\"\210\3138\242>\204}\304\305\306 D\"\210\3148\315!\203\340\316\317 $\211 =\203\337\320 \321\322\323\211?\205\242\n\324!\211\211?\205\256\n\325\326\324!\")\266\202\203\314\211G\307U\203\306\327\202\312\211\307\323O\262\330!P)\266\203$\262\331 \317$\210\207\320\321\322\323\211?\205\355\n\324!\211\211?\205\371\n\325\326\324!\")\266\202\203\211G\307U\203\327\202\211\307\323O\262\330!P)\266\203$\207" [cl-struct-tramp-file-name-tags tramp-cache-undefined file-name-handler-alist tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 file-name-absolute-p tramp-get-file-property "file-readable-p" tramp-sudoedit-send-command "test" "-r" nil file-local-name string-prefix-p "/:" "/" file-remote-p tramp-set-file-property] 23 (#$ . 27725)]) #@75 Like `set-file-modes' for Tramp files. (fn FILENAME MODE &optional FLAG) (defalias 'tramp-sudoedit-handle-set-file-modes #[770 "\302!\211\242>\204\303\304\305D\"\210\211A@\242>\204\"\303\304\305D\"\210\3068\242>\2043\303\304\305D\"\210\3078\242>\204E\303\304\305D\"\210\3108\242>\204W\303\304\305D\"\210\3118\242>\204i\303\304\305D\"\210\3128\242>\204}\303\304\305 D\"\210\3138\314=\205\214\315 !?\205\346\316\"\210\317\320\321\322\"\323\211?\205\247 \324!\211\211?\205\263 \325\326\324!\")\266\202\203\321\211G\306U\203\313\327\202\317\211\306\323O\262\330!P)\266\203$?\205\346\331\332\333$\207" [cl-struct-tramp-file-name-tags file-name-handler-alist tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 nofollow file-symlink-p tramp-flush-file-properties tramp-sudoedit-send-command "chmod" format "%o" nil file-local-name string-prefix-p "/:" "/" file-remote-p tramp-error file-error "Error while changing file's mode %s"] 24 (#$ . 28893)]) #@65 Check, whether SELINUX is enabled on the remote host. (fn VEC) (defalias 'tramp-sudoedit-remote-selinux-p #[257 "\301\302!\303#\211=\203\304\305\"\306U\262\307\302!\303#\210\207" [tramp-cache-undefined tramp-get-connection-property tramp-get-process "selinux-p" tramp-call-process "selinuxenabled" 0 tramp-set-connection-property] 6 (#$ . 29943)]) #@61 Like `file-selinux-context' for Tramp files. (fn FILENAME) (defalias 'tramp-sudoedit-handle-file-selinux-context #[257 "\303!\211\242>\204\304\305\306D\"\210\211A@\242>\204\"\304\305\306D\"\210\3078\242>\2043\304\305\306D\"\210\3108\242>\204E\304\305\306D\"\210\3118\242>\204W\304\305\306D\"\210\3128\242>\204i\304\305\306D\"\210\3138\242>\204}\304\305\306 D\"\210\3148\315!\203\316\317 $\211 =\203\320\321\n!\203\322\n\323\324\325\326\211?\205\253\n\327!\211\211?\205\267\n\330\331\327!\")\266\202\203\325\211G\307U\203\317\332\202\323\211\307\326O\262\333!P)\266\203%\203r\334\n!q\210eb\210\335\336\337 \340#\203\341\342!\341\307!\341\310!\341\311!F\262)\211\262\262\343 \317$\210\207\320\321 !\203\202\322 \323\324\325\326\211?\205)\n\327!\211\211?\2055\n\330\331\327!\")\266\202\203S\211G\307U\203M\332\202Q\211\307\326O\262\333!P)\266\203%\203\202r\334 !q\210eb\210\335\336\337 \340#\203\201\341\342!\341\307!\341\310!\341\311!F\262)\207" [cl-struct-tramp-file-name-tags tramp-cache-undefined file-name-handler-alist tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 file-name-absolute-p tramp-get-file-property "file-selinux-context" (nil nil nil nil) tramp-sudoedit-remote-selinux-p tramp-sudoedit-send-command "ls" "-d" "-Z" nil file-local-name string-prefix-p "/:" "/" file-remote-p tramp-get-connection-buffer re-search-forward "\\([[:alnum:]_]+\\):\\([[:alnum:]_]+\\):\\([[:alnum:]_]+\\):\\([[:alnum:]_]+\\)" point-at-eol t match-string 1 tramp-set-file-property] 25 (#$ . 30307)]) #@57 Like `file-system-info' for Tramp files. (fn FILENAME) (defalias 'tramp-sudoedit-handle-file-system-info #[257 "\3041\234\305\306!!\211\242>\204\307\310\311D\"\210\211A@\242>\204(\307\310\311D\"\210\3128\242>\2049\307\310\311D\"\210\3138\242>\204K\307\310\311D\"\210\3148\242>\204]\307\310\311D\"\210\3158\242>\204o\307\310\311D\"\210\3168\242>\204\203\307\310\311 D\"\210\3178\315\320C\3211' X\205!\313X\203\307\n\204\307\322\323\324U\203\255\325\202\302\326U\203\267\325\202\302\312U\203\301\327\202\302\330P#\210 \314Y\205!\324\326U\203\3311r\332!\203\346\333!\202\352\334\335\"q\210\336P\262\337\340 C\"\211\262)0\210\202\210\332!\203 \341\342\"\262)\242>\205!\322\343\344\345\"P$0\266\202)\266\346\347\350\351\352\211?\2058 \353!\211\211?\205D \354\355\353!\")\266\202\203b\211G\312U\203\\\356\202`\211\312\352O\262\357!P)\266\203%\205\230r\334!q\210eb\210\352y\210\360\361!\205\227\362\363\326!!\362\363\326!!\362\363\312!!Z\362\363\313!!E)\266\2100\207\210\352\207" [cl-struct-tramp-file-name-tags tramp-verbose tramp-inhibit-progress-reporter file-name-handler-alist (error) tramp-dissect-file-name expand-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 "file system info: %s" (error) apply message 0 "" 1 "Warning: " "Tramp: " (error) processp process-buffer tramp-get-connection-buffer dont-create "\n%s" append buffer-string process-get vector tramp-debug-message format "(%d) # " tramp-sudoedit-send-command "df" "--block-size=1" "--output=size,used,avail" nil file-local-name string-prefix-p "/:" "/" file-remote-p looking-at "[[:space:]]*\\([[:digit:]]+\\)[[:space:]]+\\([[:digit:]]+\\)[[:space:]]+\\([[:digit:]]+\\)" string-to-number match-string] 23 (#$ . 31937)]) #@75 Like `set-file-times' for Tramp files. (fn FILENAME &optional TIME FLAG) (defalias 'tramp-sudoedit-handle-set-file-times #[769 "\304!\211\242>\204\305\306\307D\"\210\211A@\242>\204\"\305\306\307D\"\210\3108\242>\2043\305\306\307D\"\210\3118\242>\204E\305\306\307D\"\210\3128\242>\204W\305\306\307D\"\210\3138\242>\204i\305\306\307D\"\210\3148\242>\204}\305\306\307 D\"\210\3158\316\"\210 \203\234\317\n \"\204\234\317\n\n\"\203\241\320 \202\243 \321 \322\323\324\325\326\327\330#\331=\203\273\332\202\274\333\n\334\211?\205\305 \335!\211\211?\205\321 \336\337\335!\")\266\202\203\357\211G\310U\203\351\340\202\355\211\310\334O\262\341!P)\266\203&\207" [cl-struct-tramp-file-name-tags tramp-time-doesnt-exist tramp-time-dont-know file-name-handler-alist tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 tramp-flush-file-properties tramp-compat-time-equal-p current-time tramp-sudoedit-send-command "env" "TZ=UTC" "touch" "-t" format-time-string "%Y%m%d%H%M.%S" t nofollow "-h" "" nil file-local-name string-prefix-p "/:" "/" file-remote-p] 29 (#$ . 33758)]) #@54 Like `file-truename' for Tramp files. (fn FILENAME) (defalias 'tramp-sudoedit-handle-file-truename #[257 "\305!\203\n\306\202 \307\310\211?\205\311\312\313!\")\266\202\203$\314\202%\307\315\316!\310\211?\2050\313!\211\211?\205<\311\312\313!\")\266\202\203Z\211G\317U\203T\320\202X\211\317\310O\262\321!P)\266\203!\211\242 >\204q\322\323\324D\"\210\211A@\242 >\204\202\322\323\324D\"\210\3178\242 >\204\223\322\323\324D\"\210\3258\242 >\204\245\322\323\324D\"\210\3268\242 >\204\267\322\323\324D\"\210\3278\242 >\204\311\322\323\324D\"\210\3308\242 >\204\335\322\323\324 D\"\210\3318\332\333!\203\251\334\n\335\n$\211\n=\203\243\310 \326\336C\3371\231 X\205\223\325X\2039\f\2049\340\341\342U\203\343\2024\344U\203)\343\2024\317U\2033\345\2024\346P#\210 \326Y\205\223\342\344U\203s\3471rr\350!\203X\351!\202\\\352\353\"q\210\354P\262\355\356 C\"\211\262)0\210\202s\210\350!\203\357\360\"\262)\242 >\205\223\340\361\362\363\"P$0\266\202\233\266\364\f\365\366 $\262\367!\203\274\211\230\203\274\370\f\371\372$\210\321!\203\361\211\373\211?\205\312\211?\205\323\311\312\313!\")\266\202\203\344\202\354\321!\312\313!Q)\266\202\262 \326\374D\3371\223 X\205\215\325X\2033\f\2043\340\341\342U\203\343\202.\344U\203#\343\202.\317U\203-\345\202.\346P#\210 \326Y\205\215\342\344U\203m\3471lr\350!\203R\351!\202V\352\353\"q\210\354P\262\355\356 C\"\211\262)0\210\202m\210\350!\203y\357\360\"\262)\242 >\205\215\340\361\362\363\"P$0\266\202\225\266\211\262\262\375 \335$\210\211\262\202I\310\n\326\336C\3371K X\205E\325X\203\353\f\204\353\340\341\342U\203\321\343\202\346\344U\203\333\343\202\346\317U\203\345\345\202\346\346P#\210 \326Y\205E\342\344U\203%\3471$r\350!\203\n\351!\202\352\353\"q\210\354P\262\355\356 C\"\211\262)0\210\202%\210\350!\2031\357\360\"\262)\242 >\205E\340\361\362\363\"P$0\266\202M\266\364 \365\366$\262\367!\203m\211\230\203m\370 \371\372$\210\321!\203\242\211\373\211?\205{\211?\205\204\311\312\313!\")\266\202\203\225\202\235\321!\312\313!Q)\266\202\262\n\326\374D\3371D X\205>\325X\203\344\f\204\344\340\341\342U\203\312\343\202\337\344U\203\324\343\202\337\317U\203\336\345\202\337\346P#\210 \326Y\205>\342\344U\203\3471r\350!\203\351!\202\352\353\"q\210\354P\262\355\356 C\"\211\262)0\210\202\210\350!\203*\357\360\"\262)\242 >\205>\340\361\362\363\"P$0\266\202F\266\211\262\376#\266\210!!\207" [file-name-handler-alist cl-struct-tramp-file-name-tags tramp-cache-undefined tramp-verbose tramp-inhibit-progress-reporter directory-name-p file-name-as-directory identity nil string-prefix-p "/:" file-local-name tramp-compat-file-name-quote tramp-dissect-file-name expand-file-name 2 "/" file-remote-p signal wrong-type-argument tramp-file-name 3 4 5 6 7 tramp-make-tramp-file-name file-name-absolute-p tramp-get-file-property "file-truename" "Finding true name for `%s'" (error) apply message 0 "" 1 "Warning: " "Tramp: " (error) processp process-buffer tramp-get-connection-buffer dont-create "\n%s" append buffer-string process-get vector tramp-debug-message format "(%d) # " tramp-sudoedit-send-command-string "readlink" "--canonicalize-missing" file-symlink-p tramp-error file-error "Apparent cycle of symbolic links for %s" top "True name of `%s' is `%s'" tramp-set-file-property nohop] 25 (#$ . 34926)]) #@56 Like `file-writable-p' for Tramp files. (fn FILENAME) (defalias 'tramp-sudoedit-handle-file-writable-p #[257 "\303!\211\242>\204\304\305\306D\"\210\211A@\242>\204\"\304\305\306D\"\210\3078\242>\2043\304\305\306D\"\210\3108\242>\204E\304\305\306D\"\210\3118\242>\204W\304\305\306D\"\210\3128\242>\204i\304\305\306D\"\210\3138\242>\204}\304\305\306 D\"\210\3148\315!\203\371\316\317 $\211 =\203\370\320\n!\203\337\321 \322\323\324\211?\205\251\n\325!\211\211?\205\265\n\326\327\325!\")\266\202\203\323\211G\307U\203\315\330\202\321\211\307\324O\262\331!P)\266\203$\202\356\332\n!\320!\205\354\333!\262\262\334 \317$\210\207\320 !\203A\321\322\323\324\211?\205 \n\325!\211\211?\205\n\326\327\325!\")\266\202\2037\211G\307U\2031\330\2025\211\307\324O\262\331!P)\266\203$\207\332 !\320!\205N\333!\207" [cl-struct-tramp-file-name-tags tramp-cache-undefined file-name-handler-alist tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 file-name-absolute-p tramp-get-file-property "file-writable-p" file-exists-p tramp-sudoedit-send-command "test" "-w" nil file-local-name string-prefix-p "/:" "/" file-remote-p file-name-directory file-writable-p tramp-set-file-property] 23 (#$ . 38500)]) #@68 Like `make-directory' for Tramp files. (fn DIR &optional PARENTS) (defalias 'tramp-sudoedit-handle-make-directory #[513 "\302!\262\303!\211\242>\204\304\305\306D\"\210\211A@\242>\204'\304\305\306D\"\210\3078\242>\2048\304\305\306D\"\210\3108\242>\204J\304\305\306D\"\210\3118\242>\204\\\304\305\306D\"\210\3128\242>\204n\304\305\306D\"\210\3138\242>\204\202\304\305\306 D\"\210\3148\204\233\315\n!\203\233\316\317\320 $\210\321\n\203\247\322\202\252\323!\"\210\324\n\203\270\325\202\271\326\327\211?\205\301 \330!\211\211?\205\315 \331\332\330!\")\266\202\203\353\211G\307U\203\345\322\202\351\211\307\327O\262\333!P)\266\203#?\205\316\334\335 $\207" [cl-struct-tramp-file-name-tags file-name-handler-alist expand-file-name tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 file-exists-p tramp-error file-already-exists "Directory already exists %s" tramp-flush-directory-properties "/" file-name-directory tramp-sudoedit-send-command ("mkdir" "-p") "mkdir" nil file-local-name string-prefix-p "/:" file-remote-p file-error "Couldn't make directory %s"] 22 (#$ . 39814)]) #@273 Like `make-symbolic-link' for Tramp files. If TARGET is a non-Tramp file, it is used verbatim as the target of the symlink. If TARGET is a Tramp file, only the localname component is used as the target of the symlink. (fn TARGET LINKNAME &optional OK-IF-ALREADY-EXISTS) (defalias 'tramp-sudoedit-handle-make-symbolic-link #[770 "\303\304!!\204\305\306E\"\207\307!\211\242>\204!\310\311\312D\"\210\211A@\242>\2042\310\311\312D\"\210\3138\242>\204C\310\311\312D\"\210\3148\242>\204U\310\311\312D\"\210\3158\242>\204g\310\311\312D\"\210\3168\242>\204y\310\311\312D\"\210\3178\242>\204\215\310\311\312 D\"\210\3208\321\303 !\203\255\322\307 !\"\203\255\323\304\f!!\262 )\303 !\203\352\306 \324\211?\205\277\n\211?\205\310\n\325\326\327!\")\266\202\203\331\202\341\330!\326\327!Q)\266\202  #\207\331\n!\203\203\247\203\332\333\334\"!\204\335\336#\210\202\337\n!\210\340\"\210\341\342\343\344\211?\205(\n\327!\211\211?\2054\n\325\326\327!\")\266\202\203R\211G\313U\203L\345\202P\211\313\344O\262\330!P)\266\203\344\211?\205c\n\327!\211\211?\205o\n\325\326\327!\")\266\202\203\215\211G\313U\203\207\345\202\213\211\313\344O\262\330!P)\266\203%\207" [cl-struct-tramp-file-name-tags non-essential file-name-handler-alist tramp-tramp-file-p expand-file-name tramp-run-real-handler make-symbolic-link tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 t tramp-file-name-equal-p tramp-file-local-name top string-prefix-p "/:" file-local-name file-remote-p file-exists-p yes-or-no-p format "File %s already exists; make it a link anyway? " tramp-error file-already-exists delete-file tramp-flush-file-properties tramp-sudoedit-send-command "ln" "-sf" nil "/"] 25 (#$ . 41004)]) #@91 Like `rename-file' for Tramp files. (fn FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS) (defalias 'tramp-sudoedit-handle-rename-file #[770 "\300!\262\300!\262\301!\204\301!\203 \302\303\304\305&\207\306\307E\"\207" [expand-file-name tramp-tramp-file-p tramp-sudoedit-do-copy-or-rename-file rename keep-date preserve-uid-gid tramp-run-real-handler rename-file] 10 (#$ . 42831)]) #@64 Like `set-file-acl' for Tramp files. (fn FILENAME ACL-STRING) (defalias 'tramp-sudoedit-handle-set-file-acl #[514 "\302\303!!\211\242>\204\304\305\306D\"\210\211A@\242>\204$\304\305\306D\"\210\3078\242>\2045\304\305\306D\"\210\3108\242>\204G\304\305\306D\"\210\3118\242>\204Y\304\305\306D\"\210\3128\242>\204k\304\305\306D\"\210\3138\242>\204\304\305\306 D\"\210\3148;\205\352\315!\205\352\316 \317\320#\321\322\323#\266\202\262 \324\325\326\f\327\211?\205\260 \330!\211\211?\205\274 \331\332\330!\")\266\202\203\332\211G\307U\203\324\333\202\330\211\307\327O\262\334!P)\266\203%\335 \336#\210\207" [cl-struct-tramp-file-name-tags file-name-handler-alist tramp-dissect-file-name expand-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 tramp-sudoedit-remote-acl-p split-string "\n" omit "," mapconcat identity tramp-sudoedit-send-command "setfacl" "-m" nil file-local-name string-prefix-p "/:" "/" file-remote-p tramp-flush-file-property "file-acl"] 24 (#$ . 43233)]) #@73 Like `set-file-selinux-context' for Tramp files. (fn FILENAME CONTEXT) (defalias 'tramp-sudoedit-handle-set-file-selinux-context #[514 "\302!\211\242>\204\303\304\305D\"\210\211A@\242>\204\"\303\304\305D\"\210\3068\242>\2043\303\304\305D\"\210\3078\242>\204E\303\304\305D\"\210\3108\242>\204W\303\304\305D\"\210\3118\242>\204i\303\304\305D\"\210\3128\242>\204}\303\304\305 D\"\210\3138:\205P\314!\205P@;\205\230@ A@;\205\244 A@\306 8;\205\260\306 8\307\f8;\205\274\307\f8\315\f\316\205\312\317\320\"\205\324\317\321\"\205\336\317\322\"\205\350\317\323\"\f\324\211?\205\361 \325!\211\211?\205\375 \326\327\325!\")\266\202\203\211G\306U\203\330\202\211\306\324O\262\331!P)\266\203&\205N\203E\203E\203E\211\203E\332\f\333$\210\202M\334\f\333#\210\335\266\204\207" [cl-struct-tramp-file-name-tags file-name-handler-alist tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 tramp-sudoedit-remote-selinux-p tramp-sudoedit-send-command "chcon" format "--user=%s" "--role=%s" "--type=%s" "--range=%s" nil file-local-name string-prefix-p "/:" "/" file-remote-p tramp-set-file-property "file-selinux-context" tramp-flush-file-property t] 30 (#$ . 44294)]) #@124 The uid of the remote connection VEC, in ID-FORMAT. ID-FORMAT valid values are `string' and `integer'. (fn VEC ID-FORMAT) (defalias 'tramp-sudoedit-handle-get-remote-uid #[514 "\211\300=\203\f\301\302\303#\207\304\302\305#\207" [integer tramp-sudoedit-send-command-and-read "id" "-u" tramp-sudoedit-send-command-string "-un"] 6 (#$ . 45592)]) #@124 The gid of the remote connection VEC, in ID-FORMAT. ID-FORMAT valid values are `string' and `integer'. (fn VEC ID-FORMAT) (defalias 'tramp-sudoedit-handle-get-remote-gid #[514 "\211\300=\203\f\301\302\303#\207\304\302\305#\207" [integer tramp-sudoedit-send-command-and-read "id" "-g" tramp-sudoedit-send-command-string "-gn"] 6 (#$ . 45946)]) #@81 Like `tramp-set-file-uid-gid' for Tramp files. (fn FILENAME &optional UID GID) (defalias 'tramp-sudoedit-handle-set-file-uid-gid #[769 "\301!\211\242>\204\302\303\304D\"\210\211A@\242>\204\"\302\303\304D\"\210\3058\242>\2043\302\303\304D\"\210\3068\242>\204E\302\303\304D\"\210\3078\242>\204W\302\303\304D\"\210\3108\242>\204i\302\303\304D\"\210\3118\242>\204}\302\303\304 D\"\210\3128\313\314\315\316\206\221\317 \320\"\206\233\321\320\"#\322!$\207" [cl-struct-tramp-file-name-tags tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 tramp-sudoedit-send-command "chown" format "%d:%d" tramp-get-remote-uid integer tramp-get-remote-gid tramp-unquote-file-local-name] 20 (#$ . 46299)]) #@105 Like `write-region' for Tramp files. (fn START END FILENAME &optional APPEND VISIT LOCKNAME MUSTBENEW) (defalias 'tramp-sudoedit-handle-write-region #[1795 "\301!\211\242>\204\302\303\304D\"\210\211A@\242>\204\"\302\303\304D\"\210\3058\242>\2043\302\303\304D\"\210\3068\242>\204E\302\303\304D\"\210\3078\242>\204W\302\303\304D\"\210\3108\242>\204i\302\303\304D\"\210\3118\242>\204}\302\303\304 D\"\210\3128\313 \314\"\3058\262\206\223\315\314\"\313\314\"\3068\262\206\245\316 \314\"\n\317=\205\255\320\321\"\322&\313\314\"\3058\262U\203\341\313\314\"\3068\262U\204\352\323#\210\324#\210\207" [cl-struct-tramp-file-name-tags tramp-dissect-file-name signal wrong-type-argument tramp-file-name 2 3 4 5 6 7 file-attributes integer tramp-get-remote-uid tramp-get-remote-gid excl nofollow tramp-default-file-modes tramp-handle-write-region tramp-set-file-uid-gid tramp-compat-set-file-modes] 27 (#$ . 47073)]) #@85 Check, whether a sudo process has finished. Remove unneeded output. (fn PROC VEC) (defalias 'tramp-sudoedit-action-sudo #[514 "\303!?\205\323\304\305\"\204eb\210~\210e`|\210eb\210m\204+`\306 U\203+\307y\210\202e`|\210\211\310\311\307\3121\315X\205\307\310X\203m \204m\313\314\305U\203S\315\202h\316U\203]\315\202h\317U\203g\320\202h\321P#\210\322Y\205\307\305\316U\203\247\3231\246r\324!\203\214\325!\202\220\326\327\"q\210\330P\262\331\332 C\"\211\262)0\210\202\247\210\324!\203\263\333\334\"\262)\242\n>\205\307\313\335\336\337\"P$0\266\202\317\266\340\341\342\"\207" [tramp-verbose tramp-inhibit-progress-reporter cl-struct-tramp-file-name-tags process-live-p tramp-accept-process-output 0 point-at-eol nil 3 "Process has finished." (error) apply message "" 1 2 "Warning: " "Tramp: " 4 (error) processp process-buffer tramp-get-connection-buffer dont-create "\n%s" append buffer-string process-get vector tramp-debug-message format "(%d) # " throw tramp-action ok] 12 (#$ . 48079)]) #@173 Maybe open a connection VEC. Does not do anything if a connection is already open, but re-opens the connection if a previous connection has died for some reason. (fn VEC) (defalias 'tramp-sudoedit-maybe-open-connection #[257 "\300!\204 \301\302\211\"\210\303!?\205;\304\305\306!\307\310!\311\312\313\314\315\312\316\312&\f\317\320#\210\321\322\"\210\323!\210\324\325\312#\262\207" [tramp-connectable-p throw non-essential tramp-get-connection-process make-network-process :name tramp-get-connection-name :buffer tramp-get-connection-buffer :server t :host local :service :noquery process-put vector set-process-query-on-exit-flag nil tramp-set-connection-local-variables tramp-set-connection-property "connected"] 14 (#$ . 49131)]) #@262 Send commands ARGS to connection VEC. If an element of ARGS is a list, it will be flattened. If an element of ARGS is nil, it will be deleted. Erases temporary buffer before sending the command. Returns nil in case of error, t otherwise. (fn VEC &rest ARGS) (defalias 'tramp-sudoedit-send-command #[385 "\306!\210r\307!q\210\310 \210\311 \312\313\314!p\315\316\317\320\n\242 >\204-\321\322\323 D\"\210\324 8\2065\325\326\f\242 >\204F\321\322\323D\"\210\327 8\206N\325&\330!\"$\f\331U\203`\327\202a\f\332\333\334\335!\336\337\340#\266\202C\3411\fX\205\331X\203\256;\204\256\312\342\343U\203\224\325\202\251\344U\203\236\325\202\251\327U\203\250\345\202\251\346P#\210\f\324Y\205\343\344U\203\350\3471\347r\350!\203\315\351!\202\321\307\352\"q\210\353P\262\315\354 C\"\211\262)0\210\202\350\210\350!\203\364\355\356\"\262)\242 >\205\312\357\360\361\"P$0\266\202\266\362\363\"\210\364\356#\210\364\365\363#\210\366\332\"\210\367\332<$\210\333\370\371!\354 D\3411\322\fX\205\314\331X\203r;\204r\312\342\343U\203X\325\202m\344U\203b\325\202m\327U\203l\345\202m\346P#\210\f\324Y\205\314\343\344U\203\254\3471\253r\350!\203\221\351!\202\225\307\352\"q\210\353P\262\315\354 C\"\211\262)0\210\202\254\210\350!\203\270\355\356\"\262)\242 >\205\314\312\357\360\361\"P$0\266\202\324\266\371!\343U\372!\210,\262)\207" [delete-exited-processes tramp-process-connection-type process-connection-type cl-struct-tramp-file-name-tags tramp-verbose auth-source-save-behavior tramp-sudoedit-maybe-open-connection tramp-get-connection-buffer erase-buffer t apply start-process tramp-get-connection-name append tramp-expand-args tramp-sudo-login 104 signal wrong-type-argument tramp-file-name 4 "" 117 2 tramp-compat-flatten-tree 3 nil 6 "%s" process-command " " mapconcat identity (error) message 0 1 "Warning: " "Tramp: " (error) processp process-buffer dont-create "\n%s" buffer-string process-get vector tramp-debug-message format "(%d) # " set-process-sentinel ignore process-put adjust-window-size-function set-process-query-on-exit-flag tramp-process-actions "%s\n%s" process-exit-status delete-process tramp-inhibit-progress-reporter tramp-sudoedit-sudo-actions] 17 (#$ . 49883)]) #@158 Run command ARGS and return the output, which must be a Lisp expression. In case there is no valid Lisp expression, it raises an error. (fn VEC &rest ARGS) (defalias 'tramp-sudoedit-send-command-and-read #[385 "\304\305#\205r\306!q\210eb\210\307\310\311#\203?eb\210\307\312\310\311#\203-\313\314\310\315#\210\202eb\210\307\310\311#\203?\313\312!\210\2020\316\317\320 C\3211\337 X\205\331\322X\203\n\204\304\323\324U\203e\325\202z\326U\203o\325\202z\327U\203y\330\202z\331P#\210 \332Y\205\331\324\326U\203\271\3331\270r\334!\203\236\335!\202\242\306\336\"q\210\317P\262\337\320 C\"\211\262)0\210\202\271\210\334!\203\305\340\341\"\262)\242 >\205\331\304\342\343\344\"P$0\266\202\341\266eb\210\3451\374\346p!\347\350\351 \311#\203\370\352\310!\2100\202\210\353\354\355@\320 %)\207" [tramp-stat-marker tramp-verbose tramp-inhibit-progress-reporter cl-struct-tramp-file-name-tags apply tramp-sudoedit-send-command tramp-get-connection-buffer search-forward nil t "\"" replace-match "\\\"" literal 6 "\n%s" buffer-string (error) 3 message 0 "" 1 2 "Warning: " "Tramp: " 4 (error) processp process-buffer dont-create append process-get vector tramp-debug-message format "(%d) # " (error) read re-search-forward "\\S-" point-at-eol error tramp-error file-error "`%s' does not return a valid Lisp expression: `%s'"] 12 (#$ . 52199)]) #@74 Run command ARGS and return the output as a string. (fn VEC &rest ARGS) (defalias 'tramp-sudoedit-send-command-string #[385 "\303\304#\205\316r\305!q\210\306\307\310 C\3111\256X\205\250\312X\203N \204N\303\313\314U\2034\315\202I\316U\203>\315\202I\317U\203H\320\202I\321P#\210\322Y\205\250\314\316U\203\210\3231\207r\324!\203m\325!\202q\305\326\"q\210\307P\262\327\310 C\"\211\262)0\210\202\210\210\324!\203\224\330\331\"\262)\242\n>\205\250\303\332\333\334\"P$0\266\202\260\266db\210\335\336\337\340#\203\303\314\224`|\210\202\263deV\205\315\341\310 !)\207" [tramp-verbose tramp-inhibit-progress-reporter cl-struct-tramp-file-name-tags apply tramp-sudoedit-send-command tramp-get-connection-buffer 6 "\n%s" buffer-string (error) 3 message 0 "" 1 2 "Warning: " "Tramp: " 4 (error) processp process-buffer dont-create append process-get vector tramp-debug-message format "(%d) # " looking-back "[ \n]+" nil greedy substring-no-properties] 12 (#$ . 53600)]) (byte-code "\300\301\302\"\210\303\304!\207" [add-hook tramp-unload-hook #[0 "\300\301\302\"\207" [unload-feature tramp-sudoedit force] 3] provide tramp-sudoedit] 3)