Ignore:
Timestamp:
Feb 21, 2008 10:08:27 AM (11 years ago)
Author:
bennylp
Message:

Ticket #467: fixed issues with RTP/AVP vs RTP/SAVP negotiation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjmedia/src/pjmedia/sdp.c

    r1805 r1810  
    12821282} 
    12831283 
    1284  
     1284PJ_DEF(pj_status_t) pjmedia_sdp_transport_cmp( const pj_str_t *t1, 
     1285                                               const pj_str_t *t2) 
     1286{ 
     1287    static const pj_str_t ID_RTP_AVP  = { "RTP/AVP", 7 }; 
     1288    static const pj_str_t ID_RTP_SAVP = { "RTP/SAVP", 8 }; 
     1289 
     1290    /* Exactly equal? */ 
     1291    if (pj_stricmp(t1, t2) == 0) 
     1292        return PJ_SUCCESS; 
     1293 
     1294    /* Compatible? */ 
     1295    if ((!pj_stricmp(t1, &ID_RTP_AVP) || !pj_stricmp(t1, &ID_RTP_SAVP)) && 
     1296        (!pj_stricmp(t2, &ID_RTP_AVP) || !pj_stricmp(t2, &ID_RTP_SAVP))) 
     1297        return PJ_SUCCESS; 
     1298 
     1299    return PJMEDIA_SDP_ETPORTNOTEQUAL; 
     1300} 
     1301 
     1302 
     1303PJ_DEF(pj_status_t) pjmedia_sdp_media_deactivate(pj_pool_t *pool, 
     1304                                                 pjmedia_sdp_media *m) 
     1305{ 
     1306    pjmedia_sdp_attr *attr; 
     1307    static const pj_str_t ID_INACTIVE = { "inactive", 8 }; 
     1308 
     1309    attr = pjmedia_sdp_attr_create(pool, ID_INACTIVE.ptr, NULL); 
     1310    if (NULL == attr) 
     1311        return PJ_ENOMEM; 
     1312 
     1313    m->attr[m->attr_count++] = attr; 
     1314    m->desc.port = 0; 
     1315 
     1316    return PJ_SUCCESS; 
     1317} 
Note: See TracChangeset for help on using the changeset viewer.