Open Source

This page contains some of the open source stuff that we use internally. Disclaimer: USE AT YOUR OWN RISK. No warranty, no support. Don't complain if it eats your first born, favorite pet, or erases your computer.

We use a lot of open source projects in our services. Although we try to use them in their unmodified form, in the event that we do have to change/fix something, our changes are posted here.

StarTech (Rayon) RS422/485 Serial Driver

We use a StarTech 2 Port RS-422/RS-485 Optically Isolated Serial PCI Card (DB9) Model PCI2S422ISO to communicate with the ModBus equipment in our facility. Unfortunately, the driver that the card ships with is not compatible with the 2.6.26 kernel in Debian "lenny". After a brief search resulting in coming up with absolutely nothing, we decided to dive in and update their driver.

This patched kernel module driver is being used successfully on a StarTech PCI2S422ISO. This driver should work for any of the PCIPORT family of cards: P584, P588, P514, P518, P220, P232, P422, P984, P924, P985. This card may also be known as a "rayon" card. It also seems to be impossible to download the Linux drivers for this thing anywhere so we've provided a link to the contents of the driver disk we used to create this updated driver.

Fetchmail Patches

Fetchmail Website

This patch (fetchmail-rollernet-uidfixes2.patch) deals with UIDL behavior observed during testing. It fixes the following conditions:

  • Existing UID files weren't loading from disk and prepopulating the list of UIDs we already saw. This would cause fetchmail to download everything as new every time the daemon restarted if the "keep" option was used.
  • The UID file would grow on each daemon restart because of a "scratchlist" struct used to store unknown/old UID file data was storing everything known and unknown. Our fix skips the scratchlist if it's a known server.
  • If two servers of the same name were present but one was "skip" and the other "poll", every "skip" would cause the UID file to be written with duplicate data. Our fix makes the read/write actions ignore the "skip" servers and non-uidl servers.

This patch (fetchmail-rollernet-sinkbehavior2.patch) changes how fetchmail behaves with regards to postmaster notifications and message purging.

  • Only send rejection notices to a predefined "postmaster" address.
  • Don't purge a message from the mail box if it was rejected.
  • Change message verbage to suit our environment.

This patch is probably totally useless outside of our environment, but we've included it for completeness.

Patches were made against fetchmail-6.3.9. Patches may be used as long as credit is given to "Roller Network LLC".

How You Can Help

  • Contribute changes, documentation, or fixes back to us so we can post them here.
  • Buy an account if you can use something we offer.
  • Recommend our services to a friend.

Roller Network

© 2003-2011 Roller Network, LLC.
All rights reserved