File: encryptbuf.ih

package info (click to toggle)
bobcat 2.08.01-1
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 5,668 kB
  • ctags: 953
  • sloc: cpp: 10,403; makefile: 9,042; perl: 401; sh: 195
file content (48 lines) | stat: -rw-r--r-- 821 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include "encryptbuf"

#include <string>
//#include <iomanip>
#include <ostream>
#include <algorithm>
#include <openssl/evp.h>
#include <bobcat/errno>
#include <bobcat/irandstream>
#include <bobcat/fnwrap1c>

namespace FBB
{

struct EncryptBufImp
{
    EVP_CIPHER_CTX      ctx;
    EVP_CIPHER const   *md;
    bool                active;
    size_t              bufsize;
    char               *buffer;
    char               *out;
    std::string         iv;
    std::ostream       &outStream;

    EncryptBufImp(std::ostream &outStream, std::string const &iv, 
                  size_t bufsize);
    ~EncryptBufImp();

    static void setChar(char &ch, IRandStream &irs);

};

inline EncryptBufImp::~EncryptBufImp()
{
    delete [] buffer;
    delete [] out;
}

} // FBB

using namespace std;
using namespace FBB;