gdb/
PR 11804 * defs.h (find_memory_region_ftype): New comment. New arg modified. * fbsd-nat.c (fbsd_find_memory_regions): Add the passed modified value. * gcore.c (gcore_create_callback): New function comment. Add modified parameter. Only write modified regions. Set SEC_READONLY exactly according to MODIFIED. (objfile_find_memory_regions): Ignore separate debug info files. Ass the passed modified value to FUNC. * gnu-nat.c (gnu_find_memory_regions): Add the passed modified value. * linux-tdep.c (linux_find_memory_regions): Try to reads smaps file first. New variables modified and has_anonymous. Parse the lines of smaps file. Add the passed MODIFIED value to FUNC. * procfs.c (find_memory_regions_callback): Add the passed modified value. gdb/testsuite/ PR 11804 * gdb.base/gcore-relro.exp: New file. * gdb.base/gcore-relro-main.c: New file. * gdb.base/gcore-relro-lib.c: New file.
This commit is contained in:
parent
82435b3b3d
commit
4f69f4c267
11 changed files with 219 additions and 12 deletions
|
@ -362,9 +362,14 @@ extern void init_source_path (void);
|
|||
|
||||
/* From exec.c */
|
||||
|
||||
/* Process memory area starting at ADDR with length SIZE. Area is readable iff
|
||||
READ is non-zero, writable if WRITE is non-zero, executable if EXEC is
|
||||
non-zero. Area is possibly changed against its original file based copy if
|
||||
MODIFIED is non-zero. DATA is passed without changes from a caller. */
|
||||
|
||||
typedef int (*find_memory_region_ftype) (CORE_ADDR addr, unsigned long size,
|
||||
int read, int write, int exec,
|
||||
void *data);
|
||||
int modified, void *data);
|
||||
|
||||
/* Take over the 'find_mapped_memory' vector from exec.c. */
|
||||
extern void exec_set_find_memory_regions
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue