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 [EMAIL PROTECTED] 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); > > >