Rizin
unix-like reverse engineering framework and cli tools
xor.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: 2021 deroad <wargio@libero.it>
2 // SPDX-License-Identifier: LGPL-3.0-only
3 
4 #ifndef RZ_XOR_H
5 #define RZ_XOR_H
6 
7 #include <rz_types.h>
8 
9 #define RZ_HASH_XOR8_DIGEST_SIZE 1
10 #define RZ_HASH_XOR_BLOCK_LENGTH 0
11 
12 typedef ut8 RzXor8;
13 
14 bool rz_xor8_init(RzXor8 *ctx);
15 bool rz_xor8_update(RzXor8 *ctx, const ut8 *data, size_t len);
16 bool rz_xor8_final(ut8 *digest, RzXor8 *ctx);
17 
18 #define RZ_HASH_XOR16_DIGEST_SIZE 2
19 
20 typedef ut16 RzXor16;
21 
23 bool rz_xor16_update(RzXor16 *ctx, const ut8 *data, size_t len);
24 bool rz_xor16_final(ut8 *digest, RzXor16 *ctx);
25 
26 #endif /* RZ_XOR_H */
size_t len
Definition: 6502dis.c:15
uint16_t ut16
uint8_t ut8
Definition: lh5801.h:11
ut8 RzXor8
Definition: xor.h:12
bool rz_xor16_final(ut8 *digest, RzXor16 *ctx)
Definition: xor.c:49
bool rz_xor8_final(ut8 *digest, RzXor8 *ctx)
Definition: xor.c:23
bool rz_xor8_init(RzXor8 *ctx)
Definition: xor.c:7
ut16 RzXor16
Definition: xor.h:20
bool rz_xor8_update(RzXor8 *ctx, const ut8 *data, size_t len)
Definition: xor.c:13
bool rz_xor16_init(RzXor16 *ctx)
Definition: xor.c:29
bool rz_xor16_update(RzXor16 *ctx, const ut8 *data, size_t len)
Definition: xor.c:35