OpenVAS Manager  7.0.3~git
manage.h
Go to the documentation of this file.
1 /* OpenVAS Manager
2  * $Id$
3  * Description: Headers for OpenVAS Manager: the Manage library.
4  *
5  * Authors:
6  * Matthew Mundell <matthew.mundell@greenbone.net>
7  * Timo Pollmeier <timo.pollmeier@greenbone.net>
8  *
9  * Copyright:
10  * Copyright (C) 2009-2013 Greenbone Networks GmbH
11  *
12  * This program is free software; you can redistribute it and/or
13  * modify it under the terms of the GNU General Public License
14  * as published by the Free Software Foundation; either version 2
15  * of the License, or (at your option) any later version.
16  *
17  * This program is distributed in the hope that it will be useful,
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20  * GNU General Public License for more details.
21  *
22  * You should have received a copy of the GNU General Public License
23  * along with this program; if not, write to the Free Software
24  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
25  */
26 
27 #ifndef OPENVAS_MANAGER_MANAGE_H
28 #define OPENVAS_MANAGER_MANAGE_H
29 
30 #include "iterator.h"
31 
32 #include <stdio.h>
33 #include <glib.h>
34 #include <gnutls/gnutls.h>
35 
36 #include <openvas/misc/openvas_auth.h>
37 #include <openvas/base/array.h> /* for array_t */
38 #include <openvas/base/credentials.h>
39 #include <openvas/base/nvti.h> /* for nvti_t */
40 #include <openvas/base/openvas_networking.h>
41 #include <openvas/osp/osp.h>
42 #include <openvas/misc/openvas_server.h>
43 
47 #define ALL_LOG_LEVELS (G_LOG_LEVEL_MASK \
48  | G_LOG_FLAG_FATAL \
49  | G_LOG_FLAG_RECURSION)
50 
54 #ifndef g_info
55 #define g_info(...) g_log (G_LOG_DOMAIN, \
56  G_LOG_LEVEL_INFO, \
57  __VA_ARGS__)
58 #endif /* g_info not defined */
59 
63 typedef struct
64 {
65  gchar *name;
66  gchar *value;
67 } name_value_t;
68 
69 int
70 init_manage (GSList*, int, const gchar *, int, int, int, int, void (*) (),
71  int (*) (openvas_connection_t *, gchar *),
72  int);
73 
74 int
75 init_manage_helper (GSList *, const gchar *, int, void (*) ());
76 
77 void
78 init_manage_process (int, const gchar*);
79 
80 void
81 cleanup_manage_process (gboolean);
82 
83 void
85 
86 void
88 
89 
90 /* Commands. */
91 
95 typedef struct
96 {
97  gchar *name;
98  gchar *summary;
99 } command_t;
100 
104 extern command_t omp_commands[];
105 
106 
107 /* Certificate and key management. */
108 
109 gchar*
110 truncate_certificate (const gchar*);
111 
112 gchar*
113 truncate_private_key (const gchar*);
114 
115 int
116 get_certificate_info (const gchar*, time_t*, time_t*, gchar**, gchar**);
117 
118 gchar *
119 certificate_iso_time (time_t);
120 
121 const gchar *
122 certificate_time_status (time_t, time_t);
123 
124 
125 /* Credentials. */
126 
127 extern credentials_t current_credentials;
128 
129 int
130 authenticate (credentials_t*);
131 
132 
133 /* Database. */
134 
135 int
136 manage_backup_db (const gchar *);
137 
138 int
140 
141 int
143 
144 int
146 
147 int
149 
150 int
152 
153 int
155 
156 char *
157 port_name_formatted (const char *);
158 
159 void
160 set_db_version (int version);
161 
162 char *
163 manage_port_name (int, const char *);
164 
165 int
166 manage_migrate (GSList*, const gchar*);
167 
168 int
169 manage_encrypt_all_credentials (GSList *, const gchar *);
170 
171 int
172 manage_decrypt_all_credentials (GSList *, const gchar *);
173 
174 void
175 manage_session_set_timezone (const char *);
176 
177 void
179 
180 void
181 manage_transaction_stop (gboolean);
182 
183 
184 /* Task structures. */
185 
186 extern short scanner_active;
187 
192 typedef struct
193 {
194  unsigned int number;
195  port_protocol_t protocol;
196  char* string;
197 } port_t;
198 
203 typedef struct
204 {
205  char* host;
207  char* description;
208  char* oid;
209 } message_t;
210 
211 
218 typedef enum
219 {
233 } task_status_t;
234 
235 /*
236  * Minimum value for number of reports to keep on auto_delete
237  */
238 #define AUTO_DELETE_KEEP_MIN 2
239 
240 /*
241  * Maximum value for number of reports to keep on auto_delete
242  */
243 #define AUTO_DELETE_KEEP_MAX 1200
244 
245 
252 typedef enum
253 {
259 } alive_test_t;
260 
267 typedef enum scanner_type
268 {
276 
277 typedef long long int agent_t;
278 typedef long long int config_t;
279 typedef long long int credential_t;
280 typedef long long int alert_t;
281 typedef long long int filter_t;
282 typedef long long int group_t;
283 typedef long long int host_t;
284 typedef long long int tag_t;
285 typedef long long int target_t;
286 typedef long long int task_t;
287 typedef long long int result_t;
288 typedef long long int report_t;
289 typedef long long int report_host_t;
290 typedef long long int report_format_t;
291 typedef long long int report_format_param_t;
292 typedef long long int role_t;
293 typedef long long int note_t;
294 typedef long long int nvt_t;
295 typedef long long int override_t;
296 typedef long long int permission_t;
297 typedef long long int port_list_t;
298 typedef long long int port_range_t;
299 typedef long long int schedule_t;
300 typedef long long int scanner_t;
301 typedef long long int setting_t;
302 typedef long long int user_t;
303 
304 
305 /* OMP GET. */
306 
310 typedef struct
311 {
312  int details;
313  char *filt_id;
314  char *filter;
317  char *id;
318  int trash;
319  gchar *type;
320  gchar *subtype;
323  int minimal;
324 } get_data_t;
325 
326 void
328 
331 
332 const char*
334 
335 const char*
337 
338 const char*
340 
341 const char*
343 
344 const char*
346 
347 const char*
349 
350 user_t
352 
353 
354 /* Resources. */
355 
356 int
357 manage_resource_name (const char *, const char *, char **);
358 
359 int
360 manage_trash_resource_name (const char *, const char *, char **);
361 
362 int
363 resource_count (const char *, const get_data_t *);
364 
365 int
366 resource_id_exists (const char *, const char *);
367 
368 int
369 trash_id_exists (const char *, const char *);
370 
371 gboolean
372 find_resource (const char*, const char*, resource_t*);
373 
374 const char *
375 type_name_plural (const char*);
376 
377 const char *
378 type_name (const char*);
379 
380 int
381 type_is_scap (const char*);
382 
383 
384 /* Events and Alerts. */
385 
389 #define ALERT_MESSAGE_INCLUDE \
390  "Task '$n': $e\n" \
391  "\n" \
392  "After the event $e,\n" \
393  "the following condition was met: $c\n" \
394  "\n" \
395  "This email escalation is configured to apply report format '$r'.\n" \
396  "Full details and other report formats are available on the scan engine.\n" \
397  "\n" \
398  "$t" \
399  "\n" \
400  "$i" \
401  "\n" \
402  "\n" \
403  "Note:\n" \
404  "This email was sent to you as a configured security scan escalation.\n" \
405  "Please contact your local system administrator if you think you\n" \
406  "should not have received it.\n"
407 
411 #define SECINFO_ALERT_MESSAGE_INCLUDE \
412  "Task '$n': $e\n" \
413  "\n" \
414  "After the event $e,\n" \
415  "the following condition was met: $c\n" \
416  "\n" \
417  "This email escalation is configured to apply report format '$r'.\n" \
418  "Full details and other report formats are available on the scan engine.\n" \
419  "\n" \
420  "$t" \
421  "\n" \
422  "$i" \
423  "\n" \
424  "\n" \
425  "Note:\n" \
426  "This email was sent to you as a configured security scan escalation.\n" \
427  "Please contact your local system administrator if you think you\n" \
428  "should not have received it.\n"
429 
433 #define ALERT_MESSAGE_ATTACH \
434  "Task '$n': $e\n" \
435  "\n" \
436  "After the event $e,\n" \
437  "the following condition was met: $c\n" \
438  "\n" \
439  "This email escalation is configured to attach report format '$r'.\n" \
440  "Full details and other report formats are available on the scan engine.\n" \
441  "\n" \
442  "$t" \
443  "\n" \
444  "Note:\n" \
445  "This email was sent to you as a configured security scan escalation.\n" \
446  "Please contact your local system administrator if you think you\n" \
447  "should not have received it.\n"
448 
452 #define SECINFO_ALERT_MESSAGE_ATTACH \
453  "Task '$n': $e\n" \
454  "\n" \
455  "After the event $e,\n" \
456  "the following condition was met: $c\n" \
457  "\n" \
458  "This email escalation is configured to attach report format '$r'.\n" \
459  "Full details and other report formats are available on the scan engine.\n" \
460  "\n" \
461  "$t" \
462  "\n" \
463  "Note:\n" \
464  "This email was sent to you as a configured security scan escalation.\n" \
465  "Please contact your local system administrator if you think you\n" \
466  "should not have received it.\n"
467 
471 typedef enum
472 {
477 } event_t;
478 
482 typedef enum
483 {
497 
501 typedef enum
502 {
510 
511 int
512 manage_check_alerts (GSList *, const gchar *);
513 
514 int
515 create_alert (const char*, const char*, const char*, event_t, GPtrArray*,
516  alert_condition_t, GPtrArray*, alert_method_t, GPtrArray*,
517  alert_t*);
518 
519 int
520 copy_alert (const char*, const char*, const char*, alert_t*);
521 
522 int
523 modify_alert (const char*, const char*, const char*, const char*,
524  event_t, GPtrArray*, alert_condition_t, GPtrArray*,
525  alert_method_t, GPtrArray*);
526 
527 int
528 delete_alert (const char *, int);
529 
530 char *
532 
533 gboolean
534 find_alert_with_permission (const char *, alert_t *, const char *);
535 
536 int
537 manage_alert (const char *, const char *, event_t, const void*, gchar **);
538 
539 int
540 manage_test_alert (const char *, gchar **);
541 
542 int
544 
545 int
547 
548 int
550 
551 int
553 
554 int
555 alert_count (const get_data_t *);
556 
557 int
559 
560 int
562 
563 int
565 
566 int
568 
569 char *
571 
572 char *
574 
575 int
577 
578 int
580 
581 const char*
583 
584 gchar*
586 
587 const char*
589 
590 gchar*
591 event_description (event_t, const void *, const char *);
592 
593 const char*
595 
597 alert_condition_from_name (const char*);
598 
599 event_t
600 event_from_name (const char*);
601 
603 alert_method_from_name (const char*);
604 
605 void
606 init_alert_data_iterator (iterator_t *, alert_t, int, const char *);
607 
608 const char*
610 
611 const char*
613 
614 void
616 
617 const char*
619 
620 const char*
622 
623 int
625 
626 void
628 
629 alert_t
631 
632 const char*
634 
635 const char*
637 
638 
639 /* Task global variables and preprocessor variables. */
640 
645 
646 extern report_t current_report;
647 
648 
649 /* Task code specific to the representation of tasks. */
650 
651 unsigned int
652 task_count (const get_data_t *);
653 
654 int
656 
659 
660 const char *
662 
663 int
665 
666 int
668 
669 const char *
671 
672 const char *
674 
675 report_t
677 
678 const char *
680 
681 scanner_t
683 
684 unsigned int
685 task_id (task_t);
686 
687 int
688 task_uuid (task_t, char **);
689 
690 int
692 
693 int
695 
696 int
698 
699 int
701 
702 int
704 
705 int
707 
708 int
710 
711 char*
713 
714 char*
715 task_name (task_t);
716 
717 char*
719 
720 char*
722 
723 scanner_t
725 
726 int
728 
729 config_t
731 
732 char*
734 
735 char*
737 
738 int
740 
741 void
743 
744 target_t
746 
747 int
749 
750 void
752 
753 void
754 set_task_hosts_ordering (task_t, const char *);
755 
756 void
758 
759 char*
761 
762 void
763 set_task_description (task_t, char*, gsize);
764 
767 
768 void
770 
771 int
773 
774 report_t
776 
777 int
779 
780 void
781 set_task_start_time (task_t, char*);
782 
783 void
785 
786 void
788 
789 void
790 set_task_end_time (task_t task, char* time);
791 
792 void
794 
795 void
797 
798 int
799 set_task_alerts (task_t, array_t*, gchar**);
800 
801 void
803 
804 int
805 set_task_groups (task_t, array_t*, gchar**);
806 
807 int
809 
810 int
811 set_task_schedule_periods (const gchar *, int);
812 
813 int
815 
816 unsigned int
818 
819 int
821 
822 const char *
823 task_iterator_trend_counts (iterator_t *, int, int, int, double, int, int, int,
824  double);
825 
826 const char *
827 task_trend (task_t, int, int);
828 
829 int
831 
832 int
833 task_schedule_periods_uuid (const gchar *);
834 
837 
839 task_schedule_uuid (const gchar *);
840 
841 int
843 
844 time_t
845 task_schedule_next_time_uuid (const gchar *);
846 
847 int
849 
850 char *
851 task_severity (task_t, int, int, int);
852 
853 double
854 task_severity_double (task_t, int, int, int);
855 
856 int
858 
859 int
861 
862 int
864 
865 int
867 
868 int
870 
871 int
873 
874 void
875 free_tasks ();
876 
877 task_t
878 make_task (char*, char*, int, int);
879 
880 void
881 make_task_complete (const char *);
882 
883 int
884 copy_task (const char*, const char*, const char *, int, task_t*);
885 
886 int
887 load_tasks ();
888 
889 int
890 save_tasks ();
891 
892 gboolean
893 find_task (const char* id, task_t*);
894 
895 gboolean
896 find_task_with_permission (const char*, task_t*, const char *);
897 
898 gboolean
899 find_trash_task_with_permission (const char*, task_t*, const char *);
900 
901 void
903 
904 int
905 set_task_parameter (task_t, const char*, char*);
906 
907 char*
909 
910 int
911 set_task_observers (task_t, const gchar *);
912 
913 int
914 request_delete_task_uuid (const char *, int);
915 
916 int
918 
919 int
920 delete_task (task_t, int);
921 
922 int
924 
925 /* For otp.c. */
926 int
927 delete_task_lock (task_t, int);
928 
929 void
930 append_to_task_comment (task_t, const char*, int);
931 
932 void
933 append_to_task_name (task_t, const char*, int);
934 
935 void
936 add_task_description_line (task_t, const char*, size_t);
937 
938 void
939 set_scan_ports (report_t, const char*, unsigned int, unsigned int);
940 
941 void
942 append_task_open_port (task_t task, const char *, const char*);
943 
944 void
945 manage_task_update_file (task_t, const char *, const void *);
946 
947 int
948 manage_task_remove_file (task_t, const char *);
949 
950 void
951 init_config_file_iterator (iterator_t*, const char*, const char*);
952 
953 const char*
955 
956 int
958 
959 void
961 
962 const char*
964 
965 const char*
967 
968 int
970 
971 
972 /* General severity related facilities. */
973 
974 int
975 severity_in_level (double, const char *);
976 
977 int
978 severity_matches_ov (double, double);
979 
980 const char*
981 severity_to_level (double, int);
982 
983 const char*
984 severity_to_type (double);
985 
986 typedef struct
987 {
988  int* counts;
989  int total;
990  double max;
992 
993 int
994 severity_data_index (double);
995 
996 double
997 severity_data_value (int);
998 
999 void
1001 
1002 void
1004 
1005 void
1007 
1008 void
1010 
1011 int
1012 severity_data_range_count (const severity_data_t*, double, double);
1013 
1014 void
1015 severity_data_level_counts (const severity_data_t*, const gchar*,
1016  int*, int*, int*, int*, int*, int*, int*);
1017 
1018 
1019 /* General task facilities. */
1020 
1021 const char*
1023 
1024 int
1025 start_task (const char *, char**);
1026 
1027 int
1028 stop_task (const char *);
1029 
1030 int
1031 resume_task (const char *, char **);
1032 
1033 int
1034 move_task (const char*, const char*);
1035 
1036 /* Iteration. */
1037 
1038 void
1040 
1041 gboolean
1042 next (iterator_t*);
1043 
1044 
1045 /* Access control. */
1046 
1047 int
1048 user_may (const char *);
1049 
1050 extern int
1051 user_can_everything (const char *);
1052 
1053 extern int
1054 user_can_super_everyone (const char *);
1055 
1056 extern int
1057 user_has_super (const char *, user_t);
1058 
1059 
1060 /* Results. */
1061 
1065 #define LSC_FAMILY_LIST \
1066  "'AIX Local Security Checks'," \
1067  " 'CentOS Local Security Checks'," \
1068  " 'Debian Local Security Checks'," \
1069  " 'Fedora Local Security Checks'," \
1070  " 'FreeBSD Local Security Checks'," \
1071  " 'Gentoo Local Security Checks'," \
1072  " 'HP-UX Local Security Checks'," \
1073  " 'Mac OS X Local Security Checks'," \
1074  " 'Mandrake Local Security Checks'," \
1075  " 'Red Hat Local Security Checks'," \
1076  " 'Solaris Local Security Checks'," \
1077  " 'SuSE Local Security Checks'," \
1078  " 'Ubuntu Local Security Checks'," \
1079  " 'Windows : Microsoft Bulletins'," \
1080  " 'Privilege escalation'"
1081 
1082 gboolean
1083 find_result_with_permission (const char*, result_t*, const char *);
1084 
1085 int
1086 result_uuid (result_t, char **);
1087 
1088 int
1089 result_detection_reference (result_t, char **, char **, char **, char **,
1090  char **);
1091 
1092 /* Reports. */
1093 
1095 #define OVAS_MANAGE_REPORT_ID_LENGTH UUID_LEN_STR
1096 
1100 #define APPLY_OVERRIDES_DEFAULT 0
1101 
1105 #define QOD_DEFAULT 75
1106 
1110 #define MIN_QOD_DEFAULT 70
1111 
1112 void
1114 
1115 void
1117 
1118 void
1119 reports_build_count_cache (int, int*);
1120 
1121 void
1123  const char*);
1124 
1125 int
1127 
1128 int
1130 
1131 user_t
1133 
1134 void
1135 report_cache_counts (report_t, int, int, const char*);
1136 
1137 void
1138 report_clear_count_cache (report_t, int, int, const char*);
1139 
1140 double
1141 report_severity (report_t, int, int);
1142 
1143 int
1145 
1146 int
1148 
1149 gboolean
1150 find_report_with_permission (const char *, report_t *, const char *);
1151 
1152 report_t
1153 make_report (task_t, const char *, task_status_t);
1154 
1155 int
1156 qod_from_type (const char *);
1157 
1158 char *
1159 nvt_severity (const char *, const char *);
1160 
1161 result_t
1162 make_result (task_t, const char*, const char*, const char*,
1163  const char*, const char*);
1164 
1165 result_t
1166 make_osp_result (task_t, const char*, const char*, const char*, const char*,
1167  const char *, const char *, int);
1168 
1169 result_t
1170 make_cve_result (task_t, const char*, const char*, double, const char*);
1171 
1175 typedef struct
1176 {
1177  char *description;
1178  char *host;
1179  char *nvt_oid;
1181  char *port;
1182  char *qod;
1183  char *qod_type;
1184  char *severity;
1185  char *threat;
1187 
1191 typedef struct
1192 {
1193  char *ip;
1194  char *name;
1195  char *source_desc;
1196  char *source_name;
1197  char *source_type;
1198  char *value;
1199 } host_detail_t;
1200 
1201 void
1203 
1204 void
1205 insert_report_host_detail (report_t, const char *, const char *, const char *,
1206  const char *, const char *, const char *);
1207 
1208 int
1209 manage_report_host_detail (report_t, const char *, const char *);
1210 
1211 void
1213 
1214 void
1215 hosts_set_max_severity (report_t, int*, int*);
1216 
1217 void
1218 hosts_set_details (report_t report);
1219 
1220 void
1222 
1223 void
1225 
1226 int
1227 create_report (array_t*, const char *, const char *, const char *, const char *,
1228  const char *, const char *, array_t*, array_t*, array_t*,
1229  char **);
1230 
1231 void
1233 
1234 char*
1236 
1237 void
1238 report_set_slave_uuid (report_t, const gchar *);
1239 
1240 void
1241 report_set_slave_name (report_t, const gchar *);
1242 
1243 void
1244 report_set_slave_host (report_t, const gchar *);
1245 
1246 void
1248 
1249 void
1250 report_set_slave_username (report_t, const gchar *);
1251 
1252 void
1253 report_set_slave_password (report_t, const gchar *);
1254 
1255 void
1256 report_set_source_iface (report_t, const gchar *);
1257 
1258 int
1260 
1261 gchar*
1263 
1264 gchar*
1265 report_path_task_uuid (gchar*);
1266 
1267 gboolean
1269 
1270 int
1272 
1273 int
1275 
1276 char *
1278 
1279 int
1280 report_scan_result_count (report_t, const char*, const char*, int, const char*,
1281  const char*, int, int, int*);
1282 
1283 int
1284 report_counts (const char*, int*, int*, int*, int*, int*, int*, double*,
1285  int, int, int);
1286 
1287 int
1288 report_counts_id (report_t, int*, int*, int*, int*, int*, int*, double*,
1289  const get_data_t*, const char*);
1290 
1291 int
1292 report_counts_id_no_filt (report_t, int*, int*, int*, int*, int*, int*,
1293  double*, const get_data_t*, const char*);
1294 
1295 gchar*
1296 report_results_filter_term (int, int, int, int, int);
1297 
1298 get_data_t*
1299 report_results_get_data (int, int, int, int, int);
1300 
1301 char*
1303 
1304 int
1306 
1307 char*
1308 scan_start_time_uuid (const char *);
1309 
1310 char*
1311 scan_end_time_uuid (const char *);
1312 
1313 void
1314 set_scan_start_time (report_t, const char*);
1315 
1316 void
1317 set_scan_start_time_otp (report_t, const char*);
1318 
1319 void
1321 
1322 char*
1324 
1325 void
1326 set_scan_end_time (report_t, const char*);
1327 
1328 void
1329 set_scan_end_time_otp (report_t, const char*);
1330 
1331 void
1333 
1334 void
1335 set_scan_host_start_time (report_t, const char*, const char*);
1336 
1337 void
1338 set_scan_host_start_time_otp (report_t, const char*, const char*);
1339 
1340 int
1341 scan_host_end_time (report_t, const char*);
1342 
1343 void
1344 set_scan_host_end_time (report_t, const char*, const char*);
1345 
1346 void
1347 set_scan_host_end_time_otp (report_t, const char*, const char*);
1348 
1349 int
1350 report_timestamp (const char*, gchar**);
1351 
1352 int
1353 modify_report (const char*, const char*);
1354 
1355 int
1356 delete_report (const char *, int);
1357 
1358 int
1359 report_count (const get_data_t *);
1360 
1361 int
1363 
1364 void
1366 
1367 void
1369 
1370 const char*
1372 
1373 int
1374 result_count (const get_data_t *, report_t, const char*);
1375 
1376 int
1378  const char*, const gchar *);
1379 
1380 gboolean
1382 
1383 result_t
1385 
1386 const char*
1388 
1389 const char*
1391 
1392 const char*
1394 
1395 const char*
1397 
1398 const char*
1400 
1401 const char*
1403 
1404 const char*
1406 
1407 const char*
1409 
1410 const char*
1412 
1413 const char*
1415 
1416 const char*
1418 
1419 const char*
1421 
1422 const char*
1424 
1425 task_t
1427 
1428 report_t
1430 
1431 const char*
1433 
1434 const char*
1436 
1437 const char*
1439 
1440 double
1442 
1443 const char*
1445 
1446 const char*
1448 
1449 const char*
1451 
1452 const char*
1454 
1455 const char*
1457 
1458 void
1460 
1461 const char*
1463 
1464 const char*
1466 
1467 const char*
1469 
1470 int
1472 
1473 int
1475 
1476 int
1477 collate_message_type (void* data, int, const void*, int, const void*);
1478 
1479 void
1481 
1482 int
1483 report_progress (report_t, task_t, gchar **);
1484 
1485 gchar *
1487  int, int, const char *,
1488  gsize *, gchar **, gchar **, gchar **, gchar **, gchar **);
1489 
1490 int
1492  int, int, int, int,
1493  gboolean (*) (const char *,
1494  int (*) (const char*, void*),
1495  void*),
1496  int (*) (const char *, void*), void *, const char *,
1497  const char *, const char *, int, const char *,
1498  const char *, int, int, const gchar *);
1499 
1500 
1501 
1502 /* Reports. */
1503 
1504 gchar *
1505 app_location (report_host_t, const gchar *);
1506 
1507 void
1509  const char *, const char *, int, const char *);
1510 
1511 double
1513 
1514 const char*
1516 
1517 const char*
1519 
1520 const char*
1522 
1523 
1524 /* Targets. */
1525 
1531 #define MANAGE_ABSOLUTE_MAX_IPS_PER_TARGET 70000
1532 
1536 #define MANAGE_MAX_HOSTS 4095
1537 
1541 #define MANAGE_USER_MAX_HOSTS 16777216
1542 
1543 int
1544 manage_max_hosts ();
1545 
1546 void
1547 manage_filter_controls (const gchar *, int *, int *, gchar **, int *);
1548 
1549 void
1550 manage_report_filter_controls (const gchar *, int *, int *, gchar **, int *,
1551  int *, gchar **, gchar **, gchar **, gchar **,
1552  int *, int *, int *, int *, int *, gchar **);
1553 
1554 gchar *
1555 manage_clean_filter (const gchar *);
1556 
1557 gchar *
1558 manage_clean_filter_remove (const gchar *, const gchar *);
1559 
1560 int
1561 manage_count_hosts (const char *, const char *);
1562 
1563 gboolean
1564 find_target_with_permission (const char *, target_t *, const char *);
1565 
1566 int
1567 create_target (const char*, const char*, const char*, const char*, const char*,
1568  const char *, const char*, credential_t, const char*,
1569  credential_t, credential_t, credential_t, const char *,
1570  const char *, const char *, int, target_t*);
1571 
1572 int
1573 copy_target (const char*, const char*, const char *, target_t*);
1574 
1575 int
1576 modify_target (const char*, const char*, const char*, const char*, const char*,
1577  const char*, const char*, const char*, const char*, const char*,
1578  const char*, const char *, const char*, const char*);
1579 
1580 int
1581 delete_target (const char*, int);
1582 
1583 int
1584 target_count (const get_data_t *);
1585 
1586 void
1588 
1589 void
1591 
1592 int
1594 
1595 const char*
1597 
1598 const char*
1600 
1601 const char*
1603 
1604 const char*
1606 
1607 const char*
1609 
1610 int
1612 
1613 const char*
1615 
1616 int
1618 
1619 int
1621 
1622 int
1624 
1625 int
1627 
1628 int
1630 
1631 int
1633 
1634 int
1636 
1637 const char*
1639 
1640 const char*
1642 
1643 int
1645 
1646 const char*
1648 
1649 char*
1651 
1652 char*
1654 
1655 char*
1657 
1658 char*
1660 
1661 int
1663 
1664 char*
1666 
1667 char*
1669 
1670 char*
1672 
1673 char*
1675 
1676 char*
1678 
1679 char*
1681 
1682 char*
1684 
1685 char*
1687 
1688 int
1690 
1691 int
1693 
1694 int
1696 
1697 int
1699 
1700 char*
1701 target_ssh_credential_name (const char *);
1702 
1703 void
1705 
1706 const char*
1708 
1709 const char*
1711 
1712 int
1714 
1716 target_credential (target_t, const char*);
1717 
1719 trash_target_credential (target_t, const char*);
1720 
1721 int
1723 
1724 int
1725 target_login_port (target_t, const char*);
1726 
1727 int
1728 trash_target_login_port (target_t, const char*);
1729 
1730 
1731 
1732 /* Configs. */
1733 
1737 typedef struct
1738 {
1739  char *name;
1740  char *type;
1741  char *value;
1742  char *nvt_name;
1743  char *nvt_oid;
1744  array_t *alts;
1746  char *hr_name;
1747 } preference_t;
1748 
1752 typedef struct
1753 {
1754  char *name;
1755  char *type;
1756  int include;
1758 } nvt_selector_t;
1759 
1760 int
1761 create_config (const char*, const char*, const array_t*, const array_t*,
1762  const char*, config_t*, char**);
1763 
1764 int
1765 create_config_from_scanner (const char*, const char *, const char *,
1766  char **);
1767 
1768 int
1769 copy_config (const char*, const char*, const char *, config_t*);
1770 
1771 int
1772 delete_config (const char*, int);
1773 
1774 int
1775 sync_config (const char *);
1776 
1777 gboolean
1778 find_config_with_permission (const char*, config_t*, const char *);
1779 
1780 gboolean
1781 find_config (const char*, config_t*);
1782 
1783 char *
1785 
1786 int
1788 
1789 scanner_t
1791 
1792 char *
1793 config_nvt_timeout (config_t, const char *);
1794 
1795 void
1796 init_user_config_iterator (iterator_t*, config_t, int, int, const char*);
1797 
1798 int
1800 
1801 const char*
1803 
1804 int
1806 
1807 int
1809 
1810 int
1812 
1813 int
1815 
1816 int
1818 
1819 char*
1821 
1822 int
1824 
1825 int
1827 
1828 int
1830 
1831 int
1832 config_count (const get_data_t *);
1833 
1834 int
1836 
1837 int
1839 
1840 int
1841 trash_config_readable_uuid (const gchar *);
1842 
1843 int
1845 
1846 int
1848 
1849 int
1851 
1852 int
1853 modify_task_check_config_scanner (task_t, const char *, const char *);
1854 
1855 int
1856 manage_set_config_preference (config_t, const char*, const char*,
1857  const char*);
1858 
1859 void
1861 
1862 const char*
1864 
1865 const char*
1867 
1868 const char*
1870 
1871 const char*
1873 
1874 const char*
1876 
1877 int
1878 manage_set_config (config_t, const char*, const char *, const char *);
1879 
1880 int
1881 manage_set_config_nvts (config_t, const char*, GPtrArray*);
1882 
1883 int
1884 manage_set_config_families (config_t, GPtrArray*, GPtrArray*, GPtrArray*,
1885  int);
1886 
1887 void
1889 
1890 const char*
1892 
1893 const char*
1895 
1896 const char*
1898 
1899 
1900 
1901 /* NVT's. */
1902 
1903 char *
1905 
1906 char *
1907 nvt_oid (const char *);
1908 
1909 char*
1911 
1912 void
1913 set_nvts_feed_version (const char*);
1914 
1915 nvt_t
1916 make_nvt_from_nvti (const nvti_t*, int);
1917 
1918 gboolean
1919 find_nvt (const char*, nvt_t*);
1920 
1921 int
1922 init_nvt_info_iterator (iterator_t*, get_data_t*, const char*);
1923 
1924 int
1925 nvt_info_count (const get_data_t *);
1926 
1927 void
1928 init_nvt_iterator (iterator_t*, nvt_t, config_t, const char*, const char*, int,
1929  const char*);
1930 
1931 void
1932 init_cve_nvt_iterator (iterator_t*, const char *, int, const char*);
1933 
1934 const char*
1936 
1937 const char*
1939 
1940 const char*
1942 
1943 const char*
1945 
1946 const char*
1948 
1949 const char*
1951 
1952 const char*
1954 
1955 const char*
1957 
1958 const char*
1960 
1961 int
1963 
1964 const char*
1966 
1967 const char*
1969 
1970 const char*
1972 
1973 const char*
1975 
1976 const char*
1978 
1979 int
1980 family_nvt_count (const char *);
1981 
1982 void
1983 manage_complete_nvt_cache_update (GList *, GList *, int);
1984 
1985 
1986 /* NVT selectors. */
1987 
1991 #define NVT_SELECTOR_TYPE_ALL 0
1992 
1996 #define NVT_SELECTOR_TYPE_FAMILY 1
1997 
2001 #define NVT_SELECTOR_TYPE_NVT 2
2002 
2006 #define NVT_SELECTOR_TYPE_ANY 999
2007 
2008 void
2009 init_family_iterator (iterator_t*, int, const char*, int);
2010 
2011 const char*
2013 
2014 int
2015 nvt_selector_family_growing (const char *, const char *, int);
2016 
2017 int
2018 nvt_selector_family_count (const char*, int);
2019 
2020 int
2021 nvt_selector_nvt_count (const char *, const char *, int);
2022 
2023 void
2024 init_nvt_selector_iterator (iterator_t*, const char*, config_t, int);
2025 
2026 const char*
2028 
2029 const char*
2031 
2032 int
2034 
2035 int
2037 
2038 
2039 /* NVT preferences. */
2040 
2041 void
2042 manage_nvt_preference_add (const char*, const char*, int);
2043 
2044 void
2046 
2047 void
2049 
2050 const char*
2052 
2053 const char*
2055 
2056 char*
2058 
2059 char*
2061 
2062 char*
2064 
2065 char*
2067 
2068 int
2069 nvt_preference_count (const char *);
2070 
2071 gchar*
2072 get_nvti_xml (iterator_t*, int, int, int, const char*, config_t, int);
2073 
2074 char*
2075 task_preference_value (task_t, const char *);
2076 
2077 int
2078 set_task_preferences (task_t, array_t *);
2079 
2080 void
2082 
2083 const char*
2085 
2086 const char*
2088 
2089 void
2091 
2092 const char*
2094 
2095 const char*
2097 
2098 
2099 /* Credentials. */
2100 
2101 gboolean
2102 find_credential_with_permission (const char*, credential_t*, const char*);
2103 
2104 int
2105 create_credential (const char*, const char*, const char*, const char*,
2106  const char*, const char*, const char*, const char*,
2107  const char*, const char*, const char*, const char*,
2108  credential_t*);
2109 
2110 int
2111 copy_credential (const char*, const char*, const char*,
2112  credential_t*);
2113 
2114 int
2115 modify_credential (const char*, const char*, const char*, const char*,
2116  const char*, const char*, const char*, const char*,
2117  const char*, const char*, const char*, const char*);
2118 
2119 int
2120 delete_credential (const char *, int);
2121 
2122 int
2123 credential_count (const get_data_t *);
2124 
2125 void
2126 set_credential_name (credential_t, const char *);
2127 
2128 void
2129 set_credential_comment (credential_t, const char *);
2130 
2131 int
2132 set_credential_data (credential_t, const char*, const char*);
2133 
2134 void
2135 set_credential_login (credential_t, const char *);
2136 
2137 void
2139 
2140 void
2142 
2143 void
2145 
2146 void
2147 set_credential_password (credential_t, const char *);
2148 
2149 void
2150 set_credential_private_key (credential_t, const char *, const char *);
2151 
2152 void
2153 set_credential_snmp_secret (credential_t, const char *, const char *,
2154  const char *);
2155 
2156 void
2158 
2159 int
2161 
2162 const char*
2164 
2165 const char*
2167 
2168 const char*
2170 
2171 const char*
2173 
2174 const char*
2176 
2177 const char*
2179 
2180 const char*
2182 
2183 const char*
2185 
2186 int
2188 
2189 const char*
2190 credential_full_type (const char*);
2191 
2192 char*
2194 
2195 char*
2197 
2198 char*
2200 
2201 const char*
2203 
2204 char*
2206 
2207 char*
2209 
2210 char*
2212 
2213 char*
2215 
2216 char*
2218 
2219 void
2221 
2222 const char*
2224 
2225 const char*
2227 
2228 int
2230 
2231 void
2233 
2234 const char*
2236 
2237 const char*
2239 
2240 int
2242 
2243 int
2245 
2246 int
2248 
2249 int
2251 
2252 int
2254 
2255 int
2257 
2258 gchar*
2259 credential_value (credential_t, const char*);
2260 
2261 gchar*
2263 
2264 
2265 
2266 /* Agents. */
2267 
2268 int
2269 create_agent (const char*, const char*, const char*, const char*, const char*,
2270  const char*, const char*, agent_t*);
2271 
2272 int
2273 copy_agent (const char*, const char*, const char *, agent_t *);
2274 
2275 int
2276 modify_agent (const char*, const char*, const char*);
2277 
2278 int
2279 delete_agent (const char *, int);
2280 
2281 int
2283 
2284 int
2286 
2287 int
2289 
2290 int
2292 
2293 int
2294 verify_agent (const char *);
2295 
2296 char *
2298 
2299 int
2300 agent_count (const get_data_t *);
2301 
2302 int
2304 
2305 const char*
2307 
2308 gsize
2310 
2311 const char*
2313 
2314 const char*
2316 
2317 const char*
2319 
2320 const char*
2322 
2323 time_t
2325 
2326 const char*
2328 
2329 const char*
2331 
2332 
2333 /* Assets. */
2334 
2335 char *
2336 result_host_asset_id (const char *, result_t);
2337 
2338 char*
2340 
2341 host_t
2342 host_notice (const char *, const char *, const char *, const char *,
2343  const char *, int, int);
2344 
2345 void
2346 init_host_identifier_iterator (iterator_t*, host_t, int, const char*);
2347 
2348 const char*
2350 
2351 const char*
2353 
2354 const char*
2356 
2357 const char*
2359 
2360 int
2362 
2363 const char*
2365 
2366 const char*
2368 
2369 int
2371 
2372 int
2374 
2375 int
2377 
2378 const char*
2380 
2381 int
2382 asset_host_count (const get_data_t *);
2383 
2384 int
2386 
2387 const char*
2389 
2390 int
2392 
2393 const char*
2395 
2396 const char*
2398 
2399 const char*
2401 
2402 const char*
2404 
2405 int
2406 asset_os_count (const get_data_t *);
2407 
2408 int
2409 total_asset_count (const get_data_t *);
2410 
2411 void
2413 
2414 const char*
2416 
2417 void
2419 
2420 const char*
2422 
2423 const char*
2425 
2426 const char*
2428 
2429 const char*
2431 
2432 int
2433 modify_asset (const char *, const char *);
2434 
2435 int
2436 delete_asset (const char *, const char *, int);
2437 
2438 int
2439 create_asset_report (const char *, const char *);
2440 
2441 int
2442 create_asset_host (const char *, const char *, resource_t* );
2443 
2444 
2445 /* Notes. */
2446 
2447 gboolean
2448 find_note_with_permission (const char*, note_t*, const char *);
2449 
2450 int
2451 create_note (const char*, const char*, const char*, const char*, const char*,
2452  const char*, const char*, task_t, result_t, note_t*);
2453 
2454 int
2455 copy_note (const char*, note_t*);
2456 
2457 int
2458 delete_note (const char *, int);
2459 
2460 int
2461 note_uuid (note_t, char **);
2462 
2463 int
2464 modify_note (note_t, const char*, const char*, const char*, const char*,
2465  const char*, const char*, task_t, result_t);
2466 
2467 int
2469 
2470 int
2472 
2473 const char*
2475 
2476 time_t
2478 
2479 time_t
2481 
2482 const char*
2484 
2485 const char*
2487 
2488 const char*
2490 
2491 const char*
2493 
2494 task_t
2496 
2497 result_t
2499 
2500 time_t
2502 
2503 int
2505 
2506 const char*
2508 
2509 const char *
2511 
2512 const char*
2514 
2515 
2516 /* Overrides. */
2517 
2518 gboolean
2519 find_override_with_permission (const char*, override_t*, const char *);
2520 
2521 int
2522 create_override (const char*, const char*, const char*, const char*,
2523  const char*, const char*, const char*, const char*,
2524  const char*, task_t, result_t, override_t*);
2525 
2526 int
2527 override_uuid (override_t, char **);
2528 
2529 int
2530 copy_override (const char*, override_t*);
2531 
2532 int
2533 delete_override (const char *, int);
2534 
2535 int
2536 modify_override (override_t, const char*, const char*, const char*, const char*,
2537  const char*, const char*, const char*, const char*, task_t,
2538  result_t);
2539 
2540 int
2542 
2543 int
2545  task_t);
2546 
2547 const char*
2549 
2550 time_t
2552 
2553 time_t
2555 
2556 const char*
2558 
2559 const char*
2561 
2562 const char*
2564 
2565 const char*
2567 
2568 const char*
2570 
2571 task_t
2573 
2574 result_t
2576 
2577 time_t
2579 
2580 int
2582 
2583 const char*
2585 
2586 const char *
2588 
2589 const char*
2591 
2592 const char*
2594 
2595 
2596 /* Scanner messaging. */
2597 
2598 int
2599 acknowledge_bye ();
2600 
2601 int
2603 
2604 int
2606 
2607 
2608 /* System reports. */
2609 
2613 typedef struct
2614 {
2615  gchar **start;
2616  gchar **current;
2618 
2619 int
2621  const char*);
2622 
2623 void
2625 
2626 gboolean
2628 
2629 const char*
2631 
2632 const char*
2634 
2635 int
2636 manage_system_report (const char *, const char *, const char *, const char *,
2637  const char *, char **);
2638 
2639 int
2640 manage_create_scanner (GSList *, const char *, const char *, const char *,
2641  const char *, const char *, const char *, const char *,
2642  const char *);
2643 
2644 int
2645 manage_modify_scanner (GSList *, const gchar *, const char *, const char *,
2646  const char *, const char *, const char *, const char *,
2647  const char *, const char *);
2648 
2649 int
2650 manage_delete_scanner (GSList *, const gchar *, const gchar *);
2651 
2652 int
2653 manage_verify_scanner (GSList *, const gchar *, const gchar *);
2654 
2655 int
2656 manage_get_scanners (GSList *, const gchar *);
2657 
2658 gboolean
2659 find_scanner (const char *, scanner_t *);
2660 
2661 int
2662 create_scanner (const char*, const char *, const char *, const char *,
2663  const char *, scanner_t *, const char *, const char *);
2664 
2665 int
2666 copy_scanner (const char*, const char*, const char *, scanner_t *);
2667 
2668 int
2669 modify_scanner (const char*, const char*, const char*, const char *,
2670  const char *, const char *, const char *, const char *);
2671 
2672 int
2673 delete_scanner (const char *, int);
2674 
2675 gboolean
2676 find_scanner_with_permission (const char *, scanner_t *, const char *);
2677 
2678 int
2680 
2681 int
2683 
2684 int
2686 
2687 int
2689 
2690 int
2692 
2693 char *
2695 
2696 const char *
2698 
2699 char *
2701 
2702 int
2704 
2705 int
2707 
2708 char *
2710 
2711 char *
2713 
2714 char *
2716 
2717 char*
2719 
2720 char*
2722 
2723 int
2724 scanner_count (const get_data_t *);
2725 
2726 int
2728 
2729 const char*
2731 
2732 int
2734 
2735 int
2737 
2738 const char*
2740 
2743 
2744 int
2746 
2747 const char*
2749 
2750 const char*
2752 
2753 const char*
2755 
2756 void
2758 
2759 const char*
2761 
2762 const char*
2764 
2765 int
2767 
2768 char *
2770 
2771 char *
2773 
2774 int
2775 osp_get_version_from_iterator (iterator_t *, char **, char **, char **, char **,
2776  char **, char **);
2777 
2778 int
2779 osp_get_details_from_iterator (iterator_t *, char **, GSList **);
2780 
2781 osp_connection_t *
2783 
2784 int
2785 verify_scanner (const char *, char **);
2786 
2787 /* Scheduling. */
2788 
2792 #define SCHEDULE_PERIOD 10
2793 
2798 #define SCHEDULE_TIMEOUT_MIN_SECS 20
2799 
2803 #define SCHEDULE_TIMEOUT_DEFAULT 60
2804 
2805 gboolean
2806 find_schedule_with_permission (const char*, schedule_t*, const char*);
2807 
2808 int
2809 create_schedule (const char*, const char *, time_t, time_t, time_t,
2810  time_t, const char*, schedule_t *);
2811 
2812 int
2813 copy_schedule (const char*, const char*, const char *, schedule_t *);
2814 
2815 int
2816 delete_schedule (const char*, int);
2817 
2818 void
2819 manage_auth_allow_all (int);
2820 
2821 gchar*
2823 
2824 void
2825 set_scheduled_user_uuid (gchar* uuid);
2826 
2827 int
2828 manage_schedule (int (*) (openvas_connection_t *, gchar *),
2829  gboolean,
2830  sigset_t *);
2831 
2832 char *
2834 
2835 char *
2837 
2838 int
2840 
2841 int
2843 
2844 int
2845 schedule_info (schedule_t, time_t *, time_t *, int *, int *, int *);
2846 
2847 int
2849 
2850 time_t
2852 
2853 time_t
2855 
2856 time_t
2858 
2859 time_t
2861 
2862 time_t
2864 
2865 const char*
2867 
2868 time_t
2870 
2871 int
2873 
2874 int
2876 
2877 int
2879 
2880 int
2882 
2883 int
2885 
2886 int
2887 schedule_count (const get_data_t *);
2888 
2889 void
2891 
2892 const char*
2894 
2895 const char*
2897 
2898 int
2900 
2901 int
2902 modify_schedule (const char*, const char*, const char *, time_t, time_t, time_t,
2903  time_t, const char *);
2904 
2905 int
2907 
2908 void
2909 set_schedule_timeout (int);
2910 
2911 
2912 /* Report Formats. */
2913 
2914 gboolean
2916  const char *);
2917 
2918 gboolean
2919 lookup_report_format (const char*, report_format_t*);
2920 
2924 typedef struct
2925 {
2926  gchar *fallback;
2927  gchar *name;
2928  gchar *type;
2929  gchar *type_max;
2930  gchar *type_min;
2931  gchar *value;
2933 
2934 int
2935 create_report_format (const char *, const char *, const char *, const char *,
2936  const char *, const char *, int, array_t *, array_t *,
2937  array_t *, const char *, report_format_t *);
2938 
2939 int
2940 copy_report_format (const char *, const char *, report_format_t*);
2941 
2942 int
2943 modify_report_format (const char *, const char *, const char *, const char *,
2944  const char *, const char *, const char *);
2945 
2946 int
2947 delete_report_format (const char *, int);
2948 
2949 int
2950 verify_report_format (const char *);
2951 
2952 char *
2954 
2955 char *
2957 
2958 void
2960 
2961 char *
2963 
2964 char *
2966 
2967 char *
2969 
2970 void
2971 set_report_format_name (report_format_t, const char *);
2972 
2973 void
2975 
2976 int
2977 set_report_format_param (report_format_t, const char *, const char *);
2978 
2979 int
2981 
2982 int
2984 
2985 int
2987 
2988 int
2990 
2991 int
2993 
2994 int
2996 
2997 int
2999 
3000 int
3002 
3003 int
3005 
3006 int
3008 
3009 int
3011 
3012 const char*
3014 
3015 const char*
3017 
3018 const char*
3020 
3021 int
3023 
3024 const char*
3026 
3027 const char*
3029 
3030 const char*
3032 
3033 time_t
3035 
3036 void
3038 
3039 const char*
3041 
3042 const char*
3044 
3045 int
3047 
3051 typedef struct
3052 {
3053  GPtrArray *start;
3054  gpointer *current;
3055  gchar *dir_name;
3056 } file_iterator_t;
3057 
3058 int
3060 
3061 void
3063 
3064 gboolean
3066 
3067 const char*
3069 
3070 gchar*
3072 
3079 typedef enum
3080 {
3089 
3090 const char *
3092 
3094 report_format_param_type_from_name (const char *);
3095 
3096 void
3098  int, const char*);
3099 
3102 
3103 const char*
3105 
3106 const char*
3108 
3109 const char*
3111 
3114 
3115 long long int
3117 
3118 long long int
3120 
3121 const char*
3123 
3124 const char*
3126 
3127 void
3129  const char *);
3130 
3131 const char*
3133 
3134 
3135 /* Groups. */
3136 
3137 int
3139 
3140 int
3141 copy_group (const char *, const char *, const char *, group_t *);
3142 
3143 int
3144 create_group (const char *, const char *, const char *, int, group_t *);
3145 
3146 int
3147 delete_group (const char *, int);
3148 
3149 char*
3151 
3152 gchar *
3154 
3155 int
3157 
3158 int
3160 
3161 int
3163 
3164 int
3166 
3167 int
3168 group_count (const get_data_t*);
3169 
3170 int
3171 modify_group (const char *, const char *, const char *, const char *);
3172 
3173 
3174 /* Permissions. */
3175 
3176 int
3177 create_permission (const char *, const char *, const char *, const char *,
3178  const char *, const char *, permission_t *);
3179 
3180 int
3181 copy_permission (const char*, const char *, permission_t *);
3182 
3183 char*
3185 
3186 char *
3188 
3189 int
3190 permission_is_admin (const char *);
3191 
3192 int
3194 
3195 int
3197 
3198 int
3200 
3201 int
3203 
3204 int
3205 permission_count (const get_data_t *);
3206 
3207 int
3209 
3210 const char*
3212 
3213 const char*
3215 
3216 const char*
3218 
3219 int
3221 
3222 int
3224 
3225 int
3227 
3228 const char*
3230 
3231 const char*
3233 
3234 const char*
3236 
3237 int
3239 
3240 int
3242 
3243 int
3244 delete_permission (const char*, int);
3245 
3246 int
3247 modify_permission (const char *, const char *, const char *, const char *,
3248  const char *, const char *, const char *);
3249 
3250 
3251 /* Port lists. */
3252 
3253 gboolean
3254 find_port_list (const char*, port_list_t*);
3255 
3256 gboolean
3257 find_port_list_with_permission (const char *, port_list_t *, const char *);
3258 
3259 gboolean
3260 find_port_range (const char*, port_list_t*);
3261 
3262 int
3263 create_port_list (const char*, const char*, const char*, const char*,
3264  array_t *, port_list_t*);
3265 
3266 int
3267 copy_port_list (const char*, const char*, const char*, port_list_t*);
3268 
3269 int
3270 modify_port_list (const char*, const char*, const char*);
3271 
3272 int
3273 create_port_range (const char *, const char *, const char *, const char *,
3274  const char *, port_range_t *);
3275 
3276 int
3277 delete_port_list (const char*, int);
3278 
3279 int
3280 delete_port_range (const char *, int);
3281 
3282 int
3283 port_list_count (const get_data_t *);
3284 
3285 int
3287 
3288 int
3290 
3291 int
3293 
3294 int
3296 
3297 char*
3299 
3300 char*
3302 
3303 int
3305 
3306 int
3308 
3309 int
3311 
3312 int
3314 
3315 int
3317 
3318 #if 0
3319 int
3321 #endif
3322 
3323 int
3324 trash_port_list_readable_uuid (const gchar *);
3325 
3326 void
3327 init_port_range_iterator (iterator_t*, port_range_t, int, int, const char*);
3328 
3329 const char*
3331 
3332 const char*
3334 
3335 const char*
3337 
3338 const char*
3340 
3341 const char*
3343 
3344 port_protocol_t
3346 
3347 void
3349 
3350 const char*
3352 
3353 const char*
3355 
3356 int
3358 
3359 
3360 /* Roles. */
3361 
3362 int
3364 
3365 int
3366 copy_role (const char *, const char *, const char *, role_t *);
3367 
3368 int
3369 create_role (const char *, const char *, const char *, role_t *);
3370 
3371 int
3372 delete_role (const char *, int);
3373 
3374 char*
3375 role_uuid (role_t);
3376 
3377 gchar *
3378 role_users (role_t);
3379 
3380 int
3382 
3383 int
3385 
3386 int
3388 
3389 int
3391 
3392 int
3393 role_count (const get_data_t*);
3394 
3395 int
3396 modify_role (const char *, const char *, const char *, const char *);
3397 
3398 
3399 /* Filter Utilities. */
3400 
3404 typedef enum
3405 {
3410 } keyword_type_t;
3411 
3415 typedef enum
3416 {
3424 
3428 struct keyword
3429 {
3430  gchar *column;
3431  int equal;
3433  double double_value;
3434  int quoted;
3435  gchar *string;
3438 };
3439 
3443 typedef struct keyword keyword_t;
3444 
3445 const char *
3447 
3448 void
3449 filter_free (array_t*);
3450 
3451 array_t *
3452 split_filter (const gchar*);
3453 
3454 
3455 /* Filters. */
3456 
3457 int
3458 buffer_get_filter_xml (GString *, const char*, const get_data_t*, const char*,
3459  const char*);
3460 
3461 gboolean
3462 find_filter (const char*, filter_t*);
3463 
3464 gboolean
3465 find_filter_with_permission (const char*, filter_t*, const char*);
3466 
3467 char*
3469 
3470 char*
3472 
3473 char*
3475 
3476 char*
3478 
3479 gchar*
3480 filter_term (const char *);
3481 
3482 gchar*
3483 filter_term_value (const char *, const char *);
3484 
3485 int
3486 create_filter (const char*, const char*, const char*, const char*, int,
3487  filter_t*);
3488 
3489 int
3490 copy_filter (const char*, const char*, const char*, filter_t*);
3491 
3492 int
3493 delete_filter (const char *, int);
3494 
3495 int
3497 
3498 int
3500 
3501 int
3503 
3504 int
3506 
3507 int
3508 filter_count (const get_data_t*);
3509 
3510 int
3512 
3513 const char*
3515 
3516 const char*
3518 
3519 void
3521 
3522 const char*
3524 
3525 const char*
3527 
3528 int
3530 
3531 int
3532 modify_filter (const char*, const char*, const char*, const char*, const char*);
3533 
3534 
3535 /* Schema. */
3536 
3537 int
3538 manage_schema (gchar *, gchar **, gsize *, gchar **, gchar **);
3539 
3540 
3541 /* Trashcan. */
3542 
3543 int
3544 manage_restore (const char *);
3545 
3546 int
3548 
3549 
3550 /* Scanner tags. */
3551 
3552 void
3553 parse_tags (const char *, gchar **, gchar **);
3554 
3555 
3556 /* SecInfo */
3557 
3558 int
3559 manage_read_info (gchar *, gchar *, gchar *, gchar **);
3560 
3561 int
3562 info_name_count (const gchar *, const gchar *);
3563 
3564 /* SCAP. */
3565 
3566 int
3568 
3569 const char *
3571 
3572 /* CPE. */
3573 
3574 void
3575 init_cpe_cve_iterator (iterator_t *, const char *, int, const char *);
3576 
3577 int
3578 init_cpe_info_iterator (iterator_t*, get_data_t*, const char*);
3579 
3580 int
3581 cpe_info_count (const get_data_t *get);
3582 
3583 const char*
3585 
3586 const char*
3588 
3589 const char*
3591 
3592 const char*
3594 
3595 const char*
3597 
3598 const char*
3600 
3601 /* CVE. */
3602 
3603 const char*
3605 
3606 const char*
3608 
3609 const char*
3611 
3612 const char*
3614 
3615 const char*
3617 
3618 const char*
3620 
3621 const char*
3623 
3624 const char*
3626 
3627 const char*
3629 
3630 const char*
3632 
3633 const char*
3635 
3636 int
3637 init_cve_info_iterator (iterator_t*, get_data_t*, const char*);
3638 
3639 int
3640 cve_info_count (const get_data_t *get);
3641 
3642 gchar *
3643 cve_cvss_base (const gchar *);
3644 
3645 /* OVAL defintions */
3646 int
3648 
3649 int
3650 ovaldef_info_count (const get_data_t *get);
3651 
3652 const char*
3654 
3655 const char*
3657 
3658 const char*
3660 
3661 const char*
3663 
3664 const char*
3666 
3667 const char*
3669 
3670 const char*
3672 
3673 const char*
3675 
3676 const char*
3678 
3679 char *
3680 ovaldef_severity (const char *);
3681 
3682 char *
3683 ovaldef_version (const char *);
3684 
3685 char *
3686 ovaldef_uuid (const char *, const char *);
3687 
3688 char *
3689 ovaldef_cves (const char *);
3690 
3691 /* CERT data */
3692 int
3694 
3695 /* CERT-Bund */
3696 
3697 int
3699 
3700 int
3702 
3703 const char*
3705 
3706 const char*
3708 
3709 const char*
3711 
3712 const char*
3714 
3715 void
3716 init_cve_cert_bund_adv_iterator (iterator_t*, const char*, int, const char*);
3717 
3718 void
3719 init_nvt_cert_bund_adv_iterator (iterator_t*, const char*, int, const char*);
3720 
3721 /* DFN-CERT */
3722 
3723 int
3725 
3726 int
3727 dfn_cert_adv_info_count (const get_data_t *get);
3728 
3729 const char*
3731 
3732 const char*
3734 
3735 const char*
3737 
3738 const char*
3740 
3741 void
3742 init_cve_dfn_cert_adv_iterator (iterator_t*, const char*, int, const char*);
3743 
3744 void
3745 init_nvt_dfn_cert_adv_iterator (iterator_t*, const char*, int, const char*);
3746 
3747 /* All SecInfo Data */
3748 
3749 int
3750 all_info_count (const get_data_t *);
3751 
3752 int
3753 total_info_count (const get_data_t *, int);
3754 
3755 int
3756 init_all_info_iterator (iterator_t*, get_data_t*, const char*);
3757 
3758 const char*
3760 
3761 const char*
3763 
3764 const char*
3766 
3767 void
3769 
3770 const char*
3772 
3773 
3774 /* Settings. */
3775 
3776 int
3777 manage_max_rows (int);
3778 
3779 int
3780 setting_count (const char *);
3781 
3782 int
3783 setting_is_default_ca_cert (const gchar *);
3784 
3785 char *
3786 setting_filter (const char *);
3787 
3788 const char *
3789 setting_severity ();
3790 
3791 double
3793 
3794 int
3796 
3797 char *
3798 setting_timezone ();
3799 
3800 int
3802 
3803 void
3804 init_setting_iterator (iterator_t *, const char *, const char *, int, int, int,
3805  const char *);
3806 
3807 const char*
3809 
3810 const char*
3812 
3813 const char*
3815 
3816 const char*
3818 
3819 int
3820 setting_value_int (const char *, int *);
3821 
3822 int
3823 modify_setting (const gchar *, const gchar *, const gchar *, gchar **);
3824 
3825 int
3826 manage_modify_setting (GSList *, const gchar *, const gchar *, const gchar *, const char *);
3827 
3828 char *
3830 
3831 
3832 /* Users. */
3833 
3834 gboolean
3835 find_user_by_name_with_permission (const char *, user_t *, const char *);
3836 
3837 int
3838 manage_create_user (GSList *, const gchar *, const gchar *, const gchar *,
3839  const gchar *);
3840 
3841 int
3842 manage_delete_user (GSList *, const gchar *, const gchar *, const gchar *);
3843 
3844 int
3845 manage_get_users (GSList *, const gchar *, const gchar *);
3846 
3848 manage_report_host_add (report_t, const char *, time_t, time_t);
3849 
3850 int
3852 
3853 int
3855 
3856 int
3857 report_host_noticeable (report_t, const gchar *);
3858 
3859 void
3861 
3862 gchar*
3864 
3865 int
3866 manage_set_password (GSList *, const gchar *, const gchar *, const gchar *);
3867 
3868 gchar *
3869 manage_user_hash (const gchar *);
3870 
3871 gchar *
3872 manage_user_uuid (const gchar *, auth_method_t);
3873 
3874 int
3875 manage_user_exists (const gchar *, auth_method_t);
3876 
3877 int
3878 manage_scanner_set (const char *);
3879 
3880 int
3882 
3883 int
3884 copy_user (const char*, const char*, const char*, user_t*);
3885 
3886 gchar *
3887 keyfile_to_auth_conf_settings_xml (const gchar *);
3888 
3889 int
3891 
3892 const char*
3894 
3895 const char*
3897 
3898 const char*
3900 
3901 int
3903 
3904 const char*
3906 
3907 int
3909 
3910 void
3912 
3913 const char*
3915 
3916 const char*
3918 
3919 int
3921 
3922 void
3924 
3925 const char*
3927 
3928 const char*
3930 
3931 int
3933 
3934 int
3935 create_user (const gchar *, const gchar *, const gchar *, int, const gchar *,
3936  int, const array_t *, array_t *, gchar **, array_t *, gchar **,
3937  gchar **, user_t *, int);
3938 
3939 int
3940 delete_user (const char *, const char *, int, int, const char*, const char*);
3941 
3942 int
3943 modify_user (const gchar *, gchar **, const gchar *, const gchar *,
3944  const gchar *, int, const gchar *, int, const array_t *, array_t *,
3945  gchar **, array_t *, gchar **, gchar **);
3946 
3947 int
3948 user_is_admin (const char *);
3949 
3950 int
3951 user_is_super_admin (const char *);
3952 
3953 int
3954 user_is_observer (const char *);
3955 
3956 int
3957 user_is_user (const char *);
3958 
3959 int
3961 
3962 int
3964 
3965 int
3967 
3968 int
3970 
3971 int
3972 user_count (const get_data_t*);
3973 
3974 gchar*
3975 user_name (const char *);
3976 
3977 char*
3978 user_uuid (user_t);
3979 
3980 gchar*
3981 user_ifaces (const char *);
3982 
3983 int
3984 user_ifaces_allow (const char *);
3985 
3986 gchar*
3987 user_hosts (const char *);
3988 
3989 int
3990 user_hosts_allow (const char *);
3991 
3992 void
3993 manage_get_ldap_info (int *, gchar **, gchar **, int *, gchar **);
3994 
3995 void
3996 manage_set_ldap_info (int, gchar *, gchar *, int, gchar *);
3997 
3998 void
3999 manage_get_radius_info (int *, char **, char **);
4000 
4001 void
4002 manage_set_radius_info (int, gchar *, gchar *);
4003 
4004 
4005 /* Tags */
4006 
4007 char*
4008 tag_uuid (target_t);
4009 
4010 int
4011 copy_tag (const char*, const char*, const char*, tag_t*);
4012 
4013 int
4014 create_tag (const char *, const char *, const char *, const char *,
4015  const char *, const char *, tag_t *);
4016 
4017 int
4018 delete_tag (const char *, int);
4019 
4020 int
4021 modify_tag (const char *, const char *, const char *, const char *,
4022  const char *, const char *, const char *);
4023 
4024 int
4026 
4027 int
4028 tag_count (const get_data_t *get);
4029 
4030 const char*
4032 
4033 const char*
4035 
4036 int
4038 
4039 int
4041 
4042 const char*
4044 
4045 const char*
4047 
4048 int
4050 
4051 int
4053 
4054 int
4056 
4057 const char*
4059 
4060 int
4062  const char *, int(*)(resource_t),
4063  const char *, int(*)(resource_t));
4064 
4065 int
4066 init_resource_tag_iterator (iterator_t*, const char*, resource_t, int,
4067  const char*, int);
4068 
4069 const char*
4071 
4072 const char*
4074 
4075 const char*
4077 
4078 const char*
4080 
4081 int
4082 resource_tag_count (const char*, resource_t, int);
4083 
4084 int
4085 tag_in_use (tag_t);
4086 
4087 int
4089 
4090 int
4092 
4093 int
4095 
4096 
4097 /* Resource aggregates */
4098 
4099 typedef struct {
4100  gchar *field;
4101  gchar *stat;
4102  int order;
4103 } sort_data_t;
4104 
4105 void
4107 
4108 int
4109 init_aggregate_iterator (iterator_t*, const char *, const get_data_t *, int,
4110  GArray *, const char *, const char*, GArray*, GArray*,
4111  int, int, const char *, const char *);
4112 
4113 int
4115 
4116 double
4118 
4119 double
4121 
4122 double
4124 
4125 double
4127 
4128 const char*
4129 aggregate_iterator_text (iterator_t*, int, int);
4130 
4131 const char*
4133 
4134 const char*
4136 
4137 
4138 /* Feeds. */
4139 
4140 /* For feed syncing */
4141 #define NVT_FEED 1
4142 #define SCAP_FEED 2
4143 #define CERT_FEED 3
4144 
4145 int
4147 (const gchar *, const gchar *, int);
4148 
4149 int
4150 openvas_migrate_secinfo (const gchar*, int);
4151 
4152 int
4153 openvas_current_sync (const gchar *, gchar **, gchar **);
4154 
4155 gboolean
4156 openvas_sync_script_perform_selftest (const gchar *, gchar **);
4157 
4158 gboolean
4159 openvas_get_sync_script_identification (const gchar *, gchar **, int);
4160 
4161 gboolean
4162 openvas_get_sync_script_description (const gchar *, gchar **);
4163 
4164 gboolean
4165 openvas_get_sync_script_feed_version (const gchar *, gchar **);
4166 
4167 
4168 /* Wizards. */
4169 
4170 int
4171 manage_run_wizard (const gchar *, int (*) (void*, gchar*, gchar**),
4172  void *, array_t *, int, const char*,
4173  gchar **, gchar **, gchar **);
4174 
4175 
4176 /* Helpers. */
4177 
4178 char *
4179 iso_time (time_t *);
4180 
4181 char *
4182 iso_time_tz (time_t *, const char *, const char **);
4183 
4184 gchar *
4185 xsl_transform (gchar *, gchar *, gchar **, gchar **);
4186 
4187 int
4188 valid_db_resource_type (const char*);
4189 
4190 int
4191 column_is_timestamp (const char*);
4192 
4193 char*
4194 type_columns (const char *, int);
4195 
4196 const char**
4197 type_filter_columns (const char *, int);
4198 
4199 char*
4200 type_trash_columns (const char *, int);
4201 
4202 gchar*
4203 type_opts_table (const char *, int, int, int);
4204 
4205 gchar*
4206 type_table (const char *, int);
4207 
4208 gboolean
4209 manage_migrate_needs_timezone (GSList *, const gchar *);
4210 
4211 
4212 /* Optimize. */
4213 
4214 int
4215 manage_optimize (GSList *, const gchar *, const gchar *);
4216 
4217 /* Signal management */
4218 
4219 int
4221 
4222 int
4223 sql_cancel ();
4224 
4225 #endif /* not OPENVAS_MANAGER_MANAGE_H */
void append_to_task_comment(task_t, const char *, int)
char * target_port_range(target_t)
const char * report_iterator_uuid(iterator_t *)
int trash_port_list_in_use(port_list_t)
int report_format_predefined(report_format_t)
long long int filter_t
Definition: manage.h:281
void init_config_task_iterator(iterator_t *, config_t, int)
int buffer_get_filter_xml(GString *, const char *, const get_data_t *, const char *, const char *)
int copy_port_list(const char *, const char *, const char *, port_list_t *)
const char * override_iterator_new_threat(iterator_t *)
int verify_report_format(const char *)
int trash_target_credential_location(target_t, const char *)
int task_schedule_periods_uuid(const gchar *)
Set the next time a scheduled task will be due.
Definition: manage_sql.c:19000
alert_condition_t
Types of alert conditions.
Definition: manage.h:501
long long int permission_t
Definition: manage.h:296
const char * preference_iterator_name(iterator_t *)
const char * result_iterator_nvt_cvss_base(iterator_t *)
const char * report_format_iterator_description(iterator_t *)
int schedule_task_iterator_readable(iterator_t *)
int details
Boolean. Whether to include full details.
Definition: manage.h:312
void init_cve_dfn_cert_adv_iterator(iterator_t *, const char *, int, const char *)
long long int schedule_t
Definition: manage.h:299
gboolean find_user_by_name_with_permission(const char *, user_t *, const char *)
int manage_system_report(const char *, const char *, const char *, const char *, const char *, char **)
Get a system report.
Definition: manage.c:6240
double aggregate_iterator_max(iterator_t *, int)
Get the maximum from an aggregate iterator.
Definition: manage_sql.c:5953
int agent_in_use(agent_t)
const char * credential_iterator_auth_algorithm(iterator_t *)
void init_manage_process(int, const gchar *)
Initialize the manage library for a process.
Definition: manage_sql.c:14303
void init_port_list_target_iterator(iterator_t *, port_list_t, int)
char * manage_port_name(int, const char *)
Returns associated name for a tcp/ip port.
Definition: manage_sql.c:6359
const char * tag_iterator_value(iterator_t *)
int user_role_iterator_readable(iterator_t *)
int modify_group(const char *, const char *, const char *, const char *)
int delete_user(const char *, const char *, int, int, const char *, const char *)
void report_set_slave_name(report_t, const gchar *)
int report_host_noticeable(report_t, const gchar *)
const char * filter_iterator_type(iterator_t *)
const char * target_iterator_alive_tests(iterator_t *)
int init_credential_iterator(iterator_t *, const get_data_t *)
void report_add_result(report_t, result_t)
char * port
Port.
Definition: manage.h:1181
task_status_t
Task statuses, also used as scan/report statuses.
Definition: manage.h:218
const char * resource_tag_iterator_value(iterator_t *)
const char * report_format_iterator_trust(iterator_t *)
int trash
Boolean. Whether to return from trashcan.
Definition: manage.h:318
int host_iterator_current_port(iterator_t *)
int modify_note(note_t, const char *, const char *, const char *, const char *, const char *, const char *, task_t, result_t)
const char * ovaldef_info_iterator_description(iterator_t *)
const char * result_iterator_nvt_xref(iterator_t *)
const char * nvt_iterator_qod(iterator_t *)
char * ip
IP.
Definition: manage.h:1193
task_t current_scanner_task
The task currently running on the scanner.
Definition: manage.c:998
char * default_value
Default value of preference.
Definition: manage.h:1745
char * string
Original string describing port.
Definition: manage.h:196
int config_iterator_nvt_count(iterator_t *)
int trash_group_in_use(group_t)
int config_count(const get_data_t *)
int delete_config(const char *, int)
char * target_hosts(target_t)
char * credential_iterator_deb(iterator_t *)
const char * host_identifier_iterator_os_id(iterator_t *)
gchar * report_path_task_uuid(gchar *)
void report_set_slave_port(report_t, int)
const char * host_identifier_iterator_value(iterator_t *)
char * host
Host.
Definition: manage.h:1178
int report_counts_id(report_t, int *, int *, int *, int *, int *, int *, double *, const get_data_t *, const char *)
result_t make_cve_result(task_t, const char *, const char *, double, const char *)
const char * override_iterator_nvt_name(iterator_t *)
task_t override_iterator_task(iterator_t *)
int order
The sort order.
Definition: manage.h:4102
int modify_scanner(const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *)
void init_nvt_cert_bund_adv_iterator(iterator_t *, const char *, int, const char *)
gchar * certificate_iso_time(time_t)
Converts a certificate time to an ISO time string.
Definition: manage.c:352
const char * host_identifier_iterator_os_title(iterator_t *)
int set_task_preferences(task_t, array_t *)
void set_scan_host_start_time_otp(report_t, const char *, const char *)
int alert_in_use(alert_t)
Return whether a alert is in use by a task.
Definition: manage_sql.c:8506
char * user_uuid(user_t)
const char * report_format_param_iterator_name(iterator_t *)
int create_credential(const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, credential_t *)
long long int credential_t
Definition: manage.h:279
const char * result_iterator_nvt_tag(iterator_t *)
scanner_t config_scanner(config_t)
char * name
Name of preference.
Definition: manage.h:1739
int cve_info_count(const get_data_t *get)
void init_scanner_task_iterator(iterator_t *, scanner_t)
gchar * user_hosts(const char *)
const char * note_iterator_port(iterator_t *)
char * target_ssh_port(target_t)
report_format_param_type_t report_format_param_iterator_type(iterator_t *)
char * name
Detail name.
Definition: manage.h:1194
const char * agent_iterator_installer_64(iterator_t *)
schedule_t task_schedule_uuid(const gchar *)
Return the schedule of a task.
Definition: manage_sql.c:18938
void set_task_target(task_t, target_t)
Set the target of a task.
Definition: manage_sql.c:18137
const char * report_format_alert_iterator_uuid(iterator_t *)
const char * task_iterator_first_report(iterator_t *)
Get the first report UUID from a task iterator.
Definition: manage_sql.c:14118
int config_writable(config_t)
char * report_format_owner_uuid(report_format_t)
void cleanup_iterator(iterator_t *)
Cleanup an iterator.
Definition: sql.c:664
char * ovaldef_uuid(const char *, const char *)
int task_target_in_trash(task_t)
Return whether the target of a task is in the trashcan.
Definition: manage_sql.c:18168
void manage_complete_nvt_cache_update(GList *, GList *, int)
const char * credential_iterator_password(iterator_t *)
void sort_data_free(sort_data_t *)
const char * note_iterator_nvt_type(iterator_t *)
int trash_scanner_readable(scanner_t)
void init_family_iterator(iterator_t *, int, const char *, int)
gchar * stat
The statistic to sort by.
Definition: manage.h:4101
int modify_schedule(const char *, const char *, const char *, time_t, time_t, time_t, time_t, const char *)
int target_count(const get_data_t *)
const char * cve_iterator_cvss(iterator_t *)
int trash_port_list_writable(port_list_t)
gchar * group_users(group_t)
time_t schedule_iterator_first_time(iterator_t *)
int tag_iterator_orphan(iterator_t *)
gboolean find_task(const char *id, task_t *)
void init_user_group_iterator(iterator_t *, user_t)
int permission_writable(permission_t)
void set_credential_certificate(credential_t, const char *)
const char * config_iterator_nvt_selector(iterator_t *)
gpointer * current
Current file.
Definition: manage.h:3054
int modify_report_format(const char *, const char *, const char *, const char *, const char *, const char *, const char *)
port_protocol_t protocol
Port protocol (TCP, UDP, ...).
Definition: manage.h:195
const char * report_format_param_iterator_type_name(iterator_t *)
const char * prognosis_iterator_cve(iterator_t *)
int trash_config_readable_uuid(const gchar *)
const char * result_iterator_qod(iterator_t *)
int task_config_in_trash(task_t)
Return whether the config of a task is in the trashcan.
Definition: manage_sql.c:18081
int credential_in_use(credential_t)
long long int alert_t
Definition: manage.h:280
int trash_scanner_in_use(scanner_t)
long long int report_format_param_iterator_type_min(iterator_t *)
credential_t scanner_iterator_credential(iterator_t *)
int trash_report_format_in_use(report_format_t)
void append_task_open_port(task_t task, const char *, const char *)
int manage_scap_db_supported_version()
Return the database version supported by this manager.
Definition: manage_sql.c:6288
gboolean next(iterator_t *)
Increment an iterator.
Definition: sql.c:689
resource_t get_iterator_resource(iterator_t *)
const char * result_iterator_original_severity(iterator_t *)
const char * dfn_cert_adv_info_iterator_max_cvss(iterator_t *)
int manage_verify_scanner(GSList *, const gchar *, const gchar *)
gchar * get_nvti_xml(iterator_t *, int, int, int, const char *, config_t, int)
Create and return XML description for an NVT.
Definition: manage.c:7658
int move_task(const char *, const char *)
Reassign a task to another slave.
Definition: manage.c:5576
int task_scanner_in_trash(task_t)
Return whether the scanner of a task is in the trashcan.
Definition: manage_sql.c:18224
int report_counts(const char *, int *, int *, int *, int *, int *, int *, double *, int, int, int)
int create_asset_report(const char *, const char *)
char * task_config_uuid(task_t)
Return the UUID of the config of a task.
Definition: manage_sql.c:18043
void manage_reset_currents()
Cleanup as immediately as possible.
Definition: manage_sql.c:17173
int task_false_positive_size(task_t)
void set_credential_auth_algorithm(credential_t, const char *)
int trash_credential_in_use(credential_t)
char * alert_iterator_filter_name(iterator_t *)
Return the filter name from an alert iterator.
Definition: manage_sql.c:8677
long long int role_t
Definition: manage.h:292
void init_credential_target_iterator(iterator_t *, credential_t, int)
double report_severity(report_t, int, int)
const char * get_iterator_name(iterator_t *)
int nvt_iterator_category(iterator_t *)
void host_detail_free(host_detail_t *)
const char * scanner_iterator_host(iterator_t *)
long long int target_t
Definition: manage.h:285
gchar * cve_cvss_base(const gchar *)
int scanner_in_use(scanner_t)
void init_alert_task_iterator(iterator_t *, alert_t, int)
Initialise an alert task iterator.
Definition: manage_sql.c:13591
char * report_slave_task_uuid(report_t)
void manage_set_radius_info(int, gchar *, gchar *)
gchar * get_scheduled_user_uuid()
Access UUID of user that scheduled the current task.
Definition: manage.c:6451
int copy_permission(const char *, const char *, permission_t *)
int trash_role_in_use(role_t)
int manage_scap_loaded()
Check whether SCAP is available.
Definition: manage_pg.c:2659
const char * result_iterator_level(iterator_t *)
char * qod
QoD (quality of detection).
Definition: manage.h:1182
int verify_scanner(const char *, char **)
const char * nvt_iterator_description(iterator_t *)
const char * resource_tag_iterator_uuid(iterator_t *)
const char * filter_alert_iterator_uuid(iterator_t *)
int delete_permission(const char *, int)
int severity_data_range_count(const severity_data_t *, double, double)
Calculate the total of severity counts in a range.
Definition: manage.c:899
const char * agent_iterator_installer(iterator_t *)
char * task_description(task_t)
int manage_count_hosts(const char *, const char *)
int sql_cancel()
void init_host_prognosis_iterator(iterator_t *, report_host_t, int, int, const char *, const char *, int, const char *)
int column_is_timestamp(const char *)
const char * get_iterator_modification_time(iterator_t *)
int set_task_schedule_periods_id(task_t, int)
Set the schedule periods of a task, given an ID.
Definition: manage_sql.c:18894
void init_cpe_cve_iterator(iterator_t *, const char *, int, const char *)
const char * credential_iterator_type(iterator_t *)
int target_writable(target_t)
const char * ovaldef_info_iterator_deprecated(iterator_t *)
long long int config_t
Definition: manage.h:278
const char * host_iterator_start_time(iterator_t *)
void init_alert_data_iterator(iterator_t *, alert_t, int, const char *)
Initialise an alert data iterator.
Definition: manage_sql.c:8756
int agent_count(const get_data_t *)
int report_result_host_count(report_t, int)
double prognosis_iterator_cvss_double(iterator_t *)
A report format file iterator.
Definition: manage.h:3051
int manage_get_users(GSList *, const gchar *, const gchar *)
int cleanup_schedule_times()
int manage_encrypt_all_credentials(GSList *, const gchar *)
Encrypt or re-encrypt all credentials.
Definition: manage_sql.c:6567
char * host_uuid(resource_t)
const char * override_iterator_port(iterator_t *)
const char * manage_scap_update_time()
GET SCAP update time, as a string.
Definition: manage.c:7842
int scan_host_end_time(report_t, const char *)
int manage_max_rows(int)
char * credential_uuid(credential_t)
char * trash_credential_uuid(credential_t)
double aggregate_iterator_mean(iterator_t *, int)
Get the mean from an aggregate iterator.
Definition: manage_sql.c:5969
const char * host_identifier_iterator_source_data(iterator_t *)
int manage_run_wizard(const gchar *, int(*)(void *, gchar *, gchar **), void *, array_t *, int, const char *, gchar **, gchar **, gchar **)
int aggregate_iterator_count(iterator_t *)
Get the count from an aggregate iterator.
Definition: manage_sql.c:5923
const char * ovaldef_info_iterator_status(iterator_t *)
int tag_writable(tag_t)
int create_user(const gchar *, const gchar *, const gchar *, int, const gchar *, int, const array_t *, array_t *, gchar **, array_t *, gchar **, gchar **, user_t *, int)
const char * filter_iterator_term(iterator_t *)
int save_tasks()
const char * agent_iterator_trust(iterator_t *)
const char * nvt_iterator_version(iterator_t *)
int manage_modify_scanner(GSList *, const gchar *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *)
int create_target(const char *, const char *, const char *, const char *, const char *, const char *, const char *, credential_t, const char *, credential_t, credential_t, credential_t, const char *, const char *, const char *, int, target_t *)
int integer_value
Integer value of the keyword.
Definition: manage.h:3432
int severity_in_level(double, const char *)
Check whether a severity falls within a threat level.
Definition: manage.c:583
char * credential_type(credential_t)
const char * alert_condition_name(alert_condition_t)
Get the name of an alert condition.
Definition: manage.c:1016
unsigned int task_count(const get_data_t *)
Return the number of tasks associated with the current user.
Definition: manage_sql.c:17814
const char * file_iterator_name(file_iterator_t *)
Return the name from a file iterator.
Definition: manage.c:7174
char * result_host_asset_id(const char *, result_t)
char * trash_credential_name(credential_t)
const char * note_iterator_severity(iterator_t *)
const char * target_iterator_comment(iterator_t *)
const char * user_iterator_role(iterator_t *)
int config_type(config_t)
int create_permission(const char *, const char *, const char *, const char *, const char *, const char *, permission_t *)
int delete_schedule(const char *, int)
char * trash_target_name(target_t)
gchar * value
Value of param.
Definition: manage.h:2931
char * scan_end_time_uuid(const char *)
int report_format_trust(report_format_t)
int user_hosts_allow(const char *)
gboolean find_result_with_permission(const char *, result_t *, const char *)
int manage_empty_trashcan()
const char * preference_iterator_value(iterator_t *)
int task_result_count(task_t, int)
Return number of results in a task.
Definition: manage_sql.c:18375
const char * override_iterator_severity(iterator_t *)
int delete_scanner(const char *, int)
const char * credential_full_type(const char *)
Get the written-out name of an LSC Credential type.
Definition: manage.c:5797
const char * credential_target_iterator_uuid(iterator_t *)
gboolean find_port_range(const char *, port_list_t *)
const char * host_detail_iterator_name(iterator_t *)
int set_task_alerts(task_t, array_t *, gchar **)
Set the alerts on a task, removing any previous alerts.
Definition: manage_sql.c:18674
char * role_uuid(role_t)
const char * task_group_iterator_uuid(iterator_t *)
gchar * task_second_last_report_id(task_t)
Get report ID from second most recently completed invocation of task.
Definition: manage_sql.c:18640
int user_is_admin(const char *)
const char * get_iterator_owner_name(iterator_t *)
A port.
Definition: manage.h:192
char * type_columns(const char *, int)
char * task_owner_name(task_t)
Return the name of the owner of a task.
Definition: manage_sql.c:17915
int init_asset_host_iterator(iterator_t *, const get_data_t *)
void set_credential_login(credential_t, const char *)
char * setting_filter(const char *)
void set_task_run_status(task_t, task_status_t)
Set the run state of a task.
Definition: manage_sql.c:18307
int set_credential_data(credential_t, const char *, const char *)
int set_task_parameter(task_t, const char *, char *)
int scan_start_time_epoch(report_t)
A generic SQL iterator.
Definition: iterator.h:52
int init_schedule_iterator(iterator_t *, const get_data_t *)
int init_tag_name_iterator(iterator_t *, const get_data_t *)
int init_role_iterator(iterator_t *, const get_data_t *)
void init_task_group_iterator(iterator_t *, task_t)
Initialise a task group iterator.
Definition: manage_sql.c:6822
int scanner_iterator_port(iterator_t *)
int trash_user_in_use(user_t)
const char * config_timeout_iterator_value(iterator_t *)
const char * override_iterator_nvt_type(iterator_t *)
int manage_optimize(GSList *, const gchar *, const gchar *)
report_t current_report
The report of the current task.
Definition: manage.c:1003
const char * cve_info_iterator_description(iterator_t *)
const char * cve_iterator_name(iterator_t *)
void cleanup_manage_process(gboolean)
Cleanup the manage library.
Definition: manage_sql.c:17128
char * nvt_oid
OID of NVT preference affects.
Definition: manage.h:1743
const char * target_iterator_port_list_name(iterator_t *)
int group_count(const get_data_t *)
char * hr_name
Extended, more human-readable name used by OSP.
Definition: manage.h:1746
void init_report_host_iterator(iterator_t *, report_t, const char *, report_host_t)
int severity_matches_ov(double, double)
Check whether a severity matches an override&#39;s severity.
Definition: manage.c:635
result_t result_iterator_result(iterator_t *)
int get_schedule_timeout()
Get the current schedule timeout.
Definition: manage.c:6917
report_t task_iterator_current_report(iterator_t *)
Return the current report of a task.
Definition: manage_sql.c:18416
gboolean find_credential_with_permission(const char *, credential_t *, const char *)
int copy_override(const char *, override_t *)
int create_schedule(const char *, const char *, time_t, time_t, time_t, time_t, const char *, schedule_t *)
void set_credential_private_key(credential_t, const char *, const char *)
gchar * role_users(role_t)
const char * nvt_iterator_cvss_base(iterator_t *)
gchar * column
The column prefix, or NULL.
Definition: manage.h:3430
const char * cert_bund_adv_info_iterator_cve_refs(iterator_t *)
char * trash_target_uuid(target_t)
gchar * file_iterator_content_64(file_iterator_t *)
Return the file contents from a file iterator.
Definition: manage.c:7187
gchar * summary
Summary of command.
Definition: manage.h:98
const char * user_role_iterator_uuid(iterator_t *)
int report_count(const get_data_t *)
gchar * credential_value(credential_t, const char *)
const char * result_iterator_descr(iterator_t *)
int delete_target(const char *, int)
void manage_get_ldap_info(int *, gchar **, gchar **, int *, gchar **)
const char * permission_iterator_subject_type(iterator_t *)
int user_writable(user_t)
void init_task_role_iterator(iterator_t *, task_t)
Initialise a task role iterator.
Definition: manage_sql.c:6851
const char * config_file_iterator_content(iterator_t *)
alert_method_t alert_method_from_name(const char *)
Get an alert method from a name.
Definition: manage.c:1215
char * task_hosts_ordering(task_t)
Return the hosts ordering of a task.
Definition: manage_sql.c:17973
gchar * name
Name.
Definition: manage.h:65
void init_filter_alert_iterator(iterator_t *, filter_t)
int * counts
Definition: manage.h:988
int load_tasks()
gchar * host_routes_xml(host_t)
const char * resource_tag_iterator_comment(iterator_t *)
char * iso_time_tz(time_t *, const char *, const char **)
Create an ISO time from seconds since epoch, given a timezone.
Definition: manage_sql.c:1153
const char * report_format_iterator_extension(iterator_t *)
gboolean find_schedule_with_permission(const char *, schedule_t *, const char *)
int manage_max_hosts()
time_t schedule_iterator_period_months(iterator_t *)
const char * target_task_iterator_uuid(iterator_t *)
int manage_cert_loaded()
Check whether CERT is available.
Definition: manage_pg.c:2643
int alert_iterator_event(iterator_t *)
Return the event from an alert iterator.
Definition: manage_sql.c:8590
host_t host_notice(const char *, const char *, const char *, const char *, const char *, int, int)
time_t schedule_iterator_next_time(iterator_t *)
const char * agent_iterator_installer_signature_64(iterator_t *)
int scanner_iterator_type(iterator_t *)
const char * permission_iterator_subject_uuid(iterator_t *)
const char * task_alert_iterator_uuid(iterator_t *)
gchar * type_max
Maximum value for integer type.
Definition: manage.h:2929
const char * report_format_param_iterator_fallback(iterator_t *)
int tag_iterator_resource_location(iterator_t *)
void manage_session_set_timezone(const char *)
Setup session timezone.
Definition: manage_pg.c:63
int init_system_report_type_iterator(report_type_iterator_t *, const char *, const char *)
Initialise a system report type iterator.
Definition: manage.c:6041
void hosts_set_max_severity(report_t, int *, int *)
const char * note_iterator_text(iterator_t *)
char * port_range_uuid(port_range_t)
int trash_permission_in_use(permission_t)
alert_t task_alert_iterator_alert(iterator_t *)
Get the alert from a task alert iterator.
Definition: manage_sql.c:8894
const char * cert_bund_adv_info_iterator_summary(iterator_t *)
void init_report_iterator_task(iterator_t *, task_t)
result_t make_osp_result(task_t, const char *, const char *, const char *, const char *, const char *, const char *, int)
task_status_t task_iterator_run_status(iterator_t *)
Get the run status from a task iterator.
Definition: manage_sql.c:14088
gchar * type_min
Minimum value for integer type.
Definition: manage.h:2930
void set_scan_host_end_time(report_t, const char *, const char *)
void report_set_source_iface(report_t, const gchar *)
int cert_bund_adv_info_count(const get_data_t *get)
const char * nvt_iterator_cve(iterator_t *)
const char * nvt_iterator_name(iterator_t *)
void report_set_slave_uuid(report_t, const gchar *)
long long int nvt_t
Definition: manage.h:294
int alert_iterator_condition(iterator_t *)
Return the condition from an alert iterator.
Definition: manage_sql.c:8606
int result_count(const get_data_t *, report_t, const char *)
char * filt_id
Filter ID. Overrides "filter".
Definition: manage.h:313
gchar * type_table(const char *, int)
void cleanup_report_type_iterator(report_type_iterator_t *)
Cleanup a report type iterator.
Definition: manage.c:6066
void init_host_identifier_iterator(iterator_t *, host_t, int, const char *)
void set_task_scanner(task_t, scanner_t)
Set the scanner of a task.
Definition: manage_sql.c:18208
char * type
Type of preference (radio, password, ...).
Definition: manage.h:1740
const char * host_identifier_iterator_source_id(iterator_t *)
int trash_config_writable(config_t)
int schedule_writable(schedule_t)
alert_condition_t alert_condition_from_name(const char *)
Get an alert condition from a name.
Definition: manage.c:1173
char * nvt_oid(const char *)
gchar * manage_report(report_t, const get_data_t *, report_format_t, int, int, const char *, gsize *, gchar **, gchar **, gchar **, gchar **, gchar **)
int delete_note(const char *, int)
char * threat
Threat.
Definition: manage.h:1185
void set_report_format_name(report_format_t, const char *)
int delete_task(task_t, int)
char * description
Description of the message.
Definition: manage.h:207
alert_method_t
Types of alerts.
Definition: manage.h:482
int task_uuid(task_t, char **)
Return the UUID of a task.
Definition: manage_sql.c:17885
gchar * filter_term_value(const char *, const char *)
int modify_credential(const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *)
double max
Definition: manage.h:990
int trash_group_writable(group_t)
void init_setting_iterator(iterator_t *, const char *, const char *, int, int, int, const char *)
void cleanup_file_iterator(file_iterator_t *)
Cleanup a report type iterator.
Definition: manage.c:7143
const char * credential_iterator_private_key(iterator_t *)
const char * schedule_iterator_timezone(iterator_t *)
int target_iterator_snmp_credential(iterator_t *)
gboolean report_task(report_t, task_t *)
get_data_t * report_results_get_data(int, int, int, int, int)
Create a new basic get_data_t struct to get report results.
Definition: manage.c:766
const char * host_iterator_host(iterator_t *)
const char * nvt_iterator_bid(iterator_t *)
keyword_type_t type
Type of keyword.
Definition: manage.h:3436
char * permission_name(permission_t)
int init_report_format_file_iterator(file_iterator_t *, report_format_t)
Initialise a report format file iterator.
Definition: manage.c:7096
int port_list_iterator_count_all(iterator_t *)
gchar * report_results_filter_term(int, int, int, int, int)
Create a basic filter term to get report results.
Definition: manage.c:752
time_t note_iterator_end_time(iterator_t *)
int report_format_writable(report_format_t)
const char * type_name_plural(const char *)
Return the plural name of a resource type.
Definition: manage.c:416
int manage_backup_db(const gchar *)
Backup the database to a file.
Definition: manage_pg.c:2680
int report_format_active(report_format_t)
int copy_task(const char *, const char *, const char *, int, task_t *)
int init_manage(GSList *, int, const gchar *, int, int, int, int, void(*)(), int(*)(openvas_connection_t *, gchar *), int)
Initialize the manage library.
Definition: manage_sql.c:17065
char * group_uuid(group_t)
const char * severity_to_type(double)
Get the message type matching a severity score.
Definition: manage.c:691
void reset_task(task_t)
char * target_ssh_credential_name(const char *)
const char * dfn_cert_adv_info_iterator_cve_refs(iterator_t *)
gchar * truncate_private_key(const gchar *)
Truncate a private key, removing extra data.
Definition: manage.c:203
int init_all_info_iterator(iterator_t *, get_data_t *, const char *)
char * scan_start_time_uuid(const char *)
int report_format_iterator_active(iterator_t *)
int alert_iterator_method(iterator_t *)
Return the method from an alert iterator.
Definition: manage_sql.c:8622
const char * cpe_info_iterator_deprecated_by_id(iterator_t *)
GPtrArray * start
Array of files.
Definition: manage.h:3053
int asset_iterator_in_use(iterator_t *)
config_t task_config(task_t)
Return the config of a task.
Definition: manage_sql.c:18016
gboolean find_report_format_with_permission(const char *, report_format_t *, const char *)
int authenticate(credentials_t *)
Authenticate credentials.
Definition: manage_sql.c:17631
long long int result_t
Definition: manage.h:287
int verify_agent(const char *)
keyword_relation_t
Comparison returns.
Definition: manage.h:3415
A command.
Definition: manage.h:95
char * filter_uuid(filter_t)
void cleanup_severity_data(severity_data_t *)
Clean up a severity data structure.
Definition: manage.c:848
int asset_os_count(const get_data_t *)
int task_logs_size(task_t)
int create_asset_host(const char *, const char *, resource_t *)
void init_host_detail_iterator(iterator_t *, resource_t)
char * target_exclude_hosts(target_t)
int init_filter_iterator(iterator_t *, const get_data_t *)
task_status_t task_run_status(task_t)
Return the run state of a task.
Definition: manage_sql.c:18238
int schedule_count(const get_data_t *)
const char * asset_os_iterator_latest_severity(iterator_t *)
int schedule_info(schedule_t, time_t *, time_t *, int *, int *, int *)
const char * credential_iterator_certificate(iterator_t *)
void set_scan_start_time_otp(report_t, const char *)
void set_credential_password(credential_t, const char *)
int config_iterator_type(iterator_t *)
int setting_value_int(const char *, int *)
const char * credential_iterator_privacy_password(iterator_t *)
int manage_alert(const char *, const char *, event_t, const void *, gchar **)
Escalate an alert with task and event data.
Definition: manage_sql.c:12984
char * ovaldef_version(const char *)
gchar * name
Command name.
Definition: manage.h:97
int trash_tag_writable(tag_t)
gchar * user_name(const char *)
const char * report_format_param_iterator_value(iterator_t *)
const char * override_iterator_new_severity(iterator_t *)
int init_user_iterator(iterator_t *, const get_data_t *)
int modify_tag(const char *, const char *, const char *, const char *, const char *, const char *, const char *)
gchar * app_location(report_host_t, const gchar *)
int scanner_writable(scanner_t)
gboolean find_port_list(const char *, port_list_t *)
int manage_create_scanner(GSList *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *)
const char * nvt_selector_iterator_nvt(iterator_t *)
int alert_task_iterator_readable(iterator_t *)
Get the read permission status from a GET iterator.
Definition: manage_sql.c:13659
void report_set_slave_password(report_t, const gchar *)
char * description
Description of NVT.
Definition: manage.h:1177
const char * asset_os_iterator_highest_severity(iterator_t *)
int trash_agent_writable(agent_t)
const char * tag_name_iterator_name(iterator_t *)
gboolean find_alert_with_permission(const char *, alert_t *, const char *)
Find a alert for a specific permission, given a UUID.
Definition: manage_sql.c:6983
const char * result_iterator_nvt_cve(iterator_t *)
int set_task_observers(task_t, const gchar *)
Set the observers of a task.
Definition: manage_sql.c:19148
const char * target_iterator_hosts(iterator_t *)
gboolean find_target_with_permission(const char *, target_t *, const char *)
gchar * manage_clean_filter_remove(const gchar *, const gchar *)
Clean a filter, removing a keyword in the process.
Definition: manage_sql.c:2743
int target_iterator_snmp_trash(iterator_t *)
void set_schedule_timeout(int)
Set the schedule timeout.
Definition: manage.c:6928
const char * nvt_preference_iterator_value(iterator_t *)
void set_scan_host_end_time_otp(report_t, const char *, const char *)
int modify_asset(const char *, const char *)
int alert_count(const get_data_t *)
Count the number of alerts.
Definition: manage_sql.c:8489
const char * get_iterator_uuid(iterator_t *)
credential_t target_credential(target_t, const char *)
const char * host_iterator_end_time(iterator_t *)
const char * report_format_param_type_name(report_format_param_type_t)
Get the name of a report format param type.
Definition: manage.c:6947
char * task_preference_value(task_t, const char *)
int config_iterator_families_growing(iterator_t *)
int total_asset_count(const get_data_t *)
int credential_writable(credential_t)
const char * ovaldef_info_iterator_class(iterator_t *)
gchar * subtype
Subtype, or NULL.
Definition: manage.h:320
const char * override_iterator_threat(iterator_t *)
const char * config_task_iterator_name(iterator_t *)
A CREATE_REPORT result.
Definition: manage.h:1175
const char * result_iterator_original_level(iterator_t *)
int task_writable(task_t)
Return whether a task is writable.
Definition: manage_sql.c:14253
int modify_user(const gchar *, gchar **, const gchar *, const gchar *, const gchar *, int, const gchar *, int, const array_t *, array_t *, gchar **, array_t *, gchar **, gchar **)
int manage_user_exists(const gchar *, auth_method_t)
gchar * field
The field to sort by.
Definition: manage.h:4100
int create_role(const char *, const char *, const char *, role_t *)
gboolean find_override_with_permission(const char *, override_t *, const char *)
int task_holes_size(task_t)
int filter_alert_iterator_readable(iterator_t *)
char * source_type
Source type.
Definition: manage.h:1197
int scanner_task_iterator_readable(iterator_t *)
long long int user_t
Definition: manage.h:302
result_t note_iterator_result(iterator_t *)
event_t event_from_name(const char *)
Get an event from a name.
Definition: manage.c:1196
char * manage_nvt_name(nvt_t)
char * value
Value of preference.
Definition: manage.h:1741
int report_counts_id_no_filt(report_t, int *, int *, int *, int *, int *, int *, double *, const get_data_t *, const char *)
int task_last_report(task_t, report_t *)
Get the report from the most recently completed invocation of task.
Definition: manage_sql.c:18542
int delete_tag(const char *, int)
int delete_role(const char *, int)
gchar * type
Type (boolean, string, integer, ...).
Definition: manage.h:2928
int equal
Whether the keyword is like "=example".
Definition: manage.h:3431
int manage_migrate(GSList *, const gchar *)
Migrate database to version supported by this manager.
int tag_in_use(tag_t)
int credential_scanner_iterator_readable(iterator_t *)
long long int group_t
Definition: manage.h:282
int target_in_use(target_t)
const gchar * certificate_time_status(time_t, time_t)
Tests the activation and expiration time of a certificate.
Definition: manage.c:371
const char * result_iterator_qod_type(iterator_t *)
void clear_duration_schedules(task_t)
Command data for a get command.
Definition: manage.h:310
int init_dfn_cert_adv_info_iterator(iterator_t *, get_data_t *, const char *)
void parse_tags(const char *, gchar **, gchar **)
Split up the tags received from the scanner.
Definition: manage.c:7241
int filter_count(const get_data_t *)
int cpe_info_count(const get_data_t *get)
const char * ovaldef_info_iterator_version(iterator_t *)
int trash_schedule_writable(schedule_t)
char * scanner_login(scanner_t)
const char * ovaldef_info_iterator_cve_refs(iterator_t *)
int manage_create_user(GSList *, const gchar *, const gchar *, const gchar *, const gchar *)
credential_t trash_target_credential(target_t, const char *)
int trash_port_list_readable_uuid(const gchar *)
int credential_iterator_allow_insecure(iterator_t *)
char * type_trash_columns(const char *, int)
task_t result_iterator_task(iterator_t *)
int get_termination_signal()
gboolean find_nvt(const char *, nvt_t *)
char * scan_end_time(report_t)
int config_nvts_growing(config_t)
void severity_data_level_counts(const severity_data_t *, const gchar *, int *, int *, int *, int *, int *, int *, int *)
Count the occurrences of severities in the levels.
Definition: manage.c:930
gboolean openvas_sync_script_perform_selftest(const gchar *, gchar **)
int manage_schedule(int(*)(openvas_connection_t *, gchar *), gboolean, sigset_t *)
Schedule any actions that are due.
Definition: manage.c:6481
void set_task_start_time_epoch(task_t, int)
Set the start time of a task.
Definition: manage_sql.c:18509
void init_cve_cert_bund_adv_iterator(iterator_t *, const char *, int, const char *)
void init_report_errors_iterator(iterator_t *, report_t)
int copy_credential(const char *, const char *, const char *, credential_t *)
int init_tag_iterator(iterator_t *, const get_data_t *)
int init_note_iterator(iterator_t *, const get_data_t *, nvt_t, result_t, task_t)
void hosts_set_identifiers()
const char * task_role_iterator_uuid(iterator_t *)
int copy_tag(const char *, const char *, const char *, tag_t *)
char * task_observers(task_t)
Return the observers of a task.
Definition: manage_sql.c:17987
double aggregate_iterator_sum(iterator_t *, int)
Get the sum from a statistics iterator.
Definition: manage_sql.c:5985
long long int port_range_t
Definition: manage.h:298
char * permission_uuid(permission_t)
const char * nvt_iterator_tag(iterator_t *)
An NVT selector.
Definition: manage.h:1752
int trash_filter_in_use(filter_t)
gboolean find_report_with_permission(const char *, report_t *, const char *)
const char * host_identifier_iterator_source_type(iterator_t *)
const char * user_iterator_hosts(iterator_t *)
void manage_report_filter_controls(const gchar *, int *, int *, gchar **, int *, int *, gchar **, gchar **, gchar **, gchar **, int *, int *, int *, int *, int *, gchar **)
Get info from a filter for report.
Definition: manage_sql.c:2474
const char * note_iterator_hosts(iterator_t *)
schedule_t task_schedule(task_t)
Return the schedule of a task.
Definition: manage_sql.c:18911
void set_scan_end_time(report_t, const char *)
int create_note(const char *, const char *, const char *, const char *, const char *, const char *, const char *, task_t, result_t, note_t *)
void report_cache_counts(report_t, int, int, const char *)
int modify_override(override_t, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, task_t, result_t)
time_t override_iterator_modification_time(iterator_t *)
int manage_resource_name(const char *, const char *, char **)
Get the name of a resource.
Definition: manage_sql.c:4942
int target_iterator_port_list_trash(iterator_t *)
int user_iterator_hosts_allow(iterator_t *)
int role_writable(role_t)
const char * scanner_iterator_credential_name(iterator_t *)
int port_list_in_use(port_list_t)
char * scanner_uuid(scanner_t)
int manage_set_config_preference(config_t, const char *, const char *, const char *)
int task_upload_progress(task_t)
Return the upload progress of a task.
Definition: manage_sql.c:18460
int trash_role_writable(role_t)
char * scanner_password(scanner_t)
gsize agent_iterator_installer_size(iterator_t *)
int create_config_from_scanner(const char *, const char *, const char *, char **)
result_t make_result(task_t, const char *, const char *, const char *, const char *, const char *)
int delete_report(const char *, int)
long long int report_t
Definition: manage.h:288
void init_report_counts_build_iterator(iterator_t *, report_t, int, int, const char *)
int override_uuid(override_t, char **)
void init_nvt_dfn_cert_adv_iterator(iterator_t *, const char *, int, const char *)
int resource_count(const char *, const get_data_t *)
Return number of resources of a certain type for current user.
Definition: manage_sql.c:17704
int task_in_use(task_t)
Return whether a task is in use by a task.
Definition: manage_sql.c:14202
void set_task_description(task_t, char *, gsize)
void manage_get_radius_info(int *, char **, char **)
gchar * manage_user_hash(const gchar *)
Get user hash.
Definition: manage_sql.c:17189
void reports_build_count_cache(int, int *)
int nvt_preference_count(const char *)
int init_cve_info_iterator(iterator_t *, get_data_t *, const char *)
Struct for defining a report format param.
Definition: manage.h:2924
const char * port_range_iterator_comment(iterator_t *)
int init_nvt_info_iterator(iterator_t *, get_data_t *, const char *)
const char * agent_iterator_howto_install(iterator_t *)
const char * asset_os_iterator_average_severity(iterator_t *)
double task_severity_double(task_t, int, int, int)
Return the severity score of a task, taking overrides into account.
Definition: manage_sql.c:19119
const char * task_iterator_last_report(iterator_t *)
Get the last report UUID from a task iterator.
Definition: manage_sql.c:14146
user_t get_iterator_owner(iterator_t *)
int trash_alert_in_use(alert_t)
Return whether a trashcan alert is in use by a task.
Definition: manage_sql.c:8520
const char * host_detail_iterator_source_type(iterator_t *)
const char * prognosis_iterator_cpe(iterator_t *)
char * task_config_name(task_t)
Return the name of the config of a task.
Definition: manage_sql.c:18062
int copy_schedule(const char *, const char *, const char *, schedule_t *)
int trash_tag_in_use(tag_t)
int trash_credential_writable(credential_t)
task_t make_task(char *, char *, int, int)
int user_can_everything(const char *)
void set_scan_start_time_epoch(report_t, time_t)
const char * result_iterator_original_type(iterator_t *)
keyword_relation_t relation
The relation.
Definition: manage.h:3437
int asset_os_iterator_installs(iterator_t *)
int setting_dynamic_severity_int()
void set_credential_name(credential_t, const char *)
const char * report_format_alert_iterator_name(iterator_t *)
void set_scan_start_time(report_t, const char *)
int ignore_max_rows_per_page
Whether to ignore the Max Rows Per Page setting.
Definition: manage.h:321
unsigned int task_id(task_t)
Return the identifier of a task.
Definition: manage_sql.c:17869
int trash_task_in_use(task_t)
Return whether a trashcan task is referenced by a task.
Definition: manage_sql.c:14225
target_t task_target(task_t)
Return the target of a task.
Definition: manage_sql.c:18111
int port_list_target_iterator_readable(iterator_t *)
char * trash_filter_name(filter_t)
time_t agent_iterator_trust_time(iterator_t *)
array_t * split_filter(const gchar *)
Split the filter term into parts.
Definition: manage_sql.c:2043
gchar * string
The keyword string, outer quotes removed.
Definition: manage.h:3435
long long int tag_t
Definition: manage.h:284
int request_delete_task_uuid(const char *, int)
const char * nvt_iterator_family(iterator_t *)
void init_credential_iterator_one(iterator_t *, credential_t)
char * report_format_name(report_format_t)
report_format_param_t report_format_param_iterator_param(iterator_t *)
gchar * filter_term(const char *)
char * severity
Severity score.
Definition: manage.h:1184
int report_format_global(report_format_t)
const char * scanner_task_iterator_name(iterator_t *)
const char * nvt_iterator_qod_type(iterator_t *iterator)
char * setting_timezone()
int agent_writable(agent_t)
int task_alterable(task_t)
Return whether a task is an Alterable Task.
Definition: manage_sql.c:14238
void manage_filter_controls(const gchar *, int *, int *, gchar **, int *)
Get info from a filter.
Definition: manage_sql.c:2289
gchar * keyfile_to_auth_conf_settings_xml(const gchar *)
int target_iterator_esxi_credential(iterator_t *)
int report_slave_progress(report_t)
gboolean next_report(iterator_t *, report_t *)
port_protocol_t port_range_iterator_type_int(iterator_t *iterator)
int manage_decrypt_all_credentials(GSList *, const gchar *)
Decrypt all credentials.
Definition: manage_sql.c:6599
const char * cve_info_iterator_authentication(iterator_t *)
int user_iterator_ifaces_allow(iterator_t *)
const char * param_option_iterator_value(iterator_t *)
const char * override_iterator_hosts(iterator_t *)
char * value
Detail value.
Definition: manage.h:1198
const char * nvt_iterator_xref(iterator_t *)
int sync_config(const char *)
void set_scan_ports(report_t, const char *, unsigned int, unsigned int)
alive_test_t
Alive tests.
Definition: manage.h:252
void init_target_task_iterator(iterator_t *, target_t)
char * ovaldef_severity(const char *)
char * manage_default_ca_cert()
gchar * type
Type of resource.
Definition: manage.h:319
void get_data_reset(get_data_t *)
Reset command data.
Definition: omp.c:2322
int setting_is_default_ca_cert(const gchar *)
void set_report_format_active(report_format_t, int)
void insert_report_host_detail(report_t, const char *, const char *, const char *, const char *, const char *, const char *)
int create_filter(const char *, const char *, const char *, const char *, int, filter_t *)
void hosts_set_details(report_t report)
int permission_iterator_resource_in_trash(iterator_t *)
char * type
Name of NVT selector.
Definition: manage.h:1755
int port_list_writable(port_list_t)
int scanner_count(const get_data_t *)
void set_task_start_time_otp(task_t, char *)
Set the start time of a task.
Definition: manage_sql.c:18524
int manage_schema(gchar *, gchar **, gsize *, gchar **, gchar **)
int nvt_selector_nvt_count(const char *, const char *, int)
int user_count(const get_data_t *)
int init_result_get_iterator(iterator_t *, const get_data_t *, report_t, const char *, const gchar *)
int init_asset_os_iterator(iterator_t *, const get_data_t *)
int copy_group(const char *, const char *, const char *, group_t *)
long long int agent_t
Definition: manage.h:277
char * scanner_host(scanner_t)
const char * cve_info_iterator_vector(iterator_t *)
void init_config_timeout_iterator(iterator_t *, config_t)
scanner_t task_iterator_scanner(iterator_t *)
Get the UUID of task scanner from a task iterator.
Definition: manage_sql.c:14188
void manage_task_update_file(task_t, const char *, const void *)
int copy_filter(const char *, const char *, const char *, filter_t *)
const char * note_iterator_threat(iterator_t *)
void init_severity_data(severity_data_t *)
Initialize a severity data structure.
Definition: manage.c:831
const char * credential_target_iterator_name(iterator_t *)
void init_preference_iterator(iterator_t *, config_t)
char * report_format_content_type(report_format_t)
void set_credential_snmp_secret(credential_t, const char *, const char *, const char *)
int scanner_port(scanner_t)
const char * port_range_iterator_uuid(iterator_t *)
const char * schedule_task_iterator_uuid(iterator_t *)
gboolean find_port_list_with_permission(const char *, port_list_t *, const char *)
const char * task_alert_iterator_name(iterator_t *)
int manage_set_password(GSList *, const gchar *, const gchar *, const gchar *)
char * trash_target_hosts(target_t)
int setting_count(const char *)
const char * port_range_iterator_start(iterator_t *)
int report_format_count(const get_data_t *)
const char * nvt_iterator_copyright(iterator_t *)
int delete_asset(const char *, const char *, int)
long long int port_list_t
Definition: manage.h:297
const char * keyword_relation_symbol(keyword_relation_t)
Get the symbol of a keyword relation.
Definition: manage_sql.c:1627
const char * agent_iterator_installer_filename(iterator_t *)
report_t result_iterator_report(iterator_t *)
const char * user_iterator_ifaces(iterator_t *)
const char * user_iterator_method(iterator_t *)
int manage_modify_setting(GSList *, const gchar *, const gchar *, const gchar *, const char *)
int set_report_format_param(report_format_t, const char *, const char *)
int manage_send_report(report_t, report_t, report_format_t, const get_data_t *, int, int, int, int, gboolean(*)(const char *, int(*)(const char *, void *), void *), int(*)(const char *, void *), void *, const char *, const char *, const char *, int, const char *, const char *, int, int, const gchar *)
int user_group_iterator_readable(iterator_t *)
const char * scanner_iterator_key_pub(iterator_t *)
int task_schedule_in_trash(task_t)
Get whether the task schedule is in the trash.
Definition: manage_sql.c:18971
const char * permission_iterator_subject_name(iterator_t *)
gboolean next_file(file_iterator_t *)
Increment a report type iterator.
Definition: manage.c:7159
int port_list_iterator_count_udp(iterator_t *)
int setting_auto_cache_rebuild_int()
void report_clear_count_cache(report_t, int, int, const char *)
const char * result_iterator_port(iterator_t *)
int note_count(const get_data_t *, nvt_t, result_t, task_t)
int permission_iterator_subject_in_trash(iterator_t *)
const char * result_iterator_scan_nvt_version(iterator_t *)
char * scanner_ca_pub(scanner_t)
const char * get_iterator_creation_time(iterator_t *)
int permission_count(const get_data_t *)
const char * scanner_iterator_key_priv(iterator_t *)
int target_iterator_smb_credential(iterator_t *)
const char * config_timeout_iterator_nvt_name(iterator_t *)
char * iso_time(time_t *)
Create an ISO time from seconds since epoch.
Definition: manage_sql.c:1138
int group_writable(group_t)
long long int setting_t
Definition: manage.h:301
int info_name_count(const gchar *, const gchar *)
char * alert_iterator_filter_uuid(iterator_t *)
Return the filter UUID from an alert iterator.
Definition: manage_sql.c:8652
char * nvt_name
Name of NVT preference affects.
Definition: manage.h:1742
int init_group_iterator(iterator_t *, const get_data_t *)
gchar * truncate_certificate(const gchar *)
Truncate a certificate, removing extra data.
Definition: manage.c:174
const char * cve_info_iterator_integrity_impact(iterator_t *)
void init_ovaldi_file_iterator(iterator_t *)
gchar * manage_user_uuid(const gchar *, auth_method_t)
const char * task_iterator_trend_counts(iterator_t *, int, int, int, double, int, int, int, double)
report_t make_report(task_t, const char *, task_status_t)
int task_iterator_finished_reports(iterator_t *)
Get the number of reports of a task iterator.
Definition: manage_sql.c:14160
void update_duration_schedule_periods(task_t)
void manage_auth_allow_all(int)
Ensure that any subsequent authentications succeed.
Definition: manage.c:6440
void set_scheduled_user_uuid(gchar *uuid)
Set UUID of user that scheduled the current task.
Definition: manage.c:6462
double aggregate_iterator_min(iterator_t *, int)
Get the minimum from an aggregate iterator.
Definition: manage_sql.c:5937
const char * task_iterator_hosts_ordering(iterator_t *)
Get the hosts ordering value from a task iterator.
Definition: manage_sql.c:14174
void set_task_end_time_epoch(task_t, time_t)
int delete_alert(const char *, int)
Delete an alert.
Definition: manage_sql.c:8195
const char * os_host_iterator_severity(iterator_t *)
gboolean find_task_with_permission(const char *, task_t *, const char *)
int credential_target_iterator_readable(iterator_t *)
const char * asset_os_iterator_title(iterator_t *)
char * target_reverse_lookup_unify(target_t)
gboolean find_filter_with_permission(const char *, filter_t *, const char *)
const char * aggregate_iterator_subgroup_value(iterator_t *)
Get the value of the subgroup column from an aggregate iterator.
Definition: manage_sql.c:6042
int delete_port_list(const char *, int)
const char * severity_to_level(double, int)
Get the threat level matching a severity score.
Definition: manage.c:652
const char * cve_info_iterator_cvss(iterator_t *)
const char * result_iterator_type(iterator_t *)
const char * task_role_iterator_name(iterator_t *)
const char * get_iterator_comment(iterator_t *)
void severity_data_add(severity_data_t *, double)
Add a severity occurrence to the counts of a severity_data_t.
Definition: manage.c:860
const char * port_range_iterator_end(iterator_t *)
Keyword.
Definition: manage.h:3428
unsigned int task_report_count(task_t)
gboolean lookup_report_format(const char *, report_format_t *)
gboolean next_report_type(report_type_iterator_t *)
Increment a report type iterator.
Definition: manage.c:6081
void reports_clear_count_cache_for_override(override_t, int)
int note_iterator_active(iterator_t *)
void init_nvt_preference_iterator(iterator_t *, const char *)
report_t task_running_report(task_t)
Return the running report of a task.
Definition: manage_sql.c:18393
int init_permission_iterator(iterator_t *, const get_data_t *)
const char * all_info_iterator_type(iterator_t *)
int permission_iterator_resource_readable(iterator_t *)
int create_group(const char *, const char *, const char *, int, group_t *)
int openvas_migrate_secinfo(const gchar *, int)
const char * task_iterator_run_status_name(iterator_t *)
Get the run status name from a task iterator.
Definition: manage_sql.c:14132
int create_port_list(const char *, const char *, const char *, const char *, array_t *, port_list_t *)
char * agent_uuid(agent_t)
char * id
ID of single item to get.
Definition: manage.h:317
const char * cert_bund_adv_info_iterator_title(iterator_t *)
int init_resource_tag_iterator(iterator_t *, const char *, resource_t, int, const char *, int)
int create_override(const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, task_t, result_t, override_t *)
int port_list_is_predefined(port_list_t)
gchar * event_description(event_t, const void *, const char *)
Get a description of an alert event.
Definition: manage.c:1114
time_t override_iterator_creation_time(iterator_t *)
int init_report_iterator(iterator_t *, const get_data_t *)
char * source_name
Source name.
Definition: manage.h:1196
int modify_permission(const char *, const char *, const char *, const char *, const char *, const char *, const char *)
int target_task_iterator_readable(iterator_t *)
const char * target_task_iterator_name(iterator_t *)
const char * override_iterator_text(iterator_t *)
int port_list_count(const get_data_t *)
const char * credential_scanner_iterator_name(iterator_t *)
int nvt_info_count(const get_data_t *)
gchar ** current
Current type.
Definition: manage.h:2616
const char * cpe_info_iterator_title(iterator_t *)
void set_task_hosts_ordering(task_t, const char *)
Set the hosts ordering of a task.
Definition: manage_sql.c:18152
void init_user_role_iterator(iterator_t *, user_t)
int qod_from_type(const char *)
int copy_target(const char *, const char *, const char *, target_t *)
int create_port_range(const char *, const char *, const char *, const char *, const char *, port_range_t *)
int trash_task_writable(task_t)
Return whether a trashcan task is writable.
Definition: manage_sql.c:14268
char * filter_name(filter_t)
char * filter_replacement
Filter term to replace the one in filt_id.
Definition: manage.h:316
int nvt_selector_iterator_type(iterator_t *)
const char * ovaldef_info_iterator_max_cvss(iterator_t *)
const char * target_iterator_port_list_uuid(iterator_t *)
void report_host_set_end_time(report_host_t, time_t)
int port_list_iterator_count_tcp(iterator_t *)
int role_in_use(role_t)
int init_ovaldef_info_iterator(iterator_t *, get_data_t *, const char *)
const char * setting_severity()
gboolean manage_migrate_needs_timezone(GSList *, const gchar *)
Check whether the migration needs the real timezone.
int resume_task(const char *, char **)
Resume a task.
Definition: manage.c:5543
void init_cve_nvt_iterator(iterator_t *, const char *, int, const char *)
char * scanner_key_priv(scanner_t)
int task_iterator_total_reports(iterator_t *)
Get the number of reports of a task iterator.
Definition: manage_sql.c:14104
gboolean find_trash_task_with_permission(const char *, task_t *, const char *)
gchar * manage_clean_filter(const gchar *)
Clean a filter.
Definition: manage_sql.c:2818
char * oid
NVT identifier.
Definition: manage.h:208
int type_is_scap(const char *)
Check if a type is a SCAP type.
Definition: manage.c:474
scanner_t task_scanner(task_t)
Return the scanner of a task.
Definition: manage_sql.c:18183
long long int report_format_param_iterator_type_max(iterator_t *)
void severity_data_add_count(severity_data_t *, double, int)
Add a multiple severity occurrences to the counts of a severity_data_t.
Definition: manage.c:878
gboolean find_config(const char *, config_t *)
int init_aggregate_iterator(iterator_t *, const char *, const get_data_t *, int, GArray *, const char *, const char *, GArray *, GArray *, int, int, const char *, const char *)
Initialise a GET_AGGREGATES iterator, including observed resources.
Definition: manage_sql.c:5402
char * ovaldef_cves(const char *)
int permission_iterator_subject_readable(iterator_t *)
int init_agent_iterator(iterator_t *, const get_data_t *)
int trash_id_exists(const char *, const char *)
Test Whether a resource of the given type and ID exists in the trash.
Definition: manage_sql.c:17780
int group_in_use(group_t)
int config_task_iterator_readable(iterator_t *)
int manage_scanner_set(const char *)
Set the address of scanner to connect to.
Definition: manage_sql.c:17377
void init_nvt_selector_iterator(iterator_t *, const char *, config_t, int)
int copy_agent(const char *, const char *, const char *, agent_t *)
int stop_task(const char *)
Initiate stopping a task.
Definition: manage.c:5514
char * report_format_extension(report_format_t)
const char * cve_info_iterator_complexity(iterator_t *)
gchar * fallback
Fallback value.
Definition: manage.h:2926
int start_task(const char *, char **)
Start a task.
Definition: manage.c:5399
const char ** type_filter_columns(const char *, int)
time_t schedule_iterator_initial_offset(iterator_t *)
user_t report_counts_build_iterator_user(iterator_t *)
int delete_group(const char *, int)
char * qod_type
QoD type.
Definition: manage.h:1183
const char * report_type_iterator_title(report_type_iterator_t *)
Return the title from a report type iterator.
Definition: manage.c:6109
int host_iterator_max_port(iterator_t *)
int alert_iterator_filter_readable(iterator_t *)
Return the filter readable state from an alert iterator.
Definition: manage_sql.c:8720
int report_format_in_use(report_format_t)
char * tag_uuid(target_t)
const char * result_iterator_severity(iterator_t *)
const char * ovaldef_info_iterator_title(iterator_t *)
int role_count(const get_data_t *)
int resource_id_exists(const char *, const char *)
Test whether a resource of the given type and unique ID exists.
Definition: manage_sql.c:17760
const char * result_iterator_nvt_bid(iterator_t *)
int init_cert_bund_adv_info_iterator(iterator_t *, get_data_t *, const char *)
gchar * user_ifaces(const char *)
const char * prognosis_iterator_description(iterator_t *)
const char * ovaldef_info_iterator_file(iterator_t *)
const char * cve_info_iterator_products(iterator_t *)
int init_cpe_info_iterator(iterator_t *, get_data_t *, const char *)
int nvt_selector_family_count(const char *, int)
gchar * type_opts_table(const char *, int, int, int)
int osp_get_details_from_iterator(iterator_t *, char **, GSList **)
char * target_reverse_lookup_only(target_t)
const char * note_iterator_nvt_name(iterator_t *)
int user_is_observer(const char *)
result_t override_iterator_result(iterator_t *)
void set_scan_end_time_otp(report_t, const char *)
int config_iterator_family_count(iterator_t *)
const char * credential_iterator_login(iterator_t *)
char * config_uuid(config_t)
time_t schedule_iterator_period(iterator_t *)
const char * all_info_iterator_extra(iterator_t *)
const char * config_task_iterator_uuid(iterator_t *)
int permission_is_admin(const char *)
int schedule_duration(schedule_t)
char * scan_nvt_version
Version of NVT used at scan time.
Definition: manage.h:1180
int trash_target_writable(target_t)
int user_ifaces_allow(const char *)
const char * report_format_iterator_summary(iterator_t *)
int task_debugs_size(task_t)
int trash_alert_writable(alert_t)
Return whether a trashcan alert is writable.
Definition: manage_sql.c:8549
int nvt_selector_family_growing(const char *, const char *, int)
gboolean find_resource(const char *, const char *, resource_t *)
Find a resource given a UUID.
Definition: manage_sql.c:4411
int report_progress(report_t, task_t, gchar **)
int create_report(array_t *, const char *, const char *, const char *, const char *, const char *, const char *, array_t *, array_t *, array_t *, char **)
void filter_free(array_t *)
Free a split filter.
Definition: manage_sql.c:2018
int init_alert_iterator(iterator_t *, const get_data_t *)
Initialise an alert iterator, including observed alerts.
Definition: manage_sql.c:8564
void init_schedule_task_iterator(iterator_t *, schedule_t)
void set_scan_host_start_time(report_t, const char *, const char *)
char * host
Host message describes.
Definition: manage.h:205
int resource_tag_count(const char *, resource_t, int)
const char * setting_iterator_uuid(iterator_t *)
const char * report_format_param_iterator_type_regex(iterator_t *)
const char * cpe_info_iterator_max_cvss(iterator_t *)
gboolean openvas_get_sync_script_description(const gchar *, gchar **)
void init_credential_scanner_iterator(iterator_t *, credential_t, int)
An NVT preference.
Definition: manage.h:1737
char * target_name(target_t)
int report_scan_result_count(report_t, const char *, const char *, int, const char *, const char *, int, int, int *)
long long int report_host_t
Definition: manage.h:289
int acknowledge_bye()
Acknowledge a scanner BYE.
Definition: manage.c:5705
int create_tag(const char *, const char *, const char *, const char *, const char *, const char *, tag_t *)
void init_port_range_iterator(iterator_t *, port_range_t, int, int, const char *)
int copy_note(const char *, note_t *)
const char * port_list_target_iterator_name(iterator_t *)
gboolean find_scanner(const char *, scanner_t *)
int note_uuid(note_t, char **)
const char * result_iterator_host(iterator_t *)
int manage_db_supported_version()
Return the database version supported by this manager.
Definition: manage_sql.c:6250
int copy_role(const char *, const char *, const char *, role_t *)
const char * target_iterator_ssh_port(iterator_t *)
int openvas_current_sync(const gchar *, gchar **, gchar **)
const char * user_group_iterator_name(iterator_t *)
int report_host_count(report_t)
int target_iterator_ssh_credential(iterator_t *)
unsigned int number
Port number.
Definition: manage.h:194
int manage_check_current_task()
Handle state changes to current task made by other processes.
Definition: manage.c:5733
void set_task_end_time(task_t task, char *time)
int manage_cert_db_version()
Return the database version of the actual database.
Definition: manage_sql.c:6333
int filter_in_use(filter_t)
char * credential_iterator_rpm(iterator_t *)
char * report_uuid(report_t)
int set_task_schedule(task_t, schedule_t, int)
Set the schedule of a task.
Definition: manage_sql.c:18808
command_t omp_commands[]
The OMP command list.
Definition: manage_sql.c:422
int trash_permission_writable(permission_t)
int override_count(const get_data_t *, nvt_t, result_t, task_t)
const char * family_iterator_name(iterator_t *)
int task_warnings_size(task_t)
const char * cpe_info_iterator_cve_refs(iterator_t *)
int config_file_iterator_length(iterator_t *)
int scanner_iterator_credential_trash(iterator_t *)
int copy_config(const char *, const char *, const char *, config_t *)
void manage_set_ldap_info(int, gchar *, gchar *, int, gchar *)
void set_task_config(task_t, config_t)
Set the config of a task.
Definition: manage_sql.c:18095
char * alert_uuid(alert_t)
Return the UUID of an alert.
Definition: manage_sql.c:8348
void init_user_target_iterator(iterator_t *, target_t)
char * config_nvt_selector(config_t)
void make_task_complete(const char *)
void init_target_iterator_one(iterator_t *, target_t)
const char * preference_iterator_hr_name(iterator_t *)
int copy_user(const char *, const char *, const char *, user_t *)
char * credential_iterator_exe(iterator_t *)
int delete_override(const char *, int)
const char * note_iterator_nvt_oid(iterator_t *)
int task_last_stopped_report(task_t, report_t *)
Get the report from the most recently stopped invocation of task.
Definition: manage_sql.c:18608
int target_iterator_esxi_trash(iterator_t *)
int copy_scanner(const char *, const char *, const char *, scanner_t *)
int request_delete_task(task_t *)
void manage_transaction_stop(gboolean)
char * task_severity(task_t, int, int, int)
Return the severity score of a task, taking overrides into account.
Definition: manage_sql.c:19094
int alert_iterator_filter_trash(iterator_t *)
Return the location of an alert iterator filter.
Definition: manage_sql.c:8702
int report_timestamp(const char *, gchar **)
int manage_delete_scanner(GSList *, const gchar *, const gchar *)
int manage_set_config(config_t, const char *, const char *, const char *)
const char * result_iterator_nvt_name(iterator_t *)
int manage_check_alerts(GSList *, const gchar *)
Check if any SecInfo alerts are due.
Definition: manage_sql.c:6886
const char * port_range_iterator_type(iterator_t *)
int modify_filter(const char *, const char *, const char *, const char *, const char *)
const char * nvt_iterator_solution_type(iterator_t *)
gboolean find_filter(const char *, filter_t *)
short scanner_active
int user_can_super_everyone(const char *)
int collate_message_type(void *data, int, const void *, int, const void *)
Collate two message type strings.
Definition: manage_sql.c:6638
int family_nvt_count(const char *)
void trim_partial_report(report_t)
char * trash_filter_uuid(filter_t)
const char * override_iterator_nvt_oid(iterator_t *)
int modify_alert(const char *, const char *, const char *, const char *, event_t, GPtrArray *, alert_condition_t, GPtrArray *, alert_method_t, GPtrArray *)
Modify an alert.
Definition: manage_sql.c:7894
int create_report_format(const char *, const char *, const char *, const char *, const char *, const char *, int, array_t *, array_t *, array_t *, const char *, report_format_t *)
void init_user_config_iterator(iterator_t *, config_t, int, int, const char *)
int task_schedule_periods(task_t)
Get the number of times the period schedule should run on the task.
Definition: manage_sql.c:18987
long long int note_t
Definition: manage.h:293
const char * setting_iterator_comment(iterator_t *)
const char * report_type_iterator_name(report_type_iterator_t *)
Return the name from a report type iterator.
Definition: manage.c:6096
const char * nvt_iterator_oid(iterator_t *)
int trash_config_in_use(config_t)
int trash_schedule_in_use(schedule_t)
const char * aggregate_iterator_text(iterator_t *, int, int)
Get the value of a text column from an aggregate iterator.
Definition: manage_sql.c:6003
const char * run_status_name(task_status_t)
Get the name of a run status.
Definition: manage.c:1253
int task_schedule_next_time(task_t)
Get next time a scheduled task will run, following schedule timezone.
Definition: manage_sql.c:19021
report_host_t manage_report_host_add(report_t, const char *, time_t, time_t)
int user_in_use(user_t)
int report_host_result_count(report_host_t)
const char * dfn_cert_adv_info_iterator_summary(iterator_t *)
gboolean openvas_get_sync_script_feed_version(const gchar *, gchar **)
const char * report_format_iterator_signature(iterator_t *)
int manage_set_config_families(config_t, GPtrArray *, GPtrArray *, GPtrArray *, int)
const char * scanner_iterator_ca_pub(iterator_t *)
void free_tasks()
int dfn_cert_adv_info_count(const get_data_t *get)
char * port_list_uuid(port_list_t)
const char * ovaldi_file_iterator_name(iterator_t *)
int create_config(const char *, const char *, const array_t *, const array_t *, const char *, config_t *, char **)
int user_is_super_admin(const char *)
Check whether a user is a Super Admin.
Definition: manage_acl.c:342
void set_nvts_feed_version(const char *)
const char * permission_iterator_resource_uuid(iterator_t *)
char * scanner_name(scanner_t)
int init_manage_helper(GSList *, const gchar *, int, void(*)())
Initialize the manage library for a helper program.
Definition: manage_sql.c:17102
int delete_filter(const char *, int)
int quoted
Whether the keyword was quoted.
Definition: manage.h:3434
const char * result_iterator_nvt_oid(iterator_t *)
nvt_t make_nvt_from_nvti(const nvti_t *, int)
char * report_format_uuid(report_format_t)
scanner_type
Scanner types.
Definition: manage.h:267
char * nvt_oid
OID of NVT.
Definition: manage.h:1179
const char * host_detail_iterator_source_id(iterator_t *)
int manage_test_alert(const char *, gchar **)
Test an alert.
Definition: manage_sql.c:13084
int permission_in_use(permission_t)
char * port_name_formatted(const char *)
Returns formatted port number, protocol and iana name from.
Definition: manage_sql.c:6378
char * source_desc
Source description.
Definition: manage.h:1195
A system report type iterator.
Definition: manage.h:2613
const char * tag_iterator_resource_type(iterator_t *)
int user_may(const char *)
int openvas_sync_feed(const gchar *, const gchar *, int)
int task_in_trash(task_t)
Return whether a task is in the trashcan.
Definition: manage_sql.c:17900
int report_scan_run_status(report_t, int *)
const char * type_name(const char *)
Return the name of a resource type.
Definition: manage.c:445
gboolean find_note_with_permission(const char *, note_t *, const char *)
int target_iterator_ssh_trash(iterator_t *)
const char * result_iterator_date(iterator_t *)
int manage_db_version()
Return the database version of the actual database.
Definition: manage_sql.c:6262
int ovaldef_info_count(const get_data_t *get)
time_t report_format_iterator_trust_time(iterator_t *)
const char * event_name(event_t)
Get the name of an alert event.
Definition: manage.c:1043
long long int report_format_param_t
Definition: manage.h:291
const char * cve_info_iterator_availability_impact(iterator_t *)
int copy_report_format(const char *, const char *, report_format_t *)
const char * setting_iterator_name(iterator_t *)
char * task_comment(task_t)
Return the comment of a task.
Definition: manage_sql.c:17959
int all_info_count(const get_data_t *)
int trash_filter_writable(filter_t)
const char * target_iterator_reverse_lookup_only(iterator_t *)
const char * credential_iterator_privacy_algorithm(iterator_t *)
int trash_credential_readable(credential_t)
gchar * alert_condition_description(alert_condition_t, alert_t)
Get a description of an alert condition.
Definition: manage.c:1063
keyword_type_t
Keyword type.
Definition: manage.h:3404
int trash_agent_in_use(agent_t)
char * trash_target_exclude_hosts(target_t)
int result_uuid(result_t, char **)
port_t port
The port.
Definition: manage.h:206
const char * report_format_iterator_content_type(iterator_t *)
The record of a message.
Definition: manage.h:203
int modify_setting(const gchar *, const gchar *, const gchar *, gchar **)
time_t override_iterator_end_time(iterator_t *)
int tag_iterator_resource_readable(iterator_t *)
char * name
Name of NVT selector.
Definition: manage.h:1754
int init_task_iterator(iterator_t *, const get_data_t *)
Initialise a task iterator.
Definition: manage_sql.c:14024
int report_counts_build_iterator_min_qod(iterator_t *)
int manage_cert_db_supported_version()
Return the database version supported by this manager.
Definition: manage_sql.c:6322
int config_iterator_nvts_growing(iterator_t *)
void manage_nvt_preferences_enable()
int config_in_use(config_t)
void init_report_format_alert_iterator(iterator_t *, report_format_t)
void set_credential_comment(credential_t, const char *)
int modify_port_list(const char *, const char *, const char *)
int acknowledge_feed_version_info()
Acknowledge scanner PLUGINS_FEED_VERSION message,.
Definition: manage.c:5719
long long int override_t
Definition: manage.h:295
int modify_report(const char *, const char *)
int report_counts_build_iterator_override(iterator_t *)
const char * permission_iterator_resource_type(iterator_t *)
int init_target_iterator(iterator_t *, const get_data_t *)
const char * cpe_info_iterator_status(iterator_t *)
int osp_get_version_from_iterator(iterator_t *, char **, char **, char **, char **, char **, char **)
int manage_set_config_nvts(config_t, const char *, GPtrArray *)
void init_config_file_iterator(iterator_t *, const char *, const char *)
int set_task_groups(task_t, array_t *, gchar **)
Set observer groups on a task, removing any previous groups.
Definition: manage_sql.c:18739
int manage_report_host_detail(report_t, const char *, const char *)
int trash_scanner_writable(scanner_t)
void init_task_alert_iterator(iterator_t *, task_t, event_t event)
Initialise a task alert iterator.
Definition: manage_sql.c:8837
gchar * credential_encrypted_value(credential_t, const char *)
char * target_uuid(target_t)
const char * result_iterator_nvt_family(iterator_t *)
int init_override_iterator(iterator_t *, const get_data_t *, nvt_t, result_t, task_t)
void reports_clear_count_cache(int)
int asset_host_count(const get_data_t *)
array_t * alts
Array of gchar&#39;s. Alternate values for radio type.
Definition: manage.h:1744
void add_task_alert(task_t, alert_t)
Add an alert to a task.
Definition: manage_sql.c:18656
double setting_default_severity_dbl()
const char * alert_task_iterator_uuid(iterator_t *)
Return the uuid from an alert task iterator.
Definition: manage_sql.c:13643
const char * target_iterator_exclude_hosts(iterator_t *)
int copy_alert(const char *, const char *, const char *, alert_t *)
Create an alert from an existing alert.
Definition: manage_sql.c:7814
long long int host_t
Definition: manage.h:283
const char * tag_iterator_resource_uuid(iterator_t *)
int manage_restore(const char *)
char * family_or_nvt
Family or NVT that this selector selects.
Definition: manage.h:1757
int trash_report_format_writable(report_format_t)
const char * setting_iterator_value(iterator_t *)
const char * tag_iterator_resource_name(iterator_t *)
int get_certificate_info(const gchar *, time_t *, time_t *, gchar **, gchar **)
Gathers info from a certificate.
Definition: manage.c:252
int modify_task_check_config_scanner(task_t, const char *, const char *)
void init_nvt_iterator(iterator_t *, nvt_t, config_t, const char *, const char *, int, const char *)
enum scanner_type scanner_type_t
Scanner types.
const char * agent_iterator_howto_use(iterator_t *)
int manage_scanner_set_default()
Set the default scanner as the scanner to connect to.
Definition: manage_sql.c:17440
int trash_target_in_use(target_t)
void manage_transaction_start()
int tag_iterator_active(iterator_t *)
char * schedule_uuid(schedule_t)
int nvt_selector_iterator_include(iterator_t *)
int create_scanner(const char *, const char *, const char *, const char *, const char *, scanner_t *, const char *, const char *)
double result_iterator_severity_double(iterator_t *)
char * nvt_preference_iterator_type(iterator_t *)
gchar ** start
First type.
Definition: manage.h:2615
void init_os_host_iterator(iterator_t *, resource_t)
int credential_count(const get_data_t *)
int valid_db_resource_type(const char *)
Check whether a resource type table name is valid.
Definition: manage_utils.c:504
const char * nvt_preference_iterator_name(iterator_t *)
const char * user_group_iterator_uuid(iterator_t *)
int init_report_format_iterator(iterator_t *, const get_data_t *)
time_t schedule_iterator_duration(iterator_t *)
int schedule_in_use(schedule_t)
int delete_port_range(const char *, int)
const char * target_iterator_reverse_lookup_unify(iterator_t *)
const char * schedule_task_iterator_name(iterator_t *)
gboolean find_scanner_with_permission(const char *, scanner_t *, const char *)
char * nvt_preference_iterator_real_name(iterator_t *)
int trash_target_readable(target_t)
const char * task_group_iterator_name(iterator_t *)
char * schedule_name(schedule_t)
int modify_target(const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *)
void add_task_description_line(task_t, const char *, size_t)
const char * host_detail_iterator_value(iterator_t *)
int include
Whether family/NVT is included or excluded.
Definition: manage.h:1756
int init_port_list_iterator(iterator_t *, const get_data_t *)
int host_identifier_iterator_source_orphan(iterator_t *)
char * credential_name(credential_t)
int target_iterator_smb_trash(iterator_t *)
int create_agent(const char *, const char *, const char *, const char *, const char *, const char *, const char *, agent_t *)
int result_detection_reference(result_t, char **, char **, char **, char **, char **)
double severity_data_value(int)
Convert an index in the counts array to a severity value.
Definition: manage.c:811
int manage_task_remove_file(task_t, const char *)
int config_families_growing(config_t)
const char * cpe_info_iterator_nvd_id(iterator_t *)
const char * scanner_uuid_default()
int create_task_check_config_scanner(config_t, scanner_t)
gchar * dir_name
Dir holding files.
Definition: manage.h:3055
char * nvt_preference_iterator_nvt(iterator_t *)
int total_info_count(const get_data_t *, int)
const char * resource_tag_iterator_name(iterator_t *)
const char * permission_iterator_resource_name(iterator_t *)
int user_resources_in_use(user_t, const char *, int(*)(resource_t), const char *, int(*)(resource_t))
void append_to_task_name(task_t, const char *, int)
const char * asset_host_iterator_severity(iterator_t *)
void manage_nvt_preference_add(const char *, const char *, int)
void report_set_slave_host(report_t, const gchar *)
int override_iterator_active(iterator_t *)
int severity_data_index(double)
Convert a severity value into an index in the counts array.
Definition: manage.c:789
int manage_get_scanners(GSList *, const gchar *)
int trash_schedule_readable(schedule_t)
const char * port_list_target_iterator_uuid(iterator_t *)
void set_report_format_summary(report_format_t, const char *)
int asset_iterator_writable(iterator_t *)
const char * cert_bund_adv_info_iterator_max_cvss(iterator_t *)
char * filter_replace
Column to replace in filter.
Definition: manage.h:315
int trash_report_format_global(report_format_t)
int user_is_user(const char *)
long long int task_t
Definition: manage.h:286
event_t
Types of task events.
Definition: manage.h:471
time_t note_iterator_modification_time(iterator_t *)
const char * scanner_task_iterator_uuid(iterator_t *)
const char * alert_data_iterator_name(iterator_t *)
Return the name from an alert data iterator.
Definition: manage_sql.c:8775
char * task_name(task_t)
Return the name of a task.
Definition: manage_sql.c:17945
Name value pair.
Definition: manage.h:63
int filter_writable(filter_t)
long long int scanner_t
Definition: manage.h:300
A host detail for create_report.
Definition: manage.h:1191
char * nvt_severity(const char *, const char *)
char * nvts_feed_version()
int tag_count(const get_data_t *get)
int ignore_pagination
Whether to ignore the pagination (first and max).
Definition: manage.h:322
int manage_scap_db_version()
Return the database version of the actual database.
Definition: manage_sql.c:6299
int delete_agent(const char *, int)
task_t note_iterator_task(iterator_t *)
const char * alert_method_name(alert_method_t)
Get the name of an alert method.
Definition: manage.c:1146
int trash_user_writable(user_t)
const char * all_info_iterator_severity(iterator_t *)
int modify_agent(const char *, const char *, const char *)
int task_infos_size(task_t)
int report_format_alert_iterator_readable(iterator_t *)
int init_scanner_iterator(iterator_t *, const get_data_t *)
int manage_delete_user(GSList *, const gchar *, const gchar *, const gchar *)
const char * alert_task_iterator_name(iterator_t *)
Return the name from an alert task iterator.
Definition: manage_sql.c:13627
char * scanner_key_pub(scanner_t)
void set_task_alterable(task_t, int)
Set the alterable state of a task.
Definition: manage_sql.c:18722
credentials_t current_credentials
Current credentials during any OMP command.
Definition: manage.c:717
int trash_target_login_port(target_t, const char *)
int target_login_port(target_t, const char *)
const char * preference_iterator_type(iterator_t *)
int minimal
Whether to respond with minimal information.
Definition: manage.h:323
void manage_cleanup_process_error(int)
Cleanup as immediately as possible.
Definition: manage_sql.c:17154
int user_has_super(const char *, user_t)
int set_task_schedule_periods(const gchar *, int)
Set the schedule periods of a task, given a UUID.
Definition: manage_sql.c:18869
void init_report_format_param_iterator(iterator_t *, report_format_t, int, int, const char *)
osp_connection_t * osp_scanner_connect(scanner_t)
report_format_param_type_t
Report format param types.
Definition: manage.h:3079
void set_scan_end_time_epoch(report_t, time_t)
int delete_credential(const char *, int)
gchar * xsl_transform(gchar *, gchar *, gchar **, gchar **)
Run xsltproc in an external process.
Definition: manage.c:7535
time_t note_iterator_creation_time(iterator_t *)
const char * nvt_selector_iterator_name(iterator_t *)
const char * credential_scanner_iterator_uuid(iterator_t *)
const char * cve_info_iterator_confidentiality_impact(iterator_t *)
report_format_param_type_t report_format_param_type_from_name(const char *)
Get a report format param type from a name.
Definition: manage.c:6978
int manage_trash_resource_name(const char *, const char *, char **)
Get the name of a trashcan resource.
Definition: manage_sql.c:4957
char * scan_start_time(report_t)
int delete_task_lock(task_t, int)
int create_alert(const char *, const char *, const char *, event_t, GPtrArray *, alert_condition_t, GPtrArray *, alert_method_t, GPtrArray *, alert_t *)
Create an alert.
Definition: manage_sql.c:7545
gchar * value
Param value.
Definition: manage.h:66
double double_value
Floating point value of the keyword.
Definition: manage.h:3433
int task_average_scan_duration(task_t)
Get the average duration of all finished reports of a task.
Definition: manage_sql.c:14283
int manage_read_info(gchar *, gchar *, gchar *, gchar **)
Read raw information.
Definition: manage.c:7889
int report_host_dead(report_host_t)
const char * preference_iterator_default(iterator_t *)
const char * filter_alert_iterator_name(iterator_t *)
char * filter
Filter term.
Definition: manage.h:314
const char * config_timeout_iterator_oid(iterator_t *)
void report_set_slave_username(report_t, const gchar *)
void init_param_option_iterator(iterator_t *, report_format_param_t, int, const char *)
void set_task_start_time(task_t, char *)
Set the start time of a task.
Definition: manage_sql.c:18493
long long int resource_t
A resource, like a task or target.
Definition: iterator.h:42
const char * alert_data_iterator_data(iterator_t *)
Return the data from an alert data iterator.
Definition: manage_sql.c:8792
gboolean find_config_with_permission(const char *, config_t *, const char *)
const char * aggregate_iterator_value(iterator_t *)
Get the value of the group column from a statistics iterator.
Definition: manage_sql.c:6025
long long int report_format_t
Definition: manage.h:290
const char * dfn_cert_adv_info_iterator_title(iterator_t *)
int delete_report_format(const char *, int)
int init_config_iterator(iterator_t *, const get_data_t *)
const char * credential_iterator_community(iterator_t *)
const char * task_trend(task_t, int, int)
int schedule_period(schedule_t)
const char * user_role_iterator_name(iterator_t *)
char * nvt_preference_iterator_config_value(iterator_t *, config_t)
int modify_role(const char *, const char *, const char *, const char *)
char * config_nvt_timeout(config_t, const char *)
int alert_writable(alert_t)
Return whether a alert is writable.
Definition: manage_sql.c:8536
void set_db_version(int version)
Set the database version of the actual database.
Definition: manage_sql.c:6416
void set_credential_privacy_algorithm(credential_t, const char *)
int permission_iterator_resource_orphan(iterator_t *)
gboolean openvas_get_sync_script_identification(const gchar *, gchar **, int)
time_t task_schedule_next_time_uuid(const gchar *)
Set the next time a scheduled task will be due.
Definition: manage_sql.c:19038