patch-2.4.26 linux-2.4.26/fs/lockd/xdr.c
Next file: linux-2.4.26/fs/lockd/xdr4.c
Previous file: linux-2.4.26/fs/lockd/svcproc.c
Back to the patch index
Back to the overall index
- Lines: 69
- Date:
2004-04-14 06:05:40.000000000 -0700
- Orig file:
linux-2.4.25/fs/lockd/xdr.c
- Orig date:
2002-11-28 15:53:15.000000000 -0800
diff -urN linux-2.4.25/fs/lockd/xdr.c linux-2.4.26/fs/lockd/xdr.c
@@ -55,7 +55,7 @@
c->len=4;
memset(c->data, 0, 4); /* hockeypux brain damage */
}
- else if(len<=8)
+ else if(len<=NLM_MAXCOOKIELEN)
{
c->len=len;
memcpy(c->data, p, len);
@@ -64,7 +64,7 @@
else
{
printk(KERN_NOTICE
- "lockd: bad cookie size %d (only cookies under 8 bytes are supported.)\n", len);
+ "lockd: bad cookie size %d (only cookies under %d bytes are supported.)\n", len, NLM_MAXCOOKIELEN);
return NULL;
}
return p;
@@ -86,7 +86,7 @@
if ((len = ntohl(*p++)) != NFS2_FHSIZE) {
printk(KERN_NOTICE
- "lockd: bad fhandle size %x (should be %d)\n",
+ "lockd: bad fhandle size %d (should be %d)\n",
len, NFS2_FHSIZE);
return NULL;
}
@@ -534,7 +534,7 @@
* Buffer requirements for NLM
*/
#define NLM_void_sz 0
-#define NLM_cookie_sz 3 /* 1 len , 2 data */
+#define NLM_cookie_sz 1+QUADLEN(NLM_MAXCOOKIELEN)
#define NLM_caller_sz 1+QUADLEN(sizeof(system_utsname.nodename))
#define NLM_netobj_sz 1+QUADLEN(XDR_MAX_NETOBJ)
/* #define NLM_owner_sz 1+QUADLEN(NLM_MAXOWNER) */
@@ -643,3 +643,32 @@
}
#endif
+#ifdef RPC_DEBUG
+const char *nlmdbg_cookie2a(const struct nlm_cookie *cookie)
+{
+ /*
+ * We can get away with a static buffer because we're only
+ * called with BKL held.
+ */
+ static char buf[2*NLM_MAXCOOKIELEN+1];
+ int i;
+ int len = sizeof(buf);
+ char *p = buf;
+
+ len--; /* allow for trailing \0 */
+ if (len < 3)
+ return "???";
+ for (i = 0 ; i < cookie->len ; i++) {
+ if (len < 2) {
+ strcpy(p-3, "...");
+ break;
+ }
+ sprintf(p, "%02x", cookie->data[i]);
+ p += 2;
+ len -= 2;
+ }
+ *p = '\0';
+
+ return buf;
+}
+#endif
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)