Remove unused functions from mbstring

- mbfl_buffer_converter_reset
- mbfl_buffer_converter_strncat
- mbfl_buffer_converter_getbuffer
- mbfl_oddlen
- mbfl_filter_output_pipe_flush
- mbfl_memory_device_output2
- mbfl_memory_device_output4
- mbfl_is_support_encoding
- mbfl_buffer_converter_feed2
- _php_mb_regex_globals_dtor
- mime_header_encoder_feed
- mime_header_decoder_feed
- mbfl_convert_filter_feed
This commit is contained in:
Alex Dowad 2020-06-27 23:39:43 +02:00
parent 8d13348bb5
commit a64241b540
12 changed files with 8 additions and 228 deletions

View file

@ -172,12 +172,6 @@ mbfl_buffer_converter_delete(mbfl_buffer_converter *convd)
} }
} }
void
mbfl_buffer_converter_reset(mbfl_buffer_converter *convd)
{
mbfl_memory_device_reset(&convd->device);
}
int int
mbfl_buffer_converter_illegal_mode(mbfl_buffer_converter *convd, int mode) mbfl_buffer_converter_illegal_mode(mbfl_buffer_converter *convd, int mode)
{ {
@ -210,45 +204,16 @@ mbfl_buffer_converter_illegal_substchar(mbfl_buffer_converter *convd, int substc
return 1; return 1;
} }
int size_t mbfl_buffer_converter_feed(mbfl_buffer_converter *convd, mbfl_string *string)
mbfl_buffer_converter_strncat(mbfl_buffer_converter *convd, const unsigned char *p, size_t n)
{
mbfl_convert_filter *filter;
int (*filter_function)(int c, mbfl_convert_filter *filter);
if (convd != NULL && p != NULL) {
filter = convd->filter1;
if (filter != NULL) {
filter_function = filter->filter_function;
while (n > 0) {
if ((*filter_function)(*p++, filter) < 0) {
break;
}
n--;
}
}
}
return n;
}
int
mbfl_buffer_converter_feed(mbfl_buffer_converter *convd, mbfl_string *string)
{
return mbfl_buffer_converter_feed2(convd, string, NULL);
}
int
mbfl_buffer_converter_feed2(mbfl_buffer_converter *convd, mbfl_string *string, size_t *loc)
{ {
size_t n; size_t n;
unsigned char *p; unsigned char *p;
mbfl_convert_filter *filter; mbfl_convert_filter *filter;
int (*filter_function)(int c, mbfl_convert_filter *filter); int (*filter_function)(int c, mbfl_convert_filter *filter);
if (convd == NULL || string == NULL) { ZEND_ASSERT(convd);
return -1; ZEND_ASSERT(string);
}
mbfl_memory_device_realloc(&convd->device, convd->device.pos + string->len, string->len/4); mbfl_memory_device_realloc(&convd->device, convd->device.pos + string->len, string->len/4);
/* feed data */ /* feed data */
n = string->len; n = string->len;
@ -259,18 +224,12 @@ mbfl_buffer_converter_feed2(mbfl_buffer_converter *convd, mbfl_string *string, s
filter_function = filter->filter_function; filter_function = filter->filter_function;
while (n > 0) { while (n > 0) {
if ((*filter_function)(*p++, filter) < 0) { if ((*filter_function)(*p++, filter) < 0) {
if (loc) { return p - string->val;
*loc = p - string->val;
}
return -1;
} }
n--; n--;
} }
} }
if (loc) { return p - string->val;
*loc = p - string->val;
}
return 0;
} }
@ -291,20 +250,6 @@ mbfl_buffer_converter_flush(mbfl_buffer_converter *convd)
return 0; return 0;
} }
mbfl_string *
mbfl_buffer_converter_getbuffer(mbfl_buffer_converter *convd, mbfl_string *result)
{
if (convd != NULL && result != NULL && convd->device.buffer != NULL) {
result->encoding = convd->to;
result->val = convd->device.buffer;
result->len = convd->device.pos;
} else {
result = NULL;
}
return result;
}
mbfl_string * mbfl_string *
mbfl_buffer_converter_result(mbfl_buffer_converter *convd, mbfl_string *result) mbfl_buffer_converter_result(mbfl_buffer_converter *convd, mbfl_string *result)
{ {
@ -755,44 +700,6 @@ retry:
return c; return c;
} }
/*
* oddlen
*/
size_t
mbfl_oddlen(mbfl_string *string)
{
size_t len, n, k;
unsigned char *p;
const mbfl_encoding *encoding = string->encoding;
len = 0;
if (encoding->flag & MBFL_ENCTYPE_SBCS) {
return 0;
} else if (encoding->flag & (MBFL_ENCTYPE_WCS2BE | MBFL_ENCTYPE_WCS2LE)) {
return len % 2;
} else if (encoding->flag & (MBFL_ENCTYPE_WCS4BE | MBFL_ENCTYPE_WCS4LE)) {
return len % 4;
} else if (encoding->mblen_table != NULL) {
const unsigned char *mbtab = encoding->mblen_table;
n = 0;
p = string->val;
k = string->len;
/* count */
if (p != NULL) {
while (n < k) {
unsigned m = mbtab[*p];
n += m;
p += m;
};
}
return n-k;
} else {
/* how can i do ? */
return 0;
}
/* NOT REACHED */
}
static const unsigned char *mbfl_find_offset_utf8( static const unsigned char *mbfl_find_offset_utf8(
const unsigned char *str, const unsigned char *end, ssize_t offset) { const unsigned char *str, const unsigned char *end, ssize_t offset) {
if (offset < 0) { if (offset < 0) {
@ -2007,12 +1914,6 @@ mime_header_encoder_delete(struct mime_header_encoder_data *pe)
} }
} }
int
mime_header_encoder_feed(int c, struct mime_header_encoder_data *pe)
{
return (*pe->conv1_filter->filter_function)(c, pe->conv1_filter);
}
mbfl_string * mbfl_string *
mbfl_mime_header_encode( mbfl_mime_header_encode(
mbfl_string *string, mbfl_string *string,
@ -2301,12 +2202,6 @@ mime_header_decoder_delete(struct mime_header_decoder_data *pd)
} }
} }
int
mime_header_decoder_feed(int c, struct mime_header_decoder_data *pd)
{
return mime_header_decoder_collector(c, pd);
}
mbfl_string * mbfl_string *
mbfl_mime_header_decode( mbfl_mime_header_decode(
mbfl_string *string, mbfl_string *string,

View file

@ -143,14 +143,10 @@ struct _mbfl_buffer_converter {
MBFLAPI extern mbfl_buffer_converter * mbfl_buffer_converter_new(const mbfl_encoding *from, const mbfl_encoding *to, size_t buf_initsz); MBFLAPI extern mbfl_buffer_converter * mbfl_buffer_converter_new(const mbfl_encoding *from, const mbfl_encoding *to, size_t buf_initsz);
MBFLAPI extern void mbfl_buffer_converter_delete(mbfl_buffer_converter *convd); MBFLAPI extern void mbfl_buffer_converter_delete(mbfl_buffer_converter *convd);
MBFLAPI extern void mbfl_buffer_converter_reset(mbfl_buffer_converter *convd);
MBFLAPI extern int mbfl_buffer_converter_illegal_mode(mbfl_buffer_converter *convd, int mode); MBFLAPI extern int mbfl_buffer_converter_illegal_mode(mbfl_buffer_converter *convd, int mode);
MBFLAPI extern int mbfl_buffer_converter_illegal_substchar(mbfl_buffer_converter *convd, int substchar); MBFLAPI extern int mbfl_buffer_converter_illegal_substchar(mbfl_buffer_converter *convd, int substchar);
MBFLAPI extern int mbfl_buffer_converter_strncat(mbfl_buffer_converter *convd, const unsigned char *p, size_t n); MBFLAPI extern size_t mbfl_buffer_converter_feed(mbfl_buffer_converter *convd, mbfl_string *string);
MBFLAPI extern int mbfl_buffer_converter_feed(mbfl_buffer_converter *convd, mbfl_string *string);
MBFLAPI extern int mbfl_buffer_converter_feed2(mbfl_buffer_converter *convd, mbfl_string *string, size_t *loc);
MBFLAPI extern int mbfl_buffer_converter_flush(mbfl_buffer_converter *convd); MBFLAPI extern int mbfl_buffer_converter_flush(mbfl_buffer_converter *convd);
MBFLAPI extern mbfl_string * mbfl_buffer_converter_getbuffer(mbfl_buffer_converter *convd, mbfl_string *result);
MBFLAPI extern mbfl_string * mbfl_buffer_converter_result(mbfl_buffer_converter *convd, mbfl_string *result); MBFLAPI extern mbfl_string * mbfl_buffer_converter_result(mbfl_buffer_converter *convd, mbfl_string *result);
MBFLAPI extern mbfl_string * mbfl_buffer_converter_feed_result(mbfl_buffer_converter *convd, mbfl_string *string, mbfl_string *result); MBFLAPI extern mbfl_string * mbfl_buffer_converter_feed_result(mbfl_buffer_converter *convd, mbfl_string *string, mbfl_string *result);
MBFLAPI extern size_t mbfl_buffer_illegalchars(mbfl_buffer_converter *convd); MBFLAPI extern size_t mbfl_buffer_illegalchars(mbfl_buffer_converter *convd);
@ -196,12 +192,6 @@ static inline int mbfl_is_error(size_t len) {
MBFLAPI extern size_t MBFLAPI extern size_t
mbfl_strlen(const mbfl_string *string); mbfl_strlen(const mbfl_string *string);
/*
* oddlen
*/
MBFLAPI extern size_t
mbfl_oddlen(mbfl_string *string);
#define MBFL_ERROR_NOT_FOUND ((size_t) -1) #define MBFL_ERROR_NOT_FOUND ((size_t) -1)
#define MBFL_ERROR_ENCODING ((size_t) -4) #define MBFL_ERROR_ENCODING ((size_t) -4)
#define MBFL_ERROR_EMPTY ((size_t) -8) #define MBFL_ERROR_EMPTY ((size_t) -8)
@ -263,9 +253,6 @@ mime_header_encoder_new(
MBFLAPI extern void MBFLAPI extern void
mime_header_encoder_delete(struct mime_header_encoder_data *pe); mime_header_encoder_delete(struct mime_header_encoder_data *pe);
MBFLAPI extern int
mime_header_encoder_feed(int c, struct mime_header_encoder_data *pe);
MBFLAPI extern mbfl_string * MBFLAPI extern mbfl_string *
mime_header_encoder_result(struct mime_header_encoder_data *pe, mbfl_string *result); mime_header_encoder_result(struct mime_header_encoder_data *pe, mbfl_string *result);
@ -288,9 +275,6 @@ mime_header_decoder_new(const mbfl_encoding *outcode);
MBFLAPI extern void MBFLAPI extern void
mime_header_decoder_delete(struct mime_header_decoder_data *pd); mime_header_decoder_delete(struct mime_header_decoder_data *pd);
MBFLAPI extern int
mime_header_decoder_feed(int c, struct mime_header_decoder_data *pd);
MBFLAPI extern mbfl_string * MBFLAPI extern mbfl_string *
mime_header_decoder_result(struct mime_header_decoder_data *pd, mbfl_string *result); mime_header_decoder_result(struct mime_header_decoder_data *pd, mbfl_string *result);

View file

@ -220,12 +220,6 @@ mbfl_convert_filter_delete(mbfl_convert_filter *filter)
} }
} }
int
mbfl_convert_filter_feed(int c, mbfl_convert_filter *filter)
{
return (*filter->filter_function)(c, filter);
}
int int
mbfl_convert_filter_feed_string(mbfl_convert_filter *filter, const unsigned char *p, size_t len) { mbfl_convert_filter_feed_string(mbfl_convert_filter *filter, const unsigned char *p, size_t len) {
while (len > 0) { while (len > 0) {

View file

@ -68,7 +68,6 @@ MBFLAPI extern mbfl_convert_filter *mbfl_convert_filter_new2(
int (*flush_function)(void *), int (*flush_function)(void *),
void *data ); void *data );
MBFLAPI extern void mbfl_convert_filter_delete(mbfl_convert_filter *filter); MBFLAPI extern void mbfl_convert_filter_delete(mbfl_convert_filter *filter);
MBFLAPI extern int mbfl_convert_filter_feed(int c, mbfl_convert_filter *filter);
MBFLAPI extern int mbfl_convert_filter_feed_string(mbfl_convert_filter *filter, const unsigned char *p, size_t len); MBFLAPI extern int mbfl_convert_filter_feed_string(mbfl_convert_filter *filter, const unsigned char *p, size_t len);
MBFLAPI extern int mbfl_convert_filter_flush(mbfl_convert_filter *filter); MBFLAPI extern int mbfl_convert_filter_flush(mbfl_convert_filter *filter);
MBFLAPI extern void mbfl_convert_filter_reset(mbfl_convert_filter *filter, const mbfl_encoding *from, const mbfl_encoding *to); MBFLAPI extern void mbfl_convert_filter_reset(mbfl_convert_filter *filter, const mbfl_encoding *from, const mbfl_encoding *to);

View file

@ -308,16 +308,3 @@ mbfl_no2preferred_mime_name(enum mbfl_no_encoding no_encoding)
return NULL; return NULL;
} }
} }
int
mbfl_is_support_encoding(const char *name)
{
const mbfl_encoding *encoding;
encoding = mbfl_name2encoding(name);
if (encoding == NULL) {
return 0;
} else {
return 1;
}
}

