This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
handle_to_fn question
- From: Pavel Tsekov <ptsekov at syntrex dot com>
- To: cygwin at cygwin dot com
- Date: Tue, 4 Jun 2002 18:28:33 +0200
- Subject: handle_to_fn question
- Organization: Syntrex, Inc.
- Reply-to: Pavel Tsekov <cygwin at cygwin dot com>
Hello, there! :)
I may be wrong but this code from handle_to_fn seems wrong to me:
static char *
handle_to_fn (HANDLE h, char *posix_fn)
{
OBJECT_NAME_INFORMATION *ntfn;
char fnbuf[32768];
memset (fnbuf, 0, sizeof (fnbuf));
ntfn = (OBJECT_NAME_INFORMATION *) fnbuf;
// If I'm right for the case below this should read sizeof (fnbuf) -
// sizeof (OBJECT_NAME_INFORMATION).
ntfn->Name.MaximumLength = sizeof (fnbuf);
// I think that the right hand of the assignment is incorrect and it should be
// (WCHAR *) (ntfn + 1). Now it seems like ntfn->Name.Buffer will be
// assigned the addres of ntfn->Name.MaximumLength.
ntfn->Name.Buffer = (WCHAR *) ntfn + 1;
DWORD res = NtQueryObject (h, ObjectNameInformation, ntfn, sizeof (fnbuf), NUL
L);
--
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/