ChangeLog 77 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846
  1. Release 4.7.0
  2. Changelist:
  3. - [BREAKING] Remove support for openssl older than 1.1.1 (#1397) (Michael Jones <[email protected]>)
  4. - [BREAKING] Cleanup deprecated options (#1599) (Pavel Punsky <[email protected]>)
  5. - [BREAKING] Reverse SOFTWARE_ATTRIBUTE_OPT to avoid inverse logic (#1598) (Pavel Punsky <[email protected]>)
  6. - [BREAKING] Deprecate response-origin-only-with-rfc5780 (#1690) (Pavel Punsky <[email protected]>)
  7. - [BREAKING] Invert no-stun-backward-compatibility to be default on (#1689) (Pavel Punsky <[email protected]>)
  8. - Make older TLS versions optional (#1693) (Pavel Punsky <[email protected]>)
  9. - Add missing close socket when ioa_socket call fails (#1694) (tyranron <[email protected]>)
  10. - Add spdx tags to all source files (#1510) (Michael Jones <[email protected]>)
  11. - Address various minor clang-tidy warnings (#1513) (Michael Jones <[email protected]>)
  12. - Update reference to old draft in README to RFC8016 (Gustavo Garcia <[email protected]>)
  13. - Invert RFC5780 option to default off (#1688) (Pavel Punsky <[email protected]>)
  14. - Add modules diagram to developer doc (#1685) (Gustavo Garcia <[email protected]>)
  15. - Fix compilation warning with const - non const conversions (#1686) (Gustavo Garcia <[email protected]>)
  16. - Makefile.in: Don't install sql schema into DOCSDIR (#1684) (Greg Troxel <[email protected]>)
  17. - Fix infinite loop in ns_turn_server.c (#1460) (Asmir Mehic <[email protected]>)
  18. - Fix the ability to compile coturn using C++ compiler (#1546) (Michael Jones <[email protected]>)
  19. - Restore returning 200 OK on root prometheus path for health check (#1678) (Gustavo Garcia <[email protected]>)
  20. - Improve MySQL connection error logging to include actual MySQL error message (#1679) (Gustavo Garcia <[email protected]>)
  21. - redis: use dbname param when redis is unauthenticated (#1668) (maddy <[email protected]>)
  22. - Show allocations increment/decrement logs behind verbose flag (#1677) (Gustavo Garcia <[email protected]>)
  23. - [Fix] Fix Repeated Line in Example turnserver.conf (#1671) (Stefan Kieszkowski <[email protected]>)
  24. - change for incorrect handling of TURN_NO_TLS environment variable (#1663) (Leonid Gorbachev <[email protected]>)
  25. - Add Content-Type header to prometheus response (#1662) (Pavel Punsky <[email protected]>)
  26. - Fix infinite loop while triggering SIGHUP and log file reset causing … (#1630) (nicolas-laduguie <[email protected]>)
  27. - rename and dependency extraction (#1634) (redraincatching <[email protected]>)
  28. - updated types to bool in _turn_params_ to reflect C11 (#1406) (redraincatching <[email protected]>)
  29. - Windows '_WTA' bug (#1624) (guoyingbo <[email protected]>)
  30. - Fix cmake issues detecting mongo and libsystemd on macOS (#1621) (Pavel Punsky <[email protected]>)
  31. - Fix hiredis detection by cmake (#1620) (Pavel Punsky <[email protected]>)
  32. - Drop TLS version support detection (#1617) (Pavel Punsky <[email protected]>)
  33. - Cleanup ALPN_SUPPORTED define usage (#1616) (Pavel Punsky <[email protected]>)
  34. - Fix warnings type conversion (#1615) (Pavel Punsky <[email protected]>)
  35. - Add parameter for specifying prometheus path (#1602) (Alex Gustafsson <[email protected]>)
  36. - Do not build with Ubuntu 18, use 24 (#1613) (Pavel Punsky <[email protected]>)
  37. Contributors:
  38. - Alex Gustafsson <[email protected]>
  39. - Asmir Mehic <[email protected]>
  40. - Greg Troxel <[email protected]>
  41. - guoyingbo <[email protected]>
  42. - Gustavo Garcia <[email protected]>
  43. - Kai Ren <[email protected]>
  44. - Leonid Gorbachev <[email protected]>
  45. - maddy <[email protected]>
  46. - Michael Jones <[email protected]>
  47. - nicolas-laduguie <[email protected]>
  48. - Pavel Punsky <[email protected]>
  49. - redraincatching <[email protected]>
  50. - Stefan Kieszkowski <[email protected]>
  51. - tyranron <[email protected]>
  52. Release 4.6.3
  53. Changelist:
  54. - Implement custom prometheus http handler (#1591) (Alex Gustafsson <[email protected]>)
  55. - Add MariaDB support to README.md (#1601) (Robert Silén <[email protected]>)
  56. - Allow authenticating with a username to redis (#1488) (maddy <[email protected]>)
  57. - Easy installation of coturn on AWS (#1581) (hariprasadt <[email protected]>)
  58. - Add prometheus setting suggestions on turn.conf in example folder (#1597) (Chai-Shi <[email protected]>)
  59. - Install openssl-1.1.1 on amazonlinux:2 instead of openssl-1.0.1 (#1595) (Pavel Punsky <[email protected]>)
  60. - Add new Drain feature (#1529) (Scott Godin <[email protected]>)
  61. - Additional refactoring of ns_turn_allocation.* to address security scanner concerns (#1514) (Michael Jones <[email protected]>)
  62. - Fix linting error in mainrelay.c (#1558) (redraincatching <[email protected]>)
  63. - Fix rpm version scripts (#1556) (eakraly <[email protected]>)
  64. - Delete dead code (#1563) (Sven Tennie <[email protected]>)
  65. - Fix cli auth (#1578) (Mészáros Mihály <[email protected]>)
  66. - Use bool, instead of int, for the functions in ns_turn_msg.c (#1553) (Michael Jones <[email protected]>)
  67. - Reformat code (#1557) (Pavel Punsky <[email protected]>)
  68. - configure: data files shouldn't be executable (#1542) (Sergey Radionov <[email protected]>)
  69. - Update libtelnet (#1545) (Michael Jones <[email protected]>)
  70. - Use calloc where appropriate, avoid memset when normal buffer initialization works (#1550) (Michael Jones <[email protected]>)
  71. - Fix make lint (#1547) (Michael Jones <[email protected]>)
  72. - Fix compiler warnings from continuous integration (#1555) (Michael Jones <[email protected]>)
  73. - Fix nodejs/glibc problem with old container images. (#1548) (Michael Jones <[email protected]>)
  74. - Windows: Only attempt to bind when the network interface is up (#1527) (David Smitmanis <[email protected]>)
  75. - Memset user_db before reading conf file, not after (#1537) (Pavel Punsky <[email protected]>)
  76. - added support for amazon linux and renamed tests.yml (#1401) (redraincatching <[email protected]>)
  77. - Check the result of malloc in send_message_to_redis (#1515) (Michael Jones <[email protected]>)
  78. - Check the result of malloc in mongo_set_realm_option_one (#1516) (Michael Jones <[email protected]>)
  79. - Simplify workflow for codeql (#1517) (Michael Jones <[email protected]>)
  80. - Move the hiredis_libevent2 code from common to relay (#1509) (Michael Jones <[email protected]>)
  81. - Include what you use (#1512) (Michael Jones <[email protected]>)
  82. - Check the result of malloc in string_list_add (#1495) (Michael Jones <[email protected]>)
  83. - Check the result of realloc and calloc in ch_map_get (#1497) (Michael Jones <[email protected]>)
  84. - Address clang-tidy warnings in db files (#1405) (Michael Jones <[email protected]>)
  85. - malloc now allocates space for string terminator (#1507) (redraincatching <[email protected]>)
  86. - Use bool over int for the turnutils_uclient program (#1420) (Michael Jones <[email protected]>)
  87. - Fix lint complaint about comment (#1506) (Michael Jones <[email protected]>)
  88. - Run all of the CI except for Docker builds on any change (#1415) (Michael Jones <[email protected]>)
  89. - Avoid read-past-end of string in get_bold_admin_title (#1499) (Michael Jones <[email protected]>)
  90. - Check allocation results in add_static_user_account (#1501) (Michael Jones <[email protected]>)
  91. - Address some build issues introduced by api changes (#1505) (Pavel Punsky <[email protected]>)
  92. - Check the result of calloc in handle_logon_request (#1498) (Michael Jones <[email protected]>)
  93. - Avoid writing potentially uninitialized data to aes_128 key file (#1500) (Michael Jones <[email protected]>)
  94. - Use active CPU number instead of total number (#1469) (Pavel Punsky <[email protected]>)
  95. - defined a magic number for stun fingerprinting (#1489) (redraincatching <[email protected]>)
  96. - Always run lint, regardless of branch (#1492) (Michael Jones <[email protected]>)
  97. - avoid potential nullptr derefernence in udp_create_server_socket (#1496) (Michael Jones <[email protected]>)
  98. - Change the various map functions to return bool instead of inconsistantly return 0, 1, or -1 (#1502) (Michael Jones <[email protected]>)
  99. - Check the result of malloc in del_alt_server (#1503) (Michael Jones <[email protected]>)
  100. - Avoid nullptr dereference of server variable in various functions (#1504) (Michael Jones <[email protected]>)
  101. - Fix msvc analyzer error on goto label on rfc5769check (#1486) (Gustavo Garcia <[email protected]>)
  102. - Fix buffer overflow in generate_enc_password with increase rsalt by 2 (#1463) (Stefan Junker <[email protected]>)
  103. - Fix lint errors (Gustavo Garcia <[email protected]>)
  104. - Add support for raw public keys (Rfc 7250) (#1458) (Nikolayshcx <[email protected]>)
  105. - Fix clang-format lint warnings (Gustavo Garcia <[email protected]>)
  106. - Fix const during free warning in rfc5769check app (Gustavo Garcia <[email protected]>)
  107. - Refactor: peer_input_handle (#1325) (Kang Lin <[email protected]>)
  108. - workflow tidying (#1396) (redraincatching <[email protected]>)
  109. - Update turnserver.conf Example about listening-ip (#1336) (Wittmer, Christian <[email protected]>)
  110. - Fix Cmake find issue in libevent (#1466) (NO NAME <[email protected]>)
  111. - CMake: Declare the variable nearby (#1387) (Kang Lin <[email protected]>)
  112. - Print version only, no extra lines (#1441) (Pavel Punsky <[email protected]>)
  113. - Fix memory leak in rfc5769check.c (#1410) (ashamedbit <[email protected]>)
  114. - Fix memory leak in netengine.c (#1411) (ashamedbit <[email protected]>)
  115. - Fix memory leak on http_server.c (#1412) (ashamedbit <[email protected]>)
  116. - ubuntu build dependencies extracted to composite actions (#1399) (redraincatching <[email protected]>)
  117. - Delete unused variable (#1437) (Pavel Punsky <[email protected]>)
  118. - changed variables in stunclient.c to bool (C11) (#1421) (redraincatching <[email protected]>)
  119. - added missing function prototype of turn_random_number() (#1428) (redraincatching <[email protected]>)
  120. - Fix no-tls warning typo (#1426) (Jan Brasna <[email protected]>)
  121. - Update SQLite.md (#1429) (dominiquefournier <[email protected]>)
  122. - Adjust wording in cmake message when prometheous cannot be found. (#1418) (Michael Jones <[email protected]>)
  123. - Add the InsertBraces command for clang-format to ensure that all conditionals always have braces (#1408) (Michael Jones <[email protected]>)
  124. - Change minimal required cmake version to 3.16 (#1388) (Pavel Punsky <[email protected]>)
  125. - Replace HeapAlloc with malloc (#1378) (Pavel Punsky <[email protected]>)
  126. - Added sessionID to some log lines (#1334) (korayvt <[email protected]>)
  127. - Update FlowChart (#1377) (Kang Lin <[email protected]>)
  128. - Add clang-tidy, include-what-you-use, and msvc-analyzer github actions (#1363) (Michael Jones <[email protected]>)
  129. - Doc: add flowchart (#1328) (Kang Lin <[email protected]>)
  130. - Missing session ID in coturn logs for denied IP - 1330 (#1332) (Cybermilitia <[email protected]>)
  131. - Update lukka/run-vcpkg@11 (#1374) (Pavel Punsky <[email protected]>)
  132. - Fix typos (#1345) (vuittont60 <[email protected]>)
  133. - Fix mingw build (#1376) (Pavel Punsky <[email protected]>)
  134. - Add github action that runs tests with compiler sanitizers (#1370) (Michael Jones <[email protected]>)
  135. - Simplify macOS detection macros (#1372) (Pavel Punsky <[email protected]>)
  136. - Fix potential null passed to function expecting nonnull (#1373) (Pavel Punsky <[email protected]>)
  137. - Only set MHD_USE_DUAL_STACK if IPv6 is available (#1362) (Evgeny Khramtsov <[email protected]>)
  138. - Remove unimplemented test folder reference from CMakeLists.txt (#1371) (Pavel Punsky <[email protected]>)
  139. - Fix cmake find prometheus(fix #1304) (#1315) (Kang Lin <[email protected]>)
  140. - Fix run cmake.yml in any github action (#1320) (Kang Lin <[email protected]>)
  141. - Fix return correct error code for `create_relay_connection` in case of `RESERVATION-TOKEN` failure (#1319) (Subhra264 <[email protected]>)
  142. - Reduce ifdefs in code: TURN_NO_PROMETHEUS (#1116) (Pavel Punsky <[email protected]>)
  143. - strncpy doesn't return size_t (#1296) (Richard Russo <[email protected]>)
  144. - Return a 400 response to HTTP requests (#1231) (Dave Lambley <[email protected]>)
  145. - Fix missing strncpy in fix_stun_check_message_integrity_str (#1282) (Gustavo Garcia <[email protected]>)
  146. - Fix ubuntu 16 build with GH action checkout version to v3 (#1281) (Gustavo Garcia <[email protected]>)
  147. - Fix memleak in pgsql_reread_realms (#1278) (Pavel Punsky <[email protected]>)
  148. - Replace srand/rand with srandom/random (#1279) (Gustavo Garcia <[email protected]>)
  149. - Fix memcpy len checks stun_is_challenge_response_str (#1280) (Gustavo Garcia <[email protected]>)
  150. - Add warning and disable web admin if no-tls option used (#1256) (Alexander Udovichenko <[email protected]>)
  151. - Fix formatting to fix lint error (#1258) (Pavel Punsky <[email protected]>)
  152. - added warnings for prometheus apt unavailability (#1184) (czephyr <[email protected]>)
  153. - Update version in vcpkg.json (#1254) (Kang Lin <[email protected]>)
  154. - Fix error of make command in Cygwin environment (#1236) (Aaron Bird <[email protected]>)
  155. - Fix recursive call in delete alternate server (#1250) (Cybermilitia <[email protected]>)
  156. - Add CodeQL workflow (#1228) (Jorge <[email protected]>)
  157. - Change printf() to TURN_LOG_FUNC() for --no-stdout-log (#1221) (Robert Scheck <[email protected]>)
  158. - Fix build with libressl 3.6+ (#1198) (rim <[email protected]>)
  159. - Update turnserver.spec (#1192) (Mathieu Aubin <[email protected]>)
  160. Contributors:
  161. - Aaron Bird <[email protected]>
  162. - Alex Gustafsson <[email protected]>
  163. - Alexander Udovichenko <[email protected]>
  164. - Chai-Shi <[email protected]>
  165. - Cybermilitia <[email protected]>
  166. - Dave Lambley <[email protected]>
  167. - David Smitmanis <[email protected]>
  168. - Evgeny Khramtsov <[email protected]>
  169. - Gustavo Garcia <[email protected]>
  170. - Gustavo Garcia <[email protected]>
  171. - Jan Brasna <[email protected]>
  172. - Jorge <[email protected]>
  173. - Kang Lin <[email protected]>
  174. - Mathieu Aubin <[email protected]>
  175. - Mészáros Mihály <[email protected]>
  176. - Michael Jones <[email protected]>
  177. - NO NAME <[email protected]>
  178. - Nikolayshcx <[email protected]>
  179. - Pavel Punsky <[email protected]>
  180. - Richard Russo <[email protected]>
  181. - Robert Scheck <[email protected]>
  182. - Robert Silén <[email protected]>
  183. - Scott Godin <[email protected]>
  184. - Sergey Radionov <[email protected]>
  185. - Stefan Junker <[email protected]>
  186. - Subhra264 <[email protected]>
  187. - Sven Tennie <[email protected]>
  188. - Wittmer, Christian <[email protected]>
  189. - Zoey <[email protected]>
  190. - ashamedbit <[email protected]>
  191. - czephyr <[email protected]>
  192. - dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  193. - dominiquefournier <[email protected]>
  194. - eakraly <[email protected]>
  195. - hariprasadt <[email protected]>
  196. - korayvt <[email protected]>
  197. - maddy <[email protected]>
  198. - redraincatching <[email protected]>
  199. - rim <[email protected]>
  200. - vuittont60 <[email protected]>
  201. Release 4.6.2
  202. Changelist:
  203. - Fix MSVC CI build (#1182) (Cédric DIJOUX <[email protected]>)
  204. - Prometheus: make sure microhttpd starts using epoll if supported (#1173) (Thibaut ACKERMANN <[email protected]>)
  205. - Fix typo in mainrelay.c (#1169) (Stefan Sundin <[email protected]>)
  206. - Remove unused include that breaks OpenBSD (#1165) (Pavel Punsky <[email protected]>)
  207. - Delete LICENSE.OpenSSL (Pavel Punsky <[email protected]>)
  208. - use santisied psql string (#1144) (r3g_5z <[email protected]>)
  209. - Use the actual redis connection string to connect, not the sanitized one (#1141) (Jasper <[email protected]>)
  210. - Implement non-blocking recvfrom on Windows (#1124) (Emil Ljungdahl <[email protected]>)
  211. - Add contributing guidelines (#1135) (Gustavo Garcia <[email protected]>)
  212. - Move and split documentation files (#1096) (Pavel Punsky <[email protected]>)
  213. - Use inline functions for errno checks (#1123) (Emil Ljungdahl <[email protected]>)
  214. - Add STUN request/response/error prometheus counters (#1115) (Pavel Punsky <[email protected]>)
  215. - Add configuration option for TLS 1.3 ciphersuites (#1118) (Molly Miller <[email protected]>)
  216. - Fix wrong usage of C-sytle in place generated array (#1122) (Paul Kramer <[email protected]>)
  217. - bugfix: fix broken type label of turn_total_allocations gauge (#1119) (Paul Kramer <[email protected]>)
  218. - Add explicit SIGTERM and SIGINT handlers. (#1106) (Molly Miller <[email protected]>)
  219. - Set string bytes to null to prevent random origin (#1114) (Pavel Punsky <[email protected]>)
  220. - Regenerate manual pages from README files (#1117) (Molly Miller <[email protected]>)
  221. - Fix inverted logic in TLS configuration options (#1105) (Molly Miller <[email protected]>)
  222. - Reduce code duplication when printing userdb (#1103) (Pavel Punsky <[email protected]>)
  223. - Fix memory corruption on socket close (#1113) (Paul Kramer <[email protected]>)
  224. - Cleanup logs on turnserver start (#1088) (Pavel Punsky <[email protected]>)
  225. - Optional build info compiled into turnserver binary (#1083) (Erik Moqvist <[email protected]>)
  226. - Fix duplicate prometheus metric report (#1079) (Pavel Punsky <[email protected]>)
  227. - Add sessioncount to prometheus metrics (#1075) (Paul Kramer <[email protected]>)
  228. - Update openssl API use to non-deprecated version (#1072) (Pavel Punsky <[email protected]>)
  229. - Log threadId to logs to aid in multi-threaded debugging. (#1030) (Scott Godin <[email protected]>)
  230. - Use khash 0.2.8 (#1047) (Gregor Jasny <[email protected]>)
  231. - Reflect new native Windows build support in documentation (#1060) (Samuel Marks <[email protected]>)
  232. - Check and fix format string for turn_log_func_default (#1064) (Gregor Jasny <[email protected]>)
  233. - Properly calculate size for sm_allocated (#1063) (Gregor Jasny <[email protected]>)
  234. - Do not discard qualifiers in free() (#1065) (Gregor Jasny <[email protected]>)
  235. - Simplify defines for macOS platform (#1058) (Pavel Punsky <[email protected]>)
  236. - WINDOWS: unsigned long should not be used to store pointers (#1055) (Emil Ljungdahl <[email protected]>)
  237. - Reduce usage of TURN_NO_HIREDIS macros (#1022) (Pavel Punsky <[email protected]>)
  238. - Update to fix duplicate stdout log output (#1054) (Yoshiki Kadoshita <[email protected]>)
  239. - Use c11 standard See: #1055 (#1056) (Kang Lin <[email protected]>)
  240. - Reduce usage of TURN_NO_PROMETHEUS (#1023) (Pavel Punsky <[email protected]>)
  241. - Remove unnecessary declaration from header file (#1052) (Yoshiki Kadoshita <[email protected]>)
  242. - Support Windows MSVC (#855) (Kang Lin <[email protected]>)
  243. - Fix resource leaks (#1048) (Gregor Jasny <[email protected]>)
  244. - Backlog fifo (#1029) (Scott Godin <[email protected]>)
  245. - Change rpm systemd service type from notify to exec (#1043) (Gustavo Garcia <[email protected]>)
  246. - Add missing comma (#1041) (Gregor Jasny <[email protected]>)
  247. - Fix off-by-one when terminating gcm_nonce (#1039) (Gregor Jasny <[email protected]>)
  248. - Use %zu format specifier for size_t (#1040) (Gregor Jasny <[email protected]>)
  249. - Fix variable argument handling (#1042) (Gregor Jasny <[email protected]>)
  250. - Cleanup openssl initialization (#1012) (Pavel Punsky <[email protected]>)
  251. - fuzzing support (#982) (Arjun <[email protected]>)
  252. - created netengine.c get_relay_server utility method to reduce code duplication (#1032) (Scott Godin <[email protected]>)
  253. - fix bug in calls to ssl_read and ssl_send where extra verbose flag goes missing (#1033) (Scott Godin <[email protected]>)
  254. - ignore raw UDP if no_udp is enabled (#1031) (Scott Godin <[email protected]>)
  255. - Sanitize DB connection string before printing to log (#1020) (Pavel Punsky <[email protected]>)
  256. - Better detect SCTP protocol (#1016) (Pavel Punsky <[email protected]>)
  257. - Redis memleaks and socketleaks (#1015) (Thibaut ACKERMANN <[email protected]>)
  258. - Fix issue 51563 in oss-fuzz (#1010) (Arjun <[email protected]>)
  259. - Fix multiple warnings in libtelnet.c file (#1011) (Pavel Punsky <[email protected]>)
  260. - Update libtelnet to 0.23 (portability issues) (#1005) (Pavel Punsky <[email protected]>)
  261. - Remove debug publish to redis (#1008) (Pavel Punsky <[email protected]>)
  262. - Cleanup unused include of header files (#1004) (Pavel Punsky <[email protected]>)
  263. - Use single SSL_CTX for DTLS support (#996) (Pavel Punsky <[email protected]>)
  264. - Malformed response to mobility refresh request (#1006) (Tom Bevan <[email protected]>)
  265. - Silence warnings by converting STRCPY to strncpy calls (#995) (Pavel Punsky <[email protected]>)
  266. - Build CI with prometheus support (#999) (Pavel Punsky <[email protected]>)
  267. - Replace references to non-existent pdf file with links (#1002) (Pavel Punsky <[email protected]>)
  268. - Fix TLS1.3 support (Pavel Punsky <[email protected]>)
  269. - Use a single SSL context object (#989) (Pavel Punsky <[email protected]>)
  270. - Use epoll for promhttp server if supported. (#997) (Joachim Bauch <[email protected]>)
  271. - Fix issues reported by cppcheck (#987) (Pavel Punsky <[email protected]>)
  272. - Replace bcopy with memcpy (#991) (Pavel Punsky <[email protected]>)
  273. - Replace bzero with memset (#986) (Pavel Punsky <[email protected]>)
  274. - Improve openssl3 and FIPS support (#955) (Pavel Punsky <[email protected]>)
  275. - Preserve file timestamps when using install(1) (#983) (Robert Scheck <[email protected]>)
  276. - Fix renegotiation flag for older version of openssl (#978) (Pavel Punsky <[email protected]>)
  277. Contributors:
  278. - Arjun <[email protected]>
  279. - Cédric DIJOUX <[email protected]>
  280. - Emil Ljungdahl <[email protected]>
  281. - Erik Moqvist <[email protected]>
  282. - Gregor Jasny <[email protected]>
  283. - Gustavo Garcia <[email protected]>
  284. - Hyorin Choi <[email protected]>
  285. - Jasper <[email protected]>
  286. - Joachim Bauch <[email protected]>
  287. - Kang Lin <[email protected]>
  288. - Molly Miller <[email protected]>
  289. - Paul Kramer <[email protected]>
  290. - Pavel Punsky <[email protected]>
  291. - Robert Scheck <[email protected]>
  292. - Samuel Marks <[email protected]>
  293. - Scott Godin <[email protected]>
  294. - Stefan Sundin <[email protected]>
  295. - Thibaut ACKERMANN <[email protected]>
  296. - Tom Bevan <[email protected]>
  297. - Yoshiki Kadoshita <[email protected]>
  298. - r3g_5z <[email protected]>
  299. 03/12/2022 Gustavo Garcia <[email protected]> Paul Kramer <[email protected]>
  300. Version 4.6.1 'Gorst':
  301. - merge PR #1113 (paulkram)
  302. * fix memory corruption on socket close
  303. 13/09/2022 Oleg Moskalenko <[email protected]> Mihály Mészáros <[email protected]> Gustavo Garcia <[email protected]> Pavel Punsky <[email protected]>
  304. Version 4.6.0 'Gorst':
  305. - merge PR #967 (eakraly)
  306. * fix small issues reported by cppcheck
  307. - merge PR #974 (eakraly)
  308. * fix long log line printing
  309. - merge PR #973 (eakraly)
  310. * Print turnserver version with --version
  311. - merge PR #972 (eakraly)
  312. * do not write outside of a buffer in admin interface
  313. - merge PR #970 (eakraly)
  314. * fix uclient certificate loading bug
  315. - merge PR #971 (eakraly)
  316. * fix duplicate TCP flag in run_tests.sh script
  317. - merge PR #962 (huhaipeng)
  318. * fix turn session leak
  319. - merge PR #963 (eakraly)
  320. * Document dependency of new-log-timestamp-format on new-log-timestamp
  321. - merge PR #951 (steffen-moser)
  322. * Enable compilation of coturn on Solaris 11.4
  323. - merge PR #949 (eakraly)
  324. * First step to re-enable compilation with OpenSSL 1.0.x
  325. - merge PR #949 (eakraly)
  326. * Fix cmake build on macOS
  327. - merge PR #942 (eakraly)
  328. * Disable SSL renegotiation
  329. - merge PR #792 (yfaker)
  330. * Fix user quota release #786
  331. - merge PR #829 (fancycode)
  332. * add more info to redis allocation status
  333. - merge PR #938 (eakraly)
  334. * update turnserver.conf comment
  335. - merge PR #773 (haseebq)
  336. * fix performance regression
  337. - merge PR #773 (korayvt)
  338. * add syslog facility config
  339. - merge PR #897 (unicode-it)
  340. * add support for dual-stack prom listener
  341. - merge PR #984 (rozhuk-im)
  342. * fix build with libressl 3.4.0+
  343. - merge PR #926 (ggarber)
  344. * add ci tests workflow
  345. - merge PR #934 (neocat)
  346. * show error on invalid config
  347. - merge PR #787 (dsmeytis)
  348. * add new prom allocations metric
  349. - merge PR #869 (micmac1)
  350. * don't link in libintl
  351. - merge PR #895 (alexnedo)
  352. * fix access to freed memory
  353. - merge PR #919 (sysvinit)
  354. * configurable prom username labels
  355. - merge PR #840 (sysvinit)
  356. * configurable prometheus listener port
  357. - merge PR #870 (micmac1)
  358. * fix build mariadb connector
  359. - merge PR #851 (freedomben)
  360. * fix README typo
  361. - merge PR #877 (davel)
  362. * correct doc typo
  363. - merge PR #755(moznuy) and #825(by argggh)
  364. * fix sqlite3_shutdown and sqlite3_config race
  365. - merge PR #826 (by giavac)
  366. * prom server better
  367. - merge PR #684 (by brevilo)
  368. * Define OPENSSL_VERSION_1_1_1 on systems where it doesn't (yet) exist
  369. * Regression in 4.5.2 that cause issues in openssl version < 1.1.1.
  370. - typo fix in prometheus (by fcecagno)
  371. - merge PR #687 (by Wuelber Castillo)
  372. * Add hash algorithm for hmackey value to redis userdb schema docs
  373. - replace keep-address-family with allocation-default-address-family (keep-address-family deprecated and will be removed!!)
  374. - merge PR #703 (by j4zzc4t)
  375. * Restore no_stdout_log behavior
  376. - merge PR #727 (by JoKoT3)
  377. * Support older mysql client version in configure
  378. - merge PR #721 (by KangLin)
  379. * Add to support cmake
  380. - merge PR #717 (by marcoschum)
  381. * Fix typo in turnserver.conf
  382. - merge PR #704 (by hills)
  383. * Packaging scripts can miss out on these errors (exit code)
  384. - merge PR #679 (by rubo77)
  385. * Readme.turnserver: how to run server as a daemon
  386. - merge PR #739 (by hills)
  387. * SSL reload has hidden bugs which cause crashes
  388. - Fix regression in PR #739
  389. - Try to mitigate STUN amplification attatck
  390. * Add new option --no-rfc5780
  391. to force disable RFC8750
  392. * Add new option --no-stun-backward-compatibility
  393. Disable handling old STUN Binding requests and disable
  394. MAPPED-ADDRESS attribute in binding response (use only the
  395. XOR-MAPPED-ADDRESS)
  396. * Add new option --response-origin-only-with-rfc5780
  397. Add RESPONSE_ORIGIN attribute only if rfc5780 is enabled
  398. * Don't send SOFTWARE attribute if --no-software-attribute
  399. set on (BREAKING CHANGE)
  400. - merge PR #767 (by ggalperi)
  401. * fix for log_binding (regression)
  402. 10/01/2021 Oleg Moskalenko <[email protected]> Mihály Mészáros <[email protected]>
  403. Version 4.5.2 'dan Eider':
  404. - fix null pointer dereference in case of out of memory. (thanks to Thomas Moeller for the report)
  405. - merge PR #517 (by wolmi)
  406. * add prometheus metrics
  407. - merge PR #637 (by David Florness)
  408. * Delete trailing whitespace in example configuration files
  409. - merge PR #631 (by Debabrata Deka)
  410. * Add architecture ppc64le to travis build
  411. - merge PR #627 (by Samuel)
  412. * Fix misleading option in doc (prometheus)
  413. - merge PR #643 (by tupelo-schneck)
  414. * Allow RFC6062 TCP relay data to look like TLS
  415. - merge PR #655 (by plinss)
  416. * Add support for proxy protocol V1
  417. - merge PR #618 (by Paul Wayper)
  418. * Print full date and time in logs
  419. * Add new options: "new-log-timestamp" and "new-log-timestamp-format"
  420. - merge PR #599 (by Cédric Krier)
  421. * Do not use FIPS and remove hardcode OPENSSL_VERSION_NUMBER with LibreSSL
  422. - update Docker mongoDB and fix with workaround the missing systemctl
  423. - merge PR #660 (by Camden Narzt)
  424. * fix compilation on macOS Big Sur
  425. - merge PR #546 (by jelmd)
  426. * Add ACME redirect url
  427. - merge PR #551 (by jelmd)
  428. * support of --acme-redirect <URL>
  429. - merge PR #672 further acme fixes (by jemld)
  430. * fix acme security, redundancy, consistency
  431. - Disable binding request logging to avoid DoS attacks. (Breaking change!)
  432. * Add new --log-binding option to enable binding request logging
  433. - Fix stale-nonce documentation. Resolves #604
  434. - Version number is changed to semver 2.0
  435. - Merge PR #288 (by Hristo Venev)
  436. * pkg-config, and various cleanups in configure file
  437. - Add systemd notification for better systemd integration
  438. - Fix Issue #621 (by ycaibb)
  439. * Fix: Null pointer dereference on tcp_client_input_handler_rfc6062data function
  440. - Fix Issue #600 (by ycaibb)
  441. * Fix: use-after-free vulnerability on write_to_peerchannel function
  442. - Fix Issue #601 (by ycaibb)
  443. * Fix: use-after-free vulnerability on write_client_connection function
  444. - Little refactoring prometheus
  445. * Fix c++ support
  446. * Simplify (as agreed in Issue #666)
  447. * Remove session id/allocation labels
  448. * Remove per session metrics. We should later add more counters.
  449. - Fix CVE-2020-26262 (credits: Enable-Security)
  450. * Fix ipv6 ::1 loopback check
  451. * Not allow allocate peer address 0.0.0.0/8 and ::/128
  452. * For more details see the github security advisory:
  453. https://github.com/coturn/coturn/security/advisories/GHSA-6g6j-r9rf-cm7p
  454. 24/06/2020 Oleg Moskalenko <[email protected]> Mihály Mészáros <[email protected]>
  455. Version 4.5.1.3 'dan Eider':
  456. - merge PR #575: (by osterik)
  457. * fix rpm packaging
  458. - merge PR #576: (by osterik)
  459. * tell tar to not include the metadata into release
  460. - merge PR #574: (by DevRockstarZ)
  461. * change Docker turnserver.conf to latest turnserver.conf
  462. - merge PR #566: (by bpcurse)
  463. * Remove reference to SSLv3
  464. - merge PR #579: (by islamoglus)
  465. *Ignore MD5 for BoringSSL
  466. - merge PR #577: (by osterik)
  467. *build RPM from local folder instead of git repo
  468. - Fix for CVE-2020-4067
  469. * STUN response buffer not initialized properly
  470. * The issue found and reported #583 by Felix Dörre all credits belongs to him.
  471. 30/04/2020 Oleg Moskalenko <[email protected]> Mihály Mészáros <[email protected]>
  472. Version 4.5.1.2 'dan Eider':
  473. - merge regression fix: (by Mathieu Brunot)
  474. * Do not display empty CLI passwd alert if CLI is not enabled
  475. - merge PR #359: (by bradleythughes)
  476. * Remove turn_free_simple
  477. * Remove turn_malloc()
  478. * Remote turn_realloc()
  479. * Remote turn_free()
  480. * Remove turn_calloc()
  481. * Remove turn_strdup()
  482. * Remove SSL_NEW() and SSL_FREE()
  483. * Remove pointer debugging machinery
  484. * Remove ns_bzero(), ns_bcopy(), and ns_bcmp()
  485. * Remove [su]{08,16,32,64}bits type defines
  486. - merge PR #327 (by Alexander Terczka)
  487. * Strip white-spaces from config file lines end
  488. - merge PR #386 (by Thibaut ACKERMANN)
  489. * fix the webadmin ip permission add/delete sql injection
  490. - merge PR #390 (by Thibaut ACKERMANN)
  491. * fix mongo driver crash when invalid connection string is used
  492. - merge PR #392 enhanced fread return length check (by islamoglus)
  493. - merge PR #367 disconnect database gracefully (by Shu Muto)
  494. - merge PR #382 (by islamoglus)
  495. * Using SSL_get_version method for BoringSSL compatibility
  496. * Now we put in turn_session_info->tls_method the real TLS version.
  497. Earlier we put UNKNOWN in this field if it was a TLS protocol
  498. that was not defined supportel TLS protocol during compile time.
  499. - merge PR #276 Add systemd service example (by Liberasys)
  500. - merge PR #284 Add bandwidth usage reporting packet/bandwidth usage by peers
  501. - merge PR #381 Modifying configure to enable compile with private libraries
  502. - merge PR #455 Typo corrected (by chanduthedev)
  503. - merge PR #417 Append only to log files rather to override them (by robert-scheck)
  504. - merge PR #442 Updated incorrect string length check for 'ssh' (by chanduthedev)
  505. - merge PR #449 Fix Dockerfile for latest Debian (by rao-donut)
  506. - http server NULL dereference
  507. * Reported (by quarkslab.com, cisco/talos)
  508. * CVE-2020-6061 / TALOS-2020-0984
  509. - http server out of bound read
  510. * Reported (by quarkslab.com, cisco/talos)
  511. * CVE-2020-6061 / TALOS-2020-0984
  512. - merge PR #472 STUN input validation (by bobsayshilol)
  513. - merge PR #398 FIPS (by byronclark)
  514. - merge PR #478 prod (by alepolidori)
  515. - merge PR #463 fix typos and grammar (by xthursdayx)
  516. - update travis config ubuntu/mac images
  517. - merge PR #466 added null check for second char (by chanduthedev)
  518. - merge PR #470 compiler warning fixes (by bobsayshilol)
  519. - merge PR #475 Update README.docker (by raksonibs)
  520. - merge PR #471 Fix a memory leak when an SHATYPE isn't supported (by bobsayshilol)
  521. - merge PR #488 Fix typos about INSTALL filenames (by raccoonback)
  522. - fix compiler warning comparison between signed and unsigned integer expressions
  523. - fix compiler warning string truncation
  524. - change Diffie Hellman default key length from 1066 to 2066
  525. - merge PR #522 drop of supplementary group IDs (by weberhofer)
  526. - merge PR #514 Unify spelling of Coturn (by paulmenzel)
  527. - merge PR#506 Rename "prod" config option to "no-software-attribute" (by dbrgn)
  528. - merge PR #519 fix config extension in README.docker (by ooookai)
  529. - merge PR #516 change sql data dir in docker-compose-all.yml (by raghumuppa)
  530. - merge PR #513 remove trailing spaces from READMEs (by paulmenzel)
  531. - merge PR #525 add flags to disable periodic use of dynamic tables (by gfodor)
  532. 02/03/2019 Oleg Moskalenko <[email protected]> Mihály Mészáros <[email protected]>
  533. Version 4.5.1.1 'dan Eider':
  534. - merge PR #330 missing \r\n after http Connection:close (by gribunin)
  535. - merge PR #303 fix typo enpoint (by Majid Motallebikashani)
  536. - merge PR #129 seperate http web-admin listener (by Thibaut ACKERMANN)
  537. - regression from 4.5.1.0
  538. * readd pwd check
  539. * add to config missing web-admin-listen-on-workers option
  540. - merge docker branch
  541. * Add Docker file for all database backend.
  542. - merge sparc64 branch
  543. * Fix mem alingment issue on 64 bit architecture
  544. That issue caused earlier "bus error" on sparc64 and armhf
  545. - merge PR #336 Clarify Debian install (by David-dp-)
  546. - merge PR #339 RPM build fix (by Peter Hudec )
  547. 24/11/2018 Oleg Moskalenko <[email protected]> Mihály Mészáros <[email protected]>
  548. Version 4.5.1.0 'dan Eider':
  549. Consider to change config file after upgrade, because it contains some
  550. not backward compatible breaking changes !!
  551. - Security fixes
  552. Many thanks to Nicolas Edet (Cisco) !!
  553. who reported all of the following issues:
  554. * DB/SQL injection in stun realm. Fix: add extra string validation.
  555. * DB/SQL injection in web-admin interface lack of admin user validation.
  556. Fix: add extra string validation.
  557. * Fix for earlier unsafe default settings:
  558. o HTTPS administrator interface should be disabled by default
  559. It could be enbled with "web-admin" option.
  560. o Default configuration allowed earlier forwarding traffic
  561. from an external interface to loopback interface. Now it
  562. has been changed and option name is also changed!
  563. !!BREAKING change!! Don't forget to change config!!
  564. "no-loopback-peers" replaced by "allow-loopback-peers"
  565. o Unauthenticated telnet admin interface runs on the
  566. loopback interface, which can be accessed by exploiting the
  567. loopback relay that was enabled by default.
  568. * Add username string sanity check on web admin interface to
  569. avoid any sql-injection attacks.
  570. - Admin portal does not list TCP session ( reported and fixed by Nicolas Edet )
  571. - Fix memory leak in read_config_file (by Thibaut Ackermann)
  572. - Add a release helper script.
  573. - Web Admin interface use own listener (it is disableb by default) (by Thibaut ACKERMANN)
  574. !!BREAKING change!! Don't forget to change/review config!!
  575. * Add new option "web-admin-ip" to set listener ip. By default (127.0.0.1)
  576. * Add new option "web-admin-port" to set webadmin listen port
  577. * Add new option "web-admin-listen-on-workers" to change back to earlier
  578. behaviour and listen web admin on all worker processes and ports.
  579. - Not allow to start server if "allow-loopback-peers" set without "cli-password"
  580. !!BREAKING change!! Don't forget to change config!!
  581. Added a warning if cli-password is empty or missing, but allow-loopback-peers
  582. set, and so loopback allocation is enalbed.
  583. 27/09/2018 Oleg Moskalenko <[email protected]> Mihály Mészáros <[email protected]>
  584. Version 4.5.0.8 'dan Eider':
  585. - Travis CI integration
  586. - to avoid warnings add compiler comment hint to fallthrough
  587. - reload-tls-certs PR#236 (by Arne Georg Gisnås Gleditsch)
  588. - minor fixes PR#223 (by Pavel Kretov)
  589. move rm Makefile to distclean
  590. list all phony targets
  591. - Fix typo PR#253 (by Orsiris de Jong)
  592. - Fix stuck IPv6 connections. (issue #217)
  593. THX to damencho, vol4iniche
  594. - Spelling fixes.
  595. - Add a warning if --lt-cred-mech and --use-auth-secret both presents.
  596. - Revert "Add the realm parameter in the example config file (by Domenico)"
  597. - Fix for Verbose config file option -v cli option override
  598. - Add a Notice to config about realm default value is the domain name.
  599. - Update total allocation usage on client shutdown
  600. - Fix total and user quota mix-up
  601. - Fixed typos in postinstall.txt (by Prashanth Rajaram)
  602. - MySQL password encryption (by Mustafa Bingül & Erdem Duman)
  603. - Do not write to log before logging configuration is read from a config file (by eiver)
  604. - Add more explanation on use-auth-secret / REST in example config (by Krithin Sitaram)
  605. - Add a Warning if lines in config file ends with semicolon (by heyheyjc)
  606. - Fix --prod pointer bug
  607. - Fix auth server thread detach race (by weishuyin)
  608. - New Feature: Add -K --keep-address-family
  609. Be aware if you enable it, then it breaks rfc6156 section 4.2 (default IPv4 family fallback)
  610. - Fix dtls double free crash
  611. - Fix compilation errors and warnings (by Oleg)
  612. 12/10/2017 Oleg Moskalenko <[email protected]>
  613. Version 4.5.0.7 'dan Eider':
  614. - Misc security improvements.
  615. 10/17/2016 Oleg Moskalenko <[email protected]>
  616. Version 4.5.0.6 'dan Eider':
  617. - Typos in the text fixed.
  618. - TLS1.2 support fixed.
  619. - uclient minor performance tweak.
  620. - Issue #113 fixed (by David Benjamin)
  621. - Report total traffic used per allocation via Redis (by Bradley T. Hughes)
  622. - Add the realm parameter in the example config file (by Domenico)
  623. 08/27/2016 Oleg Moskalenko <[email protected]>
  624. Version 4.5.0.5 'dan Eider':
  625. - Typos in the text fixed.
  626. - LibreSSL compatibility fixed.
  627. - "read_timeout" option support for MySQL.
  628. - new NAT behavior discovery utilty.
  629. - new OAuth access_token encrypt/decrypt utilty.
  630. - improved configurability: added parameters for
  631. allocate, channel and permission lifetimes (by Richard Garnier).
  632. 08/20/2016 Oleg Moskalenko <[email protected]>
  633. Version 4.5.0.4 'dan Eider':
  634. - OpenSSL 1.1.0 support added.
  635. - CentOS 7 installation updated.
  636. - hiredis and mongo compilation configuration fixed
  637. (fix provided by Harsha Bellur).
  638. - RPM: Systemd optimization.
  639. - REST API option fixed.
  640. - Thread creation error handling fixed.
  641. - Issue #36 fixed.
  642. 11/15/2015 Oleg Moskalenko <[email protected]>
  643. Version 4.5.0.3 'dan Eider':
  644. - SSLv3 support removed. That provides extra security and
  645. compatibility with OpenSSL distributions or clones
  646. that do not support SSLv3 (like LibreSSL 2.3.0).
  647. This fix is required for fresh FreeBSD and for Debian unstable.
  648. - Compilation and configuration cleaning.
  649. - Fix for non-interactive shells.
  650. - RPM: Fixed mongo-c-driver include path (by Sergey Safarov).
  651. - RPM: Fixed startup daemon as non root user (by Sergey Safarov).
  652. - RPM: Systemd optimized for high-volume network traffic (by Sergey Safarov).
  653. 9/29/2015 Oleg Moskalenko <[email protected]>
  654. Version 4.5.0.2 'dan Eider':
  655. - DTLS segmentation fault fixed;
  656. 9/13/2015 Oleg Moskalenko <[email protected]>
  657. Version 4.5.0.1 'dan Eider':
  658. - multiple realms based on oAuth (third-party authorization);
  659. - STUN attributes conflict resolution;
  660. - SIGHUP handler fixed;
  661. - error message logging improved;
  662. - mongo test db files fixed.
  663. 7/18/2015 Oleg Moskalenko <[email protected]>
  664. Version 4.4.5.4 'Ardee West':
  665. - moved to github.
  666. 6/20/2015 Oleg Moskalenko <[email protected]>
  667. Version 4.4.5.3 'Ardee West':
  668. - third-party authorization STUN attributes adjusted according
  669. to the values assigned by IANA.
  670. - SQL injection security hole fixed.
  671. 5/29/2015 Oleg Moskalenko <[email protected]>
  672. Version 4.4.5.2 'Ardee West':
  673. - dual allocation adjusted according to the new TURN-bis draft;
  674. - options sha256, sha384, sha512 retired as non-standard;
  675. - third-party authorization (oAuth) updated according to the
  676. version 16 of the draft;
  677. - C++ compilation fixes;
  678. - cosmetic fixes;
  679. - fixed binary package for CentOS 7.1;
  680. - support for older SQLite versions added;
  681. - compilation support for older CentOS release 5.x added;
  682. - Issue 11 fixed;
  683. - Issue 12 fixed.
  684. 3/31/2015 Oleg Moskalenko <[email protected]>
  685. Version 4.4.4.2 'Ardee West':
  686. - SCTP fixes;
  687. 3/15/2015 Oleg Moskalenko <[email protected]>
  688. Version 4.4.4.1 'Ardee West':
  689. - 'native' SCTP support (experimental);
  690. - option of encrypted stored passwords for web admin users;
  691. - option of encrypted stored password for CLI user;
  692. 2/28/2015 Oleg Moskalenko <[email protected]>
  693. Version 4.4.2.3 'Ardee West':
  694. - bandwidth control fixed;
  695. - STUN/TURN control traffic counted separately from data traffic,
  696. for the sake of the bandwidth control;
  697. - higher bandwidth limit capacity on 64 bits systems;
  698. - redis operations with the realm options fixed;
  699. 2/18/2015 Oleg Moskalenko <[email protected]>
  700. Version 4.4.2.2 'Ardee West':
  701. - admin_user table schema fixed;
  702. - REST API docs fixed;
  703. - Amazon AWS uses syslog;
  704. 2/3/2015 Oleg Moskalenko <[email protected]>
  705. Version 4.4.2.1 'Ardee West':
  706. - (HMAC-)SHA-512 and -384 algorithms added;
  707. - TOS (DiffServer) and TTL IP header field handling fixed;
  708. - updates according to the new third-party-auth draft (oauth);
  709. - peer logging added;
  710. 2/1/2015 Oleg Moskalenko <[email protected]>
  711. Version 4.4.1.2 'Ardee West':
  712. - SSODA updates according to turnbis specs;
  713. - TRANSPORT attribute handling fixed;
  714. - hostname-to-IP-address resolution fix;
  715. - updates for Solaris (name resolution libraries);
  716. 1/24/2015 Oleg Moskalenko <[email protected]>
  717. Version 4.4.1.1 'Ardee West':
  718. - https admin server;
  719. - SSLv2 support cancelled (security concern fixed);
  720. - The server-side short-term credentials mechanism support cancelled;
  721. - OpenSSL 1.1.0 supported;
  722. - shared secrets fixed in MongoDB: multiple secrets per realm allowed;
  723. - shared secrets admin fixed in Redis;
  724. 12/24/2014 Oleg Moskalenko <[email protected]>
  725. Version 4.3.3.1 'Tolomei':
  726. - multiple authentication threads;
  727. - database code cleaned;
  728. 12/14/2014 Oleg Moskalenko <[email protected]>
  729. Version 4.3.2.2 'Tolomei':
  730. - Redis read message queue bug fixed;
  731. - STUN/TURN ALPN supported (when compiled with OpenSSL 1.0.2+ );
  732. - DTLS v1.2 supported (when compiled with OpenSSL 1.0.2+ );
  733. - Auto optimal ECDH parameters (when compiled with OpenSSL 1.0.2+ );
  734. - TLS/DTLS code cleaning.
  735. 11/29/2014 Oleg Moskalenko <[email protected]>
  736. Version 4.3.1.3 'Tolomei':
  737. - Reliability fixes (Issue 141 from rfc5766-turn-server).
  738. - HTTP/HTTPS echo fixed.
  739. - External address mapping fixes for Amazon EC2.
  740. - Minor docs improvements.
  741. 11/23/2014 Oleg Moskalenko <[email protected]>
  742. Version 4.3.1.2 'Tolomei':
  743. - Debian package fixes.
  744. 11/22/2014 Oleg Moskalenko <[email protected]>
  745. Version 4.3.1.1 'Tolomei':
  746. - SQLite supported as the default user database.
  747. - Support of the flat-file user database removed.
  748. - TLS connection procedure improved in uclient test program.
  749. 11/07/2014 Oleg Moskalenko <[email protected]>
  750. Version 4.2.3.1 'Monza':
  751. - Request re-transmission implemented in uclient test program.
  752. - TLS connection procedure improved in uclient test program.
  753. 10/26/2014 Oleg Moskalenko <[email protected]>
  754. Version 4.2.2.2 'Monza':
  755. - Black- and white- IP lists are divided per realm
  756. (the DB schema for those two tables changed);
  757. - Updated Redis database schema.
  758. - Debian UFW file added (Issue 1 fixed).
  759. - TCP/TLS tests extended.
  760. - Relay RTCP sockets ports allocation fixed.
  761. - List of libraries cleaned.
  762. - SSL renegotiation callback fixed.
  763. 10/05/2014 Oleg Moskalenko <[email protected]>
  764. Version 4.2.1.2 'Monza':
  765. - oAuth security experimental implementation;
  766. - The "TLS renegotiation" DoS attack prevention implemented;
  767. - FQDN as relay-ip and listener-ip parameters (issue 6)
  768. (patch provided by Iñaki Baz Castillo);
  769. - redis user key operation fixed.
  770. - redis, mysql and psql db operations fixed.
  771. - SHA-256 memory leak fixed.
  772. - Mobility ticket retransmission fixed.
  773. - Move debian package from SVN to GIT.
  774. - Move secondary download area to coturn.net.
  775. - Quota allocation fixed.
  776. - Core dump fixed.
  777. - Bandwidth allocation fixed.
  778. - Memory code cleaning.
  779. - Logging fixed.
  780. 08/14/2014 Oleg Moskalenko <[email protected]>
  781. Version 4.1.2.1 'Vitari':
  782. - The origin attribute is verified in the subsequent
  783. session messages (server flag --check-origin-consistency).
  784. - MySQL SSL connection support.
  785. - Crash fixed when the DB connection string is incorrect.
  786. - Minor docs fixes.
  787. 07/29/2014 Oleg Moskalenko <[email protected]>
  788. Version 4.1.1.1 'Vitari':
  789. - Forceful server-side session cancellation implemented
  790. (in telnet console).
  791. 07/22/2014 Oleg Moskalenko <[email protected]>
  792. Version 4.1.0.2 'Vitari':
  793. - SSODA (double allocation) draft support added.
  794. - DB "driver" abstraction and MongoDB support (by Federico Pinna).
  795. - multiple origins supported per request.
  796. - "allocation mismatch" condition fixed (merged from rfc5766-turn-server).
  797. - STUN BINDING response fixed in the case of -X (external address) option.
  798. - "pu" CLI command fixed.
  799. - session cleaning fixed in TCP relay functionality (RFC 6062).
  800. - some crash conditions fixed.
  801. - working on compilation warnings.
  802. 06/21/2014 Oleg Moskalenko <[email protected]>
  803. Version 4.0.1.3 'Severard':
  804. - Redis DB connection status fixed (Issue 129).
  805. - Logfile reset on SIGHUP
  806. (Gustavo Garcia suggestion).
  807. - Log reset CLI command.
  808. - Some error code corrections:
  809. * "Mobility forbidden" error changed, to value 405.
  810. * "Wrong credentials" situation is now treated as error 441.
  811. 06/06/2014 Oleg Moskalenko <[email protected]>
  812. Version 4.0.1.2 'Severard':
  813. - Bandwidth draft implemented.
  814. - Issues 126, 127 and 128 fixes merged from rfc5766-turn-server.
  815. 05/18/2014 Oleg Moskalenko <[email protected]>
  816. Version 4.0.0.2 'Threetrees':
  817. - Code cleaning.
  818. 05/07/2014 Oleg Moskalenko <[email protected]>
  819. Version 4.0.0.1 'Threetrees':
  820. - Kernel channel placeholder definitions.
  821. 05/02/2014 Oleg Moskalenko <[email protected]>
  822. Version 4.0.0.0 'Threetrees':
  823. - Multi-tenant server.
  824. 04/13/2014 Oleg Moskalenko <[email protected]>
  825. Version 3.2.3.6 'Marshal West':
  826. - Addresses logging fixed.
  827. - Redis admin options fixed.
  828. - Redis compilation cleaned.
  829. 04/07/2014 Oleg Moskalenko <[email protected]>
  830. Version 3.2.3.5 'Marshal West':
  831. - Mobile allocation quota fixed (issue 121);
  832. - --simple-log option added (Issue 122);
  833. - documentation fixes (REST API, Redis).
  834. 04/06/2014 Oleg Moskalenko <[email protected]>
  835. Version 3.2.3.4 'Marshal West':
  836. - Mobile TCP sessions fixed (issue 120);
  837. - log information improvements.
  838. 04/04/2014 Oleg Moskalenko <[email protected]>
  839. Version 3.2.3.3 'Marshal West':
  840. - Pkey and cert file descriptors to be closed
  841. on initialization (issue 118);
  842. - Address bind indefinite cycle on start-up fixed
  843. (Issue 119);
  844. - Allocation counters time lag improved.
  845. 03/30/2014 Oleg Moskalenko <[email protected]>
  846. Version 3.2.3.2 'Marshal West':
  847. - Allocation counters fixed (issue 117);
  848. - a possible core dump in the server code fixed;
  849. - a possible memory leak in server fixed.
  850. 03/29/2014 Oleg Moskalenko <[email protected]>
  851. Version 3.2.3.1 'Marshal West':
  852. - TCP congestion avoidance completed.
  853. - Read and write streams are treated separately in
  854. bandwidth control.
  855. - Test client fixed.
  856. - Experimental SHA256 key storage supported.
  857. 03/17/2014 Oleg Moskalenko <[email protected]>
  858. Version 3.2.2.912 'Marshal West':
  859. - TCP-in-TCP congestion avoidance implemented.
  860. - UDP-in-TCP congestion avoidance improved.
  861. - Alternate-server code cleaned.
  862. 03/10/2014 Oleg Moskalenko <[email protected]>
  863. Version 3.2.2.911 'Marshal West':
  864. - "Congestion control" for UDP-inside-TCP tunneling;
  865. - memory management improvements;
  866. - socket logging improvements;
  867. - debug info added to CentOS and Fedora RPMs;
  868. - TCP traffic buffering improved;
  869. - Thread barriers cleaned;
  870. - TCP memory leak fixed;
  871. - minor TCP test client improvement.
  872. 03/09/2014 Oleg Moskalenko <[email protected]>
  873. Version 3.2.2.910 'Marshal West':
  874. - Log messages extended and cleaned.
  875. - Some memory cleaning.
  876. 03/02/2014 Oleg Moskalenko <[email protected]>
  877. Version 3.2.2.9 'Marshal West':
  878. - Issue 113 fixed (TCP rate limit fixed);
  879. - Issue 114 fixed (TCP stability).
  880. 02/18/2014 Oleg Moskalenko <[email protected]>
  881. Version 3.2.2.8 'Marshal West':
  882. - Issue 102: SO_BSDCOMPAT socket option removed;
  883. - Issue 104: check for the REALM attribute value;
  884. - Issue 105: no-cli segfault fixed;
  885. - Issue 106: MESSAGE-INTEGRITY removed from DATA indication;
  886. - Issue 108: Server should return 438 on unknown nonce;
  887. - Issue 109: make the random functions stronger (mostly for
  888. transaction ID and for nonce);
  889. - Issue 111: fix valgrind warning on memory initialization.
  890. - Issue 112: RTCP sockets logging.
  891. 02/12/2014 Oleg Moskalenko <[email protected]>
  892. Version 3.2.2.7 'Marshal West':
  893. - Possible indefinite cycle fixed in TCP/TCP routing (Issue 99);
  894. - Address 0.0.0.0 can be used as a listener address (Issue 100);
  895. - DHCP-configured servers supported (Issue 101);
  896. 02/04/2014 Oleg Moskalenko <[email protected]>
  897. Version 3.2.2.6 'Marshal West':
  898. - Channel traffic memory copy elimination.
  899. - Send indication memory copy elimination.
  900. - DTLS traffic processing memory copy eliminated.
  901. - Mobility forbidden error code number fixed - according to the new draft document.
  902. - getsockname() usage minimized.
  903. - port allocation improved.
  904. - default relay behavior fixed (when no relay addresses defined).
  905. - atomic create permission request handling (Issue 97).
  906. 01/25/2014 Oleg Moskalenko <[email protected]>
  907. Version 3.2.2.5 'Marshal West':
  908. - code optimization.
  909. 01/24/2014 Oleg Moskalenko <[email protected]>
  910. Version 3.2.2.4 'Marshal West':
  911. - HMAC key handling fixed (Issue 96).
  912. 01/23/2014 Oleg Moskalenko <[email protected]>
  913. Version 3.2.2.3 'Marshal West':
  914. - Security fix (issue 95).
  915. - Default "implicit" relay IP allocation policy is more usable
  916. (issue 94 fixed).
  917. - SSLv2 fixed (for those who are still using it)
  918. (issue 93 fixed).
  919. - Cosmetic changes.
  920. 01/19/2014 Oleg Moskalenko <[email protected]>
  921. Version 3.2.2.1 'Marshal West':
  922. - CPU/memory cache optimization (memory locality).
  923. - torture tests enhanced.
  924. - stability fixes.
  925. - minor possible memory leak fix.
  926. - new TLS options: --no-sslv2, --no-sslv3, --no-tlsv1,
  927. --no-tlsv1_1, --no-tlsv1_2
  928. 01/06/2014 Oleg Moskalenko <[email protected]>
  929. Version 3.2.1.4 'Marshal West':
  930. - Linux epoll performance improvements.
  931. - DTLS minor fix.
  932. 01/06/2014 Oleg Moskalenko <[email protected]>
  933. Version 3.2.1.3 'Marshal West':
  934. - Telnet client added to installation when necessary.
  935. 01/05/2014 Oleg Moskalenko <[email protected]>
  936. Version 3.2.1.2 'Marshal West':
  937. - Config file adjusted for DragonFly.
  938. 01/03/2014 Oleg Moskalenko <[email protected]>
  939. Version 3.2.1.1 'Marshal West':
  940. - Minor TLS fix.
  941. - Default cipher list is DEFAULT now.
  942. 12/26/2013 Oleg Moskalenko <[email protected]>
  943. Version 3.2.1.0 'Marshal West':
  944. - Optimized TCP network engine for Linux 3.9+.
  945. - Security fix: DH and ECDH temporary keys are now
  946. regenerated for each TLS or DTLS session.
  947. - Fix for systems with multiple CPU cores (more than 128).
  948. - DH TLS key now can be configured as 566, 1066 (default) or 2066 bits.
  949. - DH TLS key can be taken from a PEM file.
  950. - Issue 91 (test client crash) fixed.
  951. - Configurable net engine type.
  952. 12/25/2013 Oleg Moskalenko <[email protected]>
  953. Version 3.1.6.0 'Arch Lector':
  954. - Timers optimization: linked list timers structure
  955. for often-used intervals.
  956. 12/23/2013 Oleg Moskalenko <[email protected]>
  957. Version 3.1.5.3 'Arch Lector':
  958. - HTTP "keep-alive" support improved.
  959. - TCP channel "fortification".
  960. 12/19/2013 Oleg Moskalenko <[email protected]>
  961. Version 3.1.5.1 'Arch Lector':
  962. - Private key password allowed for encrypted keys.
  963. - HTTP "keep-alive" supported.
  964. - "psd" CLI command added (ps dump to file).
  965. 12/18/2013 Oleg Moskalenko <[email protected]>
  966. Version 3.1.4.2 'Arch Lector':
  967. - Time functions optimization.
  968. - Online changes to the alternate servers list thru telnet CLI.
  969. - Certificate chain files allowed.
  970. 12/13/2013 Oleg Moskalenko <[email protected]>
  971. Version 3.1.3.1 'Arch Lector':
  972. - "Start time" ps command info added.
  973. - Protocol option added to "pu" command.
  974. - "Delete allocation" debug message fixed.
  975. - "Allocation id" debug info message fixed.
  976. - RFC6062 usage statistics fixed.
  977. - Info/Debug messages cleaned.
  978. 12/11/2013 Oleg Moskalenko <[email protected]>
  979. Version 3.1.2.3 'Arch Lector':
  980. - CentOS 6 package fixed.
  981. 12/10/2013 Oleg Moskalenko <[email protected]>
  982. Version 3.1.2.2 'Arch Lector':
  983. - ps output typo fixed (TLS params).
  984. - configurable EC curve name.
  985. - CLI TLS-related information extended.
  986. - "print users" (pu) CLI command added.
  987. 12/09/2013 Oleg Moskalenko <[email protected]>
  988. Version 3.1.2.1 'Arch Lector':
  989. - DH cipher suites basic implementation.
  990. - Elliptic Curve cipher suites basic implementation.
  991. - RFC 6062 crash fixed.
  992. - More CLI parameters added.
  993. - Redis allocation statistics fixed.
  994. - Number of cli max session lines configurable.
  995. - uclient cipher suite configurable.
  996. 12/08/2013 Oleg Moskalenko <[email protected]>
  997. Version 3.1.1.0 'Arch Lector':
  998. - Telnet CLI.
  999. - RFC 6062 internal messaging fixed.
  1000. - Server relay endpoints (a non-standard feature).
  1001. - "atomic line" stdout log print.
  1002. - printed help minor fix.
  1003. - client program does not necessary
  1004. require certificate for TLS.
  1005. - docs fixes.
  1006. - allocation quota bug fixed.
  1007. 11/29/2013 Oleg Moskalenko <[email protected]>
  1008. Version 3.0.2.1 'Practical Frost':
  1009. - TCP stability fixes.
  1010. - RFC 6062 "first packet(s)" bug fixed.
  1011. - RFC 6062 stability fixes.
  1012. - Multithreaded Mobile ICE.
  1013. 11/28/2013 Oleg Moskalenko <[email protected]>
  1014. Version 3.0.1.4 'Practical Frost':
  1015. - CentOS/Fedora packaging fixed.
  1016. - PID file fixed.
  1017. 11/26/2013 Oleg Moskalenko <[email protected]>
  1018. Version 3.0.1.3 'Practical Frost':
  1019. - Misc cosmetic changes.
  1020. - CentOS/Fedora packaging fixed.
  1021. 11/25/2013 Oleg Moskalenko <[email protected]>
  1022. Version 3.0.1.2 'Practical Frost':
  1023. - Mobility draft implemented.
  1024. - DTLS communications fixes.
  1025. - UDP Linux optimization.
  1026. - Log output time starts with 0.
  1027. - A new "drop root privileges" options:
  1028. --proc-user and --proc-group added.
  1029. - SHA256 agility updated: 426 error code on too weak SHA function.
  1030. - "-m 0" and "-m 1" options improved.
  1031. - non-threading environment support dropped.
  1032. - stability fixes.
  1033. - OpenSUSE support added.
  1034. 11/10/2013 Oleg Moskalenko <[email protected]>
  1035. Version 3.0.0.0 'Practical Frost':
  1036. - New network engine for Linux kernel 3.9+.
  1037. 11/08/2013 Oleg Moskalenko <[email protected]>
  1038. Version 2.6.7.2 'Harding Grim':
  1039. - SHA256 agility updated: 441 error code on too weak SHA function.
  1040. 11/07/2013 Oleg Moskalenko <[email protected]>
  1041. Version 2.6.7.1 'Harding Grim':
  1042. - CentOS / Fedora uninstall script.
  1043. - Debian compilation error fixed.
  1044. - OpenSSL 0.9.7 and earlier build fixed.
  1045. - NetBSD build fixed.
  1046. 11/03/2013 Oleg Moskalenko <[email protected]>,
  1047. Peter Dunkley <[email protected]>
  1048. Version 2.6.7.0 'Harding Grim':
  1049. - CentOS 6 pre-compiled distribution.
  1050. - Fedora pre-compiled distribution.
  1051. - TURN_NO_TLS case compilation cleaning.
  1052. - Text files cleaning.
  1053. - Issue 68 fixed (no-stun option added).
  1054. 10/27/2013 Oleg Moskalenko <[email protected]>
  1055. Version 2.6.6.1 'Harding Grim':
  1056. - SHA256 added as a non-standard message integrity option.
  1057. - CentOS rpm specs added.
  1058. - Peter Dunkley added to the authors list.
  1059. 10/20/2013 Oleg Moskalenko <[email protected]>
  1060. Version 2.6.6.0 'Harding Grim':
  1061. - Cygwin loopback relay interfaces fixed (Issue 62).
  1062. - rpath added to the Makefile (Issue 63).
  1063. - CONFLICTS added to FreeBSD port Makefile (Issue 64).
  1064. - Certificate check options, for server and for the test client (Issue 65).
  1065. - Some compilation cleaning.
  1066. 10/09/2013 Oleg Moskalenko <[email protected]>
  1067. Version 2.6.5.2 'Harding Grim':
  1068. - Documentation changes.
  1069. - Redis-related memory leak fixed (Issue 61).
  1070. 09/25/2013 Oleg Moskalenko <[email protected]>
  1071. Version 2.6.4.1 'Harding Grim':
  1072. - Crash on uninitialized redis db name is fixed (Issue 59).
  1073. - Optional authentication of STUN Binding request is implemented (Issue 60).
  1074. 09/16/2013 Oleg Moskalenko <[email protected]>
  1075. Version 2.6.3.1 'Harding Grim':
  1076. - Issue 58: support changing white/black IP lists while server is running.
  1077. database tables (keys for redis) added for that new functionality.
  1078. 09/03/2013 Oleg Moskalenko <[email protected]>
  1079. Version 2.6.2.2 'Harding Grim':
  1080. - Issue 52: RFC 6062 relay endpoints connection process
  1081. fixed for Linux pre-3.9 kernel.
  1082. 09/03/2013 Oleg Moskalenko <[email protected]>
  1083. Version 2.6.2.1 'Harding Grim':
  1084. - UDP performance improvements.
  1085. - Issue 56: DTLS scaleability improvements.
  1086. - Issue 55: DTLS support in Cygwin.
  1087. - Issue 57: --pidfile option
  1088. - Issue 52: RFC 6062 relay endpoints connection process fixed.
  1089. - Issue 53: Fingerprints added to the indications.
  1090. - Issue 54: Long-term credentials mechanism integrity and software attributes
  1091. added to the indications.
  1092. 08/11/2013 Oleg Moskalenko <[email protected]>
  1093. Version 2.6.1.4 'Harding Grim':
  1094. - UDP memory leak fixed.
  1095. 08/11/2013 Oleg Moskalenko <[email protected]>
  1096. Version 2.6.1.3 'Harding Grim':
  1097. - DTLS crash fix.
  1098. 08/10/2013 Oleg Moskalenko <[email protected]>
  1099. Version 2.6.1.2 'Harding Grim':
  1100. - TLS buffer decreased to avoid memory problems.
  1101. - TLS BIO object fix.
  1102. - UDP socket open/reopen process fixed.
  1103. 08/08/2013 Oleg Moskalenko <[email protected]>
  1104. Version 2.6.1.1 'Harding Grim':
  1105. - Network optimization:
  1106. * "pure" UDP setup optimized (when no DTLS configured);
  1107. * Auxiliary listening endpoints (configured by
  1108. --aux-server=<ip:port>).
  1109. * --udp-self-balance option to balance the UDP traffic
  1110. among the aux endpoints (for clients supporting
  1111. 300 ALTERNATE-SERVER response).
  1112. - Security improvements:
  1113. * no authentication required on the load balancer server (Issue 50).
  1114. * REST API improvement:
  1115. = --secret-ts-exp-time option deprecated;
  1116. = In REST API timestamp, we are now using
  1117. the expiration time (Issue 31).
  1118. * Configurable cipher suite in the TURN server.
  1119. * SSLv3 support.
  1120. * TLS 1.1 and 1.2 support.
  1121. * SSLv2 "encapsulation" mode support.
  1122. * NULL OpenSSL cipher is allowed to be negotiated between
  1123. server and client.
  1124. * -U option (NULL cipher) added to the test client.
  1125. * DTLS crash fixed on overload.
  1126. - STUN enhancements and fixes:
  1127. * Classic STUN transaction ID fixed (Issue 48).
  1128. * Classic STUN attribute ERROR fixed (Issue 49).
  1129. * Unused RFC 5780 functionality removed from TCP, TLS and DTLS relays.
  1130. * resources optimization for stun-only: short connection expiration time.
  1131. 07/26/2013 Oleg Moskalenko <[email protected]>,
  1132. Vladimir Tsanev <[email protected]>
  1133. Version 2.5.2.1 'Shivers':
  1134. - log file placement changes.
  1135. - Base64 encode/decode memory initialization fix.
  1136. 07/23/2013 Oleg Moskalenko <[email protected]>,
  1137. Po-sheng Lin <[email protected]>
  1138. Version 2.5.1.2 'Shivers':
  1139. - getopt fix in client test programs.
  1140. - cosmetic changes.
  1141. - allow anonymous alternate-server functionality.
  1142. 07/21/2013 Oleg Moskalenko <[email protected]>
  1143. Version 2.5.1.1 'Shivers':
  1144. - Improved "split" network engine:
  1145. two different threading models for TCP and UDP.
  1146. - DTLS crash fixed.
  1147. - Multithreading with Cygwin.
  1148. 07/20/2013 Oleg Moskalenko <[email protected]>
  1149. Version 2.1.3.1 'Shivers':
  1150. - DTLS improvements for DOS attacks
  1151. - deeper optimization for DOS attack (mostly for Linux)
  1152. 07/19/2013 Oleg Moskalenko <[email protected]>
  1153. Version 2.1.2.0 'Shivers':
  1154. - deeper optimization for DOS attack (mostly for Linux)
  1155. 07/18/2013 Oleg Moskalenko <[email protected]>,
  1156. Po-sheng Lin <[email protected]>
  1157. Version 2.1.1.1 'Shivers':
  1158. - udp fixes.
  1159. - Makefile cleaning.
  1160. - Dependencies cleaning.
  1161. - DOS attack client emulation.
  1162. - DOS attack defense logic added to the server.
  1163. 07/14/2013 Oleg Moskalenko <[email protected]>
  1164. Version 2.0.0.0 'Shivers':
  1165. - new networking engine:
  1166. - scalable UDP socket model.
  1167. - multithreaded TCP relay implemented.
  1168. - race condition fixed in authentication of TCP sessions.
  1169. - Cygwin "port" fixed.
  1170. 06/23/2013 Oleg Moskalenko <[email protected]>,
  1171. Vladimir Tsanev <[email protected]>
  1172. Version 1.8.7.0 'Black Dow':
  1173. - Added support for obsolete "classic" STUN RFC 3489;
  1174. - Full TURN support for Cygwin implemented: MS-Win UDP sockets fixed;
  1175. - Relay threads number changed;
  1176. - Fedora warnings fixed;
  1177. - turndb/testdbsetup.sh example file added;
  1178. - Multiple Makefile and ./configure script fixes implemented:
  1179. * Changes taken from Arch Linux port;
  1180. * Manpages installation and deinstallation;
  1181. * rfc5769check utility removed from installation, it is used for the
  1182. compilation result test only and makes no sense for the end user;
  1183. * "--parameter" format support in ./configure script; it allows
  1184. simpler native OS package definitions (like in Debian package);
  1185. * Mac OS X linking warnings removed.
  1186. * pthread test fixed.
  1187. 06/08/2013 Oleg Moskalenko <[email protected]>
  1188. Version 1.8.6.3 'Black Dow':
  1189. - DONT-FRAGMENT flag removed on UDP listening (clients-facing) sockets.
  1190. - UDP fix for Cygwin only: UDP channels work fine now.
  1191. - docs fixes.
  1192. 06/06/2013 Oleg Moskalenko <[email protected]>
  1193. Version 1.8.6.2 'Black Dow':
  1194. - Just cosmetic re-packaging for Debian, tarball warnings removed.
  1195. 06/05/2013 Oleg Moskalenko <[email protected]>
  1196. Version 1.8.6.1 'Black Dow':
  1197. - Peer permissions bug fixed.
  1198. 06/03/2013 Oleg Moskalenko <[email protected]>
  1199. Version 1.8.6.0 'Black Dow':
  1200. - Optimization.
  1201. - Mac OS X compilation fixes.
  1202. 06/01/2013 Oleg Moskalenko <[email protected]>
  1203. Version 1.8.5.4 'Black Dow':
  1204. - Issues 29 and 30 fixed (channels padding).
  1205. - minor fixes.
  1206. - Mac OS X compilation fixes.
  1207. - Cygwin-related compilation fixes and INSTALL additions.
  1208. 05/31/2013 Oleg Moskalenko <[email protected]>
  1209. Version 1.8.5.3 'Black Dow':
  1210. - REST API extra script example and docs extension.
  1211. 05/26/2013 Oleg Moskalenko <[email protected]>
  1212. Version 1.8.5.1 'Black Dow':
  1213. - Config file parsing fixed (Issue 28)
  1214. 05/20/2013 Oleg Moskalenko <[email protected]>,
  1215. Erik Johnston <[email protected]>
  1216. Version 1.8.5.0 'Black Dow':
  1217. - IP access control lists.
  1218. - log file name fix.
  1219. - alt-* ports default behavior changed.
  1220. - "passive TCP" option in uclient.
  1221. 05/18/2013 Oleg Moskalenko <[email protected]>
  1222. Version 1.8.4.5 'Black Dow':
  1223. - socket conditions cleaned (SIGPIPE, etc)
  1224. 05/17/2013 Oleg Moskalenko <[email protected]>
  1225. Version 1.8.4.4 'Black Dow':
  1226. - configuration and installation adjusted for:
  1227. - NetBSD;
  1228. - Solaris;
  1229. - OpenBSD;
  1230. - Screen messages fixed;
  1231. - code security fixes.
  1232. 05/15/2013 Oleg Moskalenko <[email protected]>
  1233. Version 1.8.4.3 'Black Dow':
  1234. - Compilation warning removed.
  1235. - Log file fixed (Issue 26)
  1236. 05/15/2013 Oleg Moskalenko <[email protected]>
  1237. Version 1.8.4.2 'Black Dow':
  1238. - repackaging for Debian compliance. Docs separated.
  1239. 05/14/2013 Oleg Moskalenko <[email protected]>
  1240. Version 1.8.4.1 'Black Dow':
  1241. - Cosmetics (docs, warnings, etc).
  1242. - More complex case of TURN-server-behind-NAT is implemented,
  1243. when multiple public-ip/private-ip mappings are involved.
  1244. 05/13/2013 Oleg Moskalenko <[email protected]>
  1245. Version 1.8.4.0 'Black Dow':
  1246. - Redis DB support added.
  1247. - Crash on help text fixed.
  1248. - Max allocation time can be changed in the command-line or
  1249. in the config file.
  1250. 05/09/2013 Oleg Moskalenko <[email protected]>
  1251. Version 1.8.3.9 'Black Dow':
  1252. - No changes - just the tarball is repackaged for Debian compatibility.
  1253. 05/07/2013 Oleg Moskalenko <[email protected]>
  1254. Version 1.8.3.8 'Black Dow':
  1255. - multicast and loopback addresses disallow options added.
  1256. - option to direct all log messages to the system log (syslog).
  1257. 05/02/2013 Oleg Moskalenko <[email protected]>
  1258. Version 1.8.3.7 'Black Dow':
  1259. - Allocation status log.
  1260. 05/01/2013 Oleg Moskalenko <[email protected]>
  1261. Version 1.8.3.6 'Black Dow':
  1262. - Stuntman client interoperability fixed.
  1263. - Manpages installation fixed.
  1264. 04/30/2013 Oleg Moskalenko <[email protected]>
  1265. Version 1.8.3.5 'Black Dow':
  1266. - Lintian fixes.
  1267. 04/27/2013 Oleg Moskalenko <[email protected]>
  1268. Version 1.8.3.4 'Black Dow':
  1269. - Installation fixes.
  1270. 04/26/2013 Oleg Moskalenko <[email protected]>
  1271. Version 1.8.3.3 'Black Dow':
  1272. - Log file midnight rollover implemented (Issue 15).
  1273. 04/25/2013 Oleg Moskalenko <[email protected]>
  1274. Version 1.8.3.1 'Black Dow':
  1275. - Configurable REST API separator symbol (Issue 16).
  1276. - Stale Nonce bug fixed (Issue 17).
  1277. - Minor client fix.
  1278. 04/21/2013 Oleg Moskalenko <[email protected]>
  1279. Version 1.8.3.0 'Black Dow':
  1280. - STUN stand-alone functionality improved according to RFC 5389.
  1281. - ALTERNATE-SERVER implemented as "light" load balancing feature.
  1282. - stun-only option implemented.
  1283. - scripts directory reorganized.
  1284. 04/19/2013 Oleg Moskalenko <[email protected]>
  1285. Version 1.8.2.1 'Black Dow':
  1286. - Misc docs fixes.
  1287. 04/13/2013 Oleg Moskalenko <[email protected]>
  1288. Version 1.8.2.0 'Black Dow':
  1289. - Multiple database shared secrets supported for REST API.
  1290. - Added support for some OpenSSL FIPS versions (like openssl 0.9.8e-fips-rhel5).
  1291. 04/13/2013 Oleg Moskalenko <[email protected]>
  1292. Version 1.8.1.3 'Black Dow':
  1293. - Maintenance (docs, etc).
  1294. - Added partial support for Cygwin. Only TCP & TLS protocols
  1295. are support for client-to-server communications (as in RFC 5766 and
  1296. RFC 6062). UDP supported only for relay communications. DTLS is not
  1297. supported at all. The problem is in Winsock UDP sockets implementation.
  1298. 04/11/2013 Oleg Moskalenko <[email protected]>
  1299. Version 1.8.1.2 'Black Dow':
  1300. - Work on configuration and build.
  1301. 04/9/2013 Oleg Moskalenko <[email protected]>
  1302. Version 1.8.1.1 'Black Dow':
  1303. - Docs improvements.
  1304. - Load balancing use case added to TurnNetworks.pdf.
  1305. - Verbose mode split into 'normal' and 'extra' modes.
  1306. - Logging extended and fixed.
  1307. 04/7/2013 Oleg Moskalenko <[email protected]>
  1308. Version 1.8.1.0 'Black Dow':
  1309. - Compilation flags improved.
  1310. - utility programs renamed and moved to bin/ directory.
  1311. - README and turnserver man page separated into three sections -
  1312. turnserver, turnadmin, turnutils.
  1313. 04/6/2013 Oleg Moskalenko <[email protected]>
  1314. Version 1.8.0.6 'Black Dow':
  1315. - Added option "--psql-userdb" for better visual separation
  1316. between PostgreSQL and MySQL stuff.
  1317. - turnadmin flat files handling fixed.
  1318. - added set/show commands to turnadmin for secret key.
  1319. 04/6/2013 Oleg Moskalenko <[email protected]>
  1320. Version 1.8.0.5 'Black Dow':
  1321. - turnadmin MySQL connection fixed.
  1322. - minor cosmetic changes.
  1323. - Added "list" commands for long-term and short-term users,
  1324. to turnadmin.
  1325. 04/5/2013 Oleg Moskalenko <[email protected]>
  1326. Version 1.8.0.4 'Black Dow':
  1327. - Minor compilation fixes.
  1328. - Minor docs fixes.
  1329. - "connect_timeout" option support for MySQL.
  1330. 04/5/2013 Oleg Moskalenko <[email protected]>
  1331. Version 1.8.0.3 'Black Dow':
  1332. - Issue 11 (secret timestamp check) fixed.
  1333. 04/4/2013 Oleg Moskalenko <[email protected]>
  1334. Version 1.8.0.2 'Black Dow':
  1335. - TCP sockets flush removed.
  1336. - rfc5769check utility removed from the Makefile.
  1337. 04/4/2013 Oleg Moskalenko <[email protected]>
  1338. Version 1.8.0.1 'Black Dow':
  1339. - Some short-term auth problems fixed.
  1340. - rfc5769check utility added to the Makefile and upgraded.
  1341. 04/3/2013 Oleg Moskalenko <[email protected]>
  1342. Version 1.8.0.0 'Black Dow':
  1343. - Short-term credentials mechanism implemented.
  1344. 04/2/2013 Oleg Moskalenko <[email protected]>
  1345. Version 1.7.3.1 'Superior Glokta':
  1346. - Listeners code cleaned.
  1347. - The default number of extra relay threads changes from 0 to 1.
  1348. 04/1/2013 Oleg Moskalenko <[email protected]>
  1349. Version 1.7.3.0 'Superior Glokta':
  1350. - Issue 10 fixed: log file control options.
  1351. Two options added: --no-stdout-log and --log-file.
  1352. 03/29/2013 Oleg Moskalenko <[email protected]>
  1353. Version 1.7.2.0 'Superior Glokta':
  1354. - Issue 9 fixed (uclient).
  1355. - Secret-based authentication implemented (see https://github.com/coturn/coturn/blob/master/README.turnserver).
  1356. - Uclient docs fixed.
  1357. - database schema extended (table for the secret added).
  1358. 03/27/2013 Oleg Moskalenko <[email protected]>
  1359. Version 1.7.1.2 'Superior Glokta':
  1360. - CHANNEL BIND request handling fixed: now it produces an error
  1361. when client is trying to tie the same peer address to
  1362. different channels.
  1363. - uclient and peer test apps upgraded so that RTP channels
  1364. are talking to <port> and RTCP channels are talking
  1365. to <port+1> in client-to-peer communication patterns.
  1366. - compilation warning is fixed when MySQL is not used.
  1367. 03/27/2013 Oleg Moskalenko <[email protected]>
  1368. Version 1.7.1.1 'Superior Glokta':
  1369. - CONNECT response fixed in RFC 6062.
  1370. - uclient checks server responses integrity.
  1371. 03/26/2013 Oleg Moskalenko <[email protected]>
  1372. Version 1.7.1.0 'Superior Glokta':
  1373. - MySQL support added for the user keys repository.
  1374. - PostgreSQL support improved.
  1375. - Docs fixed.
  1376. - 64 bits platform fixes.
  1377. 03/23/2013 Oleg Moskalenko <[email protected]>
  1378. Version 1.7.0.0 'Glokta':
  1379. - Authentication fix.
  1380. - PostgreSQL database can be used as the user keys repository.
  1381. 03/21/2013 Oleg Moskalenko <[email protected]>
  1382. Version 1.6.1.3 'Whirrun':
  1383. - UDP segmentation fault fixed
  1384. 03/21/2013 Oleg Moskalenko <[email protected]>
  1385. Version 1.6.1.2 'Whirrun':
  1386. - RFC 6062 fix
  1387. 03/21/2013 Oleg Moskalenko <[email protected]>
  1388. Version 1.6.1.1 'Whirrun':
  1389. - Authentication error fixed
  1390. 03/19/2013 Oleg Moskalenko <[email protected]>
  1391. Version 1.6.1.0 'Whirrun':
  1392. - --stale-nonce option
  1393. - working on userdb
  1394. - "hang on" option fixed in uclient
  1395. 03/18/2013 Oleg Moskalenko <[email protected]>
  1396. Version 1.6.0.2 'Whirrun':
  1397. - working on userdb
  1398. - c++ compilation fix
  1399. 03/17/2013 Oleg Moskalenko <[email protected]>
  1400. Version 1.6.0.1 'Whirrun':
  1401. - uclient performance improved
  1402. - TurnNetworks.pdf document added
  1403. 03/15/2013 Oleg Moskalenko <[email protected]>
  1404. Version 1.6.0.0 'Whirrun':
  1405. - "Pure" TCP relaying (RFC 6062) implemented.
  1406. - Network interactions fixes.
  1407. - RFC 6062 test scripts added.
  1408. 03/03/2013 Oleg Moskalenko <[email protected]>
  1409. Version 1.5.2.8 'Iosiv Lestek':
  1410. - authorization processing improvements.
  1411. - peer application fixed.
  1412. - some ICE attributes added.
  1413. 02/27/2013 Oleg Moskalenko <[email protected]>
  1414. Version 1.5.2.7 'Iosiv Lestek':
  1415. - authorization processing improvements
  1416. - Issue 4 fixed.
  1417. - secure client-to-client script added
  1418. 02/22/2013 Oleg Moskalenko <[email protected]>
  1419. Version 1.5.2.6 'Iosiv Lestek':
  1420. - strcpy/strncpy fixed
  1421. - some screen messages fixed
  1422. - uclient statistics fixed
  1423. - software attribute fixed
  1424. - example scripts fixed
  1425. 02/16/2013 Oleg Moskalenko <[email protected]>
  1426. Version 1.5.2.5 'Lestek':
  1427. - uclient application fixed
  1428. - Docs fixes
  1429. 02/14/2013 Oleg Moskalenko <[email protected]>
  1430. Version 1.5.2.4 'Lestek':
  1431. - Crash fixed on unconfigured interfaces
  1432. - Docs fixes
  1433. 02/12/2013 Oleg Moskalenko <[email protected]>
  1434. Version 1.5.2.3 'Lestek':
  1435. - Added feature: TURN Server always uses fingerprints in a session if
  1436. the session client is using fingerprints.
  1437. - Default unsecure alternative port changed to 3479,
  1438. default secure alternative port changed to 5350.
  1439. - TURN Server always trying to search for default certificate file
  1440. turn_server_cert.pem and for default private key file
  1441. turn_server_pkey.pem, if not certificate or private key is
  1442. explicitly configured.
  1443. - configurable packet rate in the uclient test program.
  1444. - default peer port changed to 3480.
  1445. - -z, --no-auth option added to turnserver.
  1446. 02/11/2013 Oleg Moskalenko <[email protected]>
  1447. Version 1.5.2.2 'Lestek':
  1448. - Some cleanup added to the network input handlers.
  1449. 02/9/2013 Oleg Moskalenko <[email protected]>
  1450. Version 1.5.2.1 'Lestek':
  1451. - Binding requests do not require authentication.
  1452. - SOFTWARE in the end of the message.
  1453. 02/8/2013 Oleg Moskalenko <[email protected]>
  1454. Version 1.5.2.0 'Lestek':
  1455. - NAT discovery fixed (RFC5780).
  1456. 02/8/2013 Oleg Moskalenko <[email protected]>
  1457. Version 1.5.1.6 'Calder':
  1458. - Installation instructions fixed.
  1459. 02/8/2013 Oleg Moskalenko <[email protected]>
  1460. Version 1.5.1.5 'Calder':
  1461. - Mac compilation fixes.
  1462. - Fixes for old Linuxes.
  1463. 02/7/2013 Oleg Moskalenko <[email protected]>
  1464. Version 1.5.1.4 'Calder':
  1465. - Configuration alert (warning) messages.
  1466. - Relay addresses by default use listener addresses.
  1467. - Realm/user sequence fixed in the config file reading.
  1468. 01/27/2013 Oleg Moskalenko <[email protected]>
  1469. Version 1.5.1.3 'Calder':
  1470. - 'External' IP implemented for TURN-server-behind-NAT situation.
  1471. 01/26/2013 Oleg Moskalenko <[email protected]>
  1472. Version 1.5.1.2 'Calder':
  1473. - Alternative ports moved to 20000-ish territory.
  1474. - Docs fixes.
  1475. 01/22/2013 Oleg Moskalenko <[email protected]>
  1476. Version 1.5.1.1 'Calder':
  1477. - Docs fixes.
  1478. 01/22/2013 Oleg Moskalenko <[email protected]>
  1479. Version 1.5.1.0 'Calder':
  1480. - C++ compatible headers and build.
  1481. - C++ library header.
  1482. - HTML-formatted development reference.
  1483. 01/14/2013 Oleg Moskalenko <[email protected]>
  1484. Version 1.5.0.0 'Calder':
  1485. - RFC 5769 check utility implemented.
  1486. - RFC 5780 STUN extension implemented.
  1487. 01/13/2013 Oleg Moskalenko <[email protected]>
  1488. Version 1.4.2.5 'Scale':
  1489. - Issue 2 fixed.
  1490. 01/08/2013 Oleg Moskalenko <[email protected]>
  1491. Version 1.4.2.4 'Scale':
  1492. - Bogus "Bind to device" error message removed (Linux).
  1493. - Docs improvements.
  1494. 01/08/2013 Oleg Moskalenko <[email protected]>
  1495. Version 1.4.2.3 'Scale':
  1496. - Bandwidth limitation implemented (--max-bps option).
  1497. - DTLS communications improved.
  1498. 01/07/2013 Oleg Moskalenko <[email protected]>
  1499. Version 1.4.2.2 'Scale':
  1500. - Output messages fixed.
  1501. - Peer test application accepts multiple listening addresses.
  1502. - config search directories improved.
  1503. 01/06/2013 Oleg Moskalenko <[email protected]>
  1504. Version 1.4.2.1 'Scale':
  1505. - Examples directory structure fixed
  1506. - Installation fixes
  1507. - Output messages fixed
  1508. 01/05/2013 Oleg Moskalenko <[email protected]>
  1509. Version 1.4.2 'Scale':
  1510. - Daemon execution improved
  1511. - Installation fixes
  1512. - Added comments to the scripts
  1513. 01/04/2013 Oleg Moskalenko <[email protected]>
  1514. Version 1.4.1.2 'Scale':
  1515. - Configure script introduced
  1516. - Installation fixes
  1517. - Run as daemon
  1518. 01/01/2013 Oleg Moskalenko <[email protected]>
  1519. Version 1.4.1 'Scale':
  1520. - Options fixes
  1521. - Build fixes
  1522. - Script fixes
  1523. - Installation fixes
  1524. 12/31/2012 Oleg Moskalenko <[email protected]>
  1525. Version 1.4 'Scale':
  1526. - Separate file for the dynamic user database
  1527. - Build fixes
  1528. - Script fixes
  1529. - Logging fixes
  1530. 12/29/2012 Oleg Moskalenko <[email protected]>
  1531. Version 1.3.0.2 'Ferro':
  1532. - Debian 'squeeze' compilation fix
  1533. 12/26/2012 Oleg Moskalenko <[email protected]>
  1534. Version 1.3.0.1 'Ferro':
  1535. - install procedure minor improvements
  1536. 12/24/2012 Oleg Moskalenko <[email protected]>
  1537. Version 1.3 'Ferro':
  1538. - default conf file renamed to turnserver.conf
  1539. - build script improved
  1540. - client library linking fixed
  1541. - install procedure
  1542. 12/23/2012 Oleg Moskalenko <[email protected]>
  1543. Version 1.2.3 'Luthar':
  1544. - turnserver options fixed
  1545. - man page renamed to turnserver
  1546. 12/22/2012 Oleg Moskalenko <[email protected]>
  1547. Version 1.2.2:
  1548. - Man page fix
  1549. 12/21/2012 Oleg Moskalenko <[email protected]>
  1550. Version 1.2.1 'Juvens':
  1551. - Man page
  1552. 12/21/2012 Oleg Moskalenko <[email protected]>
  1553. Version 1.2 'Euz':
  1554. - Project cleaning
  1555. 12/20/2012 Oleg Moskalenko <[email protected]>
  1556. Version 1.1 'no name':
  1557. - DTLS extension
  1558. 12/17/2012 Oleg Moskalenko <[email protected]>
  1559. Version 1.0 'no name':
  1560. - RFC 5766
  1561. - RFC 6156