Solemn's Site
Buggy software since 200X


Welcome to the site of solemnwarning (Daniel Collins), here you will find software and other debris I've published over the years.

Latest posts

IPXWrapper testing infrastructure

Posted in programming on 06 Mar 2018 at 21:39 UTC

In 2014 I wrote a fairly comprehensive test suite for IPXWrapper, which tests it end-to-end, from the APIs through to the network traffic they generate and process. It depends on a meticulously configured set of Windows and Linux machines, which I had duplicated using several different versions of Windows.

Eventually bit-rot set in and some of the Windows VMs became unusable for quick testing; sat installing updates whenever I booted them, broke themselves in odd ways, etc. Also my workstation doesn't have enough RAM for Chrome and several Windows VMs at the same time. No machine does.



Comments (0)

struct XXX redeclared with different access

Posted in programming on 22 Dec 2017 at 15:29 UTC

Today I was writing some C++ and wanted to add a private struct within a class for storing some data, but not just any struct - I wanted a private abstract base struct with a couple of implementations.

So I wrote something like this:


That didn't compile, GCC gave me the following error and Google wasn't terribly helpful when I searched for it:

/home/solemnwarning/test.cpp:8:3: error: ‘struct Thing::PrivateAbstract::A’ redeclared with different access



Comments (0)

IPXWrapper 0.6.1 released

Posted in IPXWrapper on 23 Sep 2017 at 22:06 UTC

IPXWrapper 0.6.1 has been released.

This release fixes a crash bug, adds support for more frame formats (LLC and Novell "raw") when sending/receiving real IPX packets and adds some missing DirectPlay registry keys needed by Virtua Cop.

Download link:

Comments (0)

wolwait update

Posted in software on 21 Aug 2017 at 16:41 UTC

I've released a new version of wolwait, most significant changes are support for IPv6 and sending WOL packets directly to the host.

Download link: wolwait.cpp

Comments (0)