[commit] r12230 - freeswitch/trunk/libs/esl/src
Author: brian Date: Sat Feb 21 19:42:33 2009 New Revision: 12230 Log: ESL fixes Modified: freeswitch/trunk/libs/esl/src/esl.c Modified: freeswitch/trunk/libs/esl/src/esl.c ============================================================================== --- freeswitch/trunk/libs/esl/src/esl.c (original) +++ freeswitch/trunk/libs/esl/src/esl.c Sat Feb 21 19:42:33 2009 @@ -380,7 +380,7 @@ static void sock_setup(esl_handle_t *handle) { -#ifdef WIN32 +#ifdef WIN32 BOOL bOptVal = TRUE; int bOptLen = sizeof(BOOL); setsockopt(handle->sock, IPPROTO_TCP, TCP_NODELAY, (const char *)&bOptVal, bOptLen); @@ -562,7 +562,7 @@ status = ESL_FAIL; goto end; } - + callback(server_sock, client_sock, &echoClntAddr); } @@ -916,31 +916,19 @@ } beg = c + 1; - } - free(body); + if (*beg == '\n') { + beg++; + break; + } + } if ((cl = esl_event_get_header(handle->last_ievent, "content-length"))) { - esl_ssize_t sofar = 0; - - len = atol(cl); - body = malloc(len+1); - esl_assert(body); - *(body + len) = '\0'; - - do { - esl_ssize_t r; - if ((r = recv(handle->sock, body + sofar, len - sofar, 0)) < 0) { - strerror_r(handle->errnum, handle->err, sizeof(handle->err)); - goto fail; - } - sofar += r; - } while (sofar < len); - - handle->last_ievent->body = body; + handle->last_ievent->body = strdup(beg); } - + free(body); + if (esl_log_level >= 7) { char *foo; esl_event_serialize(handle->last_ievent, &foo, ESL_FALSE);
participants (1)
-
FreeSWITCH SVN