Macros | Functions
mul.c File Reference
#include <openssl/bn.h>
#include <assert.h>
#include <stdlib.h>
#include <string.h>
#include <openssl/err.h>
#include <openssl/mem.h>
#include <openssl/type_check.h>
#include "internal.h"
#include "../../internal.h"
Include dependency graph for mul.c:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define BN_MUL_RECURSIVE_SIZE_NORMAL   16
 
#define BN_SQR_RECURSIVE_SIZE_NORMAL   BN_MUL_RECURSIVE_SIZE_NORMAL
 

Functions

int bn_abs_sub_consttime (BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx)
 
static BN_ULONG bn_abs_sub_part_words (BN_ULONG *r, const BN_ULONG *a, const BN_ULONG *b, int cl, int dl, BN_ULONG *tmp)
 
static void bn_abs_sub_words (BN_ULONG *r, const BN_ULONG *a, const BN_ULONG *b, size_t num, BN_ULONG *tmp)
 
int BN_mul (BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx)
 
int bn_mul_consttime (BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx)
 
static int bn_mul_impl (BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx)
 
static void bn_mul_normal (BN_ULONG *r, const BN_ULONG *a, size_t na, const BN_ULONG *b, size_t nb)
 
static void bn_mul_part_recursive (BN_ULONG *r, const BN_ULONG *a, const BN_ULONG *b, int n, int tna, int tnb, BN_ULONG *t)
 
static void bn_mul_recursive (BN_ULONG *r, const BN_ULONG *a, const BN_ULONG *b, int n2, int dna, int dnb, BN_ULONG *t)
 
void bn_mul_small (BN_ULONG *r, size_t num_r, const BN_ULONG *a, size_t num_a, const BN_ULONG *b, size_t num_b)
 
int BN_mul_word (BIGNUM *bn, BN_ULONG w)
 
int BN_sqr (BIGNUM *r, const BIGNUM *a, BN_CTX *ctx)
 
int bn_sqr_consttime (BIGNUM *r, const BIGNUM *a, BN_CTX *ctx)
 
static void bn_sqr_normal (BN_ULONG *r, const BN_ULONG *a, size_t n, BN_ULONG *tmp)
 
static void bn_sqr_recursive (BN_ULONG *r, const BN_ULONG *a, size_t n2, BN_ULONG *t)
 
void bn_sqr_small (BN_ULONG *r, size_t num_r, const BN_ULONG *a, size_t num_a)
 
static BN_ULONG bn_sub_part_words (BN_ULONG *r, const BN_ULONG *a, const BN_ULONG *b, int cl, int dl)
 

Macro Definition Documentation

◆ BN_MUL_RECURSIVE_SIZE_NORMAL

#define BN_MUL_RECURSIVE_SIZE_NORMAL   16

Definition at line 71 of file mul.c.

◆ BN_SQR_RECURSIVE_SIZE_NORMAL

#define BN_SQR_RECURSIVE_SIZE_NORMAL   BN_MUL_RECURSIVE_SIZE_NORMAL

Definition at line 72 of file mul.c.

Function Documentation

◆ bn_abs_sub_consttime()

int bn_abs_sub_consttime ( BIGNUM r,
const BIGNUM a,
const BIGNUM b,
BN_CTX ctx 
)

Definition at line 182 of file mul.c.

◆ bn_abs_sub_part_words()

static BN_ULONG bn_abs_sub_part_words ( BN_ULONG *  r,
const BN_ULONG *  a,
const BN_ULONG *  b,
int  cl,
int  dl,
BN_ULONG *  tmp 
)
static

Definition at line 171 of file mul.c.

◆ bn_abs_sub_words()

static void bn_abs_sub_words ( BN_ULONG *  r,
const BN_ULONG *  a,
const BN_ULONG *  b,
size_t  num,
BN_ULONG *  tmp 
)
static

Definition at line 75 of file mul.c.

◆ BN_mul()

int BN_mul ( BIGNUM r,
const BIGNUM a,
const BIGNUM b,
BN_CTX ctx 
)

Definition at line 516 of file mul.c.

◆ bn_mul_consttime()

int bn_mul_consttime ( BIGNUM r,
const BIGNUM a,
const BIGNUM b,
BN_CTX ctx 
)

Definition at line 526 of file mul.c.

◆ bn_mul_impl()

static int bn_mul_impl ( BIGNUM r,
const BIGNUM a,
const BIGNUM b,
BN_CTX ctx 
)
static

Definition at line 420 of file mul.c.

◆ bn_mul_normal()

static void bn_mul_normal ( BN_ULONG *  r,
const BN_ULONG *  a,
size_t  na,
const BN_ULONG *  b,
size_t  nb 
)
static

Definition at line 82 of file mul.c.

◆ bn_mul_part_recursive()

static void bn_mul_part_recursive ( BN_ULONG *  r,
const BN_ULONG *  a,
const BN_ULONG *  b,
int  n,
int  tna,
int  tnb,
BN_ULONG *  t 
)
static

Definition at line 311 of file mul.c.

◆ bn_mul_recursive()

static void bn_mul_recursive ( BN_ULONG *  r,
const BN_ULONG *  a,
const BN_ULONG *  b,
int  n2,
int  dna,
int  dnb,
BN_ULONG *  t 
)
static

Definition at line 211 of file mul.c.

◆ bn_mul_small()

void bn_mul_small ( BN_ULONG *  r,
size_t  num_r,
const BN_ULONG *  a,
size_t  num_a,
const BN_ULONG *  b,
size_t  num_b 
)

Definition at line 536 of file mul.c.

◆ BN_mul_word()

int BN_mul_word ( BIGNUM bn,
BN_ULONG  w 
)

Definition at line 648 of file mul.c.

◆ BN_sqr()

int BN_sqr ( BIGNUM r,
const BIGNUM a,
BN_CTX ctx 
)

Definition at line 727 of file mul.c.

◆ bn_sqr_consttime()

int bn_sqr_consttime ( BIGNUM r,
const BIGNUM a,
BN_CTX ctx 
)

Definition at line 669 of file mul.c.

◆ bn_sqr_normal()

static void bn_sqr_normal ( BN_ULONG *  r,
const BN_ULONG *  a,
size_t  n,
BN_ULONG *  tmp 
)
static

Definition at line 551 of file mul.c.

◆ bn_sqr_recursive()

static void bn_sqr_recursive ( BN_ULONG *  r,
const BN_ULONG *  a,
size_t  n2,
BN_ULONG *  t 
)
static

Definition at line 591 of file mul.c.

◆ bn_sqr_small()

void bn_sqr_small ( BN_ULONG *  r,
size_t  num_r,
const BN_ULONG *  a,
size_t  num_a 
)

Definition at line 736 of file mul.c.

◆ bn_sub_part_words()

static BN_ULONG bn_sub_part_words ( BN_ULONG *  r,
const BN_ULONG *  a,
const BN_ULONG *  b,
int  cl,
int  dl 
)
static

Definition at line 130 of file mul.c.



grpc
Author(s):
autogenerated on Fri May 16 2025 03:01:24