equal
deleted
inserted
replaced
43 # # if acl.deny not present, no users denied by default |
43 # # if acl.deny not present, no users denied by default |
44 # # empty acl.deny = all users allowed |
44 # # empty acl.deny = all users allowed |
45 # glob pattern = user4, user5 |
45 # glob pattern = user4, user5 |
46 # ** = user6 |
46 # ** = user6 |
47 |
47 |
48 from mercurial.demandload import * |
48 from mercurial.i18n import _ |
49 from mercurial.i18n import gettext as _ |
|
50 from mercurial.node import * |
49 from mercurial.node import * |
51 demandload(globals(), 'getpass mercurial:util') |
50 from mercurial import util |
|
51 import getpass |
52 |
52 |
53 class checker(object): |
53 class checker(object): |
54 '''acl checker.''' |
54 '''acl checker.''' |
55 |
55 |
56 def buildmatch(self, key): |
56 def buildmatch(self, key): |
89 ok_sources = self.ui.config('acl', 'sources', 'serve').split() |
89 ok_sources = self.ui.config('acl', 'sources', 'serve').split() |
90 return source not in ok_sources |
90 return source not in ok_sources |
91 |
91 |
92 def check(self, node): |
92 def check(self, node): |
93 '''return if access allowed, raise exception if not.''' |
93 '''return if access allowed, raise exception if not.''' |
94 files = self.repo.changelog.read(node)[3] |
94 files = self.repo.changectx(node).files() |
95 if self.deniable: |
95 if self.deniable: |
96 for f in files: |
96 for f in files: |
97 if self.deny(f): |
97 if self.deny(f): |
98 self.ui.debug(_('acl: user %s denied on %s\n') % |
98 self.ui.debug(_('acl: user %s denied on %s\n') % |
99 (self.getuser(), f)) |
99 (self.getuser(), f)) |