I'm going to hijack this thread to describe something weird that's happened to me yesterday w/ Google: just connected on my usual BT (UK) wifi, and when I opened google.com, Safari complained about an invalid SSL certificate: it was self-signed, with expiration in 2111. After a dozen refreshes, everything started to work, with the correct certificate.
Anybody seen anything like that? Is it possible that a corrupted packet could appear as a self-signed certificate? Did some MITM screw up?