]> granicus.if.org Git - postgresql/commitdiff
Fix erroneous error message printout when a configuration file contains
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 25 May 2004 19:11:14 +0000 (19:11 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 25 May 2004 19:11:14 +0000 (19:11 +0000)
an overlength token.  Printout was always garbage and could dump core
entirely :-(.  Per report from Martin Pitt.

src/backend/libpq/hba.c

index 00acbcf561708afe920e15a6cfb6e4658801a8e7..d4204acfd576acaec5d7913b921381d5147622e9 100644 (file)
@@ -10,7 +10,7 @@
  *
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/backend/libpq/hba.c,v 1.121 2004/05/19 22:06:16 tgl Exp $
+ *       $PostgreSQL: pgsql/src/backend/libpq/hba.c,v 1.122 2004/05/25 19:11:14 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -144,14 +144,14 @@ next_token(FILE *fp, char *buf, int bufsz)
 
                if (buf >= end_buf)
                {
+                       *buf = '\0';
                        ereport(LOG,
                                        (errcode(ERRCODE_CONFIG_FILE_ERROR),
                                         errmsg("authentication file token too long, skipping: \"%s\"",
-                                                       buf)));
+                                                       start_buf)));
                        /* Discard remainder of line */
                        while ((c = getc(fp)) != EOF && c != '\n')
                                ;
-                       buf[0] = '\0';
                        break;
                }