#include "stdio_impl.h"

static size_t wrap_write(FILE* f, const unsigned char* buf, size_t len) {
  return __stdio_write(f, buf, len);
}

int vdprintf(int fd, const char* restrict fmt, va_list ap) {
  FILE f = {
      .fd = fd, .lbf = EOF, .write = wrap_write, .buf = (void*)fmt, .buf_size = 0, .lock = -1};
  return vfprintf(&f, fmt, ap);
}
