<feed xmlns='http://www.w3.org/2005/Atom'>
<title>fortify-headers/include/sys, branch 2.0</title>
<subtitle>Standalone portable header-based implementation of FORTIFY_SOURCE=3 
</subtitle>
<id>http://git.dustri.org/fortify-headers/atom?h=2.0</id>
<link rel='self' href='http://git.dustri.org/fortify-headers/atom?h=2.0'/>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/'/>
<updated>2023-11-16T15:42:41Z</updated>
<entry>
<title>Add hardening for select()</title>
<updated>2023-11-16T15:42:41Z</updated>
<author>
<name>jvoisin</name>
</author>
<published>2023-11-16T15:42:41Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=52ec4848225a0e9f577272015ced52c45923d4ba'/>
<id>urn:sha1:52ec4848225a0e9f577272015ced52c45923d4ba</id>
<content type='text'>
This is unlikely to be used, since fd_set is
usually manipulated by macros, but it doesn't hurt
to add a simple comparison.
</content>
</entry>
<entry>
<title>Add support for FD_ISSET</title>
<updated>2023-11-01T20:55:04Z</updated>
<author>
<name>jvoisin</name>
</author>
<published>2023-11-01T20:55:04Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=cfdcaf72ca60db28ad8a7240a5a09e99151cab24'/>
<id>urn:sha1:cfdcaf72ca60db28ad8a7240a5a09e99151cab24</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Clean up some includes</title>
<updated>2023-08-22T18:08:52Z</updated>
<author>
<name>jvoisin</name>
</author>
<published>2023-08-22T18:08:52Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=2c610a26730540ff917cf83dd9dc5387184001b2'/>
<id>urn:sha1:2c610a26730540ff917cf83dd9dc5387184001b2</id>
<content type='text'>
- Remove a superfluous `#if defined(__has_builtin)` since it's already
  accounted for in include/fortify-headers.h
- Replace `_FORTIFY_FD_POS0` with the already existing `_FORTIFY_POS0`
- Factorise some duplicate code into a macro
</content>
</entry>
<entry>
<title>Harden umask</title>
<updated>2023-08-21T15:48:29Z</updated>
<author>
<name>jvoisin</name>
</author>
<published>2023-08-21T15:46:03Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=cceaaa8161eb8b0b39854215417b39a9703b7aa5'/>
<id>urn:sha1:cceaaa8161eb8b0b39854215417b39a9703b7aa5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add access annotations to sys/socket.h</title>
<updated>2023-07-05T13:48:14Z</updated>
<author>
<name>jvoisin</name>
</author>
<published>2023-07-05T13:48:14Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=62199030394acd30ab44bc21af7078ae993fd149'/>
<id>urn:sha1:62199030394acd30ab44bc21af7078ae993fd149</id>
<content type='text'>
</content>
</entry>
<entry>
<title>add initial clang support</title>
<updated>2023-06-25T16:26:45Z</updated>
<author>
<name>Daniel Kolesa</name>
</author>
<published>2022-10-25T22:30:00Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=fe149628eaae9748be08815d726cc56e8e492c73'/>
<id>urn:sha1:fe149628eaae9748be08815d726cc56e8e492c73</id>
<content type='text'>
</content>
</entry>
<entry>
<title>avoid __extension__ with clang</title>
<updated>2023-06-25T16:13:11Z</updated>
<author>
<name>Daniel Kolesa</name>
</author>
<published>2022-11-01T19:14:54Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=adae76af26e498af6c3004a52a4b1de2c6fd91c3'/>
<id>urn:sha1:adae76af26e498af6c3004a52a4b1de2c6fd91c3</id>
<content type='text'>
It seems useless and triggers 'error: expected external declaration'
</content>
</entry>
<entry>
<title>Make use of __builtin_dynamic_object_size</title>
<updated>2023-04-13T21:48:57Z</updated>
<author>
<name>jvoisin</name>
</author>
<published>2023-03-18T13:01:02Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=3e6704d0be707487d7a9dccfdc75203c7261e11b'/>
<id>urn:sha1:3e6704d0be707487d7a9dccfdc75203c7261e11b</id>
<content type='text'>
GCC and Clang provide __builtin_dynamic_object_size
(see documentation: https://gcc.gnu.org/onlinedocs/gcc/Object-Size-Checking.html),
so we should make use of it when its available.
</content>
</entry>
<entry>
<title>Don't use __extension__ in C++ code</title>
<updated>2018-07-24T10:00:30Z</updated>
<author>
<name>A. Wilcox</name>
</author>
<published>2018-06-23T22:57:48Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=a9ffac8596b094da8563aa5dd5d81c946670afe5'/>
<id>urn:sha1:a9ffac8596b094da8563aa5dd5d81c946670afe5</id>
<content type='text'>
A few important notes:

*  __extension__ is a GNU C "alternate" keyword, not a C++ keyword.[1]

*  __extension__ is designed to work on "expressions"; it does work on
   #include_next in C mode, but it has no effect in C++ mode; the
   warning will still appear, if enabled, even with __extension__
   preceding #include_next.  This is because #include_next is not
   considered an expression in C++, so the compiler attaches
   __extension__ to the first expression of the header.

All of this leads us to a build failure while building at least all
Mozilla software.  Moz has an alternate -isystem dir searched before
/usr/include that overrides some headers, including &lt;features.h&gt;.  The
first statement in each of these headers is a #pragma, and since
__extension__ is looking for an expression, and #pragma is a "null"
expression, we end up with the following error:

dist/system_wrappers/features.h:1:9: error: '#pragma' is not allowed here

Since __extension__ has no effect on #include_next in C++ mode anyway,
and since it can cause breakage, this commit omits __extension__ in C++
mode.

[1]: https://gcc.gnu.org/onlinedocs/gcc-6.4.0/gcc/Alternate-Keywords.html
</content>
</entry>
<entry>
<title>Bump copyright year</title>
<updated>2016-09-10T11:54:17Z</updated>
<author>
<name>sin</name>
</author>
<published>2016-09-10T11:54:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dustri.org/fortify-headers/commit/?id=2bc423c355a992fea2f95724235898218575c95e'/>
<id>urn:sha1:2bc423c355a992fea2f95724235898218575c95e</id>
<content type='text'>
</content>
</entry>
</feed>
