]> git.ipfire.org Git - thirdparty/systemd.git/blob - src/journal/audit-type.h
tree-wide: use newa() instead of alloca() wherever we can
[thirdparty/systemd.git] / src / journal / audit-type.h
1 /* SPDX-License-Identifier: LGPL-2.1+ */
2 #pragma once
3
4 #include <alloca.h>
5 #include <stdio.h>
6
7 #include "alloc-util.h"
8 #include "macro.h"
9
10 const char *audit_type_to_string(int type);
11 int audit_type_from_string(const char *s);
12
13 /* This is inspired by DNS TYPEnnn formatting */
14 #define audit_type_name_alloca(type) \
15 ({ \
16 const char *_s_; \
17 _s_ = audit_type_to_string(type); \
18 if (!_s_) { \
19 _s_ = newa(char, STRLEN("AUDIT") + DECIMAL_STR_MAX(int)); \
20 sprintf((char*) _s_, "AUDIT%04i", type); \
21 } \
22 _s_; \
23 })