diff options
author | Werner Koch <[email protected]> | 2022-06-02 14:10:37 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2022-06-03 08:08:21 +0000 |
commit | d2d7a2b128e981740ee3a3c6e2859bec0202cb86 (patch) | |
tree | e4e8e62681ca9ae4cb678c0a9ac85d2b25ebd7a9 /common/init.c | |
parent | tools: Minor fix to gpg-connect-agent options. (diff) | |
download | gnupg-d2d7a2b128e981740ee3a3c6e2859bec0202cb86.tar.gz gnupg-d2d7a2b128e981740ee3a3c6e2859bec0202cb86.zip |
Remove remaining support for WindowsCE
--
Diffstat (limited to 'common/init.c')
-rw-r--r-- | common/init.c | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/common/init.c b/common/init.c index b9f05f359..269119ff1 100644 --- a/common/init.c +++ b/common/init.c @@ -35,9 +35,6 @@ # endif # include <windows.h> #endif -#ifdef HAVE_W32CE_SYSTEM -# include <assuan.h> /* For _assuan_w32ce_finish_pipe. */ -#endif #include <gcrypt.h> #include "util.h" @@ -69,16 +66,6 @@ static mem_cleanup_item_t mem_cleanup_list; gpg_err_source_t default_errsource = 0; -#ifdef HAVE_W32CE_SYSTEM -static void parse_std_file_handles (int *argcp, char ***argvp); -static void -sleep_on_exit (void) -{ - /* The sshd on CE swallows some of the command output. Sleeping a - while usually helps. */ - Sleep (400); -} -#endif /*HAVE_W32CE_SYSTEM*/ #if HAVE_W32_SYSTEM static void prepare_w32_commandline (int *argcp, char ***argvp); @@ -178,14 +165,6 @@ _init_common_subsystems (gpg_err_source_t errsource, int *argcp, char ***argvp) } #endif -#ifdef HAVE_W32CE_SYSTEM - /* Register the sleep exit function before the estream init so that - the sleep will be called after the estream registered atexit - function which flushes the left open estream streams and in - particular es_stdout. */ - atexit (sleep_on_exit); -#endif - if (!gcry_check_version (NEED_LIBGCRYPT_VERSION)) { log_fatal (_("%s is too old (need %s, have %s)\n"), "libgcrypt", @@ -196,11 +175,6 @@ _init_common_subsystems (gpg_err_source_t errsource, int *argcp, char ***argvp) gpgrt_init (); gpgrt_set_alloc_func (gcry_realloc); -#ifdef HAVE_W32CE_SYSTEM - /* Special hack for Windows CE: We extract some options from arg - to setup the standard handles. */ - parse_std_file_handles (argcp, argvp); -#endif #ifdef HAVE_W32_SYSTEM /* We want gettext to always output UTF-8 and we put the console in @@ -251,77 +225,6 @@ _init_common_subsystems (gpg_err_source_t errsource, int *argcp, char ***argvp) -/* WindowsCE uses a very strange way of handling the standard streams. - There is a function SetStdioPath to associate a standard stream - with a file or a device but what we really want is to use pipes as - standard streams. Despite that we implement pipes using a device, - we would have some limitations on the number of open pipes due to - the 3 character limit of device file name. Thus we don't take this - path. Another option would be to install a file system driver with - support for pipes; this would allow us to get rid of the device - name length limitation. However, with GnuPG we can get away be - redefining the standard streams and passing the handles to be used - on the command line. This has also the advantage that it makes - creating a process much easier and does not require the - SetStdioPath set and restore game. The caller needs to pass the - rendezvous ids using up to three options: - - -&S0=<rvid> -&S1=<rvid> -&S2=<rvid> - - They are all optional but they must be the first arguments on the - command line. Parsing stops as soon as an invalid option is found. - These rendezvous ids are then used to finish the pipe creation.*/ -#ifdef HAVE_W32CE_SYSTEM -static void -parse_std_file_handles (int *argcp, char ***argvp) -{ - int argc = *argcp; - char **argv = *argvp; - const char *s; - assuan_fd_t fd; - int i; - int fixup = 0; - - if (!argc) - return; - - for (argc--, argv++; argc; argc--, argv++) - { - s = *argv; - if (*s == '-' && s[1] == '&' && s[2] == 'S' - && (s[3] == '0' || s[3] == '1' || s[3] == '2') - && s[4] == '=' - && (strchr ("-01234567890", s[5]) || !strcmp (s+5, "null"))) - { - if (s[5] == 'n') - fd = ASSUAN_INVALID_FD; - else - fd = _assuan_w32ce_finish_pipe (atoi (s+5), s[3] != '0'); - _es_set_std_fd (s[3] - '0', (int)fd); - fixup++; - } - else - break; - } - - if (fixup) - { - argc = *argcp; - argc -= fixup; - *argcp = argc; - - argv = *argvp; - for (i=1; i < argc; i++) - argv[i] = argv[i + fixup]; - for (; i < argc + fixup; i++) - argv[i] = NULL; - } - - -} -#endif /*HAVE_W32CE_SYSTEM*/ - - /* For Windows we need to parse the command line so that we can * provide an UTF-8 encoded argv. If there is any Unicode character * we return a new array but if there is no Unicode character we do |