Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1175)

Issue 3495005: Prototype OpenSSL client socket implementation. (Closed)

Created:
10 years, 3 months ago by joth
Modified:
9 years, 7 months ago
Reviewers:
wtc, bulach, agl
CC:
chromium-reviews, cbentzel+watch_chromium.org, darin-cc_chromium.org, ben+cc_chromium.org, brettw-cc_chromium.org
Visibility:
Public.

Description

First step at OpenSSL client socket implementation. This is early in-progress implementation, no cert handling supported. So only available under a build-time flag. (GYP_DEFINES="'use_openssl=1'") Adds a new build dependency for system OpenSSL libraries, and a new USE_OPENSSL define. Eventually this will disable USE_NSS but for now the two coexist. BUG=none TEST=build with use_openssl=1. Goto some https:// pages. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=60936

Patch Set 1 #

Patch Set 2 : comments update #

Total comments: 14

Patch Set 3 : agl comments #

Patch Set 4 : error handling improvements #

Total comments: 28

Patch Set 5 : bulach comments #

Patch Set 6 : fix checkdeps #

Total comments: 10

Patch Set 7 : agl comments no. 2 #

Total comments: 21
Unified diffs Side-by-side diffs Delta from patch set Stats (+807 lines, -4 lines) Patch
M build/common.gypi View 5 1 chunk +3 lines, -0 lines 0 comments Download
M build/linux/system.gyp View 1 2 3 4 5 6 5 chunks +26 lines, -4 lines 2 comments Download
M net/net.gyp View 3 chunks +16 lines, -0 lines 0 comments Download
M net/socket/client_socket_factory.cc View 2 chunks +4 lines, -0 lines 0 comments Download
A net/socket/ssl_client_socket_openssl.h View 1 2 3 4 5 6 1 chunk +137 lines, -0 lines 2 comments Download
A net/socket/ssl_client_socket_openssl.cc View 1 2 3 4 5 6 1 chunk +621 lines, -0 lines 17 comments Download

Messages

Total messages: 12 (0 generated)
agl
Just a quick review. The use of memory BIOs leads me to suspect that the ...
10 years, 3 months ago (2010-09-24 18:48:02 UTC) #1
joth
Thanks for the comments Adam, I've fixed them all plus made a first cut at ...
10 years, 2 months ago (2010-09-27 16:34:28 UTC) #2
joth
On 27 September 2010 17:34, <joth@chromium.org> wrote: > Reviewers: agl, > > Message: > Thanks ...
10 years, 2 months ago (2010-09-27 16:46:31 UTC) #3
agl
On Mon, Sep 27, 2010 at 12:34 PM, <joth@chromium.org> wrote: > Message: > Thanks for ...
10 years, 2 months ago (2010-09-27 16:49:38 UTC) #4
bulach
I can't review (yet) the actual implementation, agl is definitely the expert here. some nits ...
10 years, 2 months ago (2010-09-27 17:23:16 UTC) #5
joth
Thanks! all points addressed or responded to... http://codereview.chromium.org/3495005/diff/9001/10002 File net/net.gyp (right): http://codereview.chromium.org/3495005/diff/9001/10002#newcode543 net/net.gyp:543: 'socket/ssl_client_socket_openssl.cc', On ...
10 years, 2 months ago (2010-09-27 18:56:35 UTC) #6
agl
Obviously incomplete, but LGTM so far. http://codereview.chromium.org/3495005/diff/21001/22002 File build/linux/system.gyp (right): http://codereview.chromium.org/3495005/diff/21001/22002#newcode339 build/linux/system.gyp:339: '-lcrypto -lssl', Why ...
10 years, 2 months ago (2010-09-27 22:00:46 UTC) #7
joth
Thanks, all comments addressed. Just to check, was that an "LGTM" to go ahead and ...
10 years, 2 months ago (2010-09-28 13:04:59 UTC) #8
agl
LGTM On Sep 28, 2010 9:05 AM, <joth@chromium.org> wrote: > Thanks, all comments addressed. Just ...
10 years, 2 months ago (2010-09-28 13:16:03 UTC) #9
wtc
LGTM. I have some suggested changes below. (Note especially the comment marked with "BUG".) You ...
10 years, 2 months ago (2010-09-28 18:08:35 UTC) #10
joth
Thanks! Addressed almost all comments, not sure on how to improve the bogus cert creation. ...
10 years, 2 months ago (2010-09-29 11:58:54 UTC) #11
wtc
10 years, 2 months ago (2010-09-29 18:21:05 UTC) #12
http://codereview.chromium.org/3495005/diff/27001/28005
File net/socket/ssl_client_socket_openssl.cc (right):

http://codereview.chromium.org/3495005/diff/27001/28005#newcode142
net/socket/ssl_client_socket_openssl.cc:142: ssl_info->cert =
X509Certificate::CreateFromBytes(
On 2010/09/29 11:58:54, joth wrote:
>
> Hmmm couldn't find any reference to X509 in gears or chrome_frame, just in
test
> code, which didn't cover the needs for here.
> It's already covered by a TODO to delete this anyway, but if you have a link
for
> the better hack I'll gladly update it.

I should have said more about how to find those files
because their file names don't say "gears" or "chrome_frame".
Sorry about that.

Search for "Chrome Internal" in the chromium source tree.
You will find:
gears: src\chrome\common\net\url_request_intercept_job.cc
chrome frame: src\chrome\browser\automation\url_request_automation_job.cc

Powered by Google App Engine
This is Rietveld 408576698