int ctl_stream_vprintf(CTL_STREAM_t s, const char *fmt, va_list ap);
ctl_stream_vprintf writes to the stream s under control of the string pointed to by fmt that specifies how subsequent arguments are converted for output. Before calling ctl_stream_vprintf, ap must be initialized by the va_start macro (and possibly subsequent va_arg calls). ctl_stream_vprintf does not invoke the va_end macro.
ctl_stream_vprintf returns the number of characters transmitted, or a negative value if an output or encoding error occurred.
ctl_stream_vprintf is equivalent to ctl_stream_printf with the variable argument list replaced by ap.