13 keylen(_keylen), keyoff(0)
15 key =
new unsigned char[keylen];
16 memcpy(key, _key, keylen);
20 WvXOREncoder::~WvXOREncoder()
31 const unsigned char *data = inbuf.
get(len);
32 unsigned char *out = outbuf.
alloc(len);
37 *out++ = (*data++) ^ key[keyoff++];
46 WvXORStream::WvXORStream(
WvStream *_cloned,
47 const void *_key,
size_t _keysize) :
50 readchain.append(
new WvXOREncoder(_key, _keysize),
true);
51 writechain.append(
new WvXOREncoder(_key, _keysize),
true);