Commit 596f2e32 authored by Ondrej Zajicek (work)'s avatar Ondrej Zajicek (work)
Browse files

Nest: Allow both 'password' and 'key' keywords for authentication keys

parent 6d26f853
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -789,10 +789,9 @@ agreement").
        specified this way must be at least 16 bytes (32 digits) long (although
        specific algorithms can impose other restrictions).

	This option is allowed in BFD, OSPF and RIP protocols. BGP has also
	<cf/password/ option, but it is slightly different and described
	separately.
	Default: none.
	This option is allowed in BFD, OSPF, RIP, and Babel protocols. BGP has
	also <cf/password/ option, but it is slightly different and described
	separately. Default: none.
</descrip>

<p>Password option can contain section with some (not necessary all) password sub-options:
+5 −3
Original line number Diff line number Diff line
@@ -115,7 +115,7 @@ CF_KEYWORDS(ROUTER, ID, HOSTNAME, PROTOCOL, TEMPLATE, PREFERENCE, DISABLED, DEBU
CF_KEYWORDS(INTERFACE, IMPORT, EXPORT, FILTER, NONE, VRF, DEFAULT, TABLE, STATES, ROUTES, FILTERS)
CF_KEYWORDS(IPV4, IPV6, VPN4, VPN6, ROA4, ROA6, FLOW4, FLOW6, SADR, MPLS)
CF_KEYWORDS(RECEIVE, LIMIT, ACTION, WARN, BLOCK, RESTART, DISABLE, KEEP, FILTERED, RPKI)
CF_KEYWORDS(PASSWORD, FROM, PASSIVE, TO, ID, EVENTS, PACKETS, PROTOCOLS, CHANNELS, INTERFACES)
CF_KEYWORDS(PASSWORD, KEY, FROM, PASSIVE, TO, ID, EVENTS, PACKETS, PROTOCOLS, CHANNELS, INTERFACES)
CF_KEYWORDS(ALGORITHM, KEYED, HMAC, MD5, SHA1, SHA256, SHA384, SHA512, BLAKE2S128, BLAKE2S256, BLAKE2B256, BLAKE2B512)
CF_KEYWORDS(PRIMARY, STATS, COUNT, BY, FOR, COMMANDS, PREEXPORT, NOEXPORT, EXPORTED, GENERATE)
CF_KEYWORDS(BGP, PASSWORDS, DESCRIPTION, SORTED)
@@ -517,9 +517,11 @@ password_item:
  | password_item_begin password_item_end
;

pass_key: PASSWORD | KEY;

password_item_begin:
    PASSWORD text { init_password_list(); init_password($2, strlen($2), password_id++); }
  | PASSWORD BYTESTRING { init_password_list(); init_password($2->data, $2->length, password_id++); }
    pass_key text { init_password_list(); init_password($2, strlen($2), password_id++); }
  | pass_key BYTESTRING { init_password_list(); init_password($2->data, $2->length, password_id++); }
;

password_item_params: