From owner-freebsd-stable@FreeBSD.ORG Fri Jul 16 09:22:12 2010 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A29551065674 for ; Fri, 16 Jul 2010 09:22:12 +0000 (UTC) (envelope-from jdc@koitsu.dyndns.org) Received: from QMTA11.westchester.pa.mail.comcast.net (qmta11.westchester.pa.mail.comcast.net [76.96.59.211]) by mx1.freebsd.org (Postfix) with ESMTP id 4D0C38FC1C for ; Fri, 16 Jul 2010 09:22:11 +0000 (UTC) Received: from omta09.westchester.pa.mail.comcast.net ([76.96.62.20]) by QMTA11.westchester.pa.mail.comcast.net with comcast id iZLY1e0040SCNGk5BZNCDm; Fri, 16 Jul 2010 09:22:12 +0000 Received: from koitsu.dyndns.org ([98.248.41.155]) by omta09.westchester.pa.mail.comcast.net with comcast id iZNB1e0013LrwQ23VZNBa8; Fri, 16 Jul 2010 09:22:12 +0000 Received: by icarus.home.lan (Postfix, from userid 1000) id B885C9B425; Fri, 16 Jul 2010 02:22:09 -0700 (PDT) Date: Fri, 16 Jul 2010 02:22:09 -0700 From: Jeremy Chadwick To: Reko Turja Message-ID: <20100716092209.GA99001@icarus.home.lan> References: <4C3CC831.7040005@kaarposoft.dk> <20100713210729.GA11943@icarus.home.lan> <0228E401B70A4023A6F86A2ADAE59EF9@rivendell> <008D0251AE4F4A2DBAA1369410565B61@rivendell> <20100715162251.GA73929@icarus.home.lan> <20100716083617.GA97981@icarus.home.lan> <3FE6787E5CAC4C108C031CA6C8044FE4@rivendell> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3FE6787E5CAC4C108C031CA6C8044FE4@rivendell> User-Agent: Mutt/1.5.20 (2009-06-14) Cc: "Mikhail T." , freebsd-stable@freebsd.org, Henrik /KaarPoSoft Subject: Re: openldap client GSSAPI authentication segfaults in fbsd8stablei386 X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 16 Jul 2010 09:22:12 -0000 On Fri, Jul 16, 2010 at 11:56:17AM +0300, Reko Turja wrote: > Another datapoint that might or might not have some connection with > the issue is that in _gss_mg_error (m=0x28a86480, maj=851968, min=2) > at /usr/src/lib/libgssapi/gss_display_status.c > > void > 232 _gss_mg_error(struct _gss_mech_switch *m, OM_uint32 maj, > OM_uint32 min) > 233 { > 234 OM_uint32 major_status, minor_status; > 235 OM_uint32 message_content; > 236 struct mg_thread_ctx *mg; > 237 > 238 mg = &last_error_context; > 239 > 240 gss_release_buffer(&minor_status, &mg->maj_error); > 241 gss_release_buffer(&minor_status, &mg->min_error); > 242 > 243 mg->mech = &m->gm_mech_oid; > 244 mg->maj_stat = maj; > > when I give following comands, gdb tells me: > > (gdb) p last_error_context > Cannot find thread-local variables on this target > (gdb) p &last_error_context > Cannot find thread-local variables on this target > (gdb) p mg > No symbol "mg" in current context. > (gdb) I'm not sure if you're familiar with C or not. This is because gdb's context is at the wrong frame. In the backtrace you provided originally, you'd need to do: (gdb) frame 2 To look at the variables associated with gss_display_status.c. last_error_context could be an exported variable (you'd need to look through the source to find out where it's declared), so you might have to print it with its source filename referenced. The print command I gave you before (p/x filename.c::variable) didn't work, and that's a surprise since the gdb documentation I read says it should. Also be aware that mg is a struct, so "p mg" won't tell you much, other than whether or not it's null. You're probably more interested in members of the struct, such as mg->maj_error and mg->min_error, and other struct members. -- | Jeremy Chadwick jdc@parodius.com | | Parodius Networking http://www.parodius.com/ | | UNIX Systems Administrator Mountain View, CA, USA | | Making life hard for others since 1977. PGP: 4BD6C0CB |