0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-12-22 09:41:54 +00:00

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>
<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
on an order of the password item in the interface. For example, second
password item in one interface will have default ID 2. ID is used by
some routing protocols to identify which password was used to
authenticate protocol packets.
ID of the password, (0-255). If it is not specified, BIRD will choose ID
based on an order of the password item in the interface, starting from
1. For example, second password item in one interface will have default
ID 2. ID 0 is allowed by BIRD, but some other implementations may not
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>
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; }
| 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; }
| 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; }
;