string c_format(const char* fmt, ...) { va_list ap; va_start(ap, fmt); string ret=va_format(fmt, ap); va_end(ap); return ret; }
std::string llformat(const char *fmt, ...) { std::string res; va_list va; va_start(va, fmt); va_format(res, fmt, va); va_end(va); return res; }
EXPORTED void sync_log_channel(const char *channel, const char *fmt, ...) { va_list ap; const char *val; va_start(ap, fmt); val = va_format(fmt, ap); va_end(ap); sync_log_base(channel, val); }
std::string llformat_to_utf8(const char *fmt, ...) { std::string res; va_list va; va_start(va, fmt); va_format(res, fmt, va); va_end(va); #if LL_WINDOWS // made converting to utf8. See EXT-8318. res = ll_convert_string_to_utf8_string(res); #endif return res; }
EXPORTED void sync_log(const char *fmt, ...) { va_list ap; const char *val; int i; if (!channels) return; va_start(ap, fmt); val = va_format(fmt, ap); va_end(ap); for (i = 0 ; i < channels->count ; i++) sync_log_base(channels->data[i], val); }
clib_error_t * vlib_sysfs_write (char *file_name, char *fmt, ...) { u8 *s; int fd; fd = open (file_name, O_WRONLY); if (fd < 0) return clib_error_return_unix (0, "open `%s'", file_name); va_list va; va_start (va, fmt); s = va_format (0, fmt, &va); va_end (va); if (write (fd, s, vec_len (s)) < 0) return clib_error_return_unix (0, "write `%s'", file_name); vec_free (s); close (fd); return 0; }