The Arista EOS SDK allows development of high performance on switch agents that react to and interact directly with EOS. These agents can bridge feature configuration with existing systems or provide automated system maintenance facilities due to the SDK’s state based programming approach. Refer to the EOS SDK wiki for more information including example code using the SDK.
The SDK is split up into modules that manage one particular part of the system, such as the intf module for generic interface management (admin state, description) or the acl module for configuration of Access Control Lists. Each module consists of a module manager class, such as eos::intf_mgr. Modules that provide notifications also have a handler class, e.g., eos::intf_handler. Handler sub-classes are provided by your implementation and provide the notification callbacks for notifications from EOS.
In addition, there are a number of framework modules that provide access to the SDK components (sdk), offer an asynchronous file-descriptor interface for use with asynchronous networking libraries (fd) and provide debug logging facilities (tracing).