SDP: Make SDP translation to/from internal representation more const.
authorRichard Mudgett <rmudgett@digium.com>
Mon, 24 Apr 2017 23:13:04 +0000 (18:13 -0500)
committerRichard Mudgett <rmudgett@digium.com>
Fri, 28 Apr 2017 00:08:05 +0000 (19:08 -0500)
Change-Id: I473a174b869728604b37c60853896b0c458bc504

include/asterisk/sdp_state.h
include/asterisk/sdp_translator.h
main/sdp_state.c
main/sdp_translator.c
res/res_sdp_translator_pjmedia.c

index 88660b6..c2122fb 100644 (file)
@@ -164,7 +164,7 @@ int ast_sdp_state_set_remote_sdp(struct ast_sdp_state *sdp_state, const struct a
  *
  * \since 15
  */
-int ast_sdp_state_set_remote_sdp_from_impl(struct ast_sdp_state *sdp_state, void *remote);
+int ast_sdp_state_set_remote_sdp_from_impl(struct ast_sdp_state *sdp_state, const void *remote);
 
 /*!
  * \brief Reset the SDP state and stream capabilities as if the SDP state had just been allocated.
index 09901af..e1d51f0 100644 (file)
@@ -34,9 +34,9 @@ struct ast_sdp_translator_ops {
        /*! Free translator private data */
        void (*translator_free)(void *translator_priv);
        /*! Convert the channel-native SDP into an internal Asterisk SDP */
-       struct ast_sdp *(*to_sdp)(void *repr_sdp, void *translator_priv);
+       struct ast_sdp *(*to_sdp)(const void *repr_sdp, void *translator_priv);
        /*! Convert an internal Asterisk SDP into a channel-native SDP */
-       void *(*from_sdp)(const struct ast_sdp *sdp, void *translator_priv);
+       const void *(*from_sdp)(const struct ast_sdp *sdp, void *translator_priv);
 };
 
 /*!
@@ -87,7 +87,7 @@ void ast_sdp_translator_free(struct ast_sdp_translator *translator);
  * \retval NULL FAIL
  * \retval Non-NULL The translated SDP
  */
-struct ast_sdp *ast_sdp_translator_to_sdp(struct ast_sdp_translator *translator, void *native_sdp);
+struct ast_sdp *ast_sdp_translator_to_sdp(struct ast_sdp_translator *translator, const void *native_sdp);
 
 /*!
  * \brief Translate an internal Asterisk SDP to a native SDP
@@ -97,7 +97,7 @@ struct ast_sdp *ast_sdp_translator_to_sdp(struct ast_sdp_translator *translator,
  * \retval NULL FAIL
  * \retval non-NULL The translated SDP
  */
-void *ast_sdp_translator_from_sdp(struct ast_sdp_translator *translator,
+const void *ast_sdp_translator_from_sdp(struct ast_sdp_translator *translator,
        const struct ast_sdp *ast_sdp);
 
 #endif /* _ASTERISK_SDP_TRANSLATOR_H */
index 2c018b1..dddc79c 100644 (file)
@@ -1084,7 +1084,7 @@ int ast_sdp_state_set_remote_sdp(struct ast_sdp_state *sdp_state, const struct a
        return merge_sdps(sdp_state, sdp);
 }
 
-int ast_sdp_state_set_remote_sdp_from_impl(struct ast_sdp_state *sdp_state, void *remote)
+int ast_sdp_state_set_remote_sdp_from_impl(struct ast_sdp_state *sdp_state, const void *remote)
 {
        struct ast_sdp *sdp;
        int ret;
index 2426b10..6fe330a 100644 (file)
@@ -92,12 +92,12 @@ void ast_sdp_translator_free(struct ast_sdp_translator *translator)
 }
 
 struct ast_sdp *ast_sdp_translator_to_sdp(struct ast_sdp_translator *translator,
-       void *native_sdp)
+       const void *native_sdp)
 {
        return translator->ops->to_sdp(native_sdp, translator->translator_priv);
 }
 
-void *ast_sdp_translator_from_sdp(struct ast_sdp_translator *translator,
+const void *ast_sdp_translator_from_sdp(struct ast_sdp_translator *translator,
        const struct ast_sdp *ast_sdp)
 {
        return translator->ops->from_sdp(ast_sdp, translator->translator_priv);
index 6ad1e9b..3b9c26c 100644 (file)
@@ -89,7 +89,7 @@ static struct ast_sdp_m_line *pjmedia_copy_m_line(struct pjmedia_sdp_media *pjme
        return m_line;
 }
 
-static void pjmedia_copy_a_lines(struct ast_sdp *new_sdp, pjmedia_sdp_session *pjmedia_sdp)
+static void pjmedia_copy_a_lines(struct ast_sdp *new_sdp, const pjmedia_sdp_session *pjmedia_sdp)
 {
        int i;
 
@@ -100,7 +100,7 @@ static void pjmedia_copy_a_lines(struct ast_sdp *new_sdp, pjmedia_sdp_session *p
 }
 
 static void pjmedia_copy_m_lines(struct ast_sdp *new_sdp,
-       struct pjmedia_sdp_session *pjmedia_sdp)
+       const struct pjmedia_sdp_session *pjmedia_sdp)
 {
        int i;
 
@@ -109,9 +109,9 @@ static void pjmedia_copy_m_lines(struct ast_sdp *new_sdp,
        }
 }
 
-static struct ast_sdp *pjmedia_to_sdp(void *in, void *translator_priv)
+static struct ast_sdp *pjmedia_to_sdp(const void *in, void *translator_priv)
 {
-       struct pjmedia_sdp_session *pjmedia_sdp = in;
+       const struct pjmedia_sdp_session *pjmedia_sdp = in;
 
        struct ast_sdp_o_line *o_line = ast_sdp_o_alloc(dupa_pj_str(pjmedia_sdp->origin.user),
                pjmedia_sdp->origin.id, pjmedia_sdp->origin.version,
@@ -239,7 +239,7 @@ static void copy_m_lines_pjmedia(pj_pool_t *pool, pjmedia_sdp_session *pjmedia_s
        }
 }
 
-static void *sdp_to_pjmedia(const struct ast_sdp *sdp, void *translator_priv)
+static const void *sdp_to_pjmedia(const struct ast_sdp *sdp, void *translator_priv)
 {
        pj_pool_t *pool = translator_priv;
        pjmedia_sdp_session *pjmedia_sdp;
@@ -470,7 +470,7 @@ AST_TEST_DEFINE(sdp_to_pjmedia_test)
       "a=rtpmap:32 MPV/90000\r\n\r\n";
        pj_pool_t *pool;
        pjmedia_sdp_session *pjmedia_sdp_orig;
-       pjmedia_sdp_session *pjmedia_sdp_dup;
+       const pjmedia_sdp_session *pjmedia_sdp_dup;
        struct ast_sdp *sdp = NULL;
        pj_status_t status;
        enum ast_test_result_state res = AST_TEST_PASS;