(addr, addr_len)
| 37 | |
| 38 | |
| 39 | def ats_str(addr, addr_len): |
| 40 | if addr_len == 0: |
| 41 | return '' |
| 42 | #print("addr {} len {}".format(addr, addr_len)) |
| 43 | inferior = gdb.selected_inferior() |
| 44 | try: |
| 45 | buff = inferior.read_memory(addr, addr_len) |
| 46 | if buff[0] == '\x00': |
| 47 | return 'null' |
| 48 | else: |
| 49 | return buff |
| 50 | except BaseException: |
| 51 | return 'unreadable({:x})'.format(int(addr)) |
| 52 | |
| 53 | |
| 54 | def hdrtoken(idx): |