postgresql/src/interfaces/libpq
Peter Eisentraut 9288d62bb4 Support channel binding 'tls-unique' in SCRAM
This is the basic feature set using OpenSSL to support the feature.  In
order to allow the frontend and the backend to fetch the sent and
expected TLS Finished messages, a PG-like API is added to be able to
make the interface pluggable for other SSL implementations.

This commit also adds a infrastructure to facilitate the addition of
future channel binding types as well as libpq parameters to control the
SASL mechanism names and channel binding names.  Those will be added by
upcoming commits.

Some tests are added to the SSL test suite to test SCRAM authentication
with channel binding.

Author: Michael Paquier <michael@paquier.xyz>
Reviewed-by: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
2017-11-18 10:15:54 -05:00
..
po Translation updates 2017-08-07 13:55:34 -04:00
test Fix script name in README. 2017-06-09 12:05:03 +03:00
.gitignore Add port/strnlen support to libpq and ecpg Makefiles. 2017-10-11 11:28:04 -04:00
Makefile Add port/strnlen support to libpq and ecpg Makefiles. 2017-10-11 11:28:04 -04:00
README Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
exports.txt Add PQencryptPasswordConn function to libpq, use it in psql and createuser. 2017-05-03 11:19:07 +03:00
fe-auth-scram.c Support channel binding 'tls-unique' in SCRAM 2017-11-18 10:15:54 -05:00
fe-auth.c Support channel binding 'tls-unique' in SCRAM 2017-11-18 10:15:54 -05:00
fe-auth.h Support channel binding 'tls-unique' in SCRAM 2017-11-18 10:15:54 -05:00
fe-connect.c Add some const decorations to prototypes 2017-11-10 13:38:57 -05:00
fe-exec.c Change TRUE/FALSE to true/false 2017-11-08 11:37:28 -05:00
fe-lobj.c Replace most usages of ntoh[ls] and hton[sl] with pg_bswap.h. 2017-10-01 15:36:14 -07:00
fe-misc.c Change TRUE/FALSE to true/false 2017-11-08 11:37:28 -05:00
fe-print.c In psql, use PSQL_PAGER in preference to PAGER, if it's set. 2017-09-05 12:02:13 -04:00
fe-protocol2.c Change TRUE/FALSE to true/false 2017-11-08 11:37:28 -05:00
fe-protocol3.c Change TRUE/FALSE to true/false 2017-11-08 11:37:28 -05:00
fe-secure-openssl.c Support channel binding 'tls-unique' in SCRAM 2017-11-18 10:15:54 -05:00
fe-secure.c Change TRUE/FALSE to true/false 2017-11-08 11:37:28 -05:00
libpq-events.c Change TRUE/FALSE to true/false 2017-11-08 11:37:28 -05:00
libpq-events.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
libpq-fe.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
libpq-int.h Support channel binding 'tls-unique' in SCRAM 2017-11-18 10:15:54 -05:00
libpq.rc.in Stamp HEAD as 11devel. 2017-08-14 18:08:30 -04:00
nls.mk Translation updates 2017-08-07 13:55:34 -04:00
pg_service.conf.sample Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
pqexpbuffer.c Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pqexpbuffer.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pthread-win32.c Remove useless duplicate inclusions of system header files. 2017-02-25 16:12:55 -05:00
win32.c Phase 3 of pgindent updates. 2017-06-21 15:35:54 -04:00
win32.h Remove support for bcc and msvc standalone libpq builds 2017-04-11 15:22:21 +02:00

README

src/interfaces/libpq/README

This directory contains the C version of Libpq, the POSTGRES frontend library.