Re: Out-of-bounds write and incorrect detection of trigger file in pg_standby

Поиск
Список
Период
Сортировка
От Robert Haas
Тема Re: Out-of-bounds write and incorrect detection of trigger file in pg_standby
Дата
Msg-id CA+Tgmoa5H+TWcTouCBUZq8LoZ+fsJaDsLBrVM=Hq-0JbVF-88Q@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Out-of-bounds write and incorrect detection of trigger file in pg_standby  (Michael Paquier <michael.paquier@gmail.com>)
Список pgsql-hackers
On Wed, Jan 14, 2015 at 9:27 PM, Michael Paquier
<michael.paquier@gmail.com> wrote:
> On Thu, Jan 15, 2015 at 7:13 AM, Robert Haas <robertmhaas@gmail.com> wrote:
>> Instead of doing this:
>>
>>     if (len < sizeof(buf))
>>         buf[len] = '\0';
>>
>> ...I would suggest making the size of the buffer one greater than the
>> size of the read(), and then always nul-terminating the buffer.  It
>> seems to me that would make the code easier to reason about.
> How about the attached then? This way we still detect the same way any
> invalid values:
> -       if ((len = read(fd, buf, sizeof(buf))) < 0)
> +       if ((len = read(fd, buf, sizeof(buf) - 1)) < 0)

Committed and back-patched all the way.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



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

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: Minor configure tweak to simplify adjusting gcc warnings
Следующее
От: Robert Haas
Дата:
Сообщение: Re: Safe memory allocation functions