summaryrefslogtreecommitdiffstats
path: root/src/kadmin/client/kadmin_mod.c
diff options
context:
space:
mode:
authorTheodore Tso <tytso@mit.edu>1993-12-24 22:32:17 +0000
committerTheodore Tso <tytso@mit.edu>1993-12-24 22:32:17 +0000
commitbc2578fd62852dae832939b2d1d6b3aff21ceccb (patch)
treed59da869483e2952e184aaf98e0e754875d841d1 /src/kadmin/client/kadmin_mod.c
parentae465e079e0567a5b3b059f5ba314f07d507a7b1 (diff)
downloadkrb5-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.c28
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);
}