This very example -- requests were technically illegal all the time without devs realizing, but something in the stack changed to start rejecting them -- demonstrates the fallacy of the "be liberal in what you accept, strict in what you issue" principal. If all the web servers involved had been strict in rejecting the illegal request from the start, they would have noticed the bug in development before deploying to f…
Post Mortem: A single whitespace character
61–70 of 209 posts
Re: Post Mortem: A single whitespace character
#62Am I the only one who read this as a system using 3D printing to print food? Disappointed to discover it's not that kind of cellular.
Re: Post Mortem: A single whitespace character
#63Re: Post Mortem: A single whitespace character
#64Earlier quoted context omitted.
Unless I'm reading RFC 3986 incorrectly, that's valid because you can't have an empty segment in the path part of a URI.
I think you're reading it incorrectly. You can have an empty segment in the path. The BNF for a segment is: segment = *pchar Which according to RFC2234 section 3.6 means zero or more repetitions.
In fact, it would not be a smart move to just treat double slashes the same as single ones, because of relative URLs: a ".." segment only removes one slash, so the hierarchy levels would get messed up. thttpd is doing the smart thing here.
As one of my teachers at university would say: the empty segment is also a segment.
Re: Post Mortem: A single whitespace character
#65That series of strcat's caught my eye as bad practice. Fine in this case since the destination string is short but horrible in general. Every single one of those calls needs to iterate over the entire existing string to find the string size. The code could be much cleaner with a small macro hiding the incrementation and the casts.
Re: Post Mortem: A single whitespace character
#66Likely "Cowboy" is a transparent proxy added by your mobile service provider. I had a similar thing happening a year ago when the mobile provider used by most of our barcode scanners decided to add a transparent proxy into the loop (without telling anybody). The solution for this problem: Use SSL. I mean: There are already many good reasons to use SSL, but whenever you need to send any kind of mission critical data o…
Re: Post Mortem: A single whitespace character
#67This very example -- requests were technically illegal all the time without devs realizing, but something in the stack changed to start rejecting them -- demonstrates the fallacy of the "be liberal in what you accept, strict in what you issue" principal. If all the web servers involved had been strict in rejecting the illegal request from the start, they would have noticed the bug in development before deploying to f…
Re: Post Mortem: A single whitespace character
#68Earlier quoted context omitted.
In their CSS, they have a rule for every tag to have "overflow: scroll" for some reason. Not sure why they didn't use the default value for overflow, since there's nothing on that page that needs to be specifically told to scroll.
Probably, they tried it and it worked. This incidentally led to the bug that they're blogging about too.
Re: Post Mortem: A single whitespace character
#69Likely "Cowboy" is a transparent proxy added by your mobile service provider. I had a similar thing happening a year ago when the mobile provider used by most of our barcode scanners decided to add a transparent proxy into the loop (without telling anybody). The solution for this problem: Use SSL. I mean: There are already many good reasons to use SSL, but whenever you need to send any kind of mission critical data o…
Re: Post Mortem: A single whitespace character
#70Likely "Cowboy" is a transparent proxy added by your mobile service provider. I had a similar thing happening a year ago when the mobile provider used by most of our barcode scanners decided to add a transparent proxy into the loop (without telling anybody). The solution for this problem: Use SSL. I mean: There are already many good reasons to use SSL, but whenever you need to send any kind of mission critical data o…
Who was replacing numbers with asterisks, and for what purpose?