Skip to content
  • Alberto Bertogli's avatar
    smtpsrv: Limit incoming line length and improve large message handling · 99df5e7b
    Alberto Bertogli authored
    Currently, there is no limit to incoming line length, so an evil client
    could cause a memory exhaustion DoS by issuing very long lines.
    
    This patch fixes the bug by limiting the size of the lines.
    
    To do that, we replace the textproto.Conn with a pair of buffered reader
    and writer, which simplify the code and allow for better and cleaner
    control.
    
    Thanks to Max Mazurov (fox.cpp@disroot.org) for finding and reporting
    this issue.
    99df5e7b