diff options
| author | Theodore Tso <tytso@mit.edu> | 1993-12-24 22:32:17 +0000 |
|---|---|---|
| committer | Theodore Tso <tytso@mit.edu> | 1993-12-24 22:32:17 +0000 |
| commit | bc2578fd62852dae832939b2d1d6b3aff21ceccb (patch) | |
| tree | d59da869483e2952e184aaf98e0e754875d841d1 /src/kadmin/client/kadmin_mod.c | |
| parent | ae465e079e0567a5b3b059f5ba314f07d507a7b1 (diff) | |
| download | krb5-bc2578fd62852dae832939b2d1d6b3aff21ceccb.tar.gz krb5-bc2578fd62852dae832939b2d1d6b3aff21ceccb.tar.xz krb5-bc2578fd62852dae832939b2d1d6b3aff21ceccb.zip | |
Lots of bugs, cleanup...
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@3264 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/kadmin/client/kadmin_mod.c')
| -rw-r--r-- | src/kadmin/client/kadmin_mod.c | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/src/kadmin/client/kadmin_mod.c b/src/kadmin/client/kadmin_mod.c index 25a6587c1..9828f6012 100644 --- a/src/kadmin/client/kadmin_mod.c +++ b/src/kadmin/client/kadmin_mod.c @@ -44,6 +44,9 @@ static char rcsid_kadmin_mod[] = #include <krb5/kdb.h> #include <krb5/kdb_dbm.h> +void decode_kadmind_reply(); +int print_status_message(); + krb5_error_code kadm_mod_user(my_creds, rep_ret, local_addr, foreign_addr, local_socket, seqno, principal) @@ -141,7 +144,13 @@ char *principal; free(msg_data.data); if (msg_data.data[2] == KADMBAD) { - fprintf(stderr, "Principal Does NOT Exist!\n\n"); + decode_kadmind_reply(msg_data, &rd_priv_resp); + + if (rd_priv_resp.message) { + fprintf(stderr, "%s\n\n", rd_priv_resp.message); + free(rd_priv_resp.message); + } else + fprintf(stderr, "Generic error from server.\n\n"); return(0); } @@ -204,20 +213,15 @@ char *principal; free(inbuf.data); return(1); } - free(inbuf.data); - memcpy(&rd_priv_resp.appl_code, msg_data.data, 1); - memcpy(&rd_priv_resp.oper_code, msg_data.data + 1, 1); - memcpy(&rd_priv_resp.retn_code, msg_data.data + 2, 1); + decode_kadmind_reply(msg_data, &rd_priv_resp); + + free(inbuf.data); free(msg_data.data); - if (!((rd_priv_resp.appl_code == KADMIN) && - (rd_priv_resp.retn_code == KADMGOOD))) { - fprintf(stderr, "Error Performing kadmin service!\n"); - retval = 1; - } else { - fprintf(stderr, "\nDatabase Modification Successful.\n"); - } + print_status_message(&rd_priv_resp, + "Database Modification Successful."); + return(0); } |
