Revert "Change the default socket location for pinentry"

This reverts commit e34fbdee8a.
It turned out that the address is fixed in Pinentry itself.
This commit is contained in:
Daiki Ueno 2016-02-22 10:45:53 +09:00
parent e19c1c3017
commit 5e34c3671a

View file

@ -26,9 +26,6 @@
;; This package allows GnuPG passphrase to be prompted through the ;; This package allows GnuPG passphrase to be prompted through the
;; minibuffer instead of graphical dialog. ;; minibuffer instead of graphical dialog.
;; ;;
;; This feature requires GnuPG 2.1.5 or later and Pinentry 0.9.5 or
;; later, with the Emacs support compiled in.
;;
;; To use, add "allow-emacs-pinentry" to "~/.gnupg/gpg-agent.conf", ;; To use, add "allow-emacs-pinentry" to "~/.gnupg/gpg-agent.conf",
;; reload the configuration with "gpgconf --reload gpg-agent", and ;; reload the configuration with "gpgconf --reload gpg-agent", and
;; start the server with M-x pinentry-start. ;; start the server with M-x pinentry-start.
@ -41,15 +38,17 @@
;; where pinentry and Emacs communicate through a Unix domain socket ;; where pinentry and Emacs communicate through a Unix domain socket
;; created at: ;; created at:
;; ;;
;; ~/.emacs.d/pinentry/pinentry ;; ${TMPDIR-/tmp}/emacs$(id -u)/pinentry
;; ;;
;; The protocol is a subset of the Pinentry Assuan protocol described ;; under the same directory which server.el uses. The protocol is a
;; in (info "(pinentry) Protocol"). ;; subset of the Pinentry Assuan protocol described in (info
;; "(pinentry) Protocol").
;;
;; NOTE: As of August 2015, this feature requires newer versions of
;; GnuPG (2.1.5+) and Pinentry (0.9.5+).
;;; Code: ;;; Code:
(eval-when-compile (require 'cl-lib))
(defgroup pinentry nil (defgroup pinentry nil
"The Pinentry server" "The Pinentry server"
:version "25.1" :version "25.1"
@ -77,7 +76,10 @@
(defvar pinentry--prompt-buffer nil) (defvar pinentry--prompt-buffer nil)
(defvar pinentry--socket-dir (locate-user-emacs-file "pinentry") ;; We use the same location as `server-socket-dir', when local sockets
;; are supported.
(defvar pinentry--socket-dir
(format "%s/emacs%d" (or (getenv "TMPDIR") "/tmp") (user-uid))
"The directory in which to place the server socket. "The directory in which to place the server socket.
If local sockets are not supported, this is nil.") If local sockets are not supported, this is nil.")
@ -170,17 +172,16 @@ will not be shown."
(ignore-errors (ignore-errors
(let (delete-by-moving-to-trash) (let (delete-by-moving-to-trash)
(delete-file server-file))) (delete-file server-file)))
(cl-letf (((default-file-modes) ?\700)) (setq pinentry--server-process
(setq pinentry--server-process (make-network-process
(make-network-process :name "pinentry"
:name "pinentry" :server t
:server t :noquery t
:noquery t :sentinel #'pinentry--process-sentinel
:sentinel #'pinentry--process-sentinel :filter #'pinentry--process-filter
:filter #'pinentry--process-filter :coding 'no-conversion
:coding 'no-conversion :family 'local
:family 'local :service server-file))
:service server-file)))
(process-put pinentry--server-process :server-file server-file)))) (process-put pinentry--server-process :server-file server-file))))
(defun pinentry-stop () (defun pinentry-stop ()