You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by da...@apache.org on 2014/02/12 07:22:27 UTC

[09/12] oauth commit: updated refs/heads/import-master to db23ab2

Update erlang_oauth to the latest version.

Fixes deprecation warnings for R15 and a few minor things:

 https://github.com/tim/erlang-oauth/commits/master

(This includes one small patch that I'm sending upstream now)

git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1039345 13f79535-47bb-0310-9956-ffa450edef68


Project: http://git-wip-us.apache.org/repos/asf/couchdb-oauth/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-oauth/commit/d8594f74
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-oauth/tree/d8594f74
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-oauth/diff/d8594f74

Branch: refs/heads/import-master
Commit: d8594f74e5acf7690c368fb70d5c7a47074d8c56
Parents: fb60e65
Author: Jan Lehnardt <ja...@apache.org>
Authored: Fri Nov 26 13:29:25 2010 +0000
Committer: Jan Lehnardt <ja...@apache.org>
Committed: Fri Nov 26 13:29:25 2010 +0000

----------------------------------------------------------------------
 oauth.app.in        |  2 +-
 oauth_hmac_sha1.erl |  2 +-
 oauth_http.erl      |  2 +-
 oauth_plaintext.erl |  2 +-
 oauth_uri.erl       | 66 ++++++++++++++++++++++++++++--------------------
 5 files changed, 42 insertions(+), 32 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/couchdb-oauth/blob/d8594f74/oauth.app.in
----------------------------------------------------------------------
diff --git a/oauth.app.in b/oauth.app.in
index 6357b9b..a8ec17c 100644
--- a/oauth.app.in
+++ b/oauth.app.in
@@ -1,6 +1,6 @@
 {application, oauth, [
   {description, "Erlang OAuth implementation"},
-  {vsn, "dev"},
+  {vsn, "7d85d3ef"},
   {modules, [
     oauth,
     oauth_hmac_sha1,

http://git-wip-us.apache.org/repos/asf/couchdb-oauth/blob/d8594f74/oauth_hmac_sha1.erl
----------------------------------------------------------------------
diff --git a/oauth_hmac_sha1.erl b/oauth_hmac_sha1.erl
index 79d59f3..69064ed 100644
--- a/oauth_hmac_sha1.erl
+++ b/oauth_hmac_sha1.erl
@@ -8,4 +8,4 @@ signature(BaseString, CS, TS) ->
   base64:encode_to_string(crypto:sha_mac(Key, BaseString)).
 
 verify(Signature, BaseString, CS, TS) ->
-  couch_util:verify(signature(BaseString, CS, TS), Signature).
+  Signature =:= signature(BaseString, CS, TS).

http://git-wip-us.apache.org/repos/asf/couchdb-oauth/blob/d8594f74/oauth_http.erl
----------------------------------------------------------------------
diff --git a/oauth_http.erl b/oauth_http.erl
index bf5a4ba..92c806c 100644
--- a/oauth_http.erl
+++ b/oauth_http.erl
@@ -10,7 +10,7 @@ post(URL, Data) ->
   request(post, {URL, [], "application/x-www-form-urlencoded", Data}).
 
 request(Method, Request) ->
-  http:request(Method, Request, [{autoredirect, false}], []).
+  httpc:request(Method, Request, [{autoredirect, false}], []).
 
 response_params(Response) ->
   oauth_uri:params_from_string(response_body(Response)).

http://git-wip-us.apache.org/repos/asf/couchdb-oauth/blob/d8594f74/oauth_plaintext.erl
----------------------------------------------------------------------
diff --git a/oauth_plaintext.erl b/oauth_plaintext.erl
index 41a1e9b..d8085e0 100644
--- a/oauth_plaintext.erl
+++ b/oauth_plaintext.erl
@@ -7,4 +7,4 @@ signature(CS, TS) ->
   oauth_uri:calate("&", [CS, TS]).
 
 verify(Signature, CS, TS) ->
-  couch_util:verify(signature(CS, TS), Signature).
+  Signature =:= signature(CS, TS).

http://git-wip-us.apache.org/repos/asf/couchdb-oauth/blob/d8594f74/oauth_uri.erl
----------------------------------------------------------------------
diff --git a/oauth_uri.erl b/oauth_uri.erl
index fb27ae7..5023f98 100644
--- a/oauth_uri.erl
+++ b/oauth_uri.erl
@@ -6,14 +6,6 @@
 
 -import(lists, [concat/1]).
 
--define(is_uppercase_alpha(C), C >= $A, C =< $Z).
--define(is_lowercase_alpha(C), C >= $a, C =< $z).
--define(is_alpha(C), ?is_uppercase_alpha(C); ?is_lowercase_alpha(C)).
--define(is_digit(C), C >= $0, C =< $9).
--define(is_alphanumeric(C), ?is_alpha(C); ?is_digit(C)).
--define(is_unreserved(C), ?is_alphanumeric(C); C =:= $-; C =:= $_; C =:= $.; C =:= $~).
--define(is_hex(C), ?is_digit(C); C >= $A, C =< $F).
-
 
 normalize(URI) ->
   case http_uri:parse(URI) of
@@ -66,23 +58,41 @@ intersperse(_, [X]) -> [X];
 intersperse(Sep, [X|Xs]) ->
   [X, Sep|intersperse(Sep, Xs)].
 
-decode(Chars) ->
-  decode(Chars, []).
-
-decode([], Decoded) ->
-  lists:reverse(Decoded);
-decode([$%,A,B|Etc], Decoded) when ?is_hex(A), ?is_hex(B) ->
-  decode(Etc, [erlang:list_to_integer([A,B], 16)|Decoded]);
-decode([C|Etc], Decoded) when ?is_unreserved(C) ->
-  decode(Etc, [C|Decoded]).
-
-encode(Chars) ->
-  encode(Chars, []).
-
-encode([], Encoded) ->
-  lists:flatten(lists:reverse(Encoded));
-encode([C|Etc], Encoded) when ?is_unreserved(C) ->
-  encode(Etc, [C|Encoded]);
-encode([C|Etc], Encoded) ->
-  Value = io_lib:format("%~2.1.0s", [erlang:integer_to_list(C, 16)]),
-  encode(Etc, [Value|Encoded]).
+-define(is_alphanum(C), C >= $A, C =< $Z; C >= $a, C =< $z; C >= $0, C =< $9).
+
+encode(Term) when is_integer(Term) ->
+  integer_to_list(Term);
+encode(Term) when is_atom(Term) ->
+  encode(atom_to_list(Term));
+encode(Term) when is_list(Term) ->
+  encode(lists:reverse(Term, []), []).
+
+encode([X | T], Acc) when ?is_alphanum(X); X =:= $-; X =:= $_; X =:= $.; X =:= $~ ->
+  encode(T, [X | Acc]);
+encode([X | T], Acc) ->
+  NewAcc = [$%, dec2hex(X bsr 4), dec2hex(X band 16#0f) | Acc],
+  encode(T, NewAcc);
+encode([], Acc) ->
+  Acc.
+
+decode(Str) when is_list(Str) ->
+  decode(Str, []).
+
+decode([$%, A, B | T], Acc) ->
+  decode(T, [(hex2dec(A) bsl 4) + hex2dec(B) | Acc]);
+decode([X | T], Acc) ->
+  decode(T, [X | Acc]);
+decode([], Acc) ->
+  lists:reverse(Acc, []).
+
+-compile({inline, [{dec2hex, 1}, {hex2dec, 1}]}).
+
+dec2hex(N) when N >= 10 andalso N =< 15 ->
+  N + $A - 10;
+dec2hex(N) when N >= 0 andalso N =< 9 ->
+  N + $0.
+
+hex2dec(C) when C >= $A andalso C =< $F ->
+  C - $A + 10;
+hex2dec(C) when C >= $0 andalso C =< $9 ->
+  C - $0.