x86/HVM: make explicit that hvm_print_line() does output only

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>
This commit is contained in:
Jan Beulich committed 2018-01-19 11:09:55 +01:00
1 parent 56498d2cf9
commit 75c47ae9b6
1 file changed
+5 -1
+5 -1
View File
@@ -544,7 +544,11 @@ static int hvm_print_line(
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') )
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.