From 679e67f319974dfdd23371798ef94d441ce195cd Mon Sep 17 00:00:00 2001 From: Jakub Hrozek Date: Tue, 28 Jul 2009 14:02:01 +0200 Subject: Improve error messages Fixes: * RHBZ 513282 - Error Message Incorrect when Trying to add Group with GID already in use * RHBZ 513284 - Error Message Incorrect when Trying to add User with UID already in use * RHBZ 513242 - Better error Message when modifying a user that doesn't exist * RHBZ 513244 - Better error Message when adding a user to a group that doesn't exist --- server/tools/sss_groupadd.c | 2 +- server/tools/sss_groupmod.c | 15 ++++++++++++++- server/tools/sss_useradd.c | 4 ++-- server/tools/sss_usermod.c | 16 +++++++++++++++- 4 files changed, 32 insertions(+), 5 deletions(-) (limited to 'server/tools') diff --git a/server/tools/sss_groupadd.c b/server/tools/sss_groupadd.c index e9c81b8f3..b79940804 100644 --- a/server/tools/sss_groupadd.c +++ b/server/tools/sss_groupadd.c @@ -255,7 +255,7 @@ int main(int argc, const char **argv) ret = data->error; switch (ret) { case EEXIST: - ERROR("The group %s already exists\n", data->name); + ERROR("A group with the same name or UID already exists\n"); break; default: diff --git a/server/tools/sss_groupmod.c b/server/tools/sss_groupmod.c index 2fc6f9de5..d91e3771b 100644 --- a/server/tools/sss_groupmod.c +++ b/server/tools/sss_groupmod.c @@ -448,7 +448,20 @@ int main(int argc, const char **argv) if (data->error) { ret = data->error; DEBUG(1, ("sysdb operation failed (%d)[%s]\n", ret, strerror(ret))); - ERROR("Transaction error. Could not modify group.\n"); + switch (ret) { + case ENOENT: + ERROR("Could not modify group - check if member group names are correct\n"); + break; + + case EFAULT: + ERROR("Could not modify group - check if groupname is correct\n"); + break; + + default: + ERROR("Transaction error. Could not modify group.\n"); + break; + } + ret = EXIT_FAILURE; goto fini; } diff --git a/server/tools/sss_useradd.c b/server/tools/sss_useradd.c index 2880182c0..b28417988 100644 --- a/server/tools/sss_useradd.c +++ b/server/tools/sss_useradd.c @@ -516,13 +516,13 @@ int main(int argc, const char **argv) ret = data->error; switch (ret) { case EEXIST: - ERROR("The user %s already exists\n", data->name); + ERROR("A user with the same name or UID already exists\n"); break; default: DEBUG(1, ("sysdb operation failed (%d)[%s]\n", ret, strerror(ret))); - ERROR("Transaction error. Could not modify user.\n"); + ERROR("Transaction error. Could not add user.\n"); break; } ret = EXIT_FAILURE; diff --git a/server/tools/sss_usermod.c b/server/tools/sss_usermod.c index 6ef873b60..65e949784 100644 --- a/server/tools/sss_usermod.c +++ b/server/tools/sss_usermod.c @@ -580,8 +580,22 @@ int main(int argc, const char **argv) if (data->error) { ret = data->error; + DEBUG(1, ("sysdb operation failed (%d)[%s]\n", ret, strerror(ret))); - ERROR("Transaction error. Could not modify user.\n"); + switch (ret) { + case ENOENT: + ERROR("Could not modify user - check if group names are correct\n"); + break; + + case EFAULT: + ERROR("Could not modify user - check if username is correct\n"); + break; + + default: + ERROR("Transaction error. Could not modify user.\n"); + break; + } + ret = EXIT_FAILURE; goto fini; } -- cgit