{"action":"closed","number":2076,"pull_request":{"url":"https://api.github.com/repos/tarantool/tarantool/pulls/2076","id":105804317,"html_url":"https://github.com/tarantool/tarantool/pull/2076","diff_url":"https://github.com/tarantool/tarantool/pull/2076.diff","patch_url":"https://github.com/tarantool/tarantool/pull/2076.patch","issue_url":"https://api.github.com/repos/tarantool/tarantool/issues/2076","number":2076,"state":"closed","locked":false,"title":"Added support for various HMACs to 'crypto' module.","user":{"login":"amdei","id":11981676,"avatar_url":"https://avatars.githubusercontent.com/u/11981676?v=3","gravatar_id":"","url":"https://api.github.com/users/amdei","html_url":"https://github.com/amdei","followers_url":"https://api.github.com/users/amdei/followers","following_url":"https://api.github.com/users/amdei/following{/other_user}","gists_url":"https://api.github.com/users/amdei/gists{/gist_id}","starred_url":"https://api.github.com/users/amdei/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amdei/subscriptions","organizations_url":"https://api.github.com/users/amdei/orgs","repos_url":"https://api.github.com/users/amdei/repos","events_url":"https://api.github.com/users/amdei/events{/privacy}","received_events_url":"https://api.github.com/users/amdei/received_events","type":"User","site_admin":false},"body":"This PR adding various kind of HMAC (hash-based keyed MAC) to build-in 'crypto' module\r\nHMAC-SHA256 is especially important for AWS V4 auth.\r\n\r\nPrerequisites: OpenSSL 1.0.0+\r\n\r\nSample usage:\r\n\r\n    crypto = require('crypto')\r\n    crypto.hmac.sha1('012345678', 'fred')\r\n\r\n    -- Incremental update:\r\n    local key = '111xxx'\r\n    hmac_sha1 = crypto.hmac.sha1.new(key)\r\n    hmac_sha1:update('abc')\r\n    hmac_sha1:update('cde')\r\n    hmac_sha1:result()\r\n\r\n\r\nSee more examples in crypto_hmac.test.lua file.\r\nComments and suggestions are welcome!","created_at":"2017-02-12T20:07:22Z","updated_at":"2017-02-20T12:29:59Z","closed_at":"2017-02-20T12:29:58Z","merged_at":null,"merge_commit_sha":"3913fe6870df49b2829b6c7e64313a80a6a0b267","assignee":{"login":"GeorgyKirichenko","id":16667241,"avatar_url":"https://avatars.githubusercontent.com/u/16667241?v=3","gravatar_id":"","url":"https://api.github.com/users/GeorgyKirichenko","html_url":"https://github.com/GeorgyKirichenko","followers_url":"https://api.github.com/users/GeorgyKirichenko/followers","following_url":"https://api.github.com/users/GeorgyKirichenko/following{/other_user}","gists_url":"https://api.github.com/users/GeorgyKirichenko/gists{/gist_id}","starred_url":"https://api.github.com/users/GeorgyKirichenko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GeorgyKirichenko/subscriptions","organizations_url":"https://api.github.com/users/GeorgyKirichenko/orgs","repos_url":"https://api.github.com/users/GeorgyKirichenko/repos","events_url":"https://api.github.com/users/GeorgyKirichenko/events{/privacy}","received_events_url":"https://api.github.com/users/GeorgyKirichenko/received_events","type":"User","site_admin":false},"assignees":[{"login":"GeorgyKirichenko","id":16667241,"avatar_url":"https://avatars.githubusercontent.com/u/16667241?v=3","gravatar_id":"","url":"https://api.github.com/users/GeorgyKirichenko","html_url":"https://github.com/GeorgyKirichenko","followers_url":"https://api.github.com/users/GeorgyKirichenko/followers","following_url":"https://api.github.com/users/GeorgyKirichenko/following{/other_user}","gists_url":"https://api.github.com/users/GeorgyKirichenko/gists{/gist_id}","starred_url":"https://api.github.com/users/GeorgyKirichenko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GeorgyKirichenko/subscriptions","organizations_url":"https://api.github.com/users/GeorgyKirichenko/orgs","repos_url":"https://api.github.com/users/GeorgyKirichenko/repos","events_url":"https://api.github.com/users/GeorgyKirichenko/events{/privacy}","received_events_url":"https://api.github.com/users/GeorgyKirichenko/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/tarantool/tarantool/pulls/2076/commits","review_comments_url":"https://api.github.com/repos/tarantool/tarantool/pulls/2076/comments","review_comment_url":"https://api.github.com/repos/tarantool/tarantool/pulls/comments{/number}","comments_url":"https://api.github.com/repos/tarantool/tarantool/issues/2076/comments","statuses_url":"https://api.github.com/repos/tarantool/tarantool/statuses/59016deadacd88000e6708edc6c3cea302fcf154","head":{"label":"amdei:crypto_hmac","ref":"crypto_hmac","sha":"59016deadacd88000e6708edc6c3cea302fcf154","user":{"login":"amdei","id":11981676,"avatar_url":"https://avatars.githubusercontent.com/u/11981676?v=3","gravatar_id":"","url":"https://api.github.com/users/amdei","html_url":"https://github.com/amdei","followers_url":"https://api.github.com/users/amdei/followers","following_url":"https://api.github.com/users/amdei/following{/other_user}","gists_url":"https://api.github.com/users/amdei/gists{/gist_id}","starred_url":"https://api.github.com/users/amdei/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amdei/subscriptions","organizations_url":"https://api.github.com/users/amdei/orgs","repos_url":"https://api.github.com/users/amdei/repos","events_url":"https://api.github.com/users/amdei/events{/privacy}","received_events_url":"https://api.github.com/users/amdei/received_events","type":"User","site_admin":false},"repo":{"id":81450427,"name":"tarantool","full_name":"amdei/tarantool","owner":{"login":"amdei","id":11981676,"avatar_url":"https://avatars.githubusercontent.com/u/11981676?v=3","gravatar_id":"","url":"https://api.github.com/users/amdei","html_url":"https://github.com/amdei","followers_url":"https://api.github.com/users/amdei/followers","following_url":"https://api.github.com/users/amdei/following{/other_user}","gists_url":"https://api.github.com/users/amdei/gists{/gist_id}","starred_url":"https://api.github.com/users/amdei/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amdei/subscriptions","organizations_url":"https://api.github.com/users/amdei/orgs","repos_url":"https://api.github.com/users/amdei/repos","events_url":"https://api.github.com/users/amdei/events{/privacy}","received_events_url":"https://api.github.com/users/amdei/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/amdei/tarantool","description":"Get your data in RAM. Get compute close to data. Enjoy the performance.","fork":true,"url":"https://api.github.com/repos/amdei/tarantool","forks_url":"https://api.github.com/repos/amdei/tarantool/forks","keys_url":"https://api.github.com/repos/amdei/tarantool/keys{/key_id}","collaborators_url":"https://api.github.com/repos/amdei/tarantool/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/amdei/tarantool/teams","hooks_url":"https://api.github.com/repos/amdei/tarantool/hooks","issue_events_url":"https://api.github.com/repos/amdei/tarantool/issues/events{/number}","events_url":"https://api.github.com/repos/amdei/tarantool/events","assignees_url":"https://api.github.com/repos/amdei/tarantool/assignees{/user}","branches_url":"https://api.github.com/repos/amdei/tarantool/branches{/branch}","tags_url":"https://api.github.com/repos/amdei/tarantool/tags","blobs_url":"https://api.github.com/repos/amdei/tarantool/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/amdei/tarantool/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/amdei/tarantool/git/refs{/sha}","trees_url":"https://api.github.com/repos/amdei/tarantool/git/trees{/sha}","statuses_url":"https://api.github.com/repos/amdei/tarantool/statuses/{sha}","languages_url":"https://api.github.com/repos/amdei/tarantool/languages","stargazers_url":"https://api.github.com/repos/amdei/tarantool/stargazers","contributors_url":"https://api.github.com/repos/amdei/tarantool/contributors","subscribers_url":"https://api.github.com/repos/amdei/tarantool/subscribers","subscription_url":"https://api.github.com/repos/amdei/tarantool/subscription","commits_url":"https://api.github.com/repos/amdei/tarantool/commits{/sha}","git_commits_url":"https://api.github.com/repos/amdei/tarantool/git/commits{/sha}","comments_url":"https://api.github.com/repos/amdei/tarantool/comments{/number}","issue_comment_url":"https://api.github.com/repos/amdei/tarantool/issues/comments{/number}","contents_url":"https://api.github.com/repos/amdei/tarantool/contents/{+path}","compare_url":"https://api.github.com/repos/amdei/tarantool/compare/{base}...{head}","merges_url":"https://api.github.com/repos/amdei/tarantool/merges","archive_url":"https://api.github.com/repos/amdei/tarantool/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/amdei/tarantool/downloads","issues_url":"https://api.github.com/repos/amdei/tarantool/issues{/number}","pulls_url":"https://api.github.com/repos/amdei/tarantool/pulls{/number}","milestones_url":"https://api.github.com/repos/amdei/tarantool/milestones{/number}","notifications_url":"https://api.github.com/repos/amdei/tarantool/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/amdei/tarantool/labels{/name}","releases_url":"https://api.github.com/repos/amdei/tarantool/releases{/id}","deployments_url":"https://api.github.com/repos/amdei/tarantool/deployments","created_at":"2017-02-09T12:57:52Z","updated_at":"2017-02-09T12:57:58Z","pushed_at":"2017-02-15T16:05:36Z","git_url":"git://github.com/amdei/tarantool.git","ssh_url":"git@github.com:amdei/tarantool.git","clone_url":"https://github.com/amdei/tarantool.git","svn_url":"https://github.com/amdei/tarantool","homepage":"http://www.tarantool.org","size":45073,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"1.7"}},"base":{"label":"tarantool:1.7","ref":"1.7","sha":"870e8d7144641088ff56bce33ee0e17dc471368f","user":{"login":"tarantool","id":2344919,"avatar_url":"https://avatars.githubusercontent.com/u/2344919?v=3","gravatar_id":"","url":"https://api.github.com/users/tarantool","html_url":"https://github.com/tarantool","followers_url":"https://api.github.com/users/tarantool/followers","following_url":"https://api.github.com/users/tarantool/following{/other_user}","gists_url":"https://api.github.com/users/tarantool/gists{/gist_id}","starred_url":"https://api.github.com/users/tarantool/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tarantool/subscriptions","organizations_url":"https://api.github.com/users/tarantool/orgs","repos_url":"https://api.github.com/users/tarantool/repos","events_url":"https://api.github.com/users/tarantool/events{/privacy}","received_events_url":"https://api.github.com/users/tarantool/received_events","type":"Organization","site_admin":false},"repo":{"id":911980,"name":"tarantool","full_name":"tarantool/tarantool","owner":{"login":"tarantool","id":2344919,"avatar_url":"https://avatars.githubusercontent.com/u/2344919?v=3","gravatar_id":"","url":"https://api.github.com/users/tarantool","html_url":"https://github.com/tarantool","followers_url":"https://api.github.com/users/tarantool/followers","following_url":"https://api.github.com/users/tarantool/following{/other_user}","gists_url":"https://api.github.com/users/tarantool/gists{/gist_id}","starred_url":"https://api.github.com/users/tarantool/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tarantool/subscriptions","organizations_url":"https://api.github.com/users/tarantool/orgs","repos_url":"https://api.github.com/users/tarantool/repos","events_url":"https://api.github.com/users/tarantool/events{/privacy}","received_events_url":"https://api.github.com/users/tarantool/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/tarantool/tarantool","description":"Get your data in RAM. Get compute close to data. Enjoy the performance.","fork":false,"url":"https://api.github.com/repos/tarantool/tarantool","forks_url":"https://api.github.com/repos/tarantool/tarantool/forks","keys_url":"https://api.github.com/repos/tarantool/tarantool/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tarantool/tarantool/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tarantool/tarantool/teams","hooks_url":"https://api.github.com/repos/tarantool/tarantool/hooks","issue_events_url":"https://api.github.com/repos/tarantool/tarantool/issues/events{/number}","events_url":"https://api.github.com/repos/tarantool/tarantool/events","assignees_url":"https://api.github.com/repos/tarantool/tarantool/assignees{/user}","branches_url":"https://api.github.com/repos/tarantool/tarantool/branches{/branch}","tags_url":"https://api.github.com/repos/tarantool/tarantool/tags","blobs_url":"https://api.github.com/repos/tarantool/tarantool/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tarantool/tarantool/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tarantool/tarantool/git/refs{/sha}","trees_url":"https://api.github.com/repos/tarantool/tarantool/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tarantool/tarantool/statuses/{sha}","languages_url":"https://api.github.com/repos/tarantool/tarantool/languages","stargazers_url":"https://api.github.com/repos/tarantool/tarantool/stargazers","contributors_url":"https://api.github.com/repos/tarantool/tarantool/contributors","subscribers_url":"https://api.github.com/repos/tarantool/tarantool/subscribers","subscription_url":"https://api.github.com/repos/tarantool/tarantool/subscription","commits_url":"https://api.github.com/repos/tarantool/tarantool/commits{/sha}","git_commits_url":"https://api.github.com/repos/tarantool/tarantool/git/commits{/sha}","comments_url":"https://api.github.com/repos/tarantool/tarantool/comments{/number}","issue_comment_url":"https://api.github.com/repos/tarantool/tarantool/issues/comments{/number}","contents_url":"https://api.github.com/repos/tarantool/tarantool/contents/{+path}","compare_url":"https://api.github.com/repos/tarantool/tarantool/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tarantool/tarantool/merges","archive_url":"https://api.github.com/repos/tarantool/tarantool/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tarantool/tarantool/downloads","issues_url":"https://api.github.com/repos/tarantool/tarantool/issues{/number}","pulls_url":"https://api.github.com/repos/tarantool/tarantool/pulls{/number}","milestones_url":"https://api.github.com/repos/tarantool/tarantool/milestones{/number}","notifications_url":"https://api.github.com/repos/tarantool/tarantool/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tarantool/tarantool/labels{/name}","releases_url":"https://api.github.com/repos/tarantool/tarantool/releases{/id}","deployments_url":"https://api.github.com/repos/tarantool/tarantool/deployments","created_at":"2010-09-15T07:59:26Z","updated_at":"2017-02-19T14:55:26Z","pushed_at":"2017-02-20T12:18:02Z","git_url":"git://github.com/tarantool/tarantool.git","ssh_url":"git@github.com:tarantool/tarantool.git","clone_url":"https://github.com/tarantool/tarantool.git","svn_url":"https://github.com/tarantool/tarantool","homepage":"http://www.tarantool.org","size":45874,"stargazers_count":1345,"watchers_count":1345,"language":"C","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":136,"mirror_url":null,"open_issues_count":389,"forks":136,"open_issues":389,"watchers":1345,"default_branch":"1.7"}},"_links":{"self":{"href":"https://api.github.com/repos/tarantool/tarantool/pulls/2076"},"html":{"href":"https://github.com/tarantool/tarantool/pull/2076"},"issue":{"href":"https://api.github.com/repos/tarantool/tarantool/issues/2076"},"comments":{"href":"https://api.github.com/repos/tarantool/tarantool/issues/2076/comments"},"review_comments":{"href":"https://api.github.com/repos/tarantool/tarantool/pulls/2076/comments"},"review_comment":{"href":"https://api.github.com/repos/tarantool/tarantool/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/tarantool/tarantool/pulls/2076/commits"},"statuses":{"href":"https://api.github.com/repos/tarantool/tarantool/statuses/59016deadacd88000e6708edc6c3cea302fcf154"}},"merged":false,"mergeable":false,"mergeable_state":"dirty","merged_by":null,"comments":6,"review_comments":0,"maintainer_can_modify":false,"commits":4,"additions":368,"deletions":3,"changed_files":6}}
{"actor":{"display_login":"rtsisyk"}}