From: Alvaro Herrera Date: Fri, 26 Mar 2021 19:13:04 -0300 Subject: [PATCH v30 3/7] put FILE * arg always first --- src/interfaces/libpq/libpq-trace.c | 234 ++++++++++++++--------------- 1 file changed, 117 insertions(+), 117 deletions(-) diff --git a/src/interfaces/libpq/libpq-trace.c b/src/interfaces/libpq/libpq-trace.c index bacb7903b9..bff542cada 100644 --- a/src/interfaces/libpq/libpq-trace.c +++ b/src/interfaces/libpq/libpq-trace.c @@ -93,7 +93,7 @@ pqTraceFormatTimestamp(char *timestr, size_t ts_len) * pqTraceOutputByte1: output 1 char message to the log */ static void -pqTraceOutputByte1(const char *data, int *cursor, FILE *pfdebug) +pqTraceOutputByte1(FILE *pfdebug, const char *data, int *cursor) { const char *v = data + *cursor; @@ -113,7 +113,7 @@ pqTraceOutputByte1(const char *data, int *cursor, FILE *pfdebug) * pqTraceOutputInt16: output a 2-byte integer message to the log */ static int -pqTraceOutputInt16(const char *data, int *cursor, FILE *pfdebug) +pqTraceOutputInt16(FILE *pfdebug, const char *data, int *cursor) { uint16 tmp; int result; @@ -130,7 +130,7 @@ pqTraceOutputInt16(const char *data, int *cursor, FILE *pfdebug) * pqTraceOutputInt32: output a 4-byte integer message to the log */ static int -pqTraceOutputInt32(const char *data, int *cursor, FILE *pfdebug) +pqTraceOutputInt32(FILE *pfdebug, const char *data, int *cursor) { int result; @@ -146,7 +146,7 @@ pqTraceOutputInt32(const char *data, int *cursor, FILE *pfdebug) * pqTraceOutputString: output a string message to the log */ static void -pqTraceOutputString(const char *data, int *cursor, FILE *pfdebug) +pqTraceOutputString(FILE *pfdebug, const char *data, int *cursor) { int len; @@ -163,7 +163,7 @@ pqTraceOutputString(const char *data, int *cursor, FILE *pfdebug) * pqTraceOutputNchar: output a string of exactly len bytes message to the log */ static void -pqTraceOutputNchar(const char *data, int *cursor, FILE *pfdebug, int len) +pqTraceOutputNchar(FILE *pfdebug, int len, const char *data, int *cursor) { int i, next; /* first char not yet printed */ @@ -195,28 +195,28 @@ pqTraceOutputNchar(const char *data, int *cursor, FILE *pfdebug, int len) /* Authentication */ static void -pqTraceOutputR(const char *message, FILE *f) +pqTraceOutputR(FILE *f, const char *message) { int cursor = 0; fprintf(f, "Authentication\t"); - pqTraceOutputInt32(message, &cursor, f); + pqTraceOutputInt32(f, message, &cursor); } /* BackendKeyData */ static void -pqTraceOutputK(const char *message, FILE *f) +pqTraceOutputK(FILE *f, const char *message) { int cursor = 0; fprintf(f, "BackendKeyData\t"); - pqTraceOutputInt32(message, &cursor, f); - pqTraceOutputInt32(message, &cursor, f); + pqTraceOutputInt32(f, message, &cursor); + pqTraceOutputInt32(f, message, &cursor); } /* Bind */ static void -pqTraceOutputB(const char *message, int end, FILE *f) +pqTraceOutputB(FILE *f, const char *message, int end) { int cursor = 0; int nparams; @@ -224,113 +224,113 @@ pqTraceOutputB(const char *message, int end, FILE *f) int i; fprintf(f, "Bind\t"); - pqTraceOutputString(message, &cursor, f); - pqTraceOutputString(message, &cursor, f); - nparams = pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputString(f, message, &cursor); + pqTraceOutputString(f, message, &cursor); + nparams = pqTraceOutputInt16(f, message, &cursor); for (i = 0; i < nparams; i++) - pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputInt16(f, message, &cursor); - nparams = pqTraceOutputInt16(message, &cursor, f); + nparams = pqTraceOutputInt16(f, message, &cursor); for (i = 0; i < nparams; i++) { - nbytes = pqTraceOutputInt32(message, &cursor, f); + nbytes = pqTraceOutputInt32(f, message, &cursor); if (nbytes == -1) continue; - pqTraceOutputNchar(message, &cursor, f, nbytes); + pqTraceOutputNchar(f, nbytes, message, &cursor); } - nparams = pqTraceOutputInt16(message, &cursor, f); + nparams = pqTraceOutputInt16(f, message, &cursor); for (i = 0; i < nparams; i++) - pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputInt16(f, message, &cursor); } /* Close(F) or CommandComplete(B) */ static void -pqTraceOutputC(const char *message, int end, FILE *f, bool toServer) +pqTraceOutputC(FILE *f, bool toServer, const char *message, int end) { int cursor = 0; if (toServer) { fprintf(f, "Close\t"); - pqTraceOutputByte1(message, &cursor, f); - pqTraceOutputString(message, &cursor, f); + pqTraceOutputByte1(f, message, &cursor); + pqTraceOutputString(f, message, &cursor); } else { fprintf(f, "CommandComplete\t"); - pqTraceOutputString(message, &cursor, f); + pqTraceOutputString(f, message, &cursor); } } /* CopyFail */ static void -pqTraceOutputf(const char *message, int end, FILE *f) +pqTraceOutputf(FILE *f, const char *message, int end) { int cursor = 0; fprintf(f, "CopyFail\t"); - pqTraceOutputString(message, &cursor, f); + pqTraceOutputString(f, message, &cursor); } /* CopyInResponse */ static void -pqTraceOutputG(const char *message, int end, FILE *f) +pqTraceOutputG(FILE *f, const char *message, int end) { int cursor = 0; int nfields; int i; fprintf(f, "CopyInResponse\t"); - pqTraceOutputByte1(message, &cursor, f); - nfields = pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputByte1(f, message, &cursor); + nfields = pqTraceOutputInt16(f, message, &cursor); for (i = 0; i < nfields; i++) - pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputInt16(f, message, &cursor); } /* CopyOutResponse */ static void -pqTraceOutputH(const char *message, int end, FILE *f) +pqTraceOutputH(FILE *f, const char *message, int end) { int cursor = 0; int nfields; int i; fprintf(f, "CopyOutResponse\t"); - pqTraceOutputByte1(message, &cursor, f); - nfields = pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputByte1(f, message, &cursor); + nfields = pqTraceOutputInt16(f, message, &cursor); for (i = 0; i < nfields; i++) - pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputInt16(f, message, &cursor); } /* CopyBothResponse */ static void -pqTraceOutputW(const char *message, int end, FILE *f) +pqTraceOutputW(FILE *f, const char *message, int end) { int cursor = 0; fprintf(f, "CopyBothResponse\t"); - pqTraceOutputByte1(message, &cursor, f); + pqTraceOutputByte1(f, message, &cursor); while (end > cursor) - pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputInt16(f, message, &cursor); } /* Describe(F) or DataRow(B) */ static void -pqTraceOutputD(const char *message, int end, FILE *f, bool toServer) +pqTraceOutputD(FILE *f, bool toServer, const char *message, int end) { int cursor = 0; if (toServer) { fprintf(f, "Describe\t"); - pqTraceOutputByte1(message, &cursor, f); - pqTraceOutputString(message, &cursor, f); + pqTraceOutputByte1(f, message, &cursor); + pqTraceOutputString(f, message, &cursor); } else { @@ -339,45 +339,45 @@ pqTraceOutputD(const char *message, int end, FILE *f, bool toServer) int i; fprintf(f, "DataRow\t"); - nfields = pqTraceOutputInt16(message, &cursor, f); + nfields = pqTraceOutputInt16(f, message, &cursor); for (i = 0; i < nfields; i++) { - len = pqTraceOutputInt32(message, &cursor, f); + len = pqTraceOutputInt32(f, message, &cursor); if (len == -1) continue; - pqTraceOutputNchar(message, &cursor, f, len); + pqTraceOutputNchar(f, len, message, &cursor); } } } /* Execute(F) or ErrorResponse(B) */ static void -pqTraceOutputE(const char *message, int end, FILE *f, bool toServer) +pqTraceOutputE(FILE *f, bool toServer, const char *message, int end) { int cursor = 0; if (toServer) { fprintf(f, "Execute\t"); - pqTraceOutputString(message, &cursor, f); - pqTraceOutputInt32(message, &cursor, f); + pqTraceOutputString(f, message, &cursor); + pqTraceOutputInt32(f, message, &cursor); } else { fprintf(f, "ErrorResponse\t"); while (end > cursor) { - pqTraceOutputByte1(message, &cursor, f); + pqTraceOutputByte1(f, message, &cursor); if (message[cursor] == '\0') continue; - pqTraceOutputString(message, &cursor, f); + pqTraceOutputString(f, message, &cursor); } } } /* FunctionCall */ static void -pqTraceOutputF(const char *message, FILE *f) +pqTraceOutputF(FILE *f, const char *message) { int cursor = 0; int nfields; @@ -385,160 +385,160 @@ pqTraceOutputF(const char *message, FILE *f) int i; fprintf(f, "FunctionCall\t"); - pqTraceOutputInt32(message, &cursor, f); - nfields = pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputInt32(f, message, &cursor); + nfields = pqTraceOutputInt16(f, message, &cursor); for (i = 0; i < nfields; i++) - pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputInt16(f, message, &cursor); - nfields = pqTraceOutputInt16(message, &cursor, f); + nfields = pqTraceOutputInt16(f, message, &cursor); for (i = 0; i < nfields; i++) { - nbytes = pqTraceOutputInt32(message, &cursor, f); + nbytes = pqTraceOutputInt32(f, message, &cursor); if (nbytes == -1) continue; - pqTraceOutputNchar(message, &cursor, f, nbytes); + pqTraceOutputNchar(f, nbytes, message, &cursor); } - pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputInt16(f, message, &cursor); } /* FunctionCallResponse */ static void -pqTraceOutputV(const char *message, FILE *f) +pqTraceOutputV(FILE *f, const char *message) { int cursor = 0; int len; fprintf(f, "FunctionCallResponse\t"); - len = pqTraceOutputInt32(message, &cursor, f); + len = pqTraceOutputInt32(f, message, &cursor); if (len != -1) - pqTraceOutputNchar(message, &cursor, f, len); + pqTraceOutputNchar(f, len, message, &cursor); } /* NegotiateProtocolVersion */ static void -pqTraceOutputv(const char *message, FILE *f) +pqTraceOutputv(FILE *f, const char *message) { int cursor = 0; fprintf(f, "NegotiateProtocolVersion\t"); - pqTraceOutputInt32(message, &cursor, f); - pqTraceOutputInt32(message, &cursor, f); + pqTraceOutputInt32(f, message, &cursor); + pqTraceOutputInt32(f, message, &cursor); } /* NoticeResponse */ static void -pqTraceOutputN(const char *message, int end, FILE *f) +pqTraceOutputN(FILE *f, const char *message, int end) { int cursor = 0; fprintf(f, "NoticeResponse\t"); while (end > cursor) { - pqTraceOutputByte1(message, &cursor, f); + pqTraceOutputByte1(f, message, &cursor); if (message[cursor] == '\0') continue; - pqTraceOutputString(message, &cursor, f); + pqTraceOutputString(f, message, &cursor); } } /* NotificationResponse */ static void -pqTraceOutputA(const char *message, int end, FILE *f) +pqTraceOutputA(FILE *f, const char *message, int end) { int cursor = 0; fprintf(f, "NotificationResponse\t"); - pqTraceOutputInt32(message, &cursor, f); - pqTraceOutputString(message, &cursor, f); - pqTraceOutputString(message, &cursor, f); + pqTraceOutputInt32(f, message, &cursor); + pqTraceOutputString(f, message, &cursor); + pqTraceOutputString(f, message, &cursor); } /* ParameterDescription */ static void -pqTraceOutputt(const char *message, FILE *f) +pqTraceOutputt(FILE *f, const char *message) { int cursor = 0; int nfields; int i; fprintf(f, "ParameterDescription\t"); - nfields = pqTraceOutputInt16(message, &cursor, f); + nfields = pqTraceOutputInt16(f, message, &cursor); for (i = 0; i < nfields; i++) - pqTraceOutputInt32(message, &cursor, f); + pqTraceOutputInt32(f, message, &cursor); } /* ParameterStatus */ static void -pqTraceOutputS(const char *message, int end, FILE *f) +pqTraceOutputS(FILE *f, const char *message, int end) { int cursor = 0; fprintf(f, "ParameterStatus\t"); - pqTraceOutputString(message, &cursor, f); - pqTraceOutputString(message, &cursor, f); + pqTraceOutputString(f, message, &cursor); + pqTraceOutputString(f, message, &cursor); } /* Parse */ static void -pqTraceOutputP(const char *message, int end, FILE *f) +pqTraceOutputP(FILE *f, const char *message, int end) { int cursor = 0; int nparams; int i; fprintf(f, "Parse\t"); - pqTraceOutputString(message, &cursor, f); - pqTraceOutputString(message, &cursor, f); - nparams = pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputString(f, message, &cursor); + pqTraceOutputString(f, message, &cursor); + nparams = pqTraceOutputInt16(f, message, &cursor); for (i = 0; i < nparams; i++) - pqTraceOutputInt32(message, &cursor, f); + pqTraceOutputInt32(f, message, &cursor); } /* Query */ static void -pqTraceOutputQ(const char *message, int end, FILE *f) +pqTraceOutputQ(FILE *f, const char *message, int end) { int cursor = 0; fprintf(f, "Query\t"); - pqTraceOutputString(message, &cursor, f); + pqTraceOutputString(f, message, &cursor); } /* ReadyForQuery */ static void -pqTraceOutputZ(const char *message, FILE *f) +pqTraceOutputZ(FILE *f, const char *message) { int cursor = 0; fprintf(f, "ReadyForQuery\t"); - pqTraceOutputByte1(message, &cursor, f); + pqTraceOutputByte1(f, message, &cursor); } /* RowDescription */ static void -pqTraceOutputT(const char *message, int end, FILE *f) +pqTraceOutputT(FILE *f, const char *message, int end) { int cursor = 0; int nfields; int i; fprintf(f, "RowDescription\t"); - nfields = pqTraceOutputInt16(message, &cursor, f); + nfields = pqTraceOutputInt16(f, message, &cursor); for (i = 0; i < nfields; i++) { - pqTraceOutputString(message, &cursor, f); - pqTraceOutputInt32(message, &cursor, f); - pqTraceOutputInt16(message, &cursor, f); - pqTraceOutputInt32(message, &cursor, f); - pqTraceOutputInt16(message, &cursor, f); - pqTraceOutputInt32(message, &cursor, f); - pqTraceOutputInt16(message, &cursor, f); + pqTraceOutputString(f, message, &cursor); + pqTraceOutputInt32(f, message, &cursor); + pqTraceOutputInt16(f, message, &cursor); + pqTraceOutputInt32(f, message, &cursor); + pqTraceOutputInt16(f, message, &cursor); + pqTraceOutputInt32(f, message, &cursor); + pqTraceOutputInt16(f, message, &cursor); } } @@ -569,76 +569,76 @@ pqTraceOutputMessage(PGconn *conn, const char *message, bool toServer) switch(id) { case 'R': /* Authentication */ - pqTraceOutputR(message + LogCursor, conn->Pfdebug); + pqTraceOutputR(conn->Pfdebug, message + LogCursor); break; case 'K': /* secret key data from the backend */ - pqTraceOutputK(message + LogCursor, conn->Pfdebug); + pqTraceOutputK(conn->Pfdebug, message + LogCursor); break; case 'B': /* Bind */ - pqTraceOutputB(message + LogCursor, LogEnd, conn->Pfdebug); + pqTraceOutputB(conn->Pfdebug, message + LogCursor, LogEnd); break; case 'C': /* Close(F) or Command Complete(B) */ - pqTraceOutputC(message + LogCursor, LogEnd, conn->Pfdebug, toServer); + pqTraceOutputC(conn->Pfdebug, toServer, message + LogCursor, LogEnd); break; case 'd': /* Copy Data */ /* Drop COPY data to reduce the overhead of logging. */ break; case 'f': /* Copy Fail */ - pqTraceOutputf(message + LogCursor, LogEnd, conn->Pfdebug); + pqTraceOutputf(conn->Pfdebug, message + LogCursor, LogEnd); break; case 'G': /* Start Copy In */ - pqTraceOutputG(message + LogCursor, LogEnd, conn->Pfdebug); + pqTraceOutputG(conn->Pfdebug, message + LogCursor, LogEnd); break; case 'H': /* Flush(F) or Start Copy Out(B) */ if (!toServer) - pqTraceOutputH(message + LogCursor, LogEnd, conn->Pfdebug); + pqTraceOutputH(conn->Pfdebug, message + LogCursor, LogEnd); else fprintf(conn->Pfdebug, "Flush"); break; case 'W': /* Start Copy Both */ - pqTraceOutputW(message + LogCursor, LogEnd, conn->Pfdebug); + pqTraceOutputW(conn->Pfdebug, message + LogCursor, LogEnd); break; case 'D': /* Describe(F) or Data Row(B) */ - pqTraceOutputD(message + LogCursor, LogEnd, conn->Pfdebug, toServer); + pqTraceOutputD(conn->Pfdebug, toServer, message + LogCursor, LogEnd); break; case 'E': /* Execute(F) or Error Response(B) */ - pqTraceOutputE(message + LogCursor, LogEnd, conn->Pfdebug, toServer); + pqTraceOutputE(conn->Pfdebug, toServer, message + LogCursor, LogEnd); break; case 'F': /* Function Call */ - pqTraceOutputF(message + LogCursor, conn->Pfdebug); + pqTraceOutputF(conn->Pfdebug, message + LogCursor); break; case 'V': /* Function Call response */ - pqTraceOutputV(message + LogCursor, conn->Pfdebug); + pqTraceOutputV(conn->Pfdebug, message + LogCursor); break; case 'v': /* Negotiate Protocol Version */ - pqTraceOutputv(message + LogCursor, conn->Pfdebug); + pqTraceOutputv(conn->Pfdebug, message + LogCursor); break; case 'N': /* Notice Response */ - pqTraceOutputN(message + LogCursor, LogEnd, conn->Pfdebug); + pqTraceOutputN(conn->Pfdebug, message + LogCursor, LogEnd); break; case 'A': /* Notification Response */ - pqTraceOutputA(message + LogCursor, LogEnd, conn->Pfdebug); + pqTraceOutputA(conn->Pfdebug, message + LogCursor, LogEnd); break; case 't': /* Parameter Description */ - pqTraceOutputt(message + LogCursor, conn->Pfdebug); + pqTraceOutputt(conn->Pfdebug, message + LogCursor); break; case 'S': /* Parameter Status(B) or Sync(F) */ if (!toServer) - pqTraceOutputS(message + LogCursor, LogEnd, conn->Pfdebug); + pqTraceOutputS(conn->Pfdebug, message + LogCursor, LogEnd); else fprintf(conn->Pfdebug, "Sync"); break; case 'P': /* Parse */ - pqTraceOutputP(message + LogCursor, LogEnd, conn->Pfdebug); + pqTraceOutputP(conn->Pfdebug, message + LogCursor, LogEnd); break; case 'Q': /* Query */ - pqTraceOutputQ(message + LogCursor, LogEnd, conn->Pfdebug); + pqTraceOutputQ(conn->Pfdebug, message + LogCursor, LogEnd); break; case 'Z': /* Ready For Query */ - pqTraceOutputZ(message + LogCursor, conn->Pfdebug); + pqTraceOutputZ(conn->Pfdebug, message + LogCursor); break; case 'T': /* Row Description */ - pqTraceOutputT(message + LogCursor, LogEnd, conn->Pfdebug); + pqTraceOutputT(conn->Pfdebug, message + LogCursor, LogEnd); break; case '2': /* Bind Complete */ fprintf(conn->Pfdebug, "BindComplete"); @@ -702,9 +702,9 @@ pqTraceOutputNoTypeByteMessage(PGconn *conn, const char *message) { case 16: /* CancelRequest */ fprintf(conn->Pfdebug, "CancelRequest\t"); - pqTraceOutputInt32(message, &LogCursor, conn->Pfdebug); - pqTraceOutputInt32(message, &LogCursor, conn->Pfdebug); - pqTraceOutputInt32(message, &LogCursor, conn->Pfdebug); + pqTraceOutputInt32(conn->Pfdebug, message, &LogCursor); + pqTraceOutputInt32(conn->Pfdebug, message, &LogCursor); + pqTraceOutputInt32(conn->Pfdebug, message, &LogCursor); break; case 8 : /* GSSENCRequest or SSLRequest */ /* These messages do not reach here. */ -- 2.20.1 --qDbXVdCdHGoSgWSk Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="v30-0004-use-F-B-instead-of.patch"