]> git.ipfire.org Git - thirdparty/ldns.git/commitdiff
don't error on $ORIGIN
authorJelte Jansen <jeltejan@NLnetLabs.nl>
Thu, 13 Apr 2006 13:59:05 +0000 (13:59 +0000)
committerJelte Jansen <jeltejan@NLnetLabs.nl>
Thu, 13 Apr 2006 13:59:05 +0000 (13:59 +0000)
error.c
ldns/error.h
rr.c
zone.c

diff --git a/error.c b/error.c
index dc196ff755df0dff6511b4c8cd93c5c0001d63bf..20e3ca355d94b7d566169f934752a7456a1cf906 100644 (file)
--- a/error.c
+++ b/error.c
@@ -70,6 +70,7 @@ ldns_lookup_table ldns_error_str[] = {
        { LDNS_STATUS_SYNTAX_ERR, "Syntax error, could not parse the RR" },
        { LDNS_STATUS_SYNTAX_EMPTY, "An empty line was returned" },
        { LDNS_STATUS_SYNTAX_TTL, "A $TTL directive was seen in a zone" },
+       { LDNS_STATUS_SYNTAX_ORIGIN, "A $TTL directive was seen in a zone" },
        { 0, NULL }
 };
 
index de3d28c54e3dc8787c27bc597bd93135793b8d7b..29f68db976ac2ac8853e6bbd9b5d053ef8d69882 100644 (file)
@@ -73,6 +73,7 @@ enum ldns_enum_status
         LDNS_STATUS_SYNTAX_ALG_ERR,
         LDNS_STATUS_SYNTAX_KEYWORD_ERR,
         LDNS_STATUS_SYNTAX_TTL,
+        LDNS_STATUS_SYNTAX_ORIGIN,
         LDNS_STATUS_SYNTAX_EMPTY,
         LDNS_STATUS_SYNTAX_ERR
 };
diff --git a/rr.c b/rr.c
index 158ab19eef6aa247507e6961b71b281556191b00..ff87c683c041643c89ef0fbe359af591e616dd6c 100644 (file)
--- a/rr.c
+++ b/rr.c
@@ -524,12 +524,12 @@ ldns_rr_new_frm_fp_l(ldns_rr **newrr, FILE *fp, uint16_t *default_ttl, ldns_rdf
                        return LDNS_STATUS_SYNTAX_DNAME_ERR;
                }
                *origin = tmp;
-               
+               s = LDNS_STATUS_SYNTAX_ORIGIN;          
        } else if ((keyword = strstr(line, "$TTL "))) {
                if (default_ttl) {
                        *default_ttl = ldns_str2period(keyword + 5, &endptr);
-                       return LDNS_STATUS_SYNTAX_TTL;
                }
+               s = LDNS_STATUS_SYNTAX_TTL;
        } else {
                if (origin && *origin) {
                        s = ldns_rr_new_frm_str(&rr, (const char*) line, ttl, *origin, prev);
diff --git a/zone.c b/zone.c
index b6fed00ff219d7a19c7e022c112f7755bf7fc687..52b572bf8484c03b40306d2d9ebe441735cc7fa3 100644 (file)
--- a/zone.c
+++ b/zone.c
@@ -214,6 +214,9 @@ ldns_zone_new_frm_fp_l(ldns_zone **z, FILE *fp, ldns_rdf *origin, uint16_t ttl,
                case LDNS_STATUS_SYNTAX_TTL:
                        /* the function set the ttl */
                        break;
+               case LDNS_STATUS_SYNTAX_ORIGIN:
+                       /* the function set the origin */
+                       break;
                default:
                        ldns_zone_free(newzone);
                        return s;