Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Message-ID: <30BDEE18E474D511BB0A00D0B7BB87AF09294A@camel.mha.ca> From: Kris Erickson To: "'cygwin AT cygwin DOT com'" , "'cgf AT redhat DOT com'" Subject: RE: Perl 5.7.2 (GDB breaks in 1.3.3-2 on certain Win2000 machines ) Date: Tue, 9 Oct 2001 18:03:56 -0700 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2653.19) Content-Type: text/plain; charset="iso-8859-1" >Actually, this thread, with the subject "Help... GDB no longer works >after updating" had discussion on this problem: > >http://cygwin.com/ml/cygwin/2001-09/msg01182.html > > > >So, let me turn this back to you. Have you tried any of the cygwin >snapshots to see if they alleviate your problem? I'm not aware of >any development which could have fixed this but, then, I'm not aware >of anything that could break it either. Since I originally posted this, and I have a system on which gdb breaks, The snapshots haven't fixed anything, the crash still occurs. So after a bit of experimentation in getting cygwin1.dll with symbols compiled, I finally started splunking into the code... I figured I should probably report back with what I discovered (however, I was hoping to have some kind of patch/fix working before I posted but...) The break occurs with a call to (line 91 uinfo.cc) if (!NetUserGetInfo (NULL, wuser, 3, (LPBYTE *)&ui) || (wlogsrv[0] && !NetUserGetInfo (wlogsrv, wuser, 3,(LPBYTE *)&ui))) { Version 1.3.2-1 never made that call (uinfo.cc has changed a bit and that whole section was ignored in 1.3.2-1 if user.name, user.domain, and user.logsvr where all set). Forcing version 1.3.2-1 to execute the call NetUserGetInfo also causes the same crash. All of the arguments appear to be valid (wuser is i unicode string which contains the user name, ui looks like USER_INFO_3 type...) Then I looked up NetUserGetInfo and trying a simple MSVC project with NetGetUserInfo. The program fails with trying to pass NULL as the SERVERNAME with an error 2202 (The user name or group name parameter is invalid.), and fails with 2221 (The user name could not be found.) with the same SERVERNAME and USERNAME that uinfo.cc was trying to use. However, calls to the NetUserGetInfo function to do not crash, and since windows does not send signals, I am guessing that the wrapper around Netapi32.lib is sending a signal after receiving a failing call? Since the error is occurring in one of the wrappers or libraries that I haven't yet figured out how to debug (_libkernel32_a_iname), I have solved the solution by simply removing the call the NetUserGetInfo from uinfo.cc (which is effectively what was occuring in 1.3.2-1). I will look into this further, but I thought since there was such a mass of posts about this I would report what I had found... Kris -- 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/