CVE-2017-8779.diff 646 B

12345678910111213141516171819202122
  1. diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c
  2. index 5862c26..e11f61b 100644
  3. --- a/src/rpcb_svc_com.c
  4. +++ b/src/rpcb_svc_com.c
  5. @@ -48,6 +48,7 @@
  6. #include <rpc/rpc.h>
  7. #include <rpc/rpcb_prot.h>
  8. #include <rpc/svc_dg.h>
  9. +#include <rpc/rpc_com.h>
  10. #include <netconfig.h>
  11. #include <errno.h>
  12. #include <syslog.h>
  13. @@ -432,7 +433,7 @@ rpcbproc_taddr2uaddr_com(void *arg, struct svc_req *rqstp /*__unused*/,
  14. static bool_t
  15. xdr_encap_parms(XDR *xdrs, struct encap_parms *epp)
  16. {
  17. - return (xdr_bytes(xdrs, &(epp->args), (u_int *) &(epp->arglen), ~0));
  18. + return (xdr_bytes(xdrs, &(epp->args), (u_int *) &(epp->arglen), RPC_MAXDATASIZE));
  19. }
  20. /*