From 1e28384c628c87d66ea81162c1bdef0e43915df9 Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Thu, 24 Aug 2006 11:01:37 +0000 Subject: [PATCH] 2006-08-24 Dan Williams Patch from Ed Catmur: * src/NetworkManagerUtils.c - (nm_utils_ip4_netmask_to_prefix): don't infinitely loop if netmask is 0 (Gnome #352634) git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1987 4912f4e0-d625-0410-9fb7-b9a5a253dbdc --- ChangeLog | 7 +++++++ src/NetworkManagerUtils.c | 2 ++ 2 files changed, 9 insertions(+) diff --git a/ChangeLog b/ChangeLog index 4f9489f36..62156d283 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2006-08-24 Dan Williams + + Patch from Ed Catmur: + * src/NetworkManagerUtils.c + - (nm_utils_ip4_netmask_to_prefix): don't infinitely loop + if netmask is 0 (Gnome #352634) + 2006-08-17 Robert Love * src/backends/NetworkManagerSuSE.c: Do not restart ypbind; our ypbind diff --git a/src/NetworkManagerUtils.c b/src/NetworkManagerUtils.c index 309638e3b..12317853a 100644 --- a/src/NetworkManagerUtils.c +++ b/src/NetworkManagerUtils.c @@ -707,6 +707,8 @@ int nm_utils_ip4_netmask_to_prefix (guint32 ip4_netmask) { int i = 1; + g_return_val_if_fail (ip4_netmask != 0, 0); + /* Just count how many bit shifts we need */ ip4_netmask = ntohl (ip4_netmask); while (!(ip4_netmask & 0x1) && ++i)