summaryrefslogtreecommitdiffhomepage
path: root/include/ntapi/nt_argv.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/ntapi/nt_argv.h')
-rw-r--r--include/ntapi/nt_argv.h19
1 files changed, 17 insertions, 2 deletions
diff --git a/include/ntapi/nt_argv.h b/include/ntapi/nt_argv.h
index db52e95..de149dc 100644
--- a/include/ntapi/nt_argv.h
+++ b/include/ntapi/nt_argv.h
@@ -12,11 +12,12 @@
#include "nt_abi.h"
-/* ntapi_tt_get_argv_envp_utf16 flag bits */
+/* ntapi_tt_get_argv_envp flag bits */
#define NT_GET_ARGV_ENVP_USE_INTERNAL_BUFFER (0x0000)
#define NT_GET_ARGV_ENVP_USE_CALLER_BUFFER (0x0001)
#define NT_GET_ARGV_ENVP_COPY_ENVIRONMENT (0x0002)
-#define NT_GET_ARGV_ENVP_VALIDATE_UTF16 (0x0004)
+#define NT_GET_ARGV_ENVP_VALIDATE_UTF8 (0x0004)
+#define NT_GET_ARGV_ENVP_VALIDATE_UTF16 (0x0008)
/* ntapi_tt_program_option flag bits */
#define NT_OPTION_SHORT (0x0001)
@@ -44,6 +45,14 @@ typedef struct _nt_program_options_meta {
} nt_program_options_meta;
+typedef struct _nt_env_var_meta_utf8 {
+ char * name;
+ char * value;
+ int envp_index;
+ uint32_t flags;
+} nt_env_var_meta_utf8;
+
+
typedef struct _nt_env_var_meta_utf16 {
wchar16_t * name;
wchar16_t * value;
@@ -133,6 +142,12 @@ typedef int32_t __stdcall ntapi_tt_get_argv_envp_utf16(
__out void * reserved __optional);
+typedef int32_t __stdcall ntapi_tt_get_env_var_meta_utf8(
+ __in char * env_var_name,
+ __in char ** envp,
+ __out nt_env_var_meta_utf8 * env_var_meta);
+
+
typedef int32_t __stdcall ntapi_tt_get_env_var_meta_utf16(
__in wchar16_t * env_var_name,
__in wchar16_t ** envp,