From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Michael Albinus via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Newsgroups: gmane.emacs.bugs Subject: bug#68376: 30.0.50; auth-source-search doesn't support numeric port on macOS Date: Thu, 11 Jan 2024 11:12:17 +0100 Message-ID: <87a5pcp4am.fsf@gmx.de> References: <2DF5150B-0710-4417-ADDD-BBFD449A4DBB@korins.ky> Reply-To: Michael Albinus Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="2032"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: 68376@debbugs.gnu.org To: "Kirill A. Korinsky" Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Jan 11 11:13:30 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 1rNs41-0000KH-15 for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 11 Jan 2024 11:13:29 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rNs3e-0002rl-OT; Thu, 11 Jan 2024 05:13:06 -0500 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 1rNs3c-0002rO-TX for bug-gnu-emacs@gnu.org; Thu, 11 Jan 2024 05:13:04 -0500 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 1rNs3c-0003sZ-Ku for bug-gnu-emacs@gnu.org; Thu, 11 Jan 2024 05:13:04 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rNs3Z-0006zM-Ni for bug-gnu-emacs@gnu.org; Thu, 11 Jan 2024 05:13:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 11 Jan 2024 10:13:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 68376 X-GNU-PR-Package: emacs Original-Received: via spool by 68376-submit@debbugs.gnu.org id=B68376.170496794726817 (code B ref 68376); Thu, 11 Jan 2024 10:13:01 +0000 Original-Received: (at 68376) by debbugs.gnu.org; 11 Jan 2024 10:12:27 +0000 Original-Received: from localhost ([127.0.0.1]:58770 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rNs30-0006yT-KN for submit@debbugs.gnu.org; Thu, 11 Jan 2024 05:12:26 -0500 Original-Received: from mout.gmx.net ([212.227.17.22]:38311) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rNs2y-0006yD-3Z for 68376@debbugs.gnu.org; Thu, 11 Jan 2024 05:12:25 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1704967939; x=1705572739; i=michael.albinus@gmx.de; bh=LYeVcbpwbxdtZF4STJ0M26Dxy7yfo42YYXasDSFufkQ=; h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References: Date; b=pD7ZQg366+hbcO4UsycGa0NtnKt+Ai+qUEO/HK3WjFT2q/+bQ/Z9GvTWv7Qjf2RH DesIG+s6YQ4uMC1DJxj8JgitJXkLWB9LO3Y3HG9I8jK+sOhPhTvPjgmovL+khJ0mA +wuR/7LBIwp13uHIUSK7urz0EvGoanbpd6/Wk331/wqrEAYv+eTwLB+3vNEDEDNvE 0AlrPbDfJdD7f2EsiOvAe+ORbOwJt2IfEO4ckd64dTwX7n0JcHNNYMpu2OLgnvTxH 1RPlynOLauveLkQhpOeIKY42QbC/N090GpTum45DwiIdAENlpwqE3BokoRPGnSNWO ieh0b2YBVon0XvyM3w== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Original-Received: from gandalf.gmx.de ([185.89.39.3]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N1wll-1rCU6l3n57-012HhI; Thu, 11 Jan 2024 11:12:19 +0100 In-Reply-To: <2DF5150B-0710-4417-ADDD-BBFD449A4DBB@korins.ky> (Kirill A. Korinsky's message of "Thu, 11 Jan 2024 01:57:21 +0100") X-Provags-ID: V03:K1:ztH6aggPbNT4h1D8J4XR+vab58QwWPGxWA4fNqYk7E+gFY+Z0cF oo+RRihtz6eKTJPTEARGugj/6WYhdRRvChPyP0+up3JnQ2cjL18ktENcRg/C8NkmtKzliKA /F0K1M42VS6/JQ4K5RPn9Xw5ceuF1kMTqb19PrCjFUsawu0C0yOZiCeledut/hhCDoVmaAe 2iJXQ5hJkmgS4l/vIgWqA== UI-OutboundReport: notjunk:1;M01:P0:H3GRLCXEFN4=;EMI9kxTf8JAwKaxmM0uy4k/JoMU vDm2quiNojK9pyibY7eaDWOPmHSep9FCBnn0NcpQS9aCU4/K/OEoJatlQW6PLkUC3JM5oQMAt J9ud2rjjf62uhngeH8eWKVSxQzNi8YCJkixF9MELjAfSXN81t+vOmWzsO+tS1+GmdsYCxrYPG zloLEOqFfsxWeu04BXIC5c3jGURnQZq4V68PQzl+R5PT2F27CkdFGGTIV9aWslezCMrkWHpYM wIviKPu//pqkQimMaXMbznNYp/34eSDiCsbFDzzwCv/VnqLVss7vp2jsVX4WB0QLTp4U+XdAk bLmdDD0dHEz53LEo3JkaUSovfFw4mApcqW55yfKPJKgRfwhTRwlFvSZO+nuv9VlLB92tu1ksG OgPkOZMhlcSkzWWMsq4WOnrlbBm/DJwBXeXuIRujYlyrGVNYGSieds+CTYKXoLDLgHiKlvhLq 2TO+exZNvQCrpQ3SQxCPgajgMYrXEchu4/FBnppgisu6KRl0P6Fjau1l58sDmaWQNq2ReZQpa yZvrTHaQSbSdYOQ2Gyp4t09I5ClEXYEmOEItEDcj8ZgIZh+h5G6am6m4Qg+SglBz2xOzVE3W0 PqpQoAIUk4pDieZFPiNYMQKZmK4K7FVRSpoqc7pjVwT/U/6vtNw5HD3goU2Qg2HjrR93+lXwD GpRUCFc7L2iFU2PVtZQ6zv4QFsUalOHeshMDqACxZobLC80zD6WBmxehsAX3obbyE7QJp7zIx wTf3CDisC0mR00T8gB/0JRjtrF/oNVoWU4R4vPY/mOKSUKaOfZRhwevKqPtj5BOBvppjWm5x 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:277878 Archived-At: --=-=-= Content-Type: text/plain "Kirill A. Korinsky" writes: > Greeting, Hi Kirill, > I'd like to share a bug with simple reproducer: > > (auth-source-search :host "some.host" :port "123" :user "user") > (auth-source-search :host "some.host" :port 123 :user "user") > > The first line works as expected, and the second one fails as: > > Debugger entered--Lisp error: (wrong-type-argument stringp 123) > call-process("/usr/bin/security" nil t nil "find-generic-password" > "-g" "-c" "some.host" "-a" "user" "-s" 123) call-process requires strings as arguments. This must be converted in auth-source-macos-keychain-search-items if needed. Could you, please, check whether the appended patch works? I cannot test myself, I have no macOS machine. Best regards, Michael. --=-=-= Content-Type: text/x-patch Content-Disposition: attachment diff --git a/lisp/auth-source.el b/lisp/auth-source.el index 369cf4dca2e..cf93cb05fba 100644 --- a/lisp/auth-source.el +++ b/lisp/auth-source.el @@ -1946,18 +1946,20 @@ auth-source-macos-keychain-search (returned-keys (delete-dups (append '(:host :login :port :secret) search-keys))) - ;; Extract host and port from spec + ;; Extract host, port and user from spec (hosts (plist-get spec :host)) - (hosts (if (and hosts (listp hosts)) hosts `(,hosts))) + (hosts (if (consp hosts) hosts `(,hosts))) (ports (plist-get spec :port)) - (ports (if (and ports (listp ports)) ports `(,ports))) + (ports (if (consp ports) ports `(,ports))) (users (plist-get spec :user)) - (users (if (and users (listp users)) users `(,users))) + (users (if (consp users) users `(,users))) ;; Loop through all combinations of host/port and pass each of these to - ;; auth-source-macos-keychain-search-items + ;; auth-source-macos-keychain-search-items. Convert numeric port to + ;; string (bug#68376). (items (catch 'match (dolist (host hosts) (dolist (port ports) + (when (numberp port) (setq port (number-to-string port))) (dolist (user users) (let ((items (apply #'auth-source-macos-keychain-search-items @@ -2019,7 +2021,7 @@ auth-source-macos-keychain-search-items (when port (if keychain-generic (setq args (append args (list "-s" port))) - (setq args (append args (if (string-match "[0-9]+" port) + (setq args (append args (if (string-match-p "\\`[[:digit:]]+\\'" port) (list "-P" port) (list "-r" (substring (format "%-4s" port) --=-=-=--