supply instance to 2nd at_wini instance.
[minix3.git] / servers / ds / store.h
blobd70d9e59fdfff0dbeafa3c0621c40e7809cf6108
1 /* Type definitions for the Data Store Server. */
3 #include <sys/types.h>
4 #include <minix/sys_config.h>
5 #include <minix/ds.h>
6 #include <minix/bitmap.h>
7 #include <regex.h>
9 /* Constants for the Data Store Server. */
10 #define NR_DS_KEYS 64 /* reserve space for so many items */
11 #define NR_DS_SUBS (4*_NR_SYS_PROCS) /* .. and so many subscriptions */
13 /* Types. */
15 struct data_store {
16 int ds_flags; /* flags for this store, includes type info */
17 char ds_key[DS_MAX_KEYLEN]; /* key to lookup information */
18 union {
19 u32_t ds_val_u32; /* u32 data (DS_TYPE_U32) */
20 char ds_val_str[DS_MAX_VALLEN]; /* string data (DS_TYPE_STR) */
21 } ds_val;
23 /* out of date subscribers. */
24 bitchunk_t ds_old_subs[BITMAP_CHUNKS(NR_DS_SUBS)];
27 struct subscription {
28 int sub_flags; /* flags for this subscription */
29 regex_t sub_regex; /* regular expression agains keys */
30 endpoint_t sub_owner; /* who is subscribed */