From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17292 invoked by alias); 5 Aug 2006 14:07:38 -0000 Received: (qmail 17282 invoked by uid 22791); 5 Aug 2006 14:07:37 -0000 X-Spam-Check-By: sourceware.org Received: from nevyn.them.org (HELO nevyn.them.org) (66.93.172.17) by sourceware.org (qpsmtpd/0.31.1) with ESMTP; Sat, 05 Aug 2006 14:07:35 +0000 Received: from drow by nevyn.them.org with local (Exim 4.54) id 1G9MoL-000795-Ix; Sat, 05 Aug 2006 10:07:29 -0400 Date: Sat, 05 Aug 2006 14:07:00 -0000 From: Daniel Jacobowitz To: Mark Kettenis Cc: nickrob@snap.net.nz, gdb@sources.redhat.com Subject: Re: stepping over longjmp Message-ID: <20060805140728.GA27405@nevyn.them.org> Mail-Followup-To: Mark Kettenis , nickrob@snap.net.nz, gdb@sources.redhat.com References: <17619.308.218261.761948@kahikatea.snap.net.nz> <20060804131913.GB26799@nevyn.them.org> <17619.51169.377583.613674@kahikatea.snap.net.nz> <20060804234544.GA13412@nevyn.them.org> <17619.64925.33169.651834@kahikatea.snap.net.nz> <200608051239.k75CdwTH005284@elgar.sibelius.xs4all.nl> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200608051239.k75CdwTH005284@elgar.sibelius.xs4all.nl> User-Agent: Mutt/1.5.11+cvs20060403 X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2006-08/txt/msg00036.txt.bz2 On Sat, Aug 05, 2006 at 02:39:58PM +0200, Mark Kettenis wrote: > Unfortunately Ulrich's argument doesn't hold for GDB. But if we can > get at the "cookie" that's used to encrypt the addess, it should be > possible to undo the encryption. Lookes like the cookie is somewhere > in thread local storage. I'll see if I can come up with a way to > access it. It varies from platform to platform. There's actually two cookies (one for "pointers" and one for the GCC stack protection), and while the stack protection pointer is an ABI, the pointer protection cookie is considered glibc internal and might move around. And what's protected with it also varies from architecture to architecture, and version to version. I'm hoping that you can make an educated guess about where to find it anyway :-) Alternatively, maybe they'd be open to a debugging interface. -- Daniel Jacobowitz CodeSourcery