• Ondřej Zajíček's avatar
    CLI: Fix for long-lived sessions during high loads · 4c19a8a9
    Ondřej Zajíček authored
    When there is a continuos stream of CLI commands, cli_get_command()
    always returns 1 (there is a new command). Anyway, the socket receive
    buffer was reset only when there was no command at all, leading to a
    strange behavior: after a while, the CLI receive buffer came to its end,
    then read() was called with zero size buffer, it returned 0 which was
    interpreted as EOF.
    
    The patch fixes that by resetting the buffer position after each command
    and moving remaining data at the beginning of buffer.
    
    Thanks to Maria Matejka for examining the bug and for the original bugfix.
    4c19a8a9