OpenDNSSEC-enforcer 2.1.13
db_clause.c File Reference
#include "db_clause.h"
#include "db_error.h"
#include <stdlib.h>
#include <string.h>

Go to the source code of this file.

Functions

db_clause_tdb_clause_new (void)
void db_clause_free (db_clause_t *clause)
const char * db_clause_field (const db_clause_t *clause)
db_clause_type_t db_clause_type (const db_clause_t *clause)
const db_value_tdb_clause_value (const db_clause_t *clause)
db_clause_operator_t db_clause_operator (const db_clause_t *clause)
const db_clause_list_tdb_clause_list (const db_clause_t *clause)
int db_clause_set_field (db_clause_t *clause, const char *field)
int db_clause_set_type (db_clause_t *clause, db_clause_type_t type)
int db_clause_set_operator (db_clause_t *clause, db_clause_operator_t clause_operator)
int db_clause_not_empty (const db_clause_t *clause)
const db_clause_tdb_clause_next (const db_clause_t *clause)
db_value_tdb_clause_get_value (db_clause_t *clause)
db_clause_list_tdb_clause_list_new (void)
void db_clause_list_free (db_clause_list_t *clause_list)
int db_clause_list_add (db_clause_list_t *clause_list, db_clause_t *clause)
const db_clause_tdb_clause_list_begin (const db_clause_list_t *clause_list)

Function Documentation

◆ db_clause_field()

const char * db_clause_field ( const db_clause_t * clause)

Get the field name of a database clause.

Parameters
[in]adb_clause_t pointer.
Returns
a character pointer or NULL on error or if no field name has been set.

Definition at line 69 of file db_clause.c.

Referenced by test_class_db_clause().

◆ db_clause_free()

void db_clause_free ( db_clause_t * clause)

Delete a database clause.

Parameters
[in]clausea db_clause_t pointer.

Definition at line 56 of file db_clause.c.

References db_clause_list_free(), and db_value_reset().

Referenced by clean_suite_classes(), db_clause_list_free(), hsm_key_algorithm_clause(), hsm_key_backup_clause(), hsm_key_bits_clause(), hsm_key_get_by_id(), hsm_key_get_by_locator(), hsm_key_is_revoked_clause(), hsm_key_key_type_clause(), hsm_key_list_get_by_policy_id(), hsm_key_list_new_get_by_policy_key(), hsm_key_policy_id_clause(), hsm_key_repository_clause(), hsm_key_role_clause(), hsm_key_state_clause(), hsm_key_update(), key_data_delete(), key_data_ds_at_parent_clause(), key_data_get_by_hsm_key_id(), key_data_get_by_id(), key_data_hsm_key_id_clause(), key_data_keytag_clause(), key_data_list_get_by_zone_id(), key_data_role_clause(), key_data_update(), key_data_zone_id_clause(), key_dependency_delete(), key_dependency_get_by_id(), key_dependency_list_get_by_zone_id(), key_state_delete(), key_state_get_by_id(), key_state_key_data_id_clause(), key_state_list_get_by_key_data_id(), key_state_update(), policy_delete(), policy_denial_type_clause(), policy_get_by_id(), policy_get_by_name(), policy_key_delete(), policy_key_get_by_id(), policy_key_get_by_policyid_and_role(), policy_key_list_get_by_policy_id(), policy_update(), test2_delete(), test2_get_by_id(), test2_get_by_name(), test2_update(), test_count_by_id(), test_count_by_name(), test_delete(), test_get_by_id(), test_get_by_name(), test_update(), zone_db_delete(), zone_db_get_by_id(), zone_db_get_by_name(), zone_db_policy_id_clause(), zone_db_update(), and zone_list_db_get_by_policy_id().

◆ db_clause_get_value()

db_value_t * db_clause_get_value ( db_clause_t * clause)

Get the writable database value of a database clause.

Parameters
[in]adb_clause_t pointer.
Returns
a db_value_t pointer or NULL on error.

Definition at line 187 of file db_clause.c.

