initial commit
[arib_std_b25.git] / src / multi2.h
blob65798e32494ecd0cf3263cc8a14afb9323cddead
1 #ifndef MULTI2_H
2 #define MULTI2_H
4 #include "portable.h"
6 typedef struct {
8 void *private_data;
10 void (* release)(void *m2);
11 int (* add_ref)(void *m2);
13 int (* set_round)(void *m2, int32_t val);
15 int (* set_system_key)(void *m2, uint8_t *val);
16 int (* set_init_cbc)(void *m2, uint8_t *val);
17 int (* set_scramble_key)(void *m2, uint8_t *val);
18 int (* clear_scramble_key)(void *m2);
20 int (* encrypt)(void *m2, int32_t type, uint8_t *buf, int32_t size);
21 int (* decrypt)(void *m2, int32_t type, uint8_t *buf, int32_t size);
23 } MULTI2;
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
29 extern MULTI2 *create_multi2();
31 #ifdef __cplusplus
33 #endif
35 #endif /* MULTI2_H */