]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
windows port
authorMichael Jerris <mike@jerris.com>
Mon, 22 Dec 2008 05:37:54 +0000 (05:37 +0000)
committerMichael Jerris <mike@jerris.com>
Mon, 22 Dec 2008 05:37:54 +0000 (05:37 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10906 d0543943-73ff-0310-b7d9-9358b9ac24b2

libs/esl/src/esl.c
libs/esl/src/esl_event.c
libs/esl/src/include/esl.h

index 0f566907833a34895b96682b979149e5a70ed939..5616b2003a78d02aa1d1452ada430fa6947cc686 100644 (file)
@@ -429,8 +429,12 @@ esl_status_t esl_listen(const char *host, esl_port_t port, esl_listen_callback_t
 
        for (;;) {
                int client_sock;                    
-               struct sockaddr_in echoClntAddr; 
-               unsigned int clntLen;            
+               struct sockaddr_in echoClntAddr;
+#ifdef WIN32
+               int clntLen;
+#else
+               unsigned int clntLen;
+#endif
 
                clntLen = sizeof(echoClntAddr);
     
@@ -572,9 +576,18 @@ esl_status_t esl_recv_event_timed(esl_handle_t *handle, uint32_t ms, esl_event_t
        esl_mutex_lock(handle->mutex);
        FD_ZERO(&rfds);
        FD_ZERO(&efds);
+
+#ifdef WIN32
+#pragma warning( push )\r
+#pragma warning( disable : 4127 )
        FD_SET(handle->sock, &rfds);
        FD_SET(handle->sock, &efds);
-       
+#pragma warning( pop ) \r
+#else
+       FD_SET(handle->sock, &rfds);
+       FD_SET(handle->sock, &efds);
+#endif
+
        max = handle->sock + 1;
        
        if ((activity = select(max, &rfds, NULL, &efds, &tv)) < 0) {
index f0f99850b4ca6d787fb755ad95d24968f6c4f65a..a901c52a616a6c8bcaf603b221fcd1277006e958 100644 (file)
@@ -255,7 +255,7 @@ esl_status_t esl_event_del_header(esl_event_t *event, const char *header_name)
                esl_assert(x < 1000);
                hash = esl_ci_hashfunc_default(header_name, &hlen);
 
-               if ((!hp->hash || hash == hp->hash) && !strcasecmp(header_name, hp->name)) {
+               if (hp->name && (!hp->hash || hash == hp->hash) && !strcasecmp(header_name, hp->name)) {
                        if (lp) {
                                lp->next = hp->next;
                        } else {
index cf5fc084498a170734b72a49313748f51fa7d4c3..109382024740ce93b48ba67e6f770d073b17e203 100644 (file)
@@ -167,8 +167,15 @@ typedef struct esl_event esl_event_t;
 #include <strings.h>
 #endif
 #include <assert.h>
+\r
+#if (_MSC_VER >= 1400)                 // VC8+\r
+#define esl_assert(expr) assert(expr);__analysis_assume( expr )\r
+#endif\r
 
+#ifndef esl_assert
 #define esl_assert(_x) assert(_x)
+#endif
+
 #define esl_safe_free(_x) if (_x) free(_x); _x = NULL
 #define esl_strlen_zero(s) (!s || *(s) == '\0')
 #define esl_strlen_zero_buf(s) (*(s) == '\0')
@@ -188,6 +195,7 @@ typedef __int8 int8_t;
 typedef intptr_t esl_ssize_t;
 typedef int esl_filehandle_t;
 #define ESL_SOCK_INVALID INVALID_SOCKET
+#define strerror_r(num, buf, size) strerror_s(buf, size, num)
 #else
 #include <stdint.h>
 #include <sys/types.h>