* Corrected client session handling to make internal IPC socket persistent

* Applies to cli/netconf/restconf/client-api code
  * Previous behaviour:
    * Close socket after each rpc, but now keeps the socket open until the client terminates
    * Kept locks over socket life-cycle, but according to RFC 6241 7.5 a lock should be relaeased when session ends
This commit is contained in:
Olof hagsand 2021-01-27 15:07:27 +01:00
parent b41f68b677
commit f5f013c739
18 changed files with 371 additions and 145 deletions

View file

@ -46,7 +46,7 @@ typedef void *clixon_client_handle;
typedef enum {
CLIXON_CLIENT_IPC, /* Internal IPC API, only experimental use */
CLIXON_CLIENT_NETCONF, /* External Netconf */
CLIXON_CLIENT_SSH /* External Netconf over SSH */
CLIXON_CLIENT_SSH /* NYI External Netconf over SSH */
} clixon_client_type;
/*
@ -68,6 +68,9 @@ int clixon_client_get_uint16(clixon_client_handle ch, uint16_t *rval, const ch
int clixon_client_get_uint32(clixon_client_handle ch, uint32_t *rval, const char *xnamespace, const char *xpath);
int clixon_client_get_uint64(clixon_client_handle ch, uint64_t *rval, const char *xnamespace, const char *xpath);
/* Access functions */
int clixon_client_socket_get(clixon_client_handle ch);
#ifdef __cplusplus
}
#endif