DTNMA Reference Tools v2.2.0 - 5.ga116361
Delay-Tolerant Networking Management Architecture (DTNMA) Tool Suite
Loading...
Searching...
No Matches
ietf_dtnma_agent.c File Reference

This is the compilation unit for the implementation of the ADM module "ietf-dtnma-agent" for the C-language reference DA. More...

#include "ietf_dtnma_agent.h"
#include "refda/agent.h"
#include "refda/register.h"
#include "refda/edd_prod_ctx.h"
#include "refda/ctrl_exec_ctx.h"
#include "refda/oper_eval_ctx.h"
#include <cace/amm/semtype.h>
#include <cace/ari/text.h>
#include <cace/util/logging.h>
#include <cace/util/defs.h>
#include "refda/eval.h"
#include "refda/exec.h"
#include "refda/exec_proc.h"
#include "refda/binding.h"
#include "refda/reporting.h"
#include "cace/amm/promote.h"
#include "cace/amm/numeric.h"
#include "cace/ari/text_util.h"
#include <timespec.h>
#include <math.h>
+ Include dependency graph for ietf_dtnma_agent.c:

Data Structures

struct  refda_try_catch_data_t
 Exec item user data for catch control. More...
 
struct  refda_exec_deadline_data_t
 Exec item user data for exec-deadline control. More...
 
struct  _tbl_row_pair_t
 

Macros

#define NANOS_IN_SEC   1000000000
 
#define RET_PASS   0
 Return code that indicates normal completion.
 
#define RET_FAIL_UNDEFINED   1
 Return code that indicates the input resolves to an undefined result.
 
#define RET_FAIL_UNEXPECTED   2
 Return code that indicates the input resolves to an unexpected/abnormal state.
 

Functions

static void timespec_normalize (struct timespec *target)
 Ensure that the specified timespec is normalized.
 
static void refda_adm_ietf_dtnma_agent_ctrl_wait_finished (refda_ctrl_exec_ctx_t *ctx)
 Mark an execution item as finished with a null result.
 
static void refda_adm_ietf_dtnma_agent_ctrl_wait_cond_check (refda_ctrl_exec_ctx_t *ctx)
 Check an SBR condition and execute if truthy.
 
static void refda_adm_ietf_dtnma_agent_read_fparams (cace_amm_obj_desc_t *obj, const cace_ari_t *ari_fparams, const cace_amm_obj_store_t *store)
 
static void refda_adm_ietf_dtnma_agent_ctrl_catch_finished (bool failed, void *user_data)
 Callback to handle finish of the try target for catch CTRL.
 
static void refda_try_catch_data_init (refda_try_catch_data_t *obj, refda_exec_item_ptr_t *item_ptr, const cace_ari_t *on_failure)
 
static void refda_try_catch_data_deinit (refda_try_catch_data_t *obj)
 
static void refda_adm_ietf_dtnma_agent_ctrl_exec_deadline_finished (bool failed, void *user_data)
 Callback to handle finish of the target for deadline CTRL.
 
static void refda_exec_deadline_data_init (refda_exec_deadline_data_t *obj, refda_exec_item_ptr_t *item_ptr, const cace_ari_t *on_timeout)
 
static void refda_exec_deadline_data_deinit (refda_exec_deadline_data_t *obj)
 
static void refda_adm_ietf_dtnma_agent_ctrl_exec_deadline_timeout (refda_ctrl_exec_ctx_t *ctx)
 Callback to handle timeout of the deadline CTRL.
 
static void refda_adm_ietf_dtnma_agent_set_objpath (cace_ari_objpath_t *path, const cace_amm_obj_ns_t *ns, cace_ari_type_t obj_type, const cace_amm_obj_desc_t *obj)
 
static cace_ari_uvast numeric_add_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static cace_ari_vast numeric_add_vast (cace_ari_vast left, cace_ari_vast right)
 
static cace_ari_real64 numeric_add_real64 (cace_ari_real64 left, cace_ari_real64 right)
 
static int numeric_add_timespec (cace_ari_t *result, const cace_ari_t *valueA, const cace_ari_t *valueB)
 
static cace_ari_uvast numeric_sub_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static cace_ari_vast numeric_sub_vast (cace_ari_vast left, cace_ari_vast right)
 
static cace_ari_real64 numeric_sub_real64 (cace_ari_real64 left, cace_ari_real64 right)
 
static int numeric_sub_timespec (cace_ari_t *result, const cace_ari_t *valueA, const cace_ari_t *valueB)
 
static cace_ari_uvast numeric_mul_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static cace_ari_vast numeric_mul_vast (cace_ari_vast left, cace_ari_vast right)
 
static cace_ari_real64 numeric_mul_real64 (cace_ari_real64 left, cace_ari_real64 right)
 
static int numeric_mul_timespec (cace_ari_t *result, const cace_ari_t *valueA, const cace_ari_t *valueB)
 
static cace_ari_uvast numeric_div_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static cace_ari_vast numeric_div_vast (cace_ari_vast left, cace_ari_vast right)
 
static cace_ari_real64 numeric_div_real64 (cace_ari_real64 left, cace_ari_real64 right)
 
static int numeric_div_timespec (cace_ari_t *result, const cace_ari_t *valueA, const cace_ari_t *valueB)
 
static cace_ari_uvast numeric_mod_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static cace_ari_vast numeric_mod_vast (cace_ari_vast left, cace_ari_vast right)
 
static cace_ari_real64 numeric_mod_real64 (cace_ari_real64 left, cace_ari_real64 right)
 
static int numeric_mod_timespec (cace_ari_t *result, const cace_ari_t *left, const cace_ari_t *right)
 
static bool numeric_eq_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static bool numeric_eq_vast (cace_ari_vast left, cace_ari_vast right)
 
static bool numeric_eq_real64 (cace_ari_real64 left, cace_ari_real64 right)
 
static bool numeric_eq_timespec (struct timespec left, struct timespec right)
 
static bool numeric_ne_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static bool numeric_ne_vast (cace_ari_vast left, cace_ari_vast right)
 
static bool numeric_ne_real64 (cace_ari_real64 left, cace_ari_real64 right)
 
static bool numeric_ne_timespec (struct timespec left, struct timespec right)
 
static bool numeric_gt_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static bool numeric_gt_vast (cace_ari_vast left, cace_ari_vast right)
 
static bool numeric_gt_real64 (cace_ari_real64 left, cace_ari_real64 right)
 
static bool numeric_gt_timespec (struct timespec left, struct timespec right)
 
static bool numeric_ge_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static bool numeric_ge_vast (cace_ari_vast left, cace_ari_vast right)
 
static bool numeric_ge_real64 (cace_ari_real64 left, cace_ari_real64 right)
 
