Commit ad943e4c authored by Ian Craggs's avatar Ian Craggs

Merge branch 'fixes' into develop

Conflicts:
	src/Socket.c
parents 1f91546b 89d2c5fc
language: c
compiler:
- gcc
- clang
os:
- linux
- osx
script:
- make
......@@ -31,6 +31,7 @@
<property name="libname.async" value="mqttv3a" />
<property name="libname.async.ssl" value="mqttv3as" />
<property name="ssl" value="yes" />
<property name="windows.openssl.folder" value="c:\openssl\bin" />
<property name="test.hostname" value="iot.eclipse.org"/>
<property name="test.port" value="18883"/>
<if>
......@@ -127,7 +128,7 @@
<arg value="${aTest}.exe" />
<arg value="--hostname" />
<arg value="${test.hostname}" />
<env key="PATH" path="${output.folder}" />
<env key="PATH" path="${output.folder};${windows.openssl.folder}" />
</exec>
</then>
<else>
......
/*******************************************************************************
* Copyright (c) 2009, 2014 IBM Corp.
* Copyright (c) 2009, 2016 IBM Corp.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
......@@ -13,6 +13,7 @@
* Contributors:
* Ian Craggs - initial API and implementation and/or initial documentation
* Ian Craggs - async client updates
* Ian Craggs - fix for bug 484496
*******************************************************************************/
/**
......@@ -73,7 +74,7 @@ int pstopen(void **handle, const char* clientID, const char* serverURI, void* co
/* Note that serverURI=address:port, but ":" not allowed in Windows directories */
perserverURI = malloc(strlen(serverURI) + 1);
strcpy(perserverURI, serverURI);
ptraux = strstr(perserverURI, ":");
while ((ptraux = strstr(perserverURI, ":")) != NULL)
*ptraux = '-' ;
/* consider '/' + '-' + '\0' */
......
/*******************************************************************************
* Copyright (c) 2009, 2014 IBM Corp.
* Copyright (c) 2009, 2016 IBM Corp.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
......@@ -13,6 +13,7 @@
* Contributors:
* Ian Craggs - initial implementation and documentation
* Ian Craggs - async client updates
* Ian Craggs - fix for bug 484496
*******************************************************************************/
/**
......@@ -601,6 +602,7 @@ int Socket_new(char* addr, int port, int* sock)
FUNC_ENTRY;
*sock = -1;
memset(&address6, '\0', sizeof(address6));
if (addr[0] == '[')
++addr;
......@@ -609,13 +611,10 @@ int Socket_new(char* addr, int port, int* sock)
{
struct addrinfo* res = result;
/* prefer ip4 addresses */
while (res)
{
if (res->ai_family == AF_INET)
{
{ /* prefer ip4 addresses */
if (res->ai_family == AF_INET || res->ai_next == NULL)
break;
}
res = res->ai_next;
}
......@@ -627,7 +626,7 @@ int Socket_new(char* addr, int port, int* sock)
{
address6.sin6_port = htons(port);
address6.sin6_family = family = AF_INET6;
address6.sin6_addr = ((struct sockaddr_in6*)(res->ai_addr))->sin6_addr;
memcpy(&address6.sin6_addr, &((struct sockaddr_in6*)(res->ai_addr))->sin6_addr, sizeof(address6.sin6_addr));
}
else
#endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment