28 lines
563 B
C
28 lines
563 B
C
#ifndef _OBJ_API_H
|
|
#define _OBJ_API_H
|
|
#ifdef __KERNEL__
|
|
#include <asm/atomic.h>
|
|
#include <linux/semaphore.h>
|
|
|
|
#include "common.h"
|
|
#include "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 |