As per the spec, variable datum fields need to be padded so that they are 64-bit aligned. We currently write out VDRs with the appropriate padding, but don't take it into consideration when reading VDRs in
To date all the PDUs that we've dealt with have just had a single VDR in them and as such we've stopped reading at the point that the padding should have started.
This all falls apart if there are multiple VDRs in a PDU. The first one is read in correctly, however the reading of the second one fails as we begin reading it at the point where the padding starts.
Updated the VariableDatum::from() method to skip the appropriate padding at the end to align to the 64-bit boundary
VariableDatum::from()
method to skip the appropriate padding at the end to align to the 64-bit boundary