OpenVAS Scanner
6.0.1
|
Advanced wrapper for nmap. Perform comprehensive network scanning. More...
#include "../misc/plugutils.h"
#include "nasl_lex_ctxt.h"
#include <glib.h>
#include <gvm/base/logging.h>
#include <gvm/base/prefs.h>
#include <gvm/util/kb.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <unistd.h>
Data Structures | |
struct | nse_script |
Handle the results of a NSE script. More... | |
struct | traceroute_hop |
Describe a detected hop on the route. More... | |
struct | nmap_port |
Store port information. More... | |
struct | nmap_host |
Store host information. More... | |
struct | nmap_parser |
Handle states for XML parsing. More... | |
struct | nmap_t |
Main nmap execution handler. More... | |
struct | nmap_opt_t |
Describe an nmap command line option. More... | |
Macros | |
#define | CHUNK_LEN 512 |
Input chunks size for the XML parser. More... | |
#define | MAX_TRACE_HOPS 64 |
Maximum number of hops to the target. More... | |
#define | NMAP_CMD "nmap" |
Nmap command to call. More... | |
#define | PREF_TREAT_ALL_HOST_ONLINE "Treat all hosts as online" |
Plugin parameter description: skip alive hosts discovery phase. More... | |
#define | PREF_TRACEROUTE "Trace hop path to each host" |
Plugin parameter description: perform traceroute. More... | |
#define | PREF_NO_DNS "Disable DNS resolution" |
Plugin parameter description: don't perform reverse resolution on discovered IP addresses. More... | |
#define | PREF_TCP_SCANNING_TECHNIQUE "TCP scanning technique" |
Plugin parameter description: TCP port scanning technique to use. More... | |
#define | PREF_SERVICE_SCAN "Service scan" |
Plugin parameter description: perform service/version detection scan. More... | |
#define | PREF_RPC_PORT_SCAN "RPC port scan" |
Plugin parameter description: perform RPC port scan. More... | |
#define | PREF_IDENTIFY_REMOTE_OS "Identify the remote OS" |
Plugin parameter description: perform remote OS fingerprinting. More... | |
#define | PREF_AGGRESSIVE_OS_DETECT "Aggressive OS detection" |
Plugin parameter description: guess OS from closest match if necessary. More... | |
#define | PREF_FRAGMENT_IP "Fragment IP packets (bypasses firewalls)" |
Plugin parameter description: try to evade defense by fragmenting IP packets. More... | |
#define | PREF_SOURCE_PORT "Source port" |
Plugin parameter description: set source port. More... | |
#define | PREF_TIMING_POLICY "Timing policy" |
Plugin parameter description: select timing template. More... | |
#define | PREF_HOST_TIMEOUT "Host Timeout (ms)" |
Plugin parameter description: give up on host after this time elapsed. More... | |
#define | PREF_MIN_RTT_TIMEOUT "Min RTT Timeout (ms)" |
Plugin parameter description: probe round trip time hint (minimal value) More... | |
#define | PREF_MAX_RTT_TIMEOUT "Max RTT Timeout (ms)" |
Plugin parameter description: probe round trip time hint (maximal value). More... | |
#define | PREF_INITIAL_RTT_TIMEOUT "Initial RTT timeout (ms)" |
Plugin parameter description: probe round trip time hint (initial value). More... | |
#define | PREF_MIN_PARALLELISM "Ports scanned in parallel (min)" |
Plugin parameter description: force minimum number of parallel active probes. More... | |
#define | PREF_MAX_PARALLELISM "Ports scanned in parallel (max)" |
Plugin parameter description: force maximum number of parallel active probes. More... | |
#define | PREF_MIN_HOSTGROUP "Hosts scanned in parallel (min)" |
Plugin parameter description: force minimum number of hosts to scan in parallel. More... | |
#define | PREF_MAX_HOSTGROUP "Hosts scanned in parallel (max)" |
Plugin parameter description: force maximum number of hosts to scan in parallel. More... | |
#define | PREF_INTERPROBE_DELAY "Minimum wait between probes (ms)" |
Plugin parameter description: set idle interval between probes. More... | |
#define | PREF_EXCLUDE_HOSTS "Exclude hosts" |
Plugin parameter description: comma-separated list of hosts to exclude from the scan. More... | |
#define | PREF_IMPORT_XML_FILE "File containing XML results" |
Plugin parameter description: import XML file. More... | |
#define | OPT_SET "yes" |
Checkbox value (when set). More... | |
#define | OPT_UNSET "no" |
Checkbox value (when unset). More... | |
#define | list_free(list, dtor, udata) |
#define | PRINT_NOT_NULL(x) ((x) ? (x) : "") |
Functions | |
static nmap_t * | nmap_create (lex_ctxt *lexic) |
Instanciate a new nmap handler, rebuild command line or open XML file to parse. More... | |
static void | nmap_destroy (nmap_t *nmap) |
Release a nmap handler and associated resources. More... | |
static int | build_cmd_line (nmap_t *nmap) |
Rebuild command line to run according to plugin parameters. More... | |
static int | add_arg (nmap_t *nmap, const gchar *name, const gchar *value) |
Add a couple argument/value on the command line. More... | |
static int | add_nse_arguments (nmap_t *nmap) |
Add NSE (nmap scripting engine) related arguments to the command line according to user script selection and preferences. More... | |
static gchar * | get_script_list (nmap_t *nmap) |
Make the comma-separated list of NSE scripts selected by the user. More... | |
static gchar * | get_script_args (nmap_t *nmap) |
Make the comma-separated list of NSE arguments set by the user. More... | |
static int | add_scantype_arguments (nmap_t *nmap) |
Add the TCP scantype flag to the command line. More... | |
static int | add_timing_arguments (nmap_t *nmap) |
Add timing template argument to the command line. More... | |
static int | add_portrange (nmap_t *nmap) |
Add the range of ports to scan to the command line. More... | |
static void | setup_xml_parser (nmap_t *nmap) |
Setup XML parser internals. More... | |
static void | set_opentag_callbacks (GHashTable *open) |
Populate the callbacks hashtable with handlers for opening tags. More... | |
static void | set_closetag_callbacks (GHashTable *close) |
Populate the callbacks hashtable with handlers for closing tags. More... | |
static int | add_target (nmap_t *nmap) |
Append scan target to the command line. More... | |
static void | dbg_display_cmdline (nmap_t *nmap) |
Display the final command line for debug. More... | |
static void | sig_h () |
Signal handler (Halt). More... | |
static void | sig_c () |
Signal handler (Child). More... | |
static int | nmap_run_and_parse (nmap_t *nmap) |
Run nmap and parse its XML output (or load an external file if requested). More... | |
static void | current_host_reset (nmap_t *nmap) |
Clear the current host object. More... | |
static void | port_destroy (gpointer data, gpointer udata) |
Completely release a port object. More... | |
static void | nse_script_destroy (gpointer data, gpointer udata) |
Completely release a NSE script object. More... | |
static void | simple_item_destroy (gpointer data, gpointer udata) |
Simple wrapper to call g_free from within g_slist_foreach statements. More... | |
static void | tmphost_add_port (nmap_t *nmap) |
Add port information to the current host object. More... | |
static void | tmphost_add_nse_hostscript (nmap_t *nmap, gchar *name, gchar *output) |
Add NSE hostscript result to the current host object. More... | |
static void | tmphost_add_nse_portscript (nmap_t *nmap, gchar *name, gchar *output) |
Add NSE portscript result to a port of the current host. More... | |
static void | xml_start_element (GMarkupParseContext *context, const gchar *element_name, const gchar **attribute_names, const gchar **attribute_values, gpointer user_data, GError **error) |
Top level XML parser callback: handle an opening tag and call the corresponding method. More... | |
static void | xml_end_element (GMarkupParseContext *context, const gchar *element_name, gpointer user_data, GError **error) |
Top level XML parser callback: handle an closing tag and call the corresponding method. More... | |
static void | xml_read_text (GMarkupParseContext *context, const gchar *text, gsize text_len, gpointer user_data, GError **error) |
Top level XML parser callback: handle text sections and store it into the read buffer if enable_read is set to TRUE. More... | |
static void | xmltag_open_host (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening host tag. More... | |
static void | xmltag_open_status (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening status tag. More... | |
static void | xmltag_open_address (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening address tag. More... | |
static void | xmltag_open_ports (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening ports tag. More... | |
static void | xmltag_open_port (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening port tag. More... | |
static void | xmltag_open_state (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening state tag. More... | |
static void | xmltag_open_service (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening service tag. More... | |
static void | xmltag_open_cpe (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening cpe tag. More... | |
static void | xmltag_open_hostscript (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening hostscript tag. More... | |
static void | xmltag_open_osmatch (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening osmatch tag. More... | |
static void | xmltag_open_script (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening script tag. More... | |
static void | xmltag_open_tcpsequence (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening tcpsequence tag. More... | |
static void | xmltag_open_ipidsequence (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening ipidsequence tag. More... | |
static void | xmltag_open_hop (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening hop tag. More... | |
static void | xmltag_open_distance (nmap_t *nmap, const gchar **attrnames, const gchar **attrval) |
Sublevel XML parser callback: handle an opening distance tag. More... | |
static void | xmltag_close_host (nmap_t *nmap) |
Sublevel XML parser callback: handle an closing host tag. More... | |
static void | xmltag_close_ports (nmap_t *nmap) |
Sublevel XML parser callback: handle an closing host tag. More... | |
static void | xmltag_close_port (nmap_t *nmap) |
Sublevel XML parser callback: handle an closing port tag. More... | |
static void | xmltag_close_cpe (nmap_t *nmap) |
Sublevel XML parser callback: handle an closing cpe tag. More... | |
static void | xmltag_close_hostscript (nmap_t *nmap) |
Sublevel XML parser callback: handle an closing hostscript tag. More... | |
static gchar * | get_attr_value (const gchar *name, const gchar **attribute_names, const gchar **attribute_values) |
Helper function: get attribute value from the separate name/value tables. More... | |
static void | current_host_saveall (nmap_t *nmap) |
Dump current host object state into the knowledge base. More... | |
static void | save_host_state (nmap_t *nmap) |
Store host state (host alive/dead) into the knowledge base. More... | |
static void | save_open_ports (nmap_t *nmap) |
Save information about open ports for the current host into the knowledge base. More... | |
static void | register_service (nmap_t *nmap, struct nmap_port *p) |
Save information about a detected service (version) into the knowledge base. More... | |
static void | save_detected_os (nmap_t *nmap) |
Save information about detected operating system into the knowledge base. More... | |
static void | save_tcpseq_details (nmap_t *nmap) |
Save information about TCP sequence number generation into the knowledge base. More... | |
static void | save_ipidseq_details (nmap_t *nmap) |
Save information about IP ID generation into the knowledge base. More... | |
static void | save_traceroute_details (nmap_t *nmap) |
Save information about network topology to the target (traceroute) into the knowledge base. More... | |
static void | save_portscripts (nmap_t *nmap) |
Save information about postrule NSE scripts into the knowledge base. More... | |
static void | save_hostscripts (nmap_t *nmap) |
Save information about hostrule NSE scripts into the knowledge base. More... | |
tree_cell * | plugin_run_nmap (lex_ctxt *lexic) |
Run the nmap_net subsystem. More... | |
Variables | |
static pid_t | pid = 0 |
Advanced wrapper for nmap. Perform comprehensive network scanning.
This plugin was designed to be executed only once per network. It generates the nmap command line according to the specified options, runs nmap, parses the output and stores results for each host in the knowledge base.
#define CHUNK_LEN 512 |
Input chunks size for the XML parser.
#define list_free | ( | list, | |
dtor, | |||
udata | |||
) |
#define MAX_TRACE_HOPS 64 |
Maximum number of hops to the target.
#define NMAP_CMD "nmap" |
Nmap command to call.
#define OPT_SET "yes" |
Checkbox value (when set).
#define OPT_UNSET "no" |
Checkbox value (when unset).
#define PREF_AGGRESSIVE_OS_DETECT "Aggressive OS detection" |
Plugin parameter description: guess OS from closest match if necessary.
#define PREF_EXCLUDE_HOSTS "Exclude hosts" |
Plugin parameter description: comma-separated list of hosts to exclude from the scan.
#define PREF_FRAGMENT_IP "Fragment IP packets (bypasses firewalls)" |
Plugin parameter description: try to evade defense by fragmenting IP packets.
#define PREF_HOST_TIMEOUT "Host Timeout (ms)" |
Plugin parameter description: give up on host after this time elapsed.
#define PREF_IDENTIFY_REMOTE_OS "Identify the remote OS" |
Plugin parameter description: perform remote OS fingerprinting.
#define PREF_IMPORT_XML_FILE "File containing XML results" |
Plugin parameter description: import XML file.
#define PREF_INITIAL_RTT_TIMEOUT "Initial RTT timeout (ms)" |
Plugin parameter description: probe round trip time hint (initial value).
#define PREF_INTERPROBE_DELAY "Minimum wait between probes (ms)" |
Plugin parameter description: set idle interval between probes.
#define PREF_MAX_HOSTGROUP "Hosts scanned in parallel (max)" |
Plugin parameter description: force maximum number of hosts to scan in parallel.
#define PREF_MAX_PARALLELISM "Ports scanned in parallel (max)" |
Plugin parameter description: force maximum number of parallel active probes.
#define PREF_MAX_RTT_TIMEOUT "Max RTT Timeout (ms)" |
Plugin parameter description: probe round trip time hint (maximal value).
#define PREF_MIN_HOSTGROUP "Hosts scanned in parallel (min)" |
Plugin parameter description: force minimum number of hosts to scan in parallel.
#define PREF_MIN_PARALLELISM "Ports scanned in parallel (min)" |
Plugin parameter description: force minimum number of parallel active probes.
#define PREF_MIN_RTT_TIMEOUT "Min RTT Timeout (ms)" |
Plugin parameter description: probe round trip time hint (minimal value)
#define PREF_NO_DNS "Disable DNS resolution" |
Plugin parameter description: don't perform reverse resolution on discovered IP addresses.
#define PREF_RPC_PORT_SCAN "RPC port scan" |
Plugin parameter description: perform RPC port scan.
#define PREF_SERVICE_SCAN "Service scan" |
Plugin parameter description: perform service/version detection scan.
#define PREF_SOURCE_PORT "Source port" |
Plugin parameter description: set source port.
#define PREF_TCP_SCANNING_TECHNIQUE "TCP scanning technique" |
Plugin parameter description: TCP port scanning technique to use.
#define PREF_TIMING_POLICY "Timing policy" |
Plugin parameter description: select timing template.
#define PREF_TRACEROUTE "Trace hop path to each host" |
Plugin parameter description: perform traceroute.
#define PREF_TREAT_ALL_HOST_ONLINE "Treat all hosts as online" |
Plugin parameter description: skip alive hosts discovery phase.
#define PRINT_NOT_NULL | ( | x | ) | ((x) ? (x) : "") |
|
static |
Add a couple argument/value on the command line.
[in,out] | nmap | Handler to use. |
[in] | name | Name of the flag/option. |
[in] | value | Value of the option (or NULL for simple flags). |
|
static |
Add NSE (nmap scripting engine) related arguments to the command line according to user script selection and preferences.
[in,out] | nmap | Handler to use. |
|
static |
Add the range of ports to scan to the command line.
[in,out] | nmap | Handler to use. |
|
static |
Add the TCP scantype flag to the command line.
[in,out] | nmap | Handler to use. |
|
static |
Append scan target to the command line.
[in,out] | nmap | Handler to use. |
|
static |
Add timing template argument to the command line.
[in,out] | nmap | Handler to use. |
|
static |
Rebuild command line to run according to plugin parameters.
[in,out] | nmap | Handler to use. |
|
static |
Clear the current host object.
[in,out] | nmap | Handler to use. |
|
static |
Dump current host object state into the knowledge base.
[in] | nmap | Handler to use. |
|
static |
Display the final command line for debug.
[in,out] | nmap | Handler to use. |
|
static |
Helper function: get attribute value from the separate name/value tables.
[in] | name | Name of the attribute to lookup. |
[in] | attribute_names | Table of the attribute names. |
[in] | attribute_values | Table of the attribute values. |
|
static |
Make the comma-separated list of NSE arguments set by the user.
[in,out] | nmap | Handler to use. |
|
static |
Make the comma-separated list of NSE scripts selected by the user.
[in,out] | nmap | Handler to use. |
Instanciate a new nmap handler, rebuild command line or open XML file to parse.
[in] | lexic | NASL state |
|
static |
Release a nmap handler and associated resources.
[in,out] | nmap | Handler to free. |
|
static |
Run nmap and parse its XML output (or load an external file if requested).
[in,out] | nmap | Handler to use. |
|
static |
Completely release a NSE script object.
[in] | data | List item data pointer (according to GFunc specification). A struct nse_script * is expected here. |
[in] | udata | User defined data pointer (according to GFunc specification). A nmap_t * is expected here. |
Run the nmap_net subsystem.
[in] | lexic | NASL state. |
|
static |
Save information about a detected service (version) into the knowledge base.
[in] | nmap | Handler to use. |
[in] | p | Service description. |
|
static |
Save information about detected operating system into the knowledge base.
[in] | nmap | Handler to use. |
|
static |
Store host state (host alive/dead) into the knowledge base.
[in] | nmap | Handler to use. |
|
static |
Save information about hostrule NSE scripts into the knowledge base.
[in] | nmap | Handler to use. |
|
static |
Save information about IP ID generation into the knowledge base.
[in] | nmap | Handler to use. |
|
static |
Save information about open ports for the current host into the knowledge base.
[in] | nmap | Handler to use. |
|
static |
Save information about postrule NSE scripts into the knowledge base.
[in] | nmap | Handler to use. |
|
static |
Save information about TCP sequence number generation into the knowledge base.
[in] | nmap | Handler to use. |
|
static |
Save information about network topology to the target (traceroute) into the knowledge base.
[in] | nmap | Handler to use. |
|
static |
Populate the callbacks hashtable with handlers for closing tags.
[out] | close | The hashtable to populate. |
|
static |
Populate the callbacks hashtable with handlers for opening tags.
[out] | open | The hashtable to populate. |
|
static |
Setup XML parser internals.
[in,out] | nmap | Handler to use. |
|
static |
Signal handler (Child).
|
static |
Signal handler (Halt).
|
static |
Simple wrapper to call g_free from within g_slist_foreach statements.
[in] | data | List item data pointer (according to GFunc specification). A struct nse_script * is expected here. |
[in] | udata | User defined data pointer (according to GFunc specification). This parameter is not used. |
|
static |
Add NSE hostscript result to the current host object.
[in,out] | nmap | Handler to use. |
[in] | name | Name of the NSE script that produced the output. |
[in] | output | Output produced by this NSE script. |
|
static |
Add NSE portscript result to a port of the current host.
[in,out] | nmap | Handler to use. |
[in] | name | Name of the NSE script that produced the output. |
[in] | output | Output produced by this NSE script. |
|
static |
Add port information to the current host object.
[in,out] | nmap | Handler to use. |
|
static |
Top level XML parser callback: handle an closing tag and call the corresponding method.
[in] | context | The XML parser. |
[in] | element_name | The name of the current tag. |
[in] | user_data | A pointer to the current nmap_t structure. |
[in] | error | Return location of a GError. |
|
static |
Top level XML parser callback: handle text sections and store it into the read buffer if enable_read is set to TRUE.
[in] | context | The XML parser. |
[in] | text | The current text chunk. |
[in] | text_len | Chunk size. |
[in] | user_data | A pointer to the current nmap_t structure. |
[in] | error | Return location of a GError. |
|
static |
Top level XML parser callback: handle an opening tag and call the corresponding method.
[in] | context | The XML parser. |
[in] | element_name | The name of the current tag. |
[in] | attribute_names | NULL terminated list of attributes names. |
[in] | attribute_values | NULL terminated list of attributes values. |
[in] | user_data | A pointer to the current nmap_t structure. |
[in] | error | Return location of a GError. |
|
static |
Sublevel XML parser callback: handle an closing cpe tag.
[in] | nmap | Handler to use. |
|
static |
Sublevel XML parser callback: handle an closing host tag.
[in] | nmap | Handler to use. |
|
static |
Sublevel XML parser callback: handle an closing hostscript tag.
[in] | nmap | Handler to use. |
|
static |
Sublevel XML parser callback: handle an closing port tag.
[in] | nmap | Handler to use. |
|
static |
Sublevel XML parser callback: handle an closing host tag.
[in] | nmap | Handler to use. |
|
static |
Sublevel XML parser callback: handle an opening address tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening cpe tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening distance tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening hop tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening host tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening hostscript tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening ipidsequence tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening osmatch tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening port tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening ports tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening script tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening service tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening state tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening status tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |
Sublevel XML parser callback: handle an opening tcpsequence tag.
[in] | nmap | Handler to use. |
[in] | attrnames | NULL terminated list of attributes names. |
[in] | attrval | NULL terminated list of attributes values. |
|
static |