Show More
@@ -47,7 +47,7 b'' | |||||
47 |
|
47 | |||
48 | from mercurial.i18n import _ |
|
48 | from mercurial.i18n import _ | |
49 | from mercurial import util, match |
|
49 | from mercurial import util, match | |
50 | import getpass |
|
50 | import getpass, urllib | |
51 |
|
51 | |||
52 | def buildmatch(ui, repo, user, key): |
|
52 | def buildmatch(ui, repo, user, key): | |
53 | '''return tuple of (match function, list enabled).''' |
|
53 | '''return tuple of (match function, list enabled).''' | |
@@ -72,7 +72,15 b' def hook(ui, repo, hooktype, node=None, ' | |||||
72 | ui.debug(_('acl: changes have source "%s" - skipping\n') % source) |
|
72 | ui.debug(_('acl: changes have source "%s" - skipping\n') % source) | |
73 | return |
|
73 | return | |
74 |
|
74 | |||
|
75 | user = None | |||
|
76 | if source == 'serve' and 'url' in kwargs: | |||
|
77 | url = kwargs['url'].split(':') | |||
|
78 | if url[0] == 'remote' and url[1].startswith('http'): | |||
|
79 | user = urllib.unquote(url[2]) | |||
|
80 | ||||
|
81 | if user is None: | |||
75 | user = getpass.getuser() |
|
82 | user = getpass.getuser() | |
|
83 | ||||
76 | cfg = ui.config('acl', 'config') |
|
84 | cfg = ui.config('acl', 'config') | |
77 | if cfg: |
|
85 | if cfg: | |
78 | ui.readconfig(cfg, sections = ['acl.allow', 'acl.deny']) |
|
86 | ui.readconfig(cfg, sections = ['acl.allow', 'acl.deny']) |
@@ -162,9 +162,10 b' def unbundle(repo, req):' | |||||
162 | sys.stderr = sys.stdout = cStringIO.StringIO() |
|
162 | sys.stderr = sys.stdout = cStringIO.StringIO() | |
163 |
|
163 | |||
164 | try: |
|
164 | try: | |
165 |
url = 'remote:%s:%s' % ( |
|
165 | url = 'remote:%s:%s:%s' % ( | |
166 |
|
|
166 | proto, | |
167 |
|
|
167 | urllib.quote(req.env.get('REMOTE_HOST', '')), | |
|
168 | urllib.quote(req.env.get('REMOTE_USER', ''))) | |||
168 | try: |
|
169 | try: | |
169 | ret = repo.addchangegroup(gen, 'serve', url) |
|
170 | ret = repo.addchangegroup(gen, 'serve', url) | |
170 | except util.Abort, inst: |
|
171 | except util.Abort, inst: |
General Comments 0
You need to be logged in to leave comments.
Login now