File: random.cc

package info (click to toggle)
zbackup 1.5-4
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 868 kB
  • sloc: cpp: 6,957; ansic: 468; python: 207; makefile: 10
file content (19 lines) | stat: -rw-r--r-- 532 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Copyright (c) 2012-2014 Konstantin Isakov <ikm@zbackup.org> and ZBackup contributors, see CONTRIBUTORS
// Part of ZBackup. Licensed under GNU GPLv2 or later + OpenSSL, see LICENSE

#include "random.hh"
#include <openssl/rand.h>

namespace Random {
void generateTrue( void * buf, unsigned size )
{
  if ( RAND_bytes( (unsigned char *) buf, size ) != 1 )
    throw exCantGenerate();
}

void generatePseudo( void * buf, unsigned size )
{
  if ( RAND_pseudo_bytes( (unsigned char *) buf, size ) < 0 )
    throw exCantGenerate();
}
}