# File lib/em/protocols/saslauth.rb, line 91
 91:       def receive_data data
 92:         @sasl_data << data
 93:         while @sasl_data.length >= 2
 94:           len = (@sasl_data[0,2].unpack("n")).first
 95:           raise "SASL Max Field Length exceeded" if len > MaxFieldSize
 96:           if @sasl_data.length >= (len + 2)
 97:             @sasl_values << @sasl_data[2,len]
 98:             @sasl_data.slice!(0...(2+len))
 99:             if @sasl_values.length == 4
100:               send_data( validate(*@sasl_values) ? "\0\002OK" : "\0\002NO" )
101:               @sasl_values.clear
102:             end
103:           else
104:             break
105:           end
106:         end
107:       end