X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fjournal%2Faudit-type.h;h=fa5284e0274f85bfebdb931cd3aabf8bd6661b6d;hb=d896ac2d2fbce41a0b11a0618a685adeaf18b8fe;hp=9f37716cd63242cb6c293e7c9a53951d1d938296;hpb=1ba5c0f37a5a01c48e850061e537993c2d7595f8;p=elogind.git diff --git a/src/journal/audit-type.h b/src/journal/audit-type.h index 9f37716cd..fa5284e02 100644 --- a/src/journal/audit-type.h +++ b/src/journal/audit-type.h @@ -21,6 +21,19 @@ along with systemd; If not, see . ***/ +#include "macro.h" const char *audit_type_to_string(int type); int audit_type_from_string(const char *s); + +/* This is inspired by DNS TYPEnnn formatting */ +#define audit_type_name_alloca(type) \ + ({ \ + const char *_s_; \ + _s_ = audit_type_to_string(type); \ + if (!_s_) { \ + _s_ = alloca(strlen("AUDIT") + DECIMAL_STR_MAX(int)); \ + sprintf((char*) _s_, "AUDIT%04i", type); \ + } \ + _s_; \ + })