From: John Darrington <john@darrington.wattle.id.au>
To: Eli Zaretskii <eliz@gnu.org>
Cc: John Darrington <john@darrington.wattle.id.au>,
gdb-patches@sourceware.org
Subject: Re: [PATCH] Allow remote debugging over a local domain socket
Date: Fri, 31 Aug 2018 15:10:00 -0000 [thread overview]
Message-ID: <20180831151038.xwn4drwycgyjkveo@jocasta.intra> (raw)
In-Reply-To: <83efee37mg.fsf@gnu.org>
On Fri, Aug 31, 2018 at 05:58:47PM +0300, Eli Zaretskii wrote:
> +int
> +socket_read_prim (struct serial *scb, size_t count)
> +{
> + /* Need to cast to silence -Wpointer-sign on MinGW, as Winsock's
> + 'recv' takes 'char *' as second argument, while 'scb->buf' is
> + 'unsigned char *'. */
> + return recv (scb->fd, (char *) scb->buf, count, 0);
> +}
> +
> +int
> +socket_write_prim (struct serial *scb, const void *buf, size_t count)
> +{
> + /* On Windows, the second parameter to send is a "const char *"; on
> + UNIX systems it is generally "const void *". The cast to "const
> + char *" is OK everywhere, since in C++ any data pointer type can
> + be implicitly converted to "const void *". */
> + return send (scb->fd, (const char *) buf, count, 0);
> +}
I'm confused: why does this mention MinGW and Windows, when Windows
doesn't support AF_UNIX (AFAIK)? Should this stuff even be compiled
on Windows?
> +#ifdef USE_WIN32API
> + /* Do nothing; Windoze does not have local domain sockets. */
Exactly!
> - ops = serial_interface_lookup ("hardwire");
> + {
> + /* Check to see if name is a socket. If it is, then treat is
> + as such. Otherwise assume that it's a character device. */
> + struct stat sb;
> + if (0 == stat (name, &sb) && ((sb.st_mode & S_IFMT) == S_IFSOCK))
AFAIK, S_IFSOCK is not defined in the MinGW headers, so we need some
replacement definition, or we need to ifdef this away in the Windows
build.
I am told, that the recent versions of Windows 10 do indeed have local
domain sockets. But if you like, I can conditionally include the file
in the SER_HARDWIRE variable. Then the whole issue is moot.
J'
--
Avoid eavesdropping. Send strong encrypted email.
PGP Public key ID: 1024D/2DE827B3
fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3
See http://sks-keyservers.net or any PGP keyserver for public key.
next prev parent reply other threads:[~2018-08-31 15:10 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-08-29 7:05 Remote debugging over local domain sockets? John Darrington
2018-08-29 15:17 ` Tom Tromey
2018-08-29 15:28 ` John Darrington
2018-08-29 15:39 ` Tom Tromey
2018-08-31 10:18 ` [PATCH] Allow remote debugging over a local domain socket John Darrington
2018-08-31 14:59 ` Eli Zaretskii
2018-08-31 15:10 ` John Darrington [this message]
2018-08-31 17:50 ` Eli Zaretskii
2018-08-31 15:10 ` Tom Tromey
2018-08-31 15:12 ` John Darrington
2018-08-31 16:01 ` Pedro Alves
2018-08-31 16:40 ` John Darrington
2018-09-03 13:19 ` Pedro Alves
2018-09-03 18:49 ` John Darrington
2018-10-01 19:45 ` Pedro Alves
2018-10-02 10:16 ` John Darrington
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=20180831151038.xwn4drwycgyjkveo@jocasta.intra \
--to=john@darrington.wattle.id.au \
--cc=eliz@gnu.org \
--cc=gdb-patches@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).