mirror of
https://git.yoctoproject.org/poky
synced 2026-03-17 04:39:40 +01:00
connman: upgrade to 1.10
0002-storage.c-If-there-is-no-d_type-support-use-fstatat.patch
- adapted to the new version
0001-timezone.c-If-there-is-no-d_type-support-use-fstatat.patch
- patch removed (it is included in the new version)
inet-fix-ip-cleanup-functions.patch: added
- fix for ip cleanup functions
(From OE-Core rev: e0cca947fc87c8f7a6d2a8fd719c87d56dd52941)
Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
7048fbdc05
commit
b1ae967908
@@ -1,61 +0,0 @@
|
||||
From f2094e6b2e4542adf458d8fa58d7bccd5edb762e Mon Sep 17 00:00:00 2001
|
||||
From: Andrei Gherzan <andrei@gherzan.ro>
|
||||
Date: Tue, 17 Jul 2012 17:27:39 +0300
|
||||
Subject: [PATCH V3 1/2] timezone.c: If there is no d_type support use
|
||||
fstatat()
|
||||
|
||||
This is useful for filesystems where d_type is always DT_UNKNOWN.
|
||||
In this case use fstatat() function.
|
||||
|
||||
Signed-off-by: Andrei Gherzan <andrei.gherzan@windriver.com>
|
||||
Upstream-Status: Submitted
|
||||
|
||||
---
|
||||
src/timezone.c | 24 ++++++++++++++++++++++++
|
||||
1 file changed, 24 insertions(+)
|
||||
|
||||
diff --git a/src/timezone.c b/src/timezone.c
|
||||
index 173d658..f951f6b 100644
|
||||
--- a/src/timezone.c
|
||||
+++ b/src/timezone.c
|
||||
@@ -157,6 +157,8 @@ static char *find_origin(void *src_map, struct stat *src_st,
|
||||
DIR *dir;
|
||||
struct dirent *d;
|
||||
char *str, pathname[PATH_MAX];
|
||||
+ struct stat buf;
|
||||
+ int ret;
|
||||
|
||||
if (subpath == NULL)
|
||||
strncpy(pathname, basepath, sizeof(pathname));
|
||||
@@ -205,6 +207,28 @@ static char *find_origin(void *src_map, struct stat *src_st,
|
||||
return str;
|
||||
}
|
||||
break;
|
||||
+ case DT_UNKNOWN:
|
||||
+ /*
|
||||
+ * If there is no d_type support use fstatat()
|
||||
+ * to check if directory
|
||||
+ */
|
||||
+ ret = fstatat(dirfd(dir), d->d_name, &buf, 0);
|
||||
+ if (ret < 0)
|
||||
+ continue;
|
||||
+ if (!(buf.st_mode & S_IFDIR))
|
||||
+ continue;
|
||||
+ if (subpath == NULL)
|
||||
+ strncpy(pathname, d->d_name, sizeof(pathname));
|
||||
+ else
|
||||
+ snprintf(pathname, sizeof(pathname),
|
||||
+ "%s/%s", subpath, d->d_name);
|
||||
+
|
||||
+ str = find_origin(src_map, src_st, basepath, pathname);
|
||||
+ if (str != NULL) {
|
||||
+ closedir(dir);
|
||||
+ return str;
|
||||
+ }
|
||||
+ break;
|
||||
}
|
||||
}
|
||||
|
||||
--
|
||||
1.7.9.5
|
||||
|
||||
@@ -8,20 +8,33 @@ This is useful for filesystems where d_type is always DT_UNKNOWN.
|
||||
In this case use fstatat() function.
|
||||
|
||||
Signed-off-by: Andrei Gherzan <andrei.gherzan@windriver.com>
|
||||
Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
|
||||
Upstream-Status: Submitted
|
||||
|
||||
---
|
||||
src/storage.c | 19 +++++++++++++++++++
|
||||
1 file changed, 19 insertions(+)
|
||||
|
||||
diff --git a/src/storage.c b/src/storage.c
|
||||
index 47bd0cb..0491a52 100644
|
||||
--- a/src/storage.c
|
||||
+++ b/src/storage.c
|
||||
@@ -206,6 +206,25 @@ gchar **connman_storage_get_services()
|
||||
Index: git/src/storage.c
|
||||
===================================================================
|
||||
--- git.orig/src/storage.c
|
||||
+++ git/src/storage.c
|
||||
@@ -193,7 +193,6 @@ gchar **connman_storage_get_services()
|
||||
|
||||
g_string_append_printf(result, "%s/", d->d_name);
|
||||
break;
|
||||
switch (d->d_type) {
|
||||
case DT_DIR:
|
||||
- case DT_UNKNOWN:
|
||||
/*
|
||||
* If the settings file is not found, then
|
||||
* assume this directory is not a services dir.
|
||||
@@ -203,6 +202,25 @@ gchar **connman_storage_get_services()
|
||||
ret = stat(str, &buf);
|
||||
g_free(str);
|
||||
if (ret < 0)
|
||||
+ continue;
|
||||
+
|
||||
+ g_string_append_printf(result, "%s/", d->d_name);
|
||||
+ break;
|
||||
+ case DT_UNKNOWN:
|
||||
+ /*
|
||||
+ * If there is no d_type support use fstatat()
|
||||
@@ -37,13 +50,6 @@ index 47bd0cb..0491a52 100644
|
||||
+ ret = stat(str, &buf);
|
||||
+ g_free(str);
|
||||
+ if (ret < 0)
|
||||
+ continue;
|
||||
+
|
||||
+ g_string_append_printf(result, "%s/", d->d_name);
|
||||
+ break;
|
||||
}
|
||||
}
|
||||
continue;
|
||||
|
||||
--
|
||||
1.7.9.5
|
||||
|
||||
g_string_append_printf(result, "%s/", d->d_name);
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
From 100353e10f60a50ca1ba78daa6bc4dfebf5b3297 Mon Sep 17 00:00:00 2001
|
||||
From: Constantin Musca <constantinx.musca@intel.com>
|
||||
Date: Wed, 5 Dec 2012 15:07:21 +0200
|
||||
Subject: [PATCH] inet: fix ip cleanup functions
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
|
||||
---
|
||||
src/inet.c | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/src/inet.c b/src/inet.c
|
||||
index be69aca..e76a1f1 100644
|
||||
--- a/src/inet.c
|
||||
+++ b/src/inet.c
|
||||
@@ -626,6 +626,10 @@ int connman_inet_clear_ipv6_address(int index, const char *address,
|
||||
|
||||
DBG("index %d address %s prefix_len %d", index, address, prefix_len);
|
||||
|
||||
+ if (address == NULL) {
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
err = __connman_inet_modify_address(RTM_DELADDR, 0, index, AF_INET6,
|
||||
address, NULL, prefix_len, NULL);
|
||||
if (err < 0) {
|
||||
@@ -649,6 +653,10 @@ int connman_inet_clear_address(int index, struct connman_ipaddress *ipaddress)
|
||||
|
||||
DBG("index %d address %s prefix_len %d", index, address, prefix_len);
|
||||
|
||||
+ if (address == NULL) {
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
err = __connman_inet_modify_address(RTM_DELADDR, 0, index, AF_INET,
|
||||
address, peer, prefix_len, broadcast);
|
||||
if (err < 0) {
|
||||
--
|
||||
1.7.11.7
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
require connman.inc
|
||||
|
||||
# 1.4 tag
|
||||
SRCREV = "f701bbca259f1f35e68d338f31f5373f75f3da5f"
|
||||
# 1.10 tag
|
||||
SRCREV = "3bda76eb442c9395db1dba17352c3e78376671cc"
|
||||
SRC_URI = "git://git.kernel.org/pub/scm/network/connman/connman.git \
|
||||
file://0001-plugin.h-Change-visibility-to-default-for-debug-symb.patch \
|
||||
file://add_xuser_dbus_permission.patch \
|
||||
file://connman \
|
||||
file://0002-storage.c-If-there-is-no-d_type-support-use-fstatat.patch \
|
||||
file://0001-timezone.c-If-there-is-no-d_type-support-use-fstatat.patch"
|
||||
file://inet-fix-ip-cleanup-functions.patch"
|
||||
S = "${WORKDIR}/git"
|
||||
PR = "${INC_PR}.0"
|
||||
|
||||
RRECOMMENDS_${PN} = "connman-conf"
|
||||
Reference in New Issue
Block a user