Skip to content

Commit 2044543

Browse files
committed
Inverse meaning of log mask for convenience
1 parent 15a28bd commit 2044543

File tree

2 files changed

+18
-19
lines changed

2 files changed

+18
-19
lines changed

include/zone.h

+11-12
Original file line numberDiff line numberDiff line change
@@ -319,14 +319,13 @@ typedef struct {
319319
uint32_t default_ttl;
320320
uint16_t default_class;
321321
struct {
322-
/** Message categories to write out. */
323-
/** All categories are printed if no categories are selected and no
324-
custom callback was specified. */
325-
uint32_t categories;
326-
/** Callback used to write out log messages. */
322+
/** Priorities NOT to write out. */
323+
uint32_t mask;
324+
/** Callback invoked to write out log messages. */
327325
zone_log_t callback;
328326
} log;
329327
struct {
328+
/** Callback invoked for each RR. */
330329
zone_accept_t callback;
331330
} accept;
332331
} zone_options_t;
@@ -429,13 +428,13 @@ zone_nonnull((1,2,3,4));
429428
* error message format consistent.
430429
*
431430
* @param[in] parser Zone parser
432-
* @param[in] category Log category
431+
* @param[in] priority Log priority
433432
* @param[in] format Format string compatible with printf
434433
* @param[in] ... Variadic arguments corresponding to #format
435434
*/
436435
ZONE_EXPORT void zone_log(
437436
zone_parser_t *parser,
438-
uint32_t category,
437+
uint32_t priority,
439438
const char *format,
440439
...)
441440
zone_nonnull((1,3))
@@ -445,13 +444,13 @@ zone_format_printf(3,4);
445444
* @brief Write error message to active log handler.
446445
*
447446
* @param[in] parser Zone parser
448-
* @param[in] category Log category
447+
* @param[in] priority Log priority
449448
* @param[in] format Format string compatible with printf
450449
* @param[in] arguments Argument list
451450
*/
452451
ZONE_EXPORT void zone_vlog(
453452
zone_parser_t *parser,
454-
uint32_t category,
453+
uint32_t priority,
455454
const char *format,
456455
va_list arguments)
457456
zone_nonnull((1,3));
@@ -461,7 +460,7 @@ zone_nonnull((1,2))
461460
zone_format_printf(2,3)
462461
zone_error(zone_parser_t *parser, const char *format, ...)
463462
{
464-
if (!(parser->options.log.categories & ZONE_ERROR))
463+
if (!(ZONE_ERROR & ~parser->options.log.mask))
465464
return;
466465
va_list arguments;
467466
va_start(arguments, format);
@@ -474,7 +473,7 @@ zone_nonnull((1,2))
474473
zone_format_printf(2,3)
475474
zone_warning(zone_parser_t *parser, const char *format, ...)
476475
{
477-
if (!(parser->options.log.categories & ZONE_WARNING))
476+
if (!(ZONE_WARNING & ~parser->options.log.mask))
478477
return;
479478
va_list arguments;
480479
va_start(arguments, format);
@@ -487,7 +486,7 @@ zone_nonnull((1,2))
487486
zone_format_printf(2,3)
488487
zone_info(zone_parser_t *parser, const char *format, ...)
489488
{
490-
if (!(parser->options.log.categories & ZONE_INFO))
489+
if (!(ZONE_INFO & ~parser->options.log.mask))
491490
return;
492491
va_list arguments;
493492
va_start(arguments, format);

src/zone.c

+7-7
Original file line numberDiff line numberDiff line change
@@ -459,19 +459,19 @@ int32_t zone_parse_string(
459459
zone_nonnull((1,3))
460460
static void print_message(
461461
zone_parser_t *parser,
462-
uint32_t category,
462+
uint32_t priority,
463463
const char *message,
464464
void *user_data)
465465
{
466-
FILE *output = category == ZONE_INFO ? stdout : stderr;
466+
FILE *output = priority == ZONE_INFO ? stdout : stderr;
467467
const char *format = "%s:%zu: %s\n";
468468
(void)user_data;
469469
fprintf(output, format, parser->file->name, parser->file->line, message);
470470
}
471471

472472
void zone_vlog(
473473
zone_parser_t *parser,
474-
uint32_t category,
474+
uint32_t priority,
475475
const char *format,
476476
va_list arguments)
477477
{
@@ -486,22 +486,22 @@ void zone_vlog(
486486
if (parser->options.log.callback)
487487
callback = parser->options.log.callback;
488488

489-
callback(parser, category, message, parser->user_data);
489+
callback(parser, priority, message, parser->user_data);
490490
}
491491

492492
void zone_log(
493493
zone_parser_t *parser,
494-
uint32_t category,
494+
uint32_t priority,
495495
const char *format,
496496
...)
497497
{
498498
va_list arguments;
499499

500-
if (!(parser->options.log.categories & category))
500+
if (!(priority & ~parser->options.log.mask))
501501
return;
502502

503503
va_start(arguments, format);
504-
zone_vlog(parser, category, format, arguments);
504+
zone_vlog(parser, priority, format, arguments);
505505
va_end(arguments);
506506
}
507507

0 commit comments

Comments
 (0)