Sortix volatile manual
This manual documents Sortix volatile, a development build that has not been officially released. You can instead view this document in the latest official manual.
| BN_ZERO(3) | Library Functions Manual | BN_ZERO(3) |
NAME
BN_zero, BN_one,
BN_value_one, BN_set_word,
BN_get_word — BIGNUM
assignment operations
SYNOPSIS
#include
<openssl/bn.h>
int
BN_zero(BIGNUM *a);
int
BN_one(BIGNUM *a);
const BIGNUM *
BN_value_one(void);
int
BN_set_word(BIGNUM *a,
BN_ULONG w);
BN_ULONG
BN_get_word(const BIGNUM
*a);
DESCRIPTION
BN_ULONG is a macro that expands to an
unsigned integral type optimized for the most efficient implementation on
the local platform. It is unsigned long (=
uint64_t) on _LP64 platforms
and unsigned int (= uint32_t)
elsewhere.
BN_zero(),
BN_one(),
and
BN_set_word()
set a to the values 0, 1 and w
respectively.
BN_value_one()
returns a BIGNUM constant of value 1. This constant is
useful for comparisons and assignments.
RETURN VALUES
BN_get_word() returns the value
a, or a number with all bits set if
a cannot be represented as a
BN_ULONG.
BN_zero(),
BN_one(), and BN_set_word()
return 1 on success, 0 otherwise. BN_value_one()
returns the constant.
SEE ALSO
HISTORY
BN_zero(),
BN_one(), BN_value_one(),
and BN_set_word() first appeared in SSLeay 0.5.1.
BN_get_word() first appeared in SSLeay 0.6.0. These
functions have been available since OpenBSD 2.4.
BUGS
Someone might change the constant.
If the value of a BIGNUM is equal to a
BN_ULONG with all bits set, the return value of
BN_get_word() collides with return value used to
indicate errors.
BN_ULONG should probably be a typedef rather than a macro.
| April 30, 2023 | Sortix 1.1.0-dev |