From c092aaf166de8c91111e7db57c7ac6a5e8b743cb Mon Sep 17 00:00:00 2001 From: bossiel Date: Wed, 14 Mar 2012 16:11:33 +0000 Subject: [PATCH] Add support for SRTP and some other cool stuff --- .../bindings/_common/MediaSessionMgr.cxx | 17 + .../bindings/_common/MediaSessionMgr.h | 2 + .../bindings/_common/ProxyPluginMgr.cxx | 5 + .../bindings/_common/ProxyPluginMgr.h | 3 +- .../2.0/doubango/bindings/_common/SipStack.i | 8 + .../bindings/csharp/MediaSessionMgr.cs | 10 + .../bindings/csharp/ProxyPluginMgr.cs | 6 + .../bindings/csharp/tinyWRAPPINVOKE.cs | 9 + .../bindings/csharp/tinyWRAP_wrap.cxx | 15934 +++++++-------- .../bindings/csharp/tmedia_srtp_mode_t.cs | 17 + .../bindings/java/MediaSessionMgr.java | 8 + .../bindings/java/ProxyPluginMgr.java | 5 + .../java/android/MediaSessionMgr.java | 8 + .../bindings/java/android/ProxyPluginMgr.java | 5 + .../bindings/java/android/buildAll.sh | 2 +- .../bindings/java/android/commercial.sh | 2 +- .../bindings/java/android/droid-makefile | 6 +- .../2.0/doubango/bindings/java/android/gpl.sh | 2 +- .../doubango/bindings/java/android/lgpl.sh | 2 +- .../doubango/bindings/java/android/minimal.sh | 2 +- .../bindings/java/android/tinyWRAPJNI.java | 3 + .../bindings/java/android/tinyWRAP_wrap.cxx | 77 + .../java/android/tmedia_srtp_mode_t.java | 53 + .../doubango/bindings/java/tinyWRAPJNI.java | 3 + .../doubango/bindings/java/tinyWRAP_wrap.cxx | 77 + .../bindings/java/tmedia_srtp_mode_t.java | 53 + .../2.0/doubango/bindings/perl/tinyWRAP.pm | 6 + .../doubango/bindings/perl/tinyWRAP_wrap.cxx | 182 +- .../2.0/doubango/bindings/python/tinyWRAP.py | 11 + .../bindings/python/tinyWRAP_wrap.cxx | 151 +- .../thirdparties/android/include/srtp/aes.h | 90 + .../android/include/srtp/aes_cbc.h | 50 + .../android/include/srtp/aes_icm.h | 57 + .../thirdparties/android/include/srtp/alloc.h | 57 + .../thirdparties/android/include/srtp/auth.h | 171 + .../android/include/srtp/cipher.h | 230 + .../android/include/srtp/config.h | 174 + .../android/include/srtp/crypto.h | 43 + .../android/include/srtp/crypto_kernel.h | 280 + .../android/include/srtp/crypto_math.h | 239 + .../android/include/srtp/crypto_types.h | 220 + .../android/include/srtp/cryptoalg.h | 133 + .../android/include/srtp/datatypes.h | 506 + .../thirdparties/android/include/srtp/ekt.h | 201 + .../thirdparties/android/include/srtp/err.h | 174 + .../android/include/srtp/getopt_s.h | 60 + .../thirdparties/android/include/srtp/gf2_8.h | 79 + .../thirdparties/android/include/srtp/hmac.h | 78 + .../android/include/srtp/integers.h | 147 + .../android/include/srtp/kernel_compat.h | 84 + .../thirdparties/android/include/srtp/key.h | 82 + .../android/include/srtp/null_auth.h | 68 + .../android/include/srtp/null_cipher.h | 80 + .../thirdparties/android/include/srtp/prng.h | 54 + .../android/include/srtp/rand_source.h | 91 + .../thirdparties/android/include/srtp/rdb.h | 94 + .../thirdparties/android/include/srtp/rdbx.h | 186 + .../thirdparties/android/include/srtp/rtp.h | 139 + .../android/include/srtp/rtp_priv.h | 74 + .../thirdparties/android/include/srtp/sha1.h | 108 + .../thirdparties/android/include/srtp/srtp.h | 1006 + .../android/include/srtp/srtp_priv.h | 256 + .../thirdparties/android/include/srtp/stat.h | 69 + .../android/include/srtp/ut_sim.h | 80 + .../thirdparties/android/include/srtp/xfm.h | 139 + .../thirdparties/android/lib/libsrtp.a | Bin 0 -> 152914 bytes .../thirdparties/win32/include/srtp/aes.h | 90 + .../thirdparties/win32/include/srtp/aes_cbc.h | 50 + .../thirdparties/win32/include/srtp/aes_icm.h | 57 + .../thirdparties/win32/include/srtp/alloc.h | 57 + .../thirdparties/win32/include/srtp/auth.h | 171 + .../thirdparties/win32/include/srtp/cipher.h | 230 + .../thirdparties/win32/include/srtp/config.h | 174 + .../thirdparties/win32/include/srtp/crypto.h | 43 + .../win32/include/srtp/crypto_kernel.h | 280 + .../win32/include/srtp/crypto_math.h | 239 + .../win32/include/srtp/crypto_types.h | 220 + .../win32/include/srtp/cryptoalg.h | 133 + .../win32/include/srtp/datatypes.h | 506 + .../thirdparties/win32/include/srtp/ekt.h | 201 + .../thirdparties/win32/include/srtp/err.h | 174 + .../win32/include/srtp/getopt_s.h | 60 + .../thirdparties/win32/include/srtp/gf2_8.h | 79 + .../thirdparties/win32/include/srtp/hmac.h | 78 + .../win32/include/srtp/integers.h | 147 + .../win32/include/srtp/kernel_compat.h | 84 + .../thirdparties/win32/include/srtp/key.h | 82 + .../win32/include/srtp/null_auth.h | 68 + .../win32/include/srtp/null_cipher.h | 80 + .../thirdparties/win32/include/srtp/prng.h | 54 + .../win32/include/srtp/rand_source.h | 91 + .../thirdparties/win32/include/srtp/rdb.h | 94 + .../thirdparties/win32/include/srtp/rdbx.h | 186 + .../thirdparties/win32/include/srtp/rtp.h | 139 + .../win32/include/srtp/rtp_priv.h | 74 + .../thirdparties/win32/include/srtp/sha1.h | 108 + .../thirdparties/win32/include/srtp/srtp.h | 1006 + .../win32/include/srtp/srtp_priv.h | 256 + .../thirdparties/win32/include/srtp/stat.h | 69 + .../thirdparties/win32/include/srtp/ut_sim.h | 80 + .../thirdparties/win32/include/srtp/xfm.h | 139 + .../thirdparties/win32/lib/srtp/libsrtp.a | Bin 0 -> 125182 bytes .../thirdparties/win32/tools/ragel.exe | Bin 9824733 -> 9035833 bytes branches/2.0/doubango/tinyDAV/droid-makefile | 14 +- .../tinydav/audio/tdav_session_audio.h | 22 +- .../tinydav/video/tdav_session_video.h | 18 +- .../tinyDAV/src/audio/tdav_session_audio.c | 143 +- .../tinyDAV/src/codecs/vpx/tdav_codec_vp8.c | 2 +- .../tinyDAV/src/msrp/tdav_session_msrp.c | 6 + branches/2.0/doubango/tinyDAV/src/tdav.c | 3 +- .../tinyDAV/src/video/tdav_session_video.c | 139 +- branches/2.0/doubango/tinyDAV/tinyDAV.vcproj | 8 +- branches/2.0/doubango/tinyDEMO/main.sn | 4 +- .../2.0/doubango/tinyDEMO/sip2sip.info.sn | 5 +- branches/2.0/doubango/tinyHTTP/abnf/ws.abnf | 32 + branches/2.0/doubango/tinyHTTP/droid-makefile | 4 + .../2.0/doubango/tinyHTTP/include/tinyhttp.h | 4 + .../include/tinyhttp/auth/thttp_auth.h | 3 + .../include/tinyhttp/headers/thttp_header.h | 6 +- .../thttp_header_Sec_WebSocket_Accept.h | 56 + .../headers/thttp_header_Sec_WebSocket_Key.h | 56 + .../thttp_header_Sec_WebSocket_Protocol.h | 58 + .../thttp_header_Sec_WebSocket_Version.h | 58 + .../tinyHTTP/include/tinyhttp/thttp_message.h | 1 + branches/2.0/doubango/tinyHTTP/ragel.sh | 12 + .../tinyHTTP/ragel/thttp_machine_header.rl | 12 +- .../tinyHTTP/ragel/thttp_machine_ws.rl | 47 + .../tinyHTTP/ragel/thttp_parser_header.rl | 37 +- .../thttp_parser_header_Authorization.rl | 2 +- .../thttp_parser_header_Content_Length.rl | 2 +- .../ragel/thttp_parser_header_Content_Type.rl | 2 +- .../ragel/thttp_parser_header_Dummy.rl | 2 +- .../ragel/thttp_parser_header_ETag.rl | 2 +- ...http_parser_header_Sec_WebSocket_Accept.rl | 145 + .../thttp_parser_header_Sec_WebSocket_Key.rl | 145 + ...tp_parser_header_Sec_WebSocket_Protocol.rl | 160 + ...ttp_parser_header_Sec_WebSocket_Version.rl | 160 + .../thttp_parser_header_Transfer_Encoding.rl | 2 +- .../thttp_parser_header_WWW_Authenticate.rl | 2 +- .../tinyHTTP/ragel/thttp_parser_message.rl | 4 +- .../tinyHTTP/ragel/thttp_parser_url.rl | 2 +- .../doubango/tinyHTTP/src/auth/thttp_auth.c | 37 + .../tinyHTTP/src/headers/thttp_header.c | 4 + .../src/headers/thttp_header_Authorization.c | 13504 ++++++------- .../src/headers/thttp_header_Content_Length.c | 374 +- .../src/headers/thttp_header_Content_Type.c | 556 +- .../tinyHTTP/src/headers/thttp_header_Dummy.c | 366 +- .../tinyHTTP/src/headers/thttp_header_ETag.c | 394 +- .../thttp_header_Sec_WebSocket_Accept.c | 340 + .../headers/thttp_header_Sec_WebSocket_Key.c | 331 + .../thttp_header_Sec_WebSocket_Protocol.c | 356 + .../thttp_header_Sec_WebSocket_Version.c | 352 + .../headers/thttp_header_Transfer_Encoding.c | 464 +- .../headers/thttp_header_WWW_Authenticate.c | 16238 ++++++++-------- .../src/parsers/thttp_parser_header.c | 4826 ++--- .../src/parsers/thttp_parser_message.c | 518 +- .../tinyHTTP/src/parsers/thttp_parser_url.c | 758 +- .../2.0/doubango/tinyHTTP/src/thttp_message.c | 23 + branches/2.0/doubango/tinyHTTP/test/test.c | 5 +- .../2.0/doubango/tinyHTTP/test/test_auth.h | 36 + .../doubango/tinyHTTP/test/test_messages.h | 53 +- .../2.0/doubango/tinyHTTP/tinyHTTP.vcproj | 56 + .../include/tinymedia/tmedia_common.h | 9 + .../include/tinymedia/tmedia_defaults.h | 4 +- .../include/tinymedia/tmedia_params.h | 2 +- .../include/tinymedia/tmedia_session.h | 40 +- .../doubango/tinyMEDIA/src/tmedia_defaults.c | 9 + .../doubango/tinyMEDIA/src/tmedia_params.c | 66 +- .../doubango/tinyMEDIA/src/tmedia_session.c | 59 +- .../tinyMEDIA/src/tmedia_session_dummy.c | 18 + .../tinyMEDIA/src/tmedia_session_ghost.c | 15 +- branches/2.0/doubango/tinyRTP/droid-makefile | 14 +- .../include/tinyrtp/rtp/trtp_rtp_header.h | 2 + .../include/tinyrtp/rtp/trtp_rtp_packet.h | 4 +- .../tinyRTP/include/tinyrtp/trtp_manager.h | 13 +- .../tinyRTP/include/tinyrtp/trtp_srtp.h | 82 + .../tinyRTP/src/rtp/trtp_rtp_header.c | 111 +- .../tinyRTP/src/rtp/trtp_rtp_packet.c | 72 +- .../2.0/doubango/tinyRTP/src/trtp_manager.c | 124 +- branches/2.0/doubango/tinyRTP/src/trtp_srtp.c | 249 + branches/2.0/doubango/tinyRTP/tinyRTP.vcproj | 20 +- .../2.0/doubango/tinySAK/src/tsk_buffer.c | 12 +- branches/2.0/doubango/tinySAK/src/tsk_fsm.c | 2 +- .../2.0/doubango/tinySAK/src/tsk_string.c | 16 + .../2.0/doubango/tinySAK/src/tsk_string.h | 4 +- branches/2.0/doubango/tinySAK/test/test.c | 4 +- .../2.0/doubango/tinySAK/test/test_base64.h | 2 +- branches/2.0/doubango/tinySAK/test/test_md5.h | 3 +- .../2.0/doubango/tinySAK/test/test_sha1.h | 1 + .../include/tinysdp/headers/tsdp_header_M.h | 1 + .../tinySDP/ragel/tsdp_parser_header_M.rl | 30 +- .../tinySDP/ragel/tsdp_parser_header_O.rl | 2 +- .../tinySDP/ragel/tsdp_parser_header_T.rl | 4 - .../tinySDP/src/headers/tsdp_header_M.c | 34 +- .../dialogs/tsip_dialog_register.common.h | 2 +- .../tinysip/transports/tsip_transport.h | 6 +- .../tsip_parser_header_Session_Expires.rl | 2 +- .../tinySIP/src/dialogs/tsip_dialog_invite.c | 6 +- .../src/dialogs/tsip_dialog_invite.hold.c | 21 +- .../tinySIP/src/dialogs/tsip_dialog_layer.c | 1 + .../src/dialogs/tsip_dialog_register.client.c | 1 + .../src/dialogs/tsip_dialog_register.server.c | 19 +- .../src/transactions/tsip_transac_nict.c | 3 +- .../tinySIP/src/transports/tsip_transport.c | 81 +- .../src/transports/tsip_transport_layer.c | 279 +- .../2.0/doubango/tinySIP/src/tsip_message.c | 1 + branches/2.0/doubango/tinySIP/test/test.c | 2 + .../doubango/tinySIP/test/test_sipmessages.h | 2 +- 208 files changed, 43120 insertions(+), 27172 deletions(-) create mode 100644 branches/2.0/doubango/bindings/csharp/tmedia_srtp_mode_t.cs create mode 100644 branches/2.0/doubango/bindings/java/android/tmedia_srtp_mode_t.java create mode 100644 branches/2.0/doubango/bindings/java/tmedia_srtp_mode_t.java create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/aes.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/aes_cbc.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/aes_icm.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/alloc.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/auth.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/cipher.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/config.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/crypto.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/crypto_kernel.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/crypto_math.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/crypto_types.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/cryptoalg.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/datatypes.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/ekt.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/err.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/getopt_s.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/gf2_8.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/hmac.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/integers.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/kernel_compat.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/key.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/null_auth.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/null_cipher.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/prng.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/rand_source.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/rdb.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/rdbx.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/rtp.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/rtp_priv.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/sha1.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/srtp.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/srtp_priv.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/stat.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/ut_sim.h create mode 100644 branches/2.0/doubango/thirdparties/android/include/srtp/xfm.h create mode 100644 branches/2.0/doubango/thirdparties/android/lib/libsrtp.a create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/aes.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/aes_cbc.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/aes_icm.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/alloc.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/auth.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/cipher.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/config.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/crypto.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/crypto_kernel.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/crypto_math.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/crypto_types.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/cryptoalg.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/datatypes.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/ekt.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/err.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/getopt_s.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/gf2_8.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/hmac.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/integers.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/kernel_compat.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/key.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/null_auth.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/null_cipher.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/prng.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/rand_source.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/rdb.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/rdbx.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/rtp.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/rtp_priv.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/sha1.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/srtp.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/srtp_priv.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/stat.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/ut_sim.h create mode 100644 branches/2.0/doubango/thirdparties/win32/include/srtp/xfm.h create mode 100644 branches/2.0/doubango/thirdparties/win32/lib/srtp/libsrtp.a create mode 100644 branches/2.0/doubango/tinyHTTP/abnf/ws.abnf create mode 100644 branches/2.0/doubango/tinyHTTP/include/tinyhttp/headers/thttp_header_Sec_WebSocket_Accept.h create mode 100644 branches/2.0/doubango/tinyHTTP/include/tinyhttp/headers/thttp_header_Sec_WebSocket_Key.h create mode 100644 branches/2.0/doubango/tinyHTTP/include/tinyhttp/headers/thttp_header_Sec_WebSocket_Protocol.h create mode 100644 branches/2.0/doubango/tinyHTTP/include/tinyhttp/headers/thttp_header_Sec_WebSocket_Version.h create mode 100644 branches/2.0/doubango/tinyHTTP/ragel/thttp_machine_ws.rl create mode 100644 branches/2.0/doubango/tinyHTTP/ragel/thttp_parser_header_Sec_WebSocket_Accept.rl create mode 100644 branches/2.0/doubango/tinyHTTP/ragel/thttp_parser_header_Sec_WebSocket_Key.rl create mode 100644 branches/2.0/doubango/tinyHTTP/ragel/thttp_parser_header_Sec_WebSocket_Protocol.rl create mode 100644 branches/2.0/doubango/tinyHTTP/ragel/thttp_parser_header_Sec_WebSocket_Version.rl create mode 100644 branches/2.0/doubango/tinyHTTP/src/headers/thttp_header_Sec_WebSocket_Accept.c create mode 100644 branches/2.0/doubango/tinyHTTP/src/headers/thttp_header_Sec_WebSocket_Key.c create mode 100644 branches/2.0/doubango/tinyHTTP/src/headers/thttp_header_Sec_WebSocket_Protocol.c create mode 100644 branches/2.0/doubango/tinyHTTP/src/headers/thttp_header_Sec_WebSocket_Version.c create mode 100644 branches/2.0/doubango/tinyRTP/include/tinyrtp/trtp_srtp.h create mode 100644 branches/2.0/doubango/tinyRTP/src/trtp_srtp.c diff --git a/branches/2.0/doubango/bindings/_common/MediaSessionMgr.cxx b/branches/2.0/doubango/bindings/_common/MediaSessionMgr.cxx index e8a360fe..becdf903 100644 --- a/branches/2.0/doubango/bindings/_common/MediaSessionMgr.cxx +++ b/branches/2.0/doubango/bindings/_common/MediaSessionMgr.cxx @@ -60,6 +60,16 @@ bool MediaSessionMgr::sessionSetInt32(twrap_media_type_t media, const char* key, TMEDIA_SESSION_SET_NULL()) == 0); } +int32_t MediaSessionMgr::sessionGetInt32(twrap_media_type_t media, const char* key) +{ + int32_t value = 0; + tmedia_type_t _media = _get_media_type(media); + (tmedia_session_mgr_get(m_pWrappedMgr, + TMEDIA_SESSION_GET_INT32(_media, key, &value), + TMEDIA_SESSION_GET_NULL())); + return value; +} + bool MediaSessionMgr::consumerSetInt32(twrap_media_type_t media, const char* key, int32_t value) { tmedia_type_t _media = _get_media_type(media); @@ -127,6 +137,9 @@ const ProxyPlugin* MediaSessionMgr::findProxyPlugin(twrap_media_type_t media, bo plugin = manager->findPlugin(TDAV_SESSION_VIDEO(session)->producer); } } + else{ + TSK_DEBUG_ERROR("Unknown session with media type = %d", _media); + } tsk_object_unref(session); } } @@ -298,4 +311,8 @@ bool MediaSessionMgr::defaultsSetInviteSessionTimers(int32_t timeout, const char int ret = tmedia_defaults_set_inv_session_expires(timeout); ret &= tmedia_defaults_set_inv_session_refresher(refresher); return (ret == 0); +} + +bool MediaSessionMgr::defaultsSetSRtpMode(tmedia_srtp_mode_t mode){ + return (tmedia_defaults_set_srtp_mode(mode) == 0); } \ No newline at end of file diff --git a/branches/2.0/doubango/bindings/_common/MediaSessionMgr.h b/branches/2.0/doubango/bindings/_common/MediaSessionMgr.h index ed89e473..29a1fdcd 100644 --- a/branches/2.0/doubango/bindings/_common/MediaSessionMgr.h +++ b/branches/2.0/doubango/bindings/_common/MediaSessionMgr.h @@ -37,6 +37,7 @@ public: public: bool sessionSetInt32(twrap_media_type_t media, const char* key, int32_t value); + int32_t sessionGetInt32(twrap_media_type_t media, const char* key); bool consumerSetInt32(twrap_media_type_t media, const char* key, int32_t value); bool consumerSetInt64(twrap_media_type_t media, const char* key, int64_t value); @@ -86,6 +87,7 @@ public: static bool defaultsSetVolume(int32_t volume); static int32_t defaultsGetVolume(); static bool defaultsSetInviteSessionTimers(int32_t timeout, const char* refresher); + static bool defaultsSetSRtpMode(tmedia_srtp_mode_t mode); private: tmedia_session_mgr_t* m_pWrappedMgr; diff --git a/branches/2.0/doubango/bindings/_common/ProxyPluginMgr.cxx b/branches/2.0/doubango/bindings/_common/ProxyPluginMgr.cxx index 6c4a856d..67a30c20 100644 --- a/branches/2.0/doubango/bindings/_common/ProxyPluginMgr.cxx +++ b/branches/2.0/doubango/bindings/_common/ProxyPluginMgr.cxx @@ -162,6 +162,11 @@ const ProxyPlugin* ProxyPluginMgr::findPlugin(tsk_object_t* wrapped_plugin) tsk_list_item_t* item; + if(!wrapped_plugin){ + TSK_DEBUG_ERROR("Invalid parameter"); + return tsk_null; + } + tsk_list_lock(this->plugins); tsk_list_foreach(item, this->plugins){ if(TWRAP_PROXY_PLUGIN(item->data)->plugin->isWrapping(wrapped_plugin)){ diff --git a/branches/2.0/doubango/bindings/_common/ProxyPluginMgr.h b/branches/2.0/doubango/bindings/_common/ProxyPluginMgr.h index a53ade30..13a18dbf 100644 --- a/branches/2.0/doubango/bindings/_common/ProxyPluginMgr.h +++ b/branches/2.0/doubango/bindings/_common/ProxyPluginMgr.h @@ -64,7 +64,6 @@ public: static uint64_t getUniqueId(); int addPlugin(ProxyPlugin**); - const ProxyPlugin* findPlugin(uint64_t id); const ProxyPlugin* findPlugin(tsk_object_t* wrapped_plugin); int removePlugin(uint64_t id); int removePlugin(ProxyPlugin**); @@ -72,6 +71,8 @@ public: inline ProxyPluginMgrCallback* getCallback(){ return this->callback; } #endif + const ProxyPlugin* findPlugin(uint64_t id); + const ProxyAudioConsumer* findAudioConsumer(uint64_t id); const ProxyVideoConsumer* findVideoConsumer(uint64_t id); const ProxyAudioProducer* findAudioProducer(uint64_t id); diff --git a/branches/2.0/doubango/bindings/_common/SipStack.i b/branches/2.0/doubango/bindings/_common/SipStack.i index b8ef7ac4..6c760b40 100644 --- a/branches/2.0/doubango/bindings/_common/SipStack.i +++ b/branches/2.0/doubango/bindings/_common/SipStack.i @@ -229,6 +229,14 @@ typedef enum tmedia_chroma_e } tmedia_chroma_t; +typedef enum tmedia_srtp_mode_e +{ + tmedia_srtp_mode_none, + tmedia_srtp_mode_optional, + tmedia_srtp_mode_mandatory +} +tmedia_srtp_mode_t; + /* ====== From "tinymedia/tmedia_qos.h" ====== */ typedef enum tmedia_qos_stype_e { diff --git a/branches/2.0/doubango/bindings/csharp/MediaSessionMgr.cs b/branches/2.0/doubango/bindings/csharp/MediaSessionMgr.cs index 5deeec5f..2da2aecf 100644 --- a/branches/2.0/doubango/bindings/csharp/MediaSessionMgr.cs +++ b/branches/2.0/doubango/bindings/csharp/MediaSessionMgr.cs @@ -44,6 +44,11 @@ public class MediaSessionMgr : IDisposable { return ret; } + public int sessionGetInt32(twrap_media_type_t media, string key) { + int ret = tinyWRAPPINVOKE.MediaSessionMgr_sessionGetInt32(swigCPtr, (int)media, key); + return ret; + } + public bool consumerSetInt32(twrap_media_type_t media, string key, int value) { bool ret = tinyWRAPPINVOKE.MediaSessionMgr_consumerSetInt32(swigCPtr, (int)media, key, value); return ret; @@ -221,6 +226,11 @@ public class MediaSessionMgr : IDisposable { return ret; } + public static bool defaultsSetSRtpMode(tmedia_srtp_mode_t mode) { + bool ret = tinyWRAPPINVOKE.MediaSessionMgr_defaultsSetSRtpMode((int)mode); + return ret; + } + } } diff --git a/branches/2.0/doubango/bindings/csharp/ProxyPluginMgr.cs b/branches/2.0/doubango/bindings/csharp/ProxyPluginMgr.cs index 1bb96070..5e58b552 100644 --- a/branches/2.0/doubango/bindings/csharp/ProxyPluginMgr.cs +++ b/branches/2.0/doubango/bindings/csharp/ProxyPluginMgr.cs @@ -51,6 +51,12 @@ public class ProxyPluginMgr : IDisposable { return ret; } + public ProxyPlugin findPlugin(ulong id) { + IntPtr cPtr = tinyWRAPPINVOKE.ProxyPluginMgr_findPlugin(swigCPtr, id); + ProxyPlugin ret = (cPtr == IntPtr.Zero) ? null : new ProxyPlugin(cPtr, false); + return ret; + } + public ProxyAudioConsumer findAudioConsumer(ulong id) { IntPtr cPtr = tinyWRAPPINVOKE.ProxyPluginMgr_findAudioConsumer(swigCPtr, id); ProxyAudioConsumer ret = (cPtr == IntPtr.Zero) ? null : new ProxyAudioConsumer(cPtr, false); diff --git a/branches/2.0/doubango/bindings/csharp/tinyWRAPPINVOKE.cs b/branches/2.0/doubango/bindings/csharp/tinyWRAPPINVOKE.cs index 0f66b5f4..58ba7849 100644 --- a/branches/2.0/doubango/bindings/csharp/tinyWRAPPINVOKE.cs +++ b/branches/2.0/doubango/bindings/csharp/tinyWRAPPINVOKE.cs @@ -263,6 +263,9 @@ class tinyWRAPPINVOKE { [DllImport("tinyWRAP", EntryPoint="CSharp_MediaSessionMgr_sessionSetInt32")] public static extern bool MediaSessionMgr_sessionSetInt32(HandleRef jarg1, int jarg2, string jarg3, int jarg4); + [DllImport("tinyWRAP", EntryPoint="CSharp_MediaSessionMgr_sessionGetInt32")] + public static extern int MediaSessionMgr_sessionGetInt32(HandleRef jarg1, int jarg2, string jarg3); + [DllImport("tinyWRAP", EntryPoint="CSharp_MediaSessionMgr_consumerSetInt32")] public static extern bool MediaSessionMgr_consumerSetInt32(HandleRef jarg1, int jarg2, string jarg3, int jarg4); @@ -368,6 +371,9 @@ class tinyWRAPPINVOKE { [DllImport("tinyWRAP", EntryPoint="CSharp_MediaSessionMgr_defaultsSetInviteSessionTimers")] public static extern bool MediaSessionMgr_defaultsSetInviteSessionTimers(int jarg1, string jarg2); + [DllImport("tinyWRAP", EntryPoint="CSharp_MediaSessionMgr_defaultsSetSRtpMode")] + public static extern bool MediaSessionMgr_defaultsSetSRtpMode(int jarg1); + [DllImport("tinyWRAP", EntryPoint="CSharp_delete_MediaContent")] public static extern void delete_MediaContent(HandleRef jarg1); @@ -944,6 +950,9 @@ class tinyWRAPPINVOKE { [DllImport("tinyWRAP", EntryPoint="CSharp_ProxyPluginMgr_getInstance")] public static extern IntPtr ProxyPluginMgr_getInstance(); + [DllImport("tinyWRAP", EntryPoint="CSharp_ProxyPluginMgr_findPlugin")] + public static extern IntPtr ProxyPluginMgr_findPlugin(HandleRef jarg1, ulong jarg2); + [DllImport("tinyWRAP", EntryPoint="CSharp_ProxyPluginMgr_findAudioConsumer")] public static extern IntPtr ProxyPluginMgr_findAudioConsumer(HandleRef jarg1, ulong jarg2); diff --git a/branches/2.0/doubango/bindings/csharp/tinyWRAP_wrap.cxx b/branches/2.0/doubango/bindings/csharp/tinyWRAP_wrap.cxx index 91f17048..2e956ac6 100644 --- a/branches/2.0/doubango/bindings/csharp/tinyWRAP_wrap.cxx +++ b/branches/2.0/doubango/bindings/csharp/tinyWRAP_wrap.cxx @@ -1,40 +1,40 @@ -/* ---------------------------------------------------------------------------- - * This file was automatically generated by SWIG (http://www.swig.org). - * Version 1.3.39 - * - * This file is not intended to be easily readable and contains a number of - * coding conventions designed to improve portability and efficiency. Do not make - * changes to this file unless you know what you are doing--modify the SWIG - * interface file instead. - * ----------------------------------------------------------------------------- */ - -#define SWIGCSHARP -#define SWIG_DIRECTORS - - -#ifdef __cplusplus -/* SwigValueWrapper is described in swig.swg */ -template class SwigValueWrapper { - struct SwigMovePointer { - T *ptr; - SwigMovePointer(T *p) : ptr(p) { } - ~SwigMovePointer() { delete ptr; } - SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; } - } pointer; - SwigValueWrapper& operator=(const SwigValueWrapper& rhs); - SwigValueWrapper(const SwigValueWrapper& rhs); -public: - SwigValueWrapper() : pointer(0) { } - SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; } - operator T&() const { return *pointer.ptr; } - T *operator&() { return pointer.ptr; } -}; - -template T SwigValueInit() { - return T(); -} -#endif - +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 1.3.39 + * + * This file is not intended to be easily readable and contains a number of + * coding conventions designed to improve portability and efficiency. Do not make + * changes to this file unless you know what you are doing--modify the SWIG + * interface file instead. + * ----------------------------------------------------------------------------- */ + +#define SWIGCSHARP +#define SWIG_DIRECTORS + + +#ifdef __cplusplus +/* SwigValueWrapper is described in swig.swg */ +template class SwigValueWrapper { + struct SwigMovePointer { + T *ptr; + SwigMovePointer(T *p) : ptr(p) { } + ~SwigMovePointer() { delete ptr; } + SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; } + } pointer; + SwigValueWrapper& operator=(const SwigValueWrapper& rhs); + SwigValueWrapper(const SwigValueWrapper& rhs); +public: + SwigValueWrapper() : pointer(0) { } + SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; } + operator T&() const { return *pointer.ptr; } + T *operator&() { return pointer.ptr; } +}; + +template T SwigValueInit() { + return T(); +} +#endif + /* ----------------------------------------------------------------------------- * This section contains generic SWIG labels for method/variable * declarations/attributes, and other compiler dependent labels. @@ -143,143 +143,143 @@ template T SwigValueInit() { # define _SCL_SECURE_NO_DEPRECATE #endif - - -#include -#include -#include - - -/* Support for throwing C# exceptions from C/C++. There are two types: - * Exceptions that take a message and ArgumentExceptions that take a message and a parameter name. */ -typedef enum { - SWIG_CSharpApplicationException, - SWIG_CSharpArithmeticException, - SWIG_CSharpDivideByZeroException, - SWIG_CSharpIndexOutOfRangeException, - SWIG_CSharpInvalidCastException, - SWIG_CSharpInvalidOperationException, - SWIG_CSharpIOException, - SWIG_CSharpNullReferenceException, - SWIG_CSharpOutOfMemoryException, - SWIG_CSharpOverflowException, - SWIG_CSharpSystemException -} SWIG_CSharpExceptionCodes; - -typedef enum { - SWIG_CSharpArgumentException, - SWIG_CSharpArgumentNullException, - SWIG_CSharpArgumentOutOfRangeException -} SWIG_CSharpExceptionArgumentCodes; - -typedef void (SWIGSTDCALL* SWIG_CSharpExceptionCallback_t)(const char *); -typedef void (SWIGSTDCALL* SWIG_CSharpExceptionArgumentCallback_t)(const char *, const char *); - -typedef struct { - SWIG_CSharpExceptionCodes code; - SWIG_CSharpExceptionCallback_t callback; -} SWIG_CSharpException_t; - -typedef struct { - SWIG_CSharpExceptionArgumentCodes code; - SWIG_CSharpExceptionArgumentCallback_t callback; -} SWIG_CSharpExceptionArgument_t; - -static SWIG_CSharpException_t SWIG_csharp_exceptions[] = { - { SWIG_CSharpApplicationException, NULL }, - { SWIG_CSharpArithmeticException, NULL }, - { SWIG_CSharpDivideByZeroException, NULL }, - { SWIG_CSharpIndexOutOfRangeException, NULL }, - { SWIG_CSharpInvalidCastException, NULL }, - { SWIG_CSharpInvalidOperationException, NULL }, - { SWIG_CSharpIOException, NULL }, - { SWIG_CSharpNullReferenceException, NULL }, - { SWIG_CSharpOutOfMemoryException, NULL }, - { SWIG_CSharpOverflowException, NULL }, - { SWIG_CSharpSystemException, NULL } -}; - -static SWIG_CSharpExceptionArgument_t SWIG_csharp_exceptions_argument[] = { - { SWIG_CSharpArgumentException, NULL }, - { SWIG_CSharpArgumentNullException, NULL }, - { SWIG_CSharpArgumentOutOfRangeException, NULL }, -}; - -static void SWIGUNUSED SWIG_CSharpSetPendingException(SWIG_CSharpExceptionCodes code, const char *msg) { - SWIG_CSharpExceptionCallback_t callback = SWIG_csharp_exceptions[SWIG_CSharpApplicationException].callback; - if ((size_t)code < sizeof(SWIG_csharp_exceptions)/sizeof(SWIG_CSharpException_t)) { - callback = SWIG_csharp_exceptions[code].callback; - } - callback(msg); -} - -static void SWIGUNUSED SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpExceptionArgumentCodes code, const char *msg, const char *param_name) { - SWIG_CSharpExceptionArgumentCallback_t callback = SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentException].callback; - if ((size_t)code < sizeof(SWIG_csharp_exceptions_argument)/sizeof(SWIG_CSharpExceptionArgument_t)) { - callback = SWIG_csharp_exceptions_argument[code].callback; - } - callback(msg, param_name); -} - - -#ifdef __cplusplus -extern "C" -#endif -SWIGEXPORT void SWIGSTDCALL SWIGRegisterExceptionCallbacks_tinyWRAP( - SWIG_CSharpExceptionCallback_t applicationCallback, - SWIG_CSharpExceptionCallback_t arithmeticCallback, - SWIG_CSharpExceptionCallback_t divideByZeroCallback, - SWIG_CSharpExceptionCallback_t indexOutOfRangeCallback, - SWIG_CSharpExceptionCallback_t invalidCastCallback, - SWIG_CSharpExceptionCallback_t invalidOperationCallback, - SWIG_CSharpExceptionCallback_t ioCallback, - SWIG_CSharpExceptionCallback_t nullReferenceCallback, - SWIG_CSharpExceptionCallback_t outOfMemoryCallback, - SWIG_CSharpExceptionCallback_t overflowCallback, - SWIG_CSharpExceptionCallback_t systemCallback) { - SWIG_csharp_exceptions[SWIG_CSharpApplicationException].callback = applicationCallback; - SWIG_csharp_exceptions[SWIG_CSharpArithmeticException].callback = arithmeticCallback; - SWIG_csharp_exceptions[SWIG_CSharpDivideByZeroException].callback = divideByZeroCallback; - SWIG_csharp_exceptions[SWIG_CSharpIndexOutOfRangeException].callback = indexOutOfRangeCallback; - SWIG_csharp_exceptions[SWIG_CSharpInvalidCastException].callback = invalidCastCallback; - SWIG_csharp_exceptions[SWIG_CSharpInvalidOperationException].callback = invalidOperationCallback; - SWIG_csharp_exceptions[SWIG_CSharpIOException].callback = ioCallback; - SWIG_csharp_exceptions[SWIG_CSharpNullReferenceException].callback = nullReferenceCallback; - SWIG_csharp_exceptions[SWIG_CSharpOutOfMemoryException].callback = outOfMemoryCallback; - SWIG_csharp_exceptions[SWIG_CSharpOverflowException].callback = overflowCallback; - SWIG_csharp_exceptions[SWIG_CSharpSystemException].callback = systemCallback; -} - -#ifdef __cplusplus -extern "C" -#endif -SWIGEXPORT void SWIGSTDCALL SWIGRegisterExceptionArgumentCallbacks_tinyWRAP( - SWIG_CSharpExceptionArgumentCallback_t argumentCallback, - SWIG_CSharpExceptionArgumentCallback_t argumentNullCallback, - SWIG_CSharpExceptionArgumentCallback_t argumentOutOfRangeCallback) { - SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentException].callback = argumentCallback; - SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentNullException].callback = argumentNullCallback; - SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentOutOfRangeException].callback = argumentOutOfRangeCallback; -} - - -/* Callback for returning strings to C# without leaking memory */ -typedef char * (SWIGSTDCALL* SWIG_CSharpStringHelperCallback)(const char *); -static SWIG_CSharpStringHelperCallback SWIG_csharp_string_callback = NULL; - - -#ifdef __cplusplus -extern "C" -#endif -SWIGEXPORT void SWIGSTDCALL SWIGRegisterStringCallback_tinyWRAP(SWIG_CSharpStringHelperCallback callback) { - SWIG_csharp_string_callback = callback; -} - - -/* Contract support */ - -#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentOutOfRangeException, msg, ""); return nullreturn; } else - + + +#include +#include +#include + + +/* Support for throwing C# exceptions from C/C++. There are two types: + * Exceptions that take a message and ArgumentExceptions that take a message and a parameter name. */ +typedef enum { + SWIG_CSharpApplicationException, + SWIG_CSharpArithmeticException, + SWIG_CSharpDivideByZeroException, + SWIG_CSharpIndexOutOfRangeException, + SWIG_CSharpInvalidCastException, + SWIG_CSharpInvalidOperationException, + SWIG_CSharpIOException, + SWIG_CSharpNullReferenceException, + SWIG_CSharpOutOfMemoryException, + SWIG_CSharpOverflowException, + SWIG_CSharpSystemException +} SWIG_CSharpExceptionCodes; + +typedef enum { + SWIG_CSharpArgumentException, + SWIG_CSharpArgumentNullException, + SWIG_CSharpArgumentOutOfRangeException +} SWIG_CSharpExceptionArgumentCodes; + +typedef void (SWIGSTDCALL* SWIG_CSharpExceptionCallback_t)(const char *); +typedef void (SWIGSTDCALL* SWIG_CSharpExceptionArgumentCallback_t)(const char *, const char *); + +typedef struct { + SWIG_CSharpExceptionCodes code; + SWIG_CSharpExceptionCallback_t callback; +} SWIG_CSharpException_t; + +typedef struct { + SWIG_CSharpExceptionArgumentCodes code; + SWIG_CSharpExceptionArgumentCallback_t callback; +} SWIG_CSharpExceptionArgument_t; + +static SWIG_CSharpException_t SWIG_csharp_exceptions[] = { + { SWIG_CSharpApplicationException, NULL }, + { SWIG_CSharpArithmeticException, NULL }, + { SWIG_CSharpDivideByZeroException, NULL }, + { SWIG_CSharpIndexOutOfRangeException, NULL }, + { SWIG_CSharpInvalidCastException, NULL }, + { SWIG_CSharpInvalidOperationException, NULL }, + { SWIG_CSharpIOException, NULL }, + { SWIG_CSharpNullReferenceException, NULL }, + { SWIG_CSharpOutOfMemoryException, NULL }, + { SWIG_CSharpOverflowException, NULL }, + { SWIG_CSharpSystemException, NULL } +}; + +static SWIG_CSharpExceptionArgument_t SWIG_csharp_exceptions_argument[] = { + { SWIG_CSharpArgumentException, NULL }, + { SWIG_CSharpArgumentNullException, NULL }, + { SWIG_CSharpArgumentOutOfRangeException, NULL }, +}; + +static void SWIGUNUSED SWIG_CSharpSetPendingException(SWIG_CSharpExceptionCodes code, const char *msg) { + SWIG_CSharpExceptionCallback_t callback = SWIG_csharp_exceptions[SWIG_CSharpApplicationException].callback; + if ((size_t)code < sizeof(SWIG_csharp_exceptions)/sizeof(SWIG_CSharpException_t)) { + callback = SWIG_csharp_exceptions[code].callback; + } + callback(msg); +} + +static void SWIGUNUSED SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpExceptionArgumentCodes code, const char *msg, const char *param_name) { + SWIG_CSharpExceptionArgumentCallback_t callback = SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentException].callback; + if ((size_t)code < sizeof(SWIG_csharp_exceptions_argument)/sizeof(SWIG_CSharpExceptionArgument_t)) { + callback = SWIG_csharp_exceptions_argument[code].callback; + } + callback(msg, param_name); +} + + +#ifdef __cplusplus +extern "C" +#endif +SWIGEXPORT void SWIGSTDCALL SWIGRegisterExceptionCallbacks_tinyWRAP( + SWIG_CSharpExceptionCallback_t applicationCallback, + SWIG_CSharpExceptionCallback_t arithmeticCallback, + SWIG_CSharpExceptionCallback_t divideByZeroCallback, + SWIG_CSharpExceptionCallback_t indexOutOfRangeCallback, + SWIG_CSharpExceptionCallback_t invalidCastCallback, + SWIG_CSharpExceptionCallback_t invalidOperationCallback, + SWIG_CSharpExceptionCallback_t ioCallback, + SWIG_CSharpExceptionCallback_t nullReferenceCallback, + SWIG_CSharpExceptionCallback_t outOfMemoryCallback, + SWIG_CSharpExceptionCallback_t overflowCallback, + SWIG_CSharpExceptionCallback_t systemCallback) { + SWIG_csharp_exceptions[SWIG_CSharpApplicationException].callback = applicationCallback; + SWIG_csharp_exceptions[SWIG_CSharpArithmeticException].callback = arithmeticCallback; + SWIG_csharp_exceptions[SWIG_CSharpDivideByZeroException].callback = divideByZeroCallback; + SWIG_csharp_exceptions[SWIG_CSharpIndexOutOfRangeException].callback = indexOutOfRangeCallback; + SWIG_csharp_exceptions[SWIG_CSharpInvalidCastException].callback = invalidCastCallback; + SWIG_csharp_exceptions[SWIG_CSharpInvalidOperationException].callback = invalidOperationCallback; + SWIG_csharp_exceptions[SWIG_CSharpIOException].callback = ioCallback; + SWIG_csharp_exceptions[SWIG_CSharpNullReferenceException].callback = nullReferenceCallback; + SWIG_csharp_exceptions[SWIG_CSharpOutOfMemoryException].callback = outOfMemoryCallback; + SWIG_csharp_exceptions[SWIG_CSharpOverflowException].callback = overflowCallback; + SWIG_csharp_exceptions[SWIG_CSharpSystemException].callback = systemCallback; +} + +#ifdef __cplusplus +extern "C" +#endif +SWIGEXPORT void SWIGSTDCALL SWIGRegisterExceptionArgumentCallbacks_tinyWRAP( + SWIG_CSharpExceptionArgumentCallback_t argumentCallback, + SWIG_CSharpExceptionArgumentCallback_t argumentNullCallback, + SWIG_CSharpExceptionArgumentCallback_t argumentOutOfRangeCallback) { + SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentException].callback = argumentCallback; + SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentNullException].callback = argumentNullCallback; + SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentOutOfRangeException].callback = argumentOutOfRangeCallback; +} + + +/* Callback for returning strings to C# without leaking memory */ +typedef char * (SWIGSTDCALL* SWIG_CSharpStringHelperCallback)(const char *); +static SWIG_CSharpStringHelperCallback SWIG_csharp_string_callback = NULL; + + +#ifdef __cplusplus +extern "C" +#endif +SWIGEXPORT void SWIGSTDCALL SWIGRegisterStringCallback_tinyWRAP(SWIG_CSharpStringHelperCallback callback) { + SWIG_csharp_string_callback = callback; +} + + +/* Contract support */ + +#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentOutOfRangeException, msg, ""); return nullreturn; } else + /* ----------------------------------------------------------------------------- * See the LICENSE file for information on copyright, usage and redistribution * of SWIG, and the README file for authors - http://www.swig.org/release.html. @@ -330,7775 +330,7817 @@ namespace Swig { #endif /* __cplusplus */ - -#include // Use the C99 official header - - -#include "DDebug.h" -#include "AudioResampler.h" - - -#include "ActionConfig.h" -#include "MediaSessionMgr.h" -#include "MediaContent.h" -#include "SipUri.h" -#include "SipMessage.h" -#include "SipEvent.h" -#include "SipSession.h" - -#include "ProxyPluginMgr.h" -#include "ProxyConsumer.h" -#include "ProxyProducer.h" - -#include "SipCallback.h" -#include "SafeObject.h" -#include "SipStack.h" - - -#include "Xcap.h" - - -#include "SMSEncoder.h" - - -#include "Msrp.h" - - - -/* --------------------------------------------------- - * C++ director class methods - * --------------------------------------------------- */ - -#include "tinyWRAP_wrap.h" - -SwigDirector_DDebugCallback::SwigDirector_DDebugCallback() : DDebugCallback(), Swig::Director() { - swig_init_callbacks(); -} - -SwigDirector_DDebugCallback::~SwigDirector_DDebugCallback() { - -} - - -int SwigDirector_DDebugCallback::OnDebugInfo(char const *message) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - char * jmessage = 0 ; - - if (!swig_callbackOnDebugInfo) { - return DDebugCallback::OnDebugInfo(message); - } else { - jmessage = SWIG_csharp_string_callback((const char *)message); - jresult = (int) swig_callbackOnDebugInfo(jmessage); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_DDebugCallback::OnDebugWarn(char const *message) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - char * jmessage = 0 ; - - if (!swig_callbackOnDebugWarn) { - return DDebugCallback::OnDebugWarn(message); - } else { - jmessage = SWIG_csharp_string_callback((const char *)message); - jresult = (int) swig_callbackOnDebugWarn(jmessage); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_DDebugCallback::OnDebugError(char const *message) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - char * jmessage = 0 ; - - if (!swig_callbackOnDebugError) { - return DDebugCallback::OnDebugError(message); - } else { - jmessage = SWIG_csharp_string_callback((const char *)message); - jresult = (int) swig_callbackOnDebugError(jmessage); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_DDebugCallback::OnDebugFatal(char const *message) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - char * jmessage = 0 ; - - if (!swig_callbackOnDebugFatal) { - return DDebugCallback::OnDebugFatal(message); - } else { - jmessage = SWIG_csharp_string_callback((const char *)message); - jresult = (int) swig_callbackOnDebugFatal(jmessage); - c_result = (int)jresult; - } - return c_result; -} - -void SwigDirector_DDebugCallback::swig_connect_director(SWIG_Callback0_t callbackOnDebugInfo, SWIG_Callback1_t callbackOnDebugWarn, SWIG_Callback2_t callbackOnDebugError, SWIG_Callback3_t callbackOnDebugFatal) { - swig_callbackOnDebugInfo = callbackOnDebugInfo; - swig_callbackOnDebugWarn = callbackOnDebugWarn; - swig_callbackOnDebugError = callbackOnDebugError; - swig_callbackOnDebugFatal = callbackOnDebugFatal; -} - -void SwigDirector_DDebugCallback::swig_init_callbacks() { - swig_callbackOnDebugInfo = 0; - swig_callbackOnDebugWarn = 0; - swig_callbackOnDebugError = 0; - swig_callbackOnDebugFatal = 0; -} - -SwigDirector_ProxyPluginMgrCallback::SwigDirector_ProxyPluginMgrCallback() : ProxyPluginMgrCallback(), Swig::Director() { - swig_init_callbacks(); -} - -SwigDirector_ProxyPluginMgrCallback::~SwigDirector_ProxyPluginMgrCallback() { - -} - - -int SwigDirector_ProxyPluginMgrCallback::OnPluginCreated(uint64_t id, enum twrap_proxy_plugin_type_e type) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - unsigned long long jid ; - int jtype ; - - if (!swig_callbackOnPluginCreated) { - return ProxyPluginMgrCallback::OnPluginCreated(id,type); - } else { - jid = id; - jtype = type; - jresult = (int) swig_callbackOnPluginCreated(jid, jtype); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyPluginMgrCallback::OnPluginDestroyed(uint64_t id, enum twrap_proxy_plugin_type_e type) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - unsigned long long jid ; - int jtype ; - - if (!swig_callbackOnPluginDestroyed) { - return ProxyPluginMgrCallback::OnPluginDestroyed(id,type); - } else { - jid = id; - jtype = type; - jresult = (int) swig_callbackOnPluginDestroyed(jid, jtype); - c_result = (int)jresult; - } - return c_result; -} - -void SwigDirector_ProxyPluginMgrCallback::swig_connect_director(SWIG_Callback0_t callbackOnPluginCreated, SWIG_Callback1_t callbackOnPluginDestroyed) { - swig_callbackOnPluginCreated = callbackOnPluginCreated; - swig_callbackOnPluginDestroyed = callbackOnPluginDestroyed; -} - -void SwigDirector_ProxyPluginMgrCallback::swig_init_callbacks() { - swig_callbackOnPluginCreated = 0; - swig_callbackOnPluginDestroyed = 0; -} - -SwigDirector_ProxyAudioConsumerCallback::SwigDirector_ProxyAudioConsumerCallback() : ProxyAudioConsumerCallback(), Swig::Director() { - swig_init_callbacks(); -} - -SwigDirector_ProxyAudioConsumerCallback::~SwigDirector_ProxyAudioConsumerCallback() { - -} - - -int SwigDirector_ProxyAudioConsumerCallback::prepare(int ptime, int rate, int channels) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - int jptime ; - int jrate ; - int jchannels ; - - if (!swig_callbackprepare) { - return ProxyAudioConsumerCallback::prepare(ptime,rate,channels); - } else { - jptime = ptime; - jrate = rate; - jchannels = channels; - jresult = (int) swig_callbackprepare(jptime, jrate, jchannels); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyAudioConsumerCallback::start() { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - - if (!swig_callbackstart) { - return ProxyAudioConsumerCallback::start(); - } else { - jresult = (int) swig_callbackstart(); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyAudioConsumerCallback::pause() { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - - if (!swig_callbackpause) { - return ProxyAudioConsumerCallback::pause(); - } else { - jresult = (int) swig_callbackpause(); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyAudioConsumerCallback::stop() { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - - if (!swig_callbackstop) { - return ProxyAudioConsumerCallback::stop(); - } else { - jresult = (int) swig_callbackstop(); - c_result = (int)jresult; - } - return c_result; -} - -void SwigDirector_ProxyAudioConsumerCallback::swig_connect_director(SWIG_Callback0_t callbackprepare, SWIG_Callback1_t callbackstart, SWIG_Callback2_t callbackpause, SWIG_Callback3_t callbackstop) { - swig_callbackprepare = callbackprepare; - swig_callbackstart = callbackstart; - swig_callbackpause = callbackpause; - swig_callbackstop = callbackstop; -} - -void SwigDirector_ProxyAudioConsumerCallback::swig_init_callbacks() { - swig_callbackprepare = 0; - swig_callbackstart = 0; - swig_callbackpause = 0; - swig_callbackstop = 0; -} - -SwigDirector_ProxyVideoConsumerCallback::SwigDirector_ProxyVideoConsumerCallback() : ProxyVideoConsumerCallback(), Swig::Director() { - swig_init_callbacks(); -} - -SwigDirector_ProxyVideoConsumerCallback::~SwigDirector_ProxyVideoConsumerCallback() { - -} - - -int SwigDirector_ProxyVideoConsumerCallback::prepare(int nWidth, int nHeight, int nFps) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - int jnWidth ; - int jnHeight ; - int jnFps ; - - if (!swig_callbackprepare) { - return ProxyVideoConsumerCallback::prepare(nWidth,nHeight,nFps); - } else { - jnWidth = nWidth; - jnHeight = nHeight; - jnFps = nFps; - jresult = (int) swig_callbackprepare(jnWidth, jnHeight, jnFps); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyVideoConsumerCallback::consume(ProxyVideoFrame const *frame) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - void * jframe = 0 ; - - if (!swig_callbackconsume) { - return ProxyVideoConsumerCallback::consume(frame); - } else { - jframe = (void *) frame; - jresult = (int) swig_callbackconsume(jframe); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyVideoConsumerCallback::bufferCopied(unsigned int nCopiedSize, unsigned int nAvailableSize) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - unsigned int jnCopiedSize ; - unsigned int jnAvailableSize ; - - if (!swig_callbackbufferCopied) { - return ProxyVideoConsumerCallback::bufferCopied(nCopiedSize,nAvailableSize); - } else { - jnCopiedSize = nCopiedSize; - jnAvailableSize = nAvailableSize; - jresult = (int) swig_callbackbufferCopied(jnCopiedSize, jnAvailableSize); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyVideoConsumerCallback::start() { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - - if (!swig_callbackstart) { - return ProxyVideoConsumerCallback::start(); - } else { - jresult = (int) swig_callbackstart(); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyVideoConsumerCallback::pause() { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - - if (!swig_callbackpause) { - return ProxyVideoConsumerCallback::pause(); - } else { - jresult = (int) swig_callbackpause(); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyVideoConsumerCallback::stop() { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - - if (!swig_callbackstop) { - return ProxyVideoConsumerCallback::stop(); - } else { - jresult = (int) swig_callbackstop(); - c_result = (int)jresult; - } - return c_result; -} - -void SwigDirector_ProxyVideoConsumerCallback::swig_connect_director(SWIG_Callback0_t callbackprepare, SWIG_Callback1_t callbackconsume, SWIG_Callback2_t callbackbufferCopied, SWIG_Callback3_t callbackstart, SWIG_Callback4_t callbackpause, SWIG_Callback5_t callbackstop) { - swig_callbackprepare = callbackprepare; - swig_callbackconsume = callbackconsume; - swig_callbackbufferCopied = callbackbufferCopied; - swig_callbackstart = callbackstart; - swig_callbackpause = callbackpause; - swig_callbackstop = callbackstop; -} - -void SwigDirector_ProxyVideoConsumerCallback::swig_init_callbacks() { - swig_callbackprepare = 0; - swig_callbackconsume = 0; - swig_callbackbufferCopied = 0; - swig_callbackstart = 0; - swig_callbackpause = 0; - swig_callbackstop = 0; -} - -SwigDirector_ProxyAudioProducerCallback::SwigDirector_ProxyAudioProducerCallback() : ProxyAudioProducerCallback(), Swig::Director() { - swig_init_callbacks(); -} - -SwigDirector_ProxyAudioProducerCallback::~SwigDirector_ProxyAudioProducerCallback() { - -} - - -int SwigDirector_ProxyAudioProducerCallback::prepare(int ptime, int rate, int channels) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - int jptime ; - int jrate ; - int jchannels ; - - if (!swig_callbackprepare) { - return ProxyAudioProducerCallback::prepare(ptime,rate,channels); - } else { - jptime = ptime; - jrate = rate; - jchannels = channels; - jresult = (int) swig_callbackprepare(jptime, jrate, jchannels); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyAudioProducerCallback::start() { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - - if (!swig_callbackstart) { - return ProxyAudioProducerCallback::start(); - } else { - jresult = (int) swig_callbackstart(); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyAudioProducerCallback::pause() { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - - if (!swig_callbackpause) { - return ProxyAudioProducerCallback::pause(); - } else { - jresult = (int) swig_callbackpause(); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyAudioProducerCallback::stop() { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - - if (!swig_callbackstop) { - return ProxyAudioProducerCallback::stop(); - } else { - jresult = (int) swig_callbackstop(); - c_result = (int)jresult; - } - return c_result; -} - -void SwigDirector_ProxyAudioProducerCallback::swig_connect_director(SWIG_Callback0_t callbackprepare, SWIG_Callback1_t callbackstart, SWIG_Callback2_t callbackpause, SWIG_Callback3_t callbackstop) { - swig_callbackprepare = callbackprepare; - swig_callbackstart = callbackstart; - swig_callbackpause = callbackpause; - swig_callbackstop = callbackstop; -} - -void SwigDirector_ProxyAudioProducerCallback::swig_init_callbacks() { - swig_callbackprepare = 0; - swig_callbackstart = 0; - swig_callbackpause = 0; - swig_callbackstop = 0; -} - -SwigDirector_ProxyVideoProducerCallback::SwigDirector_ProxyVideoProducerCallback() : ProxyVideoProducerCallback(), Swig::Director() { - swig_init_callbacks(); -} - -SwigDirector_ProxyVideoProducerCallback::~SwigDirector_ProxyVideoProducerCallback() { - -} - - -int SwigDirector_ProxyVideoProducerCallback::prepare(int width, int height, int fps) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - int jwidth ; - int jheight ; - int jfps ; - - if (!swig_callbackprepare) { - return ProxyVideoProducerCallback::prepare(width,height,fps); - } else { - jwidth = width; - jheight = height; - jfps = fps; - jresult = (int) swig_callbackprepare(jwidth, jheight, jfps); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyVideoProducerCallback::start() { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - - if (!swig_callbackstart) { - return ProxyVideoProducerCallback::start(); - } else { - jresult = (int) swig_callbackstart(); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyVideoProducerCallback::pause() { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - - if (!swig_callbackpause) { - return ProxyVideoProducerCallback::pause(); - } else { - jresult = (int) swig_callbackpause(); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_ProxyVideoProducerCallback::stop() { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - - if (!swig_callbackstop) { - return ProxyVideoProducerCallback::stop(); - } else { - jresult = (int) swig_callbackstop(); - c_result = (int)jresult; - } - return c_result; -} - -void SwigDirector_ProxyVideoProducerCallback::swig_connect_director(SWIG_Callback0_t callbackprepare, SWIG_Callback1_t callbackstart, SWIG_Callback2_t callbackpause, SWIG_Callback3_t callbackstop) { - swig_callbackprepare = callbackprepare; - swig_callbackstart = callbackstart; - swig_callbackpause = callbackpause; - swig_callbackstop = callbackstop; -} - -void SwigDirector_ProxyVideoProducerCallback::swig_init_callbacks() { - swig_callbackprepare = 0; - swig_callbackstart = 0; - swig_callbackpause = 0; - swig_callbackstop = 0; -} - -SwigDirector_SipCallback::SwigDirector_SipCallback() : SipCallback(), Swig::Director() { - swig_init_callbacks(); -} - -SwigDirector_SipCallback::~SwigDirector_SipCallback() { - -} - - -int SwigDirector_SipCallback::OnDialogEvent(DialogEvent const *e) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - void * je = 0 ; - - if (!swig_callbackOnDialogEvent) { - return SipCallback::OnDialogEvent(e); - } else { - je = (void *) e; - jresult = (int) swig_callbackOnDialogEvent(je); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_SipCallback::OnStackEvent(StackEvent const *e) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - void * je = 0 ; - - if (!swig_callbackOnStackEvent) { - return SipCallback::OnStackEvent(e); - } else { - je = (void *) e; - jresult = (int) swig_callbackOnStackEvent(je); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_SipCallback::OnInviteEvent(InviteEvent const *e) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - void * je = 0 ; - - if (!swig_callbackOnInviteEvent) { - return SipCallback::OnInviteEvent(e); - } else { - je = (void *) e; - jresult = (int) swig_callbackOnInviteEvent(je); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_SipCallback::OnMessagingEvent(MessagingEvent const *e) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - void * je = 0 ; - - if (!swig_callbackOnMessagingEvent) { - return SipCallback::OnMessagingEvent(e); - } else { - je = (void *) e; - jresult = (int) swig_callbackOnMessagingEvent(je); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_SipCallback::OnInfoEvent(InfoEvent const *e) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - void * je = 0 ; - - if (!swig_callbackOnInfoEvent) { - return SipCallback::OnInfoEvent(e); - } else { - je = (void *) e; - jresult = (int) swig_callbackOnInfoEvent(je); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_SipCallback::OnOptionsEvent(OptionsEvent const *e) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - void * je = 0 ; - - if (!swig_callbackOnOptionsEvent) { - return SipCallback::OnOptionsEvent(e); - } else { - je = (void *) e; - jresult = (int) swig_callbackOnOptionsEvent(je); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_SipCallback::OnPublicationEvent(PublicationEvent const *e) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - void * je = 0 ; - - if (!swig_callbackOnPublicationEvent) { - return SipCallback::OnPublicationEvent(e); - } else { - je = (void *) e; - jresult = (int) swig_callbackOnPublicationEvent(je); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_SipCallback::OnRegistrationEvent(RegistrationEvent const *e) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - void * je = 0 ; - - if (!swig_callbackOnRegistrationEvent) { - return SipCallback::OnRegistrationEvent(e); - } else { - je = (void *) e; - jresult = (int) swig_callbackOnRegistrationEvent(je); - c_result = (int)jresult; - } - return c_result; -} - -int SwigDirector_SipCallback::OnSubscriptionEvent(SubscriptionEvent const *e) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - void * je = 0 ; - - if (!swig_callbackOnSubscriptionEvent) { - return SipCallback::OnSubscriptionEvent(e); - } else { - je = (void *) e; - jresult = (int) swig_callbackOnSubscriptionEvent(je); - c_result = (int)jresult; - } - return c_result; -} - -void SwigDirector_SipCallback::swig_connect_director(SWIG_Callback0_t callbackOnDialogEvent, SWIG_Callback1_t callbackOnStackEvent, SWIG_Callback2_t callbackOnInviteEvent, SWIG_Callback3_t callbackOnMessagingEvent, SWIG_Callback4_t callbackOnInfoEvent, SWIG_Callback5_t callbackOnOptionsEvent, SWIG_Callback6_t callbackOnPublicationEvent, SWIG_Callback7_t callbackOnRegistrationEvent, SWIG_Callback8_t callbackOnSubscriptionEvent) { - swig_callbackOnDialogEvent = callbackOnDialogEvent; - swig_callbackOnStackEvent = callbackOnStackEvent; - swig_callbackOnInviteEvent = callbackOnInviteEvent; - swig_callbackOnMessagingEvent = callbackOnMessagingEvent; - swig_callbackOnInfoEvent = callbackOnInfoEvent; - swig_callbackOnOptionsEvent = callbackOnOptionsEvent; - swig_callbackOnPublicationEvent = callbackOnPublicationEvent; - swig_callbackOnRegistrationEvent = callbackOnRegistrationEvent; - swig_callbackOnSubscriptionEvent = callbackOnSubscriptionEvent; -} - -void SwigDirector_SipCallback::swig_init_callbacks() { - swig_callbackOnDialogEvent = 0; - swig_callbackOnStackEvent = 0; - swig_callbackOnInviteEvent = 0; - swig_callbackOnMessagingEvent = 0; - swig_callbackOnInfoEvent = 0; - swig_callbackOnOptionsEvent = 0; - swig_callbackOnPublicationEvent = 0; - swig_callbackOnRegistrationEvent = 0; - swig_callbackOnSubscriptionEvent = 0; -} - -SwigDirector_XcapCallback::SwigDirector_XcapCallback() : XcapCallback(), Swig::Director() { - swig_init_callbacks(); -} - -SwigDirector_XcapCallback::~SwigDirector_XcapCallback() { - -} - - -int SwigDirector_XcapCallback::onEvent(XcapEvent const *e) const { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - void * je = 0 ; - - if (!swig_callbackonEvent) { - return XcapCallback::onEvent(e); - } else { - je = (void *) e; - jresult = (int) swig_callbackonEvent(je); - c_result = (int)jresult; - } - return c_result; -} - -void SwigDirector_XcapCallback::swig_connect_director(SWIG_Callback0_t callbackonEvent) { - swig_callbackonEvent = callbackonEvent; -} - -void SwigDirector_XcapCallback::swig_init_callbacks() { - swig_callbackonEvent = 0; -} - -SwigDirector_MsrpCallback::SwigDirector_MsrpCallback() : MsrpCallback(), Swig::Director() { - swig_init_callbacks(); -} - -SwigDirector_MsrpCallback::~SwigDirector_MsrpCallback() { - -} - - -int SwigDirector_MsrpCallback::OnEvent(MsrpEvent const *e) { - int c_result = SwigValueInit< int >() ; - int jresult = 0 ; - void * je = 0 ; - - if (!swig_callbackOnEvent) { - return MsrpCallback::OnEvent(e); - } else { - je = (void *) e; - jresult = (int) swig_callbackOnEvent(je); - c_result = (int)jresult; - } - return c_result; -} - -void SwigDirector_MsrpCallback::swig_connect_director(SWIG_Callback0_t callbackOnEvent) { - swig_callbackOnEvent = callbackOnEvent; -} - -void SwigDirector_MsrpCallback::swig_init_callbacks() { - swig_callbackOnEvent = 0; -} - - -#ifdef __cplusplus -extern "C" { -#endif - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_DDebugCallback() { - void * jresult ; - DDebugCallback *result = 0 ; - - result = (DDebugCallback *)new SwigDirector_DDebugCallback(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_DDebugCallback(void * jarg1) { - DDebugCallback *arg1 = (DDebugCallback *) 0 ; - - arg1 = (DDebugCallback *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugInfo(void * jarg1, char * jarg2) { - int jresult ; - DDebugCallback *arg1 = (DDebugCallback *) 0 ; - char *arg2 = (char *) 0 ; - int result; - - arg1 = (DDebugCallback *)jarg1; - arg2 = (char *)jarg2; - result = (int)(arg1)->OnDebugInfo((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugInfoSwigExplicitDDebugCallback(void * jarg1, char * jarg2) { - int jresult ; - DDebugCallback *arg1 = (DDebugCallback *) 0 ; - char *arg2 = (char *) 0 ; - int result; - - arg1 = (DDebugCallback *)jarg1; - arg2 = (char *)jarg2; - result = (int)(arg1)->DDebugCallback::OnDebugInfo((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugWarn(void * jarg1, char * jarg2) { - int jresult ; - DDebugCallback *arg1 = (DDebugCallback *) 0 ; - char *arg2 = (char *) 0 ; - int result; - - arg1 = (DDebugCallback *)jarg1; - arg2 = (char *)jarg2; - result = (int)(arg1)->OnDebugWarn((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugWarnSwigExplicitDDebugCallback(void * jarg1, char * jarg2) { - int jresult ; - DDebugCallback *arg1 = (DDebugCallback *) 0 ; - char *arg2 = (char *) 0 ; - int result; - - arg1 = (DDebugCallback *)jarg1; - arg2 = (char *)jarg2; - result = (int)(arg1)->DDebugCallback::OnDebugWarn((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugError(void * jarg1, char * jarg2) { - int jresult ; - DDebugCallback *arg1 = (DDebugCallback *) 0 ; - char *arg2 = (char *) 0 ; - int result; - - arg1 = (DDebugCallback *)jarg1; - arg2 = (char *)jarg2; - result = (int)(arg1)->OnDebugError((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugErrorSwigExplicitDDebugCallback(void * jarg1, char * jarg2) { - int jresult ; - DDebugCallback *arg1 = (DDebugCallback *) 0 ; - char *arg2 = (char *) 0 ; - int result; - - arg1 = (DDebugCallback *)jarg1; - arg2 = (char *)jarg2; - result = (int)(arg1)->DDebugCallback::OnDebugError((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugFatal(void * jarg1, char * jarg2) { - int jresult ; - DDebugCallback *arg1 = (DDebugCallback *) 0 ; - char *arg2 = (char *) 0 ; - int result; - - arg1 = (DDebugCallback *)jarg1; - arg2 = (char *)jarg2; - result = (int)(arg1)->OnDebugFatal((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugFatalSwigExplicitDDebugCallback(void * jarg1, char * jarg2) { - int jresult ; - DDebugCallback *arg1 = (DDebugCallback *) 0 ; - char *arg2 = (char *) 0 ; - int result; - - arg1 = (DDebugCallback *)jarg1; - arg2 = (char *)jarg2; - result = (int)(arg1)->DDebugCallback::OnDebugFatal((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_DDebugCallback_director_connect(void *objarg, SwigDirector_DDebugCallback::SWIG_Callback0_t callback0, SwigDirector_DDebugCallback::SWIG_Callback1_t callback1, SwigDirector_DDebugCallback::SWIG_Callback2_t callback2, SwigDirector_DDebugCallback::SWIG_Callback3_t callback3) { - DDebugCallback *obj = (DDebugCallback *)objarg; - SwigDirector_DDebugCallback *director = dynamic_cast(obj); - if (director) { - director->swig_connect_director(callback0, callback1, callback2, callback3); - } -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_AudioResampler(unsigned int jarg1, unsigned int jarg2, unsigned int jarg3, unsigned int jarg4, unsigned int jarg5) { - void * jresult ; - uint32_t arg1 ; - uint32_t arg2 ; - uint32_t arg3 ; - uint32_t arg4 ; - uint32_t arg5 ; - AudioResampler *result = 0 ; - - arg1 = (uint32_t)jarg1; - arg2 = (uint32_t)jarg2; - arg3 = (uint32_t)jarg3; - arg4 = (uint32_t)jarg4; - arg5 = (uint32_t)jarg5; - result = (AudioResampler *)new AudioResampler(arg1,arg2,arg3,arg4,arg5); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_AudioResampler(void * jarg1) { - AudioResampler *arg1 = (AudioResampler *) 0 ; - - arg1 = (AudioResampler *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_AudioResampler_isValid(void * jarg1) { - unsigned int jresult ; - AudioResampler *arg1 = (AudioResampler *) 0 ; - bool result; - - arg1 = (AudioResampler *)jarg1; - result = (bool)(arg1)->isValid(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_AudioResampler_getOutputRequiredSizeInShort(void * jarg1) { - unsigned int jresult ; - AudioResampler *arg1 = (AudioResampler *) 0 ; - uint32_t result; - - arg1 = (AudioResampler *)jarg1; - result = (uint32_t)(arg1)->getOutputRequiredSizeInShort(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_AudioResampler_getInputRequiredSizeInShort(void * jarg1) { - unsigned int jresult ; - AudioResampler *arg1 = (AudioResampler *) 0 ; - uint32_t result; - - arg1 = (AudioResampler *)jarg1; - result = (uint32_t)(arg1)->getInputRequiredSizeInShort(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_AudioResampler_process(void * jarg1, void * jarg2, unsigned int jarg3, void * jarg4, unsigned int jarg5) { - unsigned int jresult ; - AudioResampler *arg1 = (AudioResampler *) 0 ; - void *arg2 = (void *) 0 ; - uint32_t arg3 ; - void *arg4 = (void *) 0 ; - uint32_t arg5 ; - uint32_t result; - - arg1 = (AudioResampler *)jarg1; - arg2 = jarg2; - arg3 = (uint32_t)jarg3; - arg4 = jarg4; - arg5 = (uint32_t)jarg5; - result = (uint32_t)(arg1)->process((void const *)arg2,arg3,arg4,arg5); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_ActionConfig() { - void * jresult ; - ActionConfig *result = 0 ; - - result = (ActionConfig *)new ActionConfig(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ActionConfig(void * jarg1) { - ActionConfig *arg1 = (ActionConfig *) 0 ; - - arg1 = (ActionConfig *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ActionConfig_addHeader(void * jarg1, char * jarg2, char * jarg3) { - unsigned int jresult ; - ActionConfig *arg1 = (ActionConfig *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - bool result; - - arg1 = (ActionConfig *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - result = (bool)(arg1)->addHeader((char const *)arg2,(char const *)arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ActionConfig_addPayload(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - ActionConfig *arg1 = (ActionConfig *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - bool result; - - arg1 = (ActionConfig *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (bool)(arg1)->addPayload((void const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_ActionConfig_setResponseLine(void * jarg1, short jarg2, char * jarg3) { - void * jresult ; - ActionConfig *arg1 = (ActionConfig *) 0 ; - short arg2 ; - char *arg3 = (char *) 0 ; - ActionConfig *result = 0 ; - - arg1 = (ActionConfig *)jarg1; - arg2 = (short)jarg2; - arg3 = (char *)jarg3; - result = (ActionConfig *)(arg1)->setResponseLine(arg2,(char const *)arg3); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_ActionConfig_setMediaString(void * jarg1, int jarg2, char * jarg3, char * jarg4) { - void * jresult ; - ActionConfig *arg1 = (ActionConfig *) 0 ; - twrap_media_type_t arg2 ; - char *arg3 = (char *) 0 ; - char *arg4 = (char *) 0 ; - ActionConfig *result = 0 ; - - arg1 = (ActionConfig *)jarg1; - arg2 = (twrap_media_type_t)jarg2; - arg3 = (char *)jarg3; - arg4 = (char *)jarg4; - result = (ActionConfig *)(arg1)->setMediaString(arg2,(char const *)arg3,(char const *)arg4); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_ActionConfig_setMediaInt(void * jarg1, int jarg2, char * jarg3, int jarg4) { - void * jresult ; - ActionConfig *arg1 = (ActionConfig *) 0 ; - twrap_media_type_t arg2 ; - char *arg3 = (char *) 0 ; - int arg4 ; - ActionConfig *result = 0 ; - - arg1 = (ActionConfig *)jarg1; - arg2 = (twrap_media_type_t)jarg2; - arg3 = (char *)jarg3; - arg4 = (int)jarg4; - result = (ActionConfig *)(arg1)->setMediaInt(arg2,(char const *)arg3,arg4); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_MediaSessionMgr(void * jarg1) { - MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; - - arg1 = (MediaSessionMgr *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_sessionSetInt32(void * jarg1, int jarg2, char * jarg3, int jarg4) { - unsigned int jresult ; - MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; - twrap_media_type_t arg2 ; - char *arg3 = (char *) 0 ; - int32_t arg4 ; - bool result; - - arg1 = (MediaSessionMgr *)jarg1; - arg2 = (twrap_media_type_t)jarg2; - arg3 = (char *)jarg3; - arg4 = (int32_t)jarg4; - result = (bool)(arg1)->sessionSetInt32(arg2,(char const *)arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_consumerSetInt32(void * jarg1, int jarg2, char * jarg3, int jarg4) { - unsigned int jresult ; - MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; - twrap_media_type_t arg2 ; - char *arg3 = (char *) 0 ; - int32_t arg4 ; - bool result; - - arg1 = (MediaSessionMgr *)jarg1; - arg2 = (twrap_media_type_t)jarg2; - arg3 = (char *)jarg3; - arg4 = (int32_t)jarg4; - result = (bool)(arg1)->consumerSetInt32(arg2,(char const *)arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_consumerSetInt64(void * jarg1, int jarg2, char * jarg3, long long jarg4) { - unsigned int jresult ; - MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; - twrap_media_type_t arg2 ; - char *arg3 = (char *) 0 ; - int64_t arg4 ; - bool result; - - arg1 = (MediaSessionMgr *)jarg1; - arg2 = (twrap_media_type_t)jarg2; - arg3 = (char *)jarg3; - arg4 = (int64_t)jarg4; - result = (bool)(arg1)->consumerSetInt64(arg2,(char const *)arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_producerSetInt32(void * jarg1, int jarg2, char * jarg3, int jarg4) { - unsigned int jresult ; - MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; - twrap_media_type_t arg2 ; - char *arg3 = (char *) 0 ; - int32_t arg4 ; - bool result; - - arg1 = (MediaSessionMgr *)jarg1; - arg2 = (twrap_media_type_t)jarg2; - arg3 = (char *)jarg3; - arg4 = (int32_t)jarg4; - result = (bool)(arg1)->producerSetInt32(arg2,(char const *)arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_producerSetInt64(void * jarg1, int jarg2, char * jarg3, long long jarg4) { - unsigned int jresult ; - MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; - twrap_media_type_t arg2 ; - char *arg3 = (char *) 0 ; - int64_t arg4 ; - bool result; - - arg1 = (MediaSessionMgr *)jarg1; - arg2 = (twrap_media_type_t)jarg2; - arg3 = (char *)jarg3; - arg4 = (int64_t)jarg4; - result = (bool)(arg1)->producerSetInt64(arg2,(char const *)arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_MediaSessionMgr_findProxyPluginConsumer(void * jarg1, int jarg2) { - void * jresult ; - MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; - twrap_media_type_t arg2 ; - ProxyPlugin *result = 0 ; - - arg1 = (MediaSessionMgr *)jarg1; - arg2 = (twrap_media_type_t)jarg2; - result = (ProxyPlugin *)((MediaSessionMgr const *)arg1)->findProxyPluginConsumer(arg2); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_MediaSessionMgr_findProxyPluginProducer(void * jarg1, int jarg2) { - void * jresult ; - MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; - twrap_media_type_t arg2 ; - ProxyPlugin *result = 0 ; - - arg1 = (MediaSessionMgr *)jarg1; - arg2 = (twrap_media_type_t)jarg2; - result = (ProxyPlugin *)((MediaSessionMgr const *)arg1)->findProxyPluginProducer(arg2); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_MediaSessionMgr_getSessionId(void * jarg1, int jarg2) { - unsigned long long jresult ; - MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; - twrap_media_type_t arg2 ; - uint64_t result; - - arg1 = (MediaSessionMgr *)jarg1; - arg2 = (twrap_media_type_t)jarg2; - result = (uint64_t)((MediaSessionMgr const *)arg1)->getSessionId(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetBandwidthLevel(int jarg1) { - unsigned int jresult ; - tmedia_bandwidth_level_t arg1 ; - bool result; - - arg1 = (tmedia_bandwidth_level_t)jarg1; - result = (bool)MediaSessionMgr::defaultsSetBandwidthLevel(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetBandwidthLevel() { - int jresult ; - tmedia_bandwidth_level_t result; - - result = (tmedia_bandwidth_level_t)MediaSessionMgr::defaultsGetBandwidthLevel(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetJbMargin(unsigned int jarg1) { - unsigned int jresult ; - uint32_t arg1 ; - bool result; - - arg1 = (uint32_t)jarg1; - result = (bool)MediaSessionMgr::defaultsSetJbMargin(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetJbMaxLateRate(unsigned int jarg1) { - unsigned int jresult ; - uint32_t arg1 ; - bool result; - - arg1 = (uint32_t)jarg1; - result = (bool)MediaSessionMgr::defaultsSetJbMaxLateRate(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetEchoTail(unsigned int jarg1) { - unsigned int jresult ; - uint32_t arg1 ; - bool result; - - arg1 = (uint32_t)jarg1; - result = (bool)MediaSessionMgr::defaultsSetEchoTail(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetEchoTail() { - unsigned int jresult ; - uint32_t result; - - result = (uint32_t)MediaSessionMgr::defaultsGetEchoTail(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetEchoSkew(unsigned int jarg1) { - unsigned int jresult ; - uint32_t arg1 ; - bool result; - - arg1 = (uint32_t)jarg1; - result = (bool)MediaSessionMgr::defaultsSetEchoSkew(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetEchoSuppEnabled(unsigned int jarg1) { - unsigned int jresult ; - bool arg1 ; - bool result; - - arg1 = jarg1 ? true : false; - result = (bool)MediaSessionMgr::defaultsSetEchoSuppEnabled(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetEchoSuppEnabled() { - unsigned int jresult ; - bool result; - - result = (bool)MediaSessionMgr::defaultsGetEchoSuppEnabled(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetAgcEnabled(unsigned int jarg1) { - unsigned int jresult ; - bool arg1 ; - bool result; - - arg1 = jarg1 ? true : false; - result = (bool)MediaSessionMgr::defaultsSetAgcEnabled(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetAgcEnabled() { - unsigned int jresult ; - bool result; - - result = (bool)MediaSessionMgr::defaultsGetAgcEnabled(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetAgcLevel(float jarg1) { - unsigned int jresult ; - float arg1 ; - bool result; - - arg1 = (float)jarg1; - result = (bool)MediaSessionMgr::defaultsSetAgcLevel(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT float SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetAgcLevel() { - float jresult ; - float result; - - result = (float)MediaSessionMgr::defaultsGetAgcLevel(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetVadEnabled(unsigned int jarg1) { - unsigned int jresult ; - bool arg1 ; - bool result; - - arg1 = jarg1 ? true : false; - result = (bool)MediaSessionMgr::defaultsSetVadEnabled(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetGetVadEnabled() { - unsigned int jresult ; - bool result; - - result = (bool)MediaSessionMgr::defaultsGetGetVadEnabled(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetNoiseSuppEnabled(unsigned int jarg1) { - unsigned int jresult ; - bool arg1 ; - bool result; - - arg1 = jarg1 ? true : false; - result = (bool)MediaSessionMgr::defaultsSetNoiseSuppEnabled(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetNoiseSuppEnabled() { - unsigned int jresult ; - bool result; - - result = (bool)MediaSessionMgr::defaultsGetNoiseSuppEnabled(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetNoiseSuppLevel(int jarg1) { - unsigned int jresult ; - int32_t arg1 ; - bool result; - - arg1 = (int32_t)jarg1; - result = (bool)MediaSessionMgr::defaultsSetNoiseSuppLevel(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetNoiseSuppLevel() { - int jresult ; - int32_t result; - - result = (int32_t)MediaSessionMgr::defaultsGetNoiseSuppLevel(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSet100relEnabled(unsigned int jarg1) { - unsigned int jresult ; - bool arg1 ; - bool result; - - arg1 = jarg1 ? true : false; - result = (bool)MediaSessionMgr::defaultsSet100relEnabled(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGet100relEnabled() { - unsigned int jresult ; - bool result; - - result = (bool)MediaSessionMgr::defaultsGet100relEnabled(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetScreenSize(int jarg1, int jarg2) { - unsigned int jresult ; - int32_t arg1 ; - int32_t arg2 ; - bool result; - - arg1 = (int32_t)jarg1; - arg2 = (int32_t)jarg2; - result = (bool)MediaSessionMgr::defaultsSetScreenSize(arg1,arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetAudioGain(int jarg1, int jarg2) { - unsigned int jresult ; - int32_t arg1 ; - int32_t arg2 ; - bool result; - - arg1 = (int32_t)jarg1; - arg2 = (int32_t)jarg2; - result = (bool)MediaSessionMgr::defaultsSetAudioGain(arg1,arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetRtpPortRange(unsigned short jarg1, unsigned short jarg2) { - unsigned int jresult ; - uint16_t arg1 ; - uint16_t arg2 ; - bool result; - - arg1 = (uint16_t)jarg1; - arg2 = (uint16_t)jarg2; - result = (bool)MediaSessionMgr::defaultsSetRtpPortRange(arg1,arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetMediaType(int jarg1) { - unsigned int jresult ; - twrap_media_type_t arg1 ; - bool result; - - arg1 = (twrap_media_type_t)jarg1; - result = (bool)MediaSessionMgr::defaultsSetMediaType(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetVolume(int jarg1) { - unsigned int jresult ; - int32_t arg1 ; - bool result; - - arg1 = (int32_t)jarg1; - result = (bool)MediaSessionMgr::defaultsSetVolume(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetVolume() { - int jresult ; - int32_t result; - - result = (int32_t)MediaSessionMgr::defaultsGetVolume(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetInviteSessionTimers(int jarg1, char * jarg2) { - unsigned int jresult ; - int32_t arg1 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (int32_t)jarg1; - arg2 = (char *)jarg2; - result = (bool)MediaSessionMgr::defaultsSetInviteSessionTimers(arg1,(char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_MediaContent(void * jarg1) { - MediaContent *arg1 = (MediaContent *) 0 ; - - arg1 = (MediaContent *)jarg1; - delete arg1; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_MediaContent_getType(void * jarg1) { - char * jresult ; - MediaContent *arg1 = (MediaContent *) 0 ; - char *result = 0 ; - - arg1 = (MediaContent *)jarg1; - result = (char *)(arg1)->getType(); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaContent_getDataLength(void * jarg1) { - unsigned int jresult ; - MediaContent *arg1 = (MediaContent *) 0 ; - unsigned int result; - - arg1 = (MediaContent *)jarg1; - result = (unsigned int)(arg1)->getDataLength(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaContent_getData(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - MediaContent *arg1 = (MediaContent *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - unsigned int result; - - arg1 = (MediaContent *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (unsigned int)(arg1)->getData(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_MediaContent_parse__SWIG_0(void * jarg1, unsigned int jarg2, char * jarg3) { - void * jresult ; - void *arg1 = (void *) 0 ; - unsigned int arg2 ; - char *arg3 = (char *) 0 ; - MediaContent *result = 0 ; - - arg1 = jarg1; - arg2 = (unsigned int)jarg2; - arg3 = (char *)jarg3; - result = (MediaContent *)MediaContent::parse((void const *)arg1,arg2,(char const *)arg3); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_MediaContent_parse__SWIG_1(void * jarg1, unsigned int jarg2) { - void * jresult ; - void *arg1 = (void *) 0 ; - unsigned int arg2 ; - MediaContentCPIM *result = 0 ; - - arg1 = jarg1; - arg2 = (unsigned int)jarg2; - result = (MediaContentCPIM *)MediaContent::parse((void const *)arg1,arg2); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaContent_getPayloadLength(void * jarg1) { - unsigned int jresult ; - MediaContent *arg1 = (MediaContent *) 0 ; - unsigned int result; - - arg1 = (MediaContent *)jarg1; - result = (unsigned int)(arg1)->getPayloadLength(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaContent_getPayload(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - MediaContent *arg1 = (MediaContent *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - unsigned int result; - - arg1 = (MediaContent *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (unsigned int)(arg1)->getPayload(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_MediaContentCPIM(void * jarg1) { - MediaContentCPIM *arg1 = (MediaContentCPIM *) 0 ; - - arg1 = (MediaContentCPIM *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaContentCPIM_getPayloadLength(void * jarg1) { - unsigned int jresult ; - MediaContentCPIM *arg1 = (MediaContentCPIM *) 0 ; - unsigned int result; - - arg1 = (MediaContentCPIM *)jarg1; - result = (unsigned int)(arg1)->getPayloadLength(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaContentCPIM_getPayload(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - MediaContentCPIM *arg1 = (MediaContentCPIM *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - unsigned int result; - - arg1 = (MediaContentCPIM *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (unsigned int)(arg1)->getPayload(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_MediaContentCPIM_getHeaderValue(void * jarg1, char * jarg2) { - char * jresult ; - MediaContentCPIM *arg1 = (MediaContentCPIM *) 0 ; - char *arg2 = (char *) 0 ; - char *result = 0 ; - - arg1 = (MediaContentCPIM *)jarg1; - arg2 = (char *)jarg2; - result = (char *)(arg1)->getHeaderValue((char const *)arg2); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_SipUri__SWIG_0(char * jarg1, char * jarg2) { - void * jresult ; - char *arg1 = (char *) 0 ; - char *arg2 = (char *) 0 ; - SipUri *result = 0 ; - - arg1 = (char *)jarg1; - arg2 = (char *)jarg2; - result = (SipUri *)new SipUri((char const *)arg1,(char const *)arg2); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_SipUri__SWIG_1(char * jarg1) { - void * jresult ; - char *arg1 = (char *) 0 ; - SipUri *result = 0 ; - - arg1 = (char *)jarg1; - result = (SipUri *)new SipUri((char const *)arg1); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipUri(void * jarg1) { - SipUri *arg1 = (SipUri *) 0 ; - - arg1 = (SipUri *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipUri_isValid__SWIG_0(char * jarg1) { - unsigned int jresult ; - char *arg1 = (char *) 0 ; - bool result; - - arg1 = (char *)jarg1; - result = (bool)SipUri::isValid((char const *)arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipUri_isValid__SWIG_1(void * jarg1) { - unsigned int jresult ; - SipUri *arg1 = (SipUri *) 0 ; - bool result; - - arg1 = (SipUri *)jarg1; - result = (bool)(arg1)->isValid(); - jresult = result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipUri_getScheme(void * jarg1) { - char * jresult ; - SipUri *arg1 = (SipUri *) 0 ; - char *result = 0 ; - - arg1 = (SipUri *)jarg1; - result = (char *)(arg1)->getScheme(); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipUri_getHost(void * jarg1) { - char * jresult ; - SipUri *arg1 = (SipUri *) 0 ; - char *result = 0 ; - - arg1 = (SipUri *)jarg1; - result = (char *)(arg1)->getHost(); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT unsigned short SWIGSTDCALL CSharp_SipUri_getPort(void * jarg1) { - unsigned short jresult ; - SipUri *arg1 = (SipUri *) 0 ; - unsigned short result; - - arg1 = (SipUri *)jarg1; - result = (unsigned short)(arg1)->getPort(); - jresult = result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipUri_getUserName(void * jarg1) { - char * jresult ; - SipUri *arg1 = (SipUri *) 0 ; - char *result = 0 ; - - arg1 = (SipUri *)jarg1; - result = (char *)(arg1)->getUserName(); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipUri_getPassword(void * jarg1) { - char * jresult ; - SipUri *arg1 = (SipUri *) 0 ; - char *result = 0 ; - - arg1 = (SipUri *)jarg1; - result = (char *)(arg1)->getPassword(); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipUri_getDisplayName(void * jarg1) { - char * jresult ; - SipUri *arg1 = (SipUri *) 0 ; - char *result = 0 ; - - arg1 = (SipUri *)jarg1; - result = (char *)(arg1)->getDisplayName(); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipUri_getParamValue(void * jarg1, char * jarg2) { - char * jresult ; - SipUri *arg1 = (SipUri *) 0 ; - char *arg2 = (char *) 0 ; - char *result = 0 ; - - arg1 = (SipUri *)jarg1; - arg2 = (char *)jarg2; - result = (char *)(arg1)->getParamValue((char const *)arg2); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_SipUri_setDisplayName(void * jarg1, char * jarg2) { - SipUri *arg1 = (SipUri *) 0 ; - char *arg2 = (char *) 0 ; - - arg1 = (SipUri *)jarg1; - arg2 = (char *)jarg2; - (arg1)->setDisplayName((char const *)arg2); -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_SdpMessage() { - void * jresult ; - SdpMessage *result = 0 ; - - result = (SdpMessage *)new SdpMessage(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_SdpMessage(void * jarg1) { - SdpMessage *arg1 = (SdpMessage *) 0 ; - - arg1 = (SdpMessage *)jarg1; - delete arg1; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SdpMessage_getSdpHeaderValue__SWIG_0(void * jarg1, char * jarg2, char jarg3, unsigned int jarg4) { - char * jresult ; - SdpMessage *arg1 = (SdpMessage *) 0 ; - char *arg2 = (char *) 0 ; - char arg3 ; - unsigned int arg4 ; - char *result = 0 ; - - arg1 = (SdpMessage *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char)jarg3; - arg4 = (unsigned int)jarg4; - result = (char *)(arg1)->getSdpHeaderValue((char const *)arg2,arg3,arg4); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SdpMessage_getSdpHeaderValue__SWIG_1(void * jarg1, char * jarg2, char jarg3) { - char * jresult ; - SdpMessage *arg1 = (SdpMessage *) 0 ; - char *arg2 = (char *) 0 ; - char arg3 ; - char *result = 0 ; - - arg1 = (SdpMessage *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char)jarg3; - result = (char *)(arg1)->getSdpHeaderValue((char const *)arg2,arg3); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SdpMessage_getSdpHeaderAValue(void * jarg1, char * jarg2, char * jarg3) { - char * jresult ; - SdpMessage *arg1 = (SdpMessage *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *result = 0 ; - - arg1 = (SdpMessage *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - result = (char *)(arg1)->getSdpHeaderAValue((char const *)arg2,(char const *)arg3); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_SipMessage() { - void * jresult ; - SipMessage *result = 0 ; - - result = (SipMessage *)new SipMessage(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipMessage(void * jarg1) { - SipMessage *arg1 = (SipMessage *) 0 ; - - arg1 = (SipMessage *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipMessage_isResponse(void * jarg1) { - unsigned int jresult ; - SipMessage *arg1 = (SipMessage *) 0 ; - bool result; - - arg1 = (SipMessage *)jarg1; - result = (bool)(arg1)->isResponse(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipMessage_getRequestType(void * jarg1) { - int jresult ; - SipMessage *arg1 = (SipMessage *) 0 ; - tsip_request_type_t result; - - arg1 = (SipMessage *)jarg1; - result = (tsip_request_type_t)(arg1)->getRequestType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT short SWIGSTDCALL CSharp_SipMessage_getResponseCode(void * jarg1) { - short jresult ; - SipMessage *arg1 = (SipMessage *) 0 ; - short result; - - arg1 = (SipMessage *)jarg1; - result = (short)(arg1)->getResponseCode(); - jresult = result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipMessage_getSipHeaderValue__SWIG_0(void * jarg1, char * jarg2, unsigned int jarg3) { - char * jresult ; - SipMessage *arg1 = (SipMessage *) 0 ; - char *arg2 = (char *) 0 ; - unsigned int arg3 ; - char *result = 0 ; - - arg1 = (SipMessage *)jarg1; - arg2 = (char *)jarg2; - arg3 = (unsigned int)jarg3; - result = (char *)(arg1)->getSipHeaderValue((char const *)arg2,arg3); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipMessage_getSipHeaderValue__SWIG_1(void * jarg1, char * jarg2) { - char * jresult ; - SipMessage *arg1 = (SipMessage *) 0 ; - char *arg2 = (char *) 0 ; - char *result = 0 ; - - arg1 = (SipMessage *)jarg1; - arg2 = (char *)jarg2; - result = (char *)(arg1)->getSipHeaderValue((char const *)arg2); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipMessage_getSipHeaderParamValue__SWIG_0(void * jarg1, char * jarg2, char * jarg3, unsigned int jarg4) { - char * jresult ; - SipMessage *arg1 = (SipMessage *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - unsigned int arg4 ; - char *result = 0 ; - - arg1 = (SipMessage *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = (unsigned int)jarg4; - result = (char *)(arg1)->getSipHeaderParamValue((char const *)arg2,(char const *)arg3,arg4); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipMessage_getSipHeaderParamValue__SWIG_1(void * jarg1, char * jarg2, char * jarg3) { - char * jresult ; - SipMessage *arg1 = (SipMessage *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *result = 0 ; - - arg1 = (SipMessage *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - result = (char *)(arg1)->getSipHeaderParamValue((char const *)arg2,(char const *)arg3); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipMessage_getSipContentLength(void * jarg1) { - unsigned int jresult ; - SipMessage *arg1 = (SipMessage *) 0 ; - unsigned int result; - - arg1 = (SipMessage *)jarg1; - result = (unsigned int)(arg1)->getSipContentLength(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipMessage_getSipContent(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - SipMessage *arg1 = (SipMessage *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - unsigned int result; - - arg1 = (SipMessage *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (unsigned int)(arg1)->getSipContent(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_SipMessage_getSdpMessage(void * jarg1) { - void * jresult ; - SipMessage *arg1 = (SipMessage *) 0 ; - SdpMessage *result = 0 ; - - arg1 = (SipMessage *)jarg1; - result = (SdpMessage *)(arg1)->getSdpMessage(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipEvent(void * jarg1) { - SipEvent *arg1 = (SipEvent *) 0 ; - - arg1 = (SipEvent *)jarg1; - delete arg1; -} - - -SWIGEXPORT short SWIGSTDCALL CSharp_SipEvent_getCode(void * jarg1) { - short jresult ; - SipEvent *arg1 = (SipEvent *) 0 ; - short result; - - arg1 = (SipEvent *)jarg1; - result = (short)((SipEvent const *)arg1)->getCode(); - jresult = result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipEvent_getPhrase(void * jarg1) { - char * jresult ; - SipEvent *arg1 = (SipEvent *) 0 ; - char *result = 0 ; - - arg1 = (SipEvent *)jarg1; - result = (char *)((SipEvent const *)arg1)->getPhrase(); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_SipEvent_getBaseSession(void * jarg1) { - void * jresult ; - SipEvent *arg1 = (SipEvent *) 0 ; - SipSession *result = 0 ; - - arg1 = (SipEvent *)jarg1; - result = (SipSession *)((SipEvent const *)arg1)->getBaseSession(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_SipEvent_getSipMessage(void * jarg1) { - void * jresult ; - SipEvent *arg1 = (SipEvent *) 0 ; - SipMessage *result = 0 ; - - arg1 = (SipEvent *)jarg1; - result = (SipMessage *)((SipEvent const *)arg1)->getSipMessage(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_DialogEvent(void * jarg1) { - DialogEvent *arg1 = (DialogEvent *) 0 ; - - arg1 = (DialogEvent *)jarg1; - delete arg1; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_StackEvent(void * jarg1) { - StackEvent *arg1 = (StackEvent *) 0 ; - - arg1 = (StackEvent *)jarg1; - delete arg1; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_InviteEvent(void * jarg1) { - InviteEvent *arg1 = (InviteEvent *) 0 ; - - arg1 = (InviteEvent *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_InviteEvent_getType(void * jarg1) { - int jresult ; - InviteEvent *arg1 = (InviteEvent *) 0 ; - tsip_invite_event_type_t result; - - arg1 = (InviteEvent *)jarg1; - result = (tsip_invite_event_type_t)((InviteEvent const *)arg1)->getType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_InviteEvent_getMediaType(void * jarg1) { - int jresult ; - InviteEvent *arg1 = (InviteEvent *) 0 ; - twrap_media_type_t result; - - arg1 = (InviteEvent *)jarg1; - result = (twrap_media_type_t)((InviteEvent const *)arg1)->getMediaType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_InviteEvent_getSession(void * jarg1) { - void * jresult ; - InviteEvent *arg1 = (InviteEvent *) 0 ; - InviteSession *result = 0 ; - - arg1 = (InviteEvent *)jarg1; - result = (InviteSession *)((InviteEvent const *)arg1)->getSession(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_InviteEvent_takeCallSessionOwnership(void * jarg1) { - void * jresult ; - InviteEvent *arg1 = (InviteEvent *) 0 ; - CallSession *result = 0 ; - - arg1 = (InviteEvent *)jarg1; - result = (CallSession *)((InviteEvent const *)arg1)->takeCallSessionOwnership(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_InviteEvent_takeMsrpSessionOwnership(void * jarg1) { - void * jresult ; - InviteEvent *arg1 = (InviteEvent *) 0 ; - MsrpSession *result = 0 ; - - arg1 = (InviteEvent *)jarg1; - result = (MsrpSession *)((InviteEvent const *)arg1)->takeMsrpSessionOwnership(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_MessagingEvent(void * jarg1) { - MessagingEvent *arg1 = (MessagingEvent *) 0 ; - - arg1 = (MessagingEvent *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_MessagingEvent_getType(void * jarg1) { - int jresult ; - MessagingEvent *arg1 = (MessagingEvent *) 0 ; - tsip_message_event_type_t result; - - arg1 = (MessagingEvent *)jarg1; - result = (tsip_message_event_type_t)((MessagingEvent const *)arg1)->getType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_MessagingEvent_getSession(void * jarg1) { - void * jresult ; - MessagingEvent *arg1 = (MessagingEvent *) 0 ; - MessagingSession *result = 0 ; - - arg1 = (MessagingEvent *)jarg1; - result = (MessagingSession *)((MessagingEvent const *)arg1)->getSession(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_MessagingEvent_takeSessionOwnership(void * jarg1) { - void * jresult ; - MessagingEvent *arg1 = (MessagingEvent *) 0 ; - MessagingSession *result = 0 ; - - arg1 = (MessagingEvent *)jarg1; - result = (MessagingSession *)((MessagingEvent const *)arg1)->takeSessionOwnership(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_InfoEvent(void * jarg1) { - InfoEvent *arg1 = (InfoEvent *) 0 ; - - arg1 = (InfoEvent *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_InfoEvent_getType(void * jarg1) { - int jresult ; - InfoEvent *arg1 = (InfoEvent *) 0 ; - tsip_info_event_type_t result; - - arg1 = (InfoEvent *)jarg1; - result = (tsip_info_event_type_t)((InfoEvent const *)arg1)->getType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_InfoEvent_getSession(void * jarg1) { - void * jresult ; - InfoEvent *arg1 = (InfoEvent *) 0 ; - InfoSession *result = 0 ; - - arg1 = (InfoEvent *)jarg1; - result = (InfoSession *)((InfoEvent const *)arg1)->getSession(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_InfoEvent_takeSessionOwnership(void * jarg1) { - void * jresult ; - InfoEvent *arg1 = (InfoEvent *) 0 ; - InfoSession *result = 0 ; - - arg1 = (InfoEvent *)jarg1; - result = (InfoSession *)((InfoEvent const *)arg1)->takeSessionOwnership(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_OptionsEvent(void * jarg1) { - OptionsEvent *arg1 = (OptionsEvent *) 0 ; - - arg1 = (OptionsEvent *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_OptionsEvent_getType(void * jarg1) { - int jresult ; - OptionsEvent *arg1 = (OptionsEvent *) 0 ; - tsip_options_event_type_t result; - - arg1 = (OptionsEvent *)jarg1; - result = (tsip_options_event_type_t)((OptionsEvent const *)arg1)->getType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_OptionsEvent_getSession(void * jarg1) { - void * jresult ; - OptionsEvent *arg1 = (OptionsEvent *) 0 ; - OptionsSession *result = 0 ; - - arg1 = (OptionsEvent *)jarg1; - result = (OptionsSession *)((OptionsEvent const *)arg1)->getSession(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_OptionsEvent_takeSessionOwnership(void * jarg1) { - void * jresult ; - OptionsEvent *arg1 = (OptionsEvent *) 0 ; - OptionsSession *result = 0 ; - - arg1 = (OptionsEvent *)jarg1; - result = (OptionsSession *)((OptionsEvent const *)arg1)->takeSessionOwnership(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_PublicationEvent(void * jarg1) { - PublicationEvent *arg1 = (PublicationEvent *) 0 ; - - arg1 = (PublicationEvent *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_PublicationEvent_getType(void * jarg1) { - int jresult ; - PublicationEvent *arg1 = (PublicationEvent *) 0 ; - tsip_publish_event_type_t result; - - arg1 = (PublicationEvent *)jarg1; - result = (tsip_publish_event_type_t)((PublicationEvent const *)arg1)->getType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_PublicationEvent_getSession(void * jarg1) { - void * jresult ; - PublicationEvent *arg1 = (PublicationEvent *) 0 ; - PublicationSession *result = 0 ; - - arg1 = (PublicationEvent *)jarg1; - result = (PublicationSession *)((PublicationEvent const *)arg1)->getSession(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_RegistrationEvent(void * jarg1) { - RegistrationEvent *arg1 = (RegistrationEvent *) 0 ; - - arg1 = (RegistrationEvent *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_RegistrationEvent_getType(void * jarg1) { - int jresult ; - RegistrationEvent *arg1 = (RegistrationEvent *) 0 ; - tsip_register_event_type_t result; - - arg1 = (RegistrationEvent *)jarg1; - result = (tsip_register_event_type_t)((RegistrationEvent const *)arg1)->getType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_RegistrationEvent_getSession(void * jarg1) { - void * jresult ; - RegistrationEvent *arg1 = (RegistrationEvent *) 0 ; - RegistrationSession *result = 0 ; - - arg1 = (RegistrationEvent *)jarg1; - result = (RegistrationSession *)((RegistrationEvent const *)arg1)->getSession(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_RegistrationEvent_takeSessionOwnership(void * jarg1) { - void * jresult ; - RegistrationEvent *arg1 = (RegistrationEvent *) 0 ; - RegistrationSession *result = 0 ; - - arg1 = (RegistrationEvent *)jarg1; - result = (RegistrationSession *)((RegistrationEvent const *)arg1)->takeSessionOwnership(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_SubscriptionEvent(void * jarg1) { - SubscriptionEvent *arg1 = (SubscriptionEvent *) 0 ; - - arg1 = (SubscriptionEvent *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SubscriptionEvent_getType(void * jarg1) { - int jresult ; - SubscriptionEvent *arg1 = (SubscriptionEvent *) 0 ; - tsip_subscribe_event_type_t result; - - arg1 = (SubscriptionEvent *)jarg1; - result = (tsip_subscribe_event_type_t)((SubscriptionEvent const *)arg1)->getType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_SubscriptionEvent_getSession(void * jarg1) { - void * jresult ; - SubscriptionEvent *arg1 = (SubscriptionEvent *) 0 ; - SubscriptionSession *result = 0 ; - - arg1 = (SubscriptionEvent *)jarg1; - result = (SubscriptionSession *)((SubscriptionEvent const *)arg1)->getSession(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_SipSession(void * jarg1) { - void * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - SipSession *result = 0 ; - - arg1 = (SipStack *)jarg1; - result = (SipSession *)new SipSession(arg1); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipSession(void * jarg1) { - SipSession *arg1 = (SipSession *) 0 ; - - arg1 = (SipSession *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_haveOwnership(void * jarg1) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - bool result; - - arg1 = (SipSession *)jarg1; - result = (bool)(arg1)->haveOwnership(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_addHeader(void * jarg1, char * jarg2, char * jarg3) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - bool result; - - arg1 = (SipSession *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - result = (bool)(arg1)->addHeader((char const *)arg2,(char const *)arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_removeHeader(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipSession *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->removeHeader((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_addCaps__SWIG_0(void * jarg1, char * jarg2, char * jarg3) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - bool result; - - arg1 = (SipSession *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - result = (bool)(arg1)->addCaps((char const *)arg2,(char const *)arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_addCaps__SWIG_1(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipSession *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->addCaps((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_removeCaps(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipSession *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->removeCaps((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setExpires(void * jarg1, unsigned int jarg2) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - unsigned int arg2 ; - bool result; - - arg1 = (SipSession *)jarg1; - arg2 = (unsigned int)jarg2; - result = (bool)(arg1)->setExpires(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setFromUri__SWIG_0(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipSession *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->setFromUri((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setFromUri__SWIG_1(void * jarg1, void * jarg2) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - SipUri *arg2 = (SipUri *) 0 ; - bool result; - - arg1 = (SipSession *)jarg1; - arg2 = (SipUri *)jarg2; - result = (bool)(arg1)->setFromUri((SipUri const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setToUri__SWIG_0(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipSession *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->setToUri((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setToUri__SWIG_1(void * jarg1, void * jarg2) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - SipUri *arg2 = (SipUri *) 0 ; - bool result; - - arg1 = (SipSession *)jarg1; - arg2 = (SipUri *)jarg2; - result = (bool)(arg1)->setToUri((SipUri const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setSilentHangup(void * jarg1, unsigned int jarg2) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - bool arg2 ; - bool result; - - arg1 = (SipSession *)jarg1; - arg2 = jarg2 ? true : false; - result = (bool)(arg1)->setSilentHangup(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_addSigCompCompartment(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipSession *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->addSigCompCompartment((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_removeSigCompCompartment(void * jarg1) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - bool result; - - arg1 = (SipSession *)jarg1; - result = (bool)(arg1)->removeSigCompCompartment(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_getId(void * jarg1) { - unsigned int jresult ; - SipSession *arg1 = (SipSession *) 0 ; - unsigned int result; - - arg1 = (SipSession *)jarg1; - result = (unsigned int)((SipSession const *)arg1)->getId(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_InviteSession(void * jarg1) { - void * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - InviteSession *result = 0 ; - - arg1 = (SipStack *)jarg1; - result = (InviteSession *)new InviteSession(arg1); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_InviteSession(void * jarg1) { - InviteSession *arg1 = (InviteSession *) 0 ; - - arg1 = (InviteSession *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_accept__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - InviteSession *arg1 = (InviteSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (InviteSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->accept(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_accept__SWIG_1(void * jarg1) { - unsigned int jresult ; - InviteSession *arg1 = (InviteSession *) 0 ; - bool result; - - arg1 = (InviteSession *)jarg1; - result = (bool)(arg1)->accept(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_hangup__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - InviteSession *arg1 = (InviteSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (InviteSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->hangup(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_hangup__SWIG_1(void * jarg1) { - unsigned int jresult ; - InviteSession *arg1 = (InviteSession *) 0 ; - bool result; - - arg1 = (InviteSession *)jarg1; - result = (bool)(arg1)->hangup(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_reject__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - InviteSession *arg1 = (InviteSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (InviteSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->reject(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_reject__SWIG_1(void * jarg1) { - unsigned int jresult ; - InviteSession *arg1 = (InviteSession *) 0 ; - bool result; - - arg1 = (InviteSession *)jarg1; - result = (bool)(arg1)->reject(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_sendInfo__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3, void * jarg4) { - unsigned int jresult ; - InviteSession *arg1 = (InviteSession *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - ActionConfig *arg4 = (ActionConfig *) 0 ; - bool result; - - arg1 = (InviteSession *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - arg4 = (ActionConfig *)jarg4; - result = (bool)(arg1)->sendInfo((void const *)arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_sendInfo__SWIG_1(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - InviteSession *arg1 = (InviteSession *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - bool result; - - arg1 = (InviteSession *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (bool)(arg1)->sendInfo((void const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_InviteSession_getMediaMgr(void * jarg1) { - void * jresult ; - InviteSession *arg1 = (InviteSession *) 0 ; - MediaSessionMgr *result = 0 ; - - arg1 = (InviteSession *)jarg1; - result = (MediaSessionMgr *)(arg1)->getMediaMgr(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_CallSession(void * jarg1) { - void * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - CallSession *result = 0 ; - - arg1 = (SipStack *)jarg1; - result = (CallSession *)new CallSession(arg1); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_CallSession(void * jarg1) { - CallSession *arg1 = (CallSession *) 0 ; - - arg1 = (CallSession *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudio__SWIG_0(void * jarg1, char * jarg2, void * jarg3) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - char *arg2 = (char *) 0 ; - ActionConfig *arg3 = (ActionConfig *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (char *)jarg2; - arg3 = (ActionConfig *)jarg3; - result = (bool)(arg1)->callAudio((char const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudio__SWIG_1(void * jarg1, char * jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->callAudio((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudio__SWIG_2(void * jarg1, void * jarg2, void * jarg3) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - SipUri *arg2 = (SipUri *) 0 ; - ActionConfig *arg3 = (ActionConfig *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (SipUri *)jarg2; - arg3 = (ActionConfig *)jarg3; - result = (bool)(arg1)->callAudio((SipUri const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudio__SWIG_3(void * jarg1, void * jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - SipUri *arg2 = (SipUri *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (SipUri *)jarg2; - result = (bool)(arg1)->callAudio((SipUri const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudioVideo__SWIG_0(void * jarg1, char * jarg2, void * jarg3) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - char *arg2 = (char *) 0 ; - ActionConfig *arg3 = (ActionConfig *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (char *)jarg2; - arg3 = (ActionConfig *)jarg3; - result = (bool)(arg1)->callAudioVideo((char const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudioVideo__SWIG_1(void * jarg1, char * jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->callAudioVideo((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudioVideo__SWIG_2(void * jarg1, void * jarg2, void * jarg3) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - SipUri *arg2 = (SipUri *) 0 ; - ActionConfig *arg3 = (ActionConfig *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (SipUri *)jarg2; - arg3 = (ActionConfig *)jarg3; - result = (bool)(arg1)->callAudioVideo((SipUri const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudioVideo__SWIG_3(void * jarg1, void * jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - SipUri *arg2 = (SipUri *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (SipUri *)jarg2; - result = (bool)(arg1)->callAudioVideo((SipUri const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callVideo__SWIG_0(void * jarg1, char * jarg2, void * jarg3) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - char *arg2 = (char *) 0 ; - ActionConfig *arg3 = (ActionConfig *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (char *)jarg2; - arg3 = (ActionConfig *)jarg3; - result = (bool)(arg1)->callVideo((char const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callVideo__SWIG_1(void * jarg1, char * jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->callVideo((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callVideo__SWIG_2(void * jarg1, void * jarg2, void * jarg3) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - SipUri *arg2 = (SipUri *) 0 ; - ActionConfig *arg3 = (ActionConfig *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (SipUri *)jarg2; - arg3 = (ActionConfig *)jarg3; - result = (bool)(arg1)->callVideo((SipUri const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callVideo__SWIG_3(void * jarg1, void * jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - SipUri *arg2 = (SipUri *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (SipUri *)jarg2; - result = (bool)(arg1)->callVideo((SipUri const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_setSessionTimer(void * jarg1, unsigned int jarg2, char * jarg3) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - unsigned int arg2 ; - char *arg3 = (char *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (unsigned int)jarg2; - arg3 = (char *)jarg3; - result = (bool)(arg1)->setSessionTimer(arg2,(char const *)arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_set100rel(void * jarg1, unsigned int jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - bool arg2 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = jarg2 ? true : false; - result = (bool)(arg1)->set100rel(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_setQoS(void * jarg1, int jarg2, int jarg3) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - tmedia_qos_stype_t arg2 ; - tmedia_qos_strength_t arg3 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (tmedia_qos_stype_t)jarg2; - arg3 = (tmedia_qos_strength_t)jarg3; - result = (bool)(arg1)->setQoS(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_hold__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->hold(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_hold__SWIG_1(void * jarg1) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - result = (bool)(arg1)->hold(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_resume__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->resume(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_resume__SWIG_1(void * jarg1) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - result = (bool)(arg1)->resume(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_transfer__SWIG_0(void * jarg1, char * jarg2, void * jarg3) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - char *arg2 = (char *) 0 ; - ActionConfig *arg3 = (ActionConfig *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (char *)jarg2; - arg3 = (ActionConfig *)jarg3; - result = (bool)(arg1)->transfer((char const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_transfer__SWIG_1(void * jarg1, char * jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->transfer((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_acceptTransfer__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->acceptTransfer(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_acceptTransfer__SWIG_1(void * jarg1) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - result = (bool)(arg1)->acceptTransfer(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_rejectTransfer__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->rejectTransfer(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_rejectTransfer__SWIG_1(void * jarg1) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - bool result; - - arg1 = (CallSession *)jarg1; - result = (bool)(arg1)->rejectTransfer(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_sendDTMF(void * jarg1, int jarg2) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - int arg2 ; - bool result; - - arg1 = (CallSession *)jarg1; - arg2 = (int)jarg2; - result = (bool)(arg1)->sendDTMF(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_getSessionTransferId(void * jarg1) { - unsigned int jresult ; - CallSession *arg1 = (CallSession *) 0 ; - unsigned int result; - - arg1 = (CallSession *)jarg1; - result = (unsigned int)(arg1)->getSessionTransferId(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_MsrpSession(void * jarg1, void * jarg2) { - void * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - MsrpCallback *arg2 = (MsrpCallback *) 0 ; - MsrpSession *result = 0 ; - - arg1 = (SipStack *)jarg1; - arg2 = (MsrpCallback *)jarg2; - result = (MsrpSession *)new MsrpSession(arg1,arg2); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_MsrpSession(void * jarg1) { - MsrpSession *arg1 = (MsrpSession *) 0 ; - - arg1 = (MsrpSession *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_setCallback(void * jarg1, void * jarg2) { - unsigned int jresult ; - MsrpSession *arg1 = (MsrpSession *) 0 ; - MsrpCallback *arg2 = (MsrpCallback *) 0 ; - bool result; - - arg1 = (MsrpSession *)jarg1; - arg2 = (MsrpCallback *)jarg2; - result = (bool)(arg1)->setCallback(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_callMsrp__SWIG_0(void * jarg1, char * jarg2, void * jarg3) { - unsigned int jresult ; - MsrpSession *arg1 = (MsrpSession *) 0 ; - char *arg2 = (char *) 0 ; - ActionConfig *arg3 = (ActionConfig *) 0 ; - bool result; - - arg1 = (MsrpSession *)jarg1; - arg2 = (char *)jarg2; - arg3 = (ActionConfig *)jarg3; - result = (bool)(arg1)->callMsrp((char const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_callMsrp__SWIG_1(void * jarg1, char * jarg2) { - unsigned int jresult ; - MsrpSession *arg1 = (MsrpSession *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (MsrpSession *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->callMsrp((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_callMsrp__SWIG_2(void * jarg1, void * jarg2, void * jarg3) { - unsigned int jresult ; - MsrpSession *arg1 = (MsrpSession *) 0 ; - SipUri *arg2 = (SipUri *) 0 ; - ActionConfig *arg3 = (ActionConfig *) 0 ; - bool result; - - arg1 = (MsrpSession *)jarg1; - arg2 = (SipUri *)jarg2; - arg3 = (ActionConfig *)jarg3; - result = (bool)(arg1)->callMsrp((SipUri const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_callMsrp__SWIG_3(void * jarg1, void * jarg2) { - unsigned int jresult ; - MsrpSession *arg1 = (MsrpSession *) 0 ; - SipUri *arg2 = (SipUri *) 0 ; - bool result; - - arg1 = (MsrpSession *)jarg1; - arg2 = (SipUri *)jarg2; - result = (bool)(arg1)->callMsrp((SipUri const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_sendMessage__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3, void * jarg4) { - unsigned int jresult ; - MsrpSession *arg1 = (MsrpSession *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - ActionConfig *arg4 = (ActionConfig *) 0 ; - bool result; - - arg1 = (MsrpSession *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - arg4 = (ActionConfig *)jarg4; - result = (bool)(arg1)->sendMessage((void const *)arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_sendMessage__SWIG_1(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - MsrpSession *arg1 = (MsrpSession *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - bool result; - - arg1 = (MsrpSession *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (bool)(arg1)->sendMessage((void const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_sendFile__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - MsrpSession *arg1 = (MsrpSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (MsrpSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->sendFile(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_sendFile__SWIG_1(void * jarg1) { - unsigned int jresult ; - MsrpSession *arg1 = (MsrpSession *) 0 ; - bool result; - - arg1 = (MsrpSession *)jarg1; - result = (bool)(arg1)->sendFile(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_MessagingSession(void * jarg1) { - void * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - MessagingSession *result = 0 ; - - arg1 = (SipStack *)jarg1; - result = (MessagingSession *)new MessagingSession(arg1); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_MessagingSession(void * jarg1) { - MessagingSession *arg1 = (MessagingSession *) 0 ; - - arg1 = (MessagingSession *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MessagingSession_send__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3, void * jarg4) { - unsigned int jresult ; - MessagingSession *arg1 = (MessagingSession *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - ActionConfig *arg4 = (ActionConfig *) 0 ; - bool result; - - arg1 = (MessagingSession *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - arg4 = (ActionConfig *)jarg4; - result = (bool)(arg1)->send((void const *)arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MessagingSession_send__SWIG_1(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - MessagingSession *arg1 = (MessagingSession *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - bool result; - - arg1 = (MessagingSession *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (bool)(arg1)->send((void const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MessagingSession_accept__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - MessagingSession *arg1 = (MessagingSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (MessagingSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->accept(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MessagingSession_accept__SWIG_1(void * jarg1) { - unsigned int jresult ; - MessagingSession *arg1 = (MessagingSession *) 0 ; - bool result; - - arg1 = (MessagingSession *)jarg1; - result = (bool)(arg1)->accept(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MessagingSession_reject__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - MessagingSession *arg1 = (MessagingSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (MessagingSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->reject(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MessagingSession_reject__SWIG_1(void * jarg1) { - unsigned int jresult ; - MessagingSession *arg1 = (MessagingSession *) 0 ; - bool result; - - arg1 = (MessagingSession *)jarg1; - result = (bool)(arg1)->reject(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_InfoSession(void * jarg1) { - void * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - InfoSession *result = 0 ; - - arg1 = (SipStack *)jarg1; - result = (InfoSession *)new InfoSession(arg1); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_InfoSession(void * jarg1) { - InfoSession *arg1 = (InfoSession *) 0 ; - - arg1 = (InfoSession *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InfoSession_send__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3, void * jarg4) { - unsigned int jresult ; - InfoSession *arg1 = (InfoSession *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - ActionConfig *arg4 = (ActionConfig *) 0 ; - bool result; - - arg1 = (InfoSession *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - arg4 = (ActionConfig *)jarg4; - result = (bool)(arg1)->send((void const *)arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InfoSession_send__SWIG_1(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - InfoSession *arg1 = (InfoSession *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - bool result; - - arg1 = (InfoSession *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (bool)(arg1)->send((void const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InfoSession_accept__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - InfoSession *arg1 = (InfoSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (InfoSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->accept(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InfoSession_accept__SWIG_1(void * jarg1) { - unsigned int jresult ; - InfoSession *arg1 = (InfoSession *) 0 ; - bool result; - - arg1 = (InfoSession *)jarg1; - result = (bool)(arg1)->accept(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InfoSession_reject__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - InfoSession *arg1 = (InfoSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (InfoSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->reject(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InfoSession_reject__SWIG_1(void * jarg1) { - unsigned int jresult ; - InfoSession *arg1 = (InfoSession *) 0 ; - bool result; - - arg1 = (InfoSession *)jarg1; - result = (bool)(arg1)->reject(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_OptionsSession(void * jarg1) { - void * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - OptionsSession *result = 0 ; - - arg1 = (SipStack *)jarg1; - result = (OptionsSession *)new OptionsSession(arg1); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_OptionsSession(void * jarg1) { - OptionsSession *arg1 = (OptionsSession *) 0 ; - - arg1 = (OptionsSession *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_OptionsSession_send__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - OptionsSession *arg1 = (OptionsSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (OptionsSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->send(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_OptionsSession_send__SWIG_1(void * jarg1) { - unsigned int jresult ; - OptionsSession *arg1 = (OptionsSession *) 0 ; - bool result; - - arg1 = (OptionsSession *)jarg1; - result = (bool)(arg1)->send(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_OptionsSession_accept__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - OptionsSession *arg1 = (OptionsSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (OptionsSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->accept(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_OptionsSession_accept__SWIG_1(void * jarg1) { - unsigned int jresult ; - OptionsSession *arg1 = (OptionsSession *) 0 ; - bool result; - - arg1 = (OptionsSession *)jarg1; - result = (bool)(arg1)->accept(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_OptionsSession_reject__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - OptionsSession *arg1 = (OptionsSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (OptionsSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->reject(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_OptionsSession_reject__SWIG_1(void * jarg1) { - unsigned int jresult ; - OptionsSession *arg1 = (OptionsSession *) 0 ; - bool result; - - arg1 = (OptionsSession *)jarg1; - result = (bool)(arg1)->reject(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_PublicationSession(void * jarg1) { - void * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - PublicationSession *result = 0 ; - - arg1 = (SipStack *)jarg1; - result = (PublicationSession *)new PublicationSession(arg1); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_PublicationSession(void * jarg1) { - PublicationSession *arg1 = (PublicationSession *) 0 ; - - arg1 = (PublicationSession *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PublicationSession_publish__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3, void * jarg4) { - unsigned int jresult ; - PublicationSession *arg1 = (PublicationSession *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - ActionConfig *arg4 = (ActionConfig *) 0 ; - bool result; - - arg1 = (PublicationSession *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - arg4 = (ActionConfig *)jarg4; - result = (bool)(arg1)->publish((void const *)arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PublicationSession_publish__SWIG_1(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - PublicationSession *arg1 = (PublicationSession *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - bool result; - - arg1 = (PublicationSession *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (bool)(arg1)->publish((void const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PublicationSession_unPublish__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - PublicationSession *arg1 = (PublicationSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (PublicationSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->unPublish(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PublicationSession_unPublish__SWIG_1(void * jarg1) { - unsigned int jresult ; - PublicationSession *arg1 = (PublicationSession *) 0 ; - bool result; - - arg1 = (PublicationSession *)jarg1; - result = (bool)(arg1)->unPublish(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_RegistrationSession(void * jarg1) { - void * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - RegistrationSession *result = 0 ; - - arg1 = (SipStack *)jarg1; - result = (RegistrationSession *)new RegistrationSession(arg1); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_RegistrationSession(void * jarg1) { - RegistrationSession *arg1 = (RegistrationSession *) 0 ; - - arg1 = (RegistrationSession *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_register___SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - RegistrationSession *arg1 = (RegistrationSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (RegistrationSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->register_(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_register___SWIG_1(void * jarg1) { - unsigned int jresult ; - RegistrationSession *arg1 = (RegistrationSession *) 0 ; - bool result; - - arg1 = (RegistrationSession *)jarg1; - result = (bool)(arg1)->register_(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_unRegister__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - RegistrationSession *arg1 = (RegistrationSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (RegistrationSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->unRegister(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_unRegister__SWIG_1(void * jarg1) { - unsigned int jresult ; - RegistrationSession *arg1 = (RegistrationSession *) 0 ; - bool result; - - arg1 = (RegistrationSession *)jarg1; - result = (bool)(arg1)->unRegister(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_accept__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - RegistrationSession *arg1 = (RegistrationSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (RegistrationSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->accept(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_accept__SWIG_1(void * jarg1) { - unsigned int jresult ; - RegistrationSession *arg1 = (RegistrationSession *) 0 ; - bool result; - - arg1 = (RegistrationSession *)jarg1; - result = (bool)(arg1)->accept(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_reject__SWIG_0(void * jarg1, void * jarg2) { - unsigned int jresult ; - RegistrationSession *arg1 = (RegistrationSession *) 0 ; - ActionConfig *arg2 = (ActionConfig *) 0 ; - bool result; - - arg1 = (RegistrationSession *)jarg1; - arg2 = (ActionConfig *)jarg2; - result = (bool)(arg1)->reject(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_reject__SWIG_1(void * jarg1) { - unsigned int jresult ; - RegistrationSession *arg1 = (RegistrationSession *) 0 ; - bool result; - - arg1 = (RegistrationSession *)jarg1; - result = (bool)(arg1)->reject(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_SubscriptionSession(void * jarg1) { - void * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - SubscriptionSession *result = 0 ; - - arg1 = (SipStack *)jarg1; - result = (SubscriptionSession *)new SubscriptionSession(arg1); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_SubscriptionSession(void * jarg1) { - SubscriptionSession *arg1 = (SubscriptionSession *) 0 ; - - arg1 = (SubscriptionSession *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SubscriptionSession_subscribe(void * jarg1) { - unsigned int jresult ; - SubscriptionSession *arg1 = (SubscriptionSession *) 0 ; - bool result; - - arg1 = (SubscriptionSession *)jarg1; - result = (bool)(arg1)->subscribe(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SubscriptionSession_unSubscribe(void * jarg1) { - unsigned int jresult ; - SubscriptionSession *arg1 = (SubscriptionSession *) 0 ; - bool result; - - arg1 = (SubscriptionSession *)jarg1; - result = (bool)(arg1)->unSubscribe(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyPluginMgr(void * jarg1) { - ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; - - arg1 = (ProxyPluginMgr *)jarg1; - delete arg1; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_createInstance(void * jarg1) { - void * jresult ; - ProxyPluginMgrCallback *arg1 = (ProxyPluginMgrCallback *) 0 ; - ProxyPluginMgr *result = 0 ; - - arg1 = (ProxyPluginMgrCallback *)jarg1; - result = (ProxyPluginMgr *)ProxyPluginMgr::createInstance(arg1); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_getInstance() { - void * jresult ; - ProxyPluginMgr *result = 0 ; - - result = (ProxyPluginMgr *)ProxyPluginMgr::getInstance(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_findAudioConsumer(void * jarg1, unsigned long long jarg2) { - void * jresult ; - ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; - uint64_t arg2 ; - ProxyAudioConsumer *result = 0 ; - - arg1 = (ProxyPluginMgr *)jarg1; - arg2 = (uint64_t)jarg2; - result = (ProxyAudioConsumer *)(arg1)->findAudioConsumer(arg2); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_findVideoConsumer(void * jarg1, unsigned long long jarg2) { - void * jresult ; - ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; - uint64_t arg2 ; - ProxyVideoConsumer *result = 0 ; - - arg1 = (ProxyPluginMgr *)jarg1; - arg2 = (uint64_t)jarg2; - result = (ProxyVideoConsumer *)(arg1)->findVideoConsumer(arg2); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_findAudioProducer(void * jarg1, unsigned long long jarg2) { - void * jresult ; - ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; - uint64_t arg2 ; - ProxyAudioProducer *result = 0 ; - - arg1 = (ProxyPluginMgr *)jarg1; - arg2 = (uint64_t)jarg2; - result = (ProxyAudioProducer *)(arg1)->findAudioProducer(arg2); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_findVideoProducer(void * jarg1, unsigned long long jarg2) { - void * jresult ; - ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; - uint64_t arg2 ; - ProxyVideoProducer *result = 0 ; - - arg1 = (ProxyPluginMgr *)jarg1; - arg2 = (uint64_t)jarg2; - result = (ProxyVideoProducer *)(arg1)->findVideoProducer(arg2); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_ProxyPluginMgrCallback() { - void * jresult ; - ProxyPluginMgrCallback *result = 0 ; - - result = (ProxyPluginMgrCallback *)new SwigDirector_ProxyPluginMgrCallback(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyPluginMgrCallback(void * jarg1) { - ProxyPluginMgrCallback *arg1 = (ProxyPluginMgrCallback *) 0 ; - - arg1 = (ProxyPluginMgrCallback *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyPluginMgrCallback_OnPluginCreated(void * jarg1, unsigned long long jarg2, int jarg3) { - int jresult ; - ProxyPluginMgrCallback *arg1 = (ProxyPluginMgrCallback *) 0 ; - uint64_t arg2 ; - enum twrap_proxy_plugin_type_e arg3 ; - int result; - - arg1 = (ProxyPluginMgrCallback *)jarg1; - arg2 = (uint64_t)jarg2; - arg3 = (enum twrap_proxy_plugin_type_e)jarg3; - result = (int)(arg1)->OnPluginCreated(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyPluginMgrCallback_OnPluginCreatedSwigExplicitProxyPluginMgrCallback(void * jarg1, unsigned long long jarg2, int jarg3) { - int jresult ; - ProxyPluginMgrCallback *arg1 = (ProxyPluginMgrCallback *) 0 ; - uint64_t arg2 ; - enum twrap_proxy_plugin_type_e arg3 ; - int result; - - arg1 = (ProxyPluginMgrCallback *)jarg1; - arg2 = (uint64_t)jarg2; - arg3 = (enum twrap_proxy_plugin_type_e)jarg3; - result = (int)(arg1)->ProxyPluginMgrCallback::OnPluginCreated(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyPluginMgrCallback_OnPluginDestroyed(void * jarg1, unsigned long long jarg2, int jarg3) { - int jresult ; - ProxyPluginMgrCallback *arg1 = (ProxyPluginMgrCallback *) 0 ; - uint64_t arg2 ; - enum twrap_proxy_plugin_type_e arg3 ; - int result; - - arg1 = (ProxyPluginMgrCallback *)jarg1; - arg2 = (uint64_t)jarg2; - arg3 = (enum twrap_proxy_plugin_type_e)jarg3; - result = (int)(arg1)->OnPluginDestroyed(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyPluginMgrCallback_OnPluginDestroyedSwigExplicitProxyPluginMgrCallback(void * jarg1, unsigned long long jarg2, int jarg3) { - int jresult ; - ProxyPluginMgrCallback *arg1 = (ProxyPluginMgrCallback *) 0 ; - uint64_t arg2 ; - enum twrap_proxy_plugin_type_e arg3 ; - int result; - - arg1 = (ProxyPluginMgrCallback *)jarg1; - arg2 = (uint64_t)jarg2; - arg3 = (enum twrap_proxy_plugin_type_e)jarg3; - result = (int)(arg1)->ProxyPluginMgrCallback::OnPluginDestroyed(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_ProxyPluginMgrCallback_director_connect(void *objarg, SwigDirector_ProxyPluginMgrCallback::SWIG_Callback0_t callback0, SwigDirector_ProxyPluginMgrCallback::SWIG_Callback1_t callback1) { - ProxyPluginMgrCallback *obj = (ProxyPluginMgrCallback *)objarg; - SwigDirector_ProxyPluginMgrCallback *director = dynamic_cast(obj); - if (director) { - director->swig_connect_director(callback0, callback1); - } -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyPlugin(void * jarg1) { - ProxyPlugin *arg1 = (ProxyPlugin *) 0 ; - - arg1 = (ProxyPlugin *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyPlugin_getType(void * jarg1) { - int jresult ; - ProxyPlugin *arg1 = (ProxyPlugin *) 0 ; - twrap_proxy_plugin_type_t result; - - arg1 = (ProxyPlugin *)jarg1; - result = (twrap_proxy_plugin_type_t)((ProxyPlugin const *)arg1)->getType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_ProxyPlugin_getId(void * jarg1) { - unsigned long long jresult ; - ProxyPlugin *arg1 = (ProxyPlugin *) 0 ; - uint64_t result; - - arg1 = (ProxyPlugin *)jarg1; - result = (uint64_t)((ProxyPlugin const *)arg1)->getId(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_ProxyAudioConsumerCallback() { - void * jresult ; - ProxyAudioConsumerCallback *result = 0 ; - - result = (ProxyAudioConsumerCallback *)new SwigDirector_ProxyAudioConsumerCallback(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyAudioConsumerCallback(void * jarg1) { - ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; - - arg1 = (ProxyAudioConsumerCallback *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_prepare(void * jarg1, int jarg2, int jarg3, int jarg4) { - int jresult ; - ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; - int arg2 ; - int arg3 ; - int arg4 ; - int result; - - arg1 = (ProxyAudioConsumerCallback *)jarg1; - arg2 = (int)jarg2; - arg3 = (int)jarg3; - arg4 = (int)jarg4; - result = (int)(arg1)->prepare(arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_prepareSwigExplicitProxyAudioConsumerCallback(void * jarg1, int jarg2, int jarg3, int jarg4) { - int jresult ; - ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; - int arg2 ; - int arg3 ; - int arg4 ; - int result; - - arg1 = (ProxyAudioConsumerCallback *)jarg1; - arg2 = (int)jarg2; - arg3 = (int)jarg3; - arg4 = (int)jarg4; - result = (int)(arg1)->ProxyAudioConsumerCallback::prepare(arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_start(void * jarg1) { - int jresult ; - ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; - int result; - - arg1 = (ProxyAudioConsumerCallback *)jarg1; - result = (int)(arg1)->start(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_startSwigExplicitProxyAudioConsumerCallback(void * jarg1) { - int jresult ; - ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; - int result; - - arg1 = (ProxyAudioConsumerCallback *)jarg1; - result = (int)(arg1)->ProxyAudioConsumerCallback::start(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_pause(void * jarg1) { - int jresult ; - ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; - int result; - - arg1 = (ProxyAudioConsumerCallback *)jarg1; - result = (int)(arg1)->pause(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_pauseSwigExplicitProxyAudioConsumerCallback(void * jarg1) { - int jresult ; - ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; - int result; - - arg1 = (ProxyAudioConsumerCallback *)jarg1; - result = (int)(arg1)->ProxyAudioConsumerCallback::pause(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_stop(void * jarg1) { - int jresult ; - ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; - int result; - - arg1 = (ProxyAudioConsumerCallback *)jarg1; - result = (int)(arg1)->stop(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_stopSwigExplicitProxyAudioConsumerCallback(void * jarg1) { - int jresult ; - ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; - int result; - - arg1 = (ProxyAudioConsumerCallback *)jarg1; - result = (int)(arg1)->ProxyAudioConsumerCallback::stop(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_director_connect(void *objarg, SwigDirector_ProxyAudioConsumerCallback::SWIG_Callback0_t callback0, SwigDirector_ProxyAudioConsumerCallback::SWIG_Callback1_t callback1, SwigDirector_ProxyAudioConsumerCallback::SWIG_Callback2_t callback2, SwigDirector_ProxyAudioConsumerCallback::SWIG_Callback3_t callback3) { - ProxyAudioConsumerCallback *obj = (ProxyAudioConsumerCallback *)objarg; - SwigDirector_ProxyAudioConsumerCallback *director = dynamic_cast(obj); - if (director) { - director->swig_connect_director(callback0, callback1, callback2, callback3); - } -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyAudioConsumer(void * jarg1) { - ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; - - arg1 = (ProxyAudioConsumer *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_queryForResampler(void * jarg1, unsigned short jarg2, unsigned short jarg3, unsigned short jarg4, unsigned short jarg5, unsigned short jarg6) { - unsigned int jresult ; - ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; - uint16_t arg2 ; - uint16_t arg3 ; - uint16_t arg4 ; - uint16_t arg5 ; - uint16_t arg6 ; - bool result; - - arg1 = (ProxyAudioConsumer *)jarg1; - arg2 = (uint16_t)jarg2; - arg3 = (uint16_t)jarg3; - arg4 = (uint16_t)jarg4; - arg5 = (uint16_t)jarg5; - arg6 = (uint16_t)jarg6; - result = (bool)(arg1)->queryForResampler(arg2,arg3,arg4,arg5,arg6); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_setPullBuffer(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - bool result; - - arg1 = (ProxyAudioConsumer *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (bool)(arg1)->setPullBuffer((void const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_pull__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - unsigned int result; - - arg1 = (ProxyAudioConsumer *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (unsigned int)(arg1)->pull(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_pull__SWIG_1(void * jarg1, void * jarg2) { - unsigned int jresult ; - ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int result; - - arg1 = (ProxyAudioConsumer *)jarg1; - arg2 = jarg2; - result = (unsigned int)(arg1)->pull(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_pull__SWIG_2(void * jarg1) { - unsigned int jresult ; - ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; - unsigned int result; - - arg1 = (ProxyAudioConsumer *)jarg1; - result = (unsigned int)(arg1)->pull(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_setGain(void * jarg1, unsigned int jarg2) { - unsigned int jresult ; - ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; - unsigned int arg2 ; - bool result; - - arg1 = (ProxyAudioConsumer *)jarg1; - arg2 = (unsigned int)jarg2; - result = (bool)(arg1)->setGain(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_getGain(void * jarg1) { - unsigned int jresult ; - ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; - unsigned int result; - - arg1 = (ProxyAudioConsumer *)jarg1; - result = (unsigned int)(arg1)->getGain(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_reset(void * jarg1) { - unsigned int jresult ; - ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; - bool result; - - arg1 = (ProxyAudioConsumer *)jarg1; - result = (bool)(arg1)->reset(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_ProxyAudioConsumer_setCallback(void * jarg1, void * jarg2) { - ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; - ProxyAudioConsumerCallback *arg2 = (ProxyAudioConsumerCallback *) 0 ; - - arg1 = (ProxyAudioConsumer *)jarg1; - arg2 = (ProxyAudioConsumerCallback *)jarg2; - (arg1)->setCallback(arg2); -} - - -SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_ProxyAudioConsumer_getMediaSessionId(void * jarg1) { - unsigned long long jresult ; - ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; - uint64_t result; - - arg1 = (ProxyAudioConsumer *)jarg1; - result = (uint64_t)(arg1)->getMediaSessionId(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_registerPlugin() { - unsigned int jresult ; - bool result; - - result = (bool)ProxyAudioConsumer::registerPlugin(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_ProxyVideoConsumerCallback() { - void * jresult ; - ProxyVideoConsumerCallback *result = 0 ; - - result = (ProxyVideoConsumerCallback *)new SwigDirector_ProxyVideoConsumerCallback(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyVideoConsumerCallback(void * jarg1) { - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_prepare(void * jarg1, int jarg2, int jarg3, int jarg4) { - int jresult ; - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - int arg2 ; - int arg3 ; - int arg4 ; - int result; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - arg2 = (int)jarg2; - arg3 = (int)jarg3; - arg4 = (int)jarg4; - result = (int)(arg1)->prepare(arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_prepareSwigExplicitProxyVideoConsumerCallback(void * jarg1, int jarg2, int jarg3, int jarg4) { - int jresult ; - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - int arg2 ; - int arg3 ; - int arg4 ; - int result; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - arg2 = (int)jarg2; - arg3 = (int)jarg3; - arg4 = (int)jarg4; - result = (int)(arg1)->ProxyVideoConsumerCallback::prepare(arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_consume(void * jarg1, void * jarg2) { - int jresult ; - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - ProxyVideoFrame *arg2 = (ProxyVideoFrame *) 0 ; - int result; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - arg2 = (ProxyVideoFrame *)jarg2; - result = (int)(arg1)->consume((ProxyVideoFrame const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_consumeSwigExplicitProxyVideoConsumerCallback(void * jarg1, void * jarg2) { - int jresult ; - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - ProxyVideoFrame *arg2 = (ProxyVideoFrame *) 0 ; - int result; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - arg2 = (ProxyVideoFrame *)jarg2; - result = (int)(arg1)->ProxyVideoConsumerCallback::consume((ProxyVideoFrame const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_bufferCopied(void * jarg1, unsigned int jarg2, unsigned int jarg3) { - int jresult ; - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - unsigned int arg2 ; - unsigned int arg3 ; - int result; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - arg2 = (unsigned int)jarg2; - arg3 = (unsigned int)jarg3; - result = (int)(arg1)->bufferCopied(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_bufferCopiedSwigExplicitProxyVideoConsumerCallback(void * jarg1, unsigned int jarg2, unsigned int jarg3) { - int jresult ; - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - unsigned int arg2 ; - unsigned int arg3 ; - int result; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - arg2 = (unsigned int)jarg2; - arg3 = (unsigned int)jarg3; - result = (int)(arg1)->ProxyVideoConsumerCallback::bufferCopied(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_start(void * jarg1) { - int jresult ; - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - int result; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - result = (int)(arg1)->start(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_startSwigExplicitProxyVideoConsumerCallback(void * jarg1) { - int jresult ; - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - int result; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - result = (int)(arg1)->ProxyVideoConsumerCallback::start(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_pause(void * jarg1) { - int jresult ; - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - int result; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - result = (int)(arg1)->pause(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_pauseSwigExplicitProxyVideoConsumerCallback(void * jarg1) { - int jresult ; - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - int result; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - result = (int)(arg1)->ProxyVideoConsumerCallback::pause(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_stop(void * jarg1) { - int jresult ; - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - int result; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - result = (int)(arg1)->stop(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_stopSwigExplicitProxyVideoConsumerCallback(void * jarg1) { - int jresult ; - ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; - int result; - - arg1 = (ProxyVideoConsumerCallback *)jarg1; - result = (int)(arg1)->ProxyVideoConsumerCallback::stop(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_director_connect(void *objarg, SwigDirector_ProxyVideoConsumerCallback::SWIG_Callback0_t callback0, SwigDirector_ProxyVideoConsumerCallback::SWIG_Callback1_t callback1, SwigDirector_ProxyVideoConsumerCallback::SWIG_Callback2_t callback2, SwigDirector_ProxyVideoConsumerCallback::SWIG_Callback3_t callback3, SwigDirector_ProxyVideoConsumerCallback::SWIG_Callback4_t callback4, SwigDirector_ProxyVideoConsumerCallback::SWIG_Callback5_t callback5) { - ProxyVideoConsumerCallback *obj = (ProxyVideoConsumerCallback *)objarg; - SwigDirector_ProxyVideoConsumerCallback *director = dynamic_cast(obj); - if (director) { - director->swig_connect_director(callback0, callback1, callback2, callback3, callback4, callback5); - } -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyVideoConsumer(void * jarg1) { - ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; - - arg1 = (ProxyVideoConsumer *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_setDisplaySize(void * jarg1, unsigned int jarg2, unsigned int jarg3) { - unsigned int jresult ; - ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; - unsigned int arg2 ; - unsigned int arg3 ; - bool result; - - arg1 = (ProxyVideoConsumer *)jarg1; - arg2 = (unsigned int)jarg2; - arg3 = (unsigned int)jarg3; - result = (bool)(arg1)->setDisplaySize(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_getDisplayWidth(void * jarg1) { - unsigned int jresult ; - ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; - unsigned int result; - - arg1 = (ProxyVideoConsumer *)jarg1; - result = (unsigned int)(arg1)->getDisplayWidth(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_getDisplayHeight(void * jarg1) { - unsigned int jresult ; - ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; - unsigned int result; - - arg1 = (ProxyVideoConsumer *)jarg1; - result = (unsigned int)(arg1)->getDisplayHeight(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoConsumer_setCallback(void * jarg1, void * jarg2) { - ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; - ProxyVideoConsumerCallback *arg2 = (ProxyVideoConsumerCallback *) 0 ; - - arg1 = (ProxyVideoConsumer *)jarg1; - arg2 = (ProxyVideoConsumerCallback *)jarg2; - (arg1)->setCallback(arg2); -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_setAutoResizeDisplay(void * jarg1, unsigned int jarg2) { - unsigned int jresult ; - ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; - bool arg2 ; - bool result; - - arg1 = (ProxyVideoConsumer *)jarg1; - arg2 = jarg2 ? true : false; - result = (bool)(arg1)->setAutoResizeDisplay(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_getAutoResizeDisplay(void * jarg1) { - unsigned int jresult ; - ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; - bool result; - - arg1 = (ProxyVideoConsumer *)jarg1; - result = (bool)((ProxyVideoConsumer const *)arg1)->getAutoResizeDisplay(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_setConsumeBuffer(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - bool result; - - arg1 = (ProxyVideoConsumer *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (bool)(arg1)->setConsumeBuffer((void const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_pull(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - unsigned int result; - - arg1 = (ProxyVideoConsumer *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (unsigned int)(arg1)->pull(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_reset(void * jarg1) { - unsigned int jresult ; - ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; - bool result; - - arg1 = (ProxyVideoConsumer *)jarg1; - result = (bool)(arg1)->reset(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_ProxyVideoConsumer_getMediaSessionId(void * jarg1) { - unsigned long long jresult ; - ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; - uint64_t result; - - arg1 = (ProxyVideoConsumer *)jarg1; - result = (uint64_t)(arg1)->getMediaSessionId(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_registerPlugin() { - unsigned int jresult ; - bool result; - - result = (bool)ProxyVideoConsumer::registerPlugin(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoConsumer_setDefaultChroma(int jarg1) { - tmedia_chroma_t arg1 ; - - arg1 = (tmedia_chroma_t)jarg1; - ProxyVideoConsumer::setDefaultChroma(arg1); -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoConsumer_setDefaultAutoResizeDisplay(unsigned int jarg1) { - bool arg1 ; - - arg1 = jarg1 ? true : false; - ProxyVideoConsumer::setDefaultAutoResizeDisplay(arg1); -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyVideoFrame(void * jarg1) { - ProxyVideoFrame *arg1 = (ProxyVideoFrame *) 0 ; - - arg1 = (ProxyVideoFrame *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoFrame_getSize(void * jarg1) { - unsigned int jresult ; - ProxyVideoFrame *arg1 = (ProxyVideoFrame *) 0 ; - unsigned int result; - - arg1 = (ProxyVideoFrame *)jarg1; - result = (unsigned int)(arg1)->getSize(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoFrame_getContent(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - ProxyVideoFrame *arg1 = (ProxyVideoFrame *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - unsigned int result; - - arg1 = (ProxyVideoFrame *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (unsigned int)(arg1)->getContent(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_ProxyAudioProducerCallback() { - void * jresult ; - ProxyAudioProducerCallback *result = 0 ; - - result = (ProxyAudioProducerCallback *)new SwigDirector_ProxyAudioProducerCallback(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyAudioProducerCallback(void * jarg1) { - ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; - - arg1 = (ProxyAudioProducerCallback *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_prepare(void * jarg1, int jarg2, int jarg3, int jarg4) { - int jresult ; - ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; - int arg2 ; - int arg3 ; - int arg4 ; - int result; - - arg1 = (ProxyAudioProducerCallback *)jarg1; - arg2 = (int)jarg2; - arg3 = (int)jarg3; - arg4 = (int)jarg4; - result = (int)(arg1)->prepare(arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_prepareSwigExplicitProxyAudioProducerCallback(void * jarg1, int jarg2, int jarg3, int jarg4) { - int jresult ; - ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; - int arg2 ; - int arg3 ; - int arg4 ; - int result; - - arg1 = (ProxyAudioProducerCallback *)jarg1; - arg2 = (int)jarg2; - arg3 = (int)jarg3; - arg4 = (int)jarg4; - result = (int)(arg1)->ProxyAudioProducerCallback::prepare(arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_start(void * jarg1) { - int jresult ; - ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; - int result; - - arg1 = (ProxyAudioProducerCallback *)jarg1; - result = (int)(arg1)->start(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_startSwigExplicitProxyAudioProducerCallback(void * jarg1) { - int jresult ; - ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; - int result; - - arg1 = (ProxyAudioProducerCallback *)jarg1; - result = (int)(arg1)->ProxyAudioProducerCallback::start(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_pause(void * jarg1) { - int jresult ; - ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; - int result; - - arg1 = (ProxyAudioProducerCallback *)jarg1; - result = (int)(arg1)->pause(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_pauseSwigExplicitProxyAudioProducerCallback(void * jarg1) { - int jresult ; - ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; - int result; - - arg1 = (ProxyAudioProducerCallback *)jarg1; - result = (int)(arg1)->ProxyAudioProducerCallback::pause(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_stop(void * jarg1) { - int jresult ; - ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; - int result; - - arg1 = (ProxyAudioProducerCallback *)jarg1; - result = (int)(arg1)->stop(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_stopSwigExplicitProxyAudioProducerCallback(void * jarg1) { - int jresult ; - ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; - int result; - - arg1 = (ProxyAudioProducerCallback *)jarg1; - result = (int)(arg1)->ProxyAudioProducerCallback::stop(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_ProxyAudioProducerCallback_director_connect(void *objarg, SwigDirector_ProxyAudioProducerCallback::SWIG_Callback0_t callback0, SwigDirector_ProxyAudioProducerCallback::SWIG_Callback1_t callback1, SwigDirector_ProxyAudioProducerCallback::SWIG_Callback2_t callback2, SwigDirector_ProxyAudioProducerCallback::SWIG_Callback3_t callback3) { - ProxyAudioProducerCallback *obj = (ProxyAudioProducerCallback *)objarg; - SwigDirector_ProxyAudioProducerCallback *director = dynamic_cast(obj); - if (director) { - director->swig_connect_director(callback0, callback1, callback2, callback3); - } -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyAudioProducer(void * jarg1) { - ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; - - arg1 = (ProxyAudioProducer *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioProducer_setPushBuffer(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - bool result; - - arg1 = (ProxyAudioProducer *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (bool)(arg1)->setPushBuffer((void const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducer_push__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3) { - int jresult ; - ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - int result; - - arg1 = (ProxyAudioProducer *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (int)(arg1)->push((void const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducer_push__SWIG_1(void * jarg1, void * jarg2) { - int jresult ; - ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; - void *arg2 = (void *) 0 ; - int result; - - arg1 = (ProxyAudioProducer *)jarg1; - arg2 = jarg2; - result = (int)(arg1)->push((void const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducer_push__SWIG_2(void * jarg1) { - int jresult ; - ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; - int result; - - arg1 = (ProxyAudioProducer *)jarg1; - result = (int)(arg1)->push(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioProducer_setGain(void * jarg1, unsigned int jarg2) { - unsigned int jresult ; - ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; - unsigned int arg2 ; - bool result; - - arg1 = (ProxyAudioProducer *)jarg1; - arg2 = (unsigned int)jarg2; - result = (bool)(arg1)->setGain(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioProducer_getGain(void * jarg1) { - unsigned int jresult ; - ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; - unsigned int result; - - arg1 = (ProxyAudioProducer *)jarg1; - result = (unsigned int)(arg1)->getGain(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_ProxyAudioProducer_setCallback(void * jarg1, void * jarg2) { - ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; - ProxyAudioProducerCallback *arg2 = (ProxyAudioProducerCallback *) 0 ; - - arg1 = (ProxyAudioProducer *)jarg1; - arg2 = (ProxyAudioProducerCallback *)jarg2; - (arg1)->setCallback(arg2); -} - - -SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_ProxyAudioProducer_getMediaSessionId(void * jarg1) { - unsigned long long jresult ; - ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; - uint64_t result; - - arg1 = (ProxyAudioProducer *)jarg1; - result = (uint64_t)(arg1)->getMediaSessionId(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioProducer_registerPlugin() { - unsigned int jresult ; - bool result; - - result = (bool)ProxyAudioProducer::registerPlugin(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_ProxyVideoProducerCallback() { - void * jresult ; - ProxyVideoProducerCallback *result = 0 ; - - result = (ProxyVideoProducerCallback *)new SwigDirector_ProxyVideoProducerCallback(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyVideoProducerCallback(void * jarg1) { - ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; - - arg1 = (ProxyVideoProducerCallback *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_prepare(void * jarg1, int jarg2, int jarg3, int jarg4) { - int jresult ; - ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; - int arg2 ; - int arg3 ; - int arg4 ; - int result; - - arg1 = (ProxyVideoProducerCallback *)jarg1; - arg2 = (int)jarg2; - arg3 = (int)jarg3; - arg4 = (int)jarg4; - result = (int)(arg1)->prepare(arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_prepareSwigExplicitProxyVideoProducerCallback(void * jarg1, int jarg2, int jarg3, int jarg4) { - int jresult ; - ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; - int arg2 ; - int arg3 ; - int arg4 ; - int result; - - arg1 = (ProxyVideoProducerCallback *)jarg1; - arg2 = (int)jarg2; - arg3 = (int)jarg3; - arg4 = (int)jarg4; - result = (int)(arg1)->ProxyVideoProducerCallback::prepare(arg2,arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_start(void * jarg1) { - int jresult ; - ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; - int result; - - arg1 = (ProxyVideoProducerCallback *)jarg1; - result = (int)(arg1)->start(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_startSwigExplicitProxyVideoProducerCallback(void * jarg1) { - int jresult ; - ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; - int result; - - arg1 = (ProxyVideoProducerCallback *)jarg1; - result = (int)(arg1)->ProxyVideoProducerCallback::start(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_pause(void * jarg1) { - int jresult ; - ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; - int result; - - arg1 = (ProxyVideoProducerCallback *)jarg1; - result = (int)(arg1)->pause(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_pauseSwigExplicitProxyVideoProducerCallback(void * jarg1) { - int jresult ; - ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; - int result; - - arg1 = (ProxyVideoProducerCallback *)jarg1; - result = (int)(arg1)->ProxyVideoProducerCallback::pause(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_stop(void * jarg1) { - int jresult ; - ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; - int result; - - arg1 = (ProxyVideoProducerCallback *)jarg1; - result = (int)(arg1)->stop(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_stopSwigExplicitProxyVideoProducerCallback(void * jarg1) { - int jresult ; - ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; - int result; - - arg1 = (ProxyVideoProducerCallback *)jarg1; - result = (int)(arg1)->ProxyVideoProducerCallback::stop(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoProducerCallback_director_connect(void *objarg, SwigDirector_ProxyVideoProducerCallback::SWIG_Callback0_t callback0, SwigDirector_ProxyVideoProducerCallback::SWIG_Callback1_t callback1, SwigDirector_ProxyVideoProducerCallback::SWIG_Callback2_t callback2, SwigDirector_ProxyVideoProducerCallback::SWIG_Callback3_t callback3) { - ProxyVideoProducerCallback *obj = (ProxyVideoProducerCallback *)objarg; - SwigDirector_ProxyVideoProducerCallback *director = dynamic_cast(obj); - if (director) { - director->swig_connect_director(callback0, callback1, callback2, callback3); - } -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyVideoProducer(void * jarg1) { - ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; - - arg1 = (ProxyVideoProducer *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducer_getRotation(void * jarg1) { - int jresult ; - ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; - int result; - - arg1 = (ProxyVideoProducer *)jarg1; - result = (int)((ProxyVideoProducer const *)arg1)->getRotation(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoProducer_setRotation(void * jarg1, int jarg2) { - unsigned int jresult ; - ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; - int arg2 ; - bool result; - - arg1 = (ProxyVideoProducer *)jarg1; - arg2 = (int)jarg2; - result = (bool)(arg1)->setRotation(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoProducer_setActualCameraOutputSize(void * jarg1, unsigned int jarg2, unsigned int jarg3) { - unsigned int jresult ; - ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; - unsigned int arg2 ; - unsigned int arg3 ; - bool result; - - arg1 = (ProxyVideoProducer *)jarg1; - arg2 = (unsigned int)jarg2; - arg3 = (unsigned int)jarg3; - result = (bool)(arg1)->setActualCameraOutputSize(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducer_push(void * jarg1, void * jarg2, unsigned int jarg3) { - int jresult ; - ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - int result; - - arg1 = (ProxyVideoProducer *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (int)(arg1)->push((void const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducer_send(void * jarg1, void * jarg2, unsigned int jarg3, unsigned int jarg4, unsigned int jarg5) { - int jresult ; - ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - unsigned int arg4 ; - bool arg5 ; - int result; - - arg1 = (ProxyVideoProducer *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - arg4 = (unsigned int)jarg4; - arg5 = jarg5 ? true : false; - result = (int)(arg1)->send((void const *)arg2,arg3,arg4,arg5); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoProducer_setCallback(void * jarg1, void * jarg2) { - ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; - ProxyVideoProducerCallback *arg2 = (ProxyVideoProducerCallback *) 0 ; - - arg1 = (ProxyVideoProducer *)jarg1; - arg2 = (ProxyVideoProducerCallback *)jarg2; - (arg1)->setCallback(arg2); -} - - -SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_ProxyVideoProducer_getMediaSessionId(void * jarg1) { - unsigned long long jresult ; - ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; - uint64_t result; - - arg1 = (ProxyVideoProducer *)jarg1; - result = (uint64_t)(arg1)->getMediaSessionId(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoProducer_registerPlugin() { - unsigned int jresult ; - bool result; - - result = (bool)ProxyVideoProducer::registerPlugin(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoProducer_setDefaultChroma(int jarg1) { - tmedia_chroma_t arg1 ; - - arg1 = (tmedia_chroma_t)jarg1; - ProxyVideoProducer::setDefaultChroma(arg1); -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_SipCallback() { - void * jresult ; - SipCallback *result = 0 ; - - result = (SipCallback *)new SwigDirector_SipCallback(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipCallback(void * jarg1) { - SipCallback *arg1 = (SipCallback *) 0 ; - - arg1 = (SipCallback *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnDialogEvent(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - DialogEvent *arg2 = (DialogEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (DialogEvent *)jarg2; - result = (int)(arg1)->OnDialogEvent((DialogEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnDialogEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - DialogEvent *arg2 = (DialogEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (DialogEvent *)jarg2; - result = (int)(arg1)->SipCallback::OnDialogEvent((DialogEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnStackEvent(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - StackEvent *arg2 = (StackEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (StackEvent *)jarg2; - result = (int)(arg1)->OnStackEvent((StackEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnStackEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - StackEvent *arg2 = (StackEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (StackEvent *)jarg2; - result = (int)(arg1)->SipCallback::OnStackEvent((StackEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnInviteEvent(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - InviteEvent *arg2 = (InviteEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (InviteEvent *)jarg2; - result = (int)(arg1)->OnInviteEvent((InviteEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnInviteEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - InviteEvent *arg2 = (InviteEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (InviteEvent *)jarg2; - result = (int)(arg1)->SipCallback::OnInviteEvent((InviteEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnMessagingEvent(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - MessagingEvent *arg2 = (MessagingEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (MessagingEvent *)jarg2; - result = (int)(arg1)->OnMessagingEvent((MessagingEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnMessagingEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - MessagingEvent *arg2 = (MessagingEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (MessagingEvent *)jarg2; - result = (int)(arg1)->SipCallback::OnMessagingEvent((MessagingEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnInfoEvent(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - InfoEvent *arg2 = (InfoEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (InfoEvent *)jarg2; - result = (int)(arg1)->OnInfoEvent((InfoEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnInfoEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - InfoEvent *arg2 = (InfoEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (InfoEvent *)jarg2; - result = (int)(arg1)->SipCallback::OnInfoEvent((InfoEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnOptionsEvent(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - OptionsEvent *arg2 = (OptionsEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (OptionsEvent *)jarg2; - result = (int)(arg1)->OnOptionsEvent((OptionsEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnOptionsEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - OptionsEvent *arg2 = (OptionsEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (OptionsEvent *)jarg2; - result = (int)(arg1)->SipCallback::OnOptionsEvent((OptionsEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnPublicationEvent(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - PublicationEvent *arg2 = (PublicationEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (PublicationEvent *)jarg2; - result = (int)(arg1)->OnPublicationEvent((PublicationEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnPublicationEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - PublicationEvent *arg2 = (PublicationEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (PublicationEvent *)jarg2; - result = (int)(arg1)->SipCallback::OnPublicationEvent((PublicationEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnRegistrationEvent(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - RegistrationEvent *arg2 = (RegistrationEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (RegistrationEvent *)jarg2; - result = (int)(arg1)->OnRegistrationEvent((RegistrationEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnRegistrationEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - RegistrationEvent *arg2 = (RegistrationEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (RegistrationEvent *)jarg2; - result = (int)(arg1)->SipCallback::OnRegistrationEvent((RegistrationEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnSubscriptionEvent(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - SubscriptionEvent *arg2 = (SubscriptionEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (SubscriptionEvent *)jarg2; - result = (int)(arg1)->OnSubscriptionEvent((SubscriptionEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnSubscriptionEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { - int jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - SubscriptionEvent *arg2 = (SubscriptionEvent *) 0 ; - int result; - - arg1 = (SipCallback *)jarg1; - arg2 = (SubscriptionEvent *)jarg2; - result = (int)(arg1)->SipCallback::OnSubscriptionEvent((SubscriptionEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_SipCallback_director_connect(void *objarg, SwigDirector_SipCallback::SWIG_Callback0_t callback0, SwigDirector_SipCallback::SWIG_Callback1_t callback1, SwigDirector_SipCallback::SWIG_Callback2_t callback2, SwigDirector_SipCallback::SWIG_Callback3_t callback3, SwigDirector_SipCallback::SWIG_Callback4_t callback4, SwigDirector_SipCallback::SWIG_Callback5_t callback5, SwigDirector_SipCallback::SWIG_Callback6_t callback6, SwigDirector_SipCallback::SWIG_Callback7_t callback7, SwigDirector_SipCallback::SWIG_Callback8_t callback8) { - SipCallback *obj = (SipCallback *)objarg; - SwigDirector_SipCallback *director = dynamic_cast(obj); - if (director) { - director->swig_connect_director(callback0, callback1, callback2, callback3, callback4, callback5, callback6, callback7, callback8); - } -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_SafeObject() { - void * jresult ; - SafeObject *result = 0 ; - - result = (SafeObject *)new SafeObject(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_SafeObject(void * jarg1) { - SafeObject *arg1 = (SafeObject *) 0 ; - - arg1 = (SafeObject *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SafeObject_Lock(void * jarg1) { - int jresult ; - SafeObject *arg1 = (SafeObject *) 0 ; - int result; - - arg1 = (SafeObject *)jarg1; - result = (int)((SafeObject const *)arg1)->Lock(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SafeObject_UnLock(void * jarg1) { - int jresult ; - SafeObject *arg1 = (SafeObject *) 0 ; - int result; - - arg1 = (SafeObject *)jarg1; - result = (int)((SafeObject const *)arg1)->UnLock(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_SipStack(void * jarg1, char * jarg2, char * jarg3, char * jarg4) { - void * jresult ; - SipCallback *arg1 = (SipCallback *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *arg4 = (char *) 0 ; - SipStack *result = 0 ; - - arg1 = (SipCallback *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = (char *)jarg4; - result = (SipStack *)new SipStack(arg1,(char const *)arg2,(char const *)arg3,(char const *)arg4); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipStack(void * jarg1) { - SipStack *arg1 = (SipStack *) 0 ; - - arg1 = (SipStack *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_start(void * jarg1) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - result = (bool)(arg1)->start(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setDebugCallback(void * jarg1, void * jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - DDebugCallback *arg2 = (DDebugCallback *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (DDebugCallback *)jarg2; - result = (bool)(arg1)->setDebugCallback(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setRealm(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->setRealm((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setIMPI(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->setIMPI((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setIMPU(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->setIMPU((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setPassword(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->setPassword((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setAMF(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->setAMF((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setOperatorId(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->setOperatorId((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setProxyCSCF(void * jarg1, char * jarg2, unsigned short jarg3, char * jarg4, char * jarg5) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - unsigned short arg3 ; - char *arg4 = (char *) 0 ; - char *arg5 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (unsigned short)jarg3; - arg4 = (char *)jarg4; - arg5 = (char *)jarg5; - result = (bool)(arg1)->setProxyCSCF((char const *)arg2,arg3,(char const *)arg4,(char const *)arg5); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setLocalIP(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->setLocalIP((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setLocalPort(void * jarg1, unsigned short jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - unsigned short arg2 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (unsigned short)jarg2; - result = (bool)(arg1)->setLocalPort(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setEarlyIMS(void * jarg1, unsigned int jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - bool arg2 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = jarg2 ? true : false; - result = (bool)(arg1)->setEarlyIMS(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_addHeader(void * jarg1, char * jarg2, char * jarg3) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - result = (bool)(arg1)->addHeader((char const *)arg2,(char const *)arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_removeHeader(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->removeHeader((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_addDnsServer(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->addDnsServer((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setDnsDiscovery(void * jarg1, unsigned int jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - bool arg2 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = jarg2 ? true : false; - result = (bool)(arg1)->setDnsDiscovery(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setAoR(void * jarg1, char * jarg2, int jarg3) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - int arg3 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (int)jarg3; - result = (bool)(arg1)->setAoR((char const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setSigCompParams(void * jarg1, unsigned int jarg2, unsigned int jarg3, unsigned int jarg4, unsigned int jarg5) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - unsigned int arg2 ; - unsigned int arg3 ; - unsigned int arg4 ; - bool arg5 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (unsigned int)jarg2; - arg3 = (unsigned int)jarg3; - arg4 = (unsigned int)jarg4; - arg5 = jarg5 ? true : false; - result = (bool)(arg1)->setSigCompParams(arg2,arg3,arg4,arg5); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_addSigCompCompartment(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->addSigCompCompartment((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_removeSigCompCompartment(void * jarg1, char * jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->removeSigCompCompartment((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setSTUNServer(void * jarg1, char * jarg2, unsigned short jarg3) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - unsigned short arg3 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (unsigned short)jarg3; - result = (bool)(arg1)->setSTUNServer((char const *)arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setSTUNCred(void * jarg1, char * jarg2, char * jarg3) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - result = (bool)(arg1)->setSTUNCred((char const *)arg2,(char const *)arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setTLSSecAgree(void * jarg1, unsigned int jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - bool arg2 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = jarg2 ? true : false; - result = (bool)(arg1)->setTLSSecAgree(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setSSLCretificates(void * jarg1, char * jarg2, char * jarg3, char * jarg4) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *arg4 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = (char *)jarg4; - result = (bool)(arg1)->setSSLCretificates((char const *)arg2,(char const *)arg3,(char const *)arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setIPSecSecAgree(void * jarg1, unsigned int jarg2) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - bool arg2 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = jarg2 ? true : false; - result = (bool)(arg1)->setIPSecSecAgree(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setIPSecParameters(void * jarg1, char * jarg2, char * jarg3, char * jarg4, char * jarg5) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *arg4 = (char *) 0 ; - char *arg5 = (char *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = (char *)jarg4; - arg5 = (char *)jarg5; - result = (bool)(arg1)->setIPSecParameters((char const *)arg2,(char const *)arg3,(char const *)arg4,(char const *)arg5); - jresult = result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipStack_dnsENUM(void * jarg1, char * jarg2, char * jarg3, char * jarg4) { - char * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *arg4 = (char *) 0 ; - char *result = 0 ; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = (char *)jarg4; - result = (char *)(arg1)->dnsENUM((char const *)arg2,(char const *)arg3,(char const *)arg4); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipStack_dnsNaptrSrv(void * jarg1, char * jarg2, char * jarg3, unsigned short * jarg4) { - char * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - unsigned short *arg4 = (unsigned short *) 0 ; - char *result = 0 ; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = (unsigned short *)jarg4; - result = (char *)(arg1)->dnsNaptrSrv((char const *)arg2,(char const *)arg3,arg4); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipStack_dnsSrv(void * jarg1, char * jarg2, unsigned short * jarg3) { - char * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - unsigned short *arg3 = (unsigned short *) 0 ; - char *result = 0 ; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (unsigned short *)jarg3; - result = (char *)(arg1)->dnsSrv((char const *)arg2,arg3); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipStack_getLocalIPnPort(void * jarg1, char * jarg2, unsigned short * jarg3) { - char * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *arg2 = (char *) 0 ; - unsigned short *arg3 = (unsigned short *) 0 ; - char *result = 0 ; - - arg1 = (SipStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (unsigned short *)jarg3; - result = (char *)(arg1)->getLocalIPnPort((char const *)arg2,arg3); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SipStack_getPreferredIdentity(void * jarg1) { - char * jresult ; - SipStack *arg1 = (SipStack *) 0 ; - char *result = 0 ; - - arg1 = (SipStack *)jarg1; - result = (char *)(arg1)->getPreferredIdentity(); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_isValid(void * jarg1) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - result = (bool)(arg1)->isValid(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_stop(void * jarg1) { - unsigned int jresult ; - SipStack *arg1 = (SipStack *) 0 ; - bool result; - - arg1 = (SipStack *)jarg1; - result = (bool)(arg1)->stop(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_initialize() { - unsigned int jresult ; - bool result; - - result = (bool)SipStack::initialize(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_deInitialize() { - unsigned int jresult ; - bool result; - - result = (bool)SipStack::deInitialize(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_SipStack_setCodecs(int jarg1) { - tdav_codec_id_t arg1 ; - - arg1 = (tdav_codec_id_t)jarg1; - SipStack::setCodecs(arg1); -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_SipStack_setCodecs_2(int jarg1) { - int arg1 ; - - arg1 = (int)jarg1; - SipStack::setCodecs_2(arg1); -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setCodecPriority(int jarg1, int jarg2) { - unsigned int jresult ; - tdav_codec_id_t arg1 ; - int arg2 ; - bool result; - - arg1 = (tdav_codec_id_t)jarg1; - arg2 = (int)jarg2; - result = (bool)SipStack::setCodecPriority(arg1,arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setCodecPriority_2(int jarg1, int jarg2) { - unsigned int jresult ; - int arg1 ; - int arg2 ; - bool result; - - arg1 = (int)jarg1; - arg2 = (int)jarg2; - result = (bool)SipStack::setCodecPriority_2(arg1,arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_isCodecSupported(int jarg1) { - unsigned int jresult ; - tdav_codec_id_t arg1 ; - bool result; - - arg1 = (tdav_codec_id_t)jarg1; - result = (bool)SipStack::isCodecSupported(arg1); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_transport_error_get() { - int jresult ; - int result; - - result = (int) 702; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_global_error_get() { - int jresult ; - int result; - - result = (int) 703; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_message_error_get() { - int jresult ; - int result; - - result = (int) 704; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_request_incoming_get() { - int jresult ; - int result; - - result = (int) 800; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_request_outgoing_get() { - int jresult ; - int result; - - result = (int) 802; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_request_cancelled_get() { - int jresult ; - int result; - - result = (int) 803; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_request_sent_get() { - int jresult ; - int result; - - result = (int) 804; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_connecting_get() { - int jresult ; - int result; - - result = (int) 900; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_connected_get() { - int jresult ; - int result; - - result = (int) 901; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_terminating_get() { - int jresult ; - int result; - - result = (int) 902; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_terminated_get() { - int jresult ; - int result; - - result = (int) 903; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_stack_started_get() { - int jresult ; - int result; - - result = (int) 950; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_stack_stopped_get() { - int jresult ; - int result; - - result = (int) 951; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_stack_failed_to_start_get() { - int jresult ; - int result; - - result = (int) 952; - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_stack_failed_to_stop_get() { - int jresult ; - int result; - - result = (int) 953; - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_XcapSelector(void * jarg1) { - void * jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - XcapSelector *result = 0 ; - - arg1 = (XcapStack *)jarg1; - result = (XcapSelector *)new XcapSelector(arg1); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_XcapSelector(void * jarg1) { - XcapSelector *arg1 = (XcapSelector *) 0 ; - - arg1 = (XcapSelector *)jarg1; - delete arg1; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_XcapSelector_setAUID(void * jarg1, char * jarg2) { - void * jresult ; - XcapSelector *arg1 = (XcapSelector *) 0 ; - char *arg2 = (char *) 0 ; - XcapSelector *result = 0 ; - - arg1 = (XcapSelector *)jarg1; - arg2 = (char *)jarg2; - result = (XcapSelector *)(arg1)->setAUID((char const *)arg2); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_XcapSelector_setName(void * jarg1, char * jarg2) { - void * jresult ; - XcapSelector *arg1 = (XcapSelector *) 0 ; - char *arg2 = (char *) 0 ; - XcapSelector *result = 0 ; - - arg1 = (XcapSelector *)jarg1; - arg2 = (char *)jarg2; - result = (XcapSelector *)(arg1)->setName((char const *)arg2); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_XcapSelector_setAttribute(void * jarg1, char * jarg2, char * jarg3, char * jarg4) { - void * jresult ; - XcapSelector *arg1 = (XcapSelector *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *arg4 = (char *) 0 ; - XcapSelector *result = 0 ; - - arg1 = (XcapSelector *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = (char *)jarg4; - result = (XcapSelector *)(arg1)->setAttribute((char const *)arg2,(char const *)arg3,(char const *)arg4); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_XcapSelector_setPos(void * jarg1, char * jarg2, unsigned int jarg3) { - void * jresult ; - XcapSelector *arg1 = (XcapSelector *) 0 ; - char *arg2 = (char *) 0 ; - unsigned int arg3 ; - XcapSelector *result = 0 ; - - arg1 = (XcapSelector *)jarg1; - arg2 = (char *)jarg2; - arg3 = (unsigned int)jarg3; - result = (XcapSelector *)(arg1)->setPos((char const *)arg2,arg3); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_XcapSelector_setPosAttribute(void * jarg1, char * jarg2, unsigned int jarg3, char * jarg4, char * jarg5) { - void * jresult ; - XcapSelector *arg1 = (XcapSelector *) 0 ; - char *arg2 = (char *) 0 ; - unsigned int arg3 ; - char *arg4 = (char *) 0 ; - char *arg5 = (char *) 0 ; - XcapSelector *result = 0 ; - - arg1 = (XcapSelector *)jarg1; - arg2 = (char *)jarg2; - arg3 = (unsigned int)jarg3; - arg4 = (char *)jarg4; - arg5 = (char *)jarg5; - result = (XcapSelector *)(arg1)->setPosAttribute((char const *)arg2,arg3,(char const *)arg4,(char const *)arg5); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_XcapSelector_setNamespace(void * jarg1, char * jarg2, char * jarg3) { - void * jresult ; - XcapSelector *arg1 = (XcapSelector *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - XcapSelector *result = 0 ; - - arg1 = (XcapSelector *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - result = (XcapSelector *)(arg1)->setNamespace((char const *)arg2,(char const *)arg3); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_XcapSelector_getString(void * jarg1) { - char * jresult ; - XcapSelector *arg1 = (XcapSelector *) 0 ; - char *result = 0 ; - - arg1 = (XcapSelector *)jarg1; - result = (char *)(arg1)->getString(); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_XcapSelector_reset(void * jarg1) { - XcapSelector *arg1 = (XcapSelector *) 0 ; - - arg1 = (XcapSelector *)jarg1; - (arg1)->reset(); -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_XcapMessage() { - void * jresult ; - XcapMessage *result = 0 ; - - result = (XcapMessage *)new XcapMessage(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_XcapMessage(void * jarg1) { - XcapMessage *arg1 = (XcapMessage *) 0 ; - - arg1 = (XcapMessage *)jarg1; - delete arg1; -} - - -SWIGEXPORT short SWIGSTDCALL CSharp_XcapMessage_getCode(void * jarg1) { - short jresult ; - XcapMessage *arg1 = (XcapMessage *) 0 ; - short result; - - arg1 = (XcapMessage *)jarg1; - result = (short)((XcapMessage const *)arg1)->getCode(); - jresult = result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_XcapMessage_getPhrase(void * jarg1) { - char * jresult ; - XcapMessage *arg1 = (XcapMessage *) 0 ; - char *result = 0 ; - - arg1 = (XcapMessage *)jarg1; - result = (char *)((XcapMessage const *)arg1)->getPhrase(); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_XcapMessage_getXcapHeaderValue__SWIG_0(void * jarg1, char * jarg2, unsigned int jarg3) { - char * jresult ; - XcapMessage *arg1 = (XcapMessage *) 0 ; - char *arg2 = (char *) 0 ; - unsigned int arg3 ; - char *result = 0 ; - - arg1 = (XcapMessage *)jarg1; - arg2 = (char *)jarg2; - arg3 = (unsigned int)jarg3; - result = (char *)(arg1)->getXcapHeaderValue((char const *)arg2,arg3); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_XcapMessage_getXcapHeaderValue__SWIG_1(void * jarg1, char * jarg2) { - char * jresult ; - XcapMessage *arg1 = (XcapMessage *) 0 ; - char *arg2 = (char *) 0 ; - char *result = 0 ; - - arg1 = (XcapMessage *)jarg1; - arg2 = (char *)jarg2; - result = (char *)(arg1)->getXcapHeaderValue((char const *)arg2); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_XcapMessage_getXcapHeaderParamValue__SWIG_0(void * jarg1, char * jarg2, char * jarg3, unsigned int jarg4) { - char * jresult ; - XcapMessage *arg1 = (XcapMessage *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - unsigned int arg4 ; - char *result = 0 ; - - arg1 = (XcapMessage *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = (unsigned int)jarg4; - result = (char *)(arg1)->getXcapHeaderParamValue((char const *)arg2,(char const *)arg3,arg4); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_XcapMessage_getXcapHeaderParamValue__SWIG_1(void * jarg1, char * jarg2, char * jarg3) { - char * jresult ; - XcapMessage *arg1 = (XcapMessage *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *result = 0 ; - - arg1 = (XcapMessage *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - result = (char *)(arg1)->getXcapHeaderParamValue((char const *)arg2,(char const *)arg3); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapMessage_getXcapContentLength(void * jarg1) { - unsigned int jresult ; - XcapMessage *arg1 = (XcapMessage *) 0 ; - unsigned int result; - - arg1 = (XcapMessage *)jarg1; - result = (unsigned int)(arg1)->getXcapContentLength(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapMessage_getXcapContent(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - XcapMessage *arg1 = (XcapMessage *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - unsigned int result; - - arg1 = (XcapMessage *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (unsigned int)(arg1)->getXcapContent(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_XcapEvent(void * jarg1) { - XcapEvent *arg1 = (XcapEvent *) 0 ; - - arg1 = (XcapEvent *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_XcapEvent_getType(void * jarg1) { - int jresult ; - XcapEvent *arg1 = (XcapEvent *) 0 ; - thttp_event_type_t result; - - arg1 = (XcapEvent *)jarg1; - result = (thttp_event_type_t)(arg1)->getType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_XcapEvent_getXcapMessage(void * jarg1) { - void * jresult ; - XcapEvent *arg1 = (XcapEvent *) 0 ; - XcapMessage *result = 0 ; - - arg1 = (XcapEvent *)jarg1; - result = (XcapMessage *)((XcapEvent const *)arg1)->getXcapMessage(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_XcapCallback() { - void * jresult ; - XcapCallback *result = 0 ; - - result = (XcapCallback *)new SwigDirector_XcapCallback(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_XcapCallback(void * jarg1) { - XcapCallback *arg1 = (XcapCallback *) 0 ; - - arg1 = (XcapCallback *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_XcapCallback_onEvent(void * jarg1, void * jarg2) { - int jresult ; - XcapCallback *arg1 = (XcapCallback *) 0 ; - XcapEvent *arg2 = (XcapEvent *) 0 ; - int result; - - arg1 = (XcapCallback *)jarg1; - arg2 = (XcapEvent *)jarg2; - result = (int)((XcapCallback const *)arg1)->onEvent((XcapEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_XcapCallback_onEventSwigExplicitXcapCallback(void * jarg1, void * jarg2) { - int jresult ; - XcapCallback *arg1 = (XcapCallback *) 0 ; - XcapEvent *arg2 = (XcapEvent *) 0 ; - int result; - - arg1 = (XcapCallback *)jarg1; - arg2 = (XcapEvent *)jarg2; - result = (int)((XcapCallback const *)arg1)->XcapCallback::onEvent((XcapEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_XcapCallback_director_connect(void *objarg, SwigDirector_XcapCallback::SWIG_Callback0_t callback0) { - XcapCallback *obj = (XcapCallback *)objarg; - SwigDirector_XcapCallback *director = dynamic_cast(obj); - if (director) { - director->swig_connect_director(callback0); - } -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_XcapStack(void * jarg1, char * jarg2, char * jarg3, char * jarg4) { - void * jresult ; - XcapCallback *arg1 = (XcapCallback *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *arg4 = (char *) 0 ; - XcapStack *result = 0 ; - - arg1 = (XcapCallback *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = (char *)jarg4; - result = (XcapStack *)new XcapStack(arg1,(char const *)arg2,(char const *)arg3,(char const *)arg4); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_XcapStack(void * jarg1) { - XcapStack *arg1 = (XcapStack *) 0 ; - - arg1 = (XcapStack *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_registerAUID(void * jarg1, char * jarg2, char * jarg3, char * jarg4, char * jarg5, unsigned int jarg6) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *arg4 = (char *) 0 ; - char *arg5 = (char *) 0 ; - bool arg6 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = (char *)jarg4; - arg5 = (char *)jarg5; - arg6 = jarg6 ? true : false; - result = (bool)(arg1)->registerAUID((char const *)arg2,(char const *)arg3,(char const *)arg4,(char const *)arg5,arg6); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_start(void * jarg1) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - result = (bool)(arg1)->start(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_setCredentials(void * jarg1, char * jarg2, char * jarg3) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - result = (bool)(arg1)->setCredentials((char const *)arg2,(char const *)arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_setXcapRoot(void * jarg1, char * jarg2) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->setXcapRoot((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_setLocalIP(void * jarg1, char * jarg2) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->setLocalIP((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_setLocalPort(void * jarg1, unsigned int jarg2) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - unsigned int arg2 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (unsigned int)jarg2; - result = (bool)(arg1)->setLocalPort(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_addHeader(void * jarg1, char * jarg2, char * jarg3) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - result = (bool)(arg1)->addHeader((char const *)arg2,(char const *)arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_removeHeader(void * jarg1, char * jarg2) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->removeHeader((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_setTimeout(void * jarg1, unsigned int jarg2) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - unsigned int arg2 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (unsigned int)jarg2; - result = (bool)(arg1)->setTimeout(arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_getDocument(void * jarg1, char * jarg2) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->getDocument((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_getElement(void * jarg1, char * jarg2) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->getElement((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_getAttribute(void * jarg1, char * jarg2) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->getAttribute((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_deleteDocument(void * jarg1, char * jarg2) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->deleteDocument((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_deleteElement(void * jarg1, char * jarg2) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->deleteElement((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_deleteAttribute(void * jarg1, char * jarg2) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - result = (bool)(arg1)->deleteAttribute((char const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_putDocument(void * jarg1, char * jarg2, void * jarg3, unsigned int jarg4, char * jarg5) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - void *arg3 = (void *) 0 ; - unsigned int arg4 ; - char *arg5 = (char *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = jarg3; - arg4 = (unsigned int)jarg4; - arg5 = (char *)jarg5; - result = (bool)(arg1)->putDocument((char const *)arg2,(void const *)arg3,arg4,(char const *)arg5); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_putElement(void * jarg1, char * jarg2, void * jarg3, unsigned int jarg4) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - void *arg3 = (void *) 0 ; - unsigned int arg4 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = jarg3; - arg4 = (unsigned int)jarg4; - result = (bool)(arg1)->putElement((char const *)arg2,(void const *)arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_putAttribute(void * jarg1, char * jarg2, void * jarg3, unsigned int jarg4) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - char *arg2 = (char *) 0 ; - void *arg3 = (void *) 0 ; - unsigned int arg4 ; - bool result; - - arg1 = (XcapStack *)jarg1; - arg2 = (char *)jarg2; - arg3 = jarg3; - arg4 = (unsigned int)jarg4; - result = (bool)(arg1)->putAttribute((char const *)arg2,(void const *)arg3,arg4); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_stop(void * jarg1) { - unsigned int jresult ; - XcapStack *arg1 = (XcapStack *) 0 ; - bool result; - - arg1 = (XcapStack *)jarg1; - result = (bool)(arg1)->stop(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_RPMessage() { - void * jresult ; - RPMessage *result = 0 ; - - result = (RPMessage *)new RPMessage(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_RPMessage(void * jarg1) { - RPMessage *arg1 = (RPMessage *) 0 ; - - arg1 = (RPMessage *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_RPMessage_getType(void * jarg1) { - int jresult ; - RPMessage *arg1 = (RPMessage *) 0 ; - twrap_rpmessage_type_t result; - - arg1 = (RPMessage *)jarg1; - result = (twrap_rpmessage_type_t)(arg1)->getType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RPMessage_getPayloadLength(void * jarg1) { - unsigned int jresult ; - RPMessage *arg1 = (RPMessage *) 0 ; - unsigned int result; - - arg1 = (RPMessage *)jarg1; - result = (unsigned int)(arg1)->getPayloadLength(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RPMessage_getPayload(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - RPMessage *arg1 = (RPMessage *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - unsigned int result; - - arg1 = (RPMessage *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (unsigned int)(arg1)->getPayload(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_SMSData() { - void * jresult ; - SMSData *result = 0 ; - - result = (SMSData *)new SMSData(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_SMSData(void * jarg1) { - SMSData *arg1 = (SMSData *) 0 ; - - arg1 = (SMSData *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SMSData_getType(void * jarg1) { - int jresult ; - SMSData *arg1 = (SMSData *) 0 ; - twrap_sms_type_t result; - - arg1 = (SMSData *)jarg1; - result = (twrap_sms_type_t)(arg1)->getType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_SMSData_getMR(void * jarg1) { - int jresult ; - SMSData *arg1 = (SMSData *) 0 ; - int result; - - arg1 = (SMSData *)jarg1; - result = (int)(arg1)->getMR(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SMSData_getPayloadLength(void * jarg1) { - unsigned int jresult ; - SMSData *arg1 = (SMSData *) 0 ; - unsigned int result; - - arg1 = (SMSData *)jarg1; - result = (unsigned int)(arg1)->getPayloadLength(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SMSData_getPayload(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - SMSData *arg1 = (SMSData *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - unsigned int result; - - arg1 = (SMSData *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (unsigned int)(arg1)->getPayload(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SMSData_getOA(void * jarg1) { - char * jresult ; - SMSData *arg1 = (SMSData *) 0 ; - char *result = 0 ; - - arg1 = (SMSData *)jarg1; - result = (char *)(arg1)->getOA(); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_SMSData_getDA(void * jarg1) { - char * jresult ; - SMSData *arg1 = (SMSData *) 0 ; - char *result = 0 ; - - arg1 = (SMSData *)jarg1; - result = (char *)(arg1)->getDA(); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_SMSEncoder_encodeSubmit(int jarg1, char * jarg2, char * jarg3, char * jarg4) { - void * jresult ; - int arg1 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *arg4 = (char *) 0 ; - RPMessage *result = 0 ; - - arg1 = (int)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = (char *)jarg4; - result = (RPMessage *)SMSEncoder::encodeSubmit(arg1,(char const *)arg2,(char const *)arg3,(char const *)arg4); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_SMSEncoder_encodeDeliver(int jarg1, char * jarg2, char * jarg3, char * jarg4) { - void * jresult ; - int arg1 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *arg4 = (char *) 0 ; - RPMessage *result = 0 ; - - arg1 = (int)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = (char *)jarg4; - result = (RPMessage *)SMSEncoder::encodeDeliver(arg1,(char const *)arg2,(char const *)arg3,(char const *)arg4); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_SMSEncoder_encodeACK(int jarg1, char * jarg2, char * jarg3, unsigned int jarg4) { - void * jresult ; - int arg1 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - bool arg4 ; - RPMessage *result = 0 ; - - arg1 = (int)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = jarg4 ? true : false; - result = (RPMessage *)SMSEncoder::encodeACK(arg1,(char const *)arg2,(char const *)arg3,arg4); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_SMSEncoder_encodeError(int jarg1, char * jarg2, char * jarg3, unsigned int jarg4) { - void * jresult ; - int arg1 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - bool arg4 ; - RPMessage *result = 0 ; - - arg1 = (int)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - arg4 = jarg4 ? true : false; - result = (RPMessage *)SMSEncoder::encodeError(arg1,(char const *)arg2,(char const *)arg3,arg4); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_SMSEncoder_decode(void * jarg1, unsigned int jarg2, unsigned int jarg3) { - void * jresult ; - void *arg1 = (void *) 0 ; - unsigned int arg2 ; - bool arg3 ; - SMSData *result = 0 ; - - arg1 = jarg1; - arg2 = (unsigned int)jarg2; - arg3 = jarg3 ? true : false; - result = (SMSData *)SMSEncoder::decode((void const *)arg1,arg2,arg3); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_SMSEncoder(void * jarg1) { - SMSEncoder *arg1 = (SMSEncoder *) 0 ; - - arg1 = (SMSEncoder *)jarg1; - delete arg1; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_MsrpMessage() { - void * jresult ; - MsrpMessage *result = 0 ; - - result = (MsrpMessage *)new MsrpMessage(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_MsrpMessage(void * jarg1) { - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - - arg1 = (MsrpMessage *)jarg1; - delete arg1; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpMessage_isRequest(void * jarg1) { - unsigned int jresult ; - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - bool result; - - arg1 = (MsrpMessage *)jarg1; - result = (bool)(arg1)->isRequest(); - jresult = result; - return jresult; -} - - -SWIGEXPORT short SWIGSTDCALL CSharp_MsrpMessage_getCode(void * jarg1) { - short jresult ; - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - short result; - - arg1 = (MsrpMessage *)jarg1; - result = (short)(arg1)->getCode(); - jresult = result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_MsrpMessage_getPhrase(void * jarg1) { - char * jresult ; - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - char *result = 0 ; - - arg1 = (MsrpMessage *)jarg1; - result = (char *)(arg1)->getPhrase(); - jresult = SWIG_csharp_string_callback((const char *)result); - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_MsrpMessage_getRequestType(void * jarg1) { - int jresult ; - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - tmsrp_request_type_t result; - - arg1 = (MsrpMessage *)jarg1; - result = (tmsrp_request_type_t)(arg1)->getRequestType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_MsrpMessage_getByteRange(void * jarg1, long long * jarg2, long long * jarg3, long long * jarg4) { - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - int64_t *arg2 = (int64_t *) 0 ; - int64_t *arg3 = (int64_t *) 0 ; - int64_t *arg4 = (int64_t *) 0 ; - - arg1 = (MsrpMessage *)jarg1; - arg2 = (int64_t *)jarg2; - arg3 = (int64_t *)jarg3; - arg4 = (int64_t *)jarg4; - (arg1)->getByteRange(arg2,arg3,arg4); -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpMessage_isLastChunck(void * jarg1) { - unsigned int jresult ; - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - bool result; - - arg1 = (MsrpMessage *)jarg1; - result = (bool)(arg1)->isLastChunck(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpMessage_isFirstChunck(void * jarg1) { - unsigned int jresult ; - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - bool result; - - arg1 = (MsrpMessage *)jarg1; - result = (bool)(arg1)->isFirstChunck(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpMessage_isSuccessReport(void * jarg1) { - unsigned int jresult ; - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - bool result; - - arg1 = (MsrpMessage *)jarg1; - result = (bool)(arg1)->isSuccessReport(); - jresult = result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_MsrpMessage_getMsrpHeaderValue(void * jarg1, char * jarg2) { - char * jresult ; - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - char *arg2 = (char *) 0 ; - char *result = 0 ; - - arg1 = (MsrpMessage *)jarg1; - arg2 = (char *)jarg2; - result = (char *)(arg1)->getMsrpHeaderValue((char const *)arg2); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT char * SWIGSTDCALL CSharp_MsrpMessage_getMsrpHeaderParamValue(void * jarg1, char * jarg2, char * jarg3) { - char * jresult ; - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - char *result = 0 ; - - arg1 = (MsrpMessage *)jarg1; - arg2 = (char *)jarg2; - arg3 = (char *)jarg3; - result = (char *)(arg1)->getMsrpHeaderParamValue((char const *)arg2,(char const *)arg3); - jresult = SWIG_csharp_string_callback((const char *)result); - delete [] result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpMessage_getMsrpContentLength(void * jarg1) { - unsigned int jresult ; - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - unsigned int result; - - arg1 = (MsrpMessage *)jarg1; - result = (unsigned int)(arg1)->getMsrpContentLength(); - jresult = result; - return jresult; -} - - -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpMessage_getMsrpContent(void * jarg1, void * jarg2, unsigned int jarg3) { - unsigned int jresult ; - MsrpMessage *arg1 = (MsrpMessage *) 0 ; - void *arg2 = (void *) 0 ; - unsigned int arg3 ; - unsigned int result; - - arg1 = (MsrpMessage *)jarg1; - arg2 = jarg2; - arg3 = (unsigned int)jarg3; - result = (unsigned int)(arg1)->getMsrpContent(arg2,arg3); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_MsrpEvent(void * jarg1) { - MsrpEvent *arg1 = (MsrpEvent *) 0 ; - - arg1 = (MsrpEvent *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_MsrpEvent_getType(void * jarg1) { - int jresult ; - MsrpEvent *arg1 = (MsrpEvent *) 0 ; - tmsrp_event_type_t result; - - arg1 = (MsrpEvent *)jarg1; - result = (tmsrp_event_type_t)(arg1)->getType(); - jresult = result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_MsrpEvent_getSipSession(void * jarg1) { - void * jresult ; - MsrpEvent *arg1 = (MsrpEvent *) 0 ; - MsrpSession *result = 0 ; - - arg1 = (MsrpEvent *)jarg1; - result = (MsrpSession *)(arg1)->getSipSession(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_MsrpEvent_getMessage(void * jarg1) { - void * jresult ; - MsrpEvent *arg1 = (MsrpEvent *) 0 ; - MsrpMessage *result = 0 ; - - arg1 = (MsrpEvent *)jarg1; - result = (MsrpMessage *)((MsrpEvent const *)arg1)->getMessage(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void * SWIGSTDCALL CSharp_new_MsrpCallback() { - void * jresult ; - MsrpCallback *result = 0 ; - - result = (MsrpCallback *)new SwigDirector_MsrpCallback(); - jresult = (void *)result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_delete_MsrpCallback(void * jarg1) { - MsrpCallback *arg1 = (MsrpCallback *) 0 ; - - arg1 = (MsrpCallback *)jarg1; - delete arg1; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_MsrpCallback_OnEvent(void * jarg1, void * jarg2) { - int jresult ; - MsrpCallback *arg1 = (MsrpCallback *) 0 ; - MsrpEvent *arg2 = (MsrpEvent *) 0 ; - int result; - - arg1 = (MsrpCallback *)jarg1; - arg2 = (MsrpEvent *)jarg2; - result = (int)(arg1)->OnEvent((MsrpEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT int SWIGSTDCALL CSharp_MsrpCallback_OnEventSwigExplicitMsrpCallback(void * jarg1, void * jarg2) { - int jresult ; - MsrpCallback *arg1 = (MsrpCallback *) 0 ; - MsrpEvent *arg2 = (MsrpEvent *) 0 ; - int result; - - arg1 = (MsrpCallback *)jarg1; - arg2 = (MsrpEvent *)jarg2; - result = (int)(arg1)->MsrpCallback::OnEvent((MsrpEvent const *)arg2); - jresult = result; - return jresult; -} - - -SWIGEXPORT void SWIGSTDCALL CSharp_MsrpCallback_director_connect(void *objarg, SwigDirector_MsrpCallback::SWIG_Callback0_t callback0) { - MsrpCallback *obj = (MsrpCallback *)objarg; - SwigDirector_MsrpCallback *director = dynamic_cast(obj); - if (director) { - director->swig_connect_director(callback0); - } -} - - -SWIGEXPORT MediaContent * SWIGSTDCALL CSharp_MediaContentCPIMUpcast(MediaContentCPIM *objectRef) { - return (MediaContent *)objectRef; -} - -SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_DialogEventUpcast(DialogEvent *objectRef) { - return (SipEvent *)objectRef; -} - -SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_StackEventUpcast(StackEvent *objectRef) { - return (SipEvent *)objectRef; -} - -SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_InviteEventUpcast(InviteEvent *objectRef) { - return (SipEvent *)objectRef; -} - -SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_MessagingEventUpcast(MessagingEvent *objectRef) { - return (SipEvent *)objectRef; -} - -SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_InfoEventUpcast(InfoEvent *objectRef) { - return (SipEvent *)objectRef; -} - -SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_OptionsEventUpcast(OptionsEvent *objectRef) { - return (SipEvent *)objectRef; -} - -SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_PublicationEventUpcast(PublicationEvent *objectRef) { - return (SipEvent *)objectRef; -} - -SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_RegistrationEventUpcast(RegistrationEvent *objectRef) { - return (SipEvent *)objectRef; -} - -SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_SubscriptionEventUpcast(SubscriptionEvent *objectRef) { - return (SipEvent *)objectRef; -} - -SWIGEXPORT SipSession * SWIGSTDCALL CSharp_InviteSessionUpcast(InviteSession *objectRef) { - return (SipSession *)objectRef; -} - -SWIGEXPORT InviteSession * SWIGSTDCALL CSharp_CallSessionUpcast(CallSession *objectRef) { - return (InviteSession *)objectRef; -} - -SWIGEXPORT InviteSession * SWIGSTDCALL CSharp_MsrpSessionUpcast(MsrpSession *objectRef) { - return (InviteSession *)objectRef; -} - -SWIGEXPORT SipSession * SWIGSTDCALL CSharp_MessagingSessionUpcast(MessagingSession *objectRef) { - return (SipSession *)objectRef; -} - -SWIGEXPORT SipSession * SWIGSTDCALL CSharp_InfoSessionUpcast(InfoSession *objectRef) { - return (SipSession *)objectRef; -} - -SWIGEXPORT SipSession * SWIGSTDCALL CSharp_OptionsSessionUpcast(OptionsSession *objectRef) { - return (SipSession *)objectRef; -} - -SWIGEXPORT SipSession * SWIGSTDCALL CSharp_PublicationSessionUpcast(PublicationSession *objectRef) { - return (SipSession *)objectRef; -} - -SWIGEXPORT SipSession * SWIGSTDCALL CSharp_RegistrationSessionUpcast(RegistrationSession *objectRef) { - return (SipSession *)objectRef; -} - -SWIGEXPORT SipSession * SWIGSTDCALL CSharp_SubscriptionSessionUpcast(SubscriptionSession *objectRef) { - return (SipSession *)objectRef; -} - -SWIGEXPORT ProxyPlugin * SWIGSTDCALL CSharp_ProxyAudioConsumerUpcast(ProxyAudioConsumer *objectRef) { - return (ProxyPlugin *)objectRef; -} - -SWIGEXPORT ProxyPlugin * SWIGSTDCALL CSharp_ProxyVideoConsumerUpcast(ProxyVideoConsumer *objectRef) { - return (ProxyPlugin *)objectRef; -} - -SWIGEXPORT ProxyPlugin * SWIGSTDCALL CSharp_ProxyAudioProducerUpcast(ProxyAudioProducer *objectRef) { - return (ProxyPlugin *)objectRef; -} - -SWIGEXPORT ProxyPlugin * SWIGSTDCALL CSharp_ProxyVideoProducerUpcast(ProxyVideoProducer *objectRef) { - return (ProxyPlugin *)objectRef; -} - -SWIGEXPORT SafeObject * SWIGSTDCALL CSharp_SipStackUpcast(SipStack *objectRef) { - return (SafeObject *)objectRef; -} - -#ifdef __cplusplus -} -#endif - + +#include // Use the C99 official header + + +#include "DDebug.h" +#include "AudioResampler.h" + + +#include "ActionConfig.h" +#include "MediaSessionMgr.h" +#include "MediaContent.h" +#include "SipUri.h" +#include "SipMessage.h" +#include "SipEvent.h" +#include "SipSession.h" + +#include "ProxyPluginMgr.h" +#include "ProxyConsumer.h" +#include "ProxyProducer.h" + +#include "SipCallback.h" +#include "SafeObject.h" +#include "SipStack.h" + + +#include "Xcap.h" + + +#include "SMSEncoder.h" + + +#include "Msrp.h" + + + +/* --------------------------------------------------- + * C++ director class methods + * --------------------------------------------------- */ + +#include "tinyWRAP_wrap.h" + +SwigDirector_DDebugCallback::SwigDirector_DDebugCallback() : DDebugCallback(), Swig::Director() { + swig_init_callbacks(); +} + +SwigDirector_DDebugCallback::~SwigDirector_DDebugCallback() { + +} + + +int SwigDirector_DDebugCallback::OnDebugInfo(char const *message) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + char * jmessage = 0 ; + + if (!swig_callbackOnDebugInfo) { + return DDebugCallback::OnDebugInfo(message); + } else { + jmessage = SWIG_csharp_string_callback((const char *)message); + jresult = (int) swig_callbackOnDebugInfo(jmessage); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_DDebugCallback::OnDebugWarn(char const *message) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + char * jmessage = 0 ; + + if (!swig_callbackOnDebugWarn) { + return DDebugCallback::OnDebugWarn(message); + } else { + jmessage = SWIG_csharp_string_callback((const char *)message); + jresult = (int) swig_callbackOnDebugWarn(jmessage); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_DDebugCallback::OnDebugError(char const *message) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + char * jmessage = 0 ; + + if (!swig_callbackOnDebugError) { + return DDebugCallback::OnDebugError(message); + } else { + jmessage = SWIG_csharp_string_callback((const char *)message); + jresult = (int) swig_callbackOnDebugError(jmessage); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_DDebugCallback::OnDebugFatal(char const *message) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + char * jmessage = 0 ; + + if (!swig_callbackOnDebugFatal) { + return DDebugCallback::OnDebugFatal(message); + } else { + jmessage = SWIG_csharp_string_callback((const char *)message); + jresult = (int) swig_callbackOnDebugFatal(jmessage); + c_result = (int)jresult; + } + return c_result; +} + +void SwigDirector_DDebugCallback::swig_connect_director(SWIG_Callback0_t callbackOnDebugInfo, SWIG_Callback1_t callbackOnDebugWarn, SWIG_Callback2_t callbackOnDebugError, SWIG_Callback3_t callbackOnDebugFatal) { + swig_callbackOnDebugInfo = callbackOnDebugInfo; + swig_callbackOnDebugWarn = callbackOnDebugWarn; + swig_callbackOnDebugError = callbackOnDebugError; + swig_callbackOnDebugFatal = callbackOnDebugFatal; +} + +void SwigDirector_DDebugCallback::swig_init_callbacks() { + swig_callbackOnDebugInfo = 0; + swig_callbackOnDebugWarn = 0; + swig_callbackOnDebugError = 0; + swig_callbackOnDebugFatal = 0; +} + +SwigDirector_ProxyPluginMgrCallback::SwigDirector_ProxyPluginMgrCallback() : ProxyPluginMgrCallback(), Swig::Director() { + swig_init_callbacks(); +} + +SwigDirector_ProxyPluginMgrCallback::~SwigDirector_ProxyPluginMgrCallback() { + +} + + +int SwigDirector_ProxyPluginMgrCallback::OnPluginCreated(uint64_t id, enum twrap_proxy_plugin_type_e type) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + unsigned long long jid ; + int jtype ; + + if (!swig_callbackOnPluginCreated) { + return ProxyPluginMgrCallback::OnPluginCreated(id,type); + } else { + jid = id; + jtype = type; + jresult = (int) swig_callbackOnPluginCreated(jid, jtype); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyPluginMgrCallback::OnPluginDestroyed(uint64_t id, enum twrap_proxy_plugin_type_e type) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + unsigned long long jid ; + int jtype ; + + if (!swig_callbackOnPluginDestroyed) { + return ProxyPluginMgrCallback::OnPluginDestroyed(id,type); + } else { + jid = id; + jtype = type; + jresult = (int) swig_callbackOnPluginDestroyed(jid, jtype); + c_result = (int)jresult; + } + return c_result; +} + +void SwigDirector_ProxyPluginMgrCallback::swig_connect_director(SWIG_Callback0_t callbackOnPluginCreated, SWIG_Callback1_t callbackOnPluginDestroyed) { + swig_callbackOnPluginCreated = callbackOnPluginCreated; + swig_callbackOnPluginDestroyed = callbackOnPluginDestroyed; +} + +void SwigDirector_ProxyPluginMgrCallback::swig_init_callbacks() { + swig_callbackOnPluginCreated = 0; + swig_callbackOnPluginDestroyed = 0; +} + +SwigDirector_ProxyAudioConsumerCallback::SwigDirector_ProxyAudioConsumerCallback() : ProxyAudioConsumerCallback(), Swig::Director() { + swig_init_callbacks(); +} + +SwigDirector_ProxyAudioConsumerCallback::~SwigDirector_ProxyAudioConsumerCallback() { + +} + + +int SwigDirector_ProxyAudioConsumerCallback::prepare(int ptime, int rate, int channels) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + int jptime ; + int jrate ; + int jchannels ; + + if (!swig_callbackprepare) { + return ProxyAudioConsumerCallback::prepare(ptime,rate,channels); + } else { + jptime = ptime; + jrate = rate; + jchannels = channels; + jresult = (int) swig_callbackprepare(jptime, jrate, jchannels); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyAudioConsumerCallback::start() { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + + if (!swig_callbackstart) { + return ProxyAudioConsumerCallback::start(); + } else { + jresult = (int) swig_callbackstart(); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyAudioConsumerCallback::pause() { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + + if (!swig_callbackpause) { + return ProxyAudioConsumerCallback::pause(); + } else { + jresult = (int) swig_callbackpause(); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyAudioConsumerCallback::stop() { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + + if (!swig_callbackstop) { + return ProxyAudioConsumerCallback::stop(); + } else { + jresult = (int) swig_callbackstop(); + c_result = (int)jresult; + } + return c_result; +} + +void SwigDirector_ProxyAudioConsumerCallback::swig_connect_director(SWIG_Callback0_t callbackprepare, SWIG_Callback1_t callbackstart, SWIG_Callback2_t callbackpause, SWIG_Callback3_t callbackstop) { + swig_callbackprepare = callbackprepare; + swig_callbackstart = callbackstart; + swig_callbackpause = callbackpause; + swig_callbackstop = callbackstop; +} + +void SwigDirector_ProxyAudioConsumerCallback::swig_init_callbacks() { + swig_callbackprepare = 0; + swig_callbackstart = 0; + swig_callbackpause = 0; + swig_callbackstop = 0; +} + +SwigDirector_ProxyVideoConsumerCallback::SwigDirector_ProxyVideoConsumerCallback() : ProxyVideoConsumerCallback(), Swig::Director() { + swig_init_callbacks(); +} + +SwigDirector_ProxyVideoConsumerCallback::~SwigDirector_ProxyVideoConsumerCallback() { + +} + + +int SwigDirector_ProxyVideoConsumerCallback::prepare(int nWidth, int nHeight, int nFps) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + int jnWidth ; + int jnHeight ; + int jnFps ; + + if (!swig_callbackprepare) { + return ProxyVideoConsumerCallback::prepare(nWidth,nHeight,nFps); + } else { + jnWidth = nWidth; + jnHeight = nHeight; + jnFps = nFps; + jresult = (int) swig_callbackprepare(jnWidth, jnHeight, jnFps); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyVideoConsumerCallback::consume(ProxyVideoFrame const *frame) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + void * jframe = 0 ; + + if (!swig_callbackconsume) { + return ProxyVideoConsumerCallback::consume(frame); + } else { + jframe = (void *) frame; + jresult = (int) swig_callbackconsume(jframe); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyVideoConsumerCallback::bufferCopied(unsigned int nCopiedSize, unsigned int nAvailableSize) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + unsigned int jnCopiedSize ; + unsigned int jnAvailableSize ; + + if (!swig_callbackbufferCopied) { + return ProxyVideoConsumerCallback::bufferCopied(nCopiedSize,nAvailableSize); + } else { + jnCopiedSize = nCopiedSize; + jnAvailableSize = nAvailableSize; + jresult = (int) swig_callbackbufferCopied(jnCopiedSize, jnAvailableSize); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyVideoConsumerCallback::start() { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + + if (!swig_callbackstart) { + return ProxyVideoConsumerCallback::start(); + } else { + jresult = (int) swig_callbackstart(); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyVideoConsumerCallback::pause() { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + + if (!swig_callbackpause) { + return ProxyVideoConsumerCallback::pause(); + } else { + jresult = (int) swig_callbackpause(); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyVideoConsumerCallback::stop() { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + + if (!swig_callbackstop) { + return ProxyVideoConsumerCallback::stop(); + } else { + jresult = (int) swig_callbackstop(); + c_result = (int)jresult; + } + return c_result; +} + +void SwigDirector_ProxyVideoConsumerCallback::swig_connect_director(SWIG_Callback0_t callbackprepare, SWIG_Callback1_t callbackconsume, SWIG_Callback2_t callbackbufferCopied, SWIG_Callback3_t callbackstart, SWIG_Callback4_t callbackpause, SWIG_Callback5_t callbackstop) { + swig_callbackprepare = callbackprepare; + swig_callbackconsume = callbackconsume; + swig_callbackbufferCopied = callbackbufferCopied; + swig_callbackstart = callbackstart; + swig_callbackpause = callbackpause; + swig_callbackstop = callbackstop; +} + +void SwigDirector_ProxyVideoConsumerCallback::swig_init_callbacks() { + swig_callbackprepare = 0; + swig_callbackconsume = 0; + swig_callbackbufferCopied = 0; + swig_callbackstart = 0; + swig_callbackpause = 0; + swig_callbackstop = 0; +} + +SwigDirector_ProxyAudioProducerCallback::SwigDirector_ProxyAudioProducerCallback() : ProxyAudioProducerCallback(), Swig::Director() { + swig_init_callbacks(); +} + +SwigDirector_ProxyAudioProducerCallback::~SwigDirector_ProxyAudioProducerCallback() { + +} + + +int SwigDirector_ProxyAudioProducerCallback::prepare(int ptime, int rate, int channels) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + int jptime ; + int jrate ; + int jchannels ; + + if (!swig_callbackprepare) { + return ProxyAudioProducerCallback::prepare(ptime,rate,channels); + } else { + jptime = ptime; + jrate = rate; + jchannels = channels; + jresult = (int) swig_callbackprepare(jptime, jrate, jchannels); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyAudioProducerCallback::start() { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + + if (!swig_callbackstart) { + return ProxyAudioProducerCallback::start(); + } else { + jresult = (int) swig_callbackstart(); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyAudioProducerCallback::pause() { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + + if (!swig_callbackpause) { + return ProxyAudioProducerCallback::pause(); + } else { + jresult = (int) swig_callbackpause(); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyAudioProducerCallback::stop() { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + + if (!swig_callbackstop) { + return ProxyAudioProducerCallback::stop(); + } else { + jresult = (int) swig_callbackstop(); + c_result = (int)jresult; + } + return c_result; +} + +void SwigDirector_ProxyAudioProducerCallback::swig_connect_director(SWIG_Callback0_t callbackprepare, SWIG_Callback1_t callbackstart, SWIG_Callback2_t callbackpause, SWIG_Callback3_t callbackstop) { + swig_callbackprepare = callbackprepare; + swig_callbackstart = callbackstart; + swig_callbackpause = callbackpause; + swig_callbackstop = callbackstop; +} + +void SwigDirector_ProxyAudioProducerCallback::swig_init_callbacks() { + swig_callbackprepare = 0; + swig_callbackstart = 0; + swig_callbackpause = 0; + swig_callbackstop = 0; +} + +SwigDirector_ProxyVideoProducerCallback::SwigDirector_ProxyVideoProducerCallback() : ProxyVideoProducerCallback(), Swig::Director() { + swig_init_callbacks(); +} + +SwigDirector_ProxyVideoProducerCallback::~SwigDirector_ProxyVideoProducerCallback() { + +} + + +int SwigDirector_ProxyVideoProducerCallback::prepare(int width, int height, int fps) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + int jwidth ; + int jheight ; + int jfps ; + + if (!swig_callbackprepare) { + return ProxyVideoProducerCallback::prepare(width,height,fps); + } else { + jwidth = width; + jheight = height; + jfps = fps; + jresult = (int) swig_callbackprepare(jwidth, jheight, jfps); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyVideoProducerCallback::start() { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + + if (!swig_callbackstart) { + return ProxyVideoProducerCallback::start(); + } else { + jresult = (int) swig_callbackstart(); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyVideoProducerCallback::pause() { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + + if (!swig_callbackpause) { + return ProxyVideoProducerCallback::pause(); + } else { + jresult = (int) swig_callbackpause(); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_ProxyVideoProducerCallback::stop() { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + + if (!swig_callbackstop) { + return ProxyVideoProducerCallback::stop(); + } else { + jresult = (int) swig_callbackstop(); + c_result = (int)jresult; + } + return c_result; +} + +void SwigDirector_ProxyVideoProducerCallback::swig_connect_director(SWIG_Callback0_t callbackprepare, SWIG_Callback1_t callbackstart, SWIG_Callback2_t callbackpause, SWIG_Callback3_t callbackstop) { + swig_callbackprepare = callbackprepare; + swig_callbackstart = callbackstart; + swig_callbackpause = callbackpause; + swig_callbackstop = callbackstop; +} + +void SwigDirector_ProxyVideoProducerCallback::swig_init_callbacks() { + swig_callbackprepare = 0; + swig_callbackstart = 0; + swig_callbackpause = 0; + swig_callbackstop = 0; +} + +SwigDirector_SipCallback::SwigDirector_SipCallback() : SipCallback(), Swig::Director() { + swig_init_callbacks(); +} + +SwigDirector_SipCallback::~SwigDirector_SipCallback() { + +} + + +int SwigDirector_SipCallback::OnDialogEvent(DialogEvent const *e) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + void * je = 0 ; + + if (!swig_callbackOnDialogEvent) { + return SipCallback::OnDialogEvent(e); + } else { + je = (void *) e; + jresult = (int) swig_callbackOnDialogEvent(je); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_SipCallback::OnStackEvent(StackEvent const *e) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + void * je = 0 ; + + if (!swig_callbackOnStackEvent) { + return SipCallback::OnStackEvent(e); + } else { + je = (void *) e; + jresult = (int) swig_callbackOnStackEvent(je); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_SipCallback::OnInviteEvent(InviteEvent const *e) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + void * je = 0 ; + + if (!swig_callbackOnInviteEvent) { + return SipCallback::OnInviteEvent(e); + } else { + je = (void *) e; + jresult = (int) swig_callbackOnInviteEvent(je); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_SipCallback::OnMessagingEvent(MessagingEvent const *e) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + void * je = 0 ; + + if (!swig_callbackOnMessagingEvent) { + return SipCallback::OnMessagingEvent(e); + } else { + je = (void *) e; + jresult = (int) swig_callbackOnMessagingEvent(je); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_SipCallback::OnInfoEvent(InfoEvent const *e) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + void * je = 0 ; + + if (!swig_callbackOnInfoEvent) { + return SipCallback::OnInfoEvent(e); + } else { + je = (void *) e; + jresult = (int) swig_callbackOnInfoEvent(je); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_SipCallback::OnOptionsEvent(OptionsEvent const *e) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + void * je = 0 ; + + if (!swig_callbackOnOptionsEvent) { + return SipCallback::OnOptionsEvent(e); + } else { + je = (void *) e; + jresult = (int) swig_callbackOnOptionsEvent(je); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_SipCallback::OnPublicationEvent(PublicationEvent const *e) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + void * je = 0 ; + + if (!swig_callbackOnPublicationEvent) { + return SipCallback::OnPublicationEvent(e); + } else { + je = (void *) e; + jresult = (int) swig_callbackOnPublicationEvent(je); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_SipCallback::OnRegistrationEvent(RegistrationEvent const *e) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + void * je = 0 ; + + if (!swig_callbackOnRegistrationEvent) { + return SipCallback::OnRegistrationEvent(e); + } else { + je = (void *) e; + jresult = (int) swig_callbackOnRegistrationEvent(je); + c_result = (int)jresult; + } + return c_result; +} + +int SwigDirector_SipCallback::OnSubscriptionEvent(SubscriptionEvent const *e) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + void * je = 0 ; + + if (!swig_callbackOnSubscriptionEvent) { + return SipCallback::OnSubscriptionEvent(e); + } else { + je = (void *) e; + jresult = (int) swig_callbackOnSubscriptionEvent(je); + c_result = (int)jresult; + } + return c_result; +} + +void SwigDirector_SipCallback::swig_connect_director(SWIG_Callback0_t callbackOnDialogEvent, SWIG_Callback1_t callbackOnStackEvent, SWIG_Callback2_t callbackOnInviteEvent, SWIG_Callback3_t callbackOnMessagingEvent, SWIG_Callback4_t callbackOnInfoEvent, SWIG_Callback5_t callbackOnOptionsEvent, SWIG_Callback6_t callbackOnPublicationEvent, SWIG_Callback7_t callbackOnRegistrationEvent, SWIG_Callback8_t callbackOnSubscriptionEvent) { + swig_callbackOnDialogEvent = callbackOnDialogEvent; + swig_callbackOnStackEvent = callbackOnStackEvent; + swig_callbackOnInviteEvent = callbackOnInviteEvent; + swig_callbackOnMessagingEvent = callbackOnMessagingEvent; + swig_callbackOnInfoEvent = callbackOnInfoEvent; + swig_callbackOnOptionsEvent = callbackOnOptionsEvent; + swig_callbackOnPublicationEvent = callbackOnPublicationEvent; + swig_callbackOnRegistrationEvent = callbackOnRegistrationEvent; + swig_callbackOnSubscriptionEvent = callbackOnSubscriptionEvent; +} + +void SwigDirector_SipCallback::swig_init_callbacks() { + swig_callbackOnDialogEvent = 0; + swig_callbackOnStackEvent = 0; + swig_callbackOnInviteEvent = 0; + swig_callbackOnMessagingEvent = 0; + swig_callbackOnInfoEvent = 0; + swig_callbackOnOptionsEvent = 0; + swig_callbackOnPublicationEvent = 0; + swig_callbackOnRegistrationEvent = 0; + swig_callbackOnSubscriptionEvent = 0; +} + +SwigDirector_XcapCallback::SwigDirector_XcapCallback() : XcapCallback(), Swig::Director() { + swig_init_callbacks(); +} + +SwigDirector_XcapCallback::~SwigDirector_XcapCallback() { + +} + + +int SwigDirector_XcapCallback::onEvent(XcapEvent const *e) const { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + void * je = 0 ; + + if (!swig_callbackonEvent) { + return XcapCallback::onEvent(e); + } else { + je = (void *) e; + jresult = (int) swig_callbackonEvent(je); + c_result = (int)jresult; + } + return c_result; +} + +void SwigDirector_XcapCallback::swig_connect_director(SWIG_Callback0_t callbackonEvent) { + swig_callbackonEvent = callbackonEvent; +} + +void SwigDirector_XcapCallback::swig_init_callbacks() { + swig_callbackonEvent = 0; +} + +SwigDirector_MsrpCallback::SwigDirector_MsrpCallback() : MsrpCallback(), Swig::Director() { + swig_init_callbacks(); +} + +SwigDirector_MsrpCallback::~SwigDirector_MsrpCallback() { + +} + + +int SwigDirector_MsrpCallback::OnEvent(MsrpEvent const *e) { + int c_result = SwigValueInit< int >() ; + int jresult = 0 ; + void * je = 0 ; + + if (!swig_callbackOnEvent) { + return MsrpCallback::OnEvent(e); + } else { + je = (void *) e; + jresult = (int) swig_callbackOnEvent(je); + c_result = (int)jresult; + } + return c_result; +} + +void SwigDirector_MsrpCallback::swig_connect_director(SWIG_Callback0_t callbackOnEvent) { + swig_callbackOnEvent = callbackOnEvent; +} + +void SwigDirector_MsrpCallback::swig_init_callbacks() { + swig_callbackOnEvent = 0; +} + + +#ifdef __cplusplus +extern "C" { +#endif + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_DDebugCallback() { + void * jresult ; + DDebugCallback *result = 0 ; + + result = (DDebugCallback *)new SwigDirector_DDebugCallback(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_DDebugCallback(void * jarg1) { + DDebugCallback *arg1 = (DDebugCallback *) 0 ; + + arg1 = (DDebugCallback *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugInfo(void * jarg1, char * jarg2) { + int jresult ; + DDebugCallback *arg1 = (DDebugCallback *) 0 ; + char *arg2 = (char *) 0 ; + int result; + + arg1 = (DDebugCallback *)jarg1; + arg2 = (char *)jarg2; + result = (int)(arg1)->OnDebugInfo((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugInfoSwigExplicitDDebugCallback(void * jarg1, char * jarg2) { + int jresult ; + DDebugCallback *arg1 = (DDebugCallback *) 0 ; + char *arg2 = (char *) 0 ; + int result; + + arg1 = (DDebugCallback *)jarg1; + arg2 = (char *)jarg2; + result = (int)(arg1)->DDebugCallback::OnDebugInfo((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugWarn(void * jarg1, char * jarg2) { + int jresult ; + DDebugCallback *arg1 = (DDebugCallback *) 0 ; + char *arg2 = (char *) 0 ; + int result; + + arg1 = (DDebugCallback *)jarg1; + arg2 = (char *)jarg2; + result = (int)(arg1)->OnDebugWarn((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugWarnSwigExplicitDDebugCallback(void * jarg1, char * jarg2) { + int jresult ; + DDebugCallback *arg1 = (DDebugCallback *) 0 ; + char *arg2 = (char *) 0 ; + int result; + + arg1 = (DDebugCallback *)jarg1; + arg2 = (char *)jarg2; + result = (int)(arg1)->DDebugCallback::OnDebugWarn((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugError(void * jarg1, char * jarg2) { + int jresult ; + DDebugCallback *arg1 = (DDebugCallback *) 0 ; + char *arg2 = (char *) 0 ; + int result; + + arg1 = (DDebugCallback *)jarg1; + arg2 = (char *)jarg2; + result = (int)(arg1)->OnDebugError((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugErrorSwigExplicitDDebugCallback(void * jarg1, char * jarg2) { + int jresult ; + DDebugCallback *arg1 = (DDebugCallback *) 0 ; + char *arg2 = (char *) 0 ; + int result; + + arg1 = (DDebugCallback *)jarg1; + arg2 = (char *)jarg2; + result = (int)(arg1)->DDebugCallback::OnDebugError((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugFatal(void * jarg1, char * jarg2) { + int jresult ; + DDebugCallback *arg1 = (DDebugCallback *) 0 ; + char *arg2 = (char *) 0 ; + int result; + + arg1 = (DDebugCallback *)jarg1; + arg2 = (char *)jarg2; + result = (int)(arg1)->OnDebugFatal((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_DDebugCallback_OnDebugFatalSwigExplicitDDebugCallback(void * jarg1, char * jarg2) { + int jresult ; + DDebugCallback *arg1 = (DDebugCallback *) 0 ; + char *arg2 = (char *) 0 ; + int result; + + arg1 = (DDebugCallback *)jarg1; + arg2 = (char *)jarg2; + result = (int)(arg1)->DDebugCallback::OnDebugFatal((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_DDebugCallback_director_connect(void *objarg, SwigDirector_DDebugCallback::SWIG_Callback0_t callback0, SwigDirector_DDebugCallback::SWIG_Callback1_t callback1, SwigDirector_DDebugCallback::SWIG_Callback2_t callback2, SwigDirector_DDebugCallback::SWIG_Callback3_t callback3) { + DDebugCallback *obj = (DDebugCallback *)objarg; + SwigDirector_DDebugCallback *director = dynamic_cast(obj); + if (director) { + director->swig_connect_director(callback0, callback1, callback2, callback3); + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_AudioResampler(unsigned int jarg1, unsigned int jarg2, unsigned int jarg3, unsigned int jarg4, unsigned int jarg5) { + void * jresult ; + uint32_t arg1 ; + uint32_t arg2 ; + uint32_t arg3 ; + uint32_t arg4 ; + uint32_t arg5 ; + AudioResampler *result = 0 ; + + arg1 = (uint32_t)jarg1; + arg2 = (uint32_t)jarg2; + arg3 = (uint32_t)jarg3; + arg4 = (uint32_t)jarg4; + arg5 = (uint32_t)jarg5; + result = (AudioResampler *)new AudioResampler(arg1,arg2,arg3,arg4,arg5); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_AudioResampler(void * jarg1) { + AudioResampler *arg1 = (AudioResampler *) 0 ; + + arg1 = (AudioResampler *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_AudioResampler_isValid(void * jarg1) { + unsigned int jresult ; + AudioResampler *arg1 = (AudioResampler *) 0 ; + bool result; + + arg1 = (AudioResampler *)jarg1; + result = (bool)(arg1)->isValid(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_AudioResampler_getOutputRequiredSizeInShort(void * jarg1) { + unsigned int jresult ; + AudioResampler *arg1 = (AudioResampler *) 0 ; + uint32_t result; + + arg1 = (AudioResampler *)jarg1; + result = (uint32_t)(arg1)->getOutputRequiredSizeInShort(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_AudioResampler_getInputRequiredSizeInShort(void * jarg1) { + unsigned int jresult ; + AudioResampler *arg1 = (AudioResampler *) 0 ; + uint32_t result; + + arg1 = (AudioResampler *)jarg1; + result = (uint32_t)(arg1)->getInputRequiredSizeInShort(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_AudioResampler_process(void * jarg1, void * jarg2, unsigned int jarg3, void * jarg4, unsigned int jarg5) { + unsigned int jresult ; + AudioResampler *arg1 = (AudioResampler *) 0 ; + void *arg2 = (void *) 0 ; + uint32_t arg3 ; + void *arg4 = (void *) 0 ; + uint32_t arg5 ; + uint32_t result; + + arg1 = (AudioResampler *)jarg1; + arg2 = jarg2; + arg3 = (uint32_t)jarg3; + arg4 = jarg4; + arg5 = (uint32_t)jarg5; + result = (uint32_t)(arg1)->process((void const *)arg2,arg3,arg4,arg5); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_ActionConfig() { + void * jresult ; + ActionConfig *result = 0 ; + + result = (ActionConfig *)new ActionConfig(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ActionConfig(void * jarg1) { + ActionConfig *arg1 = (ActionConfig *) 0 ; + + arg1 = (ActionConfig *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ActionConfig_addHeader(void * jarg1, char * jarg2, char * jarg3) { + unsigned int jresult ; + ActionConfig *arg1 = (ActionConfig *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + bool result; + + arg1 = (ActionConfig *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + result = (bool)(arg1)->addHeader((char const *)arg2,(char const *)arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ActionConfig_addPayload(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + ActionConfig *arg1 = (ActionConfig *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + bool result; + + arg1 = (ActionConfig *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (bool)(arg1)->addPayload((void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_ActionConfig_setResponseLine(void * jarg1, short jarg2, char * jarg3) { + void * jresult ; + ActionConfig *arg1 = (ActionConfig *) 0 ; + short arg2 ; + char *arg3 = (char *) 0 ; + ActionConfig *result = 0 ; + + arg1 = (ActionConfig *)jarg1; + arg2 = (short)jarg2; + arg3 = (char *)jarg3; + result = (ActionConfig *)(arg1)->setResponseLine(arg2,(char const *)arg3); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_ActionConfig_setMediaString(void * jarg1, int jarg2, char * jarg3, char * jarg4) { + void * jresult ; + ActionConfig *arg1 = (ActionConfig *) 0 ; + twrap_media_type_t arg2 ; + char *arg3 = (char *) 0 ; + char *arg4 = (char *) 0 ; + ActionConfig *result = 0 ; + + arg1 = (ActionConfig *)jarg1; + arg2 = (twrap_media_type_t)jarg2; + arg3 = (char *)jarg3; + arg4 = (char *)jarg4; + result = (ActionConfig *)(arg1)->setMediaString(arg2,(char const *)arg3,(char const *)arg4); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_ActionConfig_setMediaInt(void * jarg1, int jarg2, char * jarg3, int jarg4) { + void * jresult ; + ActionConfig *arg1 = (ActionConfig *) 0 ; + twrap_media_type_t arg2 ; + char *arg3 = (char *) 0 ; + int arg4 ; + ActionConfig *result = 0 ; + + arg1 = (ActionConfig *)jarg1; + arg2 = (twrap_media_type_t)jarg2; + arg3 = (char *)jarg3; + arg4 = (int)jarg4; + result = (ActionConfig *)(arg1)->setMediaInt(arg2,(char const *)arg3,arg4); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_MediaSessionMgr(void * jarg1) { + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + + arg1 = (MediaSessionMgr *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_sessionSetInt32(void * jarg1, int jarg2, char * jarg3, int jarg4) { + unsigned int jresult ; + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + char *arg3 = (char *) 0 ; + int32_t arg4 ; + bool result; + + arg1 = (MediaSessionMgr *)jarg1; + arg2 = (twrap_media_type_t)jarg2; + arg3 = (char *)jarg3; + arg4 = (int32_t)jarg4; + result = (bool)(arg1)->sessionSetInt32(arg2,(char const *)arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_MediaSessionMgr_sessionGetInt32(void * jarg1, int jarg2, char * jarg3) { + int jresult ; + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + char *arg3 = (char *) 0 ; + int32_t result; + + arg1 = (MediaSessionMgr *)jarg1; + arg2 = (twrap_media_type_t)jarg2; + arg3 = (char *)jarg3; + result = (int32_t)(arg1)->sessionGetInt32(arg2,(char const *)arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_consumerSetInt32(void * jarg1, int jarg2, char * jarg3, int jarg4) { + unsigned int jresult ; + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + char *arg3 = (char *) 0 ; + int32_t arg4 ; + bool result; + + arg1 = (MediaSessionMgr *)jarg1; + arg2 = (twrap_media_type_t)jarg2; + arg3 = (char *)jarg3; + arg4 = (int32_t)jarg4; + result = (bool)(arg1)->consumerSetInt32(arg2,(char const *)arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_consumerSetInt64(void * jarg1, int jarg2, char * jarg3, long long jarg4) { + unsigned int jresult ; + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + char *arg3 = (char *) 0 ; + int64_t arg4 ; + bool result; + + arg1 = (MediaSessionMgr *)jarg1; + arg2 = (twrap_media_type_t)jarg2; + arg3 = (char *)jarg3; + arg4 = (int64_t)jarg4; + result = (bool)(arg1)->consumerSetInt64(arg2,(char const *)arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_producerSetInt32(void * jarg1, int jarg2, char * jarg3, int jarg4) { + unsigned int jresult ; + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + char *arg3 = (char *) 0 ; + int32_t arg4 ; + bool result; + + arg1 = (MediaSessionMgr *)jarg1; + arg2 = (twrap_media_type_t)jarg2; + arg3 = (char *)jarg3; + arg4 = (int32_t)jarg4; + result = (bool)(arg1)->producerSetInt32(arg2,(char const *)arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_producerSetInt64(void * jarg1, int jarg2, char * jarg3, long long jarg4) { + unsigned int jresult ; + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + char *arg3 = (char *) 0 ; + int64_t arg4 ; + bool result; + + arg1 = (MediaSessionMgr *)jarg1; + arg2 = (twrap_media_type_t)jarg2; + arg3 = (char *)jarg3; + arg4 = (int64_t)jarg4; + result = (bool)(arg1)->producerSetInt64(arg2,(char const *)arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_MediaSessionMgr_findProxyPluginConsumer(void * jarg1, int jarg2) { + void * jresult ; + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + ProxyPlugin *result = 0 ; + + arg1 = (MediaSessionMgr *)jarg1; + arg2 = (twrap_media_type_t)jarg2; + result = (ProxyPlugin *)((MediaSessionMgr const *)arg1)->findProxyPluginConsumer(arg2); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_MediaSessionMgr_findProxyPluginProducer(void * jarg1, int jarg2) { + void * jresult ; + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + ProxyPlugin *result = 0 ; + + arg1 = (MediaSessionMgr *)jarg1; + arg2 = (twrap_media_type_t)jarg2; + result = (ProxyPlugin *)((MediaSessionMgr const *)arg1)->findProxyPluginProducer(arg2); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_MediaSessionMgr_getSessionId(void * jarg1, int jarg2) { + unsigned long long jresult ; + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + uint64_t result; + + arg1 = (MediaSessionMgr *)jarg1; + arg2 = (twrap_media_type_t)jarg2; + result = (uint64_t)((MediaSessionMgr const *)arg1)->getSessionId(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetBandwidthLevel(int jarg1) { + unsigned int jresult ; + tmedia_bandwidth_level_t arg1 ; + bool result; + + arg1 = (tmedia_bandwidth_level_t)jarg1; + result = (bool)MediaSessionMgr::defaultsSetBandwidthLevel(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetBandwidthLevel() { + int jresult ; + tmedia_bandwidth_level_t result; + + result = (tmedia_bandwidth_level_t)MediaSessionMgr::defaultsGetBandwidthLevel(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetJbMargin(unsigned int jarg1) { + unsigned int jresult ; + uint32_t arg1 ; + bool result; + + arg1 = (uint32_t)jarg1; + result = (bool)MediaSessionMgr::defaultsSetJbMargin(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetJbMaxLateRate(unsigned int jarg1) { + unsigned int jresult ; + uint32_t arg1 ; + bool result; + + arg1 = (uint32_t)jarg1; + result = (bool)MediaSessionMgr::defaultsSetJbMaxLateRate(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetEchoTail(unsigned int jarg1) { + unsigned int jresult ; + uint32_t arg1 ; + bool result; + + arg1 = (uint32_t)jarg1; + result = (bool)MediaSessionMgr::defaultsSetEchoTail(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetEchoTail() { + unsigned int jresult ; + uint32_t result; + + result = (uint32_t)MediaSessionMgr::defaultsGetEchoTail(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetEchoSkew(unsigned int jarg1) { + unsigned int jresult ; + uint32_t arg1 ; + bool result; + + arg1 = (uint32_t)jarg1; + result = (bool)MediaSessionMgr::defaultsSetEchoSkew(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetEchoSuppEnabled(unsigned int jarg1) { + unsigned int jresult ; + bool arg1 ; + bool result; + + arg1 = jarg1 ? true : false; + result = (bool)MediaSessionMgr::defaultsSetEchoSuppEnabled(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetEchoSuppEnabled() { + unsigned int jresult ; + bool result; + + result = (bool)MediaSessionMgr::defaultsGetEchoSuppEnabled(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetAgcEnabled(unsigned int jarg1) { + unsigned int jresult ; + bool arg1 ; + bool result; + + arg1 = jarg1 ? true : false; + result = (bool)MediaSessionMgr::defaultsSetAgcEnabled(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetAgcEnabled() { + unsigned int jresult ; + bool result; + + result = (bool)MediaSessionMgr::defaultsGetAgcEnabled(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetAgcLevel(float jarg1) { + unsigned int jresult ; + float arg1 ; + bool result; + + arg1 = (float)jarg1; + result = (bool)MediaSessionMgr::defaultsSetAgcLevel(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT float SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetAgcLevel() { + float jresult ; + float result; + + result = (float)MediaSessionMgr::defaultsGetAgcLevel(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetVadEnabled(unsigned int jarg1) { + unsigned int jresult ; + bool arg1 ; + bool result; + + arg1 = jarg1 ? true : false; + result = (bool)MediaSessionMgr::defaultsSetVadEnabled(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetGetVadEnabled() { + unsigned int jresult ; + bool result; + + result = (bool)MediaSessionMgr::defaultsGetGetVadEnabled(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetNoiseSuppEnabled(unsigned int jarg1) { + unsigned int jresult ; + bool arg1 ; + bool result; + + arg1 = jarg1 ? true : false; + result = (bool)MediaSessionMgr::defaultsSetNoiseSuppEnabled(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetNoiseSuppEnabled() { + unsigned int jresult ; + bool result; + + result = (bool)MediaSessionMgr::defaultsGetNoiseSuppEnabled(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetNoiseSuppLevel(int jarg1) { + unsigned int jresult ; + int32_t arg1 ; + bool result; + + arg1 = (int32_t)jarg1; + result = (bool)MediaSessionMgr::defaultsSetNoiseSuppLevel(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetNoiseSuppLevel() { + int jresult ; + int32_t result; + + result = (int32_t)MediaSessionMgr::defaultsGetNoiseSuppLevel(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSet100relEnabled(unsigned int jarg1) { + unsigned int jresult ; + bool arg1 ; + bool result; + + arg1 = jarg1 ? true : false; + result = (bool)MediaSessionMgr::defaultsSet100relEnabled(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGet100relEnabled() { + unsigned int jresult ; + bool result; + + result = (bool)MediaSessionMgr::defaultsGet100relEnabled(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetScreenSize(int jarg1, int jarg2) { + unsigned int jresult ; + int32_t arg1 ; + int32_t arg2 ; + bool result; + + arg1 = (int32_t)jarg1; + arg2 = (int32_t)jarg2; + result = (bool)MediaSessionMgr::defaultsSetScreenSize(arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetAudioGain(int jarg1, int jarg2) { + unsigned int jresult ; + int32_t arg1 ; + int32_t arg2 ; + bool result; + + arg1 = (int32_t)jarg1; + arg2 = (int32_t)jarg2; + result = (bool)MediaSessionMgr::defaultsSetAudioGain(arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetRtpPortRange(unsigned short jarg1, unsigned short jarg2) { + unsigned int jresult ; + uint16_t arg1 ; + uint16_t arg2 ; + bool result; + + arg1 = (uint16_t)jarg1; + arg2 = (uint16_t)jarg2; + result = (bool)MediaSessionMgr::defaultsSetRtpPortRange(arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetMediaType(int jarg1) { + unsigned int jresult ; + twrap_media_type_t arg1 ; + bool result; + + arg1 = (twrap_media_type_t)jarg1; + result = (bool)MediaSessionMgr::defaultsSetMediaType(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetVolume(int jarg1) { + unsigned int jresult ; + int32_t arg1 ; + bool result; + + arg1 = (int32_t)jarg1; + result = (bool)MediaSessionMgr::defaultsSetVolume(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsGetVolume() { + int jresult ; + int32_t result; + + result = (int32_t)MediaSessionMgr::defaultsGetVolume(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetInviteSessionTimers(int jarg1, char * jarg2) { + unsigned int jresult ; + int32_t arg1 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (int32_t)jarg1; + arg2 = (char *)jarg2; + result = (bool)MediaSessionMgr::defaultsSetInviteSessionTimers(arg1,(char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaSessionMgr_defaultsSetSRtpMode(int jarg1) { + unsigned int jresult ; + tmedia_srtp_mode_t arg1 ; + bool result; + + arg1 = (tmedia_srtp_mode_t)jarg1; + result = (bool)MediaSessionMgr::defaultsSetSRtpMode(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_MediaContent(void * jarg1) { + MediaContent *arg1 = (MediaContent *) 0 ; + + arg1 = (MediaContent *)jarg1; + delete arg1; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_MediaContent_getType(void * jarg1) { + char * jresult ; + MediaContent *arg1 = (MediaContent *) 0 ; + char *result = 0 ; + + arg1 = (MediaContent *)jarg1; + result = (char *)(arg1)->getType(); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaContent_getDataLength(void * jarg1) { + unsigned int jresult ; + MediaContent *arg1 = (MediaContent *) 0 ; + unsigned int result; + + arg1 = (MediaContent *)jarg1; + result = (unsigned int)(arg1)->getDataLength(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaContent_getData(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + MediaContent *arg1 = (MediaContent *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + unsigned int result; + + arg1 = (MediaContent *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (unsigned int)(arg1)->getData(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_MediaContent_parse__SWIG_0(void * jarg1, unsigned int jarg2, char * jarg3) { + void * jresult ; + void *arg1 = (void *) 0 ; + unsigned int arg2 ; + char *arg3 = (char *) 0 ; + MediaContent *result = 0 ; + + arg1 = jarg1; + arg2 = (unsigned int)jarg2; + arg3 = (char *)jarg3; + result = (MediaContent *)MediaContent::parse((void const *)arg1,arg2,(char const *)arg3); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_MediaContent_parse__SWIG_1(void * jarg1, unsigned int jarg2) { + void * jresult ; + void *arg1 = (void *) 0 ; + unsigned int arg2 ; + MediaContentCPIM *result = 0 ; + + arg1 = jarg1; + arg2 = (unsigned int)jarg2; + result = (MediaContentCPIM *)MediaContent::parse((void const *)arg1,arg2); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaContent_getPayloadLength(void * jarg1) { + unsigned int jresult ; + MediaContent *arg1 = (MediaContent *) 0 ; + unsigned int result; + + arg1 = (MediaContent *)jarg1; + result = (unsigned int)(arg1)->getPayloadLength(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaContent_getPayload(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + MediaContent *arg1 = (MediaContent *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + unsigned int result; + + arg1 = (MediaContent *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (unsigned int)(arg1)->getPayload(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_MediaContentCPIM(void * jarg1) { + MediaContentCPIM *arg1 = (MediaContentCPIM *) 0 ; + + arg1 = (MediaContentCPIM *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaContentCPIM_getPayloadLength(void * jarg1) { + unsigned int jresult ; + MediaContentCPIM *arg1 = (MediaContentCPIM *) 0 ; + unsigned int result; + + arg1 = (MediaContentCPIM *)jarg1; + result = (unsigned int)(arg1)->getPayloadLength(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MediaContentCPIM_getPayload(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + MediaContentCPIM *arg1 = (MediaContentCPIM *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + unsigned int result; + + arg1 = (MediaContentCPIM *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (unsigned int)(arg1)->getPayload(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_MediaContentCPIM_getHeaderValue(void * jarg1, char * jarg2) { + char * jresult ; + MediaContentCPIM *arg1 = (MediaContentCPIM *) 0 ; + char *arg2 = (char *) 0 ; + char *result = 0 ; + + arg1 = (MediaContentCPIM *)jarg1; + arg2 = (char *)jarg2; + result = (char *)(arg1)->getHeaderValue((char const *)arg2); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_SipUri__SWIG_0(char * jarg1, char * jarg2) { + void * jresult ; + char *arg1 = (char *) 0 ; + char *arg2 = (char *) 0 ; + SipUri *result = 0 ; + + arg1 = (char *)jarg1; + arg2 = (char *)jarg2; + result = (SipUri *)new SipUri((char const *)arg1,(char const *)arg2); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_SipUri__SWIG_1(char * jarg1) { + void * jresult ; + char *arg1 = (char *) 0 ; + SipUri *result = 0 ; + + arg1 = (char *)jarg1; + result = (SipUri *)new SipUri((char const *)arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipUri(void * jarg1) { + SipUri *arg1 = (SipUri *) 0 ; + + arg1 = (SipUri *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipUri_isValid__SWIG_0(char * jarg1) { + unsigned int jresult ; + char *arg1 = (char *) 0 ; + bool result; + + arg1 = (char *)jarg1; + result = (bool)SipUri::isValid((char const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipUri_isValid__SWIG_1(void * jarg1) { + unsigned int jresult ; + SipUri *arg1 = (SipUri *) 0 ; + bool result; + + arg1 = (SipUri *)jarg1; + result = (bool)(arg1)->isValid(); + jresult = result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipUri_getScheme(void * jarg1) { + char * jresult ; + SipUri *arg1 = (SipUri *) 0 ; + char *result = 0 ; + + arg1 = (SipUri *)jarg1; + result = (char *)(arg1)->getScheme(); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipUri_getHost(void * jarg1) { + char * jresult ; + SipUri *arg1 = (SipUri *) 0 ; + char *result = 0 ; + + arg1 = (SipUri *)jarg1; + result = (char *)(arg1)->getHost(); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT unsigned short SWIGSTDCALL CSharp_SipUri_getPort(void * jarg1) { + unsigned short jresult ; + SipUri *arg1 = (SipUri *) 0 ; + unsigned short result; + + arg1 = (SipUri *)jarg1; + result = (unsigned short)(arg1)->getPort(); + jresult = result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipUri_getUserName(void * jarg1) { + char * jresult ; + SipUri *arg1 = (SipUri *) 0 ; + char *result = 0 ; + + arg1 = (SipUri *)jarg1; + result = (char *)(arg1)->getUserName(); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipUri_getPassword(void * jarg1) { + char * jresult ; + SipUri *arg1 = (SipUri *) 0 ; + char *result = 0 ; + + arg1 = (SipUri *)jarg1; + result = (char *)(arg1)->getPassword(); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipUri_getDisplayName(void * jarg1) { + char * jresult ; + SipUri *arg1 = (SipUri *) 0 ; + char *result = 0 ; + + arg1 = (SipUri *)jarg1; + result = (char *)(arg1)->getDisplayName(); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipUri_getParamValue(void * jarg1, char * jarg2) { + char * jresult ; + SipUri *arg1 = (SipUri *) 0 ; + char *arg2 = (char *) 0 ; + char *result = 0 ; + + arg1 = (SipUri *)jarg1; + arg2 = (char *)jarg2; + result = (char *)(arg1)->getParamValue((char const *)arg2); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_SipUri_setDisplayName(void * jarg1, char * jarg2) { + SipUri *arg1 = (SipUri *) 0 ; + char *arg2 = (char *) 0 ; + + arg1 = (SipUri *)jarg1; + arg2 = (char *)jarg2; + (arg1)->setDisplayName((char const *)arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_SdpMessage() { + void * jresult ; + SdpMessage *result = 0 ; + + result = (SdpMessage *)new SdpMessage(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_SdpMessage(void * jarg1) { + SdpMessage *arg1 = (SdpMessage *) 0 ; + + arg1 = (SdpMessage *)jarg1; + delete arg1; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SdpMessage_getSdpHeaderValue__SWIG_0(void * jarg1, char * jarg2, char jarg3, unsigned int jarg4) { + char * jresult ; + SdpMessage *arg1 = (SdpMessage *) 0 ; + char *arg2 = (char *) 0 ; + char arg3 ; + unsigned int arg4 ; + char *result = 0 ; + + arg1 = (SdpMessage *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char)jarg3; + arg4 = (unsigned int)jarg4; + result = (char *)(arg1)->getSdpHeaderValue((char const *)arg2,arg3,arg4); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SdpMessage_getSdpHeaderValue__SWIG_1(void * jarg1, char * jarg2, char jarg3) { + char * jresult ; + SdpMessage *arg1 = (SdpMessage *) 0 ; + char *arg2 = (char *) 0 ; + char arg3 ; + char *result = 0 ; + + arg1 = (SdpMessage *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char)jarg3; + result = (char *)(arg1)->getSdpHeaderValue((char const *)arg2,arg3); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SdpMessage_getSdpHeaderAValue(void * jarg1, char * jarg2, char * jarg3) { + char * jresult ; + SdpMessage *arg1 = (SdpMessage *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *result = 0 ; + + arg1 = (SdpMessage *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + result = (char *)(arg1)->getSdpHeaderAValue((char const *)arg2,(char const *)arg3); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_SipMessage() { + void * jresult ; + SipMessage *result = 0 ; + + result = (SipMessage *)new SipMessage(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipMessage(void * jarg1) { + SipMessage *arg1 = (SipMessage *) 0 ; + + arg1 = (SipMessage *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipMessage_isResponse(void * jarg1) { + unsigned int jresult ; + SipMessage *arg1 = (SipMessage *) 0 ; + bool result; + + arg1 = (SipMessage *)jarg1; + result = (bool)(arg1)->isResponse(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipMessage_getRequestType(void * jarg1) { + int jresult ; + SipMessage *arg1 = (SipMessage *) 0 ; + tsip_request_type_t result; + + arg1 = (SipMessage *)jarg1; + result = (tsip_request_type_t)(arg1)->getRequestType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT short SWIGSTDCALL CSharp_SipMessage_getResponseCode(void * jarg1) { + short jresult ; + SipMessage *arg1 = (SipMessage *) 0 ; + short result; + + arg1 = (SipMessage *)jarg1; + result = (short)(arg1)->getResponseCode(); + jresult = result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipMessage_getSipHeaderValue__SWIG_0(void * jarg1, char * jarg2, unsigned int jarg3) { + char * jresult ; + SipMessage *arg1 = (SipMessage *) 0 ; + char *arg2 = (char *) 0 ; + unsigned int arg3 ; + char *result = 0 ; + + arg1 = (SipMessage *)jarg1; + arg2 = (char *)jarg2; + arg3 = (unsigned int)jarg3; + result = (char *)(arg1)->getSipHeaderValue((char const *)arg2,arg3); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipMessage_getSipHeaderValue__SWIG_1(void * jarg1, char * jarg2) { + char * jresult ; + SipMessage *arg1 = (SipMessage *) 0 ; + char *arg2 = (char *) 0 ; + char *result = 0 ; + + arg1 = (SipMessage *)jarg1; + arg2 = (char *)jarg2; + result = (char *)(arg1)->getSipHeaderValue((char const *)arg2); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipMessage_getSipHeaderParamValue__SWIG_0(void * jarg1, char * jarg2, char * jarg3, unsigned int jarg4) { + char * jresult ; + SipMessage *arg1 = (SipMessage *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + unsigned int arg4 ; + char *result = 0 ; + + arg1 = (SipMessage *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = (unsigned int)jarg4; + result = (char *)(arg1)->getSipHeaderParamValue((char const *)arg2,(char const *)arg3,arg4); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipMessage_getSipHeaderParamValue__SWIG_1(void * jarg1, char * jarg2, char * jarg3) { + char * jresult ; + SipMessage *arg1 = (SipMessage *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *result = 0 ; + + arg1 = (SipMessage *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + result = (char *)(arg1)->getSipHeaderParamValue((char const *)arg2,(char const *)arg3); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipMessage_getSipContentLength(void * jarg1) { + unsigned int jresult ; + SipMessage *arg1 = (SipMessage *) 0 ; + unsigned int result; + + arg1 = (SipMessage *)jarg1; + result = (unsigned int)(arg1)->getSipContentLength(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipMessage_getSipContent(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + SipMessage *arg1 = (SipMessage *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + unsigned int result; + + arg1 = (SipMessage *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (unsigned int)(arg1)->getSipContent(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_SipMessage_getSdpMessage(void * jarg1) { + void * jresult ; + SipMessage *arg1 = (SipMessage *) 0 ; + SdpMessage *result = 0 ; + + arg1 = (SipMessage *)jarg1; + result = (SdpMessage *)(arg1)->getSdpMessage(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipEvent(void * jarg1) { + SipEvent *arg1 = (SipEvent *) 0 ; + + arg1 = (SipEvent *)jarg1; + delete arg1; +} + + +SWIGEXPORT short SWIGSTDCALL CSharp_SipEvent_getCode(void * jarg1) { + short jresult ; + SipEvent *arg1 = (SipEvent *) 0 ; + short result; + + arg1 = (SipEvent *)jarg1; + result = (short)((SipEvent const *)arg1)->getCode(); + jresult = result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipEvent_getPhrase(void * jarg1) { + char * jresult ; + SipEvent *arg1 = (SipEvent *) 0 ; + char *result = 0 ; + + arg1 = (SipEvent *)jarg1; + result = (char *)((SipEvent const *)arg1)->getPhrase(); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_SipEvent_getBaseSession(void * jarg1) { + void * jresult ; + SipEvent *arg1 = (SipEvent *) 0 ; + SipSession *result = 0 ; + + arg1 = (SipEvent *)jarg1; + result = (SipSession *)((SipEvent const *)arg1)->getBaseSession(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_SipEvent_getSipMessage(void * jarg1) { + void * jresult ; + SipEvent *arg1 = (SipEvent *) 0 ; + SipMessage *result = 0 ; + + arg1 = (SipEvent *)jarg1; + result = (SipMessage *)((SipEvent const *)arg1)->getSipMessage(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_DialogEvent(void * jarg1) { + DialogEvent *arg1 = (DialogEvent *) 0 ; + + arg1 = (DialogEvent *)jarg1; + delete arg1; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_StackEvent(void * jarg1) { + StackEvent *arg1 = (StackEvent *) 0 ; + + arg1 = (StackEvent *)jarg1; + delete arg1; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_InviteEvent(void * jarg1) { + InviteEvent *arg1 = (InviteEvent *) 0 ; + + arg1 = (InviteEvent *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_InviteEvent_getType(void * jarg1) { + int jresult ; + InviteEvent *arg1 = (InviteEvent *) 0 ; + tsip_invite_event_type_t result; + + arg1 = (InviteEvent *)jarg1; + result = (tsip_invite_event_type_t)((InviteEvent const *)arg1)->getType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_InviteEvent_getMediaType(void * jarg1) { + int jresult ; + InviteEvent *arg1 = (InviteEvent *) 0 ; + twrap_media_type_t result; + + arg1 = (InviteEvent *)jarg1; + result = (twrap_media_type_t)((InviteEvent const *)arg1)->getMediaType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_InviteEvent_getSession(void * jarg1) { + void * jresult ; + InviteEvent *arg1 = (InviteEvent *) 0 ; + InviteSession *result = 0 ; + + arg1 = (InviteEvent *)jarg1; + result = (InviteSession *)((InviteEvent const *)arg1)->getSession(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_InviteEvent_takeCallSessionOwnership(void * jarg1) { + void * jresult ; + InviteEvent *arg1 = (InviteEvent *) 0 ; + CallSession *result = 0 ; + + arg1 = (InviteEvent *)jarg1; + result = (CallSession *)((InviteEvent const *)arg1)->takeCallSessionOwnership(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_InviteEvent_takeMsrpSessionOwnership(void * jarg1) { + void * jresult ; + InviteEvent *arg1 = (InviteEvent *) 0 ; + MsrpSession *result = 0 ; + + arg1 = (InviteEvent *)jarg1; + result = (MsrpSession *)((InviteEvent const *)arg1)->takeMsrpSessionOwnership(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_MessagingEvent(void * jarg1) { + MessagingEvent *arg1 = (MessagingEvent *) 0 ; + + arg1 = (MessagingEvent *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_MessagingEvent_getType(void * jarg1) { + int jresult ; + MessagingEvent *arg1 = (MessagingEvent *) 0 ; + tsip_message_event_type_t result; + + arg1 = (MessagingEvent *)jarg1; + result = (tsip_message_event_type_t)((MessagingEvent const *)arg1)->getType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_MessagingEvent_getSession(void * jarg1) { + void * jresult ; + MessagingEvent *arg1 = (MessagingEvent *) 0 ; + MessagingSession *result = 0 ; + + arg1 = (MessagingEvent *)jarg1; + result = (MessagingSession *)((MessagingEvent const *)arg1)->getSession(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_MessagingEvent_takeSessionOwnership(void * jarg1) { + void * jresult ; + MessagingEvent *arg1 = (MessagingEvent *) 0 ; + MessagingSession *result = 0 ; + + arg1 = (MessagingEvent *)jarg1; + result = (MessagingSession *)((MessagingEvent const *)arg1)->takeSessionOwnership(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_InfoEvent(void * jarg1) { + InfoEvent *arg1 = (InfoEvent *) 0 ; + + arg1 = (InfoEvent *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_InfoEvent_getType(void * jarg1) { + int jresult ; + InfoEvent *arg1 = (InfoEvent *) 0 ; + tsip_info_event_type_t result; + + arg1 = (InfoEvent *)jarg1; + result = (tsip_info_event_type_t)((InfoEvent const *)arg1)->getType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_InfoEvent_getSession(void * jarg1) { + void * jresult ; + InfoEvent *arg1 = (InfoEvent *) 0 ; + InfoSession *result = 0 ; + + arg1 = (InfoEvent *)jarg1; + result = (InfoSession *)((InfoEvent const *)arg1)->getSession(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_InfoEvent_takeSessionOwnership(void * jarg1) { + void * jresult ; + InfoEvent *arg1 = (InfoEvent *) 0 ; + InfoSession *result = 0 ; + + arg1 = (InfoEvent *)jarg1; + result = (InfoSession *)((InfoEvent const *)arg1)->takeSessionOwnership(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_OptionsEvent(void * jarg1) { + OptionsEvent *arg1 = (OptionsEvent *) 0 ; + + arg1 = (OptionsEvent *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_OptionsEvent_getType(void * jarg1) { + int jresult ; + OptionsEvent *arg1 = (OptionsEvent *) 0 ; + tsip_options_event_type_t result; + + arg1 = (OptionsEvent *)jarg1; + result = (tsip_options_event_type_t)((OptionsEvent const *)arg1)->getType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_OptionsEvent_getSession(void * jarg1) { + void * jresult ; + OptionsEvent *arg1 = (OptionsEvent *) 0 ; + OptionsSession *result = 0 ; + + arg1 = (OptionsEvent *)jarg1; + result = (OptionsSession *)((OptionsEvent const *)arg1)->getSession(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_OptionsEvent_takeSessionOwnership(void * jarg1) { + void * jresult ; + OptionsEvent *arg1 = (OptionsEvent *) 0 ; + OptionsSession *result = 0 ; + + arg1 = (OptionsEvent *)jarg1; + result = (OptionsSession *)((OptionsEvent const *)arg1)->takeSessionOwnership(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_PublicationEvent(void * jarg1) { + PublicationEvent *arg1 = (PublicationEvent *) 0 ; + + arg1 = (PublicationEvent *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_PublicationEvent_getType(void * jarg1) { + int jresult ; + PublicationEvent *arg1 = (PublicationEvent *) 0 ; + tsip_publish_event_type_t result; + + arg1 = (PublicationEvent *)jarg1; + result = (tsip_publish_event_type_t)((PublicationEvent const *)arg1)->getType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_PublicationEvent_getSession(void * jarg1) { + void * jresult ; + PublicationEvent *arg1 = (PublicationEvent *) 0 ; + PublicationSession *result = 0 ; + + arg1 = (PublicationEvent *)jarg1; + result = (PublicationSession *)((PublicationEvent const *)arg1)->getSession(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_RegistrationEvent(void * jarg1) { + RegistrationEvent *arg1 = (RegistrationEvent *) 0 ; + + arg1 = (RegistrationEvent *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_RegistrationEvent_getType(void * jarg1) { + int jresult ; + RegistrationEvent *arg1 = (RegistrationEvent *) 0 ; + tsip_register_event_type_t result; + + arg1 = (RegistrationEvent *)jarg1; + result = (tsip_register_event_type_t)((RegistrationEvent const *)arg1)->getType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_RegistrationEvent_getSession(void * jarg1) { + void * jresult ; + RegistrationEvent *arg1 = (RegistrationEvent *) 0 ; + RegistrationSession *result = 0 ; + + arg1 = (RegistrationEvent *)jarg1; + result = (RegistrationSession *)((RegistrationEvent const *)arg1)->getSession(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_RegistrationEvent_takeSessionOwnership(void * jarg1) { + void * jresult ; + RegistrationEvent *arg1 = (RegistrationEvent *) 0 ; + RegistrationSession *result = 0 ; + + arg1 = (RegistrationEvent *)jarg1; + result = (RegistrationSession *)((RegistrationEvent const *)arg1)->takeSessionOwnership(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_SubscriptionEvent(void * jarg1) { + SubscriptionEvent *arg1 = (SubscriptionEvent *) 0 ; + + arg1 = (SubscriptionEvent *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SubscriptionEvent_getType(void * jarg1) { + int jresult ; + SubscriptionEvent *arg1 = (SubscriptionEvent *) 0 ; + tsip_subscribe_event_type_t result; + + arg1 = (SubscriptionEvent *)jarg1; + result = (tsip_subscribe_event_type_t)((SubscriptionEvent const *)arg1)->getType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_SubscriptionEvent_getSession(void * jarg1) { + void * jresult ; + SubscriptionEvent *arg1 = (SubscriptionEvent *) 0 ; + SubscriptionSession *result = 0 ; + + arg1 = (SubscriptionEvent *)jarg1; + result = (SubscriptionSession *)((SubscriptionEvent const *)arg1)->getSession(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_SipSession(void * jarg1) { + void * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + SipSession *result = 0 ; + + arg1 = (SipStack *)jarg1; + result = (SipSession *)new SipSession(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipSession(void * jarg1) { + SipSession *arg1 = (SipSession *) 0 ; + + arg1 = (SipSession *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_haveOwnership(void * jarg1) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + bool result; + + arg1 = (SipSession *)jarg1; + result = (bool)(arg1)->haveOwnership(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_addHeader(void * jarg1, char * jarg2, char * jarg3) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + bool result; + + arg1 = (SipSession *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + result = (bool)(arg1)->addHeader((char const *)arg2,(char const *)arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_removeHeader(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipSession *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->removeHeader((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_addCaps__SWIG_0(void * jarg1, char * jarg2, char * jarg3) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + bool result; + + arg1 = (SipSession *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + result = (bool)(arg1)->addCaps((char const *)arg2,(char const *)arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_addCaps__SWIG_1(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipSession *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->addCaps((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_removeCaps(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipSession *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->removeCaps((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setExpires(void * jarg1, unsigned int jarg2) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + unsigned int arg2 ; + bool result; + + arg1 = (SipSession *)jarg1; + arg2 = (unsigned int)jarg2; + result = (bool)(arg1)->setExpires(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setFromUri__SWIG_0(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipSession *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->setFromUri((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setFromUri__SWIG_1(void * jarg1, void * jarg2) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + SipUri *arg2 = (SipUri *) 0 ; + bool result; + + arg1 = (SipSession *)jarg1; + arg2 = (SipUri *)jarg2; + result = (bool)(arg1)->setFromUri((SipUri const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setToUri__SWIG_0(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipSession *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->setToUri((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setToUri__SWIG_1(void * jarg1, void * jarg2) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + SipUri *arg2 = (SipUri *) 0 ; + bool result; + + arg1 = (SipSession *)jarg1; + arg2 = (SipUri *)jarg2; + result = (bool)(arg1)->setToUri((SipUri const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setSilentHangup(void * jarg1, unsigned int jarg2) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + bool arg2 ; + bool result; + + arg1 = (SipSession *)jarg1; + arg2 = jarg2 ? true : false; + result = (bool)(arg1)->setSilentHangup(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_addSigCompCompartment(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipSession *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->addSigCompCompartment((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_removeSigCompCompartment(void * jarg1) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + bool result; + + arg1 = (SipSession *)jarg1; + result = (bool)(arg1)->removeSigCompCompartment(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_getId(void * jarg1) { + unsigned int jresult ; + SipSession *arg1 = (SipSession *) 0 ; + unsigned int result; + + arg1 = (SipSession *)jarg1; + result = (unsigned int)((SipSession const *)arg1)->getId(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_InviteSession(void * jarg1) { + void * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + InviteSession *result = 0 ; + + arg1 = (SipStack *)jarg1; + result = (InviteSession *)new InviteSession(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_InviteSession(void * jarg1) { + InviteSession *arg1 = (InviteSession *) 0 ; + + arg1 = (InviteSession *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_accept__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + InviteSession *arg1 = (InviteSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (InviteSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->accept(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_accept__SWIG_1(void * jarg1) { + unsigned int jresult ; + InviteSession *arg1 = (InviteSession *) 0 ; + bool result; + + arg1 = (InviteSession *)jarg1; + result = (bool)(arg1)->accept(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_hangup__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + InviteSession *arg1 = (InviteSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (InviteSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->hangup(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_hangup__SWIG_1(void * jarg1) { + unsigned int jresult ; + InviteSession *arg1 = (InviteSession *) 0 ; + bool result; + + arg1 = (InviteSession *)jarg1; + result = (bool)(arg1)->hangup(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_reject__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + InviteSession *arg1 = (InviteSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (InviteSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->reject(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_reject__SWIG_1(void * jarg1) { + unsigned int jresult ; + InviteSession *arg1 = (InviteSession *) 0 ; + bool result; + + arg1 = (InviteSession *)jarg1; + result = (bool)(arg1)->reject(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_sendInfo__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3, void * jarg4) { + unsigned int jresult ; + InviteSession *arg1 = (InviteSession *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + ActionConfig *arg4 = (ActionConfig *) 0 ; + bool result; + + arg1 = (InviteSession *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + arg4 = (ActionConfig *)jarg4; + result = (bool)(arg1)->sendInfo((void const *)arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InviteSession_sendInfo__SWIG_1(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + InviteSession *arg1 = (InviteSession *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + bool result; + + arg1 = (InviteSession *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (bool)(arg1)->sendInfo((void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_InviteSession_getMediaMgr(void * jarg1) { + void * jresult ; + InviteSession *arg1 = (InviteSession *) 0 ; + MediaSessionMgr *result = 0 ; + + arg1 = (InviteSession *)jarg1; + result = (MediaSessionMgr *)(arg1)->getMediaMgr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_CallSession(void * jarg1) { + void * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + CallSession *result = 0 ; + + arg1 = (SipStack *)jarg1; + result = (CallSession *)new CallSession(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_CallSession(void * jarg1) { + CallSession *arg1 = (CallSession *) 0 ; + + arg1 = (CallSession *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudio__SWIG_0(void * jarg1, char * jarg2, void * jarg3) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + char *arg2 = (char *) 0 ; + ActionConfig *arg3 = (ActionConfig *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (char *)jarg2; + arg3 = (ActionConfig *)jarg3; + result = (bool)(arg1)->callAudio((char const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudio__SWIG_1(void * jarg1, char * jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->callAudio((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudio__SWIG_2(void * jarg1, void * jarg2, void * jarg3) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + SipUri *arg2 = (SipUri *) 0 ; + ActionConfig *arg3 = (ActionConfig *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (SipUri *)jarg2; + arg3 = (ActionConfig *)jarg3; + result = (bool)(arg1)->callAudio((SipUri const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudio__SWIG_3(void * jarg1, void * jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + SipUri *arg2 = (SipUri *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (SipUri *)jarg2; + result = (bool)(arg1)->callAudio((SipUri const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudioVideo__SWIG_0(void * jarg1, char * jarg2, void * jarg3) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + char *arg2 = (char *) 0 ; + ActionConfig *arg3 = (ActionConfig *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (char *)jarg2; + arg3 = (ActionConfig *)jarg3; + result = (bool)(arg1)->callAudioVideo((char const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudioVideo__SWIG_1(void * jarg1, char * jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->callAudioVideo((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudioVideo__SWIG_2(void * jarg1, void * jarg2, void * jarg3) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + SipUri *arg2 = (SipUri *) 0 ; + ActionConfig *arg3 = (ActionConfig *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (SipUri *)jarg2; + arg3 = (ActionConfig *)jarg3; + result = (bool)(arg1)->callAudioVideo((SipUri const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callAudioVideo__SWIG_3(void * jarg1, void * jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + SipUri *arg2 = (SipUri *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (SipUri *)jarg2; + result = (bool)(arg1)->callAudioVideo((SipUri const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callVideo__SWIG_0(void * jarg1, char * jarg2, void * jarg3) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + char *arg2 = (char *) 0 ; + ActionConfig *arg3 = (ActionConfig *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (char *)jarg2; + arg3 = (ActionConfig *)jarg3; + result = (bool)(arg1)->callVideo((char const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callVideo__SWIG_1(void * jarg1, char * jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->callVideo((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callVideo__SWIG_2(void * jarg1, void * jarg2, void * jarg3) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + SipUri *arg2 = (SipUri *) 0 ; + ActionConfig *arg3 = (ActionConfig *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (SipUri *)jarg2; + arg3 = (ActionConfig *)jarg3; + result = (bool)(arg1)->callVideo((SipUri const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_callVideo__SWIG_3(void * jarg1, void * jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + SipUri *arg2 = (SipUri *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (SipUri *)jarg2; + result = (bool)(arg1)->callVideo((SipUri const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_setSessionTimer(void * jarg1, unsigned int jarg2, char * jarg3) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + unsigned int arg2 ; + char *arg3 = (char *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (unsigned int)jarg2; + arg3 = (char *)jarg3; + result = (bool)(arg1)->setSessionTimer(arg2,(char const *)arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_set100rel(void * jarg1, unsigned int jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + bool arg2 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = jarg2 ? true : false; + result = (bool)(arg1)->set100rel(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_setQoS(void * jarg1, int jarg2, int jarg3) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + tmedia_qos_stype_t arg2 ; + tmedia_qos_strength_t arg3 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (tmedia_qos_stype_t)jarg2; + arg3 = (tmedia_qos_strength_t)jarg3; + result = (bool)(arg1)->setQoS(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_hold__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->hold(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_hold__SWIG_1(void * jarg1) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + result = (bool)(arg1)->hold(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_resume__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->resume(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_resume__SWIG_1(void * jarg1) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + result = (bool)(arg1)->resume(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_transfer__SWIG_0(void * jarg1, char * jarg2, void * jarg3) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + char *arg2 = (char *) 0 ; + ActionConfig *arg3 = (ActionConfig *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (char *)jarg2; + arg3 = (ActionConfig *)jarg3; + result = (bool)(arg1)->transfer((char const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_transfer__SWIG_1(void * jarg1, char * jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->transfer((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_acceptTransfer__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->acceptTransfer(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_acceptTransfer__SWIG_1(void * jarg1) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + result = (bool)(arg1)->acceptTransfer(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_rejectTransfer__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->rejectTransfer(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_rejectTransfer__SWIG_1(void * jarg1) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + bool result; + + arg1 = (CallSession *)jarg1; + result = (bool)(arg1)->rejectTransfer(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_sendDTMF(void * jarg1, int jarg2) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + int arg2 ; + bool result; + + arg1 = (CallSession *)jarg1; + arg2 = (int)jarg2; + result = (bool)(arg1)->sendDTMF(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_CallSession_getSessionTransferId(void * jarg1) { + unsigned int jresult ; + CallSession *arg1 = (CallSession *) 0 ; + unsigned int result; + + arg1 = (CallSession *)jarg1; + result = (unsigned int)(arg1)->getSessionTransferId(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_MsrpSession(void * jarg1, void * jarg2) { + void * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + MsrpCallback *arg2 = (MsrpCallback *) 0 ; + MsrpSession *result = 0 ; + + arg1 = (SipStack *)jarg1; + arg2 = (MsrpCallback *)jarg2; + result = (MsrpSession *)new MsrpSession(arg1,arg2); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_MsrpSession(void * jarg1) { + MsrpSession *arg1 = (MsrpSession *) 0 ; + + arg1 = (MsrpSession *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_setCallback(void * jarg1, void * jarg2) { + unsigned int jresult ; + MsrpSession *arg1 = (MsrpSession *) 0 ; + MsrpCallback *arg2 = (MsrpCallback *) 0 ; + bool result; + + arg1 = (MsrpSession *)jarg1; + arg2 = (MsrpCallback *)jarg2; + result = (bool)(arg1)->setCallback(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_callMsrp__SWIG_0(void * jarg1, char * jarg2, void * jarg3) { + unsigned int jresult ; + MsrpSession *arg1 = (MsrpSession *) 0 ; + char *arg2 = (char *) 0 ; + ActionConfig *arg3 = (ActionConfig *) 0 ; + bool result; + + arg1 = (MsrpSession *)jarg1; + arg2 = (char *)jarg2; + arg3 = (ActionConfig *)jarg3; + result = (bool)(arg1)->callMsrp((char const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_callMsrp__SWIG_1(void * jarg1, char * jarg2) { + unsigned int jresult ; + MsrpSession *arg1 = (MsrpSession *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (MsrpSession *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->callMsrp((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_callMsrp__SWIG_2(void * jarg1, void * jarg2, void * jarg3) { + unsigned int jresult ; + MsrpSession *arg1 = (MsrpSession *) 0 ; + SipUri *arg2 = (SipUri *) 0 ; + ActionConfig *arg3 = (ActionConfig *) 0 ; + bool result; + + arg1 = (MsrpSession *)jarg1; + arg2 = (SipUri *)jarg2; + arg3 = (ActionConfig *)jarg3; + result = (bool)(arg1)->callMsrp((SipUri const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_callMsrp__SWIG_3(void * jarg1, void * jarg2) { + unsigned int jresult ; + MsrpSession *arg1 = (MsrpSession *) 0 ; + SipUri *arg2 = (SipUri *) 0 ; + bool result; + + arg1 = (MsrpSession *)jarg1; + arg2 = (SipUri *)jarg2; + result = (bool)(arg1)->callMsrp((SipUri const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_sendMessage__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3, void * jarg4) { + unsigned int jresult ; + MsrpSession *arg1 = (MsrpSession *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + ActionConfig *arg4 = (ActionConfig *) 0 ; + bool result; + + arg1 = (MsrpSession *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + arg4 = (ActionConfig *)jarg4; + result = (bool)(arg1)->sendMessage((void const *)arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_sendMessage__SWIG_1(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + MsrpSession *arg1 = (MsrpSession *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + bool result; + + arg1 = (MsrpSession *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (bool)(arg1)->sendMessage((void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_sendFile__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + MsrpSession *arg1 = (MsrpSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (MsrpSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->sendFile(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpSession_sendFile__SWIG_1(void * jarg1) { + unsigned int jresult ; + MsrpSession *arg1 = (MsrpSession *) 0 ; + bool result; + + arg1 = (MsrpSession *)jarg1; + result = (bool)(arg1)->sendFile(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_MessagingSession(void * jarg1) { + void * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + MessagingSession *result = 0 ; + + arg1 = (SipStack *)jarg1; + result = (MessagingSession *)new MessagingSession(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_MessagingSession(void * jarg1) { + MessagingSession *arg1 = (MessagingSession *) 0 ; + + arg1 = (MessagingSession *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MessagingSession_send__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3, void * jarg4) { + unsigned int jresult ; + MessagingSession *arg1 = (MessagingSession *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + ActionConfig *arg4 = (ActionConfig *) 0 ; + bool result; + + arg1 = (MessagingSession *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + arg4 = (ActionConfig *)jarg4; + result = (bool)(arg1)->send((void const *)arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MessagingSession_send__SWIG_1(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + MessagingSession *arg1 = (MessagingSession *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + bool result; + + arg1 = (MessagingSession *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (bool)(arg1)->send((void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MessagingSession_accept__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + MessagingSession *arg1 = (MessagingSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (MessagingSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->accept(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MessagingSession_accept__SWIG_1(void * jarg1) { + unsigned int jresult ; + MessagingSession *arg1 = (MessagingSession *) 0 ; + bool result; + + arg1 = (MessagingSession *)jarg1; + result = (bool)(arg1)->accept(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MessagingSession_reject__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + MessagingSession *arg1 = (MessagingSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (MessagingSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->reject(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MessagingSession_reject__SWIG_1(void * jarg1) { + unsigned int jresult ; + MessagingSession *arg1 = (MessagingSession *) 0 ; + bool result; + + arg1 = (MessagingSession *)jarg1; + result = (bool)(arg1)->reject(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_InfoSession(void * jarg1) { + void * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + InfoSession *result = 0 ; + + arg1 = (SipStack *)jarg1; + result = (InfoSession *)new InfoSession(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_InfoSession(void * jarg1) { + InfoSession *arg1 = (InfoSession *) 0 ; + + arg1 = (InfoSession *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InfoSession_send__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3, void * jarg4) { + unsigned int jresult ; + InfoSession *arg1 = (InfoSession *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + ActionConfig *arg4 = (ActionConfig *) 0 ; + bool result; + + arg1 = (InfoSession *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + arg4 = (ActionConfig *)jarg4; + result = (bool)(arg1)->send((void const *)arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InfoSession_send__SWIG_1(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + InfoSession *arg1 = (InfoSession *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + bool result; + + arg1 = (InfoSession *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (bool)(arg1)->send((void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InfoSession_accept__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + InfoSession *arg1 = (InfoSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (InfoSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->accept(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InfoSession_accept__SWIG_1(void * jarg1) { + unsigned int jresult ; + InfoSession *arg1 = (InfoSession *) 0 ; + bool result; + + arg1 = (InfoSession *)jarg1; + result = (bool)(arg1)->accept(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InfoSession_reject__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + InfoSession *arg1 = (InfoSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (InfoSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->reject(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_InfoSession_reject__SWIG_1(void * jarg1) { + unsigned int jresult ; + InfoSession *arg1 = (InfoSession *) 0 ; + bool result; + + arg1 = (InfoSession *)jarg1; + result = (bool)(arg1)->reject(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_OptionsSession(void * jarg1) { + void * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + OptionsSession *result = 0 ; + + arg1 = (SipStack *)jarg1; + result = (OptionsSession *)new OptionsSession(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_OptionsSession(void * jarg1) { + OptionsSession *arg1 = (OptionsSession *) 0 ; + + arg1 = (OptionsSession *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_OptionsSession_send__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + OptionsSession *arg1 = (OptionsSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (OptionsSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->send(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_OptionsSession_send__SWIG_1(void * jarg1) { + unsigned int jresult ; + OptionsSession *arg1 = (OptionsSession *) 0 ; + bool result; + + arg1 = (OptionsSession *)jarg1; + result = (bool)(arg1)->send(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_OptionsSession_accept__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + OptionsSession *arg1 = (OptionsSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (OptionsSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->accept(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_OptionsSession_accept__SWIG_1(void * jarg1) { + unsigned int jresult ; + OptionsSession *arg1 = (OptionsSession *) 0 ; + bool result; + + arg1 = (OptionsSession *)jarg1; + result = (bool)(arg1)->accept(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_OptionsSession_reject__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + OptionsSession *arg1 = (OptionsSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (OptionsSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->reject(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_OptionsSession_reject__SWIG_1(void * jarg1) { + unsigned int jresult ; + OptionsSession *arg1 = (OptionsSession *) 0 ; + bool result; + + arg1 = (OptionsSession *)jarg1; + result = (bool)(arg1)->reject(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_PublicationSession(void * jarg1) { + void * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + PublicationSession *result = 0 ; + + arg1 = (SipStack *)jarg1; + result = (PublicationSession *)new PublicationSession(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_PublicationSession(void * jarg1) { + PublicationSession *arg1 = (PublicationSession *) 0 ; + + arg1 = (PublicationSession *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PublicationSession_publish__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3, void * jarg4) { + unsigned int jresult ; + PublicationSession *arg1 = (PublicationSession *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + ActionConfig *arg4 = (ActionConfig *) 0 ; + bool result; + + arg1 = (PublicationSession *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + arg4 = (ActionConfig *)jarg4; + result = (bool)(arg1)->publish((void const *)arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PublicationSession_publish__SWIG_1(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + PublicationSession *arg1 = (PublicationSession *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + bool result; + + arg1 = (PublicationSession *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (bool)(arg1)->publish((void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PublicationSession_unPublish__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + PublicationSession *arg1 = (PublicationSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (PublicationSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->unPublish(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PublicationSession_unPublish__SWIG_1(void * jarg1) { + unsigned int jresult ; + PublicationSession *arg1 = (PublicationSession *) 0 ; + bool result; + + arg1 = (PublicationSession *)jarg1; + result = (bool)(arg1)->unPublish(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_RegistrationSession(void * jarg1) { + void * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + RegistrationSession *result = 0 ; + + arg1 = (SipStack *)jarg1; + result = (RegistrationSession *)new RegistrationSession(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_RegistrationSession(void * jarg1) { + RegistrationSession *arg1 = (RegistrationSession *) 0 ; + + arg1 = (RegistrationSession *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_register___SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + RegistrationSession *arg1 = (RegistrationSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (RegistrationSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->register_(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_register___SWIG_1(void * jarg1) { + unsigned int jresult ; + RegistrationSession *arg1 = (RegistrationSession *) 0 ; + bool result; + + arg1 = (RegistrationSession *)jarg1; + result = (bool)(arg1)->register_(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_unRegister__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + RegistrationSession *arg1 = (RegistrationSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (RegistrationSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->unRegister(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_unRegister__SWIG_1(void * jarg1) { + unsigned int jresult ; + RegistrationSession *arg1 = (RegistrationSession *) 0 ; + bool result; + + arg1 = (RegistrationSession *)jarg1; + result = (bool)(arg1)->unRegister(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_accept__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + RegistrationSession *arg1 = (RegistrationSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (RegistrationSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->accept(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_accept__SWIG_1(void * jarg1) { + unsigned int jresult ; + RegistrationSession *arg1 = (RegistrationSession *) 0 ; + bool result; + + arg1 = (RegistrationSession *)jarg1; + result = (bool)(arg1)->accept(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_reject__SWIG_0(void * jarg1, void * jarg2) { + unsigned int jresult ; + RegistrationSession *arg1 = (RegistrationSession *) 0 ; + ActionConfig *arg2 = (ActionConfig *) 0 ; + bool result; + + arg1 = (RegistrationSession *)jarg1; + arg2 = (ActionConfig *)jarg2; + result = (bool)(arg1)->reject(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RegistrationSession_reject__SWIG_1(void * jarg1) { + unsigned int jresult ; + RegistrationSession *arg1 = (RegistrationSession *) 0 ; + bool result; + + arg1 = (RegistrationSession *)jarg1; + result = (bool)(arg1)->reject(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_SubscriptionSession(void * jarg1) { + void * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + SubscriptionSession *result = 0 ; + + arg1 = (SipStack *)jarg1; + result = (SubscriptionSession *)new SubscriptionSession(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_SubscriptionSession(void * jarg1) { + SubscriptionSession *arg1 = (SubscriptionSession *) 0 ; + + arg1 = (SubscriptionSession *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SubscriptionSession_subscribe(void * jarg1) { + unsigned int jresult ; + SubscriptionSession *arg1 = (SubscriptionSession *) 0 ; + bool result; + + arg1 = (SubscriptionSession *)jarg1; + result = (bool)(arg1)->subscribe(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SubscriptionSession_unSubscribe(void * jarg1) { + unsigned int jresult ; + SubscriptionSession *arg1 = (SubscriptionSession *) 0 ; + bool result; + + arg1 = (SubscriptionSession *)jarg1; + result = (bool)(arg1)->unSubscribe(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyPluginMgr(void * jarg1) { + ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; + + arg1 = (ProxyPluginMgr *)jarg1; + delete arg1; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_createInstance(void * jarg1) { + void * jresult ; + ProxyPluginMgrCallback *arg1 = (ProxyPluginMgrCallback *) 0 ; + ProxyPluginMgr *result = 0 ; + + arg1 = (ProxyPluginMgrCallback *)jarg1; + result = (ProxyPluginMgr *)ProxyPluginMgr::createInstance(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_getInstance() { + void * jresult ; + ProxyPluginMgr *result = 0 ; + + result = (ProxyPluginMgr *)ProxyPluginMgr::getInstance(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_findPlugin(void * jarg1, unsigned long long jarg2) { + void * jresult ; + ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; + uint64_t arg2 ; + ProxyPlugin *result = 0 ; + + arg1 = (ProxyPluginMgr *)jarg1; + arg2 = (uint64_t)jarg2; + result = (ProxyPlugin *)(arg1)->findPlugin(arg2); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_findAudioConsumer(void * jarg1, unsigned long long jarg2) { + void * jresult ; + ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; + uint64_t arg2 ; + ProxyAudioConsumer *result = 0 ; + + arg1 = (ProxyPluginMgr *)jarg1; + arg2 = (uint64_t)jarg2; + result = (ProxyAudioConsumer *)(arg1)->findAudioConsumer(arg2); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_findVideoConsumer(void * jarg1, unsigned long long jarg2) { + void * jresult ; + ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; + uint64_t arg2 ; + ProxyVideoConsumer *result = 0 ; + + arg1 = (ProxyPluginMgr *)jarg1; + arg2 = (uint64_t)jarg2; + result = (ProxyVideoConsumer *)(arg1)->findVideoConsumer(arg2); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_findAudioProducer(void * jarg1, unsigned long long jarg2) { + void * jresult ; + ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; + uint64_t arg2 ; + ProxyAudioProducer *result = 0 ; + + arg1 = (ProxyPluginMgr *)jarg1; + arg2 = (uint64_t)jarg2; + result = (ProxyAudioProducer *)(arg1)->findAudioProducer(arg2); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_ProxyPluginMgr_findVideoProducer(void * jarg1, unsigned long long jarg2) { + void * jresult ; + ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; + uint64_t arg2 ; + ProxyVideoProducer *result = 0 ; + + arg1 = (ProxyPluginMgr *)jarg1; + arg2 = (uint64_t)jarg2; + result = (ProxyVideoProducer *)(arg1)->findVideoProducer(arg2); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_ProxyPluginMgrCallback() { + void * jresult ; + ProxyPluginMgrCallback *result = 0 ; + + result = (ProxyPluginMgrCallback *)new SwigDirector_ProxyPluginMgrCallback(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyPluginMgrCallback(void * jarg1) { + ProxyPluginMgrCallback *arg1 = (ProxyPluginMgrCallback *) 0 ; + + arg1 = (ProxyPluginMgrCallback *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyPluginMgrCallback_OnPluginCreated(void * jarg1, unsigned long long jarg2, int jarg3) { + int jresult ; + ProxyPluginMgrCallback *arg1 = (ProxyPluginMgrCallback *) 0 ; + uint64_t arg2 ; + enum twrap_proxy_plugin_type_e arg3 ; + int result; + + arg1 = (ProxyPluginMgrCallback *)jarg1; + arg2 = (uint64_t)jarg2; + arg3 = (enum twrap_proxy_plugin_type_e)jarg3; + result = (int)(arg1)->OnPluginCreated(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyPluginMgrCallback_OnPluginCreatedSwigExplicitProxyPluginMgrCallback(void * jarg1, unsigned long long jarg2, int jarg3) { + int jresult ; + ProxyPluginMgrCallback *arg1 = (ProxyPluginMgrCallback *) 0 ; + uint64_t arg2 ; + enum twrap_proxy_plugin_type_e arg3 ; + int result; + + arg1 = (ProxyPluginMgrCallback *)jarg1; + arg2 = (uint64_t)jarg2; + arg3 = (enum twrap_proxy_plugin_type_e)jarg3; + result = (int)(arg1)->ProxyPluginMgrCallback::OnPluginCreated(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyPluginMgrCallback_OnPluginDestroyed(void * jarg1, unsigned long long jarg2, int jarg3) { + int jresult ; + ProxyPluginMgrCallback *arg1 = (ProxyPluginMgrCallback *) 0 ; + uint64_t arg2 ; + enum twrap_proxy_plugin_type_e arg3 ; + int result; + + arg1 = (ProxyPluginMgrCallback *)jarg1; + arg2 = (uint64_t)jarg2; + arg3 = (enum twrap_proxy_plugin_type_e)jarg3; + result = (int)(arg1)->OnPluginDestroyed(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyPluginMgrCallback_OnPluginDestroyedSwigExplicitProxyPluginMgrCallback(void * jarg1, unsigned long long jarg2, int jarg3) { + int jresult ; + ProxyPluginMgrCallback *arg1 = (ProxyPluginMgrCallback *) 0 ; + uint64_t arg2 ; + enum twrap_proxy_plugin_type_e arg3 ; + int result; + + arg1 = (ProxyPluginMgrCallback *)jarg1; + arg2 = (uint64_t)jarg2; + arg3 = (enum twrap_proxy_plugin_type_e)jarg3; + result = (int)(arg1)->ProxyPluginMgrCallback::OnPluginDestroyed(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ProxyPluginMgrCallback_director_connect(void *objarg, SwigDirector_ProxyPluginMgrCallback::SWIG_Callback0_t callback0, SwigDirector_ProxyPluginMgrCallback::SWIG_Callback1_t callback1) { + ProxyPluginMgrCallback *obj = (ProxyPluginMgrCallback *)objarg; + SwigDirector_ProxyPluginMgrCallback *director = dynamic_cast(obj); + if (director) { + director->swig_connect_director(callback0, callback1); + } +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyPlugin(void * jarg1) { + ProxyPlugin *arg1 = (ProxyPlugin *) 0 ; + + arg1 = (ProxyPlugin *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyPlugin_getType(void * jarg1) { + int jresult ; + ProxyPlugin *arg1 = (ProxyPlugin *) 0 ; + twrap_proxy_plugin_type_t result; + + arg1 = (ProxyPlugin *)jarg1; + result = (twrap_proxy_plugin_type_t)((ProxyPlugin const *)arg1)->getType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_ProxyPlugin_getId(void * jarg1) { + unsigned long long jresult ; + ProxyPlugin *arg1 = (ProxyPlugin *) 0 ; + uint64_t result; + + arg1 = (ProxyPlugin *)jarg1; + result = (uint64_t)((ProxyPlugin const *)arg1)->getId(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_ProxyAudioConsumerCallback() { + void * jresult ; + ProxyAudioConsumerCallback *result = 0 ; + + result = (ProxyAudioConsumerCallback *)new SwigDirector_ProxyAudioConsumerCallback(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyAudioConsumerCallback(void * jarg1) { + ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; + + arg1 = (ProxyAudioConsumerCallback *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_prepare(void * jarg1, int jarg2, int jarg3, int jarg4) { + int jresult ; + ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; + int arg2 ; + int arg3 ; + int arg4 ; + int result; + + arg1 = (ProxyAudioConsumerCallback *)jarg1; + arg2 = (int)jarg2; + arg3 = (int)jarg3; + arg4 = (int)jarg4; + result = (int)(arg1)->prepare(arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_prepareSwigExplicitProxyAudioConsumerCallback(void * jarg1, int jarg2, int jarg3, int jarg4) { + int jresult ; + ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; + int arg2 ; + int arg3 ; + int arg4 ; + int result; + + arg1 = (ProxyAudioConsumerCallback *)jarg1; + arg2 = (int)jarg2; + arg3 = (int)jarg3; + arg4 = (int)jarg4; + result = (int)(arg1)->ProxyAudioConsumerCallback::prepare(arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_start(void * jarg1) { + int jresult ; + ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; + int result; + + arg1 = (ProxyAudioConsumerCallback *)jarg1; + result = (int)(arg1)->start(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_startSwigExplicitProxyAudioConsumerCallback(void * jarg1) { + int jresult ; + ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; + int result; + + arg1 = (ProxyAudioConsumerCallback *)jarg1; + result = (int)(arg1)->ProxyAudioConsumerCallback::start(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_pause(void * jarg1) { + int jresult ; + ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; + int result; + + arg1 = (ProxyAudioConsumerCallback *)jarg1; + result = (int)(arg1)->pause(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_pauseSwigExplicitProxyAudioConsumerCallback(void * jarg1) { + int jresult ; + ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; + int result; + + arg1 = (ProxyAudioConsumerCallback *)jarg1; + result = (int)(arg1)->ProxyAudioConsumerCallback::pause(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_stop(void * jarg1) { + int jresult ; + ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; + int result; + + arg1 = (ProxyAudioConsumerCallback *)jarg1; + result = (int)(arg1)->stop(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_stopSwigExplicitProxyAudioConsumerCallback(void * jarg1) { + int jresult ; + ProxyAudioConsumerCallback *arg1 = (ProxyAudioConsumerCallback *) 0 ; + int result; + + arg1 = (ProxyAudioConsumerCallback *)jarg1; + result = (int)(arg1)->ProxyAudioConsumerCallback::stop(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ProxyAudioConsumerCallback_director_connect(void *objarg, SwigDirector_ProxyAudioConsumerCallback::SWIG_Callback0_t callback0, SwigDirector_ProxyAudioConsumerCallback::SWIG_Callback1_t callback1, SwigDirector_ProxyAudioConsumerCallback::SWIG_Callback2_t callback2, SwigDirector_ProxyAudioConsumerCallback::SWIG_Callback3_t callback3) { + ProxyAudioConsumerCallback *obj = (ProxyAudioConsumerCallback *)objarg; + SwigDirector_ProxyAudioConsumerCallback *director = dynamic_cast(obj); + if (director) { + director->swig_connect_director(callback0, callback1, callback2, callback3); + } +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyAudioConsumer(void * jarg1) { + ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; + + arg1 = (ProxyAudioConsumer *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_queryForResampler(void * jarg1, unsigned short jarg2, unsigned short jarg3, unsigned short jarg4, unsigned short jarg5, unsigned short jarg6) { + unsigned int jresult ; + ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; + uint16_t arg2 ; + uint16_t arg3 ; + uint16_t arg4 ; + uint16_t arg5 ; + uint16_t arg6 ; + bool result; + + arg1 = (ProxyAudioConsumer *)jarg1; + arg2 = (uint16_t)jarg2; + arg3 = (uint16_t)jarg3; + arg4 = (uint16_t)jarg4; + arg5 = (uint16_t)jarg5; + arg6 = (uint16_t)jarg6; + result = (bool)(arg1)->queryForResampler(arg2,arg3,arg4,arg5,arg6); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_setPullBuffer(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + bool result; + + arg1 = (ProxyAudioConsumer *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (bool)(arg1)->setPullBuffer((void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_pull__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + unsigned int result; + + arg1 = (ProxyAudioConsumer *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (unsigned int)(arg1)->pull(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_pull__SWIG_1(void * jarg1, void * jarg2) { + unsigned int jresult ; + ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int result; + + arg1 = (ProxyAudioConsumer *)jarg1; + arg2 = jarg2; + result = (unsigned int)(arg1)->pull(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_pull__SWIG_2(void * jarg1) { + unsigned int jresult ; + ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; + unsigned int result; + + arg1 = (ProxyAudioConsumer *)jarg1; + result = (unsigned int)(arg1)->pull(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_setGain(void * jarg1, unsigned int jarg2) { + unsigned int jresult ; + ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; + unsigned int arg2 ; + bool result; + + arg1 = (ProxyAudioConsumer *)jarg1; + arg2 = (unsigned int)jarg2; + result = (bool)(arg1)->setGain(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_getGain(void * jarg1) { + unsigned int jresult ; + ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; + unsigned int result; + + arg1 = (ProxyAudioConsumer *)jarg1; + result = (unsigned int)(arg1)->getGain(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_reset(void * jarg1) { + unsigned int jresult ; + ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; + bool result; + + arg1 = (ProxyAudioConsumer *)jarg1; + result = (bool)(arg1)->reset(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ProxyAudioConsumer_setCallback(void * jarg1, void * jarg2) { + ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; + ProxyAudioConsumerCallback *arg2 = (ProxyAudioConsumerCallback *) 0 ; + + arg1 = (ProxyAudioConsumer *)jarg1; + arg2 = (ProxyAudioConsumerCallback *)jarg2; + (arg1)->setCallback(arg2); +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_ProxyAudioConsumer_getMediaSessionId(void * jarg1) { + unsigned long long jresult ; + ProxyAudioConsumer *arg1 = (ProxyAudioConsumer *) 0 ; + uint64_t result; + + arg1 = (ProxyAudioConsumer *)jarg1; + result = (uint64_t)(arg1)->getMediaSessionId(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioConsumer_registerPlugin() { + unsigned int jresult ; + bool result; + + result = (bool)ProxyAudioConsumer::registerPlugin(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_ProxyVideoConsumerCallback() { + void * jresult ; + ProxyVideoConsumerCallback *result = 0 ; + + result = (ProxyVideoConsumerCallback *)new SwigDirector_ProxyVideoConsumerCallback(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyVideoConsumerCallback(void * jarg1) { + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_prepare(void * jarg1, int jarg2, int jarg3, int jarg4) { + int jresult ; + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + int arg2 ; + int arg3 ; + int arg4 ; + int result; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + arg2 = (int)jarg2; + arg3 = (int)jarg3; + arg4 = (int)jarg4; + result = (int)(arg1)->prepare(arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_prepareSwigExplicitProxyVideoConsumerCallback(void * jarg1, int jarg2, int jarg3, int jarg4) { + int jresult ; + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + int arg2 ; + int arg3 ; + int arg4 ; + int result; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + arg2 = (int)jarg2; + arg3 = (int)jarg3; + arg4 = (int)jarg4; + result = (int)(arg1)->ProxyVideoConsumerCallback::prepare(arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_consume(void * jarg1, void * jarg2) { + int jresult ; + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + ProxyVideoFrame *arg2 = (ProxyVideoFrame *) 0 ; + int result; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + arg2 = (ProxyVideoFrame *)jarg2; + result = (int)(arg1)->consume((ProxyVideoFrame const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_consumeSwigExplicitProxyVideoConsumerCallback(void * jarg1, void * jarg2) { + int jresult ; + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + ProxyVideoFrame *arg2 = (ProxyVideoFrame *) 0 ; + int result; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + arg2 = (ProxyVideoFrame *)jarg2; + result = (int)(arg1)->ProxyVideoConsumerCallback::consume((ProxyVideoFrame const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_bufferCopied(void * jarg1, unsigned int jarg2, unsigned int jarg3) { + int jresult ; + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + unsigned int arg2 ; + unsigned int arg3 ; + int result; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + arg2 = (unsigned int)jarg2; + arg3 = (unsigned int)jarg3; + result = (int)(arg1)->bufferCopied(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_bufferCopiedSwigExplicitProxyVideoConsumerCallback(void * jarg1, unsigned int jarg2, unsigned int jarg3) { + int jresult ; + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + unsigned int arg2 ; + unsigned int arg3 ; + int result; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + arg2 = (unsigned int)jarg2; + arg3 = (unsigned int)jarg3; + result = (int)(arg1)->ProxyVideoConsumerCallback::bufferCopied(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_start(void * jarg1) { + int jresult ; + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + int result; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + result = (int)(arg1)->start(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_startSwigExplicitProxyVideoConsumerCallback(void * jarg1) { + int jresult ; + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + int result; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + result = (int)(arg1)->ProxyVideoConsumerCallback::start(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_pause(void * jarg1) { + int jresult ; + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + int result; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + result = (int)(arg1)->pause(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_pauseSwigExplicitProxyVideoConsumerCallback(void * jarg1) { + int jresult ; + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + int result; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + result = (int)(arg1)->ProxyVideoConsumerCallback::pause(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_stop(void * jarg1) { + int jresult ; + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + int result; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + result = (int)(arg1)->stop(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_stopSwigExplicitProxyVideoConsumerCallback(void * jarg1) { + int jresult ; + ProxyVideoConsumerCallback *arg1 = (ProxyVideoConsumerCallback *) 0 ; + int result; + + arg1 = (ProxyVideoConsumerCallback *)jarg1; + result = (int)(arg1)->ProxyVideoConsumerCallback::stop(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoConsumerCallback_director_connect(void *objarg, SwigDirector_ProxyVideoConsumerCallback::SWIG_Callback0_t callback0, SwigDirector_ProxyVideoConsumerCallback::SWIG_Callback1_t callback1, SwigDirector_ProxyVideoConsumerCallback::SWIG_Callback2_t callback2, SwigDirector_ProxyVideoConsumerCallback::SWIG_Callback3_t callback3, SwigDirector_ProxyVideoConsumerCallback::SWIG_Callback4_t callback4, SwigDirector_ProxyVideoConsumerCallback::SWIG_Callback5_t callback5) { + ProxyVideoConsumerCallback *obj = (ProxyVideoConsumerCallback *)objarg; + SwigDirector_ProxyVideoConsumerCallback *director = dynamic_cast(obj); + if (director) { + director->swig_connect_director(callback0, callback1, callback2, callback3, callback4, callback5); + } +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyVideoConsumer(void * jarg1) { + ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; + + arg1 = (ProxyVideoConsumer *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_setDisplaySize(void * jarg1, unsigned int jarg2, unsigned int jarg3) { + unsigned int jresult ; + ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; + unsigned int arg2 ; + unsigned int arg3 ; + bool result; + + arg1 = (ProxyVideoConsumer *)jarg1; + arg2 = (unsigned int)jarg2; + arg3 = (unsigned int)jarg3; + result = (bool)(arg1)->setDisplaySize(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_getDisplayWidth(void * jarg1) { + unsigned int jresult ; + ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; + unsigned int result; + + arg1 = (ProxyVideoConsumer *)jarg1; + result = (unsigned int)(arg1)->getDisplayWidth(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_getDisplayHeight(void * jarg1) { + unsigned int jresult ; + ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; + unsigned int result; + + arg1 = (ProxyVideoConsumer *)jarg1; + result = (unsigned int)(arg1)->getDisplayHeight(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoConsumer_setCallback(void * jarg1, void * jarg2) { + ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; + ProxyVideoConsumerCallback *arg2 = (ProxyVideoConsumerCallback *) 0 ; + + arg1 = (ProxyVideoConsumer *)jarg1; + arg2 = (ProxyVideoConsumerCallback *)jarg2; + (arg1)->setCallback(arg2); +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_setAutoResizeDisplay(void * jarg1, unsigned int jarg2) { + unsigned int jresult ; + ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; + bool arg2 ; + bool result; + + arg1 = (ProxyVideoConsumer *)jarg1; + arg2 = jarg2 ? true : false; + result = (bool)(arg1)->setAutoResizeDisplay(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_getAutoResizeDisplay(void * jarg1) { + unsigned int jresult ; + ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; + bool result; + + arg1 = (ProxyVideoConsumer *)jarg1; + result = (bool)((ProxyVideoConsumer const *)arg1)->getAutoResizeDisplay(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_setConsumeBuffer(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + bool result; + + arg1 = (ProxyVideoConsumer *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (bool)(arg1)->setConsumeBuffer((void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_pull(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + unsigned int result; + + arg1 = (ProxyVideoConsumer *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (unsigned int)(arg1)->pull(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_reset(void * jarg1) { + unsigned int jresult ; + ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; + bool result; + + arg1 = (ProxyVideoConsumer *)jarg1; + result = (bool)(arg1)->reset(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_ProxyVideoConsumer_getMediaSessionId(void * jarg1) { + unsigned long long jresult ; + ProxyVideoConsumer *arg1 = (ProxyVideoConsumer *) 0 ; + uint64_t result; + + arg1 = (ProxyVideoConsumer *)jarg1; + result = (uint64_t)(arg1)->getMediaSessionId(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoConsumer_registerPlugin() { + unsigned int jresult ; + bool result; + + result = (bool)ProxyVideoConsumer::registerPlugin(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoConsumer_setDefaultChroma(int jarg1) { + tmedia_chroma_t arg1 ; + + arg1 = (tmedia_chroma_t)jarg1; + ProxyVideoConsumer::setDefaultChroma(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoConsumer_setDefaultAutoResizeDisplay(unsigned int jarg1) { + bool arg1 ; + + arg1 = jarg1 ? true : false; + ProxyVideoConsumer::setDefaultAutoResizeDisplay(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyVideoFrame(void * jarg1) { + ProxyVideoFrame *arg1 = (ProxyVideoFrame *) 0 ; + + arg1 = (ProxyVideoFrame *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoFrame_getSize(void * jarg1) { + unsigned int jresult ; + ProxyVideoFrame *arg1 = (ProxyVideoFrame *) 0 ; + unsigned int result; + + arg1 = (ProxyVideoFrame *)jarg1; + result = (unsigned int)(arg1)->getSize(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoFrame_getContent(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + ProxyVideoFrame *arg1 = (ProxyVideoFrame *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + unsigned int result; + + arg1 = (ProxyVideoFrame *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (unsigned int)(arg1)->getContent(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_ProxyAudioProducerCallback() { + void * jresult ; + ProxyAudioProducerCallback *result = 0 ; + + result = (ProxyAudioProducerCallback *)new SwigDirector_ProxyAudioProducerCallback(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyAudioProducerCallback(void * jarg1) { + ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; + + arg1 = (ProxyAudioProducerCallback *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_prepare(void * jarg1, int jarg2, int jarg3, int jarg4) { + int jresult ; + ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; + int arg2 ; + int arg3 ; + int arg4 ; + int result; + + arg1 = (ProxyAudioProducerCallback *)jarg1; + arg2 = (int)jarg2; + arg3 = (int)jarg3; + arg4 = (int)jarg4; + result = (int)(arg1)->prepare(arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_prepareSwigExplicitProxyAudioProducerCallback(void * jarg1, int jarg2, int jarg3, int jarg4) { + int jresult ; + ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; + int arg2 ; + int arg3 ; + int arg4 ; + int result; + + arg1 = (ProxyAudioProducerCallback *)jarg1; + arg2 = (int)jarg2; + arg3 = (int)jarg3; + arg4 = (int)jarg4; + result = (int)(arg1)->ProxyAudioProducerCallback::prepare(arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_start(void * jarg1) { + int jresult ; + ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; + int result; + + arg1 = (ProxyAudioProducerCallback *)jarg1; + result = (int)(arg1)->start(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_startSwigExplicitProxyAudioProducerCallback(void * jarg1) { + int jresult ; + ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; + int result; + + arg1 = (ProxyAudioProducerCallback *)jarg1; + result = (int)(arg1)->ProxyAudioProducerCallback::start(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_pause(void * jarg1) { + int jresult ; + ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; + int result; + + arg1 = (ProxyAudioProducerCallback *)jarg1; + result = (int)(arg1)->pause(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_pauseSwigExplicitProxyAudioProducerCallback(void * jarg1) { + int jresult ; + ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; + int result; + + arg1 = (ProxyAudioProducerCallback *)jarg1; + result = (int)(arg1)->ProxyAudioProducerCallback::pause(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_stop(void * jarg1) { + int jresult ; + ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; + int result; + + arg1 = (ProxyAudioProducerCallback *)jarg1; + result = (int)(arg1)->stop(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducerCallback_stopSwigExplicitProxyAudioProducerCallback(void * jarg1) { + int jresult ; + ProxyAudioProducerCallback *arg1 = (ProxyAudioProducerCallback *) 0 ; + int result; + + arg1 = (ProxyAudioProducerCallback *)jarg1; + result = (int)(arg1)->ProxyAudioProducerCallback::stop(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ProxyAudioProducerCallback_director_connect(void *objarg, SwigDirector_ProxyAudioProducerCallback::SWIG_Callback0_t callback0, SwigDirector_ProxyAudioProducerCallback::SWIG_Callback1_t callback1, SwigDirector_ProxyAudioProducerCallback::SWIG_Callback2_t callback2, SwigDirector_ProxyAudioProducerCallback::SWIG_Callback3_t callback3) { + ProxyAudioProducerCallback *obj = (ProxyAudioProducerCallback *)objarg; + SwigDirector_ProxyAudioProducerCallback *director = dynamic_cast(obj); + if (director) { + director->swig_connect_director(callback0, callback1, callback2, callback3); + } +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyAudioProducer(void * jarg1) { + ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; + + arg1 = (ProxyAudioProducer *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioProducer_setPushBuffer(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + bool result; + + arg1 = (ProxyAudioProducer *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (bool)(arg1)->setPushBuffer((void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducer_push__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3) { + int jresult ; + ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + int result; + + arg1 = (ProxyAudioProducer *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (int)(arg1)->push((void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducer_push__SWIG_1(void * jarg1, void * jarg2) { + int jresult ; + ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; + void *arg2 = (void *) 0 ; + int result; + + arg1 = (ProxyAudioProducer *)jarg1; + arg2 = jarg2; + result = (int)(arg1)->push((void const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyAudioProducer_push__SWIG_2(void * jarg1) { + int jresult ; + ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; + int result; + + arg1 = (ProxyAudioProducer *)jarg1; + result = (int)(arg1)->push(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioProducer_setGain(void * jarg1, unsigned int jarg2) { + unsigned int jresult ; + ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; + unsigned int arg2 ; + bool result; + + arg1 = (ProxyAudioProducer *)jarg1; + arg2 = (unsigned int)jarg2; + result = (bool)(arg1)->setGain(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioProducer_getGain(void * jarg1) { + unsigned int jresult ; + ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; + unsigned int result; + + arg1 = (ProxyAudioProducer *)jarg1; + result = (unsigned int)(arg1)->getGain(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ProxyAudioProducer_setCallback(void * jarg1, void * jarg2) { + ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; + ProxyAudioProducerCallback *arg2 = (ProxyAudioProducerCallback *) 0 ; + + arg1 = (ProxyAudioProducer *)jarg1; + arg2 = (ProxyAudioProducerCallback *)jarg2; + (arg1)->setCallback(arg2); +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_ProxyAudioProducer_getMediaSessionId(void * jarg1) { + unsigned long long jresult ; + ProxyAudioProducer *arg1 = (ProxyAudioProducer *) 0 ; + uint64_t result; + + arg1 = (ProxyAudioProducer *)jarg1; + result = (uint64_t)(arg1)->getMediaSessionId(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyAudioProducer_registerPlugin() { + unsigned int jresult ; + bool result; + + result = (bool)ProxyAudioProducer::registerPlugin(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_ProxyVideoProducerCallback() { + void * jresult ; + ProxyVideoProducerCallback *result = 0 ; + + result = (ProxyVideoProducerCallback *)new SwigDirector_ProxyVideoProducerCallback(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyVideoProducerCallback(void * jarg1) { + ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; + + arg1 = (ProxyVideoProducerCallback *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_prepare(void * jarg1, int jarg2, int jarg3, int jarg4) { + int jresult ; + ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; + int arg2 ; + int arg3 ; + int arg4 ; + int result; + + arg1 = (ProxyVideoProducerCallback *)jarg1; + arg2 = (int)jarg2; + arg3 = (int)jarg3; + arg4 = (int)jarg4; + result = (int)(arg1)->prepare(arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_prepareSwigExplicitProxyVideoProducerCallback(void * jarg1, int jarg2, int jarg3, int jarg4) { + int jresult ; + ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; + int arg2 ; + int arg3 ; + int arg4 ; + int result; + + arg1 = (ProxyVideoProducerCallback *)jarg1; + arg2 = (int)jarg2; + arg3 = (int)jarg3; + arg4 = (int)jarg4; + result = (int)(arg1)->ProxyVideoProducerCallback::prepare(arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_start(void * jarg1) { + int jresult ; + ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; + int result; + + arg1 = (ProxyVideoProducerCallback *)jarg1; + result = (int)(arg1)->start(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_startSwigExplicitProxyVideoProducerCallback(void * jarg1) { + int jresult ; + ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; + int result; + + arg1 = (ProxyVideoProducerCallback *)jarg1; + result = (int)(arg1)->ProxyVideoProducerCallback::start(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_pause(void * jarg1) { + int jresult ; + ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; + int result; + + arg1 = (ProxyVideoProducerCallback *)jarg1; + result = (int)(arg1)->pause(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_pauseSwigExplicitProxyVideoProducerCallback(void * jarg1) { + int jresult ; + ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; + int result; + + arg1 = (ProxyVideoProducerCallback *)jarg1; + result = (int)(arg1)->ProxyVideoProducerCallback::pause(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_stop(void * jarg1) { + int jresult ; + ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; + int result; + + arg1 = (ProxyVideoProducerCallback *)jarg1; + result = (int)(arg1)->stop(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducerCallback_stopSwigExplicitProxyVideoProducerCallback(void * jarg1) { + int jresult ; + ProxyVideoProducerCallback *arg1 = (ProxyVideoProducerCallback *) 0 ; + int result; + + arg1 = (ProxyVideoProducerCallback *)jarg1; + result = (int)(arg1)->ProxyVideoProducerCallback::stop(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoProducerCallback_director_connect(void *objarg, SwigDirector_ProxyVideoProducerCallback::SWIG_Callback0_t callback0, SwigDirector_ProxyVideoProducerCallback::SWIG_Callback1_t callback1, SwigDirector_ProxyVideoProducerCallback::SWIG_Callback2_t callback2, SwigDirector_ProxyVideoProducerCallback::SWIG_Callback3_t callback3) { + ProxyVideoProducerCallback *obj = (ProxyVideoProducerCallback *)objarg; + SwigDirector_ProxyVideoProducerCallback *director = dynamic_cast(obj); + if (director) { + director->swig_connect_director(callback0, callback1, callback2, callback3); + } +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_ProxyVideoProducer(void * jarg1) { + ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; + + arg1 = (ProxyVideoProducer *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducer_getRotation(void * jarg1) { + int jresult ; + ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; + int result; + + arg1 = (ProxyVideoProducer *)jarg1; + result = (int)((ProxyVideoProducer const *)arg1)->getRotation(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoProducer_setRotation(void * jarg1, int jarg2) { + unsigned int jresult ; + ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; + int arg2 ; + bool result; + + arg1 = (ProxyVideoProducer *)jarg1; + arg2 = (int)jarg2; + result = (bool)(arg1)->setRotation(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoProducer_setActualCameraOutputSize(void * jarg1, unsigned int jarg2, unsigned int jarg3) { + unsigned int jresult ; + ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; + unsigned int arg2 ; + unsigned int arg3 ; + bool result; + + arg1 = (ProxyVideoProducer *)jarg1; + arg2 = (unsigned int)jarg2; + arg3 = (unsigned int)jarg3; + result = (bool)(arg1)->setActualCameraOutputSize(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducer_push(void * jarg1, void * jarg2, unsigned int jarg3) { + int jresult ; + ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + int result; + + arg1 = (ProxyVideoProducer *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (int)(arg1)->push((void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ProxyVideoProducer_send(void * jarg1, void * jarg2, unsigned int jarg3, unsigned int jarg4, unsigned int jarg5) { + int jresult ; + ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + unsigned int arg4 ; + bool arg5 ; + int result; + + arg1 = (ProxyVideoProducer *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + arg4 = (unsigned int)jarg4; + arg5 = jarg5 ? true : false; + result = (int)(arg1)->send((void const *)arg2,arg3,arg4,arg5); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoProducer_setCallback(void * jarg1, void * jarg2) { + ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; + ProxyVideoProducerCallback *arg2 = (ProxyVideoProducerCallback *) 0 ; + + arg1 = (ProxyVideoProducer *)jarg1; + arg2 = (ProxyVideoProducerCallback *)jarg2; + (arg1)->setCallback(arg2); +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_ProxyVideoProducer_getMediaSessionId(void * jarg1) { + unsigned long long jresult ; + ProxyVideoProducer *arg1 = (ProxyVideoProducer *) 0 ; + uint64_t result; + + arg1 = (ProxyVideoProducer *)jarg1; + result = (uint64_t)(arg1)->getMediaSessionId(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ProxyVideoProducer_registerPlugin() { + unsigned int jresult ; + bool result; + + result = (bool)ProxyVideoProducer::registerPlugin(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ProxyVideoProducer_setDefaultChroma(int jarg1) { + tmedia_chroma_t arg1 ; + + arg1 = (tmedia_chroma_t)jarg1; + ProxyVideoProducer::setDefaultChroma(arg1); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_SipCallback() { + void * jresult ; + SipCallback *result = 0 ; + + result = (SipCallback *)new SwigDirector_SipCallback(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipCallback(void * jarg1) { + SipCallback *arg1 = (SipCallback *) 0 ; + + arg1 = (SipCallback *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnDialogEvent(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + DialogEvent *arg2 = (DialogEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (DialogEvent *)jarg2; + result = (int)(arg1)->OnDialogEvent((DialogEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnDialogEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + DialogEvent *arg2 = (DialogEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (DialogEvent *)jarg2; + result = (int)(arg1)->SipCallback::OnDialogEvent((DialogEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnStackEvent(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + StackEvent *arg2 = (StackEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (StackEvent *)jarg2; + result = (int)(arg1)->OnStackEvent((StackEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnStackEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + StackEvent *arg2 = (StackEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (StackEvent *)jarg2; + result = (int)(arg1)->SipCallback::OnStackEvent((StackEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnInviteEvent(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + InviteEvent *arg2 = (InviteEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (InviteEvent *)jarg2; + result = (int)(arg1)->OnInviteEvent((InviteEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnInviteEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + InviteEvent *arg2 = (InviteEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (InviteEvent *)jarg2; + result = (int)(arg1)->SipCallback::OnInviteEvent((InviteEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnMessagingEvent(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + MessagingEvent *arg2 = (MessagingEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (MessagingEvent *)jarg2; + result = (int)(arg1)->OnMessagingEvent((MessagingEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnMessagingEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + MessagingEvent *arg2 = (MessagingEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (MessagingEvent *)jarg2; + result = (int)(arg1)->SipCallback::OnMessagingEvent((MessagingEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnInfoEvent(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + InfoEvent *arg2 = (InfoEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (InfoEvent *)jarg2; + result = (int)(arg1)->OnInfoEvent((InfoEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnInfoEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + InfoEvent *arg2 = (InfoEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (InfoEvent *)jarg2; + result = (int)(arg1)->SipCallback::OnInfoEvent((InfoEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnOptionsEvent(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + OptionsEvent *arg2 = (OptionsEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (OptionsEvent *)jarg2; + result = (int)(arg1)->OnOptionsEvent((OptionsEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnOptionsEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + OptionsEvent *arg2 = (OptionsEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (OptionsEvent *)jarg2; + result = (int)(arg1)->SipCallback::OnOptionsEvent((OptionsEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnPublicationEvent(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + PublicationEvent *arg2 = (PublicationEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (PublicationEvent *)jarg2; + result = (int)(arg1)->OnPublicationEvent((PublicationEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnPublicationEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + PublicationEvent *arg2 = (PublicationEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (PublicationEvent *)jarg2; + result = (int)(arg1)->SipCallback::OnPublicationEvent((PublicationEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnRegistrationEvent(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + RegistrationEvent *arg2 = (RegistrationEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (RegistrationEvent *)jarg2; + result = (int)(arg1)->OnRegistrationEvent((RegistrationEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnRegistrationEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + RegistrationEvent *arg2 = (RegistrationEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (RegistrationEvent *)jarg2; + result = (int)(arg1)->SipCallback::OnRegistrationEvent((RegistrationEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnSubscriptionEvent(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + SubscriptionEvent *arg2 = (SubscriptionEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (SubscriptionEvent *)jarg2; + result = (int)(arg1)->OnSubscriptionEvent((SubscriptionEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnSubscriptionEventSwigExplicitSipCallback(void * jarg1, void * jarg2) { + int jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + SubscriptionEvent *arg2 = (SubscriptionEvent *) 0 ; + int result; + + arg1 = (SipCallback *)jarg1; + arg2 = (SubscriptionEvent *)jarg2; + result = (int)(arg1)->SipCallback::OnSubscriptionEvent((SubscriptionEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_SipCallback_director_connect(void *objarg, SwigDirector_SipCallback::SWIG_Callback0_t callback0, SwigDirector_SipCallback::SWIG_Callback1_t callback1, SwigDirector_SipCallback::SWIG_Callback2_t callback2, SwigDirector_SipCallback::SWIG_Callback3_t callback3, SwigDirector_SipCallback::SWIG_Callback4_t callback4, SwigDirector_SipCallback::SWIG_Callback5_t callback5, SwigDirector_SipCallback::SWIG_Callback6_t callback6, SwigDirector_SipCallback::SWIG_Callback7_t callback7, SwigDirector_SipCallback::SWIG_Callback8_t callback8) { + SipCallback *obj = (SipCallback *)objarg; + SwigDirector_SipCallback *director = dynamic_cast(obj); + if (director) { + director->swig_connect_director(callback0, callback1, callback2, callback3, callback4, callback5, callback6, callback7, callback8); + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_SafeObject() { + void * jresult ; + SafeObject *result = 0 ; + + result = (SafeObject *)new SafeObject(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_SafeObject(void * jarg1) { + SafeObject *arg1 = (SafeObject *) 0 ; + + arg1 = (SafeObject *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SafeObject_Lock(void * jarg1) { + int jresult ; + SafeObject *arg1 = (SafeObject *) 0 ; + int result; + + arg1 = (SafeObject *)jarg1; + result = (int)((SafeObject const *)arg1)->Lock(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SafeObject_UnLock(void * jarg1) { + int jresult ; + SafeObject *arg1 = (SafeObject *) 0 ; + int result; + + arg1 = (SafeObject *)jarg1; + result = (int)((SafeObject const *)arg1)->UnLock(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_SipStack(void * jarg1, char * jarg2, char * jarg3, char * jarg4) { + void * jresult ; + SipCallback *arg1 = (SipCallback *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *arg4 = (char *) 0 ; + SipStack *result = 0 ; + + arg1 = (SipCallback *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = (char *)jarg4; + result = (SipStack *)new SipStack(arg1,(char const *)arg2,(char const *)arg3,(char const *)arg4); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipStack(void * jarg1) { + SipStack *arg1 = (SipStack *) 0 ; + + arg1 = (SipStack *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_start(void * jarg1) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + result = (bool)(arg1)->start(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setDebugCallback(void * jarg1, void * jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + DDebugCallback *arg2 = (DDebugCallback *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (DDebugCallback *)jarg2; + result = (bool)(arg1)->setDebugCallback(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setRealm(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->setRealm((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setIMPI(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->setIMPI((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setIMPU(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->setIMPU((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setPassword(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->setPassword((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setAMF(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->setAMF((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setOperatorId(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->setOperatorId((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setProxyCSCF(void * jarg1, char * jarg2, unsigned short jarg3, char * jarg4, char * jarg5) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + unsigned short arg3 ; + char *arg4 = (char *) 0 ; + char *arg5 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (unsigned short)jarg3; + arg4 = (char *)jarg4; + arg5 = (char *)jarg5; + result = (bool)(arg1)->setProxyCSCF((char const *)arg2,arg3,(char const *)arg4,(char const *)arg5); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setLocalIP(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->setLocalIP((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setLocalPort(void * jarg1, unsigned short jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + unsigned short arg2 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (unsigned short)jarg2; + result = (bool)(arg1)->setLocalPort(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setEarlyIMS(void * jarg1, unsigned int jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + bool arg2 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = jarg2 ? true : false; + result = (bool)(arg1)->setEarlyIMS(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_addHeader(void * jarg1, char * jarg2, char * jarg3) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + result = (bool)(arg1)->addHeader((char const *)arg2,(char const *)arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_removeHeader(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->removeHeader((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_addDnsServer(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->addDnsServer((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setDnsDiscovery(void * jarg1, unsigned int jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + bool arg2 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = jarg2 ? true : false; + result = (bool)(arg1)->setDnsDiscovery(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setAoR(void * jarg1, char * jarg2, int jarg3) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + int arg3 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (int)jarg3; + result = (bool)(arg1)->setAoR((char const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setSigCompParams(void * jarg1, unsigned int jarg2, unsigned int jarg3, unsigned int jarg4, unsigned int jarg5) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + unsigned int arg2 ; + unsigned int arg3 ; + unsigned int arg4 ; + bool arg5 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (unsigned int)jarg2; + arg3 = (unsigned int)jarg3; + arg4 = (unsigned int)jarg4; + arg5 = jarg5 ? true : false; + result = (bool)(arg1)->setSigCompParams(arg2,arg3,arg4,arg5); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_addSigCompCompartment(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->addSigCompCompartment((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_removeSigCompCompartment(void * jarg1, char * jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->removeSigCompCompartment((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setSTUNServer(void * jarg1, char * jarg2, unsigned short jarg3) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + unsigned short arg3 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (unsigned short)jarg3; + result = (bool)(arg1)->setSTUNServer((char const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setSTUNCred(void * jarg1, char * jarg2, char * jarg3) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + result = (bool)(arg1)->setSTUNCred((char const *)arg2,(char const *)arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setTLSSecAgree(void * jarg1, unsigned int jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + bool arg2 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = jarg2 ? true : false; + result = (bool)(arg1)->setTLSSecAgree(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setSSLCretificates(void * jarg1, char * jarg2, char * jarg3, char * jarg4) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *arg4 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = (char *)jarg4; + result = (bool)(arg1)->setSSLCretificates((char const *)arg2,(char const *)arg3,(char const *)arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setIPSecSecAgree(void * jarg1, unsigned int jarg2) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + bool arg2 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = jarg2 ? true : false; + result = (bool)(arg1)->setIPSecSecAgree(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setIPSecParameters(void * jarg1, char * jarg2, char * jarg3, char * jarg4, char * jarg5) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *arg4 = (char *) 0 ; + char *arg5 = (char *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = (char *)jarg4; + arg5 = (char *)jarg5; + result = (bool)(arg1)->setIPSecParameters((char const *)arg2,(char const *)arg3,(char const *)arg4,(char const *)arg5); + jresult = result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipStack_dnsENUM(void * jarg1, char * jarg2, char * jarg3, char * jarg4) { + char * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *arg4 = (char *) 0 ; + char *result = 0 ; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = (char *)jarg4; + result = (char *)(arg1)->dnsENUM((char const *)arg2,(char const *)arg3,(char const *)arg4); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipStack_dnsNaptrSrv(void * jarg1, char * jarg2, char * jarg3, unsigned short * jarg4) { + char * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + unsigned short *arg4 = (unsigned short *) 0 ; + char *result = 0 ; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = (unsigned short *)jarg4; + result = (char *)(arg1)->dnsNaptrSrv((char const *)arg2,(char const *)arg3,arg4); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipStack_dnsSrv(void * jarg1, char * jarg2, unsigned short * jarg3) { + char * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + unsigned short *arg3 = (unsigned short *) 0 ; + char *result = 0 ; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (unsigned short *)jarg3; + result = (char *)(arg1)->dnsSrv((char const *)arg2,arg3); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipStack_getLocalIPnPort(void * jarg1, char * jarg2, unsigned short * jarg3) { + char * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *arg2 = (char *) 0 ; + unsigned short *arg3 = (unsigned short *) 0 ; + char *result = 0 ; + + arg1 = (SipStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (unsigned short *)jarg3; + result = (char *)(arg1)->getLocalIPnPort((char const *)arg2,arg3); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SipStack_getPreferredIdentity(void * jarg1) { + char * jresult ; + SipStack *arg1 = (SipStack *) 0 ; + char *result = 0 ; + + arg1 = (SipStack *)jarg1; + result = (char *)(arg1)->getPreferredIdentity(); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_isValid(void * jarg1) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + result = (bool)(arg1)->isValid(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_stop(void * jarg1) { + unsigned int jresult ; + SipStack *arg1 = (SipStack *) 0 ; + bool result; + + arg1 = (SipStack *)jarg1; + result = (bool)(arg1)->stop(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_initialize() { + unsigned int jresult ; + bool result; + + result = (bool)SipStack::initialize(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_deInitialize() { + unsigned int jresult ; + bool result; + + result = (bool)SipStack::deInitialize(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_SipStack_setCodecs(int jarg1) { + tdav_codec_id_t arg1 ; + + arg1 = (tdav_codec_id_t)jarg1; + SipStack::setCodecs(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_SipStack_setCodecs_2(int jarg1) { + int arg1 ; + + arg1 = (int)jarg1; + SipStack::setCodecs_2(arg1); +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setCodecPriority(int jarg1, int jarg2) { + unsigned int jresult ; + tdav_codec_id_t arg1 ; + int arg2 ; + bool result; + + arg1 = (tdav_codec_id_t)jarg1; + arg2 = (int)jarg2; + result = (bool)SipStack::setCodecPriority(arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_setCodecPriority_2(int jarg1, int jarg2) { + unsigned int jresult ; + int arg1 ; + int arg2 ; + bool result; + + arg1 = (int)jarg1; + arg2 = (int)jarg2; + result = (bool)SipStack::setCodecPriority_2(arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_isCodecSupported(int jarg1) { + unsigned int jresult ; + tdav_codec_id_t arg1 ; + bool result; + + arg1 = (tdav_codec_id_t)jarg1; + result = (bool)SipStack::isCodecSupported(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_transport_error_get() { + int jresult ; + int result; + + result = (int) 702; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_global_error_get() { + int jresult ; + int result; + + result = (int) 703; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_message_error_get() { + int jresult ; + int result; + + result = (int) 704; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_request_incoming_get() { + int jresult ; + int result; + + result = (int) 800; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_request_outgoing_get() { + int jresult ; + int result; + + result = (int) 802; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_request_cancelled_get() { + int jresult ; + int result; + + result = (int) 803; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_request_sent_get() { + int jresult ; + int result; + + result = (int) 804; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_connecting_get() { + int jresult ; + int result; + + result = (int) 900; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_connected_get() { + int jresult ; + int result; + + result = (int) 901; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_terminating_get() { + int jresult ; + int result; + + result = (int) 902; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_dialog_terminated_get() { + int jresult ; + int result; + + result = (int) 903; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_stack_started_get() { + int jresult ; + int result; + + result = (int) 950; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_stack_stopped_get() { + int jresult ; + int result; + + result = (int) 951; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_stack_failed_to_start_get() { + int jresult ; + int result; + + result = (int) 952; + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_tsip_event_code_stack_failed_to_stop_get() { + int jresult ; + int result; + + result = (int) 953; + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_XcapSelector(void * jarg1) { + void * jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + XcapSelector *result = 0 ; + + arg1 = (XcapStack *)jarg1; + result = (XcapSelector *)new XcapSelector(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_XcapSelector(void * jarg1) { + XcapSelector *arg1 = (XcapSelector *) 0 ; + + arg1 = (XcapSelector *)jarg1; + delete arg1; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_XcapSelector_setAUID(void * jarg1, char * jarg2) { + void * jresult ; + XcapSelector *arg1 = (XcapSelector *) 0 ; + char *arg2 = (char *) 0 ; + XcapSelector *result = 0 ; + + arg1 = (XcapSelector *)jarg1; + arg2 = (char *)jarg2; + result = (XcapSelector *)(arg1)->setAUID((char const *)arg2); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_XcapSelector_setName(void * jarg1, char * jarg2) { + void * jresult ; + XcapSelector *arg1 = (XcapSelector *) 0 ; + char *arg2 = (char *) 0 ; + XcapSelector *result = 0 ; + + arg1 = (XcapSelector *)jarg1; + arg2 = (char *)jarg2; + result = (XcapSelector *)(arg1)->setName((char const *)arg2); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_XcapSelector_setAttribute(void * jarg1, char * jarg2, char * jarg3, char * jarg4) { + void * jresult ; + XcapSelector *arg1 = (XcapSelector *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *arg4 = (char *) 0 ; + XcapSelector *result = 0 ; + + arg1 = (XcapSelector *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = (char *)jarg4; + result = (XcapSelector *)(arg1)->setAttribute((char const *)arg2,(char const *)arg3,(char const *)arg4); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_XcapSelector_setPos(void * jarg1, char * jarg2, unsigned int jarg3) { + void * jresult ; + XcapSelector *arg1 = (XcapSelector *) 0 ; + char *arg2 = (char *) 0 ; + unsigned int arg3 ; + XcapSelector *result = 0 ; + + arg1 = (XcapSelector *)jarg1; + arg2 = (char *)jarg2; + arg3 = (unsigned int)jarg3; + result = (XcapSelector *)(arg1)->setPos((char const *)arg2,arg3); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_XcapSelector_setPosAttribute(void * jarg1, char * jarg2, unsigned int jarg3, char * jarg4, char * jarg5) { + void * jresult ; + XcapSelector *arg1 = (XcapSelector *) 0 ; + char *arg2 = (char *) 0 ; + unsigned int arg3 ; + char *arg4 = (char *) 0 ; + char *arg5 = (char *) 0 ; + XcapSelector *result = 0 ; + + arg1 = (XcapSelector *)jarg1; + arg2 = (char *)jarg2; + arg3 = (unsigned int)jarg3; + arg4 = (char *)jarg4; + arg5 = (char *)jarg5; + result = (XcapSelector *)(arg1)->setPosAttribute((char const *)arg2,arg3,(char const *)arg4,(char const *)arg5); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_XcapSelector_setNamespace(void * jarg1, char * jarg2, char * jarg3) { + void * jresult ; + XcapSelector *arg1 = (XcapSelector *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + XcapSelector *result = 0 ; + + arg1 = (XcapSelector *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + result = (XcapSelector *)(arg1)->setNamespace((char const *)arg2,(char const *)arg3); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_XcapSelector_getString(void * jarg1) { + char * jresult ; + XcapSelector *arg1 = (XcapSelector *) 0 ; + char *result = 0 ; + + arg1 = (XcapSelector *)jarg1; + result = (char *)(arg1)->getString(); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_XcapSelector_reset(void * jarg1) { + XcapSelector *arg1 = (XcapSelector *) 0 ; + + arg1 = (XcapSelector *)jarg1; + (arg1)->reset(); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_XcapMessage() { + void * jresult ; + XcapMessage *result = 0 ; + + result = (XcapMessage *)new XcapMessage(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_XcapMessage(void * jarg1) { + XcapMessage *arg1 = (XcapMessage *) 0 ; + + arg1 = (XcapMessage *)jarg1; + delete arg1; +} + + +SWIGEXPORT short SWIGSTDCALL CSharp_XcapMessage_getCode(void * jarg1) { + short jresult ; + XcapMessage *arg1 = (XcapMessage *) 0 ; + short result; + + arg1 = (XcapMessage *)jarg1; + result = (short)((XcapMessage const *)arg1)->getCode(); + jresult = result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_XcapMessage_getPhrase(void * jarg1) { + char * jresult ; + XcapMessage *arg1 = (XcapMessage *) 0 ; + char *result = 0 ; + + arg1 = (XcapMessage *)jarg1; + result = (char *)((XcapMessage const *)arg1)->getPhrase(); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_XcapMessage_getXcapHeaderValue__SWIG_0(void * jarg1, char * jarg2, unsigned int jarg3) { + char * jresult ; + XcapMessage *arg1 = (XcapMessage *) 0 ; + char *arg2 = (char *) 0 ; + unsigned int arg3 ; + char *result = 0 ; + + arg1 = (XcapMessage *)jarg1; + arg2 = (char *)jarg2; + arg3 = (unsigned int)jarg3; + result = (char *)(arg1)->getXcapHeaderValue((char const *)arg2,arg3); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_XcapMessage_getXcapHeaderValue__SWIG_1(void * jarg1, char * jarg2) { + char * jresult ; + XcapMessage *arg1 = (XcapMessage *) 0 ; + char *arg2 = (char *) 0 ; + char *result = 0 ; + + arg1 = (XcapMessage *)jarg1; + arg2 = (char *)jarg2; + result = (char *)(arg1)->getXcapHeaderValue((char const *)arg2); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_XcapMessage_getXcapHeaderParamValue__SWIG_0(void * jarg1, char * jarg2, char * jarg3, unsigned int jarg4) { + char * jresult ; + XcapMessage *arg1 = (XcapMessage *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + unsigned int arg4 ; + char *result = 0 ; + + arg1 = (XcapMessage *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = (unsigned int)jarg4; + result = (char *)(arg1)->getXcapHeaderParamValue((char const *)arg2,(char const *)arg3,arg4); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_XcapMessage_getXcapHeaderParamValue__SWIG_1(void * jarg1, char * jarg2, char * jarg3) { + char * jresult ; + XcapMessage *arg1 = (XcapMessage *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *result = 0 ; + + arg1 = (XcapMessage *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + result = (char *)(arg1)->getXcapHeaderParamValue((char const *)arg2,(char const *)arg3); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapMessage_getXcapContentLength(void * jarg1) { + unsigned int jresult ; + XcapMessage *arg1 = (XcapMessage *) 0 ; + unsigned int result; + + arg1 = (XcapMessage *)jarg1; + result = (unsigned int)(arg1)->getXcapContentLength(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapMessage_getXcapContent(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + XcapMessage *arg1 = (XcapMessage *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + unsigned int result; + + arg1 = (XcapMessage *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (unsigned int)(arg1)->getXcapContent(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_XcapEvent(void * jarg1) { + XcapEvent *arg1 = (XcapEvent *) 0 ; + + arg1 = (XcapEvent *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_XcapEvent_getType(void * jarg1) { + int jresult ; + XcapEvent *arg1 = (XcapEvent *) 0 ; + thttp_event_type_t result; + + arg1 = (XcapEvent *)jarg1; + result = (thttp_event_type_t)(arg1)->getType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_XcapEvent_getXcapMessage(void * jarg1) { + void * jresult ; + XcapEvent *arg1 = (XcapEvent *) 0 ; + XcapMessage *result = 0 ; + + arg1 = (XcapEvent *)jarg1; + result = (XcapMessage *)((XcapEvent const *)arg1)->getXcapMessage(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_XcapCallback() { + void * jresult ; + XcapCallback *result = 0 ; + + result = (XcapCallback *)new SwigDirector_XcapCallback(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_XcapCallback(void * jarg1) { + XcapCallback *arg1 = (XcapCallback *) 0 ; + + arg1 = (XcapCallback *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_XcapCallback_onEvent(void * jarg1, void * jarg2) { + int jresult ; + XcapCallback *arg1 = (XcapCallback *) 0 ; + XcapEvent *arg2 = (XcapEvent *) 0 ; + int result; + + arg1 = (XcapCallback *)jarg1; + arg2 = (XcapEvent *)jarg2; + result = (int)((XcapCallback const *)arg1)->onEvent((XcapEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_XcapCallback_onEventSwigExplicitXcapCallback(void * jarg1, void * jarg2) { + int jresult ; + XcapCallback *arg1 = (XcapCallback *) 0 ; + XcapEvent *arg2 = (XcapEvent *) 0 ; + int result; + + arg1 = (XcapCallback *)jarg1; + arg2 = (XcapEvent *)jarg2; + result = (int)((XcapCallback const *)arg1)->XcapCallback::onEvent((XcapEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_XcapCallback_director_connect(void *objarg, SwigDirector_XcapCallback::SWIG_Callback0_t callback0) { + XcapCallback *obj = (XcapCallback *)objarg; + SwigDirector_XcapCallback *director = dynamic_cast(obj); + if (director) { + director->swig_connect_director(callback0); + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_XcapStack(void * jarg1, char * jarg2, char * jarg3, char * jarg4) { + void * jresult ; + XcapCallback *arg1 = (XcapCallback *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *arg4 = (char *) 0 ; + XcapStack *result = 0 ; + + arg1 = (XcapCallback *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = (char *)jarg4; + result = (XcapStack *)new XcapStack(arg1,(char const *)arg2,(char const *)arg3,(char const *)arg4); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_XcapStack(void * jarg1) { + XcapStack *arg1 = (XcapStack *) 0 ; + + arg1 = (XcapStack *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_registerAUID(void * jarg1, char * jarg2, char * jarg3, char * jarg4, char * jarg5, unsigned int jarg6) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *arg4 = (char *) 0 ; + char *arg5 = (char *) 0 ; + bool arg6 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = (char *)jarg4; + arg5 = (char *)jarg5; + arg6 = jarg6 ? true : false; + result = (bool)(arg1)->registerAUID((char const *)arg2,(char const *)arg3,(char const *)arg4,(char const *)arg5,arg6); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_start(void * jarg1) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + result = (bool)(arg1)->start(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_setCredentials(void * jarg1, char * jarg2, char * jarg3) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + result = (bool)(arg1)->setCredentials((char const *)arg2,(char const *)arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_setXcapRoot(void * jarg1, char * jarg2) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->setXcapRoot((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_setLocalIP(void * jarg1, char * jarg2) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->setLocalIP((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_setLocalPort(void * jarg1, unsigned int jarg2) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + unsigned int arg2 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (unsigned int)jarg2; + result = (bool)(arg1)->setLocalPort(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_addHeader(void * jarg1, char * jarg2, char * jarg3) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + result = (bool)(arg1)->addHeader((char const *)arg2,(char const *)arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_removeHeader(void * jarg1, char * jarg2) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->removeHeader((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_setTimeout(void * jarg1, unsigned int jarg2) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + unsigned int arg2 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (unsigned int)jarg2; + result = (bool)(arg1)->setTimeout(arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_getDocument(void * jarg1, char * jarg2) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->getDocument((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_getElement(void * jarg1, char * jarg2) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->getElement((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_getAttribute(void * jarg1, char * jarg2) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->getAttribute((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_deleteDocument(void * jarg1, char * jarg2) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->deleteDocument((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_deleteElement(void * jarg1, char * jarg2) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->deleteElement((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_deleteAttribute(void * jarg1, char * jarg2) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + result = (bool)(arg1)->deleteAttribute((char const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_putDocument(void * jarg1, char * jarg2, void * jarg3, unsigned int jarg4, char * jarg5) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + void *arg3 = (void *) 0 ; + unsigned int arg4 ; + char *arg5 = (char *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = jarg3; + arg4 = (unsigned int)jarg4; + arg5 = (char *)jarg5; + result = (bool)(arg1)->putDocument((char const *)arg2,(void const *)arg3,arg4,(char const *)arg5); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_putElement(void * jarg1, char * jarg2, void * jarg3, unsigned int jarg4) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + void *arg3 = (void *) 0 ; + unsigned int arg4 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = jarg3; + arg4 = (unsigned int)jarg4; + result = (bool)(arg1)->putElement((char const *)arg2,(void const *)arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_putAttribute(void * jarg1, char * jarg2, void * jarg3, unsigned int jarg4) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + char *arg2 = (char *) 0 ; + void *arg3 = (void *) 0 ; + unsigned int arg4 ; + bool result; + + arg1 = (XcapStack *)jarg1; + arg2 = (char *)jarg2; + arg3 = jarg3; + arg4 = (unsigned int)jarg4; + result = (bool)(arg1)->putAttribute((char const *)arg2,(void const *)arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_XcapStack_stop(void * jarg1) { + unsigned int jresult ; + XcapStack *arg1 = (XcapStack *) 0 ; + bool result; + + arg1 = (XcapStack *)jarg1; + result = (bool)(arg1)->stop(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_RPMessage() { + void * jresult ; + RPMessage *result = 0 ; + + result = (RPMessage *)new RPMessage(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_RPMessage(void * jarg1) { + RPMessage *arg1 = (RPMessage *) 0 ; + + arg1 = (RPMessage *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_RPMessage_getType(void * jarg1) { + int jresult ; + RPMessage *arg1 = (RPMessage *) 0 ; + twrap_rpmessage_type_t result; + + arg1 = (RPMessage *)jarg1; + result = (twrap_rpmessage_type_t)(arg1)->getType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RPMessage_getPayloadLength(void * jarg1) { + unsigned int jresult ; + RPMessage *arg1 = (RPMessage *) 0 ; + unsigned int result; + + arg1 = (RPMessage *)jarg1; + result = (unsigned int)(arg1)->getPayloadLength(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_RPMessage_getPayload(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + RPMessage *arg1 = (RPMessage *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + unsigned int result; + + arg1 = (RPMessage *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (unsigned int)(arg1)->getPayload(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_SMSData() { + void * jresult ; + SMSData *result = 0 ; + + result = (SMSData *)new SMSData(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_SMSData(void * jarg1) { + SMSData *arg1 = (SMSData *) 0 ; + + arg1 = (SMSData *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SMSData_getType(void * jarg1) { + int jresult ; + SMSData *arg1 = (SMSData *) 0 ; + twrap_sms_type_t result; + + arg1 = (SMSData *)jarg1; + result = (twrap_sms_type_t)(arg1)->getType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_SMSData_getMR(void * jarg1) { + int jresult ; + SMSData *arg1 = (SMSData *) 0 ; + int result; + + arg1 = (SMSData *)jarg1; + result = (int)(arg1)->getMR(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SMSData_getPayloadLength(void * jarg1) { + unsigned int jresult ; + SMSData *arg1 = (SMSData *) 0 ; + unsigned int result; + + arg1 = (SMSData *)jarg1; + result = (unsigned int)(arg1)->getPayloadLength(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SMSData_getPayload(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + SMSData *arg1 = (SMSData *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + unsigned int result; + + arg1 = (SMSData *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (unsigned int)(arg1)->getPayload(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SMSData_getOA(void * jarg1) { + char * jresult ; + SMSData *arg1 = (SMSData *) 0 ; + char *result = 0 ; + + arg1 = (SMSData *)jarg1; + result = (char *)(arg1)->getOA(); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_SMSData_getDA(void * jarg1) { + char * jresult ; + SMSData *arg1 = (SMSData *) 0 ; + char *result = 0 ; + + arg1 = (SMSData *)jarg1; + result = (char *)(arg1)->getDA(); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_SMSEncoder_encodeSubmit(int jarg1, char * jarg2, char * jarg3, char * jarg4) { + void * jresult ; + int arg1 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *arg4 = (char *) 0 ; + RPMessage *result = 0 ; + + arg1 = (int)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = (char *)jarg4; + result = (RPMessage *)SMSEncoder::encodeSubmit(arg1,(char const *)arg2,(char const *)arg3,(char const *)arg4); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_SMSEncoder_encodeDeliver(int jarg1, char * jarg2, char * jarg3, char * jarg4) { + void * jresult ; + int arg1 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *arg4 = (char *) 0 ; + RPMessage *result = 0 ; + + arg1 = (int)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = (char *)jarg4; + result = (RPMessage *)SMSEncoder::encodeDeliver(arg1,(char const *)arg2,(char const *)arg3,(char const *)arg4); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_SMSEncoder_encodeACK(int jarg1, char * jarg2, char * jarg3, unsigned int jarg4) { + void * jresult ; + int arg1 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + bool arg4 ; + RPMessage *result = 0 ; + + arg1 = (int)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = jarg4 ? true : false; + result = (RPMessage *)SMSEncoder::encodeACK(arg1,(char const *)arg2,(char const *)arg3,arg4); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_SMSEncoder_encodeError(int jarg1, char * jarg2, char * jarg3, unsigned int jarg4) { + void * jresult ; + int arg1 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + bool arg4 ; + RPMessage *result = 0 ; + + arg1 = (int)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + arg4 = jarg4 ? true : false; + result = (RPMessage *)SMSEncoder::encodeError(arg1,(char const *)arg2,(char const *)arg3,arg4); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_SMSEncoder_decode(void * jarg1, unsigned int jarg2, unsigned int jarg3) { + void * jresult ; + void *arg1 = (void *) 0 ; + unsigned int arg2 ; + bool arg3 ; + SMSData *result = 0 ; + + arg1 = jarg1; + arg2 = (unsigned int)jarg2; + arg3 = jarg3 ? true : false; + result = (SMSData *)SMSEncoder::decode((void const *)arg1,arg2,arg3); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_SMSEncoder(void * jarg1) { + SMSEncoder *arg1 = (SMSEncoder *) 0 ; + + arg1 = (SMSEncoder *)jarg1; + delete arg1; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_MsrpMessage() { + void * jresult ; + MsrpMessage *result = 0 ; + + result = (MsrpMessage *)new MsrpMessage(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_MsrpMessage(void * jarg1) { + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + + arg1 = (MsrpMessage *)jarg1; + delete arg1; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpMessage_isRequest(void * jarg1) { + unsigned int jresult ; + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + bool result; + + arg1 = (MsrpMessage *)jarg1; + result = (bool)(arg1)->isRequest(); + jresult = result; + return jresult; +} + + +SWIGEXPORT short SWIGSTDCALL CSharp_MsrpMessage_getCode(void * jarg1) { + short jresult ; + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + short result; + + arg1 = (MsrpMessage *)jarg1; + result = (short)(arg1)->getCode(); + jresult = result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_MsrpMessage_getPhrase(void * jarg1) { + char * jresult ; + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + char *result = 0 ; + + arg1 = (MsrpMessage *)jarg1; + result = (char *)(arg1)->getPhrase(); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_MsrpMessage_getRequestType(void * jarg1) { + int jresult ; + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + tmsrp_request_type_t result; + + arg1 = (MsrpMessage *)jarg1; + result = (tmsrp_request_type_t)(arg1)->getRequestType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_MsrpMessage_getByteRange(void * jarg1, long long * jarg2, long long * jarg3, long long * jarg4) { + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + int64_t *arg2 = (int64_t *) 0 ; + int64_t *arg3 = (int64_t *) 0 ; + int64_t *arg4 = (int64_t *) 0 ; + + arg1 = (MsrpMessage *)jarg1; + arg2 = (int64_t *)jarg2; + arg3 = (int64_t *)jarg3; + arg4 = (int64_t *)jarg4; + (arg1)->getByteRange(arg2,arg3,arg4); +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpMessage_isLastChunck(void * jarg1) { + unsigned int jresult ; + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + bool result; + + arg1 = (MsrpMessage *)jarg1; + result = (bool)(arg1)->isLastChunck(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpMessage_isFirstChunck(void * jarg1) { + unsigned int jresult ; + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + bool result; + + arg1 = (MsrpMessage *)jarg1; + result = (bool)(arg1)->isFirstChunck(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpMessage_isSuccessReport(void * jarg1) { + unsigned int jresult ; + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + bool result; + + arg1 = (MsrpMessage *)jarg1; + result = (bool)(arg1)->isSuccessReport(); + jresult = result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_MsrpMessage_getMsrpHeaderValue(void * jarg1, char * jarg2) { + char * jresult ; + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + char *arg2 = (char *) 0 ; + char *result = 0 ; + + arg1 = (MsrpMessage *)jarg1; + arg2 = (char *)jarg2; + result = (char *)(arg1)->getMsrpHeaderValue((char const *)arg2); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_MsrpMessage_getMsrpHeaderParamValue(void * jarg1, char * jarg2, char * jarg3) { + char * jresult ; + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + char *result = 0 ; + + arg1 = (MsrpMessage *)jarg1; + arg2 = (char *)jarg2; + arg3 = (char *)jarg3; + result = (char *)(arg1)->getMsrpHeaderParamValue((char const *)arg2,(char const *)arg3); + jresult = SWIG_csharp_string_callback((const char *)result); + delete [] result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpMessage_getMsrpContentLength(void * jarg1) { + unsigned int jresult ; + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + unsigned int result; + + arg1 = (MsrpMessage *)jarg1; + result = (unsigned int)(arg1)->getMsrpContentLength(); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_MsrpMessage_getMsrpContent(void * jarg1, void * jarg2, unsigned int jarg3) { + unsigned int jresult ; + MsrpMessage *arg1 = (MsrpMessage *) 0 ; + void *arg2 = (void *) 0 ; + unsigned int arg3 ; + unsigned int result; + + arg1 = (MsrpMessage *)jarg1; + arg2 = jarg2; + arg3 = (unsigned int)jarg3; + result = (unsigned int)(arg1)->getMsrpContent(arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_MsrpEvent(void * jarg1) { + MsrpEvent *arg1 = (MsrpEvent *) 0 ; + + arg1 = (MsrpEvent *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_MsrpEvent_getType(void * jarg1) { + int jresult ; + MsrpEvent *arg1 = (MsrpEvent *) 0 ; + tmsrp_event_type_t result; + + arg1 = (MsrpEvent *)jarg1; + result = (tmsrp_event_type_t)(arg1)->getType(); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_MsrpEvent_getSipSession(void * jarg1) { + void * jresult ; + MsrpEvent *arg1 = (MsrpEvent *) 0 ; + MsrpSession *result = 0 ; + + arg1 = (MsrpEvent *)jarg1; + result = (MsrpSession *)(arg1)->getSipSession(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_MsrpEvent_getMessage(void * jarg1) { + void * jresult ; + MsrpEvent *arg1 = (MsrpEvent *) 0 ; + MsrpMessage *result = 0 ; + + arg1 = (MsrpEvent *)jarg1; + result = (MsrpMessage *)((MsrpEvent const *)arg1)->getMessage(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_MsrpCallback() { + void * jresult ; + MsrpCallback *result = 0 ; + + result = (MsrpCallback *)new SwigDirector_MsrpCallback(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_MsrpCallback(void * jarg1) { + MsrpCallback *arg1 = (MsrpCallback *) 0 ; + + arg1 = (MsrpCallback *)jarg1; + delete arg1; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_MsrpCallback_OnEvent(void * jarg1, void * jarg2) { + int jresult ; + MsrpCallback *arg1 = (MsrpCallback *) 0 ; + MsrpEvent *arg2 = (MsrpEvent *) 0 ; + int result; + + arg1 = (MsrpCallback *)jarg1; + arg2 = (MsrpEvent *)jarg2; + result = (int)(arg1)->OnEvent((MsrpEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_MsrpCallback_OnEventSwigExplicitMsrpCallback(void * jarg1, void * jarg2) { + int jresult ; + MsrpCallback *arg1 = (MsrpCallback *) 0 ; + MsrpEvent *arg2 = (MsrpEvent *) 0 ; + int result; + + arg1 = (MsrpCallback *)jarg1; + arg2 = (MsrpEvent *)jarg2; + result = (int)(arg1)->MsrpCallback::OnEvent((MsrpEvent const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_MsrpCallback_director_connect(void *objarg, SwigDirector_MsrpCallback::SWIG_Callback0_t callback0) { + MsrpCallback *obj = (MsrpCallback *)objarg; + SwigDirector_MsrpCallback *director = dynamic_cast(obj); + if (director) { + director->swig_connect_director(callback0); + } +} + + +SWIGEXPORT MediaContent * SWIGSTDCALL CSharp_MediaContentCPIMUpcast(MediaContentCPIM *objectRef) { + return (MediaContent *)objectRef; +} + +SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_DialogEventUpcast(DialogEvent *objectRef) { + return (SipEvent *)objectRef; +} + +SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_StackEventUpcast(StackEvent *objectRef) { + return (SipEvent *)objectRef; +} + +SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_InviteEventUpcast(InviteEvent *objectRef) { + return (SipEvent *)objectRef; +} + +SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_MessagingEventUpcast(MessagingEvent *objectRef) { + return (SipEvent *)objectRef; +} + +SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_InfoEventUpcast(InfoEvent *objectRef) { + return (SipEvent *)objectRef; +} + +SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_OptionsEventUpcast(OptionsEvent *objectRef) { + return (SipEvent *)objectRef; +} + +SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_PublicationEventUpcast(PublicationEvent *objectRef) { + return (SipEvent *)objectRef; +} + +SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_RegistrationEventUpcast(RegistrationEvent *objectRef) { + return (SipEvent *)objectRef; +} + +SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_SubscriptionEventUpcast(SubscriptionEvent *objectRef) { + return (SipEvent *)objectRef; +} + +SWIGEXPORT SipSession * SWIGSTDCALL CSharp_InviteSessionUpcast(InviteSession *objectRef) { + return (SipSession *)objectRef; +} + +SWIGEXPORT InviteSession * SWIGSTDCALL CSharp_CallSessionUpcast(CallSession *objectRef) { + return (InviteSession *)objectRef; +} + +SWIGEXPORT InviteSession * SWIGSTDCALL CSharp_MsrpSessionUpcast(MsrpSession *objectRef) { + return (InviteSession *)objectRef; +} + +SWIGEXPORT SipSession * SWIGSTDCALL CSharp_MessagingSessionUpcast(MessagingSession *objectRef) { + return (SipSession *)objectRef; +} + +SWIGEXPORT SipSession * SWIGSTDCALL CSharp_InfoSessionUpcast(InfoSession *objectRef) { + return (SipSession *)objectRef; +} + +SWIGEXPORT SipSession * SWIGSTDCALL CSharp_OptionsSessionUpcast(OptionsSession *objectRef) { + return (SipSession *)objectRef; +} + +SWIGEXPORT SipSession * SWIGSTDCALL CSharp_PublicationSessionUpcast(PublicationSession *objectRef) { + return (SipSession *)objectRef; +} + +SWIGEXPORT SipSession * SWIGSTDCALL CSharp_RegistrationSessionUpcast(RegistrationSession *objectRef) { + return (SipSession *)objectRef; +} + +SWIGEXPORT SipSession * SWIGSTDCALL CSharp_SubscriptionSessionUpcast(SubscriptionSession *objectRef) { + return (SipSession *)objectRef; +} + +SWIGEXPORT ProxyPlugin * SWIGSTDCALL CSharp_ProxyAudioConsumerUpcast(ProxyAudioConsumer *objectRef) { + return (ProxyPlugin *)objectRef; +} + +SWIGEXPORT ProxyPlugin * SWIGSTDCALL CSharp_ProxyVideoConsumerUpcast(ProxyVideoConsumer *objectRef) { + return (ProxyPlugin *)objectRef; +} + +SWIGEXPORT ProxyPlugin * SWIGSTDCALL CSharp_ProxyAudioProducerUpcast(ProxyAudioProducer *objectRef) { + return (ProxyPlugin *)objectRef; +} + +SWIGEXPORT ProxyPlugin * SWIGSTDCALL CSharp_ProxyVideoProducerUpcast(ProxyVideoProducer *objectRef) { + return (ProxyPlugin *)objectRef; +} + +SWIGEXPORT SafeObject * SWIGSTDCALL CSharp_SipStackUpcast(SipStack *objectRef) { + return (SafeObject *)objectRef; +} + +#ifdef __cplusplus +} +#endif + diff --git a/branches/2.0/doubango/bindings/csharp/tmedia_srtp_mode_t.cs b/branches/2.0/doubango/bindings/csharp/tmedia_srtp_mode_t.cs new file mode 100644 index 00000000..741e1a42 --- /dev/null +++ b/branches/2.0/doubango/bindings/csharp/tmedia_srtp_mode_t.cs @@ -0,0 +1,17 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 1.3.39 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + +namespace org.doubango.tinyWRAP { + +public enum tmedia_srtp_mode_t { + tmedia_srtp_mode_none, + tmedia_srtp_mode_optional, + tmedia_srtp_mode_mandatory +} + +} diff --git a/branches/2.0/doubango/bindings/java/MediaSessionMgr.java b/branches/2.0/doubango/bindings/java/MediaSessionMgr.java index af878a68..98c5d84b 100644 --- a/branches/2.0/doubango/bindings/java/MediaSessionMgr.java +++ b/branches/2.0/doubango/bindings/java/MediaSessionMgr.java @@ -37,6 +37,10 @@ public class MediaSessionMgr { return tinyWRAPJNI.MediaSessionMgr_sessionSetInt32(swigCPtr, this, media.swigValue(), key, value); } + public int sessionGetInt32(twrap_media_type_t media, String key) { + return tinyWRAPJNI.MediaSessionMgr_sessionGetInt32(swigCPtr, this, media.swigValue(), key); + } + public boolean consumerSetInt32(twrap_media_type_t media, String key, int value) { return tinyWRAPJNI.MediaSessionMgr_consumerSetInt32(swigCPtr, this, media.swigValue(), key, value); } @@ -179,4 +183,8 @@ public class MediaSessionMgr { return tinyWRAPJNI.MediaSessionMgr_defaultsSetInviteSessionTimers(timeout, refresher); } + public static boolean defaultsSetSRtpMode(tmedia_srtp_mode_t mode) { + return tinyWRAPJNI.MediaSessionMgr_defaultsSetSRtpMode(mode.swigValue()); + } + } diff --git a/branches/2.0/doubango/bindings/java/ProxyPluginMgr.java b/branches/2.0/doubango/bindings/java/ProxyPluginMgr.java index 5ae2c20d..31607765 100644 --- a/branches/2.0/doubango/bindings/java/ProxyPluginMgr.java +++ b/branches/2.0/doubango/bindings/java/ProxyPluginMgr.java @@ -43,6 +43,11 @@ public class ProxyPluginMgr { return (cPtr == 0) ? null : new ProxyPluginMgr(cPtr, false); } + public ProxyPlugin findPlugin(java.math.BigInteger id) { + long cPtr = tinyWRAPJNI.ProxyPluginMgr_findPlugin(swigCPtr, this, id); + return (cPtr == 0) ? null : new ProxyPlugin(cPtr, false); + } + public ProxyAudioConsumer findAudioConsumer(java.math.BigInteger id) { long cPtr = tinyWRAPJNI.ProxyPluginMgr_findAudioConsumer(swigCPtr, this, id); return (cPtr == 0) ? null : new ProxyAudioConsumer(cPtr, false); diff --git a/branches/2.0/doubango/bindings/java/android/MediaSessionMgr.java b/branches/2.0/doubango/bindings/java/android/MediaSessionMgr.java index af878a68..98c5d84b 100644 --- a/branches/2.0/doubango/bindings/java/android/MediaSessionMgr.java +++ b/branches/2.0/doubango/bindings/java/android/MediaSessionMgr.java @@ -37,6 +37,10 @@ public class MediaSessionMgr { return tinyWRAPJNI.MediaSessionMgr_sessionSetInt32(swigCPtr, this, media.swigValue(), key, value); } + public int sessionGetInt32(twrap_media_type_t media, String key) { + return tinyWRAPJNI.MediaSessionMgr_sessionGetInt32(swigCPtr, this, media.swigValue(), key); + } + public boolean consumerSetInt32(twrap_media_type_t media, String key, int value) { return tinyWRAPJNI.MediaSessionMgr_consumerSetInt32(swigCPtr, this, media.swigValue(), key, value); } @@ -179,4 +183,8 @@ public class MediaSessionMgr { return tinyWRAPJNI.MediaSessionMgr_defaultsSetInviteSessionTimers(timeout, refresher); } + public static boolean defaultsSetSRtpMode(tmedia_srtp_mode_t mode) { + return tinyWRAPJNI.MediaSessionMgr_defaultsSetSRtpMode(mode.swigValue()); + } + } diff --git a/branches/2.0/doubango/bindings/java/android/ProxyPluginMgr.java b/branches/2.0/doubango/bindings/java/android/ProxyPluginMgr.java index 5ae2c20d..31607765 100644 --- a/branches/2.0/doubango/bindings/java/android/ProxyPluginMgr.java +++ b/branches/2.0/doubango/bindings/java/android/ProxyPluginMgr.java @@ -43,6 +43,11 @@ public class ProxyPluginMgr { return (cPtr == 0) ? null : new ProxyPluginMgr(cPtr, false); } + public ProxyPlugin findPlugin(java.math.BigInteger id) { + long cPtr = tinyWRAPJNI.ProxyPluginMgr_findPlugin(swigCPtr, this, id); + return (cPtr == 0) ? null : new ProxyPlugin(cPtr, false); + } + public ProxyAudioConsumer findAudioConsumer(java.math.BigInteger id) { long cPtr = tinyWRAPJNI.ProxyPluginMgr_findAudioConsumer(swigCPtr, this, id); return (cPtr == 0) ? null : new ProxyAudioConsumer(cPtr, false); diff --git a/branches/2.0/doubango/bindings/java/android/buildAll.sh b/branches/2.0/doubango/bindings/java/android/buildAll.sh index 805e4131..40347fc1 100644 --- a/branches/2.0/doubango/bindings/java/android/buildAll.sh +++ b/branches/2.0/doubango/bindings/java/android/buildAll.sh @@ -2,7 +2,7 @@ # Build tinyWRAP for Google Android Systems for project in tinySAK tinyNET tinyHTTP tinyXCAP tinyIPSec tinySMS tinySIGCOMP tinySDP tinyRTP tinyMSRP tinyMEDIA tinyDAV tinySIP -#for project in tinyDAV +#for project in tinyRTP tinyDAV do echo -e building "$project with parameters=$@\n" make PROJECT=$project clean diff --git a/branches/2.0/doubango/bindings/java/android/commercial.sh b/branches/2.0/doubango/bindings/java/android/commercial.sh index ff0e68f9..094c2ab1 100644 --- a/branches/2.0/doubango/bindings/java/android/commercial.sh +++ b/branches/2.0/doubango/bindings/java/android/commercial.sh @@ -2,7 +2,7 @@ # Build tinyWRAP for Google Android Systems # GPL parameters -export COMMERCIAL_PARAMS="LICENSE=lgpl FFMPEG=yes H264=no THEORA=yes OPENCORE_AMR=no SPEEX_DSP=yes SPEEX_JB=yes SPEEX_RESAMPLER=yes SPEEX_DENOISE=yes SPEEX=yes ILBC=yes LIBGSM=yes G729=no" +export COMMERCIAL_PARAMS="LICENSE=lgpl FFMPEG=yes H264=no THEORA=yes OPENCORE_AMR=no SPEEX_DSP=yes SPEEX_JB=yes SPEEX_RESAMPLER=yes SPEEX_DENOISE=yes SPEEX=yes ILBC=yes LIBGSM=yes G729=no SRTP=yes" for IS_NEON in no yes do diff --git a/branches/2.0/doubango/bindings/java/android/droid-makefile b/branches/2.0/doubango/bindings/java/android/droid-makefile index ac151c1c..2b66ae61 100644 --- a/branches/2.0/doubango/bindings/java/android/droid-makefile +++ b/branches/2.0/doubango/bindings/java/android/droid-makefile @@ -70,13 +70,17 @@ else G729_LDFLAGS := endif +ifneq ($(SRTP),no) + LIBSRTP_LDFLAGS := -lsrtp +endif + ifeq ($(LT),shared) _LT=Bdynamic else _LT=Bstatic endif -LDFLAGS := $(LDFLAGS_LIB) -L$(THIRDPARTIES_LIB) -L$(THIRDPARTIES_MARCH_LIB) $(FFMPEG_LDFLAGS) $(VPX_LDLAGS) $(WEBRTC_LDFLAGS) $(SPEEX_DSP_LDFLAGS) $(SPEEX_LDFLAGS) $(OPENCORE_ARM_LDFLAGS) $(BV16_LDFLAGS) $(ILBC_LDFLAGS) $(LIBGSM_LDFLAGS) $(G729_LDFLAGS)\ +LDFLAGS := $(LDFLAGS_LIB) -L$(THIRDPARTIES_LIB) -L$(THIRDPARTIES_MARCH_LIB) $(FFMPEG_LDFLAGS) $(VPX_LDLAGS) $(WEBRTC_LDFLAGS) $(SPEEX_DSP_LDFLAGS) $(SPEEX_LDFLAGS) $(OPENCORE_ARM_LDFLAGS) $(BV16_LDFLAGS) $(ILBC_LDFLAGS) $(LIBGSM_LDFLAGS) $(G729_LDFLAGS) $(LIBSRTP_LDFLAGS)\ -Wl,-Bdynamic -lm -lstdc++ -lgcc -llog \ -Wl,-$(_LT) -ltinySAK_$(MARCH) -ltinyHTTP_$(MARCH) -ltinyXCAP_$(MARCH) -ltinyIPSec_$(MARCH) -ltinySIGCOMP_$(MARCH) -ltinySMS_$(MARCH) -ltinyNET_$(MARCH) -ltinySDP_$(MARCH) -ltinyRTP_$(MARCH) -ltinyMEDIA_$(MARCH) -ltinyMSRP_$(MARCH) -ltinyDAV_$(MARCH) -ltinySIP_$(MARCH) diff --git a/branches/2.0/doubango/bindings/java/android/gpl.sh b/branches/2.0/doubango/bindings/java/android/gpl.sh index 338f4ce3..c7022f54 100644 --- a/branches/2.0/doubango/bindings/java/android/gpl.sh +++ b/branches/2.0/doubango/bindings/java/android/gpl.sh @@ -2,7 +2,7 @@ # Build tinyWRAP for Google Android Systems # GPL parameters -export GPL_PARAMS="LICENSE=gpl NO_FREE=yes FFMPEG=yes H264=yes THEORA=yes OPENCORE_AMR=yes SPEEX_DSP=yes SPEEX_JB=yes SPEEX_RESAMPLER=yes SPEEX_DENOISE=1 SPEEX=yes ILBC=yes LIBGSM=yes G729=yes" +export GPL_PARAMS="LICENSE=gpl NO_FREE=yes FFMPEG=yes H264=yes THEORA=yes OPENCORE_AMR=yes SPEEX_DSP=yes SPEEX_JB=yes SPEEX_RESAMPLER=yes SPEEX_DENOISE=1 SPEEX=yes ILBC=yes LIBGSM=yes G729=yes SRTP=yes" for IS_NEON in no yes do diff --git a/branches/2.0/doubango/bindings/java/android/lgpl.sh b/branches/2.0/doubango/bindings/java/android/lgpl.sh index 74b9d310..31725a34 100644 --- a/branches/2.0/doubango/bindings/java/android/lgpl.sh +++ b/branches/2.0/doubango/bindings/java/android/lgpl.sh @@ -2,7 +2,7 @@ # Build tinyWRAP for Google Android Systems # GPL parameters -export LGPL_PARAMS="LICENSE=lgpl FFMPEG=yes H264=no THEORA=yes OPENCORE_AMR=yes SPEEX_DSP=yes SPEEX_JB=yes SPEEX_RESAMPLER=yes SPEEX_DENOISE=yes SPEEX=yes ILBC=yes LIBGSM=yes G729=yes" +export LGPL_PARAMS="LICENSE=lgpl FFMPEG=yes H264=no THEORA=yes OPENCORE_AMR=yes SPEEX_DSP=yes SPEEX_JB=yes SPEEX_RESAMPLER=yes SPEEX_DENOISE=yes SPEEX=yes ILBC=yes LIBGSM=yes G729=yes SRTP=yes" for IS_NEON in no yes do diff --git a/branches/2.0/doubango/bindings/java/android/minimal.sh b/branches/2.0/doubango/bindings/java/android/minimal.sh index 216a6004..3a4289ce 100644 --- a/branches/2.0/doubango/bindings/java/android/minimal.sh +++ b/branches/2.0/doubango/bindings/java/android/minimal.sh @@ -2,7 +2,7 @@ # Build tinyWRAP for Google Android Systems # GPL parameters -export MINIMAL_PARAMS="FFMPEG=no H264=no THEORA=no OPENCORE_AMR=no SPEEX_DSP=yes SPEEX_JB=yes SPEEX_RESAMPLER=yes SPEEX_DENOISE=yes SPEEX=no ILBC=no LIBGSM=no G729=no" +export MINIMAL_PARAMS="FFMPEG=no H264=no THEORA=no OPENCORE_AMR=no SPEEX_DSP=yes SPEEX_JB=yes SPEEX_RESAMPLER=yes SPEEX_DENOISE=yes SPEEX=no ILBC=no LIBGSM=no G729=no SRTP=yes" for IS_NEON in no yes do diff --git a/branches/2.0/doubango/bindings/java/android/tinyWRAPJNI.java b/branches/2.0/doubango/bindings/java/android/tinyWRAPJNI.java index 9d2c35a5..a77d95e6 100644 --- a/branches/2.0/doubango/bindings/java/android/tinyWRAPJNI.java +++ b/branches/2.0/doubango/bindings/java/android/tinyWRAPJNI.java @@ -36,6 +36,7 @@ class tinyWRAPJNI { public final static native long ActionConfig_setMediaInt(long jarg1, ActionConfig jarg1_, int jarg2, String jarg3, int jarg4); public final static native void delete_MediaSessionMgr(long jarg1); public final static native boolean MediaSessionMgr_sessionSetInt32(long jarg1, MediaSessionMgr jarg1_, int jarg2, String jarg3, int jarg4); + public final static native int MediaSessionMgr_sessionGetInt32(long jarg1, MediaSessionMgr jarg1_, int jarg2, String jarg3); public final static native boolean MediaSessionMgr_consumerSetInt32(long jarg1, MediaSessionMgr jarg1_, int jarg2, String jarg3, int jarg4); public final static native boolean MediaSessionMgr_consumerSetInt64(long jarg1, MediaSessionMgr jarg1_, int jarg2, String jarg3, long jarg4); public final static native boolean MediaSessionMgr_producerSetInt32(long jarg1, MediaSessionMgr jarg1_, int jarg2, String jarg3, int jarg4); @@ -71,6 +72,7 @@ class tinyWRAPJNI { public final static native boolean MediaSessionMgr_defaultsSetVolume(int jarg1); public final static native int MediaSessionMgr_defaultsGetVolume(); public final static native boolean MediaSessionMgr_defaultsSetInviteSessionTimers(int jarg1, String jarg2); + public final static native boolean MediaSessionMgr_defaultsSetSRtpMode(int jarg1); public final static native void delete_MediaContent(long jarg1); public final static native String MediaContent_getType(long jarg1, MediaContent jarg1_); public final static native long MediaContent_getDataLength(long jarg1, MediaContent jarg1_); @@ -263,6 +265,7 @@ class tinyWRAPJNI { public final static native void delete_ProxyPluginMgr(long jarg1); public final static native long ProxyPluginMgr_createInstance(long jarg1, ProxyPluginMgrCallback jarg1_); public final static native long ProxyPluginMgr_getInstance(); + public final static native long ProxyPluginMgr_findPlugin(long jarg1, ProxyPluginMgr jarg1_, java.math.BigInteger jarg2); public final static native long ProxyPluginMgr_findAudioConsumer(long jarg1, ProxyPluginMgr jarg1_, java.math.BigInteger jarg2); public final static native long ProxyPluginMgr_findVideoConsumer(long jarg1, ProxyPluginMgr jarg1_, java.math.BigInteger jarg2); public final static native long ProxyPluginMgr_findAudioProducer(long jarg1, ProxyPluginMgr jarg1_, java.math.BigInteger jarg2); diff --git a/branches/2.0/doubango/bindings/java/android/tinyWRAP_wrap.cxx b/branches/2.0/doubango/bindings/java/android/tinyWRAP_wrap.cxx index 01dd799e..6be82165 100644 --- a/branches/2.0/doubango/bindings/java/android/tinyWRAP_wrap.cxx +++ b/branches/2.0/doubango/bindings/java/android/tinyWRAP_wrap.cxx @@ -2322,6 +2322,30 @@ SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_MediaSessionM } +SWIGEXPORT jint JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_MediaSessionMgr_1sessionGetInt32(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jstring jarg3) { + jint jresult = 0 ; + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + char *arg3 = (char *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(MediaSessionMgr **)&jarg1; + arg2 = (twrap_media_type_t)jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + result = (int32_t)(arg1)->sessionGetInt32(arg2,(char const *)arg3); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; +} + + SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_MediaSessionMgr_1consumerSetInt32(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jstring jarg3, jint jarg4) { jboolean jresult = 0 ; MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; @@ -2878,6 +2902,20 @@ SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_MediaSessionM } +SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_MediaSessionMgr_1defaultsSetSRtpMode(JNIEnv *jenv, jclass jcls, jint jarg1) { + jboolean jresult = 0 ; + tmedia_srtp_mode_t arg1 ; + bool result; + + (void)jenv; + (void)jcls; + arg1 = (tmedia_srtp_mode_t)jarg1; + result = (bool)MediaSessionMgr::defaultsSetSRtpMode(arg1); + jresult = (jboolean)result; + return jresult; +} + + SWIGEXPORT void JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_delete_1MediaContent(JNIEnv *jenv, jclass jcls, jlong jarg1) { MediaContent *arg1 = (MediaContent *) 0 ; @@ -6138,6 +6176,45 @@ SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_ProxyPluginMgr_1 } +SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_ProxyPluginMgr_1findPlugin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2) { + jlong jresult = 0 ; + ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; + uint64_t arg2 ; + ProxyPlugin *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(ProxyPluginMgr **)&jarg1; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg2) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return 0; + } + clazz = jenv->GetObjectClass(jarg2); + mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); + ba = (jbyteArray)jenv->CallObjectMethod(jarg2, mid); + bae = jenv->GetByteArrayElements(ba, 0); + sz = jenv->GetArrayLength(ba); + arg2 = 0; + for(i=0; iReleaseByteArrayElements(ba, bae, 0); + } + result = (ProxyPlugin *)(arg1)->findPlugin(arg2); + *(ProxyPlugin **)&jresult = result; + return jresult; +} + + SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_ProxyPluginMgr_1findAudioConsumer(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2) { jlong jresult = 0 ; ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; diff --git a/branches/2.0/doubango/bindings/java/android/tmedia_srtp_mode_t.java b/branches/2.0/doubango/bindings/java/android/tmedia_srtp_mode_t.java new file mode 100644 index 00000000..63a3c47e --- /dev/null +++ b/branches/2.0/doubango/bindings/java/android/tmedia_srtp_mode_t.java @@ -0,0 +1,53 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 1.3.39 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + +package org.doubango.tinyWRAP; + +public enum tmedia_srtp_mode_t { + tmedia_srtp_mode_none, + tmedia_srtp_mode_optional, + tmedia_srtp_mode_mandatory; + + public final int swigValue() { + return swigValue; + } + + public static tmedia_srtp_mode_t swigToEnum(int swigValue) { + tmedia_srtp_mode_t[] swigValues = tmedia_srtp_mode_t.class.getEnumConstants(); + if (swigValue < swigValues.length && swigValue >= 0 && swigValues[swigValue].swigValue == swigValue) + return swigValues[swigValue]; + for (tmedia_srtp_mode_t swigEnum : swigValues) + if (swigEnum.swigValue == swigValue) + return swigEnum; + throw new IllegalArgumentException("No enum " + tmedia_srtp_mode_t.class + " with value " + swigValue); + } + + @SuppressWarnings("unused") + private tmedia_srtp_mode_t() { + this.swigValue = SwigNext.next++; + } + + @SuppressWarnings("unused") + private tmedia_srtp_mode_t(int swigValue) { + this.swigValue = swigValue; + SwigNext.next = swigValue+1; + } + + @SuppressWarnings("unused") + private tmedia_srtp_mode_t(tmedia_srtp_mode_t swigEnum) { + this.swigValue = swigEnum.swigValue; + SwigNext.next = this.swigValue+1; + } + + private final int swigValue; + + private static class SwigNext { + private static int next = 0; + } +} + diff --git a/branches/2.0/doubango/bindings/java/tinyWRAPJNI.java b/branches/2.0/doubango/bindings/java/tinyWRAPJNI.java index 9d2c35a5..a77d95e6 100644 --- a/branches/2.0/doubango/bindings/java/tinyWRAPJNI.java +++ b/branches/2.0/doubango/bindings/java/tinyWRAPJNI.java @@ -36,6 +36,7 @@ class tinyWRAPJNI { public final static native long ActionConfig_setMediaInt(long jarg1, ActionConfig jarg1_, int jarg2, String jarg3, int jarg4); public final static native void delete_MediaSessionMgr(long jarg1); public final static native boolean MediaSessionMgr_sessionSetInt32(long jarg1, MediaSessionMgr jarg1_, int jarg2, String jarg3, int jarg4); + public final static native int MediaSessionMgr_sessionGetInt32(long jarg1, MediaSessionMgr jarg1_, int jarg2, String jarg3); public final static native boolean MediaSessionMgr_consumerSetInt32(long jarg1, MediaSessionMgr jarg1_, int jarg2, String jarg3, int jarg4); public final static native boolean MediaSessionMgr_consumerSetInt64(long jarg1, MediaSessionMgr jarg1_, int jarg2, String jarg3, long jarg4); public final static native boolean MediaSessionMgr_producerSetInt32(long jarg1, MediaSessionMgr jarg1_, int jarg2, String jarg3, int jarg4); @@ -71,6 +72,7 @@ class tinyWRAPJNI { public final static native boolean MediaSessionMgr_defaultsSetVolume(int jarg1); public final static native int MediaSessionMgr_defaultsGetVolume(); public final static native boolean MediaSessionMgr_defaultsSetInviteSessionTimers(int jarg1, String jarg2); + public final static native boolean MediaSessionMgr_defaultsSetSRtpMode(int jarg1); public final static native void delete_MediaContent(long jarg1); public final static native String MediaContent_getType(long jarg1, MediaContent jarg1_); public final static native long MediaContent_getDataLength(long jarg1, MediaContent jarg1_); @@ -263,6 +265,7 @@ class tinyWRAPJNI { public final static native void delete_ProxyPluginMgr(long jarg1); public final static native long ProxyPluginMgr_createInstance(long jarg1, ProxyPluginMgrCallback jarg1_); public final static native long ProxyPluginMgr_getInstance(); + public final static native long ProxyPluginMgr_findPlugin(long jarg1, ProxyPluginMgr jarg1_, java.math.BigInteger jarg2); public final static native long ProxyPluginMgr_findAudioConsumer(long jarg1, ProxyPluginMgr jarg1_, java.math.BigInteger jarg2); public final static native long ProxyPluginMgr_findVideoConsumer(long jarg1, ProxyPluginMgr jarg1_, java.math.BigInteger jarg2); public final static native long ProxyPluginMgr_findAudioProducer(long jarg1, ProxyPluginMgr jarg1_, java.math.BigInteger jarg2); diff --git a/branches/2.0/doubango/bindings/java/tinyWRAP_wrap.cxx b/branches/2.0/doubango/bindings/java/tinyWRAP_wrap.cxx index dc66d041..d58a2067 100644 --- a/branches/2.0/doubango/bindings/java/tinyWRAP_wrap.cxx +++ b/branches/2.0/doubango/bindings/java/tinyWRAP_wrap.cxx @@ -2322,6 +2322,30 @@ SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_MediaSessionM } +SWIGEXPORT jint JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_MediaSessionMgr_1sessionGetInt32(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jstring jarg3) { + jint jresult = 0 ; + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + char *arg3 = (char *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(MediaSessionMgr **)&jarg1; + arg2 = (twrap_media_type_t)jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + result = (int32_t)(arg1)->sessionGetInt32(arg2,(char const *)arg3); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; +} + + SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_MediaSessionMgr_1consumerSetInt32(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jstring jarg3, jint jarg4) { jboolean jresult = 0 ; MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; @@ -2878,6 +2902,20 @@ SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_MediaSessionM } +SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_MediaSessionMgr_1defaultsSetSRtpMode(JNIEnv *jenv, jclass jcls, jint jarg1) { + jboolean jresult = 0 ; + tmedia_srtp_mode_t arg1 ; + bool result; + + (void)jenv; + (void)jcls; + arg1 = (tmedia_srtp_mode_t)jarg1; + result = (bool)MediaSessionMgr::defaultsSetSRtpMode(arg1); + jresult = (jboolean)result; + return jresult; +} + + SWIGEXPORT void JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_delete_1MediaContent(JNIEnv *jenv, jclass jcls, jlong jarg1) { MediaContent *arg1 = (MediaContent *) 0 ; @@ -6138,6 +6176,45 @@ SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_ProxyPluginMgr_1 } +SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_ProxyPluginMgr_1findPlugin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2) { + jlong jresult = 0 ; + ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; + uint64_t arg2 ; + ProxyPlugin *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(ProxyPluginMgr **)&jarg1; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg2) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return 0; + } + clazz = jenv->GetObjectClass(jarg2); + mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); + ba = (jbyteArray)jenv->CallObjectMethod(jarg2, mid); + bae = jenv->GetByteArrayElements(ba, 0); + sz = jenv->GetArrayLength(ba); + arg2 = 0; + for(i=0; iReleaseByteArrayElements(ba, bae, 0); + } + result = (ProxyPlugin *)(arg1)->findPlugin(arg2); + *(ProxyPlugin **)&jresult = result; + return jresult; +} + + SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_ProxyPluginMgr_1findAudioConsumer(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2) { jlong jresult = 0 ; ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; diff --git a/branches/2.0/doubango/bindings/java/tmedia_srtp_mode_t.java b/branches/2.0/doubango/bindings/java/tmedia_srtp_mode_t.java new file mode 100644 index 00000000..63a3c47e --- /dev/null +++ b/branches/2.0/doubango/bindings/java/tmedia_srtp_mode_t.java @@ -0,0 +1,53 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 1.3.39 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + +package org.doubango.tinyWRAP; + +public enum tmedia_srtp_mode_t { + tmedia_srtp_mode_none, + tmedia_srtp_mode_optional, + tmedia_srtp_mode_mandatory; + + public final int swigValue() { + return swigValue; + } + + public static tmedia_srtp_mode_t swigToEnum(int swigValue) { + tmedia_srtp_mode_t[] swigValues = tmedia_srtp_mode_t.class.getEnumConstants(); + if (swigValue < swigValues.length && swigValue >= 0 && swigValues[swigValue].swigValue == swigValue) + return swigValues[swigValue]; + for (tmedia_srtp_mode_t swigEnum : swigValues) + if (swigEnum.swigValue == swigValue) + return swigEnum; + throw new IllegalArgumentException("No enum " + tmedia_srtp_mode_t.class + " with value " + swigValue); + } + + @SuppressWarnings("unused") + private tmedia_srtp_mode_t() { + this.swigValue = SwigNext.next++; + } + + @SuppressWarnings("unused") + private tmedia_srtp_mode_t(int swigValue) { + this.swigValue = swigValue; + SwigNext.next = swigValue+1; + } + + @SuppressWarnings("unused") + private tmedia_srtp_mode_t(tmedia_srtp_mode_t swigEnum) { + this.swigValue = swigEnum.swigValue; + SwigNext.next = this.swigValue+1; + } + + private final int swigValue; + + private static class SwigNext { + private static int next = 0; + } +} + diff --git a/branches/2.0/doubango/bindings/perl/tinyWRAP.pm b/branches/2.0/doubango/bindings/perl/tinyWRAP.pm index ebd88746..681f037b 100644 --- a/branches/2.0/doubango/bindings/perl/tinyWRAP.pm +++ b/branches/2.0/doubango/bindings/perl/tinyWRAP.pm @@ -193,6 +193,7 @@ sub DESTROY { } *sessionSetInt32 = *tinyWRAPc::MediaSessionMgr_sessionSetInt32; +*sessionGetInt32 = *tinyWRAPc::MediaSessionMgr_sessionGetInt32; *consumerSetInt32 = *tinyWRAPc::MediaSessionMgr_consumerSetInt32; *consumerSetInt64 = *tinyWRAPc::MediaSessionMgr_consumerSetInt64; *producerSetInt32 = *tinyWRAPc::MediaSessionMgr_producerSetInt32; @@ -228,6 +229,7 @@ sub DESTROY { *defaultsSetVolume = *tinyWRAPc::MediaSessionMgr_defaultsSetVolume; *defaultsGetVolume = *tinyWRAPc::MediaSessionMgr_defaultsGetVolume; *defaultsSetInviteSessionTimers = *tinyWRAPc::MediaSessionMgr_defaultsSetInviteSessionTimers; +*defaultsSetSRtpMode = *tinyWRAPc::MediaSessionMgr_defaultsSetSRtpMode; sub DISOWN { my $self = shift; my $ptr = tied(%$self); @@ -1218,6 +1220,7 @@ sub DESTROY { *createInstance = *tinyWRAPc::ProxyPluginMgr_createInstance; *getInstance = *tinyWRAPc::ProxyPluginMgr_getInstance; +*findPlugin = *tinyWRAPc::ProxyPluginMgr_findPlugin; *findAudioConsumer = *tinyWRAPc::ProxyPluginMgr_findAudioConsumer; *findVideoConsumer = *tinyWRAPc::ProxyPluginMgr_findVideoConsumer; *findAudioProducer = *tinyWRAPc::ProxyPluginMgr_findAudioProducer; @@ -2390,6 +2393,9 @@ package tinyWRAP; *tmedia_chroma_yuv422p = *tinyWRAPc::tmedia_chroma_yuv422p; *tmedia_chroma_uyvy422 = *tinyWRAPc::tmedia_chroma_uyvy422; *tmedia_chroma_yuv420p = *tinyWRAPc::tmedia_chroma_yuv420p; +*tmedia_srtp_mode_none = *tinyWRAPc::tmedia_srtp_mode_none; +*tmedia_srtp_mode_optional = *tinyWRAPc::tmedia_srtp_mode_optional; +*tmedia_srtp_mode_mandatory = *tinyWRAPc::tmedia_srtp_mode_mandatory; *tmedia_qos_stype_none = *tinyWRAPc::tmedia_qos_stype_none; *tmedia_qos_stype_segmented = *tinyWRAPc::tmedia_qos_stype_segmented; *tmedia_qos_stype_e2e = *tinyWRAPc::tmedia_qos_stype_e2e; diff --git a/branches/2.0/doubango/bindings/perl/tinyWRAP_wrap.cxx b/branches/2.0/doubango/bindings/perl/tinyWRAP_wrap.cxx index abc08a8f..66db6e56 100644 --- a/branches/2.0/doubango/bindings/perl/tinyWRAP_wrap.cxx +++ b/branches/2.0/doubango/bindings/perl/tinyWRAP_wrap.cxx @@ -1561,28 +1561,29 @@ SWIG_Perl_SetModule(swig_module_info *module) { #define SWIGTYPE_p_tmedia_chroma_e swig_types[63] #define SWIGTYPE_p_tmedia_qos_strength_e swig_types[64] #define SWIGTYPE_p_tmedia_qos_stype_e swig_types[65] -#define SWIGTYPE_p_tmsrp_event_type_e swig_types[66] -#define SWIGTYPE_p_tmsrp_request_type_e swig_types[67] -#define SWIGTYPE_p_tsip_event_type_e swig_types[68] -#define SWIGTYPE_p_tsip_info_event_type_e swig_types[69] -#define SWIGTYPE_p_tsip_invite_event_type_e swig_types[70] -#define SWIGTYPE_p_tsip_message_event_type_e swig_types[71] -#define SWIGTYPE_p_tsip_options_event_type_e swig_types[72] -#define SWIGTYPE_p_tsip_publish_event_type_e swig_types[73] -#define SWIGTYPE_p_tsip_register_event_type_e swig_types[74] -#define SWIGTYPE_p_tsip_request_type_e swig_types[75] -#define SWIGTYPE_p_tsip_subscribe_event_type_e swig_types[76] -#define SWIGTYPE_p_tsk_list_t swig_types[77] -#define SWIGTYPE_p_twrap_media_type_e swig_types[78] -#define SWIGTYPE_p_twrap_proxy_plugin_type_e swig_types[79] -#define SWIGTYPE_p_twrap_rpmessage_type_e swig_types[80] -#define SWIGTYPE_p_twrap_sms_type_e swig_types[81] -#define SWIGTYPE_p_unsigned_char swig_types[82] -#define SWIGTYPE_p_unsigned_int swig_types[83] -#define SWIGTYPE_p_unsigned_long_long swig_types[84] -#define SWIGTYPE_p_unsigned_short swig_types[85] -static swig_type_info *swig_types[87]; -static swig_module_info swig_module = {swig_types, 86, 0, 0, 0, 0}; +#define SWIGTYPE_p_tmedia_srtp_mode_e swig_types[66] +#define SWIGTYPE_p_tmsrp_event_type_e swig_types[67] +#define SWIGTYPE_p_tmsrp_request_type_e swig_types[68] +#define SWIGTYPE_p_tsip_event_type_e swig_types[69] +#define SWIGTYPE_p_tsip_info_event_type_e swig_types[70] +#define SWIGTYPE_p_tsip_invite_event_type_e swig_types[71] +#define SWIGTYPE_p_tsip_message_event_type_e swig_types[72] +#define SWIGTYPE_p_tsip_options_event_type_e swig_types[73] +#define SWIGTYPE_p_tsip_publish_event_type_e swig_types[74] +#define SWIGTYPE_p_tsip_register_event_type_e swig_types[75] +#define SWIGTYPE_p_tsip_request_type_e swig_types[76] +#define SWIGTYPE_p_tsip_subscribe_event_type_e swig_types[77] +#define SWIGTYPE_p_tsk_list_t swig_types[78] +#define SWIGTYPE_p_twrap_media_type_e swig_types[79] +#define SWIGTYPE_p_twrap_proxy_plugin_type_e swig_types[80] +#define SWIGTYPE_p_twrap_rpmessage_type_e swig_types[81] +#define SWIGTYPE_p_twrap_sms_type_e swig_types[82] +#define SWIGTYPE_p_unsigned_char swig_types[83] +#define SWIGTYPE_p_unsigned_int swig_types[84] +#define SWIGTYPE_p_unsigned_long_long swig_types[85] +#define SWIGTYPE_p_unsigned_short swig_types[86] +static swig_type_info *swig_types[88]; +static swig_module_info swig_module = {swig_types, 87, 0, 0, 0, 0}; #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name) #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name) @@ -3101,6 +3102,55 @@ XS(_wrap_MediaSessionMgr_sessionSetInt32) { } +XS(_wrap_MediaSessionMgr_sessionGetInt32) { + { + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + char *arg3 = (char *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + int val2 ; + int ecode2 = 0 ; + int res3 ; + char *buf3 = 0 ; + int alloc3 = 0 ; + int argvi = 0; + int32_t result; + dXSARGS; + + if ((items < 3) || (items > 3)) { + SWIG_croak("Usage: MediaSessionMgr_sessionGetInt32(self,media,key);"); + } + res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_MediaSessionMgr, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MediaSessionMgr_sessionGetInt32" "', argument " "1"" of type '" "MediaSessionMgr *""'"); + } + arg1 = reinterpret_cast< MediaSessionMgr * >(argp1); + ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "MediaSessionMgr_sessionGetInt32" "', argument " "2"" of type '" "twrap_media_type_t""'"); + } + arg2 = static_cast< twrap_media_type_t >(val2); + res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3); + if (!SWIG_IsOK(res3)) { + SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "MediaSessionMgr_sessionGetInt32" "', argument " "3"" of type '" "char const *""'"); + } + arg3 = reinterpret_cast< char * >(buf3); + result = (int32_t)(arg1)->sessionGetInt32(arg2,(char const *)arg3); + ST(argvi) = SWIG_From_int SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ; + + + if (alloc3 == SWIG_NEWOBJ) delete[] buf3; + XSRETURN(argvi); + fail: + + + if (alloc3 == SWIG_NEWOBJ) delete[] buf3; + SWIG_croak_null(); + } +} + + XS(_wrap_MediaSessionMgr_consumerSetInt32) { { MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; @@ -4176,6 +4226,34 @@ XS(_wrap_MediaSessionMgr_defaultsSetInviteSessionTimers) { } +XS(_wrap_MediaSessionMgr_defaultsSetSRtpMode) { + { + tmedia_srtp_mode_t arg1 ; + int val1 ; + int ecode1 = 0 ; + int argvi = 0; + bool result; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: MediaSessionMgr_defaultsSetSRtpMode(mode);"); + } + ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1); + if (!SWIG_IsOK(ecode1)) { + SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "MediaSessionMgr_defaultsSetSRtpMode" "', argument " "1"" of type '" "tmedia_srtp_mode_t""'"); + } + arg1 = static_cast< tmedia_srtp_mode_t >(val1); + result = (bool)MediaSessionMgr::defaultsSetSRtpMode(arg1); + ST(argvi) = SWIG_From_bool SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ; + + XSRETURN(argvi); + fail: + + SWIG_croak_null(); + } +} + + XS(_wrap_delete_MediaContent) { { MediaContent *arg1 = (MediaContent *) 0 ; @@ -14204,6 +14282,44 @@ XS(_wrap_ProxyPluginMgr_getInstance) { } +XS(_wrap_ProxyPluginMgr_findPlugin) { + { + ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; + uint64_t arg2 ; + void *argp1 = 0 ; + int res1 = 0 ; + unsigned long long val2 ; + int ecode2 = 0 ; + int argvi = 0; + ProxyPlugin *result = 0 ; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: ProxyPluginMgr_findPlugin(self,id);"); + } + res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_ProxyPluginMgr, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ProxyPluginMgr_findPlugin" "', argument " "1"" of type '" "ProxyPluginMgr *""'"); + } + arg1 = reinterpret_cast< ProxyPluginMgr * >(argp1); + ecode2 = SWIG_AsVal_unsigned_SS_long_SS_long SWIG_PERL_CALL_ARGS_2(ST(1), &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ProxyPluginMgr_findPlugin" "', argument " "2"" of type '" "uint64_t""'"); + } + arg2 = static_cast< uint64_t >(val2); + result = (ProxyPlugin *)(arg1)->findPlugin(arg2); + ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_ProxyPlugin, 0 | SWIG_SHADOW); argvi++ ; + + + XSRETURN(argvi); + fail: + + + SWIG_croak_null(); + } +} + + XS(_wrap_ProxyPluginMgr_findAudioConsumer) { { ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; @@ -23160,6 +23276,7 @@ static swig_type_info _swigt__p_tmedia_bandwidth_level_e = {"_p_tmedia_bandwidth static swig_type_info _swigt__p_tmedia_chroma_e = {"_p_tmedia_chroma_e", "tmedia_chroma_t *|enum tmedia_chroma_e *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_tmedia_qos_strength_e = {"_p_tmedia_qos_strength_e", "tmedia_qos_strength_t *|enum tmedia_qos_strength_e *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_tmedia_qos_stype_e = {"_p_tmedia_qos_stype_e", "enum tmedia_qos_stype_e *|tmedia_qos_stype_t *", 0, 0, (void*)0, 0}; +static swig_type_info _swigt__p_tmedia_srtp_mode_e = {"_p_tmedia_srtp_mode_e", "enum tmedia_srtp_mode_e *|tmedia_srtp_mode_t *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_tmsrp_event_type_e = {"_p_tmsrp_event_type_e", "enum tmsrp_event_type_e *|tmsrp_event_type_t *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_tmsrp_request_type_e = {"_p_tmsrp_request_type_e", "enum tmsrp_request_type_e *|tmsrp_request_type_t *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_tsip_event_type_e = {"_p_tsip_event_type_e", "enum tsip_event_type_e *|tsip_event_type_t *", 0, 0, (void*)0, 0}; @@ -23248,6 +23365,7 @@ static swig_type_info *swig_type_initial[] = { &_swigt__p_tmedia_chroma_e, &_swigt__p_tmedia_qos_strength_e, &_swigt__p_tmedia_qos_stype_e, + &_swigt__p_tmedia_srtp_mode_e, &_swigt__p_tmsrp_event_type_e, &_swigt__p_tmsrp_request_type_e, &_swigt__p_tsip_event_type_e, @@ -23336,6 +23454,7 @@ static swig_cast_info _swigc__p_tmedia_bandwidth_level_e[] = { {&_swigt__p_tmed static swig_cast_info _swigc__p_tmedia_chroma_e[] = { {&_swigt__p_tmedia_chroma_e, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_tmedia_qos_strength_e[] = { {&_swigt__p_tmedia_qos_strength_e, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_tmedia_qos_stype_e[] = { {&_swigt__p_tmedia_qos_stype_e, 0, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_tmedia_srtp_mode_e[] = { {&_swigt__p_tmedia_srtp_mode_e, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_tmsrp_event_type_e[] = { {&_swigt__p_tmsrp_event_type_e, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_tmsrp_request_type_e[] = { {&_swigt__p_tmsrp_request_type_e, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_tsip_event_type_e[] = { {&_swigt__p_tsip_event_type_e, 0, 0, 0},{0, 0, 0, 0}}; @@ -23424,6 +23543,7 @@ static swig_cast_info *swig_cast_initial[] = { _swigc__p_tmedia_chroma_e, _swigc__p_tmedia_qos_strength_e, _swigc__p_tmedia_qos_stype_e, + _swigc__p_tmedia_srtp_mode_e, _swigc__p_tmsrp_event_type_e, _swigc__p_tmsrp_request_type_e, _swigc__p_tsip_event_type_e, @@ -23480,6 +23600,7 @@ static swig_command_info swig_commands[] = { {"tinyWRAPc::ActionConfig_setMediaInt", _wrap_ActionConfig_setMediaInt}, {"tinyWRAPc::delete_MediaSessionMgr", _wrap_delete_MediaSessionMgr}, {"tinyWRAPc::MediaSessionMgr_sessionSetInt32", _wrap_MediaSessionMgr_sessionSetInt32}, +{"tinyWRAPc::MediaSessionMgr_sessionGetInt32", _wrap_MediaSessionMgr_sessionGetInt32}, {"tinyWRAPc::MediaSessionMgr_consumerSetInt32", _wrap_MediaSessionMgr_consumerSetInt32}, {"tinyWRAPc::MediaSessionMgr_consumerSetInt64", _wrap_MediaSessionMgr_consumerSetInt64}, {"tinyWRAPc::MediaSessionMgr_producerSetInt32", _wrap_MediaSessionMgr_producerSetInt32}, @@ -23515,6 +23636,7 @@ static swig_command_info swig_commands[] = { {"tinyWRAPc::MediaSessionMgr_defaultsSetVolume", _wrap_MediaSessionMgr_defaultsSetVolume}, {"tinyWRAPc::MediaSessionMgr_defaultsGetVolume", _wrap_MediaSessionMgr_defaultsGetVolume}, {"tinyWRAPc::MediaSessionMgr_defaultsSetInviteSessionTimers", _wrap_MediaSessionMgr_defaultsSetInviteSessionTimers}, +{"tinyWRAPc::MediaSessionMgr_defaultsSetSRtpMode", _wrap_MediaSessionMgr_defaultsSetSRtpMode}, {"tinyWRAPc::delete_MediaContent", _wrap_delete_MediaContent}, {"tinyWRAPc::MediaContent_getType", _wrap_MediaContent_getType}, {"tinyWRAPc::MediaContent_getDataLength", _wrap_MediaContent_getDataLength}, @@ -23660,6 +23782,7 @@ static swig_command_info swig_commands[] = { {"tinyWRAPc::delete_ProxyPluginMgr", _wrap_delete_ProxyPluginMgr}, {"tinyWRAPc::ProxyPluginMgr_createInstance", _wrap_ProxyPluginMgr_createInstance}, {"tinyWRAPc::ProxyPluginMgr_getInstance", _wrap_ProxyPluginMgr_getInstance}, +{"tinyWRAPc::ProxyPluginMgr_findPlugin", _wrap_ProxyPluginMgr_findPlugin}, {"tinyWRAPc::ProxyPluginMgr_findAudioConsumer", _wrap_ProxyPluginMgr_findAudioConsumer}, {"tinyWRAPc::ProxyPluginMgr_findVideoConsumer", _wrap_ProxyPluginMgr_findVideoConsumer}, {"tinyWRAPc::ProxyPluginMgr_findAudioProducer", _wrap_ProxyPluginMgr_findAudioProducer}, @@ -24727,6 +24850,21 @@ XS(SWIG_init) { sv_setsv(sv, SWIG_From_int SWIG_PERL_CALL_ARGS_1(static_cast< int >(tmedia_chroma_yuv420p))); SvREADONLY_on(sv); } while(0) /*@SWIG@*/; + /*@SWIG:/usr/local/share/swig/1.3.39/perl5/perltypemaps.swg,65,%set_constant@*/ do { + SV *sv = get_sv((char*) SWIG_prefix "tmedia_srtp_mode_none", TRUE | 0x2 | GV_ADDMULTI); + sv_setsv(sv, SWIG_From_int SWIG_PERL_CALL_ARGS_1(static_cast< int >(tmedia_srtp_mode_none))); + SvREADONLY_on(sv); + } while(0) /*@SWIG@*/; + /*@SWIG:/usr/local/share/swig/1.3.39/perl5/perltypemaps.swg,65,%set_constant@*/ do { + SV *sv = get_sv((char*) SWIG_prefix "tmedia_srtp_mode_optional", TRUE | 0x2 | GV_ADDMULTI); + sv_setsv(sv, SWIG_From_int SWIG_PERL_CALL_ARGS_1(static_cast< int >(tmedia_srtp_mode_optional))); + SvREADONLY_on(sv); + } while(0) /*@SWIG@*/; + /*@SWIG:/usr/local/share/swig/1.3.39/perl5/perltypemaps.swg,65,%set_constant@*/ do { + SV *sv = get_sv((char*) SWIG_prefix "tmedia_srtp_mode_mandatory", TRUE | 0x2 | GV_ADDMULTI); + sv_setsv(sv, SWIG_From_int SWIG_PERL_CALL_ARGS_1(static_cast< int >(tmedia_srtp_mode_mandatory))); + SvREADONLY_on(sv); + } while(0) /*@SWIG@*/; /*@SWIG:/usr/local/share/swig/1.3.39/perl5/perltypemaps.swg,65,%set_constant@*/ do { SV *sv = get_sv((char*) SWIG_prefix "tmedia_qos_stype_none", TRUE | 0x2 | GV_ADDMULTI); sv_setsv(sv, SWIG_From_int SWIG_PERL_CALL_ARGS_1(static_cast< int >(tmedia_qos_stype_none))); diff --git a/branches/2.0/doubango/bindings/python/tinyWRAP.py b/branches/2.0/doubango/bindings/python/tinyWRAP.py index 6811d169..e59bbed5 100644 --- a/branches/2.0/doubango/bindings/python/tinyWRAP.py +++ b/branches/2.0/doubango/bindings/python/tinyWRAP.py @@ -148,6 +148,7 @@ class MediaSessionMgr(_object): __swig_destroy__ = _tinyWRAP.delete_MediaSessionMgr __del__ = lambda self : None; def sessionSetInt32(self, *args): return _tinyWRAP.MediaSessionMgr_sessionSetInt32(self, *args) + def sessionGetInt32(self, *args): return _tinyWRAP.MediaSessionMgr_sessionGetInt32(self, *args) def consumerSetInt32(self, *args): return _tinyWRAP.MediaSessionMgr_consumerSetInt32(self, *args) def consumerSetInt64(self, *args): return _tinyWRAP.MediaSessionMgr_consumerSetInt64(self, *args) def producerSetInt32(self, *args): return _tinyWRAP.MediaSessionMgr_producerSetInt32(self, *args) @@ -211,6 +212,8 @@ class MediaSessionMgr(_object): if _newclass:defaultsGetVolume = staticmethod(_tinyWRAP.MediaSessionMgr_defaultsGetVolume) __swig_getmethods__["defaultsSetInviteSessionTimers"] = lambda x: _tinyWRAP.MediaSessionMgr_defaultsSetInviteSessionTimers if _newclass:defaultsSetInviteSessionTimers = staticmethod(_tinyWRAP.MediaSessionMgr_defaultsSetInviteSessionTimers) + __swig_getmethods__["defaultsSetSRtpMode"] = lambda x: _tinyWRAP.MediaSessionMgr_defaultsSetSRtpMode + if _newclass:defaultsSetSRtpMode = staticmethod(_tinyWRAP.MediaSessionMgr_defaultsSetSRtpMode) MediaSessionMgr_swigregister = _tinyWRAP.MediaSessionMgr_swigregister MediaSessionMgr_swigregister(MediaSessionMgr) @@ -326,6 +329,10 @@ def MediaSessionMgr_defaultsSetInviteSessionTimers(*args): return _tinyWRAP.MediaSessionMgr_defaultsSetInviteSessionTimers(*args) MediaSessionMgr_defaultsSetInviteSessionTimers = _tinyWRAP.MediaSessionMgr_defaultsSetInviteSessionTimers +def MediaSessionMgr_defaultsSetSRtpMode(*args): + return _tinyWRAP.MediaSessionMgr_defaultsSetSRtpMode(*args) +MediaSessionMgr_defaultsSetSRtpMode = _tinyWRAP.MediaSessionMgr_defaultsSetSRtpMode + class MediaContent(_object): __swig_setmethods__ = {} __setattr__ = lambda self, name, value: _swig_setattr(self, MediaContent, name, value) @@ -829,6 +836,7 @@ class ProxyPluginMgr(_object): if _newclass:createInstance = staticmethod(_tinyWRAP.ProxyPluginMgr_createInstance) __swig_getmethods__["getInstance"] = lambda x: _tinyWRAP.ProxyPluginMgr_getInstance if _newclass:getInstance = staticmethod(_tinyWRAP.ProxyPluginMgr_getInstance) + def findPlugin(self, *args): return _tinyWRAP.ProxyPluginMgr_findPlugin(self, *args) def findAudioConsumer(self, *args): return _tinyWRAP.ProxyPluginMgr_findAudioConsumer(self, *args) def findVideoConsumer(self, *args): return _tinyWRAP.ProxyPluginMgr_findVideoConsumer(self, *args) def findAudioProducer(self, *args): return _tinyWRAP.ProxyPluginMgr_findAudioProducer(self, *args) @@ -1369,6 +1377,9 @@ tmedia_chroma_nv21 = _tinyWRAP.tmedia_chroma_nv21 tmedia_chroma_yuv422p = _tinyWRAP.tmedia_chroma_yuv422p tmedia_chroma_uyvy422 = _tinyWRAP.tmedia_chroma_uyvy422 tmedia_chroma_yuv420p = _tinyWRAP.tmedia_chroma_yuv420p +tmedia_srtp_mode_none = _tinyWRAP.tmedia_srtp_mode_none +tmedia_srtp_mode_optional = _tinyWRAP.tmedia_srtp_mode_optional +tmedia_srtp_mode_mandatory = _tinyWRAP.tmedia_srtp_mode_mandatory tmedia_qos_stype_none = _tinyWRAP.tmedia_qos_stype_none tmedia_qos_stype_segmented = _tinyWRAP.tmedia_qos_stype_segmented tmedia_qos_stype_e2e = _tinyWRAP.tmedia_qos_stype_e2e diff --git a/branches/2.0/doubango/bindings/python/tinyWRAP_wrap.cxx b/branches/2.0/doubango/bindings/python/tinyWRAP_wrap.cxx index fbaeb944..1a4d05b3 100644 --- a/branches/2.0/doubango/bindings/python/tinyWRAP_wrap.cxx +++ b/branches/2.0/doubango/bindings/python/tinyWRAP_wrap.cxx @@ -3187,28 +3187,29 @@ namespace Swig { #define SWIGTYPE_p_tmedia_chroma_e swig_types[63] #define SWIGTYPE_p_tmedia_qos_strength_e swig_types[64] #define SWIGTYPE_p_tmedia_qos_stype_e swig_types[65] -#define SWIGTYPE_p_tmsrp_event_type_e swig_types[66] -#define SWIGTYPE_p_tmsrp_request_type_e swig_types[67] -#define SWIGTYPE_p_tsip_event_type_e swig_types[68] -#define SWIGTYPE_p_tsip_info_event_type_e swig_types[69] -#define SWIGTYPE_p_tsip_invite_event_type_e swig_types[70] -#define SWIGTYPE_p_tsip_message_event_type_e swig_types[71] -#define SWIGTYPE_p_tsip_options_event_type_e swig_types[72] -#define SWIGTYPE_p_tsip_publish_event_type_e swig_types[73] -#define SWIGTYPE_p_tsip_register_event_type_e swig_types[74] -#define SWIGTYPE_p_tsip_request_type_e swig_types[75] -#define SWIGTYPE_p_tsip_subscribe_event_type_e swig_types[76] -#define SWIGTYPE_p_tsk_list_t swig_types[77] -#define SWIGTYPE_p_twrap_media_type_e swig_types[78] -#define SWIGTYPE_p_twrap_proxy_plugin_type_e swig_types[79] -#define SWIGTYPE_p_twrap_rpmessage_type_e swig_types[80] -#define SWIGTYPE_p_twrap_sms_type_e swig_types[81] -#define SWIGTYPE_p_unsigned_char swig_types[82] -#define SWIGTYPE_p_unsigned_int swig_types[83] -#define SWIGTYPE_p_unsigned_long_long swig_types[84] -#define SWIGTYPE_p_unsigned_short swig_types[85] -static swig_type_info *swig_types[87]; -static swig_module_info swig_module = {swig_types, 86, 0, 0, 0, 0}; +#define SWIGTYPE_p_tmedia_srtp_mode_e swig_types[66] +#define SWIGTYPE_p_tmsrp_event_type_e swig_types[67] +#define SWIGTYPE_p_tmsrp_request_type_e swig_types[68] +#define SWIGTYPE_p_tsip_event_type_e swig_types[69] +#define SWIGTYPE_p_tsip_info_event_type_e swig_types[70] +#define SWIGTYPE_p_tsip_invite_event_type_e swig_types[71] +#define SWIGTYPE_p_tsip_message_event_type_e swig_types[72] +#define SWIGTYPE_p_tsip_options_event_type_e swig_types[73] +#define SWIGTYPE_p_tsip_publish_event_type_e swig_types[74] +#define SWIGTYPE_p_tsip_register_event_type_e swig_types[75] +#define SWIGTYPE_p_tsip_request_type_e swig_types[76] +#define SWIGTYPE_p_tsip_subscribe_event_type_e swig_types[77] +#define SWIGTYPE_p_tsk_list_t swig_types[78] +#define SWIGTYPE_p_twrap_media_type_e swig_types[79] +#define SWIGTYPE_p_twrap_proxy_plugin_type_e swig_types[80] +#define SWIGTYPE_p_twrap_rpmessage_type_e swig_types[81] +#define SWIGTYPE_p_twrap_sms_type_e swig_types[82] +#define SWIGTYPE_p_unsigned_char swig_types[83] +#define SWIGTYPE_p_unsigned_int swig_types[84] +#define SWIGTYPE_p_unsigned_long_long swig_types[85] +#define SWIGTYPE_p_unsigned_short swig_types[86] +static swig_type_info *swig_types[88]; +static swig_module_info swig_module = {swig_types, 87, 0, 0, 0, 0}; #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name) #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name) @@ -5892,6 +5893,49 @@ fail: } +SWIGINTERN PyObject *_wrap_MediaSessionMgr_sessionGetInt32(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; + twrap_media_type_t arg2 ; + char *arg3 = (char *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + int val2 ; + int ecode2 = 0 ; + int res3 ; + char *buf3 = 0 ; + int alloc3 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + int32_t result; + + if (!PyArg_ParseTuple(args,(char *)"OOO:MediaSessionMgr_sessionGetInt32",&obj0,&obj1,&obj2)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_MediaSessionMgr, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MediaSessionMgr_sessionGetInt32" "', argument " "1"" of type '" "MediaSessionMgr *""'"); + } + arg1 = reinterpret_cast< MediaSessionMgr * >(argp1); + ecode2 = SWIG_AsVal_int(obj1, &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "MediaSessionMgr_sessionGetInt32" "', argument " "2"" of type '" "twrap_media_type_t""'"); + } + arg2 = static_cast< twrap_media_type_t >(val2); + res3 = SWIG_AsCharPtrAndSize(obj2, &buf3, NULL, &alloc3); + if (!SWIG_IsOK(res3)) { + SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "MediaSessionMgr_sessionGetInt32" "', argument " "3"" of type '" "char const *""'"); + } + arg3 = reinterpret_cast< char * >(buf3); + result = (int32_t)(arg1)->sessionGetInt32(arg2,(char const *)arg3); + resultobj = SWIG_From_int(static_cast< int >(result)); + if (alloc3 == SWIG_NEWOBJ) delete[] buf3; + return resultobj; +fail: + if (alloc3 == SWIG_NEWOBJ) delete[] buf3; + return NULL; +} + + SWIGINTERN PyObject *_wrap_MediaSessionMgr_consumerSetInt32(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; MediaSessionMgr *arg1 = (MediaSessionMgr *) 0 ; @@ -6758,6 +6802,28 @@ fail: } +SWIGINTERN PyObject *_wrap_MediaSessionMgr_defaultsSetSRtpMode(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + tmedia_srtp_mode_t arg1 ; + int val1 ; + int ecode1 = 0 ; + PyObject * obj0 = 0 ; + bool result; + + if (!PyArg_ParseTuple(args,(char *)"O:MediaSessionMgr_defaultsSetSRtpMode",&obj0)) SWIG_fail; + ecode1 = SWIG_AsVal_int(obj0, &val1); + if (!SWIG_IsOK(ecode1)) { + SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "MediaSessionMgr_defaultsSetSRtpMode" "', argument " "1"" of type '" "tmedia_srtp_mode_t""'"); + } + arg1 = static_cast< tmedia_srtp_mode_t >(val1); + result = (bool)MediaSessionMgr::defaultsSetSRtpMode(arg1); + resultobj = SWIG_From_bool(static_cast< bool >(result)); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *MediaSessionMgr_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *obj; if (!PyArg_ParseTuple(args,(char*)"O:swigregister", &obj)) return NULL; @@ -14349,6 +14415,37 @@ fail: } +SWIGINTERN PyObject *_wrap_ProxyPluginMgr_findPlugin(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; + uint64_t arg2 ; + void *argp1 = 0 ; + int res1 = 0 ; + unsigned long long val2 ; + int ecode2 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + ProxyPlugin *result = 0 ; + + if (!PyArg_ParseTuple(args,(char *)"OO:ProxyPluginMgr_findPlugin",&obj0,&obj1)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_ProxyPluginMgr, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ProxyPluginMgr_findPlugin" "', argument " "1"" of type '" "ProxyPluginMgr *""'"); + } + arg1 = reinterpret_cast< ProxyPluginMgr * >(argp1); + ecode2 = SWIG_AsVal_unsigned_SS_long_SS_long(obj1, &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ProxyPluginMgr_findPlugin" "', argument " "2"" of type '" "uint64_t""'"); + } + arg2 = static_cast< uint64_t >(val2); + result = (ProxyPlugin *)(arg1)->findPlugin(arg2); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_ProxyPlugin, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_ProxyPluginMgr_findAudioConsumer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; ProxyPluginMgr *arg1 = (ProxyPluginMgr *) 0 ; @@ -22438,6 +22535,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"ActionConfig_swigregister", ActionConfig_swigregister, METH_VARARGS, NULL}, { (char *)"delete_MediaSessionMgr", _wrap_delete_MediaSessionMgr, METH_VARARGS, NULL}, { (char *)"MediaSessionMgr_sessionSetInt32", _wrap_MediaSessionMgr_sessionSetInt32, METH_VARARGS, NULL}, + { (char *)"MediaSessionMgr_sessionGetInt32", _wrap_MediaSessionMgr_sessionGetInt32, METH_VARARGS, NULL}, { (char *)"MediaSessionMgr_consumerSetInt32", _wrap_MediaSessionMgr_consumerSetInt32, METH_VARARGS, NULL}, { (char *)"MediaSessionMgr_consumerSetInt64", _wrap_MediaSessionMgr_consumerSetInt64, METH_VARARGS, NULL}, { (char *)"MediaSessionMgr_producerSetInt32", _wrap_MediaSessionMgr_producerSetInt32, METH_VARARGS, NULL}, @@ -22473,6 +22571,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"MediaSessionMgr_defaultsSetVolume", _wrap_MediaSessionMgr_defaultsSetVolume, METH_VARARGS, NULL}, { (char *)"MediaSessionMgr_defaultsGetVolume", _wrap_MediaSessionMgr_defaultsGetVolume, METH_VARARGS, NULL}, { (char *)"MediaSessionMgr_defaultsSetInviteSessionTimers", _wrap_MediaSessionMgr_defaultsSetInviteSessionTimers, METH_VARARGS, NULL}, + { (char *)"MediaSessionMgr_defaultsSetSRtpMode", _wrap_MediaSessionMgr_defaultsSetSRtpMode, METH_VARARGS, NULL}, { (char *)"MediaSessionMgr_swigregister", MediaSessionMgr_swigregister, METH_VARARGS, NULL}, { (char *)"delete_MediaContent", _wrap_delete_MediaContent, METH_VARARGS, NULL}, { (char *)"MediaContent_getType", _wrap_MediaContent_getType, METH_VARARGS, NULL}, @@ -22644,6 +22743,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"delete_ProxyPluginMgr", _wrap_delete_ProxyPluginMgr, METH_VARARGS, NULL}, { (char *)"ProxyPluginMgr_createInstance", _wrap_ProxyPluginMgr_createInstance, METH_VARARGS, NULL}, { (char *)"ProxyPluginMgr_getInstance", _wrap_ProxyPluginMgr_getInstance, METH_VARARGS, NULL}, + { (char *)"ProxyPluginMgr_findPlugin", _wrap_ProxyPluginMgr_findPlugin, METH_VARARGS, NULL}, { (char *)"ProxyPluginMgr_findAudioConsumer", _wrap_ProxyPluginMgr_findAudioConsumer, METH_VARARGS, NULL}, { (char *)"ProxyPluginMgr_findVideoConsumer", _wrap_ProxyPluginMgr_findVideoConsumer, METH_VARARGS, NULL}, { (char *)"ProxyPluginMgr_findAudioProducer", _wrap_ProxyPluginMgr_findAudioProducer, METH_VARARGS, NULL}, @@ -23052,6 +23152,7 @@ static swig_type_info _swigt__p_tmedia_bandwidth_level_e = {"_p_tmedia_bandwidth static swig_type_info _swigt__p_tmedia_chroma_e = {"_p_tmedia_chroma_e", "tmedia_chroma_t *|enum tmedia_chroma_e *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_tmedia_qos_strength_e = {"_p_tmedia_qos_strength_e", "tmedia_qos_strength_t *|enum tmedia_qos_strength_e *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_tmedia_qos_stype_e = {"_p_tmedia_qos_stype_e", "enum tmedia_qos_stype_e *|tmedia_qos_stype_t *", 0, 0, (void*)0, 0}; +static swig_type_info _swigt__p_tmedia_srtp_mode_e = {"_p_tmedia_srtp_mode_e", "enum tmedia_srtp_mode_e *|tmedia_srtp_mode_t *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_tmsrp_event_type_e = {"_p_tmsrp_event_type_e", "enum tmsrp_event_type_e *|tmsrp_event_type_t *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_tmsrp_request_type_e = {"_p_tmsrp_request_type_e", "enum tmsrp_request_type_e *|tmsrp_request_type_t *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_tsip_event_type_e = {"_p_tsip_event_type_e", "enum tsip_event_type_e *|tsip_event_type_t *", 0, 0, (void*)0, 0}; @@ -23140,6 +23241,7 @@ static swig_type_info *swig_type_initial[] = { &_swigt__p_tmedia_chroma_e, &_swigt__p_tmedia_qos_strength_e, &_swigt__p_tmedia_qos_stype_e, + &_swigt__p_tmedia_srtp_mode_e, &_swigt__p_tmsrp_event_type_e, &_swigt__p_tmsrp_request_type_e, &_swigt__p_tsip_event_type_e, @@ -23228,6 +23330,7 @@ static swig_cast_info _swigc__p_tmedia_bandwidth_level_e[] = { {&_swigt__p_tmed static swig_cast_info _swigc__p_tmedia_chroma_e[] = { {&_swigt__p_tmedia_chroma_e, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_tmedia_qos_strength_e[] = { {&_swigt__p_tmedia_qos_strength_e, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_tmedia_qos_stype_e[] = { {&_swigt__p_tmedia_qos_stype_e, 0, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_tmedia_srtp_mode_e[] = { {&_swigt__p_tmedia_srtp_mode_e, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_tmsrp_event_type_e[] = { {&_swigt__p_tmsrp_event_type_e, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_tmsrp_request_type_e[] = { {&_swigt__p_tmsrp_request_type_e, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_tsip_event_type_e[] = { {&_swigt__p_tsip_event_type_e, 0, 0, 0},{0, 0, 0, 0}}; @@ -23316,6 +23419,7 @@ static swig_cast_info *swig_cast_initial[] = { _swigc__p_tmedia_chroma_e, _swigc__p_tmedia_qos_strength_e, _swigc__p_tmedia_qos_stype_e, + _swigc__p_tmedia_srtp_mode_e, _swigc__p_tmsrp_event_type_e, _swigc__p_tmsrp_request_type_e, _swigc__p_tsip_event_type_e, @@ -24026,6 +24130,9 @@ SWIG_init(void) { SWIG_Python_SetConstant(d, "tmedia_chroma_yuv422p",SWIG_From_int(static_cast< int >(tmedia_chroma_yuv422p))); SWIG_Python_SetConstant(d, "tmedia_chroma_uyvy422",SWIG_From_int(static_cast< int >(tmedia_chroma_uyvy422))); SWIG_Python_SetConstant(d, "tmedia_chroma_yuv420p",SWIG_From_int(static_cast< int >(tmedia_chroma_yuv420p))); + SWIG_Python_SetConstant(d, "tmedia_srtp_mode_none",SWIG_From_int(static_cast< int >(tmedia_srtp_mode_none))); + SWIG_Python_SetConstant(d, "tmedia_srtp_mode_optional",SWIG_From_int(static_cast< int >(tmedia_srtp_mode_optional))); + SWIG_Python_SetConstant(d, "tmedia_srtp_mode_mandatory",SWIG_From_int(static_cast< int >(tmedia_srtp_mode_mandatory))); SWIG_Python_SetConstant(d, "tmedia_qos_stype_none",SWIG_From_int(static_cast< int >(tmedia_qos_stype_none))); SWIG_Python_SetConstant(d, "tmedia_qos_stype_segmented",SWIG_From_int(static_cast< int >(tmedia_qos_stype_segmented))); SWIG_Python_SetConstant(d, "tmedia_qos_stype_e2e",SWIG_From_int(static_cast< int >(tmedia_qos_stype_e2e))); diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/aes.h b/branches/2.0/doubango/thirdparties/android/include/srtp/aes.h new file mode 100644 index 00000000..28813374 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/aes.h @@ -0,0 +1,90 @@ +/* + * aes.h + * + * header file for the AES block cipher + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef _AES_H +#define _AES_H + +#include "config.h" + +#include "datatypes.h" +#include "gf2_8.h" +#include "err.h" + +/* aes internals */ + +typedef struct { + v128_t round[15]; + int num_rounds; +} aes_expanded_key_t; + +err_status_t +aes_expand_encryption_key(const uint8_t *key, + int key_len, + aes_expanded_key_t *expanded_key); + +err_status_t +aes_expand_decryption_key(const uint8_t *key, + int key_len, + aes_expanded_key_t *expanded_key); + +void +aes_encrypt(v128_t *plaintext, const aes_expanded_key_t *exp_key); + +void +aes_decrypt(v128_t *plaintext, const aes_expanded_key_t *exp_key); + +#if 0 +/* + * internal functions + */ + +void +aes_init_sbox(void); + +void +aes_compute_tables(void); +#endif + +#endif /* _AES_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/aes_cbc.h b/branches/2.0/doubango/thirdparties/android/include/srtp/aes_cbc.h new file mode 100644 index 00000000..bc4e41a4 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/aes_cbc.h @@ -0,0 +1,50 @@ +/* + * aes_cbc.h + * + * Header for AES Cipher Blobk Chaining Mode. + * + * David A. McGrew + * Cisco Systems, Inc. + * + */ + +#ifndef AES_CBC_H +#define AES_CBC_H + +#include "aes.h" +#include "cipher.h" + +typedef struct { + v128_t state; /* cipher chaining state */ + v128_t previous; /* previous ciphertext block */ + aes_expanded_key_t expanded_key; /* the cipher key */ +} aes_cbc_ctx_t; + +err_status_t +aes_cbc_set_key(aes_cbc_ctx_t *c, + const unsigned char *key); + +err_status_t +aes_cbc_encrypt(aes_cbc_ctx_t *c, + unsigned char *buf, + unsigned int *bytes_in_data); + +err_status_t +aes_cbc_context_init(aes_cbc_ctx_t *c, const uint8_t *key, + int key_len, cipher_direction_t dir); + +err_status_t +aes_cbc_set_iv(aes_cbc_ctx_t *c, void *iv); + +err_status_t +aes_cbc_nist_encrypt(aes_cbc_ctx_t *c, + unsigned char *data, + unsigned int *bytes_in_data); + +err_status_t +aes_cbc_nist_decrypt(aes_cbc_ctx_t *c, + unsigned char *data, + unsigned int *bytes_in_data); + +#endif /* AES_CBC_H */ + diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/aes_icm.h b/branches/2.0/doubango/thirdparties/android/include/srtp/aes_icm.h new file mode 100644 index 00000000..dac0cdcc --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/aes_icm.h @@ -0,0 +1,57 @@ +/* + * aes_icm.h + * + * Header for AES Integer Counter Mode. + * + * David A. McGrew + * Cisco Systems, Inc. + * + */ + +#ifndef AES_ICM_H +#define AES_ICM_H + +#include "aes.h" +#include "cipher.h" + +typedef struct { + v128_t counter; /* holds the counter value */ + v128_t offset; /* initial offset value */ + v128_t keystream_buffer; /* buffers bytes of keystream */ + aes_expanded_key_t expanded_key; /* the cipher key */ + int bytes_in_buffer; /* number of unused bytes in buffer */ +} aes_icm_ctx_t; + + +err_status_t +aes_icm_context_init(aes_icm_ctx_t *c, + const unsigned char *key, + int key_len); + +err_status_t +aes_icm_set_iv(aes_icm_ctx_t *c, void *iv); + +err_status_t +aes_icm_encrypt(aes_icm_ctx_t *c, + unsigned char *buf, unsigned int *bytes_to_encr); + +err_status_t +aes_icm_output(aes_icm_ctx_t *c, + unsigned char *buf, int bytes_to_output); + +err_status_t +aes_icm_dealloc(cipher_t *c); + +err_status_t +aes_icm_encrypt_ismacryp(aes_icm_ctx_t *c, + unsigned char *buf, + unsigned int *enc_len, + int forIsmacryp); + +err_status_t +aes_icm_alloc_ismacryp(cipher_t **c, + int key_len, + int forIsmacryp); + +#endif /* AES_ICM_H */ + diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/alloc.h b/branches/2.0/doubango/thirdparties/android/include/srtp/alloc.h new file mode 100644 index 00000000..5980eed6 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/alloc.h @@ -0,0 +1,57 @@ +/* + * alloc.h + * + * interface to memory allocation and deallocation, with optional debugging + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef CRYPTO_ALLOC_H +#define CRYPTO_ALLOC_H + +#include "datatypes.h" + +void * +crypto_alloc(size_t size); + +void +crypto_free(void *ptr); + +#endif /* CRYPTO_ALLOC_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/auth.h b/branches/2.0/doubango/thirdparties/android/include/srtp/auth.h new file mode 100644 index 00000000..5b5e4b21 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/auth.h @@ -0,0 +1,171 @@ +/* + * auth.h + * + * common interface to authentication functions + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef AUTH_H +#define AUTH_H + +#include "datatypes.h" +#include "err.h" /* error codes */ +#include "crypto.h" /* for auth_type_id_t */ +#include "crypto_types.h" /* for values of auth_type_id_t */ + +typedef struct auth_type_t *auth_type_pointer; +typedef struct auth_t *auth_pointer_t; + +typedef err_status_t (*auth_alloc_func) + (auth_pointer_t *ap, int key_len, int out_len); + +typedef err_status_t (*auth_init_func) + (void *state, const uint8_t *key, int key_len); + +typedef err_status_t (*auth_dealloc_func)(auth_pointer_t ap); + +typedef err_status_t (*auth_compute_func) + (void *state, uint8_t *buffer, int octets_to_auth, + int tag_len, uint8_t *tag); + +typedef err_status_t (*auth_update_func) + (void *state, uint8_t *buffer, int octets_to_auth); + +typedef err_status_t (*auth_start_func)(void *state); + +/* some syntactic sugar on these function types */ + +#define auth_type_alloc(at, a, klen, outlen) \ + ((at)->alloc((a), (klen), (outlen))) + +#define auth_init(a, key) \ + (((a)->type)->init((a)->state, (key), ((a)->key_len))) + +#define auth_compute(a, buf, len, res) \ + (((a)->type)->compute((a)->state, (buf), (len), (a)->out_len, (res))) + +#define auth_update(a, buf, len) \ + (((a)->type)->update((a)->state, (buf), (len))) + +#define auth_start(a)(((a)->type)->start((a)->state)) + +#define auth_dealloc(c) (((c)->type)->dealloc(c)) + +/* functions to get information about a particular auth_t */ + +int +auth_get_key_length(const struct auth_t *a); + +int +auth_get_tag_length(const struct auth_t *a); + +int +auth_get_prefix_length(const struct auth_t *a); + +/* + * auth_test_case_t is a (list of) key/message/tag values that are + * known to be correct for a particular cipher. this data can be used + * to test an implementation in an on-the-fly self test of the + * correcness of the implementation. (see the auth_type_self_test() + * function below) + */ + +typedef struct auth_test_case_t { + int key_length_octets; /* octets in key */ + uint8_t *key; /* key */ + int data_length_octets; /* octets in data */ + uint8_t *data; /* data */ + int tag_length_octets; /* octets in tag */ + uint8_t *tag; /* tag */ + struct auth_test_case_t *next_test_case; /* pointer to next testcase */ +} auth_test_case_t; + +/* auth_type_t */ + +typedef struct auth_type_t { + auth_alloc_func alloc; + auth_dealloc_func dealloc; + auth_init_func init; + auth_compute_func compute; + auth_update_func update; + auth_start_func start; + char *description; + int ref_count; + auth_test_case_t *test_data; + debug_module_t *debug; + auth_type_id_t id; +} auth_type_t; + +typedef struct auth_t { + auth_type_t *type; + void *state; + int out_len; /* length of output tag in octets */ + int key_len; /* length of key in octets */ + int prefix_len; /* length of keystream prefix */ +} auth_t; + +/* + * auth_type_self_test() tests an auth_type against test cases + * provided in an array of values of key/message/tag that is known to + * be good + */ + +err_status_t +auth_type_self_test(const auth_type_t *at); + +/* + * auth_type_test() tests an auth_type against external test cases + * provided in an array of values of key/message/tag that is known to + * be good + */ + +err_status_t +auth_type_test(const auth_type_t *at, const auth_test_case_t *test_data); + +/* + * auth_type_get_ref_count(at) returns the reference count (the number + * of instantiations) of the auth_type_t at + */ + +int +auth_type_get_ref_count(const auth_type_t *at); + +#endif /* AUTH_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/cipher.h b/branches/2.0/doubango/thirdparties/android/include/srtp/cipher.h new file mode 100644 index 00000000..eff6dd15 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/cipher.h @@ -0,0 +1,230 @@ +/* + * cipher.h + * + * common interface to ciphers + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef CIPHER_H +#define CIPHER_H + +#include "datatypes.h" +#include "rdbx.h" /* for xtd_seq_num_t */ +#include "err.h" /* for error codes */ +#include "crypto.h" /* for cipher_type_id_t */ +#include "crypto_types.h" /* for values of cipher_type_id_t */ + + +/** + * @brief cipher_direction_t defines a particular cipher operation. + * + * A cipher_direction_t is an enum that describes a particular cipher + * operation, i.e. encryption or decryption. For some ciphers, this + * distinction does not matter, but for others, it is essential. + */ + +typedef enum { + direction_encrypt, /**< encryption (convert plaintext to ciphertext) */ + direction_decrypt, /**< decryption (convert ciphertext to plaintext) */ + direction_any /**< encryption or decryption */ +} cipher_direction_t; + +/* + * the cipher_pointer and cipher_type_pointer definitions are needed + * as cipher_t and cipher_type_t are not yet defined + */ + +typedef struct cipher_type_t *cipher_type_pointer_t; +typedef struct cipher_t *cipher_pointer_t; + +/* + * a cipher_alloc_func_t allocates (but does not initialize) a cipher_t + */ + +typedef err_status_t (*cipher_alloc_func_t) + (cipher_pointer_t *cp, int key_len); + +/* + * a cipher_init_func_t [re-]initializes a cipher_t with a given key + * and direction (i.e., encrypt or decrypt) + */ + +typedef err_status_t (*cipher_init_func_t) +(void *state, const uint8_t *key, int key_len, cipher_direction_t dir); + +/* a cipher_dealloc_func_t de-allocates a cipher_t */ + +typedef err_status_t (*cipher_dealloc_func_t)(cipher_pointer_t cp); + +/* a cipher_set_segment_func_t sets the segment index of a cipher_t */ + +typedef err_status_t (*cipher_set_segment_func_t) + (void *state, xtd_seq_num_t idx); + +/* a cipher_encrypt_func_t encrypts data in-place */ + +typedef err_status_t (*cipher_encrypt_func_t) + (void *state, uint8_t *buffer, unsigned int *octets_to_encrypt); + +/* a cipher_decrypt_func_t decrypts data in-place */ + +typedef err_status_t (*cipher_decrypt_func_t) + (void *state, uint8_t *buffer, unsigned int *octets_to_decrypt); + +/* + * a cipher_set_iv_func_t function sets the current initialization vector + */ + +typedef err_status_t (*cipher_set_iv_func_t) + (cipher_pointer_t cp, void *iv); + +/* + * cipher_test_case_t is a (list of) key, salt, xtd_seq_num_t, + * plaintext, and ciphertext values that are known to be correct for a + * particular cipher. this data can be used to test an implementation + * in an on-the-fly self test of the correcness of the implementation. + * (see the cipher_type_self_test() function below) + */ + +typedef struct cipher_test_case_t { + int key_length_octets; /* octets in key */ + uint8_t *key; /* key */ + uint8_t *idx; /* packet index */ + int plaintext_length_octets; /* octets in plaintext */ + uint8_t *plaintext; /* plaintext */ + int ciphertext_length_octets; /* octets in plaintext */ + uint8_t *ciphertext; /* ciphertext */ + struct cipher_test_case_t *next_test_case; /* pointer to next testcase */ +} cipher_test_case_t; + +/* cipher_type_t defines the 'metadata' for a particular cipher type */ + +typedef struct cipher_type_t { + cipher_alloc_func_t alloc; + cipher_dealloc_func_t dealloc; + cipher_init_func_t init; + cipher_encrypt_func_t encrypt; + cipher_encrypt_func_t decrypt; + cipher_set_iv_func_t set_iv; + char *description; + int ref_count; + cipher_test_case_t *test_data; + debug_module_t *debug; + cipher_type_id_t id; +} cipher_type_t; + +/* + * cipher_t defines an instantiation of a particular cipher, with fixed + * key length, key and salt values + */ + +typedef struct cipher_t { + cipher_type_t *type; + void *state; + int key_len; +#ifdef FORCE_64BIT_ALIGN + int pad; +#endif +} cipher_t; + +/* some syntactic sugar on these function types */ + +#define cipher_type_alloc(ct, c, klen) ((ct)->alloc((c), (klen))) + +#define cipher_dealloc(c) (((c)->type)->dealloc(c)) + +#define cipher_init(c, k, dir) (((c)->type)->init(((c)->state), (k), ((c)->key_len), (dir))) + +#define cipher_encrypt(c, buf, len) \ + (((c)->type)->encrypt(((c)->state), (buf), (len))) + +#define cipher_decrypt(c, buf, len) \ + (((c)->type)->decrypt(((c)->state), (buf), (len))) + +#define cipher_set_iv(c, n) \ + ((c) ? (((c)->type)->set_iv(((cipher_pointer_t)(c)->state), (n))) : \ + err_status_no_such_op) + +err_status_t +cipher_output(cipher_t *c, uint8_t *buffer, int num_octets_to_output); + + +/* some bookkeeping functions */ + +int +cipher_get_key_length(const cipher_t *c); + + +/* + * cipher_type_self_test() tests a cipher against test cases provided in + * an array of values of key/xtd_seq_num_t/plaintext/ciphertext + * that is known to be good + */ + +err_status_t +cipher_type_self_test(const cipher_type_t *ct); + + +/* + * cipher_type_test() tests a cipher against external test cases provided in + * an array of values of key/xtd_seq_num_t/plaintext/ciphertext + * that is known to be good + */ + +err_status_t +cipher_type_test(const cipher_type_t *ct, const cipher_test_case_t *test_data); + + +/* + * cipher_bits_per_second(c, l, t) computes (and estimate of) the + * number of bits that a cipher implementation can encrypt in a second + * + * c is a cipher (which MUST be allocated and initialized already), l + * is the length in octets of the test data to be encrypted, and t is + * the number of trials + * + * if an error is encountered, then the value 0 is returned + */ + +uint64_t +cipher_bits_per_second(cipher_t *c, int octets_in_buffer, int num_trials); + +#endif /* CIPHER_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/config.h b/branches/2.0/doubango/thirdparties/android/include/srtp/config.h new file mode 100644 index 00000000..bf70e155 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/config.h @@ -0,0 +1,174 @@ +/* crypto/include/config.h. Generated by configure. */ +/* config_in.h. Generated from configure.in by autoheader. */ + +/* Define if building for a CISC machine (e.g. Intel). */ +#define CPU_CISC 1 + +/* Define if building for a RISC machine (assume slow byte access). */ +/* #undef CPU_RISC */ + +/* Path to random device */ +/* #undef DEV_URANDOM */ + +/* Define to compile in dynamic debugging system. */ +/* #undef ENABLE_DEBUGGING */ + +/* Report errors to this file. */ +/* #undef ERR_REPORTING_FILE */ + +/* Define to use logging to stdout. */ +#define ERR_REPORTING_STDOUT 1 + +/* Define this to use ISMAcryp code. */ +/* #undef GENERIC_AESICM */ + +/* Define to 1 if you have the header file. */ +#define HAVE_ARPA_INET_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_BYTESWAP_H 1 + +/* Define to 1 if you have the `inet_aton' function. */ +/* #undef HAVE_INET_ATON */ + +/* Define to 1 if the system has the type `int16_t'. */ +#define HAVE_INT16_T 1 + +/* Define to 1 if the system has the type `int32_t'. */ +#define HAVE_INT32_T 1 + +/* Define to 1 if the system has the type `int8_t'. */ +#define HAVE_INT8_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `socket' library (-lsocket). */ +/* #undef HAVE_LIBSOCKET */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MACHINE_TYPES_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_NETINET_IN_H 1 + +/* Define to 1 if you have the `sigaction' function. */ +/* #undef HAVE_SIGACTION */ + +/* Define to 1 if you have the `socket' function. */ +/* #undef HAVE_SOCKET */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYSLOG_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_INT_TYPES_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SOCKET_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_UIO_H 1 + +/* Define to 1 if the system has the type `uint16_t'. */ +#define HAVE_UINT16_T 1 + +/* Define to 1 if the system has the type `uint32_t'. */ +#define HAVE_UINT32_T 1 + +/* Define to 1 if the system has the type `uint64_t'. */ +#define HAVE_UINT64_T 1 + +/* Define to 1 if the system has the type `uint8_t'. */ +#define HAVE_UINT8_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the `usleep' function. */ +/* #undef HAVE_USLEEP */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_WINDOWS_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_WINSOCK2_H */ + +/* Define to use X86 inlined assembly code */ +/* #undef HAVE_X86 */ + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "" + +/* The size of a `unsigned long', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_LONG 4 + +/* The size of a `unsigned long long', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_LONG_LONG 8 + +/* Define to use GDOI. */ +/* #undef SRTP_GDOI */ + +/* Define to compile for kernel contexts. */ +/* #undef SRTP_KERNEL */ + +/* Define to compile for Linux kernel context. */ +/* #undef SRTP_KERNEL_LINUX */ + +/* Define to 1 if you have the ANSI C header files. */ +/* #undef STDC_HEADERS */ + +/* Write errors to this file */ +/* #undef USE_ERR_REPORTING_FILE */ + +/* Define to use syslog logging. */ +/* #undef USE_SYSLOG */ + +/* Define to 1 if your processor stores words with the most significant byte + first (like Motorola and SPARC, unlike Intel and VAX). */ +/* #undef WORDS_BIGENDIAN */ + +/* Define to empty if `const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* Define to `unsigned' if does not define. */ +/* #undef size_t */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/crypto.h b/branches/2.0/doubango/thirdparties/android/include/srtp/crypto.h new file mode 100644 index 00000000..0e9667da --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/crypto.h @@ -0,0 +1,43 @@ +/* + * crypto.h + * + * API for libcrypto + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +#ifndef CRYPTO_H +#define CRYPTO_H + +/** + * @brief A cipher_type_id_t is an identifier for a particular cipher + * type. + * + * A cipher_type_id_t is an integer that represents a particular + * cipher type, e.g. the Advanced Encryption Standard (AES). A + * NULL_CIPHER is avaliable; this cipher leaves the data unchanged, + * and can be selected to indicate that no encryption is to take + * place. + * + * @ingroup Ciphers + */ +typedef uint32_t cipher_type_id_t; + +/** + * @brief An auth_type_id_t is an identifier for a particular authentication + * function. + * + * An auth_type_id_t is an integer that represents a particular + * authentication function type, e.g. HMAC-SHA1. A NULL_AUTH is + * avaliable; this authentication function performs no computation, + * and can be selected to indicate that no authentication is to take + * place. + * + * @ingroup Authentication + */ +typedef uint32_t auth_type_id_t; + +#endif /* CRYPTO_H */ + + diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/crypto_kernel.h b/branches/2.0/doubango/thirdparties/android/include/srtp/crypto_kernel.h new file mode 100644 index 00000000..1acf4978 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/crypto_kernel.h @@ -0,0 +1,280 @@ +/* + * crypto_kernel.h + * + * header for the cryptographic kernel + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright(c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef CRYPTO_KERNEL +#define CRYPTO_KERNEL + +#include "rand_source.h" +#include "prng.h" +#include "cipher.h" +#include "auth.h" +#include "cryptoalg.h" +#include "stat.h" +#include "err.h" +#include "crypto_types.h" +#include "key.h" +#include "crypto.h" + +/* + * crypto_kernel_state_t defines the possible states: + * + * insecure - not yet initialized + * secure - initialized and passed self-tests + */ + +typedef enum { + crypto_kernel_state_insecure, + crypto_kernel_state_secure +} crypto_kernel_state_t; + +/* + * linked list of cipher types + */ + +typedef struct kernel_cipher_type { + cipher_type_id_t id; + cipher_type_t *cipher_type; + struct kernel_cipher_type *next; +} kernel_cipher_type_t; + +/* + * linked list of auth types + */ + +typedef struct kernel_auth_type { + auth_type_id_t id; + auth_type_t *auth_type; + struct kernel_auth_type *next; +} kernel_auth_type_t; + +/* + * linked list of debug modules + */ + +typedef struct kernel_debug_module { + debug_module_t *mod; + struct kernel_debug_module *next; +} kernel_debug_module_t; + + +/* + * crypto_kernel_t is the data structure for the crypto kernel + * + * note that there is *exactly one* instance of this data type, + * a global variable defined in crypto_kernel.c + */ + +typedef struct { + crypto_kernel_state_t state; /* current state of kernel */ + kernel_cipher_type_t *cipher_type_list; /* list of all cipher types */ + kernel_auth_type_t *auth_type_list; /* list of all auth func types */ + kernel_debug_module_t *debug_module_list; /* list of all debug modules */ +} crypto_kernel_t; + + +/* + * crypto_kernel_t external api + */ + + +/* + * The function crypto_kernel_init() initialized the crypto kernel and + * runs the self-test operations on the random number generators and + * crypto algorithms. Possible return values are: + * + * err_status_ok initialization successful + * init failure + * + * If any value other than err_status_ok is returned, the + * crypto_kernel MUST NOT be used. + */ + +err_status_t +crypto_kernel_init(void); + + +/* + * The function crypto_kernel_shutdown() de-initializes the + * crypto_kernel, zeroizes keys and other cryptographic material, and + * deallocates any dynamically allocated memory. Possible return + * values are: + * + * err_status_ok shutdown successful + * shutdown failure + * + */ + +err_status_t +crypto_kernel_shutdown(void); + +/* + * The function crypto_kernel_stats() checks the the crypto_kernel, + * running tests on the ciphers, auth funcs, and rng, and prints out a + * status report. Possible return values are: + * + * err_status_ok all tests were passed + * a test failed + * + */ + +err_status_t +crypto_kernel_status(void); + + +/* + * crypto_kernel_list_debug_modules() outputs a list of debugging modules + * + */ + +err_status_t +crypto_kernel_list_debug_modules(void); + +/* + * crypto_kernel_load_cipher_type() + * + */ + +err_status_t +crypto_kernel_load_cipher_type(cipher_type_t *ct, cipher_type_id_t id); + +err_status_t +crypto_kernel_load_auth_type(auth_type_t *ct, auth_type_id_t id); + +/* + * crypto_kernel_replace_cipher_type(ct, id) + * + * replaces the crypto kernel's existing cipher for the cipher_type id + * with a new one passed in externally. The new cipher must pass all the + * existing cipher_type's self tests as well as its own. + */ +err_status_t +crypto_kernel_replace_cipher_type(cipher_type_t *ct, cipher_type_id_t id); + + +/* + * crypto_kernel_replace_auth_type(ct, id) + * + * replaces the crypto kernel's existing cipher for the auth_type id + * with a new one passed in externally. The new auth type must pass all the + * existing auth_type's self tests as well as its own. + */ +err_status_t +crypto_kernel_replace_auth_type(auth_type_t *ct, auth_type_id_t id); + + +err_status_t +crypto_kernel_load_debug_module(debug_module_t *new_dm); + +/* + * crypto_kernel_alloc_cipher(id, cp, key_len); + * + * allocates a cipher of type id at location *cp, with key length + * key_len octets. Return values are: + * + * err_status_ok no problems + * err_status_alloc_fail an allocation failure occured + * err_status_fail couldn't find cipher with identifier 'id' + */ + +err_status_t +crypto_kernel_alloc_cipher(cipher_type_id_t id, + cipher_pointer_t *cp, + int key_len); + +/* + * crypto_kernel_alloc_auth(id, ap, key_len, tag_len); + * + * allocates an auth function of type id at location *ap, with key + * length key_len octets and output tag length of tag_len. Return + * values are: + * + * err_status_ok no problems + * err_status_alloc_fail an allocation failure occured + * err_status_fail couldn't find auth with identifier 'id' + */ + +err_status_t +crypto_kernel_alloc_auth(auth_type_id_t id, + auth_pointer_t *ap, + int key_len, + int tag_len); + + +/* + * crypto_kernel_set_debug_module(mod_name, v) + * + * sets dynamic debugging to the value v (0 for off, 1 for on) for the + * debug module with the name mod_name + * + * returns err_status_ok on success, err_status_fail otherwise + */ + +err_status_t +crypto_kernel_set_debug_module(char *mod_name, int v); + +/** + * @brief writes a random octet string. + * + * The function call crypto_get_random(dest, len) writes len octets of + * random data to the location to which dest points, and returns an + * error code. This error code @b must be checked, and if a failure is + * reported, the data in the buffer @b must @b not be used. + * + * @warning If the return code is not checked, then non-random + * data may be in the buffer. This function will fail + * unless it is called after crypto_kernel_init(). + * + * @return + * - err_status_ok if no problems occured. + * - [other] a problem occured, and no assumptions should + * be made about the contents of the destination + * buffer. + * + * @ingroup SRTP + */ +err_status_t +crypto_get_random(unsigned char *buffer, unsigned int length); + +#endif /* CRYPTO_KERNEL */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/crypto_math.h b/branches/2.0/doubango/thirdparties/android/include/srtp/crypto_math.h new file mode 100644 index 00000000..52f08372 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/crypto_math.h @@ -0,0 +1,239 @@ +/* + * math.h + * + * crypto math operations and data types + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef MATH_H +#define MATH_H + +#include "datatypes.h" + +unsigned char +v32_weight(v32_t a); + +unsigned char +v32_distance(v32_t x, v32_t y); + +unsigned int +v32_dot_product(v32_t a, v32_t b); + +char * +v16_bit_string(v16_t x); + +char * +v32_bit_string(v32_t x); + +char * +v64_bit_string(const v64_t *x); + +char * +octet_hex_string(uint8_t x); + +char * +v16_hex_string(v16_t x); + +char * +v32_hex_string(v32_t x); + +char * +v64_hex_string(const v64_t *x); + +int +hex_char_to_nibble(uint8_t c); + +int +is_hex_string(char *s); + +v16_t +hex_string_to_v16(char *s); + +v32_t +hex_string_to_v32(char *s); + +v64_t +hex_string_to_v64(char *s); + +/* the matrix A[] is stored in column format, i.e., A[i] is + the ith column of the matrix */ + +uint8_t +A_times_x_plus_b(uint8_t A[8], uint8_t x, uint8_t b); + +void +v16_copy_octet_string(v16_t *x, const uint8_t s[2]); + +void +v32_copy_octet_string(v32_t *x, const uint8_t s[4]); + +void +v64_copy_octet_string(v64_t *x, const uint8_t s[8]); + +void +v128_add(v128_t *z, v128_t *x, v128_t *y); + +int +octet_string_is_eq(uint8_t *a, uint8_t *b, int len); + +void +octet_string_set_to_zero(uint8_t *s, int len); + + + +/* + * the matrix A[] is stored in column format, i.e., A[i] is the ith + * column of the matrix +*/ +uint8_t +A_times_x_plus_b(uint8_t A[8], uint8_t x, uint8_t b); + + +#if 0 +#if WORDS_BIGENDIAN + +#define _v128_add(z, x, y) { \ + uint64_t tmp; \ + \ + tmp = x->v32[3] + y->v32[3]; \ + z->v32[3] = (uint32_t) tmp; \ + \ + tmp = x->v32[2] + y->v32[2] + (tmp >> 32); \ + z->v32[2] = (uint32_t) tmp; \ + \ + tmp = x->v32[1] + y->v32[1] + (tmp >> 32); \ + z->v32[1] = (uint32_t) tmp; \ + \ + tmp = x->v32[0] + y->v32[0] + (tmp >> 32); \ + z->v32[0] = (uint32_t) tmp; \ +} + +#else /* assume little endian architecture */ + +#define _v128_add(z, x, y) { \ + uint64_t tmp; \ + \ + tmp = htonl(x->v32[3]) + htonl(y->v32[3]); \ + z->v32[3] = ntohl((uint32_t) tmp); \ + \ + tmp = htonl(x->v32[2]) + htonl(y->v32[2]) \ + + htonl(tmp >> 32); \ + z->v32[2] = ntohl((uint32_t) tmp); \ + \ + tmp = htonl(x->v32[1]) + htonl(y->v32[1]) \ + + htonl(tmp >> 32); \ + z->v32[1] = ntohl((uint32_t) tmp); \ + \ + tmp = htonl(x->v32[0]) + htonl(y->v32[0]) \ + + htonl(tmp >> 32); \ + z->v32[0] = ntohl((uint32_t) tmp); \ +} + +#endif /* WORDS_BIGENDIAN */ +#endif + +#ifdef DATATYPES_USE_MACROS /* little functions are really macros */ + +#define v128_set_to_zero(z) _v128_set_to_zero(z) +#define v128_copy(z, x) _v128_copy(z, x) +#define v128_xor(z, x, y) _v128_xor(z, x, y) +#define v128_and(z, x, y) _v128_and(z, x, y) +#define v128_or(z, x, y) _v128_or(z, x, y) +#define v128_complement(x) _v128_complement(x) +#define v128_is_eq(x, y) _v128_is_eq(x, y) +#define v128_xor_eq(x, y) _v128_xor_eq(x, y) +#define v128_get_bit(x, i) _v128_get_bit(x, i) +#define v128_set_bit(x, i) _v128_set_bit(x, i) +#define v128_clear_bit(x, i) _v128_clear_bit(x, i) +#define v128_set_bit_to(x, i, y) _v128_set_bit_to(x, i, y) + +#else + +void +v128_set_to_zero(v128_t *x); + +int +v128_is_eq(const v128_t *x, const v128_t *y); + +void +v128_copy(v128_t *x, const v128_t *y); + +void +v128_xor(v128_t *z, v128_t *x, v128_t *y); + +void +v128_and(v128_t *z, v128_t *x, v128_t *y); + +void +v128_or(v128_t *z, v128_t *x, v128_t *y); + +void +v128_complement(v128_t *x); + +int +v128_get_bit(const v128_t *x, int i); + +void +v128_set_bit(v128_t *x, int i) ; + +void +v128_clear_bit(v128_t *x, int i); + +void +v128_set_bit_to(v128_t *x, int i, int y); + +#endif /* DATATYPES_USE_MACROS */ + +/* + * octet_string_is_eq(a,b, len) returns 1 if the length len strings a + * and b are not equal, returns 0 otherwise + */ + +int +octet_string_is_eq(uint8_t *a, uint8_t *b, int len); + +void +octet_string_set_to_zero(uint8_t *s, int len); + + +#endif /* MATH_H */ + + + diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/crypto_types.h b/branches/2.0/doubango/thirdparties/android/include/srtp/crypto_types.h new file mode 100644 index 00000000..35317108 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/crypto_types.h @@ -0,0 +1,220 @@ +/* + * crypto_types.h + * + * constants for cipher types and auth func types + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright(c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef CRYPTO_TYPES_H +#define CRYPTO_TYPES_H + +/** + * @defgroup Algos Cryptographic Algorithms + * + * + * This library provides several different cryptographic algorithms, + * each of which can be selected by using the cipher_type_id_t and + * auth_type_id_t. These algorithms are documented below. + * + * Authentication functions that use the Universal Security Transform + * (UST) must be used in conjunction with a cipher other than the null + * cipher. These functions require a per-message pseudorandom input + * that is generated by the cipher. + * + * The identifiers STRONGHOLD_AUTH and STRONGHOLD_CIPHER identify the + * strongest available authentication function and cipher, + * respectively. They are resolved at compile time to the strongest + * available algorithm. The stronghold algorithms can serve as did + * the keep of a medieval fortification; they provide the strongest + * defense (or the last refuge). + * + * @{ + */ + +/** + * @defgroup Ciphers Cipher Types + * + * @brief Each cipher type is identified by an unsigned integer. The + * cipher types available in this edition of libSRTP are given + * by the #defines below. + * + * A cipher_type_id_t is an identifier for a cipher_type; only values + * given by the #defines above (or those present in the file + * crypto_types.h) should be used. + * + * The identifier STRONGHOLD_CIPHER indicates the strongest available + * cipher, allowing an application to choose the strongest available + * algorithm without any advance knowledge about the avaliable + * algorithms. + * + * @{ + */ + +/** + * @brief The null cipher performs no encryption. + * + * The NULL_CIPHER leaves its inputs unaltered, during both the + * encryption and decryption operations. This cipher can be chosen + * to indicate that no encryption is to be performed. + */ +#define NULL_CIPHER 0 + +/** + * @brief AES Integer Counter Mode (AES ICM) + * + * AES ICM is the variant of counter mode that is used by Secure RTP. + * This cipher uses a 16-, 24-, or 32-octet key concatenated with a + * 14-octet offset (or salt) value. + */ +#define AES_ICM 1 + +/** + * @brief AES-128 Integer Counter Mode (AES ICM) + * AES-128 ICM is a deprecated alternate name for AES ICM. + */ +#define AES_128_ICM AES_ICM + +/** + * @brief SEAL 3.0 + * + * SEAL is the Software-Optimized Encryption Algorithm of Coppersmith + * and Rogaway. Nota bene: this cipher is IBM proprietary. + */ +#define SEAL 2 + +/** + * @brief AES Cipher Block Chaining mode (AES CBC) + * + * AES CBC is the AES Cipher Block Chaining mode. + * This cipher uses a 16-, 24-, or 32-octet key. + */ +#define AES_CBC 3 + +/** + * @brief AES-128 Cipher Block Chaining mode (AES CBC) + * + * AES-128 CBC is a deprecated alternate name for AES CBC. + */ +#define AES_128_CBC AES_CBC + +/** + * @brief Strongest available cipher. + * + * This identifier resolves to the strongest cipher type available. + */ +#define STRONGHOLD_CIPHER AES_ICM + +/** + * @} + */ + + + +/** + * @defgroup Authentication Authentication Function Types + * + * @brief Each authentication function type is identified by an + * unsigned integer. The authentication function types available in + * this edition of libSRTP are given by the #defines below. + * + * An auth_type_id_t is an identifier for an authentication function type; + * only values given by the #defines above (or those present in the + * file crypto_types.h) should be used. + * + * The identifier STRONGHOLD_AUTH indicates the strongest available + * authentication function, allowing an application to choose the + * strongest available algorithm without any advance knowledge about + * the avaliable algorithms. The stronghold algorithms can serve as + * did the keep of a medieval fortification; they provide the + * strongest defense (or the last refuge). + * + * @{ + */ + +/** + * @brief The null authentication function performs no authentication. + * + * The NULL_AUTH function does nothing, and can be selected to indicate + * that authentication should not be performed. + */ +#define NULL_AUTH 0 + +/** + * @brief UST with TMMH Version 2 + * + * UST_TMMHv2 implements the Truncated Multi-Modular Hash using + * UST. This function must be used in conjunction with a cipher other + * than the null cipher. + * with a cipher. + */ +#define UST_TMMHv2 1 + +/** + * @brief (UST) AES-128 XORMAC + * + * UST_AES_128_XMAC implements AES-128 XORMAC, using UST. Nota bene: + * the XORMAC algorithm is IBM proprietary. + */ +#define UST_AES_128_XMAC 2 + +/** + * @brief HMAC-SHA1 + * + * HMAC_SHA1 implements the Hash-based MAC using the NIST Secure + * Hash Algorithm version 1 (SHA1). + */ +#define HMAC_SHA1 3 + +/** + * @brief Strongest available authentication function. + * + * This identifier resolves to the strongest available authentication + * function. + */ +#define STRONGHOLD_AUTH HMAC_SHA1 + +/** + * @} + */ +/** + * @} + */ + +#endif /* CRYPTO_TYPES_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/cryptoalg.h b/branches/2.0/doubango/thirdparties/android/include/srtp/cryptoalg.h new file mode 100644 index 00000000..d9f0441e --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/cryptoalg.h @@ -0,0 +1,133 @@ +/* + * cryptoalg.h + * + * API for authenticated encryption crypto algorithms + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef CRYPTOALG_H +#define CRYPTOALG_H + +#include "err.h" + +/** + * @defgroup Crypto Cryptography + * + * Zed uses a simple interface to a cryptographic transform. + * + * @{ + */ + +/** + * @brief applies a crypto algorithm + * + * The function pointer cryptoalg_func_t points to a function that + * implements a crypto transform, and provides a uniform API for + * accessing crypto mechanisms. + * + * @param key location of secret key + * + * @param clear data to be authenticated but not encrypted + * + * @param clear_len length of data to be authenticated but not encrypted + * + * @param iv location to write the Initialization Vector (IV) + * + * @param protect location of the data to be encrypted and + * authenticated (before the function call), and the ciphertext + * and authentication tag (after the call) + * + * @param protected_len location of the length of the data to be + * encrypted and authenticated (before the function call), and the + * length of the ciphertext (after the call) + * + */ + +typedef err_status_t (*cryptoalg_func_t) + (void *key, + const void *clear, + unsigned clear_len, + void *iv, + void *protect, + unsigned *protected_len); + +typedef +err_status_t (*cryptoalg_inv_t) + (void *key, /* location of secret key */ + const void *clear, /* data to be authenticated only */ + unsigned clear_len, /* length of data to be authenticated only */ + void *iv, /* location of iv */ + void *opaque, /* data to be decrypted and authenticated */ + unsigned *opaque_len /* location of the length of data to be + * decrypted and authd (before and after) + */ + ); + +typedef struct cryptoalg_ctx_t { + cryptoalg_func_t enc; + cryptoalg_inv_t dec; + unsigned key_len; + unsigned iv_len; + unsigned auth_tag_len; + unsigned max_expansion; +} cryptoalg_ctx_t; + +typedef cryptoalg_ctx_t *cryptoalg_t; + +#define cryptoalg_get_key_len(cryptoalg) ((cryptoalg)->key_len) + +#define cryptoalg_get_iv_len(cryptoalg) ((cryptoalg)->iv_len) + +#define cryptoalg_get_auth_tag_len(cryptoalg) ((cryptoalg)->auth_tag_len) + +int +cryptoalg_get_id(cryptoalg_t c); + +cryptoalg_t +cryptoalg_find_by_id(int id); + + +/** + * @} + */ + +#endif /* CRYPTOALG_H */ + + diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/datatypes.h b/branches/2.0/doubango/thirdparties/android/include/srtp/datatypes.h new file mode 100644 index 00000000..e16d895b --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/datatypes.h @@ -0,0 +1,506 @@ +/* + * datatypes.h + * + * data types for bit vectors and finite fields + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef _DATATYPES_H +#define _DATATYPES_H + +#include "integers.h" /* definitions of uint32_t, et cetera */ +#include "alloc.h" + +#include + +#ifndef SRTP_KERNEL +# include +# include +# include +# ifdef HAVE_NETINET_IN_H +# include +# elif defined HAVE_WINSOCK2_H +# include +# endif +#endif + + +/* if DATATYPES_USE_MACROS is defined, then little functions are macros */ +#define DATATYPES_USE_MACROS + +typedef union { + uint8_t v8[2]; + uint16_t value; +} v16_t; + +typedef union { + uint8_t v8[4]; + uint16_t v16[2]; + uint32_t value; +} v32_t; + +typedef union { + uint8_t v8[8]; + uint16_t v16[4]; + uint32_t v32[2]; + uint64_t value; +} v64_t; + +typedef union { + uint8_t v8[16]; + uint16_t v16[8]; + uint32_t v32[4]; + uint64_t v64[2]; +} v128_t; + + + +/* some useful and simple math functions */ + +#define pow_2(X) ( (unsigned int)1 << (X) ) /* 2^X */ + +#define pow_minus_one(X) ( (X) ? -1 : 1 ) /* (-1)^X */ + + +/* + * octet_get_weight(x) returns the hamming weight (number of bits equal to + * one) in the octet x + */ + +int +octet_get_weight(uint8_t octet); + +char * +octet_bit_string(uint8_t x); + +#define MAX_PRINT_STRING_LEN 1024 + +char * +octet_string_hex_string(const void *str, int length); + +char * +v128_bit_string(v128_t *x); + +char * +v128_hex_string(v128_t *x); + +uint8_t +nibble_to_hex_char(uint8_t nibble); + +char * +char_to_hex_string(char *x, int num_char); + +uint8_t +hex_string_to_octet(char *s); + +/* + * hex_string_to_octet_string(raw, hex, len) converts the hexadecimal + * string at *hex (of length len octets) to the equivalent raw data + * and writes it to *raw. + * + * if a character in the hex string that is not a hexadeciaml digit + * (0123456789abcdefABCDEF) is encountered, the function stops writing + * data to *raw + * + * the number of hex digits copied (which is two times the number of + * octets in *raw) is returned + */ + +int +hex_string_to_octet_string(char *raw, char *hex, int len); + +v128_t +hex_string_to_v128(char *s); + +void +v128_copy_octet_string(v128_t *x, const uint8_t s[16]); + +void +v128_left_shift(v128_t *x, int shift_index); + +void +v128_right_shift(v128_t *x, int shift_index); + +/* + * the following macros define the data manipulation functions + * + * If DATATYPES_USE_MACROS is defined, then these macros are used + * directly (and function call overhead is avoided). Otherwise, + * the macros are used through the functions defined in datatypes.c + * (and the compiler provides better warnings). + */ + +#define _v128_set_to_zero(x) \ +( \ + (x)->v32[0] = 0, \ + (x)->v32[1] = 0, \ + (x)->v32[2] = 0, \ + (x)->v32[3] = 0 \ +) + +#define _v128_copy(x, y) \ +( \ + (x)->v32[0] = (y)->v32[0], \ + (x)->v32[1] = (y)->v32[1], \ + (x)->v32[2] = (y)->v32[2], \ + (x)->v32[3] = (y)->v32[3] \ +) + +#define _v128_xor(z, x, y) \ +( \ + (z)->v32[0] = (x)->v32[0] ^ (y)->v32[0], \ + (z)->v32[1] = (x)->v32[1] ^ (y)->v32[1], \ + (z)->v32[2] = (x)->v32[2] ^ (y)->v32[2], \ + (z)->v32[3] = (x)->v32[3] ^ (y)->v32[3] \ +) + +#define _v128_and(z, x, y) \ +( \ + (z)->v32[0] = (x)->v32[0] & (y)->v32[0], \ + (z)->v32[1] = (x)->v32[1] & (y)->v32[1], \ + (z)->v32[2] = (x)->v32[2] & (y)->v32[2], \ + (z)->v32[3] = (x)->v32[3] & (y)->v32[3] \ +) + +#define _v128_or(z, x, y) \ +( \ + (z)->v32[0] = (x)->v32[0] | (y)->v32[0], \ + (z)->v32[1] = (x)->v32[1] | (y)->v32[1], \ + (z)->v32[2] = (x)->v32[2] | (y)->v32[2], \ + (z)->v32[3] = (x)->v32[3] | (y)->v32[3] \ +) + +#define _v128_complement(x) \ +( \ + (x)->v32[0] = ~(x)->v32[0], \ + (x)->v32[1] = ~(x)->v32[1], \ + (x)->v32[2] = ~(x)->v32[2], \ + (x)->v32[3] = ~(x)->v32[3] \ +) + +/* ok for NO_64BIT_MATH if it can compare uint64_t's (even as structures) */ +#define _v128_is_eq(x, y) \ + (((x)->v64[0] == (y)->v64[0]) && ((x)->v64[1] == (y)->v64[1])) + + +#ifdef NO_64BIT_MATH +#define _v128_xor_eq(z, x) \ +( \ + (z)->v32[0] ^= (x)->v32[0], \ + (z)->v32[1] ^= (x)->v32[1], \ + (z)->v32[2] ^= (x)->v32[2], \ + (z)->v32[3] ^= (x)->v32[3] \ +) +#else +#define _v128_xor_eq(z, x) \ +( \ + (z)->v64[0] ^= (x)->v64[0], \ + (z)->v64[1] ^= (x)->v64[1] \ +) +#endif + +/* NOTE! This assumes an odd ordering! */ +/* This will not be compatible directly with math on some processors */ +/* bit 0 is first 32-bit word, low order bit. in little-endian, that's + the first byte of the first 32-bit word. In big-endian, that's + the 3rd byte of the first 32-bit word */ +/* The get/set bit code is used by the replay code ONLY, and it doesn't + really care which bit is which. AES does care which bit is which, but + doesn't use the 128-bit get/set or 128-bit shifts */ + +#define _v128_get_bit(x, bit) \ +( \ + ((((x)->v32[(bit) >> 5]) >> ((bit) & 31)) & 1) \ +) + +#define _v128_set_bit(x, bit) \ +( \ + (((x)->v32[(bit) >> 5]) |= ((uint32_t)1 << ((bit) & 31))) \ +) + +#define _v128_clear_bit(x, bit) \ +( \ + (((x)->v32[(bit) >> 5]) &= ~((uint32_t)1 << ((bit) & 31))) \ +) + +#define _v128_set_bit_to(x, bit, value) \ +( \ + (value) ? _v128_set_bit(x, bit) : \ + _v128_clear_bit(x, bit) \ +) + + +#if 0 +/* nothing uses this */ +#ifdef WORDS_BIGENDIAN + +#define _v128_add(z, x, y) { \ + uint64_t tmp; \ + \ + tmp = x->v32[3] + y->v32[3]; \ + z->v32[3] = (uint32_t) tmp; \ + \ + tmp = x->v32[2] + y->v32[2] + (tmp >> 32); \ + z->v32[2] = (uint32_t) tmp; \ + \ + tmp = x->v32[1] + y->v32[1] + (tmp >> 32); \ + z->v32[1] = (uint32_t) tmp; \ + \ + tmp = x->v32[0] + y->v32[0] + (tmp >> 32); \ + z->v32[0] = (uint32_t) tmp; \ +} + +#else /* assume little endian architecture */ + +#define _v128_add(z, x, y) { \ + uint64_t tmp; \ + \ + tmp = htonl(x->v32[3]) + htonl(y->v32[3]); \ + z->v32[3] = ntohl((uint32_t) tmp); \ + \ + tmp = htonl(x->v32[2]) + htonl(y->v32[2]) \ + + htonl(tmp >> 32); \ + z->v32[2] = ntohl((uint32_t) tmp); \ + \ + tmp = htonl(x->v32[1]) + htonl(y->v32[1]) \ + + htonl(tmp >> 32); \ + z->v32[1] = ntohl((uint32_t) tmp); \ + \ + tmp = htonl(x->v32[0]) + htonl(y->v32[0]) \ + + htonl(tmp >> 32); \ + z->v32[0] = ntohl((uint32_t) tmp); \ +} +#endif /* WORDS_BIGENDIAN */ +#endif /* 0 */ + + +#ifdef DATATYPES_USE_MACROS /* little functions are really macros */ + +#define v128_set_to_zero(z) _v128_set_to_zero(z) +#define v128_copy(z, x) _v128_copy(z, x) +#define v128_xor(z, x, y) _v128_xor(z, x, y) +#define v128_and(z, x, y) _v128_and(z, x, y) +#define v128_or(z, x, y) _v128_or(z, x, y) +#define v128_complement(x) _v128_complement(x) +#define v128_is_eq(x, y) _v128_is_eq(x, y) +#define v128_xor_eq(x, y) _v128_xor_eq(x, y) +#define v128_get_bit(x, i) _v128_get_bit(x, i) +#define v128_set_bit(x, i) _v128_set_bit(x, i) +#define v128_clear_bit(x, i) _v128_clear_bit(x, i) +#define v128_set_bit_to(x, i, y) _v128_set_bit_to(x, i, y) + +#else + +void +v128_set_to_zero(v128_t *x); + +int +v128_is_eq(const v128_t *x, const v128_t *y); + +void +v128_copy(v128_t *x, const v128_t *y); + +void +v128_xor(v128_t *z, v128_t *x, v128_t *y); + +void +v128_and(v128_t *z, v128_t *x, v128_t *y); + +void +v128_or(v128_t *z, v128_t *x, v128_t *y); + +void +v128_complement(v128_t *x); + +int +v128_get_bit(const v128_t *x, int i); + +void +v128_set_bit(v128_t *x, int i) ; + +void +v128_clear_bit(v128_t *x, int i); + +void +v128_set_bit_to(v128_t *x, int i, int y); + +#endif /* DATATYPES_USE_MACROS */ + +/* + * octet_string_is_eq(a,b, len) returns 1 if the length len strings a + * and b are not equal, returns 0 otherwise + */ + +int +octet_string_is_eq(uint8_t *a, uint8_t *b, int len); + +void +octet_string_set_to_zero(uint8_t *s, int len); + + +#ifndef SRTP_KERNEL_LINUX + +/* + * Convert big endian integers to CPU byte order. + */ +#ifdef WORDS_BIGENDIAN +/* Nothing to do. */ +# define be32_to_cpu(x) (x) +# define be64_to_cpu(x) (x) +#elif defined(HAVE_BYTESWAP_H) +/* We have (hopefully) optimized versions in byteswap.h */ +# include +# define be32_to_cpu(x) bswap_32((x)) +# define be64_to_cpu(x) bswap_64((x)) +#else + +#if defined(__GNUC__) && defined(HAVE_X86) +/* Fall back. */ +static inline uint32_t be32_to_cpu(uint32_t v) { + /* optimized for x86. */ + asm("bswap %0" : "=r" (v) : "0" (v)); + return v; +} +# else /* HAVE_X86 */ +# ifdef HAVE_NETINET_IN_H +# include +# elif defined HAVE_WINSOCK2_H +# include +# endif +# define be32_to_cpu(x) ntohl((x)) +# endif /* HAVE_X86 */ + +static inline uint64_t be64_to_cpu(uint64_t v) { +# ifdef NO_64BIT_MATH + /* use the make64 functions to do 64-bit math */ + v = make64(htonl(low32(v)),htonl(high32(v))); +# else + /* use the native 64-bit math */ + v= (uint64_t)((be32_to_cpu((uint32_t)(v >> 32))) | (((uint64_t)be32_to_cpu((uint32_t)v)) << 32)); +# endif + return v; +} + +#endif /* ! SRTP_KERNEL_LINUX */ + +#endif /* WORDS_BIGENDIAN */ + +/* + * functions manipulating bitvector_t + * + * A bitvector_t consists of an array of words and an integer + * representing the number of significant bits stored in the array. + * The bits are packed as follows: the least significant bit is that + * of word[0], while the most significant bit is the nth most + * significant bit of word[m], where length = bits_per_word * m + n. + * + */ + +#define bits_per_word 32 +#define bytes_per_word 4 + +typedef struct { + uint32_t length; + uint32_t *word; +} bitvector_t; + + +#define _bitvector_get_bit(v, bit_index) \ +( \ + ((((v)->word[((bit_index) >> 5)]) >> ((bit_index) & 31)) & 1) \ +) + + +#define _bitvector_set_bit(v, bit_index) \ +( \ + (((v)->word[((bit_index) >> 5)] |= ((uint32_t)1 << ((bit_index) & 31)))) \ +) + +#define _bitvector_clear_bit(v, bit_index) \ +( \ + (((v)->word[((bit_index) >> 5)] &= ~((uint32_t)1 << ((bit_index) & 31)))) \ +) + +#define _bitvector_get_length(v) \ +( \ + ((v)->length) \ +) + +#ifdef DATATYPES_USE_MACROS /* little functions are really macros */ + +#define bitvector_get_bit(v, bit_index) _bitvector_get_bit(v, bit_index) +#define bitvector_set_bit(v, bit_index) _bitvector_set_bit(v, bit_index) +#define bitvector_clear_bit(v, bit_index) _bitvector_clear_bit(v, bit_index) +#define bitvector_get_length(v) _bitvector_get_length(v) + +#else + +int +bitvector_get_bit(const bitvector_t *v, int bit_index); + +void +bitvector_set_bit(bitvector_t *v, int bit_index); + +void +bitvector_clear_bit(bitvector_t *v, int bit_index); + +unsigned long +bitvector_get_length(const bitvector_t *v); + +#endif + +int +bitvector_alloc(bitvector_t *v, unsigned long length); + +void +bitvector_dealloc(bitvector_t *v); + +void +bitvector_set_to_zero(bitvector_t *x); + +void +bitvector_left_shift(bitvector_t *x, int index); + +char * +bitvector_bit_string(bitvector_t *x, char* buf, int len); + +#endif /* _DATATYPES_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/ekt.h b/branches/2.0/doubango/thirdparties/android/include/srtp/ekt.h new file mode 100644 index 00000000..b0d888ba --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/ekt.h @@ -0,0 +1,201 @@ +/* + * ekt.h + * + * interface to Encrypted Key Transport for SRTP + * + * David McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2005 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + + +/* + * EKT implementation strategy + * + * use stream_template approach + * + * in srtp_unprotect, when a new stream appears, check if template has + * EKT defined, and if it does, then apply EKT processing + * + * question: will we want to allow key-sharing templates in addition + * to EKT templates? could define a new ssrc_type_t that's associated + * with an EKT, e.g. ssrc_any_ekt. + * + * + */ + +#ifndef EKT_H +#define EKT_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include "srtp_priv.h" + +#define EKT_CIPHER_DEFAULT 1 +#define EKT_CIPHER_AES_128_ECB 1 +#define EKT_CIPHER_AES_192_KEY_WRAP 2 +#define EKT_CIPHER_AES_256_KEY_WRAP 3 + +typedef uint16_t ekt_spi_t; + + +unsigned +ekt_octets_after_base_tag(ekt_stream_t ekt); + +/* + * an srtp_policy_t structure can contain a pointer to an + * ekt_policy_t structure + * + * this structure holds all of the high level EKT information, and it + * is passed into libsrtp to indicate what policy should be in effect + */ + +typedef struct ekt_policy_ctx_t { + ekt_spi_t spi; /* security parameter index */ + uint8_t ekt_cipher_type; + uint8_t *ekt_key; + struct ekt_policy_ctx_t *next_ekt_policy; +} ekt_policy_ctx_t; + + +/* + * an ekt_data_t structure holds the data corresponding to an ekt key, + * spi, and so on + */ + +typedef struct ekt_data_t { + ekt_spi_t spi; + uint8_t ekt_cipher_type; + aes_expanded_key_t ekt_enc_key; + aes_expanded_key_t ekt_dec_key; + struct ekt_data_t *next_ekt_data; +} ekt_data_t; + +/* + * an srtp_stream_ctx_t can contain an ekt_stream_ctx_t + * + * an ekt_stream_ctx_t structure holds all of the EKT information for + * a specific SRTP stream + */ + +typedef struct ekt_stream_ctx_t { + ekt_data_t *data; + uint16_t isn; /* initial sequence number */ + uint8_t encrypted_master_key[SRTP_MAX_KEY_LEN]; +} ekt_stream_ctx_t; + + + +err_status_t +ekt_alloc(ekt_stream_t *stream_data, ekt_policy_t policy); + +err_status_t +ekt_stream_init(ekt_stream_t e, + ekt_spi_t spi, + void *ekt_key, + unsigned ekt_cipher_type); + +err_status_t +ekt_stream_init_from_policy(ekt_stream_t e, ekt_policy_t p); + + + +err_status_t +srtp_stream_init_from_ekt(srtp_stream_t stream, + const void *srtcp_hdr, + unsigned pkt_octet_len); + + +void +ekt_write_data(ekt_stream_t ekt, + uint8_t *base_tag, + unsigned base_tag_len, + int *packet_len, + xtd_seq_num_t pkt_index); + +/* + * We handle EKT by performing some additional steps before + * authentication (copying the auth tag into a temporary location, + * zeroizing the "base tag" field in the packet) + * + * With EKT, the tag_len parameter is actually the base tag + * length + */ + +err_status_t +ekt_tag_verification_preproces(uint8_t *pkt_tag, + uint8_t *pkt_tag_copy, + unsigned tag_len); + +err_status_t +ekt_tag_verification_postproces(uint8_t *pkt_tag, + uint8_t *pkt_tag_copy, + unsigned tag_len); + + +/* + * @brief EKT pre-processing for srtcp tag generation + * + * This function does the pre-processing of the SRTCP authentication + * tag format. When EKT is used, it consists of writing the Encrypted + * Master Key, the SRTP ROC, the Initial Sequence Number, and SPI + * fields. The Base Authentication Tag field is set to the all-zero + * value + * + * When EKT is not used, this function is a no-op. + * + */ + +err_status_t +srtp_stream_srtcp_auth_tag_generation_preprocess(const srtp_stream_t *s, + uint8_t *pkt_tag, + unsigned pkt_octet_len); + +/* it's not clear that a tag_generation_postprocess function is needed */ + +err_status_t +srtcp_auth_tag_generation_postprocess(void); + + +#ifdef __cplusplus +} +#endif + +#endif /* EKT_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/err.h b/branches/2.0/doubango/thirdparties/android/include/srtp/err.h new file mode 100644 index 00000000..1a6e1701 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/err.h @@ -0,0 +1,174 @@ +/* + * err.h + * + * error status codes + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef ERR_H +#define ERR_H + +#include "datatypes.h" + +/** + * @defgroup Error Error Codes + * + * Error status codes are represented by the enumeration err_status_t. + * + * @{ + */ + + +/* + * @brief err_status_t defines error codes. + * + * The enumeration err_status_t defines error codes. Note that the + * value of err_status_ok is equal to zero, which can simplify error + * checking somewhat. + * + */ +typedef enum { + err_status_ok = 0, /**< nothing to report */ + err_status_fail = 1, /**< unspecified failure */ + err_status_bad_param = 2, /**< unsupported parameter */ + err_status_alloc_fail = 3, /**< couldn't allocate memory */ + err_status_dealloc_fail = 4, /**< couldn't deallocate properly */ + err_status_init_fail = 5, /**< couldn't initialize */ + err_status_terminus = 6, /**< can't process as much data as requested */ + err_status_auth_fail = 7, /**< authentication failure */ + err_status_cipher_fail = 8, /**< cipher failure */ + err_status_replay_fail = 9, /**< replay check failed (bad index) */ + err_status_replay_old = 10, /**< replay check failed (index too old) */ + err_status_algo_fail = 11, /**< algorithm failed test routine */ + err_status_no_such_op = 12, /**< unsupported operation */ + err_status_no_ctx = 13, /**< no appropriate context found */ + err_status_cant_check = 14, /**< unable to perform desired validation */ + err_status_key_expired = 15, /**< can't use key any more */ + err_status_socket_err = 16, /**< error in use of socket */ + err_status_signal_err = 17, /**< error in use POSIX signals */ + err_status_nonce_bad = 18, /**< nonce check failed */ + err_status_read_fail = 19, /**< couldn't read data */ + err_status_write_fail = 20, /**< couldn't write data */ + err_status_parse_err = 21, /**< error pasring data */ + err_status_encode_err = 22, /**< error encoding data */ + err_status_semaphore_err = 23,/**< error while using semaphores */ + err_status_pfkey_err = 24 /**< error while using pfkey */ +} err_status_t; + +/** + * @} + */ + +typedef enum { + err_level_emergency = 0, + err_level_alert, + err_level_critical, + err_level_error, + err_level_warning, + err_level_notice, + err_level_info, + err_level_debug, + err_level_none +} err_reporting_level_t; + +/* + * err_reporting_init prepares the error system. If + * ERR_REPORTING_SYSLOG is defined, it will open syslog. + * + * The ident argument is a string that will be prepended to + * all syslog messages. It is conventionally argv[0]. + */ + +err_status_t +err_reporting_init(char *ident); + +#ifdef SRTP_KERNEL_LINUX +extern err_reporting_level_t err_level; +#else + +/* + * keydaemon_report_error reports a 'printf' formatted error + * string, followed by a an arg list. The priority argument + * is equivalent to that defined for syslog. + * + * Errors will be reported to ERR_REPORTING_FILE, if defined, and to + * syslog, if ERR_REPORTING_SYSLOG is defined. + * + */ + +void +err_report(int priority, char *format, ...); +#endif /* ! SRTP_KERNEL_LINUX */ + + +/* + * debug_module_t defines a debug module + */ + +typedef struct { + int on; /* 1 if debugging is on, 0 if it is off */ + char *name; /* printable name for debug module */ +} debug_module_t; + +#ifdef ENABLE_DEBUGGING + +#define debug_on(mod) (mod).on = 1 + +#define debug_off(mod) (mod).on = 0 + +/* use err_report() to report debug message */ +#define debug_print(mod, format, arg) \ + if (mod.on) err_report(err_level_debug, ("%s: " format "\n"), mod.name, arg) +#define debug_print2(mod, format, arg1,arg2) \ + if (mod.on) err_report(err_level_debug, ("%s: " format "\n"), mod.name, arg1,arg2) + +#else + +/* define macros to do nothing */ +#define debug_print(mod, format, arg) + +#define debug_on(mod) + +#define debug_off(mod) + +#endif + +#endif /* ERR_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/getopt_s.h b/branches/2.0/doubango/thirdparties/android/include/srtp/getopt_s.h new file mode 100644 index 00000000..2a6ece34 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/getopt_s.h @@ -0,0 +1,60 @@ +/* + * getopt.h + * + * interface to a minimal implementation of the getopt() function, + * written so that test applications that use that function can run on + * non-POSIX platforms + * + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef GETOPT_S_H +#define GETOPT_S_H + +/* + * getopt_s(), optarg_s, and optind_s are small, locally defined + * versions of the POSIX standard getopt() interface. + */ + +int +getopt_s(int argc, char * const argv[], const char *optstring); + +extern char *optarg_s; /* defined in getopt.c */ + +extern int optind_s; /* defined in getopt.c */ + +#endif /* GETOPT_S_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/gf2_8.h b/branches/2.0/doubango/thirdparties/android/include/srtp/gf2_8.h new file mode 100644 index 00000000..098d37c9 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/gf2_8.h @@ -0,0 +1,79 @@ +/* + * gf2_8.h + * + * GF(256) implementation + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef GF2_8_H +#define GF2_8_H + +#include "datatypes.h" /* for uint8_t definition */ + +typedef uint8_t gf2_8; + +#define gf2_8_field_polynomial 0x1B + +/* + * gf2_8_shift(x) returns + */ + +/* + * gf2_8_shift(z) returns the result of the GF(2^8) 'multiply by x' + * operation, using the field representation from AES; that is, the + * next gf2_8 value in the cyclic representation of that field. The + * value z should be an uint8_t. + */ + +#define gf2_8_shift(z) (((z) & 128) ? \ + (((z) << 1) ^ gf2_8_field_polynomial) : ((z) << 1)) + +gf2_8 +gf2_8_compute_inverse(gf2_8 x); + +void +test_gf2_8(void); + +gf2_8 +gf2_8_multiply(gf2_8 x, gf2_8 y); + +#endif /* GF2_8_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/hmac.h b/branches/2.0/doubango/thirdparties/android/include/srtp/hmac.h new file mode 100644 index 00000000..262c0e2d --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/hmac.h @@ -0,0 +1,78 @@ +/* + * hmac.h + * + * interface to hmac auth_type_t + * + * David A. McGrew + * Cisco Systems, Inc. + * + */ +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef HMAC_H +#define HMAC_H + +#include "auth.h" +#include "sha1.h" + +typedef struct { + uint8_t opad[64]; + sha1_ctx_t ctx; + sha1_ctx_t init_ctx; +} hmac_ctx_t; + +err_status_t +hmac_alloc(auth_t **a, int key_len, int out_len); + +err_status_t +hmac_dealloc(auth_t *a); + +err_status_t +hmac_init(hmac_ctx_t *state, const uint8_t *key, int key_len); + +err_status_t +hmac_start(hmac_ctx_t *state); + +err_status_t +hmac_update(hmac_ctx_t *state, const uint8_t *message, int msg_octets); + +err_status_t +hmac_compute(hmac_ctx_t *state, const void *message, + int msg_octets, int tag_len, uint8_t *result); + + +#endif /* HMAC_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/integers.h b/branches/2.0/doubango/thirdparties/android/include/srtp/integers.h new file mode 100644 index 00000000..7010efdd --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/integers.h @@ -0,0 +1,147 @@ +/* + * integers.h + * + * defines integer types (or refers to their definitions) + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef INTEGERS_H +#define INTEGERS_H + +#include "config.h" /* configuration file, using autoconf */ + +#ifdef SRTP_KERNEL + +#include "kernel_compat.h" + +#else /* SRTP_KERNEL */ + +/* use standard integer definitions, if they're available */ +#ifdef HAVE_STDLIB_H +# include +#endif +#ifdef HAVE_STDINT_H +# include +#endif +#ifdef HAVE_INTTYPES_H +# include +#endif +#ifdef HAVE_SYS_TYPES_H +# include +#endif +#ifdef HAVE_SYS_INT_TYPES_H +# include /* this exists on Sun OS */ +#endif +#ifdef HAVE_MACHINE_TYPES_H +# include +#endif + +/* Can we do 64 bit integers? */ +#ifndef HAVE_UINT64_T +# if SIZEOF_UNSIGNED_LONG == 8 +typedef unsigned long uint64_t; +# elif SIZEOF_UNSIGNED_LONG_LONG == 8 +typedef unsigned long long uint64_t; +# else +# define NO_64BIT_MATH 1 +# endif +#endif + +/* Reasonable defaults for 32 bit machines - you may need to + * edit these definitions for your own machine. */ +#ifndef HAVE_UINT8_T +typedef unsigned char uint8_t; +#endif +#ifndef HAVE_UINT16_T +typedef unsigned short int uint16_t; +#endif +#ifndef HAVE_UINT32_T +typedef unsigned int uint32_t; +#endif + + +#ifdef NO_64BIT_MATH +typedef double uint64_t; +/* assert that sizeof(double) == 8 */ +extern uint64_t make64(uint32_t high, uint32_t low); +extern uint32_t high32(uint64_t value); +extern uint32_t low32(uint64_t value); +#endif + +#endif /* SRTP_KERNEL */ + +/* These macros are to load and store 32-bit values from un-aligned + addresses. This is required for processors that do not allow unaligned + loads. */ +#ifdef ALIGNMENT_32BIT_REQUIRED +/* Note that if it's in a variable, you can memcpy it */ +#ifdef WORDS_BIGENDIAN +#define PUT_32(addr,value) \ + { \ + ((unsigned char *) (addr))[0] = (value >> 24); \ + ((unsigned char *) (addr))[1] = (value >> 16) & 0xff; \ + ((unsigned char *) (addr))[2] = (value >> 8) & 0xff; \ + ((unsigned char *) (addr))[3] = (value) & 0xff; \ + } +#define GET_32(addr) ((((unsigned char *) (addr))[0] << 24) | \ + (((unsigned char *) (addr))[1] << 16) | \ + (((unsigned char *) (addr))[2] << 8) | \ + (((unsigned char *) (addr))[3])) +#else +#define PUT_32(addr,value) \ + { \ + ((unsigned char *) (addr))[3] = (value >> 24); \ + ((unsigned char *) (addr))[2] = (value >> 16) & 0xff; \ + ((unsigned char *) (addr))[1] = (value >> 8) & 0xff; \ + ((unsigned char *) (addr))[0] = (value) & 0xff; \ + } +#define GET_32(addr) ((((unsigned char *) (addr))[3] << 24) | \ + (((unsigned char *) (addr))[2] << 16) | \ + (((unsigned char *) (addr))[1] << 8) | \ + (((unsigned char *) (addr))[0])) +#endif // WORDS_BIGENDIAN +#else +#define PUT_32(addr,value) *(((uint32_t *) (addr)) = (value) +#define GET_32(addr) (*(((uint32_t *) (addr))) +#endif + +#endif /* INTEGERS_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/kernel_compat.h b/branches/2.0/doubango/thirdparties/android/include/srtp/kernel_compat.h new file mode 100644 index 00000000..59d1898e --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/kernel_compat.h @@ -0,0 +1,84 @@ +/* + * kernel_compat.h + * + * Compatibility stuff for building in kernel context where standard + * C headers and library are not available. + * + * Marcus Sundberg + * Ingate Systems AB + */ +/* + * + * Copyright(c) 2005 Ingate Systems AB + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the author(s) nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef KERNEL_COMPAT_H +#define KERNEL_COMPAT_H + +#ifdef SRTP_KERNEL_LINUX + +#include +#include +#include +#include +#include + + +#define err_report(priority, ...) \ + do {\ + if (priority <= err_level) {\ + printk(__VA_ARGS__);\ + }\ + }while(0) + +#define clock() (jiffies) +#define time(x) (jiffies) + +/* rand() implementation. */ +#define RAND_MAX 32767 + +static inline int rand(void) +{ + uint32_t temp; + get_random_bytes(&temp, sizeof(temp)); + return temp % (RAND_MAX+1); +} + +/* stdio/stdlib implementation. */ +#define printf(...) printk(__VA_ARGS__) +#define exit(n) panic("%s:%d: exit(%d)\n", __FILE__, __LINE__, (n)) + +#endif /* SRTP_KERNEL_LINUX */ + +#endif /* KERNEL_COMPAT_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/key.h b/branches/2.0/doubango/thirdparties/android/include/srtp/key.h new file mode 100644 index 00000000..e7e07448 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/key.h @@ -0,0 +1,82 @@ +/* + * key.h + * + * key usage limits enforcement + * + * David A. Mcgrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef KEY_H +#define KEY_H + +#include "rdbx.h" /* for xtd_seq_num_t */ +#include "err.h" + +typedef struct key_limit_ctx_t *key_limit_t; + +typedef enum { + key_event_normal, + key_event_soft_limit, + key_event_hard_limit +} key_event_t; + +err_status_t +key_limit_set(key_limit_t key, const xtd_seq_num_t s); + +err_status_t +key_limit_clone(key_limit_t original, key_limit_t *new_key); + +err_status_t +key_limit_check(const key_limit_t key); + +key_event_t +key_limit_update(key_limit_t key); + +typedef enum { + key_state_normal, + key_state_past_soft_limit, + key_state_expired +} key_state_t; + +typedef struct key_limit_ctx_t { + xtd_seq_num_t num_left; + key_state_t state; +} key_limit_ctx_t; + +#endif /* KEY_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/null_auth.h b/branches/2.0/doubango/thirdparties/android/include/srtp/null_auth.h new file mode 100644 index 00000000..44f9a4a2 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/null_auth.h @@ -0,0 +1,68 @@ +/* + * null-auth.h + * + * David A. McGrew + * Cisco Systems, Inc. + * + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef NULL_AUTH_H +#define NULL_AUTH_H + +#include "auth.h" + +typedef struct { + char foo; +} null_auth_ctx_t; + +err_status_t +null_auth_alloc(auth_t **a, int key_len, int out_len); + +err_status_t +null_auth_dealloc(auth_t *a); + +err_status_t +null_auth_init(null_auth_ctx_t *state, const uint8_t *key, int key_len); + +err_status_t +null_auth_compute (null_auth_ctx_t *state, uint8_t *message, + int msg_octets, int tag_len, uint8_t *result); + + +#endif /* NULL_AUTH_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/null_cipher.h b/branches/2.0/doubango/thirdparties/android/include/srtp/null_cipher.h new file mode 100644 index 00000000..39da59a8 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/null_cipher.h @@ -0,0 +1,80 @@ +/* + * null-cipher.h + * + * header file for the null cipher + * + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef NULL_CIPHER_H +#define NULL_CIPHER_H + +#include "datatypes.h" +#include "cipher.h" + +typedef struct { + char foo ;/* empty, for now */ +} null_cipher_ctx_t; + + +/* + * none of these functions do anything (though future versions may keep + * track of bytes encrypted, number of instances, and/or other info). + */ + +err_status_t +null_cipher_init(null_cipher_ctx_t *c, const uint8_t *key, int key_len); + +err_status_t +null_cipher_set_segment(null_cipher_ctx_t *c, + unsigned long segment_index); + +err_status_t +null_cipher_encrypt(null_cipher_ctx_t *c, + unsigned char *buf, unsigned int *bytes_to_encr); + + +err_status_t +null_cipher_encrypt_aligned(null_cipher_ctx_t *c, + unsigned char *buf, int bytes_to_encr); + +#endif /* NULL_CIPHER_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/prng.h b/branches/2.0/doubango/thirdparties/android/include/srtp/prng.h new file mode 100644 index 00000000..fb96b5eb --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/prng.h @@ -0,0 +1,54 @@ +/* + * prng.h + * + * pseudorandom source + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +#ifndef PRNG_H +#define PRNG_H + +#include "rand_source.h" /* for rand_source_func_t definition */ +#include "aes.h" /* for aes */ +#include "aes_icm.h" /* for aes ctr */ + +#define MAX_PRNG_OUT_LEN 0xffffffffU + +/* + * x917_prng is an ANSI X9.17-like AES-based PRNG + */ + +typedef struct { + v128_t state; /* state data */ + aes_expanded_key_t key; /* secret key */ + uint32_t octet_count; /* number of octets output since last init */ + rand_source_func_t rand; /* random source for re-initialization */ +} x917_prng_t; + +err_status_t +x917_prng_init(rand_source_func_t random_source); + +err_status_t +x917_prng_get_octet_string(uint8_t *dest, uint32_t len); + + +/* + * ctr_prng is an AES-CTR based PRNG + */ + +typedef struct { + uint32_t octet_count; /* number of octets output since last init */ + aes_icm_ctx_t state; /* state data */ + rand_source_func_t rand; /* random source for re-initialization */ +} ctr_prng_t; + +err_status_t +ctr_prng_init(rand_source_func_t random_source); + +err_status_t +ctr_prng_get_octet_string(void *dest, uint32_t len); + + +#endif diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/rand_source.h b/branches/2.0/doubango/thirdparties/android/include/srtp/rand_source.h new file mode 100644 index 00000000..b4c21103 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/rand_source.h @@ -0,0 +1,91 @@ +/* + * rand_source.h + * + * implements a random source based on /dev/random + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright(c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef RAND_SOURCE +#define RAND_SOURCE + +#include "err.h" +#include "datatypes.h" + +err_status_t +rand_source_init(void); + +/* + * rand_source_get_octet_string() writes a random octet string. + * + * The function call rand_source_get_octet_string(dest, len) writes + * len octets of random data to the location to which dest points, + * and returns an error code. This error code should be checked, + * and if a failure is reported, the data in the buffer MUST NOT + * be used. + * + * warning: If the return code is not checked, then non-random + * data may inadvertently be used. + * + * returns: + * - err_status_ok if no problems occured. + * - [other] a problem occured, and no assumptions should + * be made about the contents of the destination + * buffer. + */ + +err_status_t +rand_source_get_octet_string(void *dest, uint32_t length); + +err_status_t +rand_source_deinit(void); + +/* + * function prototype for a random source function + * + * A rand_source_func_t writes num_octets at the location indicated by + * dest and returns err_status_ok. Any other return value indicates + * failure. + */ + +typedef err_status_t (*rand_source_func_t) + (void *dest, uint32_t num_octets); + +#endif /* RAND_SOURCE */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/rdb.h b/branches/2.0/doubango/thirdparties/android/include/srtp/rdb.h new file mode 100644 index 00000000..2ccb1448 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/rdb.h @@ -0,0 +1,94 @@ +/* + * replay-database.h + * + * interface for a replay database for packet security + * + * David A. McGrew + * Cisco Systems, Inc. + */ + + +#ifndef REPLAY_DB_H +#define REPLAY_DB_H + +#include "integers.h" /* for uint32_t */ +#include "datatypes.h" /* for v128_t */ +#include "err.h" /* for err_status_t */ + +/* + * if the ith least significant bit is one, then the packet index + * window_end-i is in the database + */ + +typedef struct { + uint32_t window_start; /* packet index of the first bit in bitmask */ + v128_t bitmask; +} rdb_t; + +#define rdb_bits_in_bitmask (8*sizeof(v128_t)) + +/* + * rdb init + * + * initalizes rdb + * + * returns err_status_ok on success, err_status_t_fail otherwise + */ + +err_status_t +rdb_init(rdb_t *rdb); + + +/* + * rdb_check + * + * checks to see if index appears in rdb + * + * returns err_status_fail if the index already appears in rdb, + * returns err_status_ok otherwise + */ + +err_status_t +rdb_check(const rdb_t *rdb, uint32_t rdb_index); + +/* + * rdb_add_index + * + * adds index to rdb_t (and does *not* check if index appears in db) + * + * returns err_status_ok on success, err_status_fail otherwise + * + */ + +err_status_t +rdb_add_index(rdb_t *rdb, uint32_t rdb_index); + +/* + * the functions rdb_increment() and rdb_get_value() are for use by + * senders, not receivers - DO NOT use these functions on the same + * rdb_t upon which rdb_add_index is used! + */ + + +/* + * rdb_increment(db) increments the sequence number in db, if it is + * not too high + * + * return values: + * + * err_status_ok no problem + * err_status_key_expired sequence number too high + * + */ +err_status_t +rdb_increment(rdb_t *rdb); + +/* + * rdb_get_value(db) returns the current sequence number of db + */ + +uint32_t +rdb_get_value(const rdb_t *rdb); + + +#endif /* REPLAY_DB_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/rdbx.h b/branches/2.0/doubango/thirdparties/android/include/srtp/rdbx.h new file mode 100644 index 00000000..146fb42f --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/rdbx.h @@ -0,0 +1,186 @@ +/* + * rdbx.h + * + * replay database with extended packet indices, using a rollover counter + * + * David A. McGrew + * Cisco Systems, Inc. + * + */ + +#ifndef RDBX_H +#define RDBX_H + +#include "datatypes.h" +#include "err.h" + +/* #define ROC_TEST */ + +#ifndef ROC_TEST + +typedef uint16_t sequence_number_t; /* 16 bit sequence number */ +typedef uint32_t rollover_counter_t; /* 32 bit rollover counter */ + +#else /* use small seq_num and roc datatypes for testing purposes */ + +typedef unsigned char sequence_number_t; /* 8 bit sequence number */ +typedef uint16_t rollover_counter_t; /* 16 bit rollover counter */ + +#endif + +#define seq_num_median (1 << (8*sizeof(sequence_number_t) - 1)) +#define seq_num_max (1 << (8*sizeof(sequence_number_t))) + +/* + * An xtd_seq_num_t is a 64-bit unsigned integer used as an 'extended' + * sequence number. + */ + +typedef uint64_t xtd_seq_num_t; + + +/* + * An rdbx_t is a replay database with extended range; it uses an + * xtd_seq_num_t and a bitmask of recently received indices. + */ + +typedef struct { + xtd_seq_num_t index; + bitvector_t bitmask; +} rdbx_t; + + +/* + * rdbx_init(rdbx_ptr, ws) + * + * initializes the rdbx pointed to by its argument with the window size ws, + * setting the rollover counter and sequence number to zero + */ + +err_status_t +rdbx_init(rdbx_t *rdbx, unsigned long ws); + + +/* + * rdbx_dealloc(rdbx_ptr) + * + * frees memory associated with the rdbx + */ + +err_status_t +rdbx_dealloc(rdbx_t *rdbx); + + +/* + * rdbx_estimate_index(rdbx, guess, s) + * + * given an rdbx and a sequence number s (from a newly arrived packet), + * sets the contents of *guess to contain the best guess of the packet + * index to which s corresponds, and returns the difference between + * *guess and the locally stored synch info + */ + +int +rdbx_estimate_index(const rdbx_t *rdbx, + xtd_seq_num_t *guess, + sequence_number_t s); + +/* + * rdbx_check(rdbx, delta); + * + * rdbx_check(&r, delta) checks to see if the xtd_seq_num_t + * which is at rdbx->window_start + delta is in the rdb + * + */ + +err_status_t +rdbx_check(const rdbx_t *rdbx, int difference); + +/* + * replay_add_index(rdbx, delta) + * + * adds the xtd_seq_num_t at rdbx->window_start + delta to replay_db + * (and does *not* check if that xtd_seq_num_t appears in db) + * + * this function should be called *only* after replay_check has + * indicated that the index does not appear in the rdbx, and a mutex + * should protect the rdbx between these calls if necessary. + */ + +err_status_t +rdbx_add_index(rdbx_t *rdbx, int delta); + + +/* + * rdbx_set_roc(rdbx, roc) initalizes the rdbx_t at the location rdbx + * to have the rollover counter value roc. If that value is less than + * the current rollover counter value, then the function returns + * err_status_replay_old; otherwise, err_status_ok is returned. + * + */ + +err_status_t +rdbx_set_roc(rdbx_t *rdbx, uint32_t roc); + +/* + * rdbx_get_roc(rdbx) returns the value of the rollover counter for + * the rdbx_t pointed to by rdbx + * + */ + +xtd_seq_num_t +rdbx_get_packet_index(const rdbx_t *rdbx); + +/* + * xtd_seq_num_t functions - these are *internal* functions of rdbx, and + * shouldn't be used to manipulate rdbx internal values. use the rdbx + * api instead! + */ + +/* + * rdbx_get_ws(rdbx_ptr) + * + * gets the window size which was used to initialize the rdbx + */ + +unsigned long +rdbx_get_window_size(const rdbx_t *rdbx); + + +/* index_init(&pi) initializes a packet index pi (sets it to zero) */ + +void +index_init(xtd_seq_num_t *pi); + +/* index_advance(&pi, s) advances a xtd_seq_num_t forward by s */ + +void +index_advance(xtd_seq_num_t *pi, sequence_number_t s); + + +/* + * index_guess(local, guess, s) + * + * given a xtd_seq_num_t local (which represents the highest + * known-to-be-good index) and a sequence number s (from a newly + * arrived packet), sets the contents of *guess to contain the best + * guess of the packet index to which s corresponds, and returns the + * difference between *guess and *local + */ + +int +index_guess(const xtd_seq_num_t *local, + xtd_seq_num_t *guess, + sequence_number_t s); + + +#endif /* RDBX_H */ + + + + + + + + + diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/rtp.h b/branches/2.0/doubango/thirdparties/android/include/srtp/rtp.h new file mode 100644 index 00000000..0e0119cf --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/rtp.h @@ -0,0 +1,139 @@ +/* + * rtp.h + * + * rtp interface for srtp reference implementation + * + * David A. McGrew + * Cisco Systems, Inc. + * + * data types: + * + * rtp_msg_t an rtp message (the data that goes on the wire) + * rtp_sender_t sender side socket and rtp info + * rtp_receiver_t receiver side socket and rtp info + * + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef RTP_H +#define RTP_H + +#ifdef HAVE_NETINET_IN_H +# include +#elif defined HAVE_WINSOCK2_H +# include +#endif + +#include "srtp.h" + +typedef struct rtp_sender_ctx_t *rtp_sender_t; + +typedef struct rtp_receiver_ctx_t *rtp_receiver_t; + +int +rtp_sendto(rtp_sender_t sender, const void* msg, int len); + +int +rtp_recvfrom(rtp_receiver_t receiver, void *msg, int *len); + +int +rtp_receiver_init(rtp_receiver_t rcvr, int sock, + struct sockaddr_in addr, unsigned int ssrc); + +int +rtp_sender_init(rtp_sender_t sender, int sock, + struct sockaddr_in addr, unsigned int ssrc); + +/* + * srtp_sender_init(...) initializes an rtp_sender_t + */ + +int +srtp_sender_init(rtp_sender_t rtp_ctx, /* structure to be init'ed */ + struct sockaddr_in name, /* socket name */ + sec_serv_t security_services, /* sec. servs. to be used */ + unsigned char *input_key /* master key/salt in hex */ + ); + +int +srtp_receiver_init(rtp_receiver_t rtp_ctx, /* structure to be init'ed */ + struct sockaddr_in name, /* socket name */ + sec_serv_t security_services, /* sec. servs. to be used */ + unsigned char *input_key /* master key/salt in hex */ + ); + + +int +rtp_sender_init_srtp(rtp_sender_t sender, const srtp_policy_t *policy); + +int +rtp_sender_deinit_srtp(rtp_sender_t sender); + +int +rtp_receiver_init_srtp(rtp_receiver_t sender, const srtp_policy_t *policy); + +int +rtp_receiver_deinit_srtp(rtp_receiver_t sender); + + +rtp_sender_t +rtp_sender_alloc(void); + +void +rtp_sender_dealloc(rtp_sender_t rtp_ctx); + +rtp_receiver_t +rtp_receiver_alloc(void); + +void +rtp_receiver_dealloc(rtp_receiver_t rtp_ctx); + + +/* + * RTP_HEADER_LEN indicates the size of an RTP header + */ +#define RTP_HEADER_LEN 12 + +/* + * RTP_MAX_BUF_LEN defines the largest RTP packet in the rtp.c implementation + */ +#define RTP_MAX_BUF_LEN 16384 + + +#endif /* RTP_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/rtp_priv.h b/branches/2.0/doubango/thirdparties/android/include/srtp/rtp_priv.h new file mode 100644 index 00000000..14213866 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/rtp_priv.h @@ -0,0 +1,74 @@ +/* + * rtp_priv.h + * + * private, internal header file for RTP + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef RTP_PRIV_H +#define RTP_PRIV_H + +#include "srtp_priv.h" +#include "rtp.h" + +typedef srtp_hdr_t rtp_hdr_t; + +typedef struct { + srtp_hdr_t header; + char body[RTP_MAX_BUF_LEN]; +} rtp_msg_t; + +typedef struct rtp_sender_ctx_t { + rtp_msg_t message; + int socket; + srtp_ctx_t *srtp_ctx; + struct sockaddr_in addr; /* reciever's address */ +} rtp_sender_ctx_t; + +typedef struct rtp_receiver_ctx_t { + rtp_msg_t message; + int socket; + srtp_ctx_t *srtp_ctx; + struct sockaddr_in addr; /* receiver's address */ +} rtp_receiver_ctx_t; + + +#endif /* RTP_PRIV_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/sha1.h b/branches/2.0/doubango/thirdparties/android/include/srtp/sha1.h new file mode 100644 index 00000000..e3af4d4b --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/sha1.h @@ -0,0 +1,108 @@ +/* + * sha1.h + * + * interface to the Secure Hash Algorithm v.1 (SHA-1), specified in + * FIPS 180-1 + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef SHA1_H +#define SHA1_H + +#include "err.h" +#include "datatypes.h" + +typedef struct { + uint32_t H[5]; /* state vector */ + uint32_t M[16]; /* message buffer */ + int octets_in_buffer; /* octets of message in buffer */ + uint32_t num_bits_in_msg; /* total number of bits in message */ +} sha1_ctx_t; + +/* + * sha1(&ctx, msg, len, output) hashes the len octets starting at msg + * into the SHA1 context, then writes the result to the 20 octets at + * output + * + */ + +void +sha1(const uint8_t *message, int octets_in_msg, uint32_t output[5]); + +/* + * sha1_init(&ctx) initializes the SHA1 context ctx + * + * sha1_update(&ctx, msg, len) hashes the len octets starting at msg + * into the SHA1 context + * + * sha1_final(&ctx, output) performs the final processing of the SHA1 + * context and writes the result to the 20 octets at output + * + */ + +void +sha1_init(sha1_ctx_t *ctx); + +void +sha1_update(sha1_ctx_t *ctx, const uint8_t *M, int octets_in_msg); + +void +sha1_final(sha1_ctx_t *ctx, uint32_t output[5]); + +/* + * The sha1_core function is INTERNAL to SHA-1, but it is declared + * here because it is also used by the cipher SEAL 3.0 in its key + * setup algorithm. + */ + +/* + * sha1_core(M, H) computes the core sha1 compression function, where M is + * the next part of the message and H is the intermediate state {H0, + * H1, ...} + * + * this function does not do any of the padding required in the + * complete sha1 function + */ + +void +sha1_core(const uint32_t M[16], uint32_t hash_value[5]); + +#endif /* SHA1_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/srtp.h b/branches/2.0/doubango/thirdparties/android/include/srtp/srtp.h new file mode 100644 index 00000000..eb95e7d4 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/srtp.h @@ -0,0 +1,1006 @@ +/* + * srtp.h + * + * interface to libsrtp + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef SRTP_H +#define SRTP_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include "crypto_kernel.h" + +/** + * @defgroup SRTP Secure RTP + * + * @brief libSRTP provides functions for protecting RTP and RTCP. See + * Section @ref Overview for an introduction to the use of the library. + * + * @{ + */ + +/* + * SRTP_MASTER_KEY_LEN is the nominal master key length supported by libSRTP + */ + +#define SRTP_MASTER_KEY_LEN 30 + +/* + * SRTP_MAX_KEY_LEN is the maximum key length supported by libSRTP + */ +#define SRTP_MAX_KEY_LEN 64 + +/* + * SRTP_MAX_TAG_LEN is the maximum tag length supported by libSRTP + */ + +#define SRTP_MAX_TAG_LEN 12 + +/** + * SRTP_MAX_TRAILER_LEN is the maximum length of the SRTP trailer + * (authentication tag and MKI) supported by libSRTP. This value is + * the maximum number of octets that will be added to an RTP packet by + * srtp_protect(). + * + * @brief the maximum number of octets added by srtp_protect(). + */ +#define SRTP_MAX_TRAILER_LEN SRTP_MAX_TAG_LEN + +/* + * nota bene: since libSRTP doesn't support the use of the MKI, the + * SRTP_MAX_TRAILER_LEN value is just the maximum tag length + */ + +/** + * @brief sec_serv_t describes a set of security services. + * + * A sec_serv_t enumeration is used to describe the particular + * security services that will be applied by a particular crypto + * policy (or other mechanism). + */ + +typedef enum { + sec_serv_none = 0, /**< no services */ + sec_serv_conf = 1, /**< confidentiality */ + sec_serv_auth = 2, /**< authentication */ + sec_serv_conf_and_auth = 3 /**< confidentiality and authentication */ +} sec_serv_t; + +/** + * @brief crypto_policy_t describes a particular crypto policy that + * can be applied to an SRTP stream. + * + * A crypto_policy_t describes a particular cryptographic policy that + * can be applied to an SRTP or SRTCP stream. An SRTP session policy + * consists of a list of these policies, one for each SRTP stream + * in the session. + */ + +typedef struct crypto_policy_t { + cipher_type_id_t cipher_type; /**< An integer representing + * the type of cipher. */ + int cipher_key_len; /**< The length of the cipher key + * in octets. */ + auth_type_id_t auth_type; /**< An integer representing the + * authentication function. */ + int auth_key_len; /**< The length of the authentication + * function key in octets. */ + int auth_tag_len; /**< The length of the authentication + * tag in octets. */ + sec_serv_t sec_serv; /**< The flag indicating the security + * services to be applied. */ +} crypto_policy_t; + + +/** + * @brief ssrc_type_t describes the type of an SSRC. + * + * An ssrc_type_t enumeration is used to indicate a type of SSRC. See + * @ref srtp_policy_t for more informataion. + */ + +typedef enum { + ssrc_undefined = 0, /**< Indicates an undefined SSRC type. */ + ssrc_specific = 1, /**< Indicates a specific SSRC value */ + ssrc_any_inbound = 2, /**< Indicates any inbound SSRC value + (i.e. a value that is used in the + function srtp_unprotect()) */ + ssrc_any_outbound = 3 /**< Indicates any outbound SSRC value + (i.e. a value that is used in the + function srtp_protect()) */ +} ssrc_type_t; + +/** + * @brief An ssrc_t represents a particular SSRC value, or a `wildcard' SSRC. + * + * An ssrc_t represents a particular SSRC value (if its type is + * ssrc_specific), or a wildcard SSRC value that will match all + * outbound SSRCs (if its type is ssrc_any_outbound) or all inbound + * SSRCs (if its type is ssrc_any_inbound). + * + */ + +typedef struct { + ssrc_type_t type; /**< The type of this particular SSRC */ + unsigned int value; /**< The value of this SSRC, if it is not a wildcard */ +} ssrc_t; + + +/** + * @brief points to an EKT policy + */ +typedef struct ekt_policy_ctx_t *ekt_policy_t; + + +/** + * @brief points to EKT stream data + */ +typedef struct ekt_stream_ctx_t *ekt_stream_t; + + +/** + * @brief represents the policy for an SRTP session. + * + * A single srtp_policy_t struct represents the policy for a single + * SRTP stream, and a linked list of these elements represents the + * policy for an entire SRTP session. Each element contains the SRTP + * and SRTCP crypto policies for that stream, a pointer to the SRTP + * master key for that stream, the SSRC describing that stream, or a + * flag indicating a `wildcard' SSRC value, and a `next' field that + * holds a pointer to the next element in the list of policy elements, + * or NULL if it is the last element. + * + * The wildcard value SSRC_ANY_INBOUND matches any SSRC from an + * inbound stream that for which there is no explicit SSRC entry in + * another policy element. Similarly, the value SSRC_ANY_OUTBOUND + * will matches any SSRC from an outbound stream that does not appear + * in another policy element. Note that wildcard SSRCs &b cannot be + * used to match both inbound and outbound traffic. This restriction + * is intentional, and it allows libSRTP to ensure that no security + * lapses result from accidental re-use of SSRC values during key + * sharing. + * + * + * @warning The final element of the list @b must have its `next' pointer + * set to NULL. + */ + +typedef struct srtp_policy_t { + ssrc_t ssrc; /**< The SSRC value of stream, or the + * flags SSRC_ANY_INBOUND or + * SSRC_ANY_OUTBOUND if key sharing + * is used for this policy element. + */ + crypto_policy_t rtp; /**< SRTP crypto policy. */ + crypto_policy_t rtcp; /**< SRTCP crypto policy. */ + unsigned char *key; /**< Pointer to the SRTP master key for + * this stream. */ + ekt_policy_t ekt; /**< Pointer to the EKT policy structure + * for this stream (if any) */ + unsigned long window_size; /**< The window size to use for replay + * protection. */ + int allow_repeat_tx; /**< Whether retransmissions of + * packets with the same sequence number + * are allowed. (Note that such repeated + * transmissions must have the same RTP + * payload, or a severe security weakness + * is introduced!) */ + struct srtp_policy_t *next; /**< Pointer to next stream policy. */ +} srtp_policy_t; + + + + +/** + * @brief An srtp_t points to an SRTP session structure. + * + * The typedef srtp_t is a pointer to a structure that represents + * an SRTP session. This datatype is intentially opaque in + * order to separate the interface from the implementation. + * + * An SRTP session consists of all of the traffic sent to the RTP and + * RTCP destination transport addresses, using the RTP/SAVP (Secure + * Audio/Video Profile). A session can be viewed as a set of SRTP + * streams, each of which originates with a different participant. + */ + +typedef struct srtp_ctx_t *srtp_t; + + +/** + * @brief An srtp_stream_t points to an SRTP stream structure. + * + * The typedef srtp_stream_t is a pointer to a structure that + * represents an SRTP stream. This datatype is intentionally + * opaque in order to separate the interface from the implementation. + * + * An SRTP stream consists of all of the traffic sent to an SRTP + * session by a single participant. A session can be viewed as + * a set of streams. + * + */ +typedef struct srtp_stream_ctx_t *srtp_stream_t; + + + +/** + * @brief srtp_init() initializes the srtp library. + * + * @warning This function @b must be called before any other srtp + * functions. + */ + +err_status_t +srtp_init(void); + +/** + * @brief srtp_shutdown() de-initializes the srtp library. + * + * @warning No srtp functions may be called after calling this function. + */ + +err_status_t +srtp_shutdown(void); + +/** + * @brief srtp_protect() is the Secure RTP sender-side packet processing + * function. + * + * The function call srtp_protect(ctx, rtp_hdr, len_ptr) applies SRTP + * protection to the RTP packet rtp_hdr (which has length *len_ptr) using + * the SRTP context ctx. If err_status_ok is returned, then rtp_hdr + * points to the resulting SRTP packet and *len_ptr is the number of + * octets in that packet; otherwise, no assumptions should be made + * about the value of either data elements. + * + * The sequence numbers of the RTP packets presented to this function + * need not be consecutive, but they @b must be out of order by less + * than 2^15 = 32,768 packets. + * + * @warning This function assumes that it can write the authentication + * tag into the location in memory immediately following the RTP + * packet, and assumes that the RTP packet is aligned on a 32-bit + * boundary. + * + * @param ctx is the SRTP context to use in processing the packet. + * + * @param rtp_hdr is a pointer to the RTP packet (before the call); after + * the function returns, it points to the srtp packet. + * + * @param len_ptr is a pointer to the length in octets of the complete + * RTP packet (header and body) before the function call, and of the + * complete SRTP packet after the call, if err_status_ok was returned. + * Otherwise, the value of the data to which it points is undefined. + * + * @return + * - err_status_ok no problems + * - err_status_replay_fail rtp sequence number was non-increasing + * - @e other failure in cryptographic mechanisms + */ + +err_status_t +srtp_protect(srtp_t ctx, void *rtp_hdr, int *len_ptr); + +/** + * @brief srtp_unprotect() is the Secure RTP receiver-side packet + * processing function. + * + * The function call srtp_unprotect(ctx, srtp_hdr, len_ptr) verifies + * the Secure RTP protection of the SRTP packet pointed to by srtp_hdr + * (which has length *len_ptr), using the SRTP context ctx. If + * err_status_ok is returned, then srtp_hdr points to the resulting + * RTP packet and *len_ptr is the number of octets in that packet; + * otherwise, no assumptions should be made about the value of either + * data elements. + * + * The sequence numbers of the RTP packets presented to this function + * need not be consecutive, but they @b must be out of order by less + * than 2^15 = 32,768 packets. + * + * @warning This function assumes that the SRTP packet is aligned on a + * 32-bit boundary. + * + * @param ctx is a pointer to the srtp_t which applies to the + * particular packet. + * + * @param srtp_hdr is a pointer to the header of the SRTP packet + * (before the call). after the function returns, it points to the + * rtp packet if err_status_ok was returned; otherwise, the value of + * the data to which it points is undefined. + * + * @param len_ptr is a pointer to the length in octets of the complete + * srtp packet (header and body) before the function call, and of the + * complete rtp packet after the call, if err_status_ok was returned. + * Otherwise, the value of the data to which it points is undefined. + * + * @return + * - err_status_ok if the RTP packet is valid. + * - err_status_auth_fail if the SRTP packet failed the message + * authentication check. + * - err_status_replay_fail if the SRTP packet is a replay (e.g. packet has + * already been processed and accepted). + * - [other] if there has been an error in the cryptographic mechanisms. + * + */ + +err_status_t +srtp_unprotect(srtp_t ctx, void *srtp_hdr, int *len_ptr); + + +/** + * @brief srtp_create() allocates and initializes an SRTP session. + + * The function call srtp_create(session, policy, key) allocates and + * initializes an SRTP session context, applying the given policy and + * key. + * + * @param session is the SRTP session to which the policy is to be added. + * + * @param policy is the srtp_policy_t struct that describes the policy + * for the session. The struct may be a single element, or it may be + * the head of a list, in which case each element of the list is + * processed. It may also be NULL, in which case streams should be added + * later using srtp_add_stream(). The final element of the list @b must + * have its `next' field set to NULL. + * + * @return + * - err_status_ok if creation succeded. + * - err_status_alloc_fail if allocation failed. + * - err_status_init_fail if initialization failed. + */ + +err_status_t +srtp_create(srtp_t *session, const srtp_policy_t *policy); + + +/** + * @brief srtp_add_stream() allocates and initializes an SRTP stream + * within a given SRTP session. + * + * The function call srtp_add_stream(session, policy) allocates and + * initializes a new SRTP stream within a given, previously created + * session, applying the policy given as the other argument to that + * stream. + * + * @return values: + * - err_status_ok if stream creation succeded. + * - err_status_alloc_fail if stream allocation failed + * - err_status_init_fail if stream initialization failed. + */ + +err_status_t +srtp_add_stream(srtp_t session, + const srtp_policy_t *policy); + + +/** + * @brief srtp_remove_stream() deallocates an SRTP stream. + * + * The function call srtp_remove_stream(session, ssrc) removes + * the SRTP stream with the SSRC value ssrc from the SRTP session + * context given by the argument session. + * + * @param session is the SRTP session from which the stream + * will be removed. + * + * @param ssrc is the SSRC value of the stream to be removed. + * + * @warning Wildcard SSRC values cannot be removed from a + * session. + * + * @return + * - err_status_ok if the stream deallocation succeded. + * - [other] otherwise. + * + */ + +err_status_t +srtp_remove_stream(srtp_t session, unsigned int ssrc); + +/** + * @brief crypto_policy_set_rtp_default() sets a crypto policy + * structure to the SRTP default policy for RTP protection. + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_rtp_default(&p) sets the + * crypto_policy_t at location p to the SRTP default policy for RTP + * protection, as defined in the specification. This function is a + * convenience that helps to avoid dealing directly with the policy + * data structure. You are encouraged to initialize policy elements + * with this function call. Doing so may allow your code to be + * forward compatible with later versions of libSRTP that include more + * elements in the crypto_policy_t datatype. + * + * @return void. + * + */ + +void +crypto_policy_set_rtp_default(crypto_policy_t *p); + +/** + * @brief crypto_policy_set_rtcp_default() sets a crypto policy + * structure to the SRTP default policy for RTCP protection. + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_rtcp_default(&p) sets the + * crypto_policy_t at location p to the SRTP default policy for RTCP + * protection, as defined in the specification. This function is a + * convenience that helps to avoid dealing directly with the policy + * data structure. You are encouraged to initialize policy elements + * with this function call. Doing so may allow your code to be + * forward compatible with later versions of libSRTP that include more + * elements in the crypto_policy_t datatype. + * + * @return void. + * + */ + +void +crypto_policy_set_rtcp_default(crypto_policy_t *p); + +/** + * @brief crypto_policy_set_aes_cm_128_hmac_sha1_80() sets a crypto + * policy structure to the SRTP default policy for RTP protection. + * + * @param p is a pointer to the policy structure to be set + * + * The function crypto_policy_set_aes_cm_128_hmac_sha1_80() is a + * synonym for crypto_policy_set_rtp_default(). It conforms to the + * naming convention used in RFC 4568 (SDP Security Descriptions for + * Media Streams). + * + * @return void. + * + */ + +#define crypto_policy_set_aes_cm_128_hmac_sha1_80(p) crypto_policy_set_rtp_default(p) + + +/** + * @brief crypto_policy_set_aes_cm_128_hmac_sha1_32() sets a crypto + * policy structure to a short-authentication tag policy + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_aes_cm_128_hmac_sha1_32(&p) + * sets the crypto_policy_t at location p to use policy + * AES_CM_128_HMAC_SHA1_32 as defined in RFC 4568. + * This policy uses AES-128 + * Counter Mode encryption and HMAC-SHA1 authentication, with an + * authentication tag that is only 32 bits long. This length is + * considered adequate only for protecting audio and video media that + * use a stateless playback function. See Section 7.5 of RFC 3711 + * (http://www.ietf.org/rfc/rfc3711.txt). + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @warning This crypto policy is intended for use in SRTP, but not in + * SRTCP. It is recommended that a policy that uses longer + * authentication tags be used for SRTCP. See Section 7.5 of RFC 3711 + * (http://www.ietf.org/rfc/rfc3711.txt). + * + * @return void. + * + */ + +void +crypto_policy_set_aes_cm_128_hmac_sha1_32(crypto_policy_t *p); + + + +/** + * @brief crypto_policy_set_aes_cm_128_null_auth() sets a crypto + * policy structure to an encryption-only policy + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_aes_cm_128_null_auth(&p) sets + * the crypto_policy_t at location p to use the SRTP default cipher + * (AES-128 Counter Mode), but to use no authentication method. This + * policy is NOT RECOMMENDED unless it is unavoidable; see Section 7.5 + * of RFC 3711 (http://www.ietf.org/rfc/rfc3711.txt). + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @warning This policy is NOT RECOMMENDED for SRTP unless it is + * unavoidable, and it is NOT RECOMMENDED at all for SRTCP; see + * Section 7.5 of RFC 3711 (http://www.ietf.org/rfc/rfc3711.txt). + * + * @return void. + * + */ + +void +crypto_policy_set_aes_cm_128_null_auth(crypto_policy_t *p); + + +/** + * @brief crypto_policy_set_null_cipher_hmac_sha1_80() sets a crypto + * policy structure to an authentication-only policy + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_null_cipher_hmac_sha1_80(&p) + * sets the crypto_policy_t at location p to use HMAC-SHA1 with an 80 + * bit authentication tag to provide message authentication, but to + * use no encryption. This policy is NOT RECOMMENDED for SRTP unless + * there is a requirement to forego encryption. + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @warning This policy is NOT RECOMMENDED for SRTP unless there is a + * requirement to forego encryption. + * + * @return void. + * + */ + +void +crypto_policy_set_null_cipher_hmac_sha1_80(crypto_policy_t *p); + + +/** + * @brief crypto_policy_set_aes_cm_256_hmac_sha1_80() sets a crypto + * policy structure to a encryption and authentication policy using AES-256 + * for RTP protection. + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_aes_cm_256_hmac_sha1_80(&p) + * sets the crypto_policy_t at location p to use policy + * AES_CM_256_HMAC_SHA1_80 as defined in + * draft-ietf-avt-srtp-big-aes-03.txt. This policy uses AES-256 + * Counter Mode encryption and HMAC-SHA1 authentication, with an 80 bit + * authentication tag. + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @return void. + * + */ + +void crypto_policy_set_aes_cm_256_hmac_sha1_80(crypto_policy_t *p); + + +/** + * @brief crypto_policy_set_aes_cm_256_hmac_sha1_32() sets a crypto + * policy structure to a short-authentication tag policy using AES-256 + * encryption. + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_aes_cm_256_hmac_sha1_32(&p) + * sets the crypto_policy_t at location p to use policy + * AES_CM_256_HMAC_SHA1_32 as defined in + * draft-ietf-avt-srtp-big-aes-03.txt. This policy uses AES-256 + * Counter Mode encryption and HMAC-SHA1 authentication, with an + * authentication tag that is only 32 bits long. This length is + * considered adequate only for protecting audio and video media that + * use a stateless playback function. See Section 7.5 of RFC 3711 + * (http://www.ietf.org/rfc/rfc3711.txt). + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @warning This crypto policy is intended for use in SRTP, but not in + * SRTCP. It is recommended that a policy that uses longer + * authentication tags be used for SRTCP. See Section 7.5 of RFC 3711 + * (http://www.ietf.org/rfc/rfc3711.txt). + * + * @return void. + * + */ + +void +crypto_policy_set_aes_cm_256_hmac_sha1_32(crypto_policy_t *p); + + +/** + * @brief srtp_dealloc() deallocates storage for an SRTP session + * context. + * + * The function call srtp_dealloc(s) deallocates storage for the + * SRTP session context s. This function should be called no more + * than one time for each of the contexts allocated by the function + * srtp_create(). + * + * @param s is the srtp_t for the session to be deallocated. + * + * @return + * - err_status_ok if there no problems. + * - err_status_dealloc_fail a memory deallocation failure occured. + */ + +err_status_t +srtp_dealloc(srtp_t s); + + +/* + * @brief identifies a particular SRTP profile + * + * An srtp_profile_t enumeration is used to identify a particular SRTP + * profile (that is, a set of algorithms and parameters). These + * profiles are defined in the DTLS-SRTP draft. + */ + +typedef enum { + srtp_profile_reserved = 0, + srtp_profile_aes128_cm_sha1_80 = 1, + srtp_profile_aes128_cm_sha1_32 = 2, + srtp_profile_aes256_cm_sha1_80 = 3, + srtp_profile_aes256_cm_sha1_32 = 4, + srtp_profile_null_sha1_80 = 5, + srtp_profile_null_sha1_32 = 6, +} srtp_profile_t; + + +/** + * @brief crypto_policy_set_from_profile_for_rtp() sets a crypto policy + * structure to the appropriate value for RTP based on an srtp_profile_t + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_rtp_default(&policy, profile) + * sets the crypto_policy_t at location policy to the policy for RTP + * protection, as defined by the srtp_profile_t profile. + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @return values + * - err_status_ok no problems were encountered + * - err_status_bad_param the profile is not supported + * + */ +err_status_t +crypto_policy_set_from_profile_for_rtp(crypto_policy_t *policy, + srtp_profile_t profile); + + + + +/** + * @brief crypto_policy_set_from_profile_for_rtcp() sets a crypto policy + * structure to the appropriate value for RTCP based on an srtp_profile_t + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_rtcp_default(&policy, profile) + * sets the crypto_policy_t at location policy to the policy for RTCP + * protection, as defined by the srtp_profile_t profile. + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @return values + * - err_status_ok no problems were encountered + * - err_status_bad_param the profile is not supported + * + */ +err_status_t +crypto_policy_set_from_profile_for_rtcp(crypto_policy_t *policy, + srtp_profile_t profile); + +/** + * @brief returns the master key length for a given SRTP profile + */ +unsigned int +srtp_profile_get_master_key_length(srtp_profile_t profile); + + +/** + * @brief returns the master salt length for a given SRTP profile + */ +unsigned int +srtp_profile_get_master_salt_length(srtp_profile_t profile); + +/** + * @brief appends the salt to the key + * + * The function call append_salt_to_key(k, klen, s, slen) + * copies the string s to the location at klen bytes following + * the location k. + * + * @warning There must be at least bytes_in_salt + bytes_in_key bytes + * available at the location pointed to by key. + * + */ + +void +append_salt_to_key(unsigned char *key, unsigned int bytes_in_key, + unsigned char *salt, unsigned int bytes_in_salt); + + + +/** + * @} + */ + + + +/** + * @defgroup SRTCP Secure RTCP + * @ingroup SRTP + * + * @brief Secure RTCP functions are used to protect RTCP traffic. + * + * RTCP is the control protocol for RTP. libSRTP protects RTCP + * traffic in much the same way as it does RTP traffic. The function + * srtp_protect_rtcp() applies cryptographic protections to outbound + * RTCP packets, and srtp_unprotect_rtcp() verifies the protections on + * inbound RTCP packets. + * + * A note on the naming convention: srtp_protect_rtcp() has an srtp_t + * as its first argument, and thus has `srtp_' as its prefix. The + * trailing `_rtcp' indicates the protocol on which it acts. + * + * @{ + */ + +/** + * @brief srtp_protect_rtcp() is the Secure RTCP sender-side packet + * processing function. + * + * The function call srtp_protect_rtcp(ctx, rtp_hdr, len_ptr) applies + * SRTCP protection to the RTCP packet rtcp_hdr (which has length + * *len_ptr) using the SRTP session context ctx. If err_status_ok is + * returned, then rtp_hdr points to the resulting SRTCP packet and + * *len_ptr is the number of octets in that packet; otherwise, no + * assumptions should be made about the value of either data elements. + * + * @warning This function assumes that it can write the authentication + * tag into the location in memory immediately following the RTCP + * packet, and assumes that the RTCP packet is aligned on a 32-bit + * boundary. + * + * @param ctx is the SRTP context to use in processing the packet. + * + * @param rtcp_hdr is a pointer to the RTCP packet (before the call); after + * the function returns, it points to the srtp packet. + * + * @param pkt_octet_len is a pointer to the length in octets of the + * complete RTCP packet (header and body) before the function call, + * and of the complete SRTCP packet after the call, if err_status_ok + * was returned. Otherwise, the value of the data to which it points + * is undefined. + * + * @return + * - err_status_ok if there were no problems. + * - [other] if there was a failure in + * the cryptographic mechanisms. + */ + + +err_status_t +srtp_protect_rtcp(srtp_t ctx, void *rtcp_hdr, int *pkt_octet_len); + +/** + * @brief srtp_unprotect_rtcp() is the Secure RTCP receiver-side packet + * processing function. + * + * The function call srtp_unprotect_rtcp(ctx, srtp_hdr, len_ptr) + * verifies the Secure RTCP protection of the SRTCP packet pointed to + * by srtcp_hdr (which has length *len_ptr), using the SRTP session + * context ctx. If err_status_ok is returned, then srtcp_hdr points + * to the resulting RTCP packet and *len_ptr is the number of octets + * in that packet; otherwise, no assumptions should be made about the + * value of either data elements. + * + * @warning This function assumes that the SRTCP packet is aligned on a + * 32-bit boundary. + * + * @param ctx is a pointer to the srtp_t which applies to the + * particular packet. + * + * @param srtcp_hdr is a pointer to the header of the SRTCP packet + * (before the call). After the function returns, it points to the + * rtp packet if err_status_ok was returned; otherwise, the value of + * the data to which it points is undefined. + * + * @param pkt_octet_len is a pointer to the length in octets of the + * complete SRTCP packet (header and body) before the function call, + * and of the complete rtp packet after the call, if err_status_ok was + * returned. Otherwise, the value of the data to which it points is + * undefined. + * + * @return + * - err_status_ok if the RTCP packet is valid. + * - err_status_auth_fail if the SRTCP packet failed the message + * authentication check. + * - err_status_replay_fail if the SRTCP packet is a replay (e.g. has + * already been processed and accepted). + * - [other] if there has been an error in the cryptographic mechanisms. + * + */ + +err_status_t +srtp_unprotect_rtcp(srtp_t ctx, void *srtcp_hdr, int *pkt_octet_len); + +/** + * @} + */ + +/** + * @defgroup SRTPevents SRTP events and callbacks + * @ingroup SRTP + * + * @brief libSRTP can use a user-provided callback function to + * handle events. + * + * + * libSRTP allows a user to provide a callback function to handle + * events that need to be dealt with outside of the data plane (see + * the enum srtp_event_t for a description of these events). Dealing + * with these events is not a strict necessity; they are not + * security-critical, but the application may suffer if they are not + * handled. The function srtp_set_event_handler() is used to provide + * the callback function. + * + * A default event handler that merely reports on the events as they + * happen is included. It is also possible to set the event handler + * function to NULL, in which case all events will just be silently + * ignored. + * + * @{ + */ + +/** + * @brief srtp_event_t defines events that need to be handled + * + * The enum srtp_event_t defines events that need to be handled + * outside the `data plane', such as SSRC collisions and + * key expirations. + * + * When a key expires or the maximum number of packets has been + * reached, an SRTP stream will enter an `expired' state in which no + * more packets can be protected or unprotected. When this happens, + * it is likely that you will want to either deallocate the stream + * (using srtp_stream_dealloc()), and possibly allocate a new one. + * + * When an SRTP stream expires, the other streams in the same session + * are unaffected, unless key sharing is used by that stream. In the + * latter case, all of the streams in the session will expire. + */ + +typedef enum { + event_ssrc_collision, /**< + * An SSRC collision occured. + */ + event_key_soft_limit, /**< An SRTP stream reached the soft key + * usage limit and will expire soon. + */ + event_key_hard_limit, /**< An SRTP stream reached the hard + * key usage limit and has expired. + */ + event_packet_index_limit /**< An SRTP stream reached the hard + * packet limit (2^48 packets). + */ +} srtp_event_t; + +/** + * @brief srtp_event_data_t is the structure passed as a callback to + * the event handler function + * + * The struct srtp_event_data_t holds the data passed to the event + * handler function. + */ + +typedef struct srtp_event_data_t { + srtp_t session; /**< The session in which the event happend. */ + srtp_stream_t stream; /**< The stream in which the event happend. */ + srtp_event_t event; /**< An enum indicating the type of event. */ +} srtp_event_data_t; + +/** + * @brief srtp_event_handler_func_t is the function prototype for + * the event handler. + * + * The typedef srtp_event_handler_func_t is the prototype for the + * event handler function. It has as its only argument an + * srtp_event_data_t which describes the event that needs to be handled. + * There can only be a single, global handler for all events in + * libSRTP. + */ + +typedef void (srtp_event_handler_func_t)(srtp_event_data_t *data); + +/** + * @brief sets the event handler to the function supplied by the caller. + * + * The function call srtp_install_event_handler(func) sets the event + * handler function to the value func. The value NULL is acceptable + * as an argument; in this case, events will be ignored rather than + * handled. + * + * @param func is a pointer to a fuction that takes an srtp_event_data_t + * pointer as an argument and returns void. This function + * will be used by libSRTP to handle events. + */ + +err_status_t +srtp_install_event_handler(srtp_event_handler_func_t func); + +/** + * @} + */ +/* in host order, so outside the #if */ +#define SRTCP_E_BIT 0x80000000 +/* for byte-access */ +#define SRTCP_E_BYTE_BIT 0x80 +#define SRTCP_INDEX_MASK 0x7fffffff + +#ifdef __cplusplus +} +#endif + +#endif /* SRTP_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/srtp_priv.h b/branches/2.0/doubango/thirdparties/android/include/srtp/srtp_priv.h new file mode 100644 index 00000000..cf2274eb --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/srtp_priv.h @@ -0,0 +1,256 @@ +/* + * srtp_priv.h + * + * private internal data structures and functions for libSRTP + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef SRTP_PRIV_H +#define SRTP_PRIV_H + +#include "srtp.h" +#include "rdbx.h" +#include "rdb.h" +#include "integers.h" + +/* + * an srtp_hdr_t represents the srtp header + * + * in this implementation, an srtp_hdr_t is assumed to be 32-bit aligned + * + * (note that this definition follows that of RFC 1889 Appendix A, but + * is not identical) + */ + +#ifndef WORDS_BIGENDIAN + +/* + * srtp_hdr_t represents an RTP or SRTP header. The bit-fields in + * this structure should be declared "unsigned int" instead of + * "unsigned char", but doing so causes the MS compiler to not + * fully pack the bit fields. + */ + +typedef struct { + unsigned char cc:4; /* CSRC count */ + unsigned char x:1; /* header extension flag */ + unsigned char p:1; /* padding flag */ + unsigned char version:2; /* protocol version */ + unsigned char pt:7; /* payload type */ + unsigned char m:1; /* marker bit */ + uint16_t seq; /* sequence number */ + uint32_t ts; /* timestamp */ + uint32_t ssrc; /* synchronization source */ +} srtp_hdr_t; + +#else /* BIG_ENDIAN */ + +typedef struct { + unsigned char version:2; /* protocol version */ + unsigned char p:1; /* padding flag */ + unsigned char x:1; /* header extension flag */ + unsigned char cc:4; /* CSRC count */ + unsigned char m:1; /* marker bit */ + unsigned pt:7; /* payload type */ + uint16_t seq; /* sequence number */ + uint32_t ts; /* timestamp */ + uint32_t ssrc; /* synchronization source */ +} srtp_hdr_t; + +#endif + +typedef struct { + uint16_t profile_specific; /* profile-specific info */ + uint16_t length; /* number of 32-bit words in extension */ +} srtp_hdr_xtnd_t; + + +/* + * srtcp_hdr_t represents a secure rtcp header + * + * in this implementation, an srtcp header is assumed to be 32-bit + * alinged + */ + +#ifndef WORDS_BIGENDIAN + +typedef struct { + unsigned char rc:5; /* reception report count */ + unsigned char p:1; /* padding flag */ + unsigned char version:2; /* protocol version */ + unsigned char pt:8; /* payload type */ + uint16_t len; /* length */ + uint32_t ssrc; /* synchronization source */ +} srtcp_hdr_t; + +typedef struct { + unsigned int index:31; /* srtcp packet index in network order! */ + unsigned int e:1; /* encrypted? 1=yes */ + /* optional mikey/etc go here */ + /* and then the variable-length auth tag */ +} srtcp_trailer_t; + + +#else /* BIG_ENDIAN */ + +typedef struct { + unsigned char version:2; /* protocol version */ + unsigned char p:1; /* padding flag */ + unsigned char rc:5; /* reception report count */ + unsigned char pt:8; /* payload type */ + uint16_t len; /* length */ + uint32_t ssrc; /* synchronization source */ +} srtcp_hdr_t; + +typedef struct { + unsigned int version:2; /* protocol version */ + unsigned int p:1; /* padding flag */ + unsigned int count:5; /* varies by packet type */ + unsigned int pt:8; /* payload type */ + uint16_t length; /* len of uint32s of packet less header */ +} rtcp_common_t; + +typedef struct { + unsigned int e:1; /* encrypted? 1=yes */ + unsigned int index:31; /* srtcp packet index */ + /* optional mikey/etc go here */ + /* and then the variable-length auth tag */ +} srtcp_trailer_t; + +#endif + + +/* + * the following declarations are libSRTP internal functions + */ + +/* + * srtp_get_stream(ssrc) returns a pointer to the stream corresponding + * to ssrc, or NULL if no stream exists for that ssrc + */ + +srtp_stream_t +srtp_get_stream(srtp_t srtp, uint32_t ssrc); + + +/* + * srtp_stream_init_keys(s, k) (re)initializes the srtp_stream_t s by + * deriving all of the needed keys using the KDF and the key k. + */ + + +err_status_t +srtp_stream_init_keys(srtp_stream_t srtp, const void *key); + +/* + * srtp_stream_init(s, p) initializes the srtp_stream_t s to + * use the policy at the location p + */ +err_status_t +srtp_stream_init(srtp_stream_t srtp, + const srtp_policy_t *p); + + +/* + * libsrtp internal datatypes + */ + +typedef enum direction_t { + dir_unknown = 0, + dir_srtp_sender = 1, + dir_srtp_receiver = 2 +} direction_t; + +/* + * an srtp_stream_t has its own SSRC, encryption key, authentication + * key, sequence number, and replay database + * + * note that the keys might not actually be unique, in which case the + * cipher_t and auth_t pointers will point to the same structures + */ + +typedef struct srtp_stream_ctx_t { + uint32_t ssrc; + cipher_t *rtp_cipher; + auth_t *rtp_auth; + rdbx_t rtp_rdbx; + sec_serv_t rtp_services; + cipher_t *rtcp_cipher; + auth_t *rtcp_auth; + rdb_t rtcp_rdb; + sec_serv_t rtcp_services; + key_limit_ctx_t *limit; + direction_t direction; + int allow_repeat_tx; + ekt_stream_t ekt; + struct srtp_stream_ctx_t *next; /* linked list of streams */ +} srtp_stream_ctx_t; + + +/* + * an srtp_ctx_t holds a stream list and a service description + */ + +typedef struct srtp_ctx_t { + srtp_stream_ctx_t *stream_list; /* linked list of streams */ + srtp_stream_ctx_t *stream_template; /* act as template for other streams */ +} srtp_ctx_t; + + + +/* + * srtp_handle_event(srtp, srtm, evnt) calls the event handling + * function, if there is one. + * + * This macro is not included in the documentation as it is + * an internal-only function. + */ + +#define srtp_handle_event(srtp, strm, evnt) \ + if(srtp_event_handler) { \ + srtp_event_data_t data; \ + data.session = srtp; \ + data.stream = strm; \ + data.event = evnt; \ + srtp_event_handler(&data); \ +} + + +#endif /* SRTP_PRIV_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/stat.h b/branches/2.0/doubango/thirdparties/android/include/srtp/stat.h new file mode 100644 index 00000000..e28b1314 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/stat.h @@ -0,0 +1,69 @@ +/* + * stats.h + * + * interface to statistical test functions + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright(c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef STAT_H +#define STAT_H + +#include "datatypes.h" /* for uint8_t */ +#include "err.h" /* for err_status_t */ +#include "rand_source.h" /* for rand_source_func_t definition */ + +err_status_t +stat_test_monobit(uint8_t *data); + +err_status_t +stat_test_poker(uint8_t *data); + +err_status_t +stat_test_runs(uint8_t *data); + +err_status_t +stat_test_rand_source(rand_source_func_t rs); + +err_status_t +stat_test_rand_source_with_repetition(rand_source_func_t source, unsigned num_trials); + +#endif /* STAT_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/ut_sim.h b/branches/2.0/doubango/thirdparties/android/include/srtp/ut_sim.h new file mode 100644 index 00000000..c25feeb6 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/ut_sim.h @@ -0,0 +1,80 @@ +/* + * ut-sim.h + * + * an unreliable transport simulator + * (for testing replay databases and suchlike) + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + + +#ifndef UT_SIM_H +#define UT_SIM_H + +#include "integers.h" /* for uint32_t */ + +#define UT_BUF 160 /* maximum amount of packet reorder */ + +typedef struct { + uint32_t index; + uint32_t buffer[UT_BUF]; +} ut_connection; + +/* + * ut_init(&u) initializes the ut_connection + * + * this function should always be the first one called on a new + * ut_connection + */ + +void +ut_init(ut_connection *utc); + +/* + * ut_next_index(&u) returns the next index from the simulated + * unreliable connection + */ + +uint32_t +ut_next_index(ut_connection *utc); + + +#endif /* UT_SIM_H */ diff --git a/branches/2.0/doubango/thirdparties/android/include/srtp/xfm.h b/branches/2.0/doubango/thirdparties/android/include/srtp/xfm.h new file mode 100644 index 00000000..5837149b --- /dev/null +++ b/branches/2.0/doubango/thirdparties/android/include/srtp/xfm.h @@ -0,0 +1,139 @@ +/* + * xfm.h + * + * interface for abstract crypto transform + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +#ifndef XFM_H +#define XFM_H + +#include "crypto_kernel.h" +#include "err.h" + +/** + * @defgroup Crypto Cryptography + * + * A simple interface to an abstract cryptographic transform that + * provides both confidentiality and message authentication. + * + * @{ + */ + +/** + * @brief applies a crypto transform + * + * The function pointer xfm_func_t points to a function that + * implements a crypto transform, and provides a uniform API for + * accessing crypto mechanisms. + * + * @param key location of secret key + * + * @param clear data to be authenticated only + * + * @param clear_len length of data to be authenticated only + * + * @param iv location to write the Initialization Vector (IV) + * + * @param protect location of the data to be encrypted and + * authenticated (before the function call), and the ciphertext + * and authentication tag (after the call) + * + * @param protected_len location of the length of the data to be + * encrypted and authenticated (before the function call), and the + * length of the ciphertext (after the call) + * + * @param auth_tag location to write auth tag + */ + +typedef err_status_t (*xfm_func_t) + (void *key, + void *clear, + unsigned clear_len, + void *iv, + void *protect, + unsigned *protected_len, + void *auth_tag + ); + +typedef +err_status_t (*xfm_inv_t) + (void *key, /* location of secret key */ + void *clear, /* data to be authenticated only */ + unsigned clear_len, /* length of data to be authenticated only */ + void *iv, /* location of iv */ + void *opaque, /* data to be decrypted and authenticated */ + unsigned *opaque_len, /* location of the length of data to be + * decrypted and authd (before and after) + */ + void *auth_tag /* location of auth tag */ + ); + +typedef struct xfm_ctx_t { + xfm_func_t func; + xfm_inv_t inv; + unsigned key_len; + unsigned iv_len; + unsigned auth_tag_len; +} xfm_ctx_t; + +typedef xfm_ctx_t *xfm_t; + +#define xfm_get_key_len(xfm) ((xfm)->key_len) + +#define xfm_get_iv_len(xfm) ((xfm)->iv_len) + +#define xfm_get_auth_tag_len(xfm) ((xfm)->auth_tag_len) + + +/* cryptoalgo - 5/28 */ + +typedef err_status_t (*cryptoalg_func_t) + (void *key, + void *clear, + unsigned clear_len, + void *iv, + void *opaque, + unsigned *opaque_len + ); + +typedef +err_status_t (*cryptoalg_inv_t) + (void *key, /* location of secret key */ + void *clear, /* data to be authenticated only */ + unsigned clear_len, /* length of data to be authenticated only */ + void *iv, /* location of iv */ + void *opaque, /* data to be decrypted and authenticated */ + unsigned *opaque_len /* location of the length of data to be + * decrypted and authd (before and after) + */ + ); + +typedef struct cryptoalg_ctx_t { + cryptoalg_func_t enc; + cryptoalg_inv_t dec; + unsigned key_len; + unsigned iv_len; + unsigned auth_tag_len; + unsigned max_expansion; +} cryptoalg_ctx_t; + +typedef cryptoalg_ctx_t *cryptoalg_t; + +#define cryptoalg_get_key_len(cryptoalg) ((cryptoalg)->key_len) + +#define cryptoalg_get_iv_len(cryptoalg) ((cryptoalg)->iv_len) + +#define cryptoalg_get_auth_tag_len(cryptoalg) ((cryptoalg)->auth_tag_len) + + + +/** + * @} + */ + +#endif /* XFM_H */ + + diff --git a/branches/2.0/doubango/thirdparties/android/lib/libsrtp.a b/branches/2.0/doubango/thirdparties/android/lib/libsrtp.a new file mode 100644 index 0000000000000000000000000000000000000000..0db53f5e19882f9f6d4a52465f413042d3178301 GIT binary patch literal 152914 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, (klen), (outlen))) + +#define auth_init(a, key) \ + (((a)->type)->init((a)->state, (key), ((a)->key_len))) + +#define auth_compute(a, buf, len, res) \ + (((a)->type)->compute((a)->state, (buf), (len), (a)->out_len, (res))) + +#define auth_update(a, buf, len) \ + (((a)->type)->update((a)->state, (buf), (len))) + +#define auth_start(a)(((a)->type)->start((a)->state)) + +#define auth_dealloc(c) (((c)->type)->dealloc(c)) + +/* functions to get information about a particular auth_t */ + +int +auth_get_key_length(const struct auth_t *a); + +int +auth_get_tag_length(const struct auth_t *a); + +int +auth_get_prefix_length(const struct auth_t *a); + +/* + * auth_test_case_t is a (list of) key/message/tag values that are + * known to be correct for a particular cipher. this data can be used + * to test an implementation in an on-the-fly self test of the + * correcness of the implementation. (see the auth_type_self_test() + * function below) + */ + +typedef struct auth_test_case_t { + int key_length_octets; /* octets in key */ + uint8_t *key; /* key */ + int data_length_octets; /* octets in data */ + uint8_t *data; /* data */ + int tag_length_octets; /* octets in tag */ + uint8_t *tag; /* tag */ + struct auth_test_case_t *next_test_case; /* pointer to next testcase */ +} auth_test_case_t; + +/* auth_type_t */ + +typedef struct auth_type_t { + auth_alloc_func alloc; + auth_dealloc_func dealloc; + auth_init_func init; + auth_compute_func compute; + auth_update_func update; + auth_start_func start; + char *description; + int ref_count; + auth_test_case_t *test_data; + debug_module_t *debug; + auth_type_id_t id; +} auth_type_t; + +typedef struct auth_t { + auth_type_t *type; + void *state; + int out_len; /* length of output tag in octets */ + int key_len; /* length of key in octets */ + int prefix_len; /* length of keystream prefix */ +} auth_t; + +/* + * auth_type_self_test() tests an auth_type against test cases + * provided in an array of values of key/message/tag that is known to + * be good + */ + +err_status_t +auth_type_self_test(const auth_type_t *at); + +/* + * auth_type_test() tests an auth_type against external test cases + * provided in an array of values of key/message/tag that is known to + * be good + */ + +err_status_t +auth_type_test(const auth_type_t *at, const auth_test_case_t *test_data); + +/* + * auth_type_get_ref_count(at) returns the reference count (the number + * of instantiations) of the auth_type_t at + */ + +int +auth_type_get_ref_count(const auth_type_t *at); + +#endif /* AUTH_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/cipher.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/cipher.h new file mode 100644 index 00000000..eff6dd15 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/cipher.h @@ -0,0 +1,230 @@ +/* + * cipher.h + * + * common interface to ciphers + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef CIPHER_H +#define CIPHER_H + +#include "datatypes.h" +#include "rdbx.h" /* for xtd_seq_num_t */ +#include "err.h" /* for error codes */ +#include "crypto.h" /* for cipher_type_id_t */ +#include "crypto_types.h" /* for values of cipher_type_id_t */ + + +/** + * @brief cipher_direction_t defines a particular cipher operation. + * + * A cipher_direction_t is an enum that describes a particular cipher + * operation, i.e. encryption or decryption. For some ciphers, this + * distinction does not matter, but for others, it is essential. + */ + +typedef enum { + direction_encrypt, /**< encryption (convert plaintext to ciphertext) */ + direction_decrypt, /**< decryption (convert ciphertext to plaintext) */ + direction_any /**< encryption or decryption */ +} cipher_direction_t; + +/* + * the cipher_pointer and cipher_type_pointer definitions are needed + * as cipher_t and cipher_type_t are not yet defined + */ + +typedef struct cipher_type_t *cipher_type_pointer_t; +typedef struct cipher_t *cipher_pointer_t; + +/* + * a cipher_alloc_func_t allocates (but does not initialize) a cipher_t + */ + +typedef err_status_t (*cipher_alloc_func_t) + (cipher_pointer_t *cp, int key_len); + +/* + * a cipher_init_func_t [re-]initializes a cipher_t with a given key + * and direction (i.e., encrypt or decrypt) + */ + +typedef err_status_t (*cipher_init_func_t) +(void *state, const uint8_t *key, int key_len, cipher_direction_t dir); + +/* a cipher_dealloc_func_t de-allocates a cipher_t */ + +typedef err_status_t (*cipher_dealloc_func_t)(cipher_pointer_t cp); + +/* a cipher_set_segment_func_t sets the segment index of a cipher_t */ + +typedef err_status_t (*cipher_set_segment_func_t) + (void *state, xtd_seq_num_t idx); + +/* a cipher_encrypt_func_t encrypts data in-place */ + +typedef err_status_t (*cipher_encrypt_func_t) + (void *state, uint8_t *buffer, unsigned int *octets_to_encrypt); + +/* a cipher_decrypt_func_t decrypts data in-place */ + +typedef err_status_t (*cipher_decrypt_func_t) + (void *state, uint8_t *buffer, unsigned int *octets_to_decrypt); + +/* + * a cipher_set_iv_func_t function sets the current initialization vector + */ + +typedef err_status_t (*cipher_set_iv_func_t) + (cipher_pointer_t cp, void *iv); + +/* + * cipher_test_case_t is a (list of) key, salt, xtd_seq_num_t, + * plaintext, and ciphertext values that are known to be correct for a + * particular cipher. this data can be used to test an implementation + * in an on-the-fly self test of the correcness of the implementation. + * (see the cipher_type_self_test() function below) + */ + +typedef struct cipher_test_case_t { + int key_length_octets; /* octets in key */ + uint8_t *key; /* key */ + uint8_t *idx; /* packet index */ + int plaintext_length_octets; /* octets in plaintext */ + uint8_t *plaintext; /* plaintext */ + int ciphertext_length_octets; /* octets in plaintext */ + uint8_t *ciphertext; /* ciphertext */ + struct cipher_test_case_t *next_test_case; /* pointer to next testcase */ +} cipher_test_case_t; + +/* cipher_type_t defines the 'metadata' for a particular cipher type */ + +typedef struct cipher_type_t { + cipher_alloc_func_t alloc; + cipher_dealloc_func_t dealloc; + cipher_init_func_t init; + cipher_encrypt_func_t encrypt; + cipher_encrypt_func_t decrypt; + cipher_set_iv_func_t set_iv; + char *description; + int ref_count; + cipher_test_case_t *test_data; + debug_module_t *debug; + cipher_type_id_t id; +} cipher_type_t; + +/* + * cipher_t defines an instantiation of a particular cipher, with fixed + * key length, key and salt values + */ + +typedef struct cipher_t { + cipher_type_t *type; + void *state; + int key_len; +#ifdef FORCE_64BIT_ALIGN + int pad; +#endif +} cipher_t; + +/* some syntactic sugar on these function types */ + +#define cipher_type_alloc(ct, c, klen) ((ct)->alloc((c), (klen))) + +#define cipher_dealloc(c) (((c)->type)->dealloc(c)) + +#define cipher_init(c, k, dir) (((c)->type)->init(((c)->state), (k), ((c)->key_len), (dir))) + +#define cipher_encrypt(c, buf, len) \ + (((c)->type)->encrypt(((c)->state), (buf), (len))) + +#define cipher_decrypt(c, buf, len) \ + (((c)->type)->decrypt(((c)->state), (buf), (len))) + +#define cipher_set_iv(c, n) \ + ((c) ? (((c)->type)->set_iv(((cipher_pointer_t)(c)->state), (n))) : \ + err_status_no_such_op) + +err_status_t +cipher_output(cipher_t *c, uint8_t *buffer, int num_octets_to_output); + + +/* some bookkeeping functions */ + +int +cipher_get_key_length(const cipher_t *c); + + +/* + * cipher_type_self_test() tests a cipher against test cases provided in + * an array of values of key/xtd_seq_num_t/plaintext/ciphertext + * that is known to be good + */ + +err_status_t +cipher_type_self_test(const cipher_type_t *ct); + + +/* + * cipher_type_test() tests a cipher against external test cases provided in + * an array of values of key/xtd_seq_num_t/plaintext/ciphertext + * that is known to be good + */ + +err_status_t +cipher_type_test(const cipher_type_t *ct, const cipher_test_case_t *test_data); + + +/* + * cipher_bits_per_second(c, l, t) computes (and estimate of) the + * number of bits that a cipher implementation can encrypt in a second + * + * c is a cipher (which MUST be allocated and initialized already), l + * is the length in octets of the test data to be encrypted, and t is + * the number of trials + * + * if an error is encountered, then the value 0 is returned + */ + +uint64_t +cipher_bits_per_second(cipher_t *c, int octets_in_buffer, int num_trials); + +#endif /* CIPHER_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/config.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/config.h new file mode 100644 index 00000000..750fe262 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/config.h @@ -0,0 +1,174 @@ +/* crypto/include/config.h. Generated by configure. */ +/* config_in.h. Generated from configure.in by autoheader. */ + +/* Define if building for a CISC machine (e.g. Intel). */ +#define CPU_CISC 1 + +/* Define if building for a RISC machine (assume slow byte access). */ +/* #undef CPU_RISC */ + +/* Path to random device */ +/* #undef DEV_URANDOM */ + +/* Define to compile in dynamic debugging system. */ +/* #undef ENABLE_DEBUGGING */ + +/* Report errors to this file. */ +/* #undef ERR_REPORTING_FILE */ + +/* Define to use logging to stdout. */ +#define ERR_REPORTING_STDOUT 1 + +/* Define this to use ISMAcryp code. */ +/* #undef GENERIC_AESICM */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_ARPA_INET_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_BYTESWAP_H */ + +/* Define to 1 if you have the `inet_aton' function. */ +/* #undef HAVE_INET_ATON */ + +/* Define to 1 if the system has the type `int16_t'. */ +#define HAVE_INT16_T 1 + +/* Define to 1 if the system has the type `int32_t'. */ +#define HAVE_INT32_T 1 + +/* Define to 1 if the system has the type `int8_t'. */ +#define HAVE_INT8_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `socket' library (-lsocket). */ +/* #undef HAVE_LIBSOCKET */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MACHINE_TYPES_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_NETINET_IN_H */ + +/* Define to 1 if you have the `sigaction' function. */ +/* #undef HAVE_SIGACTION */ + +/* Define to 1 if you have the `socket' function. */ +/* #undef HAVE_SOCKET */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYSLOG_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_INT_TYPES_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_UIO_H */ + +/* Define to 1 if the system has the type `uint16_t'. */ +#define HAVE_UINT16_T 1 + +/* Define to 1 if the system has the type `uint32_t'. */ +#define HAVE_UINT32_T 1 + +/* Define to 1 if the system has the type `uint64_t'. */ +#define HAVE_UINT64_T 1 + +/* Define to 1 if the system has the type `uint8_t'. */ +#define HAVE_UINT8_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the `usleep' function. */ +#define HAVE_USLEEP 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_WINDOWS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_WINSOCK2_H 1 + +/* Define to use X86 inlined assembly code */ +#define HAVE_X86 1 + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "" + +/* The size of a `unsigned long', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_LONG 4 + +/* The size of a `unsigned long long', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_LONG_LONG 8 + +/* Define to use GDOI. */ +/* #undef SRTP_GDOI */ + +/* Define to compile for kernel contexts. */ +/* #undef SRTP_KERNEL */ + +/* Define to compile for Linux kernel context. */ +/* #undef SRTP_KERNEL_LINUX */ + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Write errors to this file */ +/* #undef USE_ERR_REPORTING_FILE */ + +/* Define to use syslog logging. */ +/* #undef USE_SYSLOG */ + +/* Define to 1 if your processor stores words with the most significant byte + first (like Motorola and SPARC, unlike Intel and VAX). */ +/* #undef WORDS_BIGENDIAN */ + +/* Define to empty if `const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* Define to `unsigned' if does not define. */ +/* #undef size_t */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/crypto.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/crypto.h new file mode 100644 index 00000000..0e9667da --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/crypto.h @@ -0,0 +1,43 @@ +/* + * crypto.h + * + * API for libcrypto + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +#ifndef CRYPTO_H +#define CRYPTO_H + +/** + * @brief A cipher_type_id_t is an identifier for a particular cipher + * type. + * + * A cipher_type_id_t is an integer that represents a particular + * cipher type, e.g. the Advanced Encryption Standard (AES). A + * NULL_CIPHER is avaliable; this cipher leaves the data unchanged, + * and can be selected to indicate that no encryption is to take + * place. + * + * @ingroup Ciphers + */ +typedef uint32_t cipher_type_id_t; + +/** + * @brief An auth_type_id_t is an identifier for a particular authentication + * function. + * + * An auth_type_id_t is an integer that represents a particular + * authentication function type, e.g. HMAC-SHA1. A NULL_AUTH is + * avaliable; this authentication function performs no computation, + * and can be selected to indicate that no authentication is to take + * place. + * + * @ingroup Authentication + */ +typedef uint32_t auth_type_id_t; + +#endif /* CRYPTO_H */ + + diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/crypto_kernel.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/crypto_kernel.h new file mode 100644 index 00000000..1acf4978 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/crypto_kernel.h @@ -0,0 +1,280 @@ +/* + * crypto_kernel.h + * + * header for the cryptographic kernel + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright(c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef CRYPTO_KERNEL +#define CRYPTO_KERNEL + +#include "rand_source.h" +#include "prng.h" +#include "cipher.h" +#include "auth.h" +#include "cryptoalg.h" +#include "stat.h" +#include "err.h" +#include "crypto_types.h" +#include "key.h" +#include "crypto.h" + +/* + * crypto_kernel_state_t defines the possible states: + * + * insecure - not yet initialized + * secure - initialized and passed self-tests + */ + +typedef enum { + crypto_kernel_state_insecure, + crypto_kernel_state_secure +} crypto_kernel_state_t; + +/* + * linked list of cipher types + */ + +typedef struct kernel_cipher_type { + cipher_type_id_t id; + cipher_type_t *cipher_type; + struct kernel_cipher_type *next; +} kernel_cipher_type_t; + +/* + * linked list of auth types + */ + +typedef struct kernel_auth_type { + auth_type_id_t id; + auth_type_t *auth_type; + struct kernel_auth_type *next; +} kernel_auth_type_t; + +/* + * linked list of debug modules + */ + +typedef struct kernel_debug_module { + debug_module_t *mod; + struct kernel_debug_module *next; +} kernel_debug_module_t; + + +/* + * crypto_kernel_t is the data structure for the crypto kernel + * + * note that there is *exactly one* instance of this data type, + * a global variable defined in crypto_kernel.c + */ + +typedef struct { + crypto_kernel_state_t state; /* current state of kernel */ + kernel_cipher_type_t *cipher_type_list; /* list of all cipher types */ + kernel_auth_type_t *auth_type_list; /* list of all auth func types */ + kernel_debug_module_t *debug_module_list; /* list of all debug modules */ +} crypto_kernel_t; + + +/* + * crypto_kernel_t external api + */ + + +/* + * The function crypto_kernel_init() initialized the crypto kernel and + * runs the self-test operations on the random number generators and + * crypto algorithms. Possible return values are: + * + * err_status_ok initialization successful + * init failure + * + * If any value other than err_status_ok is returned, the + * crypto_kernel MUST NOT be used. + */ + +err_status_t +crypto_kernel_init(void); + + +/* + * The function crypto_kernel_shutdown() de-initializes the + * crypto_kernel, zeroizes keys and other cryptographic material, and + * deallocates any dynamically allocated memory. Possible return + * values are: + * + * err_status_ok shutdown successful + * shutdown failure + * + */ + +err_status_t +crypto_kernel_shutdown(void); + +/* + * The function crypto_kernel_stats() checks the the crypto_kernel, + * running tests on the ciphers, auth funcs, and rng, and prints out a + * status report. Possible return values are: + * + * err_status_ok all tests were passed + * a test failed + * + */ + +err_status_t +crypto_kernel_status(void); + + +/* + * crypto_kernel_list_debug_modules() outputs a list of debugging modules + * + */ + +err_status_t +crypto_kernel_list_debug_modules(void); + +/* + * crypto_kernel_load_cipher_type() + * + */ + +err_status_t +crypto_kernel_load_cipher_type(cipher_type_t *ct, cipher_type_id_t id); + +err_status_t +crypto_kernel_load_auth_type(auth_type_t *ct, auth_type_id_t id); + +/* + * crypto_kernel_replace_cipher_type(ct, id) + * + * replaces the crypto kernel's existing cipher for the cipher_type id + * with a new one passed in externally. The new cipher must pass all the + * existing cipher_type's self tests as well as its own. + */ +err_status_t +crypto_kernel_replace_cipher_type(cipher_type_t *ct, cipher_type_id_t id); + + +/* + * crypto_kernel_replace_auth_type(ct, id) + * + * replaces the crypto kernel's existing cipher for the auth_type id + * with a new one passed in externally. The new auth type must pass all the + * existing auth_type's self tests as well as its own. + */ +err_status_t +crypto_kernel_replace_auth_type(auth_type_t *ct, auth_type_id_t id); + + +err_status_t +crypto_kernel_load_debug_module(debug_module_t *new_dm); + +/* + * crypto_kernel_alloc_cipher(id, cp, key_len); + * + * allocates a cipher of type id at location *cp, with key length + * key_len octets. Return values are: + * + * err_status_ok no problems + * err_status_alloc_fail an allocation failure occured + * err_status_fail couldn't find cipher with identifier 'id' + */ + +err_status_t +crypto_kernel_alloc_cipher(cipher_type_id_t id, + cipher_pointer_t *cp, + int key_len); + +/* + * crypto_kernel_alloc_auth(id, ap, key_len, tag_len); + * + * allocates an auth function of type id at location *ap, with key + * length key_len octets and output tag length of tag_len. Return + * values are: + * + * err_status_ok no problems + * err_status_alloc_fail an allocation failure occured + * err_status_fail couldn't find auth with identifier 'id' + */ + +err_status_t +crypto_kernel_alloc_auth(auth_type_id_t id, + auth_pointer_t *ap, + int key_len, + int tag_len); + + +/* + * crypto_kernel_set_debug_module(mod_name, v) + * + * sets dynamic debugging to the value v (0 for off, 1 for on) for the + * debug module with the name mod_name + * + * returns err_status_ok on success, err_status_fail otherwise + */ + +err_status_t +crypto_kernel_set_debug_module(char *mod_name, int v); + +/** + * @brief writes a random octet string. + * + * The function call crypto_get_random(dest, len) writes len octets of + * random data to the location to which dest points, and returns an + * error code. This error code @b must be checked, and if a failure is + * reported, the data in the buffer @b must @b not be used. + * + * @warning If the return code is not checked, then non-random + * data may be in the buffer. This function will fail + * unless it is called after crypto_kernel_init(). + * + * @return + * - err_status_ok if no problems occured. + * - [other] a problem occured, and no assumptions should + * be made about the contents of the destination + * buffer. + * + * @ingroup SRTP + */ +err_status_t +crypto_get_random(unsigned char *buffer, unsigned int length); + +#endif /* CRYPTO_KERNEL */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/crypto_math.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/crypto_math.h new file mode 100644 index 00000000..52f08372 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/crypto_math.h @@ -0,0 +1,239 @@ +/* + * math.h + * + * crypto math operations and data types + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef MATH_H +#define MATH_H + +#include "datatypes.h" + +unsigned char +v32_weight(v32_t a); + +unsigned char +v32_distance(v32_t x, v32_t y); + +unsigned int +v32_dot_product(v32_t a, v32_t b); + +char * +v16_bit_string(v16_t x); + +char * +v32_bit_string(v32_t x); + +char * +v64_bit_string(const v64_t *x); + +char * +octet_hex_string(uint8_t x); + +char * +v16_hex_string(v16_t x); + +char * +v32_hex_string(v32_t x); + +char * +v64_hex_string(const v64_t *x); + +int +hex_char_to_nibble(uint8_t c); + +int +is_hex_string(char *s); + +v16_t +hex_string_to_v16(char *s); + +v32_t +hex_string_to_v32(char *s); + +v64_t +hex_string_to_v64(char *s); + +/* the matrix A[] is stored in column format, i.e., A[i] is + the ith column of the matrix */ + +uint8_t +A_times_x_plus_b(uint8_t A[8], uint8_t x, uint8_t b); + +void +v16_copy_octet_string(v16_t *x, const uint8_t s[2]); + +void +v32_copy_octet_string(v32_t *x, const uint8_t s[4]); + +void +v64_copy_octet_string(v64_t *x, const uint8_t s[8]); + +void +v128_add(v128_t *z, v128_t *x, v128_t *y); + +int +octet_string_is_eq(uint8_t *a, uint8_t *b, int len); + +void +octet_string_set_to_zero(uint8_t *s, int len); + + + +/* + * the matrix A[] is stored in column format, i.e., A[i] is the ith + * column of the matrix +*/ +uint8_t +A_times_x_plus_b(uint8_t A[8], uint8_t x, uint8_t b); + + +#if 0 +#if WORDS_BIGENDIAN + +#define _v128_add(z, x, y) { \ + uint64_t tmp; \ + \ + tmp = x->v32[3] + y->v32[3]; \ + z->v32[3] = (uint32_t) tmp; \ + \ + tmp = x->v32[2] + y->v32[2] + (tmp >> 32); \ + z->v32[2] = (uint32_t) tmp; \ + \ + tmp = x->v32[1] + y->v32[1] + (tmp >> 32); \ + z->v32[1] = (uint32_t) tmp; \ + \ + tmp = x->v32[0] + y->v32[0] + (tmp >> 32); \ + z->v32[0] = (uint32_t) tmp; \ +} + +#else /* assume little endian architecture */ + +#define _v128_add(z, x, y) { \ + uint64_t tmp; \ + \ + tmp = htonl(x->v32[3]) + htonl(y->v32[3]); \ + z->v32[3] = ntohl((uint32_t) tmp); \ + \ + tmp = htonl(x->v32[2]) + htonl(y->v32[2]) \ + + htonl(tmp >> 32); \ + z->v32[2] = ntohl((uint32_t) tmp); \ + \ + tmp = htonl(x->v32[1]) + htonl(y->v32[1]) \ + + htonl(tmp >> 32); \ + z->v32[1] = ntohl((uint32_t) tmp); \ + \ + tmp = htonl(x->v32[0]) + htonl(y->v32[0]) \ + + htonl(tmp >> 32); \ + z->v32[0] = ntohl((uint32_t) tmp); \ +} + +#endif /* WORDS_BIGENDIAN */ +#endif + +#ifdef DATATYPES_USE_MACROS /* little functions are really macros */ + +#define v128_set_to_zero(z) _v128_set_to_zero(z) +#define v128_copy(z, x) _v128_copy(z, x) +#define v128_xor(z, x, y) _v128_xor(z, x, y) +#define v128_and(z, x, y) _v128_and(z, x, y) +#define v128_or(z, x, y) _v128_or(z, x, y) +#define v128_complement(x) _v128_complement(x) +#define v128_is_eq(x, y) _v128_is_eq(x, y) +#define v128_xor_eq(x, y) _v128_xor_eq(x, y) +#define v128_get_bit(x, i) _v128_get_bit(x, i) +#define v128_set_bit(x, i) _v128_set_bit(x, i) +#define v128_clear_bit(x, i) _v128_clear_bit(x, i) +#define v128_set_bit_to(x, i, y) _v128_set_bit_to(x, i, y) + +#else + +void +v128_set_to_zero(v128_t *x); + +int +v128_is_eq(const v128_t *x, const v128_t *y); + +void +v128_copy(v128_t *x, const v128_t *y); + +void +v128_xor(v128_t *z, v128_t *x, v128_t *y); + +void +v128_and(v128_t *z, v128_t *x, v128_t *y); + +void +v128_or(v128_t *z, v128_t *x, v128_t *y); + +void +v128_complement(v128_t *x); + +int +v128_get_bit(const v128_t *x, int i); + +void +v128_set_bit(v128_t *x, int i) ; + +void +v128_clear_bit(v128_t *x, int i); + +void +v128_set_bit_to(v128_t *x, int i, int y); + +#endif /* DATATYPES_USE_MACROS */ + +/* + * octet_string_is_eq(a,b, len) returns 1 if the length len strings a + * and b are not equal, returns 0 otherwise + */ + +int +octet_string_is_eq(uint8_t *a, uint8_t *b, int len); + +void +octet_string_set_to_zero(uint8_t *s, int len); + + +#endif /* MATH_H */ + + + diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/crypto_types.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/crypto_types.h new file mode 100644 index 00000000..35317108 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/crypto_types.h @@ -0,0 +1,220 @@ +/* + * crypto_types.h + * + * constants for cipher types and auth func types + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright(c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef CRYPTO_TYPES_H +#define CRYPTO_TYPES_H + +/** + * @defgroup Algos Cryptographic Algorithms + * + * + * This library provides several different cryptographic algorithms, + * each of which can be selected by using the cipher_type_id_t and + * auth_type_id_t. These algorithms are documented below. + * + * Authentication functions that use the Universal Security Transform + * (UST) must be used in conjunction with a cipher other than the null + * cipher. These functions require a per-message pseudorandom input + * that is generated by the cipher. + * + * The identifiers STRONGHOLD_AUTH and STRONGHOLD_CIPHER identify the + * strongest available authentication function and cipher, + * respectively. They are resolved at compile time to the strongest + * available algorithm. The stronghold algorithms can serve as did + * the keep of a medieval fortification; they provide the strongest + * defense (or the last refuge). + * + * @{ + */ + +/** + * @defgroup Ciphers Cipher Types + * + * @brief Each cipher type is identified by an unsigned integer. The + * cipher types available in this edition of libSRTP are given + * by the #defines below. + * + * A cipher_type_id_t is an identifier for a cipher_type; only values + * given by the #defines above (or those present in the file + * crypto_types.h) should be used. + * + * The identifier STRONGHOLD_CIPHER indicates the strongest available + * cipher, allowing an application to choose the strongest available + * algorithm without any advance knowledge about the avaliable + * algorithms. + * + * @{ + */ + +/** + * @brief The null cipher performs no encryption. + * + * The NULL_CIPHER leaves its inputs unaltered, during both the + * encryption and decryption operations. This cipher can be chosen + * to indicate that no encryption is to be performed. + */ +#define NULL_CIPHER 0 + +/** + * @brief AES Integer Counter Mode (AES ICM) + * + * AES ICM is the variant of counter mode that is used by Secure RTP. + * This cipher uses a 16-, 24-, or 32-octet key concatenated with a + * 14-octet offset (or salt) value. + */ +#define AES_ICM 1 + +/** + * @brief AES-128 Integer Counter Mode (AES ICM) + * AES-128 ICM is a deprecated alternate name for AES ICM. + */ +#define AES_128_ICM AES_ICM + +/** + * @brief SEAL 3.0 + * + * SEAL is the Software-Optimized Encryption Algorithm of Coppersmith + * and Rogaway. Nota bene: this cipher is IBM proprietary. + */ +#define SEAL 2 + +/** + * @brief AES Cipher Block Chaining mode (AES CBC) + * + * AES CBC is the AES Cipher Block Chaining mode. + * This cipher uses a 16-, 24-, or 32-octet key. + */ +#define AES_CBC 3 + +/** + * @brief AES-128 Cipher Block Chaining mode (AES CBC) + * + * AES-128 CBC is a deprecated alternate name for AES CBC. + */ +#define AES_128_CBC AES_CBC + +/** + * @brief Strongest available cipher. + * + * This identifier resolves to the strongest cipher type available. + */ +#define STRONGHOLD_CIPHER AES_ICM + +/** + * @} + */ + + + +/** + * @defgroup Authentication Authentication Function Types + * + * @brief Each authentication function type is identified by an + * unsigned integer. The authentication function types available in + * this edition of libSRTP are given by the #defines below. + * + * An auth_type_id_t is an identifier for an authentication function type; + * only values given by the #defines above (or those present in the + * file crypto_types.h) should be used. + * + * The identifier STRONGHOLD_AUTH indicates the strongest available + * authentication function, allowing an application to choose the + * strongest available algorithm without any advance knowledge about + * the avaliable algorithms. The stronghold algorithms can serve as + * did the keep of a medieval fortification; they provide the + * strongest defense (or the last refuge). + * + * @{ + */ + +/** + * @brief The null authentication function performs no authentication. + * + * The NULL_AUTH function does nothing, and can be selected to indicate + * that authentication should not be performed. + */ +#define NULL_AUTH 0 + +/** + * @brief UST with TMMH Version 2 + * + * UST_TMMHv2 implements the Truncated Multi-Modular Hash using + * UST. This function must be used in conjunction with a cipher other + * than the null cipher. + * with a cipher. + */ +#define UST_TMMHv2 1 + +/** + * @brief (UST) AES-128 XORMAC + * + * UST_AES_128_XMAC implements AES-128 XORMAC, using UST. Nota bene: + * the XORMAC algorithm is IBM proprietary. + */ +#define UST_AES_128_XMAC 2 + +/** + * @brief HMAC-SHA1 + * + * HMAC_SHA1 implements the Hash-based MAC using the NIST Secure + * Hash Algorithm version 1 (SHA1). + */ +#define HMAC_SHA1 3 + +/** + * @brief Strongest available authentication function. + * + * This identifier resolves to the strongest available authentication + * function. + */ +#define STRONGHOLD_AUTH HMAC_SHA1 + +/** + * @} + */ +/** + * @} + */ + +#endif /* CRYPTO_TYPES_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/cryptoalg.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/cryptoalg.h new file mode 100644 index 00000000..d9f0441e --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/cryptoalg.h @@ -0,0 +1,133 @@ +/* + * cryptoalg.h + * + * API for authenticated encryption crypto algorithms + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef CRYPTOALG_H +#define CRYPTOALG_H + +#include "err.h" + +/** + * @defgroup Crypto Cryptography + * + * Zed uses a simple interface to a cryptographic transform. + * + * @{ + */ + +/** + * @brief applies a crypto algorithm + * + * The function pointer cryptoalg_func_t points to a function that + * implements a crypto transform, and provides a uniform API for + * accessing crypto mechanisms. + * + * @param key location of secret key + * + * @param clear data to be authenticated but not encrypted + * + * @param clear_len length of data to be authenticated but not encrypted + * + * @param iv location to write the Initialization Vector (IV) + * + * @param protect location of the data to be encrypted and + * authenticated (before the function call), and the ciphertext + * and authentication tag (after the call) + * + * @param protected_len location of the length of the data to be + * encrypted and authenticated (before the function call), and the + * length of the ciphertext (after the call) + * + */ + +typedef err_status_t (*cryptoalg_func_t) + (void *key, + const void *clear, + unsigned clear_len, + void *iv, + void *protect, + unsigned *protected_len); + +typedef +err_status_t (*cryptoalg_inv_t) + (void *key, /* location of secret key */ + const void *clear, /* data to be authenticated only */ + unsigned clear_len, /* length of data to be authenticated only */ + void *iv, /* location of iv */ + void *opaque, /* data to be decrypted and authenticated */ + unsigned *opaque_len /* location of the length of data to be + * decrypted and authd (before and after) + */ + ); + +typedef struct cryptoalg_ctx_t { + cryptoalg_func_t enc; + cryptoalg_inv_t dec; + unsigned key_len; + unsigned iv_len; + unsigned auth_tag_len; + unsigned max_expansion; +} cryptoalg_ctx_t; + +typedef cryptoalg_ctx_t *cryptoalg_t; + +#define cryptoalg_get_key_len(cryptoalg) ((cryptoalg)->key_len) + +#define cryptoalg_get_iv_len(cryptoalg) ((cryptoalg)->iv_len) + +#define cryptoalg_get_auth_tag_len(cryptoalg) ((cryptoalg)->auth_tag_len) + +int +cryptoalg_get_id(cryptoalg_t c); + +cryptoalg_t +cryptoalg_find_by_id(int id); + + +/** + * @} + */ + +#endif /* CRYPTOALG_H */ + + diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/datatypes.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/datatypes.h new file mode 100644 index 00000000..638d9d0c --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/datatypes.h @@ -0,0 +1,506 @@ +/* + * datatypes.h + * + * data types for bit vectors and finite fields + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef _DATATYPES_H +#define _DATATYPES_H + +#include "integers.h" /* definitions of uint32_t, et cetera */ +#include "alloc.h" + +#include + +#ifndef SRTP_KERNEL +# include +# include +# include +# ifdef HAVE_NETINET_IN_H +# include +# elif defined HAVE_WINSOCK2_H +# include +# endif +#endif + + +/* if DATATYPES_USE_MACROS is defined, then little functions are macros */ +#define DATATYPES_USE_MACROS + +typedef union { + uint8_t v8[2]; + uint16_t value; +} v16_t; + +typedef union { + uint8_t v8[4]; + uint16_t v16[2]; + uint32_t value; +} v32_t; + +typedef union { + uint8_t v8[8]; + uint16_t v16[4]; + uint32_t v32[2]; + uint64_t value; +} v64_t; + +typedef union { + uint8_t v8[16]; + uint16_t v16[8]; + uint32_t v32[4]; + uint64_t v64[2]; +} v128_t; + + + +/* some useful and simple math functions */ + +#define pow_2(X) ( (unsigned int)1 << (X) ) /* 2^X */ + +#define pow_minus_one(X) ( (X) ? -1 : 1 ) /* (-1)^X */ + + +/* + * octet_get_weight(x) returns the hamming weight (number of bits equal to + * one) in the octet x + */ + +int +octet_get_weight(uint8_t octet); + +char * +octet_bit_string(uint8_t x); + +#define MAX_PRINT_STRING_LEN 1024 + +char * +octet_string_hex_string(const void *str, int length); + +char * +v128_bit_string(v128_t *x); + +char * +v128_hex_string(v128_t *x); + +uint8_t +nibble_to_hex_char(uint8_t nibble); + +char * +char_to_hex_string(char *x, int num_char); + +uint8_t +hex_string_to_octet(char *s); + +/* + * hex_string_to_octet_string(raw, hex, len) converts the hexadecimal + * string at *hex (of length len octets) to the equivalent raw data + * and writes it to *raw. + * + * if a character in the hex string that is not a hexadeciaml digit + * (0123456789abcdefABCDEF) is encountered, the function stops writing + * data to *raw + * + * the number of hex digits copied (which is two times the number of + * octets in *raw) is returned + */ + +int +hex_string_to_octet_string(char *raw, char *hex, int len); + +v128_t +hex_string_to_v128(char *s); + +void +v128_copy_octet_string(v128_t *x, const uint8_t s[16]); + +void +v128_left_shift(v128_t *x, int shift_index); + +void +v128_right_shift(v128_t *x, int shift_index); + +/* + * the following macros define the data manipulation functions + * + * If DATATYPES_USE_MACROS is defined, then these macros are used + * directly (and function call overhead is avoided). Otherwise, + * the macros are used through the functions defined in datatypes.c + * (and the compiler provides better warnings). + */ + +#define _v128_set_to_zero(x) \ +( \ + (x)->v32[0] = 0, \ + (x)->v32[1] = 0, \ + (x)->v32[2] = 0, \ + (x)->v32[3] = 0 \ +) + +#define _v128_copy(x, y) \ +( \ + (x)->v32[0] = (y)->v32[0], \ + (x)->v32[1] = (y)->v32[1], \ + (x)->v32[2] = (y)->v32[2], \ + (x)->v32[3] = (y)->v32[3] \ +) + +#define _v128_xor(z, x, y) \ +( \ + (z)->v32[0] = (x)->v32[0] ^ (y)->v32[0], \ + (z)->v32[1] = (x)->v32[1] ^ (y)->v32[1], \ + (z)->v32[2] = (x)->v32[2] ^ (y)->v32[2], \ + (z)->v32[3] = (x)->v32[3] ^ (y)->v32[3] \ +) + +#define _v128_and(z, x, y) \ +( \ + (z)->v32[0] = (x)->v32[0] & (y)->v32[0], \ + (z)->v32[1] = (x)->v32[1] & (y)->v32[1], \ + (z)->v32[2] = (x)->v32[2] & (y)->v32[2], \ + (z)->v32[3] = (x)->v32[3] & (y)->v32[3] \ +) + +#define _v128_or(z, x, y) \ +( \ + (z)->v32[0] = (x)->v32[0] | (y)->v32[0], \ + (z)->v32[1] = (x)->v32[1] | (y)->v32[1], \ + (z)->v32[2] = (x)->v32[2] | (y)->v32[2], \ + (z)->v32[3] = (x)->v32[3] | (y)->v32[3] \ +) + +#define _v128_complement(x) \ +( \ + (x)->v32[0] = ~(x)->v32[0], \ + (x)->v32[1] = ~(x)->v32[1], \ + (x)->v32[2] = ~(x)->v32[2], \ + (x)->v32[3] = ~(x)->v32[3] \ +) + +/* ok for NO_64BIT_MATH if it can compare uint64_t's (even as structures) */ +#define _v128_is_eq(x, y) \ + (((x)->v64[0] == (y)->v64[0]) && ((x)->v64[1] == (y)->v64[1])) + + +#ifdef NO_64BIT_MATH +#define _v128_xor_eq(z, x) \ +( \ + (z)->v32[0] ^= (x)->v32[0], \ + (z)->v32[1] ^= (x)->v32[1], \ + (z)->v32[2] ^= (x)->v32[2], \ + (z)->v32[3] ^= (x)->v32[3] \ +) +#else +#define _v128_xor_eq(z, x) \ +( \ + (z)->v64[0] ^= (x)->v64[0], \ + (z)->v64[1] ^= (x)->v64[1] \ +) +#endif + +/* NOTE! This assumes an odd ordering! */ +/* This will not be compatible directly with math on some processors */ +/* bit 0 is first 32-bit word, low order bit. in little-endian, that's + the first byte of the first 32-bit word. In big-endian, that's + the 3rd byte of the first 32-bit word */ +/* The get/set bit code is used by the replay code ONLY, and it doesn't + really care which bit is which. AES does care which bit is which, but + doesn't use the 128-bit get/set or 128-bit shifts */ + +#define _v128_get_bit(x, bit) \ +( \ + ((((x)->v32[(bit) >> 5]) >> ((bit) & 31)) & 1) \ +) + +#define _v128_set_bit(x, bit) \ +( \ + (((x)->v32[(bit) >> 5]) |= ((uint32_t)1 << ((bit) & 31))) \ +) + +#define _v128_clear_bit(x, bit) \ +( \ + (((x)->v32[(bit) >> 5]) &= ~((uint32_t)1 << ((bit) & 31))) \ +) + +#define _v128_set_bit_to(x, bit, value) \ +( \ + (value) ? _v128_set_bit(x, bit) : \ + _v128_clear_bit(x, bit) \ +) + + +#if 0 +/* nothing uses this */ +#ifdef WORDS_BIGENDIAN + +#define _v128_add(z, x, y) { \ + uint64_t tmp; \ + \ + tmp = x->v32[3] + y->v32[3]; \ + z->v32[3] = (uint32_t) tmp; \ + \ + tmp = x->v32[2] + y->v32[2] + (tmp >> 32); \ + z->v32[2] = (uint32_t) tmp; \ + \ + tmp = x->v32[1] + y->v32[1] + (tmp >> 32); \ + z->v32[1] = (uint32_t) tmp; \ + \ + tmp = x->v32[0] + y->v32[0] + (tmp >> 32); \ + z->v32[0] = (uint32_t) tmp; \ +} + +#else /* assume little endian architecture */ + +#define _v128_add(z, x, y) { \ + uint64_t tmp; \ + \ + tmp = htonl(x->v32[3]) + htonl(y->v32[3]); \ + z->v32[3] = ntohl((uint32_t) tmp); \ + \ + tmp = htonl(x->v32[2]) + htonl(y->v32[2]) \ + + htonl(tmp >> 32); \ + z->v32[2] = ntohl((uint32_t) tmp); \ + \ + tmp = htonl(x->v32[1]) + htonl(y->v32[1]) \ + + htonl(tmp >> 32); \ + z->v32[1] = ntohl((uint32_t) tmp); \ + \ + tmp = htonl(x->v32[0]) + htonl(y->v32[0]) \ + + htonl(tmp >> 32); \ + z->v32[0] = ntohl((uint32_t) tmp); \ +} +#endif /* WORDS_BIGENDIAN */ +#endif /* 0 */ + + +#ifdef DATATYPES_USE_MACROS /* little functions are really macros */ + +#define v128_set_to_zero(z) _v128_set_to_zero(z) +#define v128_copy(z, x) _v128_copy(z, x) +#define v128_xor(z, x, y) _v128_xor(z, x, y) +#define v128_and(z, x, y) _v128_and(z, x, y) +#define v128_or(z, x, y) _v128_or(z, x, y) +#define v128_complement(x) _v128_complement(x) +#define v128_is_eq(x, y) _v128_is_eq(x, y) +#define v128_xor_eq(x, y) _v128_xor_eq(x, y) +#define v128_get_bit(x, i) _v128_get_bit(x, i) +#define v128_set_bit(x, i) _v128_set_bit(x, i) +#define v128_clear_bit(x, i) _v128_clear_bit(x, i) +#define v128_set_bit_to(x, i, y) _v128_set_bit_to(x, i, y) + +#else + +void +v128_set_to_zero(v128_t *x); + +int +v128_is_eq(const v128_t *x, const v128_t *y); + +void +v128_copy(v128_t *x, const v128_t *y); + +void +v128_xor(v128_t *z, v128_t *x, v128_t *y); + +void +v128_and(v128_t *z, v128_t *x, v128_t *y); + +void +v128_or(v128_t *z, v128_t *x, v128_t *y); + +void +v128_complement(v128_t *x); + +int +v128_get_bit(const v128_t *x, int i); + +void +v128_set_bit(v128_t *x, int i) ; + +void +v128_clear_bit(v128_t *x, int i); + +void +v128_set_bit_to(v128_t *x, int i, int y); + +#endif /* DATATYPES_USE_MACROS */ + +/* + * octet_string_is_eq(a,b, len) returns 1 if the length len strings a + * and b are not equal, returns 0 otherwise + */ + +int +octet_string_is_eq(uint8_t *a, uint8_t *b, int len); + +void +octet_string_set_to_zero(uint8_t *s, int len); + + +#ifndef SRTP_KERNEL_LINUX + +/* + * Convert big endian integers to CPU byte order. + */ +#ifdef WORDS_BIGENDIAN +/* Nothing to do. */ +# define be32_to_cpu(x) (x) +# define be64_to_cpu(x) (x) +#elif defined(HAVE_BYTESWAP_H) +/* We have (hopefully) optimized versions in byteswap.h */ +# include +# define be32_to_cpu(x) bswap_32((x)) +# define be64_to_cpu(x) bswap_64((x)) +#else + +#if defined(__GNUC__) && defined(HAVE_X86) +/* Fall back. */ +static inline uint32_t be32_to_cpu(uint32_t v) { + /* optimized for x86. */ + asm("bswap %0" : "=r" (v) : "0" (v)); + return v; +} +# else /* HAVE_X86 */ +# ifdef HAVE_NETINET_IN_H +# include +# elif defined HAVE_WINSOCK2_H +# include +# endif +# define be32_to_cpu(x) ntohl((x)) +# endif /* HAVE_X86 */ + +static __inline uint64_t be64_to_cpu(uint64_t v) { +# ifdef NO_64BIT_MATH + /* use the make64 functions to do 64-bit math */ + v = make64(htonl(low32(v)),htonl(high32(v))); +# else + /* use the native 64-bit math */ + v= (uint64_t)((be32_to_cpu((uint32_t)(v >> 32))) | (((uint64_t)be32_to_cpu((uint32_t)v)) << 32)); +# endif + return v; +} + +#endif /* ! SRTP_KERNEL_LINUX */ + +#endif /* WORDS_BIGENDIAN */ + +/* + * functions manipulating bitvector_t + * + * A bitvector_t consists of an array of words and an integer + * representing the number of significant bits stored in the array. + * The bits are packed as follows: the least significant bit is that + * of word[0], while the most significant bit is the nth most + * significant bit of word[m], where length = bits_per_word * m + n. + * + */ + +#define bits_per_word 32 +#define bytes_per_word 4 + +typedef struct { + uint32_t length; + uint32_t *word; +} bitvector_t; + + +#define _bitvector_get_bit(v, bit_index) \ +( \ + ((((v)->word[((bit_index) >> 5)]) >> ((bit_index) & 31)) & 1) \ +) + + +#define _bitvector_set_bit(v, bit_index) \ +( \ + (((v)->word[((bit_index) >> 5)] |= ((uint32_t)1 << ((bit_index) & 31)))) \ +) + +#define _bitvector_clear_bit(v, bit_index) \ +( \ + (((v)->word[((bit_index) >> 5)] &= ~((uint32_t)1 << ((bit_index) & 31)))) \ +) + +#define _bitvector_get_length(v) \ +( \ + ((v)->length) \ +) + +#ifdef DATATYPES_USE_MACROS /* little functions are really macros */ + +#define bitvector_get_bit(v, bit_index) _bitvector_get_bit(v, bit_index) +#define bitvector_set_bit(v, bit_index) _bitvector_set_bit(v, bit_index) +#define bitvector_clear_bit(v, bit_index) _bitvector_clear_bit(v, bit_index) +#define bitvector_get_length(v) _bitvector_get_length(v) + +#else + +int +bitvector_get_bit(const bitvector_t *v, int bit_index); + +void +bitvector_set_bit(bitvector_t *v, int bit_index); + +void +bitvector_clear_bit(bitvector_t *v, int bit_index); + +unsigned long +bitvector_get_length(const bitvector_t *v); + +#endif + +int +bitvector_alloc(bitvector_t *v, unsigned long length); + +void +bitvector_dealloc(bitvector_t *v); + +void +bitvector_set_to_zero(bitvector_t *x); + +void +bitvector_left_shift(bitvector_t *x, int index); + +char * +bitvector_bit_string(bitvector_t *x, char* buf, int len); + +#endif /* _DATATYPES_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/ekt.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/ekt.h new file mode 100644 index 00000000..b0d888ba --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/ekt.h @@ -0,0 +1,201 @@ +/* + * ekt.h + * + * interface to Encrypted Key Transport for SRTP + * + * David McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2005 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + + +/* + * EKT implementation strategy + * + * use stream_template approach + * + * in srtp_unprotect, when a new stream appears, check if template has + * EKT defined, and if it does, then apply EKT processing + * + * question: will we want to allow key-sharing templates in addition + * to EKT templates? could define a new ssrc_type_t that's associated + * with an EKT, e.g. ssrc_any_ekt. + * + * + */ + +#ifndef EKT_H +#define EKT_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include "srtp_priv.h" + +#define EKT_CIPHER_DEFAULT 1 +#define EKT_CIPHER_AES_128_ECB 1 +#define EKT_CIPHER_AES_192_KEY_WRAP 2 +#define EKT_CIPHER_AES_256_KEY_WRAP 3 + +typedef uint16_t ekt_spi_t; + + +unsigned +ekt_octets_after_base_tag(ekt_stream_t ekt); + +/* + * an srtp_policy_t structure can contain a pointer to an + * ekt_policy_t structure + * + * this structure holds all of the high level EKT information, and it + * is passed into libsrtp to indicate what policy should be in effect + */ + +typedef struct ekt_policy_ctx_t { + ekt_spi_t spi; /* security parameter index */ + uint8_t ekt_cipher_type; + uint8_t *ekt_key; + struct ekt_policy_ctx_t *next_ekt_policy; +} ekt_policy_ctx_t; + + +/* + * an ekt_data_t structure holds the data corresponding to an ekt key, + * spi, and so on + */ + +typedef struct ekt_data_t { + ekt_spi_t spi; + uint8_t ekt_cipher_type; + aes_expanded_key_t ekt_enc_key; + aes_expanded_key_t ekt_dec_key; + struct ekt_data_t *next_ekt_data; +} ekt_data_t; + +/* + * an srtp_stream_ctx_t can contain an ekt_stream_ctx_t + * + * an ekt_stream_ctx_t structure holds all of the EKT information for + * a specific SRTP stream + */ + +typedef struct ekt_stream_ctx_t { + ekt_data_t *data; + uint16_t isn; /* initial sequence number */ + uint8_t encrypted_master_key[SRTP_MAX_KEY_LEN]; +} ekt_stream_ctx_t; + + + +err_status_t +ekt_alloc(ekt_stream_t *stream_data, ekt_policy_t policy); + +err_status_t +ekt_stream_init(ekt_stream_t e, + ekt_spi_t spi, + void *ekt_key, + unsigned ekt_cipher_type); + +err_status_t +ekt_stream_init_from_policy(ekt_stream_t e, ekt_policy_t p); + + + +err_status_t +srtp_stream_init_from_ekt(srtp_stream_t stream, + const void *srtcp_hdr, + unsigned pkt_octet_len); + + +void +ekt_write_data(ekt_stream_t ekt, + uint8_t *base_tag, + unsigned base_tag_len, + int *packet_len, + xtd_seq_num_t pkt_index); + +/* + * We handle EKT by performing some additional steps before + * authentication (copying the auth tag into a temporary location, + * zeroizing the "base tag" field in the packet) + * + * With EKT, the tag_len parameter is actually the base tag + * length + */ + +err_status_t +ekt_tag_verification_preproces(uint8_t *pkt_tag, + uint8_t *pkt_tag_copy, + unsigned tag_len); + +err_status_t +ekt_tag_verification_postproces(uint8_t *pkt_tag, + uint8_t *pkt_tag_copy, + unsigned tag_len); + + +/* + * @brief EKT pre-processing for srtcp tag generation + * + * This function does the pre-processing of the SRTCP authentication + * tag format. When EKT is used, it consists of writing the Encrypted + * Master Key, the SRTP ROC, the Initial Sequence Number, and SPI + * fields. The Base Authentication Tag field is set to the all-zero + * value + * + * When EKT is not used, this function is a no-op. + * + */ + +err_status_t +srtp_stream_srtcp_auth_tag_generation_preprocess(const srtp_stream_t *s, + uint8_t *pkt_tag, + unsigned pkt_octet_len); + +/* it's not clear that a tag_generation_postprocess function is needed */ + +err_status_t +srtcp_auth_tag_generation_postprocess(void); + + +#ifdef __cplusplus +} +#endif + +#endif /* EKT_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/err.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/err.h new file mode 100644 index 00000000..1a6e1701 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/err.h @@ -0,0 +1,174 @@ +/* + * err.h + * + * error status codes + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef ERR_H +#define ERR_H + +#include "datatypes.h" + +/** + * @defgroup Error Error Codes + * + * Error status codes are represented by the enumeration err_status_t. + * + * @{ + */ + + +/* + * @brief err_status_t defines error codes. + * + * The enumeration err_status_t defines error codes. Note that the + * value of err_status_ok is equal to zero, which can simplify error + * checking somewhat. + * + */ +typedef enum { + err_status_ok = 0, /**< nothing to report */ + err_status_fail = 1, /**< unspecified failure */ + err_status_bad_param = 2, /**< unsupported parameter */ + err_status_alloc_fail = 3, /**< couldn't allocate memory */ + err_status_dealloc_fail = 4, /**< couldn't deallocate properly */ + err_status_init_fail = 5, /**< couldn't initialize */ + err_status_terminus = 6, /**< can't process as much data as requested */ + err_status_auth_fail = 7, /**< authentication failure */ + err_status_cipher_fail = 8, /**< cipher failure */ + err_status_replay_fail = 9, /**< replay check failed (bad index) */ + err_status_replay_old = 10, /**< replay check failed (index too old) */ + err_status_algo_fail = 11, /**< algorithm failed test routine */ + err_status_no_such_op = 12, /**< unsupported operation */ + err_status_no_ctx = 13, /**< no appropriate context found */ + err_status_cant_check = 14, /**< unable to perform desired validation */ + err_status_key_expired = 15, /**< can't use key any more */ + err_status_socket_err = 16, /**< error in use of socket */ + err_status_signal_err = 17, /**< error in use POSIX signals */ + err_status_nonce_bad = 18, /**< nonce check failed */ + err_status_read_fail = 19, /**< couldn't read data */ + err_status_write_fail = 20, /**< couldn't write data */ + err_status_parse_err = 21, /**< error pasring data */ + err_status_encode_err = 22, /**< error encoding data */ + err_status_semaphore_err = 23,/**< error while using semaphores */ + err_status_pfkey_err = 24 /**< error while using pfkey */ +} err_status_t; + +/** + * @} + */ + +typedef enum { + err_level_emergency = 0, + err_level_alert, + err_level_critical, + err_level_error, + err_level_warning, + err_level_notice, + err_level_info, + err_level_debug, + err_level_none +} err_reporting_level_t; + +/* + * err_reporting_init prepares the error system. If + * ERR_REPORTING_SYSLOG is defined, it will open syslog. + * + * The ident argument is a string that will be prepended to + * all syslog messages. It is conventionally argv[0]. + */ + +err_status_t +err_reporting_init(char *ident); + +#ifdef SRTP_KERNEL_LINUX +extern err_reporting_level_t err_level; +#else + +/* + * keydaemon_report_error reports a 'printf' formatted error + * string, followed by a an arg list. The priority argument + * is equivalent to that defined for syslog. + * + * Errors will be reported to ERR_REPORTING_FILE, if defined, and to + * syslog, if ERR_REPORTING_SYSLOG is defined. + * + */ + +void +err_report(int priority, char *format, ...); +#endif /* ! SRTP_KERNEL_LINUX */ + + +/* + * debug_module_t defines a debug module + */ + +typedef struct { + int on; /* 1 if debugging is on, 0 if it is off */ + char *name; /* printable name for debug module */ +} debug_module_t; + +#ifdef ENABLE_DEBUGGING + +#define debug_on(mod) (mod).on = 1 + +#define debug_off(mod) (mod).on = 0 + +/* use err_report() to report debug message */ +#define debug_print(mod, format, arg) \ + if (mod.on) err_report(err_level_debug, ("%s: " format "\n"), mod.name, arg) +#define debug_print2(mod, format, arg1,arg2) \ + if (mod.on) err_report(err_level_debug, ("%s: " format "\n"), mod.name, arg1,arg2) + +#else + +/* define macros to do nothing */ +#define debug_print(mod, format, arg) + +#define debug_on(mod) + +#define debug_off(mod) + +#endif + +#endif /* ERR_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/getopt_s.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/getopt_s.h new file mode 100644 index 00000000..2a6ece34 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/getopt_s.h @@ -0,0 +1,60 @@ +/* + * getopt.h + * + * interface to a minimal implementation of the getopt() function, + * written so that test applications that use that function can run on + * non-POSIX platforms + * + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef GETOPT_S_H +#define GETOPT_S_H + +/* + * getopt_s(), optarg_s, and optind_s are small, locally defined + * versions of the POSIX standard getopt() interface. + */ + +int +getopt_s(int argc, char * const argv[], const char *optstring); + +extern char *optarg_s; /* defined in getopt.c */ + +extern int optind_s; /* defined in getopt.c */ + +#endif /* GETOPT_S_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/gf2_8.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/gf2_8.h new file mode 100644 index 00000000..098d37c9 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/gf2_8.h @@ -0,0 +1,79 @@ +/* + * gf2_8.h + * + * GF(256) implementation + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef GF2_8_H +#define GF2_8_H + +#include "datatypes.h" /* for uint8_t definition */ + +typedef uint8_t gf2_8; + +#define gf2_8_field_polynomial 0x1B + +/* + * gf2_8_shift(x) returns + */ + +/* + * gf2_8_shift(z) returns the result of the GF(2^8) 'multiply by x' + * operation, using the field representation from AES; that is, the + * next gf2_8 value in the cyclic representation of that field. The + * value z should be an uint8_t. + */ + +#define gf2_8_shift(z) (((z) & 128) ? \ + (((z) << 1) ^ gf2_8_field_polynomial) : ((z) << 1)) + +gf2_8 +gf2_8_compute_inverse(gf2_8 x); + +void +test_gf2_8(void); + +gf2_8 +gf2_8_multiply(gf2_8 x, gf2_8 y); + +#endif /* GF2_8_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/hmac.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/hmac.h new file mode 100644 index 00000000..262c0e2d --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/hmac.h @@ -0,0 +1,78 @@ +/* + * hmac.h + * + * interface to hmac auth_type_t + * + * David A. McGrew + * Cisco Systems, Inc. + * + */ +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef HMAC_H +#define HMAC_H + +#include "auth.h" +#include "sha1.h" + +typedef struct { + uint8_t opad[64]; + sha1_ctx_t ctx; + sha1_ctx_t init_ctx; +} hmac_ctx_t; + +err_status_t +hmac_alloc(auth_t **a, int key_len, int out_len); + +err_status_t +hmac_dealloc(auth_t *a); + +err_status_t +hmac_init(hmac_ctx_t *state, const uint8_t *key, int key_len); + +err_status_t +hmac_start(hmac_ctx_t *state); + +err_status_t +hmac_update(hmac_ctx_t *state, const uint8_t *message, int msg_octets); + +err_status_t +hmac_compute(hmac_ctx_t *state, const void *message, + int msg_octets, int tag_len, uint8_t *result); + + +#endif /* HMAC_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/integers.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/integers.h new file mode 100644 index 00000000..7010efdd --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/integers.h @@ -0,0 +1,147 @@ +/* + * integers.h + * + * defines integer types (or refers to their definitions) + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef INTEGERS_H +#define INTEGERS_H + +#include "config.h" /* configuration file, using autoconf */ + +#ifdef SRTP_KERNEL + +#include "kernel_compat.h" + +#else /* SRTP_KERNEL */ + +/* use standard integer definitions, if they're available */ +#ifdef HAVE_STDLIB_H +# include +#endif +#ifdef HAVE_STDINT_H +# include +#endif +#ifdef HAVE_INTTYPES_H +# include +#endif +#ifdef HAVE_SYS_TYPES_H +# include +#endif +#ifdef HAVE_SYS_INT_TYPES_H +# include /* this exists on Sun OS */ +#endif +#ifdef HAVE_MACHINE_TYPES_H +# include +#endif + +/* Can we do 64 bit integers? */ +#ifndef HAVE_UINT64_T +# if SIZEOF_UNSIGNED_LONG == 8 +typedef unsigned long uint64_t; +# elif SIZEOF_UNSIGNED_LONG_LONG == 8 +typedef unsigned long long uint64_t; +# else +# define NO_64BIT_MATH 1 +# endif +#endif + +/* Reasonable defaults for 32 bit machines - you may need to + * edit these definitions for your own machine. */ +#ifndef HAVE_UINT8_T +typedef unsigned char uint8_t; +#endif +#ifndef HAVE_UINT16_T +typedef unsigned short int uint16_t; +#endif +#ifndef HAVE_UINT32_T +typedef unsigned int uint32_t; +#endif + + +#ifdef NO_64BIT_MATH +typedef double uint64_t; +/* assert that sizeof(double) == 8 */ +extern uint64_t make64(uint32_t high, uint32_t low); +extern uint32_t high32(uint64_t value); +extern uint32_t low32(uint64_t value); +#endif + +#endif /* SRTP_KERNEL */ + +/* These macros are to load and store 32-bit values from un-aligned + addresses. This is required for processors that do not allow unaligned + loads. */ +#ifdef ALIGNMENT_32BIT_REQUIRED +/* Note that if it's in a variable, you can memcpy it */ +#ifdef WORDS_BIGENDIAN +#define PUT_32(addr,value) \ + { \ + ((unsigned char *) (addr))[0] = (value >> 24); \ + ((unsigned char *) (addr))[1] = (value >> 16) & 0xff; \ + ((unsigned char *) (addr))[2] = (value >> 8) & 0xff; \ + ((unsigned char *) (addr))[3] = (value) & 0xff; \ + } +#define GET_32(addr) ((((unsigned char *) (addr))[0] << 24) | \ + (((unsigned char *) (addr))[1] << 16) | \ + (((unsigned char *) (addr))[2] << 8) | \ + (((unsigned char *) (addr))[3])) +#else +#define PUT_32(addr,value) \ + { \ + ((unsigned char *) (addr))[3] = (value >> 24); \ + ((unsigned char *) (addr))[2] = (value >> 16) & 0xff; \ + ((unsigned char *) (addr))[1] = (value >> 8) & 0xff; \ + ((unsigned char *) (addr))[0] = (value) & 0xff; \ + } +#define GET_32(addr) ((((unsigned char *) (addr))[3] << 24) | \ + (((unsigned char *) (addr))[2] << 16) | \ + (((unsigned char *) (addr))[1] << 8) | \ + (((unsigned char *) (addr))[0])) +#endif // WORDS_BIGENDIAN +#else +#define PUT_32(addr,value) *(((uint32_t *) (addr)) = (value) +#define GET_32(addr) (*(((uint32_t *) (addr))) +#endif + +#endif /* INTEGERS_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/kernel_compat.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/kernel_compat.h new file mode 100644 index 00000000..59d1898e --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/kernel_compat.h @@ -0,0 +1,84 @@ +/* + * kernel_compat.h + * + * Compatibility stuff for building in kernel context where standard + * C headers and library are not available. + * + * Marcus Sundberg + * Ingate Systems AB + */ +/* + * + * Copyright(c) 2005 Ingate Systems AB + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the author(s) nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef KERNEL_COMPAT_H +#define KERNEL_COMPAT_H + +#ifdef SRTP_KERNEL_LINUX + +#include +#include +#include +#include +#include + + +#define err_report(priority, ...) \ + do {\ + if (priority <= err_level) {\ + printk(__VA_ARGS__);\ + }\ + }while(0) + +#define clock() (jiffies) +#define time(x) (jiffies) + +/* rand() implementation. */ +#define RAND_MAX 32767 + +static inline int rand(void) +{ + uint32_t temp; + get_random_bytes(&temp, sizeof(temp)); + return temp % (RAND_MAX+1); +} + +/* stdio/stdlib implementation. */ +#define printf(...) printk(__VA_ARGS__) +#define exit(n) panic("%s:%d: exit(%d)\n", __FILE__, __LINE__, (n)) + +#endif /* SRTP_KERNEL_LINUX */ + +#endif /* KERNEL_COMPAT_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/key.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/key.h new file mode 100644 index 00000000..e7e07448 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/key.h @@ -0,0 +1,82 @@ +/* + * key.h + * + * key usage limits enforcement + * + * David A. Mcgrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef KEY_H +#define KEY_H + +#include "rdbx.h" /* for xtd_seq_num_t */ +#include "err.h" + +typedef struct key_limit_ctx_t *key_limit_t; + +typedef enum { + key_event_normal, + key_event_soft_limit, + key_event_hard_limit +} key_event_t; + +err_status_t +key_limit_set(key_limit_t key, const xtd_seq_num_t s); + +err_status_t +key_limit_clone(key_limit_t original, key_limit_t *new_key); + +err_status_t +key_limit_check(const key_limit_t key); + +key_event_t +key_limit_update(key_limit_t key); + +typedef enum { + key_state_normal, + key_state_past_soft_limit, + key_state_expired +} key_state_t; + +typedef struct key_limit_ctx_t { + xtd_seq_num_t num_left; + key_state_t state; +} key_limit_ctx_t; + +#endif /* KEY_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/null_auth.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/null_auth.h new file mode 100644 index 00000000..44f9a4a2 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/null_auth.h @@ -0,0 +1,68 @@ +/* + * null-auth.h + * + * David A. McGrew + * Cisco Systems, Inc. + * + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef NULL_AUTH_H +#define NULL_AUTH_H + +#include "auth.h" + +typedef struct { + char foo; +} null_auth_ctx_t; + +err_status_t +null_auth_alloc(auth_t **a, int key_len, int out_len); + +err_status_t +null_auth_dealloc(auth_t *a); + +err_status_t +null_auth_init(null_auth_ctx_t *state, const uint8_t *key, int key_len); + +err_status_t +null_auth_compute (null_auth_ctx_t *state, uint8_t *message, + int msg_octets, int tag_len, uint8_t *result); + + +#endif /* NULL_AUTH_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/null_cipher.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/null_cipher.h new file mode 100644 index 00000000..39da59a8 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/null_cipher.h @@ -0,0 +1,80 @@ +/* + * null-cipher.h + * + * header file for the null cipher + * + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef NULL_CIPHER_H +#define NULL_CIPHER_H + +#include "datatypes.h" +#include "cipher.h" + +typedef struct { + char foo ;/* empty, for now */ +} null_cipher_ctx_t; + + +/* + * none of these functions do anything (though future versions may keep + * track of bytes encrypted, number of instances, and/or other info). + */ + +err_status_t +null_cipher_init(null_cipher_ctx_t *c, const uint8_t *key, int key_len); + +err_status_t +null_cipher_set_segment(null_cipher_ctx_t *c, + unsigned long segment_index); + +err_status_t +null_cipher_encrypt(null_cipher_ctx_t *c, + unsigned char *buf, unsigned int *bytes_to_encr); + + +err_status_t +null_cipher_encrypt_aligned(null_cipher_ctx_t *c, + unsigned char *buf, int bytes_to_encr); + +#endif /* NULL_CIPHER_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/prng.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/prng.h new file mode 100644 index 00000000..fb96b5eb --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/prng.h @@ -0,0 +1,54 @@ +/* + * prng.h + * + * pseudorandom source + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +#ifndef PRNG_H +#define PRNG_H + +#include "rand_source.h" /* for rand_source_func_t definition */ +#include "aes.h" /* for aes */ +#include "aes_icm.h" /* for aes ctr */ + +#define MAX_PRNG_OUT_LEN 0xffffffffU + +/* + * x917_prng is an ANSI X9.17-like AES-based PRNG + */ + +typedef struct { + v128_t state; /* state data */ + aes_expanded_key_t key; /* secret key */ + uint32_t octet_count; /* number of octets output since last init */ + rand_source_func_t rand; /* random source for re-initialization */ +} x917_prng_t; + +err_status_t +x917_prng_init(rand_source_func_t random_source); + +err_status_t +x917_prng_get_octet_string(uint8_t *dest, uint32_t len); + + +/* + * ctr_prng is an AES-CTR based PRNG + */ + +typedef struct { + uint32_t octet_count; /* number of octets output since last init */ + aes_icm_ctx_t state; /* state data */ + rand_source_func_t rand; /* random source for re-initialization */ +} ctr_prng_t; + +err_status_t +ctr_prng_init(rand_source_func_t random_source); + +err_status_t +ctr_prng_get_octet_string(void *dest, uint32_t len); + + +#endif diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/rand_source.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/rand_source.h new file mode 100644 index 00000000..b4c21103 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/rand_source.h @@ -0,0 +1,91 @@ +/* + * rand_source.h + * + * implements a random source based on /dev/random + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright(c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef RAND_SOURCE +#define RAND_SOURCE + +#include "err.h" +#include "datatypes.h" + +err_status_t +rand_source_init(void); + +/* + * rand_source_get_octet_string() writes a random octet string. + * + * The function call rand_source_get_octet_string(dest, len) writes + * len octets of random data to the location to which dest points, + * and returns an error code. This error code should be checked, + * and if a failure is reported, the data in the buffer MUST NOT + * be used. + * + * warning: If the return code is not checked, then non-random + * data may inadvertently be used. + * + * returns: + * - err_status_ok if no problems occured. + * - [other] a problem occured, and no assumptions should + * be made about the contents of the destination + * buffer. + */ + +err_status_t +rand_source_get_octet_string(void *dest, uint32_t length); + +err_status_t +rand_source_deinit(void); + +/* + * function prototype for a random source function + * + * A rand_source_func_t writes num_octets at the location indicated by + * dest and returns err_status_ok. Any other return value indicates + * failure. + */ + +typedef err_status_t (*rand_source_func_t) + (void *dest, uint32_t num_octets); + +#endif /* RAND_SOURCE */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/rdb.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/rdb.h new file mode 100644 index 00000000..2ccb1448 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/rdb.h @@ -0,0 +1,94 @@ +/* + * replay-database.h + * + * interface for a replay database for packet security + * + * David A. McGrew + * Cisco Systems, Inc. + */ + + +#ifndef REPLAY_DB_H +#define REPLAY_DB_H + +#include "integers.h" /* for uint32_t */ +#include "datatypes.h" /* for v128_t */ +#include "err.h" /* for err_status_t */ + +/* + * if the ith least significant bit is one, then the packet index + * window_end-i is in the database + */ + +typedef struct { + uint32_t window_start; /* packet index of the first bit in bitmask */ + v128_t bitmask; +} rdb_t; + +#define rdb_bits_in_bitmask (8*sizeof(v128_t)) + +/* + * rdb init + * + * initalizes rdb + * + * returns err_status_ok on success, err_status_t_fail otherwise + */ + +err_status_t +rdb_init(rdb_t *rdb); + + +/* + * rdb_check + * + * checks to see if index appears in rdb + * + * returns err_status_fail if the index already appears in rdb, + * returns err_status_ok otherwise + */ + +err_status_t +rdb_check(const rdb_t *rdb, uint32_t rdb_index); + +/* + * rdb_add_index + * + * adds index to rdb_t (and does *not* check if index appears in db) + * + * returns err_status_ok on success, err_status_fail otherwise + * + */ + +err_status_t +rdb_add_index(rdb_t *rdb, uint32_t rdb_index); + +/* + * the functions rdb_increment() and rdb_get_value() are for use by + * senders, not receivers - DO NOT use these functions on the same + * rdb_t upon which rdb_add_index is used! + */ + + +/* + * rdb_increment(db) increments the sequence number in db, if it is + * not too high + * + * return values: + * + * err_status_ok no problem + * err_status_key_expired sequence number too high + * + */ +err_status_t +rdb_increment(rdb_t *rdb); + +/* + * rdb_get_value(db) returns the current sequence number of db + */ + +uint32_t +rdb_get_value(const rdb_t *rdb); + + +#endif /* REPLAY_DB_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/rdbx.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/rdbx.h new file mode 100644 index 00000000..146fb42f --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/rdbx.h @@ -0,0 +1,186 @@ +/* + * rdbx.h + * + * replay database with extended packet indices, using a rollover counter + * + * David A. McGrew + * Cisco Systems, Inc. + * + */ + +#ifndef RDBX_H +#define RDBX_H + +#include "datatypes.h" +#include "err.h" + +/* #define ROC_TEST */ + +#ifndef ROC_TEST + +typedef uint16_t sequence_number_t; /* 16 bit sequence number */ +typedef uint32_t rollover_counter_t; /* 32 bit rollover counter */ + +#else /* use small seq_num and roc datatypes for testing purposes */ + +typedef unsigned char sequence_number_t; /* 8 bit sequence number */ +typedef uint16_t rollover_counter_t; /* 16 bit rollover counter */ + +#endif + +#define seq_num_median (1 << (8*sizeof(sequence_number_t) - 1)) +#define seq_num_max (1 << (8*sizeof(sequence_number_t))) + +/* + * An xtd_seq_num_t is a 64-bit unsigned integer used as an 'extended' + * sequence number. + */ + +typedef uint64_t xtd_seq_num_t; + + +/* + * An rdbx_t is a replay database with extended range; it uses an + * xtd_seq_num_t and a bitmask of recently received indices. + */ + +typedef struct { + xtd_seq_num_t index; + bitvector_t bitmask; +} rdbx_t; + + +/* + * rdbx_init(rdbx_ptr, ws) + * + * initializes the rdbx pointed to by its argument with the window size ws, + * setting the rollover counter and sequence number to zero + */ + +err_status_t +rdbx_init(rdbx_t *rdbx, unsigned long ws); + + +/* + * rdbx_dealloc(rdbx_ptr) + * + * frees memory associated with the rdbx + */ + +err_status_t +rdbx_dealloc(rdbx_t *rdbx); + + +/* + * rdbx_estimate_index(rdbx, guess, s) + * + * given an rdbx and a sequence number s (from a newly arrived packet), + * sets the contents of *guess to contain the best guess of the packet + * index to which s corresponds, and returns the difference between + * *guess and the locally stored synch info + */ + +int +rdbx_estimate_index(const rdbx_t *rdbx, + xtd_seq_num_t *guess, + sequence_number_t s); + +/* + * rdbx_check(rdbx, delta); + * + * rdbx_check(&r, delta) checks to see if the xtd_seq_num_t + * which is at rdbx->window_start + delta is in the rdb + * + */ + +err_status_t +rdbx_check(const rdbx_t *rdbx, int difference); + +/* + * replay_add_index(rdbx, delta) + * + * adds the xtd_seq_num_t at rdbx->window_start + delta to replay_db + * (and does *not* check if that xtd_seq_num_t appears in db) + * + * this function should be called *only* after replay_check has + * indicated that the index does not appear in the rdbx, and a mutex + * should protect the rdbx between these calls if necessary. + */ + +err_status_t +rdbx_add_index(rdbx_t *rdbx, int delta); + + +/* + * rdbx_set_roc(rdbx, roc) initalizes the rdbx_t at the location rdbx + * to have the rollover counter value roc. If that value is less than + * the current rollover counter value, then the function returns + * err_status_replay_old; otherwise, err_status_ok is returned. + * + */ + +err_status_t +rdbx_set_roc(rdbx_t *rdbx, uint32_t roc); + +/* + * rdbx_get_roc(rdbx) returns the value of the rollover counter for + * the rdbx_t pointed to by rdbx + * + */ + +xtd_seq_num_t +rdbx_get_packet_index(const rdbx_t *rdbx); + +/* + * xtd_seq_num_t functions - these are *internal* functions of rdbx, and + * shouldn't be used to manipulate rdbx internal values. use the rdbx + * api instead! + */ + +/* + * rdbx_get_ws(rdbx_ptr) + * + * gets the window size which was used to initialize the rdbx + */ + +unsigned long +rdbx_get_window_size(const rdbx_t *rdbx); + + +/* index_init(&pi) initializes a packet index pi (sets it to zero) */ + +void +index_init(xtd_seq_num_t *pi); + +/* index_advance(&pi, s) advances a xtd_seq_num_t forward by s */ + +void +index_advance(xtd_seq_num_t *pi, sequence_number_t s); + + +/* + * index_guess(local, guess, s) + * + * given a xtd_seq_num_t local (which represents the highest + * known-to-be-good index) and a sequence number s (from a newly + * arrived packet), sets the contents of *guess to contain the best + * guess of the packet index to which s corresponds, and returns the + * difference between *guess and *local + */ + +int +index_guess(const xtd_seq_num_t *local, + xtd_seq_num_t *guess, + sequence_number_t s); + + +#endif /* RDBX_H */ + + + + + + + + + diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/rtp.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/rtp.h new file mode 100644 index 00000000..0e0119cf --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/rtp.h @@ -0,0 +1,139 @@ +/* + * rtp.h + * + * rtp interface for srtp reference implementation + * + * David A. McGrew + * Cisco Systems, Inc. + * + * data types: + * + * rtp_msg_t an rtp message (the data that goes on the wire) + * rtp_sender_t sender side socket and rtp info + * rtp_receiver_t receiver side socket and rtp info + * + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef RTP_H +#define RTP_H + +#ifdef HAVE_NETINET_IN_H +# include +#elif defined HAVE_WINSOCK2_H +# include +#endif + +#include "srtp.h" + +typedef struct rtp_sender_ctx_t *rtp_sender_t; + +typedef struct rtp_receiver_ctx_t *rtp_receiver_t; + +int +rtp_sendto(rtp_sender_t sender, const void* msg, int len); + +int +rtp_recvfrom(rtp_receiver_t receiver, void *msg, int *len); + +int +rtp_receiver_init(rtp_receiver_t rcvr, int sock, + struct sockaddr_in addr, unsigned int ssrc); + +int +rtp_sender_init(rtp_sender_t sender, int sock, + struct sockaddr_in addr, unsigned int ssrc); + +/* + * srtp_sender_init(...) initializes an rtp_sender_t + */ + +int +srtp_sender_init(rtp_sender_t rtp_ctx, /* structure to be init'ed */ + struct sockaddr_in name, /* socket name */ + sec_serv_t security_services, /* sec. servs. to be used */ + unsigned char *input_key /* master key/salt in hex */ + ); + +int +srtp_receiver_init(rtp_receiver_t rtp_ctx, /* structure to be init'ed */ + struct sockaddr_in name, /* socket name */ + sec_serv_t security_services, /* sec. servs. to be used */ + unsigned char *input_key /* master key/salt in hex */ + ); + + +int +rtp_sender_init_srtp(rtp_sender_t sender, const srtp_policy_t *policy); + +int +rtp_sender_deinit_srtp(rtp_sender_t sender); + +int +rtp_receiver_init_srtp(rtp_receiver_t sender, const srtp_policy_t *policy); + +int +rtp_receiver_deinit_srtp(rtp_receiver_t sender); + + +rtp_sender_t +rtp_sender_alloc(void); + +void +rtp_sender_dealloc(rtp_sender_t rtp_ctx); + +rtp_receiver_t +rtp_receiver_alloc(void); + +void +rtp_receiver_dealloc(rtp_receiver_t rtp_ctx); + + +/* + * RTP_HEADER_LEN indicates the size of an RTP header + */ +#define RTP_HEADER_LEN 12 + +/* + * RTP_MAX_BUF_LEN defines the largest RTP packet in the rtp.c implementation + */ +#define RTP_MAX_BUF_LEN 16384 + + +#endif /* RTP_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/rtp_priv.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/rtp_priv.h new file mode 100644 index 00000000..14213866 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/rtp_priv.h @@ -0,0 +1,74 @@ +/* + * rtp_priv.h + * + * private, internal header file for RTP + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef RTP_PRIV_H +#define RTP_PRIV_H + +#include "srtp_priv.h" +#include "rtp.h" + +typedef srtp_hdr_t rtp_hdr_t; + +typedef struct { + srtp_hdr_t header; + char body[RTP_MAX_BUF_LEN]; +} rtp_msg_t; + +typedef struct rtp_sender_ctx_t { + rtp_msg_t message; + int socket; + srtp_ctx_t *srtp_ctx; + struct sockaddr_in addr; /* reciever's address */ +} rtp_sender_ctx_t; + +typedef struct rtp_receiver_ctx_t { + rtp_msg_t message; + int socket; + srtp_ctx_t *srtp_ctx; + struct sockaddr_in addr; /* receiver's address */ +} rtp_receiver_ctx_t; + + +#endif /* RTP_PRIV_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/sha1.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/sha1.h new file mode 100644 index 00000000..e3af4d4b --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/sha1.h @@ -0,0 +1,108 @@ +/* + * sha1.h + * + * interface to the Secure Hash Algorithm v.1 (SHA-1), specified in + * FIPS 180-1 + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef SHA1_H +#define SHA1_H + +#include "err.h" +#include "datatypes.h" + +typedef struct { + uint32_t H[5]; /* state vector */ + uint32_t M[16]; /* message buffer */ + int octets_in_buffer; /* octets of message in buffer */ + uint32_t num_bits_in_msg; /* total number of bits in message */ +} sha1_ctx_t; + +/* + * sha1(&ctx, msg, len, output) hashes the len octets starting at msg + * into the SHA1 context, then writes the result to the 20 octets at + * output + * + */ + +void +sha1(const uint8_t *message, int octets_in_msg, uint32_t output[5]); + +/* + * sha1_init(&ctx) initializes the SHA1 context ctx + * + * sha1_update(&ctx, msg, len) hashes the len octets starting at msg + * into the SHA1 context + * + * sha1_final(&ctx, output) performs the final processing of the SHA1 + * context and writes the result to the 20 octets at output + * + */ + +void +sha1_init(sha1_ctx_t *ctx); + +void +sha1_update(sha1_ctx_t *ctx, const uint8_t *M, int octets_in_msg); + +void +sha1_final(sha1_ctx_t *ctx, uint32_t output[5]); + +/* + * The sha1_core function is INTERNAL to SHA-1, but it is declared + * here because it is also used by the cipher SEAL 3.0 in its key + * setup algorithm. + */ + +/* + * sha1_core(M, H) computes the core sha1 compression function, where M is + * the next part of the message and H is the intermediate state {H0, + * H1, ...} + * + * this function does not do any of the padding required in the + * complete sha1 function + */ + +void +sha1_core(const uint32_t M[16], uint32_t hash_value[5]); + +#endif /* SHA1_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/srtp.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/srtp.h new file mode 100644 index 00000000..eb95e7d4 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/srtp.h @@ -0,0 +1,1006 @@ +/* + * srtp.h + * + * interface to libsrtp + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef SRTP_H +#define SRTP_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include "crypto_kernel.h" + +/** + * @defgroup SRTP Secure RTP + * + * @brief libSRTP provides functions for protecting RTP and RTCP. See + * Section @ref Overview for an introduction to the use of the library. + * + * @{ + */ + +/* + * SRTP_MASTER_KEY_LEN is the nominal master key length supported by libSRTP + */ + +#define SRTP_MASTER_KEY_LEN 30 + +/* + * SRTP_MAX_KEY_LEN is the maximum key length supported by libSRTP + */ +#define SRTP_MAX_KEY_LEN 64 + +/* + * SRTP_MAX_TAG_LEN is the maximum tag length supported by libSRTP + */ + +#define SRTP_MAX_TAG_LEN 12 + +/** + * SRTP_MAX_TRAILER_LEN is the maximum length of the SRTP trailer + * (authentication tag and MKI) supported by libSRTP. This value is + * the maximum number of octets that will be added to an RTP packet by + * srtp_protect(). + * + * @brief the maximum number of octets added by srtp_protect(). + */ +#define SRTP_MAX_TRAILER_LEN SRTP_MAX_TAG_LEN + +/* + * nota bene: since libSRTP doesn't support the use of the MKI, the + * SRTP_MAX_TRAILER_LEN value is just the maximum tag length + */ + +/** + * @brief sec_serv_t describes a set of security services. + * + * A sec_serv_t enumeration is used to describe the particular + * security services that will be applied by a particular crypto + * policy (or other mechanism). + */ + +typedef enum { + sec_serv_none = 0, /**< no services */ + sec_serv_conf = 1, /**< confidentiality */ + sec_serv_auth = 2, /**< authentication */ + sec_serv_conf_and_auth = 3 /**< confidentiality and authentication */ +} sec_serv_t; + +/** + * @brief crypto_policy_t describes a particular crypto policy that + * can be applied to an SRTP stream. + * + * A crypto_policy_t describes a particular cryptographic policy that + * can be applied to an SRTP or SRTCP stream. An SRTP session policy + * consists of a list of these policies, one for each SRTP stream + * in the session. + */ + +typedef struct crypto_policy_t { + cipher_type_id_t cipher_type; /**< An integer representing + * the type of cipher. */ + int cipher_key_len; /**< The length of the cipher key + * in octets. */ + auth_type_id_t auth_type; /**< An integer representing the + * authentication function. */ + int auth_key_len; /**< The length of the authentication + * function key in octets. */ + int auth_tag_len; /**< The length of the authentication + * tag in octets. */ + sec_serv_t sec_serv; /**< The flag indicating the security + * services to be applied. */ +} crypto_policy_t; + + +/** + * @brief ssrc_type_t describes the type of an SSRC. + * + * An ssrc_type_t enumeration is used to indicate a type of SSRC. See + * @ref srtp_policy_t for more informataion. + */ + +typedef enum { + ssrc_undefined = 0, /**< Indicates an undefined SSRC type. */ + ssrc_specific = 1, /**< Indicates a specific SSRC value */ + ssrc_any_inbound = 2, /**< Indicates any inbound SSRC value + (i.e. a value that is used in the + function srtp_unprotect()) */ + ssrc_any_outbound = 3 /**< Indicates any outbound SSRC value + (i.e. a value that is used in the + function srtp_protect()) */ +} ssrc_type_t; + +/** + * @brief An ssrc_t represents a particular SSRC value, or a `wildcard' SSRC. + * + * An ssrc_t represents a particular SSRC value (if its type is + * ssrc_specific), or a wildcard SSRC value that will match all + * outbound SSRCs (if its type is ssrc_any_outbound) or all inbound + * SSRCs (if its type is ssrc_any_inbound). + * + */ + +typedef struct { + ssrc_type_t type; /**< The type of this particular SSRC */ + unsigned int value; /**< The value of this SSRC, if it is not a wildcard */ +} ssrc_t; + + +/** + * @brief points to an EKT policy + */ +typedef struct ekt_policy_ctx_t *ekt_policy_t; + + +/** + * @brief points to EKT stream data + */ +typedef struct ekt_stream_ctx_t *ekt_stream_t; + + +/** + * @brief represents the policy for an SRTP session. + * + * A single srtp_policy_t struct represents the policy for a single + * SRTP stream, and a linked list of these elements represents the + * policy for an entire SRTP session. Each element contains the SRTP + * and SRTCP crypto policies for that stream, a pointer to the SRTP + * master key for that stream, the SSRC describing that stream, or a + * flag indicating a `wildcard' SSRC value, and a `next' field that + * holds a pointer to the next element in the list of policy elements, + * or NULL if it is the last element. + * + * The wildcard value SSRC_ANY_INBOUND matches any SSRC from an + * inbound stream that for which there is no explicit SSRC entry in + * another policy element. Similarly, the value SSRC_ANY_OUTBOUND + * will matches any SSRC from an outbound stream that does not appear + * in another policy element. Note that wildcard SSRCs &b cannot be + * used to match both inbound and outbound traffic. This restriction + * is intentional, and it allows libSRTP to ensure that no security + * lapses result from accidental re-use of SSRC values during key + * sharing. + * + * + * @warning The final element of the list @b must have its `next' pointer + * set to NULL. + */ + +typedef struct srtp_policy_t { + ssrc_t ssrc; /**< The SSRC value of stream, or the + * flags SSRC_ANY_INBOUND or + * SSRC_ANY_OUTBOUND if key sharing + * is used for this policy element. + */ + crypto_policy_t rtp; /**< SRTP crypto policy. */ + crypto_policy_t rtcp; /**< SRTCP crypto policy. */ + unsigned char *key; /**< Pointer to the SRTP master key for + * this stream. */ + ekt_policy_t ekt; /**< Pointer to the EKT policy structure + * for this stream (if any) */ + unsigned long window_size; /**< The window size to use for replay + * protection. */ + int allow_repeat_tx; /**< Whether retransmissions of + * packets with the same sequence number + * are allowed. (Note that such repeated + * transmissions must have the same RTP + * payload, or a severe security weakness + * is introduced!) */ + struct srtp_policy_t *next; /**< Pointer to next stream policy. */ +} srtp_policy_t; + + + + +/** + * @brief An srtp_t points to an SRTP session structure. + * + * The typedef srtp_t is a pointer to a structure that represents + * an SRTP session. This datatype is intentially opaque in + * order to separate the interface from the implementation. + * + * An SRTP session consists of all of the traffic sent to the RTP and + * RTCP destination transport addresses, using the RTP/SAVP (Secure + * Audio/Video Profile). A session can be viewed as a set of SRTP + * streams, each of which originates with a different participant. + */ + +typedef struct srtp_ctx_t *srtp_t; + + +/** + * @brief An srtp_stream_t points to an SRTP stream structure. + * + * The typedef srtp_stream_t is a pointer to a structure that + * represents an SRTP stream. This datatype is intentionally + * opaque in order to separate the interface from the implementation. + * + * An SRTP stream consists of all of the traffic sent to an SRTP + * session by a single participant. A session can be viewed as + * a set of streams. + * + */ +typedef struct srtp_stream_ctx_t *srtp_stream_t; + + + +/** + * @brief srtp_init() initializes the srtp library. + * + * @warning This function @b must be called before any other srtp + * functions. + */ + +err_status_t +srtp_init(void); + +/** + * @brief srtp_shutdown() de-initializes the srtp library. + * + * @warning No srtp functions may be called after calling this function. + */ + +err_status_t +srtp_shutdown(void); + +/** + * @brief srtp_protect() is the Secure RTP sender-side packet processing + * function. + * + * The function call srtp_protect(ctx, rtp_hdr, len_ptr) applies SRTP + * protection to the RTP packet rtp_hdr (which has length *len_ptr) using + * the SRTP context ctx. If err_status_ok is returned, then rtp_hdr + * points to the resulting SRTP packet and *len_ptr is the number of + * octets in that packet; otherwise, no assumptions should be made + * about the value of either data elements. + * + * The sequence numbers of the RTP packets presented to this function + * need not be consecutive, but they @b must be out of order by less + * than 2^15 = 32,768 packets. + * + * @warning This function assumes that it can write the authentication + * tag into the location in memory immediately following the RTP + * packet, and assumes that the RTP packet is aligned on a 32-bit + * boundary. + * + * @param ctx is the SRTP context to use in processing the packet. + * + * @param rtp_hdr is a pointer to the RTP packet (before the call); after + * the function returns, it points to the srtp packet. + * + * @param len_ptr is a pointer to the length in octets of the complete + * RTP packet (header and body) before the function call, and of the + * complete SRTP packet after the call, if err_status_ok was returned. + * Otherwise, the value of the data to which it points is undefined. + * + * @return + * - err_status_ok no problems + * - err_status_replay_fail rtp sequence number was non-increasing + * - @e other failure in cryptographic mechanisms + */ + +err_status_t +srtp_protect(srtp_t ctx, void *rtp_hdr, int *len_ptr); + +/** + * @brief srtp_unprotect() is the Secure RTP receiver-side packet + * processing function. + * + * The function call srtp_unprotect(ctx, srtp_hdr, len_ptr) verifies + * the Secure RTP protection of the SRTP packet pointed to by srtp_hdr + * (which has length *len_ptr), using the SRTP context ctx. If + * err_status_ok is returned, then srtp_hdr points to the resulting + * RTP packet and *len_ptr is the number of octets in that packet; + * otherwise, no assumptions should be made about the value of either + * data elements. + * + * The sequence numbers of the RTP packets presented to this function + * need not be consecutive, but they @b must be out of order by less + * than 2^15 = 32,768 packets. + * + * @warning This function assumes that the SRTP packet is aligned on a + * 32-bit boundary. + * + * @param ctx is a pointer to the srtp_t which applies to the + * particular packet. + * + * @param srtp_hdr is a pointer to the header of the SRTP packet + * (before the call). after the function returns, it points to the + * rtp packet if err_status_ok was returned; otherwise, the value of + * the data to which it points is undefined. + * + * @param len_ptr is a pointer to the length in octets of the complete + * srtp packet (header and body) before the function call, and of the + * complete rtp packet after the call, if err_status_ok was returned. + * Otherwise, the value of the data to which it points is undefined. + * + * @return + * - err_status_ok if the RTP packet is valid. + * - err_status_auth_fail if the SRTP packet failed the message + * authentication check. + * - err_status_replay_fail if the SRTP packet is a replay (e.g. packet has + * already been processed and accepted). + * - [other] if there has been an error in the cryptographic mechanisms. + * + */ + +err_status_t +srtp_unprotect(srtp_t ctx, void *srtp_hdr, int *len_ptr); + + +/** + * @brief srtp_create() allocates and initializes an SRTP session. + + * The function call srtp_create(session, policy, key) allocates and + * initializes an SRTP session context, applying the given policy and + * key. + * + * @param session is the SRTP session to which the policy is to be added. + * + * @param policy is the srtp_policy_t struct that describes the policy + * for the session. The struct may be a single element, or it may be + * the head of a list, in which case each element of the list is + * processed. It may also be NULL, in which case streams should be added + * later using srtp_add_stream(). The final element of the list @b must + * have its `next' field set to NULL. + * + * @return + * - err_status_ok if creation succeded. + * - err_status_alloc_fail if allocation failed. + * - err_status_init_fail if initialization failed. + */ + +err_status_t +srtp_create(srtp_t *session, const srtp_policy_t *policy); + + +/** + * @brief srtp_add_stream() allocates and initializes an SRTP stream + * within a given SRTP session. + * + * The function call srtp_add_stream(session, policy) allocates and + * initializes a new SRTP stream within a given, previously created + * session, applying the policy given as the other argument to that + * stream. + * + * @return values: + * - err_status_ok if stream creation succeded. + * - err_status_alloc_fail if stream allocation failed + * - err_status_init_fail if stream initialization failed. + */ + +err_status_t +srtp_add_stream(srtp_t session, + const srtp_policy_t *policy); + + +/** + * @brief srtp_remove_stream() deallocates an SRTP stream. + * + * The function call srtp_remove_stream(session, ssrc) removes + * the SRTP stream with the SSRC value ssrc from the SRTP session + * context given by the argument session. + * + * @param session is the SRTP session from which the stream + * will be removed. + * + * @param ssrc is the SSRC value of the stream to be removed. + * + * @warning Wildcard SSRC values cannot be removed from a + * session. + * + * @return + * - err_status_ok if the stream deallocation succeded. + * - [other] otherwise. + * + */ + +err_status_t +srtp_remove_stream(srtp_t session, unsigned int ssrc); + +/** + * @brief crypto_policy_set_rtp_default() sets a crypto policy + * structure to the SRTP default policy for RTP protection. + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_rtp_default(&p) sets the + * crypto_policy_t at location p to the SRTP default policy for RTP + * protection, as defined in the specification. This function is a + * convenience that helps to avoid dealing directly with the policy + * data structure. You are encouraged to initialize policy elements + * with this function call. Doing so may allow your code to be + * forward compatible with later versions of libSRTP that include more + * elements in the crypto_policy_t datatype. + * + * @return void. + * + */ + +void +crypto_policy_set_rtp_default(crypto_policy_t *p); + +/** + * @brief crypto_policy_set_rtcp_default() sets a crypto policy + * structure to the SRTP default policy for RTCP protection. + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_rtcp_default(&p) sets the + * crypto_policy_t at location p to the SRTP default policy for RTCP + * protection, as defined in the specification. This function is a + * convenience that helps to avoid dealing directly with the policy + * data structure. You are encouraged to initialize policy elements + * with this function call. Doing so may allow your code to be + * forward compatible with later versions of libSRTP that include more + * elements in the crypto_policy_t datatype. + * + * @return void. + * + */ + +void +crypto_policy_set_rtcp_default(crypto_policy_t *p); + +/** + * @brief crypto_policy_set_aes_cm_128_hmac_sha1_80() sets a crypto + * policy structure to the SRTP default policy for RTP protection. + * + * @param p is a pointer to the policy structure to be set + * + * The function crypto_policy_set_aes_cm_128_hmac_sha1_80() is a + * synonym for crypto_policy_set_rtp_default(). It conforms to the + * naming convention used in RFC 4568 (SDP Security Descriptions for + * Media Streams). + * + * @return void. + * + */ + +#define crypto_policy_set_aes_cm_128_hmac_sha1_80(p) crypto_policy_set_rtp_default(p) + + +/** + * @brief crypto_policy_set_aes_cm_128_hmac_sha1_32() sets a crypto + * policy structure to a short-authentication tag policy + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_aes_cm_128_hmac_sha1_32(&p) + * sets the crypto_policy_t at location p to use policy + * AES_CM_128_HMAC_SHA1_32 as defined in RFC 4568. + * This policy uses AES-128 + * Counter Mode encryption and HMAC-SHA1 authentication, with an + * authentication tag that is only 32 bits long. This length is + * considered adequate only for protecting audio and video media that + * use a stateless playback function. See Section 7.5 of RFC 3711 + * (http://www.ietf.org/rfc/rfc3711.txt). + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @warning This crypto policy is intended for use in SRTP, but not in + * SRTCP. It is recommended that a policy that uses longer + * authentication tags be used for SRTCP. See Section 7.5 of RFC 3711 + * (http://www.ietf.org/rfc/rfc3711.txt). + * + * @return void. + * + */ + +void +crypto_policy_set_aes_cm_128_hmac_sha1_32(crypto_policy_t *p); + + + +/** + * @brief crypto_policy_set_aes_cm_128_null_auth() sets a crypto + * policy structure to an encryption-only policy + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_aes_cm_128_null_auth(&p) sets + * the crypto_policy_t at location p to use the SRTP default cipher + * (AES-128 Counter Mode), but to use no authentication method. This + * policy is NOT RECOMMENDED unless it is unavoidable; see Section 7.5 + * of RFC 3711 (http://www.ietf.org/rfc/rfc3711.txt). + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @warning This policy is NOT RECOMMENDED for SRTP unless it is + * unavoidable, and it is NOT RECOMMENDED at all for SRTCP; see + * Section 7.5 of RFC 3711 (http://www.ietf.org/rfc/rfc3711.txt). + * + * @return void. + * + */ + +void +crypto_policy_set_aes_cm_128_null_auth(crypto_policy_t *p); + + +/** + * @brief crypto_policy_set_null_cipher_hmac_sha1_80() sets a crypto + * policy structure to an authentication-only policy + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_null_cipher_hmac_sha1_80(&p) + * sets the crypto_policy_t at location p to use HMAC-SHA1 with an 80 + * bit authentication tag to provide message authentication, but to + * use no encryption. This policy is NOT RECOMMENDED for SRTP unless + * there is a requirement to forego encryption. + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @warning This policy is NOT RECOMMENDED for SRTP unless there is a + * requirement to forego encryption. + * + * @return void. + * + */ + +void +crypto_policy_set_null_cipher_hmac_sha1_80(crypto_policy_t *p); + + +/** + * @brief crypto_policy_set_aes_cm_256_hmac_sha1_80() sets a crypto + * policy structure to a encryption and authentication policy using AES-256 + * for RTP protection. + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_aes_cm_256_hmac_sha1_80(&p) + * sets the crypto_policy_t at location p to use policy + * AES_CM_256_HMAC_SHA1_80 as defined in + * draft-ietf-avt-srtp-big-aes-03.txt. This policy uses AES-256 + * Counter Mode encryption and HMAC-SHA1 authentication, with an 80 bit + * authentication tag. + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @return void. + * + */ + +void crypto_policy_set_aes_cm_256_hmac_sha1_80(crypto_policy_t *p); + + +/** + * @brief crypto_policy_set_aes_cm_256_hmac_sha1_32() sets a crypto + * policy structure to a short-authentication tag policy using AES-256 + * encryption. + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_aes_cm_256_hmac_sha1_32(&p) + * sets the crypto_policy_t at location p to use policy + * AES_CM_256_HMAC_SHA1_32 as defined in + * draft-ietf-avt-srtp-big-aes-03.txt. This policy uses AES-256 + * Counter Mode encryption and HMAC-SHA1 authentication, with an + * authentication tag that is only 32 bits long. This length is + * considered adequate only for protecting audio and video media that + * use a stateless playback function. See Section 7.5 of RFC 3711 + * (http://www.ietf.org/rfc/rfc3711.txt). + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @warning This crypto policy is intended for use in SRTP, but not in + * SRTCP. It is recommended that a policy that uses longer + * authentication tags be used for SRTCP. See Section 7.5 of RFC 3711 + * (http://www.ietf.org/rfc/rfc3711.txt). + * + * @return void. + * + */ + +void +crypto_policy_set_aes_cm_256_hmac_sha1_32(crypto_policy_t *p); + + +/** + * @brief srtp_dealloc() deallocates storage for an SRTP session + * context. + * + * The function call srtp_dealloc(s) deallocates storage for the + * SRTP session context s. This function should be called no more + * than one time for each of the contexts allocated by the function + * srtp_create(). + * + * @param s is the srtp_t for the session to be deallocated. + * + * @return + * - err_status_ok if there no problems. + * - err_status_dealloc_fail a memory deallocation failure occured. + */ + +err_status_t +srtp_dealloc(srtp_t s); + + +/* + * @brief identifies a particular SRTP profile + * + * An srtp_profile_t enumeration is used to identify a particular SRTP + * profile (that is, a set of algorithms and parameters). These + * profiles are defined in the DTLS-SRTP draft. + */ + +typedef enum { + srtp_profile_reserved = 0, + srtp_profile_aes128_cm_sha1_80 = 1, + srtp_profile_aes128_cm_sha1_32 = 2, + srtp_profile_aes256_cm_sha1_80 = 3, + srtp_profile_aes256_cm_sha1_32 = 4, + srtp_profile_null_sha1_80 = 5, + srtp_profile_null_sha1_32 = 6, +} srtp_profile_t; + + +/** + * @brief crypto_policy_set_from_profile_for_rtp() sets a crypto policy + * structure to the appropriate value for RTP based on an srtp_profile_t + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_rtp_default(&policy, profile) + * sets the crypto_policy_t at location policy to the policy for RTP + * protection, as defined by the srtp_profile_t profile. + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @return values + * - err_status_ok no problems were encountered + * - err_status_bad_param the profile is not supported + * + */ +err_status_t +crypto_policy_set_from_profile_for_rtp(crypto_policy_t *policy, + srtp_profile_t profile); + + + + +/** + * @brief crypto_policy_set_from_profile_for_rtcp() sets a crypto policy + * structure to the appropriate value for RTCP based on an srtp_profile_t + * + * @param p is a pointer to the policy structure to be set + * + * The function call crypto_policy_set_rtcp_default(&policy, profile) + * sets the crypto_policy_t at location policy to the policy for RTCP + * protection, as defined by the srtp_profile_t profile. + * + * This function is a convenience that helps to avoid dealing directly + * with the policy data structure. You are encouraged to initialize + * policy elements with this function call. Doing so may allow your + * code to be forward compatible with later versions of libSRTP that + * include more elements in the crypto_policy_t datatype. + * + * @return values + * - err_status_ok no problems were encountered + * - err_status_bad_param the profile is not supported + * + */ +err_status_t +crypto_policy_set_from_profile_for_rtcp(crypto_policy_t *policy, + srtp_profile_t profile); + +/** + * @brief returns the master key length for a given SRTP profile + */ +unsigned int +srtp_profile_get_master_key_length(srtp_profile_t profile); + + +/** + * @brief returns the master salt length for a given SRTP profile + */ +unsigned int +srtp_profile_get_master_salt_length(srtp_profile_t profile); + +/** + * @brief appends the salt to the key + * + * The function call append_salt_to_key(k, klen, s, slen) + * copies the string s to the location at klen bytes following + * the location k. + * + * @warning There must be at least bytes_in_salt + bytes_in_key bytes + * available at the location pointed to by key. + * + */ + +void +append_salt_to_key(unsigned char *key, unsigned int bytes_in_key, + unsigned char *salt, unsigned int bytes_in_salt); + + + +/** + * @} + */ + + + +/** + * @defgroup SRTCP Secure RTCP + * @ingroup SRTP + * + * @brief Secure RTCP functions are used to protect RTCP traffic. + * + * RTCP is the control protocol for RTP. libSRTP protects RTCP + * traffic in much the same way as it does RTP traffic. The function + * srtp_protect_rtcp() applies cryptographic protections to outbound + * RTCP packets, and srtp_unprotect_rtcp() verifies the protections on + * inbound RTCP packets. + * + * A note on the naming convention: srtp_protect_rtcp() has an srtp_t + * as its first argument, and thus has `srtp_' as its prefix. The + * trailing `_rtcp' indicates the protocol on which it acts. + * + * @{ + */ + +/** + * @brief srtp_protect_rtcp() is the Secure RTCP sender-side packet + * processing function. + * + * The function call srtp_protect_rtcp(ctx, rtp_hdr, len_ptr) applies + * SRTCP protection to the RTCP packet rtcp_hdr (which has length + * *len_ptr) using the SRTP session context ctx. If err_status_ok is + * returned, then rtp_hdr points to the resulting SRTCP packet and + * *len_ptr is the number of octets in that packet; otherwise, no + * assumptions should be made about the value of either data elements. + * + * @warning This function assumes that it can write the authentication + * tag into the location in memory immediately following the RTCP + * packet, and assumes that the RTCP packet is aligned on a 32-bit + * boundary. + * + * @param ctx is the SRTP context to use in processing the packet. + * + * @param rtcp_hdr is a pointer to the RTCP packet (before the call); after + * the function returns, it points to the srtp packet. + * + * @param pkt_octet_len is a pointer to the length in octets of the + * complete RTCP packet (header and body) before the function call, + * and of the complete SRTCP packet after the call, if err_status_ok + * was returned. Otherwise, the value of the data to which it points + * is undefined. + * + * @return + * - err_status_ok if there were no problems. + * - [other] if there was a failure in + * the cryptographic mechanisms. + */ + + +err_status_t +srtp_protect_rtcp(srtp_t ctx, void *rtcp_hdr, int *pkt_octet_len); + +/** + * @brief srtp_unprotect_rtcp() is the Secure RTCP receiver-side packet + * processing function. + * + * The function call srtp_unprotect_rtcp(ctx, srtp_hdr, len_ptr) + * verifies the Secure RTCP protection of the SRTCP packet pointed to + * by srtcp_hdr (which has length *len_ptr), using the SRTP session + * context ctx. If err_status_ok is returned, then srtcp_hdr points + * to the resulting RTCP packet and *len_ptr is the number of octets + * in that packet; otherwise, no assumptions should be made about the + * value of either data elements. + * + * @warning This function assumes that the SRTCP packet is aligned on a + * 32-bit boundary. + * + * @param ctx is a pointer to the srtp_t which applies to the + * particular packet. + * + * @param srtcp_hdr is a pointer to the header of the SRTCP packet + * (before the call). After the function returns, it points to the + * rtp packet if err_status_ok was returned; otherwise, the value of + * the data to which it points is undefined. + * + * @param pkt_octet_len is a pointer to the length in octets of the + * complete SRTCP packet (header and body) before the function call, + * and of the complete rtp packet after the call, if err_status_ok was + * returned. Otherwise, the value of the data to which it points is + * undefined. + * + * @return + * - err_status_ok if the RTCP packet is valid. + * - err_status_auth_fail if the SRTCP packet failed the message + * authentication check. + * - err_status_replay_fail if the SRTCP packet is a replay (e.g. has + * already been processed and accepted). + * - [other] if there has been an error in the cryptographic mechanisms. + * + */ + +err_status_t +srtp_unprotect_rtcp(srtp_t ctx, void *srtcp_hdr, int *pkt_octet_len); + +/** + * @} + */ + +/** + * @defgroup SRTPevents SRTP events and callbacks + * @ingroup SRTP + * + * @brief libSRTP can use a user-provided callback function to + * handle events. + * + * + * libSRTP allows a user to provide a callback function to handle + * events that need to be dealt with outside of the data plane (see + * the enum srtp_event_t for a description of these events). Dealing + * with these events is not a strict necessity; they are not + * security-critical, but the application may suffer if they are not + * handled. The function srtp_set_event_handler() is used to provide + * the callback function. + * + * A default event handler that merely reports on the events as they + * happen is included. It is also possible to set the event handler + * function to NULL, in which case all events will just be silently + * ignored. + * + * @{ + */ + +/** + * @brief srtp_event_t defines events that need to be handled + * + * The enum srtp_event_t defines events that need to be handled + * outside the `data plane', such as SSRC collisions and + * key expirations. + * + * When a key expires or the maximum number of packets has been + * reached, an SRTP stream will enter an `expired' state in which no + * more packets can be protected or unprotected. When this happens, + * it is likely that you will want to either deallocate the stream + * (using srtp_stream_dealloc()), and possibly allocate a new one. + * + * When an SRTP stream expires, the other streams in the same session + * are unaffected, unless key sharing is used by that stream. In the + * latter case, all of the streams in the session will expire. + */ + +typedef enum { + event_ssrc_collision, /**< + * An SSRC collision occured. + */ + event_key_soft_limit, /**< An SRTP stream reached the soft key + * usage limit and will expire soon. + */ + event_key_hard_limit, /**< An SRTP stream reached the hard + * key usage limit and has expired. + */ + event_packet_index_limit /**< An SRTP stream reached the hard + * packet limit (2^48 packets). + */ +} srtp_event_t; + +/** + * @brief srtp_event_data_t is the structure passed as a callback to + * the event handler function + * + * The struct srtp_event_data_t holds the data passed to the event + * handler function. + */ + +typedef struct srtp_event_data_t { + srtp_t session; /**< The session in which the event happend. */ + srtp_stream_t stream; /**< The stream in which the event happend. */ + srtp_event_t event; /**< An enum indicating the type of event. */ +} srtp_event_data_t; + +/** + * @brief srtp_event_handler_func_t is the function prototype for + * the event handler. + * + * The typedef srtp_event_handler_func_t is the prototype for the + * event handler function. It has as its only argument an + * srtp_event_data_t which describes the event that needs to be handled. + * There can only be a single, global handler for all events in + * libSRTP. + */ + +typedef void (srtp_event_handler_func_t)(srtp_event_data_t *data); + +/** + * @brief sets the event handler to the function supplied by the caller. + * + * The function call srtp_install_event_handler(func) sets the event + * handler function to the value func. The value NULL is acceptable + * as an argument; in this case, events will be ignored rather than + * handled. + * + * @param func is a pointer to a fuction that takes an srtp_event_data_t + * pointer as an argument and returns void. This function + * will be used by libSRTP to handle events. + */ + +err_status_t +srtp_install_event_handler(srtp_event_handler_func_t func); + +/** + * @} + */ +/* in host order, so outside the #if */ +#define SRTCP_E_BIT 0x80000000 +/* for byte-access */ +#define SRTCP_E_BYTE_BIT 0x80 +#define SRTCP_INDEX_MASK 0x7fffffff + +#ifdef __cplusplus +} +#endif + +#endif /* SRTP_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/srtp_priv.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/srtp_priv.h new file mode 100644 index 00000000..cf2274eb --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/srtp_priv.h @@ -0,0 +1,256 @@ +/* + * srtp_priv.h + * + * private internal data structures and functions for libSRTP + * + * David A. McGrew + * Cisco Systems, Inc. + */ +/* + * + * Copyright (c) 2001-2006 Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef SRTP_PRIV_H +#define SRTP_PRIV_H + +#include "srtp.h" +#include "rdbx.h" +#include "rdb.h" +#include "integers.h" + +/* + * an srtp_hdr_t represents the srtp header + * + * in this implementation, an srtp_hdr_t is assumed to be 32-bit aligned + * + * (note that this definition follows that of RFC 1889 Appendix A, but + * is not identical) + */ + +#ifndef WORDS_BIGENDIAN + +/* + * srtp_hdr_t represents an RTP or SRTP header. The bit-fields in + * this structure should be declared "unsigned int" instead of + * "unsigned char", but doing so causes the MS compiler to not + * fully pack the bit fields. + */ + +typedef struct { + unsigned char cc:4; /* CSRC count */ + unsigned char x:1; /* header extension flag */ + unsigned char p:1; /* padding flag */ + unsigned char version:2; /* protocol version */ + unsigned char pt:7; /* payload type */ + unsigned char m:1; /* marker bit */ + uint16_t seq; /* sequence number */ + uint32_t ts; /* timestamp */ + uint32_t ssrc; /* synchronization source */ +} srtp_hdr_t; + +#else /* BIG_ENDIAN */ + +typedef struct { + unsigned char version:2; /* protocol version */ + unsigned char p:1; /* padding flag */ + unsigned char x:1; /* header extension flag */ + unsigned char cc:4; /* CSRC count */ + unsigned char m:1; /* marker bit */ + unsigned pt:7; /* payload type */ + uint16_t seq; /* sequence number */ + uint32_t ts; /* timestamp */ + uint32_t ssrc; /* synchronization source */ +} srtp_hdr_t; + +#endif + +typedef struct { + uint16_t profile_specific; /* profile-specific info */ + uint16_t length; /* number of 32-bit words in extension */ +} srtp_hdr_xtnd_t; + + +/* + * srtcp_hdr_t represents a secure rtcp header + * + * in this implementation, an srtcp header is assumed to be 32-bit + * alinged + */ + +#ifndef WORDS_BIGENDIAN + +typedef struct { + unsigned char rc:5; /* reception report count */ + unsigned char p:1; /* padding flag */ + unsigned char version:2; /* protocol version */ + unsigned char pt:8; /* payload type */ + uint16_t len; /* length */ + uint32_t ssrc; /* synchronization source */ +} srtcp_hdr_t; + +typedef struct { + unsigned int index:31; /* srtcp packet index in network order! */ + unsigned int e:1; /* encrypted? 1=yes */ + /* optional mikey/etc go here */ + /* and then the variable-length auth tag */ +} srtcp_trailer_t; + + +#else /* BIG_ENDIAN */ + +typedef struct { + unsigned char version:2; /* protocol version */ + unsigned char p:1; /* padding flag */ + unsigned char rc:5; /* reception report count */ + unsigned char pt:8; /* payload type */ + uint16_t len; /* length */ + uint32_t ssrc; /* synchronization source */ +} srtcp_hdr_t; + +typedef struct { + unsigned int version:2; /* protocol version */ + unsigned int p:1; /* padding flag */ + unsigned int count:5; /* varies by packet type */ + unsigned int pt:8; /* payload type */ + uint16_t length; /* len of uint32s of packet less header */ +} rtcp_common_t; + +typedef struct { + unsigned int e:1; /* encrypted? 1=yes */ + unsigned int index:31; /* srtcp packet index */ + /* optional mikey/etc go here */ + /* and then the variable-length auth tag */ +} srtcp_trailer_t; + +#endif + + +/* + * the following declarations are libSRTP internal functions + */ + +/* + * srtp_get_stream(ssrc) returns a pointer to the stream corresponding + * to ssrc, or NULL if no stream exists for that ssrc + */ + +srtp_stream_t +srtp_get_stream(srtp_t srtp, uint32_t ssrc); + + +/* + * srtp_stream_init_keys(s, k) (re)initializes the srtp_stream_t s by + * deriving all of the needed keys using the KDF and the key k. + */ + + +err_status_t +srtp_stream_init_keys(srtp_stream_t srtp, const void *key); + +/* + * srtp_stream_init(s, p) initializes the srtp_stream_t s to + * use the policy at the location p + */ +err_status_t +srtp_stream_init(srtp_stream_t srtp, + const srtp_policy_t *p); + + +/* + * libsrtp internal datatypes + */ + +typedef enum direction_t { + dir_unknown = 0, + dir_srtp_sender = 1, + dir_srtp_receiver = 2 +} direction_t; + +/* + * an srtp_stream_t has its own SSRC, encryption key, authentication + * key, sequence number, and replay database + * + * note that the keys might not actually be unique, in which case the + * cipher_t and auth_t pointers will point to the same structures + */ + +typedef struct srtp_stream_ctx_t { + uint32_t ssrc; + cipher_t *rtp_cipher; + auth_t *rtp_auth; + rdbx_t rtp_rdbx; + sec_serv_t rtp_services; + cipher_t *rtcp_cipher; + auth_t *rtcp_auth; + rdb_t rtcp_rdb; + sec_serv_t rtcp_services; + key_limit_ctx_t *limit; + direction_t direction; + int allow_repeat_tx; + ekt_stream_t ekt; + struct srtp_stream_ctx_t *next; /* linked list of streams */ +} srtp_stream_ctx_t; + + +/* + * an srtp_ctx_t holds a stream list and a service description + */ + +typedef struct srtp_ctx_t { + srtp_stream_ctx_t *stream_list; /* linked list of streams */ + srtp_stream_ctx_t *stream_template; /* act as template for other streams */ +} srtp_ctx_t; + + + +/* + * srtp_handle_event(srtp, srtm, evnt) calls the event handling + * function, if there is one. + * + * This macro is not included in the documentation as it is + * an internal-only function. + */ + +#define srtp_handle_event(srtp, strm, evnt) \ + if(srtp_event_handler) { \ + srtp_event_data_t data; \ + data.session = srtp; \ + data.stream = strm; \ + data.event = evnt; \ + srtp_event_handler(&data); \ +} + + +#endif /* SRTP_PRIV_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/stat.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/stat.h new file mode 100644 index 00000000..e28b1314 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/stat.h @@ -0,0 +1,69 @@ +/* + * stats.h + * + * interface to statistical test functions + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright(c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef STAT_H +#define STAT_H + +#include "datatypes.h" /* for uint8_t */ +#include "err.h" /* for err_status_t */ +#include "rand_source.h" /* for rand_source_func_t definition */ + +err_status_t +stat_test_monobit(uint8_t *data); + +err_status_t +stat_test_poker(uint8_t *data); + +err_status_t +stat_test_runs(uint8_t *data); + +err_status_t +stat_test_rand_source(rand_source_func_t rs); + +err_status_t +stat_test_rand_source_with_repetition(rand_source_func_t source, unsigned num_trials); + +#endif /* STAT_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/ut_sim.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/ut_sim.h new file mode 100644 index 00000000..c25feeb6 --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/ut_sim.h @@ -0,0 +1,80 @@ +/* + * ut-sim.h + * + * an unreliable transport simulator + * (for testing replay databases and suchlike) + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +/* + * + * Copyright (c) 2001-2006, Cisco Systems, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * Neither the name of the Cisco Systems, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + + +#ifndef UT_SIM_H +#define UT_SIM_H + +#include "integers.h" /* for uint32_t */ + +#define UT_BUF 160 /* maximum amount of packet reorder */ + +typedef struct { + uint32_t index; + uint32_t buffer[UT_BUF]; +} ut_connection; + +/* + * ut_init(&u) initializes the ut_connection + * + * this function should always be the first one called on a new + * ut_connection + */ + +void +ut_init(ut_connection *utc); + +/* + * ut_next_index(&u) returns the next index from the simulated + * unreliable connection + */ + +uint32_t +ut_next_index(ut_connection *utc); + + +#endif /* UT_SIM_H */ diff --git a/branches/2.0/doubango/thirdparties/win32/include/srtp/xfm.h b/branches/2.0/doubango/thirdparties/win32/include/srtp/xfm.h new file mode 100644 index 00000000..5837149b --- /dev/null +++ b/branches/2.0/doubango/thirdparties/win32/include/srtp/xfm.h @@ -0,0 +1,139 @@ +/* + * xfm.h + * + * interface for abstract crypto transform + * + * David A. McGrew + * Cisco Systems, Inc. + */ + +#ifndef XFM_H +#define XFM_H + +#include "crypto_kernel.h" +#include "err.h" + +/** + * @defgroup Crypto Cryptography + * + * A simple interface to an abstract cryptographic transform that + * provides both confidentiality and message authentication. + * + * @{ + */ + +/** + * @brief applies a crypto transform + * + * The function pointer xfm_func_t points to a function that + * implements a crypto transform, and provides a uniform API for + * accessing crypto mechanisms. + * + * @param key location of secret key + * + * @param clear data to be authenticated only + * + * @param clear_len length of data to be authenticated only + * + * @param iv location to write the Initialization Vector (IV) + * + * @param protect location of the data to be encrypted and + * authenticated (before the function call), and the ciphertext + * and authentication tag (after the call) + * + * @param protected_len location of the length of the data to be + * encrypted and authenticated (before the function call), and the + * length of the ciphertext (after the call) + * + * @param auth_tag location to write auth tag + */ + +typedef err_status_t (*xfm_func_t) + (void *key, + void *clear, + unsigned clear_len, + void *iv, + void *protect, + unsigned *protected_len, + void *auth_tag + ); + +typedef +err_status_t (*xfm_inv_t) + (void *key, /* location of secret key */ + void *clear, /* data to be authenticated only */ + unsigned clear_len, /* length of data to be authenticated only */ + void *iv, /* location of iv */ + void *opaque, /* data to be decrypted and authenticated */ + unsigned *opaque_len, /* location of the length of data to be + * decrypted and authd (before and after) + */ + void *auth_tag /* location of auth tag */ + ); + +typedef struct xfm_ctx_t { + xfm_func_t func; + xfm_inv_t inv; + unsigned key_len; + unsigned iv_len; + unsigned auth_tag_len; +} xfm_ctx_t; + +typedef xfm_ctx_t *xfm_t; + +#define xfm_get_key_len(xfm) ((xfm)->key_len) + +#define xfm_get_iv_len(xfm) ((xfm)->iv_len) + +#define xfm_get_auth_tag_len(xfm) ((xfm)->auth_tag_len) + + +/* cryptoalgo - 5/28 */ + +typedef err_status_t (*cryptoalg_func_t) + (void *key, + void *clear, + unsigned clear_len, + void *iv, + void *opaque, + unsigned *opaque_len + ); + +typedef +err_status_t (*cryptoalg_inv_t) + (void *key, /* location of secret key */ + void *clear, /* data to be authenticated only */ + unsigned clear_len, /* length of data to be authenticated only */ + void *iv, /* location of iv */ + void *opaque, /* data to be decrypted and authenticated */ + unsigned *opaque_len /* location of the length of data to be + * decrypted and authd (before and after) + */ + ); + +typedef struct cryptoalg_ctx_t { + cryptoalg_func_t enc; + cryptoalg_inv_t dec; + unsigned key_len; + unsigned iv_len; + unsigned auth_tag_len; + unsigned max_expansion; +} cryptoalg_ctx_t; + +typedef cryptoalg_ctx_t *cryptoalg_t; + +#define cryptoalg_get_key_len(cryptoalg) ((cryptoalg)->key_len) + +#define cryptoalg_get_iv_len(cryptoalg) ((cryptoalg)->iv_len) + +#define cryptoalg_get_auth_tag_len(cryptoalg) ((cryptoalg)->auth_tag_len) + + + +/** + * @} + */ + +#endif /* XFM_H */ + + diff --git a/branches/2.0/doubango/thirdparties/win32/lib/srtp/libsrtp.a b/branches/2.0/doubango/thirdparties/win32/lib/srtp/libsrtp.a new file mode 100644 index 0000000000000000000000000000000000000000..ec21a291de6fec144f84f16bc517c25b9d52c014 GIT binary patch literal 125182 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%0Dv9< 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

0X$DYdBH&Ldm(L?uCm(=w3MKak>|B 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%0D>IWnaZ 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

(YG1FW$iO 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

$`vE}PA0fOCX> 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

F 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

5mY1BU8A56q~|?;HV$;2TQh*hs?mX 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"wcS!_M$!Ry(!$D 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

jBd_}abN;hh@jd-qPUz~hN; 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�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

-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

  • Dz*7mxi7pG|e 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 z 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%0DS!zj3_I7%Zd=Rz#6LFU)7_rZ~ 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
    #K`ZYT^BWXnF?x7(&<`@nh!87n=L} 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 z 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 z

    Dun%P7{tX)1DBz8OkxC=cCH{71|S}_PfONK@9 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%0AVo^ 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

    -Qc`02ZIkdRZhG!b&QH1&HIEF%T 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 z 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�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

    >r#-#?Ehv`&{}pihtna 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%0A`I?ijbU@wN>|;*u53zhy%`w^U}_RY5o>I5@s$ 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%0AZX2EeoqVs4W4`M-EBI!+ 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