summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimo Sorce <ssorce@redhat.com>2008-07-15 16:13:43 -0400
committerSimo Sorce <ssorce@redhat.com>2008-09-10 15:43:40 -0400
commit5e257861c88947a4605a99a419658f32473aa27c (patch)
treeb2f1e06a2b97e7354d0f60546d9b76fba0d2b990
parent624388b45ea99f8520827add719185c624d30587 (diff)
downloadfreeipa-5e257861c88947a4605a99a419658f32473aa27c.tar.gz
freeipa-5e257861c88947a4605a99a419658f32473aa27c.tar.xz
freeipa-5e257861c88947a4605a99a419658f32473aa27c.zip
In openvz we found out some interfaces may return a null pointer here. Skip them if no address is provided or we later get a segfault because we dereference a null pointer.
-rw-r--r--ipa-server/ipa-kpasswd/ipa_kpasswd.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/ipa-server/ipa-kpasswd/ipa_kpasswd.c b/ipa-server/ipa-kpasswd/ipa_kpasswd.c
index 72d3c13d0..0300a3e99 100644
--- a/ipa-server/ipa-kpasswd/ipa_kpasswd.c
+++ b/ipa-server/ipa-kpasswd/ipa_kpasswd.c
@@ -1296,6 +1296,10 @@ int main(int argc, char *argv[])
for (tifa = ifa; tifa; tifa = tifa->ifa_next) {
+ if (NULL == tifa->ifa_addr)
+ /* uhmm no address ?? skip it */
+ continue;
+
if (tifa->ifa_addr->sa_family != AF_INET &&
tifa->ifa_addr->sa_family != AF_INET6) {
/* not interesting for us */