123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556 |
- * libZRTP SDK library, implements the ZRTP secure VoIP protocol.
- * Copyright (c) 2006-2009 Philip R. Zimmermann. All rights reserved.
- * Contact: http://philzimmermann.com
- * For licensing and other legal details, see the file zrtp_legal.c.
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- SINCE LIBZRTP v0.80 CHANGELOG IS A PART OF HTML DOCUMENTATION.
- Check generated html or doc/manuals/changelog.dox doxygen sources
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- libzrtp 0.7.1 18.11.2008
- --------------------------------------------------------------------------------
- 1. Fixed bug with hardcoded AES128 cipher for generating SRTP keys. In this
- version is selected according to ZRTP discovery.
-
- 2. Added initialization/deinitalization functions to zrtp helper functions.
- libzrtp 0.7.0 04.11.2008
- --------------------------------------------------------------------------------
- 1. Changes in libzrtp sources tree.
- 2. Improvements in libzrtp initialization routine:
- - all global zrtp options were combined in zrtp_config_t structure;
- - zrtp_init() allocates memory for zrtp global context;
- - zrtp_config_defaults()
- 3. Improvements for Passive/Active mode support.
- a) A passive endpoint never sends a commit message, period. Also, it
- declares itself as a passive endpoint by setting the P flag it its own
- Hello message;
- b) A active endpoint does not send a commit to a passive endpoint, which it
- recognizes by detecting the P flag;
- c) A passive phone, if acting as a SIP initiator (meaning it initiated the
- call), rejects all commit packets from everyone;
- d) A passive phone rejects all commit messages from a PBX, which is easily
- recognized by the M flag.
- Passive mode support is built into the library logic and will be used
- automatically if the developer specifies signaling role by setting
- is_initiator flag in zrtp_init_session_ctx().
- 4. Improvements in ZRTP feedback interface and system-dependent functions.
- There are two types of interface functions in libzrtp: system dependent API
- and realization of helper functions and events. System dependent API in
- defined in zrtp_iface_system.h as set of extern functions. System
- functions are already implemented for several basic platforms in
- zrtp_iface.sys.c libzrtp feedback and helper functions were re-factored
- and implemented as set of callbacks. If the developer doesn't want to
- handle one or another event it may just leave necessary pointer empty.
- See zrtp_init() and zrtp_callback_t, zrtp_iface.h for more details.
- 5. ZRTP configuration approach was improved: zrtp_config_xxx.h contains
- adjustments for necessary target platform. libzrtp contains default
- configs for Linux, OS X, Windows, Window CE and Symbian platforms.
- All ZRTP protocol and behavior related adjustments are collected in
- zrtp_config_user.h. Edit this file to configure libzrtp for your
- needs.
-
- 6. Implemented new functions in protocol according to the Internet Draft v 10.
- 7. Improved realization of built-in libzrtp scheduler. Fixed bug with crashing
- on performing delay call when zrtp session have been already deleted.
-
- 8. Logging function was improved. Use ZRTP_LOG macro to print log messages. See
- zrtp_log.h for more information.
- libzrtp 0.6.8 03.09.2008
- --------------------------------------------------------------------------------
- ZRTP
- 1. Fixed bug with incorrect maximum value for T1 retry interval timer which
- increased delay between LOOKING_FOR_ZRTP and NO_ZRTP_SUPPORT states.
- Internal fix, no API changes required;
- 2. Implemented version negotiation according to the latest specification.
- libzrtp v 0.6.8 supports ZRTP v0.90 only. No changes required in
- applications that use the SDK.
- 3. Compilation flag WITH_ZFONE was removed. The developer, who wants to use
- built-in ZRTP cache, has to set name of the ZRTP cache explicitly,
- implementing zrtp_get_cache_path() function.
- 4. New libzrtp licensing scheme was implemented. It allows the licensing policy
- to be changed at run time. See zrtp_license_mode_t doc. for more details.
- Affected API - zrtp_init().
- 5. ZRTP Protocol version was changed to 0.90 according to ZRTP Internet Draft.
- 6. Some changes in Linux config files: surplus configuration flags were removed
- from ./cfg.XXX templates.
- 7. Added experimental ZRTP messages retries scheduler for slow channels. As
- ex ample for GSM CSD channel with average bandwidth 6Kb/s. To use this
- option build library with BUILD_FOR_CSD flag.
- libzrtp 0.6.6 27.06.2008
- --------------------------------------------------------------------------------
- ZRTP
- 1. Small bug was fixed in S0 calculation: when RS1 is corrupted the library uses
- RS2 instead;
- 2. Some changes in Makefile and building process: unused header were eliminated
- from the installation process.
- 3. -DBUILD_WITH_ZRTP_MUTEXES was replaced with --enable_mutexes option passed to
- ./configure script. This change allows not to specify any libzrtp compilation
- flags during user application compilation. --enable-mutexes adds
- BUILD_ZRTP_MUTEXES definition to the ./config/zrtp_unix_config.h so if you
- build libzrtp on other platforms - define this flag manually (windows
- configuration file already includes this option).
- 4. Clean-up in .h and .c comments was made.
- libzrtp 0.6.5 04.06.2008
- --------------------------------------------------------------------------------
- ZRTP
- 1. New names for: other_secret - pbxs; srtps - auxs. In bits and secrets storages;
- 2. RS2 secret was eliminated form DH s0 calculation;
- 3. Protocol version number was increased to 0.85
- libzrtp 0.6.4 19.05.2008
- --------------------------------------------------------------------------------
- ZRTP
- 1. According to the new version of the Internet Draft Signaling shared secret was
- removed from the protocol and from the sources. It was not used by interface
- functions and developers may change nothing in libzrtp based applications.
-
- 2. DH4K Key echange was eleminated from the specification and from the sources.
- Now ECDH is used for all larger AES key sizes.
- libzrtp 0.6.2 04.02.2008
- --------------------------------------------------------------------------------
- ZRTP
- 1. New behaviour for Secure --> Clear --> Secure scenario was implemnted. According
- to ZRTP ID 06 section 5.7.2.1 new value of ZRTPSess computed as hash(ZRTPSess).
- DOC:
- Libzrtp documentation was updated up to version 0.6.2.
- libzrtp 0.6.1 03.14.2008
- --------------------------------------------------------------------------------
- ZRTP
- 1. Multistream mode was implemented according to ZRTP Internet Draft 05.n:
- - new stream mode zrtp_stream_mode_t:: ZRTP_STREAM_MODE_MULT;
- - Multistream key exchange component was added with ID zrtp_pktype_id_t::
- ZRTP_PKTYPE_MULT and symbolic name ZRTP_MULT. To allow libzrtp use Multistream
- mode - ZRTP_PKTYPE_MULT have to be added to the stream profile in the first
- position;
- - According to the new draft SAS and ZRTPSess key are Session option and
- were moved to the zrtp_conn_ctx_t structure. New specification defines
- single SAS values for all streams within the session;
- - ZRTP state-machine was changed to handle Multistream mode. In .Fast. mode
- DH exchange is omitted and stream skips ZRTP_STATE_WAIT_CONFIRM1 and
- ZRTP_STATE_PENDINGSECURE for the Initiator and Responder state-machines,
- respectively;
- 2. Hash preimages were added to prevent DOS attacks. See ZRTP ID sec 9.0 for detail
- information. This option is available using zrtp_set_signaling_hash() and
- zrtp_get_signaling_hash() functions.
- 3. Hmac values were added to every packet to allow eliminate SAS validation
- if SIP is protected;
- 4. Autosave. of the default realization of the ZRTP cache to the hard drive was
- implemented;
- 5. Lot of other internal changes and improvements according to the latest ZRTP
- specification v06.
-
- libzrtp 0.4.5-6
- --------------------------------------------------------------------------------
- 1. Full PBX support. Tested on GS-Labs Asterisk
- API:
- DOC:
-
- 2. Resolved problem with BG ciphers compilation: initialization of AES hash tables.
-
- 3. Fixed bug in SRTP replay protection. (Undeleted nodes for mulsy-stream encryption)
- (May resulted in a error zrtp_protocol_error_t::zrtp_status_rp_fail)
-
- 4. Vrification is a session option. Input parameter of zrtp_set_verified() was
- changed from stream to ZRTP session structure.
- 5. Fixed bug with malformed ZRTP Hello packet.
- 5. fast video
-
- libzrtp 0.4.4 31.07.2007
- --------------------------------------------------------------------------------
- 1. New extra error code for replay protection was added.
- See zrtp_status_t::zrtp_status_rp_fail.
-
- 2. Fixed bug which may resulted in a dammage with decrypt failed 7 error. It
- was happen when libzrtp passed RTP alerts packet to the replay protection
- engine and ROC was broken.
-
- 3. Fixed RTCP encryption/decryption.
-
- 4. Fixed bug with RS1 and RS2 swapping when one of the sides lost RS1.
- (May resulted in a error zrtp_protocol_error_t::zrtp_error_auth_decrypt )
- libzrtp 0.4.3 06.07.2007
- --------------------------------------------------------------------------------
- 1. Beta version of API for PBX support according to the latest ZRTP draft.
- Not tested. For internal development only. Follow // PBX comments;
- - secret's cache format was changed.
-
- 2. S0 calculation according to NIST recommendations; Internal change
- - ZRTP protocol version was increased to 0.07.
-
- 3. All libzrtp sources was audited with coverity code analyzer. http://coverity.com/
-
- libzrtp (0.3.9 - 0.4.2) 27.06.2008
- --------------------------------------------------------------------------------
- 1. Changes according to new draft 04a. All changes are internal.
- a) new DH packets: pvi/pvr, nonce field is at the end of the DH packet.
- In "Preshared" mode both DH packets contain nonce value instead of pvi/r;
- b) new hvi value the same for all modes (DH and Preshared)
- hvi = hash(initiator's DHPart2 message | responder's Hello message);
- c) new algorithm of SAS computing: sasvalue = HMAC(hmackeyi,"SAS");
- 2. New GUI based test-unite forSymbian platform
-
- 3. Default implementation of the packet retries unite for Symbian was added
- to the libzrtp package. Except besides scheduler, libzrtp includes
- realization of some synchronization and threading routines. These
- components written in C++ and can't be linked with the library. One should
- add them to own Symbian project project.
-
- 4. Compilation of default realization of ZRTP mutexes was separated from
- the other system interfaces. To build library with default mutexes
- BUILD_ZRTP_MUTEXES flag should be used;
-
- 5. New clearing logic. Goals:
- API:
- - state-machine states were changed
- - goclear reason was eliminated. Now we can switch to CLEAR just on
- user action.
- - ZRTP_EVENT_IS_INITIATINGCLEAR was removed as a uperfluous event. As a
- result all event codes were changed.
- - new clear_hmac = HMAC(hmakkeyi/r, "Clear Hmac")
- 6. New Errors handling logic. See updated state-macine diagram and "developers
- guide".
- API:
- - ZRTP_STATE_ERROR was added to handle error requests. Libzrtp switches
- to this state after the Error exchange. From ZRTP_STATE_ERROR stream
- cxan be started again or destroyed, depending on application strategy.
- - ZRTP_ERRORACK and ZRTP_ERROR packets were added
- - new event ZRTP_ENEVT_NO_ZRTP inform's user that other side doesn't
- support ZRTP encryption.
-
- 7. -D WITH_STACK_MINIM compilation flag allows to minimize coasts for the
- system stack. In the most critical places dynamic allocation will be used
- instead of static variables. This option can be useful on mobile platforms
- in kernel mode, etc.
-
- 8. Several bug fixes in scheduler. Improved built-in realization of Symbian
- platform. If you use our default realization on Symbian - please update.
-
- 9. David A. McGrew's srtp was replaced with our own. We did it to get control
- over all crypto functions, generalize interface of crypto component. It
- allows us to port libsrtp to any platforms more smoothly. We have one
- configuration file, all platform-dependent function and definitions are
- concentrated at one place. We eliminated superfluous functionality from
- libsrtp, made it crossplatform and thread-safe. In SRTP engine we use our
- own crypto-components based on by Dr. Brian Gladman's sources. Each component
- has strong self-test function allows it to be tested on any platform and
- in any environment.
- - project structure was changed;
- - bgaes folder includes AES and SHA routines by Dr. Brian Gladman. For details
- see dgaes/howto and bg2zrtp.h files;
- - libzrtp supports external realizations of SRTP (Use zrtp_srtp.h API and flag
- -D WITHOUT_BUILTIN_SRTP );
-
- 10. Header files were refactored: one can add just single zrtp.h include to use
- any libzrtp function or data type;
-
- 11. Solved problem with deadlock during Video conferences. (One side starts
- negotioation with Video and another one with Audio stream)
-
- 12. Some changes in test-unite:
- - test vectores and test-cases for all cryptio components are available;
- - zrtp_system_test.h checks environment and compilation flags
- - use ZRTP_ENABLE_TEST flag to build library with all tests
- 13. Full documentation review and updating.
-
- 14. Sources clean up and some refactoring;
-
- 15. Fixing in "break the tie" logic. See diagrams and zrtp_preparse_commit(),
- zrtp_preparse_init_commit();
-
- 16. Some changes according to the lates ZRTP specification:
- - sasvalue was trancated to 32 bits and used mostleft parts of the hashvalue.
-
- 17. Small bug fixes (zrtp_can_start_dh and zrtp_can_start_preshared() mixed into
- zrtp_can_start_stream);
-
- 18. New key derivation mechanism according to NIST standarts. See ZRTP Draft
- 5.4.4 and 5.5.4.
-
- libzrtp (0.3.7)
- --------------------------------------------------------------------------------
- 1. New, more clear and useful test-unite
- 2. Eliminated zrtp_stop_protocol(). Now zrtp_done_session_ctx() includes
- protocol stopping.
- 3. Some simplifications in project structure: removed zrtp_inet.h and bnase32.h,
- zrtp_iface.c was removed to src\iface folder;
- 4. ZSTR_GET_VALUE should be used to convert zrtp_stringxx_t to zrtp_stringn_t;
- 5. Some changes for windows CE;
- 6. Changed default options: SAS base256 enabled by defauld and "staysecure" is on.
- libzrtp (0.3.6)
- --------------------------------------------------------------------------------
- FIXES:
- a) CRC now covers the whole ZRTP packet, not just a body
- b) improved names of some crypto-components in HELLO/COMMIT packets
- c) improved messages hash: hash function covers all ZRTP message with
- magic number and length fields;
- d) fixed DHPart1 and DHPart2 packets format according to last version
- of ZRTP Internet draft.
- e) fixed retain secrets sorting algorithm according to the last version
- of the internet draft.
-
- 1. Windows CE support. Now library is fully compatible with Windows CE.
- - .\libzrtp\projects\libzrtp_wince_vc8.sln project file for MS VS 2005
- - .\libzrtp\test\WinCE contains sources of simple test-unite ( We have
- just started working in this direction and more intelligent test unite
- will be available soon. Tested on HTC S620 with Windows CE 2005 )
-
- 2. Added previous state field to ZRTP stream structure. It can be used to
- analyze conditions of switching from one state to another. (For libzrtp
- developers only)
- API:
- - zrtp_stream_ctx_t#_prev_state was added
- - _zrtp_change_state() MUST be used to switch from one state to another
-
- 3. Some changes in PENDING_CLEAR state handler. In case of error during
- transition from CLEAR to SECURE state-machine will switch back to CLEAR
- without the confirmation by user.
-
-
- libzrtp (0.3.5)
- --------------------------------------------------------------------------------
- Full description is in progress
-
- 1. Support of all crypto futures according to the new ZRTP draft v 0.3. Lots
- of internal changes were provided in ZRTP kernel.
- 2. Symbian support. Now you can build libzrtp and test unites on Symbian
- platforms. There are .inf and .mmp files in corresponded directories.
- (Symbian project files are a little bit row and we will appreciate any
- suggestions and advices.)
- 3. ZRTP stream became more independent. You can use different configurations
- for different streams. So
- ZRTP profile: profile;
- "staysecure" flag: staysecure;
- SAS values: sas_values;
- cache TTL: cache_ttl;
- and all used crypto components were removed from session context
- (zrtp_conn_ctx_t) to stream context (zrtp_stream_ctx_t).
- API:
- - you should configure every stream in the same way as the whole session in
- previous version has been done. See zrtp_init_session_ctx()
- and zrtp_attach_stream()
- 4. "Multistream" mode was replaced by "Preshared" (based on retain secrets
- from previous call. See http://zfoneproject.com/docs/ietf/draft-zimmermann-avt-zrtp-03.html#anchor19 .
- Preshared mode is available as a normal ZRTP crypto component e.g."DH3K"
- or "DH4K". If you enable Preshared mode in profile and libzrtp finds
- secrets in your cache - "Preshared" mode will be used for all next calls
- API:
- - the choice of stream mode was removed from zrtp_start_stream() and
- from zrtp_secure_stream().
- 5. Integer enumerations for all crypto components e.g. Hash type, cipher type
- etc. You should use these values instead of character values for optional
- profile configuration. (as an example for enabling "preshared" mode)
- API:
- - enumerations types zrtp_hash_id, zrtp_cipher_idzrtp_atl_id,
- zrtp_pktype_id, zrtp_sas_id in zrtp_crypto.h
- - all crypto components structures now have id field and libzrtp
- operates with this field to find, register or delete crypto
- components.
- - ZRTP profile: zrtp_profile_t uses this integer values too. (list of
- crypto-components is a zero terminated array of values of necessary
- type)
- - zrtp_find_in_profile() and zrtp_find_comp() operate with component
- integer identifiers
- - there are two special functions to convert component ID to ZRTP
- character name: zrtp_comp_id2type(), zrtp_comp_type2id.
- 6. Integer error codes were provided instead of 4-character values. One should
- use them to analyze zrtp_stream_ctx_t#last_error value in your ZRTP
- errors handlers.
- API:
- - zrtp_protocol_error_t was added to zrtp_error.h.
- - zrtp_stream_ctx_t#last_error now is an integer value from
- zrtp_protocol_error_t space.
- 7. Special function for verification of SAS value was added. One should use
- this function to set/unset SAS verification flag from his own
- application.
- API:
- - zrtp_set_verified() was added to zrtp.h
- 8. Some optimization of types was provided. Here are some possible changes which you
- need to make in your product:
- - libzrtp uses it own strings (zrtp_stringXX_t group) to operate with
- binary and character strings. In this version we made attempt to
- minimize memory coasts and replaced zrtp_string_t with zrtp_stringXX_t
- group, where XX - maximum length in bytes. zrtp_stringxx_t contains
- its length and as a result all functions for work with strings are
- type independent. So one should use one of these types to store binary
- strings and zrtp_stringn_t as a type of operand in all global functions.
- - all retain secrets holders and flags were removed to zrtp_secrets
- structure in zrtp_conn_ctx_t#secrets.
- - zrtp_packet_string4_t was replaced by zrtp_ucharXX_t group where XX -
- type length in bytes. These types are used in library for packets
- construction instead of char arrays.
- 9. Packets retries synchronization was added. zrtp_retry_task_t structure
- from zrtp_types_t is used for all operations with scheduler. One should
- use #callback and #timeout fields from this structure.
- API:
- - zrtp_send_packet_later(), zrtp_cancel_send_packet_later()
-
- libzrtp (0.3.4)
- --------------------------------------------------------------------------------
- 1. ZRTP state-macine was fully refactored. All transitions between states
- are absolutely identical to diagram attached to documentation.
- DOC:
- - See doc/img/png/state_mach_ext.png
-
- 2. ZRTP uses new packets format according to draft-zimmermann-avt-zrtp-03i
-
- 3. Improved some mistakes in libbn make-files for windows. Unused
- functions were omitted.
-
- 4. Provided types optimization to decrease RAM memory costs.
-
- 5. Packets retries were synchronized.
-
- 6. zrtp_voip_proto_t was removed from the library
- API:
- - if you need this enumeration see zfone_types.h in zfone project
-
- 7. "GoClear reasons" support
-
- 8. Some internal changes according to draft-zimmermann-avt-zrtp-03i
- a) Commit hash covers the whole Hello body
- b) GoClear hmac includes "Reason string"
- c) Confirm body encrypted by AES CDB cipher
- d) Confirm hmac covers whole encrypted part of the packet
-
- 9. Use BUILD_ZRTP_DEBUG_LOG flag instead of BUILD_DEBUG_LOG to build the
- library with debug logs.
- libzrtp (0.3.3) 21.02.2007
- --------------------------------------------------------------------------------
- 1. libzrtp test application refactored for better performance and usability.
- For addition information see test application README file and
- "libzrtp test suite" chapter in main documentation page.
-
- 2. Some changes in documentation for better English
- 3. Use microseconds in zrtp_time_t instead of milliseconds.
- API changes:
- - change zrtp_get_time() function realization if needed
- 4. Fixed several small mistakes
-
- libzrtp (0.3.2) 09.02.2007
- --------------------------------------------------------------------------------
- 1. Global context allocation removed to user space.
- This was made to able RNG using before library initialization.
- API changes:
- - zrtp_init(), zrtp_down()
- - zrtp_randstr(), zrtp_add_system_state()
-
- 2. Fixed bug in srtp SHA1 calculation for Windows.
-
- 3. Confirm and GoClear HMAC was truncated to 64 bits.
-
- 4. Calls stack minimized for library using in kernel mode
-
- 5. Default realization of secrets' cache is available. Cache was implemented
- as a simple binary file and can be built using -DBUILD_DEFAULT_CACHE file.
- API:
- - realization at src\iface\zrtp_cache.c
- DOC:
- - 1.4 libZRTP setup and building
- - 2.2 System-dependent functions
- 6. Default cross-platform realization of time-out sending unite is available.
- This unite is available for Linux, MacOS and Windows. It can be built using
- -DBUILD_DEFAULT_TIMER flag.
- API:
- - realization at src\iface\zrtp_scheduler.c
- DOC:
- - 1.4 libZRTP setup and building
- - 2.2 System-dependent functions
-
- 7. "HOWTO libzrtp" was added to the library documentation
- libzrtp (0.3.1) 06.12.2006
- --------------------------------------------------------------------------------
- 1. Global variables were removed from c-files. Added global context
- zrtp_global_ctx_t for necessary data storing. This was made to allow
- to build library in some special environment as Symbian OS ed2.
- DOC changes:
- - 2.1.2 data structure
- API changes:
- - zrtp_global_ctx_t added
- - zrtp_init(), zrtp_down(), zrtp_init_session(), zrtp_down_session()
-
- 2. Added multithreading support. Now libzrtp is thread-safe. About all
- conditions of usage in multithreading application and synchronization
- schemes see section "2.3.3 Multithreading and concurrent streams" in
- developers guide.
- DOC changes:
- - 2.2.3 Multithreading and concurrent streams
- API changes:
- - mutex were added to main data structures
- - mutex interface section at zrtp_iface.c, default realization at
- zrtp_iface.c
-
- 3. Session configuration routine was simplified. ZRTP profile is applied on
- session initialization. Some configuration functions were removed and
- changed.
- DOC changes:
- - 2.3.1 Setup, initialization and deinitialization
- API:
- - zrtp_profile_autoload() removed
- - zrtp_init_session(), zrtp_check_profile()
- 4. Default realizations of system interfaces was added (for Windows, Linux
- and MacOS).
- API:
- - zrtp_iface.c added
-
- 5. Test suit developed.
- Simple test-unite created. It runs several ZRTP sessions, enters SECURE
- mode, shows statistics and is closed. To build test-suite on Unix - use C
- flags -DBUILD_DEBUG_LOG -DBUILD_WITH_CFUNC -DBUILD_EMPTY_CACHE
- -DBUILD_EMPTY_TIMER and configure param. --enable-test. To run tests:
- make check. To build test-suite on Windows use necessary project files.
- DOC changes:
- - 1.4 libZRTP setup and building
- API:
- - Sources can be found at /test directory
-
- 6. Some changes in project structure, configuration and make files according
- to new functionality.
- DOC changes:
- - 1.4 libZRTP setup and building
-
|