diff options
author | Ken Raeburn <raeburn@mit.edu> | 2008-04-30 23:18:21 +0000 |
---|---|---|
committer | Ken Raeburn <raeburn@mit.edu> | 2008-04-30 23:18:21 +0000 |
commit | ec5b9670de4c7af9ebaecfbd305857ee030460c0 (patch) | |
tree | f6bf89e559978a8cea0ee428421ab75dba969381 /src/clients | |
parent | 4fe69e66b424f10e6a44f8bd488e3fa56682edbf (diff) | |
download | krb5-ec5b9670de4c7af9ebaecfbd305857ee030460c0.tar.gz krb5-ec5b9670de4c7af9ebaecfbd305857ee030460c0.tar.xz krb5-ec5b9670de4c7af9ebaecfbd305857ee030460c0.zip |
After malloc/realloc/calloc failures, return ENOMEM explicitly instead
of reading it from errno. This may make static analysis tools less
confused about when we return zero vs nonzero values.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@20312 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/clients')
-rw-r--r-- | src/clients/ksu/ccache.c | 12 | ||||
-rw-r--r-- | src/clients/ksu/heuristic.c | 8 | ||||
-rw-r--r-- | src/clients/ksu/main.c | 2 |
3 files changed, 11 insertions, 11 deletions
diff --git a/src/clients/ksu/ccache.c b/src/clients/ksu/ccache.c index 5e9c5ec511..ec8f2af0e0 100644 --- a/src/clients/ksu/ccache.c +++ b/src/clients/ksu/ccache.c @@ -226,7 +226,7 @@ int count = 0; int chunk_count = 1; if ( ! ( temp_creds = (krb5_creds **) malloc( CHUNK * sizeof(krb5_creds *)))){ - return errno; + return ENOMEM; } @@ -264,7 +264,7 @@ int chunk_count = 1; chunk_count ++; if (!(temp_creds = (krb5_creds **) realloc(temp_creds, chunk_count * CHUNK * sizeof(krb5_creds *)))){ - return errno; + return ENOMEM; } } } @@ -415,9 +415,9 @@ krb5_get_login_princ(luser, princ_list) /* check each line */ - if( !(linebuf = (char *) calloc (BUFSIZ, sizeof(char)))) return errno; + if( !(linebuf = (char *) calloc (BUFSIZ, sizeof(char)))) return ENOMEM; - if (!(buf_out = (char **) malloc( CHUNK * sizeof(char *)))) return errno; + if (!(buf_out = (char **) malloc( CHUNK * sizeof(char *)))) return ENOMEM; while ( fgets(linebuf, BUFSIZ, fp) != NULL) { /* null-terminate the input string */ @@ -434,7 +434,7 @@ krb5_get_login_princ(luser, princ_list) chunk_count ++; if (!(buf_out = (char **) realloc(buf_out, chunk_count * CHUNK * sizeof(char *)))){ - return errno; + return ENOMEM; } } @@ -442,7 +442,7 @@ krb5_get_login_princ(luser, princ_list) if (!newline) while (((gobble = getc(fp)) != EOF) && gobble != '\n'); - if( !(linebuf = (char *) calloc (BUFSIZ, sizeof(char)))) return errno; + if( !(linebuf = (char *) calloc (BUFSIZ, sizeof(char)))) return ENOMEM; } buf_out[count] = NULL; diff --git a/src/clients/ksu/heuristic.c b/src/clients/ksu/heuristic.c index 2eeadd4542..80482bebbc 100644 --- a/src/clients/ksu/heuristic.c +++ b/src/clients/ksu/heuristic.c @@ -50,7 +50,7 @@ krb5_error_code get_all_princ_from_file (fp, plist) int count = 0, chunk_count = 1; if (!(temp_list = (char **) malloc( CHUNK * sizeof(char *)))) - return errno; + return ENOMEM; retval = get_line(fp, &line); if (retval) @@ -68,7 +68,7 @@ krb5_error_code get_all_princ_from_file (fp, plist) chunk_count ++; if (!(temp_list = (char **) realloc(temp_list, chunk_count * CHUNK * sizeof(char *)))){ - return errno; + return ENOMEM; } } @@ -114,7 +114,7 @@ krb5_error_code list_union(list1, list2, combined_list) while (list2[c2]) c2++; if (!(tlist = (char **) calloc( c1 + c2 + 1, sizeof ( char *)))) - return errno; + return ENOMEM; i = 0; while(list1[i]) { @@ -176,7 +176,7 @@ filter(fp, cmd, k5users_list, k5users_filt_list) } if (! (temp_filt_list = (char **) calloc(found_count +1, sizeof (char*)))) - return errno; + return ENOMEM; for(j= 0, k=0; j < i; j++ ) { if (k5users_list[j]){ diff --git a/src/clients/ksu/main.c b/src/clients/ksu/main.c index f3d8440694..3329bd78ac 100644 --- a/src/clients/ksu/main.c +++ b/src/clients/ksu/main.c @@ -931,7 +931,7 @@ get_params(optindex, pargc, pargv, params) int size = pargc - *optindex + 2; if ((ret_params = (char **) calloc(size, sizeof (char *)))== NULL ){ - return errno; + return ENOMEM; } for (i = *optindex, j=1; i < pargc; i++,j++){ |