December 29, 2003
How not to write open source software

I have nothing against courier-imap as a server itself. When it works, it works well and it's stable. I do have a serious issue with how it's written. This is the same piece of software whose programmer wants you to use an rpm if you're running redhat instead of compiling from source, like any sane person would choose.

So we have an enforcement of "don't compile as root" (generally a good idea but enforcing it is a bit rude, unless you're the sysadmin), a strongly-expressed preference for users to use rpm for installation instead of compiling themselves.. and then.. this..

strace output of a login failure using MySQL:

[pid 2921] write(6, "j\0\0\0\3SELECT alias, cryptpw, \"\", "..., 110) = 110
[pid 2921] read(6, "\304\0\0\1", 4) = 4
[pid 2921] read(6, "\377(\4You have an error in your SQL"..., 196) = 196
[pid 2921] fcntl64(6, F_SETFL, O_RDWR|O_NONBLOCK) = 0
[pid 2921] read(6, 0x807d5a8, 8192) = -1 EAGAIN (Resource temporarily unavailable)
[pid 2921] fcntl64(6, F_SETFL, O_RDWR) = 0
[pid 2921] write(6, "\1\0\0\0\1", 5) = 5
[pid 2921] shutdown(6, 2 /* send and receive */) = 0


Courier log output from the same event:

Dec 26 10:21:58 coral imapd: Connection, ip=[127.0.0.1]
Dec 26 10:22:15 coral imapd: LOGIN FAILED, ip=[127.0.0.1]

Hint: any possible debug parameter is turned on.

That's right.. it's a simple SQL syntax error and one has to use strace to figure out that this is why a user cannot login..

So is the courier-programmer telling me I'm too dumb to compile it myself but have to know how to use strace to debug an SQL statement? I guess so! Sheesh.

Posted December 29, 2003 09:28 PM in Geek Stuff
TrackBack URL for this entry: http://www.unix-girl.com/mt/mt-tb.cgi/1069
Comments
On December 29, 2003 09:39 PM James added:

A chick who knows strace ... you're hot!

#
On December 29, 2003 11:56 PM Mark added:

A doofus who makes sexist comments in tech blogs ... you're not!

This has been "am I hot or not, blog-style". Thank you for playing.

#
On December 30, 2003 10:31 AM danielrm26 added:

And as a person who wants to pretend that there are *many* women who know strace, and that it's not a fairly uncommon thing, you get the honorable distinction of being someone who likes to bash others for giving complements that seem, in your distorted world, to be politically incorrect.

Fact: Not many women are into computers.
Fact: Kasia knows this.
Fact: Original poster was paying a compliment, a la "good for you" by saying she was hot for being smart.
Fact: The political correctness that you just wielded is the cause for much difficulty in this world.

-danielrm26

#
On December 30, 2003 11:05 AM Jason added:

...
This is the same piece of software whose programmer wants you to use an rpm if you're running redhat instead of compiling from source, like any sane person would choose.
...

Why do you think any 'sane' person would only want to compile instead of using an RPM?

Does this mean you also think the MySQL team are not sane, since they suggest that users use the MySQL created RPM versus compiling?

There are many, many instances when using RPM's just make sense. If you need to tweak something, use the RPM source and re-build the RPM.

It certainly makes for easier system upkeep down the road.

#
On December 30, 2003 11:38 AM kasia added:

It's one thing to suggest.. it's another to make the configure script crap out because it thinks you're using redhat.. read the entry I linked!

#
On December 31, 2003 04:15 AM sssk added:

huh!

i was just thinking about it. Courier really is damn kewl, but for the debugging headache. And is not documetned anywhere that there is no way you can increase debug level like in

hmm..

openldap, postfix, cups, etc etc .. and so many other such software

#
Trackbacks