initdb SegFault

Поиск
Список
Период
Сортировка
От vignesh C
Тема initdb SegFault
Дата
Msg-id CALDaNm0ubwYDzbdYG5ezr6_qLodFM7KGoUJJJQQOBXe6_r=ZEQ@mail.gmail.com
обсуждение исходный текст
Ответы Re: initdb SegFault  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Hi,

While checking initdb code, I found one segmentation fault, stack
trace for the same is:
Core was generated by `./initdb -D data6'.
Program terminated with signal 11, Segmentation fault.
#0  0x000000000040ea22 in main (argc=3, argv=0x7ffc82237308) at initdb.c:3340
3340        printf(_("\nSuccess. You can now start the database server
using:\n\n"

Analysis for the same is given below:
createPQExpBuffer allocates memory and returns the pointer, there is a
possibility that createPQExpBuffer can return NULL pointer in case of
malloc failiure, but initdb's main function does not check this
condition. During malloc failure when pointer is accessed it results
in segmentation fault. Made changes to check and exit if
createPQExpBuffer return's NULL pointer. Patch for the same is
attached.

Let me know your thoughts for the same. Similar issue exists in few
other places, if changes are ok, I can check and fix the issue in
other places also.

Regards,
Vignesh
EnterpriseDB: http://www.enterprisedb.com

Вложения

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

Предыдущее
От: Julien Rouhaud
Дата:
Сообщение: Re: Planning counters in pg_stat_statements (using pgss_store)
Следующее
От: Nicolas Lutic
Дата:
Сообщение: Re: PITR on DROP DATABASE, deleting of the database directory despitethe recovery_target_time set before.