mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-03 12:11:33 +01:00
agent: --supervised mode improvements.
* agent/gpg-agent.c (map_supervised_socket): if the agent is running in --supervised mode and is not actually given LISTEN_FDNAMES directives, require at least fd 3 to be open for listening. -- Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
This commit is contained in:
parent
3b5f5e0eb0
commit
27f6d5b9f4
@ -716,12 +716,19 @@ map_supervised_sockets (gnupg_fd_t *r_fd,
|
||||
/* Assign the descriptors to the return values. */
|
||||
if (!fdnames)
|
||||
{
|
||||
struct stat statbuf;
|
||||
if (fd_count != 1)
|
||||
log_error ("no LISTEN_FDNAMES and LISTEN_FDS (%d) != 1"
|
||||
" in --supervised mode."
|
||||
" (ignoring all sockets but the first one)\n",
|
||||
fd_count);
|
||||
if (fstat (3, &statbuf) == -1 && errno ==EBADF)
|
||||
log_fatal ("file descriptor 3 must be valid in --supervised mode (as the "
|
||||
"agent's standard socket) if LISTEN_FDNAMES is not set\n");
|
||||
*r_fd = 3;
|
||||
socket_name = get_socket_name (3);
|
||||
if (!socket_name)
|
||||
log_error ("cannot learn socket name for fd 3\n");
|
||||
}
|
||||
else if (fd_count != nfdnames)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user