19 #ifndef _GVMD_MANAGE_CONFIGS_H
20 #define _GVMD_MANAGE_CONFIGS_H
23 #include "manage_get.h"
24 #include "manage_preferences.h"
47 create_config (
const char*,
const char*,
int,
const char*,
int,
const array_t*,
48 const array_t*,
const char*, config_t*,
char**);
51 copy_config (
const char*,
const char*,
const char *,
const char *, config_t*);
138 config_preference_iterator_name (
iterator_t *);
141 config_preference_iterator_value (
iterator_t *);
144 config_preference_iterator_type (
iterator_t *);
147 config_preference_iterator_default (
iterator_t *);
166 config_timeout_iterator_nvt_name (
iterator_t *);
173 const char *, gboolean);
long long int resource_t
A resource, like a task or target.
Definition: iterator.h:39
int config_predefined_uuid(const gchar *config_id)
Return whether a config is predefined.
Definition: manage_configs.c:55
gboolean should_sync_configs()
Checks if the configs should be synced with the feed.
Definition: manage_configs.c:572
void manage_sync_configs()
Sync configs with the feed.
Definition: manage_configs.c:549
gboolean configs_feed_dir_exists()
Tests if the configs feed directory exists.
Definition: manage_configs.c:540
int manage_rebuild_configs()
Rebuild configs from the feed.
Definition: manage_configs.c:561
char * config_uuid(config_t config)
Return the UUID of a config.
Definition: manage_sql_configs.c:2670
int manage_modify_config_start(const char *config_id, config_t *config_out)
Starts the SQL transaction for modify_config and finds the config.
Definition: manage_sql_configs.c:878
void manage_modify_config_commit()
Commits the changes of a manage_config command.
Definition: manage_sql_configs.c:909
int manage_set_config(config_t config, const char *name, const char *comment)
Set the name and comment of a config.
Definition: manage_sql_configs.c:3689
int config_in_use(config_t config)
Return whether a config is referenced by a task.
Definition: manage_sql_configs.c:3280
int trash_config_in_use(config_t config)
Return whether a trashcan config is referenced by a task.
Definition: manage_sql_configs.c:3310
int config_iterator_predefined(iterator_t *iterator)
Get predefined status from a config iterator.
Definition: manage_sql_configs.c:3264
int create_config(const char *config_id, const char *proposed_name, int make_name_unique, const char *comment, int all_selector, const array_t *selectors, const array_t *preferences, const char *usage_type, config_t *config, char **name)
Create a config.
Definition: manage_sql_configs.c:2589
int manage_set_config_nvts(config_t config, const char *family, GPtrArray *selected_nvts)
Set the NVT's selected for a single family of a config.
Definition: manage_sql_configs.c:3776
void update_config_preference(const char *config_id, const char *type, const char *preference_name, const char *new_value, gboolean insert)
Update or optionally insert a NVT preference.
Definition: manage_sql_configs.c:4168
preference_t * get_nvt_preference_by_id(const char *nvt_oid, const char *find_id, const char *check_name, const char *check_type, const char *value)
Gets an NVT preference by id or by name.
Definition: manage_sql_configs.c:2176
int trash_config_writable(config_t config)
Return whether a trashcan config is writable.
Definition: manage_sql_configs.c:3326
int config_nvts_growing(config_t config)
Get the NVT growth status of a config.
Definition: manage_sql_configs.c:258
char * config_nvt_timeout(config_t config, const char *oid)
Get the timeout value for an NVT in a config.
Definition: manage_sql_configs.c:2714
int config_iterator_family_count(iterator_t *iterator)
Get the family count from a config iterator.
Definition: manage_sql_configs.c:3190
int config_writable(config_t config)
Return whether a config can be modified.
Definition: manage_sql_configs.c:3297
int manage_set_config_preference(config_t config, const char *nvt, const char *name, const char *value_64)
Set a preference of a config.
Definition: manage_sql_configs.c:3624
int config_iterator_nvt_count(iterator_t *iterator)
Get the nvt count from a config iterator.
Definition: manage_sql_configs.c:3206
int trash_config_readable_uuid(const gchar *config_id)
Return whether a trashcan config is readable.
Definition: manage_sql_configs.c:3339
int config_iterator_families_growing(iterator_t *iterator)
Get the families growing state from a config iterator.
Definition: manage_sql_configs.c:3222
char * config_nvt_selector(config_t config)
Return the NVT selector associated with a config.
Definition: manage_sql_configs.c:3490
void init_config_preference_iterator(iterator_t *iterator, config_t config)
Initialise a preference iterator.
Definition: manage_sql_configs.c:3358
int config_iterator_nvts_growing(iterator_t *iterator)
Get the NVTs growing state from a config iterator.
Definition: manage_sql_configs.c:3238
void init_config_timeout_iterator(iterator_t *iterator, config_t config)
Initialise a config timeout iterator.
Definition: manage_sql_configs.c:4111
int config_families_growing(config_t config)
Get the family growth status of a config.
Definition: manage_sql_configs.c:273
int delete_config(const char *config_id, int ultimate)
Delete a config.
Definition: manage_sql_configs.c:2928
int init_config_iterator(iterator_t *iterator, const get_data_t *get)
Initialise a scan config iterator.
Definition: manage_sql_configs.c:3149
int config_count(const get_data_t *get)
Count the number of scan configs.
Definition: manage_sql_configs.c:3076
void init_user_config_iterator(iterator_t *iterator, config_t config, int trash, int ascending, const char *sort_field)
Initialise a config iterator, limited to user's configs.
Definition: manage_sql_configs.c:3102
gboolean find_config_with_permission(const char *uuid, config_t *config, const char *permission)
Find a config for a set of permissions, given a UUID.
Definition: manage_sql_configs.c:2081
int manage_set_config_families(config_t config, GPtrArray *growing_all_families, GPtrArray *static_all_families, GPtrArray *growing_families, int grow_families, gchar **rejected_family)
Refresh NVT selection of a config from given families.
Definition: manage_sql_configs.c:928
void manage_modify_config_cancel()
Cancels a manage_config command and rolls back the changes.
Definition: manage_sql_configs.c:900
int copy_config(const char *name, const char *comment, const char *config_id, const char *usage_type, config_t *new_config)
Create a config from an existing config.
Definition: manage_sql_configs.c:2833
Command data for a get command.
Definition: manage_get.h:35
A generic SQL iterator structure.
Definition: iterator.h:50
An NVT selector.
Definition: manage_configs.h:39
char * name
Name of NVT selector.
Definition: manage_configs.h:40
char * type
Name of NVT selector.
Definition: manage_configs.h:41
int include
Whether family/NVT is included or excluded.
Definition: manage_configs.h:42
char * family_or_nvt
Family or NVT that this selector selects.
Definition: manage_configs.h:43
An NVT preference.
Definition: manage_preferences.h:33