Thanks for all the friendly help I got on this issue and for the near
saintlike patience Richard showed.

The problem has been solved.  I blame China.  (I'm only being a little
bit facetious in this.)

Something Richard asked -- about a proxy that filters anything with
"timeline" in the URL -- got me thinking.  The pattern I was seeing was
anything involving the timeline view was getting me flagged as not being
logged in.  This only happened with Google Chrome (at first) and not with
Firefox or Opera.  Further it didn't happen on Windows' version of Google
Chrome (along with Firefox and Opera).  It was only with my Ubuntu version
of Chrome and only with remote repositories, not local.

Now for the interesting part.

I routinely use an SSH-based SOCKS5 proxy as a back door through the Great
Firewall because I'm not afraid of the harmful effects of seeing the
Internet in its entirety.  On my Windows machine I just have the proxy
running all the time and use it for all access (for Chrome and Firefox at
any rate -- Opera doesn't support SOCKS5 proxies for some bizarre reason).
 When I log in to a repository from Windows I'm either always going through
the proxy (Chrome/Firefox) or I'm never going through a proxy (Opera).

On Ubuntu I have a slightly more sophisticated setup.  Because my SSH tunnel
is painfully slow, I only use it when I'm forced to.  I've built a sizable
script to decide on an URL-by-URL basis whether it should go through my
proxy or not.  This is irrelevant for Opera, of course, because Opera sucks
for proxy support.  Both Firefox and Chrome, however, support proxies quite
well.

What Chrome DOESN'T do well, however, is quickly turning proxy support on
and off.  My Firefox configuration has a button for it, though.  So
sometimes I run with the proxy script in line and sometimes I don't.
 Initially I didn't have it turned on, so I was just like Opera -- running
without a proxy.  Sometime in the few days I was playing I turned it on for
accessing some site the Chinese government decided my tender eyes couldn't
cope with (Youtube) and then, a day later, long after I'd forgotten that I'd
done it, I tried accessing my repositories with Firefox and the "bit rot"
happened.

This doesn't explain the odd specificity of the problem, however.  What does
is the URL patterns I use.  Usually I give URL patterns for domains ("*
youtube.com*") or by path elements known to be problematical ("*/blog/*").
 For safety's sake I always try to locate it either with a full domain name
or with path elements in the pattern.  But I made a mistake at some point
and when I meant to type "*time.com*" I accidentally wound up inserting
"*time*".  The relevance of that pattern to the "timeline" issue is, I
think, obvious.  I did grep on "timeline" after Richard suggested this
possibility but it never occurred to me until later in the shower (I do a
lot of my thinking there) that there might be other fragments ("time" or
"line") that could be to blame.  I went over my (literally hundreds of)
filters with a fine-toothed comb and found the offending script entry.

So why did this not cause a problem for local repositories?  Why did this
not cause a problem when I went through Richard's sockettee thing?  Well, I
automatically, at the head of my script, return the direct link for any
access to localhost, to my local network and a few other such entries where
I know I can't physically ever be blocked by the Great Firewall.  Since
sockettee goes through localhost, and since fossil server/ui also goes
through localhost there was never any kind of filtering.

TL;DR summary: if you're using complex scripts to work around people with
the mentality of small, frightened children controlling your Internet,
sometimes it'll do bizarre, undiagnosable things.  Fossil is blameless.  The
stupid bastards in Beijing are another matter.  (And my own intellect is
apparently somewhat questionable as well.)

-- 
"Perhaps people don't believe this, but throughout all of the discussions of
entering China our focus has really been what's best for the Chinese people.
It's not been about our revenue or profit or whatnot."
--Sergey Brin, demonstrating the emptiness of the "don't be evil" mantra.
_______________________________________________
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

Reply via email to