diff --git a/include/rm_loc.h b/include/rm_loc.h
index 9a8bc07566705dea8099a40c3e8cdb96487d38f3..d3ec4d659f9a2af1c3d867d456a891e575977b5f 100644 (file)
--- a/include/rm_loc.h
+++ b/include/rm_loc.h
/* Server-specific instance data */
typedef struct {
- /* Pointer to the global policy */
- void *globalPolicy;
- /* Policy size in bytes */
- uint32_t policySize;
- /* Pointer to root entry of valid instance tree */
- Rm_PolicyValidInstTree *validInstTree;
- /* Pointer to allocator tree */
- Rm_AllocatorTree *allocatorTree;
/* Pointer to the root entry of the NameServer */
- Rm_NameServerTree *nameServer;
+ Rm_NameServerTree *nameServer;
} Rm_ServerInstData;
-/* Client Delegate-specific instance data */
-typedef struct {
- /* Pointer to the cd policy if provided */
- void *cdPolicy;
- /* Pointer to root entry of valid instance tree
- * extracted from cd policy */
- Rm_PolicyValidInstTree *validInstTree;
- /* Pointer to allocator tree */
- Rm_AllocatorTree *allocatorTree;
-} Rm_ClientDelegateInstData;
-
-/* Client-specific instance data */
-typedef struct {
- /* Pointer to the static policy if provided */
- void *staticPolicy;
- /* Pointer to the root entry of the valid instance tree
- * extracted from the static policy */
- Rm_PolicyValidInstTree *staticValidInstTree;
-} Rm_ClientInstData;
-
/* Shared Client-specific instance data */
typedef struct {
/* Shared Server instance handle */
typedef struct {
/* Name given to the RM instance. Policy will assign resources based
* on the names assigned to instances at instance init */
- char instName[RM_NAME_MAX_CHARS];
+ char instName[RM_NAME_MAX_CHARS];
/* Instance type */
- Rm_InstType instType;
+ Rm_InstType instType;
/* Instance lock status. Instance locks if static request fails when
* checked against global policy */
- int8_t isLocked;
+ int8_t isLocked;
/* Tracks whether the instance has registered with a CD or Server.
* Applicable to CD and Client instances */
- int8_t registeredWithDelegateOrServer;
+ int8_t registeredWithDelegateOrServer;
/* Pointer to the serviceHandle opened from the instance */
- Rm_ServiceHandle *serviceHandle;
+ Rm_ServiceHandle *serviceHandle;
/* Linked list of transports registered by the application */
- Rm_Transport *transports;
+ Rm_Transport *transports;
/* Service transaction sequence number tracker */
- uint32_t transactionSeqNum;
+ uint32_t transactionSeqNum;
/* Service transaction linked list queue */
- Rm_Transaction *transactionQueue;
+ Rm_Transaction *transactionQueue;
/* Block handle provided through OSAL for when RM needs to block due to
* a service request that requires a blocking operation to complete and
* a service callback function has not been provided */
- void *blockHandle;
+ void *blockHandle;
/* Multi-threaded semaphore object */
- uint32_t *mtSemObj;
+ uint32_t *mtSemObj;
+ /* Pointer to root entry of valid instance tree */
+ Rm_PolicyValidInstTree *validInstTree;
+ /* Max valid instance index */
+ int32_t maxInstIdx;
+ /* Pointer to allocator tree */
+ Rm_AllocatorTree *allocatorTree;
/* Instance-type specific constructs */
union {
/* Server-specific instance data */
Rm_ServerInstData server;
- /* Client Delegate-specific instance data */
- Rm_ClientDelegateInstData cd;
- /* Client-specific instance data */
- Rm_ClientInstData client;
/* Shared Client-specific instance data */
Rm_SharedClientInstData sharedClient;
} u;