This file is indexed.

/usr/include/libr/r_crypto.h is in libradare2-dev 0.9.6-3.1ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#ifndef _INCLUDE_CRYPTO_R_
#define _INCLUDE_CRYPTO_R_

#include <list.h>
#include <r_types.h>

#ifdef __cplusplus
extern "C" {
#endif

R_LIB_VERSION_HEADER(r_crypto);

enum {
	R_CRYPTO_MODE_ECB,
	R_CRYPTO_MODE_CBC,
	R_CRYPTO_MODE_OFB,
	R_CRYPTO_MODE_CFB,
};

enum {
	R_CRYPTO_DIR_CIPHER,
	R_CRYPTO_DIR_DECIPHER,
};

typedef struct r_crypto_t {
	struct r_crypto_plugin_t* h;
	ut8 *key;
	ut8 *iv;
	int key_len;
	ut8 *output;
	int output_len;
	int output_size;
	void *user;
	struct list_head plugins;
} RCrypto;

typedef struct r_crypto_plugin_t {
	const char *name;
	int (*get_key_size)(RCrypto *cry);
	int (*set_iv)(RCrypto *cry, const ut8 *iv);
	int (*set_key)(RCrypto *cry, const ut8 *key, int mode, int direction);
	int (*update)(RCrypto *cry, const ut8 *buf, int len);
	int (*final)(RCrypto *cry, const ut8 *buf, int len);
	int (*use)(const char *algo);
	int (*fini)(RCrypto *cry);
	struct list_head list;
} RCryptoPlugin;

#ifdef R_API
R_API RCrypto *r_crypto_init(RCrypto *cry, int hard);
R_API RCrypto *r_crypto_as_new(RCrypto *cry);
R_API int r_crypto_add(RCrypto *cry, RCryptoPlugin *h);
R_API RCrypto *r_crypto_new();
R_API RCrypto *r_crypto_free(RCrypto *cry);
R_API int r_crypto_use(RCrypto *cry, const char *algo);
R_API int r_crypto_set_key(RCrypto *cry, const ut8* key, int mode, int direction);
R_API int r_crypto_get_key_size(RCrypto *cry);
R_API int r_crypto_set_iv(RCrypto *cry, const ut8 *iv);
R_API int r_crypto_update(RCrypto *cry, ut8 *buf, int len);
R_API int r_crypto_final(RCrypto *cry, ut8 *buf, int len);
R_API int r_crypto_append(RCrypto *cry, const ut8 *buf, int len);
R_API ut8 *r_crypto_get_output(RCrypto *cry);
#endif

/* plugin pointers */
extern RCryptoPlugin r_crypto_plugin_aes;

#ifdef __cplusplus
}
#endif

#endif