--- kernel/exmap.c-dist 2009-08-24 14:35:19.000000000 -0700 +++ kernel/exmap.c 2009-08-24 14:39:06.000000000 -0700 @@ -392,7 +392,7 @@ struct task_struct *tsk; int errcode = -EINVAL; - tsk = find_task_by_pid(pid); + tsk = find_task_by_pid_type_ns(PIDTYPE_PID, pid, &init_pid_ns); if (tsk == NULL) { printk (KERN_ALERT "/proc/%s: can't find task for pid %d\n", @@ -507,7 +507,7 @@ NULL); if (exmap_proc_file == NULL) { - remove_proc_entry (PROCFS_NAME, &proc_root); + remove_proc_entry (PROCFS_NAME, NULL); printk (KERN_ALERT "/proc/%s: could not initialize\n", PROCFS_NAME); return -ENOMEM; @@ -515,7 +515,7 @@ exmap_proc_file->read_proc = procfile_read; exmap_proc_file->write_proc = procfile_write; - exmap_proc_file->owner = THIS_MODULE; + /*exmap_proc_file->owner = THIS_MODULE;*/ /* exmap_proc_file->mode = S_IFREG | S_IRUGO; */ /* TODO - this is quite probably a security problem */ @@ -532,5 +532,5 @@ void cleanup_module () { printk (KERN_INFO "/proc/%s: remove\n", PROCFS_NAME); - remove_proc_entry (PROCFS_NAME, &proc_root); + remove_proc_entry (PROCFS_NAME, NULL); } --- src/exmtool.cpp-dist 2009-08-24 14:42:17.000000000 -0700 +++ src/exmtool.cpp 2009-08-24 14:47:08.000000000 -0700 @@ -6,6 +6,7 @@ #include #include #include +#include using namespace std; using namespace Exmap; @@ -18,9 +19,9 @@ struct command { - char *command; + const char *command; Handler handler; - char *usage; + const char *usage; } cmd_handles[] = { { "procs", do_procs, --- jutil/jutil.hpp-dist 2009-08-24 14:43:50.000000000 -0700 +++ jutil/jutil.hpp 2009-08-24 14:44:18.000000000 -0700 @@ -12,6 +12,11 @@ #include #include +// for getenv +#include +// for strncmp etc. +#include + namespace jutil { // ------------------------------------------------------------