[rrd-developers] Hurd build failure

Jean-Michel Vourgère nirgal at debian.org
Sun Jul 26 01:37:16 CEST 2015


Hi

I'm having a look at the history of problems caused by usage of
PATH_MAX. There has been a few proposals since August 2013, but they
were based on a Debian / GNU Linux version that already contained a
patch for hurd, which was introduced back in 2009, and never made it to
the official repository.

Patches by Svante Signell only are about rrd_daemon.c and rrd_client.c.
So, I'm pretty sure they assume the other occurrences have been fixed.

Attached is the original patch by Marc Dequènes for rrd_graph.c,
rrd_graph.h and rrd_tool.c, refreshed against branch 1.5.

In Debian and derivatives, it's been applied to every version since
2009. I reviewed it and it still seems ok.
I think it's just missing a conditional free(im->graphfile) in im_free().

Before creating a pull request, I'd like you opinion about the #if usage:
On one hand, it's nice to have it, since we avoid a malloc and use the heap.
On the other hand, it makes the code more complex, and filename
allocation during graphical operation probably doesn't use a lot of
ressources compared to cairo ploting, so it doesn't seem worth the trouble.

I slightly prefer version that works everywhere, and would like to
remove the static length usage, so that the code is more simple. How
does that sound?
Shall I make a request against master or against the 1.5 branch?

I saw some questions in the list about whether hurd is broken for not
defining PATH_MAX. If I understand correctly, PATH_MAX is not part of
posix. Further more, if an OS set the file name size limit to 4k, 64k or
even much more, there will be issues using the stack. Yes it's a pain,
but in my opinion, that's the right thing to do.

-- 
Nirgal
-------------- next part --------------
A non-text attachment was scrubbed...
Name: hurd_2009.diff
Type: text/x-diff
Size: 2412 bytes
Desc: not available
URL: <http://lists.oetiker.ch/pipermail/rrd-developers/attachments/20150725/0679924d/attachment.diff>


More information about the rrd-developers mailing list