diff options
Diffstat (limited to 'src/vlibmemory/memclnt.api')
-rw-r--r-- | src/vlibmemory/memclnt.api | 68 |
1 files changed, 61 insertions, 7 deletions
diff --git a/src/vlibmemory/memclnt.api b/src/vlibmemory/memclnt.api index 07c6d47b9fc..dc0f4e1c8a7 100644 --- a/src/vlibmemory/memclnt.api +++ b/src/vlibmemory/memclnt.api @@ -27,10 +27,11 @@ service { }; /* - * Create a client registration + * Create a client registration */ -manual_print define memclnt_create { + option deprecated; + u32 context; /* opaque value to be returned in the reply */ i32 ctx_quota; /* requested punt context quota */ u64 input_queue; /* client's queue */ @@ -39,6 +40,8 @@ define memclnt_create { }; define memclnt_create_reply { + option deprecated; + u32 context; /* opaque value from the create request */ i32 response; /* Non-negative = success */ u64 handle; /* handle by which vlib knows this client */ @@ -47,9 +50,8 @@ define memclnt_create_reply { }; /* - * Delete a client registration + * Delete a client registration */ -manual_print define memclnt_delete { u32 index; /* index, used e.g. by API trace replay */ u64 handle; /* handle by which vlib knows this client */ @@ -137,7 +139,7 @@ define api_versions_reply { * at api trace replay time */ -manual_print define trace_plugin_msg_ids +define trace_plugin_msg_ids { u32 client_index; u32 context; @@ -153,7 +155,7 @@ typedef message_table_entry }; /* - * Create a socket client registration. + * Create a socket client registration. */ define sockclnt_create { u32 context; /* opaque value to be returned in the reply */ @@ -170,7 +172,7 @@ define sockclnt_create_reply { }; /* - * Delete a client registration + * Delete a client registration */ define sockclnt_delete { u32 client_index; @@ -209,3 +211,55 @@ autoreply define memclnt_keepalive u32 client_index; u32 context; }; + +/** \brief Control ping from client to api server request + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request +*/ +define control_ping +{ + u32 client_index; + u32 context; +}; + +/** \brief Control ping from the client to the server response + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param retval - return code for the request + @param vpe_pid - the pid of the vpe, returned by the server +*/ +define control_ping_reply +{ + u32 context; + i32 retval; + u32 client_index; + u32 vpe_pid; +}; + +define memclnt_create_v2 { + u32 context; /* opaque value to be returned in the reply */ + i32 ctx_quota; /* requested punt context quota */ + u64 input_queue; /* client's queue */ + string name[64]; /* for show, find by name, whatever */ + u32 api_versions[8]; /* client-server pairs use as desired */ + bool keepalive[default=true]; /* dead client scan keepalives */ +}; + +define memclnt_create_v2_reply { + u32 context; /* opaque value from the create request */ + i32 response; /* Non-negative = success */ + u64 handle; /* handle by which vlib knows this client */ + u32 index; /* index, used e.g. by API trace replay */ + u64 message_table; /* serialized message table in shmem */ +}; + +define get_api_json { + u32 client_index; + u32 context; +}; + +define get_api_json_reply { + u32 context; + i32 retval; + string json[]; +}; |