X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fafb-ws-client.c;h=fba85ff3f42c16a476fb88832aab7903fd237b71;hb=164f14144f2d2339db023abfc899e034c24958cc;hp=e29eadb7a91c4443cf0793622ddadb1237081a1e;hpb=10aa15afc5bc7321d0049823dd173dda11ff3724;p=src%2Fapp-framework-binder.git diff --git a/src/afb-ws-client.c b/src/afb-ws-client.c index e29eadb7..fba85ff3 100644 --- a/src/afb-ws-client.c +++ b/src/afb-ws-client.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2016, 2017, 2018 "IoT.bzh" + * Copyright (C) 2016-2019 "IoT.bzh" * Author: José Bollo * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -443,12 +443,12 @@ static int get_socket_inet(const char *uri) struct addrinfo hint, *rai, *iai; /* scan the uri */ - api = strrchr(uri, '/'); service = strrchr(uri, ':'); - if (api == NULL || service == NULL || api < service) { + if (service == NULL) { errno = EINVAL; return -1; } + api = strchrnul(service, '/'); host = strndupa(uri, service++ - uri); service = strndupa(service, api - service); @@ -488,6 +488,9 @@ static int get_socket(const char *uri) if (0 == strncmp(uri, "unix:", 5)) /* unix socket */ fd = get_socket_unix(uri + 5); + else if (0 == strncmp(uri, "tcp:", 4)) + /* unix socket */ + fd = get_socket_inet(uri + 4); else /* inet socket */ fd = get_socket_inet(uri);