static bool display_short_form = false;
static bool display_headers = true;
static bool display_comments = true;
-static bool display_rrcomments = true;
+static int display_rrcomments = 0;
static bool display_ttlunits = true;
static bool display_ttl = true;
static bool display_class = true;
styleflags |= DNS_STYLEFLAG_COMMENT;
if (display_unknown_format)
styleflags |= DNS_STYLEFLAG_UNKNOWNFORMAT;
- if (display_rrcomments)
+ if (display_rrcomments > 0)
styleflags |= DNS_STYLEFLAG_RRCOMMENT;
if (display_ttlunits)
styleflags |= DNS_STYLEFLAG_TTL_UNITS;
styleflags |= DNS_STYLEFLAG_TTL;
styleflags |= DNS_STYLEFLAG_MULTILINE;
styleflags |= DNS_STYLEFLAG_COMMENT;
- styleflags |= DNS_STYLEFLAG_RRCOMMENT;
+ /* Turn on rrcomments unless explicitly disabled */
+ if (display_rrcomments >= 0) {
+ styleflags |= DNS_STYLEFLAG_RRCOMMENT;
+ }
}
if (display_multiline || (!display_ttl && !display_class))
result = dns_master_stylecreate(&style, styleflags,
display_authority = state;
display_additional = state;
display_comments = state;
- display_rrcomments = state;
+ display_rrcomments = state ? 1 : -1;
break;
case 'n': /* answer */
FULLCHECK("answer");
case 'r':
FULLCHECK("rrcomments");
GLOBAL();
- display_rrcomments = state;
+ display_rrcomments = state ? 1 : -1;
break;
default:
goto invalid_option;
display_authority = false;
display_additional = false;
display_comments = false;
- display_rrcomments = false;
+ display_rrcomments = -1;
}
break;
case 'p': /* split */