Re: [GENERAL] Clang 3.3 Analyzer Results

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: [GENERAL] Clang 3.3 Analyzer Results
Дата
Msg-id 945.1384439726@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: [GENERAL] Clang 3.3 Analyzer Results  (Magnus Hagander <magnus@hagander.net>)
Список pgsql-hackers
Magnus Hagander <magnus@hagander.net> writes:
> That code was originally "stolen" from psql, and then whacked around a
> number of times.  The part about looping and passwords, for example, is in
> startup.c in psql as well. We probably want to fix it there as well (even
> if it doesn't have the same problem, it has the same general design). Or
> perhaps even put that function somewhere shared between the two?

> It's also in pg_dump/pg_backup_db.c, there's a version of it in
> pg_dumpall.c, etc. Which I think is a good argument for fixing them all by
> sharing the code somewhere? In fact, we already have some in
> script/common.c - but it's only used by the tools that are in script/.

Hm, maybe, but where?  It's inappropriate for libpgcommon (we don't
want that calling libpq), so I'm not real sure what to do with it.
Also it's not clear to me that all these tools would have the same
requirements for the non-password parameters for the connection request.

BTW, I realized while fooling with this that although the code looks like
it's intended to iterate till a correct password is obtained, actually it
cannot prompt more than once, because of the way PQconnectionNeedsPassword
is coded.  Therefore, the double free that clang is worried about can't
really happen.  It's still worth fixing IMO.
        regards, tom lane



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

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: init_sequence spill to hash table
Следующее
От: Garick Hamlin
Дата:
Сообщение: Re: additional json functionality