From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2155) id 767F3385C8B1; Wed, 10 Aug 2022 16:13:46 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 767F3385C8B1 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Corinna Vinschen To: cygwin-cvs@sourceware.org Subject: [newlib-cygwin] Cygwin: make check_invalid_virtual_addr a static inline function X-Act-Checkin: newlib-cygwin X-Git-Author: Corinna Vinschen X-Git-Refname: refs/heads/master X-Git-Oldrev: 9fbfccff717521641eb52de7581a98bbae35e75f X-Git-Newrev: 56b7fd620fce86ab86cae2d22985cf7a385e3c5b Message-Id: <20220810161346.767F3385C8B1@sourceware.org> Date: Wed, 10 Aug 2022 16:13:46 +0000 (GMT) X-BeenThere: cygwin-cvs@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin core component git logs List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Aug 2022 16:13:46 -0000 https://sourceware.org/git/gitweb.cgi?p=3Dnewlib-cygwin.git;h=3D56b7fd620fc= e86ab86cae2d22985cf7a385e3c5b commit 56b7fd620fce86ab86cae2d22985cf7a385e3c5b Author: Corinna Vinschen Date: Wed Aug 10 18:03:05 2022 +0200 Cygwin: make check_invalid_virtual_addr a static inline function =20 move it to mm/mmap.cc which uses it exclusively. =20 Signed-off-by: Corinna Vinschen Diff: --- winsup/cygwin/local_includes/miscfuncs.h | 3 --- winsup/cygwin/miscfuncs.cc | 13 ------------- winsup/cygwin/mm/mmap.cc | 13 +++++++++++++ 3 files changed, 13 insertions(+), 16 deletions(-) diff --git a/winsup/cygwin/local_includes/miscfuncs.h b/winsup/cygwin/local= _includes/miscfuncs.h index fc791c2aa..eac1dbe20 100644 --- a/winsup/cygwin/local_includes/miscfuncs.h +++ b/winsup/cygwin/local_includes/miscfuncs.h @@ -101,9 +101,6 @@ PWCHAR transform_chars_af_unix (PWCHAR, const char *, _= _socklen_t); /* Get handle count of an object. */ ULONG get_obj_handle_count (HANDLE h); =20 -/* Memory checking */ -int check_invalid_virtual_addr (const void *s, unsigned sz); - ssize_t check_iovec (const struct iovec *, int, bool); #define check_iovec_for_read(a, b) check_iovec ((a), (b), false) #define check_iovec_for_write(a, b) check_iovec ((a), (b), true) diff --git a/winsup/cygwin/miscfuncs.cc b/winsup/cygwin/miscfuncs.cc index 1513bc04e..f46e349e5 100644 --- a/winsup/cygwin/miscfuncs.cc +++ b/winsup/cygwin/miscfuncs.cc @@ -37,19 +37,6 @@ get_obj_handle_count (HANDLE h) return hdl_cnt; } =20 -int -check_invalid_virtual_addr (const void *s, unsigned sz) -{ - MEMORY_BASIC_INFORMATION mbuf; - const void *end; - - for (end =3D (char *) s + sz; s < end; - s =3D (char *) mbuf.BaseAddress + mbuf.RegionSize) - if (!VirtualQuery (s, &mbuf, sizeof mbuf)) - return EINVAL; - return 0; -} - static char __attribute__ ((noinline)) dummytest (volatile char *p) { diff --git a/winsup/cygwin/mm/mmap.cc b/winsup/cygwin/mm/mmap.cc index 4f383627a..c33342bc3 100644 --- a/winsup/cygwin/mm/mmap.cc +++ b/winsup/cygwin/mm/mmap.cc @@ -1112,6 +1112,19 @@ out: =20 /* munmap () removes all mmapped pages between addr and addr+len. */ =20 +static inline int +check_invalid_virtual_addr (const void *s, unsigned sz) +{ + MEMORY_BASIC_INFORMATION mbuf; + const void *end; + + for (end =3D (char *) s + sz; s < end; + s =3D (char *) mbuf.BaseAddress + mbuf.RegionSize) + if (!VirtualQuery (s, &mbuf, sizeof mbuf)) + return EINVAL; + return 0; +} + extern "C" int munmap (void *addr, size_t len) {