<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libcrypto/objects, branch libressl-v3.5.3</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=libressl-v3.5.3</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=libressl-v3.5.3'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2022-03-19T17:49:32+00:00</updated>
<entry>
<title>Provide t2i_ASN1_OBJECT_internal() and use it for OBJ_txt2obj()</title>
<updated>2022-03-19T17:49:32+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2022-03-19T17:49:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=2b63d13b51dbcbb4817452fa7523918d166ddd55'/>
<id>urn:sha1:2b63d13b51dbcbb4817452fa7523918d166ddd55</id>
<content type='text'>
The current OBJ_txt2obj() implementation converts the text to ASN.1
object content octets, builds a full DER encoding from it, then feeds
the entire thing back through the DER to ASN.1 object conversion. Rather
than doing this crazy dance, provide an t2i_ASN1_OBJECT_internal() function
that converts the text to ASN.1 object content octets, then creates a new
ASN1_OBJECT and attaches the content octets to it.

ok inoguchi@ tb@
</content>
</entry>
<entry>
<title>Rewrite ASN1_OBJECT content to ascii/text conversion.</title>
<updated>2022-03-02T11:28:00+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2022-03-02T11:28:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=82fb0381802967c4e0623e7f4bde8e684c08dbc6'/>
<id>urn:sha1:82fb0381802967c4e0623e7f4bde8e684c08dbc6</id>
<content type='text'>
Rewrite the ASN1_OBJECT content to ascii/text conversion code using CBB and
CBS. Currently there is a strange split with i2t_ASN1_OBJECT() calling
OBJ_obj2txt() which implements the conversion, while OBJ_txt2obj() calls
back into the misnamed a2d_ASN1_OBJECT() function. Move the conversion
code into asn1/a_object.c and have OBJ_txt2obj() call that instead.

ok inoguchi@ tb@
</content>
</entry>
<entry>
<title>Limit OID text conversion to 64 bits per arc.</title>
<updated>2022-02-12T03:01:59+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2022-02-12T03:01:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=a562dcd988173746db99ce701ce9570ccfcbc9b8'/>
<id>urn:sha1:a562dcd988173746db99ce701ce9570ccfcbc9b8</id>
<content type='text'>
The current implementation uses an unsigned long, then switches to BN once
the arc exceeds its size. However, the complexity of BN_bn2dec() is
quadratic in the length of number being converted. This means that OIDs
with excessively large arcs take a lot of computation to convert to text.

While the X.660 specification states that arcs are unbounded, in reality
they are not overly large numbers - 640K^W64 bits ought to be enough for
any arc. Remove BN entirely, switch from unsigned long to uin64_t and fail
if an arc exceeds this size.

Identified via oss-fuzz timeouts - should fix #41028 and #44372.

ok tb@
</content>
</entry>
<entry>
<title>Make OBJ_obj2nid() work correctly with NID_undef.</title>
<updated>2022-02-11T16:39:16+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2022-02-11T16:39:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=5fce02c42e4ad8d8f3ab223ed16a8fe28d08812f'/>
<id>urn:sha1:5fce02c42e4ad8d8f3ab223ed16a8fe28d08812f</id>
<content type='text'>
Currently OBJ_obj2nid() with NID_undef returns NID_ccitt - this is due to
doing a lookup on an empty value and having NID_undef conflict with an
uninitialised NID value.

Somewhat based on OpenSSL 0fb99904809.

ok tb@
</content>
</entry>
<entry>
<title>Hide OBJ_bsearch_ from public visibility,</title>
<updated>2022-01-14T08:56:00+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-01-14T08:56:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=0f827b239b8d7b269d7e4b1971f951e519deee9d'/>
<id>urn:sha1:0f827b239b8d7b269d7e4b1971f951e519deee9d</id>
<content type='text'>
This removes OBJ_bsearch_ex_() from the exported symbols and makes
OBJ_bsearch_() semi-private. It is still used in libssl.

While here, remove some hideous unused macros

ok inoguchi jsing
</content>
</entry>
<entry>
<title>Remove check_defer and obj_cleanup_defer from public visibility</title>
<updated>2022-01-14T08:52:05+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-01-14T08:52:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=e89d2c52c857051a753158839e37d659e0a2b77f'/>
<id>urn:sha1:e89d2c52c857051a753158839e37d659e0a2b77f</id>
<content type='text'>
ok inoguchi jsing
</content>
</entry>
<entry>
<title>Unifdef LIBRESSL_OPAQUE_* and LIBRESSL_NEXT_API</title>
<updated>2022-01-14T07:49:49+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-01-14T07:49:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=82ec18edf4e632f36b6f79c239fdb6961d421a82'/>
<id>urn:sha1:82ec18edf4e632f36b6f79c239fdb6961d421a82</id>
<content type='text'>
This marks the start of major surgery in libcrypto. Do not attempt to
build the tree for a while (~50 commits).
</content>
</entry>
<entry>
<title>Prepare to provide OBJ_length() and OBJ_get0_data()</title>
<updated>2022-01-08T21:36:39+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-01-08T21:36:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=1d65cb0d3a77508bfc0bdcbc93feeea4c4cb6c2a'/>
<id>urn:sha1:1d65cb0d3a77508bfc0bdcbc93feeea4c4cb6c2a</id>
<content type='text'>
OBJ_length() turns the int obj-&gt;length into a size_t, so add
an overflow check. While obj-&gt;length should never be negative,
who knows...

ok jsing
</content>
</entry>
<entry>
<title>tiny whitespace tweak</title>
<updated>2022-01-08T15:34:59+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-01-08T15:34:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=a86a04576d7e4fd3e48b1285a0a5593180210f5e'/>
<id>urn:sha1:a86a04576d7e4fd3e48b1285a0a5593180210f5e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>include asn1_locl.h where it will be needed for the bump.</title>
<updated>2022-01-07T11:13:55+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-01-07T11:13:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=204a46a7c8e5bf3414ba115aae9636162c92a39a'/>
<id>urn:sha1:204a46a7c8e5bf3414ba115aae9636162c92a39a</id>
<content type='text'>
discussed with jsing
</content>
</entry>
</feed>
