mirror of
https://gitlab.isc.org/isc-projects/dhcp
synced 2025-08-22 09:57:20 +00:00
Clients that sent a parameter request list containing the routers option
before the subnet mask option were receiving only the latter. [rt18133]
This commit is contained in:
parent
51e7687feb
commit
20210a7bfc
4
RELNOTES
4
RELNOTES
@ -54,6 +54,10 @@ work on other platforms. Please report any problems and suggested fixes to
|
||||
|
||||
- Fixed a bug that caused some request types to be logged incorrectly.
|
||||
|
||||
- Clients that sent a parameter request list containing the
|
||||
routers option before the subnet mask option were receiving
|
||||
only the latter. Fixed.
|
||||
|
||||
Changes since 4.1.0a1
|
||||
|
||||
- Fixed a coredump when adding a class via OMAPI.
|
||||
|
@ -1180,15 +1180,10 @@ store_options(int *ocount,
|
||||
*/
|
||||
if (priority_list[i] == DHO_SUBNET_MASK) {
|
||||
for (ix = i - 1 ; ix >= 0 ; ix--) {
|
||||
/* We know that anything before 'i' can only
|
||||
* appear once. So shovel the options to make
|
||||
* room to bubble the subnet mask ahead, and
|
||||
* then break out of the loop, we're done.
|
||||
*/
|
||||
if (priority_list[ix] == DHO_ROUTERS) {
|
||||
memmove(priority_list + ix + 1,
|
||||
priority_list + ix, i - ix);
|
||||
/* swap */
|
||||
priority_list[ix] = DHO_SUBNET_MASK;
|
||||
priority_list[i] = DHO_ROUTERS;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user