summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-05-15dhcp-server: T3544: fix FileNotFoundError on first invokationChristian Poessinger
The problem of using the move() operation over render() is that render will silently create the directory tree in the background and move() does not. This means that on first boot when /run/dhcp-server does not exist, move will fail with a FileNotFoundError. Instead of using move() we render() the configuration two times, one for validating it via dhcpd -t and the other time to really apply it to the service. The performance impact should be little as the config should still be cached in the system RAM. (cherry picked from commit 1f68b69328c961e450ac70b12f7bf073d70355d7)
2021-05-15dhcp-server: T3544: test config in IPv4 mode onlyChristian Poessinger
(cherry picked from commit 37f3ead353625b53cfa8953196a9c32b42a10e7f)
2021-05-14ntp: T2809: Fix migration script if server not existsever-sever
(cherry picked from commit d96336a808e500934fc4fd9423345d0b965d35ac)
2021-05-14configd: T3426: add support for script arguments to vyos-configdJohn Estabrook
(cherry picked from commit b3d914edcb506bb25c3798683cda341b8acbb0ad)
2021-05-14configd: T3426: correct pass_through function for scripts with argsJohn Estabrook
(cherry picked from commit 5501e5f1de0201f4c977a8027b6e97caf1affa1b)
2021-05-14configd: T3426: check script name against include_set, not exclude_setJohn Estabrook
If the script name is mangled, for any reason (e.g. missing support for script arguments) checking against the exclude_set will yield a false positive; check against the include_set, even if this is a longer search. (cherry picked from commit 93c07ea1edff3f6f84285322b494a24b807ccc25)
2021-05-13dhcp-server: T3544: test newly rendered configuration before restarting daemonChristian Poessinger
The current DHCP server implementation comes with options (see below) which allow the user to pass in any arbitrary option(s) in a verbatim way which will manifest in dhcpd.conf. The options are: * set service dhcp-server global-parameters * set service dhcp-server shared-network-name foo shared-network-parameters * set service dhcp-server shared-network-name foo subnet 192.0.2.0/25 subnet-parameters * set service dhcp-server shared-network-name foo subnet 192.0.2.0/25 static-mapping ff static-mapping-parameters Having an invalid configuration will yield: vyos@vyos# commit [ service dhcp-server ] Configuration file errors encountered - check your options! [[service dhcp-server]] failed (cherry picked from commit 3c754695590b9d9e582c10e6d05c2b628e79262c)
2021-05-13bonding: T3543: add support to configure lacp-rate (slow or fast)Christian Poessinger
Option specifying the rate in which we'll ask our link partner to transmit LACPDU packets in 802.3ad mode. set interfaces bonding bond0 lacp-rate <slow|fast> slow: Request partner to transmit LACPDUs every 30 seconds (default) fast: Request partner to transmit LACPDUs every 1 second (cherry picked from commit 8e392a3dbc16f7b80a979f7b4e9c11408d700e6f)
2021-05-12configd: T3302: check vyos-config-status to determine if in boot sessionJohn Estabrook
(cherry picked from commit eeb9687bb9aaf6050b0a8759767f08ab8faac442)
2021-04-28ipsec: T3333: Fix status for SA state op-modesever-sever
2021-04-27ecmp: T3502: fix check for "layer4-hashing" keyBrandon Stepler
(cherry picked from commit 44d4b6e663aa0df979b37299fbbc3b5b698c5379)
2021-04-27op-mode: T2946: only call 'stty size' if in terminalJohn Estabrook
(cherry picked from commit e1563f9d175026488a36d52a6ffcfb6745d56644)
2021-04-25wireguard: T1802: add client name to configurationChristian Poessinger
(cherry picked from commit daf377aca3511e8ad74854828f3aaa1dd99f0a91)
2021-04-25wireguard: T1802: generate QR code for clients on CLIChristian Poessinger
generate wireguard mobile-config wg0 server wg.vyos.net address 1.2.2.2/24 WireGuard client configuration for interface: wg0 [Interface] PrivateKey = AEXrZ4b3xFVLg1lql3hy/93+d43q3+3vPdSMUGI6/Fo= Address = 1.2.2.2/24 [Peer] PublicKey = h1HkYlSuHdJN6Qv4Hz4bBzjGg5WUty+U1L7DJsZy1iE= Endpoint = wg.vyos.net:41751 AllowedIPs = 0.0.0.0/0, ::/0 The servers public key and port are automatically extracter from the running config. (cherry picked from commit 92d62740a1dd84d27ed3006cdc8d2560673f6bca)
2021-04-20bgp: remove references to new XML/Python implementation not yet available in ↵Christian Poessinger
equuleus
2021-04-20conntrack: T3290: remove references to removed GRE pluginsBrandon Stepler
(cherry picked from commit 91130ca7c386ecba291694ff08e521438d352e78)
2021-04-14dhclient: T3471: Fixed dhclient processes searchzsdc
Since in some cases a dhclient command may not end with an interface name, the way to find out a list of dhclients running for a current interface was replaced to catch PIDs regardless of the exact command syntax. (cherry picked from commit 13abffe43b2a5c41bb4ec4675c227f6cf1f868da)
2021-03-27op-mode: ipsec: T3055: Fixed parsing peer name errorjack9603301
2021-03-23ddclient: T3422: Allow zone property with cloudflare protocolJustin
Allows Dynamic DNS services with custom names to use the zone field if the protocol is set to cloudflare
2021-03-21validate: T3418: interface-name should also allow all local present interfacesChristian Poessinger
The regex only validated interfaces according to the VyOS naming scheme, but third party interfacs that are legit (e.g. exists within the kernel) failed to validate. The validator now also supports any kind of local interfaces attached to the OS kernel. (cherry picked from commit 911fe645928750f3ce38061a94c9b6db50db0749)
2021-03-21ntp: T3416: fix op-mode commands when running inside VRFChristian Poessinger
When NTP is executed inside a VRF context, we also must execute the op-mode commands inside the given VRF. This is a workaround until the op-mode programming library from T3402 is available. (cherry picked from commit f411351baef67740b76e800161fe55f495c4bd92)
2021-03-19dhcp: T3300: add DHCP default route distanceBrandon Stepler
(cherry picked from commit dd2eb5e5686655c996ae95285b8ad7eb73d63d0b)
2021-03-19dhcp: T3392: fix VRF detectionBrandon Stepler
(cherry picked from commit ce0600e97baec18c1781605f3a80c26d4ed01e2b)
2021-03-18configd: T3411: redirect stdout from scripts to console; to file on bootJohn Estabrook
2021-03-18Revert "udev: T3063: drop special WWAN rule for Sierra Wireless cards"Christian Poessinger
Turns out we still need it, else a MC7710 card won't work on an APU4 device. This reverts commit f9e0fb6bffd41c143ff5454c3b73cca4a588ca86.
2021-03-18grub: T3271: don't write grub.cfg if it hasn't changedBrandon Stepler
(cherry picked from commit 658456982ad4543790a3835f6ddbfbe3b583ec44)
2021-03-17ipv6: eui64: T3413: add custom validatorChristian Poessinger
VyOS 1.2 (crux) rejected prefixes other then of site /64. [ interfaces ethernet eth0 ipv6 address eui64 2006:ab00:abe1::2/127 ] Error: Prefix lenght is 127. It must be 64. Same should be done on VyOS 1.3 and newer (cherry picked from commit 6f6cd6552384704700f08e9367e167796b1f7fde)
2021-03-14xdp: T2666: remove entire XDP code for 1.3 LTS imageChristian Poessinger
This is an extension to commit 801c5235 ("xdp: T2666: disable this highly experimental feature in 1.3 LTS") by dropping all XDP references in the equuleus codebase.
2021-03-13console-server: T3407: can not reuse device used for "system console"Christian Poessinger
A user can specify both "set system console device ttyS0 speed '9600'" and "set service console-server device ttyS0 speed 9600". A serial interface can not be used multiple times. commit now produces an error: vyos@vyos# commit [ service console-server ] Port "ttyS0" requires speed to be set!
2021-03-06tunnel: T3381: fix error when switching from mGRE to GRE modeChristian Poessinger
Linux does not support changing the remote address from any (multipoint GRE as used by DMVPN) to a discrete remote address. THis will return an error: add tunnel "tun1" failed: Invalid argument This can be handled by detecting the mGRE -> GRE change and re-create the tunnel silently. (cherry picked from commit ea2a22f7844735021fb638c911527e612abfbc69)
2021-03-06vyos.util: provide single implementation for get_json_iface_options()Christian Poessinger
There had been four implementations of "ip -d -j link show interface" scattered accross the codebase. Those implementations have now been combined into a new helper: vyos.util.get_json_iface_options() (cherry picked from commit f13cc56d665a91ff3fac47df260301afefb1a3a5)
2021-02-28validators: fqdn: T3370: support "private" or "local" domain namesChristian Poessinger
(cherry picked from commit 04724ed189553ce43f8504f68fef8024ef5796de)
2021-02-27tunnel: T3366: support changing tunnel parameters for gre-bridgeChristian Poessinger
Linux prevents changing parameters on a gretap (which is used by gre-bridge) interfaces. To overcome this limitation a tunnel must be destroyed and recreated on demand when gre-bridge is used.
2021-02-24test: remove "test_ethtool.py" as this does not run on JenkinsChristian Poessinger
(cherry picked from commit 99b1d9ee28d11d43840f9e2c1c9e8bda1176d866)
2021-02-24ethernet: T3163: fix typos in vyos.ethtool commentsChristian Poessinger
(cherry picked from commit bddeae3755c8d83f4c47bc3b3798858a95427530)
2021-02-24ethernet: T3163: not all NIC drivers support ring-buffer configurationChristian Poessinger
In addition to commit cf1156a60e ("ethernet: T3163: probe driver for maximum rx/tx ring-buffer size") this extends the logic in a way as not every driver supports setting the buffers at all so it will properly error out. When invoking "ethtool -g" both stdout and stderr are captured and no exception is raised if it's an unsupported driver feature. The verify() section will inform the user about the illegal operation. (cherry picked from commit 159899ed9ba5661e4bdcfdadf1292e237f117063)
2021-02-24validators: interface-name script must also support VLAN interfacesChristian Poessinger
(cherry picked from commit 25b86442d987bf57a801a607648527aaf6158d69)
2021-02-22tunnel: T3072: remove duplicate key from mapping dict used in apply()Christian Poessinger
(cherry picked from commit 09b1b533d14e029427234ca153c0b700dbf04a09)
2021-02-22T3346: handle the case of empty nodes when migrating NAT to syntax version 5Daniil Baturin
2021-02-21ethernet: T3342: Xen vif driver requires sg offloading for MTU > 1500 bytesChristian Poessinger
(cherry picked from commit 3c64c79d7977869da3ca4dc70eb97ff9c6682e52)
2021-02-21ethernet: T3163: probe driver for maximum rx/tx ring-buffer sizeChristian Poessinger
(cherry picked from commit cf1156a60e1d03a752cde0baadbc9ac8118b2a52)
2021-02-21console-server: T2490: do not use cli-shell-api in systemd unitChristian Poessinger
2021-02-19validator: T3326: add missing interfaces (e.g. ppp and l2tpv3)Christian Poessinger
(cherry picked from commit f67568bc2307706116f5509fca3a188dc4ab5d48)
2021-02-11T3248: add the missing mode-force option, just a dummy for issuing ↵Daniil Baturin
deprecation warnings.
2021-02-07system: T2486: bugfix name-servers-dhcp NameError on vif-c interfacesChristian Poessinger
Commit 0f8beae7426 ("system: T2486: migrate disable-dhcp-nameservers to name-servers-dhcp") added a migration script for moving the name-servers. A small glitch was introduced when referencing vif-c interfaces unter a vif-s interface where a variable got referenced which was not defined. (cherry picked from commit 89108f629ec8cc6990473468c1c67ffa8742b884)
2021-02-07rpki: T3293: bugfix for config migration when cache and address name matchChristian Poessinger
If the RPKI cache name equals the configured address, renaming is not possible, as rename expects the new path to not exist. (cherry picked from commit af2a22fb114b7d00f50fb32dc64b49e132ccca61)
2021-02-05xml: add new common interface-name validatorChristian Poessinger
2021-02-03xml: T3239: override default mtu values and remove workaroundsJohn Estabrook
(cherry picked from commit ea4c72ed0dbcee3f7e8f9693c5310190833651d8)
2021-02-02rpki: T3255: backport new implementation from current branchChristian Poessinger
2021-02-02nat: T2873: Add address filtering for DNAT translationserkin
(cherry picked from commit 06024ee642f9b0bd5658a91009ca9739dba52b6d)