• Peter Hurley's avatar
    tty: Correct INPCK handling · 66528f90
    Peter Hurley authored
    If INPCK is not set, input parity detection should be disabled. This means
    parity errors should not be received from the tty driver, and the data
    received should be treated normally.
    
    SUS v3, 11.2.2, General Terminal Interface - Input Modes, states:
      "If INPCK is set, input parity checking shall be enabled. If INPCK is
       not set, input parity checking shall be disabled, allowing output parity
       generation without input parity errors. Note that whether input parity
       checking is enabled or disabled is independent of whether parity detection
       is enabled or disabled (see Control Modes). If parity detection is enabled
       but input parity checking is disabled, the hardware to which the terminal
       is connected shall recognize the parity bit, but the terminal special file
       shall not check whether or not this bit is correctly set."
    
    Ignore parity errors reported by the tty driver when INPCK is not set, and
    handle the received data normally.
    
    Fixes: Bugzilla #71681, 'Improvement of n_tty_receive_parity_error from n_tty.c'
    Reported-by: default avatarIvan <athlon_@mail.ru>
    Signed-off-by: default avatarPeter Hurley <peter@hurleysoftware.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    66528f90
n_tty.c 61.8 KB