From: Neil Brown Further lockd tidyups. - NIPQUAD everywhere that is appropriate - use XDR_QUADLEN in more places as appropriate - discard QUADLEN which is a lockd-specific version of XDR_QUADLEN Signed-off-by: Neil Brown Signed-off-by: Andrew Morton --- 25-akpm/fs/lockd/host.c | 6 +----- 25-akpm/fs/lockd/mon.c | 4 +--- 25-akpm/fs/lockd/svc4proc.c | 8 ++++---- 25-akpm/fs/lockd/svcproc.c | 8 ++++---- 25-akpm/fs/lockd/xdr.c | 14 +++++++------- 25-akpm/fs/lockd/xdr4.c | 4 ++-- 25-akpm/include/linux/lockd/xdr.h | 2 -- 7 files changed, 19 insertions(+), 27 deletions(-) diff -puN fs/lockd/host.c~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements fs/lockd/host.c --- 25/fs/lockd/host.c~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements 2004-10-10 23:51:06.751972304 -0700 +++ 25-akpm/fs/lockd/host.c 2004-10-10 23:51:06.763970480 -0700 @@ -104,11 +104,7 @@ nlm_lookup_host(int server, struct socka memset(host, 0, sizeof(*host)); addr = sin->sin_addr.s_addr; - sprintf(host->h_name, "%d.%d.%d.%d", - (unsigned char) (ntohl(addr) >> 24), - (unsigned char) (ntohl(addr) >> 16), - (unsigned char) (ntohl(addr) >> 8), - (unsigned char) (ntohl(addr) >> 0)); + sprintf(host->h_name, "%u.%u.%u.%u", NIPQUAD(addr)); host->h_addr = *sin; host->h_addr.sin_port = 0; /* ouch! */ diff -puN fs/lockd/mon.c~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements fs/lockd/mon.c --- 25/fs/lockd/mon.c~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements 2004-10-10 23:51:06.752972152 -0700 +++ 25-akpm/fs/lockd/mon.c 2004-10-10 23:51:06.764970328 -0700 @@ -140,7 +140,6 @@ static u32 * xdr_encode_common(struct rpc_rqst *rqstp, u32 *p, struct nsm_args *argp) { char buffer[20]; - u32 addr = ntohl(argp->addr); /* * Use the dotted-quad IP address of the remote host as @@ -148,8 +147,7 @@ xdr_encode_common(struct rpc_rqst *rqstp * hostname first for whatever remote hostname it receives, * so this works alright. */ - sprintf(buffer, "%d.%d.%d.%d", (addr>>24) & 0xff, (addr>>16) & 0xff, - (addr>>8) & 0xff, (addr) & 0xff); + sprintf(buffer, "%u.%u.%u.%u", NIPQUAD(argp->addr)); if (!(p = xdr_encode_string(p, buffer)) || !(p = xdr_encode_string(p, system_utsname.nodename))) return ERR_PTR(-EIO); diff -puN fs/lockd/svc4proc.c~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements fs/lockd/svc4proc.c --- 25/fs/lockd/svc4proc.c~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements 2004-10-10 23:51:06.753972000 -0700 +++ 25-akpm/fs/lockd/svc4proc.c 2004-10-10 23:51:06.764970328 -0700 @@ -546,10 +546,10 @@ struct nlm_void { int dummy; }; .pc_ressize = sizeof(struct nlm_##rest), \ .pc_xdrressize = respsize, \ } -#define Ck (1+8) /* cookie */ -#define No (1+1024/4) /* netobj */ -#define St 1 /* status */ -#define Rg 4 /* range (offset + length) */ +#define Ck (1+XDR_QUADLEN(NLM_MAXCOOKIELEN)) /* cookie */ +#define No (1+1024/4) /* netobj */ +#define St 1 /* status */ +#define Rg 4 /* range (offset + length) */ struct svc_procedure nlmsvc_procedures4[] = { PROC(null, void, void, void, void, 1), PROC(test, testargs, testres, args, res, Ck+St+2+No+Rg), diff -puN fs/lockd/svcproc.c~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements fs/lockd/svcproc.c --- 25/fs/lockd/svcproc.c~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements 2004-10-10 23:51:06.755971696 -0700 +++ 25-akpm/fs/lockd/svcproc.c 2004-10-10 23:51:06.765970176 -0700 @@ -571,10 +571,10 @@ struct nlm_void { int dummy; }; .pc_xdrressize = respsize, \ } -#define Ck (1+8) /* cookie */ -#define St 1 /* status */ -#define No (1+1024/4) /* Net Obj */ -#define Rg 2 /* range - offset + size */ +#define Ck (1+XDR_QUADLEN(NLM_MAXCOOKIELEN)) /* cookie */ +#define St 1 /* status */ +#define No (1+1024/4) /* Net Obj */ +#define Rg 2 /* range - offset + size */ struct svc_procedure nlmsvc_procedures[] = { PROC(null, void, void, void, void, 1), diff -puN fs/lockd/xdr4.c~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements fs/lockd/xdr4.c --- 25/fs/lockd/xdr4.c~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements 2004-10-10 23:51:06.757971392 -0700 +++ 25-akpm/fs/lockd/xdr4.c 2004-10-10 23:51:06.766970024 -0700 @@ -60,7 +60,7 @@ nlm4_decode_cookie(u32 *p, struct nlm_co { c->len=len; memcpy(c->data, p, len); - p+=(len+3)>>2; + p+=XDR_QUADLEN(len); } else { @@ -76,7 +76,7 @@ nlm4_encode_cookie(u32 *p, struct nlm_co { *p++ = htonl(c->len); memcpy(p, c->data, c->len); - p+=(c->len+3)>>2; + p+=XDR_QUADLEN(c->len); return p; } diff -puN fs/lockd/xdr.c~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements fs/lockd/xdr.c --- 25/fs/lockd/xdr.c~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements 2004-10-10 23:51:06.759971088 -0700 +++ 25-akpm/fs/lockd/xdr.c 2004-10-10 23:51:06.766970024 -0700 @@ -59,7 +59,7 @@ static inline u32 *nlm_decode_cookie(u32 { c->len=len; memcpy(c->data, p, len); - p+=(len+3)>>2; + p+=XDR_QUADLEN(len); } else { @@ -75,7 +75,7 @@ nlm_encode_cookie(u32 *p, struct nlm_coo { *p++ = htonl(c->len); memcpy(p, c->data, c->len); - p+=(c->len+3)>>2; + p+=XDR_QUADLEN(c->len); return p; } @@ -512,11 +512,11 @@ nlmclt_decode_res(struct rpc_rqst *req, * Buffer requirements for NLM */ #define NLM_void_sz 0 -#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) */ -#define NLM_fhandle_sz 1+QUADLEN(NFS2_FHSIZE) +#define NLM_cookie_sz 1+XDR_QUADLEN(NLM_MAXCOOKIELEN) +#define NLM_caller_sz 1+XDR_QUADLEN(sizeof(system_utsname.nodename)) +#define NLM_netobj_sz 1+XDR_QUADLEN(XDR_MAX_NETOBJ) +/* #define NLM_owner_sz 1+XDR_QUADLEN(NLM_MAXOWNER) */ +#define NLM_fhandle_sz 1+XDR_QUADLEN(NFS2_FHSIZE) #define NLM_lock_sz 3+NLM_caller_sz+NLM_netobj_sz+NLM_fhandle_sz #define NLM_holder_sz 4+NLM_netobj_sz diff -puN include/linux/lockd/xdr.h~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements include/linux/lockd/xdr.h --- 25/include/linux/lockd/xdr.h~lockd-remove-hardcoded-maximum-nlm-cookie-length-enhancements 2004-10-10 23:51:06.760970936 -0700 +++ 25-akpm/include/linux/lockd/xdr.h 2004-10-10 23:51:06.767969872 -0700 @@ -16,8 +16,6 @@ #define NLM_MAXCOOKIELEN 32 #define NLM_MAXSTRLEN 1024 -#define QUADLEN(len) (((len) + 3) >> 2) - #define nlm_granted __constant_htonl(NLM_LCK_GRANTED) #define nlm_lck_denied __constant_htonl(NLM_LCK_DENIED) #define nlm_lck_denied_nolocks __constant_htonl(NLM_LCK_DENIED_NOLOCKS) _