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

Issue 889083003: Update libsrtp to upstream 1.5.0 (Closed)

Created:
5 years, 10 months ago by fancycode
Modified:
5 years, 10 months ago
Base URL:
https://chromium.googlesource.com/chromium/deps/libsrtp@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Update libsrtp to upstream 1.5.0 With this change, libsrtp can use OpenSSL crypto primitives, which is enabled in the .gyp file if compiled against OpenSSL/BoringSSL. This gives a nice speed improvement for SRTP as used by WebRTC. With my test, relative CPU usage drops from ~36% each for SrtpProtect/-Unprotect down to ~15% each. I tried to not change the upstream code too much regarding code layout (whitespaces, indent) while re-applying the Chromium changes. Timings without the CL: ------------------------------------------------------- $ ./out/Release/srtp_test_cipher_driver -t cipher test driver David A. McGrew Cisco Systems, Inc. timing null cipher throughput, key length 0: msg len: 32 gigabits per second: 25.477707 msg len: 64 gigabits per second: 94.885100 msg len: 128 gigabits per second: 222.802437 msg len: 256 gigabits per second: 375.297783 msg len: 512 gigabits per second: 770.069562 msg len: 1024 gigabits per second: 1722.093757 msg len: 2048 gigabits per second: 3527.993109 timing aes integer counter mode throughput, key length 30: msg len: 32 gigabits per second: 0.626706 msg len: 64 gigabits per second: 0.632999 msg len: 128 gigabits per second: 0.646651 msg len: 256 gigabits per second: 0.610196 msg len: 512 gigabits per second: 0.623500 msg len: 1024 gigabits per second: 0.648507 msg len: 2048 gigabits per second: 0.649695 timing aes integer counter mode throughput, key length 46: msg len: 32 gigabits per second: 0.462445 msg len: 64 gigabits per second: 0.466739 msg len: 128 gigabits per second: 0.445170 msg len: 256 gigabits per second: 0.436243 msg len: 512 gigabits per second: 0.465987 msg len: 1024 gigabits per second: 0.472398 msg len: 2048 gigabits per second: 0.474392 Timings with the CL: ------------------------------------------------------- $ ./out/Release/srtp_test_cipher_driver -t cipher test driver David A. McGrew Cisco Systems, Inc. timing null cipher throughput, key length 0: msg len: 32 gigabits per second: 21.317345 msg len: 64 gigabits per second: 105.155063 msg len: 128 gigabits per second: 232.252211 msg len: 256 gigabits per second: 427.022519 msg len: 512 gigabits per second: 840.032814 msg len: 1024 gigabits per second: 1907.334109 msg len: 2048 gigabits per second: 3803.156917 timing AES-128 counter mode using openssl throughput, key length 30: msg len: 32 gigabits per second: 0.406409 msg len: 64 gigabits per second: 0.520612 msg len: 128 gigabits per second: 1.563435 msg len: 256 gigabits per second: 2.044086 msg len: 512 gigabits per second: 2.457887 msg len: 1024 gigabits per second: 2.688393 msg len: 2048 gigabits per second: 2.807566 timing AES-256 counter mode using openssl throughput, key length 46: msg len: 32 gigabits per second: 0.320314 msg len: 64 gigabits per second: 0.392381 msg len: 128 gigabits per second: 1.230553 msg len: 256 gigabits per second: 1.561504 msg len: 512 gigabits per second: 1.834276 msg len: 1024 gigabits per second: 2.010586 msg len: 2048 gigabits per second: 2.109853 timing AES-128 GCM using openssl throughput, key length 28: msg len: 32 gigabits per second: 0.187080 msg len: 64 gigabits per second: 0.283558 msg len: 128 gigabits per second: 0.650450 msg len: 256 gigabits per second: 0.900447 msg len: 512 gigabits per second: 1.109531 msg len: 1024 gigabits per second: 1.253113 msg len: 2048 gigabits per second: 1.268890 timing AES-256 GCM using openssl throughput, key length 44: msg len: 32 gigabits per second: 0.126774 msg len: 64 gigabits per second: 0.169385 msg len: 128 gigabits per second: 0.370561 msg len: 256 gigabits per second: 0.534079 msg len: 512 gigabits per second: 0.683315 msg len: 1024 gigabits per second: 0.779735 msg len: 2048 gigabits per second: 0.824227 BUG=328475

Patch Set 1 #

Patch Set 2 : Raw 1.5.0 changes #

Patch Set 3 : Minimal changes against upstream 1.5.0 #

