Re: strncpy is not a safe version of strcpy - Mailing list pgsql-hackers

From Stephen Frost
Subject Re: strncpy is not a safe version of strcpy
Date
Msg-id 20131115145324.GB17272@tamriel.snowman.net
Whole thread Raw
In response to Re: strncpy is not a safe version of strcpy  (Andres Freund <andres@2ndquadrant.com>)
Responses Re: strncpy is not a safe version of strcpy  (Andres Freund <andres@2ndquadrant.com>)
List pgsql-hackers
* Andres Freund (andres@2ndquadrant.com) wrote:
> FWIW, argv0 is pretty much guaranteed to be shorter than MAXPGPATH since
> MAXPGPATH is the longest a path can be, and argv[0] is either the executable's
> name (if executed via PATH) or the path to the executable.

Err, it's the longest that *we* think the path can be..  That's not the
same as actually being the longest that a path can be, which depends on
the filesystem and OS...  It's not hard to get past our 1024 limit:

sfrost@beorn:/really/long/path> echo $PWD | wc -c
1409

> Now, you could probably write a program to exeve() a binary with argv[0]
> being longer, but in that case you can also just put garbage in there.

We shouldn't blow up in that case either, really.
Thanks,
    Stephen

pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: strncpy is not a safe version of strcpy
Next
From: Robert Haas
Date:
Subject: Re: ERROR during end-of-xact/FATAL