{"action":"created","comment":{"url":"https://api.github.com/repos/openssl/openssl/pulls/comments/229792614","pull_request_review_id":170214987,"id":229792614,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyOTc5MjYxNA==","diff_hunk":"@@ -0,0 +1,201 @@\n+=pod\n+\n+=head1 NAME\n+\n+SSL_CTX_set_srp_username,\n+SSL_CTX_set_srp_password,\n+SSL_CTX_set_srp_strength,\n+SSL_CTX_set_srp_cb_arg,\n+SSL_CTX_set_srp_username_callback,\n+SSL_CTX_set_srp_client_pwd_callback,\n+SSL_CTX_set_srp_verify_param_callback,\n+SSL_set_srp_server_param,\n+SSL_set_srp_server_param_pw,\n+SSL_get_srp_g,\n+SSL_get_srp_N,\n+SSL_get_srp_username,\n+SSL_get_srp_userinfo\n+- SRP control operations\n+\n+=head1 SYNOPSIS\n+\n+ #include <openssl/ssl.h>\n+\n+ int SSL_CTX_set_srp_username(SSL_CTX *ctx, char *name);\n+ int SSL_CTX_set_srp_password(SSL_CTX *ctx, char *password);\n+ int SSL_CTX_set_srp_strength(SSL_CTX *ctx, int strength);\n+ int SSL_CTX_set_srp_cb_arg(SSL_CTX *ctx, void *arg);\n+ int SSL_CTX_set_srp_username_callback(SSL_CTX *ctx,\n+                                       int (*cb) (SSL *s, int *ad, void *arg));\n+ int SSL_CTX_set_srp_client_pwd_callback(SSL_CTX *ctx,\n+                                         char *(*cb) (SSL *s, void *arg));\n+ int SSL_CTX_set_srp_verify_param_callback(SSL_CTX *ctx,\n+                                           int (*cb) (SSL *s, void *arg));\n+\n+ int SSL_set_srp_server_param(SSL *s, const BIGNUM *N, const BIGNUM *g,\n+                              BIGNUM *sa, BIGNUM *v, char *info);\n+ int SSL_set_srp_server_param_pw(SSL *s, const char *user, const char *pass,\n+                                 const char *grp);\n+ \n+ BIGNUM *SSL_get_srp_g(SSL *s);\n+ BIGNUM *SSL_get_srp_N(SSL *s);\n+\n+ char *SSL_get_srp_username(SSL *s);\n+ char *SSL_get_srp_userinfo(SSL *s);\n+\n+=head1 DESCRIPTION\n+\n+These functions provide access to SRP (Secure Remote Password) parameters,\n+an alternate authentication mechanism for TLS. SRP allows the use of user names\n+and passwords over unencrypted channels without revealing the password to an\n+eavesdropper. SRP also supplies a shared secret at the end of the authentication\n+sequence that can be used to generate encryption keys.\n+\n+The SRP protocol, version 3 is specified in RFC 2945. SRP version 6 is described\n+in RFC 5054 with applications to TLS authentication.\n+\n+The SSL_CTX_set_srp_username() function sets the SRP username for B<ctx>.\n+The length of B<name> must be shorter or equal to 255 characters.\n+\n+The SSL_CTX_set_srp_password() function sets the SRP password for B<ctx>.\n+This overrides the effect of SSL_CTX_set_srp_client_pwd_callback().","path":"doc/man3/SSL_CTX_set_srp_password.pod","position":61,"original_position":61,"commit_id":"91d2c83fe03d238270b9d07d8f336fae270afe5d","original_commit_id":"91d2c83fe03d238270b9d07d8f336fae270afe5d","user":{"login":"mattcaswell","id":7422273,"node_id":"MDQ6VXNlcjc0MjIyNzM=","avatar_url":"https://avatars0.githubusercontent.com/u/7422273?v=4","gravatar_id":"","url":"https://api.github.com/users/mattcaswell","html_url":"https://github.com/mattcaswell","followers_url":"https://api.github.com/users/mattcaswell/followers","following_url":"https://api.github.com/users/mattcaswell/following{/other_user}","gists_url":"https://api.github.com/users/mattcaswell/gists{/gist_id}","starred_url":"https://api.github.com/users/mattcaswell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattcaswell/subscriptions","organizations_url":"https://api.github.com/users/mattcaswell/orgs","repos_url":"https://api.github.com/users/mattcaswell/repos","events_url":"https://api.github.com/users/mattcaswell/events{/privacy}","received_events_url":"https://api.github.com/users/mattcaswell/received_events","type":"User","site_admin":false},"body":"Mention that this is a client side function.","created_at":"2018-10-31T17:24:50Z","updated_at":"2018-10-31T17:39:25Z","html_url":"https://github.com/openssl/openssl/pull/7522#discussion_r229792614","pull_request_url":"https://api.github.com/repos/openssl/openssl/pulls/7522","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/openssl/openssl/pulls/comments/229792614"},"html":{"href":"https://github.com/openssl/openssl/pull/7522#discussion_r229792614"},"pull_request":{"href":"https://api.github.com/repos/openssl/openssl/pulls/7522"}}},"pull_request":{"url":"https://api.github.com/repos/openssl/openssl/pulls/7522","id":226673048,"node_id":"MDExOlB1bGxSZXF1ZXN0MjI2NjczMDQ4","html_url":"https://github.com/openssl/openssl/pull/7522","diff_url":"https://github.com/openssl/openssl/pull/7522.diff","patch_url":"https://github.com/openssl/openssl/pull/7522.patch","issue_url":"https://api.github.com/repos/openssl/openssl/issues/7522","number":7522,"state":"open","locked":false,"title":"SSL documentation: SRP module and utilities","user":{"login":"evqna","id":1765423,"node_id":"MDQ6VXNlcjE3NjU0MjM=","avatar_url":"https://avatars0.githubusercontent.com/u/1765423?v=4","gravatar_id":"","url":"https://api.github.com/users/evqna","html_url":"https://github.com/evqna","followers_url":"https://api.github.com/users/evqna/followers","following_url":"https://api.github.com/users/evqna/following{/other_user}","gists_url":"https://api.github.com/users/evqna/gists{/gist_id}","starred_url":"https://api.github.com/users/evqna/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evqna/subscriptions","organizations_url":"https://api.github.com/users/evqna/orgs","repos_url":"https://api.github.com/users/evqna/repos","events_url":"https://api.github.com/users/evqna/events{/privacy}","received_events_url":"https://api.github.com/users/evqna/received_events","type":"User","site_admin":false},"body":"Documentation update for the SSL module and minor source nits.\r\n\r\nFocus mainly on the SRP functions (Secure remote password authentication) and related utilities in libcrypto (password verifier generation and file parsing) plus some extra low-hanging fruit.\r\n\r\nMissing a few libssl SRP functions (_SSL_SRP_CTX_init_, _SSL_srp_server_param_with_username_) but these seem to be internal functions of little interest to end users (unless I am mistaken).\r\n\r\n##### Checklist\r\n<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->\r\n- [x] documentation is added or updated\r\n- [ ] tests are added or updated\r\n","created_at":"2018-10-29T18:46:07Z","updated_at":"2018-10-31T17:39:24Z","closed_at":null,"merged_at":null,"merge_commit_sha":"24bd591f6a647d6f44634ea2f6b61989cf3c4d8c","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/openssl/openssl/pulls/7522/commits","review_comments_url":"https://api.github.com/repos/openssl/openssl/pulls/7522/comments","review_comment_url":"https://api.github.com/repos/openssl/openssl/pulls/comments{/number}","comments_url":"https://api.github.com/repos/openssl/openssl/issues/7522/comments","statuses_url":"https://api.github.com/repos/openssl/openssl/statuses/91d2c83fe03d238270b9d07d8f336fae270afe5d","head":{"label":"evqna:SSL_doc","ref":"SSL_doc","sha":"91d2c83fe03d238270b9d07d8f336fae270afe5d","user":{"login":"evqna","id":1765423,"node_id":"MDQ6VXNlcjE3NjU0MjM=","avatar_url":"https://avatars0.githubusercontent.com/u/1765423?v=4","gravatar_id":"","url":"https://api.github.com/users/evqna","html_url":"https://github.com/evqna","followers_url":"https://api.github.com/users/evqna/followers","following_url":"https://api.github.com/users/evqna/following{/other_user}","gists_url":"https://api.github.com/users/evqna/gists{/gist_id}","starred_url":"https://api.github.com/users/evqna/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evqna/subscriptions","organizations_url":"https://api.github.com/users/evqna/orgs","repos_url":"https://api.github.com/users/evqna/repos","events_url":"https://api.github.com/users/evqna/events{/privacy}","received_events_url":"https://api.github.com/users/evqna/received_events","type":"User","site_admin":false},"repo":{"id":149196829,"node_id":"MDEwOlJlcG9zaXRvcnkxNDkxOTY4Mjk=","name":"openssl","full_name":"evqna/openssl","private":false,"owner":{"login":"evqna","id":1765423,"node_id":"MDQ6VXNlcjE3NjU0MjM=","avatar_url":"https://avatars0.githubusercontent.com/u/1765423?v=4","gravatar_id":"","url":"https://api.github.com/users/evqna","html_url":"https://github.com/evqna","followers_url":"https://api.github.com/users/evqna/followers","following_url":"https://api.github.com/users/evqna/following{/other_user}","gists_url":"https://api.github.com/users/evqna/gists{/gist_id}","starred_url":"https://api.github.com/users/evqna/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evqna/subscriptions","organizations_url":"https://api.github.com/users/evqna/orgs","repos_url":"https://api.github.com/users/evqna/repos","events_url":"https://api.github.com/users/evqna/events{/privacy}","received_events_url":"https://api.github.com/users/evqna/received_events","type":"User","site_admin":false},"html_url":"https://github.com/evqna/openssl","description":"TLS/SSL and crypto library","fork":true,"url":"https://api.github.com/repos/evqna/openssl","forks_url":"https://api.github.com/repos/evqna/openssl/forks","keys_url":"https://api.github.com/repos/evqna/openssl/keys{/key_id}","collaborators_url":"https://api.github.com/repos/evqna/openssl/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/evqna/openssl/teams","hooks_url":"https://api.github.com/repos/evqna/openssl/hooks","issue_events_url":"https://api.github.com/repos/evqna/openssl/issues/events{/number}","events_url":"https://api.github.com/repos/evqna/openssl/events","assignees_url":"https://api.github.com/repos/evqna/openssl/assignees{/user}","branches_url":"https://api.github.com/repos/evqna/openssl/branches{/branch}","tags_url":"https://api.github.com/repos/evqna/openssl/tags","blobs_url":"https://api.github.com/repos/evqna/openssl/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/evqna/openssl/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/evqna/openssl/git/refs{/sha}","trees_url":"https://api.github.com/repos/evqna/openssl/git/trees{/sha}","statuses_url":"https://api.github.com/repos/evqna/openssl/statuses/{sha}","languages_url":"https://api.github.com/repos/evqna/openssl/languages","stargazers_url":"https://api.github.com/repos/evqna/openssl/stargazers","contributors_url":"https://api.github.com/repos/evqna/openssl/contributors","subscribers_url":"https://api.github.com/repos/evqna/openssl/subscribers","subscription_url":"https://api.github.com/repos/evqna/openssl/subscription","commits_url":"https://api.github.com/repos/evqna/openssl/commits{/sha}","git_commits_url":"https://api.github.com/repos/evqna/openssl/git/commits{/sha}","comments_url":"https://api.github.com/repos/evqna/openssl/comments{/number}","issue_comment_url":"https://api.github.com/repos/evqna/openssl/issues/comments{/number}","contents_url":"https://api.github.com/repos/evqna/openssl/contents/{+path}","compare_url":"https://api.github.com/repos/evqna/openssl/compare/{base}...{head}","merges_url":"https://api.github.com/repos/evqna/openssl/merges","archive_url":"https://api.github.com/repos/evqna/openssl/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/evqna/openssl/downloads","issues_url":"https://api.github.com/repos/evqna/openssl/issues{/number}","pulls_url":"https://api.github.com/repos/evqna/openssl/pulls{/number}","milestones_url":"https://api.github.com/repos/evqna/openssl/milestones{/number}","notifications_url":"https://api.github.com/repos/evqna/openssl/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/evqna/openssl/labels{/name}","releases_url":"https://api.github.com/repos/evqna/openssl/releases{/id}","deployments_url":"https://api.github.com/repos/evqna/openssl/deployments","created_at":"2018-09-17T22:38:49Z","updated_at":"2018-10-29T18:17:51Z","pushed_at":"2018-10-30T15:17:42Z","git_url":"git://github.com/evqna/openssl.git","ssh_url":"git@github.com:evqna/openssl.git","clone_url":"https://github.com/evqna/openssl.git","svn_url":"https://github.com/evqna/openssl","homepage":"https://www.openssl.org","size":158692,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"openssl:master","ref":"master","sha":"88e3cf0a1024f4afaf8e44553526eb326db102bc","user":{"login":"openssl","id":3279138,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMyNzkxMzg=","avatar_url":"https://avatars2.githubusercontent.com/u/3279138?v=4","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,"node_id":"MDEwOlJlcG9zaXRvcnk3NjM0Njc3","name":"openssl","full_name":"openssl/openssl","private":false,"owner":{"login":"openssl","id":3279138,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMyNzkxMzg=","avatar_url":"https://avatars2.githubusercontent.com/u/3279138?v=4","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},"html_url":"https://github.com/openssl/openssl","description":"TLS/SSL and crypto library","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}","deployments_url":"https://api.github.com/repos/openssl/openssl/deployments","created_at":"2013-01-15T22:34:48Z","updated_at":"2018-10-31T15:18:26Z","pushed_at":"2018-10-31T15:09:47Z","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":"https://www.openssl.org","size":159853,"stargazers_count":8548,"watchers_count":8548,"language":"C","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3925,"mirror_url":null,"archived":false,"open_issues_count":570,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":3925,"open_issues":570,"watchers":8548,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/openssl/openssl/pulls/7522"},"html":{"href":"https://github.com/openssl/openssl/pull/7522"},"issue":{"href":"https://api.github.com/repos/openssl/openssl/issues/7522"},"comments":{"href":"https://api.github.com/repos/openssl/openssl/issues/7522/comments"},"review_comments":{"href":"https://api.github.com/repos/openssl/openssl/pulls/7522/comments"},"review_comment":{"href":"https://api.github.com/repos/openssl/openssl/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/openssl/openssl/pulls/7522/commits"},"statuses":{"href":"https://api.github.com/repos/openssl/openssl/statuses/91d2c83fe03d238270b9d07d8f336fae270afe5d"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"mattcaswell"}}