Total comments: 1

Patch Set 4 : Re-added additional header check #

Patch Set 5 : Updated to libsrtp 1.5.1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+5235 lines, -1753 lines) Patch
M README.chromium View 1 2 3 4 2 chunks +10 lines, -7 lines 0 comments Download
M config/config.h View 1 2 3 4 1 chunk +10 lines, -2 lines 0 comments Download
M libsrtp.gyp View 1 2 3 4 8 chunks +55 lines, -4 lines 0 comments Download
D srtp/.cvsignore View 1 chunk +0 lines, -7 lines 0 comments Download
A srtp/.gitignore View 1 2 3 4 1 chunk +48 lines, -0 lines 0 comments Download
M srtp/CHANGES View 1 2 3 4 1 chunk +44 lines, -0 lines 0 comments Download
D srtp/Makefile View 1 2 3 4 1 chunk +0 lines, -237 lines 0 comments Download
M srtp/Makefile.in View 1 2 3 4 11 chunks +91 lines, -20 lines 0 comments Download
M srtp/README View 1 2 3 4 6 chunks +14 lines, -6 lines 0 comments Download
M srtp/VERSION View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
D srtp/crypto/Makefile View 1 2 3 4 1 chunk +0 lines, -137 lines 0 comments Download
M srtp/crypto/Makefile.in View 1 2 3 4 4 chunks +14 lines, -40 lines 0 comments Download
M srtp/crypto/ae_xfm/xfm.c View 1 2 3 4 1 chunk +0 lines, -605 lines 0 comments Download
M srtp/crypto/cipher/aes.c View 1 2 3 4 19 chunks +106 lines, -21 lines 0 comments Download
M srtp/crypto/cipher/aes_cbc.c View 1 2 3 4 10 chunks +46 lines, -21 lines 0 comments Download
A srtp/crypto/cipher/aes_gcm_ossl.c View 1 2 3 4 1 chunk +570 lines, -0 lines 0 comments Download
M srtp/crypto/cipher/aes_icm.c View 1 2 3 4 12 chunks +44 lines, -18 lines 0 comments Download
A srtp/crypto/cipher/aes_icm_ossl.c View 1 2 3 4 1 chunk +563 lines, -0 lines 0 comments Download
M srtp/crypto/cipher/cipher.c View 1 15 chunks +105 lines, -14 lines 0 comments Download
M srtp/crypto/cipher/null_cipher.c View 1 6 chunks +12 lines, -2 lines 0 comments Download
M srtp/crypto/hash/auth.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
M srtp/crypto/hash/hmac.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
A srtp/crypto/hash/hmac_ossl.c View 1 2 3 4 1 chunk +302 lines, -0 lines 0 comments Download
M srtp/crypto/hash/null_auth.c View 1 1 chunk +3 lines, -0 lines 0 comments Download
M srtp/crypto/hash/sha1.c View 1 1 chunk +3 lines, -0 lines 0 comments Download
M srtp/crypto/include/aes.h View 1 1 chunk +0 lines, -2 lines 0 comments Download
M srtp/crypto/include/aes_cbc.h View 1 2 3 4 3 chunks +5 lines, -2 lines 0 comments Download
A + srtp/crypto/include/aes_gcm_ossl.h View 2 chunks +19 lines, -13 lines 0 comments Download
M srtp/crypto/include/aes_icm.h View 1 2 3 4 4 chunks +6 lines, -2 lines 0 comments Download
A + srtp/crypto/include/aes_icm_ossl.h View 1 2 3 4 2 chunks +35 lines, -42 lines 0 comments Download
M srtp/crypto/include/cipher.h View 7 chunks +36 lines, -12 lines 0 comments Download
M srtp/crypto/include/crypto.h View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M srtp/crypto/include/crypto_kernel.h View 1 chunk +2 lines, -1 line 0 comments Download
M srtp/crypto/include/crypto_types.h View 2 chunks +29 lines, -1 line 0 comments Download
M srtp/crypto/include/datatypes.h View 1 2 3 4 6 chunks +13 lines, -4 lines 0 comments Download
M srtp/crypto/include/err.h View 1 2 3 4 5 chunks +6 lines, -5 lines 0 comments Download
M srtp/crypto/include/hmac.h View 2 chunks +5 lines, -1 line 0 comments Download
M srtp/crypto/include/integers.h View 1 3 chunks +2 lines, -3 lines 0 comments Download
M srtp/crypto/include/kernel_compat.h View 1 3 4 1 chunk +1 line, -1 line 0 comments Download
M srtp/crypto/include/prng.h View 1 2 3 4 2 chunks +6 lines, -0 lines 0 comments Download
M srtp/crypto/include/rdb.h View 1 2 3 4 2 chunks +2 lines, -1 line 0 comments Download
M srtp/crypto/include/rdbx.h View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M srtp/crypto/include/sha1.h View 1 2 3 4 2 chunks +40 lines, -0 lines 0 comments Download
M srtp/crypto/include/xfm.h View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M srtp/crypto/kernel/alloc.c View 1 2 3 4 3 chunks +9 lines, -3 lines 0 comments Download
M srtp/crypto/kernel/crypto_kernel.c View 1 3 4 10 chunks +31 lines, -4 lines 0 comments Download
M srtp/crypto/kernel/err.c View 1 2 3 4 4 chunks +7 lines, -3 lines 0 comments Download
M srtp/crypto/kernel/key.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
M srtp/crypto/math/datatypes.c View 1 2 3 4 3 chunks +36 lines, -185 lines 0 comments Download
M srtp/crypto/math/gf2_8.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
M srtp/crypto/math/math.c View 1 3 4 2 chunks +5 lines, -1 line 0 comments Download
M srtp/crypto/math/stat.c View 1 2 3 4 2 chunks +5 lines, -0 lines 0 comments Download
M srtp/crypto/replay/rdb.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
M srtp/crypto/replay/rdbx.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
M srtp/crypto/replay/ut_sim.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
M srtp/crypto/rng/ctr_prng.c View 1 3 chunks +9 lines, -3 lines 0 comments Download
M srtp/crypto/rng/prng.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
A + srtp/crypto/rng/rand_source_ossl.c View 1 2 chunks +32 lines, -19 lines 0 comments Download
M srtp/crypto/test/aes_calc.c View 1 2 3 4 3 chunks +6 lines, -1 line 0 comments Download
M srtp/crypto/test/cipher_driver.c View 1 2 3 4 13 chunks +102 lines, -14 lines 0 comments Download
M srtp/crypto/test/datatypes_driver.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
M srtp/crypto/test/env.c View 3 chunks +4 lines, -0 lines 0 comments Download
M srtp/crypto/test/kernel_driver.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
M srtp/crypto/test/rand_gen.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
A + srtp/crypto/test/rand_gen_soak.c View 1 2 3 4 2 chunks +64 lines, -73 lines 0 comments Download
M srtp/crypto/test/sha1_driver.c View 1 1 chunk +6 lines, -0 lines 0 comments Download
M srtp/crypto/test/stat_driver.c View 1 2 3 4 7 chunks +81 lines, -9 lines 0 comments Download
D srtp/doc/Makefile View 1 2 3 4 1 chunk +0 lines, -44 lines 0 comments Download
A srtp/doc/libsrtp.pdf View Binary file 0 comments Download
M srtp/include/srtp.h View 1 2 3 4 9 chunks +264 lines, -4 lines 0 comments Download
M srtp/include/srtp_priv.h View 1 4 chunks +14 lines, -1 line 0 comments Download
M srtp/install-win.bat View 1 2 3 4 1 chunk +31 lines, -31 lines 0 comments Download
M srtp/srtp.def View 1 chunk +0 lines, -1 line 0 comments Download
M srtp/srtp/ekt.c View 1 3 4 7 chunks +7 lines, -6 lines 0 comments Download
M srtp/srtp/srtp.c View 1 2 3 4 46 chunks +1083 lines, -56 lines 0 comments Download
M srtp/tables/aes_tables.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
M srtp/test/lfsr.c View 1 2 3 4 2 chunks +5 lines, -5 lines 0 comments Download
M srtp/test/rdbx_driver.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
M srtp/test/replay_driver.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
M srtp/test/roc_driver.c View 1 1 chunk +4 lines, -0 lines 0 comments Download
M srtp/test/rtp.c View 1 2 3 4 2 chunks +1 line, -1 line 0 comments Download
A + srtp/test/rtp_decoder.h View 1 2 3 4 2 chunks +69 lines, -24 lines 0 comments Download
A srtp/test/rtp_decoder.c View 1 2 3 4 1 chunk +515 lines, -0 lines 0 comments Download
M srtp/test/rtpw.c View 1 2 3 4 10 chunks +123 lines, -19 lines 0 comments Download
M srtp/test/rtpw_test.sh View 1 2 3 4 3 chunks +53 lines, -2 lines 0 comments Download
A srtp/test/rtpw_test_gcm.sh View 1 2 3 4 1 chunk +237 lines, -0 lines 0 comments Download
M srtp/test/srtp_driver.c View 8 chunks +125 lines, -12 lines 0 comments Download

