diff options
| author | Ulrich Drepper <drepper@redhat.com> | 1999-06-16 22:55:47 +0000 |
|---|---|---|
| committer | Ulrich Drepper <drepper@redhat.com> | 1999-06-16 22:55:47 +0000 |
| commit | d64b6ad07585b8a37e5fecc9a47fcee766d52ede (patch) | |
| tree | 076b36cc9c1b82254348212e75939d842885563a /iconv | |
| parent | bc938d3de936a8e429b16237180c046139be8247 (diff) | |
| download | glibc-d64b6ad07585b8a37e5fecc9a47fcee766d52ede.tar.xz glibc-d64b6ad07585b8a37e5fecc9a47fcee766d52ede.zip | |
Update.
* Versions.def: Add GLIBC_2.2 for libc.
* iconv/gconv.h: Make header suitable for inclusion in public header
by protecting all names with __.
* iconv/gconv.c: Adapt for symbol name changes.
* iconv/gconv.h: Likewise.
* iconv/gconv_builtin.c: Likewise.
* iconv/gconv_close.c: Likewise.
* iconv/gconv_db.c: Likewise.
* iconv/gconv_dl.c: Likewise.
* iconv/gconv_int.h: Likewise.
* iconv/gconv_open.c: Likewise.
* iconv/gconv_simple.c: Likewise.
* iconv/iconv.c: Likewise.
* iconv/iconv_close.c: Likewise.
* iconv/iconv_open.c: Likewise.
* iconv/loop.c: Likewise.
* iconv/skeleton.c: Likewise.
* iconvdata/8bit-gap.c: Likewise.
* iconvdata/8bit-generic.c: Likewise.
* iconvdata/ansi_x3.110.c: Likewise.
* iconvdata/big5.c: Likewise.
* iconvdata/cns11643.h: Likewise.
* iconvdata/cns11643l1.h: Likewise.
* iconvdata/euc-cn.c: Likewise.
* iconvdata/euc-jp.c: Likewise.
* iconvdata/euc-kr.c: Likewise.
* iconvdata/euc-tw.c: Likewise.
* iconvdata/gb2312.h: Likewise.
* iconvdata/iso-2022-jp.c: Likewise.
* iconvdata/iso-2022-kr.c: Likewise.
* iconvdata/iso646.c: Likewise.
* iconvdata/iso8859-1.c: Likewise.
* iconvdata/iso_6937-2.c: Likewise.
* iconvdata/iso_6937.c: Likewise.
* iconvdata/jis0201.h: Likewise.
* iconvdata/jis0208.h: Likewise.
* iconvdata/jis0212.h: Likewise.
* iconvdata/johab.c: Likewise.
* iconvdata/ksc5601.h: Likewise.
* iconvdata/sjis.c: Likewise.
* iconvdata/t.61.c: Likewise.
* iconvdata/uhc.c: Likewise.
* stdlib/mblen.c: Likewise.
* stdlib/mbtowc.c: Likewise.
* stdlib/wctomb.c: Likewise.
* wcsmbs/btowc.c: Likewise.
* wcsmbs/mbrtowc.c: Likewise.
* wcsmbs/mbsnrtowcs.c: Likewise.
* wcsmbs/mbsrtowcs.c: Likewise.
* wcsmbs/wchar.h: Likewise.
* wcsmbs/wcrtomb.c: Likewise.
* wcsmbs/wcsmbsload.c: Likewise.
* wcsmbs/wcsmbsload.h: Likewise.
* wcsmbs/wcsnrtombs.c: Likewise.
* wcsmbs/wcsrtombs.c: Likewise.
* wcsmbs/wctob.c: Likewise.
* include/limits.h (MB_LEN_MAX): Increase to 16.
* sysdeps/generic/_G_config.h: Define _G_fpos_t as struct. Define
_G_iconv_t.
* sysdeps/unix/sysv/linux/_G_config.h: Likewise.
* include/wchar.h: Change mbstate_t to __mbstate_t.
* libio/Makefile (routines): Add wfiledoalloc, oldiofgetpos,
oldiofgetpos64, oldiofsetpos, oldiofsetpos64, fputwc, fputwc_u,
getwc, getwc_u, getwchar, getwchar_u, iofgetws, iofgetws_u,
iofputws, iofputws_u, iogetwline, iowpadn, ioungetwc, putwc, putwc_u,
putchar, putchar_u, swprintf, vwprintf, wprintf, wscanf, fwscanf,
vwscanf, vswprintf, iovswscanf, swscanf, wgenops, wstrops, wfileops,
and iofwide.
(tests): Add tst_swprintf, tst_wprintf, tst_swscanf, and tst_wscanf.
* libio/Versions: Add _IO_fgetpos, _IO_fgetpos64, _IO_fsetpos,
_IO_fsetpos64, fgetpos, fgetpos64, fgetwc, fgetwc_unlocked, fgetws,
fgetws_unlocked, fputwc, fputwc_unlocked, fputws, fputws_unlocked,
fsetpos, fsetpos64, fwide, fwprintf, fwscanf, getwc, getwc_unlocked,
getwchar, getwchar_unlocked, putwc, putwc_unlocked, putwchar,
putwchar_unlocked, swprintf, swscanf, ungetwc, vfwprintf, vswprintf,
vwprintf, vfwscanf, vswscanf, vwscanf, wprintf, and wscanf to
GLIBC_2.2 for libc.
* libio/libio.h: Define codecvt struct. Define _IO_wide_data.
Extend _IO_file contain pointer to codecvt, widedata and mode.
(_IO_getwc_unlocked): New macro.
(_IO_putwc_unlocked): New macro.
(_IO_fwide): New macro.
* libio/libioP.h: Add new prototypes and adjust existing declarations.
* libio/fileops.c (_IO_new_file_close_it): Reset normal or widedata
buffers based on mode.
(new_do_write): Set _IO_write_end to _IO_buf_end if stream is wide
oriented.
(_IO_new_file_overflow): Don't depend only on _IO_CURRENTLY_PUTTING
flag to be enough to signal unallocated buffer. For wide oriented
stream don't make it linebuffered. Don't use _IO_do_flush, use
_IO_new_do_write directly.
(_IO_new_file_seekoff): Change return value type to _IO_off64_t.
(_IO_file_seek): Likewise.
* libio/genops.c (_IO_least_marker): Make global.
(__underflow): Orient stream if not already done.
(__uflow): Likewise.
(_IO_default_seekpos): Change to type _IO_off64_t.
(_IO_default_seekoff): Likewise.
(_IO_default_seek): Likewise.
(_IO_no_init): New function. Similar to _IO_init but allows to orient
in initialization.
* libio/iolibio.h: Add prototype for _IO_vswprintf. Change _IO_pos_BAD
to use _IO_off64_t.
* libio/ftello.c: Use _IO_off_t. For now abort when use with wide
char stream.
* libio/ftello64.c: Likewise.
* libio/ioftell.c: Likewise.
* libio/iofopncook.c: Likewise.
* libio/ioseekoff.c: Likewise.
* libio/ioseekpos.c: Likewise.
* libio/oldfileops.c: Likewise.
* libio/iofgetpos.c: Store state of conversion if necessary.
* libio/iofgetpos64.c: Likewise.
* libio/iofsetpos.c: Restore conversion state if necessary.
* libio/iofsetpos64.c: Likewise.
* libio/iofdopen.c: Initialize so that stream can be wide oriented.
* libio/iofopen.c: Likewise.
* libio/iofopen64.c: Likewise.
* libio/iopopen.c: Likewise.
* libio/iovdprintf.c: Likewise.
* libio/iovsprintf.c: Likewise.
* libio/iovsscanf.c: Likewise.
* libio/memstream.c: Likewise.
* libio/obprintf.c: Likewise.
* libio/iofputs.c: Orient stream if not already happened.
* libio/iofputs_u.c: Likewise.
* libio/iofwrite.c: Likewise.
* libio/iofwrite_u.c: Likewise.
* libio/ioputs.c: Likewise.
* libio/iosetbuffer.c: Handle not yet oriented stream.
* libio/iosetvbuf.c: Likewise.
* libio/oldstdfiles.c: Adjust FILEBUF_LITERAL call.
* libio/stdfiles.c: Likewise.
* libio/strops.c (_IO_str_overflow): Correctly free buffer after
failed allocation.
(_IO_str_seekoff): Use _IO_off64_t.
* libio/vasprintf.c: Pre-orient stream.
* libio/vsnprintf.c: Likewise.
* libio/fputwc.c: New file.
* libio/fputwc_u.c: New file.
* libio/fwprintf.c: New file.
* libio/fwscanf.c: New file.
* libio/getwc.c: New file.
* libio/getwc_u.c: New file.
* libio/getwchar.c: New file.
* libio/getwchar_u.c: New file.
* libio/iofgetws.c: New file.
* libio/iofgetws_u.c: New file.
* libio/iofputws.c: New file.
* libio/iofputws_u.c: New file.
* libio/iofwide.c: New file.
* libio/iogetwline.c: New file.
* libio/ioungetwc.c: New file.
* libio/iovswscanf.c: New file.
* libio/iowpadn.c: New file.
* libio/oldiofgetpos.c: New file.
* libio/oldiofgetpos64.c: New file.
* libio/oldiofsetpos.c: New file.
* libio/oldiofsetpos64.c: New file.
* libio/putwc.c: New file.
* libio/putwc_u.c: New file.
* libio/putwchar.c: New file.
* libio/putwchar_u.c: New file.
* libio/swprintf.c: New file.
* libio/swscanf.c: New file.
* libio/tst_swprintf.c: New file.
* libio/tst_swscanf.c: New file.
* libio/tst_wprintf.c: New file.
* libio/tst_wscanf.c: New file.
* libio/tst_wscanf.input: New file.
* libio/vswprintf.c: New file.
* libio/vwprintf.c: New file.
* libio/vwscanf.c: New file.
* libio/wfiledoalloc.c: New file.
* libio/wfileops.c: New file.
* libio/wgenops.c: New file.
* libio/wprintf.c: New file.
* libio/wscanf.c: New file.
* libio/wstrops.c: New file.
* stdio-common/Makefile (routines): Add _itowa, itowa-digits,
vfwprintf, and vfwscanf.
* stdio-common/_itoa.c (base_table): Rename to _IO_base_table and
make global.
* stdio-common/_itowa.c: New file.
* stdio-common/_itowa.h: New file.
* stdio-common/itoa-digits.c: Minimal optimization.
* stdio-common/itowa-digits.c: New file.
* stdio-common/printf-parse.h: Allow use in wide character context.
* stdio-common/printf-prs.c: Define ISASCII and MBRLEN.
* stdio-common/printf.h (printf_info): Add wide bit.
* stdio-common/printf_fp.c: Determine from wide bit whether stream
is wide oriented or not.
* stdio-common/printf_size.c: Likewise.
* sysdeps/generic/printf_fphex.c: Likewise.
* stdlib/strfmon.c: Call __printf_fp with wide bit cleared.
* stdio-common/vfprintf.c: Rewrite to allow use in wide character
context.
* stdio-common/vfscand.c: Likewise.
* stdio-common/vfwprintf.c: New file.
* stdio-common/vfwscanf.c: New file.
* time/Makefile (routines): Add wcsftime.
(tests): Add tst_wcsftime.
* time/Versions: Add wcsftime to GLIBC_2.2 for libc.
* time/strftime.c: Make usable as wcsftime.
* time/wcsftime.c: New file.
* time/tst_wcsftime.c: New file.
* wcsmbs/Makefile (routines): Add wmempcpy and wcschrnul.
* wcsmbs/Versions: Add wmempcpy and wcschrnul to GLIBC_2.2 for libc.
* wcsmbs/wcschrnul.c: New file.
* wcsmbs/wmemcpy.c: New file.
* wcsmbs/wmemcpy.c: Rename to __wmemcpy and make wmemcpy weak alias.
* wcsmbs/wmemmove.c: Likewise for wmemmove.
* manual/stdio.texi: Document is_char and wide element if printf_info.
* manual/time.texi: Document wcsftime.
* include/wchar.h: Add prototypes for __wmemcpy, __wmempcpy,
__wmemmove, __wcschrnul, and __vfwscanf.
* locale/langinfo.h: Add new LC_TIME entries for wchar_t data.
* locale/C-time.c: Adapt for above change.
* locale/categories.def: Likewise.
* locale/localeinfo.h: Likewise.
* localedata/Makefile: Don't run tests for now.
Diffstat (limited to 'iconv')
| -rw-r--r-- | iconv/gconv.c | 30 | ||||
| -rw-r--r-- | iconv/gconv.h | 102 | ||||
| -rw-r--r-- | iconv/gconv_builtin.c | 46 | ||||
| -rw-r--r-- | iconv/gconv_close.c | 18 | ||||
| -rw-r--r-- | iconv/gconv_db.c | 118 | ||||
| -rw-r--r-- | iconv/gconv_dl.c | 28 | ||||
| -rw-r--r-- | iconv/gconv_int.h | 27 | ||||
| -rw-r--r-- | iconv/gconv_open.c | 49 | ||||
| -rw-r--r-- | iconv/gconv_simple.c | 42 | ||||
| -rw-r--r-- | iconv/iconv.c | 14 | ||||
| -rw-r--r-- | iconv/iconv_close.c | 4 | ||||
| -rw-r--r-- | iconv/iconv_open.c | 6 | ||||
| -rw-r--r-- | iconv/loop.c | 19 | ||||
| -rw-r--r-- | iconv/skeleton.c | 78 |
14 files changed, 294 insertions, 287 deletions
diff --git a/iconv/gconv.c b/iconv/gconv.c index 14398e2e37..828db9d6f8 100644 --- a/iconv/gconv.c +++ b/iconv/gconv.c @@ -27,43 +27,45 @@ int internal_function -__gconv (gconv_t cd, const unsigned char **inbuf, const unsigned char *inbufend, - unsigned char **outbuf, unsigned char *outbufend, size_t *converted) +__gconv (__gconv_t cd, const unsigned char **inbuf, + const unsigned char *inbufend, unsigned char **outbuf, + unsigned char *outbufend, size_t *converted) { - size_t last_step = cd->nsteps - 1; + size_t last_step = cd->__nsteps - 1; int result; - if (cd == (gconv_t) -1L) - return GCONV_ILLEGAL_DESCRIPTOR; + if (cd == (__gconv_t) -1L) + return __GCONV_ILLEGAL_DESCRIPTOR; assert (converted != NULL); *converted = 0; if (inbuf == NULL || *inbuf == NULL) /* We just flush. */ - result = _CALL_DL_FCT (cd->steps->fct, - (cd->steps, cd->data, NULL, NULL, converted, 1)); + result = _CALL_DL_FCT (cd->__steps->__fct, + (cd->__steps, cd->__data, NULL, NULL, + converted, 1)); else { const unsigned char *last_start; assert (outbuf != NULL && *outbuf != NULL); - cd->data[last_step].outbuf = *outbuf; - cd->data[last_step].outbufend = outbufend; + cd->__data[last_step].__outbuf = *outbuf; + cd->__data[last_step].__outbufend = outbufend; do { last_start = *inbuf; - result = _CALL_DL_FCT (cd->steps->fct, - (cd->steps, cd->data, inbuf, inbufend, + result = _CALL_DL_FCT (cd->__steps->__fct, + (cd->__steps, cd->__data, inbuf, inbufend, converted, 0)); } - while (result == GCONV_EMPTY_INPUT && last_start != *inbuf - && *inbuf + cd->steps->min_needed_from <= inbufend); + while (result == __GCONV_EMPTY_INPUT && last_start != *inbuf + && *inbuf + cd->__steps->__min_needed_from <= inbufend); } if (outbuf != NULL && *outbuf != NULL) - *outbuf = cd->data[last_step].outbuf; + *outbuf = cd->__data[last_step].__outbuf; return result; } diff --git a/iconv/gconv.h b/iconv/gconv.h index 4b71ccf4b8..f4a66c68d4 100644 --- a/iconv/gconv.h +++ b/iconv/gconv.h @@ -24,106 +24,108 @@ #define _GCONV_H 1 #include <features.h> +#define __need_mbstate_t #include <wchar.h> #define __need_size_t #include <stddef.h> /* ISO 10646 value used to signal invalid value. */ -#define UNKNOWN_10646_CHAR ((wchar_t) 0xfffd) +#define __UNKNOWN_10646_CHAR ((wchar_t) 0xfffd) /* Error codes for gconv functions. */ enum { - GCONV_OK = 0, - GCONV_NOCONV, - GCONV_NODB, - GCONV_NOMEM, - - GCONV_EMPTY_INPUT, - GCONV_FULL_OUTPUT, - GCONV_ILLEGAL_INPUT, - GCONV_INCOMPLETE_INPUT, - - GCONV_ILLEGAL_DESCRIPTOR, - GCONV_INTERNAL_ERROR + __GCONV_OK = 0, + __GCONV_NOCONV, + __GCONV_NODB, + __GCONV_NOMEM, + + __GCONV_EMPTY_INPUT, + __GCONV_FULL_OUTPUT, + __GCONV_ILLEGAL_INPUT, + __GCONV_INCOMPLETE_INPUT, + + __GCONV_ILLEGAL_DESCRIPTOR, + __GCONV_INTERNAL_ERROR }; /* Forward declarations. */ -struct gconv_step; -struct gconv_step_data; -struct gconv_loaded_object; +struct __gconv_step; +struct __gconv_step_data; +struct __gconv_loaded_object; /* Type of a conversion function. */ -typedef int (*gconv_fct) __PMT ((struct gconv_step *, - struct gconv_step_data *, - __const unsigned char **, - __const unsigned char *, size_t *, int)); +typedef int (*__gconv_fct) __PMT ((struct __gconv_step *, + struct __gconv_step_data *, + __const unsigned char **, + __const unsigned char *, size_t *, int)); /* Constructor and destructor for local data for conversion step. */ -typedef int (*gconv_init_fct) __PMT ((struct gconv_step *)); -typedef void (*gconv_end_fct) __PMT ((struct gconv_step *)); +typedef int (*__gconv_init_fct) __PMT ((struct __gconv_step *)); +typedef void (*__gconv_end_fct) __PMT ((struct __gconv_step *)); /* Description of a conversion step. */ -struct gconv_step +struct __gconv_step { - struct gconv_loaded_object *shlib_handle; - __const char *modname; + struct __gconv_loaded_object *__shlib_handle; + __const char *__modname; - int counter; + int __counter; - __const char *from_name; - __const char *to_name; + __const char *__from_name; + __const char *__to_name; - gconv_fct fct; - gconv_init_fct init_fct; - gconv_end_fct end_fct; + __gconv_fct __fct; + __gconv_init_fct __init_fct; + __gconv_end_fct __end_fct; /* Information about the number of bytes needed or produced in this step. This helps optimizing the buffer sizes. */ - int min_needed_from; - int max_needed_from; - int min_needed_to; - int max_needed_to; + int __min_needed_from; + int __max_needed_from; + int __min_needed_to; + int __max_needed_to; /* Flag whether this is a stateful encoding or not. */ - int stateful; + int __stateful; - void *data; /* Pointer to step-local data. */ + void *__data; /* Pointer to step-local data. */ }; /* Additional data for steps in use of conversion descriptor. This is allocated by the `init' function. */ -struct gconv_step_data +struct __gconv_step_data { - unsigned char *outbuf; /* Output buffer for this step. */ - unsigned char *outbufend; /* Address of first byte after the output buffer.*/ + unsigned char *__outbuf; /* Output buffer for this step. */ + unsigned char *__outbufend; /* Address of first byte after the output + buffer.*/ /* Is this the last module in the chain. */ - int is_last; + int __is_last; /* Counter for number of invocations of the module function for this descriptor. */ - int invocation_counter; + int __invocation_counter; /* Flag whether this is an internal use of the module (in the mb*towc* and wc*tomb* functions) or regular with iconv(3). */ - int internal_use; + int __internal_use; - mbstate_t *statep; - mbstate_t __state; /* This element should not be used directly by + __mbstate_t *__statep; + __mbstate_t __state; /* This element should not be used directly by any module; always use STATEP! */ }; /* Combine conversion step description with data. */ -typedef struct gconv_info +typedef struct __gconv_info { - size_t nsteps; - struct gconv_step *steps; - struct gconv_step_data data[0]; -} *gconv_t; + size_t __nsteps; + struct __gconv_step *__steps; + struct __gconv_step_data __data[0]; +} *__gconv_t; #endif /* gconv.h */ diff --git a/iconv/gconv_builtin.c b/iconv/gconv_builtin.c index 4f3ca565ac..ca3ca3e5e6 100644 --- a/iconv/gconv_builtin.c +++ b/iconv/gconv_builtin.c @@ -1,5 +1,5 @@ /* Table for builtin transformation mapping. - Copyright (C) 1997, 1998 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -29,9 +29,9 @@ static struct builtin_map { const char *name; - gconv_fct fct; - gconv_init_fct init; - gconv_end_fct end; + __gconv_fct fct; + __gconv_init_fct init; + __gconv_end_fct end; int min_needed_from; int max_needed_from; @@ -43,15 +43,15 @@ static struct builtin_map #define BUILTIN_TRANSFORMATION(From, ConstPfx, ConstLen, To, Cost, Name, \ Fct, Init, End, MinF, MaxF, MinT, MaxT) \ { \ - name: Name, \ - fct: Fct, \ - init: Init, \ - end: End, \ + .name = Name, \ + .fct = Fct, \ + .init = Init, \ + .end = End, \ \ - min_needed_from: MinF, \ - max_needed_from: MaxF, \ - min_needed_to: MinT, \ - max_needed_to: MaxT \ + .min_needed_from = MinF, \ + .max_needed_from = MaxF, \ + .min_needed_to = MinT, \ + .max_needed_to = MaxT \ }, #define BUILTIN_ALIAS(From, To) @@ -61,7 +61,7 @@ static struct builtin_map void internal_function -__gconv_get_builtin_trans (const char *name, struct gconv_step *step) +__gconv_get_builtin_trans (const char *name, struct __gconv_step *step) { size_t cnt; @@ -71,17 +71,17 @@ __gconv_get_builtin_trans (const char *name, struct gconv_step *step) assert (cnt < sizeof (map) / sizeof (map[0])); - step->fct = map[cnt].fct; - step->init_fct = map[cnt].init; - step->end_fct = map[cnt].end; - step->counter = INT_MAX; - step->shlib_handle = NULL; + step->__fct = map[cnt].fct; + step->__init_fct = map[cnt].init; + step->__end_fct = map[cnt].end; + step->__counter = INT_MAX; + step->__shlib_handle = NULL; - step->min_needed_from = map[cnt].min_needed_from; - step->max_needed_from = map[cnt].max_needed_from; - step->min_needed_to = map[cnt].min_needed_to; - step->max_needed_to = map[cnt].max_needed_to; + step->__min_needed_from = map[cnt].min_needed_from; + step->__max_needed_from = map[cnt].max_needed_from; + step->__min_needed_to = map[cnt].min_needed_to; + step->__max_needed_to = map[cnt].max_needed_to; /* None of the builtin converters handles stateful encoding. */ - step->stateful = 0; + step->__stateful = 0; } diff --git a/iconv/gconv_close.c b/iconv/gconv_close.c index 2fe842467b..a22123b1c9 100644 --- a/iconv/gconv_close.c +++ b/iconv/gconv_close.c @@ -25,23 +25,23 @@ int internal_function -__gconv_close (gconv_t cd) +__gconv_close (__gconv_t cd) { - struct gconv_step *srunp; - struct gconv_step_data *drunp; + struct __gconv_step *srunp; + struct __gconv_step_data *drunp; size_t nsteps; /* Free all resources by calling destructor functions and release the implementations. */ - srunp = cd->steps; - nsteps = cd->nsteps; - drunp = cd->data; + srunp = cd->__steps; + nsteps = cd->__nsteps; + drunp = cd->__data; do { - if (!drunp->is_last && drunp->outbuf != NULL) - free (drunp->outbuf); + if (!drunp->__is_last && drunp->__outbuf != NULL) + free (drunp->__outbuf); } - while (!(drunp++)->is_last); + while (!(drunp++)->__is_last); /* Free the data allocated for the descriptor. */ free (cd); diff --git a/iconv/gconv_db.c b/iconv/gconv_db.c index 4abc1ae48b..727be41c25 100644 --- a/iconv/gconv_db.c +++ b/iconv/gconv_db.c @@ -82,7 +82,7 @@ struct known_derivation { const char *from; const char *to; - struct gconv_step *steps; + struct __gconv_step *steps; size_t nsteps; }; @@ -107,7 +107,7 @@ static void *known_derivations; static int internal_function derivation_lookup (const char *fromset, const char *toset, - struct gconv_step **handle, size_t *nsteps) + struct __gconv_step **handle, size_t *nsteps) { struct known_derivation key = { fromset, toset, NULL, 0 }; struct known_derivation **result; @@ -115,21 +115,21 @@ derivation_lookup (const char *fromset, const char *toset, result = __tfind (&key, &known_derivations, derivation_compare); if (result == NULL) - return GCONV_NOCONV; + return __GCONV_NOCONV; *handle = (*result)->steps; *nsteps = (*result)->nsteps; /* Please note that we return GCONV_OK even if the last search for this transformation was unsuccessful. */ - return GCONV_OK; + return __GCONV_OK; } /* Add new derivation to list of known ones. */ static void internal_function add_derivation (const char *fromset, const char *toset, - struct gconv_step *handle, size_t nsteps) + struct __gconv_step *handle, size_t nsteps) { struct known_derivation *new_deriv; size_t fromset_len = strlen (fromset) + 1; @@ -163,14 +163,14 @@ free_derivation (void *p) size_t cnt; for (cnt = 0; cnt < deriv->nsteps; ++cnt) - if (deriv->steps[cnt].end_fct) - _CALL_DL_FCT (deriv->steps[cnt].end_fct, (&deriv->steps[cnt])); + if (deriv->steps[cnt].__end_fct) + _CALL_DL_FCT (deriv->steps[cnt].__end_fct, (&deriv->steps[cnt])); /* Free the name strings. */ - free ((char *) deriv->steps[0].from_name); - free ((char *) deriv->steps[deriv->nsteps - 1].to_name); + free ((char *) deriv->steps[0].__from_name); + free ((char *) deriv->steps[deriv->nsteps - 1].__to_name); - free ((struct gconv_step *) deriv->steps); + free ((struct __gconv_step *) deriv->steps); free (deriv); } @@ -178,40 +178,40 @@ free_derivation (void *p) static int internal_function gen_steps (struct derivation_step *best, const char *toset, - const char *fromset, struct gconv_step **handle, size_t *nsteps) + const char *fromset, struct __gconv_step **handle, size_t *nsteps) { size_t step_cnt = 0; - struct gconv_step *result; + struct __gconv_step *result; struct derivation_step *current; - int status = GCONV_NOMEM; + int status = __GCONV_NOMEM; /* First determine number of steps. */ for (current = best; current->last != NULL; current = current->last) ++step_cnt; - result = (struct gconv_step *) malloc (sizeof (struct gconv_step) - * step_cnt); + result = (struct __gconv_step *) malloc (sizeof (struct __gconv_step) + * step_cnt); if (result != NULL) { int failed = 0; - status = GCONV_OK; + status = __GCONV_OK; *nsteps = step_cnt; current = best; while (step_cnt-- > 0) { - result[step_cnt].from_name = (step_cnt == 0 - ? __strdup (fromset) - : current->last->result_set); - result[step_cnt].to_name = (step_cnt + 1 == *nsteps - ? __strdup (current->result_set) - : result[step_cnt + 1].from_name); + result[step_cnt].__from_name = (step_cnt == 0 + ? __strdup (fromset) + : current->last->result_set); + result[step_cnt].__to_name = (step_cnt + 1 == *nsteps + ? __strdup (current->result_set) + : result[step_cnt + 1].__from_name); #ifndef STATIC_GCONV if (current->code->module_name[0] == '/') { /* Load the module, return handle for it. */ - struc |
