You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apr.apache.org by jean-frederic clere <jf...@fujitsu-siemens.com> on 2001/06/28 09:46:08 UTC
Re: cvs commit: apr-iconv/lib iconv.c iconv.h iconv_ccs.c
iconv_ces_euc.c iconv_ces_iso2022.c iconv_int.c iconv_module.c
iconv_uc.c
Thanks for fixing all theses, specialy this one:
+++
1.5 +1 -1 apr-iconv/lib/iconv_ccs.c
Index: iconv_ccs.c
===================================================================
RCS file: /home/cvs/apr-iconv/lib/iconv_ccs.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- iconv_ccs.c 2001/06/21 12:24:11 1.4
+++ iconv_ccs.c 2001/06/28 05:45:01 1.5
@@ -34,7 +34,7 @@
#include "iconv.h" /* iconv_ccs_desc, iconv_ccs_module */
apr_status_t
-iconv_ccs_event(struct iconv_module *mod, int event)
+iconv_ccs_event(struct iconv_module *mod, int event, apr_pool_t *ctx)
{
/* struct iconv_ccs_desc *desc =
+++
I should have noted it before!
Cheers
Jean-frederic
>
>
>
epc
wrowe@apache.org wrote:
>
> wrowe 01/06/27 22:45:06
>
> Modified: lib iconv.c iconv.h iconv_ccs.c iconv_ces_euc.c
> iconv_ces_iso2022.c iconv_int.c iconv_module.c
> iconv_uc.c
> Log:
> More apr-ization (size/ssize/pools/stat etc)
>
> Revision Changes Path
> 1.5 +9 -9 apr-iconv/lib/iconv.c
>
> Index: iconv.c
> ===================================================================
> RCS file: /home/cvs/apr-iconv/lib/iconv.c,v
> retrieving revision 1.4
> retrieving revision 1.5
> diff -u -r1.4 -r1.5
> --- iconv.c 2001/06/21 12:24:10 1.4
> +++ iconv.c 2001/06/28 05:45:00 1.5
> @@ -45,25 +45,25 @@
> };
>
> /*
> - * size_t *result is what the iconv() returns but it is cleaner to return
> + * apr_size_t *result is what the iconv() returns but it is cleaner to return
> * a status.
> * APR_EBADF: cd is not valid.
> * APR_BADARG: The ouput arguments are not valid.
> */
>
> apr_status_t
> -apr_iconv(iconv_t cd, const char **inbuf, size_t *inbytesleft,
> - char **outbuf, size_t *outbytesleft, size_t *result)
> +apr_iconv(iconv_t cd, const char **inbuf, apr_size_t *inbytesleft,
> + char **outbuf, apr_size_t *outbytesleft, apr_size_t *result)
> {
> struct iconv_converter *icp = (struct iconv_converter *)cd;
>
> if (icp == NULL) {
> - *result = (size_t) -1;
> + *result = (apr_size_t) -1;
> return(APR_EBADF);
> }
> if (outbytesleft == NULL || *outbytesleft == 0 ||
> outbuf == NULL || *outbuf == 0) {
> - *result = (size_t) -1;
> + *result = (apr_size_t) -1;
> return(APR_BADARG);
> }
> return ( icp->ic_desc->icd_conv(icp->ic_data,
> @@ -123,17 +123,17 @@
> const char *from_charset, apr_pool_t *ctx, iconv_t **res)
> {
> *res = iconv_open(to_charset, from_charset);
> - if (*res == (size_t) -1)
> + if (*res == (apr_size_t) -1)
> return apr_get_os_error();
> return APR_SUCCESS;
> }
>
> apr_status_t apr_iconv(iconv_t cd, const char **inbuf,
> - size_t *inbytesleft, char **outbuf,
> - size_t *outbytesleft, size_t *result)
> + apr_size_t *inbytesleft, char **outbuf,
> + apr_size_t *outbytesleft, apr_size_t *result)
> {
> *result = iconv(cd , inbuf, inbytesleft, outbuf, outbytesleft);
> - if (*result == (size_t) -1)
> + if (*result == (apr_size_t) -1)
> return apr_get_os_error();
> return APR_SUCCESS;
> }
>
>
>
> 1.9 +7 -3 apr-iconv/lib/iconv.h
>
> Index: iconv.h
> ===================================================================
> RCS file: /home/cvs/apr-iconv/lib/iconv.h,v
> retrieving revision 1.8
> retrieving revision 1.9
> diff -u -r1.8 -r1.9
> --- iconv.h 2001/06/21 12:24:11 1.8
> +++ iconv.h 2001/06/28 05:45:00 1.9
> @@ -34,7 +34,11 @@
>
> #include "apr.h"
> #include "apr_pools.h"
> +#ifdef WIN32
> +#define ICONV_DEFAULT_PATH "iconv"
> +#else
> #include "apr_iconv_private.h" /* contains ICONV_DEFAULT_PATH */
> +#endif
>
> #include <stddef.h>
>
> @@ -50,7 +54,7 @@
> /* __BEGIN_DECLS */
>
> apr_status_t apr_iconv_open(const char *, const char *, apr_pool_t *, iconv_t *);
> -apr_status_t apr_iconv(iconv_t, const char **, apr_size_t *, char **, apr_size_t *, size_t *);
> +apr_status_t apr_iconv(iconv_t, const char **, apr_size_t *, char **, apr_size_t *, apr_size_t *);
> apr_status_t apr_iconv_close(iconv_t, apr_pool_t *);
>
> /* __END_DECLS */
> @@ -88,7 +92,7 @@
>
> /* _tbl_simple.c table_load_ccs() calls iconv_mod_load(...ctx) */
>
> -typedef int iconv_mod_event_t(struct iconv_module *, int, apr_pool_t *ctx );
> +typedef int iconv_mod_event_t(struct iconv_module *, int, apr_pool_t *ctx);
>
> struct iconv_module_desc {
> int imd_type;
> @@ -248,7 +252,7 @@
> typedef int iconv_ces_nbits_t(struct iconv_ces *);
> typedef int iconv_ces_nbytes_t(struct iconv_ces *);
>
> -typedef ssize_t iconv_ces_convert_from_ucs_t
> +typedef apr_ssize_t iconv_ces_convert_from_ucs_t
> (struct iconv_ces *data, ucs_t in,
> unsigned char **outbuf, apr_size_t *outbytesleft);
>
>
>
>
> 1.5 +1 -1 apr-iconv/lib/iconv_ccs.c
>
> Index: iconv_ccs.c
> ===================================================================
> RCS file: /home/cvs/apr-iconv/lib/iconv_ccs.c,v
> retrieving revision 1.4
> retrieving revision 1.5
> diff -u -r1.4 -r1.5
> --- iconv_ccs.c 2001/06/21 12:24:11 1.4
> +++ iconv_ccs.c 2001/06/28 05:45:01 1.5
> @@ -34,7 +34,7 @@
> #include "iconv.h" /* iconv_ccs_desc, iconv_ccs_module */
>
> apr_status_t
> -iconv_ccs_event(struct iconv_module *mod, int event)
> +iconv_ccs_event(struct iconv_module *mod, int event, apr_pool_t *ctx)
> {
> /* struct iconv_ccs_desc *desc =
> (struct iconv_ccs_desc *)mod->im_desc->imd_data;*/
>
>
>
> 1.5 +7 -7 apr-iconv/lib/iconv_ces_euc.c
>
> Index: iconv_ces_euc.c
> ===================================================================
> RCS file: /home/cvs/apr-iconv/lib/iconv_ces_euc.c,v
> retrieving revision 1.4
> retrieving revision 1.5
> diff -u -r1.4 -r1.5
> --- iconv_ces_euc.c 2001/06/21 12:24:12 1.4
> +++ iconv_ces_euc.c 2001/06/28 05:45:01 1.5
> @@ -50,7 +50,7 @@
> {
> struct iconv_module *depmod = ces->mod->im_deplist;
> iconv_ces_euc_state_t *state;
> - size_t stsz;
> + apr_size_t stsz;
> int i;
>
> stsz = sizeof(iconv_ces_euc_state_t) +
> @@ -76,15 +76,15 @@
> #define is_7_14bit(data) ((data)->nbits & 7)
> #define is_7bit(data) ((data)->nbits & 1)
>
> -ssize_t
> +apr_ssize_t
> iconv_euc_convert_from_ucs(struct iconv_ces *ces, ucs_t in,
> - unsigned char **outbuf, size_t *outbytesleft)
> + unsigned char **outbuf, apr_size_t *outbytesleft)
> {
> iconv_ces_euc_state_t *euc_state = CESTOSTATE(ces);
> const iconv_ces_euc_ccs_t *ccsattr;
> const struct iconv_ccs_desc *ccs;
> ucs_t res;
> - size_t bytes;
> + apr_size_t bytes;
> int i;
>
> if (in == UCS_CHAR_NONE)
> @@ -123,9 +123,9 @@
>
> static ucs_t
> cvt2ucs(const struct iconv_ccs_desc *ccs, const unsigned char *inbuf,
> - size_t inbytesleft, int hi_plane, const unsigned char **bufptr)
> + apr_size_t inbytesleft, int hi_plane, const unsigned char **bufptr)
> {
> - size_t bytes = ccs->nbits > 8 ? 2 : 1;
> + apr_size_t bytes = ccs->nbits > 8 ? 2 : 1;
> ucs_t ch = *(const unsigned char *)inbuf++;
>
> if (inbytesleft < bytes)
> @@ -145,7 +145,7 @@
>
> ucs_t
> iconv_euc_convert_to_ucs(struct iconv_ces *ces,
> - const unsigned char **inbuf, size_t *inbytesleft)
> + const unsigned char **inbuf, apr_size_t *inbytesleft)
> {
> iconv_ces_euc_state_t *euc_state = CESTOSTATE(ces);
> const iconv_ces_euc_ccs_t *ccsattr;
>
>
>
> 1.5 +13 -13 apr-iconv/lib/iconv_ces_iso2022.c
>
> Index: iconv_ces_iso2022.c
> ===================================================================
> RCS file: /home/cvs/apr-iconv/lib/iconv_ces_iso2022.c,v
> retrieving revision 1.4
> retrieving revision 1.5
> diff -u -r1.4 -r1.5
> --- iconv_ces_iso2022.c 2001/06/21 12:24:13 1.4
> +++ iconv_ces_iso2022.c 2001/06/28 05:45:02 1.5
> @@ -38,7 +38,7 @@
>
> typedef struct {
> const char *sequence;
> - size_t length;
> + apr_size_t length;
> int prefix_type;
> } iconv_ces_iso2022_shift;
>
> @@ -73,7 +73,7 @@
> const struct iconv_ccs_desc *ccs;
> iconv_ces_iso2022_state_t *state;
> struct iconv_module *depmod;
> - size_t stsz, shiftsz;
> + apr_size_t stsz, shiftsz;
> int i;
>
> shiftsz = SHIFT_LEN;
> @@ -128,7 +128,7 @@
> update_shift_state(const struct iconv_ces *ces, ucs_t ch)
> {
> struct iconv_ces_iso2022_state *iso_state = CESTOSTATE(ces);
> - size_t i;
> + apr_size_t i;
>
> if (ch == '\n' && iso_state->previous_char == '\r') {
> for (i = 0; i < shift_num; i ++) {
> @@ -141,15 +141,15 @@
>
> #define is_7_14bit(ccs) ((ccs)->nbits & 7)
>
> -static ssize_t
> +static apr_ssize_t
> cvt_ucs2iso(const struct iconv_ces *ces, ucs_t in,
> - unsigned char **outbuf, size_t *outbytesleft, int cs)
> + unsigned char **outbuf, apr_size_t *outbytesleft, int cs)
> {
> struct iconv_ces_iso2022_state *iso_state = CESTOSTATE(ces);
> const struct iconv_ces_iso2022_ccs *ccsattr;
> const struct iconv_ccs_desc *ccs;
> ucs_t res;
> - size_t len = 0;
> + apr_size_t len = 0;
> int need_designator, need_shift;
>
> ccs = MODTOCCS(iso_state->ccsmod[cs]);
> @@ -198,12 +198,12 @@
> return 1;
> }
>
> -ssize_t
> +apr_ssize_t
> iconv_iso2022_convert_from_ucs(struct iconv_ces *ces,
> - ucs_t in, unsigned char **outbuf, size_t *outbytesleft)
> + ucs_t in, unsigned char **outbuf, apr_size_t *outbytesleft)
> {
> struct iconv_ces_iso2022_state *iso_state = CESTOSTATE(ces);
> - ssize_t res;
> + apr_ssize_t res;
> int cs, i;
>
> if (in == UCS_CHAR_NONE)
> @@ -226,9 +226,9 @@
>
> static ucs_t
> cvt_iso2ucs(const struct iconv_ccs_desc *ccs, const unsigned char **inbuf,
> - size_t *inbytesleft, int prefix_type)
> + apr_size_t *inbytesleft, int prefix_type)
> {
> - size_t bytes = ccs->nbits > 8 ? 2 : 1;
> + apr_size_t bytes = ccs->nbits > 8 ? 2 : 1;
> ucs_t ch = **inbuf;
>
> if (*inbytesleft < bytes)
> @@ -246,14 +246,14 @@
>
> ucs_t
> iconv_iso2022_convert_to_ucs(struct iconv_ces *ces,
> - const unsigned char **inbuf, size_t *inbytesleft)
> + const unsigned char **inbuf, apr_size_t *inbytesleft)
> {
> struct iconv_ces_iso2022_state *iso_state = CESTOSTATE(ces);
> const struct iconv_ces_iso2022_ccs *ccsattr;
> ucs_t res;
> const unsigned char *ptr = *inbuf;
> unsigned char byte;
> - size_t len, left = *inbytesleft;
> + apr_size_t len, left = *inbytesleft;
> int i;
>
> while (left) {
>
>
>
> 1.5 +1 -1 apr-iconv/lib/iconv_int.c
>
> Index: iconv_int.c
> ===================================================================
> RCS file: /home/cvs/apr-iconv/lib/iconv_int.c,v
> retrieving revision 1.4
> retrieving revision 1.5
> diff -u -r1.4 -r1.5
> --- iconv_int.c 2001/06/21 12:24:13 1.4
> +++ iconv_int.c 2001/06/28 05:45:02 1.5
> @@ -39,7 +39,7 @@
> #include "iconv.h"
>
> apr_status_t
> -iconv_malloc(size_t size, void **pp)
> +iconv_malloc(apr_size_t size, void **pp)
> {
> void *p = malloc(size);
>
>
>
>
> 1.7 +12 -9 apr-iconv/lib/iconv_module.c
>
> Index: iconv_module.c
> ===================================================================
> RCS file: /home/cvs/apr-iconv/lib/iconv_module.c,v
> retrieving revision 1.6
> retrieving revision 1.7
> diff -u -r1.6 -r1.7
> --- iconv_module.c 2001/06/05 15:17:01 1.6
> +++ iconv_module.c 2001/06/28 05:45:02 1.7
> @@ -41,17 +41,20 @@
> #include <sys/types.h>
> #include <sys/stat.h>
>
> -static int
> -iconv_getpathname(char *buffer, const char *dir, const char *name)
> +static apr_status_t
> +iconv_getpathname(char *buffer, const char *dir, const char *name, apr_pool_t *ctx)
> {
> - struct stat sb;
> + apr_status_t rv;
> + apr_finfo_t sb;
>
> apr_snprintf(buffer, APR_PATH_MAX, "%s/%s", dir, name);
> - return (stat(buffer, &sb) || ! S_ISREG(sb.st_mode)) ? EINVAL : 0;
> + if (rv = apr_stat(&sb, buffer, APR_FINFO_TYPE, ctx))
> + return rv;
> + return ((sb.filetype != APR_REG) ? APR_EINVAL : 0);
> }
>
> -static int
> -iconv_getpath(char *buf, const char *name)
> +static apr_status_t
> +iconv_getpath(char *buf, const char *name, apr_pool_t *ctx)
> {
> char buffer[APR_PATH_MAX];
> char *ptr;
> @@ -70,7 +73,7 @@
> if (p == NULL)
> return ENOMEM;
> for (ptr = p; (dir = strtok(p, ":")); p = NULL) {
> - if (iconv_getpathname(buf, dir, buffer) == 0) {
> + if (iconv_getpathname(buf, dir, buffer, ctx) == 0) {
> free(ptr);
> return 0;
> }
> @@ -78,7 +81,7 @@
> free(ptr); /* otherwise memory leak */
> }
> }
> - return iconv_getpathname(buf, ICONV_DEFAULT_PATH, buffer);
> + return iconv_getpathname(buf, ICONV_DEFAULT_PATH, buffer, ctx);
> }
>
> static int
> @@ -112,7 +115,7 @@
> void *handle;
> int error;
>
> - if (iconv_getpath(buffer, modname) != 0)
> + if (iconv_getpath(buffer, modname, ctx) != 0)
> return EINVAL;
>
> error = iconv_dlopen(buffer, "iconv_module", &handle, (void**)&mdesc, ctx);
>
>
>
> 1.5 +6 -6 apr-iconv/lib/iconv_uc.c
>
> Index: iconv_uc.c
> ===================================================================
> RCS file: /home/cvs/apr-iconv/lib/iconv_uc.c,v
> retrieving revision 1.4
> retrieving revision 1.5
> diff -u -r1.4 -r1.5
> --- iconv_uc.c 2001/06/21 12:24:14 1.4
> +++ iconv_uc.c 2001/06/28 05:45:03 1.5
> @@ -67,24 +67,24 @@
> }
>
> apr_status_t
> -iconv_uc_conv(void *data, const unsigned char **inbuf, size_t *inbytesleft,
> - unsigned char **outbuf, size_t *outbytesleft, size_t *res)
> +iconv_uc_conv(void *data, const unsigned char **inbuf, apr_size_t *inbytesleft,
> + unsigned char **outbuf, apr_size_t *outbytesleft, apr_size_t *res)
> {
> struct iconv_uc *ic = (struct iconv_uc *)data;
> const unsigned char *ptr;
> ucs_t ch;
> - ssize_t size;
> + apr_ssize_t size;
>
> - *res = (size_t)(0);
> + *res = (apr_size_t)(0);
> if (data == NULL) {
> - *res = (size_t) -1;
> + *res = (apr_size_t) -1;
> return APR_EBADF;
> }
>
> if (inbuf == NULL || *inbuf == NULL) {
> if (ICONV_CES_CONVERT_FROM_UCS(ic->to, UCS_CHAR_NONE,
> outbuf, outbytesleft) <= 0) {
> - *res = (size_t) -1;
> + *res = (apr_size_t) -1;
> return APR_BADARG; /* too big */
> }
> ICONV_CES_RESET(ic->from);
>
>
>