diff options
Diffstat (limited to 'ecp/src/platform/posix')
| -rw-r--r-- | ecp/src/platform/posix/features.mk | 3 | ||||
| -rw-r--r-- | ecp/src/platform/posix/time.c | 17 | ||||
| -rw-r--r-- | ecp/src/platform/posix/transport.c | 17 | 
3 files changed, 19 insertions, 18 deletions
diff --git a/ecp/src/platform/posix/features.mk b/ecp/src/platform/posix/features.mk index 2ce8220..ea5e44c 100644 --- a/ecp/src/platform/posix/features.mk +++ b/ecp/src/platform/posix/features.mk @@ -1,7 +1,8 @@  with_pthread	= yes  with_htable		= yes  with_vconn		= yes -with_dirsrv		= yes +with_frag		= yes  with_rbuf		= yes  with_msgq		= yes +with_dir		= yes  with_debug		= yes diff --git a/ecp/src/platform/posix/time.c b/ecp/src/platform/posix/time.c index efee4f8..49a85e7 100644 --- a/ecp/src/platform/posix/time.c +++ b/ecp/src/platform/posix/time.c @@ -1,25 +1,30 @@  #include <stdlib.h>  #include <unistd.h> +#include <time.h>  #include <sys/time.h> -#include <core.h> -#include <tm.h> +#include <ecp/core.h> +#include <ecp/tm.h>  int ecp_tm_init(ECPContext *ctx) {      return ECP_OK;  } -ecp_sts_t ecp_tm_abstime_ms(ecp_sts_t msec) { +ecp_sts_t ecp_tm_get_s(void) { +    return time(NULL); +} + +ecp_sts_t ecp_tm_get_ms(void) {      struct timeval tv;      ecp_sts_t ms_now;      gettimeofday(&tv, NULL);      ms_now = tv.tv_sec * 1000 + tv.tv_usec / 1000; -    return ms_now + msec; +    return ms_now;  } -void ecp_tm_sleep_ms(ecp_sts_t msec) { -    usleep(msec*1000); +void ecp_tm_sleep(ecp_sts_t msec) { +    usleep(msec * 1000);  }  void ecp_tm_timer_set(ecp_sts_t next) {} diff --git a/ecp/src/platform/posix/transport.c b/ecp/src/platform/posix/transport.c index ebfbc7b..51f311a 100644 --- a/ecp/src/platform/posix/transport.c +++ b/ecp/src/platform/posix/transport.c @@ -6,8 +6,8 @@  #include <arpa/inet.h>  #include <poll.h> -#include <core.h> -#include <tr.h> +#include <ecp/core.h> +#include <ecp/tr.h>  #define MAX_ADDR_STR    32 @@ -49,20 +49,15 @@ int ecp_tr_addr_set(ecp_tr_addr_t *addr, void *addr_s) {      return 0;  } -int ecp_tr_open(ECPSocket *sock, void *addr_s) { +int ecp_tr_open(ECPSocket *sock, ecp_tr_addr_t *addr) {      struct sockaddr_in _myaddr;      int rv;      memset((char *)&_myaddr, 0, sizeof(_myaddr));      _myaddr.sin_family = AF_INET; -    if (addr_s) { -        ecp_tr_addr_t addr; - -        rv = ecp_tr_addr_set(&addr, addr_s); -        if (rv) return rv; - -        memcpy((void *)&_myaddr.sin_addr, addr.host, sizeof(addr.host)); -        _myaddr.sin_port = addr.port; +    if (addr) { +        memcpy((void *)&_myaddr.sin_addr, addr->host, sizeof(addr->host)); +        _myaddr.sin_port = addr->port;      } else {          _myaddr.sin_addr.s_addr = htonl(INADDR_ANY);          _myaddr.sin_port = htons(0);  | 
