"Fossies" - the Fresh Open Source Software Archive

Member "bind-9.17.5/lib/dns/include/dns/ttl.h" (4 Sep 2020, 1875 Bytes) of package /linux/misc/dns/bind9/9.17.5/bind-9.17.5.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "ttl.h" see the Fossies "Dox" file reference documentation.

    1 /*
    2  * Copyright (C) Internet Systems Consortium, Inc. ("ISC")
    3  *
    4  * This Source Code Form is subject to the terms of the Mozilla Public
    5  * License, v. 2.0. If a copy of the MPL was not distributed with this
    6  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
    7  *
    8  * See the COPYRIGHT file distributed with this work for additional
    9  * information regarding copyright ownership.
   10  */
   11 
   12 #ifndef DNS_TTL_H
   13 #define DNS_TTL_H 1
   14 
   15 /*! \file dns/ttl.h */
   16 
   17 /***
   18  ***    Imports
   19  ***/
   20 
   21 #include <inttypes.h>
   22 #include <stdbool.h>
   23 
   24 #include <isc/lang.h>
   25 #include <isc/types.h>
   26 
   27 ISC_LANG_BEGINDECLS
   28 
   29 /***
   30  ***    Functions
   31  ***/
   32 
   33 isc_result_t
   34 dns_ttl_totext(uint32_t src, bool verbose, bool upcase, isc_buffer_t *target);
   35 /*%<
   36  * Output a TTL or other time interval in a human-readable form.
   37  * The time interval is given as a count of seconds in 'src'.
   38  * The text representation is appended to 'target'.
   39  *
   40  * If 'verbose' is false, use the terse BIND 8 style, like "1w2d3h4m5s".
   41  *
   42  * If 'verbose' is true, use a verbose style like the SOA comments
   43  * in "dig", like "1 week 2 days 3 hours 4 minutes 5 seconds".
   44  *
   45  * If 'upcase' is true, we conform to the BIND 8 style in which
   46  * the unit letter is capitalized if there is only a single unit
   47  * letter to print (for example, "1m30s", but "2M")
   48  *
   49  * If 'upcase' is false, unit letters are always in lower case.
   50  *
   51  * Returns:
   52  * \li  ISC_R_SUCCESS
   53  * \li  ISC_R_NOSPACE
   54  */
   55 
   56 isc_result_t
   57 dns_counter_fromtext(isc_textregion_t *source, uint32_t *ttl);
   58 /*%<
   59  * Converts a counter from either a plain number or a BIND 8 style value.
   60  *
   61  * Returns:
   62  *\li   ISC_R_SUCCESS
   63  *\li   DNS_R_SYNTAX
   64  */
   65 
   66 isc_result_t
   67 dns_ttl_fromtext(isc_textregion_t *source, uint32_t *ttl);
   68 /*%<
   69  * Converts a ttl from either a plain number or a BIND 8 style value.
   70  *
   71  * Returns:
   72  *\li   ISC_R_SUCCESS
   73  *\li   DNS_R_BADTTL
   74  */
   75 
   76 ISC_LANG_ENDDECLS
   77 
   78 #endif /* DNS_TTL_H */