Blame doc/man3/BN_set_bit.pod

Packit c4476c
=pod
Packit c4476c
Packit c4476c
=head1 NAME
Packit c4476c
Packit c4476c
BN_set_bit, BN_clear_bit, BN_is_bit_set, BN_mask_bits, BN_lshift,
Packit c4476c
BN_lshift1, BN_rshift, BN_rshift1 - bit operations on BIGNUMs
Packit c4476c
Packit c4476c
=head1 SYNOPSIS
Packit c4476c
Packit c4476c
 #include <openssl/bn.h>
Packit c4476c
Packit c4476c
 int BN_set_bit(BIGNUM *a, int n);
Packit c4476c
 int BN_clear_bit(BIGNUM *a, int n);
Packit c4476c
Packit c4476c
 int BN_is_bit_set(const BIGNUM *a, int n);
Packit c4476c
Packit c4476c
 int BN_mask_bits(BIGNUM *a, int n);
Packit c4476c
Packit c4476c
 int BN_lshift(BIGNUM *r, const BIGNUM *a, int n);
Packit c4476c
 int BN_lshift1(BIGNUM *r, BIGNUM *a);
Packit c4476c
Packit c4476c
 int BN_rshift(BIGNUM *r, BIGNUM *a, int n);
Packit c4476c
 int BN_rshift1(BIGNUM *r, BIGNUM *a);
Packit c4476c
Packit c4476c
=head1 DESCRIPTION
Packit c4476c
Packit c4476c
BN_set_bit() sets bit B<n> in B to 1 (C<a|=(1E<lt>E<lt>n)>). The
Packit c4476c
number is expanded if necessary.
Packit c4476c
Packit c4476c
BN_clear_bit() sets bit B<n> in B to 0 (C<a&=~(1E<lt>E<lt>n)>). An
Packit c4476c
error occurs if B is shorter than B<n> bits.
Packit c4476c
Packit c4476c
BN_is_bit_set() tests if bit B<n> in B is set.
Packit c4476c
Packit c4476c
BN_mask_bits() truncates B to an B<n> bit number
Packit c4476c
(C<a&=~((~0)E<gt>E<gt>n)>).  An error occurs if B already is
Packit c4476c
shorter than B<n> bits.
Packit c4476c
Packit c4476c
BN_lshift() shifts B left by B<n> bits and places the result in
Packit c4476c
B<r> (C<r=a*2^n>). Note that B<n> must be non-negative. BN_lshift1() shifts
Packit c4476c
B left by one and places the result in B<r> (C<r=2*a>).
Packit c4476c
Packit c4476c
BN_rshift() shifts B right by B<n> bits and places the result in
Packit c4476c
B<r> (C<r=a/2^n>). Note that B<n> must be non-negative. BN_rshift1() shifts
Packit c4476c
B right by one and places the result in B<r> (C<r=a/2>).
Packit c4476c
Packit c4476c
For the shift functions, B<r> and B may be the same variable.
Packit c4476c
Packit c4476c
=head1 RETURN VALUES
Packit c4476c
Packit c4476c
BN_is_bit_set() returns 1 if the bit is set, 0 otherwise.
Packit c4476c
Packit c4476c
All other functions return 1 for success, 0 on error. The error codes
Packit c4476c
can be obtained by L<ERR_get_error(3)>.
Packit c4476c
Packit c4476c
=head1 SEE ALSO
Packit c4476c
Packit c4476c
L<BN_num_bytes(3)>, L<BN_add(3)>
Packit c4476c
Packit c4476c
=head1 COPYRIGHT
Packit c4476c
Packit c4476c
Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved.
Packit c4476c
Packit c4476c
Licensed under the OpenSSL license (the "License").  You may not use
Packit c4476c
this file except in compliance with the License.  You can obtain a copy
Packit c4476c
in the file LICENSE in the source distribution or at
Packit c4476c
L<https://www.openssl.org/source/license.html>.
Packit c4476c
Packit c4476c
=cut