Referenced by hsm_key_algorithm_clause(), hsm_key_backup_clause(), hsm_key_bits_clause(), hsm_key_factory_delete_key(), hsm_key_get_by_id(), hsm_key_get_by_locator(), hsm_key_is_revoked_clause(), hsm_key_key_type_clause(), hsm_key_list_get_by_policy_id(), hsm_key_list_new_get_by_policy_key(), hsm_key_policy_id_clause(), hsm_key_repository_clause(), hsm_key_role_clause(), hsm_key_state_clause(), hsm_key_update(), key_data_delete(), key_data_ds_at_parent_clause(), key_data_get_by_hsm_key_id(), key_data_get_by_id(), key_data_hsm_key_id_clause(), key_data_keytag_clause(), key_data_list_get_by_zone_id(), key_data_role_clause(), key_data_update(), key_data_zone_id_clause(), key_dependency_delete(), key_dependency_get_by_id(), key_dependency_list_get_by_zone_id(), key_state_delete(), key_state_get_by_id(), key_state_key_data_id_clause(), key_state_list_get_by_key_data_id(), key_state_update(), policy_delete(), policy_denial_type_clause(), policy_get_by_id(), policy_get_by_name(), policy_key_delete(), policy_key_get_by_id(), policy_key_get_by_policyid_and_role(), policy_key_list_get_by_policy_id(), policy_update(), test2_delete(), test2_get_by_id(), test2_get_by_name(), test2_update(), test_class_db_clause(), test_count_by_id(), test_count_by_name(), test_delete(), test_get_by_id(), test_get_by_name(), test_update(), zone_db_delete(), zone_db_get_by_id(), zone_db_get_by_name(), zone_db_policy_id_clause(), zone_db_update(), and zone_list_db_get_by_policy_id().

◆ db_clause_list()

const db_clause_list_t * db_clause_list ( const db_clause_t * clause)

Get the database clause list of a database clause, this is used for nested database clauses.

Parameters
[in]adb_clause_t pointer.
Returns
a db_clause_list_t pointer or NULL on error or if no database clause list has been set.

Definition at line 101 of file db_clause.c.

◆ db_clause_list_add()

int db_clause_list_add ( db_clause_list_t * clause_list,
db_clause_t * clause )

Add a database clause to a database clause list, this takes over the ownership of the database clause.

Parameters
[in]clause_lista db_clause_list_t pointer.
[in]adb_clause_t pointer.
Returns
DB_ERROR_* on failure, otherwise DB_OK.

Definition at line 226 of file db_clause.c.

References db_clause_not_empty(), DB_ERROR_UNKNOWN, and DB_OK.

Referenced by hsm_key_algorithm_clause(), hsm_key_backup_clause(), hsm_key_bits_clause(), hsm_key_factory_delete_key(), hsm_key_get_by_id(), hsm_key_get_by_locator(), hsm_key_is_revoked_clause(), hsm_key_key_type_clause(), hsm_key_list_get_by_policy_id(), hsm_key_list_new_get_by_policy_key(), hsm_key_policy_id_clause(), hsm_key_repository_clause(), hsm_key_role_clause(), hsm_key_state_clause(), hsm_key_update(), key_data_delete(), key_data_ds_at_parent_clause(), key_data_get_by_hsm_key_id(), key_data_get_by_id(), key_data_hsm_key_id_clause(), key_data_keytag_clause(), key_data_list_get_by_zone_id(), key_data_role_clause(), key_data_update(), key_data_zone_id_clause(), key_dependency_delete(), key_dependency_get_by_id(), key_dependency_list_get_by_zone_id(), key_state_delete(), key_state_get_by_id(), key_state_key_data_id_clause(), key_state_list_get_by_key_data_id(), key_state_update(), policy_delete(), policy_denial_type_clause(), policy_get_by_id(), policy_get_by_name(), policy_key_delete(), policy_key_get_by_id(), policy_key_get_by_policyid_and_role(), policy_key_list_get_by_policy_id(), policy_update(), test2_delete(), test2_get_by_id(), test2_get_by_name(), test2_update(), test_class_db_clause_list(), test_count_by_id(), test_count_by_name(), test_delete(), test_get_by_id(), test_get_by_name(), test_update(), zone_db_delete(), zone_db_get_by_id(), zone_db_get_by_name(), zone_db_policy_id_clause(), zone_db_update(), and zone_list_db_get_by_policy_id().

◆ db_clause_list_begin()

const db_clause_t * db_clause_list_begin ( const db_clause_list_t * clause_list)

Return the first database clause of a database clause list.

Parameters
[in]clause_lista db_clause_list_t pointer.
Returns
a db_clause_t pointer or NULL on error or if the list is empty.

Definition at line 255 of file db_clause.c.

