summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/patches/introspection0001-hurd-add-an-Hurd-server-introspection-protocol.patch (renamed from debian/patches/0001-hurd-add-an-Hurd-server-introspection-protocol.patch)2
-rw-r--r--debian/patches/introspection0002-libintrospection-a-library-for-Hurd-server-introspec.patch (renamed from debian/patches/0002-libintrospection-a-library-for-Hurd-server-introspec.patch)2
-rw-r--r--debian/patches/introspection0003-libports-implement-the-Hurd-server-introspection-pro.patch (renamed from debian/patches/0003-libports-implement-the-Hurd-server-introspection-pro.patch)2
-rw-r--r--debian/patches/introspection0004-utils-implement-portinfo-query-process.patch (renamed from debian/patches/0004-utils-implement-portinfo-query-process.patch)2
-rw-r--r--debian/patches/introspection0005-libdiskfs-annotate-objects-managed-by-libports.patch (renamed from debian/patches/0005-libdiskfs-annotate-objects-managed-by-libports.patch)2
-rw-r--r--debian/patches/introspection0006-libpager-annotate-objects-managed-by-libports.patch (renamed from debian/patches/0006-libpager-annotate-objects-managed-by-libports.patch)2
-rw-r--r--debian/patches/introspection0007-ext2fs-annotate-objects-managed-by-libports.patch (renamed from debian/patches/0007-ext2fs-annotate-objects-managed-by-libports.patch)2
-rw-r--r--debian/patches/introspection0008-utils-rpctrace-support-attaching-to-servers.patch (renamed from debian/patches/0008-utils-rpctrace-support-attaching-to-servers.patch)60
-rw-r--r--debian/patches/series16
9 files changed, 44 insertions, 46 deletions
diff --git a/debian/patches/0001-hurd-add-an-Hurd-server-introspection-protocol.patch b/debian/patches/introspection0001-hurd-add-an-Hurd-server-introspection-protocol.patch
index 5c8f6201..6ed724f4 100644
--- a/debian/patches/0001-hurd-add-an-Hurd-server-introspection-protocol.patch
+++ b/debian/patches/introspection0001-hurd-add-an-Hurd-server-introspection-protocol.patch
@@ -1,4 +1,4 @@
-From a906f41d8d9f41da77bc32aece6983e88a17cc42 Mon Sep 17 00:00:00 2001
+From 9eb39e752a828ed0f9b4adff13d524de51be1025 Mon Sep 17 00:00:00 2001
From: Justus Winter <4winter@informatik.uni-hamburg.de>
Date: Wed, 21 May 2014 16:40:12 +0200
Subject: [PATCH hurd 1/8] hurd: add an Hurd server introspection protocol
diff --git a/debian/patches/0002-libintrospection-a-library-for-Hurd-server-introspec.patch b/debian/patches/introspection0002-libintrospection-a-library-for-Hurd-server-introspec.patch
index 6ca838ef..d77dcf15 100644
--- a/debian/patches/0002-libintrospection-a-library-for-Hurd-server-introspec.patch
+++ b/debian/patches/introspection0002-libintrospection-a-library-for-Hurd-server-introspec.patch
@@ -1,4 +1,4 @@
-From 3b412f479bc34cd4a6e9d0e6617079cec7df1e15 Mon Sep 17 00:00:00 2001
+From 9ad1570187b57a7aed13a8c93718528ef6e7c46b Mon Sep 17 00:00:00 2001
From: Justus Winter <4winter@informatik.uni-hamburg.de>
Date: Fri, 23 May 2014 17:01:48 +0200
Subject: [PATCH hurd 2/8] libintrospection: a library for Hurd server
diff --git a/debian/patches/0003-libports-implement-the-Hurd-server-introspection-pro.patch b/debian/patches/introspection0003-libports-implement-the-Hurd-server-introspection-pro.patch
index 7317ce9d..096cfe64 100644
--- a/debian/patches/0003-libports-implement-the-Hurd-server-introspection-pro.patch
+++ b/debian/patches/introspection0003-libports-implement-the-Hurd-server-introspection-pro.patch
@@ -1,4 +1,4 @@
-From fe3d66fc248e7ee609b3474826e5879ef230e902 Mon Sep 17 00:00:00 2001
+From 2caf570c676b4b0df3dc54fa4f1f9d99a6fe3202 Mon Sep 17 00:00:00 2001
From: Justus Winter <4winter@informatik.uni-hamburg.de>
Date: Wed, 21 May 2014 16:47:14 +0200
Subject: [PATCH hurd 3/8] libports: implement the Hurd server introspection
diff --git a/debian/patches/0004-utils-implement-portinfo-query-process.patch b/debian/patches/introspection0004-utils-implement-portinfo-query-process.patch
index fc8f9495..5267a527 100644
--- a/debian/patches/0004-utils-implement-portinfo-query-process.patch
+++ b/debian/patches/introspection0004-utils-implement-portinfo-query-process.patch
@@ -1,4 +1,4 @@
-From 5411705bb3cb9766183dd022067f2c2dc6798b40 Mon Sep 17 00:00:00 2001
+From 67a9acc0576ab5db03e46f2d5f7abcc2deab487c Mon Sep 17 00:00:00 2001
From: Justus Winter <4winter@informatik.uni-hamburg.de>
Date: Wed, 21 May 2014 17:38:46 +0200
Subject: [PATCH hurd 4/8] utils: implement portinfo --query-process
diff --git a/debian/patches/0005-libdiskfs-annotate-objects-managed-by-libports.patch b/debian/patches/introspection0005-libdiskfs-annotate-objects-managed-by-libports.patch
index 204f1048..4969ab69 100644
--- a/debian/patches/0005-libdiskfs-annotate-objects-managed-by-libports.patch
+++ b/debian/patches/introspection0005-libdiskfs-annotate-objects-managed-by-libports.patch
@@ -1,4 +1,4 @@
-From 3d3e9329e66e2f5de04d6a3d4474cd71a0bf40e0 Mon Sep 17 00:00:00 2001
+From 785330417adeb6d7c8fca3640b1ada75c1507592 Mon Sep 17 00:00:00 2001
From: Justus Winter <4winter@informatik.uni-hamburg.de>
Date: Wed, 21 May 2014 18:17:33 +0200
Subject: [PATCH hurd 5/8] libdiskfs: annotate objects managed by libports
diff --git a/debian/patches/0006-libpager-annotate-objects-managed-by-libports.patch b/debian/patches/introspection0006-libpager-annotate-objects-managed-by-libports.patch
index 94da9f48..586645ec 100644
--- a/debian/patches/0006-libpager-annotate-objects-managed-by-libports.patch
+++ b/debian/patches/introspection0006-libpager-annotate-objects-managed-by-libports.patch
@@ -1,4 +1,4 @@
-From 79b466ff54b37fc0596cf4011cb9a5c289147593 Mon Sep 17 00:00:00 2001
+From c56a649bc3fcd633217b6979dea67df0b059b296 Mon Sep 17 00:00:00 2001
From: Justus Winter <4winter@informatik.uni-hamburg.de>
Date: Wed, 21 May 2014 18:33:14 +0200
Subject: [PATCH hurd 6/8] libpager: annotate objects managed by libports
diff --git a/debian/patches/0007-ext2fs-annotate-objects-managed-by-libports.patch b/debian/patches/introspection0007-ext2fs-annotate-objects-managed-by-libports.patch
index 6891785f..8c38264a 100644
--- a/debian/patches/0007-ext2fs-annotate-objects-managed-by-libports.patch
+++ b/debian/patches/introspection0007-ext2fs-annotate-objects-managed-by-libports.patch
@@ -1,4 +1,4 @@
-From 09418e36c9ced75537e12f95ab831456ca6dedc6 Mon Sep 17 00:00:00 2001
+From 28d59b58e0f6bbe93454010349762cbd37978100 Mon Sep 17 00:00:00 2001
From: Justus Winter <4winter@informatik.uni-hamburg.de>
Date: Wed, 21 May 2014 18:39:38 +0200
Subject: [PATCH hurd 7/8] ext2fs: annotate objects managed by libports
diff --git a/debian/patches/0008-utils-rpctrace-support-attaching-to-servers.patch b/debian/patches/introspection0008-utils-rpctrace-support-attaching-to-servers.patch
index 1cc3fcb2..63eef938 100644
--- a/debian/patches/0008-utils-rpctrace-support-attaching-to-servers.patch
+++ b/debian/patches/introspection0008-utils-rpctrace-support-attaching-to-servers.patch
@@ -1,4 +1,4 @@
-From 7c693e8bd0f01911951644fb1891ae56c48aa227 Mon Sep 17 00:00:00 2001
+From cc6d7f0e5540f8745a6d3f0fab3f6f1a53669760 Mon Sep 17 00:00:00 2001
From: Justus Winter <4winter@informatik.uni-hamburg.de>
Date: Fri, 23 May 2014 08:42:45 +0200
Subject: [PATCH hurd 8/8] utils/rpctrace: support attaching to servers
@@ -18,11 +18,11 @@ tracing.
2 files changed, 220 insertions(+), 3 deletions(-)
diff --git a/utils/Makefile b/utils/Makefile
-index 241b060..df96d33 100644
+index 955789b..352494a 100644
--- a/utils/Makefile
+++ b/utils/Makefile
@@ -34,7 +34,7 @@ SRCS = shd.c ps.c settrans.c syncfs.c showtrans.c addauth.c rmauth.c \
- nullauth.c match-options.c
+ nullauth.c match-options.c msgids.c rpcscan.c
OBJS = $(filter-out %.sh,$(SRCS:.c=.o))
-HURDLIBS = ps ihash store fshelp ports ftpconn shouldbeinlibc
@@ -34,14 +34,14 @@ index 241b060..df96d33 100644
$(filter-out $(special-targets), $(targets)): %: %.o
--rpctrace: ../libports/libports.a ../libihash/libihash.a
-+rpctrace: ../libports/libports.a ../libihash/libihash.a \
-+ ../libintrospection/libintrospection.a hurd_portUser.o
- rpctrace-CPPFLAGS = -DDATADIR=\"${datadir}\"
-
- fakeauth: authServer.o auth_requestUser.o interruptServer.o \
+-rpctrace: ../libports/libports.a
++rpctrace: ../libports/libports.a \
++ ../libintrospection/libintrospection.a hurd_portUser.o
+ rpctrace rpcscan: msgids.o \
+ ../libihash/libihash.a
+ msgids-CPPFLAGS = -DDATADIR=\"${datadir}\"
diff --git a/utils/rpctrace.c b/utils/rpctrace.c
-index 48daa07..3dbcfc7 100644
+index d53b510..c3c311d 100644
--- a/utils/rpctrace.c
+++ b/utils/rpctrace.c
@@ -23,6 +23,7 @@
@@ -52,16 +52,15 @@ index 48daa07..3dbcfc7 100644
#include <mach/message.h>
#include <assert.h>
#include <fcntl.h>
-@@ -41,6 +42,8 @@
- #include <argz.h>
+@@ -40,6 +41,7 @@
#include <envz.h>
+ #include "msgids.h"
+#include "hurd_port_U.h"
-+
+
const char *argp_program_version = STANDARD_HURD_VERSION (rpctrace);
- #define STD_MSGIDS_DIR DATADIR "/msgids/"
-@@ -51,6 +54,11 @@ static unsigned strsize = 80;
+@@ -48,6 +50,11 @@ static unsigned strsize = 80;
static const struct argp_option options[] =
{
{"output", 'o', "FILE", 0, "Send trace output to FILE instead of stderr."},
@@ -70,10 +69,10 @@ index 48daa07..3dbcfc7 100644
+ "for Hurd servers implementing the introspection protocol."},
+ {"reference-port", 'P', "PORT", 0, "Trace all requests to ports of the "
+ "same class as PORT. PORT must denote a receive right in PID."},
- {"nostdinc", OPT_NOSTDINC, 0, 0,
- "Do not search inside the standard system directory, `" STD_MSGIDS_DIR
- "', for `.msgids' files."},
-@@ -963,7 +971,7 @@ print_contents (mach_msg_header_t *inp,
+ {0, 's', "SIZE", 0, "Specify the maximum string size to print (the default is 80)."},
+ {0, 'E', "var[=value]", 0,
+ "Set/change (var=value) or remove (var) an environment variable among the "
+@@ -852,7 +859,7 @@ print_contents (mach_msg_header_t *inp,
what task that port name is meaningful in. If it's meaningful in
a traced task, then it refers to our intercepting port rather than
the original port anyway. */
@@ -82,9 +81,9 @@ index 48daa07..3dbcfc7 100644
{
/* These are port rights. Translate them into wrappers. */
mach_port_t *const portnames = data;
-@@ -1823,12 +1831,197 @@ scan_msgids_dir (char **argz, size_t *argz_len, char *dir, bool append)
- /* If the directory couldn't be scanned for whatever reason, just ignore
- it. */
+@@ -1669,10 +1676,196 @@ traced_spawn (char **argv, char **envp)
+
+ return pid;
}
+
+/* Return the task corresponding to the user argument ARG, exiting with an
@@ -273,14 +272,13 @@ index 48daa07..3dbcfc7 100644
+int
main (int argc, char **argv, char **envp)
{
- char *msgids_files_argz = NULL;
- size_t msgids_files_argz_len = 0;
+ mach_port_t target_task = MACH_PORT_NULL;
+ mach_port_t reference_port = MACH_PORT_NULL;
- bool nostdinc = FALSE;
++ bool nostdinc = FALSE;
const char *outfile = 0;
char **cmd_argv = 0;
-@@ -1841,12 +2034,23 @@ main (int argc, char **argv, char **envp)
+ pthread_t thread;
+@@ -1684,12 +1877,23 @@ main (int argc, char **argv, char **envp)
/* Parse our options... */
error_t parse_opt (int key, char *arg, struct argp_state *state)
{
@@ -301,10 +299,10 @@ index 48daa07..3dbcfc7 100644
+ argp_error (state, "Invalid port name: %s", arg);
+ break;
+
- case OPT_NOSTDINC:
- nostdinc = TRUE;
+ case 's':
+ strsize = atoi (arg);
break;
-@@ -1895,10 +2099,16 @@ main (int argc, char **argv, char **envp)
+@@ -1723,10 +1927,16 @@ main (int argc, char **argv, char **envp)
break;
case ARGP_KEY_NO_ARGS:
@@ -321,7 +319,7 @@ index 48daa07..3dbcfc7 100644
cmd_argv = &state->argv[state->next - 1];
state->next = state->argc;
break;
-@@ -1913,6 +2123,9 @@ main (int argc, char **argv, char **envp)
+@@ -1746,6 +1956,9 @@ main (int argc, char **argv, char **envp)
/* Parse our arguments. */
argp_parse (&argp, argc, argv, ARGP_IN_ORDER, 0, 0);
@@ -331,7 +329,7 @@ index 48daa07..3dbcfc7 100644
err = mach_port_allocate (mach_task_self (), MACH_PORT_RIGHT_DEAD_NAME,
&unknown_task);
assert_perror (err);
-@@ -1944,6 +2157,9 @@ main (int argc, char **argv, char **envp)
+@@ -1760,6 +1973,9 @@ main (int argc, char **argv, char **envp)
ostream = stderr;
setlinebuf (ostream);
diff --git a/debian/patches/series b/debian/patches/series
index bc3855a7..2aa2a2ee 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -45,14 +45,6 @@ merge-me-0002-startup-faster-reboots.patch
thomas_term.patch
ajoin.patch
proc_disable_new_task_notifications.patch
-0001-hurd-add-an-Hurd-server-introspection-protocol.patch
-0002-libintrospection-a-library-for-Hurd-server-introspec.patch
-0003-libports-implement-the-Hurd-server-introspection-pro.patch
-0004-utils-implement-portinfo-query-process.patch
-0005-libdiskfs-annotate-objects-managed-by-libports.patch
-0006-libpager-annotate-objects-managed-by-libports.patch
-0007-ext2fs-annotate-objects-managed-by-libports.patch
-0008-utils-rpctrace-support-attaching-to-servers.patch
bootshell0001-daemons-console-run-add-console-argument-to-select-t.patch
bootshell0002-trans-add-startup-standalone.patch
bootshell0003-libdiskfs-fixes-XXX.patch
@@ -71,3 +63,11 @@ huge-nodecache0001-xxx-huge-nodecache.patch
dde-enable-device.patch
rpcscan0001-utils-split-off-the-message-id-parsing.patch
rpcscan0002-utils-rpcscan-new-utility.patch
+introspection0001-hurd-add-an-Hurd-server-introspection-protocol.patch
+introspection0002-libintrospection-a-library-for-Hurd-server-introspec.patch
+introspection0003-libports-implement-the-Hurd-server-introspection-pro.patch
+introspection0004-utils-implement-portinfo-query-process.patch
+introspection0005-libdiskfs-annotate-objects-managed-by-libports.patch
+introspection0006-libpager-annotate-objects-managed-by-libports.patch
+introspection0007-ext2fs-annotate-objects-managed-by-libports.patch
+introspection0008-utils-rpctrace-support-attaching-to-servers.patch