<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libcrypto/rsa, branch OPENBSD_7_5</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_7_5</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_7_5'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2024-02-18T15:45:42+00:00</updated>
<entry>
<title>Use EVP_MD_CTX_legacy_clear() internally</title>
<updated>2024-02-18T15:45:42+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2024-02-18T15:45:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=ff3e386de60f6149938edb124d31bc2fd7ae04f6'/>
<id>urn:sha1:ff3e386de60f6149938edb124d31bc2fd7ae04f6</id>
<content type='text'>
ok jsing
</content>
</entry>
<entry>
<title>Inline rsa_is_pss() and rsa_pkey_is_pss()</title>
<updated>2024-01-10T14:59:19+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2024-01-10T14:59:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=7ec6c7c4fd30cef0339bceb9e61f996b3177e7a2'/>
<id>urn:sha1:7ec6c7c4fd30cef0339bceb9e61f996b3177e7a2</id>
<content type='text'>
It's more explicit and not that much longer.

ok jsing
</content>
</entry>
<entry>
<title>Replace .pkey_base_id with a .base_method pointer</title>
<updated>2024-01-04T17:01:26+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2024-01-04T17:01:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=9f1cd2582409ac5778c5a0e28dfb77f18d122c98'/>
<id>urn:sha1:9f1cd2582409ac5778c5a0e28dfb77f18d122c98</id>
<content type='text'>
Every EVP_PKEY_ASN1_METHOD is either an ASN.1 method or an alias.
As such it resolves to an underlying ASN.1 method (in one step).
This information can be stored in a base_method pointer in allusion
to the pkey_base_id, which is the name for the nid (aka pkey_id aka
type) of the underlying method.

For an ASN.1 method, the base method is itself, so the base method
is set as a pointer to itself. For an alias it is of course a pointer
to the underlying method. Then obviously ameth-&gt;pkey_base_id is the
same as ameth-&gt;base_method-&gt;pkey_id, so rework all ASN.1 methods to
follow that.

ok jsing
</content>
</entry>
<entry>
<title>Split ameth arrays into individual methods</title>
<updated>2024-01-04T16:41:56+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2024-01-04T16:41:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=b1aedf2a14d9cd341b6b3b19a90343383ec0209f'/>
<id>urn:sha1:b1aedf2a14d9cd341b6b3b19a90343383ec0209f</id>
<content type='text'>
For some reason DSA, GOST, and RSA had their ASN.1 methods stored in
an array. This is clumsy and the only benefit is that one saves a few
externs in p_lib.c. They were also arranged by ascending NID because
of bsearch() madness.

Split them up and arrange the methods by name, which is much saner
and simpler.

ok jsing
</content>
</entry>
<entry>
<title>pkey_is_pss() and pkey_ctx_is_pss() to rsa_ameth.c</title>
<updated>2024-01-01T15:43:02+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2024-01-01T15:43:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=47d1fa801e401851a63a646963373a1fc697be9f'/>
<id>urn:sha1:47d1fa801e401851a63a646963373a1fc697be9f</id>
<content type='text'>
These aren't particularly helpful and should probably both be expanded.
For now move them to the only place where they are actually used.
</content>
</entry>
<entry>
<title>Rework pkey_rsa_keygen()</title>
<updated>2023-12-28T21:59:07+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2023-12-28T21:59:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=47ec95f1d429e392c3f445da28dfe9072f2af623'/>
<id>urn:sha1:47ec95f1d429e392c3f445da28dfe9072f2af623</id>
<content type='text'>
As usual, make the function single exit. Initialize the pkey callback
pointer and the BN_GENCB on the stack at the top rather than relying
on the weird trans_cb() in evp_pkey_set_cb_translate() to do so.
Greatly simplify the control flow and add missing error checks.

ok jsing
</content>
</entry>
<entry>
<title>Rework rsa_priv_decode()</title>
<updated>2023-12-28T21:58:12+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2023-12-28T21:58:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=5c5cb0e5889fb400fae65afbc9f199da98feccac'/>
<id>urn:sha1:5c5cb0e5889fb400fae65afbc9f199da98feccac</id>
<content type='text'>
Turn the function into single exit and error check EVP_PKEY_assign()
for style.

ok jsing
</content>
</entry>
<entry>
<title>Clean up old_rsa_priv_decode()</title>
<updated>2023-12-28T21:57:08+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2023-12-28T21:57:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=b54ba16dd462ce5c4a95988db37fa997f963d8ea'/>
<id>urn:sha1:b54ba16dd462ce5c4a95988db37fa997f963d8ea</id>
<content type='text'>
Again change this function into the single exit idiom, and error check
EVP_PKEY_assign().

ok jsing
</content>
</entry>
<entry>
<title>Ignore ENGINE at the API boundary</title>
<updated>2023-11-29T21:35:57+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2023-11-29T21:35:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=69bbc5fea4f411f0c0033ecb0fc5126c895ea82a'/>
<id>urn:sha1:69bbc5fea4f411f0c0033ecb0fc5126c895ea82a</id>
<content type='text'>
This removes the remaining ENGINE members from various internal structs
and functions. Any ENGINE passed into a public API is now completely
ignored functions returning an ENGINE always return NULL.

ok jsing
</content>
</entry>
<entry>
<title>Unifdef OPENSSL_NO_ENGINE in libcrypto</title>
<updated>2023-11-19T15:46:10+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2023-11-19T15:46:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=593d97e74cc873d99aced677883cf55625efe62d'/>
<id>urn:sha1:593d97e74cc873d99aced677883cf55625efe62d</id>
<content type='text'>
This is mechanical apart from a few manual edits to avoid doubled empty
lines.

ok jsing
</content>
</entry>
</feed>
