:orphan: .. index:: pair: group; TAPI to manage dnsperf tool .. _doxid-group__tapi__dnsperf: TAPI to manage dnsperf tool =========================== .. toctree:: :hidden: enum_tapi_dnsperf_addr_family.rst enum_tapi_dnsperf_transport_mode.rst struct_tapi_dnsperf_app.rst struct_tapi_dnsperf_opt.rst struct_tapi_dnsperf_report.rst Overview ~~~~~~~~ TAPI to manage *dnsperf*. :ref:`More...` .. ref-code-block:: cpp :class: doxyrest-overview-code-block // typedefs typedef struct :ref:`tapi_dnsperf_app` :ref:`tapi_dnsperf_app`; typedef struct :ref:`tapi_dnsperf_report` :ref:`tapi_dnsperf_report`; typedef enum :ref:`tapi_dnsperf_addr_family` :ref:`tapi_dnsperf_addr_family`; typedef enum :ref:`tapi_dnsperf_transport_mode` :ref:`tapi_dnsperf_transport_mode`; typedef struct :ref:`tapi_dnsperf_opt` :ref:`tapi_dnsperf_opt`; // enums enum :ref:`tapi_dnsperf_addr_family`; enum :ref:`tapi_dnsperf_transport_mode`; // structs struct :ref:`tapi_dnsperf_app`; struct :ref:`tapi_dnsperf_opt`; struct :ref:`tapi_dnsperf_report`; // global variables const :ref:`tapi_dnsperf_opt` :ref:`tapi_dnsperf_default_opt`; // global functions void :ref:`tapi_dnsperf_opt_query_add_a`(:ref:`tapi_dnsperf_opt`* opt, const char* host); void :ref:`tapi_dnsperf_opt_query_add_aaaa`(:ref:`tapi_dnsperf_opt`* opt, const char* host); void :ref:`tapi_dnsperf_opt_queries_free`(:ref:`tapi_dnsperf_opt`* opt); :ref:`te_errno` :ref:`tapi_dnsperf_create`(:ref:`tapi_job_factory_t`* factory, :ref:`tapi_dnsperf_opt`* opt, :ref:`tapi_dnsperf_app`** app); :ref:`te_errno` :ref:`tapi_dnsperf_start`(const :ref:`tapi_dnsperf_app`* app); :ref:`te_errno` :ref:`tapi_dnsperf_wait`(const :ref:`tapi_dnsperf_app`* app, int timeout_ms); :ref:`te_errno` :ref:`tapi_dnsperf_stop`(const :ref:`tapi_dnsperf_app`* app); :ref:`te_errno` :ref:`tapi_dnsperf_kill`(const :ref:`tapi_dnsperf_app`* app, int signum); :ref:`te_errno` :ref:`tapi_dnsperf_destroy`(:ref:`tapi_dnsperf_app`* app); :ref:`te_errno` :ref:`tapi_dnsperf_get_report`(:ref:`tapi_dnsperf_app`* app, :ref:`tapi_dnsperf_report`* report); :ref:`te_errno` :ref:`tapi_dnsperf_report_mi_log`(const :ref:`tapi_dnsperf_report`* report); void :ref:`tapi_dnsperf_destroy_report`(:ref:`tapi_dnsperf_report`* report); .. _details-group__tapi__dnsperf: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ TAPI to manage *dnsperf*. Typedefs -------- .. index:: pair: typedef; tapi_dnsperf_app .. _doxid-group__tapi__dnsperf_1gaf2a09afc96d1667dc7ac240bd7c85b5f: .. ref-code-block:: cpp :class: doxyrest-title-code-block typedef struct :ref:`tapi_dnsperf_app` tapi_dnsperf_app dnsperf tool information. .. index:: pair: typedef; tapi_dnsperf_report .. _doxid-group__tapi__dnsperf_1ga29a01e1d657348ca26263a0b73f90342: .. ref-code-block:: cpp :class: doxyrest-title-code-block typedef struct :ref:`tapi_dnsperf_report` tapi_dnsperf_report dnsperf information from the stdout. .. index:: pair: typedef; tapi_dnsperf_addr_family .. _doxid-group__tapi__dnsperf_1ga8b46f7c15af72e36c3d57068f59fa5ab: .. ref-code-block:: cpp :class: doxyrest-title-code-block typedef enum :ref:`tapi_dnsperf_addr_family` tapi_dnsperf_addr_family Representation of possible values for dnsperf family option. .. index:: pair: typedef; tapi_dnsperf_transport_mode .. _doxid-group__tapi__dnsperf_1gaf448c4caa5679ef27eb25c3127f09308: .. ref-code-block:: cpp :class: doxyrest-title-code-block typedef enum :ref:`tapi_dnsperf_transport_mode` tapi_dnsperf_transport_mode Representation of possible values for dnsperf mode option. .. index:: pair: typedef; tapi_dnsperf_opt .. _doxid-group__tapi__dnsperf_1ga38d5a81687d21236653ae00a5b6f8840: .. ref-code-block:: cpp :class: doxyrest-title-code-block typedef struct :ref:`tapi_dnsperf_opt` tapi_dnsperf_opt dnsperf specific options. Global Variables ---------------- .. index:: pair: variable; tapi_dnsperf_default_opt .. _doxid-group__tapi__dnsperf_1ga29e93a2a58145dbc867f41c6ec1aa5a0: .. ref-code-block:: cpp :class: doxyrest-title-code-block const :ref:`tapi_dnsperf_opt` tapi_dnsperf_default_opt Default dnsperf options initializer. Global Functions ---------------- .. index:: pair: function; tapi_dnsperf_opt_query_add_a .. _doxid-group__tapi__dnsperf_1ga53d4aa17e5b4f46a6e04b2a3657e2065: .. ref-code-block:: cpp :class: doxyrest-title-code-block void tapi_dnsperf_opt_query_add_a(:ref:`tapi_dnsperf_opt`* opt, const char* host) Add new DNS query with ``A`` type. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - opt - dnsperf options * - host - host name .. index:: pair: function; tapi_dnsperf_opt_query_add_aaaa .. _doxid-group__tapi__dnsperf_1ga153da9dd81fb4073e788d9cac172348c: .. ref-code-block:: cpp :class: doxyrest-title-code-block void tapi_dnsperf_opt_query_add_aaaa(:ref:`tapi_dnsperf_opt`* opt, const char* host) Add new DNS query with ``AAAA`` type. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - opt - dnsperf options * - host - host name .. index:: pair: function; tapi_dnsperf_opt_queries_free .. _doxid-group__tapi__dnsperf_1ga5bddb3767c9154978aed23f039c2ce7c: .. ref-code-block:: cpp :class: doxyrest-title-code-block void tapi_dnsperf_opt_queries_free(:ref:`tapi_dnsperf_opt`* opt) Release memory used by queries. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - opt - dnsperf options .. index:: pair: function; tapi_dnsperf_create .. _doxid-group__tapi__dnsperf_1gaeb6f618782e6a1635d2a6bfef3b7c20e: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`te_errno` tapi_dnsperf_create(:ref:`tapi_job_factory_t`* factory, :ref:`tapi_dnsperf_opt`* opt, :ref:`tapi_dnsperf_app`** app) Create dnsperf app. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - factory - job factory * - opt - dnsperf options * - app - dnsperf app handle .. rubric:: Returns: Status code. .. index:: pair: function; tapi_dnsperf_start .. _doxid-group__tapi__dnsperf_1ga96aece0a41579186f39354adacc6c1d3: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`te_errno` tapi_dnsperf_start(const :ref:`tapi_dnsperf_app`* app) Start dnsperf. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - app - dnsperf app handle .. rubric:: Returns: Status code. .. index:: pair: function; tapi_dnsperf_wait .. _doxid-group__tapi__dnsperf_1ga4427954dbc663c607460e0febfe7cb61: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`te_errno` tapi_dnsperf_wait(const :ref:`tapi_dnsperf_app`* app, int timeout_ms) Wait for dnsperf completion. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - app - dnsperf app handle * - timeout_ms - wait timeout in milliseconds .. rubric:: Returns: Status code. .. index:: pair: function; tapi_dnsperf_stop .. _doxid-group__tapi__dnsperf_1ga690ab638057838756aeeef38ea7c45d7: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`te_errno` tapi_dnsperf_stop(const :ref:`tapi_dnsperf_app`* app) Stop dnsperf. It can be started over with :ref:`tapi_dnsperf_start() `. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - app - dnsperf app handle .. rubric:: Returns: Status code. .. index:: pair: function; tapi_dnsperf_kill .. _doxid-group__tapi__dnsperf_1ga6e7cd97d8504c9173cc69aef0e023609: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`te_errno` tapi_dnsperf_kill(const :ref:`tapi_dnsperf_app`* app, int signum) Send a signal to dnsperf. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - app - dnsperf app handle * - signum - signal to send .. rubric:: Returns: Status code. .. index:: pair: function; tapi_dnsperf_destroy .. _doxid-group__tapi__dnsperf_1ga28a4fd1085a1c3499f6561074722373e: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`te_errno` tapi_dnsperf_destroy(:ref:`tapi_dnsperf_app`* app) Destroy dnsperf. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - app - dnsperf app handle .. rubric:: Returns: Status code. .. index:: pair: function; tapi_dnsperf_get_report .. _doxid-group__tapi__dnsperf_1gac1bee56e253aa660958558b3275f7cc7: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`te_errno` tapi_dnsperf_get_report(:ref:`tapi_dnsperf_app`* app, :ref:`tapi_dnsperf_report`* report) Get dnsperf report. Field 'arguments' in the ``report`` is freed in extern te_errno tapi_dnsperf_destroy_report(...). .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - app - dnsperf app handle * - report - dnsperf statistics report .. index:: pair: function; tapi_dnsperf_report_mi_log .. _doxid-group__tapi__dnsperf_1ga4869ba76e1c2d16c86e86ce18cd95345: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`te_errno` tapi_dnsperf_report_mi_log(const :ref:`tapi_dnsperf_report`* report) Add dnsperf report to MI logger. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - report - dnsperf statistics report .. rubric:: Returns: Status code. .. index:: pair: function; tapi_dnsperf_destroy_report .. _doxid-group__tapi__dnsperf_1gabb9d7a4d2c3dc441327fa65fe5c62986: .. ref-code-block:: cpp :class: doxyrest-title-code-block void tapi_dnsperf_destroy_report(:ref:`tapi_dnsperf_report`* report) Destroy dnsperf report to MI logger and freed memory. Field 'arguments' in the ``report`` is freed here. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - report - dnsperf statistics report