summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-07-18Merge pull request #505 from jestabro/config_diffJohn Estabrook
configdiff: T2689: add configdiff class
2020-07-18configdiff: T2689: add configdiff classJohn Estabrook
The configdiff class provides: (1) An abstract representation of VyOS config state, for use in configuration mode scripts. (2) Methods to query the differences between the effective and session config.
2020-07-18monitor: ndp: T2706: remove ability to send commandsChristian Poessinger
The "monitor" operational mode tree is for listening in on logfiles, chatter on the wire or other things - it subscribes to the system. Hence it should under no circumstances - ever - generate data. Sending our those requests, same as e.g. calling ndisc6 should be placed under a different node. Which one? I yet have no idea.
2020-07-18vyos.ifconfig: T2673: Fix admin state if the mac address is changed for an ↵srividya0208
interface Changes are made in the interface.py script in order to bring the admin state to 'UP' after the mac is manually added in system config.The script is marking the interface from up to down state(as the MAC address can only be changed if interface is in 'down' state) but it is not bringing it up after the change
2020-07-18T2704: force newlines after listActiveNode output.Daniil Baturin
2020-07-18T2710: make most "run show interfaces $type" commands work again.Daniil Baturin
2020-07-17Merge pull request #496 from jack9603301/currentChristian Poessinger
ndptool: T2706: Support NDP protocol monitoring
2020-07-18ndptool: T2706: Support NDP protocol monitoringjack9603301
It supports NDP protocol monitoring. The submission supports the following features: - Support the monitoring of specified port or all ports - Supports monitoring of specific message types - Support sending specific NDP message
2020-07-17config: T2689: cache config_dictJohn Estabrook
This is a minor modification of the implementation by Thomas Mangin.
2020-07-16Merge pull request #501 from srividya0208/new_changeChristian Poessinger
pseudo-ethernet: T2626: Fix for changing interface mode
2020-07-16pseudo-ethernet: T2626: Fix for changing interface modesrividya0208
Since it is not impossible to change MACVLAN interface mode on the fly, this fix adds a new one trigger to recreate it from scratch if the mode changed in system config
2020-07-16Improve the readability of the port validation. Also fixes T2708.Daniil Baturin
2020-07-15xml: T2588: defaults should return gracefully on key errorJohn Estabrook
2020-07-16Merge pull request #497 from zdc/T2695Daniil Baturin
flow-accounting: T2695: Fixed crash on viewing flows with incomplete data
2020-07-15flow-accounting: T2695: Fixed crash on viewing flows with incomplete datazsdc
If flow records contain entries with skipped details, this does not allow preparing it for the output table. This fix use safe .get() function to return empty values instead crashing. Also, added several small formatting fixes.
2020-07-15Merge branch 'curlrc' of github.com:c-po/vyos-1x into currentChristian Poessinger
* 'curlrc' of github.com:c-po/vyos-1x: http-client: T2651: support specifying source-interface/address for curl xml: T2651: provide general source-interface include file
2020-07-15http-client: T2651: support specifying source-interface/address for curlChristian Poessinger
Please note that either interface or address can be configured. system { options { http-client { source-interface eth0 source-address 1.1.1.1 } } }
2020-07-15xml: T2651: provide general source-interface include fileChristian Poessinger
2020-07-14Merge pull request #494 from jack9603301/currentChristian Poessinger
dns: T2675: fix recursor.vyos-hostsd.conf.lua
2020-07-13dns: T2675: fix recursor.vyos-hostsd.conf.luaJACK
When users use the standard fully qualified domain name writing method, there will be an extra point after the actual domain name. In order to ensure that the standard writing method is supported, it should not be mandatory to add this point in Lua script
2020-07-12snmp: T2687: replace 3rd party hash library with custom codeChristian Poessinger
The 3rd party library used for calculating the SNMP hashes in advance only worked for SHA and nod for MD5 as SHA was hardcoded [1]. The code has been replaced by a class-less implementation providing only the required functionality. [1]: https://github.com/TheMysteriousX/SNMPv3-Hash-Generator/issues/2
2020-07-12vyos.snmpv3_hashgen: add license textChristian Poessinger
2020-07-12nat: T2699: fix exclusion rules for noNAT destinationsChristian Poessinger
2020-07-12nat: T2699: rename interface includeChristian Poessinger
2020-07-11snmp: T2687: precalculate snmpv3 encrypted keysChristian Poessinger
As of now when adding new credentials for any SNMPv3 user we submit the credential either plaintext or encrypted. A plaintext credential will be hashed by SNMPd in the background and then passed back into the CLI so it's not stored in cleartext. This feels like the wrong way in changing the CLI content with data produced by a 3rd party daemon which implements the service. It feels like the tail wiggles the entire dog. This should be changed in the following way: - After retrieving the plaintext password from CLI, use Python to hash the key in advance - Re-populate the encrypted key into the CLI and drop the plaintext one - Generate service configuration and continue startup of SNMPd This also fixes a race condition when SNMPd started up but not properly provided the hasehd keys in the configuration resulting in a ConfigurationError. Now as we also support binding SNMPd to a VRF this fixes a deadlock situation on bootup as we can only bind late to the VRF and require up to 5 restarts of the service - but the service will never start.
2020-07-11snmp: T2687: enforce beginning and end of string match for regexChristian Poessinger
Match the full input string in regex validation. Previosly "sha123456" was allowed by the validator but we only support "sha".
2020-07-08pppoe: T2585: use cleaner template expressionChristian Poessinger
2020-07-08pppoe: T2585: fix template for on-demand dialingChristian Poessinger
Commit 65fa21f5e ("ifconfig: T2653: move pppoe interface to get_config_dict()") directly takes the configuration keys from the CLI config and thus the keys used for template generation have not been updated appropriately.
2020-07-08Merge pull request #493 from jack9603301/currentChristian Poessinger
pppoe: ipv6: T2693: Fix a bug in dhcp6c for PPPoE
2020-07-08pppoe: ipv6: T2693: Fix a bug in dhcp6c for PPPoEJACK
Commit 03fb97 (pppoe: ipv6: T2681: script bugfix after get_config_dict() migration ) After the PPPoE link is reset, dhcp6c cannot be restarted, which may cause the prefix delegation of IPv6 to fail to restart. This submission will restart dhcp6c after the IPv6 of PPPoE is up again
2020-07-07ssh: T2691: bugfix loglevel config migrationChristian Poessinger
When migrating the conf from VyOS 1.2 to 1.3 a configuration error could appear if the user specified "info" as loglevel instead of "INFO". There was no input validation done in 1.2 but this is now enforced in 1.3. In VyOS 1.3 loglevel will be always lowercase on the CLI and when migrating the config this is transformed. Also VyOS 1.2 accpeted any arbitrary loglevel. If an invalid loglevel is found it will be set to info.
2020-07-05Merge pull request #490 from thomas-mangin/T2582-definitionChristian Poessinger
xml: T2582: rename xml tags
2020-07-05xml: T2582: rename xml tagsThomas Mangin
The current use of () does not allow to use found() Converting to [] like all other tags
2020-07-05pppoe: ipv6: T2681: script bugfix after get_config_dict() migrationChristian Poessinger
Commit 65fa21f5 ("ifconfig: T2653: move pppoe interface to get_config_dict()") did not rename the Jinja2 template vars as required as they are not retrieved directly as dict from the config backend.
2020-07-05Merge pull request #489 from DmitriyEshenko/fix-fnm-07042020Christian Poessinger
ids: T2659: Add priority after bgp for correct service starting
2020-07-05ids: T2659: Add priority after bgp for correct service startingDmitriyEshenko
2020-07-04ntp: vrf: T2682: support restart on failure indefinitelyChristian Poessinger
Linux tries to bind sshd to the VRF but it is yet not ready - for any arbitrary reason. After restarting SSH to often (rate-limiting) it is blocked by systemd. Using Restart/RestartSec is not enough - systemd services use start rate limiting (enabled by default). If service is started more than StartLimitBurst times in StartLimitIntervalSec seconds is it not permitted to start any more. Parameters are inherited from DefaultStartLimitIntervalSec (default 10s) and DefaultStartLimitBurst (default 5).
2020-07-04snmp: vrf: T2682: support restart on failure indefinitely.Christian Poessinger
Linux tries to bind sshd to the VRF but it is yet not ready - for any arbitrary reason. After restarting SSH to often (rate-limiting) it is blocked by systemd. Using Restart/RestartSec is not enough - systemd services use start rate limiting (enabled by default). If service is started more than StartLimitBurst times in StartLimitIntervalSec seconds is it not permitted to start any more. Parameters are inherited from DefaultStartLimitIntervalSec (default 10s) and DefaultStartLimitBurst (default 5).
2020-07-04ssh: vrf: T2682: support restart on failure indefinitelyChristian Poessinger
Linux tries to bind sshd to the VRF but it is yet not ready - for any arbitrary reason. After restarting SSH to often (rate-limiting) it is blocked by systemd. Using Restart/RestartSec is not enough - systemd services use start rate limiting (enabled by default). If service is started more than StartLimitBurst times in StartLimitIntervalSec seconds is it not permitted to start any more. Parameters are inherited from DefaultStartLimitIntervalSec (default 10s) and DefaultStartLimitBurst (default 5).
2020-07-04vrf: T31: lower startup priority to 60Christian Poessinger
VRFs should be created as early as possible.
2020-07-04ssh: T2682: simplify VRF bindingChristian Poessinger
2020-07-04cleanup: no need to call sudo for configuration mode scriptsChristian Poessinger
2020-07-04Merge pull request #488 from DmitriyEshenko/fix-fnm-07042020John Estabrook
ids: T2659: Add get_first_key to get_config_dict
2020-07-04ids: T2659: Add get_first_key to get_config_dictDmitriyEshenko
2020-07-04Merge pull request #487 from DmitriyEshenko/1x-impl-fnmDaniil Baturin
ids: T2659: Implement fastnetmon support
2020-07-03config_dict: update docstringJohn Estabrook
2020-07-03config_dict: T2670: remove dependency on show_configJohn Estabrook
2020-07-03ids: T2659: Implement fastnetmon supportDmitriyEshenko
2020-07-03ntp: T2676: mive to get_config_dict()Christian Poessinger
2020-07-03vyos.template: T2676: add custom Jinja2 filter for IP handlingChristian Poessinger
NTP configuration file requires the IP address and a netmask for client subnets but the CLI will only provide a prefix based ntoation. Use custom, reusable JInja2 template to transform a CIDR based prefix into its address and netmask portion for IPv4 and IPv6. Jinja2 custom filters are regular python functions - thus they can be re-used directly when e.g. verifying the configuration in vyos-smoketests.