Browse Source

MFB: limit iconv parameters here too

experimental/phar_tar
Stanislav Malyshev 19 years ago
parent
commit
8ecd0a4943
  1. 10
      ext/xmlrpc/libxmlrpc/encodings.c

10
ext/xmlrpc/libxmlrpc/encodings.c

@ -53,6 +53,10 @@ static const char rcsid[] = "#(@) $Id$";
#include "encodings.h"
#ifndef ICONV_CSNMAXLEN
#define ICONV_CSNMAXLEN 64
#endif
static char* convert(const char* src, int src_len, int *new_len, const char* from_enc, const char* to_enc) {
char* outbuf = 0;
@ -60,9 +64,13 @@ static char* convert(const char* src, int src_len, int *new_len, const char* fro
size_t outlenleft = src_len;
size_t inlenleft = src_len;
int outlen = src_len;
iconv_t ic = iconv_open(to_enc, from_enc);
iconv_t ic;
char* out_ptr = 0;
if(strlen(to_enc) >= ICONV_CSNMAXLEN || strlen(from_enc) >= ICONV_CSNMAXLEN) {
return NULL;
}
ic = iconv_open(to_enc, from_enc);
if(ic != (iconv_t)-1) {
size_t st;
outbuf = (char*)malloc(outlen + 1);

Loading…
Cancel
Save