aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_nif.c
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2018-03-15 21:02:47 +0100
committerSverker Eriksson <[email protected]>2018-03-22 16:22:33 +0100
commite36c103236ac70c29caf910d31651bed6c24dfe8 (patch)
tree49db884b52e86ca234831953551e9955f907ac8e /erts/emulator/beam/erl_nif.c
parent30d5b7ee32d099f2a23c26e873aeb08be1b1d966 (diff)
downloadotp-e36c103236ac70c29caf910d31651bed6c24dfe8.tar.gz
otp-e36c103236ac70c29caf910d31651bed6c24dfe8.tar.bz2
otp-e36c103236ac70c29caf910d31651bed6c24dfe8.zip
erts: Add enif_vfprintf and enif_vsnprintf
Diffstat (limited to 'erts/emulator/beam/erl_nif.c')
-rw-r--r--erts/emulator/beam/erl_nif.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_nif.c b/erts/emulator/beam/erl_nif.c
index 332e692fd6..2c851fd531 100644
--- a/erts/emulator/beam/erl_nif.c
+++ b/erts/emulator/beam/erl_nif.c
@@ -1991,16 +1991,21 @@ enif_convert_time_unit(ErlNifTime val,
(int) to);
}
-int enif_fprintf(void* filep, const char* format, ...)
+int enif_fprintf(FILE* filep, const char* format, ...)
{
int ret;
va_list arglist;
va_start(arglist, format);
- ret = erts_vfprintf((FILE*)filep, format, arglist);
+ ret = erts_vfprintf(filep, format, arglist);
va_end(arglist);
return ret;
}
+int enif_vfprintf(FILE* filep, const char *format, va_list ap)
+{
+ return erts_vfprintf(filep, format, ap);
+}
+
int enif_snprintf(char *buffer, size_t size, const char* format, ...)
{
int ret;
@@ -2011,6 +2016,12 @@ int enif_snprintf(char *buffer, size_t size, const char* format, ...)
return ret;
}
+int enif_vsnprintf(char* buffer, size_t size, const char *format, va_list ap)
+{
+ return erts_vsnprintf(buffer, size, format, ap);
+}
+
+
/***********************************************************
** Memory managed (GC'ed) "resource" objects **
***********************************************************/