bug or feature?

22:25, April 29, 2014

I’ve been writing an API for a little project I’ve been working on for a while, and in searching for a not-horrible way to do OAuth1 authentication, I actually found a Python library that doesn’t suck.

Of course, it’s not perfect. I noticed today that it doesn’t actually handle HTTP error responses - it doesn’t even check the return code at all, just assumes that any response it’s given will be parseable. Which of course is not at all true in many cases - including in mine.

So of course I’ve forked it and am working on a fix.

you guessed it - another bug

01:37, April 25, 2014

Found another bug and made a pull request - this time in the ‘rauth’ library, which does OAuth in a reasonable sane way.

Except for this issue - I still have no idea why they’re trying to parse the OAuth response with a utility used for parsing HTTP requests, but hey, I guess if it works for them, fine. For me though, I need to replace their use of parse_utf8_qsl(s) with json.loads(s.decode()) because my response is proper JSON - shouldn’t OAuth responses be JSON anyway?

Whatever, it’s late.

EDIT: Okay so it turns out I was doing silly things like not reading the OAuth spec and the response should be a query-string type thing like oauth_token=foo&oauth_token_secret=bar instead, which is what the library parses just fine by default. Reading specs is a good plan, one I encourage everyone to do.

My pull request is still valid though, if you really must break the spec, they have the parser argument already, and it should work in a more sensible way.

yet another bugfix

16:24, April 10, 2014

Another bugfix for s3cmd.


11:37, March 25, 2014

Bugfix for s3cmd - some issues with command-line arguments not working when I needed them to.

slow as molasses

13:43, February 27, 2014

Nearly 2 years to the day after I submitted this issue with the ‘draw9patch’ tool in the Android SDK to Google, the issue is still open.

I only mention this because it seems the owner of the ticket has changed today.

Way to go, Google.

openswan sucks

16:33, January 9, 2014

Right so in the previous article I set up an IPSec VPN between Openswan and OpenBSD’s PF. The issue with it is that any time the OpenBSD end restarted, the Openswan end had no idea this occurred, and quit working with no notification of any sort. And just running ipsec auto --down $conn; ipsec auto --up $conn didn’t work, it actually created an additional flow and SAD on the OpenBSD side, and the tunnel wouldn’t become active.

So I’m going old-school. I’m going to write a stupid hacky script to ping the OpenBSD internal endpoint from the Openswan box, and when it goes unresponsive, run ipsec auto --replace $conn && ipsec auto --up $conn to bring the tunnel back up.

See? Openswan sucks.

Feel free, by the way, to prove otherwise.

Google you little...

22:16, October 28, 2013

I see the Google plus article format returned by their Python API has changed again. You will note the sidebar over on the right there only shows images and no articles now. I’m getting really tired of fixing this every month.

Probably I’ll just not bother soon, and remove that whole sidebar altogether.

nginx bug

14:13, May 7, 2013

There is a bug in nginx - patch your daemon or implement this workaround.

more bugs

10:22, February 6, 2013

JWZ’s post today is awesome. I agree with him, far too many bugs are being ignored and that just sucks for us users. Especially when they get ignored for a very long time. When did we stop being good software engineers?

fixin' perl things

15:07, July 17, 2012

I use Finance::Currency::Convert::XE for the old perl version of an IRC bot, and recently xe.com updated their website, which broke XE.pm. This patch fixes it. XE.pm.diff

UPDATE: I submitted this as a bug, and it got merged into version 0.21:

bug #78433

And here is a test program

11:42, March 20, 2012

I just whipped up a little multitouch bug tester program for Android. As noted in my previous post, lots of Android phones running 2.3.7 and earlier have buggy multitouch. In this example, I show the pointers (up to 5) with pointer numbers. You should be able to see at least two, and if the bug is not present, they should work properly. If you have the bug, you’ll notice 1 and 2 swapping back and forth as you touch 1, touch 2, lift 1, then tap 1.

Enjoy. multitouchbugtest.apk