various: fix gcc7isms

Fedora 26 (rawhide) has just updated to gcc7 which is significantly pickier
about several things.

In particular:
 - 9P: add checks to make sure we never overflow our buffers
 - nfs4 recovery: cidstr_len has to be at least 20 bytes long to store
any "%zi" format, even if it won't be that long in practice
 - nfs4 recovery ip_match was just wrong, we were checking if the client
ip matches the server hostname ?!
 - nfs4 exchange id: stop storing cid_server_owner/cid_server_scope in
the client struct, which lets us work around a possible overrun.
 - proxy: only for systems where long isn't 64 bits, need to fill the
verifier differently

Change-Id: Ib56fcfe86b589c74ffb362f65e5e5203177401f1
Signed-off-by: Dominique Martinet <>
18 files changed
tree: 04a2cf4efd8f5776dcf8adb63c6b2925c8d5779c
  1. contrib/
  2. coverity/
  3. jenkins/
  4. src/
  5. .gitignore
  6. .gitmodules
  7. .gitreview
  8. .mailmap
  9. .travis.yml

Coverity Scan Build Status nfs-ganesha

NFS-Ganesha is an NFSv3,v4,v4.1 fileserver that runs in user mode on most UNIX/Linux systems. It also supports the 9p.2000L protocol.

For more information, consult the project wiki.