summaryrefslogtreecommitdiff
path: root/src/util/util.h
diff options
context:
space:
mode:
authorMichal Zidek <mzidek@redhat.com>2013-04-15 16:00:46 +0200
committerJakub Hrozek <jhrozek@redhat.com>2013-05-14 18:29:52 +0200
commit2fa8d6655ac37f9bdeb34420000052d921f4a543 (patch)
tree9aa9a3cc5b196c8043afc893f124f9b3acccbae9 /src/util/util.h
parent105c7a324c3ee2930b23513ae73aeddce0d8c347 (diff)
downloadsssd-2fa8d6655ac37f9bdeb34420000052d921f4a543.tar.gz
sssd-2fa8d6655ac37f9bdeb34420000052d921f4a543.tar.bz2
sssd-2fa8d6655ac37f9bdeb34420000052d921f4a543.zip
Rename SAFEALIGN macros.
https://fedorahosted.org/sssd/ticket/1772 SAFEALIGN macros have been renamed in this patch to make it easy to pick the right macro when data is copied from byte buffer to a variable or vice versa. The renamed macros are placed in new header file to avoid code duplication (the old ones were defined in two files, one for the client code and one for the rest of sssd).
Diffstat (limited to 'src/util/util.h')
-rw-r--r--src/util/util.h62
1 files changed, 1 insertions, 61 deletions
diff --git a/src/util/util.h b/src/util/util.h
index 49dc850c..fa45fdfd 100644
--- a/src/util/util.h
+++ b/src/util/util.h
@@ -45,6 +45,7 @@
#include "util/atomic_io.h"
#include "util/util_errors.h"
+#include "util/util_safealign.h"
#define _(STRING) gettext (STRING)
@@ -270,67 +271,6 @@ errno_t set_debug_file_from_fd(const int fd);
#define OUT_OF_ID_RANGE(id, min, max) \
(id == 0 || (min && (id < min)) || (max && (id > max)))
-#define SIZE_T_MAX ((size_t) -1)
-
-#define SIZE_T_OVERFLOW(current, add) \
- (((size_t)(add)) > (SIZE_T_MAX - ((size_t)(current))))
-
-static inline void
-safealign_memcpy(void *dest, const void *src, size_t n, size_t *counter)
-{
- memcpy(dest, src, n);
- if (counter) {
- *counter += n;
- }
-}
-
-#define SAFEALIGN_SET_VALUE(dest, value, type, pctr) do { \
- type CV_MACRO_val = (type)(value); \
- safealign_memcpy(dest, &CV_MACRO_val, sizeof(type), pctr); \
-} while(0)
-
-#define SAFEALIGN_COPY_INT64(dest, src, pctr) \
- safealign_memcpy(dest, src, sizeof(int64_t), pctr)
-
-#define SAFEALIGN_SET_INT64(dest, value, pctr) \
- SAFEALIGN_SET_VALUE(dest, value, int64_t, pctr)
-
-#define SAFEALIGN_COPY_UINT32(dest, src, pctr) \
- safealign_memcpy(dest, src, sizeof(uint32_t), pctr)
-
-#define SAFEALIGN_SET_UINT32(dest, value, pctr) \
- SAFEALIGN_SET_VALUE(dest, value, uint32_t, pctr)
-
-#define SAFEALIGN_COPY_INT32(dest, src, pctr) \
- safealign_memcpy(dest, src, sizeof(int32_t), pctr)
-
-#define SAFEALIGN_SET_INT32(dest, value, pctr) \
- SAFEALIGN_SET_VALUE(dest, value, int32_t, pctr)
-
-#define SAFEALIGN_COPY_UINT16(dest, src, pctr) \
- safealign_memcpy(dest, src, sizeof(uint16_t), pctr)
-
-#define SAFEALIGN_SET_UINT16(dest, value, pctr) \
- SAFEALIGN_SET_VALUE(dest, value, uint16_t, pctr)
-
-#define SAFEALIGN_COPY_UINT32_CHECK(dest, src, len, pctr) do { \
- if ((*(pctr) + sizeof(uint32_t)) > (len) || \
- SIZE_T_OVERFLOW(*(pctr), sizeof(uint32_t))) return EINVAL; \
- safealign_memcpy(dest, src, sizeof(uint32_t), pctr); \
-} while(0)
-
-#define SAFEALIGN_COPY_INT32_CHECK(dest, src, len, pctr) do { \
- if ((*(pctr) + sizeof(int32_t)) > (len) || \
- SIZE_T_OVERFLOW(*(pctr), sizeof(int32_t))) return EINVAL; \
- safealign_memcpy(dest, src, sizeof(int32_t), pctr); \
-} while(0)
-
-#define SAFEALIGN_COPY_UINT16_CHECK(dest, src, len, pctr) do { \
- if ((*(pctr) + sizeof(uint16_t)) > (len) || \
- SIZE_T_OVERFLOW(*(pctr), sizeof(uint16_t))) return EINVAL; \
- safealign_memcpy(dest, src, sizeof(uint16_t), pctr); \
-} while(0)
-
#include "util/dlinklist.h"
/* From debug.c */