Lines Matching refs:inst

207 static php_conv_err_t php_conv_base64_encode_convert(php_conv_base64_encode *inst, const char **in_…
208 static void php_conv_base64_encode_dtor(php_conv_base64_encode *inst);
229 static php_conv_err_t php_conv_base64_encode_ctor(php_conv_base64_encode *inst, unsigned int line_l… in php_conv_base64_encode_ctor() argument
231 inst->_super.convert_op = (php_conv_convert_func) php_conv_base64_encode_convert; in php_conv_base64_encode_ctor()
232 inst->_super.dtor = (php_conv_dtor_func) php_conv_base64_encode_dtor; in php_conv_base64_encode_ctor()
233 inst->erem_len = 0; in php_conv_base64_encode_ctor()
234 inst->line_ccnt = line_len; in php_conv_base64_encode_ctor()
235 inst->line_len = line_len; in php_conv_base64_encode_ctor()
237 inst->lbchars = (lbchars_dup ? pestrdup(lbchars, persistent) : lbchars); in php_conv_base64_encode_ctor()
238 inst->lbchars_len = lbchars_len; in php_conv_base64_encode_ctor()
240 inst->lbchars = NULL; in php_conv_base64_encode_ctor()
242 inst->lbchars_dup = lbchars_dup; in php_conv_base64_encode_ctor()
243 inst->persistent = persistent; in php_conv_base64_encode_ctor()
247 static void php_conv_base64_encode_dtor(php_conv_base64_encode *inst) in php_conv_base64_encode_dtor() argument
249 assert(inst != NULL); in php_conv_base64_encode_dtor()
250 if (inst->lbchars_dup && inst->lbchars != NULL) { in php_conv_base64_encode_dtor()
251 pefree((void *)inst->lbchars, inst->persistent); in php_conv_base64_encode_dtor()
255 static php_conv_err_t php_conv_base64_encode_flush(php_conv_base64_encode *inst, const char **in_pp… in php_conv_base64_encode_flush() argument
264 line_ccnt = inst->line_ccnt; in php_conv_base64_encode_flush()
266 switch (inst->erem_len) { in php_conv_base64_encode_flush()
272 if (line_ccnt < 4 && inst->lbchars != NULL) { in php_conv_base64_encode_flush()
273 if (ocnt < inst->lbchars_len) { in php_conv_base64_encode_flush()
276 memcpy(pd, inst->lbchars, inst->lbchars_len); in php_conv_base64_encode_flush()
277 pd += inst->lbchars_len; in php_conv_base64_encode_flush()
278 ocnt -= inst->lbchars_len; in php_conv_base64_encode_flush()
279 line_ccnt = inst->line_len; in php_conv_base64_encode_flush()
285 *(pd++) = b64_tbl_enc[(inst->erem[0] >> 2)]; in php_conv_base64_encode_flush()
286 *(pd++) = b64_tbl_enc[(unsigned char)(inst->erem[0] << 4)]; in php_conv_base64_encode_flush()
289 inst->erem_len = 0; in php_conv_base64_encode_flush()
295 if (line_ccnt < 4 && inst->lbchars != NULL) { in php_conv_base64_encode_flush()
296 if (ocnt < inst->lbchars_len) { in php_conv_base64_encode_flush()
299 pd = zend_mempcpy(pd, inst->lbchars, inst->lbchars_len); in php_conv_base64_encode_flush()
300 ocnt -= inst->lbchars_len; in php_conv_base64_encode_flush()
301 line_ccnt = inst->line_len; in php_conv_base64_encode_flush()
307 *(pd++) = b64_tbl_enc[(inst->erem[0] >> 2)]; in php_conv_base64_encode_flush()
308 *(pd++) = b64_tbl_enc[(unsigned char)(inst->erem[0] << 4) | (inst->erem[1] >> 4)]; in php_conv_base64_encode_flush()
309 *(pd++) = b64_tbl_enc[(unsigned char)(inst->erem[1] << 2)]; in php_conv_base64_encode_flush()
311 inst->erem_len = 0; in php_conv_base64_encode_flush()
324 inst->line_ccnt = line_ccnt; in php_conv_base64_encode_flush()
328 static php_conv_err_t php_conv_base64_encode_convert(php_conv_base64_encode *inst, const char **in_… in php_conv_base64_encode_convert() argument
336 return php_conv_base64_encode_flush(inst, in_pp, in_left_p, out_pp, out_left_p); in php_conv_base64_encode_convert()
343 line_ccnt = inst->line_ccnt; in php_conv_base64_encode_convert()
346 switch (inst->erem_len) { in php_conv_base64_encode_convert()
349 if (line_ccnt < 4 && inst->lbchars != NULL) { in php_conv_base64_encode_convert()
350 if (ocnt < inst->lbchars_len) { in php_conv_base64_encode_convert()
353 pd = zend_mempcpy(pd, inst->lbchars, inst->lbchars_len); in php_conv_base64_encode_convert()
354 ocnt -= inst->lbchars_len; in php_conv_base64_encode_convert()
355 line_ccnt = inst->line_len; in php_conv_base64_encode_convert()
361 *(pd++) = b64_tbl_enc[(inst->erem[0] >> 2)]; in php_conv_base64_encode_convert()
362 *(pd++) = b64_tbl_enc[(unsigned char)(inst->erem[0] << 4) | (ps[0] >> 4)]; in php_conv_base64_encode_convert()
368 inst->erem_len = 0; in php_conv_base64_encode_convert()
375 if (inst->line_ccnt < 4 && inst->lbchars != NULL) { in php_conv_base64_encode_convert()
376 if (ocnt < inst->lbchars_len) { in php_conv_base64_encode_convert()
379 pd = zend_mempcpy(pd, inst->lbchars, inst->lbchars_len); in php_conv_base64_encode_convert()
380 ocnt -= inst->lbchars_len; in php_conv_base64_encode_convert()
381 line_ccnt = inst->line_len; in php_conv_base64_encode_convert()
387 *(pd++) = b64_tbl_enc[(inst->erem[0] >> 2)]; in php_conv_base64_encode_convert()
388 *(pd++) = b64_tbl_enc[(unsigned char)(inst->erem[0] << 4) | (inst->erem[1] >> 4)]; in php_conv_base64_encode_convert()
389 *(pd++) = b64_tbl_enc[(unsigned char)(inst->erem[1] << 2) | (ps[0] >> 6)]; in php_conv_base64_encode_convert()
394 inst->erem_len = 0; in php_conv_base64_encode_convert()
401 if (line_ccnt < 4 && inst->lbchars != NULL) { in php_conv_base64_encode_convert()
402 if (ocnt < inst->lbchars_len) { in php_conv_base64_encode_convert()
406 pd = zend_mempcpy(pd, inst->lbchars, inst->lbchars_len); in php_conv_base64_encode_convert()
407 ocnt -= inst->lbchars_len; in php_conv_base64_encode_convert()
408 line_ccnt = inst->line_len; in php_conv_base64_encode_convert()
425 inst->erem[inst->erem_len++] = *(ps++); in php_conv_base64_encode_convert()
433 inst->line_ccnt = line_ccnt; in php_conv_base64_encode_convert()
450 static php_conv_err_t php_conv_base64_decode_convert(php_conv_base64_decode *inst, const char **in_…
451 static void php_conv_base64_decode_dtor(php_conv_base64_decode *inst);
472 static void php_conv_base64_decode_ctor(php_conv_base64_decode *inst) in php_conv_base64_decode_ctor() argument
474 inst->_super.convert_op = (php_conv_convert_func) php_conv_base64_decode_convert; in php_conv_base64_decode_ctor()
475 inst->_super.dtor = (php_conv_dtor_func) php_conv_base64_decode_dtor; in php_conv_base64_decode_ctor()
477 inst->urem = 0; in php_conv_base64_decode_ctor()
478 inst->urem_nbits = 0; in php_conv_base64_decode_ctor()
479 inst->ustat = 0; in php_conv_base64_decode_ctor()
480 inst->eos = 0; in php_conv_base64_decode_ctor()
483 static void php_conv_base64_decode_dtor(php_conv_base64_decode *inst) in php_conv_base64_decode_dtor() argument
489 static php_conv_err_t php_conv_base64_decode_convert(php_conv_base64_decode *inst, const char **in_… in php_conv_base64_decode_convert() argument
502 if (inst->eos || inst->urem_nbits == 0) { in php_conv_base64_decode_convert()
515 urem = inst->urem; in php_conv_base64_decode_convert()
516 urem_nbits = inst->urem_nbits; in php_conv_base64_decode_convert()
517 ustat = inst->ustat; in php_conv_base64_decode_convert()
564 inst->eos = 1; in php_conv_base64_decode_convert()
587 inst->urem = urem; in php_conv_base64_decode_convert()
588 inst->urem_nbits = urem_nbits; in php_conv_base64_decode_convert()
589 inst->ustat = ustat; in php_conv_base64_decode_convert()
619 static void php_conv_qprint_encode_dtor(php_conv_qprint_encode *inst);
620 static php_conv_err_t php_conv_qprint_encode_convert(php_conv_qprint_encode *inst, const char **in_…
622 static void php_conv_qprint_encode_dtor(php_conv_qprint_encode *inst) in php_conv_qprint_encode_dtor() argument
624 assert(inst != NULL); in php_conv_qprint_encode_dtor()
625 if (inst->lbchars_dup && inst->lbchars != NULL) { in php_conv_qprint_encode_dtor()
626 pefree((void *)inst->lbchars, inst->persistent); in php_conv_qprint_encode_dtor()
642 static php_conv_err_t php_conv_qprint_encode_convert(php_conv_qprint_encode *inst, const char **in_… in php_conv_qprint_encode_convert() argument
655 line_ccnt = inst->line_ccnt; in php_conv_qprint_encode_convert()
656 opts = inst->opts; in php_conv_qprint_encode_convert()
657 lb_ptr = inst->lb_ptr; in php_conv_qprint_encode_convert()
658 lb_cnt = inst->lb_cnt; in php_conv_qprint_encode_convert()
671 if (!(opts & PHP_CONV_QPRINT_OPT_BINARY) && inst->lbchars != NULL && inst->lbchars_len > 0) { in php_conv_qprint_encode_convert()
675 if (icnt > 0 && *ps == inst->lbchars[lb_cnt]) { in php_conv_qprint_encode_convert()
678 if (lb_cnt >= inst->lbchars_len) { in php_conv_qprint_encode_convert()
688 *(pd++) = inst->lbchars[i]; in php_conv_qprint_encode_convert()
691 line_ccnt = inst->line_len; in php_conv_qprint_encode_convert()
703 c = NEXT_CHAR(ps, icnt, lb_ptr, lb_cnt, inst->lbchars); in php_conv_qprint_encode_convert()
708 if (line_ccnt < 2 && inst->lbchars != NULL) { in php_conv_qprint_encode_convert()
709 if (ocnt < inst->lbchars_len + 1) { in php_conv_qprint_encode_convert()
718 pd = zend_mempcpy(pd, inst->lbchars, inst->lbchars_len); in php_conv_qprint_encode_convert()
719 ocnt -= inst->lbchars_len; in php_conv_qprint_encode_convert()
720 line_ccnt = inst->line_len; in php_conv_qprint_encode_convert()
728 if (inst->lbchars != NULL) { in php_conv_qprint_encode_convert()
738 if (*ps2 == inst->lbchars[lb_cnt2]) { in php_conv_qprint_encode_convert()
740 if (lb_cnt2 >= inst->lbchars_len) { in php_conv_qprint_encode_convert()
764 …} else if ((!(opts & PHP_CONV_QPRINT_OPT_FORCE_ENCODE_FIRST) || line_ccnt < inst->line_len) && ((c… in php_conv_qprint_encode_convert()
765 if (line_ccnt < 2 && inst->lbchars != NULL) { in php_conv_qprint_encode_convert()
766 if (ocnt < inst->lbchars_len + 1) { in php_conv_qprint_encode_convert()
774 pd = zend_mempcpy(pd, inst->lbchars, inst->lbchars_len); in php_conv_qprint_encode_convert()
775 ocnt -= inst->lbchars_len; in php_conv_qprint_encode_convert()
776 line_ccnt = inst->line_len; in php_conv_qprint_encode_convert()
787 if (line_ccnt < 4 && inst->lbchars != NULL) { in php_conv_qprint_encode_convert()
788 if (ocnt < inst->lbchars_len + 1) { in php_conv_qprint_encode_convert()
796 pd = zend_mempcpy(pd, inst->lbchars, inst->lbchars_len); in php_conv_qprint_encode_convert()
797 ocnt -= inst->lbchars_len; in php_conv_qprint_encode_convert()
798 line_ccnt = inst->line_len; in php_conv_qprint_encode_convert()
820 inst->line_ccnt = line_ccnt; in php_conv_qprint_encode_convert()
821 inst->lb_ptr = lb_ptr; in php_conv_qprint_encode_convert()
822 inst->lb_cnt = lb_cnt; in php_conv_qprint_encode_convert()
828 static php_conv_err_t php_conv_qprint_encode_ctor(php_conv_qprint_encode *inst, unsigned int line_l… in php_conv_qprint_encode_ctor() argument
833 inst->_super.convert_op = (php_conv_convert_func) php_conv_qprint_encode_convert; in php_conv_qprint_encode_ctor()
834 inst->_super.dtor = (php_conv_dtor_func) php_conv_qprint_encode_dtor; in php_conv_qprint_encode_ctor()
835 inst->line_ccnt = line_len; in php_conv_qprint_encode_ctor()
836 inst->line_len = line_len; in php_conv_qprint_encode_ctor()
838 inst->lbchars = (lbchars_dup ? pestrdup(lbchars, persistent) : lbchars); in php_conv_qprint_encode_ctor()
839 inst->lbchars_len = lbchars_len; in php_conv_qprint_encode_ctor()
841 inst->lbchars = NULL; in php_conv_qprint_encode_ctor()
843 inst->lbchars_dup = lbchars_dup; in php_conv_qprint_encode_ctor()
844 inst->persistent = persistent; in php_conv_qprint_encode_ctor()
845 inst->opts = opts; in php_conv_qprint_encode_ctor()
846 inst->lb_cnt = inst->lb_ptr = 0; in php_conv_qprint_encode_ctor()
865 static void php_conv_qprint_decode_dtor(php_conv_qprint_decode *inst) in php_conv_qprint_decode_dtor() argument
867 assert(inst != NULL); in php_conv_qprint_decode_dtor()
868 if (inst->lbchars_dup && inst->lbchars != NULL) { in php_conv_qprint_decode_dtor()
869 pefree((void *)inst->lbchars, inst->persistent); in php_conv_qprint_decode_dtor()
873 static php_conv_err_t php_conv_qprint_decode_convert(php_conv_qprint_decode *inst, const char **in_… in php_conv_qprint_decode_convert() argument
882 lb_ptr = inst->lb_ptr; in php_conv_qprint_decode_convert()
883 lb_cnt = inst->lb_cnt; in php_conv_qprint_decode_convert()
886 if (inst->scan_stat != 0) { in php_conv_qprint_decode_convert()
896 scan_stat = inst->scan_stat; in php_conv_qprint_decode_convert()
897 next_char = inst->next_char; in php_conv_qprint_decode_convert()
926 } else if (!inst->lbchars && lb_cnt == 0 && *ps == '\r') { in php_conv_qprint_decode_convert()
932 } else if (!inst->lbchars && lb_cnt == 0 && *ps == '\n') { in php_conv_qprint_decode_convert()
938 } else if (lb_cnt < inst->lbchars_len && in php_conv_qprint_decode_convert()
939 *ps == (unsigned char)inst->lbchars[lb_cnt]) { in php_conv_qprint_decode_convert()
978 if (lb_cnt < inst->lbchars_len && in php_conv_qprint_decode_convert()
979 *ps == (unsigned char)inst->lbchars[lb_cnt]) { in php_conv_qprint_decode_convert()
990 if (!inst->lbchars && lb_cnt == 1 && *ps == '\n') { in php_conv_qprint_decode_convert()
995 } else if (!inst->lbchars && lb_cnt > 0) { in php_conv_qprint_decode_convert()
999 } else if (lb_cnt >= inst->lbchars_len) { in php_conv_qprint_decode_convert()
1004 if (*ps == (unsigned char)inst->lbchars[lb_cnt]) { in php_conv_qprint_decode_convert()
1021 *(pd++) = inst->lbchars[lb_ptr++]; in php_conv_qprint_decode_convert()
1035 inst->scan_stat = scan_stat; in php_conv_qprint_decode_convert()
1036 inst->lb_ptr = lb_ptr; in php_conv_qprint_decode_convert()
1037 inst->lb_cnt = lb_cnt; in php_conv_qprint_decode_convert()
1038 inst->next_char = next_char; in php_conv_qprint_decode_convert()
1042 static php_conv_err_t php_conv_qprint_decode_ctor(php_conv_qprint_decode *inst, const char *lbchars… in php_conv_qprint_decode_ctor() argument
1044 inst->_super.convert_op = (php_conv_convert_func) php_conv_qprint_decode_convert; in php_conv_qprint_decode_ctor()
1045 inst->_super.dtor = (php_conv_dtor_func) php_conv_qprint_decode_dtor; in php_conv_qprint_decode_ctor()
1046 inst->scan_stat = 0; in php_conv_qprint_decode_ctor()
1047 inst->next_char = 0; in php_conv_qprint_decode_ctor()
1048 inst->lb_ptr = inst->lb_cnt = 0; in php_conv_qprint_decode_ctor()
1050 inst->lbchars = (lbchars_dup ? pestrdup(lbchars, persistent) : lbchars); in php_conv_qprint_decode_ctor()
1051 inst->lbchars_len = lbchars_len; in php_conv_qprint_decode_ctor()
1053 inst->lbchars = NULL; in php_conv_qprint_decode_ctor()
1054 inst->lbchars_len = 0; in php_conv_qprint_decode_ctor()
1056 inst->lbchars_dup = lbchars_dup; in php_conv_qprint_decode_ctor()
1057 inst->persistent = persistent; in php_conv_qprint_decode_ctor()
1282 static zend_result php_convert_filter_ctor(php_convert_filter *inst, in php_convert_filter_ctor() argument
1286 inst->persistent = persistent; in php_convert_filter_ctor()
1287 inst->filtername = pestrdup(filtername, persistent); in php_convert_filter_ctor()
1288 inst->stub_len = 0; in php_convert_filter_ctor()
1290 if ((inst->cd = php_conv_open(conv_mode, conv_opts, persistent)) == NULL) { in php_convert_filter_ctor()
1291 if (inst->filtername != NULL) { in php_convert_filter_ctor()
1292 pefree(inst->filtername, persistent); in php_convert_filter_ctor()
1300 static void php_convert_filter_dtor(php_convert_filter *inst) in php_convert_filter_dtor() argument
1302 if (inst->cd != NULL) { in php_convert_filter_dtor()
1303 php_conv_dtor(inst->cd); in php_convert_filter_dtor()
1304 pefree(inst->cd, inst->persistent); in php_convert_filter_dtor()
1307 if (inst->filtername != NULL) { in php_convert_filter_dtor()
1308 pefree(inst->filtername, inst->persistent); in php_convert_filter_dtor()
1314 php_convert_filter *inst, in strfilter_convert_append_bucket() argument
1342 if (inst->stub_len > 0) { in strfilter_convert_append_bucket()
1343 pt = inst->stub; in strfilter_convert_append_bucket()
1344 tcnt = inst->stub_len; in strfilter_convert_append_bucket()
1347 err = php_conv_convert(inst->cd, &pt, &tcnt, &pd, &ocnt); in strfilter_convert_append_bucket()
1351 … php_error_docref(NULL, E_WARNING, "Stream filter (%s): invalid byte sequence", inst->filtername); in strfilter_convert_append_bucket()
1357 if (inst->stub_len >= sizeof(inst->stub)) { in strfilter_convert_append_bucket()
1358 … php_error_docref(NULL, E_WARNING, "Stream filter (%s): insufficient buffer", inst->filtername); in strfilter_convert_append_bucket()
1361 inst->stub[inst->stub_len++] = *(ps++); in strfilter_convert_append_bucket()
1363 pt = inst->stub; in strfilter_convert_append_bucket()
1364 tcnt = inst->stub_len; in strfilter_convert_append_bucket()
1373 …php_error_docref(NULL, E_WARNING, "Stream filter (%s): unexpected end of stream", inst->filtername… in strfilter_convert_append_bucket()
1403 php_error_docref(NULL, E_WARNING, "Stream filter (%s): unknown error", inst->filtername); in strfilter_convert_append_bucket()
1410 memmove(inst->stub, pt, tcnt); in strfilter_convert_append_bucket()
1411 inst->stub_len = tcnt; in strfilter_convert_append_bucket()
1415 err = ((ps == NULL ? php_conv_convert(inst->cd, NULL, NULL, &pd, &ocnt): in strfilter_convert_append_bucket()
1416 php_conv_convert(inst->cd, &ps, &icnt, &pd, &ocnt))); in strfilter_convert_append_bucket()
1419 … php_error_docref(NULL, E_WARNING, "Stream filter (%s): invalid byte sequence", inst->filtername); in strfilter_convert_append_bucket()
1424 if (icnt > sizeof(inst->stub)) { in strfilter_convert_append_bucket()
1425 … php_error_docref(NULL, E_WARNING, "Stream filter (%s): insufficient buffer", inst->filtername); in strfilter_convert_append_bucket()
1428 memcpy(inst->stub, ps, icnt); in strfilter_convert_append_bucket()
1429 inst->stub_len = icnt; in strfilter_convert_append_bucket()
1433 …php_error_docref(NULL, E_WARNING, "Stream filter (%s): unexpected octet values", inst->filtername); in strfilter_convert_append_bucket()
1465 php_error_docref(NULL, E_WARNING, "Stream filter (%s): unknown error", inst->filtername); in strfilter_convert_append_bucket()
1505 php_convert_filter *inst = (php_convert_filter *)Z_PTR(thisfilter->abstract); in strfilter_convert_filter() local
1512 if (strfilter_convert_append_bucket(inst, stream, thisfilter, in strfilter_convert_filter()
1522 if (strfilter_convert_append_bucket(inst, stream, thisfilter, in strfilter_convert_filter()
1558 php_convert_filter *inst; in strfilter_convert_create() local
1574 inst = pemalloc(sizeof(php_convert_filter), persistent); in strfilter_convert_create()
1586 if (php_convert_filter_ctor(inst, conv_mode, in strfilter_convert_create()
1592 retval = php_stream_filter_alloc(&strfilter_convert_ops, inst, persistent); in strfilter_convert_create()
1595 pefree(inst, persistent); in strfilter_convert_create()