DEVEL15-windows-largefile-support-20060623
[openafs.git] / src / WINNT / afsd / cm_conn.h
index 6f2f2e3..9d65a69 100644 (file)
@@ -14,8 +14,8 @@
 #define CM_CONN_CONNDEADTIME           60
 #define CM_CONN_HARDDEADTIME        120
 
-extern long ConnDeadtimeout;
-extern long HardDeadtimeout;
+extern unsigned short ConnDeadtimeout;
+extern unsigned short HardDeadtimeout;
 
 typedef struct cm_conn {
        struct cm_conn *nextp;          /* locked by cm_connLock */
@@ -23,12 +23,14 @@ typedef struct cm_conn {
         struct rx_connection *callp;   /* locked by mx */
         struct cm_user *userp;         /* locked by mx; a held reference */
         osi_mutex_t mx;                        /* mutex for some of these fields */
-        int refCount;                  /* locked by cm_connLock */
+        unsigned long refCount;                        /* locked by cm_connLock */
        int ucgen;                      /* ucellp's generation number */
         long flags;                    /* locked by mx */
        int cryptlevel;                 /* encrytion status */
 } cm_conn_t;
 
+#define CM_CONN_FLAG_FORCE_NEW 1
+
 /* structure used for tracking RPC progress */
 typedef struct cm_req {
        DWORD startTime;                /* Quit before RDR times us out */
@@ -77,12 +79,22 @@ typedef struct cm_req {
 #define VMOVED         111     /* Volume has moved to another server;
                                   do a VGetVolumeInfo to THIS server to find
                                   out where */
+#define VIO             112     /* Vnode temporarily unaccessible, but not known
+                                 * to be permanently bad. */
+#define VRESTRICTED     120     /* Volume is restricted from using one or more
+                                 * of the given residencies; do a
+                                 * vos examine to find out the current
+                                 * restrictions. */
 
 #define VRESTARTING    -100    /* server is restarting, otherwise similar to 
                                   VBUSY above.  This is negative so that old
                                   cache managers treat it as "server is down"*/
 
 #include "cm_server.h"
+#ifndef AFS_PTHREAD_ENV
+#define AFS_PTHREAD_ENV 1
+#endif
+#include "rx.h"
 
 extern void cm_InitConn(void);
 
@@ -106,4 +118,8 @@ extern void cm_PutConn(cm_conn_t *connp);
 
 extern void cm_GCConnections(cm_server_t *serverp);
 
+extern struct rx_connection * cm_GetRxConn(cm_conn_t *connp);
+
+extern void cm_ForceNewConnections(cm_server_t *serverp);
+
 #endif /*  __CM_CONN_H_ENV__ */