View file

@ -158,7 +158,6 @@ MBFLAPI extern enum mbfl_no_encoding mbfl_name2no_encoding(const char *name);
MBFLAPI extern const mbfl_encoding ** mbfl_get_supported_encodings(); MBFLAPI extern const mbfl_encoding ** mbfl_get_supported_encodings();
MBFLAPI extern const char * mbfl_no_encoding2name(enum mbfl_no_encoding no_encoding); MBFLAPI extern const char * mbfl_no_encoding2name(enum mbfl_no_encoding no_encoding);
MBFLAPI extern const char * mbfl_no2preferred_mime_name(enum mbfl_no_encoding no_encoding); MBFLAPI extern const char * mbfl_no2preferred_mime_name(enum mbfl_no_encoding no_encoding);
MBFLAPI extern int mbfl_is_support_encoding(const char *name);
#endif /* MBFL_ENCODING_H */ #endif /* MBFL_ENCODING_H */

View file

@ -41,16 +41,6 @@ int mbfl_filter_output_pipe(int c, void* data)
return (*filter->filter_function)(c, filter); return (*filter->filter_function)(c, filter);
} }
int mbfl_filter_output_pipe_flush(void *data)
{
mbfl_convert_filter *filter = (mbfl_convert_filter*)data;
if (filter->filter_flush != NULL) {
return (*filter->filter_flush)(filter);
}
return 0;
}
int mbfl_filter_output_null(int c, void* data) int mbfl_filter_output_null(int c, void* data)
{ {
return c; return c;

View file

@ -32,7 +32,6 @@
#define MBFL_FILTER_OUTPUT_H #define MBFL_FILTER_OUTPUT_H
MBFLAPI extern int mbfl_filter_output_pipe(int c, void* data); MBFLAPI extern int mbfl_filter_output_pipe(int c, void* data);
MBFLAPI extern int mbfl_filter_output_pipe_flush(void* data);
MBFLAPI extern int mbfl_filter_output_null(int c, void* data); MBFLAPI extern int mbfl_filter_output_null(int c, void* data);
#endif /* MBFL_FILTER_OUTPUT_H */ #endif /* MBFL_FILTER_OUTPUT_H */

View file

@ -150,58 +150,6 @@ mbfl_memory_device_output(int c, void *data)
return c; return c;
} }
int
mbfl_memory_device_output2(int c, void *data)
{
mbfl_memory_device *device = (mbfl_memory_device *)data;
if (2 > device->length - device->pos) {
/* reallocate buffer */
size_t newlen;
if (device->length > SIZE_MAX - device->allocsz) {
/* overflow */
return -1;
}
newlen = device->length + device->allocsz;
device->buffer = erealloc(device->buffer, newlen);
device->length = newlen;
}
device->buffer[device->pos++] = (unsigned char)((c >> 8) & 0xff);
device->buffer[device->pos++] = (unsigned char)(c & 0xff);
return c;
}
int
mbfl_memory_device_output4(int c, void* data)
{
mbfl_memory_device *device = (mbfl_memory_device *)data;
if (4 > device->length - device->pos) {
/* reallocate buffer */
size_t newlen;
if (device->length > SIZE_MAX - device->allocsz) {
/* overflow */
return -1;
}
newlen = device->length + device->allocsz;
device->buffer = erealloc(device->buffer, newlen);
device->length = newlen;
}
device->buffer[device->pos++] = (unsigned char)((c >> 24) & 0xff);
device->buffer[device->pos++] = (unsigned char)((c >> 16) & 0xff);
device->buffer[device->pos++] = (unsigned char)((c >> 8) & 0xff);
device->buffer[device->pos++] = (unsigned char)(c & 0xff);
return c;
}
int int
mbfl_memory_device_strcat(mbfl_memory_device *device, const char *psrc) mbfl_memory_device_strcat(mbfl_memory_device *device, const char *psrc)
{ {

View file

@ -60,8 +60,6 @@ MBFLAPI extern mbfl_string * mbfl_memory_device_result(
mbfl_memory_device *device, mbfl_string *result); mbfl_memory_device *device, mbfl_string *result);
MBFLAPI extern void mbfl_memory_device_unput(mbfl_memory_device *device); MBFLAPI extern void mbfl_memory_device_unput(mbfl_memory_device *device);
MBFLAPI extern int mbfl_memory_device_output(int c, void *data); MBFLAPI extern int mbfl_memory_device_output(int c, void *data);
MBFLAPI extern int mbfl_memory_device_output2(int c, void *data);
MBFLAPI extern int mbfl_memory_device_output4(int c, void *data);
MBFLAPI extern int mbfl_memory_device_strcat(mbfl_memory_device *device, const char *psrc); MBFLAPI extern int mbfl_memory_device_strcat(mbfl_memory_device *device, const char *psrc);
MBFLAPI extern int mbfl_memory_device_strncat( MBFLAPI extern int mbfl_memory_device_strncat(
mbfl_memory_device *device, const char *psrc, size_t len); mbfl_memory_device *device, const char *psrc, size_t len);

View file

@ -451,8 +451,6 @@ static size_t php_mb_zend_encoding_converter(unsigned char **to, size_t *to_leng
{ {
mbfl_string string, result; mbfl_string string, result;
mbfl_buffer_converter *convd; mbfl_buffer_converter *convd;
int status;
size_t loc;
/* new encoding */ /* new encoding */
/* initialize string */ /* initialize string */
@ -470,11 +468,7 @@ static size_t php_mb_zend_encoding_converter(unsigned char **to, size_t *to_leng
mbfl_buffer_converter_illegal_substchar(convd, MBSTRG(current_filter_illegal_substchar)); mbfl_buffer_converter_illegal_substchar(convd, MBSTRG(current_filter_illegal_substchar));
/* do it */ /* do it */
status = mbfl_buffer_converter_feed2(convd, &string, &loc); size_t loc = mbfl_buffer_converter_feed(convd, &string);
if (status) {
mbfl_buffer_converter_delete(convd);
return (size_t)-1;
}
mbfl_buffer_converter_flush(convd); mbfl_buffer_converter_flush(convd);
mbfl_string_init(&result); mbfl_string_init(&result);

View file

@ -86,12 +86,6 @@ static int _php_mb_regex_globals_ctor(zend_mb_regex_globals *pglobals)
} }
/* }}} */ /* }}} */
/* {{{ _php_mb_regex_globals_dtor */
static void _php_mb_regex_globals_dtor(zend_mb_regex_globals *pglobals)
{
}
/* }}} */
/* {{{ php_mb_regex_globals_alloc */ /* {{{ php_mb_regex_globals_alloc */
zend_mb_regex_globals *php_mb_regex_globals_alloc(void) zend_mb_regex_globals *php_mb_regex_globals_alloc(void)
{ {
@ -111,7 +105,6 @@ void php_mb_regex_globals_free(zend_mb_regex_globals *pglobals)
if (!pglobals) { if (!pglobals) {
return; return;
} }
_php_mb_regex_globals_dtor(pglobals);
pefree(pglobals, 1); pefree(pglobals, 1);
} }
/* }}} */ /* }}} */