summaryrefslogtreecommitdiff
path: root/hurd/debugging/rpctrace.mdwn
diff options
context:
space:
mode:
Diffstat (limited to 'hurd/debugging/rpctrace.mdwn')
-rw-r--r--hurd/debugging/rpctrace.mdwn43
1 files changed, 33 insertions, 10 deletions
diff --git a/hurd/debugging/rpctrace.mdwn b/hurd/debugging/rpctrace.mdwn
index 68edca2f..f7136056 100644
--- a/hurd/debugging/rpctrace.mdwn
+++ b/hurd/debugging/rpctrace.mdwn
@@ -1,12 +1,13 @@
-[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]]
+[[!meta copyright="Copyright © 2007, 2008, 2009, 2010, 2011 Free Software
+Foundation, Inc."]]
-[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable
+[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
-is included in the section entitled
-[[GNU_Free_Documentation_License|/fdl]]."]]"""]]
+is included in the section entitled [[GNU Free Documentation
+License|/fdl]]."]]"""]]
*rpctrace* is -- roughly -- an equivavlent to Linux's *strace* or Solaris' or
BSD's *truss*. It is used to trace [[remote_procedure_call|rpc]]s a process is
@@ -17,6 +18,8 @@ See `rpctrace --help` about how to use it.
# Issues and Patches
+[[!tag open_issue_hurd]]
+
* <http://savannah.gnu.org/patch/?2104> -- don't assert that local port names
are valid
* <http://savannah.gnu.org/bugs/?3939> -- `rpctrace`d program hangs when signal
@@ -24,12 +27,32 @@ See `rpctrace --help` about how to use it.
* <http://savannah.gnu.org/patch/?1633> -- terminated with `C-c` `rpctrace`d
programs hang
* <http://savannah.gnu.org/patch/?5580> -- more readable output
-* <http://savannah.gnu.org/bugs/?20612> -- heisenbug
+
+* IRC, unknown channel, unknown date
+
+ <youpi> how to rpctrace a translator ?
+ <youpi> ah, just settrans /usr/bin/rpctrace...
+ <youpi> hum, it hung, and killing it got a Mach panic (thread in unexpected
+ state) ...
+
+* IRC, unknown channel, unknown date
+
+ <antrik> hm... for a funny effect, try running rpctrace on
+ /servers/socket/1, and then use dpkg... ;-)
+
+* IRC, unknown channel, unknown date.
+
+ <youpi> the problem of rpctrace is that it's a man in the middle :)
+ <youpi> so in principle, by design authentication stuff shouldn't work
+ <antrik> I don't think the Hurd auth mechanism in any way prevents or tries to prevent man-in-the-middle...
+ <youpi> maybe, but just try, you'll see all kinds of issue as soon as you have authentication stuff
+ <youpi> and the basic reason is that being a man in the middle needs special care
+ <youpi> which rpctrace doesn't completely do
+ <antrik> it's a while since I have dived into rpctrace; but AIUI, it should work just fine if the proxying is done properly
+ <antrik> note that there is a number of known bugs in rpctrace, for which zhengda has sent patches... though I haven't reviewed all of them I think
+ <antrik> there are some nasty Mach operations that are really hard to proxy -- but I don't think the auth mechanism needs any of these...
-# TODO
+# See Also
- <youpi> how to rpctrace a translator ?
- <youpi> ah, just settrans /usr/bin/rpctrace...
- <youpi> hum, it hung, and killing it got a Mach panic (thread in unexpected
- state) ...
+See also [[open_issues/librpci]].