67 int namelen =
sizeof(sa), port, nbytes, flags = 0;
74 ioctl(fd->
fd, FIONREAD, &nbytes);
113 getpeername(fd->
fd, (
struct sockaddr *) &sa, &namelen);
116 log_write(s2s->
log, LOG_NOTICE,
"[%d] [%s, port=%d] incoming connection", fd->
fd, (
char *) data, port);
248 if (in->
key != NULL) {
256 in->
key = strdup(s->
id);
282 if(strncmp(
"result",
NAD_ENAME(nad, 0), 6) == 0) {
287 if(strncmp(
"verify",
NAD_ENAME(nad, 0), 6) == 0) {
321 log_debug(
ZONE,
"they sent us a non-jabber looking packet, dropping it");
329 log_debug(
ZONE,
"missing or invalid from on incoming packet, attr is %d", attr);
335 log_write(in->
s2s->
log, LOG_NOTICE,
"received a packet not from a whitelisted domain %s, dropping it", from->
domain);
347 if (in->
fd != NULL) {
368 log_debug(
ZONE,
"missing or invalid from on db result packet");
375 log_debug(
ZONE,
"missing or invalid to on db result packet");
383 log_write(in->
s2s->
log, LOG_NOTICE,
"[%d] [%s, port=%d] received dialback auth request for route '%s'", in->
fd->
fd, in->
ip, in->
port, rkey);
387 log_write(in->
s2s->
log, LOG_NOTICE,
"[%d] [%s, port=%d] route '%s' is already valid: sending valid", in->
fd->
fd, in->
ip, in->
port, rkey);
409 log_write(in->
s2s->
log, LOG_NOTICE,
"[%d] [%s, port=%d] no dialback key given with db result packet", in->
fd->
fd, in->
ip, in->
port, rkey);
417 log_debug(
ZONE,
"requesting verification for route %s", rkey);
458 char *id, *dbkey, *type;
462 log_debug(
ZONE,
"missing or invalid from on db verify packet");
469 log_debug(
ZONE,
"missing or invalid to on db verify packet");
493 id = (
char *) malloc(
sizeof(
char) * (
NAD_AVAL_L(nad, attr) + 1));
501 log_debug(
ZONE,
"valid dialback key %s, verify succeeded", dbkey);
504 log_debug(
ZONE,
"invalid dialback key %s, verify failed", dbkey);
508 log_write(in->
s2s->
log, LOG_NOTICE,
"[%d] [%s, port=%d] checking dialback verification from %s: sending %s", in->
fd->
fd, in->
ip, in->
port, from->
domain, type);
531 int elem, attr, ns, sns;
537 log_debug(
ZONE,
"missing or invalid from on incoming packet");
556 log_write(in->
s2s->
log, LOG_NOTICE,
"[%d] [%s, port=%d] dropping packet on unvalidated route: '%s'", in->
fd->
fd, in->
ip, in->
port, rkey);
568 log_debug(
ZONE,
"incoming packet on valid route, preparing it for the router");
588 if(ns >= 0 || nad->
elems[0].
ns < 0) {
590 for(elem = 0; elem < nad->
ecur; elem++)