summaryrefslogtreecommitdiffstats
path: root/sys/coda/coda.h
diff options
context:
space:
mode:
authorrvb <rvb@FreeBSD.org>1998-11-11 20:32:20 +0000
committerrvb <rvb@FreeBSD.org>1998-11-11 20:32:20 +0000
commitdb28f40beee243ea6c2a3d88927156f63fb38080 (patch)
tree5bc009d1aa22b55b919520268f7dea232359bbc1 /sys/coda/coda.h
parentba58877007d91e681de82ac5e39beeef438e2931 (diff)
downloadFreeBSD-src-db28f40beee243ea6c2a3d88927156f63fb38080.zip
FreeBSD-src-db28f40beee243ea6c2a3d88927156f63fb38080.tar.gz
coda_lookup now passes up an extra flag. But old veni will
be ok; new veni will check /dev/cfs0 to make sure that a new kernel is running. Also, a bug in vc_nb_close iff CODA_SIGNAL's were seen has been fixed.
Diffstat (limited to 'sys/coda/coda.h')
-rw-r--r--sys/coda/coda.h34
1 files changed, 31 insertions, 3 deletions
diff --git a/sys/coda/coda.h b/sys/coda/coda.h
index 8426d00..7b67ea9 100644
--- a/sys/coda/coda.h
+++ b/sys/coda/coda.h
@@ -27,10 +27,11 @@
* Mellon the rights to redistribute these changes without encumbrance.
*
* @(#) src/sys/coda/coda.h,v 1.1.1.1 1998/08/29 21:14:52 rvb Exp $
- * $Id: coda.h,v 1.4 1998/09/13 13:57:59 rvb Exp $
+ * $Id: coda.h,v 1.5 1998/10/28 19:33:49 rvb Exp $
*
*/
+
/*
*
* Based on cfs.h from Mach, but revamped for increased simplicity.
@@ -59,7 +60,11 @@ typedef unsigned short u_short;
typedef u_long ino_t;
typedef u_long dev_t;
typedef void * caddr_t;
+#ifdef DOS
+typedef unsigned __int64 u_quad_t;
+#else
typedef unsigned long long u_quad_t;
+#endif
#define inline
@@ -188,7 +193,7 @@ static __inline__ ino_t coda_f2i(struct ViceFid *fid)
#else
#define coda_f2i(fid)\
- (fid) ? ((fid)->Unique + ((fid)->Vnode<<10) + ((fid)->Volume<<20)) : 0
+ ((fid) ? ((fid)->Unique + ((fid)->Vnode<<10) + ((fid)->Volume<<20)) : 0)
#endif
@@ -282,7 +287,15 @@ struct coda_vattr {
#define VC_MAXMSGSIZE sizeof(union inputArgs)+sizeof(union outputArgs) +\
VC_MAXDATASIZE
-
+#define CIOC_KERNEL_VERSION _IOWR('c', 10, sizeof (int))
+#if 0
+ /* don't care about kernel version number */
+#define CODA_KERNEL_VERSION 0
+ /* The old venus 4.6 compatible interface */
+#define CODA_KERNEL_VERSION 1
+#endif
+ /* venus_lookup gets an extra parameter to aid windows.*/
+#define CODA_KERNEL_VERSION 2
/*
* Venus <-> Coda RPC arguments
@@ -392,11 +405,17 @@ struct coda_access_out {
struct coda_out_hdr out;
};
+
+/* lookup flags */
+#define CLU_CASE_SENSITIVE 0x01
+#define CLU_CASE_INSENSITIVE 0x02
+
/* coda_lookup: */
struct coda_lookup_in {
struct coda_in_hdr ih;
ViceFid VFid;
int name; /* Place holder for data. */
+ int flags;
};
struct coda_lookup_out {
@@ -711,11 +730,20 @@ struct ViceIoctl {
short out_size; /* Maximum size of output buffer, <= 2K */
};
+#if defined(__CYGWIN32__) || defined(DJGPP)
struct PioctlData {
+ unsigned long cmd;
const char *path;
int follow;
struct ViceIoctl vi;
};
+#else
+struct PioctlData {
+ const char *path;
+ int follow;
+ struct ViceIoctl vi;
+};
+#endif
#define CODA_CONTROL ".CONTROL"
#define CODA_CONTROLLEN 8
OpenPOWER on IntegriCloud