NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
doca_apsh.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2021-2022 NVIDIA CORPORATION & AFFILIATES, ALL RIGHTS RESERVED.
3  *
4  * This software product is a proprietary product of NVIDIA CORPORATION &
5  * AFFILIATES (the "Company") and all right, title, and interest in and to the
6  * software product, including all associated intellectual property rights, are
7  * and shall remain exclusively with the Company.
8  *
9  * This software product is governed by the End User License Agreement
10  * provided with the software product.
11  *
12  */
13 
26 #ifndef _DOCA_APSH__H_
27 #define _DOCA_APSH__H_
28 
29 #include <stdint.h>
30 
31 #include <doca_compat.h>
32 #include <doca_error.h>
33 #include <doca_apsh_attr.h>
34 
35 #ifdef __cplusplus
36 extern "C" {
37 #endif
38 
39 /**********************************************************************************************************************
40  * DOCA core opaque types
41  *********************************************************************************************************************/
42 
43 struct doca_dev;
44 
48 struct doca_apsh_ctx;
49 
55 struct doca_apsh_system;
56 
62 struct doca_apsh_module;
63 
69 struct doca_apsh_process;
70 
76 struct doca_apsh_thread;
77 
83 struct doca_apsh_lib;
84 
88 struct doca_apsh_vad;
89 
95 struct doca_apsh_attestation;
96 
102 struct doca_apsh_privilege;
103 
109 struct doca_apsh_envar;
110 
116 struct doca_apsh_ldrmodule;
117 
123 struct doca_apsh_handle;
124 
130 struct doca_apsh_process_parameters;
131 
137 struct doca_apsh_sid;
138 
144 struct doca_apsh_netscan;
145 
151 struct doca_apsh_interface;
152 
158 struct doca_apsh_yara;
159 
165 struct doca_apsh_injection_detect;
166 
172 struct doca_apsh_container;
173 
179 struct doca_apsh_proc_file_details;
180 
191 struct doca_apsh_ctx *doca_apsh_create(void);
192 
209 doca_error_t doca_apsh_start(struct doca_apsh_ctx *ctx);
210 
218 void doca_apsh_destroy(struct doca_apsh_ctx *ctx);
219 
236 doca_error_t doca_apsh_dma_dev_set(struct doca_apsh_ctx *ctx, struct doca_dev *dma_dev);
237 
250 struct doca_apsh_system *doca_apsh_system_create(struct doca_apsh_ctx *ctx);
251 
261 void doca_apsh_system_destroy(struct doca_apsh_system *system);
262 
280 doca_error_t doca_apsh_system_start(struct doca_apsh_system *system);
281 
301 doca_error_t doca_apsh_sys_os_symbol_map_set(struct doca_apsh_system *system, const char *system_os_symbol_map_path);
302 
324 doca_error_t doca_apsh_sys_os_symbol_map_folder_set(struct doca_apsh_system *system,
325  const char *system_os_symbol_folder_path);
326 
347 doca_error_t doca_apsh_sys_mem_region_set(struct doca_apsh_system *system, const char *system_mem_region_path);
348 
368 doca_error_t doca_apsh_sys_dev_set(struct doca_apsh_system *system, struct doca_dev_rep *dev);
369 
387 doca_error_t doca_apsh_sys_os_type_set(struct doca_apsh_system *system, enum doca_apsh_system_os os_type);
388 
406 doca_error_t doca_apsh_sys_kpgd_file_set(struct doca_apsh_system *system, const char *system_kpgd_file_path);
407 
424 doca_error_t doca_apsh_sys_set_scan_window_size(struct doca_apsh_system *system, uint32_t scan_window_size);
425 
443 doca_error_t doca_apsh_sys_set_scan_window_step(struct doca_apsh_system *system, uint32_t scan_window_step);
444 
465 doca_error_t __doca_apsh_sys_config(struct doca_apsh_system *system,
467  void *value);
468 
488 #define doca_apsh_sys_config(system, attr, value) (__doca_apsh_sys_config(system, attr, (void *)((uintptr_t)value)))
489 
511 doca_error_t doca_apsh_modules_get(struct doca_apsh_system *system,
512  struct doca_apsh_module ***modules,
513  int *modules_size);
514 
522 void doca_apsh_module_free(struct doca_apsh_module **modules);
523 
537 const void *__doca_apsh_module_info_get(struct doca_apsh_module *module, enum doca_apsh_module_attr attr);
538 
553 #define doca_apsh_module_info_get(module, attr) ((attr##_TYPE)(uintptr_t)__doca_apsh_module_info_get(module, attr))
554 
576 doca_error_t doca_apsh_processes_get(struct doca_apsh_system *system,
577  struct doca_apsh_process ***processes,
578  int *processes_size);
579 
587 void doca_apsh_processes_free(struct doca_apsh_process **processes);
588 
602 const void *__doca_apsh_process_info_get(struct doca_apsh_process *process, enum doca_apsh_process_attr attr);
603 
618 #define doca_apsh_process_info_get(process, attr) ((attr##_TYPE)(uintptr_t)__doca_apsh_process_info_get(process, attr))
619 
642 doca_error_t doca_apsh_libs_get(struct doca_apsh_process *process, struct doca_apsh_lib ***libs, int *libs_size);
643 
651 void doca_apsh_libs_free(struct doca_apsh_lib **libs);
652 
666 const void *__doca_apsh_lib_info_get(struct doca_apsh_lib *lib, enum doca_apsh_lib_attr attr);
667 
682 #define doca_apsh_lib_info_get(lib, attr) ((attr##_TYPE)(uintptr_t)__doca_apsh_lib_info_get(lib, attr))
683 
706 doca_error_t doca_apsh_threads_get(struct doca_apsh_process *process,
707  struct doca_apsh_thread ***threads,
708  int *threads_size);
709 
717 void doca_apsh_threads_free(struct doca_apsh_thread **threads);
718 
732 const void *__doca_apsh_thread_info_get(struct doca_apsh_thread *thread, enum doca_apsh_thread_attr attr);
733 
748 #define doca_apsh_thread_info_get(thread, attr) ((attr##_TYPE)(uintptr_t)__doca_apsh_thread_info_get(thread, attr))
749 
773 doca_error_t doca_apsh_vads_get(struct doca_apsh_process *process, struct doca_apsh_vad ***vads, int *vads_size);
774 
782 void doca_apsh_vads_free(struct doca_apsh_vad **vads);
783 
797 const void *__doca_apsh_vad_info_get(struct doca_apsh_vad *vad, enum doca_apsh_vad_attr attr);
798 
813 #define doca_apsh_vad_info_get(vad, attr) ((attr##_TYPE)(uintptr_t)__doca_apsh_vad_info_get(vad, attr))
814 
841 doca_error_t doca_apsh_attestation_get(struct doca_apsh_process *process,
842  const char *exec_hash_map_path,
843  struct doca_apsh_attestation ***attestation,
844  int *attestation_size);
845 
853 void doca_apsh_attestation_free(struct doca_apsh_attestation **attestation);
854 
868 const void *__doca_apsh_attst_info_get(struct doca_apsh_attestation *attestation, enum doca_apsh_attestation_attr attr);
869 
884 #define doca_apsh_attst_info_get(attestation, attr) \
885  ((attr##_TYPE)(uintptr_t)__doca_apsh_attst_info_get(attestation, attr))
886 
907 doca_error_t doca_apsh_attst_refresh(struct doca_apsh_attestation ***attestation, int *attestation_size);
908 
934 doca_error_t doca_apsh_privileges_get(struct doca_apsh_process *process,
935  struct doca_apsh_privilege ***privileges,
936  int *privileges_size);
937 
945 void doca_apsh_privileges_free(struct doca_apsh_privilege **privileges);
946 
960 const void *__doca_apsh_privilege_info_get(struct doca_apsh_privilege *privilege, enum doca_apsh_privilege_attr attr);
961 
976 #define doca_apsh_privilege_info_get(privilege, attr) \
977  ((attr##_TYPE)(uintptr_t)__doca_apsh_privilege_info_get(privilege, attr))
978 
1004 doca_error_t doca_apsh_envars_get(struct doca_apsh_process *process,
1005  struct doca_apsh_envar ***envars,
1006  int *envars_size);
1007 
1015 void doca_apsh_envars_free(struct doca_apsh_envar **envars);
1016 
1030 const void *__doca_apsh_envar_info_get(struct doca_apsh_envar *envar, enum doca_apsh_envar_attr attr);
1031 
1046 #define doca_apsh_envar_info_get(envar, attr) ((attr##_TYPE)(uintptr_t)__doca_apsh_envar_info_get(envar, attr))
1047 
1073 doca_error_t doca_apsh_ldrmodules_get(struct doca_apsh_process *process,
1074  struct doca_apsh_ldrmodule ***ldrmodules,
1075  int *ldrmodules_size);
1076 
1084 void doca_apsh_ldrmodules_free(struct doca_apsh_ldrmodule **ldrmodules);
1085 
1099 const void *__doca_apsh_ldrmodule_info_get(struct doca_apsh_ldrmodule *ldrmodule, enum doca_apsh_ldrmodule_attr attr);
1100 
1115 #define doca_apsh_ldrmodule_info_get(ldrmodule, attr) \
1116  ((attr##_TYPE)(uintptr_t)__doca_apsh_ldrmodule_info_get(ldrmodule, attr))
1117 
1143 doca_error_t doca_apsh_handles_get(struct doca_apsh_process *process,
1144  struct doca_apsh_handle ***handles,
1145  int *handles_size);
1146 
1154 void doca_apsh_handles_free(struct doca_apsh_handle **handles);
1155 
1169 const void *__doca_apsh_handle_info_get(struct doca_apsh_handle *handle, enum doca_apsh_handle_attr attr);
1170 
1185 #define doca_apsh_handle_info_get(handle, attr) ((attr##_TYPE)(uintptr_t)__doca_apsh_handle_info_get(handle, attr))
1186 
1211 doca_error_t doca_apsh_process_parameters_get(struct doca_apsh_process *process,
1212  struct doca_apsh_process_parameters **process_parameters);
1213 
1221 void doca_apsh_process_parameters_free(struct doca_apsh_process_parameters *process_parameters);
1222 
1236 const void *__doca_apsh_process_parameters_info_get(struct doca_apsh_process_parameters *process_parameters,
1238 
1253 #define doca_apsh_process_parameters_info_get(process_parameters, attr) \
1254  ((attr##_TYPE)(uintptr_t)__doca_apsh_process_parameters_info_get(process_parameters, attr))
1255 
1281 doca_error_t doca_apsh_sids_get(struct doca_apsh_process *process, struct doca_apsh_sid ***sids, int *sids_size);
1282 
1290 void doca_apsh_sids_free(struct doca_apsh_sid **sids);
1291 
1305 const void *__doca_apsh_sid_info_get(struct doca_apsh_sid *sid, enum doca_apsh_sid_attr attr);
1306 
1321 #define doca_apsh_sid_info_get(sid, attr) ((attr##_TYPE)(uintptr_t)__doca_apsh_sid_info_get(sid, attr))
1322 
1355 doca_error_t doca_apsh_netscan_get(struct doca_apsh_system *system,
1356  struct doca_apsh_netscan ***connections,
1357  int *connections_size);
1358 
1390 doca_error_t doca_apsh_process_netscan_get(struct doca_apsh_process *process,
1391  struct doca_apsh_netscan ***connections,
1392  int *connections_size);
1393 
1401 void doca_apsh_netscan_free(struct doca_apsh_netscan **connections);
1402 
1416 const void *__doca_apsh_netscan_info_get(struct doca_apsh_netscan *connection, enum doca_apsh_netscan_attr attr);
1417 
1432 #define doca_apsh_netscan_info_get(connection, attr) \
1433  ((attr##_TYPE)(uintptr_t)__doca_apsh_netscan_info_get(connection, attr))
1434 
1461 doca_error_t doca_apsh_interfaces_get(struct doca_apsh_system *system,
1462  struct doca_apsh_interface ***interfaces,
1463  int *interfaces_size);
1464 
1472 void doca_apsh_interfaces_free(struct doca_apsh_interface **interfaces);
1473 
1487 const void *__doca_apsh_interface_info_get(struct doca_apsh_interface *interface, enum doca_apsh_interface_attr attr);
1488 
1505 #define doca_apsh_interface_info_get(interface, attr) \
1506  ((attr##_TYPE)(uintptr_t)__doca_apsh_interface_info_get(interface, attr))
1507 
1543 doca_error_t doca_apsh_yara_get(struct doca_apsh_process *process,
1544  enum doca_apsh_yara_rule *yara_rules_arr,
1545  uint32_t yara_rules_arr_size,
1546  uint64_t scan_type,
1547  struct doca_apsh_yara ***yara_matches,
1548  int *yara_matches_size);
1549 
1557 void doca_apsh_yara_free(struct doca_apsh_yara **yara_matches);
1558 
1572 const void *__doca_apsh_yara_info_get(struct doca_apsh_yara *yara, enum doca_apsh_yara_attr attr);
1573 
1588 #define doca_apsh_yara_info_get(yara, attr) ((attr##_TYPE)(uintptr_t)__doca_apsh_yara_info_get(yara, attr))
1589 
1615 doca_error_t doca_apsh_injection_detect_get(struct doca_apsh_process *process,
1616  struct doca_apsh_injection_detect ***suspected_injections,
1617  int *suspected_injections_size);
1618 
1626 void doca_apsh_injection_detect_free(struct doca_apsh_injection_detect **suspected_injections);
1627 
1641 const void *__doca_apsh_injection_detect_info_get(struct doca_apsh_injection_detect *suspected_injection,
1643 
1658 #define doca_apsh_injection_detect_info_get(suspected_injection, attr) \
1659  ((attr##_TYPE)(uintptr_t)__doca_apsh_injection_detect_info_get(suspected_injection, attr))
1660 
1685 doca_error_t doca_apsh_containers_get(struct doca_apsh_system *system,
1686  struct doca_apsh_container ***containers,
1687  int *containers_size);
1688 
1696 void doca_apsh_containers_free(struct doca_apsh_container **containers);
1697 
1711 const void *__doca_apsh_container_info_get(struct doca_apsh_container *container, enum doca_apsh_container_attr attr);
1712 
1727 #define doca_apsh_container_info_get(container, attr) \
1728  ((attr##_TYPE)(uintptr_t)__doca_apsh_container_info_get(container, attr))
1729 
1751 doca_error_t doca_apsh_container_processes_get(struct doca_apsh_container *container,
1752  struct doca_apsh_process ***processes,
1753  int *processes_size);
1754 
1780 doca_error_t doca_apsh_proc_files_details_get(struct doca_apsh_process *process,
1781  struct doca_apsh_proc_file_details ***files_details,
1782  int *files_details_size);
1783 
1791 void doca_apsh_proc_files_details_free(struct doca_apsh_proc_file_details **files_details);
1792 
1806 const void *__doca_apsh_proc_file_details_info_get(struct doca_apsh_proc_file_details *file_details,
1808 
1823 #define doca_apsh_proc_file_details_info_get(file_details, attr) \
1824  ((attr##_TYPE)(uintptr_t)__doca_apsh_proc_file_details_info_get(file_details, attr))
1825 
1826 #ifdef __cplusplus
1827 }
1828 #endif
1829 
1832 #endif
doca_apsh_proc_file_details_attr
doca app shield process file details attributes
doca_apsh_interface_attr
doca app shield interface attributes
doca_apsh_envar_attr
doca app shield envars attributes
doca_apsh_privilege_attr
doca app shield privileges attributes windows privilege list can be found on: https://docs....
doca_apsh_lib_attr
doca app shield lib attributes
doca_apsh_handle_attr
doca app shield handle attributes
doca_apsh_netscan_attr
doca app shield netscan attributes
doca_apsh_ldrmodule_attr
doca app shield LDR-Modules attributes
doca_apsh_injection_detect_attr
doca app shield injection detect attributes
doca_apsh_vad_attr
doca app shield virtual address descriptor attributes
doca_apsh_system_config_attr
doca app shield configuration attributes
doca_apsh_attestation_attr
doca app shield attestation attributes
doca_apsh_process_parameters_attr
doca app shield process-parameters attributes
doca_apsh_yara_rule
available doca app shield yara rules
doca_apsh_sid_attr
doca app shield SID (security identifiers) attributes
doca_apsh_module_attr
doca app shield module attributes
doca_apsh_yara_attr
doca app shield yara attributes
doca_apsh_thread_attr
doca app shield thread attributes
doca_apsh_container_attr
doca app shield process attributes
doca_apsh_system_os
system os types
doca_apsh_process_attr
doca app shield process attributes
DOCA_EXPERIMENTAL const void * __doca_apsh_yara_info_get(struct doca_apsh_yara *yara, enum doca_apsh_yara_attr attr)
Shadow function - get attribute value for a yara.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_interfaces_get(struct doca_apsh_system *system, struct doca_apsh_interface ***interfaces, int *interfaces_size)
Get array of all interfaces.
DOCA_EXPERIMENTAL void doca_apsh_netscan_free(struct doca_apsh_netscan **connections)
Destroys a netscan context.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_process_netscan_get(struct doca_apsh_process *process, struct doca_apsh_netscan ***connections, int *connections_size)
Get array of current connections for a specified process.
DOCA_EXPERIMENTAL void doca_apsh_threads_free(struct doca_apsh_thread **threads)
Destroys a threads context.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_sys_kpgd_file_set(struct doca_apsh_system *system, const char *system_kpgd_file_path)
Set system kpgd file.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_sys_set_scan_window_step(struct doca_apsh_system *system, uint32_t scan_window_step)
Set system yara scan window step.
DOCA_EXPERIMENTAL const void * __doca_apsh_attst_info_get(struct doca_apsh_attestation *attestation, enum doca_apsh_attestation_attr attr)
Shadow function - get attribute value for a attestation.
DOCA_EXPERIMENTAL const void * __doca_apsh_sid_info_get(struct doca_apsh_sid *sid, enum doca_apsh_sid_attr attr)
Shadow function - get attribute value for a SID.
DOCA_EXPERIMENTAL const void * __doca_apsh_lib_info_get(struct doca_apsh_lib *lib, enum doca_apsh_lib_attr attr)
Shadow function - get attribute value for a lib.
DOCA_EXPERIMENTAL const void * __doca_apsh_process_parameters_info_get(struct doca_apsh_process_parameters *process_parameters, enum doca_apsh_process_parameters_attr attr)
Shadow function - get attribute value for a process-parameter.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_sys_os_symbol_map_folder_set(struct doca_apsh_system *system, const char *system_os_symbol_folder_path)
Set folder that system os symbol map files.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_proc_files_details_get(struct doca_apsh_process *process, struct doca_apsh_proc_file_details ***files_details, int *files_details_size)
Get array of metadata on current process executable files and libraries.
DOCA_EXPERIMENTAL const void * __doca_apsh_vad_info_get(struct doca_apsh_vad *vad, enum doca_apsh_vad_attr attr)
Shadow function - get attribute value for a vad.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_privileges_get(struct doca_apsh_process *process, struct doca_apsh_privilege ***privileges, int *privileges_size)
Get array of current process privileges.
DOCA_EXPERIMENTAL const void * __doca_apsh_injection_detect_info_get(struct doca_apsh_injection_detect *suspected_injection, enum doca_apsh_injection_detect_attr attr)
Shadow function - get attribute value for a suspected_injection.
DOCA_EXPERIMENTAL void doca_apsh_injection_detect_free(struct doca_apsh_injection_detect **suspected_injections)
Destroys an injection_detect context.
DOCA_EXPERIMENTAL void doca_apsh_libs_free(struct doca_apsh_lib **libs)
Destroys a libs context.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_sys_mem_region_set(struct doca_apsh_system *system, const char *system_mem_region_path)
Set system allowed memory regions.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_sys_dev_set(struct doca_apsh_system *system, struct doca_dev_rep *dev)
Set system device.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_container_processes_get(struct doca_apsh_container *container, struct doca_apsh_process ***processes, int *processes_size)
Get array of current processes running on the container.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_processes_get(struct doca_apsh_system *system, struct doca_apsh_process ***processes, int *processes_size)
Get array of current processes running on the system.
DOCA_EXPERIMENTAL void doca_apsh_sids_free(struct doca_apsh_sid **sids)
Destroys a SIDs context.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_sids_get(struct doca_apsh_process *process, struct doca_apsh_sid ***sids, int *sids_size)
Get array of current process SIDs.
DOCA_EXPERIMENTAL void doca_apsh_module_free(struct doca_apsh_module **modules)
Destroys a modules array.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_sys_set_scan_window_size(struct doca_apsh_system *system, uint32_t scan_window_size)
Set system yara scan window size.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_start(struct doca_apsh_ctx *ctx)
Start apsh handler.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_libs_get(struct doca_apsh_process *process, struct doca_apsh_lib ***libs, int *libs_size)
Get array of current process loadable libraries.
DOCA_EXPERIMENTAL doca_error_t __doca_apsh_sys_config(struct doca_apsh_system *system, enum doca_apsh_system_config_attr attr, void *value)
Shadow function - configure attribute value for a system.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_sys_os_type_set(struct doca_apsh_system *system, enum doca_apsh_system_os os_type)
Set system os type.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_injection_detect_get(struct doca_apsh_process *process, struct doca_apsh_injection_detect ***suspected_injections, int *suspected_injections_size)
Get suspected code injections of current process.
DOCA_EXPERIMENTAL const void * __doca_apsh_netscan_info_get(struct doca_apsh_netscan *connection, enum doca_apsh_netscan_attr attr)
Shadow function - get attribute value for a connection.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_yara_get(struct doca_apsh_process *process, enum doca_apsh_yara_rule *yara_rules_arr, uint32_t yara_rules_arr_size, uint64_t scan_type, struct doca_apsh_yara ***yara_matches, int *yara_matches_size)
Scan current process with yara rules. The scanning is done with a window size and step that are set b...
DOCA_EXPERIMENTAL void doca_apsh_handles_free(struct doca_apsh_handle **handles)
Destroys a handles context.
DOCA_EXPERIMENTAL const void * __doca_apsh_envar_info_get(struct doca_apsh_envar *envar, enum doca_apsh_envar_attr attr)
Shadow function - get attribute value for an environment variable.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_handles_get(struct doca_apsh_process *process, struct doca_apsh_handle ***handles, int *handles_size)
Get array of current process handles.
DOCA_EXPERIMENTAL struct doca_apsh_ctx * doca_apsh_create(void)
Create a new apsh handler.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_envars_get(struct doca_apsh_process *process, struct doca_apsh_envar ***envars, int *envars_size)
Get array of current process environment variables.
DOCA_EXPERIMENTAL const void * __doca_apsh_ldrmodule_info_get(struct doca_apsh_ldrmodule *ldrmodule, enum doca_apsh_ldrmodule_attr attr)
Shadow function - get attribute value for a modules.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_dma_dev_set(struct doca_apsh_ctx *ctx, struct doca_dev *dma_dev)
Set apsh dma device.
DOCA_EXPERIMENTAL void doca_apsh_proc_files_details_free(struct doca_apsh_proc_file_details **files_details)
Destroys a files_details context.
DOCA_EXPERIMENTAL void doca_apsh_privileges_free(struct doca_apsh_privilege **privileges)
Destroys a privileges context.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_vads_get(struct doca_apsh_process *process, struct doca_apsh_vad ***vads, int *vads_size)
Get array of current process vads - virtual address descriptor.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_ldrmodules_get(struct doca_apsh_process *process, struct doca_apsh_ldrmodule ***ldrmodules, int *ldrmodules_size)
Get array of current process modules.
DOCA_EXPERIMENTAL void doca_apsh_interfaces_free(struct doca_apsh_interface **interfaces)
Destroys an interfaces data array.
DOCA_EXPERIMENTAL const void * __doca_apsh_interface_info_get(struct doca_apsh_interface *interface, enum doca_apsh_interface_attr attr)
Shadow function - get attribute value for an interface.
DOCA_EXPERIMENTAL void doca_apsh_attestation_free(struct doca_apsh_attestation **attestation)
Destroys a attestation context.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_netscan_get(struct doca_apsh_system *system, struct doca_apsh_netscan ***connections, int *connections_size)
Get array of current connections.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_threads_get(struct doca_apsh_process *process, struct doca_apsh_thread ***threads, int *threads_size)
Get array of current process threads.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_attestation_get(struct doca_apsh_process *process, const char *exec_hash_map_path, struct doca_apsh_attestation ***attestation, int *attestation_size)
Get current process attestation.
DOCA_EXPERIMENTAL const void * __doca_apsh_module_info_get(struct doca_apsh_module *module, enum doca_apsh_module_attr attr)
Shadow function - get attribute value for a module.
DOCA_EXPERIMENTAL struct doca_apsh_system * doca_apsh_system_create(struct doca_apsh_ctx *ctx)
Create a new system handler.
DOCA_EXPERIMENTAL void doca_apsh_yara_free(struct doca_apsh_yara **yara_matches)
Destroys a yara context.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_containers_get(struct doca_apsh_system *system, struct doca_apsh_container ***containers, int *containers_size)
Get array of current containers running on the system.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_sys_os_symbol_map_set(struct doca_apsh_system *system, const char *system_os_symbol_map_path)
Set system os symbol map.
DOCA_EXPERIMENTAL void doca_apsh_destroy(struct doca_apsh_ctx *ctx)
Free the APSH memory and close connections.
DOCA_EXPERIMENTAL void doca_apsh_process_parameters_free(struct doca_apsh_process_parameters *process_parameters)
Destroys a process-parameters context.
DOCA_EXPERIMENTAL void doca_apsh_ldrmodules_free(struct doca_apsh_ldrmodule **ldrmodules)
Destroys a ldrmodules context.
DOCA_EXPERIMENTAL void doca_apsh_envars_free(struct doca_apsh_envar **envars)
Destroys a envars context.
DOCA_EXPERIMENTAL const void * __doca_apsh_process_info_get(struct doca_apsh_process *process, enum doca_apsh_process_attr attr)
Shadow function - get attribute value for a process.
DOCA_EXPERIMENTAL void doca_apsh_containers_free(struct doca_apsh_container **containers)
Destroys a container context.
DOCA_EXPERIMENTAL void doca_apsh_processes_free(struct doca_apsh_process **processes)
Destroys a process context.
DOCA_EXPERIMENTAL const void * __doca_apsh_privilege_info_get(struct doca_apsh_privilege *privilege, enum doca_apsh_privilege_attr attr)
Shadow function - get attribute value for a privilege.
DOCA_EXPERIMENTAL const void * __doca_apsh_handle_info_get(struct doca_apsh_handle *handle, enum doca_apsh_handle_attr attr)
Shadow function - get attribute value for a handle.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_modules_get(struct doca_apsh_system *system, struct doca_apsh_module ***modules, int *modules_size)
Get array of current modules installed on the system.
DOCA_EXPERIMENTAL void doca_apsh_system_destroy(struct doca_apsh_system *system)
Destroy system handler.
DOCA_EXPERIMENTAL const void * __doca_apsh_thread_info_get(struct doca_apsh_thread *thread, enum doca_apsh_thread_attr attr)
Shadow function - get attribute value for a thread.
DOCA_EXPERIMENTAL void doca_apsh_vads_free(struct doca_apsh_vad **vads)
Destroys a vads context.
DOCA_EXPERIMENTAL const void * __doca_apsh_container_info_get(struct doca_apsh_container *container, enum doca_apsh_container_attr attr)
Shadow function - get attribute value for a container.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_attst_refresh(struct doca_apsh_attestation ***attestation, int *attestation_size)
refresh single attestation handler of a process with new snapshot
DOCA_EXPERIMENTAL doca_error_t doca_apsh_system_start(struct doca_apsh_system *system)
Start system handler.
DOCA_EXPERIMENTAL doca_error_t doca_apsh_process_parameters_get(struct doca_apsh_process *process, struct doca_apsh_process_parameters **process_parameters)
Get current process parameters.
DOCA_EXPERIMENTAL const void * __doca_apsh_proc_file_details_info_get(struct doca_apsh_proc_file_details *file_details, enum doca_apsh_proc_file_details_attr attr)
Shadow function - get attribute value for file details.
#define DOCA_EXPERIMENTAL
To set a Symbol (or specifically a function) as experimental.
Definition: doca_compat.h:103
enum doca_error doca_error_t
DOCA API return codes.
type value
struct upf_accel_ctx * ctx
uint64_t vad