1
0
mirror of https://github.com/postgres/postgres.git synced 2025-11-15 03:41:20 +03:00

libpq: Trace responses to SSLRequest and GSSENCRequest

Since these are single bytes instead of v2 or v3 messages they need
custom tracing logic.  These "messages" don't even have official names
in the protocol specification, so I (Jelte) called them SSLResponse and
GSSENCResponse here.

Author: Jelte Fennema-Nio <postgres@jeltef.nl>
Discussion: https://postgr.es/m/CAGECzQSoPHtZ4xe0raJ6FYSEiPPS+YWXBhOGo+Y1YecLgknF3g@mail.gmail.com
This commit is contained in:
Alvaro Herrera
2024-08-14 14:53:55 -04:00
parent 5304fec4d8
commit a5c6b8f22c
3 changed files with 36 additions and 0 deletions

View File

@@ -3493,11 +3493,17 @@ keep_going: /* We will come back to here until there is
}
if (SSLok == 'S')
{
if (conn->Pfdebug)
pqTraceOutputCharResponse(conn, "SSLResponse",
SSLok);
/* mark byte consumed */
conn->inStart = conn->inCursor;
}
else if (SSLok == 'N')
{
if (conn->Pfdebug)
pqTraceOutputCharResponse(conn, "SSLResponse",
SSLok);
/* mark byte consumed */
conn->inStart = conn->inCursor;
@@ -3635,6 +3641,10 @@ keep_going: /* We will come back to here until there is
if (gss_ok == 'N')
{
if (conn->Pfdebug)
pqTraceOutputCharResponse(conn, "GSSENCResponse",
gss_ok);
/*
* The connection is still valid, so if it's OK to
* continue without GSS, we can proceed using this
@@ -3648,6 +3658,10 @@ keep_going: /* We will come back to here until there is
gss_ok);
goto error_return;
}
if (conn->Pfdebug)
pqTraceOutputCharResponse(conn, "GSSENCResponse",
gss_ok);
}
/* Begin or continue GSSAPI negotiation */