|
From: | Jim Porter |
Subject: | bug#60722: 30.0.50; [PATCH] Using Tramp to sudo in Eshell doesn't change prompt sigil |
Date: | Sat, 14 Jan 2023 13:59:10 -0800 |
On 1/11/2023 5:59 AM, Michael Albinus wrote:
Michael Albinus <michael.albinus@gmx.de> writes: Hi Jim,We shouldn't do this. user-uid-for-file would return the *local* uid, which is wrong. So please, for all handlers apply+ (user-uid-for-file . tramp-handle-user-uid-for-file)Except in tramp-archive.el, where ignore as handler seems to be appropriate.Thinking about, I believe we need an own function for tramp-archive.el. Something like (untested) --8<---------------cut here---------------start------------->8--- (defun tramp-archive-user-uid-for-file (filename) "Like `user-uid-for-file' for file archives." (user-uid-for-file (tramp-archive-gvfs-file-name filename))) --8<---------------cut here---------------end--------------->8--- This should return the local uid for local archives, and the remote uid for remote archives.
Thanks. See attached. I also updated the base implementation of 'tramp-handle-user-uid-for-file' to return -1 even if 'tramp-get-remote-uid' returns nil (some Tramp methods set the latter handler to be 'ignore').
I also added a new Eshell special variable, '$UID', which does about what you'd expect. This makes Eshell work like other shells, which also have a special '$UID' variable.
Finally, I added documentation to the manuals. I didn't add any Tramp regression tests though, since I wasn't sure of the right way to test this.
0001-Add-user-uid-for-file-to-get-the-effective-UID-for-r.patch
Description: Text document
[Prev in Thread] | Current Thread | [Next in Thread] |