Nest: Allow key id 0

There is nothing in RFCs specifying that id 0 is not allowed. Some
implementations does not support it, while some other use key id 0 by
default. We allow it but start with key id 1 by default.

Thanks to Kenth Eriksson for the bugreport.
This commit is contained in:
Ondrej Zajicek (work) 2020-05-19 02:50:47 +02:00
parent b729e731f9
commit 1ca7665fa4
2 changed files with 7 additions and 6 deletions

View file

@ -783,11 +783,12 @@ agreement").
<descrip> <descrip>
<tag><label id="proto-pass-id">id <M>num</M></tag> <tag><label id="proto-pass-id">id <M>num</M></tag>
ID of the password, (1-255). If it is not used, BIRD will choose ID based ID of the password, (0-255). If it is not specified, BIRD will choose ID
on an order of the password item in the interface. For example, second based on an order of the password item in the interface, starting from
password item in one interface will have default ID 2. ID is used by 1. For example, second password item in one interface will have default
some routing protocols to identify which password was used to ID 2. ID 0 is allowed by BIRD, but some other implementations may not
authenticate protocol packets. allow it. ID is used by some routing protocols to identify which
password was used to authenticate protocol packets.
<tag><label id="proto-pass-gen-from">generate from "<m/time/"</tag> <tag><label id="proto-pass-gen-from">generate from "<m/time/"</tag>
The start time of the usage of the password for packet signing. The start time of the usage of the password for packet signing.

View file

@ -480,7 +480,7 @@ password_item_params:
| ACCEPT TO time ';' password_item_params { this_p_item->accto = $3; } | ACCEPT TO time ';' password_item_params { this_p_item->accto = $3; }
| FROM time ';' password_item_params { this_p_item->genfrom = this_p_item->accfrom = $2; } | FROM time ';' password_item_params { this_p_item->genfrom = this_p_item->accfrom = $2; }
| TO time ';' password_item_params { this_p_item->gento = this_p_item->accto = $2; } | TO time ';' password_item_params { this_p_item->gento = this_p_item->accto = $2; }
| ID expr ';' password_item_params { this_p_item->id = $2; if ($2 <= 0) cf_error("Password ID has to be greated than zero."); } | ID expr ';' password_item_params { this_p_item->id = $2; if ($2 > 255) cf_error("Password ID must be in range 0-255"); }
| ALGORITHM password_algorithm ';' password_item_params { this_p_item->alg = $2; } | ALGORITHM password_algorithm ';' password_item_params { this_p_item->alg = $2; }
; ;