#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 */
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 */
#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);
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__ */