From: NurPech Date: Mon, 7 Jan 2013 20:44:11 +0000 (+0100) Subject: Merge branch 'HostServ' of ssh://git.pk910.de:16110/srvx into HostServ X-Git-Url: http://git.pk910.de/?p=srvx.git;a=commitdiff_plain;h=80d9ed728be4b02ac483f3339cbb184f6602d15b;hp=ac567991f64b672b38bbcba48294bf6f6bff6228 Merge branch 'HostServ' of ssh://git.pk910.de:16110/srvx into HostServ --- diff --git a/src/mod-hostserv.c b/src/mod-hostserv.c index 29ef3e3..234d610 100644 --- a/src/mod-hostserv.c +++ b/src/mod-hostserv.c @@ -969,8 +969,20 @@ static MODCMD_FUNC(cmd_addmanager) { } if(fhinfo.slfh) hs_add_manager_secondlevel(fhinfo.slfh, huser); - else + else { hs_add_manager_toplevel(fhinfo.tlfh, huser); + //remove from all slfh's + struct hs_manager *next_manager; + struct hs_secondlevel *slfh; + for(manager = huser->managements; manager; manager = next_manager) { + next_manager = manager->next; + if(manager->type == 2) { + slfh = manager->object; + if(slfh->toplevel == fhinfo.tlfh) + hs_del_manager(manager, 1); + } + } + } reply("HSMSG_MANAGER_ADDED", hi->handle, fhinfo.slfh_name, fhinfo.tlfh_name); return 1; }