summaryrefslogtreecommitdiff
path: root/includes/tree.h
diff options
context:
space:
mode:
authorTed Lemon <source@isc.org>2000-01-05 18:09:34 +0000
committerTed Lemon <source@isc.org>2000-01-05 18:09:34 +0000
commit6f807f4c61164a508ee095d22ec1a5765795ab9e (patch)
tree48fe6fa5ec5d1d5c82451c50d980327d089fb924 /includes/tree.h
parent80f2771e09f4aa0196c0efdbea5e961b1bf2fddb (diff)
downloadisc-dhcp-6f807f4c61164a508ee095d22ec1a5765795ab9e.tar.gz
Add new DNS support.
Diffstat (limited to 'includes/tree.h')
-rw-r--r--includes/tree.h25
1 files changed, 20 insertions, 5 deletions
diff --git a/includes/tree.h b/includes/tree.h
index d5e6fd6d..77720ff2 100644
--- a/includes/tree.h
+++ b/includes/tree.h
@@ -90,10 +90,13 @@ enum expr_op {
expr_host_decl_name,
expr_pick_first_value,
expr_lease_time,
- expr_dns_update,
+ expr_dns_transaction,
expr_static,
expr_updated_dns_rr,
- expr_dns_delete,
+ expr_ns_update,
+ expr_ns_delete,
+ expr_ns_exists,
+ expr_ns_not_exists,
expr_not_equal
};
@@ -143,12 +146,23 @@ struct expression {
struct expression *car;
struct expression *cdr;
} pick_first_value;
+ struct {
+ struct expression *car;
+ struct expression *cdr;
+ } dns_transaction;
struct {
- struct expression *type;
+ unsigned rrclass;
+ unsigned rrtype;
struct expression *rrname;
struct expression *rrdata;
struct expression *ttl;
- } dns_update;
+ } ns_update;
+ struct {
+ unsigned rrclass;
+ unsigned rrtype;
+ struct expression *rrname;
+ struct expression *rrdata;
+ } ns_delete, ns_exists, ns_not_exists;
struct expression *updated_dns_rr;
} data;
int flags;
@@ -209,5 +223,6 @@ enum expression_context {
context_any,
context_boolean,
context_data,
- context_numeric
+ context_numeric,
+ context_dns
};