Author: mmichelson
Date: Mon Apr  6 16:46:55 2015
New Revision: 434169

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=434169
Log:
Resolve conflicts and reset automerge.


Modified:
    team/group/dns/   (props changed)
    team/group/dns/channels/chan_sip.c
    team/group/dns/include/asterisk/inline_api.h
    team/group/dns/main/ccss.c
    team/group/dns/main/dns_naptr.c
    team/group/dns/main/dsp.c
    team/group/dns/main/framehook.c
    team/group/dns/main/manager.c
    team/group/dns/pbx/pbx_config.c
    team/group/dns/res/parking/parking_tests.c
    team/group/dns/res/res_pjsip.c
    team/group/dns/res/res_pjsip/pjsip_configuration.c
    team/group/dns/utils/extconf.c

Propchange: team/group/dns/
------------------------------------------------------------------------------
    automerge = *

Propchange: team/group/dns/
------------------------------------------------------------------------------
Binary property 'branch-13-merged' - no diff available.

Propchange: team/group/dns/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Mon Apr  6 16:46:55 2015
@@ -1,1 +1,1 @@
-/trunk:1-434047
+/trunk:1-434168

Modified: team/group/dns/channels/chan_sip.c
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns/channels/chan_sip.c?view=diff&rev=434169&r1=434168&r2=434169
==============================================================================
--- team/group/dns/channels/chan_sip.c (original)
+++ team/group/dns/channels/chan_sip.c Mon Apr  6 16:46:55 2015
@@ -9585,7 +9585,8 @@
 {
        char *c = ast_str_buffer(req->data);
        ptrdiff_t *dst = req->header;
-       int i = 0, lim = SIP_MAX_HEADERS - 1;
+       int i = 0;
+       unsigned int lim = SIP_MAX_HEADERS - 1;
        unsigned int skipping_headers = 0;
        ptrdiff_t current_header_offset = 0;
        char *previous_header = "";

Modified: team/group/dns/include/asterisk/inline_api.h
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns/include/asterisk/inline_api.h?view=diff&rev=434169&r1=434168&r2=434169
==============================================================================
--- team/group/dns/include/asterisk/inline_api.h (original)
+++ team/group/dns/include/asterisk/inline_api.h Mon Apr  6 16:46:55 2015
@@ -48,7 +48,7 @@
 #if !defined(LOW_MEMORY) && !defined(DISABLE_INLINE)
 
 #if !defined(AST_API_MODULE)
-#if defined(__clang__)
+#if defined(__clang__) || defined(__GNUC_STDC_INLINE__)
 #define AST_INLINE_API(hdr, body) static hdr; static inline hdr body
 #else /* if defined(__clang__) */
 #define AST_INLINE_API(hdr, body) hdr; extern inline hdr body

Modified: team/group/dns/main/ccss.c
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns/main/ccss.c?view=diff&rev=434169&r1=434168&r2=434169
==============================================================================
--- team/group/dns/main/ccss.c (original)
+++ team/group/dns/main/ccss.c Mon Apr  6 16:46:55 2015
@@ -825,7 +825,7 @@
                return 0;
        }
 
-       if (!sscanf(value, "%30u", &value_as_uint) == 1) {
+       if (sscanf(value, "%30u", &value_as_uint) != 1) {
                return -1;
        }
 

Modified: team/group/dns/main/dns_naptr.c
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns/main/dns_naptr.c?view=diff&rev=434169&r1=434168&r2=434169
==============================================================================
--- team/group/dns/main/dns_naptr.c (original)
+++ team/group/dns/main/dns_naptr.c Mon Apr  6 16:46:55 2015
@@ -41,6 +41,7 @@
 #include "asterisk/dns_internal.h"
 #include "asterisk/utils.h"
 
+<<<<<<< .working
 /*!
  * \brief Result of analyzing NAPTR flags on a record
  */

Modified: team/group/dns/main/dsp.c
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns/main/dsp.c?view=diff&rev=434169&r1=434168&r2=434169
==============================================================================
--- team/group/dns/main/dsp.c (original)
+++ team/group/dns/main/dsp.c Mon Apr  6 16:46:55 2015
@@ -112,9 +112,11 @@
        { "uk", PROG_MODE_UK },
 };
 
