On 15 Aug 08, at 11:20, Smiler S wrote: > From: Andy Davis > <iosftpexploit_at_googlemail.com<iosftpexploit_at_googlemail.com? > Subject=Re:%20Step-by-step%20instructions%20for%20debugging%20Cisco > %20IOS%20using%20gdb>> > > Date: Tue, 12 Aug 2008 22:01:37 +0100 > >> Congratulations you are now debugging IOS ;-) >> One unusual feature, which I have yet to explain is that when the >> registers are displayed they are all offset by 1 e.g: > > If a vector variable is stored in a register, gcc writes debug > information > telling gdb which register the variable is stored in. This mapping is > changed between gcc2 & gcc3. Since there isn't anything in the debug > output > to distinguish code compiled by gcc3 from code compiled by gcc2, > there is no > way for gdb to know the right map. gdb supports the gcc3 map. > > If vector code is compiled by gcc2 as in the case of IOS, then the > register > assignment will be off by 1.
This isn't vector code, though - the whole register map is off. I'm not particularly familiar with IOS, but my guess is the debugging protocol is a little off from what GDB expects. _______________________________________________ Full-Disclosure - We believe in it. Charter: http://lists.grok.org.uk/full-disclosure-charter.html Hosted and sponsored by Secunia - http://secunia.com/
