@cryptotaxi247 / netdata-1 / commits / ccfbdb5c3

Remove extern from function declared in headers. (#13790)

By default functions are declared as extern in C/C++ headers. The goal of this PR is to reduce the wall of text that many headers have and, more importantly, to make the declaration of extern'd variables - of which we have many dispersed in various places - easily and quickly identifiable. Automatically generated with: $ git grep -l '^extern.*(' '**.h' | \ grep -v libjudy | \ grep -v 'sqlite3.h' | \ xargs sed -i -e 's/extern \(.*(.*$\)/\1/' This is a NFC.

vkalintiris committed Oct 9, 2022 at 16:38 UTC ccfbdb5c3d253a391cab0561dfc8a524b93d2e7c
128 files changed +1269 -1269
collectors/ebpf.plugin/ebpf.h
+27 -27
@@ -163,8 +163,8 @@ enum ebpf_algorithms_list {
163 };
164
165 // Threads
166 -extern void *ebpf_process_thread(void *ptr);
167 -extern void *ebpf_socket_thread(void *ptr);
166 +void *ebpf_process_thread(void *ptr);
167 +void *ebpf_socket_thread(void *ptr);
168
169 // Common variables
170 extern pthread_mutex_t lock;
@@ -177,14 +177,14 @@ extern pthread_mutex_t collect_data_mutex;
177 extern pthread_cond_t collect_data_cond_var;
178
179 // Common functions
180 -extern void ebpf_global_labels(netdata_syscall_stat_t *is,
180 +void ebpf_global_labels(netdata_syscall_stat_t *is,
181 netdata_publish_syscall_t *pio,
182 char **dim,
183 char **name,
184 int *algorithm,
185 int end);
186
187 -extern void ebpf_write_chart_cmd(char *type,
187 +void ebpf_write_chart_cmd(char *type,
188 char *id,
189 char *title,
190 char *units,
@@ -195,11 +195,11 @@ extern void ebpf_write_chart_cmd(char *type,
195 int update_every,
196 char *module);
197
198 -extern void ebpf_write_global_dimension(char *name, char *id, char *algorithm);
198 +void ebpf_write_global_dimension(char *name, char *id, char *algorithm);
199
200 -extern void ebpf_create_global_dimension(void *ptr, int end);
200 +void ebpf_create_global_dimension(void *ptr, int end);
201
202 -extern void ebpf_create_chart(char *type,
202 +void ebpf_create_chart(char *type,
203 char *id,
204 char *title,
205 char *units,
@@ -213,18 +213,18 @@ extern void ebpf_create_chart(char *type,
213 int update_every,
214 char *module);
215
216 -extern void write_begin_chart(char *family, char *name);
216 +void write_begin_chart(char *family, char *name);
217
218 -extern void write_chart_dimension(char *dim, long long value);
218 +void write_chart_dimension(char *dim, long long value);
219
220 -extern void write_count_chart(char *name, char *family, netdata_publish_syscall_t *move, uint32_t end);
220 +void write_count_chart(char *name, char *family, netdata_publish_syscall_t *move, uint32_t end);
221
222 -extern void write_err_chart(char *name, char *family, netdata_publish_syscall_t *move, int end);
222 +void write_err_chart(char *name, char *family, netdata_publish_syscall_t *move, int end);
223
224 -extern void write_io_chart(char *chart, char *family, char *dwrite, long long vwrite,
224 +void write_io_chart(char *chart, char *family, char *dwrite, long long vwrite,
225 char *dread, long long vread);
226
227 -extern void ebpf_create_charts_on_apps(char *name,
227 +void ebpf_create_charts_on_apps(char *name,
228 char *title,
229 char *units,
230 char *family,
@@ -235,15 +235,15 @@ extern void ebpf_create_charts_on_apps(char *name,
235 int update_every,
236 char *module);
237
238 -extern void write_end_chart();
238 +void write_end_chart();
239
240 -extern void ebpf_cleanup_publish_syscall(netdata_publish_syscall_t *nps);
240 +void ebpf_cleanup_publish_syscall(netdata_publish_syscall_t *nps);
241
242 -extern int ebpf_enable_tracepoint(ebpf_tracepoint_t *tp);
243 -extern int ebpf_disable_tracepoint(ebpf_tracepoint_t *tp);
244 -extern uint32_t ebpf_enable_tracepoints(ebpf_tracepoint_t *tps);
242 +int ebpf_enable_tracepoint(ebpf_tracepoint_t *tp);
243 +int ebpf_disable_tracepoint(ebpf_tracepoint_t *tp);
244 +uint32_t ebpf_enable_tracepoints(ebpf_tracepoint_t *tps);
245
246 -extern void ebpf_pid_file(char *filename, size_t length);
246 +void ebpf_pid_file(char *filename, size_t length);
247
248 #define EBPF_PROGRAMS_SECTION "ebpf programs"
249
@@ -279,15 +279,15 @@ extern void *default_btf;
279
280 // Socket functions and variables
281 // Common functions
282 -extern void ebpf_process_create_apps_charts(struct ebpf_module *em, void *ptr);
283 -extern void ebpf_socket_create_apps_charts(struct ebpf_module *em, void *ptr);
284 -extern void ebpf_cachestat_create_apps_charts(struct ebpf_module *em, void *root);
285 -extern void ebpf_one_dimension_write_charts(char *family, char *chart, char *dim, long long v1);
286 -extern collected_number get_value_from_structure(char *basis, size_t offset);
287 -extern void ebpf_update_pid_table(ebpf_local_maps_t *pid, ebpf_module_t *em);
288 -extern void ebpf_write_chart_obsolete(char *type, char *id, char *title, char *units, char *family,
282 +void ebpf_process_create_apps_charts(struct ebpf_module *em, void *ptr);
283 +void ebpf_socket_create_apps_charts(struct ebpf_module *em, void *ptr);
284 +void ebpf_cachestat_create_apps_charts(struct ebpf_module *em, void *root);
285 +void ebpf_one_dimension_write_charts(char *family, char *chart, char *dim, long long v1);
286 +collected_number get_value_from_structure(char *basis, size_t offset);
287 +void ebpf_update_pid_table(ebpf_local_maps_t *pid, ebpf_module_t *em);
288 +void ebpf_write_chart_obsolete(char *type, char *id, char *title, char *units, char *family,
289 char *charttype, char *context, int order, int update_every);
290 -extern void write_histogram_chart(char *family, char *name, const netdata_idx_t *hist, char **dimensions, uint32_t end);
290 +void write_histogram_chart(char *family, char *name, const netdata_idx_t *hist, char **dimensions, uint32_t end);
291 void ebpf_update_disabled_plugin_stats(ebpf_module_t *em);
292 extern ebpf_filesystem_partitions_t localfs[];
293 extern ebpf_sync_syscalls_t local_syscalls[];
collectors/ebpf.plugin/ebpf_apps.h
+10 -10
@@ -408,30 +408,30 @@ static inline void debug_log_int(const char *fmt, ...)
408 //
409 extern struct pid_stat **all_pids;
410
411 -extern int ebpf_read_apps_groups_conf(struct target **apps_groups_default_target,
411 +int ebpf_read_apps_groups_conf(struct target **apps_groups_default_target,
412 struct target **apps_groups_root_target,
413 const char *path,
414 const char *file);
415
416 -extern void clean_apps_groups_target(struct target *apps_groups_root_target);
416 +void clean_apps_groups_target(struct target *apps_groups_root_target);
417
418 -extern size_t zero_all_targets(struct target *root);
418 +size_t zero_all_targets(struct target *root);
419
420 -extern int am_i_running_as_root();
420 +int am_i_running_as_root();
421
422 -extern void cleanup_exited_pids();
422 +void cleanup_exited_pids();
423
424 -extern int ebpf_read_hash_table(void *ep, int fd, uint32_t pid);
424 +int ebpf_read_hash_table(void *ep, int fd, uint32_t pid);
425
426 -extern int get_pid_comm(pid_t pid, size_t n, char *dest);
426 +int get_pid_comm(pid_t pid, size_t n, char *dest);
427
428 -extern size_t read_processes_statistic_using_pid_on_target(ebpf_process_stat_t **ep,
428 +size_t read_processes_statistic_using_pid_on_target(ebpf_process_stat_t **ep,
429 int fd,
430 struct pid_on_target *pids);
431
432 -extern size_t read_bandwidth_statistic_using_pid_on_target(ebpf_bandwidth_t **ep, int fd, struct pid_on_target *pids);
432 +size_t read_bandwidth_statistic_using_pid_on_target(ebpf_bandwidth_t **ep, int fd, struct pid_on_target *pids);
433
434 -extern void collect_data_for_all_processes(int tbl_pid_stats_fd);
434 +void collect_data_for_all_processes(int tbl_pid_stats_fd);
435
436 extern ebpf_process_stat_t **global_process_stats;
437 extern ebpf_process_publish_apps_t **current_apps_data;
collectors/ebpf.plugin/ebpf_cachestat.h
+1 -1
@@ -81,7 +81,7 @@ typedef struct netdata_publish_cachestat {
81 netdata_cachestat_pid_t prev;
82 } netdata_publish_cachestat_t;
83
84 -extern void *ebpf_cachestat_thread(void *ptr);
84 +void *ebpf_cachestat_thread(void *ptr);
85
86 extern struct config cachestat_config;
87 extern netdata_ebpf_targets_t cachestat_targets[];
collectors/ebpf.plugin/ebpf_cgroup.h
+4 -4
@@ -60,10 +60,10 @@ typedef struct ebpf_cgroup_target {
60 struct ebpf_cgroup_target *next;
61 } ebpf_cgroup_target_t;
62
63 -extern void ebpf_map_cgroup_shared_memory();
64 -extern void ebpf_parse_cgroup_shm_data();
65 -extern void ebpf_close_cgroup_shm();
66 -extern void ebpf_create_charts_on_systemd(char *id, char *title, char *units, char *family, char *charttype, int order,
63 +void ebpf_map_cgroup_shared_memory();
64 +void ebpf_parse_cgroup_shm_data();
65 +void ebpf_close_cgroup_shm();
66 +void ebpf_create_charts_on_systemd(char *id, char *title, char *units, char *family, char *charttype, int order,
67 char *algorithm, char *context, char *module, int update_every);
68
69 #endif /* NETDATA_EBPF_CGROUP_H */
collectors/ebpf.plugin/ebpf_dcstat.h
+2 -2
@@ -75,8 +75,8 @@ typedef struct netdata_publish_dcstat {
75 netdata_dcstat_pid_t prev;
76 } netdata_publish_dcstat_t;
77
78 -extern void *ebpf_dcstat_thread(void *ptr);
79 -extern void ebpf_dcstat_create_apps_charts(struct ebpf_module *em, void *ptr);
78 +void *ebpf_dcstat_thread(void *ptr);
79 +void ebpf_dcstat_create_apps_charts(struct ebpf_module *em, void *ptr);
80 extern struct config dcstat_config;
81 extern netdata_ebpf_targets_t dc_targets[];
82 extern ebpf_local_maps_t dcstat_maps[];
collectors/ebpf.plugin/ebpf_disk.h
+1 -1
@@ -72,7 +72,7 @@ typedef struct netdata_ebpf_publish_disk {
72
73 extern struct config disk_config;
74
75 -extern void *ebpf_disk_thread(void *ptr);
75 +void *ebpf_disk_thread(void *ptr);
76
77 #endif /* NETDATA_EBPF_DISK_H */
78
collectors/ebpf.plugin/ebpf_fd.h
+2 -2
@@ -75,8 +75,8 @@ enum fd_syscalls {
75 };
76
77
78 -extern void *ebpf_fd_thread(void *ptr);
79 -extern void ebpf_fd_create_apps_charts(struct ebpf_module *em, void *ptr);
78 +void *ebpf_fd_thread(void *ptr);
79 +void ebpf_fd_create_apps_charts(struct ebpf_module *em, void *ptr);
80 extern struct config fd_config;
81 extern netdata_fd_stat_t **fd_pid;
82 extern netdata_ebpf_targets_t fd_targets[];
collectors/ebpf.plugin/ebpf_filesystem.h
+1 -1
@@ -43,7 +43,7 @@ enum netdata_filesystem_table {
43 NETDATA_ADDR_FS_TABLE
44 };
45
46 -extern void *ebpf_filesystem_thread(void *ptr);
46 +void *ebpf_filesystem_thread(void *ptr);
47 extern struct config fs_config;
48
49 #endif /* NETDATA_EBPF_FILESYSTEM_H */
collectors/ebpf.plugin/ebpf_hardirq.h
+1 -1
@@ -68,6 +68,6 @@ typedef struct hardirq_static_val {
68 } hardirq_static_val_t;
69
70 extern struct config hardirq_config;
71 -extern void *ebpf_hardirq_thread(void *ptr);
71 +void *ebpf_hardirq_thread(void *ptr);
72
73 #endif /* NETDATA_EBPF_HARDIRQ_H */
collectors/ebpf.plugin/ebpf_mdflush.h
+1 -1
@@ -35,7 +35,7 @@ typedef struct netdata_mdflush {
35 uint64_t cnt;
36 } netdata_mdflush_t;
37
38 -extern void *ebpf_mdflush_thread(void *ptr);
38 +void *ebpf_mdflush_thread(void *ptr);
39
40 extern struct config mdflush_config;
41
collectors/ebpf.plugin/ebpf_mount.h
+1 -1
@@ -38,7 +38,7 @@ enum netdata_mount_syscalls {
38 };
39
40 extern struct config mount_config;
41 -extern void *ebpf_mount_thread(void *ptr);
41 +void *ebpf_mount_thread(void *ptr);
42 extern netdata_ebpf_targets_t mount_targets[];
43
44 #endif /* NETDATA_EBPF_MOUNT_H */
collectors/ebpf.plugin/ebpf_oomkill.h
+2 -2
@@ -26,7 +26,7 @@ typedef uint8_t oomkill_ebpf_val_t;
26 #define NETDATA_CGROUP_OOMKILLS_CONTEXT "cgroup.oomkills"
27
28 extern struct config oomkill_config;
29 -extern void *ebpf_oomkill_thread(void *ptr);
30 -extern void ebpf_oomkill_create_apps_charts(struct ebpf_module *em, void *ptr);
29 +void *ebpf_oomkill_thread(void *ptr);
30 +void ebpf_oomkill_create_apps_charts(struct ebpf_module *em, void *ptr);
31
32 #endif /* NETDATA_EBPF_OOMKILL_H */
collectors/ebpf.plugin/ebpf_shm.h
+2 -2
@@ -54,8 +54,8 @@ enum shm_counters {
54
55 extern netdata_publish_shm_t **shm_pid;
56
57 -extern void *ebpf_shm_thread(void *ptr);
58 -extern void ebpf_shm_create_apps_charts(struct ebpf_module *em, void *ptr);
57 +void *ebpf_shm_thread(void *ptr);
58 +void ebpf_shm_create_apps_charts(struct ebpf_module *em, void *ptr);
59 extern netdata_ebpf_targets_t shm_targets[];
60
61 extern struct config shm_config;
collectors/ebpf.plugin/ebpf_socket.h
+5 -5
@@ -356,12 +356,12 @@ typedef struct netdata_vector_plot {
356
357 } netdata_vector_plot_t;
358
359 -extern void clean_port_structure(ebpf_network_viewer_port_list_t **clean);
359 +void clean_port_structure(ebpf_network_viewer_port_list_t **clean);
360 extern ebpf_network_viewer_port_list_t *listen_ports;
361 -extern void update_listen_table(uint16_t value, uint16_t proto, netdata_passive_connection_t *values);
362 -extern void parse_network_viewer_section(struct config *cfg);
363 -extern void fill_ip_list(ebpf_network_viewer_ip_list_t **out, ebpf_network_viewer_ip_list_t *in, char *table);
364 -extern void parse_service_name_section(struct config *cfg);
361 +void update_listen_table(uint16_t value, uint16_t proto, netdata_passive_connection_t *values);
362 +void parse_network_viewer_section(struct config *cfg);
363 +void fill_ip_list(ebpf_network_viewer_ip_list_t **out, ebpf_network_viewer_ip_list_t *in, char *table);
364 +void parse_service_name_section(struct config *cfg);
365
366 extern ebpf_socket_publish_apps_t **socket_bandwidth_curr;
367 extern struct config socket_config;
collectors/ebpf.plugin/ebpf_softirq.h
+1 -1
@@ -29,6 +29,6 @@ typedef struct sofirq_val {
29 } softirq_val_t;
30
31 extern struct config softirq_config;
32 -extern void *ebpf_softirq_thread(void *ptr);
32 +void *ebpf_softirq_thread(void *ptr);
33
34 #endif /* NETDATA_EBPF_SOFTIRQ_H */
collectors/ebpf.plugin/ebpf_swap.h
+2 -2
@@ -44,8 +44,8 @@ enum swap_counters {
44
45 extern netdata_publish_swap_t **swap_pid;
46
47 -extern void *ebpf_swap_thread(void *ptr);
48 -extern void ebpf_swap_create_apps_charts(struct ebpf_module *em, void *ptr);
47 +void *ebpf_swap_thread(void *ptr);
48 +void ebpf_swap_create_apps_charts(struct ebpf_module *em, void *ptr);
49
50 extern struct config swap_config;
51 extern netdata_ebpf_targets_t swap_targets[];
collectors/ebpf.plugin/ebpf_sync.h
+1 -1
@@ -52,7 +52,7 @@ enum netdata_sync_table {
52 NETDATA_SYNC_GLOBAL_TABLE
53 };
54
55 -extern void *ebpf_sync_thread(void *ptr);
55 +void *ebpf_sync_thread(void *ptr);
56 extern struct config sync_config;
57 extern netdata_ebpf_targets_t sync_targets[];
58
collectors/ebpf.plugin/ebpf_vfs.h
+2 -2
@@ -168,8 +168,8 @@ enum netdata_vfs_calls_name {
168
169 extern netdata_publish_vfs_t **vfs_pid;
170
171 -extern void *ebpf_vfs_thread(void *ptr);
172 -extern void ebpf_vfs_create_apps_charts(struct ebpf_module *em, void *ptr);
171 +void *ebpf_vfs_thread(void *ptr);
172 +void ebpf_vfs_create_apps_charts(struct ebpf_module *em, void *ptr);
173 extern netdata_ebpf_targets_t vfs_targets[];
174
175 extern struct config vfs_config;
collectors/freebsd.plugin/plugin_freebsd.h
+35 -35
@@ -13,41 +13,41 @@
13
14 #define MAX_INT_DIGITS 10 // maximum number of digits for int
15
16 -extern int freebsd_plugin_init();
17 -
18 -extern int do_vm_loadavg(int update_every, usec_t dt);
19 -extern int do_vm_vmtotal(int update_every, usec_t dt);
20 -extern int do_kern_cp_time(int update_every, usec_t dt);
21 -extern int do_kern_cp_times(int update_every, usec_t dt);
22 -extern int do_dev_cpu_temperature(int update_every, usec_t dt);
23 -extern int do_dev_cpu_0_freq(int update_every, usec_t dt);
24 -extern int do_hw_intcnt(int update_every, usec_t dt);
25 -extern int do_vm_stats_sys_v_intr(int update_every, usec_t dt);
26 -extern int do_vm_stats_sys_v_soft(int update_every, usec_t dt);
27 -extern int do_vm_stats_sys_v_swtch(int update_every, usec_t dt);
28 -extern int do_vm_stats_sys_v_forks(int update_every, usec_t dt);
29 -extern int do_vm_swap_info(int update_every, usec_t dt);
30 -extern int do_system_ram(int update_every, usec_t dt);
31 -extern int do_vm_stats_sys_v_swappgs(int update_every, usec_t dt);
32 -extern int do_vm_stats_sys_v_pgfaults(int update_every, usec_t dt);
33 -extern int do_kern_ipc_sem(int update_every, usec_t dt);
34 -extern int do_kern_ipc_shm(int update_every, usec_t dt);
35 -extern int do_kern_ipc_msq(int update_every, usec_t dt);
36 -extern int do_uptime(int update_every, usec_t dt);
37 -extern int do_net_isr(int update_every, usec_t dt);
38 -extern int do_net_inet_tcp_states(int update_every, usec_t dt);
39 -extern int do_net_inet_tcp_stats(int update_every, usec_t dt);
40 -extern int do_net_inet_udp_stats(int update_every, usec_t dt);
41 -extern int do_net_inet_icmp_stats(int update_every, usec_t dt);
42 -extern int do_net_inet_ip_stats(int update_every, usec_t dt);
43 -extern int do_net_inet6_ip6_stats(int update_every, usec_t dt);
44 -extern int do_net_inet6_icmp6_stats(int update_every, usec_t dt);
45 -extern int do_getifaddrs(int update_every, usec_t dt);
46 -extern int do_getmntinfo(int update_every, usec_t dt);
47 -extern int do_kern_devstat(int update_every, usec_t dt);
48 -extern int do_kstat_zfs_misc_arcstats(int update_every, usec_t dt);
49 -extern int do_kstat_zfs_misc_zio_trim(int update_every, usec_t dt);
50 -extern int do_ipfw(int update_every, usec_t dt);
16 +int freebsd_plugin_init();
17 +
18 +int do_vm_loadavg(int update_every, usec_t dt);
19 +int do_vm_vmtotal(int update_every, usec_t dt);
20 +int do_kern_cp_time(int update_every, usec_t dt);
21 +int do_kern_cp_times(int update_every, usec_t dt);
22 +int do_dev_cpu_temperature(int update_every, usec_t dt);
23 +int do_dev_cpu_0_freq(int update_every, usec_t dt);
24 +int do_hw_intcnt(int update_every, usec_t dt);
25 +int do_vm_stats_sys_v_intr(int update_every, usec_t dt);
26 +int do_vm_stats_sys_v_soft(int update_every, usec_t dt);
27 +int do_vm_stats_sys_v_swtch(int update_every, usec_t dt);
28 +int do_vm_stats_sys_v_forks(int update_every, usec_t dt);
29 +int do_vm_swap_info(int update_every, usec_t dt);
30 +int do_system_ram(int update_every, usec_t dt);
31 +int do_vm_stats_sys_v_swappgs(int update_every, usec_t dt);
32 +int do_vm_stats_sys_v_pgfaults(int update_every, usec_t dt);
33 +int do_kern_ipc_sem(int update_every, usec_t dt);
34 +int do_kern_ipc_shm(int update_every, usec_t dt);
35 +int do_kern_ipc_msq(int update_every, usec_t dt);
36 +int do_uptime(int update_every, usec_t dt);
37 +int do_net_isr(int update_every, usec_t dt);
38 +int do_net_inet_tcp_states(int update_every, usec_t dt);
39 +int do_net_inet_tcp_stats(int update_every, usec_t dt);
40 +int do_net_inet_udp_stats(int update_every, usec_t dt);
41 +int do_net_inet_icmp_stats(int update_every, usec_t dt);
42 +int do_net_inet_ip_stats(int update_every, usec_t dt);
43 +int do_net_inet6_ip6_stats(int update_every, usec_t dt);
44 +int do_net_inet6_icmp6_stats(int update_every, usec_t dt);
45 +int do_getifaddrs(int update_every, usec_t dt);
46 +int do_getmntinfo(int update_every, usec_t dt);
47 +int do_kern_devstat(int update_every, usec_t dt);
48 +int do_kstat_zfs_misc_arcstats(int update_every, usec_t dt);
49 +int do_kstat_zfs_misc_zio_trim(int update_every, usec_t dt);
50 +int do_ipfw(int update_every, usec_t dt);
51
52 // metrics that need to be shared among data collectors
53 extern unsigned long long zfs_arcstats_shrinkable_cache_size_bytes;
collectors/macos.plugin/plugin_macos.h
+3 -3
@@ -5,8 +5,8 @@
5
6 #include "daemon/common.h"
7
8 -extern int do_macos_sysctl(int update_every, usec_t dt);
9 -extern int do_macos_mach_smi(int update_every, usec_t dt);
10 -extern int do_macos_iokit(int update_every, usec_t dt);
8 +int do_macos_sysctl(int update_every, usec_t dt);
9 +int do_macos_mach_smi(int update_every, usec_t dt);
10 +int do_macos_iokit(int update_every, usec_t dt);
11
12 #endif /* NETDATA_PLUGIN_MACOS_H */
collectors/plugins.d/plugins_d.h
+2 -2
@@ -67,9 +67,9 @@ struct plugind {
67
68 extern struct plugind *pluginsd_root;
69
70 -extern size_t pluginsd_process(RRDHOST *host, struct plugind *cd, FILE *fp_plugin_input, FILE *fp_plugin_output, int trust_durations);
70 +size_t pluginsd_process(RRDHOST *host, struct plugind *cd, FILE *fp_plugin_input, FILE *fp_plugin_output, int trust_durations);
71
72 -extern int pluginsd_initialize_plugin_directories();
72 +int pluginsd_initialize_plugin_directories();
73
74
75
collectors/plugins.d/pluginsd_parser.h
+13 -13
@@ -22,22 +22,22 @@ typedef struct parser_user_object {
22 void *private; // the user can set this for private use
23 } PARSER_USER_OBJECT;
24
25 -extern PARSER_RC pluginsd_set_action(void *user, RRDSET *st, RRDDIM *rd, long long int value);
26 -extern PARSER_RC pluginsd_flush_action(void *user, RRDSET *st);
27 -extern PARSER_RC pluginsd_begin_action(void *user, RRDSET *st, usec_t microseconds, int trust_durations);
28 -extern PARSER_RC pluginsd_end_action(void *user, RRDSET *st);
29 -extern PARSER_RC pluginsd_chart_action(void *user, char *type, char *id, char *name, char *family, char *context,
25 +PARSER_RC pluginsd_set_action(void *user, RRDSET *st, RRDDIM *rd, long long int value);
26 +PARSER_RC pluginsd_flush_action(void *user, RRDSET *st);
27 +PARSER_RC pluginsd_begin_action(void *user, RRDSET *st, usec_t microseconds, int trust_durations);
28 +PARSER_RC pluginsd_end_action(void *user, RRDSET *st);
29 +PARSER_RC pluginsd_chart_action(void *user, char *type, char *id, char *name, char *family, char *context,
30 char *title, char *units, char *plugin, char *module, int priority,
31 int update_every, RRDSET_TYPE chart_type, char *options);
32 -extern PARSER_RC pluginsd_disable_action(void *user);
33 -extern PARSER_RC pluginsd_variable_action(void *user, RRDHOST *host, RRDSET *st, char *name, int global, NETDATA_DOUBLE value);
34 -extern PARSER_RC pluginsd_dimension_action(void *user, RRDSET *st, char *id, char *name, char *algorithm,
32 +PARSER_RC pluginsd_disable_action(void *user);
33 +PARSER_RC pluginsd_variable_action(void *user, RRDHOST *host, RRDSET *st, char *name, int global, NETDATA_DOUBLE value);
34 +PARSER_RC pluginsd_dimension_action(void *user, RRDSET *st, char *id, char *name, char *algorithm,
35 long multiplier, long divisor, char *options, RRD_ALGORITHM algorithm_type);
36 -extern PARSER_RC pluginsd_label_action(void *user, char *key, char *value, RRDLABEL_SRC source);
37 -extern PARSER_RC pluginsd_overwrite_action(void *user, RRDHOST *host, DICTIONARY *new_host_labels);
36 +PARSER_RC pluginsd_label_action(void *user, char *key, char *value, RRDLABEL_SRC source);
37 +PARSER_RC pluginsd_overwrite_action(void *user, RRDHOST *host, DICTIONARY *new_host_labels);
38
39 -extern PARSER_RC pluginsd_function(char **words, void *user, PLUGINSD_ACTION *plugins_action);
40 -extern PARSER_RC pluginsd_function_result_begin(char **words, void *user, PLUGINSD_ACTION *plugins_action);
41 -extern void inflight_functions_init(PARSER *parser);
39 +PARSER_RC pluginsd_function(char **words, void *user, PLUGINSD_ACTION *plugins_action);
40 +PARSER_RC pluginsd_function_result_begin(char **words, void *user, PLUGINSD_ACTION *plugins_action);
41 +void inflight_functions_init(PARSER *parser);
42
43 #endif //NETDATA_PLUGINSD_PARSER_H
collectors/proc.plugin/plugin_proc.h
+39 -39
@@ -9,58 +9,58 @@
9 #define PLUGIN_PROC_NAME PLUGIN_PROC_CONFIG_NAME ".plugin"
10
11 #define THREAD_NETDEV_NAME "PLUGIN[proc netdev]"
12 -extern void *netdev_main(void *ptr);
12 +void *netdev_main(void *ptr);
13
14 -extern int do_proc_net_wireless(int update_every, usec_t dt);
15 -extern int do_proc_diskstats(int update_every, usec_t dt);
16 -extern int do_proc_mdstat(int update_every, usec_t dt);
17 -extern int do_proc_net_snmp(int update_every, usec_t dt);
18 -extern int do_proc_net_snmp6(int update_every, usec_t dt);
19 -extern int do_proc_net_netstat(int update_every, usec_t dt);
20 -extern int do_proc_net_stat_conntrack(int update_every, usec_t dt);
21 -extern int do_proc_net_ip_vs_stats(int update_every, usec_t dt);
22 -extern int do_proc_stat(int update_every, usec_t dt);
23 -extern int do_proc_meminfo(int update_every, usec_t dt);
24 -extern int do_proc_vmstat(int update_every, usec_t dt);
25 -extern int do_proc_net_rpc_nfs(int update_every, usec_t dt);
26 -extern int do_proc_net_rpc_nfsd(int update_every, usec_t dt);
27 -extern int do_proc_sys_kernel_random_entropy_avail(int update_every, usec_t dt);
28 -extern int do_proc_interrupts(int update_every, usec_t dt);
29 -extern int do_proc_softirqs(int update_every, usec_t dt);
30 -extern int do_proc_pressure(int update_every, usec_t dt);
31 -extern int do_sys_kernel_mm_ksm(int update_every, usec_t dt);
32 -extern int do_sys_block_zram(int update_every, usec_t dt);
33 -extern int do_proc_loadavg(int update_every, usec_t dt);
34 -extern int do_proc_net_stat_synproxy(int update_every, usec_t dt);
35 -extern int do_proc_net_softnet_stat(int update_every, usec_t dt);
36 -extern int do_proc_uptime(int update_every, usec_t dt);
37 -extern int do_proc_sys_devices_system_edac_mc(int update_every, usec_t dt);
38 -extern int do_proc_sys_devices_system_node(int update_every, usec_t dt);
39 -extern int do_proc_spl_kstat_zfs_arcstats(int update_every, usec_t dt);
40 -extern int do_proc_spl_kstat_zfs_pool_state(int update_every, usec_t dt);
41 -extern int do_sys_fs_btrfs(int update_every, usec_t dt);
42 -extern int do_proc_net_sockstat(int update_every, usec_t dt);
43 -extern int do_proc_net_sockstat6(int update_every, usec_t dt);
44 -extern int do_proc_net_sctp_snmp(int update_every, usec_t dt);
45 -extern int do_ipc(int update_every, usec_t dt);
46 -extern int do_sys_class_power_supply(int update_every, usec_t dt);
47 -extern int do_proc_pagetypeinfo(int update_every, usec_t dt);
48 -extern int do_sys_class_infiniband(int update_every, usec_t dt);
49 -extern int get_numa_node_count(void);
14 +int do_proc_net_wireless(int update_every, usec_t dt);
15 +int do_proc_diskstats(int update_every, usec_t dt);
16 +int do_proc_mdstat(int update_every, usec_t dt);
17 +int do_proc_net_snmp(int update_every, usec_t dt);
18 +int do_proc_net_snmp6(int update_every, usec_t dt);
19 +int do_proc_net_netstat(int update_every, usec_t dt);
20 +int do_proc_net_stat_conntrack(int update_every, usec_t dt);
21 +int do_proc_net_ip_vs_stats(int update_every, usec_t dt);
22 +int do_proc_stat(int update_every, usec_t dt);
23 +int do_proc_meminfo(int update_every, usec_t dt);
24 +int do_proc_vmstat(int update_every, usec_t dt);
25 +int do_proc_net_rpc_nfs(int update_every, usec_t dt);
26 +int do_proc_net_rpc_nfsd(int update_every, usec_t dt);
27 +int do_proc_sys_kernel_random_entropy_avail(int update_every, usec_t dt);
28 +int do_proc_interrupts(int update_every, usec_t dt);
29 +int do_proc_softirqs(int update_every, usec_t dt);
30 +int do_proc_pressure(int update_every, usec_t dt);
31 +int do_sys_kernel_mm_ksm(int update_every, usec_t dt);
32 +int do_sys_block_zram(int update_every, usec_t dt);
33 +int do_proc_loadavg(int update_every, usec_t dt);
34 +int do_proc_net_stat_synproxy(int update_every, usec_t dt);
35 +int do_proc_net_softnet_stat(int update_every, usec_t dt);
36 +int do_proc_uptime(int update_every, usec_t dt);
37 +int do_proc_sys_devices_system_edac_mc(int update_every, usec_t dt);
38 +int do_proc_sys_devices_system_node(int update_every, usec_t dt);
39 +int do_proc_spl_kstat_zfs_arcstats(int update_every, usec_t dt);
40 +int do_proc_spl_kstat_zfs_pool_state(int update_every, usec_t dt);
41 +int do_sys_fs_btrfs(int update_every, usec_t dt);
42 +int do_proc_net_sockstat(int update_every, usec_t dt);
43 +int do_proc_net_sockstat6(int update_every, usec_t dt);
44 +int do_proc_net_sctp_snmp(int update_every, usec_t dt);
45 +int do_ipc(int update_every, usec_t dt);
46 +int do_sys_class_power_supply(int update_every, usec_t dt);
47 +int do_proc_pagetypeinfo(int update_every, usec_t dt);
48 +int do_sys_class_infiniband(int update_every, usec_t dt);
49 +int get_numa_node_count(void);
50
51 // metrics that need to be shared among data collectors
52 extern unsigned long long tcpext_TCPSynRetrans;
53 extern unsigned long long zfs_arcstats_shrinkable_cache_size_bytes;
54
55 // netdev renames
56 -extern void netdev_rename_device_add(
56 +void netdev_rename_device_add(
57 const char *host_device,
58 const char *container_device,
59 const char *container_name,
60 DICTIONARY *labels,
61 const char *ctx_prefix);
62
63 -extern void netdev_rename_device_del(const char *host_device);
63 +void netdev_rename_device_del(const char *host_device);
64
65 #include "proc_self_mountinfo.h"
66 #include "proc_pressure.h"
collectors/proc.plugin/proc_pressure.h
+1 -1
@@ -38,6 +38,6 @@ struct pressure {
38 } some, full;
39 };
40
41 -extern void update_pressure_charts(struct pressure_charts *charts);
41 +void update_pressure_charts(struct pressure_charts *charts);
42
43 #endif //NETDATA_PROC_PRESSURE_H
collectors/proc.plugin/proc_self_mountinfo.h
+5 -5
@@ -51,11 +51,11 @@ struct mountinfo {
51 struct mountinfo *next;
52 };
53
54 -extern struct mountinfo *mountinfo_find(struct mountinfo *root, unsigned long major, unsigned long minor, char *device);
55 -extern struct mountinfo *mountinfo_find_by_filesystem_mount_source(struct mountinfo *root, const char *filesystem, const char *mount_source);
56 -extern struct mountinfo *mountinfo_find_by_filesystem_super_option(struct mountinfo *root, const char *filesystem, const char *super_options);
54 +struct mountinfo *mountinfo_find(struct mountinfo *root, unsigned long major, unsigned long minor, char *device);
55 +struct mountinfo *mountinfo_find_by_filesystem_mount_source(struct mountinfo *root, const char *filesystem, const char *mount_source);
56 +struct mountinfo *mountinfo_find_by_filesystem_super_option(struct mountinfo *root, const char *filesystem, const char *super_options);
57
58 -extern void mountinfo_free_all(struct mountinfo *mi);
59 -extern struct mountinfo *mountinfo_read(int do_statvfs);
58 +void mountinfo_free_all(struct mountinfo *mi);
59 +struct mountinfo *mountinfo_read(int do_statvfs);
60
61 #endif /* NETDATA_PROC_SELF_MOUNTINFO_H */
daemon/analytics.h
+12 -12
@@ -69,18 +69,18 @@ struct analytics_data {
69 uint8_t dashboard_hits;
70 };
71
72 -extern void analytics_get_data(char *name, BUFFER *wb);
73 -extern void set_late_global_environment(void);
74 -extern void analytics_free_data(void);
75 -extern void set_global_environment(void);
76 -extern void send_statistics(const char *action, const char *action_result, const char *action_data);
77 -extern void analytics_log_shell(void);
78 -extern void analytics_log_json(void);
79 -extern void analytics_log_prometheus(void);
80 -extern void analytics_log_dashboard(void);
81 -extern void analytics_gather_mutable_meta_data(void);
82 -extern void analytics_report_oom_score(long long int score);
83 -extern void get_system_timezone(void);
72 +void analytics_get_data(char *name, BUFFER *wb);
73 +void set_late_global_environment(void);
74 +void analytics_free_data(void);
75 +void set_global_environment(void);
76 +void send_statistics(const char *action, const char *action_result, const char *action_data);
77 +void analytics_log_shell(void);
78 +void analytics_log_json(void);
79 +void analytics_log_prometheus(void);
80 +void analytics_log_dashboard(void);
81 +void analytics_gather_mutable_meta_data(void);
82 +void analytics_report_oom_score(long long int score);
83 +void get_system_timezone(void);
84
85 extern struct analytics_data analytics_data;
86
daemon/buildinfo.h
+4 -4
@@ -3,12 +3,12 @@
3 #ifndef NETDATA_BUILDINFO_H
4 #define NETDATA_BUILDINFO_H 1
5
6 -extern void print_build_info(void);
6 +void print_build_info(void);
7
8 -extern void print_build_info_json(void);
8 +void print_build_info_json(void);
9
10 -extern char *get_value_from_key(char *buffer, char *key);
10 +char *get_value_from_key(char *buffer, char *key);
11
12 -extern void get_install_type(char **install_type, char **prebuilt_arch, char **prebuilt_dist);
12 +void get_install_type(char **install_type, char **prebuilt_arch, char **prebuilt_dist);
13
14 #endif // NETDATA_BUILDINFO_H
daemon/commands.h
+2 -2
@@ -76,7 +76,7 @@ typedef struct command_info {
76 typedef void (command_lock_t) (unsigned index);
77
78 cmd_status_t execute_command(cmd_t idx, char *args, char **message);
79 -extern void commands_init(void);
80 -extern void commands_exit(void);
79 +void commands_init(void);
80 +void commands_exit(void);
81
82 #endif //NETDATA_COMMANDS_H
daemon/daemon.h
+5 -5
@@ -3,14 +3,14 @@
3 #ifndef NETDATA_DAEMON_H
4 #define NETDATA_DAEMON_H 1
5
6 -extern int become_user(const char *username, int pid_fd);
6 +int become_user(const char *username, int pid_fd);
7
8 -extern int become_daemon(int dont_fork, const char *user);
8 +int become_daemon(int dont_fork, const char *user);
9
10 -extern void netdata_cleanup_and_exit(int i);
11 -extern void send_statistics(const char *action, const char *action_result, const char *action_data);
10 +void netdata_cleanup_and_exit(int i);
11 +void send_statistics(const char *action, const char *action_result, const char *action_data);
12
13 -extern void get_netdata_execution_path(void);
13 +void get_netdata_execution_path(void);
14
15 extern char pidfile[];
16 extern char exepath[];
daemon/global_statistics.h
+6 -6
@@ -8,17 +8,17 @@
8 // ----------------------------------------------------------------------------
9 // global statistics
10
11 -extern void rrdr_query_completed(uint64_t db_points_read, uint64_t result_points_generated);
12 -extern void sqlite3_query_completed(bool success, bool busy, bool locked);
13 -extern void sqlite3_row_completed(void);
11 +void rrdr_query_completed(uint64_t db_points_read, uint64_t result_points_generated);
12 +void sqlite3_query_completed(bool success, bool busy, bool locked);
13 +void sqlite3_row_completed(void);
14
15 -extern void finished_web_request_statistics(uint64_t dt,
15 +void finished_web_request_statistics(uint64_t dt,
16 uint64_t bytes_received,
17 uint64_t bytes_sent,
18 uint64_t content_size,
19 uint64_t compressed_content_size);
20
21 -extern uint64_t web_client_connected(void);
22 -extern void web_client_disconnected(void);
21 +uint64_t web_client_connected(void);
22 +void web_client_disconnected(void);
23
24 #endif /* NETDATA_GLOBAL_STATISTICS_H */
daemon/main.h
+4 -4
@@ -22,9 +22,9 @@ struct option_def {
22 const char *default_value;
23 };
24
25 -extern void cancel_main_threads(void);
26 -extern int killpid(pid_t pid);
27 -extern void netdata_cleanup_and_exit(int ret) NORETURN;
28 -extern void send_statistics(const char *action, const char *action_result, const char *action_data);
25 +void cancel_main_threads(void);
26 +int killpid(pid_t pid);
27 +void netdata_cleanup_and_exit(int ret) NORETURN;
28 +void send_statistics(const char *action, const char *action_result, const char *action_data);
29
30 #endif /* NETDATA_MAIN_H */
daemon/signals.h
+6 -6
@@ -3,11 +3,11 @@
3 #ifndef NETDATA_SIGNALS_H
4 #define NETDATA_SIGNALS_H 1
5
6 -extern void signals_init(void);
7 -extern void signals_block(void);
8 -extern void signals_unblock(void);
9 -extern void signals_restore_SIGCHLD(void);
10 -extern void signals_reset(void);
11 -extern void signals_handle(void) NORETURN;
6 +void signals_init(void);
7 +void signals_block(void);
8 +void signals_unblock(void);
9 +void signals_restore_SIGCHLD(void);
10 +void signals_reset(void);
11 +void signals_handle(void) NORETURN;
12
13 #endif //NETDATA_SIGNALS_H
daemon/unit_test.h
+11 -11
@@ -3,18 +3,18 @@
3 #ifndef NETDATA_UNIT_TEST_H
4 #define NETDATA_UNIT_TEST_H 1
5
6 -extern int unit_test_storage(void);
7 -extern int unit_test(long delay, long shift);
8 -extern int run_all_mockup_tests(void);
9 -extern int unit_test_str2ld(void);
10 -extern int unit_test_buffer(void);
11 -extern int unit_test_static_threads(void);
12 -extern int test_sqlite(void);
13 -extern int unit_test_bitmap256(void);
6 +int unit_test_storage(void);
7 +int unit_test(long delay, long shift);
8 +int run_all_mockup_tests(void);
9 +int unit_test_str2ld(void);
10 +int unit_test_buffer(void);
11 +int unit_test_static_threads(void);
12 +int test_sqlite(void);
13 +int unit_test_bitmap256(void);
14 #ifdef ENABLE_DBENGINE
15 -extern int test_dbengine(void);
16 -extern void generate_dbengine_dataset(unsigned history_seconds);
17 -extern void dbengine_stress_test(unsigned TEST_DURATION_SEC, unsigned DSET_CHARTS, unsigned QUERY_THREADS,
15 +int test_dbengine(void);
16 +void generate_dbengine_dataset(unsigned history_seconds);
17 +void dbengine_stress_test(unsigned TEST_DURATION_SEC, unsigned DSET_CHARTS, unsigned QUERY_THREADS,
18 unsigned RAMP_UP_SECONDS, unsigned PAGE_CACHE_MB, unsigned DISK_SPACE_MB);
19
20 #endif
database/engine/datafile.h
+11 -11
@@ -52,16 +52,16 @@ struct rrdengine_datafile_list {
52 struct rrdengine_datafile *last; /* newest */
53 };
54
55 -extern void df_extent_insert(struct extent_info *extent);
56 -extern void datafile_list_insert(struct rrdengine_instance *ctx, struct rrdengine_datafile *datafile);
57 -extern void datafile_list_delete(struct rrdengine_instance *ctx, struct rrdengine_datafile *datafile);
58 -extern void generate_datafilepath(struct rrdengine_datafile *datafile, char *str, size_t maxlen);
59 -extern int close_data_file(struct rrdengine_datafile *datafile);
60 -extern int unlink_data_file(struct rrdengine_datafile *datafile);
61 -extern int destroy_data_file(struct rrdengine_datafile *datafile);
62 -extern int create_data_file(struct rrdengine_datafile *datafile);
63 -extern int create_new_datafile_pair(struct rrdengine_instance *ctx, unsigned tier, unsigned fileno);
64 -extern int init_data_files(struct rrdengine_instance *ctx);
65 -extern void finalize_data_files(struct rrdengine_instance *ctx);
55 +void df_extent_insert(struct extent_info *extent);
56 +void datafile_list_insert(struct rrdengine_instance *ctx, struct rrdengine_datafile *datafile);
57 +void datafile_list_delete(struct rrdengine_instance *ctx, struct rrdengine_datafile *datafile);
58 +void generate_datafilepath(struct rrdengine_datafile *datafile, char *str, size_t maxlen);
59 +int close_data_file(struct rrdengine_datafile *datafile);
60 +int unlink_data_file(struct rrdengine_datafile *datafile);
61 +int destroy_data_file(struct rrdengine_datafile *datafile);
62 +int create_data_file(struct rrdengine_datafile *datafile);
63 +int create_new_datafile_pair(struct rrdengine_instance *ctx, unsigned tier, unsigned fileno);
64 +int init_data_files(struct rrdengine_instance *ctx);
65 +void finalize_data_files(struct rrdengine_instance *ctx);
66
67 #endif /* NETDATA_DATAFILE_H */
\ No newline at end of file
database/engine/journalfile.h
+10 -10
@@ -33,17 +33,17 @@ struct transaction_commit_log {
33 unsigned buf_size;
34 };
35
36 -extern void generate_journalfilepath(struct rrdengine_datafile *datafile, char *str, size_t maxlen);
37 -extern void journalfile_init(struct rrdengine_journalfile *journalfile, struct rrdengine_datafile *datafile);
38 -extern void *wal_get_transaction_buffer(struct rrdengine_worker_config* wc, unsigned size);
39 -extern void wal_flush_transaction_buffer(struct rrdengine_worker_config* wc);
40 -extern int close_journal_file(struct rrdengine_journalfile *journalfile, struct rrdengine_datafile *datafile);
41 -extern int unlink_journal_file(struct rrdengine_journalfile *journalfile);
42 -extern int destroy_journal_file(struct rrdengine_journalfile *journalfile, struct rrdengine_datafile *datafile);
43 -extern int create_journal_file(struct rrdengine_journalfile *journalfile, struct rrdengine_datafile *datafile);
44 -extern int load_journal_file(struct rrdengine_instance *ctx, struct rrdengine_journalfile *journalfile,
36 +void generate_journalfilepath(struct rrdengine_datafile *datafile, char *str, size_t maxlen);
37 +void journalfile_init(struct rrdengine_journalfile *journalfile, struct rrdengine_datafile *datafile);
38 +void *wal_get_transaction_buffer(struct rrdengine_worker_config* wc, unsigned size);
39 +void wal_flush_transaction_buffer(struct rrdengine_worker_config* wc);
40 +int close_journal_file(struct rrdengine_journalfile *journalfile, struct rrdengine_datafile *datafile);
41 +int unlink_journal_file(struct rrdengine_journalfile *journalfile);
42 +int destroy_journal_file(struct rrdengine_journalfile *journalfile, struct rrdengine_datafile *datafile);
43 +int create_journal_file(struct rrdengine_journalfile *journalfile, struct rrdengine_datafile *datafile);
44 +int load_journal_file(struct rrdengine_instance *ctx, struct rrdengine_journalfile *journalfile,
45 struct rrdengine_datafile *datafile);
46 -extern void init_commit_log(struct rrdengine_instance *ctx);
46 +void init_commit_log(struct rrdengine_instance *ctx);
47
48
49 #endif /* NETDATA_JOURNALFILE_H */
\ No newline at end of file
database/engine/metadata_log/compaction.h
+1 -1
@@ -8,7 +8,7 @@
8 #endif
9 #include "../rrdengine.h"
10
11 -extern int compaction_failure_recovery(struct metalog_instance *ctx, struct metadata_logfile **metalogfiles,
11 +int compaction_failure_recovery(struct metalog_instance *ctx, struct metadata_logfile **metalogfiles,
12 unsigned *matched_files);
13
14 #endif /* NETDATA_COMPACTION_H */
database/engine/metadata_log/logfile.h
+5 -5
@@ -28,12 +28,12 @@ struct metadata_logfile_list {
28 struct metadata_logfile *last; /* newest */
29 };
30
31 -extern void generate_metadata_logfile_path(struct metadata_logfile *metadatalog, char *str, size_t maxlen);
32 -extern int rename_metadata_logfile(struct metadata_logfile *metalogfile, unsigned new_starting_fileno,
31 +void generate_metadata_logfile_path(struct metadata_logfile *metadatalog, char *str, size_t maxlen);
32 +int rename_metadata_logfile(struct metadata_logfile *metalogfile, unsigned new_starting_fileno,
33 unsigned new_fileno);
34 -extern int unlink_metadata_logfile(struct metadata_logfile *metalogfile);
35 -extern int load_metadata_logfile(struct metalog_instance *ctx, struct metadata_logfile *logfile);
36 -extern int init_metalog_files(struct metalog_instance *ctx);
34 +int unlink_metadata_logfile(struct metadata_logfile *metalogfile);
35 +int load_metadata_logfile(struct metalog_instance *ctx, struct metadata_logfile *logfile);
36 +int init_metalog_files(struct metalog_instance *ctx);
37
38
39 #endif /* NETDATA_LOGFILE_H */
database/engine/metadata_log/metadatalogapi.h
+3 -3
@@ -3,10 +3,10 @@
3 #ifndef NETDATA_METADATALOGAPI_H
4 #define NETDATA_METADATALOGAPI_H
5
6 -extern void metalog_commit_delete_chart(RRDSET *st);
7 -extern void metalog_delete_dimension_by_uuid(struct metalog_instance *ctx, uuid_t *metric_uuid);
6 +void metalog_commit_delete_chart(RRDSET *st);
7 +void metalog_delete_dimension_by_uuid(struct metalog_instance *ctx, uuid_t *metric_uuid);
8
9 /* must call once before using anything */
10 -extern int metalog_init(struct rrdengine_instance *rrdeng_parent_ctx);
10 +int metalog_init(struct rrdengine_instance *rrdeng_parent_ctx);
11
12 #endif /* NETDATA_METADATALOGAPI_H */
database/engine/metadata_log/metalogpluginsd.h
+8 -8
@@ -16,18 +16,18 @@ struct metalog_pluginsd_state {
16 struct metadata_logfile *metalogfile; /* current metadata log file being replayed */
17 };
18
19 -extern void metalog_pluginsd_state_init(struct metalog_pluginsd_state *state, struct metalog_instance *ctx);
19 +void metalog_pluginsd_state_init(struct metalog_pluginsd_state *state, struct metalog_instance *ctx);
20
21 -extern PARSER_RC metalog_pluginsd_chart_action(void *user, char *type, char *id, char *name, char *family,
21 +PARSER_RC metalog_pluginsd_chart_action(void *user, char *type, char *id, char *name, char *family,
22 char *context, char *title, char *units, char *plugin, char *module,
23 int priority, int update_every, RRDSET_TYPE chart_type, char *options);
24 -extern PARSER_RC metalog_pluginsd_dimension_action(void *user, RRDSET *st, char *id, char *name, char *algorithm,
24 +PARSER_RC metalog_pluginsd_dimension_action(void *user, RRDSET *st, char *id, char *name, char *algorithm,
25 long multiplier, long divisor, char *options,
26 RRD_ALGORITHM algorithm_type);
27 -extern PARSER_RC metalog_pluginsd_guid_action(void *user, uuid_t *uuid);
28 -extern PARSER_RC metalog_pluginsd_context_action(void *user, uuid_t *uuid);
29 -extern PARSER_RC metalog_pluginsd_tombstone_action(void *user, uuid_t *uuid);
30 -extern PARSER_RC metalog_pluginsd_host(char **words, void *user, PLUGINSD_ACTION *plugins_action);
31 -extern PARSER_RC metalog_pluginsd_host_action(void *user, char *machine_guid, char *hostname, char *registry_hostname, int update_every, char *os, char *timezone, char *tags);
27 +PARSER_RC metalog_pluginsd_guid_action(void *user, uuid_t *uuid);
28 +PARSER_RC metalog_pluginsd_context_action(void *user, uuid_t *uuid);
29 +PARSER_RC metalog_pluginsd_tombstone_action(void *user, uuid_t *uuid);
30 +PARSER_RC metalog_pluginsd_host(char **words, void *user, PLUGINSD_ACTION *plugins_action);
31 +PARSER_RC metalog_pluginsd_host_action(void *user, char *machine_guid, char *hostname, char *registry_hostname, int update_every, char *os, char *timezone, char *tags);
32
33 #endif /* NETDATA_METALOGPLUGINSD_H */
database/engine/pagecache.h
+32 -32
@@ -152,30 +152,30 @@ struct page_cache { /* TODO: add statistics */
152 unsigned populated_pages;
153 };
154
155 -extern void pg_cache_wake_up_waiters_unsafe(struct rrdeng_page_descr *descr);
156 -extern void pg_cache_wake_up_waiters(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr);
157 -extern void pg_cache_wait_event_unsafe(struct rrdeng_page_descr *descr);
158 -extern unsigned long pg_cache_wait_event(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr);
159 -extern void pg_cache_replaceQ_insert(struct rrdengine_instance *ctx,
155 +void pg_cache_wake_up_waiters_unsafe(struct rrdeng_page_descr *descr);
156 +void pg_cache_wake_up_waiters(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr);
157 +void pg_cache_wait_event_unsafe(struct rrdeng_page_descr *descr);
158 +unsigned long pg_cache_wait_event(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr);
159 +void pg_cache_replaceQ_insert(struct rrdengine_instance *ctx,
160 struct rrdeng_page_descr *descr);
161 -extern void pg_cache_replaceQ_delete(struct rrdengine_instance *ctx,
161 +void pg_cache_replaceQ_delete(struct rrdengine_instance *ctx,
162 struct rrdeng_page_descr *descr);
163 -extern void pg_cache_replaceQ_set_hot(struct rrdengine_instance *ctx,
163 +void pg_cache_replaceQ_set_hot(struct rrdengine_instance *ctx,
164 struct rrdeng_page_descr *descr);
165 -extern struct rrdeng_page_descr *pg_cache_create_descr(void);
166 -extern int pg_cache_try_get_unsafe(struct rrdeng_page_descr *descr, int exclusive_access);
167 -extern void pg_cache_put_unsafe(struct rrdeng_page_descr *descr);
168 -extern void pg_cache_put(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr);
169 -extern void pg_cache_insert(struct rrdengine_instance *ctx, struct pg_cache_page_index *index,
165 +struct rrdeng_page_descr *pg_cache_create_descr(void);
166 +int pg_cache_try_get_unsafe(struct rrdeng_page_descr *descr, int exclusive_access);
167 +void pg_cache_put_unsafe(struct rrdeng_page_descr *descr);
168 +void pg_cache_put(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr);
169 +void pg_cache_insert(struct rrdengine_instance *ctx, struct pg_cache_page_index *index,
170 struct rrdeng_page_descr *descr);
171 -extern uint8_t pg_cache_punch_hole(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr,
171 +uint8_t pg_cache_punch_hole(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr,
172 uint8_t remove_dirty, uint8_t is_exclusive_holder, uuid_t *metric_id);
173 -extern usec_t pg_cache_oldest_time_in_range(struct rrdengine_instance *ctx, uuid_t *id,
173 +usec_t pg_cache_oldest_time_in_range(struct rrdengine_instance *ctx, uuid_t *id,
174 usec_t start_time, usec_t end_time);
175 -extern void pg_cache_get_filtered_info_prev(struct rrdengine_instance *ctx, struct pg_cache_page_index *page_index,
175 +void pg_cache_get_filtered_info_prev(struct rrdengine_instance *ctx, struct pg_cache_page_index *page_index,
176 usec_t point_in_time, pg_cache_page_info_filter_t *filter,
177 struct rrdeng_page_info *page_info);
178 -extern struct rrdeng_page_descr *pg_cache_lookup_unpopulated_and_lock(struct rrdengine_instance *ctx, uuid_t *id,
178 +struct rrdeng_page_descr *pg_cache_lookup_unpopulated_and_lock(struct rrdengine_instance *ctx, uuid_t *id,
179 usec_t start_time);
180 extern unsigned
181 pg_cache_preload(struct rrdengine_instance *ctx, uuid_t *id, usec_t start_time, usec_t end_time,
@@ -186,22 +186,22 @@ extern struct rrdeng_page_descr *
186 extern struct rrdeng_page_descr *
187 pg_cache_lookup_next(struct rrdengine_instance *ctx, struct pg_cache_page_index *index, uuid_t *id,
188 usec_t start_time, usec_t end_time);
189 -extern struct pg_cache_page_index *create_page_index(uuid_t *id);
190 -extern void init_page_cache(struct rrdengine_instance *ctx);
191 -extern void free_page_cache(struct rrdengine_instance *ctx);
192 -extern void pg_cache_add_new_metric_time(struct pg_cache_page_index *page_index, struct rrdeng_page_descr *descr);
193 -extern void pg_cache_update_metric_times(struct pg_cache_page_index *page_index);
194 -extern unsigned long pg_cache_hard_limit(struct rrdengine_instance *ctx);
195 -extern unsigned long pg_cache_soft_limit(struct rrdengine_instance *ctx);
196 -extern unsigned long pg_cache_committed_hard_limit(struct rrdengine_instance *ctx);
197 -
198 -extern void rrdeng_page_descr_aral_go_singlethreaded(void);
199 -extern void rrdeng_page_descr_aral_go_multithreaded(void);
200 -extern void rrdeng_page_descr_use_malloc(void);
201 -extern void rrdeng_page_descr_use_mmap(void);
202 -extern bool rrdeng_page_descr_is_mmap(void);
203 -extern struct rrdeng_page_descr *rrdeng_page_descr_mallocz(void);
204 -extern void rrdeng_page_descr_freez(struct rrdeng_page_descr *descr);
189 +struct pg_cache_page_index *create_page_index(uuid_t *id);
190 +void init_page_cache(struct rrdengine_instance *ctx);
191 +void free_page_cache(struct rrdengine_instance *ctx);
192 +void pg_cache_add_new_metric_time(struct pg_cache_page_index *page_index, struct rrdeng_page_descr *descr);
193 +void pg_cache_update_metric_times(struct pg_cache_page_index *page_index);
194 +unsigned long pg_cache_hard_limit(struct rrdengine_instance *ctx);
195 +unsigned long pg_cache_soft_limit(struct rrdengine_instance *ctx);
196 +unsigned long pg_cache_committed_hard_limit(struct rrdengine_instance *ctx);
197 +
198 +void rrdeng_page_descr_aral_go_singlethreaded(void);
199 +void rrdeng_page_descr_aral_go_multithreaded(void);
200 +void rrdeng_page_descr_use_malloc(void);
201 +void rrdeng_page_descr_use_mmap(void);
202 +bool rrdeng_page_descr_is_mmap(void);
203 +struct rrdeng_page_descr *rrdeng_page_descr_mallocz(void);
204 +void rrdeng_page_descr_freez(struct rrdeng_page_descr *descr);
205
206 static inline void
207 pg_cache_atomic_get_pg_info(struct rrdeng_page_descr *descr, usec_t *end_timep, uint32_t *page_lengthp)
database/engine/rrdengine.h
+9 -9
@@ -256,14 +256,14 @@ struct rrdengine_instance {
256 struct rrdengine_statistics stats;
257 };
258
259 -extern void *dbengine_page_alloc(void);
260 -extern void dbengine_page_free(void *page);
261 -
262 -extern int init_rrd_files(struct rrdengine_instance *ctx);
263 -extern void finalize_rrd_files(struct rrdengine_instance *ctx);
264 -extern void rrdeng_test_quota(struct rrdengine_worker_config* wc);
265 -extern void rrdeng_worker(void* arg);
266 -extern void rrdeng_enq_cmd(struct rrdengine_worker_config* wc, struct rrdeng_cmd *cmd);
267 -extern struct rrdeng_cmd rrdeng_deq_cmd(struct rrdengine_worker_config* wc);
259 +void *dbengine_page_alloc(void);
260 +void dbengine_page_free(void *page);
261 +
262 +int init_rrd_files(struct rrdengine_instance *ctx);
263 +void finalize_rrd_files(struct rrdengine_instance *ctx);
264 +void rrdeng_test_quota(struct rrdengine_worker_config* wc);
265 +void rrdeng_worker(void* arg);
266 +void rrdeng_enq_cmd(struct rrdengine_worker_config* wc, struct rrdeng_cmd *cmd);
267 +struct rrdeng_cmd rrdeng_deq_cmd(struct rrdengine_worker_config* wc);
268
269 #endif /* NETDATA_RRDENGINE_H */
database/engine/rrdengineapi.h
+27 -27
@@ -30,53 +30,53 @@ struct rrdeng_region_info {
30 unsigned points;
31 };
32
33 -extern void *rrdeng_create_page(struct rrdengine_instance *ctx, uuid_t *id, struct rrdeng_page_descr **ret_descr);
34 -extern void rrdeng_commit_page(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr,
33 +void *rrdeng_create_page(struct rrdengine_instance *ctx, uuid_t *id, struct rrdeng_page_descr **ret_descr);
34 +void rrdeng_commit_page(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr,
35 Word_t page_correlation_id);
36 -extern void *rrdeng_get_latest_page(struct rrdengine_instance *ctx, uuid_t *id, void **handle);
37 -extern void *rrdeng_get_page(struct rrdengine_instance *ctx, uuid_t *id, usec_t point_in_time, void **handle);
38 -extern void rrdeng_put_page(struct rrdengine_instance *ctx, void *handle);
36 +void *rrdeng_get_latest_page(struct rrdengine_instance *ctx, uuid_t *id, void **handle);
37 +void *rrdeng_get_page(struct rrdengine_instance *ctx, uuid_t *id, usec_t point_in_time, void **handle);
38 +void rrdeng_put_page(struct rrdengine_instance *ctx, void *handle);
39
40 -extern void rrdeng_generate_legacy_uuid(const char *dim_id, char *chart_id, uuid_t *ret_uuid);
41 -extern void rrdeng_convert_legacy_uuid_to_multihost(char machine_guid[GUID_LEN + 1], uuid_t *legacy_uuid,
40 +void rrdeng_generate_legacy_uuid(const char *dim_id, char *chart_id, uuid_t *ret_uuid);
41 +void rrdeng_convert_legacy_uuid_to_multihost(char machine_guid[GUID_LEN + 1], uuid_t *legacy_uuid,
42 uuid_t *ret_uuid);
43
44
45 -extern STORAGE_METRIC_HANDLE *rrdeng_metric_init(RRDDIM *rd, STORAGE_INSTANCE *db_instance);
46 -extern void rrdeng_metric_free(STORAGE_METRIC_HANDLE *db_metric_handle);
45 +STORAGE_METRIC_HANDLE *rrdeng_metric_init(RRDDIM *rd, STORAGE_INSTANCE *db_instance);
46 +void rrdeng_metric_free(STORAGE_METRIC_HANDLE *db_metric_handle);
47
48 -extern STORAGE_COLLECT_HANDLE *rrdeng_store_metric_init(STORAGE_METRIC_HANDLE *db_metric_handle);
49 -extern void rrdeng_store_metric_flush_current_page(STORAGE_COLLECT_HANDLE *collection_handle);
50 -extern void rrdeng_store_metric_next(STORAGE_COLLECT_HANDLE *collection_handle, usec_t point_in_time, NETDATA_DOUBLE n,
48 +STORAGE_COLLECT_HANDLE *rrdeng_store_metric_init(STORAGE_METRIC_HANDLE *db_metric_handle);
49 +void rrdeng_store_metric_flush_current_page(STORAGE_COLLECT_HANDLE *collection_handle);
50 +void rrdeng_store_metric_next(STORAGE_COLLECT_HANDLE *collection_handle, usec_t point_in_time, NETDATA_DOUBLE n,
51 NETDATA_DOUBLE min_value,
52 NETDATA_DOUBLE max_value,
53 uint16_t count,
54 uint16_t anomaly_count,
55 SN_FLAGS flags);
56 -extern int rrdeng_store_metric_finalize(STORAGE_COLLECT_HANDLE *collection_handle);
56 +int rrdeng_store_metric_finalize(STORAGE_COLLECT_HANDLE *collection_handle);
57
58 -extern unsigned rrdeng_variable_step_boundaries(RRDSET *st, time_t start_time, time_t end_time,
58 +unsigned rrdeng_variable_step_boundaries(RRDSET *st, time_t start_time, time_t end_time,
59 struct rrdeng_region_info **region_info_arrayp, unsigned *max_intervalp, struct context_param *context_param_list);
60
61 -extern void rrdeng_load_metric_init(STORAGE_METRIC_HANDLE *db_metric_handle, struct rrddim_query_handle *rrdimm_handle,
61 +void rrdeng_load_metric_init(STORAGE_METRIC_HANDLE *db_metric_handle, struct rrddim_query_handle *rrdimm_handle,
62 time_t start_time, time_t end_time, TIER_QUERY_FETCH tier_query_fetch_type);
63 -extern STORAGE_POINT rrdeng_load_metric_next(struct rrddim_query_handle *rrdimm_handle);
63 +STORAGE_POINT rrdeng_load_metric_next(struct rrddim_query_handle *rrdimm_handle);
64
65 -extern int rrdeng_load_metric_is_finished(struct rrddim_query_handle *rrdimm_handle);
66 -extern void rrdeng_load_metric_finalize(struct rrddim_query_handle *rrdimm_handle);
67 -extern time_t rrdeng_metric_latest_time(STORAGE_METRIC_HANDLE *db_metric_handle);
68 -extern time_t rrdeng_metric_oldest_time(STORAGE_METRIC_HANDLE *db_metric_handle);
65 +int rrdeng_load_metric_is_finished(struct rrddim_query_handle *rrdimm_handle);
66 +void rrdeng_load_metric_finalize(struct rrddim_query_handle *rrdimm_handle);
67 +time_t rrdeng_metric_latest_time(STORAGE_METRIC_HANDLE *db_metric_handle);
68 +time_t rrdeng_metric_oldest_time(STORAGE_METRIC_HANDLE *db_metric_handle);
69
70 -extern void rrdeng_get_37_statistics(struct rrdengine_instance *ctx, unsigned long long *array);
70 +void rrdeng_get_37_statistics(struct rrdengine_instance *ctx, unsigned long long *array);
71
72 /* must call once before using anything */
73 -extern int rrdeng_init(RRDHOST *host, struct rrdengine_instance **ctxp, char *dbfiles_path, unsigned page_cache_mb,
73 +int rrdeng_init(RRDHOST *host, struct rrdengine_instance **ctxp, char *dbfiles_path, unsigned page_cache_mb,
74 unsigned disk_space_mb, int tier);
75
76 -extern int rrdeng_exit(struct rrdengine_instance *ctx);
77 -extern void rrdeng_prepare_exit(struct rrdengine_instance *ctx);
78 -extern int rrdeng_metric_latest_time_by_uuid(uuid_t *dim_uuid, time_t *first_entry_t, time_t *last_entry_t, int tier);
79 -extern int rrdeng_metric_retention_by_uuid(STORAGE_INSTANCE *si, uuid_t *dim_uuid, time_t *first_entry_t, time_t *last_entry_t);
76 +int rrdeng_exit(struct rrdengine_instance *ctx);
77 +void rrdeng_prepare_exit(struct rrdengine_instance *ctx);
78 +int rrdeng_metric_latest_time_by_uuid(uuid_t *dim_uuid, time_t *first_entry_t, time_t *last_entry_t, int tier);
79 +int rrdeng_metric_retention_by_uuid(STORAGE_INSTANCE *si, uuid_t *dim_uuid, time_t *first_entry_t, time_t *last_entry_t);
80
81 typedef struct rrdengine_size_statistics {
82 size_t default_granularity_secs;
@@ -134,6 +134,6 @@ typedef struct rrdengine_size_statistics {
134 double average_page_size_bytes;
135 } RRDENG_SIZE_STATS;
136
137 -extern RRDENG_SIZE_STATS rrdeng_size_statistics(struct rrdengine_instance *ctx);
137 +RRDENG_SIZE_STATS rrdeng_size_statistics(struct rrdengine_instance *ctx);
138
139 #endif /* NETDATA_RRDENGINEAPI_H */
database/engine/rrdenginelib.h
+7 -7
@@ -83,10 +83,10 @@ static inline void crc32set(void *crcp, uLong crc)
83 *(uint32_t *)crcp = crc;
84 }
85
86 -extern void print_page_cache_descr(struct rrdeng_page_descr *page_cache_descr);
87 -extern void print_page_descr(struct rrdeng_page_descr *descr);
88 -extern int check_file_properties(uv_file file, uint64_t *file_size, size_t min_size);
89 -extern int open_file_for_io(char *path, int flags, uv_file *file, int direct);
86 +void print_page_cache_descr(struct rrdeng_page_descr *page_cache_descr);
87 +void print_page_descr(struct rrdeng_page_descr *descr);
88 +int check_file_properties(uv_file file, uint64_t *file_size, size_t min_size);
89 +int open_file_for_io(char *path, int flags, uv_file *file, int direct);
90 static inline int open_file_direct_io(char *path, int flags, uv_file *file)
91 {
92 return open_file_for_io(path, flags, file, 1);
@@ -95,8 +95,8 @@ static inline int open_file_buffered_io(char *path, int flags, uv_file *file)
95 {
96 return open_file_for_io(path, flags, file, 0);
97 }
98 -extern char *get_rrdeng_statistics(struct rrdengine_instance *ctx, char *str, size_t size);
99 -extern int compute_multidb_diskspace();
100 -extern int is_legacy_child(const char *machine_guid);
98 +char *get_rrdeng_statistics(struct rrdengine_instance *ctx, char *str, size_t size);
99 +int compute_multidb_diskspace();
100 +int is_legacy_child(const char *machine_guid);
101
102 #endif /* NETDATA_RRDENGINELIB_H */
database/engine/rrdenglocking.h
+5 -5
@@ -8,10 +8,10 @@
8 /* Forward declarations */
9 struct page_cache_descr;
10
11 -extern struct page_cache_descr *rrdeng_create_pg_cache_descr(struct rrdengine_instance *ctx);
12 -extern void rrdeng_destroy_pg_cache_descr(struct rrdengine_instance *ctx, struct page_cache_descr *pg_cache_descr);
13 -extern void rrdeng_page_descr_mutex_lock(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr);
14 -extern void rrdeng_page_descr_mutex_unlock(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr);
15 -extern void rrdeng_try_deallocate_pg_cache_descr(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr);
11 +struct page_cache_descr *rrdeng_create_pg_cache_descr(struct rrdengine_instance *ctx);
12 +void rrdeng_destroy_pg_cache_descr(struct rrdengine_instance *ctx, struct page_cache_descr *pg_cache_descr);
13 +void rrdeng_page_descr_mutex_lock(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr);
14 +void rrdeng_page_descr_mutex_unlock(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr);
15 +void rrdeng_try_deallocate_pg_cache_descr(struct rrdengine_instance *ctx, struct rrdeng_page_descr *descr);
16
17 #endif /* NETDATA_RRDENGLOCKING_H */
\ No newline at end of file
database/ram/rrddim_mem.h
+13 -13
@@ -20,24 +20,24 @@ struct mem_query_handle {
20 size_t last_slot;
21 };
22
23 -extern STORAGE_METRIC_HANDLE *rrddim_metric_init(RRDDIM *rd, STORAGE_INSTANCE *db_instance);
24 -extern void rrddim_metric_free(STORAGE_METRIC_HANDLE *db_metric_handle);
23 +STORAGE_METRIC_HANDLE *rrddim_metric_init(RRDDIM *rd, STORAGE_INSTANCE *db_instance);
24 +void rrddim_metric_free(STORAGE_METRIC_HANDLE *db_metric_handle);
25
26 -extern STORAGE_COLLECT_HANDLE *rrddim_collect_init(STORAGE_METRIC_HANDLE *db_metric_handle);
27 -extern void rrddim_collect_store_metric(STORAGE_COLLECT_HANDLE *collection_handle, usec_t point_in_time, NETDATA_DOUBLE number,
26 +STORAGE_COLLECT_HANDLE *rrddim_collect_init(STORAGE_METRIC_HANDLE *db_metric_handle);
27 +void rrddim_collect_store_metric(STORAGE_COLLECT_HANDLE *collection_handle, usec_t point_in_time, NETDATA_DOUBLE number,
28 NETDATA_DOUBLE min_value,
29 NETDATA_DOUBLE max_value,
30 uint16_t count,
31 uint16_t anomaly_count,
32 SN_FLAGS flags);
33 -extern void rrddim_store_metric_flush(STORAGE_COLLECT_HANDLE *collection_handle);
34 -extern int rrddim_collect_finalize(STORAGE_COLLECT_HANDLE *collection_handle);
35 -
36 -extern void rrddim_query_init(STORAGE_METRIC_HANDLE *db_metric_handle, struct rrddim_query_handle *handle, time_t start_time, time_t end_time, TIER_QUERY_FETCH tier_query_fetch_type);
37 -extern STORAGE_POINT rrddim_query_next_metric(struct rrddim_query_handle *handle);
38 -extern int rrddim_query_is_finished(struct rrddim_query_handle *handle);
39 -extern void rrddim_query_finalize(struct rrddim_query_handle *handle);
40 -extern time_t rrddim_query_latest_time(STORAGE_METRIC_HANDLE *db_metric_handle);
41 -extern time_t rrddim_query_oldest_time(STORAGE_METRIC_HANDLE *db_metric_handle);
33 +void rrddim_store_metric_flush(STORAGE_COLLECT_HANDLE *collection_handle);
34 +int rrddim_collect_finalize(STORAGE_COLLECT_HANDLE *collection_handle);
35 +
36 +void rrddim_query_init(STORAGE_METRIC_HANDLE *db_metric_handle, struct rrddim_query_handle *handle, time_t start_time, time_t end_time, TIER_QUERY_FETCH tier_query_fetch_type);
37 +STORAGE_POINT rrddim_query_next_metric(struct rrddim_query_handle *handle);
38 +int rrddim_query_is_finished(struct rrddim_query_handle *handle);
39 +void rrddim_query_finalize(struct rrddim_query_handle *handle);
40 +time_t rrddim_query_latest_time(STORAGE_METRIC_HANDLE *db_metric_handle);
41 +time_t rrddim_query_oldest_time(STORAGE_METRIC_HANDLE *db_metric_handle);
42
43 #endif
database/rrd.h
+111 -111
@@ -132,8 +132,8 @@ typedef enum rrd_memory_mode {
132
133 extern RRD_MEMORY_MODE default_rrd_memory_mode;
134
135 -extern const char *rrd_memory_mode_name(RRD_MEMORY_MODE id);
136 -extern RRD_MEMORY_MODE rrd_memory_mode_id(const char *name);
135 +const char *rrd_memory_mode_name(RRD_MEMORY_MODE id);
136 +RRD_MEMORY_MODE rrd_memory_mode_id(const char *name);
137
138
139 // ----------------------------------------------------------------------------
@@ -153,17 +153,17 @@ typedef enum rrd_algorithm {
153 #define RRD_ALGORITHM_PCENT_OVER_DIFF_TOTAL_NAME "percentage-of-incremental-row"
154 #define RRD_ALGORITHM_PCENT_OVER_ROW_TOTAL_NAME "percentage-of-absolute-row"
155
156 -extern RRD_ALGORITHM rrd_algorithm_id(const char *name);
157 -extern const char *rrd_algorithm_name(RRD_ALGORITHM algorithm);
156 +RRD_ALGORITHM rrd_algorithm_id(const char *name);
157 +const char *rrd_algorithm_name(RRD_ALGORITHM algorithm);
158
159 // ----------------------------------------------------------------------------
160 // RRD FAMILY
161
162 -extern const RRDFAMILY_ACQUIRED *rrdfamily_add_and_acquire(RRDHOST *host, const char *id);
163 -extern void rrdfamily_release(RRDHOST *host, const RRDFAMILY_ACQUIRED *rfa);
164 -extern void rrdfamily_index_init(RRDHOST *host);
165 -extern void rrdfamily_index_destroy(RRDHOST *host);
166 -extern DICTIONARY *rrdfamily_rrdvars_dict(const RRDFAMILY_ACQUIRED *rf);
162 +const RRDFAMILY_ACQUIRED *rrdfamily_add_and_acquire(RRDHOST *host, const char *id);
163 +void rrdfamily_release(RRDHOST *host, const RRDFAMILY_ACQUIRED *rfa);
164 +void rrdfamily_index_init(RRDHOST *host);
165 +void rrdfamily_index_destroy(RRDHOST *host);
166 +DICTIONARY *rrdfamily_rrdvars_dict(const RRDFAMILY_ACQUIRED *rf);
167
168
169 // ----------------------------------------------------------------------------
@@ -217,37 +217,37 @@ typedef enum rrdlabel_source {
217
218 #define RRDLABEL_FLAG_INTERNAL (RRDLABEL_FLAG_OLD | RRDLABEL_FLAG_NEW | RRDLABEL_FLAG_PERMANENT)
219
220 -extern size_t text_sanitize(unsigned char *dst, const unsigned char *src, size_t dst_size, unsigned char *char_map, bool utf, const char *empty, size_t *multibyte_length);
220 +size_t text_sanitize(unsigned char *dst, const unsigned char *src, size_t dst_size, unsigned char *char_map, bool utf, const char *empty, size_t *multibyte_length);
221
222 -extern DICTIONARY *rrdlabels_create(void);
223 -extern void rrdlabels_destroy(DICTIONARY *labels_dict);
224 -extern void rrdlabels_add(DICTIONARY *dict, const char *name, const char *value, RRDLABEL_SRC ls);
225 -extern void rrdlabels_add_pair(DICTIONARY *dict, const char *string, RRDLABEL_SRC ls);
226 -extern void rrdlabels_get_value_to_buffer_or_null(DICTIONARY *labels, BUFFER *wb, const char *key, const char *quote, const char *null);
227 -extern void rrdlabels_get_value_to_char_or_null(DICTIONARY *labels, char **value, const char *key);
222 +DICTIONARY *rrdlabels_create(void);
223 +void rrdlabels_destroy(DICTIONARY *labels_dict);
224 +void rrdlabels_add(DICTIONARY *dict, const char *name, const char *value, RRDLABEL_SRC ls);
225 +void rrdlabels_add_pair(DICTIONARY *dict, const char *string, RRDLABEL_SRC ls);
226 +void rrdlabels_get_value_to_buffer_or_null(DICTIONARY *labels, BUFFER *wb, const char *key, const char *quote, const char *null);
227 +void rrdlabels_get_value_to_char_or_null(DICTIONARY *labels, char **value, const char *key);
228
229 -extern void rrdlabels_unmark_all(DICTIONARY *labels);
230 -extern void rrdlabels_remove_all_unmarked(DICTIONARY *labels);
229 +void rrdlabels_unmark_all(DICTIONARY *labels);
230 +void rrdlabels_remove_all_unmarked(DICTIONARY *labels);
231
232 -extern int rrdlabels_walkthrough_read(DICTIONARY *labels, int (*callback)(const char *name, const char *value, RRDLABEL_SRC ls, void *data), void *data);
233 -extern int rrdlabels_sorted_walkthrough_read(DICTIONARY *labels, int (*callback)(const char *name, const char *value, RRDLABEL_SRC ls, void *data), void *data);
232 +int rrdlabels_walkthrough_read(DICTIONARY *labels, int (*callback)(const char *name, const char *value, RRDLABEL_SRC ls, void *data), void *data);
233 +int rrdlabels_sorted_walkthrough_read(DICTIONARY *labels, int (*callback)(const char *name, const char *value, RRDLABEL_SRC ls, void *data), void *data);
234
235 -extern void rrdlabels_log_to_buffer(DICTIONARY *labels, BUFFER *wb);
236 -extern bool rrdlabels_match_simple_pattern(DICTIONARY *labels, const char *simple_pattern_txt);
237 -extern bool rrdlabels_match_simple_pattern_parsed(DICTIONARY *labels, SIMPLE_PATTERN *pattern, char equal);
238 -extern int rrdlabels_to_buffer(DICTIONARY *labels, BUFFER *wb, const char *before_each, const char *equal, const char *quote, const char *between_them, bool (*filter_callback)(const char *name, const char *value, RRDLABEL_SRC ls, void *data), void *filter_data, void (*name_sanitizer)(char *dst, const char *src, size_t dst_size), void (*value_sanitizer)(char *dst, const char *src, size_t dst_size));
235 +void rrdlabels_log_to_buffer(DICTIONARY *labels, BUFFER *wb);
236 +bool rrdlabels_match_simple_pattern(DICTIONARY *labels, const char *simple_pattern_txt);
237 +bool rrdlabels_match_simple_pattern_parsed(DICTIONARY *labels, SIMPLE_PATTERN *pattern, char equal);
238 +int rrdlabels_to_buffer(DICTIONARY *labels, BUFFER *wb, const char *before_each, const char *equal, const char *quote, const char *between_them, bool (*filter_callback)(const char *name, const char *value, RRDLABEL_SRC ls, void *data), void *filter_data, void (*name_sanitizer)(char *dst, const char *src, size_t dst_size), void (*value_sanitizer)(char *dst, const char *src, size_t dst_size));
239
240 -extern void rrdlabels_migrate_to_these(DICTIONARY *dst, DICTIONARY *src);
241 -extern void rrdlabels_copy(DICTIONARY *dst, DICTIONARY *src);
240 +void rrdlabels_migrate_to_these(DICTIONARY *dst, DICTIONARY *src);
241 +void rrdlabels_copy(DICTIONARY *dst, DICTIONARY *src);
242
243 void reload_host_labels(void);
244 -extern void rrdset_update_rrdlabels(RRDSET *st, DICTIONARY *new_rrdlabels);
245 -extern void rrdset_save_rrdlabels_to_sql(RRDSET *st);
244 +void rrdset_update_rrdlabels(RRDSET *st, DICTIONARY *new_rrdlabels);
245 +void rrdset_save_rrdlabels_to_sql(RRDSET *st);
246
247 -extern int rrdlabels_unittest(void);
247 +int rrdlabels_unittest(void);
248
249 // unfortunately this break when defined in exporting_engine.h
250 -extern bool exporting_labels_filter_callback(const char *name, const char *value, RRDLABEL_SRC ls, void *data);
250 +bool exporting_labels_filter_callback(const char *name, const char *value, RRDLABEL_SRC ls, void *data);
251
252 // ----------------------------------------------------------------------------
253 // RRD DIMENSION - this is a metric
@@ -328,20 +328,20 @@ struct rrddim {
328 #define rrddim_name(rd) string2str((rd) ->name)
329
330 // returns the RRDDIM cache filename, or NULL if it does not exist
331 -extern const char *rrddim_cache_filename(RRDDIM *rd);
331 +const char *rrddim_cache_filename(RRDDIM *rd);
332
333 // updated the header with the latest RRDDIM value, for memory mode MAP and SAVE
334 -extern void rrddim_memory_file_update(RRDDIM *rd);
334 +void rrddim_memory_file_update(RRDDIM *rd);
335
336 // free the memory file structures for memory mode MAP and SAVE
337 -extern void rrddim_memory_file_free(RRDDIM *rd);
337 +void rrddim_memory_file_free(RRDDIM *rd);
338
339 -extern bool rrddim_memory_load_or_create_map_save(RRDSET *st, RRDDIM *rd, RRD_MEMORY_MODE memory_mode);
339 +bool rrddim_memory_load_or_create_map_save(RRDSET *st, RRDDIM *rd, RRD_MEMORY_MODE memory_mode);
340
341 // return the v019 header size of RRDDIM files
342 -extern size_t rrddim_memory_file_header_size(void);
342 +size_t rrddim_memory_file_header_size(void);
343
344 -extern void rrddim_memory_file_save(RRDDIM *rd);
344 +void rrddim_memory_file_save(RRDDIM *rd);
345
346 // ----------------------------------------------------------------------------
347 // engine-specific iterator state for dimension data collection
@@ -451,7 +451,7 @@ struct rrddim_tier {
451 struct rrddim_query_ops query_ops;
452 };
453
454 -extern void rrdr_fill_tier_gap_from_smaller_tiers(RRDDIM *rd, int tier, time_t now);
454 +void rrdr_fill_tier_gap_from_smaller_tiers(RRDDIM *rd, int tier, time_t now);
455
456 // ----------------------------------------------------------------------------
457 // these loop macros make sure the linked list is accessed with the right lock
@@ -659,7 +659,7 @@ struct rrdset {
659 #define rrdset_wrlock(st) netdata_rwlock_wrlock(&((st)->rrdset_rwlock))
660 #define rrdset_unlock(st) netdata_rwlock_unlock(&((st)->rrdset_rwlock))
661
662 -extern STRING *rrd_string_strdupz(const char *s);
662 +STRING *rrd_string_strdupz(const char *s);
663
664 // ----------------------------------------------------------------------------
665 // these loop macros make sure the linked list is accessed with the right lock
@@ -679,11 +679,11 @@ extern STRING *rrd_string_strdupz(const char *s);
679 #define rrdset_number_of_dimensions(st) \
680 dictionary_entries((st)->rrddim_root_index)
681
682 -extern void rrdset_memory_file_save(RRDSET *st);
683 -extern void rrdset_memory_file_free(RRDSET *st);
684 -extern void rrdset_memory_file_update(RRDSET *st);
685 -extern const char *rrdset_cache_filename(RRDSET *st);
686 -extern bool rrdset_memory_load_or_create_map_save(RRDSET *st_on_file, RRD_MEMORY_MODE memory_mode);
682 +void rrdset_memory_file_save(RRDSET *st);
683 +void rrdset_memory_file_free(RRDSET *st);
684 +void rrdset_memory_file_update(RRDSET *st);
685 +const char *rrdset_cache_filename(RRDSET *st);
686 +bool rrdset_memory_load_or_create_map_save(RRDSET *st_on_file, RRD_MEMORY_MODE memory_mode);
687
688 #include "rrdfunctions.h"
689
@@ -1016,7 +1016,7 @@ extern RRDHOST *localhost;
1016 #define rrdhost_aclk_state_lock(host) netdata_mutex_lock(&((host)->aclk_state_lock))
1017 #define rrdhost_aclk_state_unlock(host) netdata_mutex_unlock(&((host)->aclk_state_lock))
1018
1019 -extern long rrdhost_hosts_available(void);
1019 +long rrdhost_hosts_available(void);
1020
1021 // ----------------------------------------------------------------------------
1022 // these loop macros make sure the linked list is accessed with the right lock
@@ -1039,24 +1039,24 @@ extern netdata_rwlock_t rrd_rwlock;
1039
1040 // ----------------------------------------------------------------------------
1041
1042 -extern bool is_storage_engine_shared(STORAGE_INSTANCE *engine);
1043 -extern void rrdset_index_init(RRDHOST *host);
1044 -extern void rrdset_index_destroy(RRDHOST *host);
1042 +bool is_storage_engine_shared(STORAGE_INSTANCE *engine);
1043 +void rrdset_index_init(RRDHOST *host);
1044 +void rrdset_index_destroy(RRDHOST *host);
1045
1046 -extern void rrddim_index_init(RRDSET *st);
1047 -extern void rrddim_index_destroy(RRDSET *st);
1046 +void rrddim_index_init(RRDSET *st);
1047 +void rrddim_index_destroy(RRDSET *st);
1048
1049 // ----------------------------------------------------------------------------
1050
1051 extern size_t rrd_hosts_available;
1052 extern time_t rrdhost_free_orphan_time;
1053
1054 -extern int rrd_init(char *hostname, struct rrdhost_system_info *system_info);
1054 +int rrd_init(char *hostname, struct rrdhost_system_info *system_info);
1055
1056 -extern RRDHOST *rrdhost_find_by_hostname(const char *hostname);
1057 -extern RRDHOST *rrdhost_find_by_guid(const char *guid);
1056 +RRDHOST *rrdhost_find_by_hostname(const char *hostname);
1057 +RRDHOST *rrdhost_find_by_guid(const char *guid);
1058
1059 -extern RRDHOST *rrdhost_find_or_create(
1059 +RRDHOST *rrdhost_find_or_create(
1060 const char *hostname
1061 , const char *registry_hostname
1062 , const char *guid
@@ -1079,7 +1079,7 @@ extern RRDHOST *rrdhost_find_or_create(
1079 , bool is_archived
1080 );
1081
1082 -extern void rrdhost_update(RRDHOST *host
1082 +void rrdhost_update(RRDHOST *host
1083 , const char *hostname
1084 , const char *registry_hostname
1085 , const char *guid
@@ -1101,15 +1101,15 @@ extern void rrdhost_update(RRDHOST *host
1101 , struct rrdhost_system_info *system_info
1102 );
1103
1104 -extern int rrdhost_set_system_info_variable(struct rrdhost_system_info *system_info, char *name, char *value);
1104 +int rrdhost_set_system_info_variable(struct rrdhost_system_info *system_info, char *name, char *value);
1105
1106 #if defined(NETDATA_INTERNAL_CHECKS) && defined(NETDATA_VERIFY_LOCKS)
1107 -extern void __rrdhost_check_wrlock(RRDHOST *host, const char *file, const char *function, const unsigned long line);
1108 -extern void __rrdhost_check_rdlock(RRDHOST *host, const char *file, const char *function, const unsigned long line);
1109 -extern void __rrdset_check_rdlock(RRDSET *st, const char *file, const char *function, const unsigned long line);
1110 -extern void __rrdset_check_wrlock(RRDSET *st, const char *file, const char *function, const unsigned long line);
1111 -extern void __rrd_check_rdlock(const char *file, const char *function, const unsigned long line);
1112 -extern void __rrd_check_wrlock(const char *file, const char *function, const unsigned long line);
1107 +void __rrdhost_check_wrlock(RRDHOST *host, const char *file, const char *function, const unsigned long line);
1108 +void __rrdhost_check_rdlock(RRDHOST *host, const char *file, const char *function, const unsigned long line);
1109 +void __rrdset_check_rdlock(RRDSET *st, const char *file, const char *function, const unsigned long line);
1110 +void __rrdset_check_wrlock(RRDSET *st, const char *file, const char *function, const unsigned long line);
1111 +void __rrd_check_rdlock(const char *file, const char *function, const unsigned long line);
1112 +void __rrd_check_wrlock(const char *file, const char *function, const unsigned long line);
1113
1114 #define rrdhost_check_rdlock(host) __rrdhost_check_rdlock(host, __FILE__, __FUNCTION__, __LINE__)
1115 #define rrdhost_check_wrlock(host) __rrdhost_check_wrlock(host, __FILE__, __FUNCTION__, __LINE__)
@@ -1130,9 +1130,9 @@ extern void __rrd_check_wrlock(const char *file, const char *function, const uns
1130 // ----------------------------------------------------------------------------
1131 // RRDSET functions
1132
1133 -extern int rrdset_reset_name(RRDSET *st, const char *name);
1133 +int rrdset_reset_name(RRDSET *st, const char *name);
1134
1135 -extern RRDSET *rrdset_create_custom(RRDHOST *host
1135 +RRDSET *rrdset_create_custom(RRDHOST *host
1136 , const char *type
1137 , const char *id
1138 , const char *name
@@ -1154,20 +1154,20 @@ extern RRDSET *rrdset_create_custom(RRDHOST *host
1154 #define rrdset_create_localhost(type, id, name, family, context, title, units, plugin, module, priority, update_every, chart_type) \
1155 rrdset_create(localhost, type, id, name, family, context, title, units, plugin, module, priority, update_every, chart_type)
1156
1157 -extern void rrdhost_free_all(void);
1158 -extern void rrdhost_save_all(void);
1159 -extern void rrdhost_cleanup_all(void);
1157 +void rrdhost_free_all(void);
1158 +void rrdhost_save_all(void);
1159 +void rrdhost_cleanup_all(void);
1160
1161 -extern void rrdhost_system_info_free(struct rrdhost_system_info *system_info);
1162 -extern void rrdhost_free(RRDHOST *host, bool force);
1163 -extern void rrdhost_save_charts(RRDHOST *host);
1164 -extern void rrdhost_delete_charts(RRDHOST *host);
1161 +void rrdhost_system_info_free(struct rrdhost_system_info *system_info);
1162 +void rrdhost_free(RRDHOST *host, bool force);
1163 +void rrdhost_save_charts(RRDHOST *host);
1164 +void rrdhost_delete_charts(RRDHOST *host);
1165
1166 -extern int rrdhost_should_be_removed(RRDHOST *host, RRDHOST *protected_host, time_t now);
1166 +int rrdhost_should_be_removed(RRDHOST *host, RRDHOST *protected_host, time_t now);
1167
1168 -extern void rrdset_update_heterogeneous_flag(RRDSET *st);
1168 +void rrdset_update_heterogeneous_flag(RRDSET *st);
1169
1170 -extern RRDSET *rrdset_find(RRDHOST *host, const char *id);
1170 +RRDSET *rrdset_find(RRDHOST *host, const char *id);
1171 #define rrdset_find_localhost(id) rrdset_find(localhost, id)
1172 /* This will not return charts that are archived */
1173 static inline RRDSET *rrdset_find_active_localhost(const char *id)
@@ -1178,7 +1178,7 @@ static inline RRDSET *rrdset_find_active_localhost(const char *id)
1178 return st;
1179 }
1180
1181 -extern RRDSET *rrdset_find_bytype(RRDHOST *host, const char *type, const char *id);
1181 +RRDSET *rrdset_find_bytype(RRDHOST *host, const char *type, const char *id);
1182 #define rrdset_find_bytype_localhost(type, id) rrdset_find_bytype(localhost, type, id)
1183 /* This will not return charts that are archived */
1184 static inline RRDSET *rrdset_find_active_bytype_localhost(const char *type, const char *id)
@@ -1189,7 +1189,7 @@ static inline RRDSET *rrdset_find_active_bytype_localhost(const char *type, cons
1189 return st;
1190 }
1191
1192 -extern RRDSET *rrdset_find_byname(RRDHOST *host, const char *name);
1192 +RRDSET *rrdset_find_byname(RRDHOST *host, const char *name);
1193 #define rrdset_find_byname_localhost(name) rrdset_find_byname(localhost, name)
1194 /* This will not return charts that are archived */
1195 static inline RRDSET *rrdset_find_active_byname_localhost(const char *name)
@@ -1200,30 +1200,30 @@ static inline RRDSET *rrdset_find_active_byname_localhost(const char *name)
1200 return st;
1201 }
1202
1203 -extern void rrdset_next_usec_unfiltered(RRDSET *st, usec_t microseconds);
1204 -extern void rrdset_next_usec(RRDSET *st, usec_t microseconds);
1203 +void rrdset_next_usec_unfiltered(RRDSET *st, usec_t microseconds);
1204 +void rrdset_next_usec(RRDSET *st, usec_t microseconds);
1205 #define rrdset_next(st) rrdset_next_usec(st, 0ULL)
1206
1207 -extern void rrdset_done(RRDSET *st);
1207 +void rrdset_done(RRDSET *st);
1208
1209 -extern void rrdset_is_obsolete(RRDSET *st);
1210 -extern void rrdset_isnot_obsolete(RRDSET *st);
1209 +void rrdset_is_obsolete(RRDSET *st);
1210 +void rrdset_isnot_obsolete(RRDSET *st);
1211
1212 // checks if the RRDSET should be offered to viewers
1213 #define rrdset_is_available_for_viewers(st) (!rrdset_flag_check(st, RRDSET_FLAG_HIDDEN) && !rrdset_flag_check(st, RRDSET_FLAG_OBSOLETE) && !rrdset_flag_check(st, RRDSET_FLAG_ARCHIVED) && rrdset_number_of_dimensions(st) && (st)->rrd_memory_mode != RRD_MEMORY_MODE_NONE)
1214 #define rrdset_is_available_for_exporting_and_alarms(st) (!rrdset_flag_check(st, RRDSET_FLAG_OBSOLETE) && !rrdset_flag_check(st, RRDSET_FLAG_ARCHIVED) && (st)->dimensions)
1215 #define rrdset_is_archived(st) (rrdset_flag_check(st, RRDSET_FLAG_ARCHIVED) && (st)->dimensions)
1216
1217 -extern time_t rrddim_first_entry_t(RRDDIM *rd);
1218 -extern time_t rrddim_last_entry_t(RRDDIM *rd);
1219 -extern time_t rrdset_last_entry_t(RRDSET *st);
1220 -extern time_t rrdset_first_entry_t(RRDSET *st);
1221 -extern time_t rrdhost_last_entry_t(RRDHOST *h);
1217 +time_t rrddim_first_entry_t(RRDDIM *rd);
1218 +time_t rrddim_last_entry_t(RRDDIM *rd);
1219 +time_t rrdset_last_entry_t(RRDSET *st);
1220 +time_t rrdset_first_entry_t(RRDSET *st);
1221 +time_t rrdhost_last_entry_t(RRDHOST *h);
1222
1223 // ----------------------------------------------------------------------------
1224 // RRD DIMENSION functions
1225
1226 -extern RRDDIM *rrddim_add_custom(RRDSET *st
1226 +RRDDIM *rrddim_add_custom(RRDSET *st
1227 , const char *id
1228 , const char *name
1229 , collected_number multiplier
@@ -1235,49 +1235,49 @@ extern RRDDIM *rrddim_add_custom(RRDSET *st
1235 #define rrddim_add(st, id, name, multiplier, divisor, algorithm) \
1236 rrddim_add_custom(st, id, name, multiplier, divisor, algorithm, (st)->rrd_memory_mode)
1237
1238 -extern int rrddim_reset_name(RRDSET *st, RRDDIM *rd, const char *name);
1239 -extern int rrddim_set_algorithm(RRDSET *st, RRDDIM *rd, RRD_ALGORITHM algorithm);
1240 -extern int rrddim_set_multiplier(RRDSET *st, RRDDIM *rd, collected_number multiplier);
1241 -extern int rrddim_set_divisor(RRDSET *st, RRDDIM *rd, collected_number divisor);
1238 +int rrddim_reset_name(RRDSET *st, RRDDIM *rd, const char *name);
1239 +int rrddim_set_algorithm(RRDSET *st, RRDDIM *rd, RRD_ALGORITHM algorithm);
1240 +int rrddim_set_multiplier(RRDSET *st, RRDDIM *rd, collected_number multiplier);
1241 +int rrddim_set_divisor(RRDSET *st, RRDDIM *rd, collected_number divisor);
1242
1243 -extern RRDDIM *rrddim_find(RRDSET *st, const char *id);
1244 -extern RRDDIM *rrddim_find_active(RRDSET *st, const char *id);
1243 +RRDDIM *rrddim_find(RRDSET *st, const char *id);
1244 +RRDDIM *rrddim_find_active(RRDSET *st, const char *id);
1245
1246 -extern int rrddim_hide(RRDSET *st, const char *id);
1247 -extern int rrddim_unhide(RRDSET *st, const char *id);
1246 +int rrddim_hide(RRDSET *st, const char *id);
1247 +int rrddim_unhide(RRDSET *st, const char *id);
1248
1249 -extern void rrddim_is_obsolete(RRDSET *st, RRDDIM *rd);
1250 -extern void rrddim_isnot_obsolete(RRDSET *st, RRDDIM *rd);
1249 +void rrddim_is_obsolete(RRDSET *st, RRDDIM *rd);
1250 +void rrddim_isnot_obsolete(RRDSET *st, RRDDIM *rd);
1251
1252 -extern collected_number rrddim_set_by_pointer(RRDSET *st, RRDDIM *rd, collected_number value);
1253 -extern collected_number rrddim_set(RRDSET *st, const char *id, collected_number value);
1252 +collected_number rrddim_set_by_pointer(RRDSET *st, RRDDIM *rd, collected_number value);
1253 +collected_number rrddim_set(RRDSET *st, const char *id, collected_number value);
1254 #ifdef ENABLE_ACLK
1255 -extern time_t calc_dimension_liveness(RRDDIM *rd, time_t now);
1255 +time_t calc_dimension_liveness(RRDDIM *rd, time_t now);
1256 #endif
1257 -extern long align_entries_to_pagesize(RRD_MEMORY_MODE mode, long entries);
1257 +long align_entries_to_pagesize(RRD_MEMORY_MODE mode, long entries);
1258
1259 // ----------------------------------------------------------------------------
1260 // Miscellaneous functions
1261
1262 -extern char *rrdset_strncpyz_name(char *to, const char *from, size_t length);
1262 +char *rrdset_strncpyz_name(char *to, const char *from, size_t length);
1263
1264 // ----------------------------------------------------------------------------
1265 // RRD internal functions
1266
1267 -extern void rrdset_delete_files(RRDSET *st);
1268 -extern void rrdset_save(RRDSET *st);
1269 -extern void rrdset_free(RRDSET *st);
1267 +void rrdset_delete_files(RRDSET *st);
1268 +void rrdset_save(RRDSET *st);
1269 +void rrdset_free(RRDSET *st);
1270
1271 #ifdef NETDATA_RRD_INTERNALS
1272
1273 -extern char *rrdset_cache_dir(RRDHOST *host, const char *id);
1273 +char *rrdset_cache_dir(RRDHOST *host, const char *id);
1274
1275 -extern void rrddim_free(RRDSET *st, RRDDIM *rd);
1275 +void rrddim_free(RRDSET *st, RRDDIM *rd);
1276
1277 -extern void rrdset_reset(RRDSET *st);
1278 -extern void rrdset_delete_obsolete_dimensions(RRDSET *st);
1277 +void rrdset_reset(RRDSET *st);
1278 +void rrdset_delete_obsolete_dimensions(RRDSET *st);
1279
1280 -extern RRDHOST *rrdhost_create(
1280 +RRDHOST *rrdhost_create(
1281 const char *hostname, const char *registry_hostname, const char *guid, const char *os, const char *timezone,
1282 const char *abbrev_timezone, int32_t utc_offset,const char *tags, const char *program_name, const char *program_version,
1283 int update_every, long entries, RRD_MEMORY_MODE memory_mode, unsigned int health_enabled, unsigned int rrdpush_enabled,
@@ -1286,12 +1286,12 @@ extern RRDHOST *rrdhost_create(
1286
1287 #endif /* NETDATA_RRD_INTERNALS */
1288
1289 -extern void set_host_properties(
1289 +void set_host_properties(
1290 RRDHOST *host, int update_every, RRD_MEMORY_MODE memory_mode, const char *registry_hostname,
1291 const char *os, const char *tags, const char *tzone, const char *abbrev_tzone, int32_t utc_offset,
1292 const char *program_name, const char *program_version);
1293
1294 -extern int get_tier_grouping(int tier);
1294 +int get_tier_grouping(int tier);
1295
1296 // ----------------------------------------------------------------------------
1297 // RRD DB engine declarations
database/rrdcalc.h
+16 -16
@@ -218,24 +218,24 @@ struct alert_config {
218
219 #define RRDCALC_HAS_DB_LOOKUP(rc) ((rc)->after)
220
221 -extern void rrdcalc_update_info_using_rrdset_labels(RRDCALC *rc);
221 +void rrdcalc_update_info_using_rrdset_labels(RRDCALC *rc);
222
223 -extern void rrdcalc_link_matching_alerts_to_rrdset(RRDSET *st);
223 +void rrdcalc_link_matching_alerts_to_rrdset(RRDSET *st);
224
225 -extern const RRDCALC_ACQUIRED *rrdcalc_from_rrdset_get(RRDSET *st, const char *alert_name);
226 -extern void rrdcalc_from_rrdset_release(RRDSET *st, const RRDCALC_ACQUIRED *rca);
227 -extern RRDCALC *rrdcalc_acquired_to_rrdcalc(const RRDCALC_ACQUIRED *rca);
225 +const RRDCALC_ACQUIRED *rrdcalc_from_rrdset_get(RRDSET *st, const char *alert_name);
226 +void rrdcalc_from_rrdset_release(RRDSET *st, const RRDCALC_ACQUIRED *rca);
227 +RRDCALC *rrdcalc_acquired_to_rrdcalc(const RRDCALC_ACQUIRED *rca);
228
229 -extern const char *rrdcalc_status2string(RRDCALC_STATUS status);
229 +const char *rrdcalc_status2string(RRDCALC_STATUS status);
230
231 -extern void rrdcalc_free_unused_rrdcalc_loaded_from_config(RRDCALC *rc);
231 +void rrdcalc_free_unused_rrdcalc_loaded_from_config(RRDCALC *rc);
232
233 -extern uint32_t rrdcalc_get_unique_id(RRDHOST *host, STRING *chart, STRING *name, uint32_t *next_event_id);
234 -extern void rrdcalc_add_from_rrdcalctemplate(RRDHOST *host, RRDCALCTEMPLATE *rt, RRDSET *st, const char *overwrite_alert_name, const char *overwrite_dimensions);
235 -extern int rrdcalc_add_from_config(RRDHOST *host, RRDCALC *rc);
233 +uint32_t rrdcalc_get_unique_id(RRDHOST *host, STRING *chart, STRING *name, uint32_t *next_event_id);
234 +void rrdcalc_add_from_rrdcalctemplate(RRDHOST *host, RRDCALCTEMPLATE *rt, RRDSET *st, const char *overwrite_alert_name, const char *overwrite_dimensions);
235 +int rrdcalc_add_from_config(RRDHOST *host, RRDCALC *rc);
236
237 -extern void rrdcalc_delete_alerts_not_matching_host_labels_from_all_hosts();
238 -extern void rrdcalc_delete_alerts_not_matching_host_labels_from_this_host(RRDHOST *host);
237 +void rrdcalc_delete_alerts_not_matching_host_labels_from_all_hosts();
238 +void rrdcalc_delete_alerts_not_matching_host_labels_from_this_host(RRDHOST *host);
239
240 static inline int rrdcalc_isrepeating(RRDCALC *rc) {
241 if (unlikely(rc->warn_repeat_every > 0 || rc->crit_repeat_every > 0)) {
@@ -244,11 +244,11 @@ static inline int rrdcalc_isrepeating(RRDCALC *rc) {
244 return 0;
245 }
246
247 -extern void rrdcalc_unlink_all_rrdset_alerts(RRDSET *st);
248 -extern void rrdcalc_delete_all(RRDHOST *host);
247 +void rrdcalc_unlink_all_rrdset_alerts(RRDSET *st);
248 +void rrdcalc_delete_all(RRDHOST *host);
249
250 -extern void rrdcalc_rrdhost_index_init(RRDHOST *host);
251 -extern void rrdcalc_rrdhost_index_destroy(RRDHOST *host);
250 +void rrdcalc_rrdhost_index_init(RRDHOST *host);
251 +void rrdcalc_rrdhost_index_destroy(RRDHOST *host);
252
253 #define RRDCALC_VAR_MAX 100
254 #define RRDCALC_VAR_FAMILY "$family"
database/rrdcalctemplate.h
+9 -9
@@ -110,19 +110,19 @@ struct rrdcalctemplate {
110
111 #define RRDCALCTEMPLATE_HAS_DB_LOOKUP(rt) ((rt)->after)
112
113 -extern void rrdcalctemplate_link_matching_templates_to_rrdset(RRDSET *st);
113 +void rrdcalctemplate_link_matching_templates_to_rrdset(RRDSET *st);
114
115 -extern void rrdcalctemplate_free_unused_rrdcalctemplate_loaded_from_config(RRDCALCTEMPLATE *rt);
116 -extern void rrdcalctemplate_delete_all(RRDHOST *host);
117 -extern void rrdcalctemplate_add_from_config(RRDHOST *host, RRDCALCTEMPLATE *rt);
115 +void rrdcalctemplate_free_unused_rrdcalctemplate_loaded_from_config(RRDCALCTEMPLATE *rt);
116 +void rrdcalctemplate_delete_all(RRDHOST *host);
117 +void rrdcalctemplate_add_from_config(RRDHOST *host, RRDCALCTEMPLATE *rt);
118
119 -extern void rrdcalctemplate_check_conditions_and_link(RRDCALCTEMPLATE *rt, RRDSET *st, RRDHOST *host);
119 +void rrdcalctemplate_check_conditions_and_link(RRDCALCTEMPLATE *rt, RRDSET *st, RRDHOST *host);
120
121 -extern bool rrdcalctemplate_check_rrdset_conditions(RRDCALCTEMPLATE *rt, RRDSET *st, RRDHOST *host);
122 -extern void rrdcalctemplate_check_rrddim_conditions_and_link(RRDCALCTEMPLATE *rt, RRDSET *st, RRDDIM *rd, RRDHOST *host);
121 +bool rrdcalctemplate_check_rrdset_conditions(RRDCALCTEMPLATE *rt, RRDSET *st, RRDHOST *host);
122 +void rrdcalctemplate_check_rrddim_conditions_and_link(RRDCALCTEMPLATE *rt, RRDSET *st, RRDDIM *rd, RRDHOST *host);
123
124
125 -extern void rrdcalctemplate_index_init(RRDHOST *host);
126 -extern void rrdcalctemplate_index_destroy(RRDHOST *host);
125 +void rrdcalctemplate_index_init(RRDHOST *host);
126 +void rrdcalctemplate_index_destroy(RRDHOST *host);
127
128 #endif //NETDATA_RRDCALCTEMPLATE_H
database/rrdcontext.h
+24 -24
@@ -27,14 +27,14 @@ typedef struct rrdcontext_acquired RRDCONTEXT_ACQUIRED;
27 // ----------------------------------------------------------------------------
28 // public API for rrdhost
29
30 -extern void rrdhost_load_rrdcontext_data(RRDHOST *host);
31 -extern void rrdhost_create_rrdcontexts(RRDHOST *host);
32 -extern void rrdhost_destroy_rrdcontexts(RRDHOST *host);
30 +void rrdhost_load_rrdcontext_data(RRDHOST *host);
31 +void rrdhost_create_rrdcontexts(RRDHOST *host);
32 +void rrdhost_destroy_rrdcontexts(RRDHOST *host);
33
34 -extern void rrdcontext_host_child_connected(RRDHOST *host);
35 -extern void rrdcontext_host_child_disconnected(RRDHOST *host);
34 +void rrdcontext_host_child_connected(RRDHOST *host);
35 +void rrdcontext_host_child_disconnected(RRDHOST *host);
36
37 -extern int rrdcontext_foreach_instance_with_rrdset_in_context(RRDHOST *host, const char *context, int (*callback)(RRDSET *st, void *data), void *data);
37 +int rrdcontext_foreach_instance_with_rrdset_in_context(RRDHOST *host, const char *context, int (*callback)(RRDSET *st, void *data), void *data);
38
39 typedef enum {
40 RRDCONTEXT_OPTION_NONE = 0,
@@ -52,41 +52,41 @@ typedef enum {
52
53 #define RRDCONTEXT_OPTIONS_ALL (RRDCONTEXT_OPTION_SHOW_METRICS|RRDCONTEXT_OPTION_SHOW_INSTANCES|RRDCONTEXT_OPTION_SHOW_LABELS|RRDCONTEXT_OPTION_SHOW_QUEUED|RRDCONTEXT_OPTION_SHOW_FLAGS|RRDCONTEXT_OPTION_SHOW_DELETED|RRDCONTEXT_OPTION_SHOW_UUIDS|RRDCONTEXT_OPTION_SHOW_HIDDEN)
54
55 -extern int rrdcontext_to_json(RRDHOST *host, BUFFER *wb, time_t after, time_t before, RRDCONTEXT_TO_JSON_OPTIONS options, const char *context, SIMPLE_PATTERN *chart_label_key, SIMPLE_PATTERN *chart_labels_filter, SIMPLE_PATTERN *chart_dimensions);
56 -extern int rrdcontexts_to_json(RRDHOST *host, BUFFER *wb, time_t after, time_t before, RRDCONTEXT_TO_JSON_OPTIONS options, SIMPLE_PATTERN *chart_label_key, SIMPLE_PATTERN *chart_labels_filter, SIMPLE_PATTERN *chart_dimensions);
55 +int rrdcontext_to_json(RRDHOST *host, BUFFER *wb, time_t after, time_t before, RRDCONTEXT_TO_JSON_OPTIONS options, const char *context, SIMPLE_PATTERN *chart_label_key, SIMPLE_PATTERN *chart_labels_filter, SIMPLE_PATTERN *chart_dimensions);
56 +int rrdcontexts_to_json(RRDHOST *host, BUFFER *wb, time_t after, time_t before, RRDCONTEXT_TO_JSON_OPTIONS options, SIMPLE_PATTERN *chart_label_key, SIMPLE_PATTERN *chart_labels_filter, SIMPLE_PATTERN *chart_dimensions);
57
58 // ----------------------------------------------------------------------------
59 // public API for rrddims
60
61 -extern void rrdcontext_updated_rrddim(RRDDIM *rd);
62 -extern void rrdcontext_removed_rrddim(RRDDIM *rd);
63 -extern void rrdcontext_updated_rrddim_algorithm(RRDDIM *rd);
64 -extern void rrdcontext_updated_rrddim_multiplier(RRDDIM *rd);
65 -extern void rrdcontext_updated_rrddim_divisor(RRDDIM *rd);
66 -extern void rrdcontext_updated_rrddim_flags(RRDDIM *rd);
67 -extern void rrdcontext_collected_rrddim(RRDDIM *rd);
61 +void rrdcontext_updated_rrddim(RRDDIM *rd);
62 +void rrdcontext_removed_rrddim(RRDDIM *rd);
63 +void rrdcontext_updated_rrddim_algorithm(RRDDIM *rd);
64 +void rrdcontext_updated_rrddim_multiplier(RRDDIM *rd);
65 +void rrdcontext_updated_rrddim_divisor(RRDDIM *rd);
66 +void rrdcontext_updated_rrddim_flags(RRDDIM *rd);
67 +void rrdcontext_collected_rrddim(RRDDIM *rd);
68
69 // ----------------------------------------------------------------------------
70 // public API for rrdsets
71
72 -extern void rrdcontext_updated_rrdset(RRDSET *st);
73 -extern void rrdcontext_removed_rrdset(RRDSET *st);
74 -extern void rrdcontext_updated_rrdset_name(RRDSET *st);
75 -extern void rrdcontext_updated_rrdset_flags(RRDSET *st);
76 -extern void rrdcontext_collected_rrdset(RRDSET *st);
72 +void rrdcontext_updated_rrdset(RRDSET *st);
73 +void rrdcontext_removed_rrdset(RRDSET *st);
74 +void rrdcontext_updated_rrdset_name(RRDSET *st);
75 +void rrdcontext_updated_rrdset_flags(RRDSET *st);
76 +void rrdcontext_collected_rrdset(RRDSET *st);
77
78 // ----------------------------------------------------------------------------
79 // public API for ACLK
80
81 -extern void rrdcontext_hub_checkpoint_command(void *cmd);
82 -extern void rrdcontext_hub_stop_streaming_command(void *cmd);
81 +void rrdcontext_hub_checkpoint_command(void *cmd);
82 +void rrdcontext_hub_stop_streaming_command(void *cmd);
83
84
85 // ----------------------------------------------------------------------------
86 // public API for threads
87
88 -extern void rrdcontext_db_rotation(void);
89 -extern void *rrdcontext_main(void *);
88 +void rrdcontext_db_rotation(void);
89 +void *rrdcontext_main(void *);
90
91 #endif // NETDATA_RRDCONTEXT_H
92
database/rrddimvar.h
+5 -5
@@ -11,11 +11,11 @@
11 // This means, there will be no speed penalty for using
12 // these variables
13
14 -extern void rrddimvar_rename_all(RRDDIM *rd);
15 -extern void rrddimvar_add_and_leave_released(RRDDIM *rd, RRDVAR_TYPE type, const char *prefix, const char *suffix, void *value, RRDVAR_FLAGS flags);
16 -extern void rrddimvar_delete_all(RRDDIM *rd);
14 +void rrddimvar_rename_all(RRDDIM *rd);
15 +void rrddimvar_add_and_leave_released(RRDDIM *rd, RRDVAR_TYPE type, const char *prefix, const char *suffix, void *value, RRDVAR_FLAGS flags);
16 +void rrddimvar_delete_all(RRDDIM *rd);
17
18 -extern void rrddimvar_index_init(RRDSET *st);
19 -extern void rrddimvar_index_destroy(RRDSET *st);
18 +void rrddimvar_index_init(RRDSET *st);
19 +void rrddimvar_index_destroy(RRDSET *st);
20
21 #endif //NETDATA_RRDDIMVAR_H
database/rrdfunctions.h
+14 -14
@@ -3,33 +3,33 @@
3
4 #include "rrd.h"
5
6 -extern void rrdfunctions_init(RRDHOST *host);
7 -extern void rrdfunctions_destroy(RRDHOST *host);
6 +void rrdfunctions_init(RRDHOST *host);
7 +void rrdfunctions_destroy(RRDHOST *host);
8
9 -extern void rrd_collector_started(void);
10 -extern void rrd_collector_finished(void);
9 +void rrd_collector_started(void);
10 +void rrd_collector_finished(void);
11
12 typedef void (*function_data_ready_callback)(BUFFER *wb, int code, void *callback_data);
13
14 typedef int (*function_execute_at_collector)(BUFFER *wb, int timeout, const char *function, void *collector_data,
15 function_data_ready_callback callback, void *callback_data);
16
17 -extern void rrd_collector_add_function(RRDHOST *host, RRDSET *st, const char *name, int timeout, const char *help,
17 +void rrd_collector_add_function(RRDHOST *host, RRDSET *st, const char *name, int timeout, const char *help,
18 bool sync, function_execute_at_collector function, void *collector_data);
19
20 -extern int rrd_call_function_and_wait(RRDHOST *host, BUFFER *wb, int timeout, const char *name);
20 +int rrd_call_function_and_wait(RRDHOST *host, BUFFER *wb, int timeout, const char *name);
21
22 typedef void (*rrd_call_function_async_callback)(BUFFER *wb, int code, void *callback_data);
23 -extern int rrd_call_function_async(RRDHOST *host, BUFFER *wb, int timeout, const char *name, rrd_call_function_async_callback, void *callback_data);
23 +int rrd_call_function_async(RRDHOST *host, BUFFER *wb, int timeout, const char *name, rrd_call_function_async_callback, void *callback_data);
24
25 -extern void rrd_functions_expose_rrdpush(RRDSET *st, BUFFER *wb);
25 +void rrd_functions_expose_rrdpush(RRDSET *st, BUFFER *wb);
26
27 -extern void chart_functions2json(RRDSET *st, BUFFER *wb, int tabs, const char *kq, const char *sq);
28 -extern void chart_functions_to_dict(RRDSET *st, DICTIONARY *dict);
29 -extern void host_functions2json(RRDHOST *host, BUFFER *wb, int tabs, const char *kq, const char *sq);
27 +void chart_functions2json(RRDSET *st, BUFFER *wb, int tabs, const char *kq, const char *sq);
28 +void chart_functions_to_dict(RRDSET *st, DICTIONARY *dict);
29 +void host_functions2json(RRDHOST *host, BUFFER *wb, int tabs, const char *kq, const char *sq);
30
31 -extern uint8_t functions_format_to_content_type(const char *format);
32 -extern const char *functions_content_type_to_format(uint8_t content_type);
33 -extern int rrd_call_function_error(BUFFER *wb, const char *msg, int code);
31 +uint8_t functions_format_to_content_type(const char *format);
32 +const char *functions_content_type_to_format(uint8_t content_type);
33 +int rrd_call_function_error(BUFFER *wb, const char *msg, int code);
34
35 #endif // NETDATA_RRDFUNCTIONS_H
database/rrdsetvar.h
+10 -10
@@ -11,20 +11,20 @@
11 // This means, there will be no speed penalty for using
12 // these variables
13
14 -extern void rrdsetvar_index_init(RRDSET *st);
15 -extern void rrdsetvar_index_destroy(RRDSET *st);
16 -extern void rrdsetvar_release_and_delete_all(RRDSET *st);
14 +void rrdsetvar_index_init(RRDSET *st);
15 +void rrdsetvar_index_destroy(RRDSET *st);
16 +void rrdsetvar_release_and_delete_all(RRDSET *st);
17
18 #define rrdsetvar_custom_chart_variable_release(st, rsa) rrdsetvar_release((st)->rrdsetvar_root_index, rsa)
19 -extern void rrdsetvar_release(DICTIONARY *dict, const RRDSETVAR_ACQUIRED *rsa);
19 +void rrdsetvar_release(DICTIONARY *dict, const RRDSETVAR_ACQUIRED *rsa);
20
21 -extern const RRDSETVAR_ACQUIRED *rrdsetvar_custom_chart_variable_add_and_acquire(RRDSET *st, const char *name);
22 -extern void rrdsetvar_custom_chart_variable_set(RRDSET *st, const RRDSETVAR_ACQUIRED *rsa, NETDATA_DOUBLE value);
21 +const RRDSETVAR_ACQUIRED *rrdsetvar_custom_chart_variable_add_and_acquire(RRDSET *st, const char *name);
22 +void rrdsetvar_custom_chart_variable_set(RRDSET *st, const RRDSETVAR_ACQUIRED *rsa, NETDATA_DOUBLE value);
23
24 -extern void rrdsetvar_rename_all(RRDSET *st);
25 -extern const RRDSETVAR_ACQUIRED *rrdsetvar_add_and_acquire(RRDSET *st, const char *name, RRDVAR_TYPE type, void *value, RRDVAR_FLAGS flags);
26 -extern void rrdsetvar_add_and_leave_released(RRDSET *st, const char *name, RRDVAR_TYPE type, void *value, RRDVAR_FLAGS flags);
24 +void rrdsetvar_rename_all(RRDSET *st);
25 +const RRDSETVAR_ACQUIRED *rrdsetvar_add_and_acquire(RRDSET *st, const char *name, RRDVAR_TYPE type, void *value, RRDVAR_FLAGS flags);
26 +void rrdsetvar_add_and_leave_released(RRDSET *st, const char *name, RRDVAR_TYPE type, void *value, RRDVAR_FLAGS flags);
27
28 -extern void rrdsetvar_print_to_streaming_custom_chart_variables(RRDSET *st, BUFFER *wb);
28 +void rrdsetvar_print_to_streaming_custom_chart_variables(RRDSET *st, BUFFER *wb);
29
30 #endif //NETDATA_RRDSETVAR_H
database/rrdvar.h
+15 -15
@@ -40,32 +40,32 @@ typedef enum rrdvar_options {
40
41 #define RRDVAR_MAX_LENGTH 1024
42
43 -extern int rrdvar_fix_name(char *variable);
43 +int rrdvar_fix_name(char *variable);
44
45 #include "rrd.h"
46
47 -extern STRING *rrdvar_name_to_string(const char *name);
47 +STRING *rrdvar_name_to_string(const char *name);
48
49 -extern const RRDVAR_ACQUIRED *rrdvar_custom_host_variable_add_and_acquire(RRDHOST *host, const char *name);
50 -extern void rrdvar_custom_host_variable_set(RRDHOST *host, const RRDVAR_ACQUIRED *rva, NETDATA_DOUBLE value);
49 +const RRDVAR_ACQUIRED *rrdvar_custom_host_variable_add_and_acquire(RRDHOST *host, const char *name);
50 +void rrdvar_custom_host_variable_set(RRDHOST *host, const RRDVAR_ACQUIRED *rva, NETDATA_DOUBLE value);
51
52 -extern int rrdvar_walkthrough_read(DICTIONARY *dict, int (*callback)(const DICTIONARY_ITEM *item, void *rrdvar, void *data), void *data);
52 +int rrdvar_walkthrough_read(DICTIONARY *dict, int (*callback)(const DICTIONARY_ITEM *item, void *rrdvar, void *data), void *data);
53
54 #define rrdvar_custom_host_variable_release(host, rva) rrdvar_release((host)->rrdvars, rva)
55 -extern void rrdvar_release(DICTIONARY *dict, const RRDVAR_ACQUIRED *rva);
55 +void rrdvar_release(DICTIONARY *dict, const RRDVAR_ACQUIRED *rva);
56
57 -extern NETDATA_DOUBLE rrdvar2number(const RRDVAR_ACQUIRED *rva);
57 +NETDATA_DOUBLE rrdvar2number(const RRDVAR_ACQUIRED *rva);
58
59 -extern const RRDVAR_ACQUIRED *rrdvar_add_and_acquire(const char *scope, DICTIONARY *dict, STRING *name, RRDVAR_TYPE type, RRDVAR_FLAGS options, void *value);
60 -extern void rrdvar_release_and_del(DICTIONARY *dict, const RRDVAR_ACQUIRED *rva);
59 +const RRDVAR_ACQUIRED *rrdvar_add_and_acquire(const char *scope, DICTIONARY *dict, STRING *name, RRDVAR_TYPE type, RRDVAR_FLAGS options, void *value);
60 +void rrdvar_release_and_del(DICTIONARY *dict, const RRDVAR_ACQUIRED *rva);
61
62 -extern DICTIONARY *rrdvariables_create(void);
63 -extern void rrdvariables_destroy(DICTIONARY *dict);
62 +DICTIONARY *rrdvariables_create(void);
63 +void rrdvariables_destroy(DICTIONARY *dict);
64
65 -extern void rrdvar_delete_all(DICTIONARY *dict);
65 +void rrdvar_delete_all(DICTIONARY *dict);
66
67 -extern const char *rrdvar_name(const RRDVAR_ACQUIRED *rva);
68 -extern RRDVAR_FLAGS rrdvar_flags(const RRDVAR_ACQUIRED *rva);
69 -extern RRDVAR_TYPE rrdvar_type(const RRDVAR_ACQUIRED *rva);
67 +const char *rrdvar_name(const RRDVAR_ACQUIRED *rva);
68 +RRDVAR_FLAGS rrdvar_flags(const RRDVAR_ACQUIRED *rva);
69 +RRDVAR_TYPE rrdvar_type(const RRDVAR_ACQUIRED *rva);
70
71 #endif //NETDATA_RRDVAR_H
database/sqlite/sqlite_aclk.h
+3 -3
@@ -184,9 +184,9 @@ static inline RRDHOST *find_host_by_node_id(char *node_id)
184
185 extern sqlite3 *db_meta;
186
187 -extern int aclk_database_enq_cmd_noblock(struct aclk_database_worker_config *wc, struct aclk_database_cmd *cmd);
188 -extern void aclk_database_enq_cmd(struct aclk_database_worker_config *wc, struct aclk_database_cmd *cmd);
189 -extern void sql_create_aclk_table(RRDHOST *host, uuid_t *host_uuid, uuid_t *node_id);
187 +int aclk_database_enq_cmd_noblock(struct aclk_database_worker_config *wc, struct aclk_database_cmd *cmd);
188 +void aclk_database_enq_cmd(struct aclk_database_worker_config *wc, struct aclk_database_cmd *cmd);
189 +void sql_create_aclk_table(RRDHOST *host, uuid_t *host_uuid, uuid_t *node_id);
190 int aclk_worker_enq_cmd(char *node_id, struct aclk_database_cmd *cmd);
191 void sql_aclk_sync_init(void);
192 void sql_check_aclk_table_list(struct aclk_database_worker_config *wc);
database/sqlite/sqlite_aclk_alert.h
+1 -1
@@ -26,6 +26,6 @@ void sql_process_queue_removed_alerts_to_aclk(struct aclk_database_worker_config
26 void aclk_push_alert_snapshot_event(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
27 void aclk_process_send_alarm_snapshot(char *node_id, char *claim_id, uint64_t snapshot_id, uint64_t sequence_id);
28 int get_proto_alert_status(RRDHOST *host, struct proto_alert_status *proto_alert_status);
29 -extern int sql_queue_alarm_to_aclk(RRDHOST *host, ALARM_ENTRY *ae, int skip_filter);
29 +int sql_queue_alarm_to_aclk(RRDHOST *host, ALARM_ENTRY *ae, int skip_filter);
30
31 #endif //NETDATA_SQLITE_ACLK_ALERT_H
database/sqlite/sqlite_context.h
+10 -10
@@ -6,7 +6,7 @@
6 #include "daemon/common.h"
7 #include "sqlite3.h"
8
9 -extern int sql_context_cache_stats(int op);
9 +int sql_context_cache_stats(int op);
10 typedef struct ctx_chart {
11 uuid_t chart_id;
12 const char *id;
@@ -51,19 +51,19 @@ typedef struct versioned_context_data {
51
52 } VERSIONED_CONTEXT_DATA;
53
54 -extern void ctx_get_context_list(uuid_t *host_uuid, void (*dict_cb)(VERSIONED_CONTEXT_DATA *, void *), void *data);
54 +void ctx_get_context_list(uuid_t *host_uuid, void (*dict_cb)(VERSIONED_CONTEXT_DATA *, void *), void *data);
55
56 -extern void ctx_get_chart_list(uuid_t *host_uuid, void (*dict_cb)(SQL_CHART_DATA *, void *), void *data);
57 -extern void ctx_get_label_list(uuid_t *chart_uuid, void (*dict_cb)(SQL_CLABEL_DATA *, void *), void *data);
58 -extern void ctx_get_dimension_list(uuid_t *chart_uuid, void (*dict_cb)(SQL_DIMENSION_DATA *, void *), void *data);
56 +void ctx_get_chart_list(uuid_t *host_uuid, void (*dict_cb)(SQL_CHART_DATA *, void *), void *data);
57 +void ctx_get_label_list(uuid_t *chart_uuid, void (*dict_cb)(SQL_CLABEL_DATA *, void *), void *data);
58 +void ctx_get_dimension_list(uuid_t *chart_uuid, void (*dict_cb)(SQL_DIMENSION_DATA *, void *), void *data);
59
60 -extern int ctx_store_context(uuid_t *host_uuid, VERSIONED_CONTEXT_DATA *context_data);
60 +int ctx_store_context(uuid_t *host_uuid, VERSIONED_CONTEXT_DATA *context_data);
61
62 #define ctx_update_context(host_uuid, context_data) ctx_store_context(host_uuid, context_data)
63
64 -extern int ctx_delete_context(uuid_t *host_id, VERSIONED_CONTEXT_DATA *context_data);
64 +int ctx_delete_context(uuid_t *host_id, VERSIONED_CONTEXT_DATA *context_data);
65
66 -extern int sql_init_context_database(int memory);
67 -extern void sql_close_context_database(void);
68 -extern int ctx_unittest(void);
66 +int sql_init_context_database(int memory);
67 +void sql_close_context_database(void);
68 +int ctx_unittest(void);
69 #endif //NETDATA_SQLITE_CONTEXT_H
database/sqlite/sqlite_functions.h
+39 -39
@@ -52,8 +52,8 @@ typedef enum db_check_action_type {
52 return 1; \
53 }
54
55 -extern SQLITE_API int sqlite3_step_monitored(sqlite3_stmt *stmt);
56 -extern SQLITE_API int sqlite3_exec_monitored(
55 +SQLITE_API int sqlite3_step_monitored(sqlite3_stmt *stmt);
56 +SQLITE_API int sqlite3_exec_monitored(
57 sqlite3 *db, /* An open database */
58 const char *sql, /* SQL to be evaluated */
59 int (*callback)(void*,int,char**,char**), /* Callback function */
@@ -61,55 +61,55 @@ extern SQLITE_API int sqlite3_exec_monitored(
61 char **errmsg /* Error msg written here */
62 );
63
64 -extern int sql_init_database(db_check_action_type_t rebuild, int memory);
65 -extern void sql_close_database(void);
66 -extern int bind_text_null(sqlite3_stmt *res, int position, const char *text, bool can_be_null);
67 -extern int sql_store_host(uuid_t *guid, const char *hostname, const char *registry_hostname, int update_every, const char *os,
64 +int sql_init_database(db_check_action_type_t rebuild, int memory);
65 +void sql_close_database(void);
66 +int bind_text_null(sqlite3_stmt *res, int position, const char *text, bool can_be_null);
67 +int sql_store_host(uuid_t *guid, const char *hostname, const char *registry_hostname, int update_every, const char *os,
68 const char *timezone, const char *tags, int hops);
69
70 -extern int sql_store_host_info(RRDHOST *host);
70 +int sql_store_host_info(RRDHOST *host);
71
72 -extern int sql_store_chart(
72 +int sql_store_chart(
73 uuid_t *chart_uuid, uuid_t *host_uuid, const char *type, const char *id, const char *name, const char *family,
74 const char *context, const char *title, const char *units, const char *plugin, const char *module, long priority,
75 int update_every, int chart_type, int memory_mode, long history_entries);
76 -extern int sql_store_dimension(uuid_t *dim_uuid, uuid_t *chart_uuid, const char *id, const char *name, collected_number multiplier,
76 +int sql_store_dimension(uuid_t *dim_uuid, uuid_t *chart_uuid, const char *id, const char *name, collected_number multiplier,
77 collected_number divisor, int algorithm);
78
79 -extern int find_dimension_uuid(RRDSET *st, RRDDIM *rd, uuid_t *store_uuid);
80 -
81 -extern int find_chart_uuid(RRDHOST *host, const char *type, const char *id, const char *name, uuid_t *store_uuid);
82 -extern int update_chart_metadata(uuid_t *chart_uuid, RRDSET *st, const char *id, const char *name);
83 -
84 -extern int find_uuid_type(uuid_t *uuid);
85 -
86 -extern void sql_rrdset2json(RRDHOST *host, BUFFER *wb);
87 -
88 -extern RRDHOST *sql_create_host_by_uuid(char *guid);
89 -extern int prepare_statement(sqlite3 *database, char *query, sqlite3_stmt **statement);
90 -extern int execute_insert(sqlite3_stmt *res);
91 -extern void db_execute(const char *cmd);
92 -extern int file_is_migrated(char *path);
93 -extern void add_migrated_file(char *path, uint64_t file_size);
94 -extern void db_unlock(void);
95 -extern void db_lock(void);
96 -extern void delete_dimension_uuid(uuid_t *dimension_uuid);
97 -extern void sql_build_context_param_list(ONEWAYALLOC *owa, struct context_param **param_list, RRDHOST *host, char *context, char *chart);
98 -extern void store_claim_id(uuid_t *host_id, uuid_t *claim_id);
99 -extern int update_node_id(uuid_t *host_id, uuid_t *node_id);
100 -extern int get_node_id(uuid_t *host_id, uuid_t *node_id);
101 -extern int get_host_id(uuid_t *node_id, uuid_t *host_id);
102 -extern void invalidate_node_instances(uuid_t *host_id, uuid_t *claim_id);
103 -extern struct node_instance_list *get_node_list(void);
104 -extern void sql_load_node_id(RRDHOST *host);
105 -extern int sql_set_dimension_option(uuid_t *dim_uuid, char *option);
79 +int find_dimension_uuid(RRDSET *st, RRDDIM *rd, uuid_t *store_uuid);
80 +
81 +int find_chart_uuid(RRDHOST *host, const char *type, const char *id, const char *name, uuid_t *store_uuid);
82 +int update_chart_metadata(uuid_t *chart_uuid, RRDSET *st, const char *id, const char *name);
83 +
84 +int find_uuid_type(uuid_t *uuid);
85 +
86 +void sql_rrdset2json(RRDHOST *host, BUFFER *wb);
87 +
88 +RRDHOST *sql_create_host_by_uuid(char *guid);
89 +int prepare_statement(sqlite3 *database, char *query, sqlite3_stmt **statement);
90 +int execute_insert(sqlite3_stmt *res);
91 +void db_execute(const char *cmd);
92 +int file_is_migrated(char *path);
93 +void add_migrated_file(char *path, uint64_t file_size);
94 +void db_unlock(void);
95 +void db_lock(void);
96 +void delete_dimension_uuid(uuid_t *dimension_uuid);
97 +void sql_build_context_param_list(ONEWAYALLOC *owa, struct context_param **param_list, RRDHOST *host, char *context, char *chart);
98 +void store_claim_id(uuid_t *host_id, uuid_t *claim_id);
99 +int update_node_id(uuid_t *host_id, uuid_t *node_id);
100 +int get_node_id(uuid_t *host_id, uuid_t *node_id);
101 +int get_host_id(uuid_t *node_id, uuid_t *host_id);
102 +void invalidate_node_instances(uuid_t *host_id, uuid_t *claim_id);
103 +struct node_instance_list *get_node_list(void);
104 +void sql_load_node_id(RRDHOST *host);
105 +int sql_set_dimension_option(uuid_t *dim_uuid, char *option);
106 char *get_hostname_by_node_id(char *node_id);
107 void free_temporary_host(RRDHOST *host);
108 int init_database_batch(sqlite3 *database, int rebuild, int init_type, const char *batch[]);
109 void migrate_localhost(uuid_t *host_uuid);
110 -extern void sql_store_host_system_info(uuid_t *host_id, const struct rrdhost_system_info *system_info);
111 -extern void sql_build_host_system_info(uuid_t *host_id, struct rrdhost_system_info *system_info);
110 +void sql_store_host_system_info(uuid_t *host_id, const struct rrdhost_system_info *system_info);
111 +void sql_build_host_system_info(uuid_t *host_id, struct rrdhost_system_info *system_info);
112 void sql_store_host_labels(RRDHOST *host);
113 -extern int sql_metadata_cache_stats(int op);
113 +int sql_metadata_cache_stats(int op);
114 DICTIONARY *sql_load_host_labels(uuid_t *host_id);
115 #endif //NETDATA_SQLITE_FUNCTIONS_H
database/sqlite/sqlite_health.h
+8 -8
@@ -6,12 +6,12 @@
6 #include "sqlite3.h"
7
8 extern sqlite3 *db_meta;
9 -extern void sql_health_alarm_log_load(RRDHOST *host);
10 -extern int sql_create_health_log_table(RRDHOST *host);
11 -extern void sql_health_alarm_log_update(RRDHOST *host, ALARM_ENTRY *ae);
12 -extern void sql_health_alarm_log_insert(RRDHOST *host, ALARM_ENTRY *ae);
13 -extern void sql_health_alarm_log_save(RRDHOST *host, ALARM_ENTRY *ae);
14 -extern void sql_health_alarm_log_cleanup(RRDHOST *host);
15 -extern int alert_hash_and_store_config(uuid_t hash_id, struct alert_config *cfg, int store_hash);
16 -extern void sql_aclk_alert_clean_dead_entries(RRDHOST *host);
9 +void sql_health_alarm_log_load(RRDHOST *host);
10 +int sql_create_health_log_table(RRDHOST *host);
11 +void sql_health_alarm_log_update(RRDHOST *host, ALARM_ENTRY *ae);
12 +void sql_health_alarm_log_insert(RRDHOST *host, ALARM_ENTRY *ae);
13 +void sql_health_alarm_log_save(RRDHOST *host, ALARM_ENTRY *ae);
14 +void sql_health_alarm_log_cleanup(RRDHOST *host);
15 +int alert_hash_and_store_config(uuid_t hash_id, struct alert_config *cfg, int store_hash);
16 +void sql_aclk_alert_clean_dead_entries(RRDHOST *host);
17 #endif //NETDATA_SQLITE_HEALTH_H
database/storage_engine.h
+4 -4
@@ -22,11 +22,11 @@ struct storage_engine {
22 STORAGE_ENGINE_API api;
23 };
24
25 -extern STORAGE_ENGINE* storage_engine_get(RRD_MEMORY_MODE mmode);
26 -extern STORAGE_ENGINE* storage_engine_find(const char* name);
25 +STORAGE_ENGINE* storage_engine_get(RRD_MEMORY_MODE mmode);
26 +STORAGE_ENGINE* storage_engine_find(const char* name);
27
28 // Iterator over existing engines
29 -extern STORAGE_ENGINE* storage_engine_foreach_init();
30 -extern STORAGE_ENGINE* storage_engine_foreach_next(STORAGE_ENGINE* it);
29 +STORAGE_ENGINE* storage_engine_foreach_init();
30 +STORAGE_ENGINE* storage_engine_foreach_next(STORAGE_ENGINE* it);
31
32 #endif
exporting/exporting_engine.h
+2 -2
@@ -271,7 +271,7 @@ size_t exporting_name_copy(char *dst, const char *src, size_t max_len);
271 int rrdhost_is_exportable(struct instance *instance, RRDHOST *host);
272 int rrdset_is_exportable(struct instance *instance, RRDSET *st);
273
274 -extern EXPORTING_OPTIONS exporting_parse_data_source(const char *source, EXPORTING_OPTIONS exporting_options);
274 +EXPORTING_OPTIONS exporting_parse_data_source(const char *source, EXPORTING_OPTIONS exporting_options);
275
276 NETDATA_DOUBLE
277 exporting_calculate_value_from_stored_data(
@@ -300,7 +300,7 @@ void create_main_rusage_chart(RRDSET **st_rusage, RRDDIM **rd_user, RRDDIM **rd_
300 void send_main_rusage(RRDSET *st_rusage, RRDDIM *rd_user, RRDDIM *rd_system);
301 void send_internal_metrics(struct instance *instance);
302
303 -extern void clean_instance(struct instance *ptr);
303 +void clean_instance(struct instance *ptr);
304 void simple_connector_cleanup(struct instance *instance);
305
306 static inline void disable_instance(struct instance *instance)
exporting/prometheus/prometheus.h
+3 -3
@@ -22,10 +22,10 @@ typedef enum prometheus_output_flags {
22 PROMETHEUS_OUTPUT_HIDEUNITS = (1 << 6)
23 } PROMETHEUS_OUTPUT_OPTIONS;
24
25 -extern void rrd_stats_api_v1_charts_allmetrics_prometheus_single_host(
25 +void rrd_stats_api_v1_charts_allmetrics_prometheus_single_host(
26 RRDHOST *host, const char *filter_string, BUFFER *wb, const char *server, const char *prefix,
27 EXPORTING_OPTIONS exporting_options, PROMETHEUS_OUTPUT_OPTIONS output_options);
28 -extern void rrd_stats_api_v1_charts_allmetrics_prometheus_all_hosts(
28 +void rrd_stats_api_v1_charts_allmetrics_prometheus_all_hosts(
29 RRDHOST *host, const char *filter_string, BUFFER *wb, const char *server, const char *prefix,
30 EXPORTING_OPTIONS exporting_options, PROMETHEUS_OUTPUT_OPTIONS output_options);
31
@@ -36,6 +36,6 @@ char *prometheus_units_copy(char *d, const char *s, size_t usable, int showoldun
36
37 void format_host_labels_prometheus(struct instance *instance, RRDHOST *host);
38
39 -extern void prometheus_clean_server_root();
39 +void prometheus_clean_server_root();
40
41 #endif //NETDATA_EXPORTING_PROMETHEUS_H
exporting/prometheus/remote_write/remote_write.h
+1 -1
@@ -18,7 +18,7 @@ struct prometheus_remote_write_variables_callback_options {
18 };
19
20 int init_prometheus_remote_write_instance(struct instance *instance);
21 -extern void clean_prometheus_remote_write(struct instance *instance);
21 +void clean_prometheus_remote_write(struct instance *instance);
22
23 int format_host_prometheus_remote_write(struct instance *instance, RRDHOST *host);
24 int format_chart_prometheus_remote_write(struct instance *instance, RRDSET *st);
health/health.h
+20 -20
@@ -32,23 +32,23 @@ extern unsigned int default_health_enabled;
32
33 extern char *silencers_filename;
34
35 -extern void health_init(void);
35 +void health_init(void);
36
37 -extern void health_reload(void);
37 +void health_reload(void);
38
39 -extern void health_aggregate_alarms(RRDHOST *host, BUFFER *wb, BUFFER* context, RRDCALC_STATUS status);
40 -extern void health_alarms2json(RRDHOST *host, BUFFER *wb, int all);
41 -extern void health_alarms_values2json(RRDHOST *host, BUFFER *wb, int all);
42 -extern void health_alarm_log2json(RRDHOST *host, BUFFER *wb, uint32_t after, char *chart);
39 +void health_aggregate_alarms(RRDHOST *host, BUFFER *wb, BUFFER* context, RRDCALC_STATUS status);
40 +void health_alarms2json(RRDHOST *host, BUFFER *wb, int all);
41 +void health_alarms_values2json(RRDHOST *host, BUFFER *wb, int all);
42 +void health_alarm_log2json(RRDHOST *host, BUFFER *wb, uint32_t after, char *chart);
43
44 void health_api_v1_chart_variables2json(RRDSET *st, BUFFER *buf);
45 void health_api_v1_chart_custom_variables2json(RRDSET *st, BUFFER *buf);
46
47 -extern int health_alarm_log_open(RRDHOST *host);
48 -extern void health_alarm_log_save(RRDHOST *host, ALARM_ENTRY *ae);
49 -extern void health_alarm_log_load(RRDHOST *host);
47 +int health_alarm_log_open(RRDHOST *host);
48 +void health_alarm_log_save(RRDHOST *host, ALARM_ENTRY *ae);
49 +void health_alarm_log_load(RRDHOST *host);
50
51 -extern ALARM_ENTRY* health_create_alarm_entry(
51 +ALARM_ENTRY* health_create_alarm_entry(
52 RRDHOST *host,
53 uint32_t alarm_id,
54 uint32_t alarm_event_id,
@@ -74,20 +74,20 @@ extern ALARM_ENTRY* health_create_alarm_entry(
74 int delay,
75 uint32_t flags);
76
77 -extern void health_alarm_log_add_entry(RRDHOST *host, ALARM_ENTRY *ae);
77 +void health_alarm_log_add_entry(RRDHOST *host, ALARM_ENTRY *ae);
78
79 -extern void health_readdir(RRDHOST *host, const char *user_path, const char *stock_path, const char *subpath);
80 -extern char *health_user_config_dir(void);
81 -extern char *health_stock_config_dir(void);
82 -extern void health_alarm_log_free(RRDHOST *host);
79 +void health_readdir(RRDHOST *host, const char *user_path, const char *stock_path, const char *subpath);
80 +char *health_user_config_dir(void);
81 +char *health_stock_config_dir(void);
82 +void health_alarm_log_free(RRDHOST *host);
83
84 -extern void health_alarm_log_free_one_nochecks_nounlink(ALARM_ENTRY *ae);
84 +void health_alarm_log_free_one_nochecks_nounlink(ALARM_ENTRY *ae);
85
86 -extern void *health_cmdapi_thread(void *ptr);
86 +void *health_cmdapi_thread(void *ptr);
87
88 -extern void health_label_log_save(RRDHOST *host);
88 +void health_label_log_save(RRDHOST *host);
89
90 -extern char *health_edit_command_from_source(const char *source);
91 -extern void sql_refresh_hashes(void);
90 +char *health_edit_command_from_source(const char *source);
91 +void sql_refresh_hashes(void);
92
93 #endif //NETDATA_HEALTH_H
libnetdata/adaptive_resortable_list/adaptive_resortable_list.h
+8 -8
@@ -64,25 +64,25 @@ typedef struct arl_base {
64 } ARL_BASE;
65
66 // create a new ARL
67 -extern ARL_BASE *arl_create(const char *name, void (*processor)(const char *, uint32_t, const char *, void *), size_t rechecks);
67 +ARL_BASE *arl_create(const char *name, void (*processor)(const char *, uint32_t, const char *, void *), size_t rechecks);
68
69 // free an ARL
70 -extern void arl_free(ARL_BASE *arl_base);
70 +void arl_free(ARL_BASE *arl_base);
71
72 // register an expected keyword to the ARL
73 // together with its destination ( i.e. the output of the processor() )
74 -extern ARL_ENTRY *arl_expect_custom(ARL_BASE *base, const char *keyword, void (*processor)(const char *name, uint32_t hash, const char *value, void *dst), void *dst);
74 +ARL_ENTRY *arl_expect_custom(ARL_BASE *base, const char *keyword, void (*processor)(const char *name, uint32_t hash, const char *value, void *dst), void *dst);
75 #define arl_expect(base, keyword, dst) arl_expect_custom(base, keyword, NULL, dst)
76
77 // an internal call to complete the check() call
78 -extern int arl_find_or_create_and_relink(ARL_BASE *base, const char *s, const char *value);
78 +int arl_find_or_create_and_relink(ARL_BASE *base, const char *s, const char *value);
79
80 // begin an ARL iteration
81 -extern void arl_begin(ARL_BASE *base);
81 +void arl_begin(ARL_BASE *base);
82
83 -extern void arl_callback_str2ull(const char *name, uint32_t hash, const char *value, void *dst);
84 -extern void arl_callback_str2kernel_uint_t(const char *name, uint32_t hash, const char *value, void *dst);
85 -extern void arl_callback_ssize_t(const char *name, uint32_t hash, const char *value, void *dst);
83 +void arl_callback_str2ull(const char *name, uint32_t hash, const char *value, void *dst);
84 +void arl_callback_str2kernel_uint_t(const char *name, uint32_t hash, const char *value, void *dst);
85 +void arl_callback_ssize_t(const char *name, uint32_t hash, const char *value, void *dst);
86
87 // check a keyword against the ARL
88 // this is to be called for each keyword read from source data
libnetdata/arrayalloc/arrayalloc.h
+3 -3
@@ -28,8 +28,8 @@ typedef struct arrayalloc {
28 } internal;
29 } ARAL;
30
31 -extern ARAL *arrayalloc_create(size_t element_size, size_t elements, const char *filename, char **cache_dir);
32 -extern void *arrayalloc_mallocz(ARAL *ar);
33 -extern void arrayalloc_freez(ARAL *ar, void *ptr);
31 +ARAL *arrayalloc_create(size_t element_size, size_t elements, const char *filename, char **cache_dir);
32 +void *arrayalloc_mallocz(ARAL *ar);
33 +void arrayalloc_freez(ARAL *ar, void *ptr);
34
35 #endif // ARRAYALLOC_H
libnetdata/buffer/buffer.h
+22 -22
@@ -49,37 +49,37 @@ typedef struct web_buffer {
49 #define buffer_no_cacheable(wb) do { (wb)->options |= WB_CONTENT_NO_CACHEABLE; if((wb)->options & WB_CONTENT_CACHEABLE) (wb)->options &= ~WB_CONTENT_CACHEABLE; (wb)->expires = 0; } while(0)
50
51 #define buffer_strlen(wb) ((wb)->len)
52 -extern const char *buffer_tostring(BUFFER *wb);
52 +const char *buffer_tostring(BUFFER *wb);
53
54 #define buffer_flush(wb) wb->buffer[(wb)->len = 0] = '\0'
55 -extern void buffer_reset(BUFFER *wb);
55 +void buffer_reset(BUFFER *wb);
56
57 -extern void buffer_strcat(BUFFER *wb, const char *txt);
58 -extern void buffer_fast_strcat(BUFFER *wb, const char *txt, size_t len);
59 -extern void buffer_rrd_value(BUFFER *wb, NETDATA_DOUBLE value);
57 +void buffer_strcat(BUFFER *wb, const char *txt);
58 +void buffer_fast_strcat(BUFFER *wb, const char *txt, size_t len);
59 +void buffer_rrd_value(BUFFER *wb, NETDATA_DOUBLE value);
60
61 -extern void buffer_date(BUFFER *wb, int year, int month, int day, int hours, int minutes, int seconds);
62 -extern void buffer_jsdate(BUFFER *wb, int year, int month, int day, int hours, int minutes, int seconds);
61 +void buffer_date(BUFFER *wb, int year, int month, int day, int hours, int minutes, int seconds);
62 +void buffer_jsdate(BUFFER *wb, int year, int month, int day, int hours, int minutes, int seconds);
63
64 -extern BUFFER *buffer_create(size_t size);
65 -extern void buffer_free(BUFFER *b);
66 -extern void buffer_increase(BUFFER *b, size_t free_size_required);
64 +BUFFER *buffer_create(size_t size);
65 +void buffer_free(BUFFER *b);
66 +void buffer_increase(BUFFER *b, size_t free_size_required);
67
68 -extern void buffer_snprintf(BUFFER *wb, size_t len, const char *fmt, ...) PRINTFLIKE(3, 4);
69 -extern void buffer_vsprintf(BUFFER *wb, const char *fmt, va_list args);
70 -extern void buffer_sprintf(BUFFER *wb, const char *fmt, ...) PRINTFLIKE(2,3);
71 -extern void buffer_strcat_jsonescape(BUFFER *wb, const char *txt);
72 -extern void buffer_strcat_htmlescape(BUFFER *wb, const char *txt);
68 +void buffer_snprintf(BUFFER *wb, size_t len, const char *fmt, ...) PRINTFLIKE(3, 4);
69 +void buffer_vsprintf(BUFFER *wb, const char *fmt, va_list args);
70 +void buffer_sprintf(BUFFER *wb, const char *fmt, ...) PRINTFLIKE(2,3);
71 +void buffer_strcat_jsonescape(BUFFER *wb, const char *txt);
72 +void buffer_strcat_htmlescape(BUFFER *wb, const char *txt);
73
74 -extern void buffer_char_replace(BUFFER *wb, char from, char to);
74 +void buffer_char_replace(BUFFER *wb, char from, char to);
75
76 -extern char *print_number_lu_r(char *str, unsigned long uvalue);
77 -extern char *print_number_llu_r(char *str, unsigned long long uvalue);
78 -extern char *print_number_llu_r_smart(char *str, unsigned long long uvalue);
76 +char *print_number_lu_r(char *str, unsigned long uvalue);
77 +char *print_number_llu_r(char *str, unsigned long long uvalue);
78 +char *print_number_llu_r_smart(char *str, unsigned long long uvalue);
79
80 -extern void buffer_print_llu(BUFFER *wb, unsigned long long uvalue);
81 -extern void buffer_print_ll(BUFFER *wb, long long value);
82 -extern void buffer_print_llu_hex(BUFFER *wb, unsigned long long value);
80 +void buffer_print_llu(BUFFER *wb, unsigned long long uvalue);
81 +void buffer_print_ll(BUFFER *wb, long long value);
82 +void buffer_print_llu_hex(BUFFER *wb, unsigned long long value);
83
84 static inline void buffer_need_bytes(BUFFER *buffer, size_t needed_free_size) {
85 if(unlikely(buffer->size - buffer->len < needed_free_size))
libnetdata/circular_buffer/circular_buffer.h
+7 -7
@@ -8,12 +8,12 @@ struct circular_buffer {
8 char *data;
9 };
10
11 -extern struct circular_buffer *cbuffer_new(size_t initial, size_t max);
12 -extern void cbuffer_free(struct circular_buffer *buf);
13 -extern int cbuffer_add_unsafe(struct circular_buffer *buf, const char *d, size_t d_len);
14 -extern void cbuffer_remove_unsafe(struct circular_buffer *buf, size_t num);
15 -extern size_t cbuffer_next_unsafe(struct circular_buffer *buf, char **start);
16 -extern size_t cbuffer_available_size_unsafe(struct circular_buffer *buf);
17 -extern void cbuffer_flush(struct circular_buffer*buf);
11 +struct circular_buffer *cbuffer_new(size_t initial, size_t max);
12 +void cbuffer_free(struct circular_buffer *buf);
13 +int cbuffer_add_unsafe(struct circular_buffer *buf, const char *d, size_t d_len);
14 +void cbuffer_remove_unsafe(struct circular_buffer *buf, size_t num);
15 +size_t cbuffer_next_unsafe(struct circular_buffer *buf, char **start);
16 +size_t cbuffer_available_size_unsafe(struct circular_buffer *buf);
17 +void cbuffer_flush(struct circular_buffer*buf);
18
19 #endif
libnetdata/clocks/clocks.h
+27 -27
@@ -82,7 +82,7 @@ typedef struct heartbeat {
82 * make systems without clock_gettime() support sensitive
83 * to time jumps or hibernation/suspend side effects.
84 */
85 -extern int clock_gettime(clockid_t clk_id, struct timespec *ts);
85 +int clock_gettime(clockid_t clk_id, struct timespec *ts);
86 #endif
87
88 /*
@@ -111,50 +111,50 @@ extern int clock_gettime(clockid_t clk_id, struct timespec *ts);
111 * All now_*_usec() functions return the time in microseconds from the appropriate clock, or 0 on error.
112 *
113 */
114 -extern int now_realtime_timeval(struct timeval *tv);
115 -extern time_t now_realtime_sec(void);
116 -extern usec_t now_realtime_usec(void);
114 +int now_realtime_timeval(struct timeval *tv);
115 +time_t now_realtime_sec(void);
116 +usec_t now_realtime_usec(void);
117
118 -extern int now_monotonic_timeval(struct timeval *tv);
119 -extern time_t now_monotonic_sec(void);
120 -extern usec_t now_monotonic_usec(void);
121 -extern int now_monotonic_high_precision_timeval(struct timeval *tv);
122 -extern time_t now_monotonic_high_precision_sec(void);
123 -extern usec_t now_monotonic_high_precision_usec(void);
118 +int now_monotonic_timeval(struct timeval *tv);
119 +time_t now_monotonic_sec(void);
120 +usec_t now_monotonic_usec(void);
121 +int now_monotonic_high_precision_timeval(struct timeval *tv);
122 +time_t now_monotonic_high_precision_sec(void);
123 +usec_t now_monotonic_high_precision_usec(void);
124
125 -extern int now_boottime_timeval(struct timeval *tv);
126 -extern time_t now_boottime_sec(void);
127 -extern usec_t now_boottime_usec(void);
125 +int now_boottime_timeval(struct timeval *tv);
126 +time_t now_boottime_sec(void);
127 +usec_t now_boottime_usec(void);
128
129 -extern usec_t timeval_usec(struct timeval *tv);
130 -extern msec_t timeval_msec(struct timeval *tv);
129 +usec_t timeval_usec(struct timeval *tv);
130 +msec_t timeval_msec(struct timeval *tv);
131
132 -extern usec_t dt_usec(struct timeval *now, struct timeval *old);
133 -extern susec_t dt_usec_signed(struct timeval *now, struct timeval *old);
132 +usec_t dt_usec(struct timeval *now, struct timeval *old);
133 +susec_t dt_usec_signed(struct timeval *now, struct timeval *old);
134
135 -extern void heartbeat_init(heartbeat_t *hb);
135 +void heartbeat_init(heartbeat_t *hb);
136
137 /* Sleeps until next multiple of tick using monotonic clock.
138 * Returns elapsed time in microseconds since previous heartbeat
139 */
140 -extern usec_t heartbeat_next(heartbeat_t *hb, usec_t tick);
140 +usec_t heartbeat_next(heartbeat_t *hb, usec_t tick);
141
142 -extern void heartbeat_statistics(usec_t *min_ptr, usec_t *max_ptr, usec_t *average_ptr, size_t *count_ptr);
142 +void heartbeat_statistics(usec_t *min_ptr, usec_t *max_ptr, usec_t *average_ptr, size_t *count_ptr);
143
144 -extern void sleep_usec(usec_t usec);
144 +void sleep_usec(usec_t usec);
145
146 -extern void clocks_init(void);
146 +void clocks_init(void);
147
148 // lower level functions - avoid using directly
149 -extern time_t now_sec(clockid_t clk_id);
150 -extern usec_t now_usec(clockid_t clk_id);
151 -extern int now_timeval(clockid_t clk_id, struct timeval *tv);
149 +time_t now_sec(clockid_t clk_id);
150 +usec_t now_usec(clockid_t clk_id);
151 +int now_timeval(clockid_t clk_id, struct timeval *tv);
152
153 -extern collected_number uptime_msec(char *filename);
153 +collected_number uptime_msec(char *filename);
154
155 extern usec_t clock_monotonic_resolution;
156 extern usec_t clock_realtime_resolution;
157
158 -extern void sleep_to_absolute_time(usec_t usec);
158 +void sleep_to_absolute_time(usec_t usec);
159
160 #endif /* NETDATA_CLOCKS_H */
libnetdata/config/appconfig.h
+27 -27
@@ -163,41 +163,41 @@ struct config {
163 #define CONFIG_BOOLEAN_AUTO 2 // enabled if it has useful info when enabled
164 #endif
165
166 -extern int appconfig_load(struct config *root, char *filename, int overwrite_used, const char *section_name);
167 -extern void config_section_wrlock(struct section *co);
168 -extern void config_section_unlock(struct section *co);
166 +int appconfig_load(struct config *root, char *filename, int overwrite_used, const char *section_name);
167 +void config_section_wrlock(struct section *co);
168 +void config_section_unlock(struct section *co);
169
170 -extern char *appconfig_get_by_section(struct section *co, const char *name, const char *default_value);
171 -extern char *appconfig_get(struct config *root, const char *section, const char *name, const char *default_value);
172 -extern long long appconfig_get_number(struct config *root, const char *section, const char *name, long long value);
173 -extern NETDATA_DOUBLE appconfig_get_float(struct config *root, const char *section, const char *name, NETDATA_DOUBLE value);
174 -extern int appconfig_get_boolean_by_section(struct section *co, const char *name, int value);
175 -extern int appconfig_get_boolean(struct config *root, const char *section, const char *name, int value);
176 -extern int appconfig_get_boolean_ondemand(struct config *root, const char *section, const char *name, int value);
177 -extern int appconfig_get_duration(struct config *root, const char *section, const char *name, const char *value);
170 +char *appconfig_get_by_section(struct section *co, const char *name, const char *default_value);
171 +char *appconfig_get(struct config *root, const char *section, const char *name, const char *default_value);
172 +long long appconfig_get_number(struct config *root, const char *section, const char *name, long long value);
173 +NETDATA_DOUBLE appconfig_get_float(struct config *root, const char *section, const char *name, NETDATA_DOUBLE value);
174 +int appconfig_get_boolean_by_section(struct section *co, const char *name, int value);
175 +int appconfig_get_boolean(struct config *root, const char *section, const char *name, int value);
176 +int appconfig_get_boolean_ondemand(struct config *root, const char *section, const char *name, int value);
177 +int appconfig_get_duration(struct config *root, const char *section, const char *name, const char *value);
178
179 -extern const char *appconfig_set(struct config *root, const char *section, const char *name, const char *value);
180 -extern const char *appconfig_set_default(struct config *root, const char *section, const char *name, const char *value);
181 -extern long long appconfig_set_number(struct config *root, const char *section, const char *name, long long value);
182 -extern NETDATA_DOUBLE appconfig_set_float(struct config *root, const char *section, const char *name, NETDATA_DOUBLE value);
183 -extern int appconfig_set_boolean(struct config *root, const char *section, const char *name, int value);
179 +const char *appconfig_set(struct config *root, const char *section, const char *name, const char *value);
180 +const char *appconfig_set_default(struct config *root, const char *section, const char *name, const char *value);
181 +long long appconfig_set_number(struct config *root, const char *section, const char *name, long long value);
182 +NETDATA_DOUBLE appconfig_set_float(struct config *root, const char *section, const char *name, NETDATA_DOUBLE value);
183 +int appconfig_set_boolean(struct config *root, const char *section, const char *name, int value);
184
185 -extern int appconfig_exists(struct config *root, const char *section, const char *name);
186 -extern int appconfig_move(struct config *root, const char *section_old, const char *name_old, const char *section_new, const char *name_new);
185 +int appconfig_exists(struct config *root, const char *section, const char *name);
186 +int appconfig_move(struct config *root, const char *section_old, const char *name_old, const char *section_new, const char *name_new);
187
188 -extern void appconfig_generate(struct config *root, BUFFER *wb, int only_changed);
188 +void appconfig_generate(struct config *root, BUFFER *wb, int only_changed);
189
190 -extern int appconfig_section_compare(void *a, void *b);
190 +int appconfig_section_compare(void *a, void *b);
191
192 -extern void appconfig_section_destroy_non_loaded(struct config *root, const char *section);
193 -extern void appconfig_section_option_destroy_non_loaded(struct config *root, const char *section, const char *name);
192 +void appconfig_section_destroy_non_loaded(struct config *root, const char *section);
193 +void appconfig_section_option_destroy_non_loaded(struct config *root, const char *section, const char *name);
194
195 -extern int config_parse_duration(const char* string, int* result);
195 +int config_parse_duration(const char* string, int* result);
196
197 -extern struct section *appconfig_get_section(struct config *root, const char *name);
197 +struct section *appconfig_get_section(struct config *root, const char *name);
198
199 -extern void appconfig_wrlock(struct config *root);
200 -extern void appconfig_unlock(struct config *root);
199 +void appconfig_wrlock(struct config *root);
200 +void appconfig_unlock(struct config *root);
201
202 struct connector_instance {
203 char instance_name[CONFIG_MAX_NAME + 1];
@@ -212,6 +212,6 @@ typedef struct _connector_instance {
212 struct _connector_instance *next; // Next instance
213 } _CONNECTOR_INSTANCE;
214
215 -extern _CONNECTOR_INSTANCE *add_connector_instance(struct section *connector, struct section *instance);
215 +_CONNECTOR_INSTANCE *add_connector_instance(struct section *connector, struct section *instance);
216
217 #endif /* NETDATA_CONFIG_H */
libnetdata/dictionary/dictionary.h
+36 -36
@@ -108,51 +108,51 @@ struct dictionary_stats {
108 #ifdef NETDATA_INTERNAL_CHECKS
109 #define dictionary_create(options) dictionary_create_advanced_with_trace(options, NULL, __FUNCTION__, __LINE__, __FILE__)
110 #define dictionary_create_advanced(options, stats) dictionary_create_advanced_with_trace(options, stats, __FUNCTION__, __LINE__, __FILE__)
111 -extern DICTIONARY *dictionary_create_advanced_with_trace(DICT_OPTIONS options, struct dictionary_stats *stats, const char *function, size_t line, const char *file);
111 +DICTIONARY *dictionary_create_advanced_with_trace(DICT_OPTIONS options, struct dictionary_stats *stats, const char *function, size_t line, const char *file);
112 #else
113 #define dictionary_create(options) dictionary_create_advanced(options, NULL);
114 -extern DICTIONARY *dictionary_create_advanced(DICT_OPTIONS options, struct dictionary_stats *stats);
114 +DICTIONARY *dictionary_create_advanced(DICT_OPTIONS options, struct dictionary_stats *stats);
115 #endif
116
117 // Create a view on a dictionary
118 #ifdef NETDATA_INTERNAL_CHECKS
119 #define dictionary_create_view(master) dictionary_create_view_with_trace(master, __FUNCTION__, __LINE__, __FILE__)
120 -extern DICTIONARY *dictionary_create_view_with_trace(DICTIONARY *master, const char *function, size_t line, const char *file);
120 +DICTIONARY *dictionary_create_view_with_trace(DICTIONARY *master, const char *function, size_t line, const char *file);
121 #else
122 -extern DICTIONARY *dictionary_create_view(DICTIONARY *master);
122 +DICTIONARY *dictionary_create_view(DICTIONARY *master);
123 #endif
124
125 // an insert callback to be called just after an item is added to the dictionary
126 // this callback is called while the dictionary is write locked!
127 -extern void dictionary_register_insert_callback(DICTIONARY *dict, void (*ins_callback)(const DICTIONARY_ITEM *item, void *value, void *data), void *data);
127 +void dictionary_register_insert_callback(DICTIONARY *dict, void (*ins_callback)(const DICTIONARY_ITEM *item, void *value, void *data), void *data);
128
129 // a delete callback to be called just before an item is deleted forever
130 // this callback is called while the dictionary is write locked!
131 -extern void dictionary_register_delete_callback(DICTIONARY *dict, void (*del_callback)(const DICTIONARY_ITEM *item, void *value, void *data), void *data);
131 +void dictionary_register_delete_callback(DICTIONARY *dict, void (*del_callback)(const DICTIONARY_ITEM *item, void *value, void *data), void *data);
132
133 // a merge callback to be called when DICT_OPTION_DONT_OVERWRITE_VALUE
134 // and an item is already found in the dictionary - the dictionary does nothing else in this case
135 // the old_value will remain in the dictionary - the new_value is ignored
136 // The callback should return true if the value has been updated (it increases the dictionary version).
137 -extern void dictionary_register_conflict_callback(DICTIONARY *dict, bool (*conflict_callback)(const DICTIONARY_ITEM *item, void *old_value, void *new_value, void *data), void *data);
137 +void dictionary_register_conflict_callback(DICTIONARY *dict, bool (*conflict_callback)(const DICTIONARY_ITEM *item, void *old_value, void *new_value, void *data), void *data);
138
139 // a reaction callback to be called after every item insertion or conflict
140 // after the constructors have finished and the items are fully available for use
141 // and the dictionary is not write locked anymore
142 -extern void dictionary_register_react_callback(DICTIONARY *dict, void (*react_callback)(const DICTIONARY_ITEM *item, void *value, void *data), void *data);
142 +void dictionary_register_react_callback(DICTIONARY *dict, void (*react_callback)(const DICTIONARY_ITEM *item, void *value, void *data), void *data);
143
144 // Destroy a dictionary
145 // Returns the number of bytes freed
146 // The returned value will not include name/key sizes
147 // Registered delete callbacks will be run for each item in the dictionary.
148 -extern size_t dictionary_destroy(DICTIONARY *dict);
148 +size_t dictionary_destroy(DICTIONARY *dict);
149
150 // Empties a dictionary
151 // Referenced items will survive, but are not offered anymore.
152 // Registered delete callbacks will be run for each item in the dictionary.
153 -extern void dictionary_flush(DICTIONARY *dict);
153 +void dictionary_flush(DICTIONARY *dict);
154
155 -extern void dictionary_version_increment(DICTIONARY *dict);
155 +void dictionary_version_increment(DICTIONARY *dict);
156
157 // ----------------------------------------------------------------------------
158 // Set an item in the dictionary
@@ -171,26 +171,26 @@ extern void dictionary_version_increment(DICTIONARY *dict);
171 // Passing NULL as value, the dictionary will callocz() the newly allocated value, otherwise it will copy it.
172 // Passing 0 as value_len, the dictionary will set the value to NULL (no allocations for value will be made).
173 #define dictionary_set(dict, name, value, value_len) dictionary_set_advanced(dict, name, -1, value, value_len, NULL)
174 -extern void *dictionary_set_advanced(DICTIONARY *dict, const char *name, ssize_t name_len, void *value, size_t value_len, void *constructor_data);
174 +void *dictionary_set_advanced(DICTIONARY *dict, const char *name, ssize_t name_len, void *value, size_t value_len, void *constructor_data);
175
176 #define dictionary_set_and_acquire_item(dict, name, value, value_len) dictionary_set_and_acquire_item_advanced(dict, name, -1, value, value_len, NULL)
177 -extern DICT_ITEM_CONST DICTIONARY_ITEM *dictionary_set_and_acquire_item_advanced(DICTIONARY *dict, const char *name, ssize_t name_len, void *value, size_t value_len, void *constructor_data);
177 +DICT_ITEM_CONST DICTIONARY_ITEM *dictionary_set_and_acquire_item_advanced(DICTIONARY *dict, const char *name, ssize_t name_len, void *value, size_t value_len, void *constructor_data);
178
179 // set an item in a dictionary view
180 #define dictionary_view_set_and_acquire_item(dict, name, master_item) dictionary_view_set_and_acquire_item_advanced(dict, name, -1, master_item)
181 -extern DICT_ITEM_CONST DICTIONARY_ITEM *dictionary_view_set_and_acquire_item_advanced(DICTIONARY *dict, const char *name, ssize_t name_len, DICTIONARY_ITEM *master_item);
181 +DICT_ITEM_CONST DICTIONARY_ITEM *dictionary_view_set_and_acquire_item_advanced(DICTIONARY *dict, const char *name, ssize_t name_len, DICTIONARY_ITEM *master_item);
182 #define dictionary_view_set(dict, name, master_item) dictionary_view_set_advanced(dict, name, -1, master_item)
183 -extern void *dictionary_view_set_advanced(DICTIONARY *dict, const char *name, ssize_t name_len, DICT_ITEM_CONST DICTIONARY_ITEM *master_item);
183 +void *dictionary_view_set_advanced(DICTIONARY *dict, const char *name, ssize_t name_len, DICT_ITEM_CONST DICTIONARY_ITEM *master_item);
184
185 // ----------------------------------------------------------------------------
186 // Get an item from the dictionary
187 // If it returns NULL, the item is not found
188
189 #define dictionary_get(dict, name) dictionary_get_advanced(dict, name, -1)
190 -extern void *dictionary_get_advanced(DICTIONARY *dict, const char *name, ssize_t name_len);
190 +void *dictionary_get_advanced(DICTIONARY *dict, const char *name, ssize_t name_len);
191
192 #define dictionary_get_and_acquire_item(dict, name) dictionary_get_and_acquire_item_advanced(dict, name, -1)
193 -extern DICT_ITEM_CONST DICTIONARY_ITEM *dictionary_get_and_acquire_item_advanced(DICTIONARY *dict, const char *name, ssize_t name_len);
193 +DICT_ITEM_CONST DICTIONARY_ITEM *dictionary_get_and_acquire_item_advanced(DICTIONARY *dict, const char *name, ssize_t name_len);
194
195
196 // ----------------------------------------------------------------------------
@@ -199,19 +199,19 @@ extern DICT_ITEM_CONST DICTIONARY_ITEM *dictionary_get_and_acquire_item_advanced
199 // returns false if the item was not found in the index
200
201 #define dictionary_del(dict, name) dictionary_del_advanced(dict, name, -1)
202 -extern bool dictionary_del_advanced(DICTIONARY *dict, const char *name, ssize_t name_len);
202 +bool dictionary_del_advanced(DICTIONARY *dict, const char *name, ssize_t name_len);
203
204 // ----------------------------------------------------------------------------
205 // reference counters management
206
207 -extern void dictionary_acquired_item_release(DICTIONARY *dict, DICT_ITEM_CONST DICTIONARY_ITEM *item);
207 +void dictionary_acquired_item_release(DICTIONARY *dict, DICT_ITEM_CONST DICTIONARY_ITEM *item);
208
209 -extern DICT_ITEM_CONST DICTIONARY_ITEM *dictionary_acquired_item_dup(DICTIONARY *dict, DICT_ITEM_CONST DICTIONARY_ITEM *item);
209 +DICT_ITEM_CONST DICTIONARY_ITEM *dictionary_acquired_item_dup(DICTIONARY *dict, DICT_ITEM_CONST DICTIONARY_ITEM *item);
210
211 -extern const char *dictionary_acquired_item_name(DICT_ITEM_CONST DICTIONARY_ITEM *item);
212 -extern void *dictionary_acquired_item_value(DICT_ITEM_CONST DICTIONARY_ITEM *item);
211 +const char *dictionary_acquired_item_name(DICT_ITEM_CONST DICTIONARY_ITEM *item);
212 +void *dictionary_acquired_item_value(DICT_ITEM_CONST DICTIONARY_ITEM *item);
213
214 -extern size_t dictionary_acquired_item_references(DICT_ITEM_CONST DICTIONARY_ITEM *item);
214 +size_t dictionary_acquired_item_references(DICT_ITEM_CONST DICTIONARY_ITEM *item);
215
216 // ----------------------------------------------------------------------------
217 // Traverse (walk through) the items of the dictionary.
@@ -228,7 +228,7 @@ extern size_t dictionary_acquired_item_references(DICT_ITEM_CONST DICTIONARY_ITE
228 //
229 #define dictionary_walkthrough_read(dict, callback, data) dictionary_walkthrough_rw(dict, 'r', callback, data)
230 #define dictionary_walkthrough_write(dict, callback, data) dictionary_walkthrough_rw(dict, 'w', callback, data)
231 -extern int dictionary_walkthrough_rw(DICTIONARY *dict, char rw, int (*callback)(const DICTIONARY_ITEM *item, void *value, void *data), void *data);
231 +int dictionary_walkthrough_rw(DICTIONARY *dict, char rw, int (*callback)(const DICTIONARY_ITEM *item, void *value, void *data), void *data);
232
233 #define dictionary_sorted_walkthrough_read(dict, callback, data) dictionary_sorted_walkthrough_rw(dict, 'r', callback, data)
234 #define dictionary_sorted_walkthrough_write(dict, callback, data) dictionary_sorted_walkthrough_rw(dict, 'w', callback, data)
@@ -253,8 +253,8 @@ int dictionary_sorted_walkthrough_rw(DICTIONARY *dict, char rw, int (*callback)(
253 #define DICTIONARY_LOCK_WRITE 'w'
254 #define DICTIONARY_LOCK_REENTRANT 'z'
255
256 -extern void dictionary_write_lock(DICTIONARY *dict);
257 -extern void dictionary_write_unlock(DICTIONARY *dict);
256 +void dictionary_write_lock(DICTIONARY *dict);
257 +void dictionary_write_unlock(DICTIONARY *dict);
258
259 typedef DICTFE_CONST struct dictionary_foreach {
260 DICTIONARY *dict; // the dictionary upon we work
@@ -290,31 +290,31 @@ typedef DICTFE_CONST struct dictionary_foreach {
290 dictionary_foreach_done(&value ## _dfe); \
291 } while(0)
292
293 -extern void *dictionary_foreach_start_rw(DICTFE *dfe, DICTIONARY *dict, char rw);
294 -extern void *dictionary_foreach_next(DICTFE *dfe);
295 -extern void dictionary_foreach_done(DICTFE *dfe);
293 +void *dictionary_foreach_start_rw(DICTFE *dfe, DICTIONARY *dict, char rw);
294 +void *dictionary_foreach_next(DICTFE *dfe);
295 +void dictionary_foreach_done(DICTFE *dfe);
296
297 // ----------------------------------------------------------------------------
298 // Get statistics about the dictionary
299
300 -extern size_t dictionary_version(DICTIONARY *dict);
301 -extern size_t dictionary_entries(DICTIONARY *dict);
302 -extern size_t dictionary_referenced_items(DICTIONARY *dict);
303 -extern long int dictionary_stats_for_registry(DICTIONARY *dict);
300 +size_t dictionary_version(DICTIONARY *dict);
301 +size_t dictionary_entries(DICTIONARY *dict);
302 +size_t dictionary_referenced_items(DICTIONARY *dict);
303 +long int dictionary_stats_for_registry(DICTIONARY *dict);
304
305 // for all cases that the caller does not provide a stats structure, this is where they are accumulated.
306 extern struct dictionary_stats dictionary_stats_category_other;
307
308 -extern int dictionary_unittest(size_t entries);
308 +int dictionary_unittest(size_t entries);
309
310 // ----------------------------------------------------------------------------
311 // THREAD CACHE
312
313 -extern void *thread_cache_entry_get_or_set(void *key,
313 +void *thread_cache_entry_get_or_set(void *key,
314 ssize_t key_length,
315 void *value,
316 void *(*transform_the_value_before_insert)(void *key, size_t key_length, void *value));
317
318 -extern void thread_cache_destroy(void);
318 +void thread_cache_destroy(void);
319
320 #endif /* NETDATA_DICTIONARY_H */
libnetdata/ebpf/ebpf.h
+28 -28
@@ -270,25 +270,25 @@ typedef struct ebpf_module {
270 struct bpf_object *objects;
271 } ebpf_module_t;
272
273 -extern int ebpf_get_kernel_version();
274 -extern int get_redhat_release();
275 -extern int has_condition_to_run(int version);
276 -extern char *ebpf_kernel_suffix(int version, int isrh);
277 -extern struct bpf_link **ebpf_load_program(char *plugins_dir, ebpf_module_t *em, int kver, int is_rhf,
273 +int ebpf_get_kernel_version();
274 +int get_redhat_release();
275 +int has_condition_to_run(int version);
276 +char *ebpf_kernel_suffix(int version, int isrh);
277 +struct bpf_link **ebpf_load_program(char *plugins_dir, ebpf_module_t *em, int kver, int is_rhf,
278 struct bpf_object **obj);
279
280 -extern void ebpf_mount_config_name(char *filename, size_t length, char *path, const char *config);
281 -extern int ebpf_load_config(struct config *config, char *filename);
282 -extern void ebpf_update_module(ebpf_module_t *em, struct btf *btf_file);
283 -extern void ebpf_update_names(ebpf_specify_name_t *opt, ebpf_module_t *em);
284 -extern void ebpf_adjust_apps_cgroup(ebpf_module_t *em, netdata_ebpf_program_loaded_t mode);
285 -extern char *ebpf_find_symbol(char *search);
286 -extern void ebpf_load_addresses(ebpf_addresses_t *fa, int fd);
287 -extern void ebpf_fill_algorithms(int *algorithms, size_t length, int algorithm);
288 -extern char **ebpf_fill_histogram_dimension(size_t maximum);
289 -extern void ebpf_update_stats(ebpf_plugin_stats_t *report, ebpf_module_t *em);
290 -extern void ebpf_update_controller(int fd, ebpf_module_t *em);
291 -extern void ebpf_update_map_size(struct bpf_map *map, ebpf_local_maps_t *lmap, ebpf_module_t *em, const char *map_name);
280 +void ebpf_mount_config_name(char *filename, size_t length, char *path, const char *config);
281 +int ebpf_load_config(struct config *config, char *filename);
282 +void ebpf_update_module(ebpf_module_t *em, struct btf *btf_file);
283 +void ebpf_update_names(ebpf_specify_name_t *opt, ebpf_module_t *em);
284 +void ebpf_adjust_apps_cgroup(ebpf_module_t *em, netdata_ebpf_program_loaded_t mode);
285 +char *ebpf_find_symbol(char *search);
286 +void ebpf_load_addresses(ebpf_addresses_t *fa, int fd);
287 +void ebpf_fill_algorithms(int *algorithms, size_t length, int algorithm);
288 +char **ebpf_fill_histogram_dimension(size_t maximum);
289 +void ebpf_update_stats(ebpf_plugin_stats_t *report, ebpf_module_t *em);
290 +void ebpf_update_controller(int fd, ebpf_module_t *em);
291 +void ebpf_update_map_size(struct bpf_map *map, ebpf_local_maps_t *lmap, ebpf_module_t *em, const char *map_name);
292
293 // Histogram
294 #define NETDATA_EBPF_HIST_MAX_BINS 24UL
@@ -339,13 +339,13 @@ typedef struct ebpf_sync_syscalls {
339 #endif
340 } ebpf_sync_syscalls_t;
341
342 -extern void ebpf_histogram_dimension_cleanup(char **ptr, size_t length);
342 +void ebpf_histogram_dimension_cleanup(char **ptr, size_t length);
343
344 // Tracepoint helpers
345 // For more information related to tracepoints read https://www.kernel.org/doc/html/latest/trace/tracepoints.html
346 -extern int ebpf_is_tracepoint_enabled(char *subsys, char *eventname);
347 -extern int ebpf_enable_tracing_values(char *subsys, char *eventname);
348 -extern int ebpf_disable_tracing_values(char *subsys, char *eventname);
346 +int ebpf_is_tracepoint_enabled(char *subsys, char *eventname);
347 +int ebpf_enable_tracing_values(char *subsys, char *eventname);
348 +int ebpf_disable_tracing_values(char *subsys, char *eventname);
349
350 // BTF Section
351 #define EBPF_DEFAULT_BTF_FILE "vmlinux"
@@ -355,14 +355,14 @@ extern int ebpf_disable_tracing_values(char *subsys, char *eventname);
355 // BTF helpers
356 #define NETDATA_EBPF_MAX_SYSCALL_LENGTH 255
357
358 -extern netdata_ebpf_load_mode_t epbf_convert_string_to_load_mode(char *str);
359 -extern netdata_ebpf_program_loaded_t ebpf_convert_core_type(char *str, netdata_run_mode_t lmode);
360 -extern void ebpf_select_host_prefix(char *output, size_t length, char *syscall, int kver);
358 +netdata_ebpf_load_mode_t epbf_convert_string_to_load_mode(char *str);
359 +netdata_ebpf_program_loaded_t ebpf_convert_core_type(char *str, netdata_run_mode_t lmode);
360 +void ebpf_select_host_prefix(char *output, size_t length, char *syscall, int kver);
361 #ifdef LIBBPF_MAJOR_VERSION
362 -extern void ebpf_adjust_thread_load(ebpf_module_t *mod, struct btf *file);
363 -extern struct btf *ebpf_parse_btf_file(const char *filename);
364 -extern struct btf *ebpf_load_btf_file(char *path, char *filename);
365 -extern int ebpf_is_function_inside_btf(struct btf *file, char *function);
362 +void ebpf_adjust_thread_load(ebpf_module_t *mod, struct btf *file);
363 +struct btf *ebpf_parse_btf_file(const char *filename);
364 +struct btf *ebpf_load_btf_file(char *path, char *filename);
365 +int ebpf_is_function_inside_btf(struct btf *file, char *function);
366 #endif
367
368 #endif /* NETDATA_EBPF_H */
libnetdata/eval/eval.h
+5 -5
@@ -69,19 +69,19 @@ typedef struct eval_expression {
69 // parse the given string as an expression and return:
70 // a pointer to an expression if it parsed OK
71 // NULL in which case the pointer to error has the error code
72 -extern EVAL_EXPRESSION *expression_parse(const char *string, const char **failed_at, int *error);
72 +EVAL_EXPRESSION *expression_parse(const char *string, const char **failed_at, int *error);
73
74 // free all resources allocated for an expression
75 -extern void expression_free(EVAL_EXPRESSION *expression);
75 +void expression_free(EVAL_EXPRESSION *expression);
76
77 // convert an error code to a message
78 -extern const char *expression_strerror(int error);
78 +const char *expression_strerror(int error);
79
80 // evaluate an expression and return
81 // 1 = OK, the result is in: expression->result
82 // 2 = FAILED, the error message is in: buffer_tostring(expression->error_msg)
83 -extern int expression_evaluate(EVAL_EXPRESSION *expression);
83 +int expression_evaluate(EVAL_EXPRESSION *expression);
84
85 -extern int health_variable_lookup(STRING *variable, struct rrdcalc *rc, NETDATA_DOUBLE *result);
85 +int health_variable_lookup(STRING *variable, struct rrdcalc *rc, NETDATA_DOUBLE *result);
86
87 #endif //NETDATA_EVAL_H
libnetdata/health/health.h
+5 -5
@@ -46,10 +46,10 @@ typedef struct silencers {
46
47 extern SILENCERS *silencers;
48
49 -extern SILENCER *create_silencer(void);
50 -extern int health_silencers_json_read_callback(JSON_ENTRY *e);
51 -extern void health_silencers_add(SILENCER *silencer);
52 -extern SILENCER * health_silencers_addparam(SILENCER *silencer, char *key, char *value);
53 -extern int health_initialize_global_silencers();
49 +SILENCER *create_silencer(void);
50 +int health_silencers_json_read_callback(JSON_ENTRY *e);
51 +void health_silencers_add(SILENCER *silencer);
52 +SILENCER * health_silencers_addparam(SILENCER *silencer, char *key, char *value);
53 +int health_initialize_global_silencers();
54
55 #endif
libnetdata/libnetdata.h
+41 -41
@@ -284,16 +284,16 @@ extern "C" {
284 // ---------------------------------------------------------------------------------------------
285
286
287 -extern void netdata_fix_chart_id(char *s);
288 -extern void netdata_fix_chart_name(char *s);
287 +void netdata_fix_chart_id(char *s);
288 +void netdata_fix_chart_name(char *s);
289
290 -extern void strreverse(char* begin, char* end);
291 -extern char *mystrsep(char **ptr, char *s);
292 -extern char *trim(char *s); // remove leading and trailing spaces; may return NULL
293 -extern char *trim_all(char *buffer); // like trim(), but also remove duplicate spaces inside the string; may return NULL
290 +void strreverse(char* begin, char* end);
291 +char *mystrsep(char **ptr, char *s);
292 +char *trim(char *s); // remove leading and trailing spaces; may return NULL
293 +char *trim_all(char *buffer); // like trim(), but also remove duplicate spaces inside the string; may return NULL
294
295 -extern int vsnprintfz(char *dst, size_t n, const char *fmt, va_list args);
296 -extern int snprintfz(char *dst, size_t n, const char *fmt, ...) PRINTFLIKE(3, 4);
295 +int vsnprintfz(char *dst, size_t n, const char *fmt, va_list args);
296 +int snprintfz(char *dst, size_t n, const char *fmt, ...) PRINTFLIKE(3, 4);
297
298 // memory allocation functions that handle failures
299 #ifdef NETDATA_LOG_ALLOCATIONS
@@ -305,47 +305,47 @@ extern __thread size_t log_thread_memory_allocations;
305 #define freez(ptr) freez_int(__FILE__, __FUNCTION__, __LINE__, ptr)
306 #define log_allocations() log_allocations_int(__FILE__, __FUNCTION__, __LINE__)
307
308 -extern char *strdupz_int(const char *file, const char *function, const unsigned long line, const char *s);
309 -extern void *callocz_int(const char *file, const char *function, const unsigned long line, size_t nmemb, size_t size);
310 -extern void *mallocz_int(const char *file, const char *function, const unsigned long line, size_t size);
311 -extern void *reallocz_int(const char *file, const char *function, const unsigned long line, void *ptr, size_t size);
312 -extern void freez_int(const char *file, const char *function, const unsigned long line, void *ptr);
313 -extern void log_allocations_int(const char *file, const char *function, const unsigned long line);
308 +char *strdupz_int(const char *file, const char *function, const unsigned long line, const char *s);
309 +void *callocz_int(const char *file, const char *function, const unsigned long line, size_t nmemb, size_t size);
310 +void *mallocz_int(const char *file, const char *function, const unsigned long line, size_t size);
311 +void *reallocz_int(const char *file, const char *function, const unsigned long line, void *ptr, size_t size);
312 +void freez_int(const char *file, const char *function, const unsigned long line, void *ptr);
313 +void log_allocations_int(const char *file, const char *function, const unsigned long line);
314
315 #else // NETDATA_LOG_ALLOCATIONS
316 -extern char *strdupz(const char *s) MALLOCLIKE NEVERNULL;
317 -extern void *callocz(size_t nmemb, size_t size) MALLOCLIKE NEVERNULL;
318 -extern void *mallocz(size_t size) MALLOCLIKE NEVERNULL;
319 -extern void *reallocz(void *ptr, size_t size) MALLOCLIKE NEVERNULL;
320 -extern void freez(void *ptr);
316 +char *strdupz(const char *s) MALLOCLIKE NEVERNULL;
317 +void *callocz(size_t nmemb, size_t size) MALLOCLIKE NEVERNULL;
318 +void *mallocz(size_t size) MALLOCLIKE NEVERNULL;
319 +void *reallocz(void *ptr, size_t size) MALLOCLIKE NEVERNULL;
320 +void freez(void *ptr);
321 #endif // NETDATA_LOG_ALLOCATIONS
322
323 -extern void json_escape_string(char *dst, const char *src, size_t size);
324 -extern void json_fix_string(char *s);
323 +void json_escape_string(char *dst, const char *src, size_t size);
324 +void json_fix_string(char *s);
325
326 -extern void *netdata_mmap(const char *filename, size_t size, int flags, int ksm);
327 -extern int memory_file_save(const char *filename, void *mem, size_t size);
326 +void *netdata_mmap(const char *filename, size_t size, int flags, int ksm);
327 +int memory_file_save(const char *filename, void *mem, size_t size);
328
329 -extern int fd_is_valid(int fd);
329 +int fd_is_valid(int fd);
330
331 extern struct rlimit rlimit_nofile;
332
333 extern int enable_ksm;
334
335 -extern char *fgets_trim_len(char *buf, size_t buf_size, FILE *fp, size_t *len);
335 +char *fgets_trim_len(char *buf, size_t buf_size, FILE *fp, size_t *len);
336
337 -extern int verify_netdata_host_prefix();
337 +int verify_netdata_host_prefix();
338
339 -extern int recursively_delete_dir(const char *path, const char *reason);
339 +int recursively_delete_dir(const char *path, const char *reason);
340
341 extern volatile sig_atomic_t netdata_exit;
342
343 extern const char *program_version;
344
345 -extern char *strdupz_path_subpath(const char *path, const char *subpath);
346 -extern int path_is_dir(const char *path, const char *subpath);
347 -extern int path_is_file(const char *path, const char *subpath);
348 -extern void recursive_config_double_dir_load(
345 +char *strdupz_path_subpath(const char *path, const char *subpath);
346 +int path_is_dir(const char *path, const char *subpath);
347 +int path_is_file(const char *path, const char *subpath);
348 +void recursive_config_double_dir_load(
349 const char *user_path
350 , const char *stock_path
351 , const char *subpath
@@ -353,8 +353,8 @@ extern void recursive_config_double_dir_load(
353 , void *data
354 , size_t depth
355 );
356 -extern char *read_by_filename(char *filename, long *file_size);
357 -extern char *find_and_replace(const char *src, const char *find, const char *replace, const char *where);
356 +char *read_by_filename(char *filename, long *file_size);
357 +char *find_and_replace(const char *src, const char *find, const char *replace, const char *where);
358
359 /* fix for alpine linux */
360 #ifndef RUSAGE_THREAD
@@ -385,20 +385,20 @@ typedef struct bitmap256 {
385 uint64_t data[4];
386 } BITMAP256;
387
388 -extern bool bitmap256_get_bit(BITMAP256 *ptr, uint8_t idx);
389 -extern void bitmap256_set_bit(BITMAP256 *ptr, uint8_t idx, bool value);
388 +bool bitmap256_get_bit(BITMAP256 *ptr, uint8_t idx);
389 +void bitmap256_set_bit(BITMAP256 *ptr, uint8_t idx, bool value);
390
391 #define COMPRESSION_MAX_MSG_SIZE 0x4000
392 #define PLUGINSD_LINE_MAX (COMPRESSION_MAX_MSG_SIZE - 1024)
393 -extern int config_isspace(char c);
394 -extern int pluginsd_space(char c);
393 +int config_isspace(char c);
394 +int pluginsd_space(char c);
395 int quoted_strings_splitter(char *str, char **words, int max_words, int (*custom_isspace)(char), char *recover_input, char **recover_location, int max_recover);
396 -extern int pluginsd_split_words(char *str, char **words, int max_words, char *recover_string, char **recover_location, int max_recover);
396 +int pluginsd_split_words(char *str, char **words, int max_words, char *recover_string, char **recover_location, int max_recover);
397
398 -extern bool run_command_and_copy_output_to_stdout(const char *command, int max_line_length);
398 +bool run_command_and_copy_output_to_stdout(const char *command, int max_line_length);
399
400 -extern void netdata_cleanup_and_exit(int ret) NORETURN;
401 -extern void send_statistics(const char *action, const char *action_result, const char *action_data);
400 +void netdata_cleanup_and_exit(int ret) NORETURN;
401 +void send_statistics(const char *action, const char *action_result, const char *action_data);
402 extern char *netdata_configured_host_prefix;
403 #include "os.h"
404 #include "storage_number/storage_number.h"
libnetdata/locks/locks.h
+29 -29
@@ -51,38 +51,38 @@ typedef struct netdata_rwlock_t {
51
52 #endif // NETDATA_TRACE_RWLOCKS
53
54 -extern int __netdata_mutex_init(netdata_mutex_t *mutex);
55 -extern int __netdata_mutex_destroy(netdata_mutex_t *mutex);
56 -extern int __netdata_mutex_lock(netdata_mutex_t *mutex);
57 -extern int __netdata_mutex_trylock(netdata_mutex_t *mutex);
58 -extern int __netdata_mutex_unlock(netdata_mutex_t *mutex);
59 -
60 -extern int __netdata_rwlock_destroy(netdata_rwlock_t *rwlock);
61 -extern int __netdata_rwlock_init(netdata_rwlock_t *rwlock);
62 -extern int __netdata_rwlock_rdlock(netdata_rwlock_t *rwlock);
63 -extern int __netdata_rwlock_wrlock(netdata_rwlock_t *rwlock);
64 -extern int __netdata_rwlock_unlock(netdata_rwlock_t *rwlock);
65 -extern int __netdata_rwlock_tryrdlock(netdata_rwlock_t *rwlock);
66 -extern int __netdata_rwlock_trywrlock(netdata_rwlock_t *rwlock);
67 -
68 -extern void netdata_thread_disable_cancelability(void);
69 -extern void netdata_thread_enable_cancelability(void);
54 +int __netdata_mutex_init(netdata_mutex_t *mutex);
55 +int __netdata_mutex_destroy(netdata_mutex_t *mutex);
56 +int __netdata_mutex_lock(netdata_mutex_t *mutex);
57 +int __netdata_mutex_trylock(netdata_mutex_t *mutex);
58 +int __netdata_mutex_unlock(netdata_mutex_t *mutex);
59 +
60 +int __netdata_rwlock_destroy(netdata_rwlock_t *rwlock);
61 +int __netdata_rwlock_init(netdata_rwlock_t *rwlock);
62 +int __netdata_rwlock_rdlock(netdata_rwlock_t *rwlock);
63 +int __netdata_rwlock_wrlock(netdata_rwlock_t *rwlock);
64 +int __netdata_rwlock_unlock(netdata_rwlock_t *rwlock);
65 +int __netdata_rwlock_tryrdlock(netdata_rwlock_t *rwlock);
66 +int __netdata_rwlock_trywrlock(netdata_rwlock_t *rwlock);
67 +
68 +void netdata_thread_disable_cancelability(void);
69 +void netdata_thread_enable_cancelability(void);
70
71 #ifdef NETDATA_TRACE_RWLOCKS
72
73 -extern int netdata_mutex_init_debug( const char *file, const char *function, const unsigned long line, netdata_mutex_t *mutex);
74 -extern int netdata_mutex_destroy_debug( const char *file, const char *function, const unsigned long line, netdata_mutex_t *mutex);
75 -extern int netdata_mutex_lock_debug( const char *file, const char *function, const unsigned long line, netdata_mutex_t *mutex);
76 -extern int netdata_mutex_trylock_debug( const char *file, const char *function, const unsigned long line, netdata_mutex_t *mutex);
77 -extern int netdata_mutex_unlock_debug( const char *file, const char *function, const unsigned long line, netdata_mutex_t *mutex);
78 -
79 -extern int netdata_rwlock_destroy_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
80 -extern int netdata_rwlock_init_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
81 -extern int netdata_rwlock_rdlock_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
82 -extern int netdata_rwlock_wrlock_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
83 -extern int netdata_rwlock_unlock_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
84 -extern int netdata_rwlock_tryrdlock_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
85 -extern int netdata_rwlock_trywrlock_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
73 +int netdata_mutex_init_debug( const char *file, const char *function, const unsigned long line, netdata_mutex_t *mutex);
74 +int netdata_mutex_destroy_debug( const char *file, const char *function, const unsigned long line, netdata_mutex_t *mutex);
75 +int netdata_mutex_lock_debug( const char *file, const char *function, const unsigned long line, netdata_mutex_t *mutex);
76 +int netdata_mutex_trylock_debug( const char *file, const char *function, const unsigned long line, netdata_mutex_t *mutex);
77 +int netdata_mutex_unlock_debug( const char *file, const char *function, const unsigned long line, netdata_mutex_t *mutex);
78 +
79 +int netdata_rwlock_destroy_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
80 +int netdata_rwlock_init_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
81 +int netdata_rwlock_rdlock_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
82 +int netdata_rwlock_wrlock_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
83 +int netdata_rwlock_unlock_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
84 +int netdata_rwlock_tryrdlock_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
85 +int netdata_rwlock_trywrlock_debug( const char *file, const char *function, const unsigned long line, netdata_rwlock_t *rwlock);
86
87 #define netdata_mutex_init(mutex) netdata_mutex_init_debug(__FILE__, __FUNCTION__, __LINE__, mutex)
88 #define netdata_mutex_destroy(mutex) netdata_mutex_init_debug(__FILE__, __FUNCTION__, __LINE__, mutex)
libnetdata/log/log.h
+10 -10
@@ -74,10 +74,10 @@ extern int output_log_syslog;
74
75 extern time_t error_log_throttle_period;
76 extern unsigned long error_log_errors_per_period, error_log_errors_per_period_backup;
77 -extern int error_log_limit(int reset);
77 +int error_log_limit(int reset);
78
79 -extern void open_all_log_files();
80 -extern void reopen_all_log_files();
79 +void open_all_log_files();
80 +void reopen_all_log_files();
81
82 static inline void debug_dummy(void) {}
83
@@ -98,15 +98,15 @@ void error_log_limit_unlimited(void);
98 #define fatal(args...) fatal_int(__FILE__, __FUNCTION__, __LINE__, ##args)
99 #define fatal_assert(expr) ((expr) ? (void)(0) : fatal_int(__FILE__, __FUNCTION__, __LINE__, "Assertion `%s' failed", #expr))
100
101 -extern void send_statistics(const char *action, const char *action_result, const char *action_data);
102 -extern void debug_int( const char *file, const char *function, const unsigned long line, const char *fmt, ... ) PRINTFLIKE(4, 5);
103 -extern void info_int( const char *file, const char *function, const unsigned long line, const char *fmt, ... ) PRINTFLIKE(4, 5);
104 -extern void error_int( const char *prefix, const char *file, const char *function, const unsigned long line, const char *fmt, ... ) PRINTFLIKE(5, 6);
105 -extern void fatal_int( const char *file, const char *function, const unsigned long line, const char *fmt, ... ) NORETURN PRINTFLIKE(4, 5);
106 -extern void log_access( const char *fmt, ... ) PRINTFLIKE(1, 2);
101 +void send_statistics(const char *action, const char *action_result, const char *action_data);
102 +void debug_int( const char *file, const char *function, const unsigned long line, const char *fmt, ... ) PRINTFLIKE(4, 5);
103 +void info_int( const char *file, const char *function, const unsigned long line, const char *fmt, ... ) PRINTFLIKE(4, 5);
104 +void error_int( const char *prefix, const char *file, const char *function, const unsigned long line, const char *fmt, ... ) PRINTFLIKE(5, 6);
105 +void fatal_int( const char *file, const char *function, const unsigned long line, const char *fmt, ... ) NORETURN PRINTFLIKE(4, 5);
106 +void log_access( const char *fmt, ... ) PRINTFLIKE(1, 2);
107
108 #ifdef ENABLE_ACLK
109 -extern void log_aclk_message_bin( const char *data, const size_t data_len, int tx, const char *mqtt_topic, const char *message_name);
109 +void log_aclk_message_bin( const char *data, const size_t data_len, int tx, const char *mqtt_topic, const char *message_name);
110 #endif
111
112 # ifdef __cplusplus
libnetdata/onewayalloc/onewayalloc.h
+8 -8
@@ -5,15 +5,15 @@
5
6 typedef void ONEWAYALLOC;
7
8 -extern ONEWAYALLOC *onewayalloc_create(size_t size_hint);
9 -extern void onewayalloc_destroy(ONEWAYALLOC *owa);
8 +ONEWAYALLOC *onewayalloc_create(size_t size_hint);
9 +void onewayalloc_destroy(ONEWAYALLOC *owa);
10
11 -extern void *onewayalloc_mallocz(ONEWAYALLOC *owa, size_t size);
12 -extern void *onewayalloc_callocz(ONEWAYALLOC *owa, size_t nmemb, size_t size);
13 -extern char *onewayalloc_strdupz(ONEWAYALLOC *owa, const char *s);
14 -extern void *onewayalloc_memdupz(ONEWAYALLOC *owa, const void *src, size_t size);
15 -extern void onewayalloc_freez(ONEWAYALLOC *owa, const void *ptr);
11 +void *onewayalloc_mallocz(ONEWAYALLOC *owa, size_t size);
12 +void *onewayalloc_callocz(ONEWAYALLOC *owa, size_t nmemb, size_t size);
13 +char *onewayalloc_strdupz(ONEWAYALLOC *owa, const char *s);
14 +void *onewayalloc_memdupz(ONEWAYALLOC *owa, const void *src, size_t size);
15 +void onewayalloc_freez(ONEWAYALLOC *owa, const void *ptr);
16
17 -extern void *onewayalloc_doublesize(ONEWAYALLOC *owa, const void *src, size_t oldsize);
17 +void *onewayalloc_doublesize(ONEWAYALLOC *owa, const void *src, size_t oldsize);
18
19 #endif // ONEWAYALLOC_H
libnetdata/os.h
+8 -8
@@ -13,21 +13,21 @@
13 #include <sys/sysctl.h>
14
15 #define GETSYSCTL_BY_NAME(name, var) getsysctl_by_name(name, &(var), sizeof(var))
16 -extern int getsysctl_by_name(const char *name, void *ptr, size_t len);
16 +int getsysctl_by_name(const char *name, void *ptr, size_t len);
17
18 #define GETSYSCTL_MIB(name, mib) getsysctl_mib(name, mib, sizeof(mib)/sizeof(int))
19
20 -extern int getsysctl_mib(const char *name, int *mib, size_t len);
20 +int getsysctl_mib(const char *name, int *mib, size_t len);
21
22 #define GETSYSCTL_SIMPLE(name, mib, var) getsysctl_simple(name, mib, sizeof(mib)/sizeof(int), &(var), sizeof(var))
23 #define GETSYSCTL_WSIZE(name, mib, var, size) getsysctl_simple(name, mib, sizeof(mib)/sizeof(int), var, size)
24
25 -extern int getsysctl_simple(const char *name, int *mib, size_t miblen, void *ptr, size_t len);
25 +int getsysctl_simple(const char *name, int *mib, size_t miblen, void *ptr, size_t len);
26
27 #define GETSYSCTL_SIZE(name, mib, size) getsysctl(name, mib, sizeof(mib)/sizeof(int), NULL, &(size))
28 #define GETSYSCTL(name, mib, var, size) getsysctl(name, mib, sizeof(mib)/sizeof(int), &(var), &(size))
29
30 -extern int getsysctl(const char *name, int *mib, size_t miblen, void *ptr, size_t *len);
30 +int getsysctl(const char *name, int *mib, size_t miblen, void *ptr, size_t *len);
31
32 #endif
33
@@ -39,7 +39,7 @@ extern int getsysctl(const char *name, int *mib, size_t miblen, void *ptr, size_
39 #include <sys/sysctl.h>
40
41 #define GETSYSCTL_BY_NAME(name, var) getsysctl_by_name(name, &(var), sizeof(var))
42 -extern int getsysctl_by_name(const char *name, void *ptr, size_t len);
42 +int getsysctl_by_name(const char *name, void *ptr, size_t len);
43
44 #endif
45
@@ -49,13 +49,13 @@ extern int getsysctl_by_name(const char *name, void *ptr, size_t len);
49 extern const char *os_type;
50
51 extern int processors;
52 -extern long get_system_cpus(void);
52 +long get_system_cpus(void);
53
54 extern pid_t pid_max;
55 -extern pid_t get_system_pid_max(void);
55 +pid_t get_system_pid_max(void);
56
57 extern unsigned int system_hz;
58 -extern void get_system_HZ(void);
58 +void get_system_HZ(void);
59
60 #include <sys/timex.h>
61 #if defined(__FreeBSD__) || defined(__APPLE__)
libnetdata/popen/popen.h
+11 -11
@@ -22,19 +22,19 @@
22 #define netdata_popen_raw_default_flags(pidptr, env, fpp_child_input, fpp_child_output, command, args...) netdata_popene_variadic_internal_dont_use_directly(pidptr, env, POPEN_FLAGS_DEFAULT, fpp_child_input, fpp_child_output, command, command, ##args, NULL)
23 #define netdata_popen_raw(pidptr, env, flags, fpp_child_input, fpp_child_output, command, args...) netdata_popene_variadic_internal_dont_use_directly(pidptr, env, flags, fpp_child_input, fpp_child_output, command, command, ##args, NULL)
24
25 -extern FILE *netdata_popen(const char *command, volatile pid_t *pidptr, FILE **fp_child_input);
26 -extern FILE *netdata_popene(const char *command, volatile pid_t *pidptr, char **env, FILE **fp_child_input);
27 -extern int netdata_popene_variadic_internal_dont_use_directly(volatile pid_t *pidptr, char **env, uint8_t flags, FILE **fpp_child_input, FILE **fpp_child_output, const char *command, ...);
28 -extern int netdata_pclose(FILE *fp_child_input, FILE *fp_child_output, pid_t pid);
25 +FILE *netdata_popen(const char *command, volatile pid_t *pidptr, FILE **fp_child_input);
26 +FILE *netdata_popene(const char *command, volatile pid_t *pidptr, char **env, FILE **fp_child_input);
27 +int netdata_popene_variadic_internal_dont_use_directly(volatile pid_t *pidptr, char **env, uint8_t flags, FILE **fpp_child_input, FILE **fpp_child_output, const char *command, ...);
28 +int netdata_pclose(FILE *fp_child_input, FILE *fp_child_output, pid_t pid);
29
30 -extern int netdata_spawn(const char *command, volatile pid_t *pidptr);
31 -extern int netdata_spawn_waitpid(pid_t pid);
30 +int netdata_spawn(const char *command, volatile pid_t *pidptr);
31 +int netdata_spawn_waitpid(pid_t pid);
32
33 -extern void netdata_popen_tracking_init(void);
34 -extern void netdata_popen_tracking_cleanup(void);
35 -extern int netdata_popen_tracking_pid_shoud_be_reaped(pid_t pid);
33 +void netdata_popen_tracking_init(void);
34 +void netdata_popen_tracking_cleanup(void);
35 +int netdata_popen_tracking_pid_shoud_be_reaped(pid_t pid);
36
37 -extern void signals_unblock(void);
38 -extern void signals_reset(void);
37 +void signals_unblock(void);
38 +void signals_reset(void);
39
40 #endif /* NETDATA_POPEN_H */
libnetdata/procfile/procfile.h
+8 -8
@@ -60,25 +60,25 @@ typedef struct {
60 } procfile;
61
62 // close the proc file and free all related memory
63 -extern void procfile_close(procfile *ff);
63 +void procfile_close(procfile *ff);
64
65 // (re)read and parse the proc file
66 -extern procfile *procfile_readall(procfile *ff);
66 +procfile *procfile_readall(procfile *ff);
67
68 // open a /proc or /sys file
69 -extern procfile *procfile_open(const char *filename, const char *separators, uint32_t flags);
69 +procfile *procfile_open(const char *filename, const char *separators, uint32_t flags);
70
71 // re-open a file
72 // if separators == NULL, the last separators are used
73 -extern procfile *procfile_reopen(procfile *ff, const char *filename, const char *separators, uint32_t flags);
73 +procfile *procfile_reopen(procfile *ff, const char *filename, const char *separators, uint32_t flags);
74
75 // example walk-through a procfile parsed file
76 -extern void procfile_print(procfile *ff);
76 +void procfile_print(procfile *ff);
77
78 -extern void procfile_set_quotes(procfile *ff, const char *quotes);
79 -extern void procfile_set_open_close(procfile *ff, const char *open, const char *close);
78 +void procfile_set_quotes(procfile *ff, const char *quotes);
79 +void procfile_set_open_close(procfile *ff, const char *open, const char *close);
80
81 -extern char *procfile_filename(procfile *ff);
81 +char *procfile_filename(procfile *ff);
82
83 // ----------------------------------------------------------------------------
84
libnetdata/simple_pattern/simple_pattern.h
+6 -6
@@ -18,21 +18,21 @@ typedef void SIMPLE_PATTERN;
18 // create a simple_pattern from the string given
19 // default_mode is used in cases where EXACT matches, without an asterisk,
20 // should be considered PREFIX matches.
21 -extern SIMPLE_PATTERN *simple_pattern_create(const char *list, const char *separators, SIMPLE_PREFIX_MODE default_mode);
21 +SIMPLE_PATTERN *simple_pattern_create(const char *list, const char *separators, SIMPLE_PREFIX_MODE default_mode);
22
23 // test if string str is matched from the pattern and fill 'wildcarded' with the parts matched by '*'
24 -extern int simple_pattern_matches_extract(SIMPLE_PATTERN *list, const char *str, char *wildcarded, size_t wildcarded_size);
24 +int simple_pattern_matches_extract(SIMPLE_PATTERN *list, const char *str, char *wildcarded, size_t wildcarded_size);
25
26 // test if string str is matched from the pattern
27 #define simple_pattern_matches(list, str) simple_pattern_matches_extract(list, str, NULL, 0)
28
29 // free a simple_pattern that was created with simple_pattern_create()
30 // list can be NULL, in which case, this does nothing.
31 -extern void simple_pattern_free(SIMPLE_PATTERN *list);
31 +void simple_pattern_free(SIMPLE_PATTERN *list);
32
33 -extern void simple_pattern_dump(uint64_t debug_type, SIMPLE_PATTERN *p) ;
34 -extern int simple_pattern_is_potential_name(SIMPLE_PATTERN *p) ;
35 -extern char *simple_pattern_iterate(SIMPLE_PATTERN **p);
33 +void simple_pattern_dump(uint64_t debug_type, SIMPLE_PATTERN *p) ;
34 +int simple_pattern_is_potential_name(SIMPLE_PATTERN *p) ;
35 +char *simple_pattern_iterate(SIMPLE_PATTERN **p);
36
37 //Auxiliary function to create a pattern
38 char *simple_pattern_trim_around_equal(char *src);
libnetdata/socket/security.h
+1 -1
@@ -50,7 +50,7 @@ extern const char *netdata_ssl_security_cert;
50 extern const char *tls_version;
51 extern const char *tls_ciphers;
52 extern int netdata_ssl_validate_server;
53 -extern int ssl_security_location_for_context(SSL_CTX *ctx,char *file,char *path);
53 +int ssl_security_location_for_context(SSL_CTX *ctx,char *file,char *path);
54
55 void security_openssl_library();
56 void security_clean_openssl();
libnetdata/socket/socket.h
+28 -28
@@ -52,40 +52,40 @@ typedef struct listen_sockets {
52 WEB_CLIENT_ACL fds_acl_flags[MAX_LISTEN_FDS]; // the acl to apply to the open sockets (dashboard, badges, streaming, netdata.conf, management)
53 } LISTEN_SOCKETS;
54
55 -extern char *strdup_client_description(int family, const char *protocol, const char *ip, uint16_t port);
55 +char *strdup_client_description(int family, const char *protocol, const char *ip, uint16_t port);
56
57 -extern int listen_sockets_setup(LISTEN_SOCKETS *sockets);
58 -extern void listen_sockets_close(LISTEN_SOCKETS *sockets);
57 +int listen_sockets_setup(LISTEN_SOCKETS *sockets);
58 +void listen_sockets_close(LISTEN_SOCKETS *sockets);
59
60 -extern void foreach_entry_in_connection_string(const char *destination, bool (*callback)(char *entry, void *data), void *data);
61 -extern int connect_to_this_ip46(int protocol, int socktype, const char *host, uint32_t scope_id, const char *service, struct timeval *timeout);
62 -extern int connect_to_this(const char *definition, int default_port, struct timeval *timeout);
63 -extern int connect_to_one_of(const char *destination, int default_port, struct timeval *timeout, size_t *reconnects_counter, char *connected_to, size_t connected_to_size);
64 -extern int connect_to_one_of_urls(const char *destination, int default_port, struct timeval *timeout, size_t *reconnects_counter, char *connected_to, size_t connected_to_size);
60 +void foreach_entry_in_connection_string(const char *destination, bool (*callback)(char *entry, void *data), void *data);
61 +int connect_to_this_ip46(int protocol, int socktype, const char *host, uint32_t scope_id, const char *service, struct timeval *timeout);
62 +int connect_to_this(const char *definition, int default_port, struct timeval *timeout);
63 +int connect_to_one_of(const char *destination, int default_port, struct timeval *timeout, size_t *reconnects_counter, char *connected_to, size_t connected_to_size);
64 +int connect_to_one_of_urls(const char *destination, int default_port, struct timeval *timeout, size_t *reconnects_counter, char *connected_to, size_t connected_to_size);
65
66
67 #ifdef ENABLE_HTTPS
68 -extern ssize_t recv_timeout(struct netdata_ssl *ssl,int sockfd, void *buf, size_t len, int flags, int timeout);
69 -extern ssize_t send_timeout(struct netdata_ssl *ssl,int sockfd, void *buf, size_t len, int flags, int timeout);
68 +ssize_t recv_timeout(struct netdata_ssl *ssl,int sockfd, void *buf, size_t len, int flags, int timeout);
69 +ssize_t send_timeout(struct netdata_ssl *ssl,int sockfd, void *buf, size_t len, int flags, int timeout);
70 #else
71 -extern ssize_t recv_timeout(int sockfd, void *buf, size_t len, int flags, int timeout);
72 -extern ssize_t send_timeout(int sockfd, void *buf, size_t len, int flags, int timeout);
71 +ssize_t recv_timeout(int sockfd, void *buf, size_t len, int flags, int timeout);
72 +ssize_t send_timeout(int sockfd, void *buf, size_t len, int flags, int timeout);
73 #endif
74
75 -extern int sock_setnonblock(int fd);
76 -extern int sock_delnonblock(int fd);
77 -extern int sock_setreuse(int fd, int reuse);
78 -extern int sock_setreuse_port(int fd, int reuse);
79 -extern int sock_enlarge_in(int fd);
80 -extern int sock_enlarge_out(int fd);
75 +int sock_setnonblock(int fd);
76 +int sock_delnonblock(int fd);
77 +int sock_setreuse(int fd, int reuse);
78 +int sock_setreuse_port(int fd, int reuse);
79 +int sock_enlarge_in(int fd);
80 +int sock_enlarge_out(int fd);
81
82 -extern int connection_allowed(int fd, char *client_ip, char *client_host, size_t hostsize,
82 +int connection_allowed(int fd, char *client_ip, char *client_host, size_t hostsize,
83 SIMPLE_PATTERN *access_list, const char *patname, int allow_dns);
84 -extern int accept_socket(int fd, int flags, char *client_ip, size_t ipsize, char *client_port, size_t portsize,
84 +int accept_socket(int fd, int flags, char *client_ip, size_t ipsize, char *client_port, size_t portsize,
85 char *client_host, size_t hostsize, SIMPLE_PATTERN *access_list, int allow_dns);
86
87 #ifndef HAVE_ACCEPT4
88 -extern int accept4(int sock, struct sockaddr *addr, socklen_t *addrlen, int flags);
88 +int accept4(int sock, struct sockaddr *addr, socklen_t *addrlen, int flags);
89
90 #ifndef SOCK_NONBLOCK
91 #define SOCK_NONBLOCK 00004000
@@ -173,12 +173,12 @@ struct poll {
173
174 #define pollinfo_from_slot(p, slot) (&((p)->inf[(slot)]))
175
176 -extern int poll_default_snd_callback(POLLINFO *pi, short int *events);
177 -extern int poll_default_rcv_callback(POLLINFO *pi, short int *events);
178 -extern void poll_default_del_callback(POLLINFO *pi);
179 -extern void *poll_default_add_callback(POLLINFO *pi, short int *events, void *data);
176 +int poll_default_snd_callback(POLLINFO *pi, short int *events);
177 +int poll_default_rcv_callback(POLLINFO *pi, short int *events);
178 +void poll_default_del_callback(POLLINFO *pi);
179 +void *poll_default_add_callback(POLLINFO *pi, short int *events, void *data);
180
181 -extern POLLINFO *poll_add_fd(POLLJOB *p
181 +POLLINFO *poll_add_fd(POLLJOB *p
182 , int fd
183 , int socktype
184 , WEB_CLIENT_ACL port_acl
@@ -192,9 +192,9 @@ extern POLLINFO *poll_add_fd(POLLJOB *p
192 , int (*snd_callback)(POLLINFO *pi, short int *events)
193 , void *data
194 );
195 -extern void poll_close_fd(POLLINFO *pi);
195 +void poll_close_fd(POLLINFO *pi);
196
197 -extern void poll_events(LISTEN_SOCKETS *sockets
197 +void poll_events(LISTEN_SOCKETS *sockets
198 , void *(*add_callback)(POLLINFO *pi, short int *events, void *data)
199 , void (*del_callback)(POLLINFO *pi)
200 , int (*rcv_callback)(POLLINFO *pi, short int *events)
libnetdata/statistical/statistical.h
+15 -15
@@ -5,30 +5,30 @@
5
6 #include "../libnetdata.h"
7
8 -extern void log_series_to_stderr(NETDATA_DOUBLE *series, size_t entries, NETDATA_DOUBLE result, const char *msg);
8 +void log_series_to_stderr(NETDATA_DOUBLE *series, size_t entries, NETDATA_DOUBLE result, const char *msg);
9
10 -extern NETDATA_DOUBLE average(const NETDATA_DOUBLE *series, size_t entries);
11 -extern NETDATA_DOUBLE moving_average(const NETDATA_DOUBLE *series, size_t entries, size_t period);
12 -extern NETDATA_DOUBLE median(const NETDATA_DOUBLE *series, size_t entries);
13 -extern NETDATA_DOUBLE moving_median(const NETDATA_DOUBLE *series, size_t entries, size_t period);
14 -extern NETDATA_DOUBLE running_median_estimate(const NETDATA_DOUBLE *series, size_t entries);
15 -extern NETDATA_DOUBLE standard_deviation(const NETDATA_DOUBLE *series, size_t entries);
16 -extern NETDATA_DOUBLE single_exponential_smoothing(const NETDATA_DOUBLE *series, size_t entries, NETDATA_DOUBLE alpha);
10 +NETDATA_DOUBLE average(const NETDATA_DOUBLE *series, size_t entries);
11 +NETDATA_DOUBLE moving_average(const NETDATA_DOUBLE *series, size_t entries, size_t period);
12 +NETDATA_DOUBLE median(const NETDATA_DOUBLE *series, size_t entries);
13 +NETDATA_DOUBLE moving_median(const NETDATA_DOUBLE *series, size_t entries, size_t period);
14 +NETDATA_DOUBLE running_median_estimate(const NETDATA_DOUBLE *series, size_t entries);
15 +NETDATA_DOUBLE standard_deviation(const NETDATA_DOUBLE *series, size_t entries);
16 +NETDATA_DOUBLE single_exponential_smoothing(const NETDATA_DOUBLE *series, size_t entries, NETDATA_DOUBLE alpha);
17 extern NETDATA_DOUBLE
18 single_exponential_smoothing_reverse(const NETDATA_DOUBLE *series, size_t entries, NETDATA_DOUBLE alpha);
19 -extern NETDATA_DOUBLE double_exponential_smoothing(const NETDATA_DOUBLE *series, size_t entries,
19 +NETDATA_DOUBLE double_exponential_smoothing(const NETDATA_DOUBLE *series, size_t entries,
20 NETDATA_DOUBLE alpha,
21 NETDATA_DOUBLE beta,
22 NETDATA_DOUBLE *forecast);
23 -extern NETDATA_DOUBLE holtwinters(const NETDATA_DOUBLE *series, size_t entries,
23 +NETDATA_DOUBLE holtwinters(const NETDATA_DOUBLE *series, size_t entries,
24 NETDATA_DOUBLE alpha,
25 NETDATA_DOUBLE beta,
26 NETDATA_DOUBLE gamma,
27 NETDATA_DOUBLE *forecast);
28 -extern NETDATA_DOUBLE sum_and_count(const NETDATA_DOUBLE *series, size_t entries, size_t *count);
29 -extern NETDATA_DOUBLE sum(const NETDATA_DOUBLE *series, size_t entries);
30 -extern NETDATA_DOUBLE median_on_sorted_series(const NETDATA_DOUBLE *series, size_t entries);
31 -extern NETDATA_DOUBLE *copy_series(const NETDATA_DOUBLE *series, size_t entries);
32 -extern void sort_series(NETDATA_DOUBLE *series, size_t entries);
28 +NETDATA_DOUBLE sum_and_count(const NETDATA_DOUBLE *series, size_t entries, size_t *count);
29 +NETDATA_DOUBLE sum(const NETDATA_DOUBLE *series, size_t entries);
30 +NETDATA_DOUBLE median_on_sorted_series(const NETDATA_DOUBLE *series, size_t entries);
31 +NETDATA_DOUBLE *copy_series(const NETDATA_DOUBLE *series, size_t entries);
32 +void sort_series(NETDATA_DOUBLE *series, size_t entries);
33
34 #endif //NETDATA_STATISTICAL_H
libnetdata/string/string.h
+8 -8
@@ -8,14 +8,14 @@
8 // STRING implementation
9
10 typedef struct netdata_string STRING;
11 -extern STRING *string_strdupz(const char *str);
12 -extern STRING *string_dup(STRING *string);
13 -extern void string_freez(STRING *string);
14 -extern size_t string_strlen(STRING *string);
15 -extern const char *string2str(STRING *string) NEVERNULL;
11 +STRING *string_strdupz(const char *str);
12 +STRING *string_dup(STRING *string);
13 +void string_freez(STRING *string);
14 +size_t string_strlen(STRING *string);
15 +const char *string2str(STRING *string) NEVERNULL;
16
17 // keep common prefix/suffix and replace everything else with [x]
18 -extern STRING *string_2way_merge(STRING *a, STRING *b);
18 +STRING *string_2way_merge(STRING *a, STRING *b);
19
20 static inline int string_cmp(STRING *s1, STRING *s2) {
21 // STRINGs are deduplicated, so the same strings have the same pointer
@@ -23,8 +23,8 @@ static inline int string_cmp(STRING *s1, STRING *s2) {
23 return (s1 == s2)?0:strcmp(string2str(s1), string2str(s2));
24 }
25
26 -extern void string_statistics(size_t *inserts, size_t *deletes, size_t *searches, size_t *entries, size_t *references, size_t *memory, size_t *duplications, size_t *releases);
26 +void string_statistics(size_t *inserts, size_t *deletes, size_t *searches, size_t *entries, size_t *references, size_t *memory, size_t *duplications, size_t *releases);
27
28 -extern int string_unittest(size_t entries);
28 +int string_unittest(size_t entries);
29
30 #endif
libnetdata/threads/threads.h
+12 -12
@@ -5,7 +5,7 @@
5
6 #include "../libnetdata.h"
7
8 -extern pid_t gettid(void);
8 +pid_t gettid(void);
9
10 typedef enum {
11 NETDATA_THREAD_OPTION_DEFAULT = 0 << 0,
@@ -21,27 +21,27 @@ typedef enum {
21 typedef pthread_t netdata_thread_t;
22
23 #define NETDATA_THREAD_TAG_MAX 100
24 -extern const char *netdata_thread_tag(void);
25 -extern int netdata_thread_tag_exists(void);
24 +const char *netdata_thread_tag(void);
25 +int netdata_thread_tag_exists(void);
26
27 -extern size_t netdata_threads_init(void);
28 -extern void netdata_threads_init_after_fork(size_t stacksize);
27 +size_t netdata_threads_init(void);
28 +void netdata_threads_init_after_fork(size_t stacksize);
29
30 -extern int netdata_thread_create(netdata_thread_t *thread, const char *tag, NETDATA_THREAD_OPTIONS options, void *(*start_routine) (void *), void *arg);
30 +int netdata_thread_create(netdata_thread_t *thread, const char *tag, NETDATA_THREAD_OPTIONS options, void *(*start_routine) (void *), void *arg);
31
32 #ifdef NETDATA_INTERNAL_CHECKS
33 #define netdata_thread_cancel(thread) netdata_thread_cancel_with_trace(thread, __LINE__, __FILE__, __FUNCTION__)
34 -extern int netdata_thread_cancel_with_trace(netdata_thread_t thread, int line, const char *file, const char *function);
34 +int netdata_thread_cancel_with_trace(netdata_thread_t thread, int line, const char *file, const char *function);
35 #else
36 -extern int netdata_thread_cancel(netdata_thread_t thread);
36 +int netdata_thread_cancel(netdata_thread_t thread);
37 #endif
38
39 -extern int netdata_thread_join(netdata_thread_t thread, void **retval);
40 -extern int netdata_thread_detach(pthread_t thread);
39 +int netdata_thread_join(netdata_thread_t thread, void **retval);
40 +int netdata_thread_detach(pthread_t thread);
41
42 #define NETDATA_THREAD_NAME_MAX 15
43 -extern void uv_thread_set_name_np(uv_thread_t ut, const char* name);
44 -extern void os_thread_get_current_name_np(char threadname[NETDATA_THREAD_NAME_MAX + 1]);
43 +void uv_thread_set_name_np(uv_thread_t ut, const char* name);
44 +void os_thread_get_current_name_np(char threadname[NETDATA_THREAD_NAME_MAX + 1]);
45
46 #define netdata_thread_self pthread_self
47 #define netdata_thread_testcancel pthread_testcancel
libnetdata/url/url.h
+9 -9
@@ -10,26 +10,26 @@
10 // code from: http://www.geekhideout.com/urlcode.shtml
11
12 /* Converts a hex character to its integer value */
13 -extern char from_hex(char ch);
13 +char from_hex(char ch);
14
15 /* Converts an integer value to its hex character*/
16 -extern char to_hex(char code);
16 +char to_hex(char code);
17
18 /* Returns a url-encoded version of str */
19 /* IMPORTANT: be sure to free() the returned string after use */
20 -extern char *url_encode(char *str);
20 +char *url_encode(char *str);
21
22 /* Returns a url-decoded version of str */
23 /* IMPORTANT: be sure to free() the returned string after use */
24 -extern char *url_decode(char *str);
24 +char *url_decode(char *str);
25
26 -extern char *url_decode_r(char *to, char *url, size_t size);
26 +char *url_decode_r(char *to, char *url, size_t size);
27
28 #define WEB_FIELDS_MAX 400
29 -extern int url_map_query_string(char **out, char *url);
30 -extern int url_parse_query_string(char *output, size_t max, char **map, int total);
29 +int url_map_query_string(char **out, char *url);
30 +int url_parse_query_string(char *output, size_t max, char **map, int total);
31
32 -extern int url_is_request_complete(char *begin,char *end,size_t length);
33 -extern char *url_find_protocol(char *s);
32 +int url_is_request_complete(char *begin,char *end,size_t length);
33 +char *url_find_protocol(char *s);
34
35 #endif /* NETDATA_URL_H */
libnetdata/worker_utilization/worker_utilization.h
+8 -8
@@ -14,18 +14,18 @@ typedef enum {
14 WORKER_METRIC_INCREMENTAL = 3,
15 } WORKER_METRIC_TYPE;
16
17 -extern void worker_register(const char *workname);
18 -extern void worker_register_job_name(size_t job_id, const char *name);
19 -extern void worker_register_job_custom_metric(size_t job_id, const char *name, const char *units, WORKER_METRIC_TYPE type);
20 -extern void worker_unregister(void);
17 +void worker_register(const char *workname);
18 +void worker_register_job_name(size_t job_id, const char *name);
19 +void worker_register_job_custom_metric(size_t job_id, const char *name, const char *units, WORKER_METRIC_TYPE type);
20 +void worker_unregister(void);
21
22 -extern void worker_is_idle(void);
23 -extern void worker_is_busy(size_t job_id);
24 -extern void worker_set_metric(size_t job_id, NETDATA_DOUBLE value);
22 +void worker_is_idle(void);
23 +void worker_is_busy(size_t job_id);
24 +void worker_set_metric(size_t job_id, NETDATA_DOUBLE value);
25
26 // statistics interface
27
28 -extern void workers_foreach(const char *workname, void (*callback)(
28 +void workers_foreach(const char *workname, void (*callback)(
29 void *data
30 , pid_t pid
31 , const char *thread_tag
ml/ml.h
+1 -1
@@ -12,7 +12,7 @@ extern "C" {
12
13 // This is a DBEngine function redeclared here so that we can free
14 // the anomaly rate dimension, whenever its backing dimension is freed.
15 -extern void rrddim_free(RRDSET *st, RRDDIM *rd);
15 +void rrddim_free(RRDSET *st, RRDDIM *rd);
16
17 typedef void* ml_host_t;
18 typedef void* ml_dimension_t;
parser/parser.h
+18 -18
@@ -105,7 +105,7 @@ typedef struct parser {
105
106 } PARSER;
107
108 -extern int find_first_keyword(const char *str, char *keyword, int max_size, int (*custom_isspace)(char));
108 +int find_first_keyword(const char *str, char *keyword, int max_size, int (*custom_isspace)(char));
109
110 PARSER *parser_init(RRDHOST *host, void *user, void *input, void *output, PARSER_INPUT_TYPE flags);
111 int parser_add_keyword(PARSER *working_parser, char *keyword, keyword_function func);
@@ -115,22 +115,22 @@ int parser_push(PARSER *working_parser, char *line);
115 void parser_destroy(PARSER *working_parser);
116 int parser_recover_input(PARSER *working_parser);
117
118 -extern size_t pluginsd_process(RRDHOST *host, struct plugind *cd, FILE *fp_plugin_input, FILE *fp_plugin_output, int trust_durations);
119 -
120 -extern PARSER_RC pluginsd_set(char **words, void *user, PLUGINSD_ACTION *plugins_action);
121 -extern PARSER_RC pluginsd_begin(char **words, void *user, PLUGINSD_ACTION *plugins_action);
122 -extern PARSER_RC pluginsd_end(char **words, void *user, PLUGINSD_ACTION *plugins_action);
123 -extern PARSER_RC pluginsd_chart(char **words, void *user, PLUGINSD_ACTION *plugins_action);
124 -extern PARSER_RC pluginsd_dimension(char **words, void *user, PLUGINSD_ACTION *plugins_action);
125 -extern PARSER_RC pluginsd_variable(char **words, void *user, PLUGINSD_ACTION *plugins_action);
126 -extern PARSER_RC pluginsd_flush(char **words, void *user, PLUGINSD_ACTION *plugins_action);
127 -extern PARSER_RC pluginsd_disable(char **words, void *user, PLUGINSD_ACTION *plugins_action);
128 -extern PARSER_RC pluginsd_label(char **words, void *user, PLUGINSD_ACTION *plugins_action);
129 -extern PARSER_RC pluginsd_overwrite(char **words, void *user, PLUGINSD_ACTION *plugins_action);
130 -extern PARSER_RC pluginsd_guid(char **words, void *user, PLUGINSD_ACTION *plugins_action);
131 -extern PARSER_RC pluginsd_context(char **words, void *user, PLUGINSD_ACTION *plugins_action);
132 -extern PARSER_RC pluginsd_tombstone(char **words, void *user, PLUGINSD_ACTION *plugins_action);
133 -extern PARSER_RC pluginsd_clabel_commit(char **words, void *user, PLUGINSD_ACTION *plugins_action);
134 -extern PARSER_RC pluginsd_clabel(char **words, void *user, PLUGINSD_ACTION *plugins_action);
118 +size_t pluginsd_process(RRDHOST *host, struct plugind *cd, FILE *fp_plugin_input, FILE *fp_plugin_output, int trust_durations);
119 +
120 +PARSER_RC pluginsd_set(char **words, void *user, PLUGINSD_ACTION *plugins_action);
121 +PARSER_RC pluginsd_begin(char **words, void *user, PLUGINSD_ACTION *plugins_action);
122 +PARSER_RC pluginsd_end(char **words, void *user, PLUGINSD_ACTION *plugins_action);
123 +PARSER_RC pluginsd_chart(char **words, void *user, PLUGINSD_ACTION *plugins_action);
124 +PARSER_RC pluginsd_dimension(char **words, void *user, PLUGINSD_ACTION *plugins_action);
125 +PARSER_RC pluginsd_variable(char **words, void *user, PLUGINSD_ACTION *plugins_action);
126 +PARSER_RC pluginsd_flush(char **words, void *user, PLUGINSD_ACTION *plugins_action);
127 +PARSER_RC pluginsd_disable(char **words, void *user, PLUGINSD_ACTION *plugins_action);
128 +PARSER_RC pluginsd_label(char **words, void *user, PLUGINSD_ACTION *plugins_action);
129 +PARSER_RC pluginsd_overwrite(char **words, void *user, PLUGINSD_ACTION *plugins_action);
130 +PARSER_RC pluginsd_guid(char **words, void *user, PLUGINSD_ACTION *plugins_action);
131 +PARSER_RC pluginsd_context(char **words, void *user, PLUGINSD_ACTION *plugins_action);
132 +PARSER_RC pluginsd_tombstone(char **words, void *user, PLUGINSD_ACTION *plugins_action);
133 +PARSER_RC pluginsd_clabel_commit(char **words, void *user, PLUGINSD_ACTION *plugins_action);
134 +PARSER_RC pluginsd_clabel(char **words, void *user, PLUGINSD_ACTION *plugins_action);
135
136 #endif
registry/registry.h
+13 -13
@@ -55,29 +55,29 @@
55
56 // initialize the registry
57 // should only happen when netdata starts
58 -extern int registry_init(void);
58 +int registry_init(void);
59
60 // free all data held by the registry
61 // should only happen when netdata exits
62 -extern void registry_free(void);
62 +void registry_free(void);
63
64 // HTTP requests handled by the registry
65 -extern int registry_request_access_json(RRDHOST *host, struct web_client *w, char *person_guid, char *machine_guid, char *url, char *name, time_t when);
66 -extern int registry_request_delete_json(RRDHOST *host, struct web_client *w, char *person_guid, char *machine_guid, char *url, char *delete_url, time_t when);
67 -extern int registry_request_search_json(RRDHOST *host, struct web_client *w, char *person_guid, char *machine_guid, char *url, char *request_machine, time_t when);
68 -extern int registry_request_switch_json(RRDHOST *host, struct web_client *w, char *person_guid, char *machine_guid, char *url, char *new_person_guid, time_t when);
69 -extern int registry_request_hello_json(RRDHOST *host, struct web_client *w);
65 +int registry_request_access_json(RRDHOST *host, struct web_client *w, char *person_guid, char *machine_guid, char *url, char *name, time_t when);
66 +int registry_request_delete_json(RRDHOST *host, struct web_client *w, char *person_guid, char *machine_guid, char *url, char *delete_url, time_t when);
67 +int registry_request_search_json(RRDHOST *host, struct web_client *w, char *person_guid, char *machine_guid, char *url, char *request_machine, time_t when);
68 +int registry_request_switch_json(RRDHOST *host, struct web_client *w, char *person_guid, char *machine_guid, char *url, char *new_person_guid, time_t when);
69 +int registry_request_hello_json(RRDHOST *host, struct web_client *w);
70
71 // update the registry config
72 -extern void registry_update_cloud_base_url();
72 +void registry_update_cloud_base_url();
73
74 // update the registry monitoring charts
75 -extern void registry_statistics(void);
75 +void registry_statistics(void);
76
77 -extern char *registry_get_this_machine_guid(void);
78 -extern char *registry_get_mgmt_api_key(void);
79 -extern char *registry_get_this_machine_hostname(void);
77 +char *registry_get_this_machine_guid(void);
78 +char *registry_get_mgmt_api_key(void);
79 +char *registry_get_this_machine_hostname(void);
80
81 -extern int regenerate_guid(const char *guid, char *result);
81 +int regenerate_guid(const char *guid, char *result);
82
83 #endif /* NETDATA_REGISTRY_H */
registry/registry_internals.h
+11 -11
@@ -71,20 +71,20 @@ struct registry {
71 extern struct registry registry;
72
73 // REGISTRY LOW-LEVEL REQUESTS (in registry-internals.c)
74 -extern REGISTRY_PERSON *registry_request_access(char *person_guid, char *machine_guid, char *url, char *name, time_t when);
75 -extern REGISTRY_PERSON *registry_request_delete(char *person_guid, char *machine_guid, char *url, char *delete_url, time_t when);
76 -extern REGISTRY_MACHINE *registry_request_machine(char *person_guid, char *machine_guid, char *url, char *request_machine, time_t when);
74 +REGISTRY_PERSON *registry_request_access(char *person_guid, char *machine_guid, char *url, char *name, time_t when);
75 +REGISTRY_PERSON *registry_request_delete(char *person_guid, char *machine_guid, char *url, char *delete_url, time_t when);
76 +REGISTRY_MACHINE *registry_request_machine(char *person_guid, char *machine_guid, char *url, char *request_machine, time_t when);
77
78 // REGISTRY LOG (in registry_log.c)
79 -extern void registry_log(char action, REGISTRY_PERSON *p, REGISTRY_MACHINE *m, REGISTRY_URL *u, char *name);
80 -extern int registry_log_open(void);
81 -extern void registry_log_close(void);
82 -extern void registry_log_recreate(void);
83 -extern ssize_t registry_log_load(void);
79 +void registry_log(char action, REGISTRY_PERSON *p, REGISTRY_MACHINE *m, REGISTRY_URL *u, char *name);
80 +int registry_log_open(void);
81 +void registry_log_close(void);
82 +void registry_log_recreate(void);
83 +ssize_t registry_log_load(void);
84
85 // REGISTRY DB (in registry_db.c)
86 -extern int registry_db_save(void);
87 -extern size_t registry_db_load(void);
88 -extern int registry_db_should_be_saved(void);
86 +int registry_db_save(void);
87 +size_t registry_db_load(void);
88 +int registry_db_should_be_saved(void);
89
90 #endif //NETDATA_REGISTRY_INTERNALS_H_H
registry/registry_machine.h
+5 -5
@@ -34,10 +34,10 @@ struct registry_machine {
34 };
35 typedef struct registry_machine REGISTRY_MACHINE;
36
37 -extern REGISTRY_MACHINE *registry_machine_find(const char *machine_guid);
38 -extern REGISTRY_MACHINE_URL *registry_machine_url_allocate(REGISTRY_MACHINE *m, REGISTRY_URL *u, time_t when);
39 -extern REGISTRY_MACHINE *registry_machine_allocate(const char *machine_guid, time_t when);
40 -extern REGISTRY_MACHINE *registry_machine_get(const char *machine_guid, time_t when);
41 -extern REGISTRY_MACHINE_URL *registry_machine_link_to_url(REGISTRY_MACHINE *m, REGISTRY_URL *u, time_t when);
37 +REGISTRY_MACHINE *registry_machine_find(const char *machine_guid);
38 +REGISTRY_MACHINE_URL *registry_machine_url_allocate(REGISTRY_MACHINE *m, REGISTRY_URL *u, time_t when);
39 +REGISTRY_MACHINE *registry_machine_allocate(const char *machine_guid, time_t when);
40 +REGISTRY_MACHINE *registry_machine_get(const char *machine_guid, time_t when);
41 +REGISTRY_MACHINE_URL *registry_machine_link_to_url(REGISTRY_MACHINE *m, REGISTRY_URL *u, time_t when);
42
43 #endif //NETDATA_REGISTRY_MACHINE_H
registry/registry_person.h
+10 -10
@@ -42,20 +42,20 @@ struct registry_person {
42 typedef struct registry_person REGISTRY_PERSON;
43
44 // PERSON_URL
45 -extern REGISTRY_PERSON_URL *registry_person_url_index_find(REGISTRY_PERSON *p, const char *url);
46 -extern REGISTRY_PERSON_URL *registry_person_url_index_add(REGISTRY_PERSON *p, REGISTRY_PERSON_URL *pu) NEVERNULL WARNUNUSED;
47 -extern REGISTRY_PERSON_URL *registry_person_url_index_del(REGISTRY_PERSON *p, REGISTRY_PERSON_URL *pu) WARNUNUSED;
45 +REGISTRY_PERSON_URL *registry_person_url_index_find(REGISTRY_PERSON *p, const char *url);
46 +REGISTRY_PERSON_URL *registry_person_url_index_add(REGISTRY_PERSON *p, REGISTRY_PERSON_URL *pu) NEVERNULL WARNUNUSED;
47 +REGISTRY_PERSON_URL *registry_person_url_index_del(REGISTRY_PERSON *p, REGISTRY_PERSON_URL *pu) WARNUNUSED;
48
49 -extern REGISTRY_PERSON_URL *registry_person_url_allocate(REGISTRY_PERSON *p, REGISTRY_MACHINE *m, REGISTRY_URL *u, char *name, size_t namelen, time_t when);
50 -extern REGISTRY_PERSON_URL *registry_person_url_reallocate(REGISTRY_PERSON *p, REGISTRY_MACHINE *m, REGISTRY_URL *u, char *name, size_t namelen, time_t when, REGISTRY_PERSON_URL *pu);
49 +REGISTRY_PERSON_URL *registry_person_url_allocate(REGISTRY_PERSON *p, REGISTRY_MACHINE *m, REGISTRY_URL *u, char *name, size_t namelen, time_t when);
50 +REGISTRY_PERSON_URL *registry_person_url_reallocate(REGISTRY_PERSON *p, REGISTRY_MACHINE *m, REGISTRY_URL *u, char *name, size_t namelen, time_t when, REGISTRY_PERSON_URL *pu);
51
52 // PERSON
53 -extern REGISTRY_PERSON *registry_person_find(const char *person_guid);
54 -extern REGISTRY_PERSON *registry_person_allocate(const char *person_guid, time_t when);
55 -extern REGISTRY_PERSON *registry_person_get(const char *person_guid, time_t when);
53 +REGISTRY_PERSON *registry_person_find(const char *person_guid);
54 +REGISTRY_PERSON *registry_person_allocate(const char *person_guid, time_t when);
55 +REGISTRY_PERSON *registry_person_get(const char *person_guid, time_t when);
56
57 // LINKING PERSON -> PERSON_URL
58 -extern REGISTRY_PERSON_URL *registry_person_link_to_url(REGISTRY_PERSON *p, REGISTRY_MACHINE *m, REGISTRY_URL *u, char *name, size_t namelen, time_t when);
59 -extern void registry_person_unlink_from_url(REGISTRY_PERSON *p, REGISTRY_PERSON_URL *pu);
58 +REGISTRY_PERSON_URL *registry_person_link_to_url(REGISTRY_PERSON *p, REGISTRY_MACHINE *m, REGISTRY_URL *u, char *name, size_t namelen, time_t when);
59 +void registry_person_unlink_from_url(REGISTRY_PERSON *p, REGISTRY_PERSON_URL *pu);
60
61 #endif //NETDATA_REGISTRY_PERSON_H
registry/registry_url.h
+6 -6
@@ -23,13 +23,13 @@ struct registry_url {
23 typedef struct registry_url REGISTRY_URL;
24
25 // REGISTRY_URL INDEX
26 -extern int registry_url_compare(void *a, void *b);
27 -extern REGISTRY_URL *registry_url_index_del(REGISTRY_URL *u) WARNUNUSED;
28 -extern REGISTRY_URL *registry_url_index_add(REGISTRY_URL *u) NEVERNULL WARNUNUSED;
26 +int registry_url_compare(void *a, void *b);
27 +REGISTRY_URL *registry_url_index_del(REGISTRY_URL *u) WARNUNUSED;
28 +REGISTRY_URL *registry_url_index_add(REGISTRY_URL *u) NEVERNULL WARNUNUSED;
29
30 // REGISTRY_URL MANAGEMENT
31 -extern REGISTRY_URL *registry_url_get(const char *url, size_t urllen) NEVERNULL;
32 -extern void registry_url_link(REGISTRY_URL *u);
33 -extern void registry_url_unlink(REGISTRY_URL *u);
31 +REGISTRY_URL *registry_url_get(const char *url, size_t urllen) NEVERNULL;
32 +void registry_url_link(REGISTRY_URL *u);
33 +void registry_url_unlink(REGISTRY_URL *u);
34
35 #endif //NETDATA_REGISTRY_URL_H
streaming/rrdpush.h
+23 -23
@@ -220,28 +220,28 @@ extern char *default_rrdpush_api_key;
220 extern char *default_rrdpush_send_charts_matching;
221 extern unsigned int remote_clock_resync_iterations;
222
223 -extern void rrdpush_destinations_init(RRDHOST *host);
224 -extern void rrdpush_destinations_free(RRDHOST *host);
223 +void rrdpush_destinations_init(RRDHOST *host);
224 +void rrdpush_destinations_free(RRDHOST *host);
225
226 -extern void sender_init(RRDHOST *parent);
226 +void sender_init(RRDHOST *parent);
227 BUFFER *sender_start(struct sender_state *s);
228 void sender_commit(struct sender_state *s, BUFFER *wb);
229 void sender_cancel(struct sender_state *s);
230 -extern int rrdpush_init();
231 -extern int configured_as_parent();
232 -extern void rrdset_done_push(RRDSET *st);
233 -extern bool rrdset_push_chart_definition_now(RRDSET *st);
234 -extern bool rrdpush_incremental_transmission_of_chart_definitions(RRDHOST *host, DICTFE *dictfe, bool restart, bool stop);
235 -extern void *rrdpush_sender_thread(void *ptr);
236 -extern void rrdpush_send_host_labels(RRDHOST *host);
237 -extern void rrdpush_claimed_id(RRDHOST *host);
238 -
239 -extern int rrdpush_receiver_thread_spawn(struct web_client *w, char *url);
240 -extern void rrdpush_sender_thread_stop(RRDHOST *host);
241 -
242 -extern void rrdpush_sender_send_this_host_variable_now(RRDHOST *host, const RRDVAR_ACQUIRED *rva);
243 -extern void log_stream_connection(const char *client_ip, const char *client_port, const char *api_key, const char *machine_guid, const char *host, const char *msg);
244 -extern int connect_to_one_of_destinations(
230 +int rrdpush_init();
231 +int configured_as_parent();
232 +void rrdset_done_push(RRDSET *st);
233 +bool rrdset_push_chart_definition_now(RRDSET *st);
234 +bool rrdpush_incremental_transmission_of_chart_definitions(RRDHOST *host, DICTFE *dictfe, bool restart, bool stop);
235 +void *rrdpush_sender_thread(void *ptr);
236 +void rrdpush_send_host_labels(RRDHOST *host);
237 +void rrdpush_claimed_id(RRDHOST *host);
238 +
239 +int rrdpush_receiver_thread_spawn(struct web_client *w, char *url);
240 +void rrdpush_sender_thread_stop(RRDHOST *host);
241 +
242 +void rrdpush_sender_send_this_host_variable_now(RRDHOST *host, const RRDVAR_ACQUIRED *rva);
243 +void log_stream_connection(const char *client_ip, const char *client_port, const char *api_key, const char *machine_guid, const char *host, const char *msg);
244 +int connect_to_one_of_destinations(
245 RRDHOST *host,
246 int default_port,
247 struct timeval *timeout,
@@ -250,7 +250,7 @@ extern int connect_to_one_of_destinations(
250 size_t connected_to_size,
251 struct rrdpush_destinations **destination);
252
253 -extern void rrdpush_signal_sender_to_wake_up(struct sender_state *s);
253 +void rrdpush_signal_sender_to_wake_up(struct sender_state *s);
254
255 #ifdef ENABLE_COMPRESSION
256 struct compressor_state *create_compressor();
@@ -258,9 +258,9 @@ struct decompressor_state *create_decompressor();
258 size_t is_compressed_data(const char *data, size_t data_size);
259 #endif
260
261 -extern void log_receiver_capabilities(struct receiver_state *rpt);
262 -extern void log_sender_capabilities(struct sender_state *s);
263 -extern STREAM_CAPABILITIES convert_stream_version_to_capabilities(int32_t version);
264 -extern int32_t stream_capabilities_to_vn(uint32_t caps);
261 +void log_receiver_capabilities(struct receiver_state *rpt);
262 +void log_sender_capabilities(struct sender_state *s);
263 +STREAM_CAPABILITIES convert_stream_version_to_capabilities(int32_t version);
264 +int32_t stream_capabilities_to_vn(uint32_t caps);
265
266 #endif //NETDATA_RRDPUSH_H
web/api/badges/web_buffer_svg.h
+3 -3
@@ -6,12 +6,12 @@
6 #include "libnetdata/libnetdata.h"
7 #include "web/server/web_client.h"
8
9 -extern void buffer_svg(BUFFER *wb, const char *label,
9 +void buffer_svg(BUFFER *wb, const char *label,
10 NETDATA_DOUBLE value, const char *units, const char *label_color, const char *value_color, int precision, int scale, uint32_t options, int fixed_width_lbl, int fixed_width_val, const char* text_color_lbl, const char* text_color_val);
11 -extern char *format_value_and_unit(char *value_string, size_t value_string_len,
11 +char *format_value_and_unit(char *value_string, size_t value_string_len,
12 NETDATA_DOUBLE value, const char *units, int precision);
13
14 -extern int web_client_api_request_v1_badge(struct rrdhost *host, struct web_client *w, char *url);
14 +int web_client_api_request_v1_badge(struct rrdhost *host, struct web_client *w, char *url);
15
16 #include "web/api/web_api_v1.h"
17
web/api/exporters/allmetrics.h
+1 -1
@@ -7,6 +7,6 @@
7 #include "shell/allmetrics_shell.h"
8 #include "web/server/web_client.h"
9
10 -extern int web_client_api_request_v1_allmetrics(RRDHOST *host, struct web_client *w, char *url);
10 +int web_client_api_request_v1_allmetrics(RRDHOST *host, struct web_client *w, char *url);
11
12 #endif //NETDATA_API_ALLMETRICS_H
web/api/exporters/shell/allmetrics_shell.h
+2 -2
@@ -15,7 +15,7 @@
15 #define ALLMETRICS_JSON 3
16 #define ALLMETRICS_PROMETHEUS_ALL_HOSTS 4
17
18 -extern void rrd_stats_api_v1_charts_allmetrics_json(RRDHOST *host, const char *filter_string, BUFFER *wb);
19 -extern void rrd_stats_api_v1_charts_allmetrics_shell(RRDHOST *host, const char *filter_string, BUFFER *wb);
18 +void rrd_stats_api_v1_charts_allmetrics_json(RRDHOST *host, const char *filter_string, BUFFER *wb);
19 +void rrd_stats_api_v1_charts_allmetrics_shell(RRDHOST *host, const char *filter_string, BUFFER *wb);
20
21 #endif //NETDATA_API_ALLMETRICS_SHELL_H
web/api/formatters/charts2json.h
+3 -3
@@ -5,8 +5,8 @@
5
6 #include "rrd2json.h"
7
8 -extern void charts2json(RRDHOST *host, BUFFER *wb, int skip_volatile, int show_archived);
9 -extern void chartcollectors2json(RRDHOST *host, BUFFER *wb);
10 -extern const char* get_release_channel();
8 +void charts2json(RRDHOST *host, BUFFER *wb, int skip_volatile, int show_archived);
9 +void chartcollectors2json(RRDHOST *host, BUFFER *wb);
10 +const char* get_release_channel();
11
12 #endif //NETDATA_API_FORMATTER_CHARTS2JSON_H
web/api/formatters/csv/csv.h
+1 -1
@@ -5,7 +5,7 @@
5
6 #include "web/api/queries/rrdr.h"
7
8 -extern void rrdr2csv(RRDR *r, BUFFER *wb, uint32_t format, RRDR_OPTIONS options, const char *startline, const char *separator, const char *endline, const char *betweenlines, RRDDIM *temp_rd);
8 +void rrdr2csv(RRDR *r, BUFFER *wb, uint32_t format, RRDR_OPTIONS options, const char *startline, const char *separator, const char *endline, const char *betweenlines, RRDDIM *temp_rd);
9
10 #include "../rrd2json.h"
11
web/api/formatters/json/json.h
+1 -1
@@ -5,6 +5,6 @@
5
6 #include "../rrd2json.h"
7
8 -extern void rrdr2json(RRDR *r, BUFFER *wb, RRDR_OPTIONS options, int datatable, struct context_param *context_param_list);
8 +void rrdr2json(RRDR *r, BUFFER *wb, RRDR_OPTIONS options, int datatable, struct context_param *context_param_list);
9
10 #endif //NETDATA_API_FORMATTER_JSON_H
web/api/formatters/json_wrapper.h
+3 -3
@@ -7,9 +7,9 @@
7 #include "web/api/queries/query.h"
8
9
10 -extern void rrdr_json_wrapper_begin(RRDR *r, BUFFER *wb, uint32_t format, RRDR_OPTIONS options, int string_value,
10 +void rrdr_json_wrapper_begin(RRDR *r, BUFFER *wb, uint32_t format, RRDR_OPTIONS options, int string_value,
11 RRDR_GROUPING group_method, QUERY_PARAMS *query_params);
12 -extern void rrdr_json_wrapper_anomaly_rates(RRDR *r, BUFFER *wb, uint32_t format, uint32_t options, int string_value);
13 -extern void rrdr_json_wrapper_end(RRDR *r, BUFFER *wb, uint32_t format, uint32_t options, int string_value);
12 +void rrdr_json_wrapper_anomaly_rates(RRDR *r, BUFFER *wb, uint32_t format, uint32_t options, int string_value);
13 +void rrdr_json_wrapper_end(RRDR *r, BUFFER *wb, uint32_t format, uint32_t options, int string_value);
14
15 #endif //NETDATA_API_FORMATTER_JSON_WRAPPER_H
web/api/formatters/rrd2json.h
+7 -7
@@ -61,10 +61,10 @@ typedef struct query_params {
61 #define DATASOURCE_FORMAT_CSV_JSON_ARRAY "csvjsonarray"
62 #define DATASOURCE_FORMAT_CSV_MARKDOWN "markdown"
63
64 -extern void rrd_stats_api_v1_chart(RRDSET *st, BUFFER *wb);
65 -extern void rrdr_buffer_print_format(BUFFER *wb, uint32_t format);
64 +void rrd_stats_api_v1_chart(RRDSET *st, BUFFER *wb);
65 +void rrdr_buffer_print_format(BUFFER *wb, uint32_t format);
66
67 -extern int rrdset2anything_api_v1(
67 +int rrdset2anything_api_v1(
68 ONEWAYALLOC *owa
69 , RRDSET *st
70 , QUERY_PARAMS *query_params
@@ -81,7 +81,7 @@ extern int rrdset2anything_api_v1(
81 , int tier
82 );
83
84 -extern int rrdset2value_api_v1(
84 +int rrdset2value_api_v1(
85 RRDSET *st
86 , BUFFER *wb
87 , NETDATA_DOUBLE *n
@@ -104,8 +104,8 @@ extern int rrdset2value_api_v1(
104 , int tier
105 );
106
107 -extern void build_context_param_list(ONEWAYALLOC *owa, struct context_param **param_list, RRDSET *st);
108 -extern void rebuild_context_param_list(ONEWAYALLOC *owa, struct context_param *context_param_list, time_t after_requested);
109 -extern void free_context_param_list(ONEWAYALLOC *owa, struct context_param **param_list);
107 +void build_context_param_list(ONEWAYALLOC *owa, struct context_param **param_list, RRDSET *st);
108 +void rebuild_context_param_list(ONEWAYALLOC *owa, struct context_param *context_param_list, time_t after_requested);
109 +void free_context_param_list(ONEWAYALLOC *owa, struct context_param **param_list);
110
111 #endif /* NETDATA_RRD2JSON_H */
web/api/formatters/rrdset2json.h
+1 -1
@@ -5,6 +5,6 @@
5
6 #include "rrd2json.h"
7
8 -extern void rrdset2json(RRDSET *st, BUFFER *wb, size_t *dimensions_count, size_t *memory_used, int skip_volatile);
8 +void rrdset2json(RRDSET *st, BUFFER *wb, size_t *dimensions_count, size_t *memory_used, int skip_volatile);
9
10 #endif //NETDATA_API_FORMATTER_RRDSET2JSON_H
web/api/formatters/ssv/ssv.h
+1 -1
@@ -5,6 +5,6 @@
5
6 #include "../rrd2json.h"
7
8 -extern void rrdr2ssv(RRDR *r, BUFFER *wb, RRDR_OPTIONS options, const char *prefix, const char *separator, const char *suffix, RRDDIM *temp_rd);
8 +void rrdr2ssv(RRDR *r, BUFFER *wb, RRDR_OPTIONS options, const char *prefix, const char *separator, const char *suffix, RRDDIM *temp_rd);
9
10 #endif //NETDATA_API_FORMATTER_SSV_H
web/api/formatters/value/value.h
+1 -1
@@ -5,6 +5,6 @@
5
6 #include "../rrd2json.h"
7
8 -extern NETDATA_DOUBLE rrdr2value(RRDR *r, long i, RRDR_OPTIONS options, int *all_values_are_null, NETDATA_DOUBLE *anomaly_rate, RRDDIM *temp_rd);
8 +NETDATA_DOUBLE rrdr2value(RRDR *r, long i, RRDR_OPTIONS options, int *all_values_are_null, NETDATA_DOUBLE *anomaly_rate, RRDDIM *temp_rd);
9
10 #endif //NETDATA_API_FORMATTER_VALUE_H
web/api/health/health_cmdapi.h
+1 -1
@@ -24,7 +24,7 @@
24 #define HEALTH_CMDAPI_MSG_STYPEWARNING "WARNING: Added alarm selector to silence/disable alarms without a SILENCE or DISABLE command.\n"
25 #define HEALTH_CMDAPI_MSG_NOSELECTORWARNING "WARNING: SILENCE or DISABLE command is ineffective without defining any alarm selectors.\n"
26
27 -extern int web_client_api_request_v1_mgmt_health(RRDHOST *host, struct web_client *w, char *url);
27 +int web_client_api_request_v1_mgmt_health(RRDHOST *host, struct web_client *w, char *url);
28
29 #include "web/api/web_api_v1.h"
30
web/api/queries/average/average.h
+5 -5
@@ -6,10 +6,10 @@
6 #include "../query.h"
7 #include "../rrdr.h"
8
9 -extern void grouping_create_average(RRDR *r, const char *options __maybe_unused);
10 -extern void grouping_reset_average(RRDR *r);
11 -extern void grouping_free_average(RRDR *r);
12 -extern void grouping_add_average(RRDR *r, NETDATA_DOUBLE value);
13 -extern NETDATA_DOUBLE grouping_flush_average(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
9 +void grouping_create_average(RRDR *r, const char *options __maybe_unused);
10 +void grouping_reset_average(RRDR *r);
11 +void grouping_free_average(RRDR *r);
12 +void grouping_add_average(RRDR *r, NETDATA_DOUBLE value);
13 +NETDATA_DOUBLE grouping_flush_average(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
14
15 #endif //NETDATA_API_QUERY_AVERAGE_H
web/api/queries/countif/countif.h
+5 -5
@@ -6,10 +6,10 @@
6 #include "../query.h"
7 #include "../rrdr.h"
8
9 -extern void grouping_create_countif(RRDR *r, const char *options __maybe_unused);
10 -extern void grouping_reset_countif(RRDR *r);
11 -extern void grouping_free_countif(RRDR *r);
12 -extern void grouping_add_countif(RRDR *r, NETDATA_DOUBLE value);
13 -extern NETDATA_DOUBLE grouping_flush_countif(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
9 +void grouping_create_countif(RRDR *r, const char *options __maybe_unused);
10 +void grouping_reset_countif(RRDR *r);
11 +void grouping_free_countif(RRDR *r);
12 +void grouping_add_countif(RRDR *r, NETDATA_DOUBLE value);
13 +NETDATA_DOUBLE grouping_flush_countif(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
14
15 #endif //NETDATA_API_QUERY_COUNTIF_H
web/api/queries/des/des.h
+6 -6
@@ -6,12 +6,12 @@
6 #include "../query.h"
7 #include "../rrdr.h"
8
9 -extern void grouping_init_des(void);
9 +void grouping_init_des(void);
10
11 -extern void grouping_create_des(RRDR *r, const char *options __maybe_unused);
12 -extern void grouping_reset_des(RRDR *r);
13 -extern void grouping_free_des(RRDR *r);
14 -extern void grouping_add_des(RRDR *r, NETDATA_DOUBLE value);
15 -extern NETDATA_DOUBLE grouping_flush_des(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
11 +void grouping_create_des(RRDR *r, const char *options __maybe_unused);
12 +void grouping_reset_des(RRDR *r);
13 +void grouping_free_des(RRDR *r);
14 +void grouping_add_des(RRDR *r, NETDATA_DOUBLE value);
15 +NETDATA_DOUBLE grouping_flush_des(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
16
17 #endif //NETDATA_API_QUERIES_DES_H
web/api/queries/incremental_sum/incremental_sum.h
+5 -5
@@ -6,10 +6,10 @@
6 #include "../query.h"
7 #include "../rrdr.h"
8
9 -extern void grouping_create_incremental_sum(RRDR *r, const char *options __maybe_unused);
10 -extern void grouping_reset_incremental_sum(RRDR *r);
11 -extern void grouping_free_incremental_sum(RRDR *r);
12 -extern void grouping_add_incremental_sum(RRDR *r, NETDATA_DOUBLE value);
13 -extern NETDATA_DOUBLE grouping_flush_incremental_sum(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
9 +void grouping_create_incremental_sum(RRDR *r, const char *options __maybe_unused);
10 +void grouping_reset_incremental_sum(RRDR *r);
11 +void grouping_free_incremental_sum(RRDR *r);
12 +void grouping_add_incremental_sum(RRDR *r, NETDATA_DOUBLE value);
13 +NETDATA_DOUBLE grouping_flush_incremental_sum(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
14
15 #endif //NETDATA_API_QUERY_INCREMENTAL_SUM_H
web/api/queries/max/max.h
+5 -5
@@ -6,10 +6,10 @@
6 #include "../query.h"
7 #include "../rrdr.h"
8
9 -extern void grouping_create_max(RRDR *r, const char *options __maybe_unused);
10 -extern void grouping_reset_max(RRDR *r);
11 -extern void grouping_free_max(RRDR *r);
12 -extern void grouping_add_max(RRDR *r, NETDATA_DOUBLE value);
13 -extern NETDATA_DOUBLE grouping_flush_max(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
9 +void grouping_create_max(RRDR *r, const char *options __maybe_unused);
10 +void grouping_reset_max(RRDR *r);
11 +void grouping_free_max(RRDR *r);
12 +void grouping_add_max(RRDR *r, NETDATA_DOUBLE value);
13 +NETDATA_DOUBLE grouping_flush_max(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
14
15 #endif //NETDATA_API_QUERY_MAX_H
web/api/queries/median/median.h
+13 -13
@@ -6,18 +6,18 @@
6 #include "../query.h"
7 #include "../rrdr.h"
8
9 -extern void grouping_create_median(RRDR *r, const char *options);
10 -extern void grouping_create_trimmed_median1(RRDR *r, const char *options);
11 -extern void grouping_create_trimmed_median2(RRDR *r, const char *options);
12 -extern void grouping_create_trimmed_median3(RRDR *r, const char *options);
13 -extern void grouping_create_trimmed_median5(RRDR *r, const char *options);
14 -extern void grouping_create_trimmed_median10(RRDR *r, const char *options);
15 -extern void grouping_create_trimmed_median15(RRDR *r, const char *options);
16 -extern void grouping_create_trimmed_median20(RRDR *r, const char *options);
17 -extern void grouping_create_trimmed_median25(RRDR *r, const char *options);
18 -extern void grouping_reset_median(RRDR *r);
19 -extern void grouping_free_median(RRDR *r);
20 -extern void grouping_add_median(RRDR *r, NETDATA_DOUBLE value);
21 -extern NETDATA_DOUBLE grouping_flush_median(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
9 +void grouping_create_median(RRDR *r, const char *options);
10 +void grouping_create_trimmed_median1(RRDR *r, const char *options);
11 +void grouping_create_trimmed_median2(RRDR *r, const char *options);
12 +void grouping_create_trimmed_median3(RRDR *r, const char *options);
13 +void grouping_create_trimmed_median5(RRDR *r, const char *options);
14 +void grouping_create_trimmed_median10(RRDR *r, const char *options);
15 +void grouping_create_trimmed_median15(RRDR *r, const char *options);
16 +void grouping_create_trimmed_median20(RRDR *r, const char *options);
17 +void grouping_create_trimmed_median25(RRDR *r, const char *options);
18 +void grouping_reset_median(RRDR *r);
19 +void grouping_free_median(RRDR *r);
20 +void grouping_add_median(RRDR *r, NETDATA_DOUBLE value);
21 +NETDATA_DOUBLE grouping_flush_median(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
22
23 #endif //NETDATA_API_QUERIES_MEDIAN_H
web/api/queries/min/min.h
+5 -5
@@ -6,10 +6,10 @@
6 #include "../query.h"
7 #include "../rrdr.h"
8
9 -extern void grouping_create_min(RRDR *r, const char *options __maybe_unused);
10 -extern void grouping_reset_min(RRDR *r);
11 -extern void grouping_free_min(RRDR *r);
12 -extern void grouping_add_min(RRDR *r, NETDATA_DOUBLE value);
13 -extern NETDATA_DOUBLE grouping_flush_min(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
9 +void grouping_create_min(RRDR *r, const char *options __maybe_unused);
10 +void grouping_reset_min(RRDR *r);
11 +void grouping_free_min(RRDR *r);
12 +void grouping_add_min(RRDR *r, NETDATA_DOUBLE value);
13 +NETDATA_DOUBLE grouping_flush_min(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
14
15 #endif //NETDATA_API_QUERY_MIN_H
web/api/queries/percentile/percentile.h
+13 -13
@@ -6,18 +6,18 @@
6 #include "../query.h"
7 #include "../rrdr.h"
8
9 -extern void grouping_create_percentile25(RRDR *r, const char *options);
10 -extern void grouping_create_percentile50(RRDR *r, const char *options);
11 -extern void grouping_create_percentile75(RRDR *r, const char *options);
12 -extern void grouping_create_percentile80(RRDR *r, const char *options);
13 -extern void grouping_create_percentile90(RRDR *r, const char *options);
14 -extern void grouping_create_percentile95(RRDR *r, const char *options);
15 -extern void grouping_create_percentile97(RRDR *r, const char *options);
16 -extern void grouping_create_percentile98(RRDR *r, const char *options);
17 -extern void grouping_create_percentile99(RRDR *r, const char *options );
18 -extern void grouping_reset_percentile(RRDR *r);
19 -extern void grouping_free_percentile(RRDR *r);
20 -extern void grouping_add_percentile(RRDR *r, NETDATA_DOUBLE value);
21 -extern NETDATA_DOUBLE grouping_flush_percentile(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
9 +void grouping_create_percentile25(RRDR *r, const char *options);
10 +void grouping_create_percentile50(RRDR *r, const char *options);
11 +void grouping_create_percentile75(RRDR *r, const char *options);
12 +void grouping_create_percentile80(RRDR *r, const char *options);
13 +void grouping_create_percentile90(RRDR *r, const char *options);
14 +void grouping_create_percentile95(RRDR *r, const char *options);
15 +void grouping_create_percentile97(RRDR *r, const char *options);
16 +void grouping_create_percentile98(RRDR *r, const char *options);
17 +void grouping_create_percentile99(RRDR *r, const char *options );
18 +void grouping_reset_percentile(RRDR *r);
19 +void grouping_free_percentile(RRDR *r);
20 +void grouping_add_percentile(RRDR *r, NETDATA_DOUBLE value);
21 +NETDATA_DOUBLE grouping_flush_percentile(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
22
23 #endif //NETDATA_API_QUERIES_PERCENTILE_H
web/api/queries/query.h
+4 -4
@@ -47,10 +47,10 @@ typedef enum rrdr_grouping {
47 RRDR_GROUPING_COUNTIF,
48 } RRDR_GROUPING;
49
50 -extern const char *group_method2string(RRDR_GROUPING group);
51 -extern void web_client_api_v1_init_grouping(void);
52 -extern RRDR_GROUPING web_client_api_request_v1_data_group(const char *name, RRDR_GROUPING def);
53 -extern const char *web_client_api_request_v1_data_group_to_string(RRDR_GROUPING group);
50 +const char *group_method2string(RRDR_GROUPING group);
51 +void web_client_api_v1_init_grouping(void);
52 +RRDR_GROUPING web_client_api_request_v1_data_group(const char *name, RRDR_GROUPING def);
53 +const char *web_client_api_request_v1_data_group_to_string(RRDR_GROUPING group);
54
55 #ifdef __cplusplus
56 }
web/api/queries/rrdr.h
+5 -5
@@ -128,20 +128,20 @@ typedef struct rrdresult {
128 #define rrdr_rows(r) ((r)->rows)
129
130 #include "database/rrd.h"
131 -extern void rrdr_free(ONEWAYALLOC *owa, RRDR *r);
132 -extern RRDR *rrdr_create(ONEWAYALLOC *owa, struct rrdset *st, long n, struct context_param *context_param_list);
133 -extern RRDR *rrdr_create_for_x_dimensions(ONEWAYALLOC *owa, int dimensions, long points);
131 +void rrdr_free(ONEWAYALLOC *owa, RRDR *r);
132 +RRDR *rrdr_create(ONEWAYALLOC *owa, struct rrdset *st, long n, struct context_param *context_param_list);
133 +RRDR *rrdr_create_for_x_dimensions(ONEWAYALLOC *owa, int dimensions, long points);
134
135 #include "../web_api_v1.h"
136 #include "web/api/queries/query.h"
137
138 -extern RRDR *rrd2rrdr(
138 +RRDR *rrd2rrdr(
139 ONEWAYALLOC *owa,
140 RRDSET *st, long points_wanted, long long after_wanted, long long before_wanted,
141 RRDR_GROUPING group_method, long resampling_time_requested, RRDR_OPTIONS options, const char *dimensions,
142 struct context_param *context_param_list, const char *group_options, int timeout, int tier);
143
144 -extern int rrdr_relative_window_to_absolute(long long *after, long long *before);
144 +int rrdr_relative_window_to_absolute(long long *after, long long *before);
145
146 #ifdef __cplusplus
147 }
web/api/queries/ses/ses.h
+6 -6
@@ -6,12 +6,12 @@
6 #include "../query.h"
7 #include "../rrdr.h"
8
9 -extern void grouping_init_ses(void);
9 +void grouping_init_ses(void);
10
11 -extern void grouping_create_ses(RRDR *r, const char *options __maybe_unused);
12 -extern void grouping_reset_ses(RRDR *r);
13 -extern void grouping_free_ses(RRDR *r);
14 -extern void grouping_add_ses(RRDR *r, NETDATA_DOUBLE value);
15 -extern NETDATA_DOUBLE grouping_flush_ses(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
11 +void grouping_create_ses(RRDR *r, const char *options __maybe_unused);
12 +void grouping_reset_ses(RRDR *r);
13 +void grouping_free_ses(RRDR *r);
14 +void grouping_add_ses(RRDR *r, NETDATA_DOUBLE value);
15 +NETDATA_DOUBLE grouping_flush_ses(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
16
17 #endif //NETDATA_API_QUERIES_SES_H
web/api/queries/stddev/stddev.h
+8 -8
@@ -6,13 +6,13 @@
6 #include "../query.h"
7 #include "../rrdr.h"
8
9 -extern void grouping_create_stddev(RRDR *r, const char *options __maybe_unused);
10 -extern void grouping_reset_stddev(RRDR *r);
11 -extern void grouping_free_stddev(RRDR *r);
12 -extern void grouping_add_stddev(RRDR *r, NETDATA_DOUBLE value);
13 -extern NETDATA_DOUBLE grouping_flush_stddev(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
14 -extern NETDATA_DOUBLE grouping_flush_coefficient_of_variation(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
15 -// extern NETDATA_DOUBLE grouping_flush_mean(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
16 -// extern NETDATA_DOUBLE grouping_flush_variance(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
9 +void grouping_create_stddev(RRDR *r, const char *options __maybe_unused);
10 +void grouping_reset_stddev(RRDR *r);
11 +void grouping_free_stddev(RRDR *r);
12 +void grouping_add_stddev(RRDR *r, NETDATA_DOUBLE value);
13 +NETDATA_DOUBLE grouping_flush_stddev(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
14 +NETDATA_DOUBLE grouping_flush_coefficient_of_variation(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
15 +// NETDATA_DOUBLE grouping_flush_mean(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
16 +// NETDATA_DOUBLE grouping_flush_variance(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
17
18 #endif //NETDATA_API_QUERIES_STDDEV_H
web/api/queries/sum/sum.h
+5 -5
@@ -6,10 +6,10 @@
6 #include "../query.h"
7 #include "../rrdr.h"
8
9 -extern void grouping_create_sum(RRDR *r, const char *options __maybe_unused);
10 -extern void grouping_reset_sum(RRDR *r);
11 -extern void grouping_free_sum(RRDR *r);
12 -extern void grouping_add_sum(RRDR *r, NETDATA_DOUBLE value);
13 -extern NETDATA_DOUBLE grouping_flush_sum(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
9 +void grouping_create_sum(RRDR *r, const char *options __maybe_unused);
10 +void grouping_reset_sum(RRDR *r);
11 +void grouping_free_sum(RRDR *r);
12 +void grouping_add_sum(RRDR *r, NETDATA_DOUBLE value);
13 +NETDATA_DOUBLE grouping_flush_sum(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
14
15 #endif //NETDATA_API_QUERY_SUM_H
web/api/queries/trimmed_mean/trimmed_mean.h
+12 -12
@@ -6,17 +6,17 @@
6 #include "../query.h"
7 #include "../rrdr.h"
8
9 -extern void grouping_create_trimmed_mean1(RRDR *r, const char *options);
10 -extern void grouping_create_trimmed_mean2(RRDR *r, const char *options);
11 -extern void grouping_create_trimmed_mean3(RRDR *r, const char *options);
12 -extern void grouping_create_trimmed_mean5(RRDR *r, const char *options);
13 -extern void grouping_create_trimmed_mean10(RRDR *r, const char *options);
14 -extern void grouping_create_trimmed_mean15(RRDR *r, const char *options);
15 -extern void grouping_create_trimmed_mean20(RRDR *r, const char *options);
16 -extern void grouping_create_trimmed_mean25(RRDR *r, const char *options);
17 -extern void grouping_reset_trimmed_mean(RRDR *r);
18 -extern void grouping_free_trimmed_mean(RRDR *r);
19 -extern void grouping_add_trimmed_mean(RRDR *r, NETDATA_DOUBLE value);
20 -extern NETDATA_DOUBLE grouping_flush_trimmed_mean(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
9 +void grouping_create_trimmed_mean1(RRDR *r, const char *options);
10 +void grouping_create_trimmed_mean2(RRDR *r, const char *options);
11 +void grouping_create_trimmed_mean3(RRDR *r, const char *options);
12 +void grouping_create_trimmed_mean5(RRDR *r, const char *options);
13 +void grouping_create_trimmed_mean10(RRDR *r, const char *options);
14 +void grouping_create_trimmed_mean15(RRDR *r, const char *options);
15 +void grouping_create_trimmed_mean20(RRDR *r, const char *options);
16 +void grouping_create_trimmed_mean25(RRDR *r, const char *options);
17 +void grouping_reset_trimmed_mean(RRDR *r);
18 +void grouping_free_trimmed_mean(RRDR *r);
19 +void grouping_add_trimmed_mean(RRDR *r, NETDATA_DOUBLE value);
20 +NETDATA_DOUBLE grouping_flush_trimmed_mean(RRDR *r, RRDR_VALUE_FLAGS *rrdr_value_options_ptr);
21
22 #endif //NETDATA_API_QUERIES_TRIMMED_MEAN_H
web/api/queries/weights.h
+4 -4
@@ -20,14 +20,14 @@ extern int enable_metric_correlations;
20 extern int metric_correlations_version;
21 extern WEIGHTS_METHOD default_metric_correlations_method;
22
23 -extern int web_api_v1_weights (RRDHOST *host, BUFFER *wb, WEIGHTS_METHOD method, WEIGHTS_FORMAT format,
23 +int web_api_v1_weights (RRDHOST *host, BUFFER *wb, WEIGHTS_METHOD method, WEIGHTS_FORMAT format,
24 RRDR_GROUPING group, const char *group_options,
25 long long baseline_after, long long baseline_before,
26 long long after, long long before,
27 long long points, RRDR_OPTIONS options, SIMPLE_PATTERN *contexts, int tier, int timeout);
28
29 -extern WEIGHTS_METHOD weights_string_to_method(const char *method);
30 -extern const char *weights_method_to_string(WEIGHTS_METHOD method);
31 -extern int mc_unittest(void);
29 +WEIGHTS_METHOD weights_string_to_method(const char *method);
30 +const char *weights_method_to_string(WEIGHTS_METHOD method);
31 +int mc_unittest(void);
32
33 #endif //NETDATA_API_WEIGHTS_H
web/api/web_api_v1.h
+24 -24
@@ -10,30 +10,30 @@
10 #include "web/api/queries/weights.h"
11
12 #define MAX_CHART_LABELS_FILTER (32)
13 -extern RRDR_OPTIONS web_client_api_request_v1_data_options(char *o);
14 -extern void web_client_api_request_v1_data_options_to_string(BUFFER *wb, RRDR_OPTIONS options);
15 -
16 -extern uint32_t web_client_api_request_v1_data_format(char *name);
17 -extern uint32_t web_client_api_request_v1_data_google_format(char *name);
18 -
19 -extern int web_client_api_request_v1_alarms(RRDHOST *host, struct web_client *w, char *url);
20 -extern int web_client_api_request_v1_alarms_values(RRDHOST *host, struct web_client *w, char *url);
21 -extern int web_client_api_request_v1_alarm_log(RRDHOST *host, struct web_client *w, char *url);
22 -extern int web_client_api_request_single_chart(RRDHOST *host, struct web_client *w, char *url, void callback(RRDSET *st, BUFFER *buf));
23 -extern int web_client_api_request_v1_alarm_variables(RRDHOST *host, struct web_client *w, char *url);
24 -extern int web_client_api_request_v1_alarm_count(RRDHOST *host, struct web_client *w, char *url);
25 -extern int web_client_api_request_v1_charts(RRDHOST *host, struct web_client *w, char *url);
26 -extern int web_client_api_request_v1_archivedcharts(RRDHOST *host, struct web_client *w, char *url);
27 -extern int web_client_api_request_v1_chart(RRDHOST *host, struct web_client *w, char *url);
28 -extern int web_client_api_request_v1_data(RRDHOST *host, struct web_client *w, char *url);
29 -extern int web_client_api_request_v1_registry(RRDHOST *host, struct web_client *w, char *url);
30 -extern int web_client_api_request_v1_info(RRDHOST *host, struct web_client *w, char *url);
31 -extern int web_client_api_request_v1(RRDHOST *host, struct web_client *w, char *url);
32 -extern int web_client_api_request_v1_info_fill_buffer(RRDHOST *host, BUFFER *wb);
33 -extern void host_labels2json(RRDHOST *host, BUFFER *wb, size_t indentation);
34 -
35 -extern void web_client_api_v1_init(void);
36 -extern void web_client_api_v1_management_init(void);
13 +RRDR_OPTIONS web_client_api_request_v1_data_options(char *o);
14 +void web_client_api_request_v1_data_options_to_string(BUFFER *wb, RRDR_OPTIONS options);
15 +
16 +uint32_t web_client_api_request_v1_data_format(char *name);
17 +uint32_t web_client_api_request_v1_data_google_format(char *name);
18 +
19 +int web_client_api_request_v1_alarms(RRDHOST *host, struct web_client *w, char *url);
20 +int web_client_api_request_v1_alarms_values(RRDHOST *host, struct web_client *w, char *url);
21 +int web_client_api_request_v1_alarm_log(RRDHOST *host, struct web_client *w, char *url);
22 +int web_client_api_request_single_chart(RRDHOST *host, struct web_client *w, char *url, void callback(RRDSET *st, BUFFER *buf));
23 +int web_client_api_request_v1_alarm_variables(RRDHOST *host, struct web_client *w, char *url);
24 +int web_client_api_request_v1_alarm_count(RRDHOST *host, struct web_client *w, char *url);
25 +int web_client_api_request_v1_charts(RRDHOST *host, struct web_client *w, char *url);
26 +int web_client_api_request_v1_archivedcharts(RRDHOST *host, struct web_client *w, char *url);
27 +int web_client_api_request_v1_chart(RRDHOST *host, struct web_client *w, char *url);
28 +int web_client_api_request_v1_data(RRDHOST *host, struct web_client *w, char *url);
29 +int web_client_api_request_v1_registry(RRDHOST *host, struct web_client *w, char *url);
30 +int web_client_api_request_v1_info(RRDHOST *host, struct web_client *w, char *url);
31 +int web_client_api_request_v1(RRDHOST *host, struct web_client *w, char *url);
32 +int web_client_api_request_v1_info_fill_buffer(RRDHOST *host, BUFFER *wb);
33 +void host_labels2json(RRDHOST *host, BUFFER *wb, size_t indentation);
34 +
35 +void web_client_api_v1_init(void);
36 +void web_client_api_v1_management_init(void);
37
38 extern char *api_secret;
39
web/server/static/static-threaded.h
+1 -1
@@ -5,6 +5,6 @@
5
6 #include "web/server/web_server.h"
7
8 -extern void *socket_listen_main_static_threaded(void *ptr);
8 +void *socket_listen_main_static_threaded(void *ptr);
9
10 #endif //NETDATA_WEB_SERVER_STATIC_THREADED_H
web/server/web_client.h
+10 -10
@@ -190,21 +190,21 @@ struct web_client {
190 #endif
191 };
192
193 -extern int web_client_permission_denied(struct web_client *w);
193 +int web_client_permission_denied(struct web_client *w);
194
195 -extern ssize_t web_client_send(struct web_client *w);
196 -extern ssize_t web_client_receive(struct web_client *w);
197 -extern ssize_t web_client_read_file(struct web_client *w);
195 +ssize_t web_client_send(struct web_client *w);
196 +ssize_t web_client_receive(struct web_client *w);
197 +ssize_t web_client_read_file(struct web_client *w);
198
199 -extern void web_client_process_request(struct web_client *w);
200 -extern void web_client_request_done(struct web_client *w);
199 +void web_client_process_request(struct web_client *w);
200 +void web_client_request_done(struct web_client *w);
201
202 -extern void buffer_data_options2string(BUFFER *wb, uint32_t options);
202 +void buffer_data_options2string(BUFFER *wb, uint32_t options);
203
204 -extern int mysendfile(struct web_client *w, char *filename);
204 +int mysendfile(struct web_client *w, char *filename);
205
206 -extern void web_client_build_http_header(struct web_client *w);
207 -extern char *strip_control_characters(char *url);
206 +void web_client_build_http_header(struct web_client *w);
207 +char *strip_control_characters(char *url);
208
209 #include "daemon/common.h"
210
web/server/web_client_cache.h
+4 -4
@@ -21,10 +21,10 @@ struct clients_cache {
21
22 extern __thread struct clients_cache web_clients_cache;
23
24 -extern void web_client_release(struct web_client *w);
25 -extern struct web_client *web_client_get_from_cache_or_allocate();
26 -extern void web_client_cache_destroy(void);
27 -extern void web_client_cache_verify(int force);
24 +void web_client_release(struct web_client *w);
25 +struct web_client *web_client_get_from_cache_or_allocate();
26 +void web_client_cache_destroy(void);
27 +void web_client_cache_verify(int force);
28
29 #include "web_server.h"
30
web/server/web_server.h
+7 -7
@@ -36,10 +36,10 @@ extern int web_allow_mgmt_dns;
36
37 extern WEB_SERVER_MODE web_server_mode;
38
39 -extern WEB_SERVER_MODE web_server_mode_id(const char *mode);
40 -extern const char *web_server_mode_name(WEB_SERVER_MODE id);
39 +WEB_SERVER_MODE web_server_mode_id(const char *mode);
40 +const char *web_server_mode_name(WEB_SERVER_MODE id);
41
42 -extern void api_listen_sockets_setup(void);
42 +void api_listen_sockets_setup(void);
43
44 #define DEFAULT_TIMEOUT_TO_RECEIVE_FIRST_WEB_REQUEST 60
45 #define DEFAULT_DISCONNECT_IDLE_WEB_CLIENTS_AFTER_SECONDS 60
@@ -49,10 +49,10 @@ extern long web_client_streaming_rate_t;
49
50 #ifdef WEB_SERVER_INTERNALS
51 extern LISTEN_SOCKETS api_sockets;
52 -extern void web_client_update_acl_matches(struct web_client *w);
53 -extern void web_server_log_connection(struct web_client *w, const char *msg);
54 -extern void web_client_initialize_connection(struct web_client *w);
55 -extern struct web_client *web_client_create_on_listenfd(int listener);
52 +void web_client_update_acl_matches(struct web_client *w);
53 +void web_server_log_connection(struct web_client *w, const char *msg);
54 +void web_client_initialize_connection(struct web_client *w);
55 +struct web_client *web_client_create_on_listenfd(int listener);
56
57 #include "web_client_cache.h"
58 #endif // WEB_SERVER_INTERNALS