mirror of
https://github.com/postgresml/pgcat.git
synced 2026-03-26 18:36:28 +00:00
stream.peer_addr() & auth_query (#575)
* Don't unwrap stream.peer_addr() https://github.com/postgresml/pgcat/pull/562 (same code) (another lines changed) * auth_query (real sample) # single quote need auth_query="SELECT usename, passwd FROM pg_shadow WHERE usename='$1'"
This commit is contained in:
@@ -187,7 +187,7 @@ sharding_function = "pg_bigint_hash"
|
|||||||
# Query to be sent to servers to obtain the hash used for md5 authentication. The connection will be
|
# Query to be sent to servers to obtain the hash used for md5 authentication. The connection will be
|
||||||
# established using the database configured in the pool. This parameter is inherited by every pool
|
# established using the database configured in the pool. This parameter is inherited by every pool
|
||||||
# and can be redefined in pool configuration.
|
# and can be redefined in pool configuration.
|
||||||
# auth_query = "SELECT $1"
|
# auth_query="SELECT usename, passwd FROM pg_shadow WHERE usename='$1'"
|
||||||
|
|
||||||
# User to be used for connecting to servers to obtain the hash used for md5 authentication by sending the query
|
# User to be used for connecting to servers to obtain the hash used for md5 authentication by sending the query
|
||||||
# specified in `auth_query_user`. The connection will be established using the database configured in the pool.
|
# specified in `auth_query_user`. The connection will be established using the database configured in the pool.
|
||||||
|
|||||||
@@ -117,7 +117,15 @@ pub async fn client_entrypoint(
|
|||||||
log_client_connections: bool,
|
log_client_connections: bool,
|
||||||
) -> Result<(), Error> {
|
) -> Result<(), Error> {
|
||||||
// Figure out if the client wants TLS or not.
|
// Figure out if the client wants TLS or not.
|
||||||
let addr = stream.peer_addr().unwrap();
|
let addr = match stream.peer_addr() {
|
||||||
|
Ok(addr) => addr,
|
||||||
|
Err(err) => {
|
||||||
|
return Err(Error::SocketError(format!(
|
||||||
|
"Failed to get peer address: {:?}",
|
||||||
|
err
|
||||||
|
)));
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
match get_startup::<TcpStream>(&mut stream).await {
|
match get_startup::<TcpStream>(&mut stream).await {
|
||||||
// Client requested a TLS connection.
|
// Client requested a TLS connection.
|
||||||
|
|||||||
Reference in New Issue
Block a user