summaryrefslogtreecommitdiffstats
path: root/src/lib/krb5/ccache/cccursor.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/krb5/ccache/cccursor.c')
-rw-r--r--src/lib/krb5/ccache/cccursor.c193
1 files changed, 97 insertions, 96 deletions
diff --git a/src/lib/krb5/ccache/cccursor.c b/src/lib/krb5/ccache/cccursor.c
index 5a062d4433..852eff847f 100644
--- a/src/lib/krb5/ccache/cccursor.c
+++ b/src/lib/krb5/ccache/cccursor.c
@@ -1,3 +1,4 @@
+/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */
/*
* lib/krb5/ccache/cccursor.c
*
@@ -8,7 +9,7 @@
* require a specific license from the United States Government.
* It is the responsibility of any person or organization contemplating
* export to obtain such a license before exporting.
- *
+ *
* WITHIN THAT CONSTRAINT, permission to use, copy, modify, and
* distribute this software and its documentation for any purpose and
* without fee is hereby granted, provided that the above copyright
@@ -75,7 +76,7 @@ krb5_cccol_cursor_new(
*cursor = NULL;
n = malloc(sizeof(*n));
if (n == NULL)
- return ENOMEM;
+ return ENOMEM;
n->pos = CCCURSOR_CONTEXT;
n->typecursor = NULL;
@@ -83,27 +84,27 @@ krb5_cccol_cursor_new(
n->ops = NULL;
for (i = 0; i < NFULLNAMES; i++) {
- n->fullnames[i].pfx = n->fullnames[i].res = NULL;
+ n->fullnames[i].pfx = n->fullnames[i].res = NULL;
}
n->cur_fullname = 0;
ret = krb5int_cc_typecursor_new(context, &n->typecursor);
if (ret)
- goto errout;
+ goto errout;
do {
- /* Find first backend with ptcursor functionality. */
- ret = krb5int_cc_typecursor_next(context, n->typecursor, &n->ops);
- if (ret || n->ops == NULL)
- goto errout;
+ /* Find first backend with ptcursor functionality. */
+ ret = krb5int_cc_typecursor_next(context, n->typecursor, &n->ops);
+ if (ret || n->ops == NULL)
+ goto errout;
} while (n->ops->ptcursor_new == NULL);
ret = n->ops->ptcursor_new(context, &n->ptcursor);
if (ret)
- goto errout;
+ goto errout;
errout:
if (ret) {
- krb5_cccol_cursor_free(context, &n);
+ krb5_cccol_cursor_free(context, &n);
}
*cursor = n;
return ret;
@@ -124,48 +125,48 @@ krb5_cccol_cursor_next(
switch (cursor->pos) {
case CCCURSOR_CONTEXT:
- name = os_ctx->default_ccname;
- if (name != NULL) {
- cursor->pos = CCCURSOR_ENV;
- ret = cccol_do_resolve(context, cursor, name, ccache);
- if (ret)
- goto errout;
- if (*ccache != NULL)
- break;
- }
- /* fall through */
+ name = os_ctx->default_ccname;
+ if (name != NULL) {
+ cursor->pos = CCCURSOR_ENV;
+ ret = cccol_do_resolve(context, cursor, name, ccache);
+ if (ret)
+ goto errout;
+ if (*ccache != NULL)
+ break;
+ }
+ /* fall through */
case CCCURSOR_ENV:
- name = getenv(KRB5_ENV_CCNAME);
- if (name != NULL) {
- cursor->pos = CCCURSOR_OS;
- ret = cccol_do_resolve(context, cursor, name, ccache);
- if (ret)
- goto errout;
- if (*ccache != NULL)
- break;
- }
- /* fall through */
+ name = getenv(KRB5_ENV_CCNAME);
+ if (name != NULL) {
+ cursor->pos = CCCURSOR_OS;
+ ret = cccol_do_resolve(context, cursor, name, ccache);
+ if (ret)
+ goto errout;
+ if (*ccache != NULL)
+ break;
+ }
+ /* fall through */
case CCCURSOR_OS:
- ret = krb5int_cc_os_default_name(context, &name);
- if (ret) goto errout;
- if (name != NULL) {
- cursor->pos = CCCURSOR_PERTYPE;
- ret = cccol_do_resolve(context, cursor, name, ccache);
- free(name);
- if (ret)
- goto errout;
- if (*ccache != NULL)
- break;
- }
- /* fall through */
+ ret = krb5int_cc_os_default_name(context, &name);
+ if (ret) goto errout;
+ if (name != NULL) {
+ cursor->pos = CCCURSOR_PERTYPE;
+ ret = cccol_do_resolve(context, cursor, name, ccache);
+ free(name);
+ if (ret)
+ goto errout;
+ if (*ccache != NULL)
+ break;
+ }
+ /* fall through */
case CCCURSOR_PERTYPE:
- cursor->pos = CCCURSOR_PERTYPE;
- do {
- ret = cccol_pertype_next(context, cursor, ccache);
- if (ret)
- goto errout;
- } while (cccol_already(context, cursor, ccache));
- break;
+ cursor->pos = CCCURSOR_PERTYPE;
+ do {
+ ret = cccol_pertype_next(context, cursor, ccache);
+ if (ret)
+ goto errout;
+ } while (cccol_already(context, cursor, ccache));
+ break;
}
errout:
return ret;
@@ -180,18 +181,18 @@ krb5_cccol_cursor_free(
int i;
if (c == NULL)
- return 0;
+ return 0;
for (i = 0; i < NFULLNAMES; i++) {
- if (c->fullnames[i].pfx != NULL)
- free(c->fullnames[i].pfx);
- if (c->fullnames[i].res != NULL)
- free(c->fullnames[i].res);
+ if (c->fullnames[i].pfx != NULL)
+ free(c->fullnames[i].pfx);
+ if (c->fullnames[i].res != NULL)
+ free(c->fullnames[i].res);
}
if (c->ptcursor != NULL)
- c->ops->ptcursor_free(context, &c->ptcursor);
+ c->ops->ptcursor_free(context, &c->ptcursor);
if (c->typecursor != NULL)
- krb5int_cc_typecursor_free(context, &c->typecursor);
+ krb5int_cc_typecursor_free(context, &c->typecursor);
free(c);
*cursor = NULL;
@@ -200,7 +201,7 @@ krb5_cccol_cursor_free(
krb5_error_code KRB5_CALLCONV
krb5_cccol_last_change_time(
- krb5_context context,
+ krb5_context context,
krb5_timestamp *change_time)
{
krb5_error_code ret = 0;
@@ -208,11 +209,11 @@ krb5_cccol_last_change_time(
krb5_ccache ccache = NULL;
krb5_timestamp last_time = 0;
krb5_timestamp max_change_time = 0;
-
+
*change_time = 0;
-
+
ret = krb5_cccol_cursor_new(context, &c);
-
+
while (!ret) {
ret = krb5_cccol_cursor_next(context, c, &ccache);
if (ccache) {
@@ -248,19 +249,19 @@ cccol_already(
int i;
if (*ccache == NULL)
- return 0;
+ return 0;
name = krb5_cc_get_name(context, *ccache);
if (name == NULL)
- return 0;
+ return 0;
prefix = krb5_cc_get_type(context, *ccache);
assert(c->cur_fullname < NFULLNAMES);
for (i = 0; i < c->cur_fullname; i++) {
- if (cccol_cmpname(prefix, name, &c->fullnames[i])) {
- krb5_cc_close(context, *ccache);
- *ccache = NULL;
- return 1;
- }
+ if (cccol_cmpname(prefix, name, &c->fullnames[i])) {
+ krb5_cc_close(context, *ccache);
+ *ccache = NULL;
+ return 1;
+ }
}
return 0;
}
@@ -275,11 +276,11 @@ cccol_cmpname(
struct cc_fullname *fullname)
{
if (fullname->pfx == NULL || fullname->res == NULL)
- return 0;
+ return 0;
if (strcmp(prefix, fullname->pfx))
- return 0;
+ return 0;
if (strcmp(name, fullname->res))
- return 0;
+ return 0;
return 1;
}
@@ -303,10 +304,10 @@ cccol_do_resolve(
assert(cursor->cur_fullname < NFULLNAMES);
ret = krb5_cc_resolve(context, name, ccache);
if (ret)
- return ret;
+ return ret;
if (cccol_already(context, cursor, ccache))
- return 0;
+ return 0;
fullname = &cursor->fullnames[cursor->cur_fullname];
fullname->pfx = strdup(krb5_cc_get_type(context, *ccache));
@@ -331,35 +332,35 @@ cccol_pertype_next(
/* Are we out of backends? */
if (cursor->ops == NULL)
- return 0;
+ return 0;
/*
* Loop in case there are multiple backends with empty ccache
* lists.
*/
while (*ccache == NULL) {
- ret = cursor->ops->ptcursor_next(context, cursor->ptcursor, ccache);
- if (ret)
- goto errout;
- if (*ccache != NULL)
- return 0;
-
- ret = cursor->ops->ptcursor_free(context, &cursor->ptcursor);
- if (ret)
- goto errout;
-
- do {
- /* Find first backend with ptcursor functionality. */
- ret = krb5int_cc_typecursor_next(context, cursor->typecursor,
- &cursor->ops);
- if (ret)
- goto errout;
- if (cursor->ops == NULL)
- return 0;
- } while (cursor->ops->ptcursor_new == NULL);
-
- ret = cursor->ops->ptcursor_new(context, &cursor->ptcursor);
- if (ret)
- goto errout;
+ ret = cursor->ops->ptcursor_next(context, cursor->ptcursor, ccache);
+ if (ret)
+ goto errout;
+ if (*ccache != NULL)
+ return 0;
+
+ ret = cursor->ops->ptcursor_free(context, &cursor->ptcursor);
+ if (ret)
+ goto errout;
+
+ do {
+ /* Find first backend with ptcursor functionality. */
+ ret = krb5int_cc_typecursor_next(context, cursor->typecursor,
+ &cursor->ops);
+ if (ret)
+ goto errout;
+ if (cursor->ops == NULL)
+ return 0;
+ } while (cursor->ops->ptcursor_new == NULL);
+
+ ret = cursor->ops->ptcursor_new(context, &cursor->ptcursor);
+ if (ret)
+ goto errout;
}
errout:
return ret;