[PATCH] netconfig exit before waitpid



Dan,

 In openSUSE, when the netconfig update the resolv.conf successfully,
it exit before waitpid, the waitpid() return -1 cause ECHILD(No child
processes),
so the resolv.conf was updated again by update_resolv_conf.

 Please review the patch,  thanks!

Sincerely Yours,

Bin Li

http://cn.opensuse.org
diff --git a/src/named-manager/nm-named-manager.c b/src/named-manager/nm-named-manager.c
index fc3b6e2..d8a2492 100644
--- a/src/named-manager/nm-named-manager.c
+++ b/src/named-manager/nm-named-manager.c
@@ -292,6 +292,9 @@ dispatch_netconfig (const char *domain,
 	ret = waitpid (pid, NULL, 0);
 	if (ret < 0 && errno == EINTR)
 		goto again;
+	/* When the netconfig exist, the errno is ECHILD, it should return TRUE */
+	else if (ret < 0 && errno == ECHILD)
+		return TRUE;
 
 	return ret > 0;
 }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]