aboutsummaryrefslogtreecommitdiffstats
path: root/scd
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2007-11-19 16:03:50 +0000
committerWerner Koch <[email protected]>2007-11-19 16:03:50 +0000
commit55ba204bfa848c2e591a29fedc9f103103493a57 (patch)
treee37263e4d3a25e2aa300faf4c5240191b54ea1a7 /scd
parentUpdated (diff)
downloadgnupg-55ba204bfa848c2e591a29fedc9f103103493a57.tar.gz
gnupg-55ba204bfa848c2e591a29fedc9f103103493a57.zip
Started to implement the audit log feature.
Pass PINENTRY_USER_DATA and XAUTHORITY to Pinentry. Improved support for the quality bar. Minor internal restructuring. Translation fixes.
Diffstat (limited to 'scd')
-rw-r--r--scd/ChangeLog14
-rw-r--r--scd/scdaemon.c17
-rw-r--r--scd/scdaemon.h1
3 files changed, 26 insertions, 6 deletions
diff --git a/scd/ChangeLog b/scd/ChangeLog
index 382961dbc..678083692 100644
--- a/scd/ChangeLog
+++ b/scd/ChangeLog
@@ -1,3 +1,17 @@
+2007-11-14 Werner Koch <[email protected]>
+
+ * scdaemon.c (main): Pass STANDARD_SOCKET flag to
+ create_server_socket.
+
+2007-11-13 Werner Koch <[email protected]>
+
+ * scdaemon.c (start_connection_thread): Do not call
+ assuan_sock_check_nonce if we are running in --server mode.
+
+2007-11-07 Werner Koch <[email protected]>
+
+ * scdaemon.h: Remove errors.h.
+
2007-10-02 Werner Koch <[email protected]>
* command.c (cmd_getinfo): Add "pid" subcommand.
diff --git a/scd/scdaemon.c b/scd/scdaemon.c
index 41085049b..8b5b7dcd7 100644
--- a/scd/scdaemon.c
+++ b/scd/scdaemon.c
@@ -632,7 +632,8 @@ main (int argc, char **argv )
"S.scdaemon",
"/tmp/gpg-XXXXXX/S.scdaemon");
- fd = FD2INT(create_server_socket (0, socket_name, &socket_nonce));
+ fd = FD2INT(create_server_socket (standard_socket,
+ socket_name, &socket_nonce));
}
tattr = pth_attr_new();
@@ -656,6 +657,8 @@ main (int argc, char **argv )
scd_exit (2);
}
+ /* We run handle_connection to wait for the shutdown signal and
+ to run the ticker stuff. */
handle_connections (fd);
if (fd != -1)
close (fd);
@@ -678,7 +681,8 @@ main (int argc, char **argv )
"S.scdaemon",
"/tmp/gpg-XXXXXX/S.scdaemon");
- fd = FD2INT (create_server_socket (0, socket_name, &socket_nonce));
+ fd = FD2INT (create_server_socket (standard_socket,
+ socket_name, &socket_nonce));
fflush (NULL);
@@ -975,14 +979,16 @@ create_server_socket (int is_standard_name, const char *name,
if (rc == -1)
{
log_error (_("error binding socket to `%s': %s\n"),
- serv_addr->sun_path, strerror (errno));
+ serv_addr->sun_path,
+ gpg_strerror (gpg_error_from_syserror ()));
assuan_sock_close (fd);
scd_exit (2);
}
if (listen (FD2INT(fd), 5 ) == -1)
{
- log_error (_("listen() failed: %s\n"), strerror (errno));
+ log_error (_("listen() failed: %s\n"),
+ gpg_strerror (gpg_error_from_syserror ()));
assuan_sock_close (fd);
scd_exit (2);
}
@@ -1001,7 +1007,8 @@ start_connection_thread (void *arg)
{
ctrl_t ctrl = arg;
- if (assuan_sock_check_nonce (ctrl->thread_startup.fd, &socket_nonce))
+ if (ctrl->thread_startup.fd != GNUPG_INVALID_FD
+ && assuan_sock_check_nonce (ctrl->thread_startup.fd, &socket_nonce))
{
log_info (_("error reading nonce on fd %d: %s\n"),
FD2INT(ctrl->thread_startup.fd), strerror (errno));
diff --git a/scd/scdaemon.h b/scd/scdaemon.h
index df4f89034..bfc9f358e 100644
--- a/scd/scdaemon.h
+++ b/scd/scdaemon.h
@@ -29,7 +29,6 @@
#include <time.h>
#include <gcrypt.h>
#include "../common/util.h"
-#include "../common/errors.h"
#include "../common/sysutils.h"
/* To convey some special hash algorithms we use algorithm numbers