summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-07-19nat: T2709: remove 'translation address' mandatory checkJernej Jakob
Rules without a translation address are also valid, they'll modify just the port and leave the address intact. This also used to be a valid syntax and it caused an error on upgrade.
2020-07-19interface: T2519: add broadcast address when adding IPv4 addressesJernej Jakob
This adds the last IP of the subnet being added as the broadcast address. Example: adding 192.0.2.1/24 would yield: inet 192.0.2.1/24 brd 192.0.2.255 scope global dum0 Without this the broadcast address would be missing. Addidionally join two is_ipv4 calls into one.
2020-07-19Merge pull request #500 from dmbaturin/currentDaniil Baturin
Improve readability of the port validation. Also fixes T2708.
2020-07-19broadcast-relay: T2712: migrate to get_config_dict()Christian Poessinger
Add additional verify() stage to check that the relaying interface actually exists on the system.
2020-07-19monitor: ndp: T2706: properly rename XML definitionChristian Poessinger
Commit 3435b251 ("monitor: ndp: T2706: remove ability to send commands") flipped the filename and placed the tree in front of the subtree. Unfurtunately I mixed up NTP and NDP. This has been corrected.
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-05system display: T2564: Added test modelfmertz
* data/templates/system-display/LCDd.conf.tmpl * interface-definitions/system-display.xml.in May need to ba backed out, test code only for USB CrystalFontz CF533
2020-07-05system display: T2564: Dictionary code updatefmertz
* src/conf_mode/system-display.py added get_first_key to dictionary call
2020-07-05system display: T2564: Conf files to /runfmertz
* src/conf_mode/system-display.py conf files to /run + src/systemd/LCDd@.service lo - src/systemd/lcdproc.service + src/systemd/lcdproc@.service lo
2020-07-05system display: T2564: Changed "duration" to "time"fmertz
* data/templates/system-display/LCDd.conf.tmpl duration to time * interface-definitions/system-display.xml.in duration to time
2020-07-05system display: T2564: py code cleanupfmertz
* src/conf_mode/system-display.py cleanup use of dictionary * data/templates/system-display/lcdproc.conf.tmpl cleanup, removed extra DateTime
2020-07-05system display: T2564: Replace "config (enabled|disabled)" with "display ↵fmertz
disabled" * interface-definitions/system-display.xml.in system disply disabled * src/conf_mode/system-display.py system display disabled
2020-07-05system display: T2564: Lowercase model namesfmertz
* data/templates/system-display/LCDd.conf.tmpl Lowercase sdec ezio * interface-definitions/system-display.xml.in Lowercase sdec ezio
2020-07-05system display: T2564 Extend VyOS to support appliance LCDsfmertz
Added support for system LCDs under CLI system display +data/templates/system-display/LCDd.conf.tmpl template for LCDd server configuration file +data/templates/system-display/lcdproc.conf.tmpl template for lcdproc client configuration file +interface-definitions/system-display.xml.in CLI for system display +src/conf_mode/system-display.py processing code for system display +src/systemd/lcdproc.service systemd service definition file for lcdproc client CLI: system display model (SDEC|EZIO) system display config (enabled|disabled) system display show host (cpu|cpu-all|cpu-hist|disk|load-hist|memory|proc|uptime) network interface <intName> alias <alias> units (bps|Bps|pps) clock (big|mini|date-time) title <name> system display duration <s> system display hello <string> system display bye <string>
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).