         # File lib/em/protocols/smtpserver.rb, line 321
    321:       def process_starttls
    322:         if @@parms[:starttls]
    323:           if @state.include?(:starttls)
    324:             send_data "503 TLS Already negotiated\r\n"
    325:           elsif ! @state.include?(:ehlo)
    326:             send_data "503 EHLO required before STARTTLS\r\n"
    327:           else
    328:             send_data "220 Start TLS negotiation\r\n"
    329:             start_tls
    330:             @state << :starttls
    331:           end
    332:         else
    333:           process_unknown
    334:         end
    335:       end