Re: Fwd: Bug#249083: postgresql: Postgres SIGSEGV if wins in nsswitch.conf
От | Tom Lane |
---|---|
Тема | Re: Fwd: Bug#249083: postgresql: Postgres SIGSEGV if wins in nsswitch.conf |
Дата | |
Msg-id | 22923.1085495933@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Fwd: Bug#249083: postgresql: Postgres SIGSEGV if wins in nsswitch.conf (Martin Pitt <martin@piware.de>) |
Ответы |
Re: Fwd: Bug#249083: postgresql: Postgres SIGSEGV if wins in nsswitch.conf
|
Список | pgsql-bugs |
Martin Pitt <martin@piware.de> writes: > 2004-05-14 14:50:14 [8725] LOG: authentication file token too long, skippi= > ng: "=98.=ED=F1 > Segmentation fault Looking at the only place this message is produced, in src/backend/libpq/hba.c, it appears that we are printing a string buffer that is not guaranteed null-terminated. The segfault might be due to that. I would suggest adding more paranoia along these lines: if (buf >= end_buf) { + *buf = '\0'; ereport(LOG, (errcode(ERRCODE_CONFIG_FILE_ERROR), errmsg("authentication file token too long, skipping: \"%s\"", buf))); /* Discard remainder of line */ while ((c = getc(fp)) != EOF && c != '\n') ; - buf[0] = '\0'; break; } This won't fix the underlying problem (where is the junk data coming from?) but it might at least let you get further in your investigation. regards, tom lane
В списке pgsql-bugs по дате отправления: