Thread: pgAdmin III: crash when trying to save edited pg_hba.conf

pgAdmin III: crash when trying to save edited pg_hba.conf

From
Nikhil S
Date:
Hi,

The following set of operations induce a crash in the latest git code base:

1. Open pgAdmin III
2. Go to File Menu->Open Postgressql.conf
3. From data folder select pg_hba.conf file and open it
4. The file opens successfully
5. Now select any setting ("port" for example) and add a Value and Comment to it
6. A save of this induces a crash

The issue appears to be in the dlgMainConfig::dlgMainConfig() function. If there is no old setting present, the item->newLine object uses the default constructor. This does not set the item->newLine->item field at all. 

While eventually saving this via frmMainConfig::WriteFile() function, we end up accessing the null "item" field causing this segmentation fault. The fix is to set this field properly inside the dlgMainConfig call above. Is my reasoning and the attached fix correct? Please let me know.

Regards,
Nikhils
Attachment

Re: pgAdmin III: crash when trying to save edited pg_hba.conf

From
Guillaume Lelarge
Date:
Le 28/01/2011 10:18, Nikhil S a écrit :
> Hi,
>
> The following set of operations induce a crash in the latest git code base:
>
> 1. Open pgAdmin III
> 2. Go to File Menu->Open Postgressql.conf
> 3. From data folder select pg_hba.conf file and open it
> 4. The file opens successfully
> 5. Now select any setting ("port" for example) and add a Value and Comment
> to it
> 6. A save of this induces a crash
>
> The issue appears to be in the dlgMainConfig::dlgMainConfig() function. If
> there is no old setting present, the item->newLine object uses the default
> constructor. This does not set the item->newLine->item field at all.
>
> While eventually saving this via frmMainConfig::WriteFile() function, we end
> up accessing the null "item" field causing this segmentation fault. The fix
> is to set this field properly inside the dlgMainConfig call above. Is my
> reasoning and the attached fix correct? Please let me know.
>

Seems good enough. Commited. Thanks a lot :)


--
Guillaume
 http://www.postgresql.fr
 http://dalibo.com

Re: pgAdmin III: crash when trying to save edited pg_hba.conf

From
Nikhil S
Date:

Seems good enough. Commited. Thanks a lot :)


Thanks a lot!

Regards,
Nikhils

Re: pgAdmin III: crash when trying to save edited pg_hba.conf

From
Dave Page
Date:
On Fri, Jan 28, 2011 at 10:39 PM, Guillaume Lelarge
<guillaume@lelarge.info> wrote:
> Le 28/01/2011 10:18, Nikhil S a écrit :
>> Hi,
>>
>> The following set of operations induce a crash in the latest git code base:
>>
>> 1. Open pgAdmin III
>> 2. Go to File Menu->Open Postgressql.conf
>> 3. From data folder select pg_hba.conf file and open it
>> 4. The file opens successfully
>> 5. Now select any setting ("port" for example) and add a Value and Comment
>> to it
>> 6. A save of this induces a crash
>>
>> The issue appears to be in the dlgMainConfig::dlgMainConfig() function. If
>> there is no old setting present, the item->newLine object uses the default
>> constructor. This does not set the item->newLine->item field at all.
>>
>> While eventually saving this via frmMainConfig::WriteFile() function, we end
>> up accessing the null "item" field causing this segmentation fault. The fix
>> is to set this field properly inside the dlgMainConfig call above. Is my
>> reasoning and the attached fix correct? Please let me know.
>>
>
> Seems good enough. Commited. Thanks a lot :)

Thanks Guillaume. I had put this on my TODO :-)

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company