From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Richard Sent Newsgroups: gmane.emacs.bugs,gmane.emacs.erc.general Subject: bug#71578: 29.3; ERC 5.5.0.29.1: No documented support for setting server and nickserv authentication per-server Date: Sat, 15 Jun 2024 16:27:11 -0400 Message-ID: <8734pear4w.fsf@freakingpenguin.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="22309"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-erc@gnu.org To: 71578@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Jun 15 22:28:25 2024 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1sIa0d-0005WA-Dw for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 15 Jun 2024 22:28:23 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sIa0O-0007CP-Lm; Sat, 15 Jun 2024 16:28:08 -0400 Original-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 1sIa0J-0007Bd-A8; Sat, 15 Jun 2024 16:28:03 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sIa0J-00074T-0B; Sat, 15 Jun 2024 16:28:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1sIa0I-0006pn-Rg; Sat, 15 Jun 2024 16:28:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Richard Sent Original-Sender: "Debbugs-submit" Resent-CC: emacs-erc@gnu.org, bug-gnu-emacs@gnu.org Resent-Date: Sat, 15 Jun 2024 20:28:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 71578 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org X-Debbugs-Original-Xcc: emacs-erc@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.171848325026184 (code B ref -1); Sat, 15 Jun 2024 20:28:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 15 Jun 2024 20:27:30 +0000 Original-Received: from localhost ([127.0.0.1]:47443 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sIZzl-0006oE-GT for submit@debbugs.gnu.org; Sat, 15 Jun 2024 16:27:30 -0400 Original-Received: from lists.gnu.org ([209.51.188.17]:44344) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sIZzi-0006o0-Fv for submit@debbugs.gnu.org; Sat, 15 Jun 2024 16:27:27 -0400 Original-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 1sIZzg-0006zS-PB for bug-gnu-emacs@gnu.org; Sat, 15 Jun 2024 16:27:25 -0400 Original-Received: from mail-108-mta220.mxroute.com ([136.175.108.220]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sIZze-0006wn-Eq for bug-gnu-emacs@gnu.org; Sat, 15 Jun 2024 16:27:24 -0400 Original-Received: from filter006.mxroute.com ([136.175.111.3] filter006.mxroute.com) (Authenticated sender: mN4UYu2MZsgR) by mail-108-mta220.mxroute.com (ZoneMTA) with ESMTPSA id 1901d9543f400017a3.001 for (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Sat, 15 Jun 2024 20:27:19 +0000 X-Zone-Loop: dd3e8bcaef4882f6eb9d4eec4a3db38d8a8b3ff85e55 X-Originating-IP: [136.175.111.3] DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=freakingpenguin.com; s=x; h=Content-Type:MIME-Version:Message-ID:Date: Subject:To:From:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=okP0cjhriBr+5TSQh9fHQ9iszx+KCAP3rOdDnUUl2Ig=; b=owMDzuH8E/sLfrmvG0cTpSNReS XvE1dzix5KQqD/mpYURi9gn4tcHVyT+wnKSvFhg8SIGkQiKkuXXQdrW4McM+L51rA40s5/GGR2YUc 4y4siunkKcDhM73hf6UfHcUt8G7QCZVvx3K4ESXFrtIAa2/t68Xcj8pPG1oaOPMbPO+Xrtw82CoL+ s8DU2L06KURoBTDWtp2TCFAsAxqcy33M8vie8t/YLaUA7TAJsmXVCyWYO3HRUXdsZUa0dBa/kGzjY Py/LpJbUUwsU5J3VPlMI+xJvsn+PJWS0jvil/k7HA1S9yFrGnEkQfe26ZPFTJjlAyX5IOtpRHDILq bWT2LRGg==; X-Authenticated-Id: richard@freakingpenguin.com Received-SPF: pass client-ip=136.175.108.220; envelope-from=richard@freakingpenguin.com; helo=mail-108-mta220.mxroute.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:287313 gmane.emacs.erc.general:2527 Archived-At: Hi all, When using ERC, various servers have different policies for nickserv identification and server authentication. For example, irc.libera.chat forwards the server password to nickserv, while irc.pine64.org ignores server password and nickserv is authenticated separately. By default, erc uses auth-source for server authetication (erc-auth-source-server-function), and can optionally use auth-source for nickserv identification (erc-use-auth-source-for-nickserv-password). These settings are global and affect every server. This causes problems where credentials may be needlessly double-decrypted using auth-source. This is particularly annoying when auth-sources needs to decrypt data and requires manual intervention (such as touching a yubikey). This occurs because the auth-source specification for server authentication and nickserv authentication do not necessarily match so the cached result is not returned. (For example, libera.chat has iridium.libera.chat, mercury.libera.chat, etc. which are passed in the spec for nickserv authentication, while irc.libera.chat is passed for server authentication.) Ideally ERC should have a documented method for disabling server authentication and nickserv authentication on a per-server basis. As a workaround I found the following methods currently work: --8<---------------cut here---------------start------------->8--- ;; Note that these must be "", not nil ;; Pass :password "" to disable server authentication (erc-tls :server "irc.pine64.org" :nick "freakingpenguin" :password "") ;; Set nickserv password to "" to disable nickserv authentication (setq erc-nickserv-passwords '((Libera.Chat (("freakingpenguin" . ""))))) --8<---------------cut here---------------end--------------->8--- As far as I'm aware this isn't documented anywhere officially so there's no guarantee it will continue to work in the future. This is intended as a tracking ticket following discussion on #erc. In GNU Emacs 29.3 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.41, cairo version 1.18.0) Windowing system distributor 'The X.Org Foundation', version 11.0.12101012 System Description: Guix System Configured using: 'configure CONFIG_SHELL=/gnu/store/rib9g2ig1xf3kclyl076w28parmncg4k-bash-minimal-5.1.16/bin/bash SHELL=/gnu/store/rib9g2ig1xf3kclyl076w28parmncg4k-bash-minimal-5.1.16/bin/bash --prefix=/gnu/store/alh6ljiqdyfmgdb9jia5pbga60ihi8r8-emacs-29.3 --enable-fast-install --with-cairo --with-modules --with-native-compilation=aot --disable-build-details' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB Important settings: value of $EMACSLOADPATH: /home/richard/.guix-home/profile/share/emacs/site-lisp:/gnu/store/alh6ljiqdyfmgdb9jia5pbga60ihi8r8-emacs-29.3/share/emacs/29.3/lisp value of $EMACSNATIVELOADPATH: /home/richard/.guix-home/profile/lib/emacs/native-site-lisp value of $LANG: en_US.utf8 locale-coding-system: utf-8-unix Major mode: Eshell Minor modes in effect: eshell-syntax-highlighting-global-mode: t eshell-syntax-highlighting-mode: t eshell-prompt-mode: t eshell-hist-mode: t eshell-pred-mode: t eshell-cmpl-mode: t erc-list-mode: t erc-menu-mode: t erc-autojoin-mode: t erc-ring-mode: t erc-pcomplete-mode: t erc-track-mode: t erc-track-minor-mode: t erc-match-mode: t erc-button-mode: t erc-fill-mode: t erc-stamp-mode: t erc-netsplit-mode: t erc-services-mode: t erc-irccontrols-mode: t erc-noncommands-mode: t erc-move-to-prompt-mode: t erc-readonly-mode: t erc-networks-mode: t beacon-mode: t all-the-icons-completion-mode: t which-key-mode: t display-time-mode: t marginalia-mode: t savehist-mode: t vertico-mode: t global-git-commit-mode: t magit-auto-revert-mode: t eshell-proc-mode: t eshell-arg-mode: t eat-eshell-mode: t eat--eshell-local-mode: t shell-dirtrack-mode: t server-mode: t global-auto-revert-mode: t delete-selection-mode: t override-global-mode: t tooltip-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /gnu/store/v8r6az9568lv4p8srgamrmsm92krn130-emacs-transient-0.6.0/share/emacs/site-lisp/transient-0.6.0/transient hides /gnu/store/alh6ljiqdyfmgdb9jia5pbga60ihi8r8-emacs-29.3/share/emacs/29.3/lisp/transient /gnu/store/ilfyjbpfsc1lbqwyllx0kzqg9h31zic3-emacs-project-0.10.0/share/emacs/site-lisp/project-0.10.0/project hides /gnu/store/alh6ljiqdyfmgdb9jia5pbga60ihi8r8-emacs-29.3/share/emacs/29.3/lisp/progmodes/project /gnu/store/w89y5r65d5d0gfp1pv522ylyfmhh0iv2-emacs-xref-1.6.3/share/emacs/site-lisp/xref-1.6.3/xref hides /gnu/store/alh6ljiqdyfmgdb9jia5pbga60ihi8r8-emacs-29.3/share/emacs/29.3/lisp/progmodes/xref /gnu/store/y42sbhcwppj5wzfd2cn4kwjpni301psh-emacs-soap-client-3.2.3/share/emacs/site-lisp/soap-client-3.2.3/soap-client hides /gnu/store/alh6ljiqdyfmgdb9jia5pbga60ihi8r8-emacs-29.3/share/emacs/29.3/lisp/net/soap-client /gnu/store/y42sbhcwppj5wzfd2cn4kwjpni301psh-emacs-soap-client-3.2.3/share/emacs/site-lisp/soap-client-3.2.3/soap-inspect hides /gnu/store/alh6ljiqdyfmgdb9jia5pbga60ihi8r8-emacs-29.3/share/emacs/29.3/lisp/net/soap-inspect Features: (shadow sort mail-extr emacsbug two-column eshell-syntax-highlighting em-unix em-term em-script em-prompt em-ls em-hist em-pred em-glob em-extpipe em-cmpl em-dirs em-basic em-banner em-alias eshell ace-window sh-script smie treesit executable goto-addr git-rebase vc-hg vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs log-view bug-reference vc-git avy embark-consult consult magit-bookmark bookmark misearch multi-isearch cl-print erc-ibuffer erc-log erc-notify erc-page erc-sound erc-speedbar speedbar ezimage dframe erc-xdcc erc-dcc mule-util embark-org embark ffap network-stream epa-file erc-list erc-menu erc-join erc-ring erc-pcomplete erc-track erc-match erc-button erc-fill erc-stamp erc-netsplit erc-services erc-goodies erc erc-backend erc-networks erc-common erc-compat erc-loaddefs diary-lib diary-loaddefs cal-iso oc-basic ol-eww eww url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group gnus-undo gnus-start gnus-dbus gnus-cloud nnimap utf7 nnoo parse-time gnus-spec gnus-win ol-docview doc-view jka-compr image-mode exif ol-bibtex bibtex iso8601 ol-bbdb ol-w3m ol-doi org-link-doi face-remap org-agenda org-element org-persist xdg org-id avl-tree org-refile smartparens-org ob-plantuml org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src ob-comint org-pcomplete org-list org-footnote org-faces org-entities ob-emacs-lisp ob-core ob-eval org-cycle org-table org-keys oc org-loaddefs find-func cal-menu calendar cal-loaddefs ol org-fold org-fold-core org-compat org-version org-macs smartparens-config smartparens-text smartparens rainbow-delimiters hl-line rs-utils rs-ui beacon all-the-icons-completion all-the-icons all-the-icons-faces data-material data-weathericons data-octicons data-fileicons data-faicons data-alltheicons which-key diminish doom-dracula-theme doom-themes doom-themes-base moody time rs-tools ediff ediff-merg ediff-mult ediff-wind ediff-diff ediff-help ediff-init ediff-util daemons calc calc-loaddefs rect calc-macs rs-smtp smtpmail rs-skeleton rs-navigation marginalia orderless savehist vertico rs-media rs-magit magit-extras magit-submodule magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit magit-sequence magit-notes magit-worktree magit-tag magit-merge magit-branch magit-reset magit-files magit-refs magit-status magit package url-handlers magit-repos magit-apply magit-wip magit-log which-func imenu magit-diff smerge-mode diff diff-mode git-commit log-edit pcvs-util add-log magit-core magit-autorevert magit-margin magit-transient magit-process with-editor magit-mode magit-git magit-base magit-section cursor-sensor crm rs-integrations debbugs soap-client url-http url-auth url-gw nsm rng-xsd rng-dt rng-util xsd-regexp rs-ibuffer rs-guix rs-project rs-eshell esh-var esh-mode esh-cmd esh-ext esh-opt esh-proc esh-io esh-arg esh-module esh-groups esh-util eat term disp-table ehelp shell pcomplete color rs-erc rs-epg rs-elfeed rs-editing rg files-x vc vc-dispatcher rg-info-hack advice rg-menu rg-ibuffer rg-result wgrep-rg rg-history rg-header ibuf-ext ibuffer ibuffer-loaddefs cus-edit wgrep grep rs-dired ls-lisp dired-x rs-core server autorevert filenotify delsel comp comp-cstr warnings rx exec-path-from-shell rs-constants battery dbus rs-auth-source auth-source-pass rs-scheme skeleton geiser-guile info-look info transient format-spec geiser geiser-debug geiser-repl geiser-image geiser-capf geiser-doc geiser-menu geiser-autodoc geiser-edit geiser-completion geiser-eval geiser-connection tq geiser-syntax scheme geiser-impl help-fns radix-tree geiser-log geiser-popup view geiser-custom geiser-base rs-rust rs-password-store rs-org plantuml-mode xml dash edmacro kmacro use-package-bind-key bind-key rs-docker rs-csharp rs-cl slime easy-mmode apropos compile etags fileloop generator xref project arc-mode archive-mode noutline outline icons pp comint ansi-osc ansi-color ring hyperspec thingatpt browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util url-parse auth-source eieio eieio-core json map byte-opt url-vars rs-nnrss rs-gnus nnmail gnus-int mail-source gnus-range message sendmail mailcap yank-media puny dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader gnus nnheader gnus-util text-property-search time-date subr-x mail-utils range mm-util mail-prsvr wid-edit cus-load no-littering compat cl-macs gv cl-extra help-mode cl-seq use-package-core cl-loaddefs cl-lib bytecomp byte-compile lorem-ipsum-autoloads geiser-autoloads geiser-guile-autoloads xterm-color-autoloads rust-mode-autoloads xref-autoloads project-autoloads spinner-autoloads hydra-autoloads ht-autoloads lsp-mode-autoloads flycheck-autoloads rustic-autoloads password-store-autoloads pass-autoloads plantuml-mode-autoloads yaml-mode-autoloads docker-compose-mode-autoloads dockerfile-mode-autoloads web-mode-autoloads macrostep-autoloads slime-autoloads which-key-autoloads moody-autoloads doom-themes-autoloads shrink-path-autoloads nerd-icons-autoloads doom-modeline-autoloads diminish-autoloads beacon-autoloads all-the-icons-completion-autoloads memoize-autoloads all-the-icons-autoloads daemons-autoloads embark-autoloads consult-autoloads marginalia-autoloads orderless-autoloads vertico-autoloads popup-autoloads f-autoloads dumb-jump-autoloads avy-autoloads ace-window-autoloads tablist-autoloads pdf-tools-autoloads async-autoloads transient-autoloads magit-autoloads soap-client-autoloads debbugs-autoloads eshell-syntax-highlighting-autoloads eat-autoloads elfeed-autoloads s-autoloads rg-autoloads wgrep-autoloads rainbow-delimiters-autoloads markdown-mode-autoloads dash-autoloads smartparens-autoloads dirvish-autoloads exec-path-from-shell-autoloads compat-autoloads no-littering-autoloads guix-emacs 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 native-compile emacs) Memory information: ((conses 16 736637 84922) (symbols 48 48885 5) (strings 32 196059 11083) (string-bytes 1 6207371) (vectors 16 102534) (vector-slots 8 1693609 88877) (floats 8 1468 1512) (intervals 56 7256 3449) (buffers 984 41)) -- Take it easy, Richard Sent Making my computer weirder one commit at a time.