scope of apply_rpc_validate_()

Skip to first unread message

May 26, 2015, 11:57:51 AM5/26/15

I'm wondering if apply_rpc_validate_() should also validate operational state data?

I understand that libnetconf also validates the configuration against the operational state data, but is that necessary or useful?

If an <edit-config> RPC on running_config is received, the libnetconf merges the new configuration and tries to validate the new configuration. At this point, transapi functions haven't been invoked yet. But before validation is performed, libnetconf retrieves the operational state data (get_state()). In other words, the operational state data that libnetconf retrieves at this point would only reflect the operational state of the true running config, not the merged configuration. What then is the purpose of validating the merged configuration against the operational state at that this point? (Similarly, what's the purpose of validating candidate config against current operational state?)


Radek Krejčí

May 27, 2015, 3:07:43 AM5/27/15
Hi Helen,

you are right, but the issue is already fixed in the libnetconf's master branch. Since this change requires to regenerate relax NG and schematron files for all transAPI modules, it was not backported (and it is not planned) to the 0.9.x branch. So, the validate operation and test/test-and-set option in edit-config currently works only with the configuration data. However, RFC 6020 specifies that the status data should be validated when they are being returned by the get operation, but libnetconf does not do any validation at this point.


Dne 26.5.2015 v 17:57 napsal(a):
Reply all
Reply to author
0 new messages