2 * Copyright (C) 1999-2001 Internet Software Consortium.
4 * Permission to use, copy, modify, and distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
8 * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
9 * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
10 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
11 * INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
12 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
13 * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
14 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
15 * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18 /* $Id: lib.c,v 1.9 2001/11/19 03:08:23 mayer Exp $ */
33 LIBISC_EXTERNAL_DATA isc_msgcat_t * isc_msgcat = NULL;
40 static isc_once_t msgcat_once = ISC_ONCE_INIT;
49 isc_msgcat_open("libisc.cat", &isc_msgcat);
53 isc_lib_initmsgcat(void) {
57 * Initialize the ISC library's message catalog, isc_msgcat, if it
58 * has not already been initialized.
61 result = isc_once_do(&msgcat_once, open_msgcat);
62 if (result != ISC_R_SUCCESS) {
64 * Normally we'd use RUNTIME_CHECK() or FATAL_ERROR(), but
65 * we can't do that here, since they might call us!
66 * (Note that the catalog might be open anyway, so we might
67 * as well try to provide an internationalized message.)
69 fprintf(stderr, "%s:%d: %s: isc_once_do() %s.\n",
71 isc_msgcat_get(isc_msgcat, ISC_MSGSET_GENERAL,
72 ISC_MSG_FATALERROR, "fatal error"),
73 isc_msgcat_get(isc_msgcat, ISC_MSGSET_GENERAL,
74 ISC_MSG_FAILED, "failed"));