Commit graph

274 commits

Author SHA1 Message Date
Blake Harnden
f07176dd43 daemon: provide safe fallback for emane install ifaces, in case external configuration does not exist 2020-06-19 13:51:11 -07:00
Blake Harnden
cd6083aed9 daemon: fixed issue not checking if an emane interface is a TunTap before using a specific function, fixed issue not looking for possible iface specific configuration for external 2020-06-19 13:44:28 -07:00
Blake Harnden
9e4429fbbc daemon: refactored InterfaceData.get_addresses to InterfaceData.get_ips 2020-06-19 11:11:45 -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
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
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
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
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
876699e8ef variable/grpc cleanup to rename everything using spelt out numbers instead of actual numbers 2020-06-12 16:52:41 -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
784c4d2419 daemon: added core.location class variable type hinting 2020-06-10 10:24:44 -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
3b0ca1638c grpc: implemened initial support for streaming emane pathloss events 2020-06-03 14:35:17 -07:00
Blake Harnden
c6a06baf29 add geo to grpc calls getting node values, updated emane position hook to set lon/lat/alt values 2020-05-30 14:24:38 -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
b88df84d62 removed logs from emane network all_link_data 2020-05-29 14:42:38 -07:00
Blake Harnden
183ffda570 daemon: changes to support providing emane wireless links in all_link_data, which makes it accessible over grpc 2020-05-29 11:48:00 -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
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
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
e2490dee4a modified wireless links to obtain colors based on connected network from the session, LinkData will no provide a color itself 2020-04-15 15:41:37 -07:00
Blake Harnden
b29f640547 modified emane link monitor to send labels containing sinr values to sdt 2020-03-31 21:09:20 -07:00
Blake Harnden
3165bddc92 updates to allow emane to throw an exception when emane python bindings are not present and emane is attempted to be ran 2020-03-31 16:21:04 -07:00
Blake Harnden
16764c702b updated emane link monitor to not run when there is nothing to monitor, added better logging about what is being monitored 2020-03-30 12:26:08 -07:00
Blake Harnden
7b29f6bb82 change to account for importing slightly older bindings for emane link monitor 2020-03-30 10:46:05 -07:00
Blake Harnden
16cc73c070 import change to help isort pass 2020-03-30 10:36:39 -07:00
Blake Harnden
1efa1284bb merged latest from develop 2020-03-28 13:18:25 -07:00
Blake Harnden
0b30289879 emane link monitor clear complete links during shutdown 2020-03-27 22:47:16 -07:00
Blake Harnden
3d59cd0ad8 initial logic for working emane links based on emane stats 2020-03-27 17:22:44 -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
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
21dfaf7d66 avoid initializing emane event service twice 2020-02-26 14:34:35 -08:00
Blake Harnden
a3c7ed8012 update emaneevent logging to debug, fixed emaneevent thread stop logic, fixed node data conversion for lon,lat,alt values 2020-02-21 16:42:23 -08:00
Blake Harnden
1375af51cb added grpc to get emane event channel being used 2020-02-14 16:22:28 -08:00
Blake Harnden
29b064eaf1 fix to emane bypass model and config group data being supplied to guis 2020-01-28 09:20:43 -08:00
Blake Harnden
a85cb92196 removed options not needed for config data for GUI support for both old and new GUIs 2020-01-24 13:19:08 -08:00
Blake Harnden
b8ded52a66 fixed formatting in docs due 2020-01-16 16:12:01 -08:00
Blake Harnden
f4ddf310a8 removed rtype and param typing from doc strings to help avoid maintaining duplicate information provided by type hints 2020-01-16 11:00:57 -08:00
Blake Harnden
fa095431fb added type hinting to core.emane functions 2020-01-14 16:27:08 -08:00
Blake Harnden
d4fae0d89e changes to fix emane config data leveraging emane prefix to work as intended 2019-12-20 13:30:55 -08:00
Blake Harnden
ad4ee58ddd properly adding change for emane node links being wireless, fixed issue when sending emane model configs when there is no interface set 2019-11-25 15:46:32 -08:00
bharnden
fff281a452 removed master from corehandlers and session, since it will not be needed any more 2019-10-25 22:06:30 -07:00
bharnden
5c12651e4e updates to session.clear to clear out all configuration data as well, updated session.shutdown to use clear, updated tests to account for this 2019-10-24 13:05:02 -07:00
bharnden
68be311c7a updated usages of super to use python3 variation 2019-10-23 09:51:52 -07:00
Blake Harnden
ce411a07d7 removed session.create_wireless_node, can be achieved simply without needing this function 2019-10-22 15:13:28 -07:00
Blake Harnden
78f981463d renamed utils.check_cmd to utils.cmd, updated host_cmd to allow for shell commands for output redirection 2019-10-21 10:32:42 -07:00
bharnden
6006710c32 changed net_cmd to host_cmd and node_net_cmd to cmd, for simpler more logical naming 2019-10-18 23:28:09 -07:00
Blake Harnden
7d2a615716 more updates to using f string 2019-10-18 10:33:31 -07:00
Blake Harnden
da946f1f56 removing builtins imports 2019-10-17 15:02:24 -07:00
Blake Harnden
6edd6a7fdb first pass at removing all python2 specific dependencies, updating python requirements.txt/setup.py/Pipfiles/Makefiles, and removing python2 compat imports 2019-10-17 14:52:31 -07:00
Blake Harnden
e94a6d1afa separated distributed session logic into its own class to help reduce session.py size as it is already too big 2019-10-17 11:10:59 -07:00
Blake Harnden
b2d2705849 removed broker from session, updated most places using broker to use alternative logic to compensate where needed 2019-10-15 14:13:42 -07:00
Blake Harnden
6570f22ccf refactor fabric distributed to use a class and update sessions to create and provide these to nodes 2019-10-14 15:43:57 -07:00
bharnden
2bfd050880 updated missed commands to be string based 2019-10-11 22:37:33 -07:00
Blake Harnden
02ef91242e initial changes to convert all commands to be string based for consistency 2019-10-11 16:36:57 -07:00
Blake Harnden
d326f246a7 removed node based check_cmd, updated to use appropriate function 2019-10-11 12:57:37 -07:00
Blake Harnden
f6cdeb23de changes to update commands to leverage either node_net_cmd/net_cmd 2019-10-10 15:25:12 -07:00
Blake Harnden
bc58693339 updated emane config files to be generated for remote servers, fixed services not using node remote server compatible commands 2019-10-10 11:53:52 -07:00
bharnden
95296988c5 updates to Pipefile.lock and for nodes to add server to constructor 2019-10-05 11:16:57 -07:00
bharnden
4079df9739 added pydocs for netclient 2019-10-01 15:38:23 -07:00
bharnden
e4bb315c14 updates to netclient, providing commonly used network commands in more convenient functions 2019-10-01 12:14:37 -07:00
bharnden
503fa754a9 updates to fail early for required executables that are not in PATH 2019-09-27 23:29:15 -07:00
bharnden
050297587d consolidated EmaneNode and EmaneNet, renaming EmaneNode to EmaneNet 2019-09-27 22:31:56 -07:00
bharnden
b14012e5e9 removed node map file and utilities, added formal class methods to session objects and added checks for specific classes where needed 2019-09-26 13:00:12 -07:00
Blake Harnden
fcee44775a changes to logging, moving logs to debug and removing setnemposition logging that could spam output 2019-09-13 13:13:59 -07:00
Blake Harnden
32bfa4b2f9 fixed exception catches for get_node expecting KeyError to expect CoreError 2019-09-12 15:48:09 -07:00
bharnden
0d5692e7e8 updates to try and clean up info logging, moved some statements to debug 2019-09-11 15:05:05 -07:00
bharnden
dee91e97bf changes to fix flake8 issues 2019-09-10 21:01:51 -07:00
bharnden
1fc8d647c3 added flake8/black, pre-commit integration for flake8/black, and black formatting changes 2019-09-10 15:10:24 -07:00
bharnden
d5055f85d3 pass over files using isort 2019-09-10 14:20:51 -07:00
Blake Harnden
913ca51b1c cleanup for docker/lxd code being used, tweaks to running container commands 2019-07-02 16:05:45 -07:00
Blake Harnden
407cfa5fe1 updated emanemanager to add server prefixes to control nets, when control nets are not configured 2019-06-19 13:52:51 -07:00
Blake Harnden
14fc16832d updated long to use lon in emane code to avoid name conflicts in 2.7 2019-06-19 08:22:28 -07:00
Blake Harnden
948b1126ba changes to support not modifying controlnet configuration messages and avoid issues with setting the master meane config when dealing with distributed emane 2019-06-18 10:33:16 -07:00
Blake Harnden
db7bfe12bd pass on updated pydocs to reflect path changes 2019-06-07 08:59:16 -07:00
Blake Harnden
597bd21994 updated logging.warn to logging.warning due to deprecation in python3, fixed python 2/3 filter issue in tests, fixed utf decoding for some missed popen commands 2019-06-03 14:36:21 -07:00
bharnden
3de37f0f5e fixed basestring check for 2/3 compatibility 2019-06-02 19:23:49 -07:00
bharnden
ecc63f4abb updates to support 2/3 along with not using vcmd c extension 2019-06-02 19:06:25 -07:00
bharnden
1e98175e35 refactored usages of iteritems, itervalues, and iterkeys to be 2/3 compliant 2019-05-05 21:23:43 -07:00
bharnden
66e603906a updates to layout core module packages in a more logical way, including renaming methods from objects to nodes and nodes.objid to nodes.id 2019-04-29 23:31:47 -07:00
bharnden
9517740704 initial refactor for all variables named objid 2019-04-26 22:07:51 -07:00
bharnden
6672fd0f7a updates to allow configuration of installed emane_prefix for default models, requires small tweaks to custom models 2019-04-08 09:49:37 -07:00
bharnden
7aee2b2ba7 updated logging usage, to use the library directly and avoid imposing a core config by default, allowing users of the core library to configure logging as desired 2019-02-16 09:50:19 -08:00
bharnden
03d0e90db5
Merge pull request #198 from coreemu/bugfix/reduce-default-core-daemon-logging
quiet core-daemon by replacing warn messages with debug
2018-11-14 15:26:50 -08:00
bharnden
12cc40d3d3 cleaned up core.emane, core.services, core.xml, fixed bug introduced in coreobj.py 2018-10-11 17:26:34 -07:00
Jeff Ahrenholz
18d4908bf8 quiet core-daemon by replacing warn messages with debug 2018-10-09 10:13:12 -07:00