提交 eb83431d authored 作者: Anthony Minessale's avatar Anthony Minessale

add some stuff for zrtp

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13426 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 ac51db52
...@@ -448,6 +448,11 @@ SWITCH_DECLARE(switch_status_t) switch_core_perform_destroy_memory_pool(_Inout_ ...@@ -448,6 +448,11 @@ SWITCH_DECLARE(switch_status_t) switch_core_perform_destroy_memory_pool(_Inout_
*/ */
#define switch_core_destroy_memory_pool(p) switch_core_perform_destroy_memory_pool(p, __FILE__, __SWITCH_FUNC__, __LINE__) #define switch_core_destroy_memory_pool(p) switch_core_perform_destroy_memory_pool(p, __FILE__, __SWITCH_FUNC__, __LINE__)
SWITCH_DECLARE(void) switch_core_memory_pool_set_data(switch_memory_pool_t *pool, const char *key, void *data);
SWITCH_DECLARE(void *) switch_core_memory_pool_get_data(switch_memory_pool_t *pool, const char *key);
/*! /*!
\brief Start the session's state machine \brief Start the session's state machine
\param session the session on which to start the state machine \param session the session on which to start the state machine
......
...@@ -46,9 +46,11 @@ SWITCH_BEGIN_EXTERN_C ...@@ -46,9 +46,11 @@ SWITCH_BEGIN_EXTERN_C
/*! the originating source of the frame */ /*! the originating source of the frame */
const char *source; const char *source;
/*! the raw packet */ /*! the raw packet */
void *packet; void *packet;
/*! the size of the raw packet when applicable */ /*! the size of the raw packet when applicable */
uint32_t packetlen; uint32_t packetlen;
/*! the extra frame data */
void *extra_data;
/*! the frame data */ /*! the frame data */
void *data; void *data;
/*! the size of the buffer that is in use */ /*! the size of the buffer that is in use */
......
...@@ -920,7 +920,8 @@ typedef enum { ...@@ -920,7 +920,8 @@ typedef enum {
SFF_PLC = (1 << 3), SFF_PLC = (1 << 3),
SFF_RFC2833 = (1 << 4), SFF_RFC2833 = (1 << 4),
SFF_PROXY_PACKET = (1 << 5), SFF_PROXY_PACKET = (1 << 5),
SFF_DYNAMIC = (1 << 6) SFF_DYNAMIC = (1 << 6),
SFF_ZRTP = (1 << 7)
} switch_frame_flag_enum_t; } switch_frame_flag_enum_t;
typedef uint32_t switch_frame_flag_t; typedef uint32_t switch_frame_flag_t;
......
...@@ -304,6 +304,20 @@ SWITCH_DECLARE(char *) switch_core_perform_strdup(switch_memory_pool_t *pool, co ...@@ -304,6 +304,20 @@ SWITCH_DECLARE(char *) switch_core_perform_strdup(switch_memory_pool_t *pool, co
return duped; return duped;
} }
SWITCH_DECLARE(void) switch_core_memory_pool_set_data(switch_memory_pool_t *pool, const char *key, void *data)
{
apr_pool_userdata_set(data, key, NULL, pool);
}
SWITCH_DECLARE(void *) switch_core_memory_pool_get_data(switch_memory_pool_t *pool, const char *key)
{
void *data = NULL;
apr_pool_userdata_get(&data, key, pool);
return data;
}
SWITCH_DECLARE(void) switch_core_memory_pool_tag(switch_memory_pool_t *pool, const char *tag) SWITCH_DECLARE(void) switch_core_memory_pool_tag(switch_memory_pool_t *pool, const char *tag)
{ {
apr_pool_tag(pool, tag); apr_pool_tag(pool, tag);
......
...@@ -1206,6 +1206,8 @@ SWITCH_DECLARE(switch_core_session_t *) switch_core_session_request_uuid(switch_ ...@@ -1206,6 +1206,8 @@ SWITCH_DECLARE(switch_core_session_t *) switch_core_session_request_uuid(switch_
session = switch_core_alloc(usepool, sizeof(*session)); session = switch_core_alloc(usepool, sizeof(*session));
session->pool = usepool; session->pool = usepool;
switch_core_memory_pool_set_data(session->pool, "__session", session);
if (switch_channel_alloc(&session->channel, direction, session->pool) != SWITCH_STATUS_SUCCESS) { if (switch_channel_alloc(&session->channel, direction, session->pool) != SWITCH_STATUS_SUCCESS) {
abort(); abort();
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论