summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2019-06-19 21:02:47 +0900
committerYu Watanabe <watanabe.yu+github@gmail.com>2019-06-19 21:03:16 +0900
commitf3f0d873e2046877a72809bac922cef2eb85dd65 (patch)
tree1449af2cbbc8751a93734b0d965c61671756ff5f
parenta4eb991831099756e9debc2cfeaf689584deed08 (diff)
downloadsystemd-f3f0d873e2046877a72809bac922cef2eb85dd65.tar.gz
util: introduce siphash24_compress_boolean()
-rw-r--r--src/basic/siphash24.c6
-rw-r--r--src/basic/siphash24.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/src/basic/siphash24.c b/src/basic/siphash24.c
index 61180819b1..666431aa31 100644
--- a/src/basic/siphash24.c
+++ b/src/basic/siphash24.c
@@ -151,6 +151,12 @@ void siphash24_compress(const void *_in, size_t inlen, struct siphash *state) {
}
}
+void siphash24_compress_boolean(bool in, struct siphash *state) {
+ int i = in;
+
+ siphash24_compress(&i, sizeof i, state);
+}
+
uint64_t siphash24_finalize(struct siphash *state) {
uint64_t b;
diff --git a/src/basic/siphash24.h b/src/basic/siphash24.h
index 67c4f7560c..1937fea298 100644
--- a/src/basic/siphash24.h
+++ b/src/basic/siphash24.h
@@ -17,6 +17,7 @@ struct siphash {
void siphash24_init(struct siphash *state, const uint8_t k[static 16]);
void siphash24_compress(const void *in, size_t inlen, struct siphash *state);
+void siphash24_compress_boolean(bool in, struct siphash *state);
#define siphash24_compress_byte(byte, state) siphash24_compress((const uint8_t[]) { (byte) }, 1, (state))
uint64_t siphash24_finalize(struct siphash *state);