On 22:28 Fri 07 Feb , Uwe Kleine-K??nig wrote: > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx> keep the hostname I use it on nfs for export filter Best Regards, J. > --- > fs/nfs.c | 26 +++++--------------------- > 1 file changed, 5 insertions(+), 21 deletions(-) > > diff --git a/fs/nfs.c b/fs/nfs.c > index 76d8c0595db4..54dda261c0b1 100644 > --- a/fs/nfs.c > +++ b/fs/nfs.c > @@ -224,34 +224,18 @@ out_overflow: > */ > static uint32_t *rpc_add_credentials(uint32_t *p) > { > - int hl; > - int hostnamelen = 0; > - > /* > - * Here's the executive summary on authentication requirements of the > - * various NFS server implementations: Linux accepts both AUTH_NONE > - * and AUTH_UNIX authentication (also accepts an empty hostname field > - * in the AUTH_UNIX scheme). *BSD refuses AUTH_NONE, but accepts > - * AUTH_UNIX (also accepts an empty hostname field in the AUTH_UNIX > - * scheme). To be safe, use AUTH_UNIX and pass the hostname if we have > - * it (if the BOOTP/DHCP reply didn't give one, just use an empty > - * hostname). > + * *BSD refuses AUTH_NONE, so use AUTH_UNIX. An empty hostname is OK for > + * both Linux and *BSD. > */ > > - hl = (hostnamelen + 3) & ~3; > - > /* Provide an AUTH_UNIX credential. */ > *p++ = htonl(1); /* AUTH_UNIX */ > - *p++ = htonl(hl + 20); /* auth length */ > + *p++ = htonl(20); /* auth length: 20 + strlen(hostname) */ > *p++ = htonl(0); /* stamp */ > - *p++ = htonl(hostnamelen); /* hostname string */ > - > - if (hostnamelen & 3) > - *(p + hostnamelen / 4) = 0; /* add zero padding */ > - > - /* memcpy(p, hostname, hostnamelen); */ /* empty hostname */ > + *p++ = htonl(0); /* hostname string length */ > + /* memcpy(p, "", 0); p += 0; <- empty host name */ > > - p += hl / 4; > *p++ = 0; /* uid */ > *p++ = 0; /* gid */ > *p++ = 0; /* auxiliary gid list */ > -- > 1.8.5.2 > _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox