sdp_mangle_ip(pattern, newip)
sdp_mangle_port(offset)
encode_contact(encoding_prefix)
decode_contact()
decode_contact_header()
db_url
parametersdp_mangle_ip
usagesdp_mangle_port
usageencode_contact
usagedecode_contact
usagedecode_contact_header
usageThis is a module to help with SDP mangling. Still in testing.
The following modules must be loaded before this module:
No dependencies on other OpenSER modules.
The following libraries or applications must be installed before running OpenSER with this module loaded:
None.
contact_flds_separator
(string)First char of this parameter is used as separator for encoding/decoding Contact header.
First char of this field must be set to a value which is not used inside username,password or other fields of contact. Otherwise it is possible for the decoding step to fail/produce wrong results. |
Default value is "*".
then an encoded uri might look sip:user-password-ip-port-protocol@PublicIP
sdp_mangle_ip(pattern, newip)
Changes IP addresses inside SDP package in lines describing connections like c=IN IP4 Currently in only changes IP4 addresses since IP6 probably will not need to traverse NAT :)
The function returns negative on error, or number of replacements + 1.
Meaning of the parameters is as follows:
pattern - A pair ip/mask used to match IP's located inside SDP package in lines c=IN IP4 ip. This lines will only be mangled if located IP is in the network described by this pattern. Examples of valid patterns are "10.0.0.0/255.0.0.0" or "10.0.0.0/8" etc.
newip - A string representing the new IP to be put inside SDP package if old IP address matches pattern.
This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE.
sdp_mangle_port(offset)
Changes ports inside SDP package in lines describing media like m=audio 13451.
The function returns negative on error, or number of replacements + 1.
Meaning of the parameters is as follows:
offset - A string representing an integer which will be added/subtracted from the located port.
This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE.
encode_contact(encoding_prefix)
This function will encode uri-s inside Contact header in the following manner sip:username:password@ip:port;transport=protocol goes sip:enc_pref*username*ip*port*protocol@public_ip * is the default separator.
The function returns negative on error, 1 on success.
Meaning of the parameters is as follows:
encoding_prefix - Something to allow us to determine that a contact is encoded publicip--a routable IP, most probably you should put your external IP of your NAT box.
This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE.
decode_contact()
This function will decode the URI in first line in packets which come with encoded URI in the following manner sip:enc_pref*username*ip*port*protocol@public_ip goes to sip:username:password@ip:port;transport=protocol It uses the default set parameter for contact encoding separator.
The function returns negative on error, 1 on success.
Meaning of the parameters is as follows:
This function can be used from REQUEST_ROUTE.
decode_contact_header()
This function will decode URIs inside Contact header in the following manner sip:enc_pref*username*ip*port*protocol@public_ip goes to sip:username:password@ip:port;transport=protocol. It uses the default set parameter for contact encoding separator.
The function returns negative on error, 1 on success.
Meaning of the parameters is as follows:
This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE.
Take a look at http://www.openser-project.org/.
First at all check if your question was already answered on one of our mailing lists:
User Mailing List - http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
Developer Mailing List - http://lists.openser-project.org/cgi-bin/mailman/listinfo/devel
E-mails regarding any stable OpenSER release should be sent to
<users@lists.openser-project.org>
and e-mails regarding development versions
should be sent to <devel@lists.openser-project.org>
.
If you want to keep the mail private, send it to
<team@lists.openser-project.org>
.
Please follow the guidelines provided at: http://sourceforge.net/tracker/?group_id=139143.