Quantum normally generates 0 padded macs.  In reality they don't have to be (BSD does not pad) and this is the same implementation that we use on the router.  I copied the method across since we don't have shared library between the two repos.