Older blog entries for Stevey (starting at number 80)

Back

 I'm now back from London and relaxing at home.

 Even though I'm on holiday I've still managed to answer at least two work-related emails every day this week. I guess they need me :)

 London was nice, actually London was as ugly as I remembered it, noisy, dirty, and confusing. What was actually nice was seeing people that I'd missed for the past year or so.

 The most touristy thing I did this trip was go round a few phone boxes and take down the prostitute advertising cards - that was fun; I have a plan to decorate my bathroom by mounting these behind some clear plastic.

Coding

 I've been doing more GNUMP3d2 coding in Perl. The only stumbling block I have at the moment is sharing data between fork()'d children using shared memory. Once that's resolved, and I have a good plugin system we'll be ready to release.

 On top of that I realised I could add support for streaming movies as well as audio - so I added support for streaming MPEG's in a couple of minutes. That was nice.

Holiday

 I've managed to get next week off work - so I'm going down to visit some friends in London that I've not seen for a long time.

 This is my first time off for six months, so I'm looking forward to it enormously.

Code

 The perl re-write of gnump3d is progressing well. I have a decent CVS tree which is installable, and working.

 Some bits of existing functionality have regressed as part of the re-write, but other stuff is new and funky - for example it's now possible to search the music archive by genre, which is nice.

 When I get back from London I'll bundle up a release, and create a "version 2" entry in the freshmeat project.

GNUMP3d

&nbsp:I should have known better than to believe that making the v1.0-final release of my MP3/Ogg streaming software would finish it.

 I've been inundated with mail asking for new features, or help installing it.

 Still, there have been some interesting suggestions - so I've started planning version 2.x

 After plotting out some of the features I wanted I started writing some throwaway code. After two nights of hacking I have a working forking MP3/Ogg Vorbis streaming server written entirely in Perl.

 I was originally planning to use this as a framework to test some of the database ideas I had, and some other things - but I'm getting strongly tempted to make the next version Perl, rather than C++.

 I know the performance wouldn't be as good - but it's really a program bounded by network speed more than anything else, so that's largely irrelevent.

 It's kind of ironic that I've almost gone full circle with this!

 (The code is linked to from the planning page above - though it currently requires the real gnump3d to be installed to get the template files ...)

