From unknown Sun Jun 15 08:51:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#62991: 30.0.50; normal-backup-enable-predicate does not consider /dev/shm Resent-From: Vasilij Schneidermann Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 21 Apr 2023 10:50:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 62991 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 62991@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.168207415420074 (code B ref -1); Fri, 21 Apr 2023 10:50:02 +0000 Received: (at submit) by debbugs.gnu.org; 21 Apr 2023 10:49:14 +0000 Received: from localhost ([127.0.0.1]:39440 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ppoKI-0005Di-4e for submit@debbugs.gnu.org; Fri, 21 Apr 2023 06:49:14 -0400 Received: from lists.gnu.org ([209.51.188.17]:35460) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ppoKF-0005DW-73 for submit@debbugs.gnu.org; Fri, 21 Apr 2023 06:49:12 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ppoKD-0007iW-B1 for bug-gnu-emacs@gnu.org; Fri, 21 Apr 2023 06:49:09 -0400 Received: from mout-p-101.mailbox.org ([2001:67c:2050:0:465::101]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_CHACHA20_POLY1305:256) (Exim 4.90_1) (envelope-from ) id 1ppoKA-0007wo-Is for bug-gnu-emacs@gnu.org; Fri, 21 Apr 2023 06:49:09 -0400 Received: from smtp1.mailbox.org (smtp1.mailbox.org [10.196.197.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-p-101.mailbox.org (Postfix) with ESMTPS id 4Q2rqf3C7Mz9sdT for ; Fri, 21 Apr 2023 12:49:02 +0200 (CEST) Date: Fri, 21 Apr 2023 12:49:01 +0200 From: Vasilij Schneidermann Message-ID: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="piKzJwPFOGKgI0ah" Content-Disposition: inline Received-SPF: pass client-ip=2001:67c:2050:0:465::101; envelope-from=mail@vasilij.de; helo=mout-p-101.mailbox.org X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.6 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.6 (--) --piKzJwPFOGKgI0ah Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable I've found that the `pass` password-store creates temporary files under /dev/shm rather than /tmp and editing those files with emacs creates backup files (which may leak passwords outside that directory if `backup-directory-alist` is customized to place them elsewhere)`. This seems to be due to `normal-backup-enable-predicate` specifically testing for /tmp (and two other temporary directories), but not other directories backed by a tmpfs file system (such as /dev/shm). There does not appear to be a customizable to extend the list of directories it's checking for either. One more candidate for exclusion is the /run/user/ directory (it's backed by tmpfs as well, but has different uses). In GNU Emacs 30.0.50 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.37, cairo version 1.17.8) of 2023-04-15 built on odonien Repository revision: c60b59e04c3776a90adaa8c8fe53af3075a833b8 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12101007 System Description: Arch Linux Configured using: 'configure 'CFLAGS=3D-g -ggdb -O0'' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSYSTEMD LIBXML2 M17N_FLT MODULES NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB Important settings: value of $LC_MESSAGES:=20 value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Lisp Interaction Minor modes in effect: tooltip-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t line-number-mode: t indent-tabs-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug message mailcap yank-media puny dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config gnus-util text-property-search time-date subr-x mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader cl-loaddefs cl-lib sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty make-network-process emacs) Memory information: ((conses 16 36403 15371) (symbols 48 5177 0) (strings 32 13201 2082) (string-bytes 1 377158) (vectors 16 9346) (vector-slots 8 149422 15364) (floats 8 21 24) (intervals 56 212 0) (buffers 984 10)) --piKzJwPFOGKgI0ah Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAABCAAdFiEE0dAcySl3bqM8O17WFmfJg6zCifoFAmRCahoACgkQFmfJg6zC ifr+UAgAl/ETWECHicmhrUvs9q5gScGyvOiN7khY9+EPT4oW/eds926qc6h7EvKO V5ZQ1BhEv4e2sZ9TCU5/sBUuPzZyBJVPjUclXKmdo711RUqrjKRUAl1bQPnoarw4 pwq2Zakdi6KHvthbXrWKgFNvYOm2AgZLQPY08xciDSyKDYMNGpiFPGtRDGVpnvnZ UqNJLc8HKszOJRc6SUitNlekEs+LMwnlzssA4oyG+SOtoDi545A6n06ryxKeyKus 6RULcN96gq33k4efjx+yORbNv/2Iylvh9eLULg8n/CdR7KtNmQBnlFFsXSZ8UqNC RVL2QlvNoMtMSjtiq06KrboMbrL5og== =ppvI -----END PGP SIGNATURE----- --piKzJwPFOGKgI0ah-- From unknown Sun Jun 15 08:51:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#62991: 30.0.50; normal-backup-enable-predicate does not consider /dev/shm Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 21 Apr 2023 11:57:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 62991 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Vasilij Schneidermann Cc: 62991@debbugs.gnu.org Received: via spool by 62991-submit@debbugs.gnu.org id=B62991.16820781704424 (code B ref 62991); Fri, 21 Apr 2023 11:57:02 +0000 Received: (at 62991) by debbugs.gnu.org; 21 Apr 2023 11:56:10 +0000 Received: from localhost ([127.0.0.1]:39511 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pppN4-00019H-CJ for submit@debbugs.gnu.org; Fri, 21 Apr 2023 07:56:10 -0400 Received: from eggs.gnu.org ([209.51.188.92]:53022) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pppN2-000194-QL for 62991@debbugs.gnu.org; Fri, 21 Apr 2023 07:56:09 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pppMw-0004Ug-K6; Fri, 21 Apr 2023 07:56:02 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=PhK7Xhau07NY6JdyPJ0Lia2JbiPW/4dpLx4gNxXLeI8=; b=Xzu9UZ0Xfn+U AQvG+5LfFbVapHRwk9/xV7U5QQdefMwwA9QC+Fg8+Lot8OviQqMjHlVYI2SoT4EPG03n0EuPRJHHH kmVGmVHYqlqnRCeKd+BrlufZCEXdjZdsvW3PvHur13MwQMUiX9itory+2vxb9jGhdT5KIDQau42Nq 3e0Wtbr86j4DY4dfnyJPfORn0h9HveSEDaFiv+CPhKxMUzG8ldYD2B67BbJFTk3YbpN/HOuftbMKX T0s7yKC/moOSsOLRRUWITnZZLvivHlO4DPsUNEcwGdDk8z2m2WRwYzCUqkq6TsA7ydTM80JEsCcPK HheG/lWo+s2PBjfYI4XW2w==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pppMw-0005Im-2e; Fri, 21 Apr 2023 07:56:02 -0400 Date: Fri, 21 Apr 2023 14:56:18 +0300 Message-Id: <83cz3x4ffh.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from Vasilij Schneidermann on Fri, 21 Apr 2023 12:49:01 +0200) References: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Date: Fri, 21 Apr 2023 12:49:01 +0200 > From: Vasilij Schneidermann > > I've found that the `pass` password-store creates temporary files under > /dev/shm rather than /tmp and editing those files with emacs creates > backup files (which may leak passwords outside that directory if > `backup-directory-alist` is customized to place them elsewhere)`. This > seems to be due to `normal-backup-enable-predicate` specifically testing > for /tmp (and two other temporary directories), but not other > directories backed by a tmpfs file system (such as /dev/shm). There > does not appear to be a customizable to extend the list of directories > it's checking for either. One more candidate for exclusion is the > /run/user/ directory (it's backed by tmpfs as well, but has > different uses). We could indeed teach normal-backup-enable-predicate about /dev/shm on systems where that is appropriate, but I'm curious why you say this is not customizable: normal-backup-enable-predicate is called via a variable, backup-enable-predicate, so you could customize that by writing your own predicate function, and assigning backup-enable-predicate to that function. Or what am I missing? From unknown Sun Jun 15 08:51:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#62991: 30.0.50; normal-backup-enable-predicate does not consider /dev/shm Resent-From: Vasilij Schneidermann Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 21 Apr 2023 12:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 62991 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: 62991@debbugs.gnu.org Received: via spool by 62991-submit@debbugs.gnu.org id=B62991.16820790295779 (code B ref 62991); Fri, 21 Apr 2023 12:11:02 +0000 Received: (at 62991) by debbugs.gnu.org; 21 Apr 2023 12:10:29 +0000 Received: from localhost ([127.0.0.1]:39533 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pppav-0001V9-4l for submit@debbugs.gnu.org; Fri, 21 Apr 2023 08:10:29 -0400 Received: from mout-p-201.mailbox.org ([80.241.56.171]:55244) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pppat-0001Us-9e for 62991@debbugs.gnu.org; Fri, 21 Apr 2023 08:10:27 -0400 Received: from smtp1.mailbox.org (smtp1.mailbox.org [10.196.197.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-p-201.mailbox.org (Postfix) with ESMTPS id 4Q2tdR66wsz9skM; Fri, 21 Apr 2023 14:10:19 +0200 (CEST) Date: Fri, 21 Apr 2023 14:10:18 +0200 From: Vasilij Schneidermann Message-ID: References: <83cz3x4ffh.fsf@gnu.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="wI1SIGKLJzxs+4/A" Content-Disposition: inline In-Reply-To: <83cz3x4ffh.fsf@gnu.org> X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --wI1SIGKLJzxs+4/A Content-Type: text/plain; charset=utf-8 Content-Disposition: inline > We could indeed teach normal-backup-enable-predicate about /dev/shm on > systems where that is appropriate, but I'm curious why you say this is > not customizable: normal-backup-enable-predicate is called via a > variable, backup-enable-predicate, so you could customize that by > writing your own predicate function, and assigning > backup-enable-predicate to that function. Or what am I missing? It's a defvar, not a defcustom. The code doesn't seem to have been touched in a while, so I assume setting that variable is safe, but if it's intended to be used that way, a defcustom would communicate that option clearly. I think a list of additional directories to search would be a better candidate for a defcustom though. --wI1SIGKLJzxs+4/A Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAABCAAdFiEE0dAcySl3bqM8O17WFmfJg6zCifoFAmRCfScACgkQFmfJg6zC ifqW+AgAiowC/1AZhwHqN5mJYH6ICNfJuBub8Jj8F/XdRCOecGEiHblCw3t0++NY xOLzfLlIB3P3ZVFmZ3+0Z3wvSY9cMoW74gu0UCgIHyArBlZdLQnBo0sxp+w967Pg Q/z0I9RPVI5gGy35lohptwRUvuTnfUb/eHDStRSl7iX9sLNtlL+Np99zqPjBbAd1 hOe7Qaz8zkmw6jSjGVsSuBSdhe3wNkyEI6K1kNP+MhVGbJ/1q95i6JWa+zmJeKWV 43051yfHkMlxZ4HGPEprH8RT7r6A0x4Caks/oLcmS7uXBvQn1TBZlA0kHyliB67v T4go2xdOEnRnzmQIEJmUoDkHRPSKfw== =IzxU -----END PGP SIGNATURE----- --wI1SIGKLJzxs+4/A--