<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libcrypto/cms/cms_err.c, branch OPENBSD_7_9_BASE</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9_BASE</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9_BASE'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2024-06-24T06:43:23+00:00</updated>
<entry>
<title>libcrypto: constify most error string tables</title>
<updated>2024-06-24T06:43:23+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2024-06-24T06:43:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=c9802a5afe29675d69b605ce906d34fd89c024ac'/>
<id>urn:sha1:c9802a5afe29675d69b605ce906d34fd89c024ac</id>
<content type='text'>
These constitute the bulk of the remaining global mutable state in
libcrypto. This commit moves most of them into data.rel.ro, leaving
out ERR_str_{functs,libraries,reasons} (which require a slightly
different approach) and SYS_str_reasons which is populated on startup.

The main observation is that if ERR_load_strings() is called with a 0 lib
argument, the ERR_STRING_DATA argument is not actually modified. We could
use this fact to cast away const on the caller side and be done with it.
We can make this cleaner by adding a helper ERR_load_const_strings() which
explicitly avoids the assignment to str-&gt;error overriding the error code
already set in the table.

In order for this to work, we need to sprinkle some const in err/err.c.
CMS called ERR_load_strings() with non-0 lib argument, but this didn't
actually modify the error data since it ored in the value already stored
in the table.

Annoyingly, we need to cast const away once, namely in the call to
lh_insert() in int_err_set_item(). Fixing this would require changing
the public API and is going to be tricky since it requires that the
LHASH_DOALL_FN_* types adjust.

ok jsing
</content>
</entry>
<entry>
<title>Hide symbols in cms, comp, conf, and buffer</title>
<updated>2023-07-08T08:26:26+00:00</updated>
<author>
<name>beck</name>
<email></email>
</author>
<published>2023-07-08T08:26:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=cf9b236f0893157746f8b944e4f6cc8d8a6aca26'/>
<id>urn:sha1:cf9b236f0893157746f8b944e4f6cc8d8a6aca26</id>
<content type='text'>
ok jsing@
</content>
</entry>
<entry>
<title>Remove mkerr.pl remnants from LibreSSL</title>
<updated>2022-07-12T14:42:50+00:00</updated>
<author>
<name>kn</name>
<email></email>
</author>
<published>2022-07-12T14:42:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=89e42d5857196a8071fbafb5565388d0e20ec32b'/>
<id>urn:sha1:89e42d5857196a8071fbafb5565388d0e20ec32b</id>
<content type='text'>
This script is not used at all and files are edited by hand instead.
Thus remove misleading comments incl. the obsolete script/config.

Feedback OK jsing tb
</content>
</entry>
<entry>
<title>Remove remaining error *_str_functs[]</title>
<updated>2020-06-05T16:51:12+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2020-06-05T16:51:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=6aa0c4f1ec702bb2c820322709abd9c1767842fa'/>
<id>urn:sha1:6aa0c4f1ec702bb2c820322709abd9c1767842fa</id>
<content type='text'>
A number of years ago we dropped the concept of having function names in
errors, since it is not that useful and very quickly gets out of sync when
refactoring. It would seem that some new ones got imported and some missed
the last clean up.

ok tb@ beck@ "kill it with fire"
</content>
</entry>
<entry>
<title>Fix loading of CMS error strings.</title>
<updated>2019-08-11T14:18:38+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2019-08-11T14:18:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=0946db36026818b2168f7bdab9764edc5c1d9a32'/>
<id>urn:sha1:0946db36026818b2168f7bdab9764edc5c1d9a32</id>
<content type='text'>
</content>
</entry>
<entry>
<title>More style(9), whitespace and readability fixes.</title>
<updated>2019-08-10T18:15:52+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2019-08-10T18:15:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=cd017df13ee5f5ba7baa4ffe853ae05106ef3cac'/>
<id>urn:sha1:cd017df13ee5f5ba7baa4ffe853ae05106ef3cac</id>
<content type='text'>
Files are identical once whitespace and newlines are removed.
</content>
</entry>
<entry>
<title>First pass at style(9).</title>
<updated>2019-08-10T16:42:20+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2019-08-10T16:42:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=75125ce1cf513471883fff50db4a4638526bd785'/>
<id>urn:sha1:75125ce1cf513471883fff50db4a4638526bd785</id>
<content type='text'>
Whitespace only and no change according to diff -w.
</content>
</entry>
<entry>
<title>Include cms.h instead of cmserr.h.</title>
<updated>2019-08-10T16:38:47+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2019-08-10T16:38:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=7f518dee1343fdbc89606b441a3351f336e98342'/>
<id>urn:sha1:7f518dee1343fdbc89606b441a3351f336e98342</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add $OpenBSD$ tags.</title>
<updated>2019-08-10T16:03:54+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2019-08-10T16:03:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=5f53ff9a2d756f84baa35744a9e195a2d5294470'/>
<id>urn:sha1:5f53ff9a2d756f84baa35744a9e195a2d5294470</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Work towards supporting Cryptographic Message Syntax (CMS) in libcrypto.</title>
<updated>2019-08-10T15:55:20+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2019-08-10T15:55:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=4df8f2a71206786b2b61d7295a263df61028b550'/>
<id>urn:sha1:4df8f2a71206786b2b61d7295a263df61028b550</id>
<content type='text'>
Cryptographic Message Syntax (CMS) is a standard for cryptographically
protecting messages, as defined in RFC 5652. It is derived from PKCS #7
version 1.5 and utilises various ASN.1 structures, making it complex and
fairly heavyweight. Various protocols - including RPKI (RFC 6480) - have
been built on top of it, which means it is necessary to support CMS, in
order to support RPKI.

This imports around 6,000 lines of code from OpenSSL 1.1.1, which is still
under the original OpenSSL license. Further work will occur in tree.

Requested by and discussed with many.

ok deraadt@ tb@
</content>
</entry>
</feed>
