Changeset 533


Ignore:
Timestamp:
Jun 22, 2006 12:54:54 AM (18 years ago)
Author:
bennylp
Message:

Added capability to build pjmedia_sock_info from an UDP media transport

Location:
pjproject/trunk/pjmedia
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjmedia/include/pjmedia/transport_udp.h

    r518 r533  
    7777 
    7878/** 
     79 * Get media socket info from the specified UDP transport. 
     80 * 
     81 * @param tp        The UDP transport interface. 
     82 * @param i         Media socket info to be initialized. 
     83 * 
     84 * @return          PJ_SUCCESS on success. 
     85 */ 
     86PJ_DECL(pj_status_t) pjmedia_transport_udp_get_sock_info(pjmedia_transport *tp, 
     87                                                         pjmedia_sock_info *i); 
     88 
     89 
     90/** 
    7991 * Create UDP stream transport from existing sockets. Use this function when 
    8092 * the sockets have previously been created. 
  • pjproject/trunk/pjmedia/src/pjmedia/transport_udp.c

    r483 r533  
    4949 
    5050    pj_sock_t           rtp_sock;       /**< RTP socket                     */ 
     51    pj_sockaddr_in      rtp_addr_name;  /**< Published RTP address.         */ 
    5152    pj_ioqueue_key_t   *rtp_key;        /**< RTP socket key in ioqueue      */ 
    5253    pj_ioqueue_op_key_t rtp_read_op;    /**< Pending read operation         */ 
     
    5859 
    5960    pj_sock_t           rtcp_sock;      /**< RTCP socket                    */ 
     61    pj_sockaddr_in      rtcp_addr_name; /**< Published RTCP address.        */ 
    6062    pj_ioqueue_key_t   *rtcp_key;       /**< RTCP socket key in ioqueue     */ 
    6163    pj_ioqueue_op_key_t rtcp_read_op;   /**< Pending read operation         */ 
     
    207209    /* Copy socket infos */ 
    208210    tp->rtp_sock = si->rtp_sock; 
     211    tp->rtp_addr_name = si->rtp_addr_name; 
    209212    tp->rtcp_sock = si->rtcp_sock; 
     213    tp->rtcp_addr_name = si->rtcp_addr_name; 
    210214 
    211215 
     
    261265    pjmedia_transport_udp_close(&tp->base); 
    262266    return status; 
     267} 
     268 
     269 
     270/* 
     271 * Get media socket info. 
     272 */ 
     273PJ_DEF(pj_status_t) pjmedia_transport_udp_get_sock_info(pjmedia_transport *tp, 
     274                                                        pjmedia_sock_info *inf) 
     275{ 
     276    struct transport_udp *udp = (struct transport_udp*)tp; 
     277    PJ_ASSERT_RETURN(tp && inf, PJ_EINVAL); 
     278 
     279    inf->rtp_sock = udp->rtp_sock; 
     280    inf->rtp_addr_name = udp->rtp_addr_name; 
     281    inf->rtcp_sock = udp->rtcp_sock; 
     282    inf->rtcp_addr_name = udp->rtcp_addr_name; 
     283 
     284    return PJ_SUCCESS; 
    263285} 
    264286 
Note: See TracChangeset for help on using the changeset viewer.