#include <netdb.h>
#include <resolv.h>

#include "libc.h"

int __res_mkquery(int, const char*, int, int, const unsigned char*, int, const unsigned char*,
                  unsigned char*, int);
int __res_send(const unsigned char*, int, unsigned char*, int);

int __res_query(const char* name, int class, int type, unsigned char* dest, int len) {
  unsigned char q[280];
  int ql = __res_mkquery(0, name, class, type, 0, 0, 0, q, sizeof q);
  if (ql < 0)
    return ql;
  return __res_send(q, ql, dest, len);
}

weak_alias(__res_query, res_query);
weak_alias(__res_query, res_search);
