1. 28 Mar, 2009 1 commit
    • Chuck Lever's avatar
      SUNRPC: Don't flag empty RPCB_GETADDR reply as bogus · 776bd5c7
      Chuck Lever authored
      In 2007, commit e65fe397 added
      additional sanity checking to rpcb_decode_getaddr() to make sure we
      were getting a reply that was long enough to be an actual universal
      address.  If the uaddr string isn't long enough, the XDR decoder
      returns EIO.
      
      However, an empty string is a valid RPCB_GETADDR response if the
      requested service isn't registered.  Moreover, "::.n.m" is also a
      valid RPCB_GETADDR response for IPv6 addresses that is shorter
      than rpcb_decode_getaddr()'s lower limit of 11.  So this sanity
      check introduced a regression for rpcbind requests against IPv6
      remotes.
      
      So revert the lower bound check added by commit
      e65fe397, and add an explicit check
      for an empty uaddr string, similar to libtirpc's rpcb_getaddr(3).
      Pointed-out-by: default avatarJeff Layton <jlayton@redhat.com>
      Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      776bd5c7
  2. 19 Mar, 2009 8 commits
  3. 11 Mar, 2009 31 commits