diff options
Diffstat (limited to 'crypto/heimdal/lib/krb5/krb5_config.3')
-rw-r--r-- | crypto/heimdal/lib/krb5/krb5_config.3 | 268 |
1 files changed, 255 insertions, 13 deletions
diff --git a/crypto/heimdal/lib/krb5/krb5_config.3 b/crypto/heimdal/lib/krb5/krb5_config.3 index 471389e..9c302ae 100644 --- a/crypto/heimdal/lib/krb5/krb5_config.3 +++ b/crypto/heimdal/lib/krb5/krb5_config.3 @@ -1,26 +1,239 @@ -.\" Copyright (c) 2000 Kungliga Tekniska Högskolan -.\" $Id: krb5_config.3,v 1.5 2003/04/16 13:58:14 lha Exp $ -.Dd July 25, 2000 -.Dt KRB5_CONFIG 3 +.\" Copyright (c) 2000 - 2007 Kungliga Tekniska Högskolan +.\" (Royal Institute of Technology, Stockholm, Sweden). +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" 3. Neither the name of the Institute nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" +.\" $Id: krb5_config.3 21905 2007-08-10 10:16:45Z lha $ +.\" +.Dd August 10, 2007 +.Dt KRB5_CONFIG_GET 3 .Os HEIMDAL .Sh NAME +.Nm krb5_config_file_free , +.Nm krb5_config_free_strings , +.Nm krb5_config_get , +.Nm krb5_config_get_bool , .Nm krb5_config_get_bool_default , +.Nm krb5_config_get_int , .Nm krb5_config_get_int_default , +.Nm krb5_config_get_list , +.Nm krb5_config_get_next , +.Nm krb5_config_get_string , .Nm krb5_config_get_string_default , -.Nm krb5_config_get_time_default +.Nm krb5_config_get_strings , +.Nm krb5_config_get_time , +.Nm krb5_config_get_time_default , +.Nm krb5_config_parse_file , +.Nm krb5_config_parse_file_multi , +.Nm krb5_config_vget , +.Nm krb5_config_vget_bool , +.Nm krb5_config_vget_bool_default , +.Nm krb5_config_vget_int , +.Nm krb5_config_vget_int_default , +.Nm krb5_config_vget_list , +.Nm krb5_config_vget_next , +.Nm krb5_config_vget_string , +.Nm krb5_config_vget_string_default , +.Nm krb5_config_vget_strings , +.Nm krb5_config_vget_time , +.Nm krb5_config_vget_time_default .Nd get configuration value .Sh LIBRARY Kerberos 5 Library (libkrb5, -lkrb5) .Sh SYNOPSIS .In krb5.h +.Ft krb5_error_code +.Fo krb5_config_file_free +.Fa "krb5_context context" +.Fa "krb5_config_section *s" +.Fc +.Ft void +.Fo krb5_config_free_strings +.Fa "char **strings" +.Fc +.Ft "const void *" +.Fo krb5_config_get +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "int type" +.Fa "..." +.Fc .Ft krb5_boolean -.Fn krb5_config_get_bool_default "krb5_context context" "krb5_config_section *c" "krb5_boolean def_value" "..." +.Fo krb5_config_get_bool +.Fa "krb5_context context" +.Fa "krb5_config_section *c" +.Fa "..." +.Fc +.Ft krb5_boolean +.Fo krb5_config_get_bool_default +.Fa "krb5_context context" +.Fa "krb5_config_section *c" +.Fa "krb5_boolean def_value" +.Fa "..." +.Fc +.Ft int +.Fo krb5_config_get_int +.Fa "krb5_context context" +.Fa "krb5_config_section *c" +.Fa "..." +.Fc .Ft int -.Fn krb5_config_get_int_default "krb5_context context" "krb5_config_section *c" "int def_value" "..." +.Fo krb5_config_get_int_default +.Fa "krb5_context context" +.Fa "krb5_config_section *c" +.Fa "int def_value" +.Fa "..." +.Fc .Ft const char* -.Fn krb5_config_get_string_default "krb5_context context" "krb5_config_section *c" "const char *def_value" "..." +.Fo krb5_config_get_string +.Fa "krb5_context context" +.Fa "krb5_config_section *c" +.Fa "..." +.Fc +.Ft const char* +.Fo krb5_config_get_string_default +.Fa "krb5_context context" +.Fa "krb5_config_section *c" +.Fa "const char *def_value" +.Fa "..." +.Fc +.Ft "char**" +.Fo krb5_config_get_strings +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "..." +.Fc +.Ft int +.Fo krb5_config_get_time +.Fa "krb5_context context" +.Fa "krb5_config_section *c" +.Fa "..." +.Fc +.Ft int +.Fo krb5_config_get_time_default +.Fa "krb5_context context" +.Fa "krb5_config_section *c" +.Fa "int def_value" +.Fa "..." +.Fc +.Ft krb5_error_code +.Fo krb5_config_parse_file +.Fa "krb5_context context" +.Fa "const char *fname" +.Fa "krb5_config_section **res" +.Fc +.Ft krb5_error_code +.Fo krb5_config_parse_file_multi +.Fa "krb5_context context" +.Fa "const char *fname" +.Fa "krb5_config_section **res" +.Fc +.Ft "const void *" +.Fo krb5_config_vget +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "int type" +.Fa "va_list args" +.Fc +.Ft krb5_boolean +.Fo krb5_config_vget_bool +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "va_list args" +.Fc +.Ft krb5_boolean +.Fo krb5_config_vget_bool_default +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "krb5_boolean def_value" +.Fa "va_list args" +.Fc +.Ft int +.Fo krb5_config_vget_int +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "va_list args" +.Fc .Ft int -.Fn krb5_config_get_time_default "krb5_context context" "krb5_config_section *c" "int def_value" "..." +.Fo krb5_config_vget_int_default +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "int def_value" +.Fa "va_list args" +.Fc +.Ft "const krb5_config_binding *" +.Fo krb5_config_vget_list +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "va_list args" +.Fc +.Ft "const void *" +.Fo krb5_config_vget_next +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "const krb5_config_binding **pointer" +.Fa "int type" +.Fa "va_list args" +.Fc +.Ft "const char *" +.Fo krb5_config_vget_string +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "va_list args" +.Fc +.Ft "const char *" +.Fo krb5_config_vget_string_default +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "const char *def_value" +.Fa "va_list args" +.Fc +.Ft char ** +.Fo krb5_config_vget_strings +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "va_list args" +.Fc +.Ft int +.Fo krb5_config_vget_time +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "va_list args" +.Fc +.Ft int +.Fo krb5_config_vget_time_default +.Fa "krb5_context context" +.Fa "const krb5_config_section *c" +.Fa "int def_value" +.Fa "va_list args" +.Fc .Sh DESCRIPTION These functions get values from the .Xr krb5.conf 5 @@ -31,7 +244,8 @@ parameter. The variable arguments should be a list of strings naming each subsection to look for. For example: .Bd -literal -offset indent -krb5_config_get_bool_default(context, NULL, FALSE, "libdefaults", "log_utc", NULL) +krb5_config_get_bool_default(context, NULL, FALSE, + "libdefaults", "log_utc", NULL); .Ed .Pp gets the boolean value for the @@ -57,9 +271,37 @@ seconds, so the string .Sq 2 weeks will be converted to 1209600 (2 * 7 * 24 * 60 * 60). -.Sh BUGS -Other than for the string case, there's no way to tell whether there -was a value specified or not. +.Pp +.Fn krb5_config_get_string +returns a +.Ft "const char *" +to a string in the configuration database. The string not be valid +after reload of the configuration database +.\" or a call to .Fn krb5_config_set_string , +so a caller should make a local copy if its need to keep the database. +.Pp +.Fn krb5_config_free_strings +free +.Fa strings +as returned by +.Fn krb5_config_get_strings +and +.Fn krb5_config_vget_strings . +If the argument +.Fa strings +is a +.Dv NULL +pointer, no action occurs. +.Pp +.Fn krb5_config_file_free +free the result of +.Fn krb5_config_parse_file +and +.Fn krb5_config_parse_file_multi . .Sh SEE ALSO .Xr krb5_appdefault 3 , +.Xr krb5_init_context 3 , .Xr krb5.conf 5 +.Sh BUGS +For the default functions, other than for the string case, there's no +way to tell whether there was a value specified or not. |