The netconf.server Module

class netconf.server.NetconfMethods

Bases: object

This is an abstract class that is used to document the server methods functionality

The server return not-implemented if the method is not found in the methods object, so feel free to use duck-typing here (i.e., no need to inherit)

nc_append_capabilities(capabilities)

The server should append any capabilities it supports to capabilities

rpc_copy_config(unused_session, rpc, *unused_params)
rpc_delete_config(unused_session, rpc, *unused_params)
rpc_edit_config(unused_session, rpc, *unused_params)
rpc_get(session, rpc, filter_or_none)

Passed the filter element or None if not present

rpc_get_config(session, rpc, source_elm, filter_or_none)

Passed the source element

rpc_lock(unused_session, rpc, *unused_params)
rpc_unlock(unused_session, rpc, *unused_params)
class netconf.server.NetconfSSHServer(server_ctl=None, server_methods=None, port=830, host_key=None, debug=False)

Bases: sshutil.server.SSHServer

A netconf server

allocate_session_id()
class netconf.server.NetconfServerSession(channel, server, unused_extra_args, debug)

Bases: netconf.base.NetconfSession

Netconf Server-side Session Protocol

close()
handled_rpc_methods = set([u'close-session', u'kill-session'])
reader_exits()
reader_handle_message(msg)

Handle a message, lock is already held

send_rpc_reply(rpc_reply, origmsg)
send_rpc_reply_error(error)
class netconf.server.SSHAuthController(users=None)

Bases: paramiko.server.ServerInterface

check_auth_none(unused_username)
check_auth_password(username, password)
check_auth_publickey(username, key)
check_channel_request(kind, chanid)
check_channel_subsystem_request(channel, name)
get_allowed_auths(username)
get_user_auth_keys(username)

Parse the users’s authorized_keys file if any to look for authorized keys

class netconf.server.SSHUserPassController(username=None, password=None)

Bases: paramiko.server.ServerInterface

check_auth_none(username)
check_auth_password(username, password)
check_channel_request(kind, chanid)
check_channel_subsystem_request(channel, name)
get_allowed_auths(username)