static bool numeric_ge_timespec (struct timespec left, struct timespec right)
 
static bool numeric_lt_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static bool numeric_lt_vast (cace_ari_vast left, cace_ari_vast right)
 
static bool numeric_lt_real64 (cace_ari_real64 left, cace_ari_real64 right)
 
static bool numeric_lt_timespec (struct timespec left, struct timespec right)
 
static bool numeric_le_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static bool numeric_le_vast (cace_ari_vast left, cace_ari_vast right)
 
static bool numeric_le_real64 (cace_ari_real64 left, cace_ari_real64 right)
 
static bool numeric_le_timespec (struct timespec left, struct timespec right)
 
static cace_ari_uvast bitwise_and_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static cace_ari_vast bitwise_and_vast (cace_ari_vast left, cace_ari_vast right)
 
static cace_ari_uvast bitwise_or_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static cace_ari_vast bitwise_or_vast (cace_ari_vast left, cace_ari_vast right)
 
static cace_ari_uvast bitwise_xor_uvast (cace_ari_uvast left, cace_ari_uvast right)
 
static cace_ari_vast bitwise_xor_vast (cace_ari_vast left, cace_ari_vast right)
 
static cace_ari_translate_result_t unary_eval_sub_label (cace_ari_t *out, const cace_ari_t *in, const cace_ari_translate_ctx_t *ctx)
 Translation helper function to substitute LABEL value 0 in an evaluation target.
 
static cace_ari_translate_result_t nary_eval_sub_label (cace_ari_t *out, const cace_ari_t *in, const cace_ari_translate_ctx_t *ctx)
 Translation helper function to substitute LABEL with integer primitive in an evaluation target.
 
static bool predicate_compose (refda_runctx_t *runctx, const cace_ari_ac_t *operators_ac, const cace_ari_t *value, bool empty, bool init, bool stop)
 Expand an AC of operator references into a lookup list and then combine sub-evaluation results.
 
static cace_ari_translate_result_t tbl_filter_sub_label (cace_ari_t *out, const cace_ari_t *in, const cace_ari_translate_ctx_t *ctx)
 Translation helper function to substitute any LABEL value in the expression with corresponding data from the current table row.
 
void refda_adm_ietf_dtnma_agent_append_derived_ident (cace_ari_tbl_t *table, const cace_amm_lookup_t *deref, bool include_adm, bool include_abstract)
 Helper for building tables of IDENT objects.
 
static bool refda_acl_check_ensure_object (refda_runctx_t *runctx, const cace_amm_obj_ns_t *odm, cace_ari_type_t obj_type, cace_ari_int_id_t obj_id)
 
static int refda_odm_object_exists (cace_amm_obj_desc_t **obj, cace_amm_obj_ns_t *ns, cace_ari_type_t obj_type, const char *name, cace_ari_int_id_t intenum)
 Check for an existing object by its identifiers.
 
