Not necessarily - but it could be. Either way, at the point where we encounter
the unsupported operation number, we've already determined that we can't handle
the request. We should therefore immediately stop processing the request and
respond with an 0x501 status code. At this point, worrying about charsets is
not useful, and building logic into the printer to do so is a needless expense.
We don't know why the operation number is invalid - it *could* be a well-formed
request for something we don't support, or it could be garbage. We don't know,
and we shouldn't concern ourselves with it. What we do know is that we received
a request for an operation we don't support, and that's what we should tell the
client - period. There's no need for the printer to supply a status message
here; the status code is adequately informative, and the client is perfectly
capable of informing the user of the error. Trying to parse a data stream that
we already know we can't do anything useful with is a waste of time at best, and
dangerous at worst.