From 0ca198f1f90071a054287c204a3fd1b4ea315e18 Mon Sep 17 00:00:00 2001 From: Samuel Thibault <samuel.thibault@ens-lyon.org> Date: Mon, 11 Dec 2017 02:32:26 +0100 Subject: Record executable entry for PIE core dumps * hurd/process.defs (proc_set_entry, proc_get_entry): New RPCs. * hurd/process_reply.defs: Add skips for proc_set_entry, proc_get_entry. * hurd/process_request.defs: Likewise. * exec/exec.c (do_exec): Call proc_set_entry. * proc/proc.h (proc): Add p_entry field. * proc/mgt.c (S_proc_set_entry, S_proc_get_entry): New RPC implementations. * exec/elfcore.c (dump_core): Add at_entry note, call proc_get_entry to get it, and write it with WRITE_NOTE. --- exec/exec.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'exec/exec.c') diff --git a/exec/exec.c b/exec/exec.c index d78c54c5..2d74ee1c 100644 --- a/exec/exec.c +++ b/exec/exec.c @@ -1234,6 +1234,11 @@ do_exec (file_t file, goto out; set_name (newtask, argv, pid); + + e.error = proc_set_entry (boot->portarray[INIT_PORT_PROC], + e.entry); + if (e.error) + goto out; } else set_name (newtask, argv, 0); -- cgit v1.2.3