Changeset 1080 for pjproject/trunk


Ignore:
Timestamp:
Mar 18, 2007 5:39:27 PM (18 years ago)
Author:
bennylp
Message:

Changed pj_sockaddr structure and added pjnath project for ICE/STUN stuffs

Location:
pjproject/trunk
Files:
8 added
25 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjlib/include/pj/errno.h

    r974 r1080  
    342342 *  - PJSIP_SIMPLE_ERRNO_START  (PJ_ERRNO_START_USER + PJ_ERRNO_SPACE_SIZE*2) 
    343343 *  - PJLIB_UTIL_ERRNO_START    (PJ_ERRNO_START_USER + PJ_ERRNO_SPACE_SIZE*3) 
     344 *  - PJNATH_ERRNO_START        (PJ_ERRNO_START_USER + PJ_ERRNO_SPACE_SIZE*4) 
    344345 */ 
    345346 
  • pjproject/trunk/pjlib/include/pj/sock.h

    r974 r1080  
    175175 */ 
    176176#define PJ_INVALID_SOCKET   (-1) 
    177  
    178 /** 
    179  * Structure describing a generic socket address. 
    180  * If PJ_SOCKADDR_HAS_LEN is not zero, then sa_zero_len member is added 
    181  * to this struct. As far the application is concerned, the value of 
    182  * this member will always be zero. Internally, PJLIB may modify the value 
    183  * before calling OS socket API, and reset the value back to zero before 
    184  * returning the struct to application. 
    185  */ 
    186 typedef struct pj_sockaddr 
    187 { 
    188 #if defined(PJ_SOCKADDR_HAS_LEN) && PJ_SOCKADDR_HAS_LEN!=0 
    189     pj_uint8_t  sa_zero_len; 
    190     pj_uint8_t  sa_family; 
    191 #else 
    192     pj_uint16_t sa_family;      /**< Common data: address family.   */ 
    193 #endif 
    194     char        sa_data[14];    /**< Address data.                  */ 
    195 } pj_sockaddr; 
    196  
    197177 
    198178#undef s_addr 
     
    277257 
    278258 
     259/** 
     260 * This structure describes common attributes found in transport addresses. 
     261 * If PJ_SOCKADDR_HAS_LEN is not zero, then sa_zero_len member is added 
     262 * to this struct. As far the application is concerned, the value of 
     263 * this member will always be zero. Internally, PJLIB may modify the value 
     264 * before calling OS socket API, and reset the value back to zero before 
     265 * returning the struct to application. 
     266 */ 
     267typedef struct pj_addr_hdr 
     268{ 
     269#if defined(PJ_SOCKADDR_HAS_LEN) && PJ_SOCKADDR_HAS_LEN!=0 
     270    pj_uint8_t  sa_zero_len; 
     271    pj_uint8_t  sa_family; 
     272#else 
     273    pj_uint16_t sa_family;      /**< Common data: address family.   */ 
     274#endif 
     275} pj_addr_hdr; 
     276 
     277 
     278/** 
     279 * This union describes a generic socket address. 
     280 */ 
     281typedef union pj_sockaddr 
     282{ 
     283    pj_addr_hdr     addr;       /**< Generic transport address.     */ 
     284    pj_sockaddr_in  ipv4;       /**< IPv4 transport address.        */ 
     285    pj_sockaddr_in6 ipv6;       /**< IPv6 transport address.        */ 
     286} pj_sockaddr; 
     287 
     288 
    279289/***************************************************************************** 
    280290 * 
  • pjproject/trunk/pjmedia/build/wince-evc4/pjmedia_wince.vcp

    r1001 r1080  
    7777# PROP Use_MFC 0 
    7878# PROP Use_Debug_Libraries 1 
    79 # PROP Output_Dir "output/pjmedia_emulatorDbg" 
    80 # PROP Intermediate_Dir "output/pjmedia_emulatorDbg" 
     79# PROP Output_Dir "./output/pjmedia_emulatorDbg" 
     80# PROP Intermediate_Dir "./output/pjmedia_emulatorDbg" 
    8181# PROP CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" 
    8282# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" 
  • pjproject/trunk/pjnath/build/pjnath.dsw

    r1062 r1080  
    1616############################################################################### 
    1717 
    18 Project: "pjlib_test"=..\..\pjlib\build\pjlib_test.dsp - Package Owner=<4> 
     18Project: "pjlib_util"="..\..\pjlib-util\build\pjlib_util.dsp" - Package Owner=<4> 
    1919 
    2020Package=<5> 
     
    2828############################################################################### 
    2929 
    30 Project: "pjlib_util"="..\..\pjlib-util\build\pjlib_util.dsp" - Package Owner=<4> 
     30Project: "pjnath"=.\pjnath.dsp - Package Owner=<4> 
    3131 
    3232Package=<5> 
     
    5454    Project_Dep_Name pjlib_util 
    5555    End Project Dependency 
     56    Begin Project Dependency 
     57    Project_Dep_Name pjnath 
     58    End Project Dependency 
    5659}}} 
    5760 
     
    7275    Project_Dep_Name pjlib_util 
    7376    End Project Dependency 
     77    Begin Project Dependency 
     78    Project_Dep_Name pjnath 
     79    End Project Dependency 
    7480}}} 
    7581 
  • pjproject/trunk/pjnath/include/pjnath/stun_auth.h

    r1062 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
    19 #ifndef __PJLIB_UTIL_STUN_AUTH_H__ 
    20 #define __PJLIB_UTIL_STUN_AUTH_H__ 
     19#ifndef __PJNATH_STUN_AUTH_H__ 
     20#define __PJNATH_STUN_AUTH_H__ 
    2121 
    2222/** 
     
    2525 */ 
    2626 
    27 #include <pjlib-util/stun_msg.h> 
     27#include <pjnath/stun_msg.h> 
    2828 
    2929 
     
    3333/* **************************************************************************/ 
    3434/** 
    35  * @defgroup PJLIB_UTIL_STUN_AUTH STUN Authentication 
    36  * @ingroup PJLIB_UTIL_STUN 
     35 * @defgroup PJNATH_STUN_AUTH STUN Authentication 
     36 * @ingroup PJNATH_STUN 
    3737 * @{ 
    3838 */ 
     
    272272 
    273273 
    274 #endif  /* __PJLIB_UTIL_STUN_AUTH_H__ */ 
    275  
     274#endif  /* __PJNATH_STUN_AUTH_H__ */ 
     275 
  • pjproject/trunk/pjnath/include/pjnath/stun_doc.h

    r1062 r1080  
    2525 
    2626/** 
    27  * @defgroup PJLIB_UTIL_STUN STUN and TURN 
    28  * @ingroup PJLIB_UTIL 
     27 * @defgroup PJNATH_STUN STUN and TURN 
     28 * @ingroup PJNATH 
    2929 
    3030 This is the implementation of STUN/TURN in PJLIB-UTIL library. 
     
    5555 @subsection stun_msg_sec Messaging and Parsing 
    5656 
    57  The lowest layer of the STUN implementation is the @ref PJLIB_UTIL_STUN_MSG 
     57 The lowest layer of the STUN implementation is the @ref PJNATH_STUN_MSG 
    5858 component. This part is responsible for encoding and decoding STUN messages. 
    5959 
     
    6666 @subsection stun_endpt_sec Endpoint 
    6767 
    68  The @ref PJLIB_UTIL_STUN_ENDPOINT is used by the library to put together 
     68 The @ref PJNATH_STUN_ENDPOINT is used by the library to put together 
    6969 common settings for all STUN objects. For example, the STUN endpoint has a 
    7070 reference of timer heap to poll all STUN timers, reference to ioqueue to 
     
    7575 @subsection stun_clt_tsx_sec Client Transaction 
    7676 
    77  The @ref PJLIB_UTIL_STUN_TRANSACTION is used to manage outgoing STUN request, 
     77 The @ref PJNATH_STUN_TRANSACTION is used to manage outgoing STUN request, 
    7878 for example to retransmit the request and to notify application about the 
    7979 completion of the request. 
    8080 
    81  The @ref PJLIB_UTIL_STUN_TRANSACTION does not use any networking operations, 
     81 The @ref PJNATH_STUN_TRANSACTION does not use any networking operations, 
    8282 but instead application must supply the transaction with a callback to 
    8383 be used by the transaction to send outgoing requests. This way the STUN 
     
    8989 @subsection stun_srv_sec Server Components 
    9090 
    91  The @ref PJLIB_UTIL_STUN_SERVER is used for: 
     91 The @ref PJNATH_STUN_SERVER is used for: 
    9292 - implementing STUN servers, and/or 
    9393 - implementing server side STUN handling (for example for ICE). 
  • pjproject/trunk/pjnath/include/pjnath/stun_endpoint.h

    r1062 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
    19 #ifndef __PJLIB_UTIL_STUN_ENDPOINT_H__ 
    20 #define __PJLIB_UTIL_STUN_ENDPOINT_H__ 
     19#ifndef __PJNATH_STUN_CONFIG_H__ 
     20#define __PJNATH_STUN_CONFIG_H__ 
    2121 
    2222/** 
    23  * @file stun_endpoint.h 
     23 * @file stun_config.h 
    2424 * @brief STUN endpoint. 
    2525 */ 
    2626 
    27 #include <pjlib-util/stun_msg.h> 
     27#include <pjnath/stun_msg.h> 
    2828 
    2929 
     
    3333/* **************************************************************************/ 
    3434/** 
    35  * @defgroup PJLIB_UTIL_STUN_ENDPOINT STUN Endpoint 
     35 * @defgroup PJNATH_STUN_ENDPOINT STUN Endpoint 
    3636 * @brief Management of incoming and outgoing STUN transactions. 
    37  * @ingroup PJLIB_UTIL_STUN 
     37 * @ingroup PJNATH_STUN 
    3838 * @{ 
    3939 */ 
     
    4444 * can send or receive STUN messages. 
    4545 */ 
    46 typedef struct pj_stun_endpoint 
     46typedef struct pj_stun_config 
    4747{ 
    4848    /** 
     
    8787    unsigned             res_cache_msec; 
    8888 
    89 } pj_stun_endpoint; 
     89} pj_stun_config; 
    9090 
    9191 
     
    9494 * Create a STUN endpoint instance. 
    9595 */ 
    96 PJ_DECL(pj_status_t) pj_stun_endpoint_create(pj_pool_factory *factory, 
    97                                              unsigned options, 
    98                                              pj_ioqueue_t *ioqueue, 
    99                                              pj_timer_heap_t *timer_heap, 
    100                                              pj_stun_endpoint **p_endpt); 
     96PJ_DECL(pj_status_t) pj_stun_config_create(pj_pool_factory *factory, 
     97                                           unsigned options, 
     98                                           pj_ioqueue_t *ioqueue, 
     99                                           pj_timer_heap_t *timer_heap, 
     100                                           pj_stun_config **p_endpt); 
    101101 
    102102/** 
    103103 * Destroy STUN endpoint instance. 
    104104 */ 
    105 PJ_DECL(pj_status_t) pj_stun_endpoint_destroy(pj_stun_endpoint *endpt); 
     105PJ_DECL(pj_status_t) pj_stun_config_destroy(pj_stun_config *endpt); 
    106106 
    107107 
     
    114114 
    115115 
    116 #endif  /* __PJLIB_UTIL_STUN_ENDPOINT_H__ */ 
     116#endif  /* __PJNATH_STUN_CONFIG_H__ */ 
    117117 
  • pjproject/trunk/pjnath/include/pjnath/stun_msg.h

    r1062 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
    19 #ifndef __PJLIB_UTIL_STUN_MSG_H__ 
    20 #define __PJLIB_UTIL_STUN_MSG_H__ 
     19#ifndef __PJNATH_STUN_MSG_H__ 
     20#define __PJNATH_STUN_MSG_H__ 
    2121 
    2222/** 
     
    2525 */ 
    2626 
    27 #include <pjlib-util/types.h> 
     27#include <pjnath/types.h> 
    2828#include <pj/sock.h> 
    2929 
     
    3434/* **************************************************************************/ 
    3535/** 
    36  * @defgroup PJLIB_UTIL_STUN_MSG STUN Message Representation and Parsing 
     36 * @defgroup PJNATH_STUN_MSG STUN Message Representation and Parsing 
    3737 * @brief Low-level representation and parsing of STUN messages. 
    38  * @ingroup PJLIB_UTIL_STUN 
     38 * @ingroup PJNATH_STUN 
    3939 * @{ 
    4040 */ 
     
    530530 
    531531    /** 
    532      * The socket address (as a union) 
    533      */ 
    534     union { 
    535         pj_sockaddr         addr;   /**< Generic socket address.    */ 
    536         pj_sockaddr_in      ipv4;   /**< IPv4 socket address.       */ 
    537         pj_sockaddr_in6     ipv6;   /**< IPv6 socket address.       */ 
    538     } addr; 
     532     * The socket address 
     533     */ 
     534    pj_sockaddr         sockaddr; 
    539535 
    540536} pj_stun_sockaddr_attr; 
     
    15361532 
    15371533 
    1538 #endif  /* __PJLIB_UTIL_STUN_MSG_H__ */ 
    1539  
     1534#endif  /* __PJNATH_STUN_MSG_H__ */ 
     1535 
  • pjproject/trunk/pjnath/include/pjnath/stun_session.h

    r1062 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
    19 #ifndef __PJLIB_UTIL_STUN_SESSION_H__ 
    20 #define __PJLIB_UTIL_STUN_SESSION_H__ 
    21  
    22 #include <pjlib-util/stun_msg.h> 
    23 #include <pjlib-util/stun_auth.h> 
    24 #include <pjlib-util/stun_endpoint.h> 
    25 #include <pjlib-util/stun_transaction.h> 
     19#ifndef __PJNATH_STUN_SESSION_H__ 
     20#define __PJNATH_STUN_SESSION_H__ 
     21 
     22#include <pjnath/stun_msg.h> 
     23#include <pjnath/stun_auth.h> 
     24#include <pjnath/stun_endpoint.h> 
     25#include <pjnath/stun_transaction.h> 
    2626#include <pj/list.h> 
    2727#include <pj/timer.h> 
     
    3232/* **************************************************************************/ 
    3333/** 
    34  * @defgroup PJLIB_UTIL_STUN_SESSION STUN Client/Server Session 
     34 * @defgroup PJNATH_STUN_SESSION STUN Client/Server Session 
    3535 * @brief STUN client and server session 
    36  * @ingroup PJLIB_UTIL_STUN 
     36 * @ingroup PJNATH_STUN 
    3737 * @{ 
    3838 */ 
     
    157157 * Create a STUN session. 
    158158 * 
    159  * @param endpt         The STUN endpoint, to be used to register timers etc. 
     159 * @param cfg           The STUN endpoint, to be used to register timers etc. 
    160160 * @param name          Optional name to be associated with this instance. The 
    161161 *                      name will be used for example for logging purpose. 
     
    166166 * @return          PJ_SUCCESS on success, or the appropriate error code. 
    167167 */ 
    168 PJ_DECL(pj_status_t) pj_stun_session_create(pj_stun_endpoint *endpt, 
     168PJ_DECL(pj_status_t) pj_stun_session_create(pj_stun_config *cfg, 
    169169                                            const char *name, 
    170170                                            const pj_stun_session_cb *cb, 
     
    369369PJ_END_DECL 
    370370 
    371 #endif  /* __PJLIB_UTIL_STUN_SESSION_H__ */ 
    372  
     371#endif  /* __PJNATH_STUN_SESSION_H__ */ 
     372 
  • pjproject/trunk/pjnath/include/pjnath/stun_transaction.h

    r1062 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
    19 #ifndef __PJLIB_UTIL_STUN_TRANSACTION_H__ 
    20 #define __PJLIB_UTIL_STUN_TRANSACTION_H__ 
     19#ifndef __PJNATH_STUN_TRANSACTION_H__ 
     20#define __PJNATH_STUN_TRANSACTION_H__ 
    2121 
    2222/** 
     
    2525 */ 
    2626 
    27 #include <pjlib-util/stun_msg.h> 
    28 #include <pjlib-util/stun_endpoint.h> 
     27#include <pjnath/stun_msg.h> 
     28#include <pjnath/stun_endpoint.h> 
    2929 
    3030 
     
    3434/* **************************************************************************/ 
    3535/** 
    36  * @defgroup PJLIB_UTIL_STUN_TRANSACTION STUN Client Transaction 
     36 * @defgroup PJNATH_STUN_TRANSACTION STUN Client Transaction 
    3737 * @brief STUN client transaction 
    38  * @ingroup PJLIB_UTIL_STUN 
     38 * @ingroup PJNATH_STUN 
    3939 * @{ 
    4040 * 
    41  The @ref PJLIB_UTIL_STUN_TRANSACTION is used to manage outgoing STUN request, 
     41 The @ref PJNATH_STUN_TRANSACTION is used to manage outgoing STUN request, 
    4242 for example to retransmit the request and to notify application about the 
    4343 completion of the request. 
    4444 
    45  The @ref PJLIB_UTIL_STUN_TRANSACTION does not use any networking operations, 
     45 The @ref PJNATH_STUN_TRANSACTION does not use any networking operations, 
    4646 but instead application must supply the transaction with a callback to 
    4747 be used by the transaction to send outgoing requests. This way the STUN 
     
    101101 * the request, if necessary. 
    102102 * 
    103  * @param endpt         The STUN endpoint, which will be used to retrieve 
     103 * @param cfg           The STUN endpoint, which will be used to retrieve 
    104104 *                      various settings for the transaction. 
    105105 * @param pool          Pool to be used to allocate memory from. 
     
    111111 * @return              PJ_SUCCESS on success, or the appropriate error code. 
    112112 */ 
    113 PJ_DECL(pj_status_t) pj_stun_client_tsx_create( pj_stun_endpoint *endpt, 
     113PJ_DECL(pj_status_t) pj_stun_client_tsx_create( pj_stun_config *cfg, 
    114114                                                pj_pool_t *pool, 
    115115                                                const pj_stun_tsx_cb *cb, 
     
    214214 
    215215 
    216 #endif  /* __PJLIB_UTIL_STUN_TRANSACTION_H__ */ 
    217  
     216#endif  /* __PJNATH_STUN_TRANSACTION_H__ */ 
     217 
  • pjproject/trunk/pjnath/include/pjnath/turn_client.h

    r1062 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
    19 #ifndef __PJLIB_UTIL_TURN_CLIENT_H__ 
    20 #define __PJLIB_UTIL_TURN_CLIENT_H__ 
     19#ifndef __PJNATH_TURN_CLIENT_H__ 
     20#define __PJNATH_TURN_CLIENT_H__ 
    2121 
    2222/** 
     
    2525 */ 
    2626 
    27 #include <pjlib-util/stun_msg.h> 
     27#include <pjnath/stun_msg.h> 
    2828 
    2929 
     
    3232 
    3333/** 
    34  * @defgroup PJLIB_UTIL_TURN_CLIENT TURN Client Session 
     34 * @defgroup PJNATH_TURN_CLIENT TURN Client Session 
    3535 * @brief Management of STUN/TURN client session 
    36  * @ingroup PJLIB_UTIL_STUN 
     36 * @ingroup PJNATH_STUN 
    3737 * @{ 
    3838 */ 
     
    129129 
    130130 
    131 #endif  /* __PJLIB_UTIL_TURN_CLIENT_H__ */ 
     131#endif  /* __PJNATH_TURN_CLIENT_H__ */ 
    132132 
  • pjproject/trunk/pjnath/src/pjnath/stun_auth.c

    r1062 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
    19 #include <pjlib-util/stun_auth.h> 
    20 #include <pjlib-util/errno.h> 
     19#include <pjnath/stun_auth.h> 
     20#include <pjnath/errno.h> 
    2121#include <pjlib-util/hmac_sha1.h> 
    2222#include <pjlib-util/sha1.h> 
     
    160160                             &realm, &nonce, p_response); 
    161161        } 
    162         return PJLIB_UTIL_ESTUNMSGINT; 
     162        return PJNATH_ESTUNMSGINT; 
    163163    } 
    164164 
     
    171171                             &realm, &nonce, p_response); 
    172172        } 
    173         return PJLIB_UTIL_ESTUNNOUSERNAME; 
     173        return PJNATH_ESTUNNOUSERNAME; 
    174174    } 
    175175 
     
    202202                             &realm, &nonce, p_response); 
    203203        } 
    204         return PJLIB_UTIL_ESTUNUSERNAME; 
     204        return PJNATH_ESTUNUSERNAME; 
    205205    } 
    206206 
     
    217217                             &realm, &nonce, p_response); 
    218218        } 
    219         return PJLIB_UTIL_ESTUNNOREALM; 
     219        return PJNATH_ESTUNNOREALM; 
    220220 
    221221    } else if (realm.slen != 0 && arealm != NULL) { 
     
    228228                                 NULL, &realm, &nonce, p_response); 
    229229            } 
    230             return PJLIB_UTIL_ESTUNNONCE; 
     230            return PJNATH_ESTUNNONCE; 
    231231        } 
    232232 
     
    238238                                 NULL, &realm, &nonce, p_response); 
    239239            } 
    240             return PJLIB_UTIL_ESTUNNOREALM; 
     240            return PJNATH_ESTUNNOREALM; 
    241241        } 
    242242 
     
    261261                                 NULL, &realm, &nonce, p_response); 
    262262            } 
    263             return PJLIB_UTIL_ESTUNNONCE; 
     263            return PJNATH_ESTUNNONCE; 
    264264        } 
    265265    } 
     
    287287                                 NULL, &realm, &nonce, p_response); 
    288288            } 
    289             return PJLIB_UTIL_ESTUNNONCE; 
     289            return PJNATH_ESTUNNONCE; 
    290290        } 
    291291    } 
     
    332332                             NULL, &realm, &nonce, p_response); 
    333333        } 
    334         return PJLIB_UTIL_ESTUNMSGINT; 
     334        return PJNATH_ESTUNMSGINT; 
    335335    } 
    336336 
  • pjproject/trunk/pjnath/src/pjnath/stun_endpoint.c

    r1062 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
    19 #include <pjlib-util/stun_endpoint.h> 
    20 #include <pjlib-util/errno.h> 
     19#include <pjnath/stun_endpoint.h> 
     20#include <pjnath/errno.h> 
    2121#include <pj/assert.h> 
    2222#include <pj/pool.h> 
     
    2626 * Create a STUN endpoint instance. 
    2727 */ 
    28 PJ_DEF(pj_status_t) pj_stun_endpoint_create( pj_pool_factory *factory, 
    29                                              unsigned options, 
    30                                              pj_ioqueue_t *ioqueue, 
    31                                              pj_timer_heap_t *timer_heap, 
    32                                              pj_stun_endpoint **p_endpt) 
     28PJ_DEF(pj_status_t) pj_stun_config_create( pj_pool_factory *factory, 
     29                                           unsigned options, 
     30                                           pj_ioqueue_t *ioqueue, 
     31                                           pj_timer_heap_t *timer_heap, 
     32                                           pj_stun_config **p_endpt) 
    3333{ 
    3434    pj_pool_t *pool; 
    35     pj_stun_endpoint *endpt; 
     35    pj_stun_config *endpt; 
    3636 
    3737    PJ_ASSERT_RETURN(factory && p_endpt, PJ_EINVAL); 
     
    4141        return PJ_ENOMEM; 
    4242     
    43     endpt = PJ_POOL_ZALLOC_T(pool, pj_stun_endpoint); 
     43    endpt = PJ_POOL_ZALLOC_T(pool, pj_stun_config); 
    4444    endpt->pool = pool; 
    4545    endpt->pf = factory; 
     
    5959 * Destroy STUN endpoint instance. 
    6060 */ 
    61 PJ_DEF(pj_status_t) pj_stun_endpoint_destroy(pj_stun_endpoint *endpt) 
     61PJ_DEF(pj_status_t) pj_stun_config_destroy(pj_stun_config *endpt) 
    6262{ 
    6363    PJ_ASSERT_RETURN(endpt, PJ_EINVAL); 
  • pjproject/trunk/pjnath/src/pjnath/stun_msg.c

    r1062 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
    19 #include <pjlib-util/stun_msg.h> 
     19#include <pjnath/stun_msg.h> 
     20#include <pjnath/errno.h> 
    2021#include <pjlib-util/crc32.h> 
    21 #include <pjlib-util/errno.h> 
    2222#include <pjlib-util/hmac_sha1.h> 
    2323#include <pjlib-util/md5.h> 
     
    559559    INIT_ATTR(attr, attr_type, STUN_GENERIC_IP_ADDR_LEN); 
    560560 
    561     pj_memcpy(&attr->addr, addr, addr_len); 
     561    pj_memcpy(&attr->sockaddr, addr, addr_len); 
    562562    attr->xor_ed = xor_ed; 
    563563 
     
    607607    /* Check that the attribute length is valid */ 
    608608    if (attr->hdr.length != STUN_GENERIC_IP_ADDR_LEN) 
    609         return PJLIB_UTIL_ESTUNINATTRLEN; 
     609        return PJNATH_ESTUNINATTRLEN; 
    610610 
    611611    /* Check address family */ 
     
    614614    /* Check address family is valid (only supports ipv4 for now) */ 
    615615    if (val != 1) 
    616         return PJLIB_UTIL_ESTUNIPV6NOTSUPP; 
     616        return PJNATH_ESTUNIPV6NOTSUPP; 
    617617 
    618618    /* Get port and address */ 
    619     pj_sockaddr_in_init(&attr->addr.ipv4, NULL, 0); 
    620     pj_memcpy(&attr->addr.ipv4.sin_port, buf+ATTR_HDR_LEN+2, 2); 
    621     pj_memcpy(&attr->addr.ipv4.sin_addr, buf+ATTR_HDR_LEN+4, 4); 
     619    pj_sockaddr_in_init(&attr->sockaddr.ipv4, NULL, 0); 
     620    pj_memcpy(&attr->sockaddr.ipv4.sin_port, buf+ATTR_HDR_LEN+2, 2); 
     621    pj_memcpy(&attr->sockaddr.ipv4.sin_addr, buf+ATTR_HDR_LEN+4, 4); 
    622622 
    623623    /* Done */ 
     
    645645    /* Check that the attribute length is valid */ 
    646646    if (attr->hdr.length != STUN_GENERIC_IP_ADDR_LEN) 
    647         return PJLIB_UTIL_ESTUNINATTRLEN; 
     647        return PJNATH_ESTUNINATTRLEN; 
    648648 
    649649    /* Check address family */ 
     
    652652    /* Check address family is valid (only supports ipv4 for now) */ 
    653653    if (val != 1) 
    654         return PJLIB_UTIL_ESTUNIPV6NOTSUPP; 
     654        return PJNATH_ESTUNIPV6NOTSUPP; 
    655655 
    656656    /* Get port and address */ 
    657     pj_sockaddr_in_init(&attr->addr.ipv4, NULL, 0); 
    658     pj_memcpy(&attr->addr.ipv4.sin_port, buf+ATTR_HDR_LEN+2, 2); 
    659     pj_memcpy(&attr->addr.ipv4.sin_addr, buf+ATTR_HDR_LEN+4, 4); 
    660  
    661     attr->addr.ipv4.sin_port ^= 0x2112; 
    662     attr->addr.ipv4.sin_addr.s_addr ^= pj_htonl(0x2112A442); 
     657    pj_sockaddr_in_init(&attr->sockaddr.ipv4, NULL, 0); 
     658    pj_memcpy(&attr->sockaddr.ipv4.sin_port, buf+ATTR_HDR_LEN+2, 2); 
     659    pj_memcpy(&attr->sockaddr.ipv4.sin_addr, buf+ATTR_HDR_LEN+4, 4); 
     660 
     661    attr->sockaddr.ipv4.sin_port ^= pj_htons(0x2112); 
     662    attr->sockaddr.ipv4.sin_addr.s_addr ^= pj_htonl(0x2112A442); 
    663663 
    664664    /* Done */ 
     
    694694 
    695695    /* Family (IPv4 only for now) */ 
    696     PJ_ASSERT_RETURN(ca->addr.addr.sa_family == PJ_AF_INET, PJ_EINVAL); 
     696    PJ_ASSERT_RETURN(ca->sockaddr.addr.sa_family == PJ_AF_INET, PJ_EINVAL); 
    697697    *buf++ = 1; 
    698698 
     
    701701        pj_uint16_t port; 
    702702 
    703         addr = ca->addr.ipv4.sin_addr.s_addr; 
    704         port = ca->addr.ipv4.sin_port; 
    705  
    706         port ^= 0x2112; 
     703        addr = ca->sockaddr.ipv4.sin_addr.s_addr; 
     704        port = ca->sockaddr.ipv4.sin_port; 
     705 
     706        port ^= pj_htons(0x2112); 
    707707        addr ^= pj_htonl(0x2112A442); 
    708708 
     
    717717    } else { 
    718718        /* Port */ 
    719         pj_memcpy(buf, &ca->addr.ipv4.sin_port, 2); 
     719        pj_memcpy(buf, &ca->sockaddr.ipv4.sin_port, 2); 
    720720        buf += 2; 
    721721 
    722722        /* Address */ 
    723         pj_memcpy(buf, &ca->addr.ipv4.sin_addr, 4); 
     723        pj_memcpy(buf, &ca->sockaddr.ipv4.sin_addr, 4); 
    724724        buf += 4; 
    725725    } 
     
    893893    /* Check that the attribute length is valid */ 
    894894    if (attr->hdr.length != ATTR_HDR_LEN) 
    895         return PJLIB_UTIL_ESTUNINATTRLEN; 
     895        return PJNATH_ESTUNINATTRLEN; 
    896896 
    897897    /* Done */ 
     
    993993    /* Check that the attribute length is valid */ 
    994994    if (attr->hdr.length != STUN_UINT_LEN) 
    995         return PJLIB_UTIL_ESTUNINATTRLEN; 
     995        return PJNATH_ESTUNINATTRLEN; 
    996996 
    997997    /* Done */ 
     
    10891089    /* Check that the attribute length is valid */ 
    10901090    if (attr->hdr.length != STUN_MSG_INTEGRITY_LEN) 
    1091         return PJLIB_UTIL_ESTUNINATTRLEN; 
     1091        return PJNATH_ESTUNINATTRLEN; 
    10921092 
    10931093    /* Done */ 
     
    15641564 
    15651565    if (pdu_len < sizeof(pj_stun_msg_hdr)) 
    1566         return PJLIB_UTIL_ESTUNINMSGLEN; 
     1566        return PJNATH_ESTUNINMSGLEN; 
    15671567 
    15681568    /* First byte of STUN message is always 0x00 or 0x01. */ 
    15691569    if (*pdu != 0x00 && *pdu != 0x01) 
    1570         return PJLIB_UTIL_ESTUNINMSGTYPE; 
     1570        return PJNATH_ESTUNINMSGTYPE; 
    15711571 
    15721572    /* Check the PDU length */ 
     
    15751575        ((options & PJ_STUN_IS_DATAGRAM) && msg_len + 20 != pdu_len)) 
    15761576    { 
    1577         return PJLIB_UTIL_ESTUNINMSGLEN; 
     1577        return PJNATH_ESTUNINMSGLEN; 
    15781578    } 
    15791579 
     
    15901590 
    15911591            if (attr_len != 4) 
    1592                 return PJLIB_UTIL_ESTUNINATTRLEN; 
     1592                return PJNATH_ESTUNINATTRLEN; 
    15931593 
    15941594            crc = pj_crc32_calc(pdu, msg_len + 20); 
     
    15961596 
    15971597            if (crc != fingerprint) 
    1598                 return PJLIB_UTIL_ESTUNFINGERPRINT; 
     1598                return PJNATH_ESTUNFINGERPRINT; 
    15991599        } 
    16001600    } 
     
    16191619 
    16201620    PJ_ASSERT_RETURN(PJ_STUN_IS_REQUEST(msg_type),  
    1621                      PJLIB_UTIL_ESTUNINMSGTYPE); 
     1621                     PJNATH_ESTUNINMSGTYPE); 
    16221622 
    16231623    /* Create response or error response */ 
     
    17291729                                            &err_msg, p_response); 
    17301730            } 
    1731             return PJLIB_UTIL_ESTUNINATTRLEN; 
     1731            return PJNATH_ESTUNINATTRLEN; 
    17321732        } 
    17331733 
     
    17581758                } 
    17591759 
    1760                 return PJLIB_UTIL_ESTUNUNKNOWNATTR; 
     1760                return PJNATH_ESTUNUNKNOWNATTR; 
    17611761            } 
    17621762 
     
    18061806                                                    NULL, p_response); 
    18071807                    } 
    1808                     return PJLIB_UTIL_ESTUNDUPATTR; 
     1808                    return PJNATH_ESTUNDUPATTR; 
    18091809                } 
    18101810                has_msg_int = PJ_TRUE; 
     
    18201820                                                    NULL, p_response); 
    18211821                    } 
    1822                     return PJLIB_UTIL_ESTUNDUPATTR; 
     1822                    return PJNATH_ESTUNDUPATTR; 
    18231823                } 
    18241824                has_fingerprint = PJ_TRUE; 
     
    18341834                                                    NULL, p_response); 
    18351835                    } 
    1836                     return has_fingerprint ? PJLIB_UTIL_ESTUNFINGERPOS : 
    1837                                              PJLIB_UTIL_ESTUNMSGINTPOS; 
     1836                    return has_fingerprint ? PJNATH_ESTUNFINGERPOS : 
     1837                                             PJNATH_ESTUNMSGINTPOS; 
    18381838                } 
    18391839            } 
     
    18491849                                                &e, p_response); 
    18501850                } 
    1851                 return PJLIB_UTIL_ESTUNTOOMANYATTR; 
     1851                return PJNATH_ESTUNTOOMANYATTR; 
    18521852            } 
    18531853 
     
    20282028 
    20292029        /* There mustn't any attribute after FINGERPRINT */ 
    2030         PJ_ASSERT_RETURN(afingerprint == NULL, PJLIB_UTIL_ESTUNFINGERPOS); 
     2030        PJ_ASSERT_RETURN(afingerprint == NULL, PJNATH_ESTUNFINGERPOS); 
    20312031 
    20322032        if (attr_hdr->type == PJ_STUN_ATTR_MESSAGE_INTEGRITY) { 
    20332033            /* There mustn't be MESSAGE-INTEGRITY before */ 
    20342034            PJ_ASSERT_RETURN(amsgint == NULL,  
    2035                              PJLIB_UTIL_ESTUNMSGINTPOS); 
     2035                             PJNATH_ESTUNMSGINTPOS); 
    20362036            amsgint = (pj_stun_msgint_attr*) attr_hdr; 
    20372037 
     
    20712071            /* Should not happen for message generated by us */ 
    20722072            pj_assert(PJ_FALSE); 
    2073             return PJLIB_UTIL_ESTUNMSGINTPOS; 
     2073            return PJNATH_ESTUNMSGINTPOS; 
    20742074 
    20752075        } else if (i == msg->attr_count-2)  { 
     
    20772077                /* Should not happen for message generated by us */ 
    20782078                pj_assert(PJ_FALSE); 
    2079                 return PJLIB_UTIL_ESTUNMSGINTPOS; 
     2079                return PJNATH_ESTUNMSGINTPOS; 
    20802080            } else { 
    20812081                afingerprint = (pj_stun_fingerprint_attr*) msg->attr[i+1]; 
     
    20872087            /* Should not happen for message generated by us */ 
    20882088            pj_assert(PJ_FALSE); 
    2089             return PJLIB_UTIL_ESTUNNOUSERNAME; 
     2089            return PJNATH_ESTUNNOUSERNAME; 
    20902090        } 
    20912091 
  • pjproject/trunk/pjnath/src/pjnath/stun_msg_dump.c

    r1062 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
    19 #include <pjlib-util/stun_msg.h> 
    20 #include <pjlib-util/errno.h> 
     19#include <pjnath/stun_msg.h> 
     20#include <pjnath/errno.h> 
    2121#include <pj/assert.h> 
    2222#include <pj/string.h> 
     
    8181            attr = (const pj_stun_sockaddr_attr*)ahdr; 
    8282 
    83             if (attr->addr.addr.sa_family == PJ_AF_INET) { 
     83            if (attr->sockaddr.addr.sa_family == PJ_AF_INET) { 
    8484                len = pj_ansi_snprintf(p, end-p, 
    8585                                       ", IPv4 addr=%s:%d\n", 
    86                                        pj_inet_ntoa(attr->addr.ipv4.sin_addr), 
    87                                        pj_ntohs(attr->addr.ipv4.sin_port)); 
    88  
    89             } else if (attr->addr.addr.sa_family == PJ_AF_INET6) { 
     86                                       pj_inet_ntoa(attr->sockaddr.ipv4.sin_addr), 
     87                                       pj_ntohs(attr->sockaddr.ipv4.sin_port)); 
     88 
     89            } else if (attr->sockaddr.addr.sa_family == PJ_AF_INET6) { 
    9090                len = pj_ansi_snprintf(p, end-p, 
    9191                                       ", IPv6 addr present\n"); 
  • pjproject/trunk/pjnath/src/pjnath/stun_session.c

    r1062 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
    19 #include <pjlib-util/stun_session.h> 
     19#include <pjnath/stun_session.h> 
    2020#include <pjlib.h> 
    2121 
    2222struct pj_stun_session 
    2323{ 
    24     pj_stun_endpoint    *endpt; 
     24    pj_stun_config      *cfg; 
    2525    pj_pool_t           *pool; 
    2626    pj_mutex_t          *mutex; 
     
    120120 
    121121    /* Create pool and initialize basic tdata attributes */ 
    122     pool = pj_pool_create(sess->endpt->pf, "tdata%p",  
     122    pool = pj_pool_create(sess->cfg->pf, "tdata%p",  
    123123                          TDATA_POOL_SIZE, TDATA_POOL_INC, NULL); 
    124124    PJ_ASSERT_RETURN(pool, PJ_ENOMEM); 
     
    171171    } 
    172172    if (tdata->res_timer.id != PJ_FALSE) { 
    173         pj_timer_heap_cancel(tdata->sess->endpt->timer_heap,  
     173        pj_timer_heap_cancel(tdata->sess->cfg->timer_heap,  
    174174                             &tdata->res_timer); 
    175175        tdata->res_timer.id = PJ_FALSE; 
     
    224224 
    225225    /* The server SHOULD include a SERVER attribute in all responses */ 
    226     if (PJ_STUN_IS_RESPONSE(msg->hdr.type) || 
    227         PJ_STUN_IS_ERROR_RESPONSE(msg->hdr.type))  
     226    if (sess->srv_name.slen && (PJ_STUN_IS_RESPONSE(msg->hdr.type) || 
     227                                PJ_STUN_IS_ERROR_RESPONSE(msg->hdr.type)))  
    228228    { 
    229229        pj_stun_msg_add_string_attr(pool, msg, PJ_STUN_ATTR_SERVER, 
     
    301301/* **************************************************************************/ 
    302302 
    303 PJ_DEF(pj_status_t) pj_stun_session_create( pj_stun_endpoint *endpt, 
     303PJ_DEF(pj_status_t) pj_stun_session_create( pj_stun_config *cfg, 
    304304                                            const char *name, 
    305305                                            const pj_stun_session_cb *cb, 
     
    311311    pj_status_t status; 
    312312 
    313     PJ_ASSERT_RETURN(endpt && cb && p_sess, PJ_EINVAL); 
     313    PJ_ASSERT_RETURN(cfg && cb && p_sess, PJ_EINVAL); 
    314314 
    315315    if (name==NULL) 
    316316        name = "sess%p"; 
    317317 
    318     pool = pj_pool_create(endpt->pf, name, 4000, 4000, NULL); 
     318    pool = pj_pool_create(cfg->pf, name, 4000, 4000, NULL); 
    319319    PJ_ASSERT_RETURN(pool, PJ_ENOMEM); 
    320320 
    321321    sess = PJ_POOL_ZALLOC_T(pool, pj_stun_session); 
    322     sess->endpt = endpt; 
     322    sess->cfg = cfg; 
    323323    sess->pool = pool; 
    324324    pj_memcpy(&sess->cb, cb, sizeof(*cb)); 
     
    384384                                                    const pj_str_t *srv_name) 
    385385{ 
    386     PJ_ASSERT_RETURN(sess && srv_name, PJ_EINVAL); 
    387     pj_strdup(sess->pool, &sess->srv_name, srv_name); 
     386    PJ_ASSERT_RETURN(sess, PJ_EINVAL); 
     387    if (srv_name) 
     388        pj_strdup(sess->pool, &sess->srv_name, srv_name); 
     389    else 
     390        sess->srv_name.slen = 0; 
    388391    return PJ_SUCCESS; 
    389392} 
     
    490493    char buf[512]; 
    491494     
    492     if (dst->sa_family == PJ_AF_INET) { 
    493         const pj_sockaddr_in *dst4 = (const pj_sockaddr_in*)dst; 
    494         dst_name = pj_inet_ntoa(dst4->sin_addr); 
    495         dst_port = pj_ntohs(dst4->sin_port); 
    496     } else if (dst->sa_family == PJ_AF_INET6) { 
    497         const pj_sockaddr_in6 *dst6 = (const pj_sockaddr_in6*)dst; 
     495    if (dst->addr.sa_family == PJ_AF_INET) { 
     496        dst_name = pj_inet_ntoa(dst->ipv4.sin_addr); 
     497        dst_port = pj_ntohs(dst->ipv4.sin_port); 
     498    } else if (dst->addr.sa_family == PJ_AF_INET6) { 
    498499        dst_name = "IPv6"; 
    499         dst_port = pj_ntohs(dst6->sin6_port); 
     500        dst_port = pj_ntohs(dst->ipv6.sin6_port); 
    500501    } else { 
    501502        LOG_ERR_(sess, "Invalid address family", PJ_EINVAL); 
     
    559560 
    560561        /* Create STUN client transaction */ 
    561         status = pj_stun_client_tsx_create(sess->endpt, tdata->pool,  
     562        status = pj_stun_client_tsx_create(sess->cfg, tdata->pool,  
    562563                                           &tsx_cb, &tdata->client_tsx); 
    563564        PJ_ASSERT_RETURN(status==PJ_SUCCESS, status); 
     
    593594                                &on_cache_timeout); 
    594595 
    595             timeout.sec = sess->endpt->res_cache_msec / 1000; 
    596             timeout.msec = sess->endpt->res_cache_msec % 1000; 
    597  
    598             status = pj_timer_heap_schedule(sess->endpt->timer_heap,  
     596            timeout.sec = sess->cfg->res_cache_msec / 1000; 
     597            timeout.msec = sess->cfg->res_cache_msec % 1000; 
     598 
     599            status = pj_timer_heap_schedule(sess->cfg->timer_heap,  
    599600                                            &tdata->res_timer, 
    600601                                            &timeout); 
     
    830831    PJ_ASSERT_RETURN(sess && packet && pkt_size, PJ_EINVAL); 
    831832 
    832     tmp_pool = pj_pool_create(sess->endpt->pf, "tmpstun", 1024, 1024, NULL); 
     833    tmp_pool = pj_pool_create(sess->cfg->pf, "tmpstun", 1024, 1024, NULL); 
    833834    if (!tmp_pool) 
    834835        return PJ_ENOMEM; 
  • pjproject/trunk/pjnath/src/pjnath/stun_transaction.c

    r1062 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
    19 #include <pjlib-util/stun_transaction.h> 
    20 #include <pjlib-util/errno.h> 
     19#include <pjnath/stun_transaction.h> 
     20#include <pjnath/errno.h> 
    2121#include <pj/assert.h> 
    2222#include <pj/log.h> 
     
    3232{ 
    3333    char                 obj_name[PJ_MAX_OBJ_NAME]; 
    34     pj_stun_endpoint    *endpt; 
     34    pj_stun_config      *cfg; 
    3535    pj_stun_tsx_cb       cb; 
    3636    void                *user_data; 
     
    6464 * Create a STUN client transaction. 
    6565 */ 
    66 PJ_DEF(pj_status_t) pj_stun_client_tsx_create(pj_stun_endpoint *endpt, 
     66PJ_DEF(pj_status_t) pj_stun_client_tsx_create(pj_stun_config *cfg, 
    6767                                              pj_pool_t *pool, 
    6868                                              const pj_stun_tsx_cb *cb, 
     
    7171    pj_stun_client_tsx *tsx; 
    7272 
    73     PJ_ASSERT_RETURN(endpt && cb && p_tsx, PJ_EINVAL); 
     73    PJ_ASSERT_RETURN(cfg && cb && p_tsx, PJ_EINVAL); 
    7474    PJ_ASSERT_RETURN(cb->on_send_msg, PJ_EINVAL); 
    7575 
    7676    tsx = PJ_POOL_ZALLOC_T(pool, pj_stun_client_tsx); 
    77     tsx->endpt = endpt; 
     77    tsx->cfg = cfg; 
    7878    pj_memcpy(&tsx->cb, cb, sizeof(*cb)); 
    7979 
     
    9898 
    9999    if (tsx->timer.id != 0) { 
    100         pj_timer_heap_cancel(tsx->endpt->timer_heap, &tsx->timer); 
     100        pj_timer_heap_cancel(tsx->cfg->timer_heap, &tsx->timer); 
    101101        tsx->timer.id = 0; 
    102102    } 
     
    150150        if (tsx->transmit_count == 0) { 
    151151            tsx->retransmit_time.sec = 0; 
    152             tsx->retransmit_time.msec = tsx->endpt->rto_msec; 
     152            tsx->retransmit_time.msec = tsx->cfg->rto_msec; 
    153153 
    154154        } else if (tsx->transmit_count < PJ_STUN_MAX_RETRANSMIT_COUNT-1) { 
     
    169169         * cancel transmission). 
    170170         */; 
    171         status = pj_timer_heap_schedule(tsx->endpt->timer_heap, &tsx->timer, 
     171        status = pj_timer_heap_schedule(tsx->cfg->timer_heap, &tsx->timer, 
    172172                                        &tsx->retransmit_time); 
    173173        if (status != PJ_SUCCESS) { 
     
    183183    if (status != PJ_SUCCESS) { 
    184184        if (tsx->timer.id != 0) { 
    185             pj_timer_heap_cancel(tsx->endpt->timer_heap, &tsx->timer); 
     185            pj_timer_heap_cancel(tsx->cfg->timer_heap, &tsx->timer); 
    186186            tsx->timer.id = 0; 
    187187        } 
     
    236236        tsx->complete = PJ_TRUE; 
    237237        if (tsx->cb.on_complete) { 
    238             tsx->cb.on_complete(tsx, PJLIB_UTIL_ESTUNNOTRESPOND, NULL); 
     238            tsx->cb.on_complete(tsx, PJNATH_ESTUNNOTRESPOND, NULL); 
    239239        } 
    240240        return; 
     
    269269        PJ_LOG(4,(tsx->obj_name,  
    270270                  "STUN rx_msg() error: not response message")); 
    271         return PJLIB_UTIL_ESTUNNOTRESPONSE; 
     271        return PJNATH_ESTUNNOTRESPONSE; 
    272272    } 
    273273 
     
    277277     */ 
    278278    if (tsx->timer.id) { 
    279         pj_timer_heap_cancel(tsx->endpt->timer_heap, &tsx->timer); 
     279        pj_timer_heap_cancel(tsx->cfg->timer_heap, &tsx->timer); 
    280280        tsx->timer.id = 0; 
    281281    } 
     
    301301        status = PJ_SUCCESS; 
    302302    } else { 
    303         status = PJLIB_UTIL_ESTUNTSXFAILED; 
     303        status = PJNATH_ESTUNTSXFAILED; 
    304304    } 
    305305 
  • pjproject/trunk/pjnath/src/pjstun-client/client_main.c

    r1054 r1080  
    1717 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
    1818 */ 
     19#include <pjnath.h> 
    1920#include <pjlib-util.h> 
    2021#include <pjlib.h> 
  • pjproject/trunk/pjnath/src/pjstun-srv-test/bind_usage.c

    r1054 r1080  
    8686    sess_cb.on_send_msg = &sess_on_send_msg; 
    8787    sess_cb.on_rx_request = &sess_on_rx_request; 
    88     status = pj_stun_session_create(si->endpt, "bind%p", &sess_cb, PJ_FALSE, 
     88    status = pj_stun_session_create(si->cfg, "bind%p", &sess_cb, PJ_FALSE, 
    8989                                    &bu->session); 
    9090    if (status != PJ_SUCCESS) { 
  • pjproject/trunk/pjnath/src/pjstun-srv-test/server.c

    r1049 r1080  
    8484        goto on_error; 
    8585 
    86     status = pj_stun_endpoint_create(srv->si.pf, 0, srv->si.ioqueue,  
    87                                      srv->si.timer_heap, &srv->si.endpt); 
     86    status = pj_stun_config_create(srv->si.pf, 0, srv->si.ioqueue,  
     87                                     srv->si.timer_heap, &srv->si.cfg); 
    8888    if (status != PJ_SUCCESS) 
    8989        goto on_error; 
     
    175175    } 
    176176 
    177     pj_stun_endpoint_destroy(srv->si.endpt); 
     177    pj_stun_config_destroy(srv->si.cfg); 
    178178    pj_timer_heap_destroy(srv->si.timer_heap); 
    179179    pj_ioqueue_destroy(srv->si.ioqueue); 
  • pjproject/trunk/pjnath/src/pjstun-srv-test/server.h

    r1054 r1080  
    2020#define __STUN_SERVER_H__ 
    2121 
     22#include <pjnath.h> 
    2223#include <pjlib-util.h> 
    2324#include <pjlib.h> 
     
    3132{ 
    3233    pj_pool_factory     *pf; 
    33     pj_stun_endpoint    *endpt; 
     34    pj_stun_config      *cfg; 
    3435    pj_ioqueue_t        *ioqueue; 
    3536    pj_timer_heap_t     *timer_heap; 
  • pjproject/trunk/pjnath/src/pjstun-srv-test/turn_usage.c

    r1054 r1080  
    7070{ 
    7171    pj_pool_factory     *pf; 
    72     pj_stun_endpoint    *endpt; 
     72    pj_stun_config      *cfg; 
    7373    pj_ioqueue_t        *ioqueue; 
    7474    pj_timer_heap_t     *timer_heap; 
     
    166166    tu->type = type; 
    167167    tu->pf = si->pf; 
    168     tu->endpt = si->endpt; 
     168    tu->cfg = si->cfg; 
    169169    tu->ioqueue = si->ioqueue; 
    170170    tu->timer_heap = si->timer_heap; 
     
    198198    sess_cb.on_send_msg = &tu_sess_on_send_msg; 
    199199    sess_cb.on_rx_request = &tu_sess_on_rx_request; 
    200     status = pj_stun_session_create(si->endpt, "turns%p", &sess_cb, PJ_FALSE, 
     200    status = pj_stun_session_create(si->cfg, "turns%p", &sess_cb, PJ_FALSE, 
    201201                                    &tu->default_session); 
    202202    if (status != PJ_SUCCESS) { 
     
    208208    sd->tu = tu; 
    209209    pj_stun_session_set_user_data(tu->default_session, sd); 
     210 
     211    pj_stun_session_set_server_name(tu->default_session, NULL); 
    210212 
    211213    /* Create mutex */ 
     
    621623    sess_cb.on_rx_request = &client_sess_on_rx_msg; 
    622624    sess_cb.on_rx_indication = &client_sess_on_rx_msg; 
    623     status = pj_stun_session_create(tu->endpt, client->obj_name,  
     625    status = pj_stun_session_create(tu->cfg, client->obj_name,  
    624626                                    &sess_cb, PJ_FALSE, 
    625627                                    &client->session); 
  • pjproject/trunk/pjsip/src/pjsip/sip_transport.c

    r974 r1080  
    568568    pj_memcpy(&tdata->tp_info.dst_addr, addr, addr_len); 
    569569    tdata->tp_info.dst_addr_len = addr_len; 
    570     if (((pj_sockaddr*)addr)->sa_family == PJ_AF_INET) { 
     570    if (((pj_sockaddr*)addr)->addr.sa_family == PJ_AF_INET) { 
    571571        const char *str_addr; 
    572572        str_addr = pj_inet_ntoa(((pj_sockaddr_in*)addr)->sin_addr); 
     
    13621362             */ 
    13631363            else if ((flag & PJSIP_TRANSPORT_DATAGRAM) &&  
    1364                      (remote_addr->sa_family == PJ_AF_INET))  
     1364                     (remote_addr->addr.sa_family == PJ_AF_INET))  
    13651365            { 
    13661366                pj_sockaddr_in *addr = (pj_sockaddr_in*)&key.addr; 
  • pjproject/trunk/pjsip/src/pjsip/sip_transport_tcp.c

    r974 r1080  
    787787 
    788788    /* Check that address is a sockaddr_in */ 
    789     PJ_ASSERT_RETURN(rem_addr->sa_family == PJ_AF_INET && 
     789    PJ_ASSERT_RETURN(rem_addr->addr.sa_family == PJ_AF_INET && 
    790790                     addr_len == sizeof(pj_sockaddr_in), PJ_EINVAL); 
    791791 
  • pjproject/trunk/pjsip/src/pjsip/sip_transport_udp.c

    r974 r1080  
    470470 
    471471    /* Remote address is left zero (except the family) */ 
    472     tp->base.key.rem_addr.sa_family = PJ_AF_INET; 
     472    tp->base.key.rem_addr.addr.sa_family = PJ_AF_INET; 
    473473 
    474474    /* Type name. */ 
Note: See TracChangeset for help on using the changeset viewer.