summaryrefslogtreecommitdiff
path: root/win32/include/sec_api/stralign_s.h
diff options
context:
space:
mode:
Diffstat (limited to 'win32/include/sec_api/stralign_s.h')
-rw-r--r--win32/include/sec_api/stralign_s.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/win32/include/sec_api/stralign_s.h b/win32/include/sec_api/stralign_s.h
new file mode 100644
index 0000000..5b78f58
--- /dev/null
+++ b/win32/include/sec_api/stralign_s.h
@@ -0,0 +1,30 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the w64 mingw-runtime package.
+ * No warranty is given; refer to the file DISCLAIMER within this package.
+ */
+#ifndef __STRALIGN_H_S_
+#define __STRALIGN_H_S_
+
+#include <stralign.h>
+
+#if defined(MINGW_HAS_SECURE_API)
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#if !defined(I_X86_) && defined(_WSTRING_S_DEFINED)
+#if defined(__cplusplus) && defined(_WConst_Return)
+ static __inline PUWSTR ua_wcscpy_s(PUWSTR Destination,size_t DestinationSize,PCUWSTR Source) {
+ if(WSTR_ALIGNED(Source) && WSTR_ALIGNED(Destination)) return (wcscpy_s((PWSTR)Destination,DestinationSize,(PCWSTR)Source)==0 ? Destination : NULL);
+ return uaw_wcscpy((PCUWSTR)String,Character);
+ }
+#endif
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+#endif
+#endif