Messages

Total messages: 28 (6 generated)
fancycode
ptal
5 years, 10 months ago (2015-01-31 01:10:20 UTC) #1
fancycode
On 2015/01/31 01:10:20, fancycode wrote: > ptal ping?
5 years, 10 months ago (2015-02-06 10:15:38 UTC) #3
jiayl
On 2015/02/06 10:15:38, fancycode wrote: > On 2015/01/31 01:10:20, fancycode wrote: > > ptal > ...
5 years, 10 months ago (2015-02-06 16:56:08 UTC) #4
juberti2
On 2015/02/06 16:56:08, jiayl wrote: > On 2015/02/06 10:15:38, fancycode wrote: > > On 2015/01/31 ...
5 years, 10 months ago (2015-02-06 19:21:14 UTC) #6
fancycode
On 2015/02/06 19:21:14, juberti2 wrote: > Can you upload a patchset with just the raw ...
5 years, 10 months ago (2015-02-08 11:54:02 UTC) #8
fancycode
On 2015/02/08 11:54:02, fancycode wrote: > On 2015/02/06 19:21:14, juberti2 wrote: > > Can you ...
5 years, 10 months ago (2015-02-16 15:06:44 UTC) #9
juberti2
On 2015/02/16 15:06:44, fancycode wrote: > On 2015/02/08 11:54:02, fancycode wrote: > > On 2015/02/06 ...
5 years, 10 months ago (2015-02-18 18:54:30 UTC) #10
fancycode
On 2015/02/18 18:54:30, juberti2 wrote: > Can you make sure this info all is present ...
5 years, 10 months ago (2015-02-18 20:39:18 UTC) #11
juberti2
On 2015/02/18 20:39:18, fancycode wrote: > On 2015/02/18 18:54:30, juberti2 wrote: > > Can you ...
5 years, 10 months ago (2015-02-18 21:10:03 UTC) #12
fancycode
On 2015/02/18 21:10:03, juberti2 wrote: > I would like to keep this as close to ...
5 years, 10 months ago (2015-02-18 23:05:17 UTC) #13
fancycode
On 2015/02/18 23:05:17, fancycode wrote: > I'll try to push the missing copyright headers and ...
5 years, 10 months ago (2015-02-18 23:35:53 UTC) #14
juberti2
We probably want to try to upstream INLINE too; I imagine others will want to ...
5 years, 10 months ago (2015-02-18 23:42:55 UTC) #15
fancycode
On 2015/02/18 23:42:55, juberti2 wrote: > We probably want to try to upstream INLINE too; ...
5 years, 10 months ago (2015-02-19 00:00:34 UTC) #16
fancycode
Additional header check also provided upstream: https://github.com/cisco/libsrtp/pull/95
5 years, 10 months ago (2015-02-19 00:39:24 UTC) #17
fancycode
All pull requests (additional RTP header check, support for BoringSSL and missing copyright headers) have ...
5 years, 10 months ago (2015-02-19 14:36:20 UTC) #18
juberti2
On 2015/02/19 14:36:20, fancycode wrote: > All pull requests (additional RTP header check, support for ...
5 years, 10 months ago (2015-02-19 16:56:44 UTC) #19
fancycode
On 2015/02/19 16:56:44, juberti2 wrote: > On 2015/02/19 14:36:20, fancycode wrote: > > All pull ...
5 years, 10 months ago (2015-02-19 17:51:00 UTC) #20
juberti2
lgtm jiayl, can you land this?
5 years, 10 months ago (2015-02-19 19:44:48 UTC) #21
commit-bot: I haz the power
Commit queue rejected this change because it did not recognize the base URL. Please commit ...
5 years, 10 months ago (2015-02-19 19:51:42 UTC) #24
jiayl
I failed to land using "git cl land" with this error: fatal: remote error: Git ...
5 years, 10 months ago (2015-02-19 20:18:37 UTC) #26
kjellander_chromium
On 2015/02/19 20:18:37, jiayl wrote: > I failed to land using "git cl land" with ...
5 years, 10 months ago (2015-02-22 18:16:56 UTC) #27
jiayl
5 years, 10 months ago (2015-02-23 19:17:28 UTC) #28

Powered by Google App Engine
This is Rietveld 408576698