Lines Matching refs:parser

64 	XML_Parser parser;  local
119 #define SKIP_TAGSTART(str) ((str) + (parser->toffset > strlen(str) ? strlen(str) : parser->toffset))
141 static void xml_add_to_info(xml_parser *parser, const char *name);
142 inline static zend_string *xml_decode_tag(xml_parser *parser, const XML_Char *tag);
268 static int xml_parse_helper(xml_parser *parser, const char *data, size_t data_len, bool is_final) in xml_parse_helper() argument
270 ZEND_ASSERT(!parser->isparsing); in xml_parse_helper()
277 if (parser->parsehuge) { in xml_parse_helper()
278 parser->parser->parser->options |= XML_PARSE_HUGE; in xml_parse_helper()
279 xmlDictSetLimit(parser->parser->parser->dict, 0); in xml_parse_helper()
281 parser->parser->parser->options &= ~XML_PARSE_HUGE; in xml_parse_helper()
282 xmlDictSetLimit(parser->parser->parser->dict, XML_MAX_DICTIONARY_LIMIT); in xml_parse_helper()
287 parser->isparsing = 1; in xml_parse_helper()
288 int ret = XML_Parse(parser->parser, (const XML_Char *) data, data_len, is_final); in xml_parse_helper()
289 parser->isparsing = 0; in xml_parse_helper()
322 static void xml_parser_free_ltags(xml_parser *parser) in xml_parser_free_ltags() argument
324 if (parser->ltags) { in xml_parser_free_ltags()
326 for (inx = 0; ((inx < parser->level) && (inx < XML_MAXLEVEL)); inx++) in xml_parser_free_ltags()
327 efree(parser->ltags[ inx ]); in xml_parser_free_ltags()
328 efree(parser->ltags); in xml_parser_free_ltags()
334 xml_parser *parser = xml_parser_from_obj(object); in xml_parser_free_obj() local
336 if (parser->parser) { in xml_parser_free_obj()
337 XML_ParserFree(parser->parser); in xml_parser_free_obj()
339 xml_parser_free_ltags(parser); in xml_parser_free_obj()
340 if (ZEND_FCC_INITIALIZED(parser->startElementHandler)) { in xml_parser_free_obj()
341 zend_fcc_dtor(&parser->startElementHandler); in xml_parser_free_obj()
342 parser->startElementHandler.function_handler = NULL; in xml_parser_free_obj()
344 if (ZEND_FCC_INITIALIZED(parser->endElementHandler)) { in xml_parser_free_obj()
345 zend_fcc_dtor(&parser->endElementHandler); in xml_parser_free_obj()
346 parser->endElementHandler.function_handler = NULL; in xml_parser_free_obj()
348 if (ZEND_FCC_INITIALIZED(parser->characterDataHandler)) { in xml_parser_free_obj()
349 zend_fcc_dtor(&parser->characterDataHandler); in xml_parser_free_obj()
350 parser->characterDataHandler.function_handler = NULL; in xml_parser_free_obj()
352 if (ZEND_FCC_INITIALIZED(parser->processingInstructionHandler)) { in xml_parser_free_obj()
353 zend_fcc_dtor(&parser->processingInstructionHandler); in xml_parser_free_obj()
354 parser->processingInstructionHandler.function_handler = NULL; in xml_parser_free_obj()
356 if (ZEND_FCC_INITIALIZED(parser->defaultHandler)) { in xml_parser_free_obj()
357 zend_fcc_dtor(&parser->defaultHandler); in xml_parser_free_obj()
358 parser->defaultHandler.function_handler = NULL; in xml_parser_free_obj()
360 if (ZEND_FCC_INITIALIZED(parser->unparsedEntityDeclHandler)) { in xml_parser_free_obj()
361 zend_fcc_dtor(&parser->unparsedEntityDeclHandler); in xml_parser_free_obj()
362 parser->unparsedEntityDeclHandler.function_handler = NULL; in xml_parser_free_obj()
364 if (ZEND_FCC_INITIALIZED(parser->notationDeclHandler)) { in xml_parser_free_obj()
365 zend_fcc_dtor(&parser->notationDeclHandler); in xml_parser_free_obj()
366 parser->notationDeclHandler.function_handler = NULL; in xml_parser_free_obj()
368 if (ZEND_FCC_INITIALIZED(parser->externalEntityRefHandler)) { in xml_parser_free_obj()
369 zend_fcc_dtor(&parser->externalEntityRefHandler); in xml_parser_free_obj()
370 parser->externalEntityRefHandler.function_handler = NULL; in xml_parser_free_obj()
372 if (ZEND_FCC_INITIALIZED(parser->startNamespaceDeclHandler)) { in xml_parser_free_obj()
373 zend_fcc_dtor(&parser->startNamespaceDeclHandler); in xml_parser_free_obj()
374 parser->startNamespaceDeclHandler.function_handler = NULL; in xml_parser_free_obj()
376 if (ZEND_FCC_INITIALIZED(parser->endNamespaceDeclHandler)) { in xml_parser_free_obj()
377 zend_fcc_dtor(&parser->endNamespaceDeclHandler); in xml_parser_free_obj()
378 parser->endNamespaceDeclHandler.function_handler = NULL; in xml_parser_free_obj()
380 if (parser->baseURI) { in xml_parser_free_obj()
381 efree(parser->baseURI); in xml_parser_free_obj()
383 if (parser->object) { in xml_parser_free_obj()
384 OBJ_RELEASE(parser->object); in xml_parser_free_obj()
387 zend_object_std_dtor(&parser->std); in xml_parser_free_obj()
392 xml_parser *parser = xml_parser_from_obj(object); in xml_parser_get_gc() local
395 if (parser->object) { in xml_parser_get_gc()
396 zend_get_gc_buffer_add_obj(gc_buffer, parser->object); in xml_parser_get_gc()
398 if (ZEND_FCC_INITIALIZED(parser->startElementHandler)) { in xml_parser_get_gc()
399 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->startElementHandler); in xml_parser_get_gc()
401 if (ZEND_FCC_INITIALIZED(parser->endElementHandler)) { in xml_parser_get_gc()
402 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->endElementHandler); in xml_parser_get_gc()
404 if (ZEND_FCC_INITIALIZED(parser->characterDataHandler)) { in xml_parser_get_gc()
405 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->characterDataHandler); in xml_parser_get_gc()
407 if (ZEND_FCC_INITIALIZED(parser->processingInstructionHandler)) { in xml_parser_get_gc()
408 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->processingInstructionHandler); in xml_parser_get_gc()
410 if (ZEND_FCC_INITIALIZED(parser->defaultHandler)) { in xml_parser_get_gc()
411 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->defaultHandler); in xml_parser_get_gc()
413 if (ZEND_FCC_INITIALIZED(parser->unparsedEntityDeclHandler)) { in xml_parser_get_gc()
414 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->unparsedEntityDeclHandler); in xml_parser_get_gc()
416 if (ZEND_FCC_INITIALIZED(parser->notationDeclHandler)) { in xml_parser_get_gc()
417 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->notationDeclHandler); in xml_parser_get_gc()
419 if (ZEND_FCC_INITIALIZED(parser->externalEntityRefHandler)) { in xml_parser_get_gc()
420 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->externalEntityRefHandler); in xml_parser_get_gc()
422 if (ZEND_FCC_INITIALIZED(parser->startNamespaceDeclHandler)) { in xml_parser_get_gc()
423 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->startNamespaceDeclHandler); in xml_parser_get_gc()
425 if (ZEND_FCC_INITIALIZED(parser->endNamespaceDeclHandler)) { in xml_parser_get_gc()
426 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->endNamespaceDeclHandler); in xml_parser_get_gc()
552 static void xml_add_to_info(xml_parser *parser, const char *name) in xml_add_to_info() argument
556 if (Z_ISUNDEF(parser->info)) { in xml_add_to_info()
561 if ((element = zend_hash_str_find(Z_ARRVAL(parser->info), name, name_len)) == NULL) { in xml_add_to_info()
564 element = zend_hash_str_update(Z_ARRVAL(parser->info), name, name_len, &values); in xml_add_to_info()
567 add_next_index_long(element, parser->curtag); in xml_add_to_info()
569 parser->curtag++; in xml_add_to_info()
574 static zend_string *xml_decode_tag(xml_parser *parser, const XML_Char *tag) in xml_decode_tag() argument
578 str = xml_utf8_decode(tag, xml_xmlcharlen(tag), parser->target_encoding); in xml_decode_tag()
580 if (parser->case_folding) { in xml_decode_tag()
591 xml_parser *parser = (xml_parser *)userData; in xml_startElementHandler() local
595 if (!parser) { in xml_startElementHandler()
599 parser->level++; in xml_startElementHandler()
601 tag_name = xml_decode_tag(parser, name); in xml_startElementHandler()
603 if (ZEND_FCC_INITIALIZED(parser->startElementHandler)) { in xml_startElementHandler()
605 ZVAL_COPY(&args[0], &parser->index); in xml_startElementHandler()
612 att = xml_decode_tag(parser, attributes[0]); in xml_startElementHandler()
613 val = xml_utf8_decode(attributes[1], strlen((char *)attributes[1]), parser->target_encoding); in xml_startElementHandler()
623 …zend_call_known_fcc(&parser->startElementHandler, /* retval */ NULL, /* param_count */ 3, args, /*… in xml_startElementHandler()
629 if (!Z_ISUNDEF(parser->data) && !EG(exception)) { in xml_startElementHandler()
630 if (parser->level <= XML_MAXLEVEL) { in xml_startElementHandler()
637 xml_add_to_info(parser, ZSTR_VAL(tag_name) + parser->toffset); in xml_startElementHandler()
641 add_assoc_long(&tag, "level", parser->level); in xml_startElementHandler()
643 parser->ltags[parser->level-1] = estrdup(ZSTR_VAL(tag_name)); in xml_startElementHandler()
644 parser->lastwasopen = 1; in xml_startElementHandler()
651 att = xml_decode_tag(parser, attributes[0]); in xml_startElementHandler()
652 val = xml_utf8_decode(attributes[1], strlen((char *)attributes[1]), parser->target_encoding); in xml_startElementHandler()
669 parser->ctag = zend_hash_next_index_insert(Z_ARRVAL(parser->data), &tag); in xml_startElementHandler()
670 } else if (parser->level == (XML_MAXLEVEL + 1)) { in xml_startElementHandler()
682 xml_parser *parser = (xml_parser *)userData; in xml_endElementHandler() local
684 if (!parser) { in xml_endElementHandler()
688 zend_string *tag_name = xml_decode_tag(parser, name); in xml_endElementHandler()
690 if (ZEND_FCC_INITIALIZED(parser->endElementHandler)) { in xml_endElementHandler()
692 ZVAL_COPY(&args[0], &parser->index); in xml_endElementHandler()
695 …zend_call_known_fcc(&parser->endElementHandler, /* retval */ NULL, /* param_count */ 2, args, /* n… in xml_endElementHandler()
700 if (!Z_ISUNDEF(parser->data) && !EG(exception)) { in xml_endElementHandler()
703 if (parser->lastwasopen) { in xml_endElementHandler()
704 add_assoc_string(parser->ctag, "type", "complete"); in xml_endElementHandler()
708 xml_add_to_info(parser, ZSTR_VAL(tag_name) + parser->toffset); in xml_endElementHandler()
712 add_assoc_long(&tag, "level", parser->level); in xml_endElementHandler()
714 zend_hash_next_index_insert(Z_ARRVAL(parser->data), &tag); in xml_endElementHandler()
717 parser->lastwasopen = 0; in xml_endElementHandler()
722 if ((parser->ltags) && (parser->level <= XML_MAXLEVEL)) { in xml_endElementHandler()
723 efree(parser->ltags[parser->level-1]); in xml_endElementHandler()
726 parser->level--; in xml_endElementHandler()
733 xml_parser *parser = (xml_parser *)userData; in xml_characterDataHandler() local
735 if (!parser) { in xml_characterDataHandler()
739 if (ZEND_FCC_INITIALIZED(parser->characterDataHandler)) { in xml_characterDataHandler()
741 ZVAL_COPY(&args[0], &parser->index); in xml_characterDataHandler()
742 xml_xmlchar_zval(s, len, parser->target_encoding, &args[1]); in xml_characterDataHandler()
744 …zend_call_known_fcc(&parser->characterDataHandler, /* retval */ NULL, /* param_count */ 2, args, /… in xml_characterDataHandler()
749 if (Z_ISUNDEF(parser->data) || EG(exception)) { in xml_characterDataHandler()
755 decoded_value = xml_utf8_decode(s, len, parser->target_encoding); in xml_characterDataHandler()
756 if (parser->skipwhite) { in xml_characterDataHandler()
772 if (parser->lastwasopen) { in xml_characterDataHandler()
775 if ((myval = zend_hash_find(Z_ARRVAL_P(parser->ctag), ZSTR_KNOWN(ZEND_STR_VALUE)))) { in xml_characterDataHandler()
782 if (doprint || (! parser->skipwhite)) { in xml_characterDataHandler()
783 add_assoc_str(parser->ctag, "value", decoded_value); in xml_characterDataHandler()
791 ZEND_HASH_REVERSE_FOREACH_VAL(Z_ARRVAL(parser->data), curtag) { in xml_characterDataHandler()
806 if (parser->level <= XML_MAXLEVEL && parser->level > 0 && (doprint || (! parser->skipwhite))) { in xml_characterDataHandler()
808 xml_add_to_info(parser,SKIP_TAGSTART(parser->ltags[parser->level-1])); in xml_characterDataHandler()
809 add_assoc_string(&tag, "tag", SKIP_TAGSTART(parser->ltags[parser->level-1])); in xml_characterDataHandler()
812 add_assoc_long(&tag, "level", parser->level); in xml_characterDataHandler()
813 zend_hash_next_index_insert(Z_ARRVAL(parser->data), &tag); in xml_characterDataHandler()
814 } else if (parser->level == (XML_MAXLEVEL + 1)) { in xml_characterDataHandler()
826 xml_parser *parser = (xml_parser *)userData; in xml_processingInstructionHandler() local
828 if (!parser || !ZEND_FCC_INITIALIZED(parser->processingInstructionHandler)) { in xml_processingInstructionHandler()
834 ZVAL_COPY(&args[0], &parser->index); in xml_processingInstructionHandler()
835 xml_xmlchar_zval(target, 0, parser->target_encoding, &args[1]); in xml_processingInstructionHandler()
836 xml_xmlchar_zval(data, 0, parser->target_encoding, &args[2]); in xml_processingInstructionHandler()
838 …zend_call_known_fcc(&parser->processingInstructionHandler, /* retval */ NULL, /* param_count */ 3,… in xml_processingInstructionHandler()
848 xml_parser *parser = (xml_parser *)userData; in xml_defaultHandler() local
850 if (!parser || !ZEND_FCC_INITIALIZED(parser->defaultHandler)) { in xml_defaultHandler()
856 ZVAL_COPY(&args[0], &parser->index); in xml_defaultHandler()
857 xml_xmlchar_zval(s, len, parser->target_encoding, &args[1]); in xml_defaultHandler()
859 …zend_call_known_fcc(&parser->defaultHandler, /* retval */ NULL, /* param_count */ 2, args, /* name… in xml_defaultHandler()
870 xml_parser *parser = (xml_parser *)userData; in xml_unparsedEntityDeclHandler() local
872 if (!parser || !ZEND_FCC_INITIALIZED(parser->unparsedEntityDeclHandler)) { in xml_unparsedEntityDeclHandler()
878 ZVAL_COPY(&args[0], &parser->index); in xml_unparsedEntityDeclHandler()
879 xml_xmlchar_zval(entityName, 0, parser->target_encoding, &args[1]); in xml_unparsedEntityDeclHandler()
880 xml_xmlchar_zval(base, 0, parser->target_encoding, &args[2]); in xml_unparsedEntityDeclHandler()
881 xml_xmlchar_zval(systemId, 0, parser->target_encoding, &args[3]); in xml_unparsedEntityDeclHandler()
882 xml_xmlchar_zval(publicId, 0, parser->target_encoding, &args[4]); in xml_unparsedEntityDeclHandler()
883 xml_xmlchar_zval(notationName, 0, parser->target_encoding, &args[5]); in xml_unparsedEntityDeclHandler()
885 …zend_call_known_fcc(&parser->unparsedEntityDeclHandler, /* retval */ NULL, /* param_count */ 6, ar… in xml_unparsedEntityDeclHandler()
899 xml_parser *parser = (xml_parser *)userData; in xml_notationDeclHandler() local
901 if (!parser || !ZEND_FCC_INITIALIZED(parser->notationDeclHandler)) { in xml_notationDeclHandler()
907 ZVAL_COPY(&args[0], &parser->index); in xml_notationDeclHandler()
908 xml_xmlchar_zval(notationName, 0, parser->target_encoding, &args[1]); in xml_notationDeclHandler()
909 xml_xmlchar_zval(base, 0, parser->target_encoding, &args[2]); in xml_notationDeclHandler()
910 xml_xmlchar_zval(systemId, 0, parser->target_encoding, &args[3]); in xml_notationDeclHandler()
911 xml_xmlchar_zval(publicId, 0, parser->target_encoding, &args[4]); in xml_notationDeclHandler()
913 …zend_call_known_fcc(&parser->notationDeclHandler, /* retval */ NULL, /* param_count */ 5, args, /*… in xml_notationDeclHandler()
926 xml_parser *parser = XML_GetUserData(userData); in xml_externalEntityRefHandler() local
928 if (!parser || !ZEND_FCC_INITIALIZED(parser->externalEntityRefHandler)) { in xml_externalEntityRefHandler()
936 ZVAL_COPY(&args[0], &parser->index); in xml_externalEntityRefHandler()
937 xml_xmlchar_zval(openEntityNames, 0, parser->target_encoding, &args[1]); in xml_externalEntityRefHandler()
938 xml_xmlchar_zval(base, 0, parser->target_encoding, &args[2]); in xml_externalEntityRefHandler()
939 xml_xmlchar_zval(systemId, 0, parser->target_encoding, &args[3]); in xml_externalEntityRefHandler()
940 xml_xmlchar_zval(publicId, 0, parser->target_encoding, &args[4]); in xml_externalEntityRefHandler()
942 …zend_call_known_fcc(&parser->externalEntityRefHandler, /* retval */ &retval, /* param_count */ 5, … in xml_externalEntityRefHandler()
963 xml_parser *parser = (xml_parser *)userData; in xml_startNamespaceDeclHandler() local
965 if (!parser || !ZEND_FCC_INITIALIZED(parser->startNamespaceDeclHandler)) { in xml_startNamespaceDeclHandler()
971 ZVAL_COPY(&args[0], &parser->index); in xml_startNamespaceDeclHandler()
972 xml_xmlchar_zval(prefix, 0, parser->target_encoding, &args[1]); in xml_startNamespaceDeclHandler()
973 xml_xmlchar_zval(uri, 0, parser->target_encoding, &args[2]); in xml_startNamespaceDeclHandler()
975 …zend_call_known_fcc(&parser->startNamespaceDeclHandler, /* retval */ NULL, /* param_count */ 3, ar… in xml_startNamespaceDeclHandler()
985 xml_parser *parser = (xml_parser *)userData; in xml_endNamespaceDeclHandler() local
987 if (!parser || !ZEND_FCC_INITIALIZED(parser->endNamespaceDeclHandler)) { in xml_endNamespaceDeclHandler()
993 ZVAL_COPY(&args[0], &parser->index); in xml_endNamespaceDeclHandler()
994 xml_xmlchar_zval(prefix, 0, parser->target_encoding, &args[1]); in xml_endNamespaceDeclHandler()
996 …zend_call_known_fcc(&parser->endNamespaceDeclHandler, /* retval */ NULL, /* param_count */ 2, args… in xml_endNamespaceDeclHandler()
1006 xml_parser *parser; in php_xml_parser_create_impl() local
1046 parser = Z_XMLPARSER_P(return_value); in php_xml_parser_create_impl()
1047 parser->parser = XML_ParserCreate_MM((auto_detect ? NULL : encoding), in php_xml_parser_create_impl()
1050 parser->target_encoding = encoding; in php_xml_parser_create_impl()
1051 parser->case_folding = 1; in php_xml_parser_create_impl()
1052 parser->isparsing = 0; in php_xml_parser_create_impl()
1053 parser->parsehuge = false; /* It's the default for BC & DoS protection */ in php_xml_parser_create_impl()
1055 XML_SetUserData(parser->parser, parser); in php_xml_parser_create_impl()
1056 ZVAL_COPY_VALUE(&parser->index, return_value); in php_xml_parser_create_impl()
1133 xml_parser *parser; in PHP_FUNCTION() local
1141 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1144 if (parser->object) { in PHP_FUNCTION()
1145 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, startElementHandler, "xml_set_element_handler()"); in PHP_FUNCTION()
1146 PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, endElementHandler, "xml_set_element_handler()"); in PHP_FUNCTION()
1147 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, characterDataHandler, "xml_set_character_data_han… in PHP_FUNCTION()
1148 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, processingInstructionHandler, "xml_set_processing… in PHP_FUNCTION()
1149 PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, defaultHandler, "xml_set_default_handler()"); in PHP_FUNCTION()
1150 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, unparsedEntityDeclHandler, "xml_set_unparsed_enti… in PHP_FUNCTION()
1151 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, notationDeclHandler, "xml_set_notation_decl_handl… in PHP_FUNCTION()
1152 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, externalEntityRefHandler, "xml_set_external_entit… in PHP_FUNCTION()
1153 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, startNamespaceDeclHandler, "xml_set_start_namespa… in PHP_FUNCTION()
1154 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, endNamespaceDeclHandler, "xml_set_end_namespace_d… in PHP_FUNCTION()
1156 OBJ_RELEASE(parser->object); in PHP_FUNCTION()
1159 parser->object = new_this; in PHP_FUNCTION()
1160 GC_ADDREF(parser->object); in PHP_FUNCTION()
1169 xml_parser *parser; in PHP_FUNCTION() local
1179 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1186 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1195 bool status = php_xml_check_string_method_arg(3, parser->object, end_method_name, &end_fcc); in PHP_FUNCTION()
1202 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1211 bool status = php_xml_check_string_method_arg(2, parser->object, start_method_name, &start_fcc); in PHP_FUNCTION()
1226 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1228 bool status = php_xml_check_string_method_arg(2, parser->object, start_method_name, &start_fcc); in PHP_FUNCTION()
1232 status = php_xml_check_string_method_arg(3, parser->object, end_method_name, &end_fcc); in PHP_FUNCTION()
1259 xml_set_handler(&parser->startElementHandler, &start_fcc); in PHP_FUNCTION()
1260 xml_set_handler(&parser->endElementHandler, &end_fcc); in PHP_FUNCTION()
1261 XML_SetElementHandler(parser->parser, xml_startElementHandler, xml_endElementHandler); in PHP_FUNCTION()
1269 xml_parser **const parser, in php_xml_set_handler_parse_callable() argument
1278 *parser = Z_XMLPARSER_P(pind); in php_xml_set_handler_parse_callable()
1285 *parser = Z_XMLPARSER_P(pind); in php_xml_set_handler_parse_callable()
1290 …bool status = php_xml_check_string_method_arg(2, (*parser)->object, method_name, parser_handler_fc… in php_xml_set_handler_parse_callable()
1307 xml_parser *parser = NULL; \
1309 php_xml_set_handler_parse_callable(INTERNAL_FUNCTION_PARAM_PASSTHRU, &parser, &handler_fcc); \
1311 ZEND_ASSERT(parser); \
1312 xml_set_handler(&parser->parser_handler_name, &handler_fcc); \
1313 parse_function(parser->parser, c_function); \
1329 xml_parser *parser; in PHP_FUNCTION() local
1339 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1340 if (parser->isparsing) { in PHP_FUNCTION()
1344 RETURN_LONG(xml_parse_helper(parser, data, data_len, isFinal)); in PHP_FUNCTION()
1352 xml_parser *parser; in PHP_FUNCTION() local
1361 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1363 if (parser->isparsing) { in PHP_FUNCTION()
1380 ZVAL_COPY_VALUE(&parser->data, xdata); in PHP_FUNCTION()
1383 ZVAL_COPY_VALUE(&parser->info, info); in PHP_FUNCTION()
1386 parser->level = 0; in PHP_FUNCTION()
1387 xml_parser_free_ltags(parser); in PHP_FUNCTION()
1388 parser->ltags = safe_emalloc(XML_MAXLEVEL, sizeof(char *), 0); in PHP_FUNCTION()
1389 memset(parser->ltags, 0, XML_MAXLEVEL * sizeof(char *)); in PHP_FUNCTION()
1391 XML_SetElementHandler(parser->parser, xml_startElementHandler, xml_endElementHandler); in PHP_FUNCTION()
1392 XML_SetCharacterDataHandler(parser->parser, xml_characterDataHandler); in PHP_FUNCTION()
1394 RETURN_LONG(xml_parse_helper(parser, data, data_len, true)); in PHP_FUNCTION()
1401 xml_parser *parser; in PHP_FUNCTION() local
1408 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1409 RETURN_LONG((zend_long)XML_GetErrorCode(parser->parser)); in PHP_FUNCTION()
1433 xml_parser *parser; in PHP_FUNCTION() local
1440 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1441 RETVAL_LONG(XML_GetCurrentLineNumber(parser->parser)); in PHP_FUNCTION()
1448 xml_parser *parser; in PHP_FUNCTION() local
1455 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1456 RETVAL_LONG(XML_GetCurrentColumnNumber(parser->parser)); in PHP_FUNCTION()
1463 xml_parser *parser; in PHP_FUNCTION() local
1470 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1471 RETVAL_LONG(XML_GetCurrentByteIndex(parser->parser)); in PHP_FUNCTION()
1479 xml_parser *parser; in PHP_FUNCTION() local
1485 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1486 if (parser->isparsing == 1) { in PHP_FUNCTION()
1498 xml_parser *parser; in PHP_FUNCTION() local
1513 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1517 parser->case_folding = zend_is_true(value); in PHP_FUNCTION()
1521 parser->skipwhite = zend_is_true(value); in PHP_FUNCTION()
1526 if (UNEXPECTED(parser->isparsing)) { in PHP_FUNCTION()
1530 parser->parsehuge = zend_is_true(value); in PHP_FUNCTION()
1543 parser->toffset = (int) value_long; in PHP_FUNCTION()
1559 parser->target_encoding = enc->name; in PHP_FUNCTION()
1575 xml_parser *parser; in PHP_FUNCTION() local
1583 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1586 RETURN_BOOL(parser->case_folding); in PHP_FUNCTION()
1589 RETURN_LONG(parser->toffset); in PHP_FUNCTION()
1592 RETURN_BOOL(parser->skipwhite); in PHP_FUNCTION()
1595 RETURN_BOOL(parser->parsehuge); in PHP_FUNCTION()
1598 RETURN_STRING((char *)parser->target_encoding); in PHP_FUNCTION()