diff options
author | Ulrich Drepper <drepper@redhat.com> | 2001-07-22 17:47:08 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2001-07-22 17:47:08 +0000 |
commit | 6b98979fc9e48f7627068426c49780f74f482750 (patch) | |
tree | d268769299237c3e7a3daa824289f1063b9a4fd1 /iconv/gconv_int.h | |
parent | 2c4223669598910462717212b583ef0be08dc2bb (diff) | |
download | glibc-6b98979fc9e48f7627068426c49780f74f482750.tar.gz glibc-6b98979fc9e48f7627068426c49780f74f482750.tar.xz glibc-6b98979fc9e48f7627068426c49780f74f482750.zip |
Update.
2001-07-22 Ulrich Drepper <drepper@redhat.com> * iconv/gconv_builtin.c (struct builtin_map): Remove init and end elements. (BUILTIN_TRANSFORMATION): Remove Init and End parameters. (__gconv_get_builtin_trans): Initialize __init_fct and __end_fct to NULL. * iconv/gconv_builtin.h: Remove NULL parameters for Init and End in all BUILTIN_TRANSFORMATION calls. * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Remove Init and End parameters. * iconv/gconv_simple.c: Likewise. * iconv/gconv_db.c (gen_steps): Internal converters don't have initializers, move the code accordingly. * iconv/gconv_conf.c (__gconv_read_conf): Don't read configuration file if STATIC_GCONV is defined. * iconv/gconv_conf.c (__gconv_path_envvar): New global variable. (__gconv_get_path): Use it instead of call getenv. (__gconv_read_conf): First see whether cache can be used. If yes, don't do any work here. * iconv/gconv_db.c (__gconv_release_step): Renamed from release_step and exported. Change callers. (__gconv_find_transform): First call __gconv_lookup_cache and only continue if it signals no cache available. Remove some unnecessary tests. * iconv/gconv_int.h: Declare __gconv_path_envvar, __gconv_lookup_cache, __gconv_release_step, and __gconv_loaded_cache. * iconv/gconv_cache.c: New file. * iconv/iconvconfig.c: New file. * iconv/iconvconfig.h: New file. * iconv/strtab.c: New file. * iconv/Makefile: Add rules to build new files and programs.
Diffstat (limited to 'iconv/gconv_int.h')
-rw-r--r-- | iconv/gconv_int.h | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/iconv/gconv_int.h b/iconv/gconv_int.h index 9641077bcc..c517bd9e97 100644 --- a/iconv/gconv_int.h +++ b/iconv/gconv_int.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc. +/* Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -120,6 +120,9 @@ extern void *__gconv_alias_db; extern size_t __gconv_nmodules; extern struct gconv_module *__gconv_modules_db; +/* Value of the GCONV_PATH environment variable. */ +extern const char *__gconv_path_envvar; + /* The gconv functions expects the name to be in upper case and complete, including the trailing slashes if necessary. */ @@ -179,9 +182,22 @@ extern int __gconv_find_transform (const char *toset, const char *fromset, size_t *nsteps, int flags) internal_function; +/* Search for transformation in cache data. */ +extern int __gconv_lookup_cache (const char *toset, const char *fromset, + struct __gconv_step **handle, size_t *nsteps, + int flags) + internal_function; + +/* Free data associated with a step's structure. */ +extern void __gconv_release_step (struct __gconv_step *step) + internal_function; + /* Read all the configuration data and cache it. */ extern void __gconv_read_conf (void); +/* Try to read module cache file. */ +extern int __gconv_load_cache (void) internal_function; + /* Determine the directories we are looking in. */ extern void __gconv_get_path (void); |