From 9515b3f27d58a4bda6e43c0fa7d2b263428790e8 Mon Sep 17 00:00:00 2001 From: Andrew Galante Date: Fri, 11 Aug 2006 00:28:50 +0000 Subject: [PATCH] Extra error checking in init git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18479 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp b/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp index 4094ebea7d..9c0e6a497f 100644 --- a/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp +++ b/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp @@ -1043,12 +1043,20 @@ init_ipv4() // so we have to do it here, manually // TODO: for modules, this shouldn't be required - sStackModule->register_domain_protocols(AF_INET, SOCK_RAW, 0, + status = sStackModule->register_domain_protocols(AF_INET, SOCK_RAW, 0, "network/protocols/ipv4/v1", NULL); + if (status < B_OK) + goto err6; - return sStackModule->register_domain(AF_INET, "internet", &gIPv4Module, + status = sStackModule->register_domain(AF_INET, "internet", &gIPv4Module, &gIPv4AddressModule, &sDomain); + if (status < B_OK) + goto err6; + return B_OK; + +err6: + hash_uninit(sFragmentHash); err5: benaphore_destroy(&sFragmentLock); err4: