11#ifndef _GVM_XMLUTILS_H
12#define _GVM_XMLUTILS_H
17#include <gnutls/gnutls.h>
GnuTLS based functions for server communication - header file.
XML context.
Definition xmlutils.h:27
GSList * first
The very first entity.
Definition xmlutils.h:28
GSList * current
The element currently being parsed.
Definition xmlutils.h:29
gboolean done
Flag which is true when the first element is closed.
Definition xmlutils.h:30
XML element.
Definition xmlutils.h:52
entities_t entities
Children.
Definition xmlutils.h:56
char * text
Text.
Definition xmlutils.h:54
GHashTable * attributes
Attributes.
Definition xmlutils.h:55
char * name
Name.
Definition xmlutils.h:53
Connection.
Definition serverutils.h:30
Opaque data structure for XML file iterator.
Definition xmlutils.c:2327
Data for xml search functions.
Definition xmlutils.h:64
int done
Definition xmlutils.h:66
gchar * find_element
Definition xmlutils.h:67
GHashTable * find_attributes
Definition xmlutils.h:68
int found
Definition xmlutils.h:65
element_t xml_file_iterator_next(xml_file_iterator_t, gchar **)
Get the next subelement from a XML file iterator.
Definition xmlutils.c:2990
int try_read_entity_and_string(gnutls_session_t *, int, entity_t *, GString **)
Try read an XML entity tree from the manager.
Definition xmlutils.c:501
int xml_file_iterator_rewind(xml_file_iterator_t)
Rewinds an XML file iterator by rewinding the file and creating a new XML parser context.
Definition xmlutils.c:2947
struct entity_s * entity_t
Definition xmlutils.h:58
int try_read_entity(gnutls_session_t *, int, entity_t *)
Try read an XML entity tree from the manager.
Definition xmlutils.c:1436
const gchar * element_name(element_t)
Get the name of an element.
Definition xmlutils.c:2048
int xml_count_entities(entities_t)
Count the number of entities.
Definition xmlutils.c:1826
char * entity_name(entity_t entity)
Get the name an entity.
Definition xmlutils.c:161
char * entity_text(entity_t entity)
Get the text an entity.
Definition xmlutils.c:145
int compare_entities(entity_t, entity_t)
Compare two XML entity.
Definition xmlutils.c:1761
int parse_entity(const char *, entity_t *)
Read an XML entity tree from a string.
Definition xmlutils.c:1511
int read_text_c(gvm_connection_t *, char **)
Read text from the server.
Definition xmlutils.c:1366
gchar * element_text(element_t)
Get text of an element.
Definition xmlutils.c:2133
entities_t next_entities(entities_t)
Return all the entities from an entities_t after the first.
Definition xmlutils.c:67
int read_entity_and_text_c(gvm_connection_t *, entity_t *, char **)
Read an XML entity tree from the manager.
Definition xmlutils.c:1336
xml_file_iterator_t xml_file_iterator_new(void)
Allocates a new, uninitialized XML file iterator.
Definition xmlutils.c:2853
int read_entity_s(int, entity_t *)
Read an XML entity tree from the socket.
Definition xmlutils.c:1483
struct xml_file_iterator_struct * xml_file_iterator_t
Definition xmlutils.h:188
void xml_handle_start_element(context_data_t *, const gchar *, const gchar **, const gchar **)
Handle the start of an OMP XML element.
Definition xmlutils.c:326
const char * entity_attribute(entity_t, const char *)
Get an attribute of an entity.
Definition xmlutils.c:216
struct _xmlNode * element_t
Definition xmlutils.h:157
int try_read_entity_c(gvm_connection_t *, int, entity_t *)
Try read an XML entity tree from the manager.
Definition xmlutils.c:1452
void print_element_to_string(element_t element, GString *string)
Print an XML element tree to a GString, appending it if string is not.
Definition xmlutils.c:2276
int find_element_in_xml_file(gchar *, gchar *, GHashTable *)
Tests if an XML file contains an element with given attributes.
Definition xmlutils.c:1938
int read_string(gnutls_session_t *, GString **)
Read entity and text. Free the entity immediately.
Definition xmlutils.c:1400
int read_entity(gnutls_session_t *, entity_t *)
Read an XML entity tree from the manager.
Definition xmlutils.c:1469
int xml_file_iterator_init_from_file_path(xml_file_iterator_t, const char *, int)
Initializes an XML file iterator to read from a given path.
Definition xmlutils.c:2870
element_t element_next(element_t)
Get the next sibling of an element.
Definition xmlutils.c:2226
void xml_handle_end_element(context_data_t *, const gchar *)
Handle the end of an XML element.
Definition xmlutils.c:402
entity_t entity_child(entity_t, const char *)
Get a child of an entity.
Definition xmlutils.c:193
int read_entity_c(gvm_connection_t *, entity_t *)
Read an XML entity tree from the manager.
Definition xmlutils.c:1497
int read_entity_and_string(gnutls_session_t *, entity_t *, GString **)
Try read an XML entity tree from the manager.
Definition xmlutils.c:1262
GSList * entities_t
Entities.
Definition xmlutils.h:46
element_t element_child(element_t, const gchar *)
Get a child of an element.
Definition xmlutils.c:2082
void print_entity_format(entity_t, gpointer indentation)
Print an XML entity to stdout, recursively printing its children.
Definition xmlutils.c:1702
gchar * element_attribute(element_t, const gchar *)
Get an attribute of an element.
Definition xmlutils.c:2158
void xml_handle_text(context_data_t *, const gchar *, gsize)
Handle additional text of an XML element.
Definition xmlutils.c:464
int read_entity_and_text(gnutls_session_t *, entity_t *, char **)
Read an XML entity tree from the manager.
Definition xmlutils.c:1305
entity_t first_entity(entities_t)
Return the first entity from an entities_t.
Definition xmlutils.c:82
gchar * element_to_string(element_t element)
Output the XML element as a string.
Definition xmlutils.c:2249
void print_entity(FILE *, entity_t)
Print an XML entity.
Definition xmlutils.c:1659
void element_free(element_t)
Free an entire element tree.
Definition xmlutils.c:2031
element_t element_first_child(element_t)
Get the first child of an element.
Definition xmlutils.c:2206
void free_entity(entity_t)
Free an entity, recursively.
Definition xmlutils.c:115
entity_t add_entity(entities_t *, const char *, const char *)
Add an XML entity to a tree of entities.
Definition xmlutils.c:101
void xml_file_iterator_free(xml_file_iterator_t)
Frees an XML file iterator and all of its internal data structures.
Definition xmlutils.c:2912
int parse_element(const gchar *, element_t *)
Read an XML element tree from a string.
Definition xmlutils.c:1999
void xml_string_append(GString *, const char *,...)
Append formatted escaped XML to a string.
Definition xmlutils.c:1845
void print_entity_to_string(entity_t entity, GString *string)
Print an XML entity tree to a GString, appending it if string is not.
Definition xmlutils.c:1612
int read_string_c(gvm_connection_t *, GString **)
Read entity and text. Free the entity immediately.
Definition xmlutils.c:1420
int read_entity_and_string_c(gvm_connection_t *, entity_t *, GString **)
Try read an XML entity tree from the manager.
Definition xmlutils.c:1282