summaryrefslogtreecommitdiff
path: root/src/shared/util.h
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2014-08-12 01:43:23 +0200
committerAnthony G. Basile <blueness@gentoo.org>2014-08-12 14:14:28 -0400
commit37de89865378bf045e2cd33ded75a30d384bc7fa (patch)
tree14589e1b26b67bc0d7b105f4612099674306a8ee /src/shared/util.h
parentc597413eb3b84b24bc532331a4ab788c656ec0e2 (diff)
udev: modernize net_id builtin a bit
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Diffstat (limited to 'src/shared/util.h')
-rw-r--r--src/shared/util.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/shared/util.h b/src/shared/util.h
index 5e699ca5a8..5fe724af40 100644
--- a/src/shared/util.h
+++ b/src/shared/util.h
@@ -336,6 +336,19 @@ static inline void _reset_errno_(int *saved_errno) {
#define PROTECT_ERRNO _cleanup_(_reset_errno_) __attribute__((unused)) int _saved_errno_ = errno
int unlink_noerrno(const char *path);
+
+#define strappenda(a, b) \
+ ({ \
+ const char *_a_ = (a), *_b_ = (b); \
+ char *_c_; \
+ size_t _x_, _y_; \
+ _x_ = strlen(_a_); \
+ _y_ = strlen(_b_); \
+ _c_ = alloca(_x_ + _y_ + 1); \
+ strcpy(stpcpy(_c_, _a_), _b_); \
+ _c_; \
+ })
+
static inline void qsort_safe(void *base, size_t nmemb, size_t size,
int (*compar)(const void *, const void *)) {
if (nmemb) {