vlapi: overwrite checksum in ReadBulk

When the Volkslogger transfers serial data FROM the logger
via the ReadBulk routine it receives one character at a time.
For each char received, ReadBulk() updates a checksum which
is of CRC16 CCITT type.
The last bytes sent from the Volkslogger during a transmission
are two checksum bytes and an DLE(escape character) followed by
ETX (End of data).
The command characters DLE and ETX do not get written into the
data buffer. They terminate the receive loop.
The checkum bytes however are appended to the data buffer.
The CRC16 checksum which was updated with every (non-command)
char during the whole transmission should be zero after being
updated with the two checksum bytes.
This is done in ReadBulk() after the receive loop and if a
transmission error is detected (crc != 0) the function is aborted.
In case of correc transmission the function is left returning
the number of read data bytes minus the two checksum bytes
(nbytes - 2) in the buffer.

Beforehand the whole reserved buffer space was initialized
with 0xFF. Now it contains the databytes followed by two checksum
bytes which are not needed anymore.
The returned count of read data (nbytes - 2) should take care of
the checksum not beeing interpreted as data.
However this is not the case in conv_dir().
This function is fixed with one of the next patches. However to
avoid the CRC-bytes, which are of no further use after the correct
reception is checked, from doing further harm in this patch the
checksum bytes are overwritten after checking.

As said: with the fix conv_dir() patch it works without this
measure but this patch cleans the buffer of the CRC bytes anyways
just to be sure and make the buffer contents easier to interpret.
vlconv: fix conv_dir()

Testing has shown, that the function conv_dir() as it is does
not contain a valid condition to end the parsing loop of data
in the buffer.
Reasons might be a change in the api in the past, or (less likely)
the Volkslogger used for testing having a different protocol than
the api expects.
Some hints in the code point to a not finished work in the past
which left the code not working.
The exact details of the volkslogger protocol are not known,
so it is not possible to tell why this is the case.
The working solution to the problem is to pass the number of chars
in the buffer to the function and stop parsing after all data was
processed.