+#define FREQ_ARRAY_SIZE 7
+
 static struct progress {
        enum gsamp_size size;
-       int freqs[7];
+       int freqs[FREQ_ARRAY_SIZE];
 } modes[] = {
        { GSAMP_SIZE_NA, { 350, 440, 480, 620, 950, 1400, 1800 } },     /*!< 
North America */
        { GSAMP_SIZE_CR, { 425 } },                                     /*!< 
Costa Rica, Brazil */
@@ -389,7 +391,7 @@
        struct ast_dsp_busy_pattern busy_cadence;
        int historicnoise[DSP_HISTORY];
        int historicsilence[DSP_HISTORY];
-       goertzel_state_t freqs[7];
+       goertzel_state_t freqs[FREQ_ARRAY_SIZE];
        int freqcount;
        int gsamps;
        enum gsamp_size gsamp_size;
@@ -1036,6 +1038,8 @@
        int pass;
        int newstate = DSP_TONE_STATE_SILENCE;
        int res = 0;
+       int freqcount = dsp->freqcount > FREQ_ARRAY_SIZE ? FREQ_ARRAY_SIZE : 
dsp->freqcount;
+
        while (len) {
                /* Take the lesser of the number of samples we need and what we 
have */
                pass = len;
@@ -1045,7 +1049,7 @@
                for (x = 0; x < pass; x++) {
                        samp = s[x];
                        dsp->genergy += (int32_t) samp * (int32_t) samp;
-                       for (y = 0; y < dsp->freqcount; y++) {
+                       for (y = 0; y < freqcount; y++) {
                                goertzel_sample(&dsp->freqs[y], samp);
                        }
                }
@@ -1053,8 +1057,8 @@
                dsp->gsamps += pass;
                len -= pass;
                if (dsp->gsamps == dsp->gsamp_size) {
-                       float hz[7];
-                       for (y = 0; y < 7; y++) {
+                       float hz[FREQ_ARRAY_SIZE];
+                       for (y = 0; y < FREQ_ARRAY_SIZE; y++) {
                                hz[y] = goertzel_result(&dsp->freqs[y]);
                        }
                        switch (dsp->progmode) {
@@ -1642,7 +1646,7 @@
 
        dsp->gsamp_size = modes[dsp->progmode].size;
        dsp->gsamps = 0;
-       for (x = 0; x < ARRAY_LEN(modes[dsp->progmode].freqs); x++) {
+       for (x = 0; x < FREQ_ARRAY_SIZE; x++) {
                if (modes[dsp->progmode].freqs[x]) {
                        goertzel_init(&dsp->freqs[x], 
(float)modes[dsp->progmode].freqs[x], dsp->sample_rate);
                        max = x + 1;
@@ -1668,6 +1672,7 @@
                dsp->digitmode = DSP_DIGITMODE_DTMF;
                dsp->faxmode = DSP_FAXMODE_DETECT_CNG;
                dsp->sample_rate = sample_rate;
+               dsp->freqcount = 0;
                /* Initialize digit detector */
                ast_digit_detect_init(&dsp->digit_state, dsp->digitmode & 
DSP_DIGITMODE_MF, dsp->sample_rate);
                dsp->display_inband_dtmf_warning = 1;

Modified: team/group/dns/main/framehook.c
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns/main/framehook.c?view=diff&rev=434169&r1=434168&r2=434169
==============================================================================
--- team/group/dns/main/framehook.c (original)
+++ team/group/dns/main/framehook.c Mon Apr  6 16:46:55 2015
@@ -137,7 +137,7 @@
        struct ast_framehook_list *fh_list;
        struct ast_frame *frame;
        if (i->version != AST_FRAMEHOOK_INTERFACE_VERSION) {
-               ast_log(LOG_ERROR, "Version '%hu' of framehook interface not 
what we compiled against (%hu)\n",
+               ast_log(LOG_ERROR, "Version '%hu' of framehook interface not 
what we compiled against (%i)\n",
                        i->version, AST_FRAMEHOOK_INTERFACE_VERSION);
                return -1;
        }

Modified: team/group/dns/main/manager.c
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns/main/manager.c?view=diff&rev=434169&r1=434168&r2=434169
==============================================================================
--- team/group/dns/main/manager.c (original)
+++ team/group/dns/main/manager.c Mon Apr  6 16:46:55 2015
@@ -4803,7 +4803,7 @@
 static int check_blacklist(const char *cmd)
 {
        char *cmd_copy, *cur_cmd;
-       char *cmd_words[MAX_BLACKLIST_CMD_LEN] = { NULL, };
+       char *cmd_words[AST_MAX_CMD_LEN] = { NULL, };
        int i;
 
        cmd_copy = ast_strdupa(cmd);

Modified: team/group/dns/pbx/pbx_config.c
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns/pbx/pbx_config.c?view=diff&rev=434169&r1=434168&r2=434169
==============================================================================
--- team/group/dns/pbx/pbx_config.c (original)
+++ team/group/dns/pbx/pbx_config.c Mon Apr  6 16:46:55 2015
@@ -956,7 +956,9 @@
                                        const char *el = 
ast_get_extension_label(p);
                                        char label[128] = "";
                                        char *appdata = 
ast_get_extension_app_data(p);
-                                       char *escaped;
+
+                                       int escaped_len = 
(!ast_strlen_zero(appdata)) ? 2 * strlen(appdata) + 1 : 1;
+                                       char escaped[escaped_len];
 
                                        if (ast_get_extension_matchcid(p)) {
                                                sep = "/";
@@ -970,12 +972,9 @@
                                        }
 
                                        if (!ast_strlen_zero(appdata)) {
-                                               int escaped_len = 2 * 
strlen(appdata) + 1;
-                                               char escaped[escaped_len];
-
                                                ast_escape_semicolons(appdata, 
escaped, escaped_len);
                                        } else {
-                                               escaped = "";
+                                               escaped[0] = '\0';
                                        }
 
                                        fprintf(output, "exten => 
%s%s%s,%d%s,%s(%s)\n",

Modified: team/group/dns/res/parking/parking_tests.c
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns/res/parking/parking_tests.c?view=diff&rev=434169&r1=434168&r2=434169
==============================================================================
--- team/group/dns/res/parking/parking_tests.c (original)
+++ team/group/dns/res/parking/parking_tests.c Mon Apr  6 16:46:55 2015
@@ -137,15 +137,6 @@
        }
 }
 
-static int fake_fixup(struct ast_channel *clonechan, struct ast_channel 
*original)
-{
-       return 0;
-}
-
-static const struct ast_channel_tech fake_tech = {
-       .fixup = fake_fixup, /* silence warning from masquerade... though those 
shouldn't be happening now */
-};
-
 #define TEST_LOT_NAME "unit_tests_res_parking_test_lot"
 
 static struct parking_lot *generate_test_parking_lot(const char *name, int 
low_space, int high_space, const char *park_exten, const char *park_context, 
struct ast_test *test)

Modified: team/group/dns/res/res_pjsip.c
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns/res/res_pjsip.c?view=diff&rev=434169&r1=434168&r2=434169
==============================================================================
--- team/group/dns/res/res_pjsip.c (original)
+++ team/group/dns/res/res_pjsip.c Mon Apr  6 16:46:55 2015
@@ -347,10 +347,11 @@
                                        <synopsis>Session timers for SIP 
packets</synopsis>
                                        <description>
                                                <enumlist>
-                                                       <enum name="forced" />
                                                        <enum name="no" />
+                                                       <enum name="yes" />
                                                        <enum name="required" />
-                                                       <enum name="yes" />
+                                                       <enum name="always" />
+                                                       <enum 
name="forced"><para>Alias of always</para></enum>
                                                </enumlist>
                                        </description>
                                </configOption>

Modified: team/group/dns/res/res_pjsip/pjsip_configuration.c
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns/res/res_pjsip/pjsip_configuration.c?view=diff&rev=434169&r1=434168&r2=434169
==============================================================================
--- team/group/dns/res/res_pjsip/pjsip_configuration.c (original)
+++ team/group/dns/res/res_pjsip/pjsip_configuration.c Mon Apr  6 16:46:55 2015
@@ -141,13 +141,14 @@
 {
        struct ast_sip_endpoint *endpoint = obj;
 
+       /* clear all */
+       endpoint->extensions.flags &= ~(PJSIP_INV_SUPPORT_100REL | 
PJSIP_INV_REQUIRE_100REL);
+
        if (ast_true(var->value)) {
                endpoint->extensions.flags |= PJSIP_INV_SUPPORT_100REL;
-       } else if (ast_false(var->value)) {
-               endpoint->extensions.flags &= ~PJSIP_INV_SUPPORT_100REL;
        } else if (!strcasecmp(var->value, "required")) {
                endpoint->extensions.flags |= PJSIP_INV_REQUIRE_100REL;
-       } else {
+       } else if (!ast_false(var->value)){
                return -1;
        }
 
@@ -174,15 +175,18 @@
 {
        struct ast_sip_endpoint *endpoint = obj;
 
+       /* clear all */
+       endpoint->extensions.flags &= ~(PJSIP_INV_SUPPORT_TIMER | 
PJSIP_INV_REQUIRE_TIMER
+                                       | PJSIP_INV_ALWAYS_USE_TIMER);
+
+       /* set only the specified flag and let pjsip normalize if needed */
        if (ast_true(var->value)) {
                endpoint->extensions.flags |= PJSIP_INV_SUPPORT_TIMER;
-       } else if (ast_false(var->value)) {
-               endpoint->extensions.flags &= PJSIP_INV_SUPPORT_TIMER;
        } else if (!strcasecmp(var->value, "required")) {
                endpoint->extensions.flags |= PJSIP_INV_REQUIRE_TIMER;
-       } else if (!strcasecmp(var->value, "always")) {
+       } else if (!strcasecmp(var->value, "always") || !strcasecmp(var->value, 
"forced")) {
                endpoint->extensions.flags |= PJSIP_INV_ALWAYS_USE_TIMER;
-       } else {
+       } else if (!ast_false(var->value)) {
                return -1;
        }
 

Modified: team/group/dns/utils/extconf.c
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns/utils/extconf.c?view=diff&rev=434169&r1=434168&r2=434169
==============================================================================
--- team/group/dns/utils/extconf.c (original)
+++ team/group/dns/utils/extconf.c Mon Apr  6 16:46:55 2015
@@ -472,151 +472,6 @@
        return res;
 }
 
-static inline int __ast_cond_init(const char *filename, int lineno, const char 
*func,
-                                 const char *cond_name, ast_cond_t *cond, 
pthread_condattr_t *cond_attr)
-{
-       return pthread_cond_init(cond, cond_attr);
-}
-
-static inline int __ast_cond_signal(const char *filename, int lineno, const 
char *func,
-                                   const char *cond_name, ast_cond_t *cond)
-{
-       return pthread_cond_signal(cond);
-}
-
-static inline int __ast_cond_broadcast(const char *filename, int lineno, const 
char *func,
-                                      const char *cond_name, ast_cond_t *cond)
-{
-       return pthread_cond_broadcast(cond);
-}
-
-static inline int __ast_cond_destroy(const char *filename, int lineno, const 
char *func,
-                                    const char *cond_name, ast_cond_t *cond)
-{
-       return pthread_cond_destroy(cond);
-}
-
-static inline int __ast_cond_wait(const char *filename, int lineno, const char 
*func,
-                                 const char *cond_name, const char *mutex_name,
-                                 ast_cond_t *cond, ast_mutex_t *t)
-{
-       int res;
-       int canlog = strcmp(filename, "logger.c");
-
-#ifdef AST_MUTEX_INIT_W_CONSTRUCTORS
-       if ((t->mutex) == ((pthread_mutex_t) PTHREAD_MUTEX_INITIALIZER)) {
-               __ast_mutex_logger("%s line %d (%s): Error: mutex '%s' is 
uninitialized.\n",
-                                  filename, lineno, func, mutex_name);
-       }
-#endif
-
-       if (t->reentrancy && (t->thread[t->reentrancy-1] != pthread_self())) {
-               __ast_mutex_logger("%s line %d (%s): attempted unlock mutex 
'%s' without owning it!\n",
-                                  filename, lineno, func, mutex_name);
-               __ast_mutex_logger("%s line %d (%s): '%s' was locked here.\n",
-                                  t->file[t->reentrancy-1], 
t->lineno[t->reentrancy-1], t->func[t->reentrancy-1], mutex_name);
-               DO_THREAD_CRASH;
-       }
-
-       if (--t->reentrancy < 0) {
-               __ast_mutex_logger("%s line %d (%s): mutex '%s' freed more 
times than we've locked!\n",
-                                  filename, lineno, func, mutex_name);
-               t->reentrancy = 0;
-       }
-
-       if (t->reentrancy < AST_MAX_REENTRANCY) {
-               t->file[t->reentrancy] = NULL;
-               t->lineno[t->reentrancy] = 0;
-               t->func[t->reentrancy] = NULL;
-               t->thread[t->reentrancy] = 0;
-       }
-
-       if ((res = pthread_cond_wait(cond, &t->mutex))) {
-               __ast_mutex_logger("%s line %d (%s): Error waiting on condition 
mutex '%s'\n", 
-                                  filename, lineno, func, strerror(res));
-               DO_THREAD_CRASH;
-       } else {
-               if (t->reentrancy < AST_MAX_REENTRANCY) {
-                       t->file[t->reentrancy] = filename;
-                       t->lineno[t->reentrancy] = lineno;
-                       t->func[t->reentrancy] = func;
-                       t->thread[t->reentrancy] = pthread_self();
-                       t->reentrancy++;
-               } else {
-                       __ast_mutex_logger("%s line %d (%s): '%s' really deep 
reentrancy!\n",
-                                                          filename, lineno, 
func, mutex_name);
-               }
-       }
-
-       return res;
-}
-
-static inline int __ast_cond_timedwait(const char *filename, int lineno, const 
char *func,
-                                      const char *cond_name, const char 
*mutex_name, ast_cond_t *cond,
-                                      ast_mutex_t *t, const struct timespec 
*abstime)
-{
-       int res;
-       int canlog = strcmp(filename, "logger.c");
-
-#ifdef AST_MUTEX_INIT_W_CONSTRUCTORS
-       if ((t->mutex) == ((pthread_mutex_t) PTHREAD_MUTEX_INITIALIZER)) {
-               __ast_mutex_logger("%s line %d (%s): Error: mutex '%s' is 
uninitialized.\n",
-                                  filename, lineno, func, mutex_name);
-       }
-#endif
-
-       if (t->reentrancy && (t->thread[t->reentrancy-1] != pthread_self())) {
-               __ast_mutex_logger("%s line %d (%s): attempted unlock mutex 
'%s' without owning it!\n",
-                                  filename, lineno, func, mutex_name);
-               __ast_mutex_logger("%s line %d (%s): '%s' was locked here.\n",
-                                  t->file[t->reentrancy-1], 
t->lineno[t->reentrancy-1], t->func[t->reentrancy-1], mutex_name);
-               DO_THREAD_CRASH;
-       }
-
-       if (--t->reentrancy < 0) {
-               __ast_mutex_logger("%s line %d (%s): mutex '%s' freed more 
times than we've locked!\n",
-                                  filename, lineno, func, mutex_name);
-               t->reentrancy = 0;
-       }
-
-       if (t->reentrancy < AST_MAX_REENTRANCY) {
-               t->file[t->reentrancy] = NULL;
-               t->lineno[t->reentrancy] = 0;
-               t->func[t->reentrancy] = NULL;
-               t->thread[t->reentrancy] = 0;
-       }
-
-       if ((res = pthread_cond_timedwait(cond, &t->mutex, abstime)) && (res != 
ETIMEDOUT)) {
-               __ast_mutex_logger("%s line %d (%s): Error waiting on condition 
mutex '%s'\n", 
-                                  filename, lineno, func, strerror(res));
-               DO_THREAD_CRASH;
-       } else {
-               if (t->reentrancy < AST_MAX_REENTRANCY) {
-                       t->file[t->reentrancy] = filename;
-                       t->lineno[t->reentrancy] = lineno;
-                       t->func[t->reentrancy] = func;
-                       t->thread[t->reentrancy] = pthread_self();
-                       t->reentrancy++;
-               } else {
-                       __ast_mutex_logger("%s line %d (%s): '%s' really deep 
reentrancy!\n",
-                                                          filename, lineno, 
func, mutex_name);
-               }
-       }
-
-       return res;
-}
-
-#define ast_mutex_destroy(a) __ast_pthread_mutex_destroy(__FILE__, __LINE__, 
__PRETTY_FUNCTION__, #a, a)
-#define ast_mutex_lock(a) __ast_pthread_mutex_lock(__FILE__, __LINE__, 
__PRETTY_FUNCTION__, #a, a)
-#define ast_mutex_unlock(a) __ast_pthread_mutex_unlock(__FILE__, __LINE__, 
__PRETTY_FUNCTION__, #a, a)
-#define ast_mutex_trylock(a) __ast_pthread_mutex_trylock(__FILE__, __LINE__, 
__PRETTY_FUNCTION__, #a, a)
-#define ast_cond_init(cond, attr) __ast_cond_init(__FILE__, __LINE__, 
__PRETTY_FUNCTION__, #cond, cond, attr)
-#define ast_cond_destroy(cond) __ast_cond_destroy(__FILE__, __LINE__, 
__PRETTY_FUNCTION__, #cond, cond)
-#define ast_cond_signal(cond) __ast_cond_signal(__FILE__, __LINE__, 
__PRETTY_FUNCTION__, #cond, cond)
-#define ast_cond_broadcast(cond) __ast_cond_broadcast(__FILE__, __LINE__, 
__PRETTY_FUNCTION__, #cond, cond)
-#define ast_cond_wait(cond, mutex) __ast_cond_wait(__FILE__, __LINE__, 
__PRETTY_FUNCTION__, #cond, #mutex, cond, mutex)
-#define ast_cond_timedwait(cond, mutex, time) __ast_cond_timedwait(__FILE__, 
__LINE__, __PRETTY_FUNCTION__, #cond, #mutex, cond, mutex, time)
-
 #else /* !DEBUG_THREADS */
 
 
@@ -636,57 +491,7 @@
 
 #define ast_pthread_mutex_init(pmutex,a) pthread_mutex_init(pmutex,a)
 
-static inline int ast_mutex_unlock(ast_mutex_t *pmutex)
-{
-       return pthread_mutex_unlock(pmutex);
-}
-
-static inline int ast_mutex_destroy(ast_mutex_t *pmutex)
-{
-       return pthread_mutex_destroy(pmutex);
-}
-
-static inline int ast_mutex_lock(ast_mutex_t *pmutex)
-{
-       __MTX_PROF(pmutex);
-}
-
-static inline int ast_mutex_trylock(ast_mutex_t *pmutex)
-{
-       return pthread_mutex_trylock(pmutex);
-}
-
 typedef pthread_cond_t ast_cond_t;
-
-static inline int ast_cond_init(ast_cond_t *cond, pthread_condattr_t 
*cond_attr)
-{
-       return pthread_cond_init(cond, cond_attr);
-}
-
-static inline int ast_cond_signal(ast_cond_t *cond)
-{
-       return pthread_cond_signal(cond);
-}
-
-static inline int ast_cond_broadcast(ast_cond_t *cond)
-{
-       return pthread_cond_broadcast(cond);
-}
-
-static inline int ast_cond_destroy(ast_cond_t *cond)
-{
-       return pthread_cond_destroy(cond);
-}
-
-static inline int ast_cond_wait(ast_cond_t *cond, ast_mutex_t *t)
-{
-       return pthread_cond_wait(cond, t);
-}
-
-static inline int ast_cond_timedwait(ast_cond_t *cond, ast_mutex_t *t, const 
struct timespec *abstime)
-{
-       return pthread_cond_timedwait(cond, t, abstime);
-}
 
 #endif /* !DEBUG_THREADS */
 
@@ -699,10 +504,6 @@
 { \
        ast_mutex_init(&mutex); \
 } \
-static void  __attribute__((destructor)) fini_##mutex(void) \
-{ \
-       ast_mutex_destroy(&mutex); \
-}
 #else /* !AST_MUTEX_INIT_W_CONSTRUCTORS */
 /* By default, use static initialization of mutexes. */ 
 #define __AST_MUTEX_DEFINE(scope, mutex) \
@@ -710,18 +511,8 @@
 #endif /* AST_MUTEX_INIT_W_CONSTRUCTORS */
 
 #define pthread_mutex_t use_ast_mutex_t_instead_of_pthread_mutex_t
-#define pthread_mutex_lock use_ast_mutex_lock_instead_of_pthread_mutex_lock
-#define pthread_mutex_unlock 
use_ast_mutex_unlock_instead_of_pthread_mutex_unlock
-#define pthread_mutex_trylock 
use_ast_mutex_trylock_instead_of_pthread_mutex_trylock
 #define pthread_mutex_init use_ast_mutex_init_instead_of_pthread_mutex_init
-#define pthread_mutex_destroy 
use_ast_mutex_destroy_instead_of_pthread_mutex_destroy
 #define pthread_cond_t use_ast_cond_t_instead_of_pthread_cond_t
-#define pthread_cond_init use_ast_cond_init_instead_of_pthread_cond_init
-#define pthread_cond_destroy 
use_ast_cond_destroy_instead_of_pthread_cond_destroy
-#define pthread_cond_signal use_ast_cond_signal_instead_of_pthread_cond_signal
-#define pthread_cond_broadcast 
use_ast_cond_broadcast_instead_of_pthread_cond_broadcast
-#define pthread_cond_wait use_ast_cond_wait_instead_of_pthread_cond_wait
-#define pthread_cond_timedwait 
use_ast_cond_timedwait_instead_of_pthread_cond_timedwait
 
 #define AST_MUTEX_DEFINE_STATIC(mutex) __AST_MUTEX_DEFINE(static, mutex)
 
@@ -763,19 +554,9 @@
        return pthread_rwlock_rdlock(prwlock);
 }
 
-static inline int ast_rwlock_tryrdlock(ast_rwlock_t *prwlock)
-{
-       return pthread_rwlock_tryrdlock(prwlock);
-}
-
 static inline int ast_rwlock_wrlock(ast_rwlock_t *prwlock)
 {
        return pthread_rwlock_wrlock(prwlock);
-}
-
-static inline int ast_rwlock_trywrlock(ast_rwlock_t *prwlock)
-{
-       return pthread_rwlock_trywrlock(prwlock);
 }
 
 /* Statically declared read/write locks */
@@ -881,18 +662,7 @@
 })
 #endif
 
-#ifndef DEBUG_CHANNEL_LOCKS
-/*! \brief Lock a channel. If DEBUG_CHANNEL_LOCKS is defined 
-       in the Makefile, print relevant output for debugging */
-#define ast_channel_lock(x)            ast_mutex_lock(&x->lock)
-/*! \brief Unlock a channel. If DEBUG_CHANNEL_LOCKS is defined 
-       in the Makefile, print relevant output for debugging */
-#define ast_channel_unlock(x)          ast_mutex_unlock(&x->lock)
-/*! \brief Try locking a channel. If DEBUG_CHANNEL_LOCKS is defined 
-       in the Makefile, print relevant output for debugging */
-#define ast_channel_trylock(x)         ast_mutex_trylock(&x->lock)
-#else
-
+#ifdef DEBUG_CHANNEL_LOCKS
 /*! \brief Lock AST channel (and print debugging output)
 \note You need to enable DEBUG_CHANNEL_LOCKS for this function */
 int ast_channel_lock(struct ast_channel *chan);
@@ -952,22 +722,19 @@
 #define ast_vasprintf(ret, fmt, ap) \
        _ast_vasprintf((ret), __FILE__, __LINE__, __PRETTY_FUNCTION__, (fmt), 
(ap))
 
-
-static unsigned int __unsigned_int_flags_dummy;
-
 struct ast_flags {  /* stolen from utils.h */
        unsigned int flags;
 };
 #define ast_test_flag(p,flag)          ({ \
                                        typeof ((p)->flags) __p = (p)->flags; \
-                                       typeof (__unsigned_int_flags_dummy) __x 
= 0; \
+                                       unsigned int __x = 0; \
                                        (void) (&__p == &__x); \
                                        ((p)->flags & (flag)); \
                                        })
 
 #define ast_set2_flag(p,value,flag)    do { \
                                        typeof ((p)->flags) __p = (p)->flags; \
-                                       typeof (__unsigned_int_flags_dummy) __x 
= 0; \
+                                       unsigned int __x = 0; \
                                        (void) (&__p == &__x); \
                                        if (value) \
                                                (p)->flags |= (flag); \
@@ -1907,9 +1674,6 @@
 
 /* linkedlists.h */
 
-#define AST_LIST_LOCK(head)                                            \
-       ast_mutex_lock(&(head)->lock) 
-
 /*!
   \brief Write locks a list.
   \param head This is a pointer to the list head structure
@@ -1932,50 +1696,6 @@
 #define AST_RWLIST_RDLOCK(head)                                         \
         ast_rwlock_rdlock(&(head)->lock)
        
-/*!
-  \brief Locks a list, without blocking if the list is locked.
-  \param head This is a pointer to the list head structure
-
-  This macro attempts to place an exclusive lock in the
-  list head structure pointed to by head.
-  Returns non-zero on success, 0 on failure
-*/
-#define AST_LIST_TRYLOCK(head)                                         \
-       ast_mutex_trylock(&(head)->lock) 
-
-/*!
-  \brief Write locks a list, without blocking if the list is locked.
-  \param head This is a pointer to the list head structure
-
-  This macro attempts to place an exclusive write lock in the
-  list head structure pointed to by head.
-  Returns non-zero on success, 0 on failure
-*/
-#define AST_RWLIST_TRYWRLOCK(head)                                      \
-        ast_rwlock_trywrlock(&(head)->lock)
-
-/*!
-  \brief Read locks a list, without blocking if the list is locked.
-  \param head This is a pointer to the list head structure
-
-  This macro attempts to place a read lock in the
-  list head structure pointed to by head.
-  Returns non-zero on success, 0 on failure
-*/
-#define AST_RWLIST_TRYRDLOCK(head)                                      \
-        ast_rwlock_tryrdlock(&(head)->lock)
-       
-/*!
-  \brief Attempts to unlock a list.
-  \param head This is a pointer to the list head structure
-
-  This macro attempts to remove an exclusive lock from the
-  list head structure pointed to by head. If the list
-  was not locked by this thread, this macro has no effect.
-*/
-#define AST_LIST_UNLOCK(head)                                          \
-       ast_mutex_unlock(&(head)->lock)
-
 /*!
   \brief Attempts to unlock a read/write based list.
   \param head This is a pointer to the list head structure
@@ -2451,20 +2171,6 @@
         (head)->first = NULL;                                           \
         (head)->last = NULL;                                            \
         ast_rwlock_init(&(head)->lock);                                 \
-}
-
-/*!
-  \brief Destroys a list head structure.
-  \param head This is a pointer to the list head structure
-
-  This macro destroys a list head structure by setting the head
-  entry to \a NULL (empty list) and destroying the embedded lock.
-  It does not free the structure from memory.
-*/
-#define AST_LIST_HEAD_DESTROY(head) {                                  \
-       (head)->first = NULL;                                           \
-       (head)->last = NULL;                                            \
-       ast_mutex_destroy(&(head)->lock);                               \
 }
 
 /*!
@@ -3017,29 +2723,6 @@
 #define STATUS_NO_PRIORITY     3
 #define STATUS_NO_LABEL                4
 #define STATUS_SUCCESS         5
-
-
-#if defined ( __i386__) && (defined(__FreeBSD__) || defined(linux))
-#if defined(__FreeBSD__)
-#include <machine/cpufunc.h>
-#elif defined(linux)
-static __inline uint64_t
-rdtsc(void)
-{ 
-       uint64_t rv;
-
-       __asm __volatile(".byte 0x0f, 0x31" : "=A" (rv));
-       return (rv);
-}
-#endif
-#else  /* supply a dummy function on other platforms */
-static __inline uint64_t
-rdtsc(void)
-{
-       return 0;
-}
-#endif
-
 
 static struct ast_var_t *ast_var_assign(const char *name, const char *value)
 {      


-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

svn-commits mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/svn-commits

Reply via email to