comparison mercurial/hgweb/hgweb_mod.py @ 2673:109a22f5434a

hooks: add url to changegroup, incoming, prechangegroup, pretxnchangegroup hooks all repository classes now have url() method that returns url of repo.
author Vadim Gelfer <vadim.gelfer@gmail.com>
date Tue, 25 Jul 2006 13:50:32 -0700
parents ebf033bc8eb2
children 2edfd6644a9f
comparison
equal deleted inserted replaced
2671:82864a2eb709 2673:109a22f5434a
902 req.write(response) 902 req.write(response)
903 903
904 # require ssl by default, auth info cannot be sniffed and 904 # require ssl by default, auth info cannot be sniffed and
905 # replayed 905 # replayed
906 ssl_req = self.repo.ui.configbool('web', 'push_ssl', True) 906 ssl_req = self.repo.ui.configbool('web', 'push_ssl', True)
907 if ssl_req and not req.env.get('HTTPS'): 907 if ssl_req:
908 bail(_('ssl required\n')) 908 if not req.env.get('HTTPS'):
909 return 909 bail(_('ssl required\n'))
910 return
911 proto = 'https'
912 else:
913 proto = 'http'
910 914
911 # do not allow push unless explicitly allowed 915 # do not allow push unless explicitly allowed
912 if not self.check_perm(req, 'push', False): 916 if not self.check_perm(req, 'push', False):
913 bail(_('push not authorized\n'), 917 bail(_('push not authorized\n'),
914 headers={'status': '401 Unauthorized'}) 918 headers={'status': '401 Unauthorized'})
950 954
951 old_stdout = sys.stdout 955 old_stdout = sys.stdout
952 sys.stdout = cStringIO.StringIO() 956 sys.stdout = cStringIO.StringIO()
953 957
954 try: 958 try:
955 ret = self.repo.addchangegroup(fp, 'serve') 959 url = 'remote:%s:%s' % (proto,
960 req.env.get('REMOTE_HOST', ''))
961 ret = self.repo.addchangegroup(fp, 'serve', url)
956 finally: 962 finally:
957 val = sys.stdout.getvalue() 963 val = sys.stdout.getvalue()
958 sys.stdout = old_stdout 964 sys.stdout = old_stdout
959 req.write('%d\n' % ret) 965 req.write('%d\n' % ret)
960 req.write(val) 966 req.write(val)