Commit Graph

519 Commits (c5876252eb251ecf70e66770cd7dcd212d41ed28)

Author SHA1 Message Date
Richard Fuchs b593d57e21 TT#37400 do not answer with ICE attributes if no ICE was offered
7 years ago
Richard Fuchs 9e4d140e7b TT#49045 add new flag to leave media direction attrs unchanged
7 years ago
Richard Fuchs 98de5697e6 TT#48650 use constant string hashing for string lookups
7 years ago
Richard Fuchs c61d7f129e add new `full rtcp attribute` flag
7 years ago
Richard Fuchs d39c2dbb43 TT#45472 properly accept support for trickle ICE
7 years ago
Richard Fuchs d08d84071a TT#45472 support SDP fragments for trickle ICE
7 years ago
Richard Fuchs 3c50130c7b TT#45472 process and retain media ID strings (a=mid)
7 years ago
Richard Fuchs fb1083f8e3 Add option to leave base64 padding for a=crypto in place
7 years ago
Richard Fuchs 347f1c68f9 suppress empty a=rtpmap lines
7 years ago
Richard Fuchs cab9d895b2 TT#42500 fix only one crypto suite being offered.
8 years ago
Richard Fuchs 135dfb73ae fix handling of >1 consecutive media ports
8 years ago
Richard Fuchs 178391e177 fix possible core dump when processing certain malformed SDP
8 years ago
Richard Fuchs 0db5e226e5 fix payload type tracking for transcoding situations
8 years ago
Richard Fuchs 092f8da3c6 use str_token_sep for SDP token extraction
8 years ago
Richard Fuchs 7986ca0860 TT#30900 support specifying codec parameters for transcoding
8 years ago
Richard Fuchs 266a1fbc8b TT#31404 support custom ptime and repacketization for sampled codecs
8 years ago
Richard Fuchs b0bc679806 TT#28163 take number of channels from SDP into account
8 years ago
Richard Fuchs f801240164 TT#30570 replace "chopper" iovec with GString
8 years ago
Richard Fuchs c3585b04be TT#30405 reprint a=rtpmap and a=fmtp for SDP output
8 years ago
Richard Fuchs 8715d40242 TT#30405 codec matchup and handler functions
8 years ago
Richard Fuchs 7b4424091b TT#31752 fix segfault on empty a=rtcp
8 years ago
Richard Fuchs 1477f9796f TT#29151 add 'loop protect' feature
8 years ago
Richard Fuchs ca78747c8c TT#30405 rename media->rtp_payload_types to ->codecs for brevity
8 years ago
Richard Fuchs d31fb36f6e TT#30403 parse and retain a=fmtp infos
8 years ago
Richard Fuchs d7dd7421e6 TT#30403 implement codec stripping
8 years ago
Richard Fuchs 018e35cba8 TT#27200 add option to omit a=rtcp attribute
8 years ago
Richard Fuchs 61d828a48f change str_chr_str() semantics
8 years ago
Richard Fuchs cc056c148f add rtcp-mux-require option to force rtcp-mux usage for WebRTC
9 years ago
Richard Fuchs 00cc28dff4 TT#22660 don't zero out SDP origin on zero connection address
9 years ago
Richard Fuchs e85759a3b8 fix some errors caught by coverity
9 years ago
Anthony Alba b8a2f015ad Initial support for AES-192, AES-256 in userspace
9 years ago
Anthony Alba 3e2e0242c3 Determine base64 padding from enc_salt_key_len
9 years ago
Anthony Alba 1fc77bc3ac base64: flush base64 decoding, and skip base64 padding in crypto line
9 years ago
Richard Fuchs 30dcadab15 TT#5566 rudimentary support for multiple audio codecs
9 years ago
Richard Fuchs 411c3b3373 TT#5566 checkin of external call recording daemon
9 years ago
Richard Fuchs 0a2a3cbf1e fix candidates being inserted after a=end-of-candidates
10 years ago
Richard Fuchs 2e5e2ec1b9 detect and ignore when local endpoints are advertised by remote clients
10 years ago
Richard Fuchs 05f0317acf fix the 'media address' parameter
10 years ago
Stefan Mititelu a43996fe4a Add 'unidirectional' attribute
10 years ago
Richard Fuchs b82812260d move advertised_address out of intf_spec into local_intf
10 years ago
Richard Fuchs d81c8df3b1 move struct sdp_ng_flags from sdp.h to call_interfaces.h
10 years ago
Richard Fuchs 59260482a1 don't just ignore but also strip invalid/unknown a=crypto
10 years ago
Richard Fuchs 6d3865b971 Mass update - manual merge of rfuchs/socket-rework branch
10 years ago
Richard Fuchs 1a67331b9a fix compiler warnings
10 years ago
Richard Fuchs 19567126b8 always strip a=mid attributes
11 years ago
Richard Fuchs 5ba8e2e4fa MT#13737 don't add a=rtcp for non-RTP protocols
11 years ago
Richard Fuchs 80b8815c60 fix force-relay segfault
11 years ago
Richard Fuchs 92cc560b74 don't shut down ICE agent on consecutive re-invites
11 years ago
Richard Fuchs 144a451526 support selective SDES session parameters
11 years ago
Richard Fuchs 96e3b91859 Implement support for some SDES session parameters
11 years ago
Richard Fuchs 46ebfa3cd0 do not detect trickle ICE RTCP port as rtcp-mux
11 years ago
Richard Fuchs 13d8b8abeb fix ICE when no candidates are present (trickle ICE)
11 years ago
Eric Tamme 506076b3b7 add raddr and rport on all non host type candidates per rfc5245 section-15.1
11 years ago
Richard Fuchs 5fca71d4b0 fix segfault when parsing server reflexive ICE candidates
11 years ago
Richard Fuchs f99d6d4f42 implement full ICE support
11 years ago
Richard Fuchs f224babc54 segfault fix if no rtpmap attribute is present
11 years ago
Richard Fuchs 6173a7a2dc implement atomic bitfield ops
11 years ago
Richard Fuchs 4a97bb167a attempt to work around trickle ice
11 years ago
Richard Fuchs c2ff5c3fd3 MT#9935 understand, learn, remember and report RTP payload types (codecs)
11 years ago
Richard Fuchs da6b6a119a fix compiler warning on 32bit
11 years ago
Richard Fuchs a0068f4f02 relax sdes key lifetime validation check
11 years ago
Richard Fuchs 3cfeb5ddbc optionally allow broken SDPs as compile switch
11 years ago
Richard Fuchs 45dee75156 support specifying interfaces to use in control protocols
12 years ago
Richard Fuchs 513ac44a84 incorporate new local-interface infrastructure into appropriate places
12 years ago
Richard Fuchs 50f2bfbc4d allow for fqdn in o= line
12 years ago
Richard Fuchs b6ff15cb8a remove unnecessary a=inactive for zero-port media
12 years ago
Richard Fuchs 4bf2ec7415 correct data type for key lifetime
12 years ago
Richard Fuchs d37d385806 properly handle unknown transport protocols
12 years ago
Richard Fuchs 2a38b51a7f better ICE priority calc for non-RFC clients
12 years ago
Richard Fuchs 4ded03de91 implement media-handover and strict-source logic
12 years ago
Juha Heinanen 5198233952 make ICE=force_relay leave SDP endpoint details alone
12 years ago
Richard Fuchs 09b9303eac fix ICE priority calculation
12 years ago
Richard Fuchs 6c1cb067c3 fix relay ICE candidate type for RTP candidate
12 years ago
Juha Heinanen 2dae4fb8f7 support ICE=force_relay flag
12 years ago
Richard Fuchs aa5bae9777 implement experimental passthrough relay mode
12 years ago
Richard Fuchs 05e429c610 C99 inlining rules
12 years ago
Richard Fuchs f638f36bb0 replace implicit bit fields with explicit ones
12 years ago
Richard Fuchs f8f741b584 Update to upcoming 3.0 release (2.9.9 for now)
12 years ago
Richard Fuchs 3c4b3872a8 fix the "media address" parameter to comply with the docs
12 years ago
Richard Fuchs 6dca04922c fix incorrect backward behaviour regarding the "c" flag
13 years ago
Richard Fuchs bbc53398f8 implement and document ng "media address"
13 years ago
Richard Fuchs 97d3414105 fix bug when trust-address isnt given
13 years ago
Richard Fuchs 4e89ac9661 parse and strip extmap attribute (rfc 5285) to make chrome happy
13 years ago
Richard Fuchs 8a7f4d80ed fix another zero-tag bug
13 years ago
Richard Fuchs 67186c31e2 Revert "leave out rtcp attribute in rtcp-mux case"
13 years ago
Richard Fuchs 4628536afb Revert "test weird chrome-style rtcp attribute"
13 years ago
Richard Fuchs 31c1b4c9a8 Revert "trying to get chrome calls working"
13 years ago
Richard Fuchs e41ef22f0f Revert "trying to get chrome calls working"
13 years ago
Richard Fuchs 35d5ea7f3c trying to get chrome calls working
13 years ago
Richard Fuchs 7ac114135e trying to get chrome calls working
13 years ago
Richard Fuchs cf8a55f3af test weird chrome-style rtcp attribute
13 years ago
Richard Fuchs c7477e3fa9 leave out rtcp attribute in rtcp-mux case
13 years ago
Richard Fuchs b0839891f8 apparently a zero crypto tag is valid
13 years ago
Richard Fuchs 43764b46d4 implement support for RFC 5761
13 years ago
Richard Fuchs e87787af11 change the sdp attribute lists/hashes around a bit
13 years ago
Richard Fuchs ccf9155218 fix stripping of ice_ufrag attribute
13 years ago
Richard Fuchs e3cf5d521e reverse crypto context in/out as they were backwards
13 years ago
Richard Fuchs 3c93daa015 fix some regressions and bugs
13 years ago
Richard Fuchs 9e629d73e3 stop with the bit-length silliness, give key/tag lengths in bytes
13 years ago
Richard Fuchs ac86e65bc7 dont do ice/crypto/etc stuff for inactive streams
13 years ago
Richard Fuchs fa66629309 add helper function for code prettiness
13 years ago
Richard Fuchs 77d19ccab8 parse the send/recv/inactive sdp attributes
13 years ago
Richard Fuchs bc39957548 remember the crypto "tag" value for the SDP answer
13 years ago
Richard Fuchs 3c9daae60d adding rtp/savpf transforms and tests
13 years ago
Richard Fuchs 43e9696fa9 restructure in-memory crypto contexts
13 years ago
Richard Fuchs 70e6be3bf4 match the peer's crypto suite if possible
13 years ago
Richard Fuchs 3b0d7d0da0 generate our own crypto context when going rtp/avp->savp
13 years ago
Richard Fuchs 212df63857 implementing srtp encryption and authentication
13 years ago
Richard Fuchs 7877b7ce14 implement srtp session key generation algorithm
13 years ago
Richard Fuchs 292a676d96 remove a pointless enum
13 years ago
Richard Fuchs c7b95f7187 create attribute hash based on attr id number
13 years ago
Richard Fuchs c3eccfc564 rename "hash" to "name_hash"
13 years ago
Richard Fuchs 9ef4bd2f9c ignore invalid attributes
13 years ago
Richard Fuchs 14bcbcfa73 handle unparseable attributes
13 years ago
Richard Fuchs 250c23d808 parsing of the sdp ssrc attribute
13 years ago
Richard Fuchs e63edeb875 parsing of the sdp crypto attribute
13 years ago
Richard Fuchs d8bc7d92a2 experimental support for RTP/AVP<>AVPF bridging
13 years ago
Richard Fuchs 9d0b537d27 leave zero ports or addresses alone
13 years ago
Richard Fuchs d3d35a97e4 dont see a zero port as invalid
13 years ago
Richard Fuchs 68a97be379 keep track of transport protocols and rtcp streams
13 years ago
Richard Fuchs 0427b4baf4 handle "use-candidate" properly
13 years ago
Richard Fuchs cbc1f8c359 fix possible segfault
13 years ago
Richard Fuchs eb05c8169a support the trust-address flag
13 years ago
Richard Fuchs c956a371ac make sure we always have a session to work with
13 years ago
Richard Fuchs a11dc28825 we have pointers... use them
13 years ago
Richard Fuchs 20dfa12220 fix segfault
13 years ago
Richard Fuchs 4f2d6d4c58 enable ice/stun processing also if no ice was previously present
13 years ago
Richard Fuchs 0be4fa311e support dual-stack ICE offers
13 years ago
Richard Fuchs 1c830108ad misinterpreted the meaning of the "trust address" flag
13 years ago
Richard Fuchs 72f6cc97f9 support non-forced insertion of ice candidates
13 years ago
Richard Fuchs 9c8075ca87 agents MUST ignore all other attributes that follow MESSAGE-INTEGRITY
13 years ago
Richard Fuchs 0ed8587e05 move ice_ufrag/pwd into peer struct
13 years ago
Richard Fuchs 6ceb187abb increate length of random strings
13 years ago
Richard Fuchs 7787ad3b28 reorder headers and fix resulting errors
13 years ago
Richard Fuchs 8c06d3254a start work on stun support
13 years ago
Richard Fuchs bff00fdab6 support b=RR:0 and b=RS:0 to disable rtcp
13 years ago
Richard Fuchs d928ccd37d clean up the mess
13 years ago
Richard Fuchs 3c10c9ac17 add support for non-standard rtcp ports
13 years ago
Richard Fuchs 3faa9f8a8f parse out rtcp attribute
13 years ago
Richard Fuchs 1a2e0d75ea create a random but constant "foundation" string for ice candidates
13 years ago
Richard Fuchs dc7c4e7fba s/ufrag_pwd_chars/ice_chars/
13 years ago
Richard Fuchs cd3264b7ef i dont like long variable names
13 years ago
Richard Fuchs 581b1bf948 build a hash table of sdp attributes when parsing them
13 years ago
Richard Fuchs 902f47da28 remove redundancy in struct member names
13 years ago
Richard Fuchs 68f91da68e split up attributes even more when parsing them
13 years ago
Richard Fuchs 33ef09b470 insert ice candidate for rtcp
13 years ago
Richard Fuchs f107ab461a adding rudimentary insertion of ICE attributes
13 years ago
Richard Fuchs c18c1d64eb unify copy_remainder and copy_up_to, create copy_up_to_end_of
13 years ago
Richard Fuchs 30669f2cd3 support removal of ICE attributes
13 years ago
Richard Fuchs 4914d6babb fix skip_over off by one bug
13 years ago
Richard Fuchs adaaa1e59e parse out sdp attributes
13 years ago
Richard Fuchs f5e6482d5d base the stream traversal entirely on stream index
13 years ago
Richard Fuchs 6adda7c301 keep track of sdp stream endpoints and use them as index when rewriting
13 years ago
Richard Fuchs c33642a011 more consistent function naming
13 years ago
Richard Fuchs bac4f31489 get rid of num parameter to sdp_replace
13 years ago
Richard Fuchs 7ca74b399e use iovec based sdp rewriting
13 years ago
Richard Fuchs df1b169cba handle consecutive ports in SDP
13 years ago
Richard Fuchs a67f03d1d3 introduce struct udp_fd
13 years ago
Richard Fuchs 824c84b2e8 properly handle multiple streams
13 years ago
Richard Fuchs e22b6a04fb support trust-address flag
13 years ago
Richard Fuchs 5d1c2aabed support some flags passed from rtpproxy-ng module
13 years ago
Richard Fuchs b66809bb8c use new struct stream_input where appropriate
13 years ago
Richard Fuchs 9589a73b42 obsolete call{ed,ing}_agent element
13 years ago
Richard Fuchs c75394d3cd first take on SDP rewriting
13 years ago
Richard Fuchs 60da1bc445 mass deployment of the new "str" object - does this thing still work?
13 years ago
Richard Fuchs 8db7ab6c94 introduce kamailio-style "str" data type/struct
13 years ago
Richard Fuchs ccfa304354 sdp_streams() initial implementation
13 years ago
Richard Fuchs a2ac8075a9 WIP on SDP parser
13 years ago
Richard Fuchs 7cc6d95338 adding preliminary SDP parser
13 years ago