Refactored AuthenticationChallenge.cs
This commit is contained in:
		@@ -117,8 +117,9 @@ namespace WebSocketSharp
 | 
			
		||||
 | 
			
		||||
    public static AuthenticationChallenge Parse (string value)
 | 
			
		||||
    {
 | 
			
		||||
      var challenge = value.Split (new char [] {' '}, 2);
 | 
			
		||||
      var challenge = value.Split (new [] { ' ' }, 2);
 | 
			
		||||
      var scheme = challenge [0].ToLower ();
 | 
			
		||||
 | 
			
		||||
      return scheme == "basic" || scheme == "digest"
 | 
			
		||||
             ? new AuthenticationChallenge (scheme, challenge [1])
 | 
			
		||||
             : null;
 | 
			
		||||
 
 | 
			
		||||
@@ -606,26 +606,20 @@ namespace WebSocketSharp
 | 
			
		||||
 | 
			
		||||
    internal static NameValueCollection ParseAuthParams (this string value)
 | 
			
		||||
    {
 | 
			
		||||
      var result = new NameValueCollection ();
 | 
			
		||||
      var i = 0;
 | 
			
		||||
      string name, val;
 | 
			
		||||
      var res = new NameValueCollection ();
 | 
			
		||||
      foreach (var param in value.SplitHeaderValue (',')) {
 | 
			
		||||
        i = param.IndexOf ('=');
 | 
			
		||||
        if (i > 0) {
 | 
			
		||||
          name = param.Substring (0, i).Trim ();
 | 
			
		||||
          val = i < param.Length - 1
 | 
			
		||||
              ? param.Substring (i + 1).Trim ().Trim ('"')
 | 
			
		||||
              : String.Empty;
 | 
			
		||||
        }
 | 
			
		||||
        else {
 | 
			
		||||
          name = param;
 | 
			
		||||
          val = String.Empty;
 | 
			
		||||
        }
 | 
			
		||||
        var i = param.IndexOf ('=');
 | 
			
		||||
        var name = i > 0 ? param.Substring (0, i).Trim () : null;
 | 
			
		||||
        var val = i < 0
 | 
			
		||||
                  ? param.Trim ().Trim ('"')
 | 
			
		||||
                  : param.Length > i + 1
 | 
			
		||||
                    ? param.Substring (i + 1).Trim ().Trim ('"')
 | 
			
		||||
                    : String.Empty;
 | 
			
		||||
 | 
			
		||||
        result.Add (name, val);
 | 
			
		||||
        res.Add (name, val);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      return result;
 | 
			
		||||
      return res;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    internal static byte [] ReadBytes (this Stream stream, int length)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user