• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Changelog
2
32.2.0-pre (This version)
4
5Major changes
6
7All code has been reformatted to be consistent. A .clang-format file and format.sh script has been added that can be use to verify and enforce consistent formatting. An automated check on code formatting is now part of travis build.
8
9Other changes
10
11PR #409 - Compatibilty with LibreSSL
12
13PR #406 - Fix unprotect when pktlen < (2*mki_size + tag_len)
14
15PR #405 - Prevent potential double free
16
17PR #404 - Add back extern to global variables
18
19PR #403 - Set gcm IV directly with EVP_CipherInit_ex
20
21PR #401 - Fix memory access issue in srtp_get_session_keys()
22
23PR #398 - Fix memory access fixes when invalid profiles where used
24
25PR #391 - Return NULL when allocating memory of size zero
26
27PR #390 - Bitvector of length zero is not valid
28
29PR #385 - Treat warnings as errors on travis builds
30
31PR #388 - Moved externs from crypto_kernel into its own header
32
33PR #379 - Fixed several compiler warnings from Firefox builds
34
35PR #377 - Removed variable init code in rdbx which never gets used
36
37PR #381 - Added error in case the platform is not detected
38
39PR #376 - Add coverity scan to travis builds
40
41PR #374 - Add a big endian build on travis
42
43PR #373 - Fixed buffer size issue in test/srtp_driver.c
44
45PR #372 - Make rtp_decoder compile on MinGW
46
47PR #367 - Rename configure.in to configure.ac
48
49PR #365 - Replace calls to free() with srtp_crypto_free()
50
51PR #364 - Add valgrind to travis and fix leaks in tests
52
53PR #363 - Change smtp_crypto_alloc to initialize memory to zero
54
55PR #354 - Fix potential leak if cloning of stream fails
56
57PR #340 - Fix potential leak in srtp_add_stream()
58
59PR #323 - Fix running test in out of source builds
60
61Issue #316  - Remove VERSION file
62
632.1.0
64
65Compatibility changes
66
67  PR #253 - Cipher type cleanup for AES
68    When libSRTP is compiled with OpenSSL and the AES 256 ICM cipher is used
69    with RTCP an incorrect initialization vector is formed.
70    This change will break backwards compatibility with older versions (1.5,
71    2.0) of libSRTP when using the AES 256 ICM cipher with OpenSSL for RTCP.
72
73  PR #259 - Sequence number incorrectly masked for AES GCM IV
74    The initialization vector for AES GCM encryption was incorrectly formed on
75    little endian machines.
76    This change will break backwards compatibility with older versions (1.5,
77    2.0) of libSRTP when using the AES GCM cipher for RTCP.
78
79  PR #287 - Fix OOB read in key generation for encrypted headers with GCM ciphers
80    Adds padding of GCM salt to the corresponding ICM length used for header
81    encryption.
82    This change will break backwards compatibility with version 2.0 of libSRTP
83    when using the header encryption extension with the AES GCM cipher.
84
85Major changes
86
87  PR #204 - OpenSSL performance improvements
88    Changed key expansion to occur once per key instead of once per packet.
89
90  PR #209 - Restore AES-192 under BoringSSL
91    BoringSSL supports AES-192 and is now enabled in libSRTP.
92
93  PR #224 - Master Key Identifiers (MKI) Support patch
94    Adds MKI support with up to 4 keys.
95
96  PR #234 - Report SSRC instead of srtp_stream_t in srtp_event_data_t
97    srtp_stream_t is an opaque type making the event framework almost useless.
98    Now the SSRC is returned instead for use as a key in the public API.
99
100  PR #238 - Configure changes and improvements
101    CFLAGS check more shell neutral, quotation fixes, always generate and
102    install pkg-config file, improved OpenSSL discovery and linking, remove
103    -fPIC flag on Windows, fix shared library generation under Cygwin, replace
104    hardcoded CFLAGS with compiler checks, and regenerate configure after
105    configure.in changes.
106
107  PR #241 & PR #261 - Improved logging API to receive log messages from libSRTP
108    Provides a logging API and the ability to enable logging to stdout and a
109    file, as well as a switch to enable all internal debug modules.
110
111  PR #289 - Added support for set and get the roll-over-counter
112    Adds an API to set and get the ROC in an (S)RTP session.
113
114  PR #304 - Fix (S)RTP and (S)RTCP for big endian machines
115    The structures srtp_hdr_t, srtcp_hdr_t and srtcp_trailer_t were defined
116    incorrectly on big endian systems.
117
118Other changes
119
120  PR #149 - Don't create a symlink if there is no $(SHAREDLIBVERSION)
121
122  PR #151 - Make srtp_driver compile for MIPS
123
124  PR #160 - Use PKG_PROG_PKG_CONFIG to find correct pkg-config
125
126  PR #167 - Additional RTCP and SRTCP tests
127
128  PR #169 - Identified merge conflict created by commit 6b71fb9
129
130  PR #173 - Avoid error 'possibly undefined macro: AM_PROG_AR'
131
132  PR #174 - Avoid warning 'The macro AC_TRY_LINK is obsolete.'
133
134  PR #175 - Remove 2nd -fPIC
135
136  PR #182 - Add a length check before reading packet data
137
138  PR #191 - On debug, output correct endianness of SSRC
139
140  PR #192 - Replace octet_string_is_eq with a constant-time implementation
141
142  PR #195 - Add missing __cplusplus header guards
143
144  PR #198 - Update sha1_driver.c to avoid memory leaks
145
146  PR #202 - Add an explicit cast to avoid a printf format warning on macOS
147
148  PR #205 - Update Windows build files to Visual Studio 2015
149
150  PR #207 - Fix to install-win.bat syntax, and add installation of x64 libraries
151
152  PR #208 - Make replace_cipher and replace_auth public again
153
154  PR #211 - Changes for OpenSSL 1.1.0 compatibility
155
156  PR #213 - Add cast to `unsigned int` in call to printf in test
157
158  PR #214 - Avoid empty initializer braces
159
160  PR #222 - Fix issue: No consistency when use some srtp_* functions
161
162  PR #231 - Advance version on master in preparation for 2.1 release
163
164  PR #232 - Update Travis, do not build with OpenSSL on OSX
165
166  PR #233 - crypto/replay/rdbx.c: Return type of srtp_index_guess from int to
167    int32_t
168
169  PR #236 - test/rtp_decoder.c: Removed superfluous conditional
170
171  PR #237 - test/rtp_decoder.c: spring cleaning
172
173  PR #239 - octet_string_set_to_zero() delegates to OPENSSL_cleanse() if
174    available, if not it will use srtp_cleanse() to zero memory
175
176  PR #243 - EKT is not really supported yet, remove from install
177
178  PR #244 - Add simple error checking in timing test to avoid false results
179
180  PR #245 - Add missing srtp_cipher_dealloc calls when test fails
181
182  PR #246 - test/rtp_decoder: Add missing conditional
183
184  PR #248 - New README.md that integrates intro, credits and references from
185    /doc/ and is used to generate documentation
186
187  PR #249 - Remove support for generic aesicm from configure.in
188
189  PR #250 - Update README.md, incorrect tag for link
190
191  PR #255 - Cleanup outdated comment related to MKI
192
193  PR #258 - Add AES-GCM to DTLS-SRTP Protection Profiles
194
195  PR #263 - Cleaning up and removing duplicated and outdated code
196
197  PR #265 - Introduction of unit test framework: CUTest
198
199  PR #267 - crypto/kernel/err.c: Include datatypes.h
200
201  PR #272 - Reduce literal constants
202
203  PR #273 - SRTP AEAD SRTCP initialization vector regression tests
204
205  PR #274 - Update Travis build - add ccache
206
207  PR #276 - Reference and docs updates
208
209  PR #278 - Removed crypto/test/auth_driver.c and test/lfsr.c
210
211  PR #279 - Bump copyright year
212
213  PR #283 - Add missing docs in srtp.h
214
215  PR #284 - Add strict-prototypes warning if supported
216
217  PR #291 - Use const char * for srtp_set_debug_module()
218
219  PR #294 - Fix incorrect result of rdb_increment on overflow
220
221  PR #300 - Standalone tests
222
223  PR #301 - Configure fixes
224
225  PR #302 - Fix warning regarding unused variable
226
227  PR #303 - Makefile.in: Add gnu as match for shared lib suffix
228