Re: [HACKERS] Patch to implement pg_current_logfile() function

Поиск
Список
Период
Сортировка
От Gilles Darold
Тема Re: [HACKERS] Patch to implement pg_current_logfile() function
Дата
Msg-id 718700bc-8215-12ba-1b03-7ed8d0d0b902@dalibo.com
обсуждение исходный текст
Ответ на Re: [HACKERS] Patch to implement pg_current_logfile() function  ("Karl O. Pinc" <kop@meme.com>)
Ответы Re: [HACKERS] Patch to implement pg_current_logfile() function  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
Le 11/12/2016 à 04:38, Karl O. Pinc a écrit :
> On Sat, 10 Dec 2016 19:41:21 -0600
> "Karl O. Pinc" <kop@meme.com> wrote:
>
>> On Fri, 9 Dec 2016 23:36:12 -0600
>> "Karl O. Pinc" <kop@meme.com> wrote:
>>
>>> Instead I propose (code I have not actually executed):
>>> ...
>>> char    lbuffer[MAXPGPATH];
>>> char    *log_format = lbuffer;
>>> ...
>>>
>>>     /* extract log format and log file path from the line */
>>>     log_filepath = strchr(lbuffer, ' ');  /* lbuffer == log_format
>>> */ *log_filepath = '\0';                 /* terminate log_format */
>>>     log_filepath++;                       /* start of file path */
>>>     log_filepath[strcspn(log_filepath, "\n")] = '\0';  
>> Er, I guess I prefer the more paranoid, just because who knows
>> what might have manged to somehow write the file that's read
>> into lbuffer:
>>
>> ...
>> char    lbuffer[MAXPGPATH];
>> char    *log_format = lbuffer;
>> ...
>>
>>     /* extract log format and log file path from the line */
>>     if (log_filepath = strchr(lbuffer, ' ')) /* lbuffer == log_format
>> */ *log_filepath = '\0';                /* terminate log_format */
>>     log_filepath++;                          /* start of file path */
>>     log_filepath[strcspn(log_filepath, "\n")] = '\0';
> *sigh*
>
>
> ...
> char    lbuffer[MAXPGPATH];
> char    *log_format = lbuffer;
> ...
>
>     /* extract log format and log file path from the line */
>     /* lbuffer == log_format, they share storage */
>     if (log_filepath = strchr(lbuffer, ' '))
>         *log_filepath = '\0';   /* terminate log_format */
>     else
>     {
>         /* Unknown format, no space. Return NULL to caller. */
>         lbuffer[0] = '\0';
>         break;
>     }
>     log_filepath++;              /* start of file path   */
>     log_filepath[strcspn(log_filepath, "\n")] = '\0';
>

Applied in last version of the patch v18 as well as removing of an
unused variable.


-- 
Gilles Darold
Consultant PostgreSQL
http://dalibo.com - http://dalibo.org


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Heikki Linnakangas
Дата:
Сообщение: Re: [HACKERS] pgcrypto compilation error due to stack-allocatedEVP_CIPHER_CTX
Следующее
От: Heikki Linnakangas
Дата:
Сообщение: Re: [HACKERS] Password identifiers, protocol aging and SCRAM protocol