Files
subhamgdebandsubhamgdeb d6e76bcf3d Replace global variable and first task reference for cloning with tss_clone_list (#63)
Task Id of first task in vxtss symbol list is updated with 0 after it is terminated.

Co-authored-by: subhamgdeb <subhamgdeb>
Reviewed-on: http://13.234.246.121:3000/Neominds/ossl35vx69/pulls/63
Co-authored-by: Subham Gangdeb <subham.gangdeb@neominds.in>
Co-committed-by: Subham Gangdeb <subham.gangdeb@neominds.in>
2026-07-30 20:45:01 +05:30

57 lines
1.2 KiB
C

/* vxtss_symlist.h - VxWorks TSS symbol tracking interface */
#ifndef __VX_TSS_SYMLIST_H__
#define __VX_TSS_SYMLIST_H__
#ifdef __cplusplus
extern "C" {
#endif
#include <vxWorks.h>
#include <taskLib.h>
#include <openssl/crypto.h>
/* Basic tss sym state types */
typedef enum {
TSS_SYMLIST_STATE_INVALID = 0,
TSS_SYMLIST_STATE_NEW,
TSS_SYMLIST_STATE_ADDED,
TSS_SYMLIST_STATE_FAILED,
} tss_sym_state;
typedef struct {
void *var; /* task-specific variable */
void (*dtor)(void *); /* optional destructor */
} tss_entry_t;
/* Initialize - deinitialize TSS sym */
int tss_sym_init(void);
int tss_sym_deinit(void);
/*
* Add new symbol entry
*/
int tss_symlist_add_new(TASK_ID taskid,
char *run_once_arg_str,
char *tss_key_name,
tss_t *tss_key,
tss_sym_state state);
/*
* Check and populate keys for current task based on run_once_arg_str
*/
void
tss_symlist_clone_entries_for_new_task(char *run_once_arg_string);
/* Display the tss symbol table */
int
tss_symlist_show(void);
#ifdef __cplusplus
}
#endif
#endif /* __VX_TSS_SYMLIST_H__ */