GNOME Bugzilla – Bug 600398
Tomboy Web synchronization authorization fails
Last modified: 2009-11-03 02:38:01 UTC
Whenever I try to complete the in-browser authorization to enable the Tomboy Web service, I got the following error in the browser: """ Unable to load page Problem occurred while loading the URL http://localhost:8001/tomboy-web-sync/?oauth_token=XXXXXXXXXXXXXXXXXXXX&oauth_verifier=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX&return=https://one.ubuntu.com Cannot connect to destination """ The port sometimes is 8000, simetimes 8001 or 8003. This worked perfectly fine from another computer (in fact, from a VM), so I suppose there's something wrong in this particular configuration. I'm running Ubuntu 9.10, Tomboy 1.0.0-0ubuntu2.
Steps to reproduce the problem - Open Tomby - Go to Edit -> Preferences -> Synchronization - Select "Tomboy Web" service, using the default server (https://one.ubuntu.com/notes/) - Click on "Connect to Server" - The default browser (Epiphany) open a webpage to authorize Tomboy, with a URL similar to this one: https://one.ubuntu.com/oauth/authorize/?oauth_token=XXXXXXXXXXXXXXXXXXXX&oauth_callback=http%3A%2F%2Flocalhost%3A8001%2Ftomboy-web-sync%2F - Tomboy "Connect to Server" button now reads "Authorizing in browser (Press to reset connection)" - Complete the "Computer Name" on the webform - Click "Add This Computer" on the webform - The page redirects to the error page mentioned in the bug description - Tomboy "Connect to Server" now reads "Authorizing in browser (Press to reset connection)" - Tomboy is still in the "Authorizing in browser..." status
So what is going on here is that Tomboy starts up a local HTTP web server. After Ubuntu One finishes authoriziation, it forwards the browser to a URL that will trigger Tomboy to complete the authorization process on its end. Tomboy grabs the first free port >= 8000, which is why the port number sometimes changes, so that is expected. However, instead of an error page with that localhost URL, you should see a simple message that indicates auth is over and you should return to the Tomboy prefs UI, click Save, etc etc. So either Tomboy is failing to start its local HTTP web server properly, or failing to keep it up, or something in your system is getting in the way. Here are a few things to try: 1) Do you still have this problem if you switch your default browser from Epiphany to Firefox? 2) If you still have the problem, please quit Tomboy and start it from the command line with the command `tomboy --debug &> tomboyauth.log`. Go through the entire authentication process, and assuming it fails, attach tomboyauth.log to this bug. You might want to look through the file first to make sure it does not have any sensitive information in it (if it does, you can email me personally). 3) Lastly, what kind of hardware are you using?
Sandy, thanks for your suggestions. I confirm that if I switch the default Gnome's browser to Firefox, everything works as expected. I could synchronize my notes without a problem. I think the bug might be closed then, as it maybe has to do with one of the regressions or stuff-not-already-implemented of epiphany-webkit :(
Okay, so I've done some testing, and I think I know a bit more about what the problem is. Epiphany has issues only with U1, not with Snowy. Here is a sample of the URL Snowy redirects you to after auth: http://localhost:8001/tomboy-web-sync/?oauth_token=XXXXXXXXXXXX And here is the URL U1 redirects you to after auth: http://localhost:8001/tomboy-web-sync/?oauth_token=XXXXXXXXXXXXXX&oauth_verifier=XXXXXXXXXXXXX&return=https://one.ubuntu.com Notice that "https://one.ubuntu.com" is not properly escaped. So, either U1 is not properly escaping this URL, or Epiphany is somehow unescaping it...I'm going to guess it's U1 and file a bug with them in Launchpad. Thanks so much for helping with testing, Mariano! :-)
Hmm, after a little more testing I can no longer reproduce it. :-/ I'm not entirely sure what's going on now...I may need to re-open this.
Sandy, no problem. Let me know if you want me to do any more testing. I have no problem trying again with Epiphany and getting some debug info in between, provided there's a way to make Tomboy "forget" the authorization that I already granted.