bugzilla extension defaulting to https?

Matt Mackall mpm at selenic.com
Fri Dec 23 16:25:42 CST 2011


On Fri, 2011-12-23 at 10:04 -0500, Kurt Lidl wrote:
> [bugzilla]
> bzurl = http://bugzilla.cello.com/
> user = mybzusername at cello.com
> password = mybzpassword
> version = xmlrpc
> strip = 4
> 
> [web]
> baseurl = http://hg.cello.com/hg/testrepo
> -- snip, snip --
> 
> When I commit a changeset to the repo that matches the regex,
> I get the following error message:
> 
> lidl at dev00-212: hg push
> pushing to ssh://hg@hg.cello.com/testrepo
> searching for changes
> remote: adding changesets
> remote: adding manifests
> remote: adding file changes
> remote: added 1 changesets with 1 changes to 1 files
> remote: error: incoming.bugzilla hook failed: Bugzilla error: [Errno 61] 
> Connection refused
> 
> If I run tcpdump on the mercurial server, it shows that the xmlrpc 
> request to the bugzilla
> server is happening on port 443, which would imply "https", NOT "http".
> 
> root at mercurial-152: tcpdump -n host bugzilla.cello.com
> tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
> listening on fxp0, link-type EN10MB (Ethernet), capture size 96 bytes
> 17:34:45.160324 ARP, Request who-has 98.141.206.33 tell 98.141.206.32, 
> length 28
> 17:34:45.160444 ARP, Reply 98.141.206.33 is-at 00:07:e9:82:68:36, length 46
> 17:34:45.160455 IP 98.141.206.32.35544 > 98.141.206.33.443: Flags [S], 
> seq 4051676553, win 65535, options [mss 1460,nop,wscale 3,sackOK,TS val 
> 2945321014 ecr 0] length 0
> 17:34:45.160586 IP 98.141.206.33.443 > 98.141.206.32.35544: Flags [R.], 
> seq 0, ack 4051676554, win 0, length 0
> 17:34:51.286596 IP 98.141.206.33.513 > 224.0.1.3.513: UDP, length 60
> 
> If I change the 'bzurl' configuration setting to be 
> "http://bugzilla.cello.com:80/", then the request from the
> mercurial server to the bugzilla server is indeed forced to be on port 
> 80, but it fails because it is attempting to use
> SSL for the connection.  Here's that that looks like, from the client's 
> error message:
> 
> lidl at dev00-215: hg push
> pushing to ssh://hg@hg.cello.com/testrepo
> searching for changes
> remote: adding changesets
> remote: adding manifests
> remote: adding file changes
> remote: added 1 changesets with 1 changes to 1 files
> remote: error: incoming.bugzilla hook failed: Bugzilla error: [Errno 1] 
> _ssl.c:503: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown 
> protocol
> 
> Did I miss something where it says that the extension only supports https?
> 
> And that it silently takes a http:// url and treats it as a https:// url?

That's very strange. There's no sign in the source of a preference for
https: it's all pretty plain vanilla xmlrpclib. So I would suspect
either a redirection in your server config (which your trace seems to
rule out), a problematic proxy config, or possibly something wrong with
your Python install.

-- 
Mathematics is the supreme nostalgia of our time.




More information about the Mercurial mailing list