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()
275 if (parser->parsehuge) { in xml_parse_helper()
276 parser->parser->parser->options |= XML_PARSE_HUGE; in xml_parse_helper()
277 xmlDictSetLimit(parser->parser->parser->dict, 0); in xml_parse_helper()
279 parser->parser->parser->options &= ~XML_PARSE_HUGE; in xml_parse_helper()
280 xmlDictSetLimit(parser->parser->parser->dict, XML_MAX_DICTIONARY_LIMIT); in xml_parse_helper()
284 parser->isparsing = 1; in xml_parse_helper()
285 int ret = XML_Parse(parser->parser, (const XML_Char *) data, data_len, is_final); in xml_parse_helper()
286 parser->isparsing = 0; in xml_parse_helper()
319 static void xml_parser_free_ltags(xml_parser *parser) in xml_parser_free_ltags() argument
321 if (parser->ltags) { in xml_parser_free_ltags()
323 for (inx = 0; ((inx < parser->level) && (inx < XML_MAXLEVEL)); inx++) in xml_parser_free_ltags()
324 efree(parser->ltags[ inx ]); in xml_parser_free_ltags()
325 efree(parser->ltags); in xml_parser_free_ltags()
331 xml_parser *parser = xml_parser_from_obj(object); in xml_parser_free_obj() local
333 if (parser->parser) { in xml_parser_free_obj()
334 XML_ParserFree(parser->parser); in xml_parser_free_obj()
336 xml_parser_free_ltags(parser); in xml_parser_free_obj()
337 if (ZEND_FCC_INITIALIZED(parser->startElementHandler)) { in xml_parser_free_obj()
338 zend_fcc_dtor(&parser->startElementHandler); in xml_parser_free_obj()
339 parser->startElementHandler.function_handler = NULL; in xml_parser_free_obj()
341 if (ZEND_FCC_INITIALIZED(parser->endElementHandler)) { in xml_parser_free_obj()
342 zend_fcc_dtor(&parser->endElementHandler); in xml_parser_free_obj()
343 parser->endElementHandler.function_handler = NULL; in xml_parser_free_obj()
345 if (ZEND_FCC_INITIALIZED(parser->characterDataHandler)) { in xml_parser_free_obj()
346 zend_fcc_dtor(&parser->characterDataHandler); in xml_parser_free_obj()
347 parser->characterDataHandler.function_handler = NULL; in xml_parser_free_obj()
349 if (ZEND_FCC_INITIALIZED(parser->processingInstructionHandler)) { in xml_parser_free_obj()
350 zend_fcc_dtor(&parser->processingInstructionHandler); in xml_parser_free_obj()
351 parser->processingInstructionHandler.function_handler = NULL; in xml_parser_free_obj()
353 if (ZEND_FCC_INITIALIZED(parser->defaultHandler)) { in xml_parser_free_obj()
354 zend_fcc_dtor(&parser->defaultHandler); in xml_parser_free_obj()
355 parser->defaultHandler.function_handler = NULL; in xml_parser_free_obj()
357 if (ZEND_FCC_INITIALIZED(parser->unparsedEntityDeclHandler)) { in xml_parser_free_obj()
358 zend_fcc_dtor(&parser->unparsedEntityDeclHandler); in xml_parser_free_obj()
359 parser->unparsedEntityDeclHandler.function_handler = NULL; in xml_parser_free_obj()
361 if (ZEND_FCC_INITIALIZED(parser->notationDeclHandler)) { in xml_parser_free_obj()
362 zend_fcc_dtor(&parser->notationDeclHandler); in xml_parser_free_obj()
363 parser->notationDeclHandler.function_handler = NULL; in xml_parser_free_obj()
365 if (ZEND_FCC_INITIALIZED(parser->externalEntityRefHandler)) { in xml_parser_free_obj()
366 zend_fcc_dtor(&parser->externalEntityRefHandler); in xml_parser_free_obj()
367 parser->externalEntityRefHandler.function_handler = NULL; in xml_parser_free_obj()
369 if (ZEND_FCC_INITIALIZED(parser->startNamespaceDeclHandler)) { in xml_parser_free_obj()
370 zend_fcc_dtor(&parser->startNamespaceDeclHandler); in xml_parser_free_obj()
371 parser->startNamespaceDeclHandler.function_handler = NULL; in xml_parser_free_obj()
373 if (ZEND_FCC_INITIALIZED(parser->endNamespaceDeclHandler)) { in xml_parser_free_obj()
374 zend_fcc_dtor(&parser->endNamespaceDeclHandler); in xml_parser_free_obj()
375 parser->endNamespaceDeclHandler.function_handler = NULL; in xml_parser_free_obj()
377 if (parser->baseURI) { in xml_parser_free_obj()
378 efree(parser->baseURI); in xml_parser_free_obj()
380 if (parser->object) { in xml_parser_free_obj()
381 OBJ_RELEASE(parser->object); in xml_parser_free_obj()
384 zend_object_std_dtor(&parser->std); in xml_parser_free_obj()
389 xml_parser *parser = xml_parser_from_obj(object); in xml_parser_get_gc() local
392 if (parser->object) { in xml_parser_get_gc()
393 zend_get_gc_buffer_add_obj(gc_buffer, parser->object); in xml_parser_get_gc()
395 if (ZEND_FCC_INITIALIZED(parser->startElementHandler)) { in xml_parser_get_gc()
396 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->startElementHandler); in xml_parser_get_gc()
398 if (ZEND_FCC_INITIALIZED(parser->endElementHandler)) { in xml_parser_get_gc()
399 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->endElementHandler); in xml_parser_get_gc()
401 if (ZEND_FCC_INITIALIZED(parser->characterDataHandler)) { in xml_parser_get_gc()
402 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->characterDataHandler); in xml_parser_get_gc()
404 if (ZEND_FCC_INITIALIZED(parser->processingInstructionHandler)) { in xml_parser_get_gc()
405 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->processingInstructionHandler); in xml_parser_get_gc()
407 if (ZEND_FCC_INITIALIZED(parser->defaultHandler)) { in xml_parser_get_gc()
408 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->defaultHandler); in xml_parser_get_gc()
410 if (ZEND_FCC_INITIALIZED(parser->unparsedEntityDeclHandler)) { in xml_parser_get_gc()
411 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->unparsedEntityDeclHandler); in xml_parser_get_gc()
413 if (ZEND_FCC_INITIALIZED(parser->notationDeclHandler)) { in xml_parser_get_gc()
414 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->notationDeclHandler); in xml_parser_get_gc()
416 if (ZEND_FCC_INITIALIZED(parser->externalEntityRefHandler)) { in xml_parser_get_gc()
417 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->externalEntityRefHandler); in xml_parser_get_gc()
419 if (ZEND_FCC_INITIALIZED(parser->startNamespaceDeclHandler)) { in xml_parser_get_gc()
420 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->startNamespaceDeclHandler); in xml_parser_get_gc()
422 if (ZEND_FCC_INITIALIZED(parser->endNamespaceDeclHandler)) { in xml_parser_get_gc()
423 zend_get_gc_buffer_add_fcc(gc_buffer, &parser->endNamespaceDeclHandler); in xml_parser_get_gc()
549 static void _xml_add_to_info(xml_parser *parser, const char *name) in _xml_add_to_info() argument
553 if (Z_ISUNDEF(parser->info)) { in _xml_add_to_info()
558 if ((element = zend_hash_str_find(Z_ARRVAL(parser->info), name, name_len)) == NULL) { in _xml_add_to_info()
561 element = zend_hash_str_update(Z_ARRVAL(parser->info), name, name_len, &values); in _xml_add_to_info()
564 add_next_index_long(element, parser->curtag); in _xml_add_to_info()
566 parser->curtag++; in _xml_add_to_info()
571 static zend_string *_xml_decode_tag(xml_parser *parser, const XML_Char *tag) in _xml_decode_tag() argument
575 str = xml_utf8_decode(tag, _xml_xmlcharlen(tag), parser->target_encoding); in _xml_decode_tag()
577 if (parser->case_folding) { in _xml_decode_tag()
588 xml_parser *parser = (xml_parser *)userData; in _xml_startElementHandler() local
592 if (!parser) { in _xml_startElementHandler()
596 parser->level++; in _xml_startElementHandler()
598 tag_name = _xml_decode_tag(parser, name); in _xml_startElementHandler()
600 if (ZEND_FCC_INITIALIZED(parser->startElementHandler)) { in _xml_startElementHandler()
602 ZVAL_COPY(&args[0], &parser->index); in _xml_startElementHandler()
609 att = _xml_decode_tag(parser, attributes[0]); in _xml_startElementHandler()
610 val = xml_utf8_decode(attributes[1], strlen((char *)attributes[1]), parser->target_encoding); in _xml_startElementHandler()
620 …zend_call_known_fcc(&parser->startElementHandler, /* retval */ NULL, /* param_count */ 3, args, /*… in _xml_startElementHandler()
626 if (!Z_ISUNDEF(parser->data)) { in _xml_startElementHandler()
627 if (parser->level <= XML_MAXLEVEL) { in _xml_startElementHandler()
634 _xml_add_to_info(parser, ZSTR_VAL(tag_name) + parser->toffset); in _xml_startElementHandler()
638 add_assoc_long(&tag, "level", parser->level); in _xml_startElementHandler()
640 parser->ltags[parser->level-1] = estrdup(ZSTR_VAL(tag_name)); in _xml_startElementHandler()
641 parser->lastwasopen = 1; in _xml_startElementHandler()
648 att = _xml_decode_tag(parser, attributes[0]); in _xml_startElementHandler()
649 val = xml_utf8_decode(attributes[1], strlen((char *)attributes[1]), parser->target_encoding); in _xml_startElementHandler()
666 parser->ctag = zend_hash_next_index_insert(Z_ARRVAL(parser->data), &tag); in _xml_startElementHandler()
667 } else if (parser->level == (XML_MAXLEVEL + 1)) { in _xml_startElementHandler()
679 xml_parser *parser = (xml_parser *)userData; in _xml_endElementHandler() local
681 if (!parser) { in _xml_endElementHandler()
685 zend_string *tag_name = _xml_decode_tag(parser, name); in _xml_endElementHandler()
687 if (ZEND_FCC_INITIALIZED(parser->endElementHandler)) { in _xml_endElementHandler()
689 ZVAL_COPY(&args[0], &parser->index); in _xml_endElementHandler()
692 …zend_call_known_fcc(&parser->endElementHandler, /* retval */ NULL, /* param_count */ 2, args, /* n… in _xml_endElementHandler()
697 if (!Z_ISUNDEF(parser->data)) { in _xml_endElementHandler()
700 if (parser->lastwasopen) { in _xml_endElementHandler()
701 add_assoc_string(parser->ctag, "type", "complete"); in _xml_endElementHandler()
705 _xml_add_to_info(parser, ZSTR_VAL(tag_name) + parser->toffset); in _xml_endElementHandler()
709 add_assoc_long(&tag, "level", parser->level); in _xml_endElementHandler()
711 zend_hash_next_index_insert(Z_ARRVAL(parser->data), &tag); in _xml_endElementHandler()
714 parser->lastwasopen = 0; in _xml_endElementHandler()
719 if ((parser->ltags) && (parser->level <= XML_MAXLEVEL)) { in _xml_endElementHandler()
720 efree(parser->ltags[parser->level-1]); in _xml_endElementHandler()
723 parser->level--; in _xml_endElementHandler()
730 xml_parser *parser = (xml_parser *)userData; in _xml_characterDataHandler() local
732 if (!parser) { in _xml_characterDataHandler()
736 if (ZEND_FCC_INITIALIZED(parser->characterDataHandler)) { in _xml_characterDataHandler()
738 ZVAL_COPY(&args[0], &parser->index); in _xml_characterDataHandler()
739 _xml_xmlchar_zval(s, len, parser->target_encoding, &args[1]); in _xml_characterDataHandler()
741 …zend_call_known_fcc(&parser->characterDataHandler, /* retval */ NULL, /* param_count */ 2, args, /… in _xml_characterDataHandler()
746 if (Z_ISUNDEF(parser->data)) { in _xml_characterDataHandler()
752 decoded_value = xml_utf8_decode(s, len, parser->target_encoding); in _xml_characterDataHandler()
753 if (parser->skipwhite) { in _xml_characterDataHandler()
769 if (parser->lastwasopen) { in _xml_characterDataHandler()
772 if ((myval = zend_hash_find(Z_ARRVAL_P(parser->ctag), ZSTR_KNOWN(ZEND_STR_VALUE)))) { in _xml_characterDataHandler()
779 if (doprint || (! parser->skipwhite)) { in _xml_characterDataHandler()
780 add_assoc_str(parser->ctag, "value", decoded_value); in _xml_characterDataHandler()
788 ZEND_HASH_REVERSE_FOREACH_VAL(Z_ARRVAL(parser->data), curtag) { in _xml_characterDataHandler()
803 if (parser->level <= XML_MAXLEVEL && parser->level > 0 && (doprint || (! parser->skipwhite))) { in _xml_characterDataHandler()
805 _xml_add_to_info(parser,SKIP_TAGSTART(parser->ltags[parser->level-1])); in _xml_characterDataHandler()
806 add_assoc_string(&tag, "tag", SKIP_TAGSTART(parser->ltags[parser->level-1])); in _xml_characterDataHandler()
809 add_assoc_long(&tag, "level", parser->level); in _xml_characterDataHandler()
810 zend_hash_next_index_insert(Z_ARRVAL(parser->data), &tag); in _xml_characterDataHandler()
811 } else if (parser->level == (XML_MAXLEVEL + 1)) { in _xml_characterDataHandler()
823 xml_parser *parser = (xml_parser *)userData; in _xml_processingInstructionHandler() local
825 if (!parser || !ZEND_FCC_INITIALIZED(parser->processingInstructionHandler)) { in _xml_processingInstructionHandler()
831 ZVAL_COPY(&args[0], &parser->index); in _xml_processingInstructionHandler()
832 _xml_xmlchar_zval(target, 0, parser->target_encoding, &args[1]); in _xml_processingInstructionHandler()
833 _xml_xmlchar_zval(data, 0, parser->target_encoding, &args[2]); in _xml_processingInstructionHandler()
835 …zend_call_known_fcc(&parser->processingInstructionHandler, /* retval */ NULL, /* param_count */ 3,… in _xml_processingInstructionHandler()
845 xml_parser *parser = (xml_parser *)userData; in _xml_defaultHandler() local
847 if (!parser || !ZEND_FCC_INITIALIZED(parser->defaultHandler)) { in _xml_defaultHandler()
853 ZVAL_COPY(&args[0], &parser->index); in _xml_defaultHandler()
854 _xml_xmlchar_zval(s, len, parser->target_encoding, &args[1]); in _xml_defaultHandler()
856 …zend_call_known_fcc(&parser->defaultHandler, /* retval */ NULL, /* param_count */ 2, args, /* name… in _xml_defaultHandler()
867 xml_parser *parser = (xml_parser *)userData; in _xml_unparsedEntityDeclHandler() local
869 if (!parser || !ZEND_FCC_INITIALIZED(parser->unparsedEntityDeclHandler)) { in _xml_unparsedEntityDeclHandler()
875 ZVAL_COPY(&args[0], &parser->index); in _xml_unparsedEntityDeclHandler()
876 _xml_xmlchar_zval(entityName, 0, parser->target_encoding, &args[1]); in _xml_unparsedEntityDeclHandler()
877 _xml_xmlchar_zval(base, 0, parser->target_encoding, &args[2]); in _xml_unparsedEntityDeclHandler()
878 _xml_xmlchar_zval(systemId, 0, parser->target_encoding, &args[3]); in _xml_unparsedEntityDeclHandler()
879 _xml_xmlchar_zval(publicId, 0, parser->target_encoding, &args[4]); in _xml_unparsedEntityDeclHandler()
880 _xml_xmlchar_zval(notationName, 0, parser->target_encoding, &args[5]); in _xml_unparsedEntityDeclHandler()
882 …zend_call_known_fcc(&parser->unparsedEntityDeclHandler, /* retval */ NULL, /* param_count */ 6, ar… in _xml_unparsedEntityDeclHandler()
896 xml_parser *parser = (xml_parser *)userData; in _xml_notationDeclHandler() local
898 if (!parser || !ZEND_FCC_INITIALIZED(parser->notationDeclHandler)) { in _xml_notationDeclHandler()
904 ZVAL_COPY(&args[0], &parser->index); in _xml_notationDeclHandler()
905 _xml_xmlchar_zval(notationName, 0, parser->target_encoding, &args[1]); in _xml_notationDeclHandler()
906 _xml_xmlchar_zval(base, 0, parser->target_encoding, &args[2]); in _xml_notationDeclHandler()
907 _xml_xmlchar_zval(systemId, 0, parser->target_encoding, &args[3]); in _xml_notationDeclHandler()
908 _xml_xmlchar_zval(publicId, 0, parser->target_encoding, &args[4]); in _xml_notationDeclHandler()
910 …zend_call_known_fcc(&parser->notationDeclHandler, /* retval */ NULL, /* param_count */ 5, args, /*… in _xml_notationDeclHandler()
923 xml_parser *parser = XML_GetUserData(parserPtr); in _xml_externalEntityRefHandler() local
925 if (!parser || !ZEND_FCC_INITIALIZED(parser->externalEntityRefHandler)) { in _xml_externalEntityRefHandler()
933 ZVAL_COPY(&args[0], &parser->index); in _xml_externalEntityRefHandler()
934 _xml_xmlchar_zval(openEntityNames, 0, parser->target_encoding, &args[1]); in _xml_externalEntityRefHandler()
935 _xml_xmlchar_zval(base, 0, parser->target_encoding, &args[2]); in _xml_externalEntityRefHandler()
936 _xml_xmlchar_zval(systemId, 0, parser->target_encoding, &args[3]); in _xml_externalEntityRefHandler()
937 _xml_xmlchar_zval(publicId, 0, parser->target_encoding, &args[4]); in _xml_externalEntityRefHandler()
939 …zend_call_known_fcc(&parser->externalEntityRefHandler, /* retval */ &retval, /* param_count */ 5, … in _xml_externalEntityRefHandler()
960 xml_parser *parser = (xml_parser *)userData; in _xml_startNamespaceDeclHandler() local
962 if (!parser || !ZEND_FCC_INITIALIZED(parser->startNamespaceDeclHandler)) { in _xml_startNamespaceDeclHandler()
968 ZVAL_COPY(&args[0], &parser->index); in _xml_startNamespaceDeclHandler()
969 _xml_xmlchar_zval(prefix, 0, parser->target_encoding, &args[1]); in _xml_startNamespaceDeclHandler()
970 _xml_xmlchar_zval(uri, 0, parser->target_encoding, &args[2]); in _xml_startNamespaceDeclHandler()
972 …zend_call_known_fcc(&parser->startNamespaceDeclHandler, /* retval */ NULL, /* param_count */ 3, ar… in _xml_startNamespaceDeclHandler()
982 xml_parser *parser = (xml_parser *)userData; in _xml_endNamespaceDeclHandler() local
984 if (!parser || !ZEND_FCC_INITIALIZED(parser->endNamespaceDeclHandler)) { in _xml_endNamespaceDeclHandler()
990 ZVAL_COPY(&args[0], &parser->index); in _xml_endNamespaceDeclHandler()
991 _xml_xmlchar_zval(prefix, 0, parser->target_encoding, &args[1]); in _xml_endNamespaceDeclHandler()
993 …zend_call_known_fcc(&parser->endNamespaceDeclHandler, /* retval */ NULL, /* param_count */ 2, args… in _xml_endNamespaceDeclHandler()
1003 xml_parser *parser; in php_xml_parser_create_impl() local
1043 parser = Z_XMLPARSER_P(return_value); in php_xml_parser_create_impl()
1044 parser->parser = XML_ParserCreate_MM((auto_detect ? NULL : encoding), in php_xml_parser_create_impl()
1047 parser->target_encoding = encoding; in php_xml_parser_create_impl()
1048 parser->case_folding = 1; in php_xml_parser_create_impl()
1049 parser->isparsing = 0; in php_xml_parser_create_impl()
1050 parser->parsehuge = false; /* It's the default for BC & DoS protection */ in php_xml_parser_create_impl()
1052 XML_SetUserData(parser->parser, parser); in php_xml_parser_create_impl()
1053 ZVAL_COPY_VALUE(&parser->index, return_value); in php_xml_parser_create_impl()
1132 xml_parser *parser; in PHP_FUNCTION() local
1140 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1143 if (parser->object) { in PHP_FUNCTION()
1144 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, startElementHandler, "xml_set_element_handler()"); in PHP_FUNCTION()
1145 PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, endElementHandler, "xml_set_element_handler()"); in PHP_FUNCTION()
1146 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, characterDataHandler, "xml_set_character_data_han… in PHP_FUNCTION()
1147 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, processingInstructionHandler, "xml_set_processing… in PHP_FUNCTION()
1148 PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, defaultHandler, "xml_set_default_handler()"); in PHP_FUNCTION()
1149 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, unparsedEntityDeclHandler, "xml_set_unparsed_enti… in PHP_FUNCTION()
1150 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, notationDeclHandler, "xml_set_notation_decl_handl… in PHP_FUNCTION()
1151 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, externalEntityRefHandler, "xml_set_external_entit… in PHP_FUNCTION()
1152 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, startNamespaceDeclHandler, "xml_set_start_namespa… in PHP_FUNCTION()
1153 …PHP_XML_CHECK_NEW_THIS_METHODS(parser, new_this, endNamespaceDeclHandler, "xml_set_end_namespace_d… in PHP_FUNCTION()
1155 OBJ_RELEASE(parser->object); in PHP_FUNCTION()
1158 parser->object = new_this; in PHP_FUNCTION()
1159 GC_ADDREF(parser->object); in PHP_FUNCTION()
1168 xml_parser *parser; in PHP_FUNCTION() local
1178 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1185 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1187 bool status = php_xml_check_string_method_arg(3, parser->object, end_method_name, &end_fcc); in PHP_FUNCTION()
1194 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1196 bool status = php_xml_check_string_method_arg(2, parser->object, start_method_name, &start_fcc); in PHP_FUNCTION()
1206 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1208 bool status = php_xml_check_string_method_arg(2, parser->object, start_method_name, &start_fcc); in PHP_FUNCTION()
1212 status = php_xml_check_string_method_arg(3, parser->object, end_method_name, &end_fcc); in PHP_FUNCTION()
1239 xml_set_handler(&parser->startElementHandler, &start_fcc); in PHP_FUNCTION()
1240 xml_set_handler(&parser->endElementHandler, &end_fcc); in PHP_FUNCTION()
1241 XML_SetElementHandler(parser->parser, _xml_startElementHandler, _xml_endElementHandler); in PHP_FUNCTION()
1249 xml_parser **const parser, in php_xml_set_handler_parse_callable() argument
1258 *parser = Z_XMLPARSER_P(pind); in php_xml_set_handler_parse_callable()
1265 *parser = Z_XMLPARSER_P(pind); in php_xml_set_handler_parse_callable()
1267 …bool status = php_xml_check_string_method_arg(2, (*parser)->object, method_name, parser_handler_fc… in php_xml_set_handler_parse_callable()
1284 xml_parser *parser = NULL; \
1286 php_xml_set_handler_parse_callable(INTERNAL_FUNCTION_PARAM_PASSTHRU, &parser, &handler_fcc); \
1288 ZEND_ASSERT(parser); \
1289 xml_set_handler(&parser->parser_handler_name, &handler_fcc); \
1290 parse_function(parser->parser, c_function); \
1306 xml_parser *parser; in PHP_FUNCTION() local
1316 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1317 if (parser->isparsing) { in PHP_FUNCTION()
1321 RETURN_LONG(xml_parse_helper(parser, data, data_len, isFinal)); in PHP_FUNCTION()
1329 xml_parser *parser; in PHP_FUNCTION() local
1338 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1340 if (parser->isparsing) { in PHP_FUNCTION()
1357 ZVAL_COPY_VALUE(&parser->data, xdata); in PHP_FUNCTION()
1360 ZVAL_COPY_VALUE(&parser->info, info); in PHP_FUNCTION()
1363 parser->level = 0; in PHP_FUNCTION()
1364 xml_parser_free_ltags(parser); in PHP_FUNCTION()
1365 parser->ltags = safe_emalloc(XML_MAXLEVEL, sizeof(char *), 0); in PHP_FUNCTION()
1366 memset(parser->ltags, 0, XML_MAXLEVEL * sizeof(char *)); in PHP_FUNCTION()
1368 XML_SetElementHandler(parser->parser, _xml_startElementHandler, _xml_endElementHandler); in PHP_FUNCTION()
1369 XML_SetCharacterDataHandler(parser->parser, _xml_characterDataHandler); in PHP_FUNCTION()
1371 RETURN_LONG(xml_parse_helper(parser, data, data_len, true)); in PHP_FUNCTION()
1378 xml_parser *parser; in PHP_FUNCTION() local
1385 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1386 RETURN_LONG((zend_long)XML_GetErrorCode(parser->parser)); in PHP_FUNCTION()
1410 xml_parser *parser; in PHP_FUNCTION() local
1417 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1418 RETVAL_LONG(XML_GetCurrentLineNumber(parser->parser)); in PHP_FUNCTION()
1425 xml_parser *parser; in PHP_FUNCTION() local
1432 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1433 RETVAL_LONG(XML_GetCurrentColumnNumber(parser->parser)); in PHP_FUNCTION()
1440 xml_parser *parser; in PHP_FUNCTION() local
1447 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1448 RETVAL_LONG(XML_GetCurrentByteIndex(parser->parser)); in PHP_FUNCTION()
1456 xml_parser *parser; in PHP_FUNCTION() local
1462 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1463 if (parser->isparsing == 1) { in PHP_FUNCTION()
1475 xml_parser *parser; in PHP_FUNCTION() local
1490 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1494 parser->case_folding = zend_is_true(value); in PHP_FUNCTION()
1498 parser->skipwhite = zend_is_true(value); in PHP_FUNCTION()
1503 if (UNEXPECTED(parser->isparsing)) { in PHP_FUNCTION()
1507 parser->parsehuge = zend_is_true(value); in PHP_FUNCTION()
1513 parser->toffset = zval_get_long(value); in PHP_FUNCTION()
1514 if (parser->toffset < 0) { in PHP_FUNCTION()
1518 parser->toffset = 0; in PHP_FUNCTION()
1535 parser->target_encoding = enc->name; in PHP_FUNCTION()
1551 xml_parser *parser; in PHP_FUNCTION() local
1559 parser = Z_XMLPARSER_P(pind); in PHP_FUNCTION()
1562 RETURN_BOOL(parser->case_folding); in PHP_FUNCTION()
1565 RETURN_LONG(parser->toffset); in PHP_FUNCTION()
1568 RETURN_BOOL(parser->skipwhite); in PHP_FUNCTION()
1571 RETURN_BOOL(parser->parsehuge); in PHP_FUNCTION()
1574 RETURN_STRING((char *)parser->target_encoding); in PHP_FUNCTION()