{"action":"created","comment":{"url":"https://api.github.com/repos/openssl/openssl/pulls/comments/40212968","id":40212968,"diff_hunk":"@@ -0,0 +1,266 @@\n+/* crypto/ct/ct_locl.h */\n+/*\n+ * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project\n+ * 2015.\n+ */\n+/* ====================================================================\n+ * Copyright (c) 2015 The OpenSSL Project.  All rights reserved.\n+ *\n+ * Redistribution and use in source and binary forms, with or without\n+ * modification, are permitted provided that the following conditions\n+ * are met:\n+ *\n+ * 1. Redistributions of source code must retain the above copyright\n+ *    notice, this list of conditions and the following disclaimer.\n+ *\n+ * 2. Redistributions in binary form must reproduce the above copyright\n+ *    notice, this list of conditions and the following disclaimer in\n+ *    the documentation and/or other materials provided with the\n+ *    distribution.\n+ *\n+ * 3. All advertising materials mentioning features or use of this\n+ *    software must display the following acknowledgment:\n+ *    \"This product includes software developed by the OpenSSL Project\n+ *    for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)\"\n+ *\n+ * 4. The names \"OpenSSL Toolkit\" and \"OpenSSL Project\" must not be used to\n+ *    endorse or promote products derived from this software without\n+ *    prior written permission. For written permission, please contact\n+ *    licensing@OpenSSL.org.\n+ *\n+ * 5. Products derived from this software may not be called \"OpenSSL\"\n+ *    nor may \"OpenSSL\" appear in their names without prior written\n+ *    permission of the OpenSSL Project.\n+ *\n+ * 6. Redistributions of any form whatsoever must retain the following\n+ *    acknowledgment:\n+ *    \"This product includes software developed by the OpenSSL Project\n+ *    for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)\"\n+ *\n+ * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY\n+ * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE OpenSSL PROJECT OR\n+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT\n+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)\n+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,\n+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED\n+ * OF THE POSSIBILITY OF SUCH DAMAGE.\n+ * ====================================================================\n+ *\n+ */\n+#ifndef HEADER_CT_LOCL_H\n+# define HEADER_CT_LOCL_H\n+\n+# ifdef __cplusplus\n+extern \"C\" {\n+# endif\n+\n+# ifndef OPENSSL_NO_CT\n+\n+/* All hashes are currently SHA256 */\n+#  define SCT_V1_HASHLEN  32\n+/* Minimum RSA key size, from RFC6962 */\n+#  define SCT_MIN_RSA_BITS 2048\n+\n+/*\n+ * From RFC6962: opaque SerializedSCT<1..2^16-1>; struct { SerializedSCT\n+ * sct_list <1..2^16-1>; } SignedCertificateTimestampList;\n+ */\n+\n+#  define MAX_SCT_SIZE            65535\n+#  define MAX_SCT_LIST_SIZE       MAX_SCT_SIZE\n+\n+typedef enum {\n+    UNSET_ENTRY = -1,\n+    X509_ENTRY = 0,\n+    PRECERT_ENTRY = 1\n+} log_entry_type_t;\n+\n+typedef enum {\n+    UNSET_VERSION = -1,\n+    SCT_V1 = 0\n+} sct_version_t;\n+\n+typedef struct {\n+    sct_version_t version;\n+    /* If version is not 0 this contains the encoded SCT */","path":"crypto/ct/ct_locl.h","position":90,"original_position":90,"commit_id":"261e2e0a281d80055c76f6c17e36fa63c2cf5b2c","original_commit_id":"261e2e0a281d80055c76f6c17e36fa63c2cf5b2c","user":{"login":"ekasper","id":7046250,"avatar_url":"https://avatars.githubusercontent.com/u/7046250?v=3","gravatar_id":"","url":"https://api.github.com/users/ekasper","html_url":"https://github.com/ekasper","followers_url":"https://api.github.com/users/ekasper/followers","following_url":"https://api.github.com/users/ekasper/following{/other_user}","gists_url":"https://api.github.com/users/ekasper/gists{/gist_id}","starred_url":"https://api.github.com/users/ekasper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ekasper/subscriptions","organizations_url":"https://api.github.com/users/ekasper/orgs","repos_url":"https://api.github.com/users/ekasper/repos","events_url":"https://api.github.com/users/ekasper/events{/privacy}","received_events_url":"https://api.github.com/users/ekasper/received_events","type":"User","site_admin":false},"body":"nit: \"If version is not SCT_V1\"","created_at":"2015-09-23T14:55:00Z","updated_at":"2015-09-23T14:55:00Z","html_url":"https://github.com/openssl/openssl/pull/396#discussion_r40212968","pull_request_url":"https://api.github.com/repos/openssl/openssl/pulls/396","_links":{"self":{"href":"https://api.github.com/repos/openssl/openssl/pulls/comments/40212968"},"html":{"href":"https://github.com/openssl/openssl/pull/396#discussion_r40212968"},"pull_request":{"href":"https://api.github.com/repos/openssl/openssl/pulls/396"}}},"pull_request":{"url":"https://api.github.com/repos/openssl/openssl/pulls/396","id":44961722,"html_url":"https://github.com/openssl/openssl/pull/396","diff_url":"https://github.com/openssl/openssl/pull/396.diff","patch_url":"https://github.com/openssl/openssl/pull/396.patch","issue_url":"https://api.github.com/repos/openssl/openssl/issues/396","number":396,"state":"open","locked":false,"title":"Add Certificate Transparency support","user":{"login":"aeijdenberg","id":5984070,"avatar_url":"https://avatars.githubusercontent.com/u/5984070?v=3","gravatar_id":"","url":"https://api.github.com/users/aeijdenberg","html_url":"https://github.com/aeijdenberg","followers_url":"https://api.github.com/users/aeijdenberg/followers","following_url":"https://api.github.com/users/aeijdenberg/following{/other_user}","gists_url":"https://api.github.com/users/aeijdenberg/gists{/gist_id}","starred_url":"https://api.github.com/users/aeijdenberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aeijdenberg/subscriptions","organizations_url":"https://api.github.com/users/aeijdenberg/orgs","repos_url":"https://api.github.com/users/aeijdenberg/repos","events_url":"https://api.github.com/users/aeijdenberg/events{/privacy}","received_events_url":"https://api.github.com/users/aeijdenberg/received_events","type":"User","site_admin":false},"body":"First of a series of commits that add Certificate Transparency support to OpenSSL.  See: http://www.certificate-transparency.org/\r\n\r\nOriginal authors:\r\nRob Stradling <rob@comodo.com>\r\nDr. Stephen Henson <steve@openssl.org>","created_at":"2015-09-14T18:09:37Z","updated_at":"2015-09-23T14:55:00Z","closed_at":null,"merged_at":null,"merge_commit_sha":"c73eff54b301d3e2815ae4d50d4d362274554fa2","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/openssl/openssl/pulls/396/commits","review_comments_url":"https://api.github.com/repos/openssl/openssl/pulls/396/comments","review_comment_url":"https://api.github.com/repos/openssl/openssl/pulls/comments{/number}","comments_url":"https://api.github.com/repos/openssl/openssl/issues/396/comments","statuses_url":"https://api.github.com/repos/openssl/openssl/statuses/261e2e0a281d80055c76f6c17e36fa63c2cf5b2c","head":{"label":"aeijdenberg:ct","ref":"ct","sha":"261e2e0a281d80055c76f6c17e36fa63c2cf5b2c","user":{"login":"aeijdenberg","id":5984070,"avatar_url":"https://avatars.githubusercontent.com/u/5984070?v=3","gravatar_id":"","url":"https://api.github.com/users/aeijdenberg","html_url":"https://github.com/aeijdenberg","followers_url":"https://api.github.com/users/aeijdenberg/followers","following_url":"https://api.github.com/users/aeijdenberg/following{/other_user}","gists_url":"https://api.github.com/users/aeijdenberg/gists{/gist_id}","starred_url":"https://api.github.com/users/aeijdenberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aeijdenberg/subscriptions","organizations_url":"https://api.github.com/users/aeijdenberg/orgs","repos_url":"https://api.github.com/users/aeijdenberg/repos","events_url":"https://api.github.com/users/aeijdenberg/events{/privacy}","received_events_url":"https://api.github.com/users/aeijdenberg/received_events","type":"User","site_admin":false},"repo":{"id":38909087,"name":"openssl","full_name":"aeijdenberg/openssl","owner":{"login":"aeijdenberg","id":5984070,"avatar_url":"https://avatars.githubusercontent.com/u/5984070?v=3","gravatar_id":"","url":"https://api.github.com/users/aeijdenberg","html_url":"https://github.com/aeijdenberg","followers_url":"https://api.github.com/users/aeijdenberg/followers","following_url":"https://api.github.com/users/aeijdenberg/following{/other_user}","gists_url":"https://api.github.com/users/aeijdenberg/gists{/gist_id}","starred_url":"https://api.github.com/users/aeijdenberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aeijdenberg/subscriptions","organizations_url":"https://api.github.com/users/aeijdenberg/orgs","repos_url":"https://api.github.com/users/aeijdenberg/repos","events_url":"https://api.github.com/users/aeijdenberg/events{/privacy}","received_events_url":"https://api.github.com/users/aeijdenberg/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/aeijdenberg/openssl","description":"","fork":true,"url":"https://api.github.com/repos/aeijdenberg/openssl","forks_url":"https://api.github.com/repos/aeijdenberg/openssl/forks","keys_url":"https://api.github.com/repos/aeijdenberg/openssl/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aeijdenberg/openssl/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aeijdenberg/openssl/teams","hooks_url":"https://api.github.com/repos/aeijdenberg/openssl/hooks","issue_events_url":"https://api.github.com/repos/aeijdenberg/openssl/issues/events{/number}","events_url":"https://api.github.com/repos/aeijdenberg/openssl/events","assignees_url":"https://api.github.com/repos/aeijdenberg/openssl/assignees{/user}","branches_url":"https://api.github.com/repos/aeijdenberg/openssl/branches{/branch}","tags_url":"https://api.github.com/repos/aeijdenberg/openssl/tags","blobs_url":"https://api.github.com/repos/aeijdenberg/openssl/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aeijdenberg/openssl/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aeijdenberg/openssl/git/refs{/sha}","trees_url":"https://api.github.com/repos/aeijdenberg/openssl/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aeijdenberg/openssl/statuses/{sha}","languages_url":"https://api.github.com/repos/aeijdenberg/openssl/languages","stargazers_url":"https://api.github.com/repos/aeijdenberg/openssl/stargazers","contributors_url":"https://api.github.com/repos/aeijdenberg/openssl/contributors","subscribers_url":"https://api.github.com/repos/aeijdenberg/openssl/subscribers","subscription_url":"https://api.github.com/repos/aeijdenberg/openssl/subscription","commits_url":"https://api.github.com/repos/aeijdenberg/openssl/commits{/sha}","git_commits_url":"https://api.github.com/repos/aeijdenberg/openssl/git/commits{/sha}","comments_url":"https://api.github.com/repos/aeijdenberg/openssl/comments{/number}","issue_comment_url":"https://api.github.com/repos/aeijdenberg/openssl/issues/comments{/number}","contents_url":"https://api.github.com/repos/aeijdenberg/openssl/contents/{+path}","compare_url":"https://api.github.com/repos/aeijdenberg/openssl/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aeijdenberg/openssl/merges","archive_url":"https://api.github.com/repos/aeijdenberg/openssl/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aeijdenberg/openssl/downloads","issues_url":"https://api.github.com/repos/aeijdenberg/openssl/issues{/number}","pulls_url":"https://api.github.com/repos/aeijdenberg/openssl/pulls{/number}","milestones_url":"https://api.github.com/repos/aeijdenberg/openssl/milestones{/number}","notifications_url":"https://api.github.com/repos/aeijdenberg/openssl/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aeijdenberg/openssl/labels{/name}","releases_url":"https://api.github.com/repos/aeijdenberg/openssl/releases{/id}","created_at":"2015-07-11T01:31:28Z","updated_at":"2015-07-11T01:31:38Z","pushed_at":"2015-09-16T22:59:13Z","git_url":"git://github.com/aeijdenberg/openssl.git","ssh_url":"git@github.com:aeijdenberg/openssl.git","clone_url":"https://github.com/aeijdenberg/openssl.git","svn_url":"https://github.com/aeijdenberg/openssl","homepage":null,"size":71022,"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":"master"}},"base":{"label":"openssl:master","ref":"master","sha":"7aef39a72a2d3a7a2b0e222137a45e1b1406668d","user":{"login":"openssl","id":3279138,"avatar_url":"https://avatars.githubusercontent.com/u/3279138?v=3","gravatar_id":"","url":"https://api.github.com/users/openssl","html_url":"https://github.com/openssl","followers_url":"https://api.github.com/users/openssl/followers","following_url":"https://api.github.com/users/openssl/following{/other_user}","gists_url":"https://api.github.com/users/openssl/gists{/gist_id}","starred_url":"https://api.github.com/users/openssl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openssl/subscriptions","organizations_url":"https://api.github.com/users/openssl/orgs","repos_url":"https://api.github.com/users/openssl/repos","events_url":"https://api.github.com/users/openssl/events{/privacy}","received_events_url":"https://api.github.com/users/openssl/received_events","type":"Organization","site_admin":false},"repo":{"id":7634677,"name":"openssl","full_name":"openssl/openssl","owner":{"login":"openssl","id":3279138,"avatar_url":"https://avatars.githubusercontent.com/u/3279138?v=3","gravatar_id":"","url":"https://api.github.com/users/openssl","html_url":"https://github.com/openssl","followers_url":"https://api.github.com/users/openssl/followers","following_url":"https://api.github.com/users/openssl/following{/other_user}","gists_url":"https://api.github.com/users/openssl/gists{/gist_id}","starred_url":"https://api.github.com/users/openssl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openssl/subscriptions","organizations_url":"https://api.github.com/users/openssl/orgs","repos_url":"https://api.github.com/users/openssl/repos","events_url":"https://api.github.com/users/openssl/events{/privacy}","received_events_url":"https://api.github.com/users/openssl/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/openssl/openssl","description":"","fork":false,"url":"https://api.github.com/repos/openssl/openssl","forks_url":"https://api.github.com/repos/openssl/openssl/forks","keys_url":"https://api.github.com/repos/openssl/openssl/keys{/key_id}","collaborators_url":"https://api.github.com/repos/openssl/openssl/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/openssl/openssl/teams","hooks_url":"https://api.github.com/repos/openssl/openssl/hooks","issue_events_url":"https://api.github.com/repos/openssl/openssl/issues/events{/number}","events_url":"https://api.github.com/repos/openssl/openssl/events","assignees_url":"https://api.github.com/repos/openssl/openssl/assignees{/user}","branches_url":"https://api.github.com/repos/openssl/openssl/branches{/branch}","tags_url":"https://api.github.com/repos/openssl/openssl/tags","blobs_url":"https://api.github.com/repos/openssl/openssl/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/openssl/openssl/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/openssl/openssl/git/refs{/sha}","trees_url":"https://api.github.com/repos/openssl/openssl/git/trees{/sha}","statuses_url":"https://api.github.com/repos/openssl/openssl/statuses/{sha}","languages_url":"https://api.github.com/repos/openssl/openssl/languages","stargazers_url":"https://api.github.com/repos/openssl/openssl/stargazers","contributors_url":"https://api.github.com/repos/openssl/openssl/contributors","subscribers_url":"https://api.github.com/repos/openssl/openssl/subscribers","subscription_url":"https://api.github.com/repos/openssl/openssl/subscription","commits_url":"https://api.github.com/repos/openssl/openssl/commits{/sha}","git_commits_url":"https://api.github.com/repos/openssl/openssl/git/commits{/sha}","comments_url":"https://api.github.com/repos/openssl/openssl/comments{/number}","issue_comment_url":"https://api.github.com/repos/openssl/openssl/issues/comments{/number}","contents_url":"https://api.github.com/repos/openssl/openssl/contents/{+path}","compare_url":"https://api.github.com/repos/openssl/openssl/compare/{base}...{head}","merges_url":"https://api.github.com/repos/openssl/openssl/merges","archive_url":"https://api.github.com/repos/openssl/openssl/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/openssl/openssl/downloads","issues_url":"https://api.github.com/repos/openssl/openssl/issues{/number}","pulls_url":"https://api.github.com/repos/openssl/openssl/pulls{/number}","milestones_url":"https://api.github.com/repos/openssl/openssl/milestones{/number}","notifications_url":"https://api.github.com/repos/openssl/openssl/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/openssl/openssl/labels{/name}","releases_url":"https://api.github.com/repos/openssl/openssl/releases{/id}","created_at":"2013-01-15T22:34:48Z","updated_at":"2015-09-23T14:25:04Z","pushed_at":"2015-09-23T12:56:02Z","git_url":"git://github.com/openssl/openssl.git","ssh_url":"git@github.com:openssl/openssl.git","clone_url":"https://github.com/openssl/openssl.git","svn_url":"https://github.com/openssl/openssl","homepage":null,"size":103882,"stargazers_count":1454,"watchers_count":1454,"language":"C","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":893,"mirror_url":null,"open_issues_count":133,"forks":893,"open_issues":133,"watchers":1454,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/openssl/openssl/pulls/396"},"html":{"href":"https://github.com/openssl/openssl/pull/396"},"issue":{"href":"https://api.github.com/repos/openssl/openssl/issues/396"},"comments":{"href":"https://api.github.com/repos/openssl/openssl/issues/396/comments"},"review_comments":{"href":"https://api.github.com/repos/openssl/openssl/pulls/396/comments"},"review_comment":{"href":"https://api.github.com/repos/openssl/openssl/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/openssl/openssl/pulls/396/commits"},"statuses":{"href":"https://api.github.com/repos/openssl/openssl/statuses/261e2e0a281d80055c76f6c17e36fa63c2cf5b2c"}}}}