This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: pthreads works, sorta
changelog:
Wed Jun 27 23:30:00 2001 Robert Collins <rbtcollins@hotmail.com>
* path.cc (check_null_empty_path): Change from VirtualQuery to
IsBadWritePtr.
* resource.cc (getrlimit): Ditto.
(setrlimit): Ditto.
* thread.cc (check_valid_pointer): Ditto.
What about the other instances of virtualQuery? Or are the appropriate..
Rob (Your humble delegate).
----- Original Message -----
From: "Christopher Faylor" <cgf@redhat.com>
To: <cygwin@cygwin.com>
Sent: Wednesday, June 27, 2001 3:35 PM
Subject: Re: pthreads works, sorta
> On Wed, Jun 27, 2001 at 01:29:32AM -0400, Christopher Faylor wrote:
> >On Wed, Jun 27, 2001 at 01:10:35PM +1000, Robert Collins wrote:
> >>> -----Original Message-----
> >>> From: Greg Smith [mailto:gsmith@nc.rr.com]
> >>
> >>>
> >>> More experimenting with my home computer, dual pIII 850:
> >>>
> >>> 1. 117 157 328
> >>> 2. 822 1527 ---
> >>> 3. 194 240 453
> >>> 4. 169 181 516
> >>>
> >>As usual, I write a missive, then solve the puzzle.
> >>
> >>try this:
> >>
> >>
> >>int __stdcall
> >>check_valid_pointer (void *pointer)
> >>{
> >> if (!pointer || IsBadWritePtr(pointer, sizeof (verifyable_object)))
> >> return EFAULT;
> >> return 0;
> >>}
> >
> >This is not quite the same thing as VirtualQuery. This verifies that the
> >process can write to memory. It doesn't verify that it is accessible.
> >
> >Maybe that is not important but I would have to think about this.
> >
> >Nice find, though, Rob.
>
> I've thought about it. IsBadWritePtr should be fine in both
check_null_empty_path
> and check_valid_pointer.
>
> Could you submit a patch, Rob? If you are motivated, I'd appreciate a
cleanup
> patch for resource.cc, too.
>
> cgf
>
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Bug reporting: http://cygwin.com/bugs.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
>
>
virtualquery.patch
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/