<feed xmlns='http://www.w3.org/2005/Atom'>
<title>fortify-headers/include/stdlib.h, branch 0.8</title>
<subtitle>Standalone portable header-based implementation of FORTIFY_SOURCE=3 
</subtitle>
<id>http://git.dustri.org/fortify-headers/atom?h=0.8</id>
<link rel='self' href='http://git.dustri.org/fortify-headers/atom?h=0.8'/>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/'/>
<updated>2016-07-14T15:09:13Z</updated>
<entry>
<title>Only include limits.h when actually used</title>
<updated>2016-07-14T15:09:13Z</updated>
<author>
<name>Natanael Copa</name>
</author>
<published>2016-07-14T14:45:11Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=9880d5864bfa5ae3fa6ca7b739953ac5f74524be'/>
<id>urn:sha1:9880d5864bfa5ae3fa6ca7b739953ac5f74524be</id>
<content type='text'>
The __extension__ seems to trigger a bug in gcc when there are no
identifier specified afterwards.

Testcase:
  echo "#include &lt;stdlib.h&gt;" &gt; try.c &amp;&amp; cc -O0 -c try.c
  try.c:2:0: error: expected identifier or '(' at end of input

With -O2 it does not happen.

We work around this by only pulling in limits.h when we actually need the
PATH_MAX.

Signed-off-by: Natanael Copa &lt;ncopa@alpinelinux.org&gt;
</content>
</entry>
<entry>
<title>Only crash on overflow for realpath()</title>
<updated>2015-07-16T10:45:19Z</updated>
<author>
<name>sin</name>
</author>
<published>2015-07-16T10:45:19Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=60dcebb6b812097eb6ca141086c2d8c1875d3347'/>
<id>urn:sha1:60dcebb6b812097eb6ca141086c2d8c1875d3347</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add __extension__ mark to include_next to silence -pedantic</title>
<updated>2015-06-25T09:18:26Z</updated>
<author>
<name>Steven Barth</name>
</author>
<published>2015-06-24T18:13:37Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=7fd984fcb532be01f68cddc194c09a7ca10c1ea6'/>
<id>urn:sha1:7fd984fcb532be01f68cddc194c09a7ca10c1ea6</id>
<content type='text'>
Signed-off-by: Steven Barth &lt;steven@midlink.org&gt;
</content>
</entry>
<entry>
<title>Use namespace-safe macro, param and variable names</title>
<updated>2015-06-03T17:55:35Z</updated>
<author>
<name>Trutz Behn</name>
</author>
<published>2015-06-03T17:27:01Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=1cd5461a5375207602f2cbdfd9a50a9b751cb7c8'/>
<id>urn:sha1:1cd5461a5375207602f2cbdfd9a50a9b751cb7c8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add LICENSE header</title>
<updated>2015-05-13T11:15:36Z</updated>
<author>
<name>sin</name>
</author>
<published>2015-05-13T11:15:36Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=07adb509146e4185b9b7587baad26cdfb766c67e'/>
<id>urn:sha1:07adb509146e4185b9b7587baad26cdfb766c67e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add fortify_fn() helper in fortify-headers.h</title>
<updated>2015-05-13T11:05:29Z</updated>
<author>
<name>sin</name>
</author>
<published>2015-05-13T11:04:15Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=158782b3bb791eae3c97947944c7023452bfbc96'/>
<id>urn:sha1:158782b3bb791eae3c97947944c7023452bfbc96</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Minor style fix</title>
<updated>2015-05-07T17:04:01Z</updated>
<author>
<name>sin</name>
</author>
<published>2015-05-07T17:04:01Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=316a48653315b4bc36d8c50b542471b18441c9d5'/>
<id>urn:sha1:316a48653315b4bc36d8c50b542471b18441c9d5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix realpath when stdlib.h is included before limits.h</title>
<updated>2015-05-07T14:02:11Z</updated>
<author>
<name>Natanael Copa</name>
</author>
<published>2015-05-07T12:50:03Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=c2bb9e106a32619726cfc5052a1509e96b90de9f'/>
<id>urn:sha1:c2bb9e106a32619726cfc5052a1509e96b90de9f</id>
<content type='text'>
If program includes stdlib.h before limits.h without _XOPEN_SOURCE,
_GNU_SOURCE or _BSD_SOURCE explicitly set, then will it always trigger
the trap with musl libc.

This is becase stdlib.h will pull in features.h which will set
_GNU_SOURCE. This means that the fortify stdlib.h will not include
limits.h but it will still trigger the fortified realpath(), but without
PATH_MAX set.

We fix this by including system stdlib.h before testing if limits.h
should be included.

Since PATH_MAX is known at compile time we can also error at compile
time, instead of compiling a broken realpath().
</content>
</entry>
<entry>
<title>Use __typeof__ to in part avoid replicating function types</title>
<updated>2015-03-14T20:37:27Z</updated>
<author>
<name>Trutz Behn</name>
</author>
<published>2015-03-14T19:06:48Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=22e7e51007f3a28ded43f6cb8f0ff59a7a691175'/>
<id>urn:sha1:22e7e51007f3a28ded43f6cb8f0ff59a7a691175</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add __artificial__ to aid in debugging</title>
<updated>2015-03-14T09:38:22Z</updated>
<author>
<name>sin</name>
</author>
<published>2015-03-14T09:38:11Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=37eb2c9c1d71c2ff21605ecaf46cdd926244d361'/>
<id>urn:sha1:37eb2c9c1d71c2ff21605ecaf46cdd926244d361</id>
<content type='text'>
</content>
</entry>
</feed>
