projects
/
srvx.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
2efd5bf
)
fixed some compiler warnings and prevent duplicate assignments
author
pk910
<philipp@zoelle1.de>
Fri, 4 Jan 2013 20:11:23 +0000
(21:11 +0100)
committer
pk910
<philipp@zoelle1.de>
Fri, 4 Jan 2013 20:11:23 +0000
(21:11 +0100)
src/mod-hostserv.c
patch
|
blob
|
history
diff --git
a/src/mod-hostserv.c
b/src/mod-hostserv.c
index fbba68cb27893f073f10ab5f17c20b3a4cebfe61..56ef7454225b69f830a7e323f8e5177b01c75ab8 100644
(file)
--- a/
src/mod-hostserv.c
+++ b/
src/mod-hostserv.c
@@
-81,6
+81,7
@@
static const struct message_entry msgtab[] = {
{ "HSMSG_MANAGER_NOT", "$b%s$b is not a manager of %s.%s" },
{ "HSMSG_MANAGER_DELETED", "$b%s$b is no longer a manager of %s.%s" },
{ "HSMSG_FAKEHOST_ASSIGN_SUCCESS", "Group $b%s.%s$b was assigned successfully." },
{ "HSMSG_MANAGER_NOT", "$b%s$b is not a manager of %s.%s" },
{ "HSMSG_MANAGER_DELETED", "$b%s$b is no longer a manager of %s.%s" },
{ "HSMSG_FAKEHOST_ASSIGN_SUCCESS", "Group $b%s.%s$b was assigned successfully." },
+ { "HSMSG_FAKEHOST_ASSIGNED", "Group $b%s.%s$b is already assigned to the user." },
{ "HSMSG_FAKEHOST_UNASSIGN_SUCCESS", "Group $b%s.%s$b was unassigned successfully." },
{ NULL, NULL }
{ "HSMSG_FAKEHOST_UNASSIGN_SUCCESS", "Group $b%s.%s$b was unassigned successfully." },
{ NULL, NULL }
@@
-706,7
+707,7
@@
static MODCMD_FUNC(cmd_addhost) {
if(!irccasecmp(slfh_name, "*")) {
if(!check_management_access(hi, NULL, NULL)) {
reply("HSMSG_ACCESS_DENIED");
if(!irccasecmp(slfh_name, "*")) {
if(!check_management_access(hi, NULL, NULL)) {
reply("HSMSG_ACCESS_DENIED");
- return
NULL
;
+ return
0
;
}
for(tlfh = toplevels; tlfh; tlfh = tlfh->next) {
if(!irccasecmp(tlfh->fakehost, tlfh_name)) break;
}
for(tlfh = toplevels; tlfh; tlfh = tlfh->next) {
if(!irccasecmp(tlfh->fakehost, tlfh_name)) break;
@@
-950,7
+951,6
@@
static MODCMD_FUNC(cmd_set) {
struct handle_info *hi;
struct hs_user *hs_user;
struct hs_assignment *assignment;
struct handle_info *hi;
struct hs_user *hs_user;
struct hs_assignment *assignment;
- struct hs_assignment *assgn;
struct hs_toplevel *tlfh;
struct hs_secondlevel *slfh;
char *fakehost;
struct hs_toplevel *tlfh;
struct hs_secondlevel *slfh;
char *fakehost;
@@
-1034,6
+1034,10
@@
static MODCMD_FUNC(cmd_assign) {
reply("HSMSG_ACCESS_DENIED");
return 0;
}
reply("HSMSG_ACCESS_DENIED");
return 0;
}
+ if(hs_get_assignment(slfh, hs_user)) {
+ reply("HSMSG_FAKEHOST_ASSIGNED", slfh_name, tlfh_name);
+ return 0;
+ }
hs_add_assignment(slfh, hs_user);
reply("HSMSG_FAKEHOST_ASSIGN_SUCCESS", slfh_name, tlfh_name);
return 1;
hs_add_assignment(slfh, hs_user);
reply("HSMSG_FAKEHOST_ASSIGN_SUCCESS", slfh_name, tlfh_name);
return 1;