]>
Commit | Line | Data |
---|---|---|
b168057a | 1 | /* Copyright (C) 2000-2015 Free Software Foundation, Inc. |
6b98979f UD |
2 | This file is part of the GNU C Library. |
3 | Contributed by Ulrich Drepper <drepper@redhat.com>, 2000. | |
4 | ||
5 | The GNU C Library is free software; you can redistribute it and/or | |
cc7375ce RM |
6 | modify it under the terms of the GNU Lesser General Public License as |
7 | published by the Free Software Foundation; either version 2.1 of the | |
6b98979f UD |
8 | License, or (at your option) any later version. |
9 | ||
10 | The GNU C Library is distributed in the hope that it will be useful, | |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
cc7375ce | 13 | Lesser General Public License for more details. |
6b98979f | 14 | |
cc7375ce | 15 | You should have received a copy of the GNU Lesser General Public |
59ba27a6 PE |
16 | License along with the GNU C Library; see the file COPYING.LIB. If |
17 | not, see <http://www.gnu.org/licenses/>. */ | |
6b98979f UD |
18 | |
19 | #include <stdint.h> | |
20 | ||
21 | ||
22 | typedef uint16_t gidx_t; | |
23 | ||
24 | ||
25 | struct gconvcache_header | |
26 | { | |
27 | uint32_t magic; | |
28 | gidx_t string_offset; | |
29 | gidx_t hash_offset; | |
30 | gidx_t hash_size; | |
31 | gidx_t module_offset; | |
32 | gidx_t otherconv_offset; | |
33 | }; | |
34 | ||
35 | struct hash_entry | |
36 | { | |
37 | gidx_t string_offset; | |
38 | gidx_t module_idx; | |
39 | }; | |
40 | ||
41 | struct module_entry | |
42 | { | |
43 | gidx_t canonname_offset; | |
44 | gidx_t fromdir_offset; | |
45 | gidx_t fromname_offset; | |
46 | gidx_t todir_offset; | |
47 | gidx_t toname_offset; | |
48 | gidx_t extra_offset; | |
49 | }; | |
50 | ||
51 | struct extra_entry | |
52 | { | |
53 | gidx_t module_cnt; | |
54 | struct extra_entry_module | |
55 | { | |
56 | gidx_t outname_offset; | |
57 | gidx_t dir_offset; | |
58 | gidx_t name_offset; | |
59 | } module[0]; | |
60 | }; | |
61 | ||
62 | ||
63 | #define GCONVCACHE_MAGIC 0x20010324 | |
64 | ||
65 | ||
66 | #define GCONV_MODULES_CACHE GCONV_DIR "/gconv-modules.cache" |