Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/hgweb/request.py @ 2466:e10665147d26
push over http: server side authorization support.
new hgrc entries allow_push, deny_push, push_ssl control push over http.
allow_push list controls push. if empty or not set, no user can push.
if "*", any user (incl. unauthenticated user) can push. if list of user
names, only authenticated users in list can push.
deny_push list examined before allow_push. if "*", no user can push.
if list of user names, no unauthenticated user can push, and no users
in list can push.
push_ssl requires https connection for push. default is true, so password
sniffing can not be done.
author | Vadim Gelfer <vadim.gelfer@gmail.com> |
---|---|
date | Tue, 20 Jun 2006 15:23:01 -0700 |
parents | 09b1c9ef317c |
children | d0db3462d568 |
comparison
equal
deleted
inserted
replaced
2465:c91118f425d0 | 2466:e10665147d26 |
---|---|
43 def header(self, headers=[('Content-type','text/html')]): | 43 def header(self, headers=[('Content-type','text/html')]): |
44 for header in headers: | 44 for header in headers: |
45 self.out.write("%s: %s\r\n" % header) | 45 self.out.write("%s: %s\r\n" % header) |
46 self.out.write("\r\n") | 46 self.out.write("\r\n") |
47 | 47 |
48 def httphdr(self, type, filename=None, length=0): | 48 def httphdr(self, type, filename=None, length=0, headers={}): |
49 | 49 headers = headers.items() |
50 headers = [('Content-type', type)] | 50 headers.append(('Content-type', type)) |
51 if filename: | 51 if filename: |
52 headers.append(('Content-disposition', 'attachment; filename=%s' % | 52 headers.append(('Content-disposition', 'attachment; filename=%s' % |
53 filename)) | 53 filename)) |
54 # we do not yet support http 1.1 chunked transfer, so we have | 54 # we do not yet support http 1.1 chunked transfer, so we have |
55 # to force connection to close if content-length not known | 55 # to force connection to close if content-length not known |