Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rXZJu-00BJVP-5A for pgsql-hackers@arkaria.postgresql.org; Wed, 07 Feb 2024 04:13:59 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1rXZJs-007tGS-M9 for pgsql-hackers@arkaria.postgresql.org; Wed, 07 Feb 2024 04:13:56 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rXZJr-007tGK-Vq for pgsql-hackers@lists.postgresql.org; Wed, 07 Feb 2024 04:13:56 +0000 Received: from mail-roabra01olkn2044.outbound.protection.outlook.com ([40.92.96.44] helo=BRA01-ROA-obe.outbound.protection.outlook.com) by makus.postgresql.org with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rXZJj-005TOJ-MN for pgsql-hackers@postgresql.org; Wed, 07 Feb 2024 04:13:53 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HgsyrrKIFuTk72sOPIdvFgzrjcwOwvTT6G+LhzYWmjt6R+BUDMx4cQhAcicFjpOmORHxLSvFy304FGQ4bsUL0Lzm5tTMdd3dEXmucysLH88lPMM75AJ/SNa5nRac/wQsS/5yGPNYR678FjDgESmo1VnAHJIX5+Nuh774bSCXbz05UYcTWBkGRX7vAkXppbDi1T7eJrqiNksGcsYoZXJOgS9WnNhaI6OyGte3ISYlcbSeAquNcSvVAwpSO7pqoaIVo/G8L5Sm5VN9T1lSk4O9FSXEdCAVPLR1IScN9T0EW7W4J8F4wI5Vwm9yk1fkWwF5YM8tcQTnWOMsJWlqFmC1OQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=HkG8+Xvorx9wrs11YJO/+/4N8GCdzUKA8fNDO9i9fBg=; b=Xxo976TrGFhEofGKd1+p2y7K+guMsxmEyLYxKmYUVyEcXT97YDGBX4iNJoPFUWJy3DFG/1V5fTtGdgUzW58X2Froe0BuAv+CqaUKGDBtNYAbblrOjtUfno2d7crzzy8/CZOiYDE/34ooehhEFQZfzfdXw5uSyGCui1RcNfDhxRo0+D9sbGXe8N9GzYPaCciz6CBQXzIOd9kJN66lGj1pU6lzAxXOIs4gjFwcgpVNX/nj2EjMCiXS9bEGVK5LFMt4LzAmYctpXytmVsqVkD8BYzHQ9xcfrBtNAij04ssl4qYY4xBNPNQHjuE9JRMdWeS8aWn/ZGjnvLAOSTbv/aWdWg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Received: from CP8P284MB2496.BRAP284.PROD.OUTLOOK.COM (2603:10d6:103:2dc::11) by CP4P284MB2498.BRAP284.PROD.OUTLOOK.COM (2603:10d6:103:2ad::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7249.37; Wed, 7 Feb 2024 04:13:41 +0000 Received: from CP8P284MB2496.BRAP284.PROD.OUTLOOK.COM ([fe80::ce6:bf75:3d4a:97cf]) by CP8P284MB2496.BRAP284.PROD.OUTLOOK.COM ([fe80::ce6:bf75:3d4a:97cf%6]) with mapi id 15.20.7249.035; Wed, 7 Feb 2024 04:13:41 +0000 From: Maiquel Grassi To: Nathan Bossart CC: Erik Wienhold , "pgsql-hackers@postgresql.org" Subject: RE: Psql meta-command conninfo+ Thread-Topic: Psql meta-command conninfo+ Thread-Index: AQHaWRQuU7L2MD2CX0quiO/hLxQK8bD9n9eAgAAOagCAABlrgoAABsOAgAABrYCAAAkRMoAAAaIAgABfmwI= Date: Wed, 7 Feb 2024 04:13:40 +0000 Message-ID: References: <20240206181919.GA3853632@nathanxps13> <20240206210605.GA3903769@nathanxps13> <20240206211205.GA3903996@nathanxps13> <20240206215022.GA3452@nathanxps13> In-Reply-To: <20240206215022.GA3452@nathanxps13> Accept-Language: pt-BR, en-US Content-Language: pt-BR X-MS-Has-Attach: yes X-MS-TNEF-Correlator: msip_labels: x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [cEdHVRUON5YUudCNkKE5fLP8WItX9HpH] x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CP8P284MB2496:EE_|CP4P284MB2498:EE_ x-ms-office365-filtering-correlation-id: 4ea95daf-c367-464a-e203-08dc27932a6b x-ms-exchange-slblob-mailprops: 9qw5+ftluCAG+PuFHzR7/kBNHHfoDX656LcUFoVUm3R5rviEN5pKEv5I4Eo8q1+45Dg3GDJyCkdiYMfEkmgoNzNJTtNoMesg+wibDN6hVYLce8XbL0nAmB9AYv+YRns7mBZ4hMfWkFfr0dpJFnPS6o1oo5h2n4LVJmJStSvBskcfYh9HF0ylFH7N/vM/TUdovYajEnHOqhKrjPkyAMxKlYt0lTNF6Ntm6YMQA+OYF6fjw4E3z7/+sYMPEUMffAY6dNvp5z//klqsM3J5vHYWrjyoLmcdDmvgpwyCc31FEM2l5WDVWpGKEsd0O6MUPqq+OBM9JeNKveKFP2I7A0hDomQevf6AAyno5cpI9Mc7XhRFTR1bvNfWBthh54lQ1w2RLImMjsYgsTrFSfPI3M/pU8lZqb6QA3UCnj4e9V1qDuTdPKvzWVvWHTGwHa+Fa4X1Y366O53cLa1T0Jdxq6nMbcxRkp8Oraw024ggXFRLy66cekXPRh3COYEjJq7f5/otRTvnkiAOowEmOsWa0iZK4Ii0v4+KcmRTPmqDkWttkNcw7aXTn79SBavuj0TzlUNT2tFJjrj4O6+TunWprn25ddPIBmxsYnlw3gTZpLLOwctqYeOpQrqaqbaanzocuvtbE9JtGWnfpIXKO5H7jBzLcilffKEeyt42YDEESmBsmFPqxPMG4O6KYZJMFWTJ73SKGkSPAsmmn0Y= x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: pqLwieyOJIQMkfr54sW5Cj6x5FWgFsZwzVkKqv3lSwLjC+SxtS+yKeHeVjqLZefYrCzIGxyGQrisW+00vuSmTU7eoKd772bbJQ8K12A4UzX0ITuE76kMre3IrpbA/ib2JNnytdzqGQcKafFcT8szKoPyIygB9m50iO4yRXVPb5cuWmHAeG3Bq0WaGoZ1kcIA6SLDIzyVyt5c2kvPvTzcoHqTQnssQHNvjtxORXNI2S5gnlBAmvmoJBDN+MNTTe2oRXxS/bExaLM0UGH/ncGv+2fLtJ8idLiooe818TE2c7eXaISkhwvYNeQ1/DjHTxQ9TkwM19YuI2xUUnt8gM1Tg9UucYgwR0WcmTo/b36PV0+gk1lnc8rHu4I+99gT4vY1KTF1ygaR5iFy4HNH6vC7QEDr5/xB8l6P4JubDfqupAE4GG6JoEiBnxh6RQ7wynodWk9y5wrU50/0/6hw6RNH6crIZtdkHjOJCVgO6LtdsWGLh9sI8gT4ecf/1xjQ+JCvHNKVYpsO7huJG6PA0cIi9lswIDoKo85VpUA750hoayUEKPLeFtn0cDOxqnUiuBwrRwmtPk5jAfK1+rZBkIPfrtwPms28xN49Z1q8CbHQYCw84hTbOkaa5TL2J5o51vw5 x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?QmrRz3WGkkQcd/vNUubTE5kFkxnYtntTbknXMU+ypGqNj3STB8zUxagmqn?= =?iso-8859-1?Q?kUvAVxIZqCMgyyWVWy1G8t7AiVz01f6hh2ff7oa3LV9TOqh+JSh/ifUHGw?= =?iso-8859-1?Q?vqyWxxvqnA7rPhSaR9Hsp5RqdP2n6PLJvjPVHS9TndGH2bvKLTV/jr6+XT?= =?iso-8859-1?Q?yhD5mQnGkfQbASrhnxMy/npTydHBKSFAUY+oeRxl/fLwoklbCnl9OE6nGk?= =?iso-8859-1?Q?nCOk7g12WxFXAwQWv7ie8nK87LecmvpCKtBEWUP3rVdhNjQ0m3+D5M7olj?= =?iso-8859-1?Q?E9/ZPHw2RFnJWHcqTcyAG5UK7Du+2LK8JuFT26eXuYOu1i10uJ9my86Ne3?= =?iso-8859-1?Q?zvQTX5x5DvdWzVOZ7rYhH79NuoGyus/7gmWSn9WGbihqTtmoZ7WAUWMp6H?= =?iso-8859-1?Q?KcajwBW7waNKO/Fwv332YBzo+uTXit3NUsOlXEYmX+6h59iulEiS4AI3lb?= =?iso-8859-1?Q?D6ZfNnsBoo77L5uLLiKpuBZ2FNyu54bM2Z+BuZCfeZxklV/IQLVvjJaSFt?= =?iso-8859-1?Q?80cMwHjsxL1c1J91OD2huAJy2TdmO1h74uTK9sAE27BZzrcJ+QB9eU8L8v?= =?iso-8859-1?Q?xSFapd2xB/n6QnRu+PRrp5UTo98gzfFqunmx9lv8bi+KGD0FwZ+/9SWjGa?= =?iso-8859-1?Q?23vmmGOWWOvSwV8hOTQjYx9vRfCEuluebsdsWAe6sleurI9uofwtEKofY7?= =?iso-8859-1?Q?xoyAUajXZLjuBz1XlPS3wLzJAbJ7eDDSjELzQ1rNbf5FZ2vWdbU92WTDFJ?= =?iso-8859-1?Q?FK8VBdczCdAB69x7w+14pX6FCY1YF1yAyJLTXADRDehXkAoLD8j29SXKdQ?= =?iso-8859-1?Q?kqCq+ahoqizqxxi4kSNHbMHJfRt4xZ0lNiWeOawhIrkadNezZ6uo92VOLz?= =?iso-8859-1?Q?Ch4fZUEtN75+Bzhho6j7S9Ene9nQXwTwoDrzsOCrVYrCtZf3CwNqvUPbg2?= =?iso-8859-1?Q?/FSxG5Kk7RJEyRbj7UR9c+zRXWzaOwZAItm/5TAKN5qDHD0TFM8kng5TSc?= =?iso-8859-1?Q?MBo+Vn5dB8fow0VnL5+WciZmzZnI/tqugmtAOnndoR0Fp5axi1nLToxMPm?= =?iso-8859-1?Q?asH3kR+wLJGab/PW4VTfFTmFD4EdchA0wMQyQOiEbdGwAJUQCd00nw77OR?= =?iso-8859-1?Q?2oAgPVboOns/7cDNNWqhsNkdGz/+y9hRN5douLWl656XM+p7SZtnYeTQsC?= =?iso-8859-1?Q?eipSeXhPLRcuGXamU2RhhW2AvEeT3KZX07X7SF/DU9yq8diMFCKemJdlxn?= =?iso-8859-1?Q?UPhpWTYwS1+UdoKBT3lw=3D=3D?= Content-Type: multipart/mixed; boundary="_004_CP8P284MB2496A17A9852265A0F363A6AEC452CP8P284MB2496BRAP_" MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-7dc52.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CP8P284MB2496.BRAP284.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 4ea95daf-c367-464a-e203-08dc27932a6b X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Feb 2024 04:13:40.4595 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CP4P284MB2498 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_004_CP8P284MB2496A17A9852265A0F363A6AEC452CP8P284MB2496BRAP_ Content-Type: multipart/alternative; boundary="_000_CP8P284MB2496A17A9852265A0F363A6AEC452CP8P284MB2496BRAP_" --_000_CP8P284MB2496A17A9852265A0F363A6AEC452CP8P284MB2496BRAP_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable On Tue, Feb 06, 2024 at 09:45:54PM +0000, Maiquel Grassi wrote: > My initial idea has always been that they should continue to appear > because \conninfo+ should show all the things that \conninfo shows and > add more information. I think that's the purpose of the 'plus.' Now we'= re > on a better path than the initial one. We can still add the socket > directory and the host. Agreed. --//-- I believe it's resolved reasonably well this way: SELECT pg_catalog.current_database() AS "Database", current_user AS "User", pg_catalog.current_setting('server_version') AS "Server Version", CASE WHEN pg_catalog.inet_server_addr() IS NULL THEN 'NULL' ELSE pg_catalog.inet_server_addr()::text END AS "Server Address", pg_catalog.current_setting('port') AS "Port", CASE WHEN pg_catalog.inet_client_addr() IS NULL THEN 'NULL' ELSE pg_catalog.inet_client_addr()::text END AS "Client Address", CASE WHEN pg_catalog.inet_client_port() IS NULL THEN 'NULL' ELSE pg_catalog.inet_client_port()::text END AS "Client Port", pg_catalog.pg_backend_pid() AS "Session PID", CASE WHEN pg_catalog.current_setting('unix_socket_directories') =3D '' THEN 'NULL' ELSE pg_catalog.current_setting('unix_socket_directories') END AS "Socket Directory", CASE WHEN pg_catalog.inet_server_addr() IS NULL AND pg_catalog.inet_client_addr() IS NULL THEN 'NULL' WHEN pg_catalog.inet_server_addr() =3D pg_catalog.inet_client_addr() THEN 'localhost' ELSE pg_catalog.inet_server_addr()::text END AS "Host"; See below the tests: [postgres@localhost bin]$ ./psql psql (17devel) Type "help" for help. postgres=3D# \conninfo You are connected to database "postgres" as user "postgres" via socket in "= /tmp" at port "5432". postgres=3D# \conninfo+ Current Connection Infor= mation Database | User | Server Version | Server Address | Port | Client Addr= ess | Client Port | Session PID | Socket Directory | Host ----------+----------+----------------+----------------+------+------------= ----+-------------+-------------+------------------+------ postgres | postgres | 17devel | NULL | 5432 | NULL = | NULL | 14348 | /tmp | NULL (1 row) [postgres@localhost bin]$ ./psql -h localhost psql (17devel) Type "help" for help. postgres=3D# \conninfo You are connected to database "postgres" as user "postgres" on host "localh= ost" (address "::1") at port "5432". postgres=3D# \conninfo+ Current Connection In= formation Database | User | Server Version | Server Address | Port | Client Addr= ess | Client Port | Session PID | Socket Directory | Host ----------+----------+----------------+----------------+------+------------= ----+-------------+-------------+------------------+----------- postgres | postgres | 17devel | ::1/128 | 5432 | ::1/128 = | 46988 | 14353 | /tmp | localhost (1 row) [postgres@localhost bin]$ ./psql -h ::1 psql (17devel) Type "help" for help. postgres=3D# \conninfo You are connected to database "postgres" as user "postgres" on host "::1" a= t port "5432". postgres=3D# \conninfo+ Current Connection In= formation Database | User | Server Version | Server Address | Port | Client Addr= ess | Client Port | Session PID | Socket Directory | Host ----------+----------+----------------+----------------+------+------------= ----+-------------+-------------+------------------+----------- postgres | postgres | 17devel | ::1/128 | 5432 | ::1/128 = | 46990 | 14356 | /tmp | localhost (1 row) [postgres@localhost bin]$ ./psql -h 127.0.0.1 psql (17devel) Type "help" for help. postgres=3D# \conninfo You are connected to database "postgres" as user "postgres" on host "127.0.= 0.1" at port "5432". postgres=3D# \conninfo+ Current Connection In= formation Database | User | Server Version | Server Address | Port | Client Addr= ess | Client Port | Session PID | Socket Directory | Host ----------+----------+----------------+----------------+------+------------= ----+-------------+-------------+------------------+----------- postgres | postgres | 17devel | 127.0.0.1/32 | 5432 | 127.0.0.1/3= 2 | 35042 | 14359 | /tmp | localhost (1 row) [postgres@localhost bin]$ ./psql -h 192.168.0.5 -p 5433 -U postgres -d post= gres psql (17devel, server 16.1) Type "help" for help. postgres=3D# \conninfo You are connected to database "postgres" as user "postgres" on host "192.16= 8.0.5" at port "5433". postgres=3D# \conninfo+ Current Connection In= formation Database | User | Server Version | Server Address | Port | Client Addr= ess | Client Port | Session PID | Socket Directory | Host ----------+----------+----------------+----------------+------+------------= ----+-------------+-------------+------------------+----------- postgres | postgres | 16.1 | 192.168.0.5/32 | 5433 | 192.168.0.5= /32 | 52783 | 18212 | NULL | localhost (1 row) Regards, Maiquel O. Grassi. --_000_CP8P284MB2496A17A9852265A0F363A6AEC452CP8P284MB2496BRAP_ Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
  On Tue, Feb 06, 2024 at 09:45:54PM = +0000, Maiquel Grassi wrote:
  > My initial idea has always been that they should continue to ap= pear
  > because \conninfo+ should show all the things that \conninfo sh= ows and
  > add more information. I think that's the purpose of the 'plus.'= Now we're
  > on a better path than the initial one. We can still add the soc= ket
  > directory and the host.
 
  Agreed.

--//--

I believe it's resolved reasonably well this way:

SELECT
  pg_catalog.cur= rent_database() AS "Database",
  current_user AS "User",
  pg_catalog.cur= rent_setting('server_version') AS "Server Version",
  CASE
    WHEN pg_catalog.inet_server_addr= () IS NULL
    THEN 'NULL'
    ELSE pg_catalog.inet_server_addr= ()::text
  END AS "Server Address",
  pg_catalog.cur= rent_setting('port') AS "Port",
  CASE
    WHEN pg_catalog.inet_client_addr= () IS NULL
    THEN 'N= ULL'
    ELSE pg_catalog.inet_client_addr= ()::text
  END AS "Client Address",
  CASE
    WHEN pg= _catalog.inet_client_port() IS NULL
    THEN 'NULL'
    ELSE pg= _catalog.inet_client_port()::text
  END AS "Client Port",<= /div>
  pg_catalog.pg_= backend_pid() AS "Session PID",
  CASE
    WHEN pg_catalog.current_setting(= 'unix_socket_directories') =3D ''
    THEN 'NULL'
    ELSE pg= _catalog.current_setting('unix_socket_directories')
  END AS "Socket Directory",
  CASE
    WHEN
      pg_catalog.inet_server_ad= dr() IS NULL
      = AND pg_catalog.inet_client_addr() IS NULL
    THEN 'N= ULL'
    WHEN
      pg_catalog.inet_server_ad= dr() =3D pg_catalog.inet_client_addr()
    THEN 'l= ocalhost'
    ELSE pg= _catalog.inet_server_addr()::text
  END AS "H= ost";

See below the tests:

[postgres@localhost bin]$ ./psql
psql (17devel)=
Type "help" for help.

postgres=3D# \conninf= o
You are connected to = database "postgres" as user "postgres" via socket in &q= uot;/tmp" at port "5432".
postgres=3D# \conninfo+
            &nbs= p;                     &n= bsp;                Current Connect= ion Information
 Database | &nbs= p; User   | Server Version | Server Address | Port | Client Address | = Client Port | Session PID | Socket Directory | Host
----------+----------= +----------------+----------------+------+----------------+-------------+--= -----------+------------------+------
 postgres | post= gres | 17devel        | NULL        = ;   | 5432 | NULL           | NULL   &nb= sp;    |       14348 | /tmp       &= nbsp;     | NULL
(1 row)


[postgres@localhost b= in]$ ./psql -h localhost
psql (17devel)=
Type "help"= for help.

postgres=3D# \conninfo
You are connected to = database "postgres" as user "postgres" on host "lo= calhost" (address "::1") at port "5432".
postgres=3D# \conninfo+
            &nbs= p;                     &n= bsp;                   Current= Connection Information
 Database |   User   | Server V= ersion | Server Address | Port | Client Address | Client Port | Session PID= | Socket Directory |   Host
----------+----------= +----------------+----------------+------+----------------+-------------+--= -----------+------------------+-----------
 postgres | post= gres | 17devel        | ::1/128       &n= bsp;| 5432 | ::1/128        | 46988      = ; |       14353 | /tmp           &n= bsp; | localhost
(1 row)


[postgres@localhost bin]$ ./psql -h ::1=
psql (17devel)=
Type "help"= for help.

postgres=3D# \conninfo
You are connected to = database "postgres" as user "postgres" on host "::= 1" at port "5432".
postgres=3D# \conninfo+
            &nbs= p;                     &n= bsp;                   Current= Connection Information
 Database | &nbs= p; User   | Server Version | Server Address | Port | Client Address | = Client Port | Session PID | Socket Directory |   Host
----------+----------= +----------------+----------------+------+----------------+-------------+--= -----------+------------------+-----------
 postgres | post= gres | 17devel        | ::1/128       &n= bsp;| 5432 | ::1/128        | 46990      = ; |       14356 | /tmp           &n= bsp; | localhost
(1 row)


[postgres@localhost b= in]$ ./psql -h 127.0.0.1
psql (17devel)=
Type "help"= for help.

postgres=3D# \conninf= o
You are connected to = database "postgres" as user "postgres" on host "12= 7.0.0.1" at port "5432".
postgres=3D# \conninf= o+
      =                      = ;                     &nb= sp;     Current Connection Information
 Database |   User   | Server V= ersion | Server Address | Port | Client Address | Client Port | Session PID= | Socket Directory |   Host
----------+----------= +----------------+----------------+------+----------------+-------------+--= -----------+------------------+-----------
 postgres | post= gres | 17devel        | 127.0.0.1/32   | 5432 | 12= 7.0.0.1/32   | 35042       |       14359= | /tmp             | localhost
(1 row)


[postgres@localhost b= in]$ ./psql -h 192.168.0.5 -p 5433 -U postgres -d postgres
psql (17devel, server 16.1)
Type "help"= for help.

postgres=3D# \conninf= o
You are connected to = database "postgres" as user "postgres" on host "19= 2.168.0.5" at port "5433".
postgres=3D# \conninfo+
      =                      = ;                     &nb= sp;     Current Connection Information
 Database | &nbs= p; User   | Server Version | Server Address | Port | Client Address | = Client Port | Session PID | Socket Directory |   Host
----------+----------= +----------------+----------------+------+----------------+-------------+--= -----------+------------------+-----------
 postgres | post= gres | 16.1           | 192.168.0.5/32 | 5433 | 19= 2.168.0.5/32 | 52783       |       18212 | NU= LL             | localhost
(1 row)

Regards,
Maiquel O. Grassi.
--_000_CP8P284MB2496A17A9852265A0F363A6AEC452CP8P284MB2496BRAP_-- --_004_CP8P284MB2496A17A9852265A0F363A6AEC452CP8P284MB2496BRAP_ Content-Type: application/octet-stream; name="v4-0001-psql-meta-command-conninfo-plus.patch" Content-Description: v4-0001-psql-meta-command-conninfo-plus.patch Content-Disposition: attachment; filename="v4-0001-psql-meta-command-conninfo-plus.patch"; size=8954; creation-date="Wed, 07 Feb 2024 03:40:10 GMT"; modification-date="Wed, 07 Feb 2024 03:40:35 GMT" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL3NyYy9iaW4vcHNxbC9jb21tYW5kLmMgYi9zcmMvYmluL3BzcWwvY29tbWFu ZC5jCmluZGV4IDVjOTA2ZTQuLmFkOGUzNzAgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcHNxbC9jb21t YW5kLmMKKysrIGIvc3JjL2Jpbi9wc3FsL2NvbW1hbmQuYwpAQCAtNjgsNyArNjgsOCBAQCBzdGF0 aWMgYmFja3NsYXNoUmVzdWx0IGV4ZWNfY29tbWFuZF9DKFBzcWxTY2FuU3RhdGUgc2Nhbl9zdGF0 ZSwgYm9vbCBhY3RpdmVfYnJhbgogc3RhdGljIGJhY2tzbGFzaFJlc3VsdCBleGVjX2NvbW1hbmRf Y29ubmVjdChQc3FsU2NhblN0YXRlIHNjYW5fc3RhdGUsIGJvb2wgYWN0aXZlX2JyYW5jaCk7CiBz dGF0aWMgYmFja3NsYXNoUmVzdWx0IGV4ZWNfY29tbWFuZF9jZChQc3FsU2NhblN0YXRlIHNjYW5f c3RhdGUsIGJvb2wgYWN0aXZlX2JyYW5jaCwKIAkJCQkJCQkJCSAgIGNvbnN0IGNoYXIgKmNtZCk7 Ci1zdGF0aWMgYmFja3NsYXNoUmVzdWx0IGV4ZWNfY29tbWFuZF9jb25uaW5mbyhQc3FsU2NhblN0 YXRlIHNjYW5fc3RhdGUsIGJvb2wgYWN0aXZlX2JyYW5jaCk7CitzdGF0aWMgYmFja3NsYXNoUmVz dWx0IGV4ZWNfY29tbWFuZF9jb25uaW5mbyhQc3FsU2NhblN0YXRlIHNjYW5fc3RhdGUsIGJvb2wg YWN0aXZlX2JyYW5jaCwKKwkJCQkJCQkJCQkJIGNvbnN0IGNoYXIgKmNtZCk7CiBzdGF0aWMgYmFj a3NsYXNoUmVzdWx0IGV4ZWNfY29tbWFuZF9jb3B5KFBzcWxTY2FuU3RhdGUgc2Nhbl9zdGF0ZSwg Ym9vbCBhY3RpdmVfYnJhbmNoKTsKIHN0YXRpYyBiYWNrc2xhc2hSZXN1bHQgZXhlY19jb21tYW5k X2NvcHlyaWdodChQc3FsU2NhblN0YXRlIHNjYW5fc3RhdGUsIGJvb2wgYWN0aXZlX2JyYW5jaCk7 CiBzdGF0aWMgYmFja3NsYXNoUmVzdWx0IGV4ZWNfY29tbWFuZF9jcm9zc3RhYnZpZXcoUHNxbFNj YW5TdGF0ZSBzY2FuX3N0YXRlLCBib29sIGFjdGl2ZV9icmFuY2gpOwpAQCAtMzE3LDggKzMxOCw4 IEBAIGV4ZWNfY29tbWFuZChjb25zdCBjaGFyICpjbWQsCiAJCXN0YXR1cyA9IGV4ZWNfY29tbWFu ZF9jb25uZWN0KHNjYW5fc3RhdGUsIGFjdGl2ZV9icmFuY2gpOwogCWVsc2UgaWYgKHN0cmNtcChj bWQsICJjZCIpID09IDApCiAJCXN0YXR1cyA9IGV4ZWNfY29tbWFuZF9jZChzY2FuX3N0YXRlLCBh Y3RpdmVfYnJhbmNoLCBjbWQpOwotCWVsc2UgaWYgKHN0cmNtcChjbWQsICJjb25uaW5mbyIpID09 IDApCi0JCXN0YXR1cyA9IGV4ZWNfY29tbWFuZF9jb25uaW5mbyhzY2FuX3N0YXRlLCBhY3RpdmVf YnJhbmNoKTsKKwllbHNlIGlmIChzdHJjbXAoY21kLCAiY29ubmluZm8iKSA9PSAwIHx8IHN0cmNt cChjbWQsICJjb25uaW5mbysiKSA9PSAwKQorCQlzdGF0dXMgPSBleGVjX2NvbW1hbmRfY29ubmlu Zm8oc2Nhbl9zdGF0ZSwgYWN0aXZlX2JyYW5jaCwgY21kKTsKIAllbHNlIGlmIChwZ19zdHJjYXNl Y21wKGNtZCwgImNvcHkiKSA9PSAwKQogCQlzdGF0dXMgPSBleGVjX2NvbW1hbmRfY29weShzY2Fu X3N0YXRlLCBhY3RpdmVfYnJhbmNoKTsKIAllbHNlIGlmIChzdHJjbXAoY21kLCAiY29weXJpZ2h0 IikgPT0gMCkKQEAgLTY0Myw0NyArNjQ0LDc0IEBAIGV4ZWNfY29tbWFuZF9jZChQc3FsU2NhblN0 YXRlIHNjYW5fc3RhdGUsIGJvb2wgYWN0aXZlX2JyYW5jaCwgY29uc3QgY2hhciAqY21kKQogfQog CiAvKgotICogXGNvbm5pbmZvIC0tIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGN1cnJl bnQgY29ubmVjdGlvbgorICogXGNvbm5pbmZvLCBcY29ubmluZm8rIC0tIGRpc3BsYXkgaW5mb3Jt YXRpb24gYWJvdXQgdGhlIGN1cnJlbnQgY29ubmVjdGlvbgogICovCiBzdGF0aWMgYmFja3NsYXNo UmVzdWx0Ci1leGVjX2NvbW1hbmRfY29ubmluZm8oUHNxbFNjYW5TdGF0ZSBzY2FuX3N0YXRlLCBi b29sIGFjdGl2ZV9icmFuY2gpCitleGVjX2NvbW1hbmRfY29ubmluZm8oUHNxbFNjYW5TdGF0ZSBz Y2FuX3N0YXRlLCBib29sIGFjdGl2ZV9icmFuY2gsIGNvbnN0IGNoYXIgKmNtZCkKIHsKKwlib29s CQlzdWNjZXNzID0gdHJ1ZTsKKwogCWlmIChhY3RpdmVfYnJhbmNoKQogCXsKIAkJY2hhcgkgICAq ZGIgPSBQUWRiKHBzZXQuZGIpOworCQljaGFyCSAgICpwYXR0ZXJuOworCQlib29sCQlzaG93X3Zl cmJvc2U7CiAKLQkJaWYgKGRiID09IE5VTEwpCi0JCQlwcmludGYoXygiWW91IGFyZSBjdXJyZW50 bHkgbm90IGNvbm5lY3RlZCB0byBhIGRhdGFiYXNlLlxuIikpOwotCQllbHNlCisJCXBhdHRlcm4g PSBwc3FsX3NjYW5fc2xhc2hfb3B0aW9uKHNjYW5fc3RhdGUsIE9UX05PUk1BTCwgTlVMTCwgdHJ1 ZSk7CisKKwkJc2hvd192ZXJib3NlID0gc3RyY2hyKGNtZCwgJysnKSA/IHRydWUgOiBmYWxzZTsK KworCQkvKgorCQkgKiBcY29ubmluZm8rCisJCSAqLworCQlpZiAoc2hvd192ZXJib3NlKQogCQl7 Ci0JCQljaGFyCSAgICpob3N0ID0gUFFob3N0KHBzZXQuZGIpOwotCQkJY2hhcgkgICAqaG9zdGFk ZHIgPSBQUWhvc3RhZGRyKHBzZXQuZGIpOworCQkJc3VjY2VzcyA9IGxpc3RDb25uZWN0aW9uSW5m b3JtYXRpb24ocGF0dGVybiwgc2hvd192ZXJib3NlKTsKKwkJCWZyZWUocGF0dGVybik7CisJCQlw cmludFNTTEluZm8oKTsKKwkJCXByaW50R1NTSW5mbygpOworCQl9CiAKLQkJCWlmIChpc191bml4 c29ja19wYXRoKGhvc3QpKQotCQkJewotCQkJCS8qIGhvc3RhZGRyIG92ZXJyaWRlcyBob3N0ICov Ci0JCQkJaWYgKGhvc3RhZGRyICYmICpob3N0YWRkcikKLQkJCQkJcHJpbnRmKF8oIllvdSBhcmUg Y29ubmVjdGVkIHRvIGRhdGFiYXNlIFwiJXNcIiBhcyB1c2VyIFwiJXNcIiBvbiBhZGRyZXNzIFwi JXNcIiBhdCBwb3J0IFwiJXNcIi5cbiIpLAotCQkJCQkJICAgZGIsIFBRdXNlcihwc2V0LmRiKSwg aG9zdGFkZHIsIFBRcG9ydChwc2V0LmRiKSk7Ci0JCQkJZWxzZQotCQkJCQlwcmludGYoXygiWW91 IGFyZSBjb25uZWN0ZWQgdG8gZGF0YWJhc2UgXCIlc1wiIGFzIHVzZXIgXCIlc1wiIHZpYSBzb2Nr ZXQgaW4gXCIlc1wiIGF0IHBvcnQgXCIlc1wiLlxuIiksCi0JCQkJCQkgICBkYiwgUFF1c2VyKHBz ZXQuZGIpLCBob3N0LCBQUXBvcnQocHNldC5kYikpOwotCQkJfQorCQkvKgorCQkgKiBcY29ubmlu Zm8KKwkJICovCisJCWVsc2UKKwkJeworCQkJaWYgKGRiID09IE5VTEwpCisJCQkJcHJpbnRmKF8o IllvdSBhcmUgY3VycmVudGx5IG5vdCBjb25uZWN0ZWQgdG8gYSBkYXRhYmFzZS5cbiIpKTsKIAkJ CWVsc2UKIAkJCXsKLQkJCQlpZiAoaG9zdGFkZHIgJiYgKmhvc3RhZGRyICYmIHN0cmNtcChob3N0 LCBob3N0YWRkcikgIT0gMCkKLQkJCQkJcHJpbnRmKF8oIllvdSBhcmUgY29ubmVjdGVkIHRvIGRh dGFiYXNlIFwiJXNcIiBhcyB1c2VyIFwiJXNcIiBvbiBob3N0IFwiJXNcIiAoYWRkcmVzcyBcIiVz XCIpIGF0IHBvcnQgXCIlc1wiLlxuIiksCi0JCQkJCQkgICBkYiwgUFF1c2VyKHBzZXQuZGIpLCBo b3N0LCBob3N0YWRkciwgUFFwb3J0KHBzZXQuZGIpKTsKKwkJCQljaGFyCSAgICpob3N0ID0gUFFo b3N0KHBzZXQuZGIpOworCQkJCWNoYXIJICAgKmhvc3RhZGRyID0gUFFob3N0YWRkcihwc2V0LmRi KTsKKworCQkJCWlmIChpc191bml4c29ja19wYXRoKGhvc3QpKQorCQkJCXsKKwkJCQkJLyogaG9z dGFkZHIgb3ZlcnJpZGVzIGhvc3QgKi8KKwkJCQkJaWYgKGhvc3RhZGRyICYmICpob3N0YWRkcikK KwkJCQkJCXByaW50ZihfKCJZb3UgYXJlIGNvbm5lY3RlZCB0byBkYXRhYmFzZSBcIiVzXCIgYXMg dXNlciBcIiVzXCIgb24gYWRkcmVzcyBcIiVzXCIgYXQgcG9ydCBcIiVzXCIuXG4iKSwKKwkJCQkJ CQkgICBkYiwgUFF1c2VyKHBzZXQuZGIpLCBob3N0YWRkciwgUFFwb3J0KHBzZXQuZGIpKTsKKwkJ CQkJZWxzZQorCQkJCQkJcHJpbnRmKF8oIllvdSBhcmUgY29ubmVjdGVkIHRvIGRhdGFiYXNlIFwi JXNcIiBhcyB1c2VyIFwiJXNcIiB2aWEgc29ja2V0IGluIFwiJXNcIiBhdCBwb3J0IFwiJXNcIi5c biIpLAorCQkJCQkJCSAgIGRiLCBQUXVzZXIocHNldC5kYiksIGhvc3QsIFBRcG9ydChwc2V0LmRi KSk7CisJCQkJfQogCQkJCWVsc2UKLQkJCQkJcHJpbnRmKF8oIllvdSBhcmUgY29ubmVjdGVkIHRv IGRhdGFiYXNlIFwiJXNcIiBhcyB1c2VyIFwiJXNcIiBvbiBob3N0IFwiJXNcIiBhdCBwb3J0IFwi JXNcIi5cbiIpLAotCQkJCQkJICAgZGIsIFBRdXNlcihwc2V0LmRiKSwgaG9zdCwgUFFwb3J0KHBz ZXQuZGIpKTsKKwkJCQl7CisJCQkJCWlmIChob3N0YWRkciAmJiAqaG9zdGFkZHIgJiYgc3RyY21w KGhvc3QsIGhvc3RhZGRyKSAhPSAwKQorCQkJCQkJcHJpbnRmKF8oIllvdSBhcmUgY29ubmVjdGVk IHRvIGRhdGFiYXNlIFwiJXNcIiBhcyB1c2VyIFwiJXNcIiBvbiBob3N0IFwiJXNcIiAoYWRkcmVz cyBcIiVzXCIpIGF0IHBvcnQgXCIlc1wiLlxuIiksCisJCQkJCQkJICAgZGIsIFBRdXNlcihwc2V0 LmRiKSwgaG9zdCwgaG9zdGFkZHIsIFBRcG9ydChwc2V0LmRiKSk7CisJCQkJCWVsc2UKKwkJCQkJ CXByaW50ZihfKCJZb3UgYXJlIGNvbm5lY3RlZCB0byBkYXRhYmFzZSBcIiVzXCIgYXMgdXNlciBc IiVzXCIgb24gaG9zdCBcIiVzXCIgYXQgcG9ydCBcIiVzXCIuXG4iKSwKKwkJCQkJCQkgICBkYiwg UFF1c2VyKHBzZXQuZGIpLCBob3N0LCBQUXBvcnQocHNldC5kYikpOworCQkJCX0KKwkJCQlwcmlu dFNTTEluZm8oKTsKKwkJCQlwcmludEdTU0luZm8oKTsKIAkJCX0KLQkJCXByaW50U1NMSW5mbygp OwotCQkJcHJpbnRHU1NJbmZvKCk7CiAJCX0KIAl9CisJZWxzZQorCQlpZ25vcmVfc2xhc2hfb3B0 aW9ucyhzY2FuX3N0YXRlKTsKIAotCXJldHVybiBQU1FMX0NNRF9TS0lQX0xJTkU7CisJcmV0dXJu IHN1Y2Nlc3MgPyBQU1FMX0NNRF9TS0lQX0xJTkUgOiBQU1FMX0NNRF9FUlJPUjsKIH0KIAogLyoK ZGlmZiAtLWdpdCBhL3NyYy9iaW4vcHNxbC9kZXNjcmliZS5jIGIvc3JjL2Jpbi9wc3FsL2Rlc2Ny aWJlLmMKaW5kZXggYjZhNGViMS4uOTNjYTYyYSAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9wc3FsL2Rl c2NyaWJlLmMKKysrIGIvc3JjL2Jpbi9wc3FsL2Rlc2NyaWJlLmMKQEAgLTkwMSw2ICs5MDEsNzEg QEAgZXJyb3JfcmV0dXJuOgogCXJldHVybiBmYWxzZTsKIH0KIAorLyoKKyAqIGxpc3RDb25uZWN0 aW9uSW5mb3JtYXRpb24KKyAqCisgKiBmb3IgXGNvbm5pbmZvKworICovCitib29sCitsaXN0Q29u bmVjdGlvbkluZm9ybWF0aW9uKGNvbnN0IGNoYXIgKnBhdHRlcm4sIGJvb2wgdmVyYm9zZSkKK3sK KyAgICBQR3Jlc3VsdCAgICpyZXM7CisgICAgUFFFeHBCdWZmZXJEYXRhIGJ1ZjsKKyAgICBwcmlu dFF1ZXJ5T3B0IG15b3B0ID0gcHNldC5wb3B0OworCisgICAgaW5pdFBRRXhwQnVmZmVyKCZidWYp OworCisgICAgcHJpbnRmUFFFeHBCdWZmZXIoJmJ1ZiwKKyAgICAgICAgICAgICAgICAgICAgICAi U0VMRUNUXG4iCisgICAgICAgICAgICAgICAgICAgICAgIiAgcGdfY2F0YWxvZy5jdXJyZW50X2Rh dGFiYXNlKCkgQVMgXCJEYXRhYmFzZVwiLFxuIgorICAgICAgICAgICAgICAgICAgICAgICIgIGN1 cnJlbnRfdXNlciBBUyBcIlVzZXJcIixcbiIKKyAgICAgICAgICAgICAgICAgICAgICAiICBwZ19j YXRhbG9nLmN1cnJlbnRfc2V0dGluZygnc2VydmVyX3ZlcnNpb24nKSBBUyBcIlNlcnZlciBWZXJz aW9uXCIsXG4iCisgICAgICAgICAgICAgICAgICAgICAgIiAgQ0FTRVxuIgorICAgICAgICAgICAg ICAgICAgICAgICIgICAgV0hFTiBwZ19jYXRhbG9nLmluZXRfc2VydmVyX2FkZHIoKSBJUyBOVUxM XG4iCisgICAgICAgICAgICAgICAgICAgICAgIiAgICBUSEVOICdOVUxMJ1xuIgorICAgICAgICAg ICAgICAgICAgICAgICIgICAgRUxTRSBwZ19jYXRhbG9nLmluZXRfc2VydmVyX2FkZHIoKTo6dGV4 dFxuIgorICAgICAgICAgICAgICAgICAgICAgICIgIEVORCBBUyBcIlNlcnZlciBBZGRyZXNzXCIs XG4iCisgICAgICAgICAgICAgICAgICAgICAgIiAgcGdfY2F0YWxvZy5jdXJyZW50X3NldHRpbmco J3BvcnQnKSBBUyBcIlBvcnRcIixcbiIKKyAgICAgICAgICAgICAgICAgICAgICAiICBDQVNFXG4i CisgICAgICAgICAgICAgICAgICAgICAgIiAgICBXSEVOIHBnX2NhdGFsb2cuaW5ldF9jbGllbnRf YWRkcigpIElTIE5VTExcbiJ0aW5nKCd1bml4X3NvY2tldF9kaXJlY3RvcmllcycpID0gJydcbiIK KyAgICAgICAgICAgICAgICAgICAgICAiICAgIFRIRU4gJ05VTEwnXG4iCisgICAgICAgICAgICAg ICAgICAgICAgIiAgICBFTFNFIHBnX2NhdGFsb2cuaW5ldF9jbGllbnRfYWRkcigpOjp0ZXh0XG4i CisgICAgICAgICAgICAgICAgICAgICAgIiAgRU5EIEFTIFwiQ2xpZW50IEFkZHJlc3NcIixcbiIK KyAgICAgICAgICAgICAgICAgICAgICAiICBDQVNFXG4iCisgICAgICAgICAgICAgICAgICAgICAg IiAgICBXSEVOIHBnX2NhdGFsb2cuaW5ldF9jbGllbnRfcG9ydCgpIElTIE5VTExcbiIKKyAgICAg ICAgICAgICAgICAgICAgICAiICAgIFRIRU4gJ05VTEwnXG4iCisgICAgICAgICAgICAgICAgICAg ICAgIiAgICBFTFNFIHBnX2NhdGFsb2cuaW5ldF9jbGllbnRfcG9ydCgpOjp0ZXh0XG4iCisgICAg ICAgICAgICAgICAgICAgICAgIiAgRU5EIEFTIFwiQ2xpZW50IFBvcnRcIixcbiIKKyAgICAgICAg ICAgICAgICAgICAgICAiICBwZ19jYXRhbG9nLnBnX2JhY2tlbmRfcGlkKCkgQVMgXCJTZXNzaW9u IFBJRFwiLFxuIgorICAgICAgICAgICAgICAgICAgICAgICIgIENBU0VcbiIKKyAgICAgICAgICAg ICAgICAgICAgICAiICAgIFdIRU4gcGdfY2F0YWxvZy5jdXJyZW50X3NldHRpbmcoJ3VuaXhfc29j a2V0X2RpcmVjdG9yaWVzJykgPSAnJ1xuIgorICAgICAgICAgICAgICAgICAgICAgICIgICAgVEhF TiAnTlVMTCdcbiIKKyAgICAgICAgICAgICAgICAgICAgICAiICAgIEVMU0UgcGdfY2F0YWxvZy5j dXJyZW50X3NldHRpbmcoJ3VuaXhfc29ja2V0X2RpcmVjdG9yaWVzJylcbiIKKyAgICAgICAgICAg ICAgICAgICAgICAiICBFTkQgQVMgXCJTb2NrZXQgRGlyZWN0b3J5XCIsXG4iCisgICAgICAgICAg ICAgICAgICAgICAgIiAgQ0FTRVxuIgorICAgICAgICAgICAgICAgICAgICAgICIgICAgV0hFTlxu IgorICAgICAgICAgICAgICAgICAgICAgICIgICAgICBwZ19jYXRhbG9nLmluZXRfc2VydmVyX2Fk ZHIoKSBJUyBOVUxMXG4iCisgICAgICAgICAgICAgICAgICAgICAgIiAgICAgIEFORCBwZ19jYXRh bG9nLmluZXRfY2xpZW50X2FkZHIoKSBJUyBOVUxMXG4iCisgICAgICAgICAgICAgICAgICAgICAg IiAgICBUSEVOICdOVUxMJ1xuIgorICAgICAgICAgICAgICAgICAgICAgICIgICAgV0hFTlxuIgor ICAgICAgICAgICAgICAgICAgICAgICIgICAgICBwZ19jYXRhbG9nLmluZXRfc2VydmVyX2FkZHIo KSA9IHBnX2NhdGFsb2cuaW5ldF9jbGllbnRfYWRkcigpXG4iCisgICAgICAgICAgICAgICAgICAg ICAgIiAgICBUSEVOICdsb2NhbGhvc3QnXG4iCisgICAgICAgICAgICAgICAgICAgICAgIiAgICBF TFNFIHBnX2NhdGFsb2cuaW5ldF9zZXJ2ZXJfYWRkcigpOjp0ZXh0XG4iCisgICAgICAgICAgICAg ICAgICAgICAgIiAgRU5EIEFTIFwiSG9zdFwiOyIpOworCisgICAgcmVzID0gUFNRTGV4ZWMoYnVm LmRhdGEpOworICAgIHRlcm1QUUV4cEJ1ZmZlcigmYnVmKTsKKyAgICBpZiAoIXJlcykKKyAgICAg ICAgcmV0dXJuIGZhbHNlOworCisgICAgbXlvcHQudGl0bGUgPSBfKCJDdXJyZW50IENvbm5lY3Rp b24gSW5mb3JtYXRpb24iKTsKKyAgICBteW9wdC50cmFuc2xhdGVfaGVhZGVyID0gdHJ1ZTsKKwor ICAgIHByaW50UXVlcnkocmVzLCAmbXlvcHQsIHBzZXQucXVlcnlGb3V0LCBmYWxzZSwgcHNldC5s b2dmaWxlKTsKKworICAgIFBRY2xlYXIocmVzKTsKKyAgICByZXR1cm4gdHJ1ZTsKK30KIAogLyoK ICAqIGxpc3RBbGxEYnMKZGlmZiAtLWdpdCBhL3NyYy9iaW4vcHNxbC9kZXNjcmliZS5oIGIvc3Jj L2Jpbi9wc3FsL2Rlc2NyaWJlLmgKaW5kZXggMjczZjk3NC4uYjYzOGM3MSAxMDA2NDQKLS0tIGEv c3JjL2Jpbi9wc3FsL2Rlc2NyaWJlLmgKKysrIGIvc3JjL2Jpbi9wc3FsL2Rlc2NyaWJlLmgKQEAg LTE0OSw0ICsxNDksNyBAQCBleHRlcm4gYm9vbCBsaXN0T3BGYW1pbHlGdW5jdGlvbnMoY29uc3Qg Y2hhciAqYWNjZXNzX21ldGhvZF9wYXR0ZXJuLAogLyogXGRsIG9yIFxsb19saXN0ICovCiBleHRl cm4gYm9vbCBsaXN0TGFyZ2VPYmplY3RzKGJvb2wgdmVyYm9zZSk7CiAKKy8qIFxjb25uaW5mbyAq LworZXh0ZXJuIGJvb2wgbGlzdENvbm5lY3Rpb25JbmZvcm1hdGlvbihjb25zdCBjaGFyICpwYXR0 ZXJuLCBib29sIHZlcmJvc2UpOworCiAjZW5kaWYJCQkJCQkJLyogREVTQ1JJQkVfSCAqLwpkaWZm IC0tZ2l0IGEvc3JjL2Jpbi9wc3FsL2hlbHAuYyBiL3NyYy9iaW4vcHNxbC9oZWxwLmMKaW5kZXgg NGU3OWE4MS4uMmM1NDI2ZCAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9wc3FsL2hlbHAuYworKysgYi9z cmMvYmluL3BzcWwvaGVscC5jCkBAIC0zMTAsNyArMzEwLDcgQEAgc2xhc2hVc2FnZSh1bnNpZ25l ZCBzaG9ydCBpbnQgcGFnZXIpCiAJZWxzZQogCQlIRUxQMCgiICBcXGNbb25uZWN0XSB7W0RCTkFN RXwtIFVTRVJ8LSBIT1NUfC0gUE9SVHwtXSB8IGNvbm5pbmZvfVxuIgogCQkJICAiICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbm5lY3QgdG8gbmV3IGRhdGFiYXNlIChjdXJyZW50bHkgbm8gY29u bmVjdGlvbilcbiIpOwotCUhFTFAwKCIgIFxcY29ubmluZm8gICAgICAgICAgICAgIGRpc3BsYXkg aW5mb3JtYXRpb24gYWJvdXQgY3VycmVudCBjb25uZWN0aW9uXG4iKTsKKwlIRUxQMCgiICBcXGNv bm5pbmZvWytdICAgICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IGN1cnJlbnQgY29u bmVjdGlvblxuIik7CiAJSEVMUDAoIiAgXFxlbmNvZGluZyBbRU5DT0RJTkddICAgc2hvdyBvciBz ZXQgY2xpZW50IGVuY29kaW5nXG4iKTsKIAlIRUxQMCgiICBcXHBhc3N3b3JkIFtVU0VSTkFNRV0g ICBzZWN1cmVseSBjaGFuZ2UgdGhlIHBhc3N3b3JkIGZvciBhIHVzZXJcbiIpOwogCUhFTFAwKCJc biIpOwo= --_004_CP8P284MB2496A17A9852265A0F363A6AEC452CP8P284MB2496BRAP_--