diff options
author | Rich Salz <rsalz@openssl.org> | 2018-01-23 09:58:33 -0500 |
---|---|---|
committer | Rich Salz <rsalz@openssl.org> | 2018-01-24 16:08:27 -0500 |
commit | d3736a65baadb369b2570bf85d7f966bc567e7ff (patch) | |
tree | 9ba88a368a7baf85fa93f76dcdde66ef2d5ac369 /doc | |
parent | d19bf137ba24ce15ceb1e37e0093f1b7242340f1 (diff) |
Fix BN doc
Backport from https://github.com/openssl/openssl/pull/5141
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
(Merged from https://github.com/openssl/openssl/pull/5151)
(cherry picked from commit 8b2124aba357a928fec6d7a3bafe186fc83080fc)
Diffstat (limited to 'doc')
-rw-r--r-- | doc/crypto/BN_zero.pod | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/doc/crypto/BN_zero.pod b/doc/crypto/BN_zero.pod index b555ec3988..8aa9c142b7 100644 --- a/doc/crypto/BN_zero.pod +++ b/doc/crypto/BN_zero.pod @@ -14,34 +14,37 @@ operations const BIGNUM *BN_value_one(void); - int BN_set_word(BIGNUM *a, unsigned long w); - unsigned long BN_get_word(BIGNUM *a); + int BN_set_word(BIGNUM *a, BN_ULONG w); + BN_ULONG BN_get_word(BIGNUM *a); =head1 DESCRIPTION +B<BN_ULONG> is a macro that will be an unsigned integral type optimied +for the most efficient implementation on the local platform. + BN_zero(), BN_one() and BN_set_word() set B<a> to the values 0, 1 and B<w> respectively. BN_zero() and BN_one() are macros. BN_value_one() returns a B<BIGNUM> constant of value 1. This constant is useful for use in comparisons and assignment. -BN_get_word() returns B<a>, if it can be represented as an unsigned -long. +BN_get_word() returns B<a>, if it can be represented as a B<BN_ULONG>. =head1 RETURN VALUES -BN_get_word() returns the value B<a>, and 0xffffffffL if B<a> cannot -be represented as an unsigned long. +BN_get_word() returns the value B<a>, or all-bits-set if B<a> cannot +be represented as a B<BN_ULONG>. BN_zero(), BN_one() and BN_set_word() return 1 on success, 0 otherwise. BN_value_one() returns the constant. =head1 BUGS -Someone might change the constant. +If a B<BIGNUM> is equal to the value of all-bits-set, it will collide +with the error condition returned by BN_get_word() which uses that +as an error value. -If a B<BIGNUM> is equal to 0xffffffffL it can be represented as an -unsigned long but this value is also returned on error. +B<BN_ULONG> should probably be a typedef. =head1 SEE ALSO |