From d7b324c04b4b353270216887b05e245337942b97 Mon Sep 17 00:00:00 2001 From: zhongtao Date: Mon, 24 Oct 2022 20:46:47 +0800 Subject: [PATCH 37/43] Add extend C for header files Signed-off-by: zhongtao --- src/cmd/isula/stream/attach.h | 9 +++++++++ src/cmd/isula/stream/cp.h | 8 ++++++++ src/cmd/isula/stream/exec.h | 8 ++++++++ src/daemon/modules/api/log_gather_api.h | 8 ++++++++ src/daemon/modules/api/plugin_api.h | 8 ++++++++ src/daemon/modules/container/container_events_handler.h | 8 ++++++++ .../modules/container/restart_manager/restartmanager.h | 8 ++++++++ src/daemon/modules/container/supervisor/supervisor.h | 8 ++++++++ src/daemon/modules/events/monitord.h | 8 ++++++++ src/daemon/modules/image/embedded/db/db_all.h | 8 ++++++++ src/daemon/modules/image/embedded/db/db_common.h | 8 ++++++++ src/daemon/modules/image/embedded/db/db_images_common.h | 8 ++++++++ src/daemon/modules/image/embedded/db/sqlite_common.h | 8 ++++++++ src/daemon/modules/image/embedded/embedded_image.h | 8 ++++++++ src/daemon/modules/image/embedded/lim.h | 8 ++++++++ src/daemon/modules/image/embedded/snapshot/embedded.h | 8 ++++++++ src/daemon/modules/image/embedded/snapshot/snapshot.h | 8 ++++++++ .../modules/image/embedded/snapshot/snapshot_def.h | 7 +++++++ src/daemon/modules/image/external/ext_image.h | 8 ++++++++ src/daemon/modules/image/oci/registry_type.h | 8 ++++++++ .../graphdriver/devmapper/devices_constants.h | 8 ++++++++ src/daemon/modules/plugin/pspec.h | 8 ++++++++ src/daemon/modules/spec/specs_mount.h | 8 ++++++++ src/daemon/modules/spec/specs_security.h | 8 ++++++++ src/utils/buffer/buffer.h | 8 ++++++++ src/utils/cutils/linked_list.h | 8 ++++++++ src/utils/http/parser.h | 8 ++++++++ 27 files changed, 216 insertions(+) diff --git a/src/cmd/isula/stream/attach.h b/src/cmd/isula/stream/attach.h index 2e71852b..9792da9d 100644 --- a/src/cmd/isula/stream/attach.h +++ b/src/cmd/isula/stream/attach.h @@ -18,9 +18,18 @@ #include "client_arguments.h" #include "isula_libutils/container_inspect.h" +#ifdef __cplusplus +extern "C" { +#endif + extern const char g_cmd_attach_desc[]; extern const char g_cmd_attach_usage[]; extern struct client_arguments g_cmd_attach_args; int inspect_container(const struct client_arguments *args, container_inspect **inspect_data); int cmd_attach_main(int argc, const char **argv); + +#ifdef __cplusplus +} +#endif + #endif // CMD_ISULA_STREAM_ATTACH_H diff --git a/src/cmd/isula/stream/cp.h b/src/cmd/isula/stream/cp.h index 821a3887..491d5421 100644 --- a/src/cmd/isula/stream/cp.h +++ b/src/cmd/isula/stream/cp.h @@ -17,9 +17,17 @@ #include "client_arguments.h" +#ifdef __cplusplus +extern "C" { +#endif + extern const char g_cmd_cp_desc[]; extern const char g_cmd_cp_usage[]; extern struct client_arguments g_cmd_cp_args; int cmd_cp_main(int argc, const char **argv); +#ifdef __cplusplus +} +#endif + #endif // CMD_ISULA_STREAM_CP_H diff --git a/src/cmd/isula/stream/exec.h b/src/cmd/isula/stream/exec.h index 6161c62f..d507d71e 100644 --- a/src/cmd/isula/stream/exec.h +++ b/src/cmd/isula/stream/exec.h @@ -22,6 +22,10 @@ #include "attach.h" #include "command_parser.h" +#ifdef __cplusplus +extern "C" { +#endif + #define EXEC_OPTIONS(cmdargs) \ { \ CMD_OPT_TYPE_CALLBACK, false, "env", 'e', &(cmdargs).extra_env, "Set environment variables", \ @@ -51,4 +55,8 @@ extern const char g_cmd_exec_usage[]; extern struct client_arguments g_cmd_exec_args; int cmd_exec_main(int argc, const char **argv); +#ifdef __cplusplus +} +#endif + #endif // CMD_ISULA_STREAM_EXEC_H diff --git a/src/daemon/modules/api/log_gather_api.h b/src/daemon/modules/api/log_gather_api.h index b72a5800..2c98ff11 100644 --- a/src/daemon/modules/api/log_gather_api.h +++ b/src/daemon/modules/api/log_gather_api.h @@ -22,6 +22,10 @@ #define REV_BUF_SIZE 4096 +#ifdef __cplusplus +extern "C" { +#endif + struct log_gather_conf { const char *fifo_path; int *exitcode; @@ -40,5 +44,9 @@ enum log_gather_driver { void *log_gather(void *arg); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/api/plugin_api.h b/src/daemon/modules/api/plugin_api.h index 303ba6bf..bf138ec1 100644 --- a/src/daemon/modules/api/plugin_api.h +++ b/src/daemon/modules/api/plugin_api.h @@ -41,6 +41,10 @@ #define PLUGIN_EVENT_CONTAINER_POST_STOP (1UL << 2) #define PLUGIN_EVENT_CONTAINER_POST_REMOVE (1UL << 3) +#ifdef __cplusplus +extern "C" { +#endif + typedef struct plugin_manifest { uint64_t init_type; uint64_t watch_event; @@ -109,4 +113,8 @@ int plugin_event_container_post_stop(const container_t *cont); int plugin_event_container_post_remove(const container_t *cont); int plugin_event_container_post_remove2(const char *cid, const oci_runtime_spec *oci); +#ifdef __cplusplus +} +#endif + #endif // DAEMON_MODULES_API_PLUGIN_API_H diff --git a/src/daemon/modules/container/container_events_handler.h b/src/daemon/modules/container/container_events_handler.h index f38f293d..77cf5d06 100644 --- a/src/daemon/modules/container/container_events_handler.h +++ b/src/daemon/modules/container/container_events_handler.h @@ -22,10 +22,18 @@ #include "container_api.h" #include "events_format.h" +#ifdef __cplusplus +extern "C" { +#endif + container_events_handler_t *container_events_handler_new(); void container_events_handler_free(container_events_handler_t *handler); int container_events_handler_post_events(const struct isulad_events_format *event); +#ifdef __cplusplus +} +#endif + #endif // DAEMON_MODULES_CONTAINER_CONTAINER_EVENTS_HANDLER_H diff --git a/src/daemon/modules/container/restart_manager/restartmanager.h b/src/daemon/modules/container/restart_manager/restartmanager.h index 1f5f13b3..106343b2 100644 --- a/src/daemon/modules/container/restart_manager/restartmanager.h +++ b/src/daemon/modules/container/restart_manager/restartmanager.h @@ -22,6 +22,10 @@ #include "isula_libutils/host_config.h" #include "container_api.h" +#ifdef __cplusplus +extern "C" { +#endif + void restart_policy_free(host_config_restart_policy *policy); restart_manager_t *restart_manager_new(const host_config_restart_policy *policy, int failure_count); @@ -43,4 +47,8 @@ int restart_manager_wait_cancel(restart_manager_t *rm, uint64_t timeout); int container_restart_in_thread(const char *id, uint64_t timeout, int exit_code); +#ifdef __cplusplus +} +#endif + #endif // DAEMON_MODULES_CONTAINER_RESTART_MANAGER_RESTARTMANAGER_H diff --git a/src/daemon/modules/container/supervisor/supervisor.h b/src/daemon/modules/container/supervisor/supervisor.h index e5b5a2e7..2b208c5a 100644 --- a/src/daemon/modules/container/supervisor/supervisor.h +++ b/src/daemon/modules/container/supervisor/supervisor.h @@ -19,8 +19,16 @@ #include "container_unix.h" +#ifdef __cplusplus +extern "C" { +#endif + extern char *exit_fifo_name(const char *cont_state_path); extern int new_supervisor(); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/events/monitord.h b/src/daemon/modules/events/monitord.h index beace80e..1741983d 100644 --- a/src/daemon/modules/events/monitord.h +++ b/src/daemon/modules/events/monitord.h @@ -20,6 +20,10 @@ #include "utils.h" +#ifdef __cplusplus +extern "C" { +#endif + struct monitord_sync_data { sem_t *monitord_sem; int *exit_code; @@ -27,4 +31,8 @@ struct monitord_sync_data { int new_monitord(struct monitord_sync_data *msync); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/image/embedded/db/db_all.h b/src/daemon/modules/image/embedded/db/db_all.h index 9fbe2729..e72777c2 100644 --- a/src/daemon/modules/image/embedded/db/db_all.h +++ b/src/daemon/modules/image/embedded/db/db_all.h @@ -20,6 +20,10 @@ #include #include "db_common.h" +#ifdef __cplusplus +extern "C" { +#endif + struct db_sninfo { char *snid; char *parent_snid; @@ -73,5 +77,9 @@ int db_read_all_images_info(struct db_all_images **image_info); void db_all_imginfo_free(struct db_all_images *images_info); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/image/embedded/db/db_common.h b/src/daemon/modules/image/embedded/db/db_common.h index ab83599f..8ed1138c 100644 --- a/src/daemon/modules/image/embedded/db/db_common.h +++ b/src/daemon/modules/image/embedded/db/db_common.h @@ -25,9 +25,17 @@ #define DB_DEREF_ONLY 4 #define DB_NOT_EXIST 5 +#ifdef __cplusplus +extern "C" { +#endif + int db_common_init(const char *rootpath); void db_common_finish(void); +#ifdef __cplusplus +} +#endif + #endif // DAEMON_MODULES_IMAGE_EMBEDDED_DB_DB_COMMON_H diff --git a/src/daemon/modules/image/embedded/db/db_images_common.h b/src/daemon/modules/image/embedded/db/db_images_common.h index 1fde16cc..a35ea49f 100644 --- a/src/daemon/modules/image/embedded/db/db_images_common.h +++ b/src/daemon/modules/image/embedded/db/db_images_common.h @@ -17,6 +17,10 @@ #include +#ifdef __cplusplus +extern "C" { +#endif + /* common interface definition for database */ struct db_single_image_info { @@ -32,5 +36,9 @@ struct db_all_images_info { struct db_single_image_info **images_info; }; +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/image/embedded/db/sqlite_common.h b/src/daemon/modules/image/embedded/db/sqlite_common.h index 7562932c..8c5db83a 100644 --- a/src/daemon/modules/image/embedded/db/sqlite_common.h +++ b/src/daemon/modules/image/embedded/db/sqlite_common.h @@ -19,6 +19,10 @@ #define DBNAME "sqlite.db" +#ifdef __cplusplus +extern "C" { +#endif + typedef int(*sqlite_callback_t)(void *, int, char **, char **); sqlite3 *get_global_db(); @@ -32,5 +36,9 @@ int db_sqlite_request(const char *stmt); int db_sqlite_request_callback(const char *stmt, sqlite_callback_t callback, void *data); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/image/embedded/embedded_image.h b/src/daemon/modules/image/embedded/embedded_image.h index 2177a40b..b1fafacf 100644 --- a/src/daemon/modules/image/embedded/embedded_image.h +++ b/src/daemon/modules/image/embedded/embedded_image.h @@ -18,6 +18,10 @@ #include #include "image_api.h" +#ifdef __cplusplus +extern "C" { +#endif + bool embedded_detect(const char *image_name); int embedded_prepare_rf(const im_prepare_request *request, char **real_rootfs); @@ -48,4 +52,8 @@ int embedded_init(const isulad_daemon_configs *args); void embedded_exit(); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/image/embedded/lim.h b/src/daemon/modules/image/embedded/lim.h index cb21884e..fb5bb414 100644 --- a/src/daemon/modules/image/embedded/lim.h +++ b/src/daemon/modules/image/embedded/lim.h @@ -22,6 +22,10 @@ #define IMAGE_DATA_TYPE_CONFIG "config" #define IMAGE_DATA_TYPE_CONFIG_PATH "config_path" +#ifdef __cplusplus +extern "C" { +#endif + struct image_creator { char *name; char *type; @@ -56,5 +60,9 @@ int lim_query_image_data(const char *name, const char *type, int lim_create_rw_layer(char *name, const char *id, char **options, char **mount_string); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/image/embedded/snapshot/embedded.h b/src/daemon/modules/image/embedded/snapshot/embedded.h index eaf4b588..e0cf7bab 100644 --- a/src/daemon/modules/image/embedded/snapshot/embedded.h +++ b/src/daemon/modules/image/embedded/snapshot/embedded.h @@ -19,6 +19,10 @@ #include "linked_list.h" #include "snapshot_def.h" +#ifdef __cplusplus +extern "C" { +#endif + struct snapshot_plugin ebd_plugin(); int ebd_create_layer(char *id, char *parent, uint32_t layer_attribute, @@ -31,5 +35,9 @@ int ebd_apply_diff(char *id, char *parent, char *archive, char *metadata); int ebd_generate_mount_string(struct db_image *imginfo, struct db_sninfo **sninfos, char **mount_string); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/image/embedded/snapshot/snapshot.h b/src/daemon/modules/image/embedded/snapshot/snapshot.h index dd2e42e7..fae6c8da 100644 --- a/src/daemon/modules/image/embedded/snapshot/snapshot.h +++ b/src/daemon/modules/image/embedded/snapshot/snapshot.h @@ -22,11 +22,19 @@ #include "db_all.h" +#ifdef __cplusplus +extern "C" { +#endif + int snapshot_init(uint32_t driver_type); int snapshot_generate_mount_string(uint32_t driver_type, struct db_image *imginfo, struct db_sninfo **sninfos, char **mount_string); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/image/embedded/snapshot/snapshot_def.h b/src/daemon/modules/image/embedded/snapshot/snapshot_def.h index fbc2c791..eaf397a6 100644 --- a/src/daemon/modules/image/embedded/snapshot/snapshot_def.h +++ b/src/daemon/modules/image/embedded/snapshot/snapshot_def.h @@ -26,6 +26,10 @@ #define LAYER_NUM_MAX 125 +#ifdef __cplusplus +extern "C" { +#endif + typedef int(*create_layer_cb)(char *id, char *parent, uint32_t layer_attribute, char **options, char **mount_string); @@ -44,6 +48,9 @@ struct snapshot_plugin { generate_mount_string_cb gms; }; +#ifdef __cplusplus +} +#endif #endif diff --git a/src/daemon/modules/image/external/ext_image.h b/src/daemon/modules/image/external/ext_image.h index ded2b8ca..17ef4d98 100644 --- a/src/daemon/modules/image/external/ext_image.h +++ b/src/daemon/modules/image/external/ext_image.h @@ -26,6 +26,10 @@ #include "image_api.h" +#ifdef __cplusplus +extern "C" { +#endif + bool ext_detect(const char *image_name); int ext_filesystem_usage(const im_container_fs_usage_request *request, imagetool_fs_info **fs_usage); @@ -46,4 +50,8 @@ int ext_logout(const im_logout_request *request); int ext_init(const isulad_daemon_configs *args); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/image/oci/registry_type.h b/src/daemon/modules/image/oci/registry_type.h index 11135250..bfc77f4a 100644 --- a/src/daemon/modules/image/oci/registry_type.h +++ b/src/daemon/modules/image/oci/registry_type.h @@ -29,6 +29,10 @@ #define MAX_LAYER_NUM 125 #define ROOTFS_TYPE "layers" +#ifdef __cplusplus +extern "C" { +#endif + typedef struct { char *schema; char *realm; @@ -132,4 +136,8 @@ void free_challenge(challenge *c); void free_layer_blob(layer_blob *layer); void free_pull_desc(pull_descriptor *desc); +#ifdef __cplusplus +} +#endif + #endif // DAEMON_MODULES_IMAGE_OCI_REGISTRY_TYPE_H diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/devices_constants.h b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/devices_constants.h index 5b3db2bd..01bbfef7 100644 --- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/devices_constants.h +++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/devices_constants.h @@ -35,6 +35,10 @@ #define DEFAULT_DEVICE_SET_MODE 0700 +#ifdef __cplusplus +extern "C" { +#endif + typedef struct { map_t *map; // map string image_devmapper_device_info* key string will be strdup value ptr will not } metadata_store_t; @@ -73,4 +77,8 @@ struct device_set { bool user_base_size; }; +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/plugin/pspec.h b/src/daemon/modules/plugin/pspec.h index 618159b1..0ad26848 100644 --- a/src/daemon/modules/plugin/pspec.h +++ b/src/daemon/modules/plugin/pspec.h @@ -19,6 +19,10 @@ #include "isula_libutils/oci_runtime_spec.h" #include "isula_libutils/oci_runtime_pspec.h" +#ifdef __cplusplus +extern "C" { +#endif + /* * extract pspec from oci. * return NULL when failed. oci not modified. @@ -39,5 +43,9 @@ int set_pspec(oci_runtime_spec *oci, const char *data); */ char *merge_pspec(const char *base, const char *data); +#ifdef __cplusplus +} +#endif + #endif // DAEMON_MODULES_PLUGIN_PSPEC_H diff --git a/src/daemon/modules/spec/specs_mount.h b/src/daemon/modules/spec/specs_mount.h index 07c07a37..3283d92b 100644 --- a/src/daemon/modules/spec/specs_mount.h +++ b/src/daemon/modules/spec/specs_mount.h @@ -26,6 +26,10 @@ #include "isula_libutils/oci_runtime_hooks.h" #include "isula_libutils/oci_runtime_spec.h" +#ifdef __cplusplus +extern "C" { +#endif + int adapt_settings_for_mounts(oci_runtime_spec *oci_spec, container_config *container_spec); int merge_conf_mounts(oci_runtime_spec *oci_spec, host_config *host_spec, @@ -43,4 +47,8 @@ int merge_conf_device(oci_runtime_spec *oci_spec, host_config *host_spec); int setup_ipc_dirs(host_config *host_spec, container_config_v2_common_config *v2_spec); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/daemon/modules/spec/specs_security.h b/src/daemon/modules/spec/specs_security.h index f33814d2..37315a95 100644 --- a/src/daemon/modules/spec/specs_security.h +++ b/src/daemon/modules/spec/specs_security.h @@ -25,6 +25,10 @@ #include "isula_libutils/container_config_v2.h" #include "isula_libutils/oci_runtime_spec.h" +#ifdef __cplusplus +extern "C" { +#endif + int merge_default_seccomp_spec(oci_runtime_spec *oci_spec, const defs_process_capabilities *capabilities); int merge_caps(oci_runtime_spec *oci_spec, const char **adds, size_t adds_len, const char **drops, size_t drops_len); int refill_oci_process_capabilities(defs_process_capabilities **caps, const char **src_caps, size_t src_caps_len); @@ -36,4 +40,8 @@ int merge_seccomp(oci_runtime_spec *oci_spec, const char *seccomp_profile); int merge_selinux(oci_runtime_spec *oci_spec, container_config_v2_common_config *v2_spec); #endif +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/utils/buffer/buffer.h b/src/utils/buffer/buffer.h index 168a61f6..83276100 100644 --- a/src/utils/buffer/buffer.h +++ b/src/utils/buffer/buffer.h @@ -19,6 +19,10 @@ #include #include +#ifdef __cplusplus +extern "C" { +#endif + struct Buffer { char *contents; size_t bytes_used; @@ -32,4 +36,8 @@ size_t buffer_strlen(const Buffer *buf); void buffer_free(Buffer *buf); int buffer_append(Buffer *buf, const char *append, size_t len); void buffer_empty(Buffer *buf); + +#ifdef __cplusplus +} +#endif #endif diff --git a/src/utils/cutils/linked_list.h b/src/utils/cutils/linked_list.h index 59acb2a8..3a87990a 100644 --- a/src/utils/cutils/linked_list.h +++ b/src/utils/cutils/linked_list.h @@ -17,6 +17,10 @@ #include +#ifdef __cplusplus +extern "C" { +#endif + struct linked_list { void *elem; struct linked_list *next; @@ -122,5 +126,9 @@ static inline size_t linked_list_len(struct linked_list *list) return i; } +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/utils/http/parser.h b/src/utils/http/parser.h index 9a37bd7f..ce5fe5e7 100644 --- a/src/utils/http/parser.h +++ b/src/utils/http/parser.h @@ -55,6 +55,10 @@ #define MIN(a, b) ((a) < (b) ? (a) : (b)) +#ifdef __cplusplus +extern "C" { +#endif + struct parsed_http_message { enum http_method method; int status_code; @@ -88,5 +92,9 @@ int parse_http(const char *buf, size_t len, struct parsed_http_message *m, enum http_parser_type type); char *get_header_value(const struct parsed_http_message *m, const char *header); +#ifdef __cplusplus +} +#endif + #endif -- 2.25.1