summaryrefslogtreecommitdiff
path: root/pjnath/src
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2008-02-21 15:38:36 +0000
committerBenny Prijono <bennylp@teluu.com>2008-02-21 15:38:36 +0000
commit8d3fdf02c0b6764cb3beacac8601f2574dc97b74 (patch)
tree10df1d719bda6952454eb4ce1ad0e7583ccb539c /pjnath/src
parentf7718e1cd91ef1748a998c40fa807d60bc283f22 (diff)
Ticket #485: initial modification in STUN messaging in accordance to TURN-06
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1811 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjnath/src')
-rw-r--r--pjnath/src/pjnath/stun_msg.c30
-rw-r--r--pjnath/src/pjnath/stun_msg_dump.c15
2 files changed, 27 insertions, 18 deletions
diff --git a/pjnath/src/pjnath/stun_msg.c b/pjnath/src/pjnath/stun_msg.c
index 9590fee6..d02d0fbd 100644
--- a/pjnath/src/pjnath/stun_msg.c
+++ b/pjnath/src/pjnath/stun_msg.c
@@ -33,17 +33,13 @@
static int padding_char;
-static const char *stun_method_names[] =
+static const char *stun_method_names[PJ_STUN_METHOD_MAX] =
{
"Unknown", /* 0 */
"Binding", /* 1 */
"Shared Secret", /* 2 */
"Allocate", /* 3 */
- "Send", /* 4 */
- "Data", /* 5 */
- "Set Active Destination", /* 6 */
- "Connect", /* 7 */
- "Connect Status" /* 8 */
+ "Refresh", /* 4 */
};
static struct
@@ -63,7 +59,7 @@ static struct
//{ PJ_STUN_SC_MISSING_REALM, "Missing Realm"},
//{ PJ_STUN_SC_MISSING_NONCE, "Missing Nonce"},
//{ PJ_STUN_SC_UNKNOWN_USERNAME, "Unknown Username"},
- { PJ_STUN_SC_NO_BINDING, "No Binding"},
+ { PJ_STUN_SC_ALLOCATION_MISMATCH, "Allocation Mismatch"},
{ PJ_STUN_SC_STALE_NONCE, "Stale Nonce"},
{ PJ_STUN_SC_TRANSITIONING, "Active Destination Already Set"},
{ PJ_STUN_SC_UNSUPP_TRANSPORT_PROTO, "Unsupported Transport Protocol"},
@@ -216,10 +212,10 @@ static struct attr_desc mandatory_attr_desc[] =
&encode_sockaddr_attr
},
{
- /* ID 0x000C is not assigned */
- NULL,
- NULL,
- NULL
+ /* PJ_STUN_ATTR_CHANNEL_NUMBER (0x000C) */
+ "CHANNEL-NUMBER",
+ &decode_uint_attr,
+ &encode_uint_attr
},
{
/* PJ_STUN_ATTR_LIFETIME, */
@@ -252,9 +248,9 @@ static struct attr_desc mandatory_attr_desc[] =
NULL
},
{
- /* PJ_STUN_ATTR_REMOTE_ADDRESS, */
- "REMOTE-ADDRESS",
- &decode_sockaddr_attr,
+ /* PJ_STUN_ATTR_PEER_ADDRESS, */
+ "PEER-ADDRESS",
+ &decode_xored_sockaddr_attr,
&encode_sockaddr_attr
},
{
@@ -278,7 +274,7 @@ static struct attr_desc mandatory_attr_desc[] =
{
/* PJ_STUN_ATTR_RELAY_ADDRESS, */
"RELAY-ADDRESS",
- &decode_sockaddr_attr,
+ &decode_xored_sockaddr_attr,
&encode_sockaddr_attr
},
{
@@ -350,7 +346,7 @@ static struct attr_desc mandatory_attr_desc[] =
{
/* PJ_STUN_ATTR_REQUESTED_IP, */
"REQUESTED-IP",
- &decode_sockaddr_attr,
+ &decode_xored_sockaddr_attr,
&encode_sockaddr_attr
},
{
@@ -1731,7 +1727,7 @@ PJ_DEF(pj_status_t) pj_stun_msg_create_response(pj_pool_t *pool,
if (err_code)
msg_type |= PJ_STUN_ERROR_RESPONSE_BIT;
else
- msg_type |= PJ_STUN_RESPONSE_BIT;
+ msg_type |= PJ_STUN_SUCCESS_RESPONSE_BIT;
status = pj_stun_msg_create(pool, msg_type, req_msg->hdr.magic,
req_msg->hdr.tsx_id, &response);
diff --git a/pjnath/src/pjnath/stun_msg_dump.c b/pjnath/src/pjnath/stun_msg_dump.c
index 13fd4038..ecf65504 100644
--- a/pjnath/src/pjnath/stun_msg_dump.c
+++ b/pjnath/src/pjnath/stun_msg_dump.c
@@ -71,7 +71,7 @@ static int print_attr(char *buffer, unsigned length,
case PJ_STUN_ATTR_SOURCE_ADDR:
case PJ_STUN_ATTR_CHANGED_ADDR:
case PJ_STUN_ATTR_REFLECTED_FROM:
- case PJ_STUN_ATTR_REMOTE_ADDR:
+ case PJ_STUN_ATTR_PEER_ADDR:
case PJ_STUN_ATTR_RELAY_ADDR:
case PJ_STUN_ATTR_XOR_MAPPED_ADDR:
case PJ_STUN_ATTR_REQ_IP:
@@ -100,6 +100,19 @@ static int print_attr(char *buffer, unsigned length,
}
break;
+ case PJ_STUN_ATTR_CHANNEL_NUMBER:
+ {
+ const pj_stun_uint_attr *attr;
+
+ attr = (const pj_stun_uint_attr*)ahdr;
+ len = pj_ansi_snprintf(p, end-p,
+ ", chnum=%u (0x%x)\n",
+ (int)PJ_STUN_GET_CH_NB(attr->value),
+ (int)PJ_STUN_GET_CH_NB(attr->value));
+ APPLY();
+ }
+ break;
+
case PJ_STUN_ATTR_CHANGE_REQUEST:
case PJ_STUN_ATTR_LIFETIME:
case PJ_STUN_ATTR_BANDWIDTH: