summaryrefslogtreecommitdiff
path: root/python/vyos/ifconfig
AgeCommit message (Collapse)Author
2020-04-13cmd: T2226: improve debuggingThomas Mangin
allow to setup the debugging from environment variables. allow to set the name of the file used for logging change the name of the debug options to be: - developer: enable pdb of raise - log: all logging messages are logged to a file - ifconfig: show on screen action peformed to change intefaces - command: print all the result of command to screen also provide a way to setup the debugging using environment variables.
2020-04-12tunnel: T2236: missed mtu command on all tunnelsThomas Mangin
2020-04-12ifconfig: T31: add skeleton VTI and input classesThomas Mangin
also add a function to Section which provides a list of reserved names
2020-04-11completion: T2238: use interface dataThomas Mangin
Use the data in the default dict of the interface to generate the output of list interface.
2020-04-11ifconfig: T2223: rename Section.listing to interfacesThomas Mangin
update all code using the API. Interface.interfaces() could be used but the code was change to use Section.interfaces() which make more sense when reading it.
2020-04-11ifconfig: T2223: rename Register to SectionThomas Mangin
While the class does indeed all the registration, it work is really to map classes to interface section. ie: interface ethernet -> EthernetIf Therefore it can also list which interface are from which type, therefore the name change. Other function name will also be renamed as a consequence
2020-04-11dhcp: T2230: use external template filesThomas Mangin
2020-04-11dhcp: T2265: refactor DHCP classThomas Mangin
Break the code between v4 and v6, remove need for getter/setter as they are just exposing the underlying dict. Move FixedDict from tunnel code and expose it to other part so it can be used to prevent accidental change to the dhcp option if no default exists already.
2020-04-09vxlan: T2172: add source-address optionChristian Poessinger
This is a base requirement for l2vpn evpn. When source-address is configured, the option "local <source-addr> nolearning" is appended when creating the interface as mentioned here: https://vincent.bernat.ch/en/blog/2017-vxlan-bgp-evpn
2020-04-09vxlan: pseudo-ethernet: T2260: convert link nodes to source-interfaceChristian Poessinger
2020-04-09Merge pull request #316 from thomas-mangin/T2242Christian Poessinger
import: T2242: remove all import *
2020-04-08tunnel: T2028: register the _Tunnel classThomas Mangin
All interface classes register themselves so that we can figure out from an interface name what class is responsible for its creation. In the case of Tunnel, it is not the case as multiple different interfaces are sharing the same "tun" prefix. Still many operations are the same and it should be done.
2020-04-08import: T2242: remove all import *Thomas Mangin
2020-04-06util: T2226: rewrite WireGuardIf to use cmdThomas Mangin
2020-04-06util: T2226: rewrite EthernetIf.feature to use cmdThomas Mangin
2020-04-05ifconfig: l2tpv3: T1823: fix remaining errors in config syntaxChristian Poessinger
Commit b5310b0 ("ifconfig: l2tpv3: T1823: fix configuration build syntax") did not cover all parts of the l2tpv3 config. Some parts when e.g. adjusting l2tpv3 addresses after the tunnel was created did fail with the same error. This has been fixed.
2020-04-04Merge pull request #302 from thomas-mangin/T2190Christian Poessinger
ifconfig: T2190: option to prevent Interface creation
2020-04-04ifconfig: T2190: option to prevent Interface creationThomas Mangin
a new option was added to the Interface class "create". By default the value is set to True, and when an instance of the class is created and the underlying interface does not exists, the class will create it. If the option "create" is set to False, the interface will not be created and instead the class will raise an error when it is instantiated.
2020-04-04ifconfig: T2205: silence ethtool harmless failuresThomas Mangin
Not all interface are capable of all features. Since commands are now checked for valid completion, ethtool command failure must be ignored.
2020-04-02fconfig: l2tpv3: T1823: fix configuration build syntaxChristian Poessinger
Fixes reference to unspecified variable Traceback (most recent call last): File "/usr/libexec/vyos/conf_mode/interfaces-l2tpv3.py", line 245, in <module> apply(c) File "/usr/libexec/vyos/conf_mode/interfaces-l2tpv3.py", line 211, inapply l = L2TPv3If(l2tpv3['intf'], **conf) File "/usr/lib/python3/dist-packages/vyos/ifconfig/interface.py", line 185, in __init__ self._create() File "/usr/lib/python3/dist-packages/vyos/ifconfig/l2tpv3.py", line 48, in _create cmd = 'ip l2tp add tunnel tunnel_id {} '.format(config['tunnel_id']) NameError: name 'config' is not defined
2020-04-02ifconfig: l2tpv3: T1823: add missing items from config dict to optionsChristian Poessinger
Commit 8a4dd6c2816 ("ifconfig: T2057: add class Register") added the interface options but not all have been migrated. The forgotten ones have been added by this commit (session_id & peer_session_id).
2020-04-02ifconfig: l2tpv3: T1823: add missing import statementChristian Poessinger
Import statement has been forgotton on the ifconfig file split.
2020-03-31Merge pull request #283 from thomas-mangin/T2057-wg-dumpChristian Poessinger
ifconfig: T2057: Move code from interface.py to wireguard.py
2020-03-31ifconfig: T2057: centralise wireguard codeThomas Mangin
Some left over wireguard code was left in the interface.py file. The code was moved into the wireguard.py file and the now empty interface.py file removed as no longer holdin any code.
2020-03-31ifconfig: T2057: allow to disable interface debuggingThomas Mangin
In order to be able to use the interface class with operational mode, these commands must not log as it would otherwise mess with the output on the screen.
2020-03-30wireless: T2057: fix missing rename of set_state() -> set_admin_state()Christian Poessinger
Commit 627d1c704c83 ("ifconfig: T2057: explicity name state functions") introduced a new API naming, unfortunately this was nod added for wireless interfaces.
2020-03-28ifconfig: T2057: fix import for run show interfaces wireguardThomas Mangin
when ifconfig.py was broken down in multiple files an import was missed. This fixes this import
2020-03-28ipv6: T1831: migrate eui64 addressing to XML and pythonChristian Poessinger
2020-03-28ipv6: T1831: migrate autoconf nodeChristian Poessinger
Autoconfigure addresses using Prefix Information in Router Advertisements.
2020-03-28ipv6: T1831: use integers over bool in interface configurationChristian Poessinger
2020-03-28ipv6: T1831: migrate forwarding and dup-addr-detect-transmits nodesChristian Poessinger
... to new XML and Python based frontend/backend.
2020-03-28Merge pull request #275 from thomas-mangin/T2057-oper-adminChristian Poessinger
ifconfig: T2057: explicity name state functions
2020-03-28ifconfig: T2057: explicity name state functionsThomas Mangin
The Interface get_state/set_state were not clear about if they edited the admin or operational state. functions are now using admin_state and oper_state for clarity.
2020-03-28Merge pull request #278 from thomas-mangin/T2167Christian Poessinger
ifconfig: T2167: get_mac was not returning
2020-03-28ifconfig: T2167: get_mac was not returningThomas Mangin
2020-03-28Merge pull request #276 from thomas-mangin/T2057-aliasChristian Poessinger
ifconfig: T2057: add get_alias function
2020-03-28Merge pull request #277 from thomas-mangin/T2057-fix-forceChristian Poessinger
ifconfig: T2057: option forcing
2020-03-27ifconfig: T2057: add get_alias functionThomas Mangin
2020-03-27ifconfig: T2057: option forcingThomas Mangin
The code was trying to not perform change when not necessary however it prevent zero value to be set
2020-03-27wireless: T2105: properly support disabled WIFI interfacesChristian Poessinger
It is not sufficient to only place a wifi interface in adminsitrative down state as hostapd could change the interface state again. If the wifi interface is administratively disabled, hostapd or wpa_supplicant should not be started at all to prevent anyone from messing arround with the admin state.
2020-03-27ifconfig: T2158: never fail when setting flowcontrolThomas Mangin
the result of the commands used to setup the interface is now checked. flowcontrol can not always be set on all interfaces, and when/if it fails, it prevents the interace to come up. This is problematic as it may prevent the router to come up. Therefore flowcontrol must be allowed to fail gracefully/silently.
2020-03-25ifconfig: T2057: fix finding section name from interfaceThomas Mangin
2020-03-25Merge pull request #265 from thomas-mangin/2057-dhcp-vlanChristian Poessinger
ifconfig: T2057: break down DHCP, add register, STP and VLAN as adapters
2020-03-24ifconfig: T2158: xen_netfront does not support setting pause/speedNate Carlson
* Add xen_netfront to the list of interface types that will error reading pause via ethtool * Also disable for speed, as it doesn't make sense (although the driver doesn't error.)
2020-03-24ifconfig: T2057: remove need for interface-types.jsonThomas Mangin
2020-03-24ifconfig: T2057: convert STP to adapterThomas Mangin
2020-03-24ifconfig: T2057: convert VLAN to adapterThomas Mangin
2020-03-24ifconfig: T2057: add PPPoEIf classThomas Mangin
2020-03-24ifconfig: T2057: add VTunIf classThomas Mangin
2020-03-24ifconfig: T2057: add class RegisterThomas Mangin