diff options
author | Martin Willi <martin@revosec.ch> | 2013-09-27 11:16:11 +0200 |
---|---|---|
committer | Martin Willi <martin@revosec.ch> | 2013-10-11 11:06:09 +0200 |
commit | 7e6a4cdc84c4a5a32f409245209d13828fe8167d (patch) | |
tree | cd6f409bf1505781d75f8804d8df1242f38afcdb /src/libstrongswan/utils/printf_hook/printf_hook_builtin.c | |
parent | cabe5c0ff40f3a67d0d091d1bfdc2948b203737d (diff) | |
download | strongswan-7e6a4cdc84c4a5a32f409245209d13828fe8167d.tar.bz2 strongswan-7e6a4cdc84c4a5a32f409245209d13828fe8167d.tar.xz |
printf-hook-builtin: Support GNU %m specifier
Diffstat (limited to 'src/libstrongswan/utils/printf_hook/printf_hook_builtin.c')
-rw-r--r-- | src/libstrongswan/utils/printf_hook/printf_hook_builtin.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/libstrongswan/utils/printf_hook/printf_hook_builtin.c b/src/libstrongswan/utils/printf_hook/printf_hook_builtin.c index 5f4907979..1c266d454 100644 --- a/src/libstrongswan/utils/printf_hook/printf_hook_builtin.c +++ b/src/libstrongswan/utils/printf_hook/printf_hook_builtin.c @@ -46,6 +46,7 @@ #include <stdio.h> #include <stdarg.h> #include <string.h> +#include <errno.h> #define PRINTF_BUF_LEN 8192 #define ARGS_MAX 3 @@ -682,6 +683,13 @@ int builtin_vsnprintf(char *buffer, size_t n, const char *format, va_list ap) slen = strlen(sarg); goto is_string; } + case 'm': + { + /* glibc error string */ + sarg = strerror(errno); + slen = strlen(sarg); + goto is_string; + } is_string: { char sch; |