~alcinnz/fontconfig-pure

ref: a7c384b2408f2a512ecaee9d1287a9bbf5d41290 fontconfig-pure/cbits/transcode.h -rw-r--r-- 1.9 KiB
a7c384b2 — Adrian Cochrane Improve handling of invalid FontConfig data. 6 months ago
                                                                                
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
#include "cmp.h"
#include <fontconfig/fontconfig.h>

FcStrSet *decodeStrSet(cmp_ctx_t *bytes);
FcStrSet *decodeFileSet(cmp_ctx_t *bytes);
bool encodeStrSet(cmp_ctx_t *bytes, FcStrSet *data);
uint8_t *testStrSet(uint8_t *in, size_t in_length, size_t *length);
FcCharSet *decodeCharSet(cmp_ctx_t *bytes);
bool encodeStrList(cmp_ctx_t *bytes, const FcStrList *data);
bool encodeCharSet(cmp_ctx_t *bytes, const FcCharSet *data);
uint8_t *testCharSet(uint8_t *in, size_t in_length, size_t *length);
FcLangSet *decodeLangSet(cmp_ctx_t *bytes);
bool encodeLangSet(cmp_ctx_t *bytes, const FcLangSet *data);
uint8_t *testLangSet(uint8_t *in, size_t in_length, size_t *length);
FcObjectSet *decodeObjectSet(cmp_ctx_t *bytes);
FcRange *decodeRange(cmp_ctx_t *bytes);
bool encodeRange(cmp_ctx_t *bytes, const FcRange *data);
uint8_t *testRange(uint8_t *in, size_t in_length, size_t *length);
FcMatrix *decodeMatrix(cmp_ctx_t *bytes);
bool encodeMatrix(cmp_ctx_t *bytes, const FcMatrix *data);
uint8_t *testMatrix(uint8_t *in, size_t in_length, size_t *length);
bool decodeValue(cmp_ctx_t *bytes, FcValue *out);
bool encodeValue(cmp_ctx_t *bytes, FcValue *data);
uint8_t *testValue(uint8_t *in, size_t in_length, size_t *length);
FcPattern *decodePattern(cmp_ctx_t *bytes);
bool encodePattern(cmp_ctx_t *bytes, FcPattern *data);
uint8_t *testPattern(uint8_t *in, size_t in_length, size_t *length);
FcFontSet *decodeFontSet(cmp_ctx_t *bytes);
FcFontSet **decodeFontSets(cmp_ctx_t *bytes, size_t *nsets);
bool encodeFontSet(cmp_ctx_t *bytes, FcFontSet *data);
uint8_t *testFontSet(uint8_t *in, size_t in_length, size_t *length);
bool encodeRenderableFontSet(cmp_ctx_t *bytes, FcFontSet *data);
bool encodeResult(cmp_ctx_t *bytes, FcResult res);

bool cmp_bytes_init(cmp_ctx_t *ctx, uint8_t *buf, size_t length);
bool cmp_bytes_alloc(cmp_ctx_t *ctx, size_t length);
void cmp_bytes_free(cmp_ctx_t *ctx);
uint8_t *cmp_bytes_take(cmp_ctx_t *ctx, size_t *length);