secgateway/Product/modules/object_manager/obj_api.h

28 lines
589 B
C

#ifndef _OBJ_API_H
#define _OBJ_API_H
#ifdef __KERNEL__
#include <asm/atomic.h>
#include <linux/semaphore.h>
#include "../../common/common.h"
#include "../../common/uthash.h"
typedef enum {
OBJ_TYPE_ADDR = 0,
OBJ_TYPE_SERVER,
OBJ_TYPE_DATETIME
} OBJ_TYPES;
typedef struct {
char name[MAX_NAME_LEN];
OBJ_TYPES type;
void* data;
atomic_t ref_count;
struct semaphore lock;
struct list_head list;
} CMHI_OBJECT, *PCMHI_OBJECT;
const char* obj_version(void);
void object_init(void);
#endif
#endif