Maybe I am being a bit picky here, but with this array size the maximum number that will be printed in the functions below will have 3 digits (well, 5 in fact as final ")>" would not be printed for larger numbers). I can image vendor specific error codes starting in 100000 for whatever reason. Why not change this to 32?