Uploaded image for project: 'Support'
  1. Support
  2. SUPPORT-206

error logging for failed ods-signer remote NOTIFY reports only "sendto() failed (Invalid argument)", no additional detail

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: OpenDNSSEC 2.0
    • Fix Version/s: None
    • Component/s: Signer
    • Labels:
      None

      Description

      I'm running ods2, built from src

          git reflog
              1 8c50588 HEAD@{0}: clone: from https://github.com/opendnssec/opendnssec
          /usr/local/opendnssec/sbin/ods-signerd -V
              opendnssec version 2.1.0-dev
      

      I've switched to "--out-type DNS" for an ods2 signerd instance; currently, signed zone output to file works fine.

      I've configured to send NOTIFY to IP == 10.2.2.53

          cat /usr/local/etc/opendnssec/addns.xml
              <?xml version="1.0" encoding="UTF-8"?>
              <Adapter>
                  <DNS>
                      ...
                      <Outbound>
                          ...
                          <Notify>
                              <Remote>
                              <Address>10.2.2.53</Address>
                              <Port>53</Port>
                              </Remote>
                          </Notify>
                      </Outbound>
                  </DNS>
              </Adapter>
      

      where the server at 10.2.2.53 is nsd4, and has been receiving NOTIFY from a bind9 server on the same box as osd2 with no problmes.

      Atm, with Verbosity == 6, I get in ods' logs,

          Dec 26 09:59:09 dns ods-signerd: [notify] handle notify for zone zoiks.info
          Dec 26 09:59:09 dns ods-signerd: [notify] notify timeout for zone zoiks.info
          Dec 26 09:59:09 dns ods-signerd: [notify] send 132 bytes over udp to 10.2.2.53
          Dec 26 09:59:09 dns ods-signerd: [notify] unable to send data over udp to 10.2.2.53: sendto() failed (Invalid argument)
      

      Where the "Invalid argument" appears to be an error in the error logging ...

      In ods source, the error originates at

          cat ./signer/src/wire/notify.c
              ...
          361        /* send it (udp) */
                  ods_log_deeebug("[%s] send %ld bytes over udp to %s", notify_str,
                      (unsigned long)buffer_remaining(buffer), notify->secondary->address);
                  nb = sendto(fd, buffer_current(buffer), buffer_remaining(buffer), 0,
                      (struct sockaddr*)&to, to_len);
                  if (nb == -1) {
                      ods_log_error("[%s] unable to send data over udp to %s: "
                          "sendto() failed (%s)", notify_str, notify->secondary->address,
                          strerror(errno));
                      close(fd);
                      return -1;
                  }
                  return fd;
              ...
      

        Attachments

          Activity

            People

            Assignee:
            Unassigned
            Reporter:
            pgnd pgnd
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated: