Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.1.3
    • Component/s: DNS
    • Labels:
      None

      Description

      While examining some related code, I noticed a few inconsistencies with our max-retries / default-retries code. In RecordsConfig.cc we have

      {CONFIG, "proxy.config.dns.retries", "", INK_INT, "5", RU_REREAD, RR_NULL, RC_NULL, NULL, RA_NULL}

      while in the iocore/dns code, we have

      iocore/dns/P_DNSProcessor.h: #define DEFAULT_DNS_RETRIES 3

      (the former overrides the latter though, but still confusing). Additionally, we have a define

      iocore/dns/P_DNSProcessor.h: #define MAX_DNS_RETRIES 5

      which dictates the size of at least one static array. A problem here would be if someone tried to set proxy.config.dns.retries above 5, we might do bad things.

      At a minimum, proxy.config.dns.retries should be capped to MAX_DNS_RETRIES (this can be done in RecordsConfig.cc), and DEFAULT_DNS_RETRIES should have the same default as the RecordsConfig.cc setting (for consistency). We might want to bump up MAX_DNS_RETRIES too maybe to 9 (or 11), or possibly make the static arrays dynamically allocated (not sure that's worth the cost though, really).

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Leif Hedstrom
            Reporter:
            Leif Hedstrom
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development