diff options
Diffstat (limited to 'src/pinentry/util.cpp')
-rw-r--r-- | src/pinentry/util.cpp | 42 |
1 files changed, 5 insertions, 37 deletions
diff --git a/src/pinentry/util.cpp b/src/pinentry/util.cpp index f1bac4ba..5b4a4e80 100644 --- a/src/pinentry/util.cpp +++ b/src/pinentry/util.cpp @@ -24,13 +24,13 @@ #include <unistd.h> #ifndef WINDOWS -# include <errno.h> +#include <errno.h> #endif +#include <assert.h> #include <stdarg.h> #include <stdio.h> #include <stdlib.h> #include <string.h> -#include <assert.h> #include "util.h" @@ -39,32 +39,6 @@ static int uid_set = 0; static uid_t real_uid, file_uid; #endif /*!HAVE_DOSISH_SYSTEM*/ -/* Write DATA of size BYTES to FD, until all is written or an error - occurs. */ -ssize_t -xwrite(int fd, const void *data, size_t bytes) -{ - char *ptr; - size_t todo; - ssize_t written = 0; - - for (ptr = (char *)data, todo = bytes; todo; ptr += written, todo -= written) - { - do - written = write (fd, ptr, todo); - while ( -#ifdef WINDOWS - 0 -#else - written == -1 && errno == EINTR -#endif - ); - if (written < 0) - break; - } - return written; -} - #if 0 extern int debug; @@ -88,23 +62,17 @@ debugmsg(const char *fmt, ...) /* initialize uid variables */ #ifndef HAVE_DOSISH_SYSTEM -static void -init_uids(void) -{ +static void init_uids(void) { real_uid = getuid(); file_uid = geteuid(); uid_set = 1; } #endif - /* drop all additional privileges */ -void -drop_privs(void) -{ +void drop_privs(void) { #ifndef HAVE_DOSISH_SYSTEM - if (!uid_set) - init_uids(); + if (!uid_set) init_uids(); if (real_uid != file_uid) { if (setuid(real_uid) < 0) { perror("dropping privileges failed"); |