Referenced by test_class_db_clause_list().

◆ db_clause_list_free()

void db_clause_list_free ( db_clause_list_t * clause_list)

◆ db_clause_list_new()

◆ db_clause_new()

db_clause_t * db_clause_new ( void )

Create a new database clause.

Returns
a db_clause_t pointer or NULL on error.

Definition at line 43 of file db_clause.c.

References DB_CLAUSE_OPERATOR_AND, DB_CLAUSE_UNKNOWN, and db_value_reset().

Referenced by hsm_key_algorithm_clause(), hsm_key_backup_clause(), hsm_key_bits_clause(), hsm_key_factory_delete_key(), hsm_key_get_by_id(), hsm_key_get_by_locator(), hsm_key_is_revoked_clause(), hsm_key_key_type_clause(), hsm_key_list_get_by_policy_id(), hsm_key_list_new_get_by_policy_key(), hsm_key_policy_id_clause(), hsm_key_repository_clause(), hsm_key_role_clause(), hsm_key_state_clause(), hsm_key_update(), key_data_delete(), key_data_ds_at_parent_clause(), key_data_get_by_hsm_key_id(), key_data_get_by_id(), key_data_hsm_key_id_clause(), key_data_keytag_clause(), key_data_list_get_by_zone_id(), key_data_role_clause(), key_data_update(), key_data_zone_id_clause(), key_dependency_delete(), key_dependency_get_by_id(), key_dependency_list_get_by_zone_id(), key_state_delete(), key_state_get_by_id(), key_state_key_data_id_clause(), key_state_list_get_by_key_data_id(), key_state_update(), policy_delete(), policy_denial_type_clause(), policy_get_by_id(), policy_get_by_name(), policy_key_delete(), policy_key_get_by_id(), policy_key_get_by_policyid_and_role(), policy_key_list_get_by_policy_id(), policy_update(), test2_delete(), test2_get_by_id(), test2_get_by_name(), test2_update(), test_class_db_clause(), test_count_by_id(), test_count_by_name(), test_delete(), test_get_by_id(), test_get_by_name(), test_update(), zone_db_delete(), zone_db_get_by_id(), zone_db_get_by_name(), zone_db_policy_id_clause(), zone_db_update(), and zone_list_db_get_by_policy_id().

◆ db_clause_next()

const db_clause_t * db_clause_next ( const db_clause_t * clause)

Return the next database clause connected in a database clause list.

Parameters
[in]adb_clause_t pointer.
Returns
a db_clause_t pointer or NULL on error or if there are no more database clauses in the list.

Definition at line 179 of file db_clause.c.

References db_clause::next.

Referenced by test_class_db_clause().

◆ db_clause_not_empty()

int db_clause_not_empty ( const db_clause_t * clause)

Check if the database clause is not empty.

Parameters
[in]adb_clause_t pointer.
Returns
DB_ERROR_* if empty, otherwise DB_OK.

Definition at line 154 of file db_clause.c.

References DB_CLAUSE_NESTED, DB_CLAUSE_UNKNOWN, DB_ERROR_UNKNOWN, DB_OK, DB_TYPE_EMPTY, and db_value_type().

Referenced by db_clause_list_add(), and test_class_db_clause().

◆ db_clause_operator()

db_clause_operator_t db_clause_operator ( const db_clause_t * clause)

Get the database clause operator of a database clause.

Parameters
[in]adb_clause_t pointer.
Returns
a db_clause_operator_t.

Definition at line 93 of file db_clause.c.

References DB_CLAUSE_OPERATOR_UNKNOWN.

Referenced by test_class_db_clause().

◆ db_clause_set_field()

int db_clause_set_field ( db_clause_t * clause,
const char * field )

Set the field name of a database clause.

Parameters
[in]adb_clause_t pointer.
[in]fielda character pointer.
Returns
DB_ERROR_* on failure, otherwise DB_OK.

Definition at line 109 of file db_clause.c.

References DB_ERROR_UNKNOWN, and DB_OK.

