When receiving a request Clixon-controller doesn't properly reply to the sender with the same message-id. This causes the operation and connection to error out when using other netconf clients.
Example of error when testing to get_config(source='running') using ncclient with modified transport to support unix domain sockets (Fork).
>>> clixonTest.get_config(source='running')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/spiffi/.virtualenvs/ncclient-testing/lib/python3.10/site-packages/ncclient/manager.py", line 270, in execute
return cls(self._session,
File "/home/spiffi/.virtualenvs/ncclient-testing/lib/python3.10/site-packages/ncclient/operations/retrieve.py", line 166, in request
return self._request(node)
File "/home/spiffi/.virtualenvs/ncclient-testing/lib/python3.10/site-packages/ncclient/operations/rpc.py", line 364, in _request
raise self._error
File "/home/spiffi/.virtualenvs/ncclient-testing/lib/python3.10/site-packages/ncclient/transport/session.py", line 241, in run
self.parser.parse(data)
File "/home/spiffi/.virtualenvs/ncclient-testing/lib/python3.10/site-packages/ncclient/transport/parser.py", line 116, in parse
self._parse11()
File "/home/spiffi/.virtualenvs/ncclient-testing/lib/python3.10/site-packages/ncclient/transport/parser.py", line 205, in _parse11
self._session._dispatch_message(message)
File "/home/spiffi/.virtualenvs/ncclient-testing/lib/python3.10/site-packages/ncclient/transport/unixSocket.py", line 45, in _dispatch_message
return super(UnixSocketSession, self)._dispatch_message(raw)
File "/home/spiffi/.virtualenvs/ncclient-testing/lib/python3.10/site-packages/ncclient/transport/session.py", line 90, in _dispatch_message
l.callback(root, raw) # no try-except; fail loudly if you must!
File "/home/spiffi/.virtualenvs/ncclient-testing/lib/python3.10/site-packages/ncclient/operations/rpc.py", line 249, in callback
raise OperationError("Could not find 'message-id' attribute in <rpc-reply>")
ncclient.operations.errors.OperationError: Could not find 'message-id' attribute in <rpc-reply>
When receiving a request Clixon-controller doesn't properly reply to the sender with the same message-id. This causes the operation and connection to error out when using other netconf clients.
The reply should look more like in the examples here: https://datatracker.ietf.org/doc/html/rfc4741#section-4.2
Example of error when testing to
get_config(source='running')
using ncclient with modified transport to support unix domain sockets (Fork).Output from clixon-backen running in D3 mode: