diff options
author | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-11-28 22:44:38 +0000 |
---|---|---|
committer | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-11-28 22:44:38 +0000 |
commit | 92cd657a6d42c516e8e8f169209ddd0f57d4508d (patch) | |
tree | 57c72bfdcbe6dad1306b8c3edb4fbfa950d9ecc0 | |
parent | d3894478e715ba561b5fa9a97c04f8c17894058f (diff) |
Merged revisions 90098 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r90098 | kpfleming | 2007-11-28 16:30:46 -0600 (Wed, 28 Nov 2007) | 2 lines
it is impossible to set permissions for manager accounts created by users.conf (reported internally, patched by me)
........
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90100 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r-- | configs/users.conf.sample | 5 | ||||
-rw-r--r-- | main/manager.c | 7 |
2 files changed, 10 insertions, 2 deletions
diff --git a/configs/users.conf.sample b/configs/users.conf.sample index f88adee9c..2a816d7e4 100644 --- a/configs/users.conf.sample +++ b/configs/users.conf.sample @@ -46,6 +46,11 @@ hasiax = yes ; hasmanager = no ; +; Set permissions for manager entry (see manager.conf.sample for documentation) +; (defaults to *all* permissions) +;managerread = system,call,log,verbose,command,agent,user,config +;managerwrite = system,call,log,verbose,command,agent,user,config +; ; Remaining options are not specific to users.conf entries but are general. ; callwaiting = yes diff --git a/main/manager.c b/main/manager.c index 332d2c591..7e637ff4e 100644 --- a/main/manager.c +++ b/main/manager.c @@ -1037,9 +1037,12 @@ static int authenticate(struct mansession *s, const struct message *m) ast_log(LOG_WARNING, "Invalid writetimeout value '%s' at line %d\n", v->value, v->lineno); else s->writetimeout = val; - } else if (!strcasecmp(v->name, "hasmanager")) { + } else if (!strcasecmp(v->name, "hasmanager")) hasmanager = ast_true(v->value); - } + else if (!strcasecmp(v->name, "managerread")) + readperm = get_perm(v->value); + else if (!strcasecmp(v->name, "managerwrite")) + writeperm = get_perm(v->value); } ast_config_destroy(cfg); if (!hasmanager) { |