From 505a9bce029e51540739c853a6c9eef0ecfb2e90 Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Wed, 4 Apr 2018 11:07:56 -0700 Subject: fixes #329 type checking not done for setopt --- src/transport/ipc/ipc.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'src/transport/ipc') diff --git a/src/transport/ipc/ipc.c b/src/transport/ipc/ipc.c index 98d3f177..ecc9a962 100644 --- a/src/transport/ipc/ipc.c +++ b/src/transport/ipc/ipc.c @@ -719,14 +719,17 @@ nni_ipc_ep_connect(void *arg, nni_aio *aio) } static int -nni_ipc_ep_setopt_recvmaxsz(void *arg, const void *data, size_t sz) +nni_ipc_ep_setopt_recvmaxsz(void *arg, const void *data, size_t sz, int typ) { nni_ipc_ep *ep = arg; + size_t val; + int rv; - if (ep == NULL) { - return (nni_chkopt_size(data, sz, 0, NNI_MAXSZ)); + rv = nni_copyin_size(&val, data, sz, 0, NNI_MAXSZ, typ); + if ((rv == 0) && (ep != NULL)) { + ep->rcvmax = val; } - return (nni_setopt_size(&ep->rcvmax, data, sz, 0, NNI_MAXSZ)); + return (rv); } static int -- cgit v1.2.3-70-g09d2