2
0
mirror of https://gitlab.isc.org/isc-projects/dhcp synced 2025-08-31 14:25:41 +00:00

-n [master]

[rt27912]
    Add code to suppor on {commit expiry release} statements for DHCPv6.
    There are several pieces to this change
    1) Add space in the iasubopt structure to hold the statement pointers
    2) Update the execute code to fill in the structures as necessary
    3) Execute the statements when appropriate
    Many of the changes in the non-v6 code are to pass the v6 structures
    around to the execute code.
This commit is contained in:
Shawn Routhier
2013-08-27 13:40:47 -07:00
parent 8cd88e202b
commit a7341359cc
19 changed files with 783 additions and 390 deletions

View File

@@ -1727,13 +1727,10 @@ struct client_lease *packet_to_lease (packet, client)
}
}
execute_statements_in_scope ((struct binding_value **)0,
(struct packet *)packet,
(struct lease *)0, client,
lease -> options, lease -> options,
&global_scope,
client -> config -> on_receipt,
(struct group *)0);
execute_statements_in_scope(NULL, (struct packet *)packet, NULL,
client, lease->options, lease->options,
&global_scope, client->config->on_receipt,
NULL, NULL);
return lease;
}
@@ -2377,14 +2374,12 @@ make_client_options(struct client_state *client, struct client_lease *lease,
}
/* Run statements that need to be run on transmission. */
if (client -> config -> on_transmission)
execute_statements_in_scope
((struct binding_value **)0,
(struct packet *)0, (struct lease *)0, client,
(lease ? lease -> options : (struct option_state *)0),
*op, &global_scope,
client -> config -> on_transmission,
(struct group *)0);
if (client->config->on_transmission)
execute_statements_in_scope(NULL, NULL, NULL, client,
(lease ? lease->options : NULL),
*op, &global_scope,
client->config->on_transmission,
NULL, NULL);
}
void make_discover (client, lease)