Re: pstrndup() - Mailing list pgsql-patches

From Tom Lane
Subject Re: pstrndup()
Date
Msg-id 29697.1079967841@sss.pgh.pa.us
Whole thread Raw
In response to Re: pstrndup()  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: pstrndup()
List pgsql-patches
Bruce Momjian <pgman@candle.pha.pa.us> writes:
> Karel Zak wrote:
>> The result of  strndup() is always zero terminated. It's  more safe and
>> strndup() is  binary safe because  it doesn't check something  in input
>> string. The pstrndup() is based on PostgreSQL memory managment.

> Can you find places to use this function our backend?  Seems that should
> be part of the patch.

A bit of googling showed that strndup does appear in the "Linux
standards base", but it is not to be found in the Single Unix Spec.
That makes it at most quasi-standard IMHO.

Like Bruce, I'd like to see a more convincing use-case before adopting
not-very-standard functions.  I don't think people will expect pstrndup
to exist, or be very likely to use it if it's there, or necessarily know
what its behavior is (for sure I was confused by the naming similarity
with strncpy).  That's a lot of strikes for something that replaces only
three lines of C ...

            regards, tom lane

pgsql-patches by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: pstrndup()
Next
From: Andrew Dunstan
Date:
Subject: Re: listening addresses