diff options
Diffstat (limited to 'pjnath/src')
-rw-r--r-- | pjnath/src/pjnath/stun_session.c | 15 | ||||
-rw-r--r-- | pjnath/src/pjstun-client/client_main.c | 3 |
2 files changed, 12 insertions, 6 deletions
diff --git a/pjnath/src/pjnath/stun_session.c b/pjnath/src/pjnath/stun_session.c index 760aa76d..cb14da3c 100644 --- a/pjnath/src/pjnath/stun_session.c +++ b/pjnath/src/pjnath/stun_session.c @@ -956,11 +956,15 @@ PJ_DEF(pj_status_t) pj_stun_session_on_rx_pkt(pj_stun_session *sess, goto on_return; } - /* Authenticate the message */ - status = authenticate_msg(sess, packet, pkt_size, msg, tmp_pool, - src_addr, src_addr_len); - if (status != PJ_SUCCESS) { - goto on_return; + /* Authenticate the message, unless PJ_STUN_NO_AUTHENTICATE + * is specified in the option. + */ + if ((options & PJ_STUN_NO_AUTHENTICATE) == 0) { + status = authenticate_msg(sess, packet, pkt_size, msg, tmp_pool, + src_addr, src_addr_len); + if (status != PJ_SUCCESS) { + goto on_return; + } } /* Handle message */ @@ -992,3 +996,4 @@ on_return: } + diff --git a/pjnath/src/pjstun-client/client_main.c b/pjnath/src/pjstun-client/client_main.c index 958c23cb..bca87a32 100644 --- a/pjnath/src/pjstun-client/client_main.c +++ b/pjnath/src/pjstun-client/client_main.c @@ -29,6 +29,7 @@ #define REQ_PORT_PROPS -1 /* -1 to disable */ #define REQ_IP NULL /* IP address string */ +#define OPTIONS PJ_STUN_NO_AUTHENTICATE static struct global { @@ -156,7 +157,7 @@ static int worker_thread(void *unused) if (pj_stun_msg_check(buffer, len, PJ_STUN_IS_DATAGRAM)==PJ_SUCCESS) { rc = pj_stun_session_on_rx_pkt(g.sess, buffer, len, - 0, + OPTIONS, NULL, &addr, addrlen); if (rc != PJ_SUCCESS) my_perror("Error processing packet", rc); |