Skip to content
Snippets Groups Projects
  1. Apr 26, 2013
  2. Apr 06, 2013
  3. Feb 10, 2012
  4. Sep 22, 2011
    • Lubos Slovak's avatar
      Fixed CNAME with wildcard cycling problem. · 76aa9f5b
      Lubos Slovak authored
      - The canonical domain name was not taken from the CNAME RRSet in
        zone, but from the one synthetized from the wildcard. This caused
        the node's owner to be different than the CNAME name.
      - Added the case causing the cycling in to the example.com zone.
      
      fixes #1313 @1h30m
      76aa9f5b
  5. Jul 05, 2011
  6. Jun 24, 2011
  7. Jun 16, 2011
  8. May 05, 2011
  9. May 02, 2011
  10. Apr 06, 2011
  11. Mar 15, 2011
    • Lubos Slovak's avatar
      Modified answering algorithm + fixed DNSKEY adding · 7ef7d2f6
      Lubos Slovak authored
      - Infinite loop replaced by several labels and gotos.
      - This fixed problems with CNAME resolving related to closest
        enclosers saved in dname.node.
      - Fixed DNSKEY adding - was not checking if the RRSet is there.
      
      TODO: Try to refactor the answering code
      TODO: Simplify DNSSEC records adding by marking the zone as signed
            / unsigned.
      
      fixes #640
      7ef7d2f6
  12. Mar 01, 2011
  13. Feb 17, 2011
  14. Dec 31, 2010
  15. Sep 27, 2010
  16. Sep 23, 2010
  17. Sep 22, 2010
    • Lubos Slovak's avatar
      DNAME substitution length check added. · 489ca872
      Lubos Slovak authored
      489ca872
    • Lubos Slovak's avatar
      Fixed answering to work with empty non-terminals. · 85ef5a70
      Lubos Slovak authored
      If all labels matched & the node is empty non-terminal, continue
        the search.
      If some labels matched & the node has no wildcard node, return
        NXDOMAIN.
      85ef5a70
    • Lubos Slovak's avatar
      Adding empty non-terminals to zone. · 17cafd31
      Lubos Slovak authored
      Empty non-terminals are created after creating the zone list and
        before inserting into ZDS. The algorithm is quite straightforward
        - for each node it finds a 'parent' node and creates all nodes
          'missing' between the parent and the node. Search for parent
          optimized by saving the last parent + jumping directly to zone
          apex if number of common labes is equal to size of the zone
          apex' owner name.
      
      Added function zn_is_empty().
      Skipping empty nodes when processing non-authoritative nodes.
      17cafd31
  18. Sep 20, 2010
    • Lubos Slovak's avatar
      DNAME support. · 9055f65f
      Lubos Slovak authored
      Changed answering algorithm so that DNAME is checked before
        wildcard and zone apex.
        (See query-processing-flowchart-200910-2.png.)
      Implemented CNAME from DNAME synthesis - quite dumb, with a lot of
        copying (because of ldns).
      9055f65f
  19. Aug 25, 2010
  20. Aug 19, 2010
    • Lubos Slovak's avatar
      Glue wildcard records processing. · 9db6920b
      Lubos Slovak authored
      ns_put_glues() now copies the glues one by one and if a wildcard
        is encountered, the RR is copied and owner is replaced by name
        found by searching through the NS RRs in Authority section.
        (This approach should be faster than using the zn_get_glue()
         method for each name and type as in that case we would need to
         always iterate through the Authority section and in each
         iteration iterate over the glue records.)
      
      zn_get_glue() now processes wildcard glue records. (The function
        however is not used right now.)
      
      Fix in zdb_process_nonauth() (should not free the list of names).
      Changed zdb_dname_list_contains() to zdb_dname_list_find() which
        returns the found name. Not utilized now. (May change back later)
      9db6920b
    • Lubos Slovak's avatar
      CNAME following in Additional section. · b893312e
      Lubos Slovak authored
      Function ns_follow_cname() generalized to put RRs to given section.
      
      Once again putting RRSets to packet separated into generic function
        ns_put_rrset(), now with wildcard processing.
      
      ns_put_additional() now puts all additional RRSets into the packet,
        not only for given type (either way was iterating through the
        whole Answer section).
      ns_put_additional() now processes CNAMEs.
      
      zdb_adjust_additional() now saves also pointer to node with CNAME
        record, to be used in answering.
      
      Structure zn_ar_rrsets modified to be able to hold pointer to CNAME
        node. TODO: consider using union to save space.
      
      Added zn_add_ref_cname() to add CNAME additional reference.
        TODO: is copy-pasted from zn_add_ref(), consider refactoring.
      b893312e
    • Lubos Slovak's avatar
      Changes in CNAME adjusting and resolving. · 5a51c422
      Lubos Slovak authored
      Was not marking the node as CNAME if the canonical name node was
        not present.
      Was not copying the last CNAME record in chain if the next
        canonical name was not present.
      5a51c422
  21. Aug 18, 2010
    • Lubos Slovak's avatar
      Wildcard processing in ANSWER section. · 97e7dcdf
      Lubos Slovak authored
      Query processing changed to accomodate proper wildcard processing
        (see the new flowchart). Used one ugly goto, but cannot think
        about any workaround right now.
      
      If a wildcard is encountered when getting answers (or resolving
        CNAME chain), the corresponding RRs are now copied into the
        response packet and saved to a list of copied RRs for further
        deallocation.
      
      Removed ns_put_rrset(), as in case of answers we needed to perform
        the wildcard checks.
      
      Fix: Freeing of the copied qname in ns_answer().
      97e7dcdf
  22. Aug 10, 2010
    • Lubos Slovak's avatar
      Fixed zone node list in zdb and empty response. · dbfb8440
      Lubos Slovak authored
      zdb_create_list() was inserting the nodes in reverse order
        (ldns_rr_list_pop_rrset() pops LAST RRSet, not first!).
      
      Empty response was used for responding to all queries, though
        it lacked data copied from the query. Now copies ID, Question,
        and RD bit if a query is given.
      
      Added a lot of debug ouput in zdb.
      Added delegation point and glue A records to example zone file.
      dbfb8440
  23. Aug 09, 2010
    • Lubos Slovak's avatar
      ns_answer_request() returning error response. · 7d7fc023
      Lubos Slovak authored
      ns_create_response() divided into ns_create_empty_response()
        (empty response may be used as an error response) and
        ns_fill_response().
      Added another sample zone as ldns had problems parsing the bogus25
        zone.
      7d7fc023