summaryrefslogtreecommitdiffstats
path: root/sys/nfs/nfs_common.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/nfs/nfs_common.h')
-rw-r--r--sys/nfs/nfs_common.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/sys/nfs/nfs_common.h b/sys/nfs/nfs_common.h
index f68dad1..877b351 100644
--- a/sys/nfs/nfs_common.h
+++ b/sys/nfs/nfs_common.h
@@ -48,7 +48,7 @@ extern nfstype nfsv3_type[];
int nfs_adv(struct mbuf **, caddr_t *, int, int);
u_quad_t nfs_curusec(void);
-void *nfsm_disct(struct mbuf **, caddr_t *, int, int);
+void *nfsm_disct(struct mbuf **, caddr_t *, int, int, int);
/* ****************************** */
/* Build request/reply phase macros */
@@ -62,6 +62,7 @@ void *nfsm_build_xx(int s, struct mbuf **mb, caddr_t *bpos);
/* Interpretation phase macros */
void *nfsm_dissect_xx(int s, struct mbuf **md, caddr_t *dpos);
+void *nfsm_dissect_xx_nonblock(int s, struct mbuf **md, caddr_t *dpos);
int nfsm_strsiz_xx(int *s, int m, struct mbuf **md, caddr_t *dpos);
int nfsm_adv_xx(int s, struct mbuf **md, caddr_t *dpos);
@@ -94,6 +95,14 @@ do { \
(c)ret; \
})
+#define nfsm_dissect_nonblock(c, s) \
+({ \
+ void *ret; \
+ ret = nfsm_dissect_xx_nonblock((s), &md, &dpos); \
+ nfsm_dcheckp(ret, mrep); \
+ (c)ret; \
+})
+
#define nfsm_strsiz(s,m) \
do { \
int t1; \
OpenPOWER on IntegriCloud