Por qué SRV res_query siempre devuelve -1?
Pregunta
Estoy tratando de implementar un simple DNS SRV consulta mediante el uso de res_query
.Mi código para el res_query parte es la siguiente:
char* target;
short* port;
union {
HEADER hdr;
u_char buf[1024];
} response;
ns_msg handle;
ns_rr rr;
u_char buf[256], *p;
int t, len, priority, weight;
if ((len = res_query(query, C_IN, ns_t_srv, (u_char *)&response, sizeof(response))) <0 ) {
cout << "res_query returned -1, no answer" << endl;
return 0;
}
Esto es sólo una parte del código, pero supongo que hay todas las cosas para hacer el res_query
.Cada vez que ejecute la consulta SRV, el res_query devuelve '-1', es decir, se produce un error.Es el problema en mi res_query o estoy haciendo algo mal?
He tratado de hacer la consulta SRV para www.example.com
.
Solución
res_query
devolverá -1 si no hay ningún registro coincidente se encuentra.
Aparte de que el código funciona bien para mí, aunque OSX requiere ns_c_in
en lugar de C_IN
.
Intente probar con _nicname._tcp.us.
en lugar de www.example.com
.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow