summaryrefslogtreecommitdiffstats
path: root/src/kim/lib/kim_identity.c
diff options
context:
space:
mode:
authorAlexandra Ellwood <lxs@mit.edu>2008-07-24 21:26:14 +0000
committerAlexandra Ellwood <lxs@mit.edu>2008-07-24 21:26:14 +0000
commiteb14fbed2b11a4369b76367e5f15aa1237bc14fb (patch)
tree1d870506c71c1d95cd4901c4eeb4541c7840f04d /src/kim/lib/kim_identity.c
parent4b6f2fd2ea29a84fec63b328846bfb31bb85268e (diff)
downloadkrb5-eb14fbed2b11a4369b76367e5f15aa1237bc14fb.tar.gz
krb5-eb14fbed2b11a4369b76367e5f15aa1237bc14fb.tar.xz
krb5-eb14fbed2b11a4369b76367e5f15aa1237bc14fb.zip
Return extended krb5 error strings
Use krb5_get_error_message instead of error_message for detailed krb5 error strings. Also removed a few remaining instances of types ending in _t and fixed up some whitespace issues. Recommend ignoring whitespace diff. ticket: new git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@20579 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/kim/lib/kim_identity.c')
-rw-r--r--src/kim/lib/kim_identity.c97
1 files changed, 53 insertions, 44 deletions
diff --git a/src/kim/lib/kim_identity.c b/src/kim/lib/kim_identity.c
index 2181191e6..42a839a53 100644
--- a/src/kim/lib/kim_identity.c
+++ b/src/kim/lib/kim_identity.c
@@ -65,20 +65,20 @@ static inline kim_error kim_identity_allocate (kim_identity *out_identity)
/* ------------------------------------------------------------------------ */
kim_error kim_identity_create_from_string (kim_identity *out_identity,
- kim_string in_string)
+ kim_string in_string)
{
kim_error err = KIM_NO_ERROR;
kim_identity identity = NULL;
if (!err && !out_identity) { err = param_error (1, "out_identity", "NULL"); }
if (!err && !in_string ) { err = param_error (2, "in_string", "NULL"); }
-
+
if (!err) {
err = kim_identity_allocate (&identity);
}
if (!err) {
- err = krb5_error (krb5_init_context (&identity->context));
+ err = krb5_error (NULL, krb5_init_context (&identity->context));
}
if (!err) {
@@ -86,7 +86,7 @@ kim_error kim_identity_create_from_string (kim_identity *out_identity,
if (code == KRB5_PARSE_MALFORMED) {
err = kim_error_create_from_code (KIM_BAD_PRINCIPAL_STRING_ECODE, in_string);
} else if (code) {
- err = krb5_error (code);
+ err = krb5_error (identity->context, code);
}
}
@@ -107,9 +107,9 @@ kim_error kim_identity_create_from_string (kim_identity *out_identity,
/* ------------------------------------------------------------------------ */
kim_error kim_identity_create_from_components (kim_identity *out_identity,
- kim_string in_realm,
- kim_string in_1st_component,
- ...)
+ kim_string in_realm,
+ kim_string in_1st_component,
+ ...)
{
kim_error err = KIM_NO_ERROR;
kim_identity identity = NULL;
@@ -124,13 +124,13 @@ kim_error kim_identity_create_from_components (kim_identity *out_identity,
}
if (!err) {
- err = krb5_error (krb5_init_context (&identity->context));
+ err = krb5_error (NULL, krb5_init_context (&identity->context));
}
-
+
if (!err) {
va_list args;
kim_count component_count = 1;
-
+
va_start (args, in_1st_component);
while (va_arg (args, kim_string)) { component_count++; }
va_end (args);
@@ -143,7 +143,7 @@ kim_error kim_identity_create_from_components (kim_identity *out_identity,
if (!err) {
va_list args;
krb5_int32 i;
-
+
krb5_princ_set_realm_length (context, &principal_data, strlen (in_realm));
krb5_princ_set_realm_data (context, &principal_data, (char *) in_realm);
@@ -163,11 +163,14 @@ kim_error kim_identity_create_from_components (kim_identity *out_identity,
}
va_end (args);
}
-
+
if (!err) {
/* make a copy that has actually been allocated by the krb5
* library so krb5_free_principal can be called on it */
- err = krb5_error (krb5_copy_principal (identity->context, &principal_data, &identity->principal));
+ err = krb5_error (identity->context,
+ krb5_copy_principal (identity->context,
+ &principal_data,
+ &identity->principal));
}
if (!err) {
@@ -195,9 +198,9 @@ kim_error kim_identity_create_from_components (kim_identity *out_identity,
/* ------------------------------------------------------------------------ */
-kim_error kim_identity_create_from_krb5_principal (kim_identity *out_identity,
- krb5_context in_krb5_context,
- krb5_principal in_krb5_principal)
+kim_error kim_identity_create_from_krb5_principal (kim_identity *out_identity,
+ krb5_context in_krb5_context,
+ krb5_principal in_krb5_principal)
{
kim_error err = KIM_NO_ERROR;
kim_identity identity = NULL;
@@ -211,11 +214,13 @@ kim_error kim_identity_create_from_krb5_principal (kim_identity *out_identity,
}
if (!err) {
- err = krb5_error (krb5_init_context (&identity->context));
+ err = krb5_error (NULL, krb5_init_context (&identity->context));
}
-
+
if (!err) {
- err = krb5_error (krb5_copy_principal (identity->context, in_krb5_principal,
+ err = krb5_error (identity->context,
+ krb5_copy_principal (identity->context,
+ in_krb5_principal,
&identity->principal));
}
@@ -236,31 +241,33 @@ kim_error kim_identity_create_from_krb5_principal (kim_identity *out_identity,
/* ------------------------------------------------------------------------ */
kim_error kim_identity_copy (kim_identity *out_identity,
- kim_identity in_identity)
+ kim_identity in_identity)
{
kim_error err = KIM_NO_ERROR;
kim_identity identity = KIM_IDENTITY_ANY;
if (!err && !out_identity) { err = param_error (1, "out_identity", "NULL"); }
-
+
if (!err && in_identity != KIM_IDENTITY_ANY) {
err = kim_identity_allocate (&identity);
if (!err) {
- err = krb5_error (krb5_init_context (&identity->context));
+ err = krb5_error (NULL, krb5_init_context (&identity->context));
}
if (!err) {
- err = krb5_error (krb5_copy_principal (identity->context, in_identity->principal,
+ err = krb5_error (identity->context,
+ krb5_copy_principal (identity->context,
+ in_identity->principal,
&identity->principal));
}
}
-
+
if (!err) {
*out_identity = identity;
identity = NULL;
}
-
+
kim_identity_free (&identity);
return check_error (err);
@@ -269,8 +276,8 @@ kim_error kim_identity_copy (kim_identity *out_identity,
/* ------------------------------------------------------------------------ */
kim_error kim_identity_compare (kim_identity in_identity,
- kim_identity in_compare_to_identity,
- kim_comparison *out_comparison)
+ kim_identity in_compare_to_identity,
+ kim_comparison *out_comparison)
{
kim_error err = KIM_NO_ERROR;
@@ -308,7 +315,7 @@ kim_error kim_identity_compare (kim_identity in_identity,
/* ------------------------------------------------------------------------ */
kim_error kim_identity_get_string (kim_identity in_identity,
- kim_string *out_string)
+ kim_string *out_string)
{
kim_error err = KIM_NO_ERROR;
char *unparsed_name = NULL;
@@ -317,7 +324,8 @@ kim_error kim_identity_get_string (kim_identity in_identity,
if (!err && !out_string ) { err = param_error (2, "out_string", "NULL"); }
if (!err) {
- err = krb5_error (krb5_unparse_name (in_identity->context,
+ err = krb5_error (in_identity->context,
+ krb5_unparse_name (in_identity->context,
in_identity->principal,
&unparsed_name));
}
@@ -334,7 +342,7 @@ kim_error kim_identity_get_string (kim_identity in_identity,
/* ------------------------------------------------------------------------ */
kim_error kim_identity_get_display_string (kim_identity in_identity,
- kim_string *out_display_string)
+ kim_string *out_display_string)
{
kim_error err = KIM_NO_ERROR;
kim_string string = NULL;
@@ -379,7 +387,7 @@ kim_error kim_identity_get_display_string (kim_identity in_identity,
/* ------------------------------------------------------------------------ */
kim_error kim_identity_get_realm (kim_identity in_identity,
- kim_string *out_realm_string)
+ kim_string *out_realm_string)
{
kim_error err = KIM_NO_ERROR;
@@ -398,7 +406,7 @@ kim_error kim_identity_get_realm (kim_identity in_identity,
/* ------------------------------------------------------------------------ */
kim_error kim_identity_get_number_of_components (kim_identity in_identity,
- kim_count *out_number_of_components)
+ kim_count *out_number_of_components)
{
kim_error err = KIM_NO_ERROR;
@@ -415,8 +423,8 @@ kim_error kim_identity_get_number_of_components (kim_identity in_identity,
/* ------------------------------------------------------------------------ */
kim_error kim_identity_get_component_at_index (kim_identity in_identity,
- kim_count in_index,
- kim_string *out_component_string)
+ kim_count in_index,
+ kim_string *out_component_string)
{
kim_error err = KIM_NO_ERROR;
krb5_data *component = NULL;
@@ -439,9 +447,9 @@ kim_error kim_identity_get_component_at_index (kim_identity in_identity,
/* ------------------------------------------------------------------------ */
-kim_error kim_identity_get_krb5_principal (kim_identity in_identity,
- krb5_context in_krb5_context,
- krb5_principal *out_krb5_principal)
+kim_error kim_identity_get_krb5_principal (kim_identity in_identity,
+ krb5_context in_krb5_context,
+ krb5_principal *out_krb5_principal)
{
kim_error err = KIM_NO_ERROR;
@@ -450,7 +458,8 @@ kim_error kim_identity_get_krb5_principal (kim_identity in_identity,
if (!err && !out_krb5_principal) { err = param_error (3, "out_krb5_principal", "NULL"); }
if (!err) {
- err = krb5_error (krb5_copy_principal (in_identity->context,
+ err = krb5_error (in_identity->context,
+ krb5_copy_principal (in_identity->context,
in_identity->principal,
out_krb5_principal));
}
@@ -461,7 +470,7 @@ kim_error kim_identity_get_krb5_principal (kim_identity in_identity,
/* ------------------------------------------------------------------------ */
kim_error kim_identity_get_gss_name (kim_identity in_identity,
- gss_name_t *out_gss_name)
+ gss_name_t *out_gss_name)
{
kim_error err = KIM_NO_ERROR;
@@ -478,7 +487,7 @@ kim_error kim_identity_get_gss_name (kim_identity in_identity,
/* ------------------------------------------------------------------------ */
kim_error kim_identity_is_tgt_service (kim_identity in_identity,
- kim_boolean *out_is_tgt_service)
+ kim_boolean *out_is_tgt_service)
{
kim_error err = KIM_NO_ERROR;
@@ -501,7 +510,7 @@ kim_error kim_identity_is_tgt_service (kim_identity in_identity,
/* ------------------------------------------------------------------------ */
kim_error kim_identity_change_password (kim_identity in_identity,
- kim_options in_options)
+ kim_options in_options)
{
kim_error err = KIM_NO_ERROR;
@@ -513,8 +522,8 @@ kim_error kim_identity_change_password (kim_identity in_identity,
/* ------------------------------------------------------------------------ */
kim_error kim_identity_change_password_to_password (kim_identity in_identity,
- kim_options in_options,
- kim_string in_new_password)
+ kim_options in_options,
+ kim_string in_new_password)
{
kim_error err = KIM_NO_ERROR;
@@ -530,7 +539,7 @@ void kim_identity_free (kim_identity *io_identity)
{
if (io_identity && *io_identity) {
kim_identity identity = *io_identity;
-
+
if (identity->context) {
if (identity->principal) {
krb5_free_principal (identity->context, identity->principal);