public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
From: Rick van Rein <rick@openfortress.nl>
To: gdb@sourceware.org
Subject: howto?  gdb --> AF_UNIX --> gdbserver
Date: Sat, 19 Dec 2020 15:50:59 +0100	[thread overview]
Message-ID: <5FDE1353.9030700@openfortress.nl> (raw)

Hello,

Our project uses a test program [0][1] that automatically runs and
connects test processes.  It would be useful to debug one or more of
these in their connected context.  The best match would be to use a
socket file name relative to the testdir, rather than a numeric port
shared with the entire host.

* I cannot figure out how to tell gdbserver to listen to a UNIX domain
socket at a given filename.  I would expect it to listen, like it does
for TCP sockets, but it complains that the name is missing.

* Using gdb with "target remote", the same thing seems to happen; it
seems to want a pre-existing UNIX domain socket.  This _is_ in line with
the TCP style of connecting.

* The automated tests might benefit from the reverse approach; try to
start gdbserver when it can connect to the UNIX domain socket of the
host, and if not continue with exec() to run the process without
debugger.  This is not how things seem to work, judging from the sparse
documentation.

* In all cases, both the syntax and available features are unclear and I
am confused after trying the things I can imagine; does a socket need a
prefix "unix:" or "unix::" or does it figure it all out?  An example
flow could be really useful...

The documentation about gdb and gdbserver is not really helping in
answering these questions.  May I suggest extending it?  Happy to
proof-read or, once understood, write some proze that would have helped me.


Thanks!
 -Rick


[0] https://gitlab.com/arpa2/kip/-/blob/initial/PYPELINE.MD
[1] https://gitlab.com/arpa2/kip/-/blob/initial/test/pypeline

             reply	other threads:[~2020-12-19 14:51 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-19 14:50 Rick van Rein [this message]
2020-12-19 17:10 ` Martin Simmons
2020-12-22 10:15   ` Rick van Rein

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5FDE1353.9030700@openfortress.nl \
    --to=rick@openfortress.nl \
    --cc=gdb@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).