Re: [HACKERS] Segmentation fault with lo_export - Mailing list pgsql-hackers

From Edmund Mergl
Subject Re: [HACKERS] Segmentation fault with lo_export
Date
Msg-id 35E4407F.5034C28D@bawue.de
Whole thread Raw
In response to Re: [HACKERS] Segmentation fault with lo_export  (Bruce Momjian <maillist@candle.pha.pa.us>)
Responses Re: [HACKERS] Segmentation fault with lo_export  (Bruce Momjian <maillist@candle.pha.pa.us>)
Re: [HACKERS] Segmentation fault with lo_export  (Bruce Momjian <maillist@candle.pha.pa.us>)
List pgsql-hackers
Bruce Momjian wrote:
>
> Edmund, has this been fixed?
>
> > Hello,
> >
> > this problem appeared quite frequently in the last two years:
> > the libpq-function lo_export gives a segmentation fault.
> >
> > This happend with the current snapshot (I don't remember the
> > date, it was begin of June, filesize: 3980592) on Linux-2.0.34.
> > It worked with Postgresql-6.3.2.
> >
> > Edmund


Hi Bruce,

it looks like the last time I tested lo_export it worked
just by chance.

The bug seems to be in interfaces/libpq/fe-lobj.c line 424.
The two functions lo_import and lo_export are somehow
similar when exchanging the read/write for Unix file
and inv file. But whereas read() reads exactly BUFSIZ
bytes, lo_read() appends a '\0' after having read
BUFSIZ bytes. So line 424 should be:

      char        buf[LO_BUFSIZE+1];

instead of:

    char        buf[LO_BUFSIZE];

Could you please apply this bug-fix ?
Also the code example in the man page for
large-objects needs to be corrected.

I can't do it by myself because I am on
vacation on a Greek island, and the only
message I'm seeing frequently is
'modem hangup, no CARRIER' ...

thanks
Edmund
--
Edmund Mergl          mailto:E.Mergl@bawue.de
Im Haldenhau 9        http://www.bawue.de/~mergl
70565 Stuttgart       fon: +49 711 747503
Germany

pgsql-hackers by date:

Previous
From: The Hermit Hacker
Date:
Subject: Re: TODO (was: Re: [HACKERS] Problem with parser)
Next
From: "Jackson, DeJuan"
Date:
Subject: RE: TODO (was: Re: [HACKERS] Problem with parser)