From: Filippos Giannakos Date: Fri, 14 Sep 2012 13:51:58 +0000 (+0300) Subject: make xseg resize check allocated size X-Git-Tag: debian/0.3.1~171 X-Git-Url: https://code.grnet.gr/git/archipelago/commitdiff_plain/8dc198c87c44fc024e53c7277f0c3c692ff53f1d make xseg resize check allocated size --- diff --git a/xseg/xseg/xseg.c b/xseg/xseg/xseg.c index 66469d1..e4102c5 100644 --- a/xseg/xseg/xseg.c +++ b/xseg/xseg/xseg.c @@ -1162,6 +1162,9 @@ int xseg_prep_request ( struct xseg* xseg, struct xseg_request *req, int xseg_resize_request (struct xseg *xseg, struct xseg_request *req, uint32_t new_targetlen, uint64_t new_datalen) { + if (req->bufferlen >= new_datalen + new_targetlen) + return 0; + if (req->buffer){ void *ptr = XPTR_TAKE(req->buffer, xseg->segment); xseg_free_buffer(xseg, ptr);