On input "c" being 0xff should already have the effect of bailing early
(due to the isprint()), but let's rather make this explicit. Also
convert the BUG_ON() to an ASSERT() (nothing fatal happens in the
function if this is violated), at the same time extending what is being
checked.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
struct domain *cd = current->domain;
char c = *val;
- BUG_ON(bytes != 1);
+ ASSERT(bytes == 1 && port == 0xe9);
+
+ /* Deny any input requests. */
+ if ( dir != IOREQ_WRITE )
+ return X86EMUL_UNHANDLEABLE;
/* Accept only printable characters, newline, and horizontal tab. */
if ( !isprint(c) && (c != '\n') && (c != '\t') )