RW Replication: Add basic definitions
[openafs.git] / src / volser / volser.p.h
index 3b39c9e..6f1f8a1 100644 (file)
@@ -11,7 +11,6 @@
 #define _VOLSER_ 1
 
 #ifdef AFS_PTHREAD_ENV
-#include <assert.h>
 #include <pthread.h>
 #endif
 
@@ -36,6 +35,7 @@
 #define volser_RW      0
 #define volser_RO      1
 #define        volser_BACK     2
+#define        volser_RWREPL   3
 
 #define        THOLD(tt)       ((tt)->refCount++)
 
@@ -71,13 +71,13 @@ struct volser_trans {
 
 #ifdef AFS_PTHREAD_ENV
 #define VTRANS_OBJ_LOCK_INIT(tt) \
-  assert(pthread_mutex_init(&((tt)->lock),NULL) == 0)
+  MUTEX_INIT(&((tt)->lock), "vtrans obj", MUTEX_DEFAULT, 0);
 #define VTRANS_OBJ_LOCK_DESTROY(tt) \
-  assert(pthread_mutex_destroy(&((tt)->lock)) == 0)
+  MUTEX_DESTROY(&((tt)->lock))
 #define VTRANS_OBJ_LOCK(tt) \
-  assert(pthread_mutex_lock(&((tt)->lock)) == 0)
+  MUTEX_ENTER(&((tt)->lock))
 #define VTRANS_OBJ_UNLOCK(tt) \
-  assert(pthread_mutex_unlock(&((tt)->lock)) == 0)
+  MUTEX_EXIT(&((tt)->lock))
 #else
 #define VTRANS_OBJ_LOCK_INIT(tt)
 #define VTRANS_OBJ_LOCK_DESTROY(tt)
@@ -153,6 +153,7 @@ struct partList {           /*used by the backup system */
 #define ITSROVOL    0x02
 #define ITSRWVOL    0x04
 #define ITSBACKVOL  0x08
+#define ITSRWREPL   0x10
 #define RO_DONTUSE  0x20
 
 #define VLOP_RESTORE 0x100     /*this is bogus, clashes with VLOP_DUMP */
@@ -182,6 +183,7 @@ struct partList {           /*used by the backup system */
 #define RV_NOVLDB      0x040000
 #define RV_NOCLONE     0x080000
 #define RV_NODEL        0x100000
+#define RV_RWONLY      0x200000
 
 struct ubik_client;
 extern afs_uint32 vsu_GetVolumeID(char *astring, struct ubik_client *acstruct, afs_int32 *errp);