diff --git a/wireless/gs2200m/gs2200m_main.c b/wireless/gs2200m/gs2200m_main.c index c81882960..6667b6c4c 100644 --- a/wireless/gs2200m/gs2200m_main.c +++ b/wireless/gs2200m/gs2200m_main.c @@ -865,7 +865,9 @@ static int recvfrom_request(int fd, FAR struct gs2200m_s *priv, } memset(&rmsg, 0, sizeof(rmsg)); - rmsg.buf = calloc(1, 1500); + rmsg.buf = calloc(1, req->max_buflen); + ASSERT(rmsg.buf); + rmsg.cid = usock->cid; rmsg.reqlen = req->max_buflen; rmsg.is_tcp = (usock->type == SOCK_STREAM) ? true : false;