static void refda_adm_ietf_dtnma_agent_edd_sw_vendor (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_sw_version (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_capability (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_num_msg_rx (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_num_msg_rx_failed (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_num_msg_tx (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_num_msg_tx_failed (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_last_msg_rx_time (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_num_exec_started (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_num_exec_succeeded (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_num_exec_failed (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_exec_running (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_odm_list (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_ident_list (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_typedef_list (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_const_list (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_var_list (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_sbr_list (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_edd_tbr_list (refda_edd_prod_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_if_then_else (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_catch (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_exec_deadline (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_wait_for (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_wait_until (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_wait_cond (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_inspect (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_report_on (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_ensure_odm (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_obsolete_odm (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_var_reset (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_var_store (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_ensure_ident (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_obsolete_ident (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_ensure_const (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_obsolete_const (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_ensure_var (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_obsolete_var (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_ensure_sbr (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_ensure_tbr (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_ensure_rule_enabled (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_reset_rule_enabled (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_ctrl_obsolete_rule (refda_ctrl_exec_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_negate (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_add (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_sub (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_multiply (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_divide (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_remainder (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_bit_not (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_bit_and (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_bit_or (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_bit_xor (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_bool_not (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_bool_and (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_bool_or (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_bool_xor (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_strict_eq (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_strict_ne (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_compare_eq (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_compare_ne (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_compare_gt (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_compare_ge (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_compare_lt (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_compare_le (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_is_undefined (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_is_not_undefined (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_is_truthy (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_match_type (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_convert_type (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_match_regexp (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_is_org_private (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_match_org_int_range (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_is_model_odm (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_match_model_int_range (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_is_same_ns (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_match_object_type (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_match_object_int_range (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_is_same_object (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_ref (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_predicate_all (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_predicate_any (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_predicate_none (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_eval (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_unary_eval (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_nary_eval (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_tbl_filter (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_tbl_get (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_list_get (refda_oper_eval_ctx_t *ctx)
 
static void refda_adm_ietf_dtnma_agent_oper_map_get (refda_oper_eval_ctx_t *ctx)
 
int refda_adm_ietf_dtnma_agent_init (refda_agent_t *agent)
 Initializer for the ADM module ietf-dtnma-agent.
 

Variables

static const cace_numeric_binary_desc_t oper_add_desc
 
static const cace_numeric_binary_desc_t oper_sub_desc
 
static const cace_numeric_binary_desc_t oper_mul_desc
 
static const cace_numeric_binary_desc_t oper_div_desc
 
static const cace_numeric_binary_desc_t oper_mod_desc
 
static const cace_numeric_compare_desc_t oper_loose_eq_desc
 
static const cace_numeric_compare_desc_t oper_loose_ne_desc
 
static const cace_numeric_compare_desc_t oper_loose_gt_desc
 
static const cace_numeric_compare_desc_t oper_loose_ge_desc
 
static const cace_numeric_compare_desc_t oper_loose_lt_desc
 
static const cace_numeric_compare_desc_t oper_loose_le_desc
 
static const cace_numeric_binary_desc_t oper_bitwise_and_desc
 
static const cace_numeric_binary_desc_t oper_bitwise_or_desc
 
static const cace_numeric_binary_desc_t oper_bitwise_xor_desc
 

Detailed Description

This is the compilation unit for the implementation of the ADM module "ietf-dtnma-agent" for the C-language reference DA.

This contains definitions of every AMM object instance in the ADM and file-local callback functions for all EDDs, CTRLs, and OPERs.

Macro Definition Documentation

◆ NANOS_IN_SEC

#define NANOS_IN_SEC   1000000000

◆ RET_FAIL_UNDEFINED

#define RET_FAIL_UNDEFINED   1

Return code that indicates the input resolves to an undefined result.

◆ RET_FAIL_UNEXPECTED

#define RET_FAIL_UNEXPECTED   2

Return code that indicates the input resolves to an unexpected/abnormal state.

◆ RET_PASS

#define RET_PASS   0

Return code that indicates normal completion.

Function Documentation

◆ bitwise_and_uvast()

static cace_ari_uvast bitwise_and_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ bitwise_and_vast()

static cace_ari_vast bitwise_and_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ bitwise_or_uvast()

static cace_ari_uvast bitwise_or_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ bitwise_or_vast()

static cace_ari_vast bitwise_or_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ bitwise_xor_uvast()

static cace_ari_uvast bitwise_xor_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ bitwise_xor_vast()

static cace_ari_vast bitwise_xor_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ nary_eval_sub_label()

static cace_ari_translate_result_t nary_eval_sub_label ( cace_ari_t out,
const cace_ari_t in,
const cace_ari_translate_ctx_t ctx 
)
static

◆ numeric_add_real64()

static cace_ari_real64 numeric_add_real64 ( cace_ari_real64  left,
cace_ari_real64  right 
)
static

◆ numeric_add_timespec()

◆ numeric_add_uvast()

static cace_ari_uvast numeric_add_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ numeric_add_vast()

static cace_ari_vast numeric_add_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ numeric_div_real64()

static cace_ari_real64 numeric_div_real64 ( cace_ari_real64  left,
cace_ari_real64  right 
)
static

◆ numeric_div_timespec()

◆ numeric_div_uvast()

static cace_ari_uvast numeric_div_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ numeric_div_vast()

static cace_ari_vast numeric_div_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ numeric_eq_real64()

static bool numeric_eq_real64 ( cace_ari_real64  left,
cace_ari_real64  right 
)
static

◆ numeric_eq_timespec()

static bool numeric_eq_timespec ( struct timespec  left,
struct timespec  right 
)
static

◆ numeric_eq_uvast()

static bool numeric_eq_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ numeric_eq_vast()

static bool numeric_eq_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ numeric_ge_real64()

static bool numeric_ge_real64 ( cace_ari_real64  left,
cace_ari_real64  right 
)
static

◆ numeric_ge_timespec()

static bool numeric_ge_timespec ( struct timespec  left,
struct timespec  right 
)
static

◆ numeric_ge_uvast()

static bool numeric_ge_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ numeric_ge_vast()

static bool numeric_ge_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ numeric_gt_real64()

static bool numeric_gt_real64 ( cace_ari_real64  left,
cace_ari_real64  right 
)
static

◆ numeric_gt_timespec()

static bool numeric_gt_timespec ( struct timespec  left,
struct timespec  right 
)
static

◆ numeric_gt_uvast()

static bool numeric_gt_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ numeric_gt_vast()

static bool numeric_gt_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ numeric_le_real64()

static bool numeric_le_real64 ( cace_ari_real64  left,
cace_ari_real64  right 
)
static

◆ numeric_le_timespec()

static bool numeric_le_timespec ( struct timespec  left,
struct timespec  right 
)
static

◆ numeric_le_uvast()

static bool numeric_le_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ numeric_le_vast()

static bool numeric_le_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ numeric_lt_real64()

static bool numeric_lt_real64 ( cace_ari_real64  left,
cace_ari_real64  right 
)
static

◆ numeric_lt_timespec()

static bool numeric_lt_timespec ( struct timespec  left,
struct timespec  right 
)
static

◆ numeric_lt_uvast()

static bool numeric_lt_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ numeric_lt_vast()

static bool numeric_lt_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ numeric_mod_real64()

static cace_ari_real64 numeric_mod_real64 ( cace_ari_real64  left,
cace_ari_real64  right 
)
static

◆ numeric_mod_timespec()

static int numeric_mod_timespec ( cace_ari_t result,
const cace_ari_t left,
const cace_ari_t right 
)
static

References RET_FAIL_UNDEFINED.

◆ numeric_mod_uvast()

static cace_ari_uvast numeric_mod_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ numeric_mod_vast()

static cace_ari_vast numeric_mod_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ numeric_mul_real64()

static cace_ari_real64 numeric_mul_real64 ( cace_ari_real64  left,
cace_ari_real64  right 
)
static

◆ numeric_mul_timespec()

◆ numeric_mul_uvast()

static cace_ari_uvast numeric_mul_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ numeric_mul_vast()

static cace_ari_vast numeric_mul_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ numeric_ne_real64()

static bool numeric_ne_real64 ( cace_ari_real64  left,
cace_ari_real64  right 
)
static

◆ numeric_ne_timespec()

static bool numeric_ne_timespec ( struct timespec  left,
struct timespec  right 
)
static

◆ numeric_ne_uvast()

static bool numeric_ne_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ numeric_ne_vast()

static bool numeric_ne_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ numeric_sub_real64()

static cace_ari_real64 numeric_sub_real64 ( cace_ari_real64  left,
cace_ari_real64  right 
)
static

◆ numeric_sub_timespec()

◆ numeric_sub_uvast()

static cace_ari_uvast numeric_sub_uvast ( cace_ari_uvast  left,
cace_ari_uvast  right 
)
static

◆ numeric_sub_vast()

static cace_ari_vast numeric_sub_vast ( cace_ari_vast  left,
cace_ari_vast  right 
)
static

◆ predicate_compose()

static bool predicate_compose ( refda_runctx_t runctx,
const cace_ari_ac_t operators_ac,
const cace_ari_t value,
bool  empty,
bool  init,
bool  stop 
)
static

Expand an AC of operator references into a lookup list and then combine sub-evaluation results.

Parameters
[in]runctxThe evaluation context.
[in]operators_acThe subordinate unary operators to evaluate.
[in]valueThe operand value for each operator.
emptyThe result if the list of operators is empty.
initThe initial result before evaluating any operator.
stopThe sub-evaluation result which stops the composed processing and results in the opposite of the init argument.
Returns
The result of the composed operator.

References agent, refda_runctx_t::agent, cace_amm_ari_is_truthy(), cace_amm_lookup_deref(), cace_amm_lookup_init(), cace_ari_deinit(), CACE_ARI_INIT_UNDEFINED, CACE_LOG_ERR, cace_ari_ac_t::items, refda_agent_t::objs, REFDA_AGENT_LOCK, REFDA_AGENT_UNLOCK, refda_eval_ctx_deinit(), refda_eval_ctx_init(), refda_eval_oper(), and refda_eval_ctx_t::stack.

Referenced by refda_adm_ietf_dtnma_agent_oper_predicate_all(), refda_adm_ietf_dtnma_agent_oper_predicate_any(), and refda_adm_ietf_dtnma_agent_oper_predicate_none().

◆ refda_acl_check_ensure_object()

◆ refda_adm_ietf_dtnma_agent_append_derived_ident()

◆ refda_adm_ietf_dtnma_agent_ctrl_catch()

◆ refda_adm_ietf_dtnma_agent_ctrl_catch_finished()

static void refda_adm_ietf_dtnma_agent_ctrl_catch_finished ( bool  failed,
void *  user_data 
)
static

◆ refda_adm_ietf_dtnma_agent_ctrl_ensure_const()

◆ refda_adm_ietf_dtnma_agent_ctrl_ensure_ident()

◆ refda_adm_ietf_dtnma_agent_ctrl_ensure_odm()

◆ refda_adm_ietf_dtnma_agent_ctrl_ensure_rule_enabled()

◆ refda_adm_ietf_dtnma_agent_ctrl_ensure_sbr()

◆ refda_adm_ietf_dtnma_agent_ctrl_ensure_tbr()

◆ refda_adm_ietf_dtnma_agent_ctrl_ensure_var()

◆ refda_adm_ietf_dtnma_agent_ctrl_exec_deadline()

◆ refda_adm_ietf_dtnma_agent_ctrl_exec_deadline_finished()

static void refda_adm_ietf_dtnma_agent_ctrl_exec_deadline_finished ( bool  failed,
void *  user_data 
)
static

◆ refda_adm_ietf_dtnma_agent_ctrl_exec_deadline_timeout()

◆ refda_adm_ietf_dtnma_agent_ctrl_if_then_else()

◆ refda_adm_ietf_dtnma_agent_ctrl_inspect()

◆ refda_adm_ietf_dtnma_agent_ctrl_obsolete_const()

◆ refda_adm_ietf_dtnma_agent_ctrl_obsolete_ident()

◆ refda_adm_ietf_dtnma_agent_ctrl_obsolete_odm()

◆ refda_adm_ietf_dtnma_agent_ctrl_obsolete_rule()

◆ refda_adm_ietf_dtnma_agent_ctrl_obsolete_var()

◆ refda_adm_ietf_dtnma_agent_ctrl_report_on()

◆ refda_adm_ietf_dtnma_agent_ctrl_reset_rule_enabled()

◆ refda_adm_ietf_dtnma_agent_ctrl_var_reset()

◆ refda_adm_ietf_dtnma_agent_ctrl_var_store()

◆ refda_adm_ietf_dtnma_agent_ctrl_wait_cond()

static void refda_adm_ietf_dtnma_agent_ctrl_wait_cond ( refda_ctrl_exec_ctx_t ctx)
static

◆ refda_adm_ietf_dtnma_agent_ctrl_wait_cond_check()

◆ refda_adm_ietf_dtnma_agent_ctrl_wait_finished()

static void refda_adm_ietf_dtnma_agent_ctrl_wait_finished ( refda_ctrl_exec_ctx_t ctx)
static

Mark an execution item as finished with a null result.

Matches the signature of refda_timeline_exec_event_t::callback.

References refda_ctrl_exec_ctx_set_result_null().

Referenced by refda_adm_ietf_dtnma_agent_ctrl_wait_for(), and refda_adm_ietf_dtnma_agent_ctrl_wait_until().

◆ refda_adm_ietf_dtnma_agent_ctrl_wait_for()

◆ refda_adm_ietf_dtnma_agent_ctrl_wait_until()

◆ refda_adm_ietf_dtnma_agent_edd_capability()

◆ refda_adm_ietf_dtnma_agent_edd_const_list()

◆ refda_adm_ietf_dtnma_agent_edd_exec_running()

◆ refda_adm_ietf_dtnma_agent_edd_ident_list()

◆ refda_adm_ietf_dtnma_agent_edd_last_msg_rx_time()

◆ refda_adm_ietf_dtnma_agent_edd_num_exec_failed()

◆ refda_adm_ietf_dtnma_agent_edd_num_exec_started()

◆ refda_adm_ietf_dtnma_agent_edd_num_exec_succeeded()

◆ refda_adm_ietf_dtnma_agent_edd_num_msg_rx()

◆ refda_adm_ietf_dtnma_agent_edd_num_msg_rx_failed()

◆ refda_adm_ietf_dtnma_agent_edd_num_msg_tx()

◆ refda_adm_ietf_dtnma_agent_edd_num_msg_tx_failed()

◆ refda_adm_ietf_dtnma_agent_edd_odm_list()

◆ refda_adm_ietf_dtnma_agent_edd_sbr_list()

◆ refda_adm_ietf_dtnma_agent_edd_sw_vendor()

static void refda_adm_ietf_dtnma_agent_edd_sw_vendor ( refda_edd_prod_ctx_t ctx)
static

◆ refda_adm_ietf_dtnma_agent_edd_sw_version()

static void refda_adm_ietf_dtnma_agent_edd_sw_version ( refda_edd_prod_ctx_t ctx)
static

◆ refda_adm_ietf_dtnma_agent_edd_tbr_list()

◆ refda_adm_ietf_dtnma_agent_edd_typedef_list()

◆ refda_adm_ietf_dtnma_agent_edd_var_list()

◆ refda_adm_ietf_dtnma_agent_init()

int refda_adm_ietf_dtnma_agent_init ( refda_agent_t agent)

Initializer for the ADM module ietf-dtnma-agent.

Parameters
[in,out]agentThe agent to register this namespace and its objects within.
Returns
Zero upon success.

Register TYPEDEF objects

Register CONST objects

Register EDD objects

Register CTRL objects

Register OPER objects

References agent, cace_amm_idseg_ref_withenum(), cace_amm_obj_store_add_ns(), cace_amm_semtype_cnst_set_range_int64(), cace_amm_semtype_cnst_set_textpat(), cace_amm_type_set_seq(), cace_amm_type_set_tblt_size(), cace_amm_type_set_ulist(), cace_amm_type_set_union_size(), cace_amm_type_set_use_ref_move(), CACE_ARI_INIT_UNDEFINED, cace_ari_set_ac(), cace_ari_set_aritype(), cace_ari_set_bool(), cace_ari_set_null(), cace_ari_set_objref_path_intid(), cace_ari_set_tbl(), cace_ari_tbl_reset(), CACE_ARI_TYPE_AC, CACE_ARI_TYPE_AM, CACE_ARI_TYPE_ARITYPE, CACE_ARI_TYPE_BOOL, CACE_ARI_TYPE_BYTE, CACE_ARI_TYPE_CONST, CACE_ARI_TYPE_EDD, CACE_ARI_TYPE_IDENT, CACE_ARI_TYPE_INT, CACE_ARI_TYPE_NAMESPACE, CACE_ARI_TYPE_NULL, CACE_ARI_TYPE_OBJECT, CACE_ARI_TYPE_OPER, CACE_ARI_TYPE_SBR, CACE_ARI_TYPE_TBL, CACE_ARI_TYPE_TBR, CACE_ARI_TYPE_TD, CACE_ARI_TYPE_TEXTSTR, CACE_ARI_TYPE_TP, CACE_ARI_TYPE_TYPEDEF, CACE_ARI_TYPE_UINT, CACE_ARI_TYPE_UVAST, CACE_ARI_TYPE_VAR, CACE_ARI_TYPE_VAST, CACE_LOG_DEBUG, CACE_MALLOC, CHKERR1, cace_amm_semtype_union_t::choices, cace_amm_semtype_tblt_t::columns, cace_amm_semtype_use_t::constraints, cace_amm_formal_param_t::defval, refda_amm_oper_desc_t::evaluate, refda_amm_ctrl_desc_t::execute, cace_amm_semtype_ulist_t::item_type, cace_amm_semtype_seq_t::item_type, cace_ari_ac_t::items, cace_amm_named_type_t::name, refda_agent_t::objs, refda_amm_oper_desc_t::operand_types, refda_amm_edd_desc_t::prod_type, refda_amm_edd_desc_t::produce, refda_adm_ietf_dtnma_agent_ctrl_catch(), refda_adm_ietf_dtnma_agent_ctrl_ensure_const(), refda_adm_ietf_dtnma_agent_ctrl_ensure_ident(), refda_adm_ietf_dtnma_agent_ctrl_ensure_odm(), refda_adm_ietf_dtnma_agent_ctrl_ensure_rule_enabled(), refda_adm_ietf_dtnma_agent_ctrl_ensure_sbr(), refda_adm_ietf_dtnma_agent_ctrl_ensure_tbr(), refda_adm_ietf_dtnma_agent_ctrl_ensure_var(), refda_adm_ietf_dtnma_agent_ctrl_exec_deadline(), refda_adm_ietf_dtnma_agent_ctrl_if_then_else(), refda_adm_ietf_dtnma_agent_ctrl_inspect(), refda_adm_ietf_dtnma_agent_ctrl_obsolete_const(), refda_adm_ietf_dtnma_agent_ctrl_obsolete_ident(), refda_adm_ietf_dtnma_agent_ctrl_obsolete_odm(), refda_adm_ietf_dtnma_agent_ctrl_obsolete_rule(), refda_adm_ietf_dtnma_agent_ctrl_obsolete_var(), refda_adm_ietf_dtnma_agent_ctrl_report_on(), refda_adm_ietf_dtnma_agent_ctrl_reset_rule_enabled(), refda_adm_ietf_dtnma_agent_ctrl_var_reset(), refda_adm_ietf_dtnma_agent_ctrl_var_store(), refda_adm_ietf_dtnma_agent_ctrl_wait_cond(), refda_adm_ietf_dtnma_agent_ctrl_wait_for(), refda_adm_ietf_dtnma_agent_ctrl_wait_until(), refda_adm_ietf_dtnma_agent_edd_capability(), refda_adm_ietf_dtnma_agent_edd_const_list(), refda_adm_ietf_dtnma_agent_edd_exec_running(), refda_adm_ietf_dtnma_agent_edd_ident_list(), refda_adm_ietf_dtnma_agent_edd_last_msg_rx_time(), refda_adm_ietf_dtnma_agent_edd_num_exec_failed(), refda_adm_ietf_dtnma_agent_edd_num_exec_started(), refda_adm_ietf_dtnma_agent_edd_num_exec_succeeded(), refda_adm_ietf_dtnma_agent_edd_num_msg_rx(), refda_adm_ietf_dtnma_agent_edd_num_msg_rx_failed(), refda_adm_ietf_dtnma_agent_edd_num_msg_tx(), refda_adm_ietf_dtnma_agent_edd_num_msg_tx_failed(), refda_adm_ietf_dtnma_agent_edd_odm_list(), refda_adm_ietf_dtnma_agent_edd_sbr_list(), refda_adm_ietf_dtnma_agent_edd_sw_vendor(), refda_adm_ietf_dtnma_agent_edd_sw_version(), refda_adm_ietf_dtnma_agent_edd_tbr_list(), refda_adm_ietf_dtnma_agent_edd_typedef_list(), refda_adm_ietf_dtnma_agent_edd_var_list(), REFDA_ADM_IETF_DTNMA_AGENT_ENUM_ADM, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CONST_HELLO, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_CATCH, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_ENSURE_CONST, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_ENSURE_IDENT, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_ENSURE_ODM, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_ENSURE_RULE_ENABLED, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_ENSURE_SBR, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_ENSURE_TBR, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_ENSURE_VAR, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_EXEC_DEADLINE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_IF_THEN_ELSE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_INSPECT, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_OBSOLETE_CONST, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_OBSOLETE_IDENT, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_OBSOLETE_ODM, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_OBSOLETE_RULE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_OBSOLETE_VAR, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_REPORT_ON, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_RESET_RULE_ENABLED, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_VAR_RESET, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_VAR_STORE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_WAIT_COND, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_WAIT_FOR, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_CTRL_WAIT_UNTIL, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_CAPABILITY, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_CONST_LIST, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_EXEC_RUNNING, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_IDENT_LIST, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_LAST_MSG_RX_TIME, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_NUM_EXEC_FAILED, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_NUM_EXEC_STARTED, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_NUM_EXEC_SUCCEEDED, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_NUM_MSG_RX, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_NUM_MSG_RX_FAILED, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_NUM_MSG_TX, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_NUM_MSG_TX_FAILED, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_ODM_LIST, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_SBR_LIST, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_SW_VENDOR, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_SW_VERSION, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_TBR_LIST, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_TYPEDEF_LIST, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_EDD_VAR_LIST, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_ADD, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_BIT_AND, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_BIT_NOT, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_BIT_OR, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_BIT_XOR, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_BOOL_AND, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_BOOL_NOT, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_BOOL_OR, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_BOOL_XOR, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_COMPARE_EQ, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_COMPARE_GE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_COMPARE_GT, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_COMPARE_LE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_COMPARE_LT, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_COMPARE_NE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_CONVERT_TYPE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_DIVIDE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_EVAL, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_IS_MODEL_ODM, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_IS_NOT_UNDEFINED, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_IS_ORG_PRIVATE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_IS_SAME_NS, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_IS_SAME_OBJECT, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_IS_TRUTHY, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_IS_UNDEFINED, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_LIST_GET, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_MAP_GET, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_MATCH_MODEL_INT_RANGE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_MATCH_OBJECT_INT_RANGE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_MATCH_OBJECT_TYPE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_MATCH_ORG_INT_RANGE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_MATCH_REGEXP, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_MATCH_TYPE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_MULTIPLY, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_NARY_EVAL, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_NEGATE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_PREDICATE_ALL, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_PREDICATE_ANY, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_PREDICATE_NONE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_REF, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_REMAINDER, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_STRICT_EQ, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_STRICT_NE, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_SUB, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_TBL_FILTER, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_TBL_GET, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_OPER_UNARY_EVAL, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_TYPEDEF_FORMAL_PARAMS_TBL, REFDA_ADM_IETF_DTNMA_AGENT_ENUM_OBJID_TYPEDEF_TBL_ROW_FILTER, refda_adm_ietf_dtnma_agent_oper_add(), refda_adm_ietf_dtnma_agent_oper_bit_and(), refda_adm_ietf_dtnma_agent_oper_bit_not(), refda_adm_ietf_dtnma_agent_oper_bit_or(), refda_adm_ietf_dtnma_agent_oper_bit_xor(), refda_adm_ietf_dtnma_agent_oper_bool_and(), refda_adm_ietf_dtnma_agent_oper_bool_not(), refda_adm_ietf_dtnma_agent_oper_bool_or(), refda_adm_ietf_dtnma_agent_oper_bool_xor(), refda_adm_ietf_dtnma_agent_oper_compare_eq(), refda_adm_ietf_dtnma_agent_oper_compare_ge(), refda_adm_ietf_dtnma_agent_oper_compare_gt(), refda_adm_ietf_dtnma_agent_oper_compare_le(), refda_adm_ietf_dtnma_agent_oper_compare_lt(), refda_adm_ietf_dtnma_agent_oper_compare_ne(), refda_adm_ietf_dtnma_agent_oper_convert_type(), refda_adm_ietf_dtnma_agent_oper_divide(), refda_adm_ietf_dtnma_agent_oper_eval(), refda_adm_ietf_dtnma_agent_oper_is_model_odm(), refda_adm_ietf_dtnma_agent_oper_is_not_undefined(), refda_adm_ietf_dtnma_agent_oper_is_org_private(), refda_adm_ietf_dtnma_agent_oper_is_same_ns(), refda_adm_ietf_dtnma_agent_oper_is_same_object(), refda_adm_ietf_dtnma_agent_oper_is_truthy(), refda_adm_ietf_dtnma_agent_oper_is_undefined(), refda_adm_ietf_dtnma_agent_oper_list_get(), refda_adm_ietf_dtnma_agent_oper_map_get(), refda_adm_ietf_dtnma_agent_oper_match_model_int_range(), refda_adm_ietf_dtnma_agent_oper_match_object_int_range(), refda_adm_ietf_dtnma_agent_oper_match_object_type(), refda_adm_ietf_dtnma_agent_oper_match_org_int_range(), refda_adm_ietf_dtnma_agent_oper_match_regexp(), refda_adm_ietf_dtnma_agent_oper_match_type(), refda_adm_ietf_dtnma_agent_oper_multiply(), refda_adm_ietf_dtnma_agent_oper_nary_eval(), refda_adm_ietf_dtnma_agent_oper_negate(), refda_adm_ietf_dtnma_agent_oper_predicate_all(), refda_adm_ietf_dtnma_agent_oper_predicate_any(), refda_adm_ietf_dtnma_agent_oper_predicate_none(), refda_adm_ietf_dtnma_agent_oper_ref(), refda_adm_ietf_dtnma_agent_oper_remainder(), refda_adm_ietf_dtnma_agent_oper_strict_eq(), refda_adm_ietf_dtnma_agent_oper_strict_ne(), refda_adm_ietf_dtnma_agent_oper_sub(), refda_adm_ietf_dtnma_agent_oper_tbl_filter(), refda_adm_ietf_dtnma_agent_oper_tbl_get(), refda_adm_ietf_dtnma_agent_oper_unary_eval(), REFDA_AGENT_ERR_LOCK_FAILED, REFDA_AGENT_LOCK, REFDA_AGENT_UNLOCK, refda_amm_const_desc_init(), refda_amm_ctrl_desc_init(), refda_amm_edd_desc_init(), refda_amm_oper_desc_init(), refda_amm_typedef_desc_init(), refda_register_add_param(), refda_register_const(), refda_register_ctrl(), refda_register_edd(), refda_register_oper(), refda_register_typedef(), refda_amm_ctrl_desc_t::res_type, refda_amm_oper_desc_t::res_type, cace_amm_named_type_t::typeobj, cace_amm_formal_param_t::typeobj, refda_amm_typedef_desc_t::typeobj, and refda_amm_const_desc_t::value.

Referenced by main(), refda_loader_basemods(), suite_adms_init(), and test_util_agent_crit_adms().

◆ refda_adm_ietf_dtnma_agent_oper_add()

◆ refda_adm_ietf_dtnma_agent_oper_bit_and()

◆ refda_adm_ietf_dtnma_agent_oper_bit_not()

◆ refda_adm_ietf_dtnma_agent_oper_bit_or()

◆ refda_adm_ietf_dtnma_agent_oper_bit_xor()

◆ refda_adm_ietf_dtnma_agent_oper_bool_and()

◆ refda_adm_ietf_dtnma_agent_oper_bool_not()

◆ refda_adm_ietf_dtnma_agent_oper_bool_or()

◆ refda_adm_ietf_dtnma_agent_oper_bool_xor()

◆ refda_adm_ietf_dtnma_agent_oper_compare_eq()

◆ refda_adm_ietf_dtnma_agent_oper_compare_ge()

◆ refda_adm_ietf_dtnma_agent_oper_compare_gt()

◆ refda_adm_ietf_dtnma_agent_oper_compare_le()

◆ refda_adm_ietf_dtnma_agent_oper_compare_lt()

◆ refda_adm_ietf_dtnma_agent_oper_compare_ne()

◆ refda_adm_ietf_dtnma_agent_oper_convert_type()

◆ refda_adm_ietf_dtnma_agent_oper_divide()

◆ refda_adm_ietf_dtnma_agent_oper_eval()

◆ refda_adm_ietf_dtnma_agent_oper_is_model_odm()

◆ refda_adm_ietf_dtnma_agent_oper_is_not_undefined()

◆ refda_adm_ietf_dtnma_agent_oper_is_org_private()

◆ refda_adm_ietf_dtnma_agent_oper_is_same_ns()

◆ refda_adm_ietf_dtnma_agent_oper_is_same_object()

◆ refda_adm_ietf_dtnma_agent_oper_is_truthy()

◆ refda_adm_ietf_dtnma_agent_oper_is_undefined()

◆ refda_adm_ietf_dtnma_agent_oper_list_get()

◆ refda_adm_ietf_dtnma_agent_oper_map_get()

◆ refda_adm_ietf_dtnma_agent_oper_match_model_int_range()

◆ refda_adm_ietf_dtnma_agent_oper_match_object_int_range()

◆ refda_adm_ietf_dtnma_agent_oper_match_object_type()

◆ refda_adm_ietf_dtnma_agent_oper_match_org_int_range()

◆ refda_adm_ietf_dtnma_agent_oper_match_regexp()

◆ refda_adm_ietf_dtnma_agent_oper_match_type()

◆ refda_adm_ietf_dtnma_agent_oper_multiply()

◆ refda_adm_ietf_dtnma_agent_oper_nary_eval()

◆ refda_adm_ietf_dtnma_agent_oper_negate()

◆ refda_adm_ietf_dtnma_agent_oper_predicate_all()

◆ refda_adm_ietf_dtnma_agent_oper_predicate_any()

◆ refda_adm_ietf_dtnma_agent_oper_predicate_none()

◆ refda_adm_ietf_dtnma_agent_oper_ref()

static void refda_adm_ietf_dtnma_agent_oper_ref ( refda_oper_eval_ctx_t ctx)
static

◆ refda_adm_ietf_dtnma_agent_oper_remainder()

◆ refda_adm_ietf_dtnma_agent_oper_strict_eq()

◆ refda_adm_ietf_dtnma_agent_oper_strict_ne()

◆ refda_adm_ietf_dtnma_agent_oper_sub()

◆ refda_adm_ietf_dtnma_agent_oper_tbl_filter()

◆ refda_adm_ietf_dtnma_agent_oper_tbl_get()

◆ refda_adm_ietf_dtnma_agent_oper_unary_eval()

◆ refda_adm_ietf_dtnma_agent_read_fparams()

◆ refda_adm_ietf_dtnma_agent_set_objpath()

◆ refda_exec_deadline_data_deinit()

◆ refda_exec_deadline_data_init()

◆ refda_odm_object_exists()

static int refda_odm_object_exists ( cace_amm_obj_desc_t **  obj,
cace_amm_obj_ns_t ns,
cace_ari_type_t  obj_type,
const char *  name,
cace_ari_int_id_t  intenum 
)
static

◆ refda_try_catch_data_deinit()

◆ refda_try_catch_data_init()

◆ tbl_filter_sub_label()

static cace_ari_translate_result_t tbl_filter_sub_label ( cace_ari_t out,
const cace_ari_t in,
const cace_ari_translate_ctx_t ctx 
)
static

Translation helper function to substitute any LABEL value in the expression with corresponding data from the current table row.

Assumes the LABEL contains an index of the column which will substitute data

References cace_ari_get_int(), cace_ari_is_lit_typed(), CACE_ARI_TRANSLATE_DEFAULT, CACE_ARI_TRANSLATE_FAILURE, CACE_ARI_TRANSLATE_FINAL, CACE_ARI_TYPE_LABEL, CACE_LOG_ERR, CACE_LOG_WARNING, cace_ari_tbl_t::items, cace_ari_tbl_t::ncols, refda_eval_label_subst(), _tbl_row_pair_t::row_index, _tbl_row_pair_t::tbl, and cace_ari_translate_ctx_t::user_data.

Referenced by refda_adm_ietf_dtnma_agent_oper_tbl_filter().

◆ timespec_normalize()

static void timespec_normalize ( struct timespec *  target)
static

Ensure that the specified timespec is normalized.

Normalization consists of the absolute value of the timespec nano field being less than 1 billion.

Parameters
[in,out]targetThe timespec that is to be normalized.

References NANOS_IN_SEC.

Referenced by numeric_div_timespec(), and numeric_mul_timespec().

◆ unary_eval_sub_label()

Variable Documentation

◆ oper_add_desc

const cace_numeric_binary_desc_t oper_add_desc
static
Initial value:
= {
.binop_uvast = numeric_add_uvast,
.binop_vast = numeric_add_vast,
.binop_real64 = numeric_add_real64,
.binop_timespec = numeric_add_timespec,
}
static cace_ari_vast numeric_add_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:402
static int numeric_add_timespec(cace_ari_t *result, const cace_ari_t *valueA, const cace_ari_t *valueB)
Definition ietf_dtnma_agent.c:410
static cace_ari_uvast numeric_add_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:398
static cace_ari_real64 numeric_add_real64(cace_ari_real64 left, cace_ari_real64 right)
Definition ietf_dtnma_agent.c:406

Referenced by refda_adm_ietf_dtnma_agent_oper_add().

◆ oper_bitwise_and_desc

const cace_numeric_binary_desc_t oper_bitwise_and_desc
static
Initial value:
= {
.binop_uvast = bitwise_and_uvast,
.binop_vast = bitwise_and_vast,
}
static cace_ari_vast bitwise_and_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:931
static cace_ari_uvast bitwise_and_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:927

Referenced by refda_adm_ietf_dtnma_agent_oper_bit_and().

◆ oper_bitwise_or_desc

const cace_numeric_binary_desc_t oper_bitwise_or_desc
static
Initial value:
= {
.binop_uvast = bitwise_or_uvast,
.binop_vast = bitwise_or_vast,
}
static cace_ari_uvast bitwise_or_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:940
static cace_ari_vast bitwise_or_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:944

Referenced by refda_adm_ietf_dtnma_agent_oper_bit_or().

◆ oper_bitwise_xor_desc

const cace_numeric_binary_desc_t oper_bitwise_xor_desc
static
Initial value:
= {
.binop_uvast = bitwise_xor_uvast,
.binop_vast = bitwise_xor_vast,
}
static cace_ari_vast bitwise_xor_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:957
static cace_ari_uvast bitwise_xor_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:953

Referenced by refda_adm_ietf_dtnma_agent_oper_bit_xor().

◆ oper_div_desc

const cace_numeric_binary_desc_t oper_div_desc
static
Initial value:
= {
.binop_uvast = numeric_div_uvast,
.binop_vast = numeric_div_vast,
.binop_real64 = numeric_div_real64,
.binop_timespec = numeric_div_timespec,
}
static cace_ari_vast numeric_div_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:652
static int numeric_div_timespec(cace_ari_t *result, const cace_ari_t *valueA, const cace_ari_t *valueB)
Definition ietf_dtnma_agent.c:660
static cace_ari_real64 numeric_div_real64(cace_ari_real64 left, cace_ari_real64 right)
Definition ietf_dtnma_agent.c:656
static cace_ari_uvast numeric_div_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:648

Referenced by refda_adm_ietf_dtnma_agent_oper_divide().

◆ oper_loose_eq_desc

const cace_numeric_compare_desc_t oper_loose_eq_desc
static
Initial value:
= {
.binop_uvast = numeric_eq_uvast,
.binop_vast = numeric_eq_vast,
.binop_real64 = numeric_eq_real64,
.binop_timespec = numeric_eq_timespec,
}
static bool numeric_eq_real64(cace_ari_real64 left, cace_ari_real64 right)
Definition ietf_dtnma_agent.c:797
static bool numeric_eq_timespec(struct timespec left, struct timespec right)
Definition ietf_dtnma_agent.c:801
static bool numeric_eq_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:793
static bool numeric_eq_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:789

Referenced by refda_adm_ietf_dtnma_agent_oper_compare_eq().

◆ oper_loose_ge_desc

const cace_numeric_compare_desc_t oper_loose_ge_desc
static
Initial value:
= {
.binop_uvast = numeric_ge_uvast,
.binop_vast = numeric_ge_vast,
.binop_real64 = numeric_ge_real64,
.binop_timespec = numeric_ge_timespec,
}
static bool numeric_ge_real64(cace_ari_real64 left, cace_ari_real64 right)
Definition ietf_dtnma_agent.c:866
static bool numeric_ge_timespec(struct timespec left, struct timespec right)
Definition ietf_dtnma_agent.c:870
static bool numeric_ge_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:858
static bool numeric_ge_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:862

Referenced by refda_adm_ietf_dtnma_agent_oper_compare_ge().

◆ oper_loose_gt_desc

const cace_numeric_compare_desc_t oper_loose_gt_desc
static
Initial value:
= {
.binop_uvast = numeric_gt_uvast,
.binop_vast = numeric_gt_vast,
.binop_real64 = numeric_gt_real64,
.binop_timespec = numeric_gt_timespec,
}
static bool numeric_gt_real64(cace_ari_real64 left, cace_ari_real64 right)
Definition ietf_dtnma_agent.c:843
static bool numeric_gt_timespec(struct timespec left, struct timespec right)
Definition ietf_dtnma_agent.c:847
static bool numeric_gt_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:839
static bool numeric_gt_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:835

Referenced by refda_adm_ietf_dtnma_agent_oper_compare_gt().

◆ oper_loose_le_desc

const cace_numeric_compare_desc_t oper_loose_le_desc
static
Initial value:
= {
.binop_uvast = numeric_le_uvast,
.binop_vast = numeric_le_vast,
.binop_real64 = numeric_le_real64,
.binop_timespec = numeric_le_timespec,
}
static bool numeric_le_timespec(struct timespec left, struct timespec right)
Definition ietf_dtnma_agent.c:916
static bool numeric_le_real64(cace_ari_real64 left, cace_ari_real64 right)
Definition ietf_dtnma_agent.c:912
static bool numeric_le_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:904
static bool numeric_le_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:908

Referenced by refda_adm_ietf_dtnma_agent_oper_compare_le().

◆ oper_loose_lt_desc

const cace_numeric_compare_desc_t oper_loose_lt_desc
static
Initial value:
= {
.binop_uvast = numeric_lt_uvast,
.binop_vast = numeric_lt_vast,
.binop_real64 = numeric_lt_real64,
.binop_timespec = numeric_lt_timespec,
}
static bool numeric_lt_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:885
static bool numeric_lt_timespec(struct timespec left, struct timespec right)
Definition ietf_dtnma_agent.c:893
static bool numeric_lt_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:881
static bool numeric_lt_real64(cace_ari_real64 left, cace_ari_real64 right)
Definition ietf_dtnma_agent.c:889

Referenced by refda_adm_ietf_dtnma_agent_oper_compare_lt().

◆ oper_loose_ne_desc

const cace_numeric_compare_desc_t oper_loose_ne_desc
static
Initial value:
= {
.binop_uvast = numeric_ne_uvast,
.binop_vast = numeric_ne_vast,
.binop_real64 = numeric_ne_real64,
.binop_timespec = numeric_ne_timespec,
}
static bool numeric_ne_real64(cace_ari_real64 left, cace_ari_real64 right)
Definition ietf_dtnma_agent.c:820
static bool numeric_ne_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:812
static bool numeric_ne_timespec(struct timespec left, struct timespec right)
Definition ietf_dtnma_agent.c:824
static bool numeric_ne_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:816

Referenced by refda_adm_ietf_dtnma_agent_oper_compare_ne().

◆ oper_mod_desc

const cace_numeric_binary_desc_t oper_mod_desc
static
Initial value:
= {
.binop_uvast = numeric_mod_uvast,
.binop_vast = numeric_mod_vast,
.binop_real64 = numeric_mod_real64,
.binop_timespec = numeric_mod_timespec,
}
static cace_ari_vast numeric_mod_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:769
static cace_ari_uvast numeric_mod_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:765
static int numeric_mod_timespec(cace_ari_t *result, const cace_ari_t *left, const cace_ari_t *right)
Definition ietf_dtnma_agent.c:777
static cace_ari_real64 numeric_mod_real64(cace_ari_real64 left, cace_ari_real64 right)
Definition ietf_dtnma_agent.c:773

Referenced by refda_adm_ietf_dtnma_agent_oper_remainder().

◆ oper_mul_desc

const cace_numeric_binary_desc_t oper_mul_desc
static
Initial value:
= {
.binop_uvast = numeric_mul_uvast,
.binop_vast = numeric_mul_vast,
.binop_real64 = numeric_mul_real64,
.binop_timespec = numeric_mul_timespec,
}
static cace_ari_uvast numeric_mul_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:540
static int numeric_mul_timespec(cace_ari_t *result, const cace_ari_t *valueA, const cace_ari_t *valueB)
Definition ietf_dtnma_agent.c:552
static cace_ari_vast numeric_mul_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:544
static cace_ari_real64 numeric_mul_real64(cace_ari_real64 left, cace_ari_real64 right)
Definition ietf_dtnma_agent.c:548

Referenced by refda_adm_ietf_dtnma_agent_oper_multiply().

◆ oper_sub_desc

const cace_numeric_binary_desc_t oper_sub_desc
static
Initial value:
= {
.binop_uvast = numeric_sub_uvast,
.binop_vast = numeric_sub_vast,
.binop_real64 = numeric_sub_real64,
.binop_timespec = numeric_sub_timespec,
}
static int numeric_sub_timespec(cace_ari_t *result, const cace_ari_t *valueA, const cace_ari_t *valueB)
Definition ietf_dtnma_agent.c:478
static cace_ari_real64 numeric_sub_real64(cace_ari_real64 left, cace_ari_real64 right)
Definition ietf_dtnma_agent.c:474
static cace_ari_uvast numeric_sub_uvast(cace_ari_uvast left, cace_ari_uvast right)
Definition ietf_dtnma_agent.c:466
static cace_ari_vast numeric_sub_vast(cace_ari_vast left, cace_ari_vast right)
Definition ietf_dtnma_agent.c:470

Referenced by refda_adm_ietf_dtnma_agent_oper_sub().