Referenced by hsm_key_algorithm_clause(), hsm_key_backup_clause(), hsm_key_bits_clause(), hsm_key_factory_delete_key(), hsm_key_get_by_id(), hsm_key_get_by_locator(), hsm_key_is_revoked_clause(), hsm_key_key_type_clause(), hsm_key_list_get_by_policy_id(), hsm_key_list_new_get_by_policy_key(), hsm_key_policy_id_clause(), hsm_key_repository_clause(), hsm_key_role_clause(), hsm_key_state_clause(), hsm_key_update(), key_data_delete(), key_data_ds_at_parent_clause(), key_data_get_by_hsm_key_id(), key_data_get_by_id(), key_data_hsm_key_id_clause(), key_data_keytag_clause(), key_data_list_get_by_zone_id(), key_data_role_clause(), key_data_update(), key_data_zone_id_clause(), key_dependency_delete(), key_dependency_get_by_id(), key_dependency_list_get_by_zone_id(), key_state_delete(), key_state_get_by_id(), key_state_key_data_id_clause(), key_state_list_get_by_key_data_id(), key_state_update(), policy_delete(), policy_denial_type_clause(), policy_get_by_id(), policy_get_by_name(), policy_key_delete(), policy_key_get_by_id(), policy_key_get_by_policyid_and_role(), policy_key_list_get_by_policy_id(), policy_update(), test2_delete(), test2_get_by_id(), test2_get_by_name(), test2_update(), test_class_db_clause(), test_count_by_id(), test_count_by_name(), test_delete(), test_get_by_id(), test_get_by_name(), test_update(), zone_db_delete(), zone_db_get_by_id(), zone_db_get_by_name(), zone_db_policy_id_clause(), zone_db_update(), and zone_list_db_get_by_policy_id().

◆ db_clause_set_operator()

◆ db_clause_set_type()

int db_clause_set_type ( db_clause_t * clause,
db_clause_type_t type )

Set the database clause type of a database clause.

Parameters
[in]adb_clause_t pointer.
[in]typea db_clause_type_t.
Returns
DB_ERROR_* on failure, otherwise DB_OK.

Definition at line 130 of file db_clause.c.

References DB_CLAUSE_UNKNOWN, DB_ERROR_UNKNOWN, and DB_OK.

Referenced by change_keys_from_to(), hsm_key_algorithm_clause(), hsm_key_backup_clause(), hsm_key_bits_clause(), hsm_key_factory_delete_key(), hsm_key_get_by_id(), hsm_key_get_by_locator(), hsm_key_is_revoked_clause(), hsm_key_key_type_clause(), hsm_key_list_get_by_policy_id(), hsm_key_list_new_get_by_policy_key(), hsm_key_policy_id_clause(), hsm_key_repository_clause(), hsm_key_role_clause(), hsm_key_state_clause(), hsm_key_update(), key_data_delete(), key_data_ds_at_parent_clause(), key_data_get_by_hsm_key_id(), key_data_get_by_id(), key_data_hsm_key_id_clause(), key_data_keytag_clause(), key_data_list_get_by_zone_id(), key_data_role_clause(), key_data_update(), key_data_zone_id_clause(), key_dependency_delete(), key_dependency_get_by_id(), key_dependency_list_get_by_zone_id(), key_state_delete(), key_state_get_by_id(), key_state_key_data_id_clause(), key_state_list_get_by_key_data_id(), key_state_update(), policy_delete(), policy_denial_type_clause(), policy_get_by_id(), policy_get_by_name(), policy_key_delete(), policy_key_get_by_id(), policy_key_get_by_policyid_and_role(), policy_key_list_get_by_policy_id(), policy_update(), test2_delete(), test2_get_by_id(), test2_get_by_name(), test2_update(), test_class_db_clause(), test_count_by_id(), test_count_by_name(), test_delete(), test_get_by_id(), test_get_by_name(), test_update(), zone_db_delete(), zone_db_get_by_id(), zone_db_get_by_name(), zone_db_policy_id_clause(), zone_db_update(), and zone_list_db_get_by_policy_id().

◆ db_clause_type()

db_clause_type_t db_clause_type ( const db_clause_t * clause)

Get the database clause type of a database clause.

Parameters
[in]adb_clause_t pointer.
Returns
a db_clause_type_t.

Definition at line 77 of file db_clause.c.

References DB_CLAUSE_UNKNOWN.

Referenced by test_class_db_clause().

◆ db_clause_value()

const db_value_t * db_clause_value ( const db_clause_t * clause)

Get the database value of a database value.

Parameters
[in]adb_clause_t pointer.
Returns
a db_value_t pointer or NULL on error.

Definition at line 85 of file db_clause.c.

Referenced by test_class_db_clause().