(linenum→info "unix/slp.c:2238")

openssl/0.9.8g/doc/crypto/BN_CTX_new.pod

    1: =pod
    2: 
    3: =head1 NAME
    4: 
    5: BN_CTX_new, BN_CTX_init, BN_CTX_free - allocate and free BN_CTX structures
    6: 
    7: =head1 SYNOPSIS
    8: 
    9:  #include <openssl/bn.h>
   10: 
   11:  BN_CTX *BN_CTX_new(void);
   12: 
   13:  void BN_CTX_init(BN_CTX *c);
   14: 
   15:  void BN_CTX_free(BN_CTX *c);
   16: 
   17: =head1 DESCRIPTION
   18: 
   19: A B<BN_CTX> is a structure that holds B<BIGNUM> temporary variables used by
   20: library functions. Since dynamic memory allocation to create B<BIGNUM>s
   21: is rather expensive when used in conjunction with repeated subroutine
   22: calls, the B<BN_CTX> structure is used.
   23: 
   24: BN_CTX_new() allocates and initializes a B<BN_CTX>
   25: structure. BN_CTX_init() initializes an existing uninitialized
   26: B<BN_CTX>.
   27: 
   28: BN_CTX_free() frees the components of the B<BN_CTX>, and if it was
   29: created by BN_CTX_new(), also the structure itself.
   30: If L<BN_CTX_start(3)|BN_CTX_start(3)> has been used on the B<BN_CTX>,
   31: L<BN_CTX_end(3)|BN_CTX_end(3)> must be called before the B<BN_CTX>
   32: may be freed by BN_CTX_free().
   33: 
   34: 
   35: =head1 RETURN VALUES
   36: 
   37: BN_CTX_new() returns a pointer to the B<BN_CTX>. If the allocation fails,
   38: it returns B<NULL> and sets an error code that can be obtained by
   39: L<ERR_get_error(3)|ERR_get_error(3)>.
   40: 
   41: BN_CTX_init() and BN_CTX_free() have no return values.
   42: 
   43: =head1 SEE ALSO
   44: 
   45: L<bn(3)|bn(3)>, L<ERR_get_error(3)|ERR_get_error(3)>, L<BN_add(3)|BN_add(3)>,
   46: L<BN_CTX_start(3)|BN_CTX_start(3)>
   47: 
   48: =head1 HISTORY
   49: 
   50: BN_CTX_new() and BN_CTX_free() are available in all versions on SSLeay
   51: and OpenSSL. BN_CTX_init() was added in SSLeay 0.9.1b.
   52: 
   53: =cut
Syntax (Markdown)