From: Shawn Routhier Date: Fri, 13 Jul 2012 05:57:15 +0000 (-0700) Subject: [rt30024] X-Git-Tag: v4_2_5b1~25 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1a98466152b5ef10bdf4ea5de415fa864943a064;p=thirdparty%2Fdhcp.git [rt30024] Move the line that zeros the packet_oro variable to be earlier so it is properly cleared if we exit early. --- diff --git a/server/dhcpv6.c b/server/dhcpv6.c index 3ae86904f..4178ca53d 100644 --- a/server/dhcpv6.c +++ b/server/dhcpv6.c @@ -1254,6 +1254,8 @@ lease_to_client(struct data_string *reply_ret, isc_boolean_t no_resources_avail = ISC_FALSE; #endif + memset(&packet_oro, 0, sizeof(packet_oro)); + /* Locate the client. */ if (shared_network_from_packet6(&reply.shared, packet) != ISC_R_SUCCESS) @@ -1276,7 +1278,6 @@ lease_to_client(struct data_string *reply_ret, * Get the ORO from the packet, if any. */ oc = lookup_option(&dhcpv6_universe, packet->options, D6O_ORO); - memset(&packet_oro, 0, sizeof(packet_oro)); if (oc != NULL) { if (!evaluate_option_cache(&packet_oro, packet, NULL, NULL,