diff options
Diffstat (limited to 'apps')
-rw-r--r-- | apps/include/apps.h | 13 | ||||
-rw-r--r-- | apps/include/platform.h | 32 | ||||
-rw-r--r-- | apps/vms_decc_argv.c | 3 |
3 files changed, 35 insertions, 13 deletions
diff --git a/apps/include/apps.h b/apps/include/apps.h index da8eae2d87..59e3e92821 100644 --- a/apps/include/apps.h +++ b/apps/include/apps.h @@ -32,6 +32,7 @@ # include "apps_ui.h" # include "opt.h" # include "fmt.h" +# include "platform.h" # if defined(OPENSSL_SYS_WIN32) || defined(OPENSSL_SYS_WINCE) # define openssl_fdset(a,b) FD_SET((unsigned int)a, b) @@ -97,18 +98,6 @@ typedef struct args_st { char **argv; } ARGS; -/* - * VMS C only for now, implemented in vms_decc_init.c - * If other C compilers forget to terminate argv with NULL, this function - * can be re-used. - */ -char **copy_argv(int *argc, char *argv[]); -/* - * Win32-specific argv initialization that splits OS-supplied UNICODE - * command line string to array of UTF8-encoded strings. - */ -void win32_utf8argv(int *argc, char **argv[]); - /* We need both wrap and the "real" function because libcrypto uses both. */ int wrap_password_callback(char *buf, int bufsiz, int verify, void *cb_data); diff --git a/apps/include/platform.h b/apps/include/platform.h new file mode 100644 index 0000000000..49276b6fc9 --- /dev/null +++ b/apps/include/platform.h @@ -0,0 +1,32 @@ +/* + * Copyright 2019 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the Apache License 2.0 (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#ifndef HEADER_PLATFORM_H +# define HEADER_PLATFORM_H + +# include <openssl/e_os2.h> + +# if defined(OPENSSL_SYS_VMS) && defined(__DECC) +/* + * VMS C only for now, implemented in vms_decc_init.c + * If other C compilers forget to terminate argv with NULL, this function + * can be re-used. + */ +char **copy_argv(int *argc, char *argv[]); +# endif + +# ifdef _WIN32 +/* + * Win32-specific argv initialization that splits OS-supplied UNICODE + * command line string to array of UTF8-encoded strings. + */ +void win32_utf8argv(int *argc, char **argv[]); +# endif + +#endif diff --git a/apps/vms_decc_argv.c b/apps/vms_decc_argv.c index 54ccc1bf17..932b51a837 100644 --- a/apps/vms_decc_argv.c +++ b/apps/vms_decc_argv.c @@ -9,7 +9,8 @@ #include <stdlib.h> #include <openssl/crypto.h> -#include "apps.h" /* for app_malloc() and copy_argv() */ +#include "platform.h" /* for copy_argv() */ +#include "apps.h" /* for app_malloc() */ char **newargv = NULL; |