PageRenderTime 28ms CodeModel.GetById 19ms app.highlight 5ms RepoModel.GetById 1ms app.codeStats 0ms

/contrib/bind9/lib/dns/dst_lib.c

https://bitbucket.org/freebsd/freebsd-head/
C | 67 lines | 16 code | 17 blank | 34 comment | 1 complexity | 276cf45f256a49850e250f8714204aa1 MD5 | raw file
 1/*
 2 * Copyright (C) 2004, 2005, 2007  Internet Systems Consortium, Inc. ("ISC")
 3 * Copyright (C) 1999-2001  Internet Software Consortium.
 4 *
 5 * Permission to use, copy, modify, and/or distribute this software for any
 6 * purpose with or without fee is hereby granted, provided that the above
 7 * copyright notice and this permission notice appear in all copies.
 8 *
 9 * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
10 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11 * AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
12 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
14 * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15 * PERFORMANCE OF THIS SOFTWARE.
16 */
17
18/*
19 * Principal Author: Brian Wellington
20 * $Id: dst_lib.c,v 1.5 2007/06/19 23:47:16 tbox Exp $
21 */
22
23/*! \file */
24
25#include <config.h>
26
27#include <stddef.h>
28
29#include <isc/once.h>
30#include <isc/msgcat.h>
31#include <isc/util.h>
32
33#include <dst/lib.h>
34
35/***
36 *** Globals
37 ***/
38
39LIBDNS_EXTERNAL_DATA isc_msgcat_t *		dst_msgcat = NULL;
40
41
42/***
43 *** Private
44 ***/
45
46static isc_once_t		msgcat_once = ISC_ONCE_INIT;
47
48
49/***
50 *** Functions
51 ***/
52
53static void
54open_msgcat(void) {
55	isc_msgcat_open("libdst.cat", &dst_msgcat);
56}
57
58void
59dst_lib_initmsgcat(void) {
60
61	/*
62	 * Initialize the DST library's message catalog, dst_msgcat, if it
63	 * has not already been initialized.
64	 */
65
66	RUNTIME_CHECK(isc_once_do(&msgcat_once, open_msgcat) == ISC_R_SUCCESS);
67}