1N/A Kerberos Backend, common header file 1N/A Sumit Bose <sbose@redhat.com> 1N/A Copyright (C) 2009 Red Hat 1N/A This program is free software; you can redistribute it and/or modify 1N/A it under the terms of the GNU General Public License as published by 1N/A the Free Software Foundation; either version 3 of the License, or 1N/A (at your option) any later version. 1N/A This program is distributed in the hope that it will be useful, 1N/A but WITHOUT ANY WARRANTY; without even the implied warranty of 1N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1N/A GNU General Public License for more details. 1N/A You should have received a copy of the GNU General Public License 1N/A /* opts taken from kinit */ 1N/A * @brief Copy given keytab into a MEMORY keytab 1N/A * @param[in] mem_ctx Talloc memory context the new keytab name should be * @param[in] kctx Kerberos context * @param[in] inp_keytab_file Existing keytab, if set to NULL the default * @param[out] _mem_name Name of the new MEMORY keytab * @param[out] _mem_keytab Krb5 keytab handle for the new MEMORY keytab, NULL * may be passed here if the caller has no use for the * The memory for the MEMORY keytab is handled by libkrb5 internally and * a reference counter is used. If the reference counter of the specific * MEMORY keytab reaches 0, i.e. no open ones are left, the memory is free. * This means we cannot call krb5_kt_close() for the new MEMORY keytab in * copy_keytab_into_memory() because this would destroy it immediately. Hence * we have to return the handle so that the caller can safely remove the * MEMORY keytab if the is not needed anymore. Since libkrb5 frees the * internal memory when the library is unloaded short running processes can * safely pass NULL as the 5th argument because on exit all memory is freed. * Long running processes which need more control over the memory consumption * should close the handle for free the memory at runtime. #
endif /* __KRB5_COMMON_H__ */