mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-08-22 01:59:26 +00:00
There were several methods how we used 'argv[0]'. Some programs had a static value, some programs did use isc_file_progname(), some programs stripped 'lt-' from the beginning of the name. And some used argv[0] directly. Unify the handling and all the variables into isc_commandline_progname that gets populated by the new isc_commandline_init(argc, argv) call.
51 lines
1023 B
C
51 lines
1023 B
C
/*
|
|
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
|
|
*
|
|
* SPDX-License-Identifier: MPL-2.0
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, you can obtain one at https://mozilla.org/MPL/2.0/.
|
|
*
|
|
* See the COPYRIGHT file distributed with this work for additional
|
|
* information regarding copyright ownership.
|
|
*/
|
|
|
|
/*! \file */
|
|
|
|
#include "util.h"
|
|
#include <stdarg.h>
|
|
#include <stdbool.h>
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <unistd.h>
|
|
|
|
#include <isc/commandline.h>
|
|
#include <isc/tls.h>
|
|
|
|
extern bool verbose;
|
|
|
|
void
|
|
notify(const char *fmt, ...) {
|
|
va_list ap;
|
|
|
|
if (verbose) {
|
|
va_start(ap, fmt);
|
|
vfprintf(stderr, fmt, ap);
|
|
va_end(ap);
|
|
fprintf(stderr, "\n");
|
|
}
|
|
}
|
|
|
|
void
|
|
fatal(const char *format, ...) {
|
|
va_list args;
|
|
|
|
fprintf(stderr, "%s: ", isc_commandline_progname);
|
|
va_start(args, format);
|
|
vfprintf(stderr, format, args);
|
|
va_end(args);
|
|
fprintf(stderr, "\n");
|
|
_exit(EXIT_FAILURE);
|
|
}
|