GStreamer

 After getting a nice email I've been prompted to look at gstreamer. It's very, very nice.

 I will have a look at fitting in MP3 streaming somewhere .. next week. (I've got a week off. My first time off for six months!)

GNUMP3d

 A month later than I wanted but there's now a perfectly formed release of The GNU MP3/OGG Streaming Server.

 As I was making this release I had to spend a little while restoring the Discussion Forums from a backup - it seems that the phpbb software has had a couple of security problems recently.

 I'm not sure how long my board was affected for, probably no more than a day or two but it's still a little nausiating.

 (I remember reading one post to bugtraq about it; at which point I limited access to the admin interface to my home+work IP addresses; obviously this wasn't enough).

Bookmarks

 Because Mozilla still doesn't support roaming profiles I've ended up with a couple of machines all having wildly different bookmark collections.

 Needless to say this is a bad thing, and makes me very irritated on a regular basis.

 So I spent 30 minutes yesterday writing a little Perl script to merge multiple Netscape/Mozilla bookmark collections together.

 It's a complete hack, but it works in a sufficiently roundabout way that I'm fairly proud of it!

Merging Bookmarks

 I thought it would be trivial to parse the bookmarks from one `bookmarks.html` file into a tree structure, then parse a second file; walking down the tree to spot nodes or leaves in common and adding them to a third tree - which could then be written out to disk.

 But when I actually came to code it I realised that I could cheat as I already had written a program to convert between Internet Explorer Favourites and bookmark files a few years ago. (See if you can spot where this is going!)

 So .. my new script simple reads in each bookmark file, converts it to IE favourite files in a temporary directory, (not caring if the files already exist; which handles duplicate subtrees or entries), then after that converts the collection of .url files back into a bookmark file.

 Roundabout .. but kinda cool

 I'll tidy it up and stick it online later today if I get the chance..

23 Nov 2002 (updated 23 Nov 2002 at 10:55 UTC) »
GNU Software

 In my previous job I was working with Windows, firstly as a developer, then as a sysadmin guy.

 During that time I spent a long, long, time setting up my Windows machine with ports of lots of GNU(ish) Software - things like Emacs, Perl, less, gcc, etc.

 The result of this was the following website:

 In all honest this site has lapsed badly being mostly untouched since I've been in my current job - where I run Debian upon my desktop machine.

 Today or tommorow that site will cease to be at it's current location. I can't justify spending ~200 UKP a year for the hosting package, so I'm moving it and taking the time to update it and prune it a little.

 If anybody has any interesting pointers they like included, or added drop me a line..

 

Lisp

 By a strange coincidence around the time I setup that site I was writing Emacs lisp on a daily basis. One small package I wrote, for showing documentation for Perl functions with emacs buffers actually seemed to be widely used.

 Today I received a bug report from somebody who'd placed this .el file into a Debian package, eery to get that mail on the same day as the website notification.

 I don't remember giving permission for it's inclusion, but I'm happy that more people are using it than I previously thought - especially now that I'm a Debian developer myself.

Debian

 The Debian auditing project continues to slowly grind forward. Unfortunately it looks like some of my most recent bug reports have been sloppy - broken diffs, and bad descriptions.

 I will try harder in the future to do a good job of reporting problems. Because I do consider it a worthwhile job.

 Right now I'm looking at a really cool program I've not heard of before 'most' - like 'less' or 'more' but with the added advantage of allowing you to split windows. Very nice. I may start using it now that I've discovered it.

 It's not setuid/setgid but it does have a couple of bits of sloppy coding - I'll report this today when I've had time to test my patches properly, and write a good report.

Naming

 I foolishly announced that I've been working on a DNS server upon a public mailing list.

 Currently I can read in bind zone files, and handly tcp-only requests. This code will be tidied up considerably, and made lovlier over the rest of this week.

 The hard part is thinking of a name for this beast - So far I've got a working name of No-Name-DNS, which I think is quite ironic; any suggestions for a names would be appreciated...

dpkg-changes

 I wrote about my little script for keeping track of package uploads/downloads previously on here.

 A suprisingly large number of people appeared to like it - so it's now been updated to report on the dates upon which packages were added to the system. It's also the first package I added to my personal apt-get'able repository

Debian Audit

 The Debian auditing project is still slowly continuing, I've found a few more packages with problems but nothing too major thus far.

 It's looking like I was a little bit harsh initially; on average I'm finding exploitable/crashable programs in 5-10% of cases.

Chicago

 Here's a couple of jokes which I always love, and usually go down well:

Why is six scared of seven?
Because Seven Ate Nine...

 This is my favourite...

What did zero say to eight?
Nice corset ;)
Debian

 I've just finished packaging a couple more minor scripts, and now that I've discovered how I'm in the process of creating an apt-get'able repository so that people can download them from my site; before they enter Debian properly - if they ever do.

Network Stuff
jds thanks for the comments. I like your idea of not denying the request; just sending back something.
DNS

 After the recent bind security vulnerabilities were announced I've been reading all the DNS rfc's and source code I can.

 It actually a mostly simple and sane protocol certainly something I'd like to look at in more depth, time willing.

 Currently my understanding is that there are several alternatives to bind, but none of them are as complete:

  • djdns - Unpleasant license, some oddities.
  • maradns - Not suitable for production.
  • nsd - New one, not sure about this yet - will look when the Debian package arrives
  • dnsql - Uses a database.

 I spent a while knocking up a flex/bison parser to read in Bind's zone files - they're a little gnarly, but it seems wrong to me to create yet another configuration file format, and it would ease migration considerably (cf djdns)

Email

 I got the go ahead to purchase two 80Gb drives to stick in our new mail server. This will allow me to switch the company to imap, which is a good thing - as I can use the squirrelmail package to provide webmail to everybody as a bonus.

 Currently the companies mail files total ~14Gb, so I figure 80Gb will keep us in space for a few months at the least, and the second drive will maintain an hourly rsync'd backup for safety. (There'll be a tape backup too, but I hate having to restore things from tape )

 Migrating people should be fine; I'll just move the contents of their inboxs over, then upload their Eudora mail files to the new imap server and all should be well.

 I've also been given two 24 port 100mbps hubs, so I anticipate a busy time next weekend tidying up the companies racks and upgrading the two 10Mbps hubs we have. I hope I don't have to make too many new cat5 cables. (I can do them but I hate the fiddlyness of it! Plus my failure rate is around 10% which is bad)

71 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!