# File lib/em/protocols/saslauth.rb, line 156 156: def receive_data data 157: @sasl_data << data 158: 159: while @sasl_data.length > 2 160: len = (@sasl_data[0,2].unpack("n")).first 161: raise "SASL Max Field Length exceeded" if len > MaxFieldSize 162: if @sasl_data.length >= (len + 2) 163: val = @sasl_data[2,len] 164: @sasl_data.slice!(0...(2+len)) 165: q = @queries.pop 166: (val == "NO") ? q.fail : q.succeed 167: else 168: break 169: end 170: end 171: end