Functions
RAND crypto functions

## Functions
void | RAND_seed (const void *indata, size_t size)
int | RAND_bytes (void *outdata, size_t size)
void | RAND_cleanup (void)
void | RAND_add (const void *indata, size_t size, double entropi)
int | RAND_pseudo_bytes (void *outdata, size_t size)
int | RAND_status (void)
int | RAND_set_rand_method (const RAND_METHOD *meth)
const RAND_METHOD * | RAND_get_rand_method (void)
int | RAND_set_rand_engine (ENGINE *engine)
int | RAND_load_file (const char *filename, size_t size)
int | RAND_write_file (const char *filename)
const char * | RAND_file_name (char *filename, size_t size)

## Detailed Description

See the RAND - random number for description and examples.

## Function Documentation

## ◆ RAND_add()

void RAND_add | ( | const void * | indata,
|  | size_t | size,
|  | double | entropi
| ) |  |

Seed that random number generator. Secret material can securely be feed into the function, they will never be returned.

Parameters

  indata | the input data.
  size | size of in data.
  entropi | entropi in data.

## ◆ RAND_bytes()

int RAND_bytes | ( | void * | outdata,
|  | size_t | size
| ) |  |

Get a random block from the random generator, can be used for key material.

Parameters

  outdata | random data
  size | length random data

Returns
  1 on success, 0 on failure.

## ◆ RAND_cleanup()

void RAND_cleanup | ( | void |  | ) |

Reset and free memory used by the random generator.

## ◆ RAND_file_name()

const char* RAND_file_name | ( | char * | filename,
|  | size_t | size
| ) |  |

Return the default random state filename for a user to use for RAND_load_file(), and RAND_write_file().

Parameters

  filename | buffer to hold file name.
  size | size of buffer filename.

Returns
  the buffer filename or NULL on failure.

## ◆ RAND_get_rand_method()

const RAND_METHOD* RAND_get_rand_method | ( | void |  | ) |

Get the default random method.

Returns
  Returns a RAND_METHOD

## ◆ RAND_load_file()

int RAND_load_file | ( | const char * | filename,
|  | size_t | size
| ) |  |

Load a a file and feed it into RAND_seed().

Parameters

  filename | name of file to read.
  size | minimum size to read.

Returns
  Returns the number of seed bytes loaded (0 indicates failure)

## ◆ RAND_pseudo_bytes()

int RAND_pseudo_bytes | ( | void * | outdata,
|  | size_t | size
| ) |  |

Get a random block from the random generator, should NOT be used for key material.

Parameters

  outdata | random data
  size | length random data

Returns
  1 on success, 0 on failure.

## ◆ RAND_seed()

void RAND_seed | ( | const void * | indata,
|  | size_t | size
| ) |  |

Seed that random number generator. Secret material can securely be feed into the function, they will never be returned.

Parameters

  indata | seed data
  size | length seed data

## ◆ RAND_set_rand_engine()

int RAND_set_rand_engine | ( | ENGINE * | engine | ) |

Set the default random method from engine.

Parameters

  engine | use engine, if NULL is passed it, old method and engine is cleared.

Returns
  1 on success, 0 on failure.

## ◆ RAND_set_rand_method()

int RAND_set_rand_method | ( | const RAND_METHOD * | meth | ) |

Set the default random method.

Parameters

  meth | set the new default method.

Returns
  1 on success.

## ◆ RAND_status()

int RAND_status | ( | void |  | ) |

Return status of the random generator

Returns
  1 if the random generator can deliver random data.

## ◆ RAND_write_file()

int RAND_write_file | ( | const char * | filename | ) |

Write of random numbers to a file to store for later initiation with RAND_load_file().

Parameters

  filename | name of file to write.

Returns
  1 on success and non-one on failure.