// SPDX-License-Identifier: BSD-3-Clause OR Apache-2.0 #include "cla/cla.h" #include "cla/cla_contact_tx_task.h" #include "cla/posix/cla_mtcp.h" #include "cla/posix/cla_smtcp.h" #include "cla/posix/cla_tcpclv3.h" #include "cla/posix/cla_tcpspp.h" #include "cla/posix/cla_bibe.h" #include "cla/storage/cla_sqlite.h" #include "platform/hal_io.h" #include "platform/hal_time.h" #include "platform/hal_queue.h" #include "platform/hal_semaphore.h" #include "ud3tn/common.h" #include "ud3tn/result.h" #include #include #include #include #include #include struct available_cla_list_entry { const char *name; struct cla_config *(*create_func)( const char *const *options, size_t options_count, const struct bundle_agent_interface *bundle_agent_interface); }; const struct available_cla_list_entry AVAILABLE_CLAS[] = { { "mtcp", &mtcp_create }, { "smtcp", &smtcp_create }, { "tcpclv3", &tcpclv3_create }, { "tcpspp", &tcpspp_create }, { "bibe", &bibe_create }, #ifndef DISABLE_SQLITE_STORAGE { "sqlite", &sqlite_create }, #endif // DISABLE_SQLITE_STORAGE }; static enum ud3tn_result cla_register(struct cla_config *config); static enum ud3tn_result cla_unregister(struct cla_config *config); static enum ud3tn_result initialize_single( char *cur_cla_config, const struct bundle_agent_interface *bundle_agent_interface) { // NOTE that currently we only support the format :