This repository offers support libraries for writing NETCONF applications in Go.
- RFC6242 transport decoding and encoding filters
- Support for both end-of-message and chunked-message encoding
- A gRPC based bi-directional transport stream, to use an OpenSSH server with a NETCONF agent
- NETCONF XML schema and state machines, used to manage XML stream decoding
- Attach callback functions to the or schema nodes to build NETCONF server and client applications
- Idiomatic use of
io
interfaces throughout
Libraries under development:
- A document object model
- Encoding, decoding and validation of YANG data, including:
- RFC6020 XML encoding and decoding of YANG data
- RFC7951 JSON encoding and decoding of YANG data
- Generation of NETCONF objects from YANG
rpc
statements
Applications you can build with these libraries include:
- NETCONF clients, servers
- NETCONF to network-element CLI proxies for non-NETCONF devices
- NETCONF/YANG command-line tools for network operator use
For building applications with an awareness of YANG data used with NETCONF services, see the goyang library.