initialise ignore_addresses
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@10238 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -130,6 +130,18 @@ init_context_from_config_file(krb5_context context)
|
|||||||
krb5_free_addresses(context, &addresses);
|
krb5_free_addresses(context, &addresses);
|
||||||
}
|
}
|
||||||
krb5_config_free_strings(adr);
|
krb5_config_free_strings(adr);
|
||||||
|
|
||||||
|
adr = krb5_config_get_strings(context, NULL,
|
||||||
|
"libdefaults",
|
||||||
|
"ignore_addresses",
|
||||||
|
NULL);
|
||||||
|
memset(&addresses, 0, sizeof(addresses));
|
||||||
|
for(a = adr; a && *a; a++) {
|
||||||
|
krb5_parse_address(context, *a, &addresses);
|
||||||
|
krb5_add_ignore_addresses(context, &addresses);
|
||||||
|
krb5_free_addresses(context, &addresses);
|
||||||
|
}
|
||||||
|
krb5_config_free_strings(adr);
|
||||||
}
|
}
|
||||||
|
|
||||||
INIT_FIELD(context, bool, scan_interfaces, TRUE, "scan_interfaces");
|
INIT_FIELD(context, bool, scan_interfaces, TRUE, "scan_interfaces");
|
||||||
@@ -362,6 +374,44 @@ krb5_get_extra_addresses(krb5_context context, krb5_addresses *addresses)
|
|||||||
return copy_HostAddresses(context->extra_addresses, addresses);
|
return copy_HostAddresses(context->extra_addresses, addresses);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
krb5_error_code
|
||||||
|
krb5_add_ignore_addresses(krb5_context context, krb5_addresses *addresses)
|
||||||
|
{
|
||||||
|
|
||||||
|
if(context->ignore_addresses)
|
||||||
|
return krb5_append_addresses(context,
|
||||||
|
context->ignore_addresses, addresses);
|
||||||
|
else
|
||||||
|
return krb5_set_ignore_addresses(context, addresses);
|
||||||
|
}
|
||||||
|
|
||||||
|
krb5_error_code
|
||||||
|
krb5_set_ignore_addresses(krb5_context context, const krb5_addresses *addresses)
|
||||||
|
{
|
||||||
|
if(context->ignore_addresses) {
|
||||||
|
krb5_free_addresses(context, context->ignore_addresses);
|
||||||
|
free(context->ignore_addresses);
|
||||||
|
}
|
||||||
|
if(context->ignore_addresses == NULL) {
|
||||||
|
context->ignore_addresses = malloc(sizeof(*context->ignore_addresses));
|
||||||
|
if(context->ignore_addresses == NULL) {
|
||||||
|
krb5_set_error_string (context, "malloc: out of memory");
|
||||||
|
return ENOMEM;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return krb5_copy_addresses(context, addresses, context->ignore_addresses);
|
||||||
|
}
|
||||||
|
|
||||||
|
krb5_error_code
|
||||||
|
krb5_get_ignore_addresses(krb5_context context, krb5_addresses *addresses)
|
||||||
|
{
|
||||||
|
if(context->ignore_addresses == NULL) {
|
||||||
|
memset(addresses, 0, sizeof(*addresses));
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return copy_HostAddresses(context->ignore_addresses, addresses);
|
||||||
|
}
|
||||||
|
|
||||||
krb5_error_code
|
krb5_error_code
|
||||||
krb5_set_fcache_version(krb5_context context, int version)
|
krb5_set_fcache_version(krb5_context context, int version)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user