Ignore locking failures caused by missing NFS locking daemon.
Handle EINVAL the same way as EOVERFLOW.
diff --git a/server/fd.c b/server/fd.c
index 191d126..3ca3b74 100644
--- a/server/fd.c
+++ b/server/fd.c
@@ -478,6 +478,10 @@
switch(errno)
{
+ case EIO:
+ case ENOLCK:
+ /* no locking on this fs, just ignore it */
+ return 1;
case EACCES:
case EAGAIN:
set_error( STATUS_FILE_LOCK_CONFLICT );
@@ -489,6 +493,7 @@
set_error( STATUS_ACCESS_DENIED );
return 0;
case EOVERFLOW:
+ case EINVAL:
/* this can happen if off_t is 64-bit but the kernel only supports 32-bit */
/* in that case we shrink the limit and retry */
if (max_unix_offset > INT_MAX)