From 00b2d72ac3d64b368f493844d32cae6d755e3b9d Mon Sep 17 00:00:00 2001 From: Jit Date: Tue, 3 Mar 2015 13:28:35 -0500 Subject: [PATCH] added sets for oauth encoding --- src/encode_sets.rs | 35 +++++++++++++++++++++++++++++++++++ src/percent_encoding.rs | 2 ++ 2 files changed, 37 insertions(+) diff --git a/src/encode_sets.rs b/src/encode_sets.rs index d0dcf5cb..c576bf65 100644 --- a/src/encode_sets.rs +++ b/src/encode_sets.rs @@ -258,3 +258,38 @@ pub static FORM_URLENCODED: [&'static str; 256] = [ "%F0", "%F1", "%F2", "%F3", "%F4", "%F5", "%F6", "%F7", "%F8", "%F9", "%FA", "%FB", "%FC", "%FD", "%FE", "%FF", ]; + +pub static OAUTH: [&'static str; 256] = [ + "%00", "%01", "%02", "%03", "%04", "%05", "%06", "%07", + "%08", "%09", "%0A", "%0B", "%0C", "%0D", "%0E", "%0F", + "%10", "%11", "%12", "%13", "%14", "%15", "%16", "%17", + "%18", "%19", "%1A", "%1B", "%1C", "%1D", "%1E", "%1F", + "%20", "%21", "%22", "%23", "%24", "%25", "%26", "%27", + "%28", "%29", "%2A", "%20", "%2C", "-", ".", "%2F", + "0", "1", "2", "3", "4", "5", "6", "7", + "8", "9", "%3A", "%3B", "%3C", "%3D", "%3E", "%3F", + "%40", "A", "B", "C", "D", "E", "F", "G", + "H", "I", "J", "K", "L", "M", "N", "O", + "P", "Q", "R", "S", "T", "U", "V", "W", + "X", "Y", "Z", "%5B", "%5C", "%5D", "%5E", "_", + "%60", "a", "b", "c", "d", "e", "f", "g", + "h", "i", "j", "k", "l", "m", "n", "o", + "p", "q", "r", "s", "t", "u", "v", "w", + "x", "y", "z", "%7B", "%7C", "%7D", "~", "%7F", + "%80", "%81", "%82", "%83", "%84", "%85", "%86", "%87", + "%88", "%89", "%8A", "%8B", "%8C", "%8D", "%8E", "%8F", + "%90", "%91", "%92", "%93", "%94", "%95", "%96", "%97", + "%98", "%99", "%9A", "%9B", "%9C", "%9D", "%9E", "%9F", + "%A0", "%A1", "%A2", "%A3", "%A4", "%A5", "%A6", "%A7", + "%A8", "%A9", "%AA", "%AB", "%AC", "%AD", "%AE", "%AF", + "%B0", "%B1", "%B2", "%B3", "%B4", "%B5", "%B6", "%B7", + "%B8", "%B9", "%BA", "%BB", "%BC", "%BD", "%BE", "%BF", + "%C0", "%C1", "%C2", "%C3", "%C4", "%C5", "%C6", "%C7", + "%C8", "%C9", "%CA", "%CB", "%CC", "%CD", "%CE", "%CF", + "%D0", "%D1", "%D2", "%D3", "%D4", "%D5", "%D6", "%D7", + "%D8", "%D9", "%DA", "%DB", "%DC", "%DD", "%DE", "%DF", + "%E0", "%E1", "%E2", "%E3", "%E4", "%E5", "%E6", "%E7", + "%E8", "%E9", "%EA", "%EB", "%EC", "%ED", "%EE", "%EF", + "%F0", "%F1", "%F2", "%F3", "%F4", "%F5", "%F6", "%F7", + "%F8", "%F9", "%FA", "%FB", "%FC", "%FD", "%FE", "%FF", +]; diff --git a/src/percent_encoding.rs b/src/percent_encoding.rs index 693c3512..64aa6b4b 100644 --- a/src/percent_encoding.rs +++ b/src/percent_encoding.rs @@ -55,6 +55,8 @@ pub static FORM_URLENCODED_ENCODE_SET: EncodeSet = EncodeSet { map: &encode_sets::FORM_URLENCODED, }; +/// This encode set should be used in producing an OAuth Authorization Header +pub static OAUTH_ENCODE_SET: EncodeSet = EncodeSet { map: &encode_sets::OAUTH }; /// Percent-encode the given bytes, and push the result to `output`. ///