admin: Service ownership infrastructure and commands.
[tripe] / server / tripe.h
index e917ddb..1cb2d40 100644 (file)
@@ -391,7 +391,14 @@ typedef struct admin_pingop {
   admin_bgop bg;                       /* Background operation header */
   ping ping;                           /* Ping pending response */
   struct timeval pingtime;             /* Time last ping was sent */
-} admin_pingop;  
+} admin_pingop;
+
+typedef struct admin_service {
+  sym_base _b;                         /* Hash table base structure */
+  char *version;                       /* The provided version */
+  struct admin *prov;                  /* Which client provides me */
+  struct admin_service *next, *prev;   /* Client's list of services */
+} admin_service;
 
 typedef struct admin {
   struct admin *next, *prev;           /* Links to next and previous */
@@ -403,6 +410,7 @@ typedef struct admin {
   oqueue out;                          /* Output buffer list */
   oqueue delay;                                /* Delayed output buffer list */
   admin_bgop *bg;                      /* Backgrounded operations */
+  admin_service *svcs;                 /* Which services I provide */
   selbuf b;                            /* Line buffer for commands */
   sel_file w;                          /* Selector for write buffering */
 } admin;