Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
B
brpc
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
brpc
Commits
90a44b82
Commit
90a44b82
authored
Oct 23, 2017
by
old-bear
Browse files
Options
Browse Files
Download
Plain Diff
+ Use openssl instead of curl to test SNI
parents
25a567d4
64251957
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
17 additions
and
9 deletions
+17
-9
brpc_server_unittest.cpp
test/brpc_server_unittest.cpp
+17
-9
No files found.
test/brpc_server_unittest.cpp
View file @
90a44b82
...
...
@@ -1283,10 +1283,18 @@ TEST_F(ServerTest, too_big_message) {
server
.
Join
();
}
void
CheckCert
(
const
char
*
address
,
const
char
*
cert
)
{
struct
EchoOpensslMsg
{};
inline
std
::
ostream
&
operator
<<
(
std
::
ostream
&
os
,
EchoOpensslMsg
)
{
std
::
ifstream
t
(
"openssl.msg"
);
return
os
<<
"============ The output of previous openssl ============
\n
"
<<
t
.
rdbuf
()
<<
"
\n
============ The output ends here ============
\n
"
;
}
void
CheckCert
(
const
char
*
cname
,
const
char
*
cert
)
{
std
::
string
cmd
=
butil
::
string_printf
(
"/usr/bin/curl -Ikv https://%s"
,
address
);
ASSERT_EQ
(
0
,
system
(
cmd
.
c_str
()));
"echo 'Q' | openssl s_client -connect localhost:8613 "
"-servername %s > openssl.msg && grep %s openssl.msg"
,
cname
,
cert
);
ASSERT_EQ
(
0
,
system
(
cmd
.
c_str
()))
<<
EchoOpensslMsg
();
}
std
::
string
GetRawPemString
(
const
char
*
fname
)
{
...
...
@@ -1316,10 +1324,10 @@ TEST_F(ServerTest, ssl_sni) {
options
.
ssl_options
.
certs
.
push_back
(
cert
);
}
ASSERT_EQ
(
0
,
server
.
Start
(
8613
,
&
options
));
CheckCert
(
"localhost
:8613
"
,
"cert1"
);
CheckCert
(
"localhost"
,
"cert1"
);
#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
CheckCert
(
"localhost.localdomain
:8613
"
,
"cert2"
);
CheckCert
(
"localhost.localdomain"
,
"cert2"
);
#endif // SSL_CTRL_SET_TLSEXT_HOSTNAME
server
.
Stop
(
0
);
...
...
@@ -1337,7 +1345,7 @@ TEST_F(ServerTest, ssl_reload) {
options
.
ssl_options
.
default_cert
=
cert
;
}
ASSERT_EQ
(
0
,
server
.
Start
(
8613
,
&
options
));
CheckCert
(
"localhost
:8613
"
,
"cert1"
);
CheckCert
(
"localhost"
,
"cert1"
);
{
brpc
::
CertInfo
cert
;
...
...
@@ -1347,7 +1355,7 @@ TEST_F(ServerTest, ssl_reload) {
ASSERT_EQ
(
0
,
server
.
AddCertificate
(
cert
));
}
#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
CheckCert
(
"localhost.localdomain
:8613
"
,
"cert2"
);
CheckCert
(
"localhost.localdomain"
,
"cert2"
);
#endif // SSL_CTRL_SET_TLSEXT_HOSTNAME
{
...
...
@@ -1357,7 +1365,7 @@ TEST_F(ServerTest, ssl_reload) {
ASSERT_EQ
(
0
,
server
.
RemoveCertificate
(
cert
));
}
#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
CheckCert
(
"localhost.localdomain
:8613
"
,
"cert1"
);
CheckCert
(
"localhost.localdomain"
,
"cert1"
);
#endif // SSL_CTRL_SET_TLSEXT_HOSTNAME
{
...
...
@@ -1370,7 +1378,7 @@ TEST_F(ServerTest, ssl_reload) {
ASSERT_EQ
(
0
,
server
.
ResetCertificates
(
certs
));
}
#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
CheckCert
(
"localhost.localdomain
:8613
"
,
"cert2"
);
CheckCert
(
"localhost.localdomain"
,
"cert2"
);
#endif // SSL_CTRL_SET_TLSEXT_HOSTNAME
server
.
Stop
(
0
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment