Magnus Hagander <mag...@hagander.net> writes:
> There is some nice precedent in the CREATE TABLESPACE command (though
> dependent on HAVE_SYMLINK and not HAVE_READLINK), so I'm just going to
> copy the error message from there.

Fair enough.

Looking at the existing readlink use in port/exec.c, it strikes me that
another thing you'd better do is include a check for buffer overrun,
ie the test needs to be more like

                rllen = readlink(fname, link_buf, sizeof(link_buf));
                if (rllen < 0 || rllen >= sizeof(link_buf))
                        ... fail ...

Also, you're assuming that the result is already null-terminated,
which is incorrect.

                        regards, tom lane

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to