aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKen Raeburn <raeburn@mit.edu>2009-12-02 23:09:29 +0000
committerKen Raeburn <raeburn@mit.edu>2009-12-02 23:09:29 +0000
commitf42f2e90162893dd4eb9c9d6ccd25e7bd758aabe (patch)
treef3bacb52b7ac1a959a228be17d7ea2cc715a6403 /src
parent3b521cff4279f759143c6de3de36324ff082ea37 (diff)
downloadkrb5-f42f2e90162893dd4eb9c9d6ccd25e7bd758aabe.zip
krb5-f42f2e90162893dd4eb9c9d6ccd25e7bd758aabe.tar.gz
krb5-f42f2e90162893dd4eb9c9d6ccd25e7bd758aabe.tar.bz2
Add store_{16,32,64}_n functions, for potentially-unaligned, native-order values
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23431 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/include/k5-platform.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/include/k5-platform.h b/src/include/k5-platform.h
index ee3730a..9b02462 100644
--- a/src/include/k5-platform.h
+++ b/src/include/k5-platform.h
@@ -713,6 +713,35 @@ load_64_le (const void *cvp)
#endif
}
+static inline void
+store_16_n (unsigned int val, void *vp)
+{
+#ifdef _WIN32
+ unsigned __int16 n;
+#else
+ uint16_t n;
+#endif
+ n = val;
+ memcpy(vp, &n, 2);
+}
+static inline void
+store_32_n (unsigned int val, void *vp)
+{
+#ifdef _WIN32
+ unsigned __int32 n;
+#else
+ uint32_t n;
+#endif
+ n = val;
+ memcpy(vp, &n, 4);
+}
+static inline void
+store_64_n (UINT64_TYPE val, void *vp)
+{
+ UINT64_TYPE n;
+ n = val;
+ memcpy(vp, &n, 8);
+}
static inline unsigned short
load_16_n (const void *p)
{