Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jYybX-0000fY-CY for pgsql-docs@arkaria.postgresql.org; Wed, 13 May 2020 21:07:51 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1jYybW-0005Go-18 for pgsql-docs@arkaria.postgresql.org; Wed, 13 May 2020 21:07:50 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jYybV-0005Gg-QD for pgsql-docs@lists.postgresql.org; Wed, 13 May 2020 21:07:49 +0000 Received: from smtp.outgoing.loopia.se ([93.188.3.37]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jYybT-0006EH-Lo for pgsql-docs@postgresql.org; Wed, 13 May 2020 21:07:49 +0000 Received: from s807.loopia.se (localhost [127.0.0.1]) by s807.loopia.se (Postfix) with ESMTP id F1C3D309BBB9 for ; Wed, 13 May 2020 23:07:45 +0200 (CEST) Received: from s645.loopia.se (unknown [172.22.191.6]) by s807.loopia.se (Postfix) with ESMTP id D1EFB10B026C for ; Wed, 13 May 2020 23:07:45 +0200 (CEST) Received: from s475.loopia.se (unknown [172.22.191.5]) by s645.loopia.se (Postfix) with ESMTP id C8CC4156E496 for ; Wed, 13 May 2020 23:07:45 +0200 (CEST) X-Virus-Scanned: amavisd-new at amavis.loopia.se X-Spam-Flag: NO X-Spam-Score: -1 X-Spam-Level: X-Spam-Status: No, score=-1 tagged_above=-999 required=6.2 tests=[ALL_TRUSTED=-1] autolearn=disabled Received: from s499.loopia.se ([172.22.191.5]) by s475.loopia.se (s475.loopia.se [172.22.190.15]) (amavisd-new, port 10024) with LMTP id 272DwmbkKYlx for ; Wed, 13 May 2020 23:07:45 +0200 (CEST) X-Loopia-Auth: user X-Loopia-User: daniel@yesql.se X-Loopia-Originating-IP: 89.255.232.193 Received: from [192.168.72.43] (customer-89-255-232-193.stosn.net [89.255.232.193]) (Authenticated sender: daniel@yesql.se) by s499.loopia.se (Postfix) with ESMTPSA id 33FC01CDAF2A for ; Wed, 13 May 2020 23:07:45 +0200 (CEST) From: Daniel Gustafsson Content-Type: multipart/mixed; boundary="Apple-Mail=_7C503FB7-F291-4187-872C-AEC061C8F7B7" Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.14\)) Subject: TLS docs fixes for Message-Id: <401F9024-20EA-4239-83C4-6B7AD35F94BD@yesql.se> Date: Wed, 13 May 2020 23:07:44 +0200 To: pgsql-docs@postgresql.org X-Mailer: Apple Mail (2.3445.104.14) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --Apple-Mail=_7C503FB7-F291-4187-872C-AEC061C8F7B7 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii While working with TLS I noticed that the password callback definition = had an extra newline in the programlisting in the docs. Since the = has been indented with the textblock, the newline comes from whitespace = being significant. The attached 0001 fixes by instead anchoring = on column zero like how most of the docs do it. Grepping around I found = one more instance of the same pattern which is also included. The "Enter PEM pass phrase" prompt was referred to in one place with = and one with , the 0002 settles on using for = both since IMO that makes the docs more readable. While there, it also fixes = the spelling of "pass phrase" from the two variations we had (of which none = was the correct one from src/backend/libpq/be-secure-openssl.c as well as the = OpenSSL file crypto/pem/pem_lib.c). cheers ./daniel --Apple-Mail=_7C503FB7-F291-4187-872C-AEC061C8F7B7 Content-Disposition: attachment; filename=0002-doc-fix-PEM-prompt-markup.patch Content-Type: application/octet-stream; x-unix-mode=0644; name="0002-doc-fix-PEM-prompt-markup.patch" Content-Transfer-Encoding: quoted-printable =46rom=20734dc5dc853769a750007b95b53c89d9fbfc8b5f=20Mon=20Sep=2017=20= 00:00:00=202001=0AFrom:=20Daniel=20Gustafsson=20=0A= Date:=20Wed,=2013=20May=202020=2016:46:49=20+0200=0ASubject:=20[PATCH=20= 2/2]=20doc:=20fix=20PEM=20prompt=20markup=0A=0AThe=20same=20document=20= was=20using=20literal=20and=20programlisting=20for=20showing=0Athe=20PEM=20= pass=20phrase=20prompt,=20settle=20on=20using=20a=20single=20way=20to=20= render=0Athe=20same=20thing.=20Also=20reword=20the=20actual=20prompt=20= as=20both=20occurrences=0Ahad=20different=20spelling=20with=20neither=20= being=20wbat=20is=20actually=20used.=0A---=0A=20doc/src/sgml/libpq.sgml=20= |=207=20++-----=0A=201=20file=20changed,=202=20insertions(+),=205=20= deletions(-)=0A=0Adiff=20--git=20a/doc/src/sgml/libpq.sgml=20= b/doc/src/sgml/libpq.sgml=0Aindex=20c404429ae9..75c7c5837b=20100644=0A= ---=20a/doc/src/sgml/libpq.sgml=0A+++=20b/doc/src/sgml/libpq.sgml=0A@@=20= -1668,7=20+1668,7=20@@=20postgresql://%2Fvar%2Flib%2Fpostgresql/dbname=0A= =20=20=20=20=20=20=20=20=0A=20=20=20=20=20=20=20=20=0A=20=20= =20=20=20=20=20=20=20Specifying=20this=20parameter=20with=20any=20= non-empty=20value=20suppresses=20the=0A-=20=20=20=20=20=20=20=20= Enter=20PEM=20passphrase:=0A+=20=20=20=20=20=20=20=20= Enter=20PEM=20pass=20phrase:=0A=20=20=20=20=20=20=20=20= =20prompt=20that=20OpenSSL=20will=20emit=20by=20default=20when=20an=20= encrypted=20client=0A=20=20=20=20=20=20=20=20=20certificate=20key=20is=20= provided=20to=20libpq.=0A=20=20=20=20=20=20=20=20= =0A@@=20-7667,10=20+7667,7=20@@=20= ldap://ldap.acme.com/cn=3Ddbserver,cn=3Dhosts?pgconnectinfo?base?(objectcl= ass=3D*)=0A=20=20=20=20may=20be=20provided=20in=20the=20=20connection=0A=20=20=20=20= option.=20If=20an=20encrypted=20key=20is=20supplied=20and=20the=20= sslpassword=0A=20=20=20=20option=20is=20absent=20or=20= blank,=20a=20password=20will=20be=20prompted=20for=20interactively=20by=0A= -=20=20=20OpenSSL=20with=20a=0A-=20=20=20=0A-=20=20=20=20= Enter=20PEM=20Passphrase:=0A-=20=20=20=0A+=20=20=20= OpenSSL=20with=20a=20Enter=20PEM=20pass=20phrase:=0A=20= =20=20=20prompt=20if=20a=20TTY=20is=20available.=20Applications=20can=20= override=20the=20client=20certificate=0A=20=20=20=20prompt=20and=20the=20= handling=20of=20the=20sslpassword=20parameter=20by=20= supplying=0A=20=20=20=20their=20own=20key=20password=20callback;=20see=20= .=0A--=20=0A2.21.1=20= (Apple=20Git-122.3)=0A=0A= --Apple-Mail=_7C503FB7-F291-4187-872C-AEC061C8F7B7 Content-Disposition: attachment; filename=0001-doc-anchor-programlisting-on-column-zero.patch Content-Type: application/octet-stream; x-unix-mode=0644; name="0001-doc-anchor-programlisting-on-column-zero.patch" Content-Transfer-Encoding: quoted-printable =46rom=200cad03da12c52495c335a1b839c79752ba602c8f=20Mon=20Sep=2017=20= 00:00:00=202001=0AFrom:=20Daniel=20Gustafsson=20=0A= Date:=20Wed,=2013=20May=202020=2016:15:46=20+0200=0ASubject:=20[PATCH=20= 1/2]=20doc:=20anchor=20programlisting=20on=20column=20zero=0A=0A= Whitespace=20is=20significant=20in=20programlisting=20blocks,=20so=20= when=20used=0Aindented=20they=20render=20a=20blank=20line=20after=20the=20= content.=20Fix=20by=20anchoring=0Athe=20blocks=20on=20column=20zero=20= like=20how=20we=20do=20in=20most=20places=20of=20the=20docs.=0A---=0A=20= doc/src/sgml/libpq.sgml=20=20=20=20=20=20=20=20|=206=20+++---=0A=20= doc/src/sgml/postgres-fdw.sgml=20|=208=20++++----=0A=202=20files=20= changed,=207=20insertions(+),=207=20deletions(-)=0A=0Adiff=20--git=20= a/doc/src/sgml/libpq.sgml=20b/doc/src/sgml/libpq.sgml=0Aindex=20= 5892367c61..c404429ae9=20100644=0A---=20a/doc/src/sgml/libpq.sgml=0A+++=20= b/doc/src/sgml/libpq.sgml=0A@@=20-790,9=20+790,9=20@@=20void=20= PQsetSSLKeyPassHook(PQsslKeyPassHook_type=20hook);=0A=20=0A=20= =0A=20=20=20=20=20=20=20=20The=20application=20passes=20a=20pointer=20to=20= a=20callback=20function=20with=20signature:=0A-=20=20=20=20=20=20=20= =0A-=20=20=20=20=20=20=20int=20callback_fn(char=20*buf,=20= int=20size,=20PGconn=20*conn);=0A-=20=20=20=20=20=20=20=0A= +=0A+int=20callback_fn(char=20*buf,=20int=20size,=20= PGconn=20*conn);=0A+=0A=20=20=20=20=20=20=20=20which=20= libpq=20will=20then=20call=20instead=20= of=0A=20=20=20=20=20=20=20=20its=20default=20= PQdefaultSSLKeyPassHook=20handler.=20The=20callback=0A= =20=20=20=20=20=20=20=20should=20determine=20the=20password=20for=20the=20= key=20and=20copy=20it=20to=20result-buffer=0Adiff=20--git=20= a/doc/src/sgml/postgres-fdw.sgml=20b/doc/src/sgml/postgres-fdw.sgml=0A= index=2094992be427..eab2cc9378=20100644=0A---=20= a/doc/src/sgml/postgres-fdw.sgml=0A+++=20= b/doc/src/sgml/postgres-fdw.sgml=0A@@=20-151,10=20+151,10=20@@=0A=20=20=20= =20=0A=20=20=20=20=20A=20superuser=20may=20override=20this=20check=20= on=20a=20per-user-mapping=20basis=20by=20setting=0A=20=20=20=20=20the=20= user=20mapping=20option=20password_required=20= 'false',=20e.g.=0A-=20=20=20=20=0A-=20=20=20=20= =20=20ALTER=20USER=20MAPPING=20FOR=20some_non_superuser=20SERVER=20= loopback_nopw=0A-=20=20=20=20=20=20OPTIONS=20(ADD=20password_required=20= 'false');=0A-=20=20=20=20=0A+=0A+ALTER=20= USER=20MAPPING=20FOR=20some_non_superuser=20SERVER=20loopback_nopw=0A= +OPTIONS=20(ADD=20password_required=20'false');=0A+=0A=20= =20=20=20=20To=20prevent=20unprivileged=20users=20from=20exploiting=20= the=20authentication=20rights=0A=20=20=20=20=20of=20the=20unix=20user=20= the=20postgres=20server=20is=20running=20as=20to=20escalate=20to=20= superuser=0A=20=20=20=20=20rights,=20only=20the=20superuser=20may=20set=20= this=20option=20on=20a=20user=20mapping.=0A--=20=0A2.21.1=20(Apple=20= Git-122.3)=0A=0A= --Apple-Mail=_7C503FB7-F291-4187-872C-AEC061C8F7B7--