Blake Harnden
|
5286938e44
|
daemon: small cleanup to nftables management
|
2021-05-10 20:34:10 -07:00 |
|
Blake Harnden
|
11d8bb0674
|
daemon: renamed network variables to not be named in a private way, since they were being used externally
|
2021-05-10 15:18:15 -07:00 |
|
Blake Harnden
|
30291a8438
|
daemon: updates to switch from using ebtables to nftables for wlan linking/unlinking
|
2021-05-10 15:07:42 -07:00 |
|
Blake Harnden
|
69652ac577
|
updates to python based logging to use module named loggers, updated logging config file to align with these changes
|
2021-04-21 21:09:35 -07:00 |
|
Blake Harnden
|
be0e0175a2
|
daemon: refactored node.nodedir to node.directory
|
2021-03-19 17:01:22 -07:00 |
|
Blake Harnden
|
a2148c6923
|
daemon: refactored session.session_dir to session.directory
|
2021-03-19 16:56:54 -07:00 |
|
Blake Harnden
|
1c970bbe00
|
daemon: refactoring to remove usage of os.path where possible and pathlib.Path instead
|
2021-03-19 16:54:24 -07:00 |
|
Blake Harnden
|
c2a40dbb6b
|
daemon: removed usages of getattr and hasattr where possible
|
2021-01-12 21:30:48 -08:00 |
|
Blake Harnden
|
4b6afe4db7
|
daemon: fix for deleting an interface from rj45 node, better error messaging when trying to add an interface to a node that already exists
|
2020-12-15 09:34:42 -08:00 |
|
Blake Harnden
|
e7320a61a6
|
daemon: revert wlan mac learning change, due to undesired default behavior, there may be some cases where this behavior is desired, so the option to enable a promiscuous mode has been added and will be present in core-pygui
|
2020-12-10 15:16:05 -08:00 |
|
Blake Harnden
|
5b93c2d7ac
|
daemon: added support for link options buffer read/write to xml
|
2020-12-07 22:31:53 -08:00 |
|
Blake Harnden
|
a35e91aeba
|
daemon: added link option to configure buffer, added support in pygui to allow configuring buffer
|
2020-11-30 16:49:44 -08:00 |
|
Blake Harnden
|
380d411833
|
daemon: updated linkconfig to calculate a limit when bw/delay are present, updated and simplified logic as well, leveraging code from outstanding pull request, updated code to factor in the mtu of the iface being configured
|
2020-10-17 08:18:49 -07:00 |
|
Blake Harnden
|
d981d88a6f
|
daemon: update how emane is started on nodes, fixing issue with multiple interfaces running emane, added test case to check on this in the future
|
2020-09-09 10:27:06 -07:00 |
|
Blake Harnden
|
0d2dd70727
|
daemon: changes usage of running scripts using /bin/sh to bash to help provide consistency in what could be ran, added bash as a dependency in installation scripts, added bash as an executable check during startup
|
2020-07-28 16:13:37 -07:00 |
|
Blake Harnden
|
1212e5ddf8
|
fix to avoid setting interface data for a mac to the string None, when not present
|
2020-07-16 08:59:57 -07:00 |
|
Blake Harnden
|
80194b3e38
|
moved python black configuration to pyproject.toml and fixed bad exclude
|
2020-07-14 13:33:40 -07:00 |
|
Blake Harnden
|
8dc570a98d
|
daemon: removed commented out code
|
2020-07-06 21:13:54 -07:00 |
|
Blake Harnden
|
fcda1f9f14
|
daemon: CoreInterface now defaults to a virtual transport type, added utility methods to check if an interface is virtual/raw, cleaned up all emane code using these types of checks
|
2020-07-03 09:08:36 -07:00 |
|
Blake Harnden
|
da9c0d0660
|
daemon: initial changes to breakout custom interface creation for networks that require it, without being emane specific
|
2020-07-01 14:40:19 -07:00 |
|
Blake Harnden
|
f4224d1b80
|
daemon: updated ovs option to be a formal session option, will now display within gui, save to and be read from xml
|
2020-06-25 22:05:10 -07:00 |
|
Blake Harnden
|
6dd6bc87ab
|
daemon: renamed executable variables to be simpler
|
2020-06-23 09:35:11 -07:00 |
|
Blake Harnden
|
e0c9f9c832
|
daemon: moved executable check to CoreEmu and separated them into their own module core.executables
|
2020-06-23 09:11:37 -07:00 |
|
Blake Harnden
|
1829a8e2f8
|
daemon: refactored CoreInterface.mac from a string to a netaddr.EUI object, providing more functionality
|
2020-06-19 15:21:45 -07:00 |
|
Blake Harnden
|
cfda9509a2
|
daemon: refactored TunTap setaddrs to set_ips to be more consistent with new naming
|
2020-06-19 13:52:59 -07:00 |
|
Blake Harnden
|
9e4429fbbc
|
daemon: refactored InterfaceData.get_addresses to InterfaceData.get_ips
|
2020-06-19 11:11:45 -07:00 |
|
Blake Harnden
|
20feea8f12
|
daemon: refactored usages of addr to ip and updated functions to align
|
2020-06-19 10:54:58 -07:00 |
|
Blake Harnden
|
d88f3a2535
|
daemon: refactored CoreInterface.addrlist storing strings into CoreInterface.ip4s and ip6s, stored as netaddr.IPNetwork objects
|
2020-06-19 08:50:36 -07:00 |
|
Blake Harnden
|
ca2b1c9e4c
|
daemon: refactored all_link_data to links
|
2020-06-18 21:33:28 -07:00 |
|
Blake Harnden
|
cd74a44558
|
daemon: added type hinting throughout all services and made small tweaks/fixes that were ran across
|
2020-06-18 12:54:36 -07:00 |
|
Blake Harnden
|
e46a072f74
|
daemon: removed missing params from python docs, updated node ValueErrors to CoreErrors
|
2020-06-18 09:33:54 -07:00 |
|
Blake Harnden
|
ecc3eb1c89
|
daemon: refactored NodeData to reference a node instead of replicating fields as an intermediate passthrough, removed data() functions from nodes due to this change
|
2020-06-18 09:06:31 -07:00 |
|
Blake Harnden
|
5d34a2b752
|
daemon: removed opaque from NodeBase, since it is not used
|
2020-06-17 22:59:50 -07:00 |
|
Blake Harnden
|
b92ff0586a
|
daemon: renamed NodeData.node_type to type, removed NodeData/NodeOptions fields that were not being used for clarity
|
2020-06-17 22:43:13 -07:00 |
|
Blake Harnden
|
f4671ab2b8
|
daemon: refactored usages of hwaddr to mac and be consistent everywhere
|
2020-06-16 23:25:26 -07:00 |
|
Blake Harnden
|
351b99aae0
|
daemon: renamed LinkData.link_type to LinkData.type and removed LinkOptions.type to remove redundant information, link_type param added to session.add_link, delete_link, and update_link functions
|
2020-06-16 21:53:12 -07:00 |
|
Blake Harnden
|
a29a7a5582
|
refactored LinkOptions to be used within LinkData, instead of duplicating data, removed session from LinkOptions and LinkData
|
2020-06-16 14:18:19 -07:00 |
|
Blake Harnden
|
eeca33e722
|
combined core.emulator.data and core.emulator.emudata, updated LinkData to leverage InterfaceData, instead of repeated interface fields, removed session from LinkData and LinkOptions
|
2020-06-16 12:50:24 -07:00 |
|
Blake Harnden
|
0725199d6d
|
initial sweeping changes to call all usages of various interface related variables and functions (netif, interface, if, ifc, etc) to use a consistent name iface
|
2020-06-16 09:30:16 -07:00 |
|
Blake Harnden
|
0462c1b084
|
daemon: added usage of ABC to NodeBase, CoreNodeBase, and CoreNetworkBase to help enforce accounting for abstract functions
|
2020-06-14 13:35:06 -07:00 |
|
Blake Harnden
|
f5916fab5b
|
daemon: added not implemented methods to CoreNodeBase
|
2020-06-14 12:44:51 -07:00 |
|
Blake Harnden
|
cf41948894
|
daemon: fixed error with EmaneNet startup throwing an error, updated Rj45Node and PhysicalNode to implement all abstract methods
|
2020-06-14 12:36:07 -07:00 |
|
Blake Harnden
|
c4c667bb74
|
daemon: removed node.startup from inside constructor, session is now responsible, providing more control and avoiding issues when using super calls where you dont want to start just yet
|
2020-06-14 09:37:58 -07:00 |
|
Blake Harnden
|
8d48393525
|
daemon: updated usage of if1/2 to be consistent with interface1/2 for now
|
2020-06-13 21:53:09 -07:00 |
|
Blake Harnden
|
83f66d33f7
|
merged latest from develop
|
2020-06-13 18:07:21 -07:00 |
|
Blake Harnden
|
23d957679e
|
daemon: Session cleanup, removed unused functions, used context managers for writing files, made variables used externally no longer private
|
2020-06-12 20:22:51 -07:00 |
|
Blake Harnden
|
178d12b327
|
daemon: updated variables for InterfaceData to be denote data to make it more clear
|
2020-06-12 17:32:55 -07:00 |
|
Blake Harnden
|
76305f7257
|
converted usages of per to loss
|
2020-06-12 12:49:53 -07:00 |
|
Blake Harnden
|
6201875b78
|
daemon: added class variable type hinting to core.emane
|
2020-06-12 09:52:01 -07:00 |
|
Blake Harnden
|
e72e332bab
|
daemon: removed need to use getaddr for CoreInterface.othernet as it now has a default of None
|
2020-06-11 19:12:51 -07:00 |
|
Blake Harnden
|
ccf2646c00
|
daemon: refactored add_link,update_link,delete_link to have more specific logic, refactored CoreNodeBase to have newnetif and for it to return the interface created
|
2020-06-11 13:59:29 -07:00 |
|
Blake Harnden
|
39fd11efb3
|
daemon: added missing type hint to core.nodes.interface.CoreInterface
|
2020-06-10 10:40:24 -07:00 |
|
Blake Harnden
|
6ee9590bdc
|
daemon: finished class variable type hinting for core.nodes
|
2020-06-10 08:52:51 -07:00 |
|
Blake Harnden
|
f73c617ecf
|
daemon: removed utils.make_tuple and last remaining usage
|
2020-06-09 18:53:42 -07:00 |
|
Blake Harnden
|
2965273f58
|
daemon: CoreNetworkBase.linkconfig now takes a LinkOptions object, removed usage of emudata.link_config
|
2020-06-09 13:41:31 -07:00 |
|
Blake Harnden
|
3be15a1316
|
daemon: update CoreNode.newnetif to require parameters, CoreNode.newnetif now depends on being provided InterfaceData
|
2020-06-09 12:42:15 -07:00 |
|
Blake Harnden
|
7ffbf457be
|
update to netclient existing bridge check to avoid using the -j flag, which requires version 4.7+ vs 4.5+ that we currently expect
|
2020-06-08 09:55:05 -07:00 |
|
Blake Harnden
|
82c33345be
|
merged latest from develop
|
2020-05-29 23:47:31 -07:00 |
|
Blake Harnden
|
73a5567084
|
added network policy enum to avoid string usage
|
2020-05-29 23:22:21 -07:00 |
|
Blake Harnden
|
b034ba6cc3
|
turned transport type usages of raw and virtual across the board to an enumerated type
|
2020-05-29 22:48:00 -07:00 |
|
Blake Harnden
|
8ad3f7961a
|
renamed netclient create_interface to set_interface_master to better describe its purpose
|
2020-05-29 22:07:50 -07:00 |
|
Blake Harnden
|
7e4ef0b280
|
changes to make rj45 maintain the interface information, instead of trying to be 2 classes at once
|
2020-05-25 23:18:20 -07:00 |
|
Blake Harnden
|
8fed201fd8
|
added type hints to class variables in nodes/physical.py
|
2020-05-25 11:33:59 -07:00 |
|
Blake Harnden
|
f95a8113c9
|
added type hinting to nodes/network.py class variables
|
2020-05-25 11:17:28 -07:00 |
|
Blake Harnden
|
2e78025249
|
started type hinting on class variables for nodes/base
|
2020-05-25 00:16:58 -07:00 |
|
Blake Harnden
|
964f78f06a
|
added othernet to CoreInterface to avoid hasattr checks
|
2020-05-23 01:14:47 -07:00 |
|
Blake Harnden
|
c580e15f8e
|
moved common variables up and localname to CoreInterface, they were being created in all subclasses and avoids type hinting errors
|
2020-05-23 01:05:46 -07:00 |
|
Blake Harnden
|
37ff989aa4
|
fixed bad check in linkconfig
|
2020-05-23 00:19:32 -07:00 |
|
Blake Harnden
|
26b0868f65
|
removed devname from linkconfig as the only usage was of it was using a parametr that was already being passed in
|
2020-05-23 00:00:40 -07:00 |
|
Blake Harnden
|
dd13bc8379
|
moved linkconfig to CoreNetworkBase and made linkconfig defined the same across the board
|
2020-05-22 23:44:10 -07:00 |
|
Blake Harnden
|
fe09b37819
|
removed bootsh from CoreNode types as it was not being used
|
2020-05-21 22:41:03 -07:00 |
|
Blake Harnden
|
56fbc0e3c5
|
docker changes to avoid issues running commands without mount and running containers as prvileged to allow changing files in /sys
|
2020-05-21 22:26:54 -07:00 |
|
Blake Harnden
|
bcd9e4ceb1
|
fixed session.add_hook to not require a source, since it was not typically used an None was being passed, cleaned up some bad type hinting in related to session.py
|
2020-05-21 00:20:05 -07:00 |
|
Blake Harnden
|
d5254e6a91
|
changes to support better type checking for retrieving an arbitrary node from a session, get_node now requires an expected class that the node would be an instance of, if the returned node is not an instance a CoreError is thrown, this also helps editors pick up expected types to account for variable/function usage better as well
|
2020-05-20 14:44:34 -07:00 |
|
Blake Harnden
|
95d3a6ca8c
|
updates to force CoreCommandError to contain string values for stderr and stdout, couple bugfixes in handling bad commands when using execute commands from tlv based api or coresendmsg, also updates to coresendmsg to display everything in lowercase to mimic previous look and feel, however coresendmg will now work regardless of casing to avoid breaking things again
|
2020-05-13 12:01:28 -07:00 |
|
Blake Harnden
|
7e7bf8c7b7
|
fix p2p upstream link data not using enum, consolidated grpc logic for getting link protobufs
|
2020-04-15 16:36:03 -07:00 |
|
Shaun Voigt
|
6c9c2cbeb0
|
resolve isort
|
2020-04-07 07:50:26 +09:30 |
|
Shaun Voigt
|
8dfdd6171d
|
check for ipv6 address using netaddr.valid_ipv6
|
2020-04-07 07:44:23 +09:30 |
|
Shaun Voigt
|
ba18853509
|
resolve black formatting
|
2020-04-06 18:03:27 +09:30 |
|
Shaun Voigt
|
953bd80e2e
|
isort - sort imports
|
2020-04-06 17:54:42 +09:30 |
|
Shaun Voigt
|
b6fbedf471
|
Fix for IPv6 Addresses disappear with FRR #421
|
2020-04-06 17:36:32 +09:30 |
|
Blake Harnden
|
8186c62b19
|
switched core emulator data files from using namedtuples to backported dataclasses
|
2020-03-31 09:41:29 -07:00 |
|
Blake Harnden
|
33bcc24d88
|
cleaned up broadcast_node to use nodes directly
|
2020-03-22 16:38:15 -07:00 |
|
Blake Harnden
|
39499a4ab4
|
moved ConfigShim to being under tlv, updated RegisterTlvs to use enums directly in non tlv code
|
2020-03-22 14:59:42 -07:00 |
|
Blake Harnden
|
c264634b5f
|
merged latest from develop
|
2020-03-22 13:52:26 -07:00 |
|
Blake Harnden
|
3f17706c28
|
small cleanup for interface position hooks, updates to support using a provided altitude when sending emane events based on position hooks
|
2020-03-19 16:40:43 -07:00 |
|
Blake Harnden
|
102fa410fe
|
make wlan nodes start with a ebtables change event to trigger default rules when all nodes are disconnected
|
2020-03-12 23:21:48 -07:00 |
|
Blake Harnden
|
a7790185d4
|
updates to use message flags enum directly
|
2020-03-12 23:12:17 -07:00 |
|
Blake Harnden
|
5cdfd8d8b9
|
updated NodeTypes to be used directly
|
2020-03-10 23:11:37 -07:00 |
|
Blake Harnden
|
f277e96c9a
|
revert logging back to info, removed Rj45Models enum as it was not being used, updated linktypes enum to be used directly
|
2020-03-10 22:48:05 -07:00 |
|
Blake Harnden
|
e1c9155ba7
|
simplify thread daemon usage
|
2020-02-26 15:29:19 -08:00 |
|
Blake Harnden
|
71aeb98bb9
|
updates to grpc add_link to return created interface data
|
2020-02-14 13:18:05 -08:00 |
|
Blake Harnden
|
c66ee04db5
|
avoid attempting to stop services for nodes that are not considered up
|
2020-02-04 10:13:37 -08:00 |
|
Blake Harnden
|
356bfd16b4
|
forward all 802.1D MAC bridge filtered MAC group addresses, except restricted types
|
2020-01-31 17:05:13 -08:00 |
|
Blake Harnden
|
45fb32c834
|
renamed config service dependency finder method to startup_paths, added pydocs to config service related methods
|
2020-01-27 11:44:00 -08:00 |
|
Blake Harnden
|
fcc445bb72
|
fixed issues in zebra config service, updated config services to start and validate different modes appropriately, added service dependency startup for config services
|
2020-01-23 13:22:47 -08:00 |
|
Blake Harnden
|
43fe81a86e
|
Merge branch 'develop' into feature/config-service
|
2020-01-17 21:13:07 -08:00 |
|
Blake Harnden
|
2ed56fbaa6
|
fixed doc formatting that was missed
|
2020-01-17 21:12:14 -08:00 |
|
Blake Harnden
|
dcc683dd38
|
added config service manager to CoreEmu and made it possible to create a session and nodes with config services from a script
|
2020-01-17 21:09:51 -08:00 |
|
Blake Harnden
|
191a9e9909
|
added some code to keep track of config services separately within core nodes, added function for starting config services during session instantiation
|
2020-01-17 16:57:49 -08:00 |
|