From: "Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
To: "J.P." <jp@neverwas.me>
Cc: Damien Cassou <damien@cassou.me>, Eli Zaretskii <eliz@gnu.org>,
67937@debbugs.gnu.org
Subject: bug#67937: 30.0.50; auth-source-pass relies on epa-file being enabled
Date: Thu, 21 Dec 2023 16:29:25 +0100 [thread overview]
Message-ID: <871qbflg53.fsf@aarsen.me> (raw)
In-Reply-To: <871qbf4ocp.fsf@neverwas.me>
[-- Attachment #1: Type: text/plain, Size: 2945 bytes --]
Hi J.P,
"J.P." <jp@neverwas.me> writes:
> Hi Arsen,
>
> I too don't use the password store or auth-source-pass, but a couple
> dumb questions anyway (feel free to ignore):
>
> 1. Would it be possible to leverage the existing interface from
> `epa-hook' for decrypting these files? As a dirty example:
>
> (defun my-ensure-epa-file-name-handler (orig &rest args)
> (require 'epa-hook)
> (defvar epa-file-handler)
> (let ((file-name-handler-alist
> (cons epa-file-handler file-name-handler-alist)))
> (apply orig args)))
>
> (advice-add 'auth-source-pass--read-entry
> :around #'my-ensure-epa-file-name-handler)
>
> And if doing something like that (without the advice, obviously),
> could we somehow "weaken" the regexp of our fallback member's key so
> that `find-file-name-handlers' favors an existing, user-defined
> override? Alternatively, would it be too wasteful to first attempt to
> match the target file name against the option's current members
> before falling back on binding a modified value (or using your
> proposed hard-coded solution)? Or, wasteful or not, what about
> instead offering a new auth-source-pass option whose value is an
> alist of the same type as `file-name-handler-alist' that we use in
> place of or concatenate with the existing value at runtime?
I don't think ensuring the epa-hook is added here is preferable when a
solution that doesn't rely on hooks (one using epg, like in the patch I
posted) is quite short. Unless EPA does more than EPG for this (but it
does not seem to, to my novice eyes).
I'm not sure what you mean by 'hard-coding' here. These files are
always gpg files (that's how pass works), and they are always OpenPGP
encrypted. The usage of epg-decrypt-file is proposed by the help of
epa-decrypt-region IIRC.
> 2. How likely is it that someone actually depends on the perceived
> undesirable behavior currently on HEAD? Like, for example, could
> someone out there conceivably have a cron-like script that runs
> `epa-file-disable' before copying the encrypted secrets from the
> result of an `auth-source-search' to Nextcloud or something? If these
> weren't passwords, perhaps we could just shrug off such
> hypotheticals, but... (just saying).
I do not know, but this dependency is wrong either way, and can confuse
users and the auth-source cache.
The only reason I noticed this is because *something* (and I have no
idea what as of yet) somehow unhooks epa-file. When I noticed that, I
figured I could use epa-file-disable to provide a simpler reproducer. I
didn't actually notice the bug by using epa-file-disable (and I have
never intentionally ran epa-file-disable).
I'll be tracking that down next, but fixing this first seemed easier.
> Thanks,
> J.P.
Have a lovely day!
--
Arsen Arsenović
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 251 bytes --]
next prev parent reply other threads:[~2023-12-21 15:29 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-20 16:57 bug#67937: 30.0.50; auth-source-pass relies on epa-file being enabled Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-20 18:26 ` Eli Zaretskii
2023-12-20 19:11 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-20 19:21 ` Eli Zaretskii
2023-12-20 19:58 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-21 9:45 ` Eli Zaretskii
2023-12-21 10:18 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-21 14:33 ` J.P.
2023-12-21 15:29 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors [this message]
2023-12-21 23:39 ` J.P.
2023-12-22 7:33 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-22 14:27 ` J.P.
2023-12-22 14:53 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-22 19:40 ` Michael Albinus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-22 20:49 ` J.P.
2023-12-23 11:20 ` Michael Albinus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-23 15:06 ` J.P.
2023-12-23 15:26 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-23 16:59 ` Michael Albinus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-23 19:44 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-24 0:43 ` J.P.
2023-12-24 10:25 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-24 11:55 ` Michael Albinus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-24 9:47 ` Michael Albinus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-24 10:37 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-24 11:41 ` Eli Zaretskii
2023-12-24 12:00 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-24 15:00 ` Michael Albinus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-24 16:11 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-24 17:26 ` Michael Albinus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-29 8:27 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-29 9:38 ` Michael Albinus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-24 12:00 ` Michael Albinus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-24 12:14 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-24 15:03 ` Michael Albinus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-24 16:31 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-12-23 15:50 ` Arsen Arsenović via Bug reports for GNU Emacs, the Swiss army knife of text editors
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=871qbflg53.fsf@aarsen.me \
--to=bug-gnu-emacs@gnu.org \
--cc=67937@debbugs.gnu.org \
--cc=arsen@aarsen.me \
--cc=damien@cassou.me \
--cc=eliz@gnu.org \
--cc=jp@neverwas.me \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.