BN_add_word(3) — Subroutines
NAME
BN_add_word, BN_sub_word, BN_mul_word, BN_div_word, BN_mod_word − Arithmetic functions on BIGNUMs with integers
SYNOPSIS
#include <openssl/bn.h>
int BN_add_word(
BIGNUM ∗a, BN_ULONG w ); int BN_sub_word(
BIGNUM ∗a, BN_ULONG w ); int BN_mul_word(
BIGNUM ∗a, BN_ULONG w ); BN_ULONG BN_div_word(
BIGNUM ∗a, BN_ULONG w ); BN_ULONG BN_mod_word(
const BIGNUM ∗a, BN_ULONG w );
DESCRIPTION
These functions perform arithmetic operations on BIGNUMs with unsigned integers. They are much more efficient than the normal BIGNUM arithmetic operations.
The BN_add_word() function adds w to a (a+=w).
The BN_sub_word() function subtracts w from a (a-=w).
The BN_mul_word() function multiplies a and w (a∗=b).
The BN_div_word() function divides a by w (a/=w) and returns the remainder.
The BN_mod_word() function returns the remainder of a divided by w (a%m).
For the BN_div_word() and BN_mod_word() functions, the value of w must not be 0.
RETURN VALUES
The BN_add_word(), BN_sub_word(), and BN_mul_word() functions return 1 for success, 0 on error. The error codes can be obtained by using the ERR_get_error() function.
The BN_mod_word() and BN_div_word() functions return a%w.
HISTORY
The BN_add_word() and BN_mod_word() functions are available in all versions of SSLeay and OpenSSL. The BN_div_word() function was added in SSLeay 0.8, and BN_sub_word() and BN_mul_word() in SSLeay 0.9.0.