|
|
|
@ -122,27 +122,27 @@ enum { |
|
|
|
#define IS_OWN_CALL(c) !IS_FOREIGN_CALL(c) |
|
|
|
|
|
|
|
/* flags shared by several of the structs below */ |
|
|
|
#define SHARED_FLAG_IMPLICIT_RTCP 0x00000001 |
|
|
|
#define SHARED_FLAG_ASYMMETRIC 0x00000002 |
|
|
|
#define SHARED_FLAG_SEND 0x00000004 |
|
|
|
#define SHARED_FLAG_RECV 0x00000008 |
|
|
|
#define SHARED_FLAG_RTCP_MUX 0x00000010 |
|
|
|
#define SHARED_FLAG_SETUP_ACTIVE 0x00000020 |
|
|
|
#define SHARED_FLAG_SETUP_PASSIVE 0x00000040 |
|
|
|
#define SHARED_FLAG_ICE 0x00000080 |
|
|
|
#define SHARED_FLAG_STRICT_SOURCE 0x00000100 |
|
|
|
#define SHARED_FLAG_MEDIA_HANDOVER 0x00000200 |
|
|
|
#define SHARED_FLAG_TRICKLE_ICE 0x00000400 |
|
|
|
#define SHARED_FLAG_ICE_LITE_PEER 0x00000800 |
|
|
|
#define SHARED_FLAG_UNIDIRECTIONAL 0x00001000 |
|
|
|
#define SHARED_FLAG_RTCP_FB 0x00002000 |
|
|
|
#define SHARED_FLAG_LEGACY_OSRTP 0x00004000 |
|
|
|
#define SHARED_FLAG_LEGACY_OSRTP_REV 0x00008000 |
|
|
|
/* empty range in-between */ |
|
|
|
#define SHARED_FLAG_END_OF_CANDIDATES 0x40000000LL |
|
|
|
#define SHARED_FLAG_IMPLICIT_RTCP (1LL << 0) |
|
|
|
#define SHARED_FLAG_ASYMMETRIC (1LL << 1) |
|
|
|
#define SHARED_FLAG_SEND (1LL << 2) |
|
|
|
#define SHARED_FLAG_RECV (1LL << 3) |
|
|
|
#define SHARED_FLAG_RTCP_MUX (1LL << 4) |
|
|
|
#define SHARED_FLAG_SETUP_ACTIVE (1LL << 5) |
|
|
|
#define SHARED_FLAG_SETUP_PASSIVE (1LL << 6) |
|
|
|
#define SHARED_FLAG_ICE (1LL << 7) |
|
|
|
#define SHARED_FLAG_STRICT_SOURCE (1LL << 8) |
|
|
|
#define SHARED_FLAG_MEDIA_HANDOVER (1LL << 9) |
|
|
|
#define SHARED_FLAG_TRICKLE_ICE (1LL << 10) |
|
|
|
#define SHARED_FLAG_ICE_LITE_PEER (1LL << 11) |
|
|
|
#define SHARED_FLAG_UNIDIRECTIONAL (1LL << 12) |
|
|
|
#define SHARED_FLAG_RTCP_FB (1LL << 13) |
|
|
|
#define SHARED_FLAG_LEGACY_OSRTP (1LL << 14) |
|
|
|
#define SHARED_FLAG_LEGACY_OSRTP_REV (1LL << 15) |
|
|
|
/* empty range [16 - 29] in-between for non-shared flags */ |
|
|
|
#define SHARED_FLAG_END_OF_CANDIDATES (1LL << 30) |
|
|
|
|
|
|
|
/* struct stream_params */ |
|
|
|
#define SP_FLAG_NO_RTCP 0x00010000 |
|
|
|
#define SP_FLAG_NO_RTCP (1LL << 16) |
|
|
|
#define SP_FLAG_IMPLICIT_RTCP SHARED_FLAG_IMPLICIT_RTCP |
|
|
|
#define SP_FLAG_RTCP_MUX SHARED_FLAG_RTCP_MUX |
|
|
|
#define SP_FLAG_SEND SHARED_FLAG_SEND |
|
|
|
@ -162,93 +162,94 @@ enum { |
|
|
|
#define SP_FLAG_END_OF_CANDIDATES SHARED_FLAG_END_OF_CANDIDATES |
|
|
|
|
|
|
|
/* struct packet_stream */ |
|
|
|
#define PS_FLAG_RTP 0x00010000 |
|
|
|
#define PS_FLAG_RTCP 0x00020000 |
|
|
|
#define PS_FLAG_RTP (1LL << 16) |
|
|
|
#define PS_FLAG_RTCP (1LL << 17) |
|
|
|
#define PS_FLAG_IMPLICIT_RTCP SHARED_FLAG_IMPLICIT_RTCP |
|
|
|
#define PS_FLAG_FALLBACK_RTCP 0x00040000 |
|
|
|
#define PS_FLAG_RECEIVED 0x00080000 |
|
|
|
#define PS_FLAG_FILLED 0x00100000 |
|
|
|
#define PS_FLAG_CONFIRMED 0x00200000 |
|
|
|
#define PS_FLAG_KERNELIZED 0x00400000 |
|
|
|
#define PS_FLAG_NO_KERNEL_SUPPORT 0x00800000 |
|
|
|
#define PS_FLAG_UNUSED 0x01000000 |
|
|
|
#define PS_FLAG_FINGERPRINT_VERIFIED 0x02000000 |
|
|
|
#define PS_FLAG_FALLBACK_RTCP (1LL << 18) |
|
|
|
#define PS_FLAG_RECEIVED (1LL << 19) |
|
|
|
#define PS_FLAG_FILLED (1LL << 20) |
|
|
|
#define PS_FLAG_CONFIRMED (1LL << 21) |
|
|
|
#define PS_FLAG_KERNELIZED (1LL << 22) |
|
|
|
#define PS_FLAG_NO_KERNEL_SUPPORT (1LL << 23) |
|
|
|
#define PS_FLAG_UNUSED (1LL << 24) |
|
|
|
#define PS_FLAG_FINGERPRINT_VERIFIED (1LL << 25) |
|
|
|
#define PS_FLAG_STRICT_SOURCE SHARED_FLAG_STRICT_SOURCE |
|
|
|
#define PS_FLAG_MEDIA_HANDOVER SHARED_FLAG_MEDIA_HANDOVER |
|
|
|
#define PS_FLAG_ICE SHARED_FLAG_ICE |
|
|
|
#define PS_FLAG_ZERO_ADDR 0x04000000 |
|
|
|
#define PS_FLAG_PIERCE_NAT 0x08000000 |
|
|
|
#define PS_FLAG_NAT_WAIT 0x10000000 |
|
|
|
#define PS_FLAG_ZERO_ADDR (1LL << 26) |
|
|
|
#define PS_FLAG_PIERCE_NAT (1LL << 27) |
|
|
|
#define PS_FLAG_NAT_WAIT (1LL << 28) |
|
|
|
|
|
|
|
/* struct call_media */ |
|
|
|
#define MEDIA_FLAG_INITIALIZED 0x00010000 |
|
|
|
#define MEDIA_FLAG_INITIALIZED (1LL << 16) |
|
|
|
#define MEDIA_FLAG_ASYMMETRIC SHARED_FLAG_ASYMMETRIC |
|
|
|
#define MEDIA_FLAG_UNIDIRECTIONAL SHARED_FLAG_UNIDIRECTIONAL |
|
|
|
#define MEDIA_FLAG_SEND SHARED_FLAG_SEND |
|
|
|
#define MEDIA_FLAG_RECV SHARED_FLAG_RECV |
|
|
|
#define MEDIA_FLAG_RTCP_MUX SHARED_FLAG_RTCP_MUX |
|
|
|
#define MEDIA_FLAG_RTCP_MUX_OVERRIDE 0x00020000 |
|
|
|
#define MEDIA_FLAG_DTLS 0x00040000 |
|
|
|
#define MEDIA_FLAG_SDES 0x00080000 |
|
|
|
#define MEDIA_FLAG_RTCP_MUX_OVERRIDE (1LL << 17) |
|
|
|
#define MEDIA_FLAG_DTLS (1LL << 18) |
|
|
|
#define MEDIA_FLAG_SDES (1LL << 19) |
|
|
|
#define MEDIA_FLAG_SETUP_ACTIVE SHARED_FLAG_SETUP_ACTIVE |
|
|
|
#define MEDIA_FLAG_SETUP_PASSIVE SHARED_FLAG_SETUP_PASSIVE |
|
|
|
#define MEDIA_FLAG_PASSTHRU 0x00100000 |
|
|
|
#define MEDIA_FLAG_PASSTHRU (1LL << 20) |
|
|
|
#define MEDIA_FLAG_ICE SHARED_FLAG_ICE |
|
|
|
#define MEDIA_FLAG_TRICKLE_ICE SHARED_FLAG_TRICKLE_ICE |
|
|
|
#define MEDIA_FLAG_ICE_LITE_PEER SHARED_FLAG_ICE_LITE_PEER |
|
|
|
#define MEDIA_FLAG_ICE_CONTROLLING 0x00200000 |
|
|
|
#define MEDIA_FLAG_LOOP_CHECK 0x00400000 |
|
|
|
#define MEDIA_FLAG_REORDER_FORCED 0x00800000 |
|
|
|
#define MEDIA_FLAG_PTIME_OVERRIDE 0x01000000 |
|
|
|
#define MEDIA_FLAG_ICE_CONTROLLING (1LL << 21) |
|
|
|
#define MEDIA_FLAG_LOOP_CHECK (1LL << 22) |
|
|
|
#define MEDIA_FLAG_REORDER_FORCED (1LL << 23) |
|
|
|
#define MEDIA_FLAG_PTIME_OVERRIDE (1LL << 24) |
|
|
|
#define MEDIA_FLAG_RTCP_FB SHARED_FLAG_RTCP_FB |
|
|
|
#define MEDIA_FLAG_GENERATOR 0x02000000 |
|
|
|
#define MEDIA_FLAG_ICE_LITE_SELF 0x04000000 |
|
|
|
#define MEDIA_FLAG_RTCP_GEN 0x08000000 |
|
|
|
#define MEDIA_FLAG_ECHO 0x10000000 |
|
|
|
#define MEDIA_FLAG_BLACKHOLE 0x20000000 |
|
|
|
#define MEDIA_FLAG_AUDIO_PLAYER 0x80000000 |
|
|
|
#define MEDIA_FLAG_GENERATOR (1LL << 25) |
|
|
|
#define MEDIA_FLAG_ICE_LITE_SELF (1LL << 26) |
|
|
|
#define MEDIA_FLAG_RTCP_GEN (1LL << 27) |
|
|
|
#define MEDIA_FLAG_ECHO (1LL << 28) |
|
|
|
#define MEDIA_FLAG_BLACKHOLE (1LL << 29) |
|
|
|
// 30 used by SHARED_FLAG_END_OF_CANDIDATES |
|
|
|
#define MEDIA_FLAG_AUDIO_PLAYER (1LL << 31) |
|
|
|
#define MEDIA_FLAG_END_OF_CANDIDATES SHARED_FLAG_END_OF_CANDIDATES |
|
|
|
#define MEDIA_FLAG_LEGACY_OSRTP SHARED_FLAG_LEGACY_OSRTP |
|
|
|
#define MEDIA_FLAG_LEGACY_OSRTP_REV SHARED_FLAG_LEGACY_OSRTP_REV |
|
|
|
#define MEDIA_FLAG_TRANSCODING 0x100000000LL |
|
|
|
#define MEDIA_FLAG_BLOCK_EGRESS 0x200000000LL |
|
|
|
#define MEDIA_FLAG_TRANSCODING (1LL << 32) |
|
|
|
#define MEDIA_FLAG_BLOCK_EGRESS (1LL << 33) |
|
|
|
/* MoH sendrecv flag handling, if set then hold is on-going */ |
|
|
|
#define MEDIA_FLAG_FAKE_SENDRECV 0x400000000LL |
|
|
|
#define MEDIA_FLAG_FAKE_SENDRECV (1LL << 34) |
|
|
|
/* in common with previous, if set, then answer has to be recvonly, |
|
|
|
* if not set, then inactive. |
|
|
|
*/ |
|
|
|
#define MEDIA_FLAG_REAL_SENDONLY 0x800000000LL |
|
|
|
#define MEDIA_FLAG_REAL_SENDONLY (1LL << 35) |
|
|
|
|
|
|
|
/* struct call_monologue */ |
|
|
|
#define ML_FLAG_REC_FORWARDING 0x00010000 |
|
|
|
#define ML_FLAG_INJECT_DTMF 0x00020000 |
|
|
|
#define ML_FLAG_DTMF_INJECTION_ACTIVE 0x00040000 |
|
|
|
#define ML_FLAG_DETECT_DTMF 0x00080000 |
|
|
|
#define ML_FLAG_NO_RECORDING 0x00100000 |
|
|
|
#define ML_FLAG_FINAL_RESPONSE 0x00200000 |
|
|
|
#define ML_FLAG_BLOCK_SHORT 0x00400000 |
|
|
|
#define ML_FLAG_BLOCK_MEDIA 0x00800000 |
|
|
|
#define ML_FLAG_SILENCE_MEDIA 0x01000000 |
|
|
|
#define ML_FLAG_MOH_SENDRECV 0x02000000 |
|
|
|
#define ML_FLAG_MOH_ZEROCONN 0x04000000 |
|
|
|
#define ML_FLAG_FORCE_TRANSCODING 0x08000000 |
|
|
|
#define ML_FLAG_REC_FORWARDING (1LL << 16) |
|
|
|
#define ML_FLAG_INJECT_DTMF (1LL << 17) |
|
|
|
#define ML_FLAG_DTMF_INJECTION_ACTIVE (1LL << 18) |
|
|
|
#define ML_FLAG_DETECT_DTMF (1LL << 19) |
|
|
|
#define ML_FLAG_NO_RECORDING (1LL << 20) |
|
|
|
#define ML_FLAG_FINAL_RESPONSE (1LL << 21) |
|
|
|
#define ML_FLAG_BLOCK_SHORT (1LL << 22) |
|
|
|
#define ML_FLAG_BLOCK_MEDIA (1LL << 23) |
|
|
|
#define ML_FLAG_SILENCE_MEDIA (1LL << 24) |
|
|
|
#define ML_FLAG_MOH_SENDRECV (1LL << 25) |
|
|
|
#define ML_FLAG_MOH_ZEROCONN (1LL << 26) |
|
|
|
#define ML_FLAG_FORCE_TRANSCODING (1LL << 27) |
|
|
|
|
|
|
|
/* call_t */ |
|
|
|
#define CALL_FLAG_IPV4_OFFER 0x00010000 |
|
|
|
#define CALL_FLAG_IPV6_OFFER 0x00020000 |
|
|
|
#define CALL_FLAG_IPV4_ANSWER 0x00040000 |
|
|
|
#define CALL_FLAG_IPV6_ANSWER 0x00080000 |
|
|
|
#define CALL_FLAG_MEDIA_COUNTED 0x00100000 |
|
|
|
#define CALL_FLAG_RECORDING_ON 0x00200000 |
|
|
|
#define CALL_FLAG_REC_FORWARDING 0x00400000 |
|
|
|
#define CALL_FLAG_DROP_TRAFFIC 0x00800000 |
|
|
|
#define CALL_FLAG_FOREIGN 0x01000000 // created_via_redis_notify call |
|
|
|
#define CALL_FLAG_FOREIGN_MEDIA 0x02000000 // for calls taken over, tracks whether we have media |
|
|
|
#define CALL_FLAG_DISABLE_JB 0x04000000 |
|
|
|
#define CALL_FLAG_DEBUG 0x08000000 |
|
|
|
#define CALL_FLAG_BLOCK_MEDIA 0x10000000 |
|
|
|
#define CALL_FLAG_SILENCE_MEDIA 0x20000000 |
|
|
|
#define CALL_FLAG_NO_REC_DB 0x40000000 |
|
|
|
#define CALL_FLAG_IPV4_OFFER (1LL << 16) |
|
|
|
#define CALL_FLAG_IPV6_OFFER (1LL << 17) |
|
|
|
#define CALL_FLAG_IPV4_ANSWER (1LL << 18) |
|
|
|
#define CALL_FLAG_IPV6_ANSWER (1LL << 19) |
|
|
|
#define CALL_FLAG_MEDIA_COUNTED (1LL << 20) |
|
|
|
#define CALL_FLAG_RECORDING_ON (1LL << 21) |
|
|
|
#define CALL_FLAG_REC_FORWARDING (1LL << 22) |
|
|
|
#define CALL_FLAG_DROP_TRAFFIC (1LL << 23) |
|
|
|
#define CALL_FLAG_FOREIGN (1LL << 24) // created_via_redis_notify call |
|
|
|
#define CALL_FLAG_FOREIGN_MEDIA (1LL << 25) // for calls taken over, tracks whether we have media |
|
|
|
#define CALL_FLAG_DISABLE_JB (1LL << 26) |
|
|
|
#define CALL_FLAG_DEBUG (1LL << 27) |
|
|
|
#define CALL_FLAG_BLOCK_MEDIA (1LL << 28) |
|
|
|
#define CALL_FLAG_SILENCE_MEDIA (1LL << 29) |
|
|
|
#define CALL_FLAG_NO_REC_DB (1LL << 30) |
|
|
|
|
|
|
|
/* access macros */ |
|
|
|
#define SP_ISSET(p, f) bf_isset(&(p)->sp_flags, SP_FLAG_ ## f) |
|
|
|
|