Linux server.nvwebsoft.co.in 3.10.0-1160.114.2.el7.x86_64 #1 SMP Wed Mar 20 15:54:52 UTC 2024 x86_64
Apache
: 162.240.12.249 | : 18.188.214.117
202 Domain
8.1.31
nbspublicschool
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
share /
gdb /
python /
gdb /
command /
[ HOME SHELL ]
Name
Size
Permission
Action
__init__.py
694
B
-rw-r--r--
__init__.pyc
132
B
-rw-r--r--
__init__.pyo
132
B
-rw-r--r--
explore.py
26.2
KB
-rw-r--r--
explore.pyc
22.78
KB
-rw-r--r--
explore.pyo
22.78
KB
-rw-r--r--
frame_filters.py
16.04
KB
-rw-r--r--
frame_filters.pyc
17.35
KB
-rw-r--r--
frame_filters.pyo
17.35
KB
-rw-r--r--
ignore_errors.py
1.33
KB
-rw-r--r--
ignore_errors.pyc
1.01
KB
-rw-r--r--
ignore_errors.pyo
1.01
KB
-rw-r--r--
pahole.py
2.73
KB
-rw-r--r--
pahole.pyc
2.31
KB
-rw-r--r--
pahole.pyo
2.31
KB
-rw-r--r--
pretty_printers.py
14.13
KB
-rw-r--r--
pretty_printers.pyc
10.92
KB
-rw-r--r--
pretty_printers.pyo
10.92
KB
-rw-r--r--
prompt.py
2.08
KB
-rw-r--r--
prompt.pyc
1.94
KB
-rw-r--r--
prompt.pyo
1.94
KB
-rw-r--r--
type_printers.py
4.32
KB
-rw-r--r--
type_printers.pyc
4.72
KB
-rw-r--r--
type_printers.pyo
4.72
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : pahole.py
# pahole command for gdb # Copyright (C) 2008, 2009, 2012 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. import gdb class Pahole (gdb.Command): """Show the holes in a structure. This command takes a single argument, a type name. It prints the type and displays comments showing where holes are.""" def __init__ (self): super (Pahole, self).__init__ ("pahole", gdb.COMMAND_NONE, gdb.COMPLETE_SYMBOL) def maybe_print_hole(self, bitpos, field_bitpos): if bitpos != field_bitpos: hole = field_bitpos - bitpos print ' /* XXX %d bit hole, try to pack */' % hole def pahole (self, type, level, name): if name is None: name = '' tag = type.tag if tag is None: tag = '' print '%sstruct %s {' % (' ' * (2 * level), tag) bitpos = 0 for field in type.fields (): # Skip static fields. if not hasattr (field, ('bitpos')): continue ftype = field.type.strip_typedefs() self.maybe_print_hole(bitpos, field.bitpos) bitpos = field.bitpos if field.bitsize > 0: fieldsize = field.bitsize else: # TARGET_CHAR_BIT here... fieldsize = 8 * ftype.sizeof # TARGET_CHAR_BIT print ' /* %3d %3d */' % (int (bitpos / 8), int (fieldsize / 8)), bitpos = bitpos + fieldsize if ftype.code == gdb.TYPE_CODE_STRUCT: self.pahole (ftype, level + 1, field.name) else: print ' ' * (2 + 2 * level), print '%s %s' % (str (ftype), field.name) if level == 0: self.maybe_print_hole(bitpos, 8 * type.sizeof) print ' ' * (14 + 2 * level), print '} %s' % name def invoke (self, arg, from_tty): type = gdb.lookup_type (arg) type = type.strip_typedefs () if type.code != gdb.TYPE_CODE_STRUCT: raise TypeError, '%s is not a struct type' % arg print ' ' * 14, self.pahole (type, 0, '') Pahole()
Close