Subject: bug#57044: 29.0.50; tramp-error: Reading directory: Permission denied, /scp:motorolausb:/storage/emulated/0/

From: Michael Albinus <[email-masked]>
Date: Tue, 06 Sep 2022 13:18:32 +0200

Jean Louis <[email-masked]> writes:

Hi Jean,

> Now I could enter directory listing, I can open file in the root
> directory,

How did you solve the issue?

> These are directories:
>
>   drwxrwx---  2 root everybody  4096 Jun 16  1971 Alarms
>   drwxrwx---  4 root everybody  4096 Jun 16  1971 Android
>   drwxrwx---  6 root everybody  4096 May 21 08:26 Androzic
>
> I cannot enter into directories.

"everybody" is not your primary user group.

Tramp has been optimized to increase the speed recently. It does not
send the "test -r <file>" command anymore. Instead, it checks the
permissions of the file, which it knows already.

However, it has checked permissions for your primary group only. That's
not sufficient, so I've changed Tramp to respect the secondary groups as
well. Could you, please, check with recent git master whether it works
for you?

> Let us say file is this one:
>
>   -rw-rw----  1 root everybody    55 Sep  1 17:18 police-jinja.txt
>
> Then I can enter into file but cannot edit it, it is read only by
> Tramp. But if I use same ssh connection and enter into ssh from shell,
> I can edit the file, which means it is not really read only, just that
> Tramp thinks so.

That's another case, it is about a file being writable, and not only
readable. This is not a regression in Tramp (the same happens in Emacs
28). And I've tried your scenario out of Emacs. I have a file
/tmp/wheel, with the following permissions:

--8<---------------cut here---------------start------------->8---
# ll /tmp/wheel
-rwxr-x---  1 root  wheel  4 Sep  5 16:04 /tmp/wheel*
--8<---------------cut here---------------end--------------->8---

I have added myself to group wheel:

--8<---------------cut here---------------start------------->8---
# grep wheel /etc/group
wheel:*:0:root,albinus
--8<---------------cut here---------------end--------------->8---

However, I cannot change this file:

--8<---------------cut here---------------start------------->8---
# cat 123 >>/tmp/wheel
/tmp/wheel: Permission denied.
--8<---------------cut here---------------end--------------->8---

So this is the expected bahavior.

> NOTE: Tramp was working well, and I did not change my devices neither
> settings, I can only think that something was changed inside of Tramp.

Yes. As said, Tramp is permanently being optimized, mainly for
performance improvements. I try to avoid regressions, but it could
happen.

Best regards, Michael.