X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvlibmemory%2Fmemclnt.api;h=923df69fd9a0af4c9278b6fedf5e2ad620e4877f;hb=dab732a;hp=94c99ad5d45c000108844f21bf3fa2c5badbdb84;hpb=59b2565cd91a67ced650739f36129650830211ac;p=vpp.git diff --git a/src/vlibmemory/memclnt.api b/src/vlibmemory/memclnt.api index 94c99ad5d45..923df69fd9a 100644 --- a/src/vlibmemory/memclnt.api +++ b/src/vlibmemory/memclnt.api @@ -14,23 +14,35 @@ * limitations under the License. */ +option version = "1.0.0"; + +/* + * Define services not following the normal convetions here + */ +service { + rpc memclnt_rx_thread_suspend returns null; + rpc memclnt_read_timeout returns null; + rpc rx_thread_exit returns null; + rpc trace_plugin_msg_ids returns null; +}; + /* * Create a client registration */ manual_print define memclnt_create { - i32 ctx_quota; /* requested punt context quota */ u32 context; /* opaque value to be returned in the reply */ + i32 ctx_quota; /* requested punt context quota */ u64 input_queue; /* client's queue */ u8 name[64]; /* for show, find by name, whatever */ u32 api_versions[8]; /* client-server pairs use as desired */ }; define memclnt_create_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 */ - u32 context; /* opaque value from the create request */ u64 message_table; /* serialized message table in shmem */ }; @@ -98,6 +110,27 @@ define get_first_msg_id_reply { u16 first_msg_id; }; +/* + * Get API version table (includes built-in and plugins) + */ +typeonly define module_version { + u32 major; + u32 minor; + u32 patch; + u8 name[64]; +}; +define api_versions { + u32 client_index; + u32 context; +}; +define api_versions_reply { + u32 client_index; + u32 context; + i32 retval; + u32 count; + vl_api_module_version_t api_versions[count]; +}; + /* * Trace the plugin message-id allocator * so we stand a chance of dealing with different sets of plugins @@ -117,15 +150,15 @@ manual_print define trace_plugin_msg_ids * Create a socket client registration. */ define sockclnt_create { - u8 name[64]; /* for show, find by name, whatever */ u32 context; /* opaque value to be returned in the reply */ + u8 name[64]; /* for show, find by name, whatever */ }; define sockclnt_create_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 */ - u32 context; /* opaque value from the create request */ }; /* @@ -142,23 +175,21 @@ define sockclnt_delete_reply { }; /* - * Ask vpp for a memfd shared segment + * Initialize shm api over socket api */ -define memfd_segment_create { +autoreply define sock_init_shm { u32 client_index; u32 context; - u64 requested_size; + u32 requested_size; + u8 nitems; + u64 configs[nitems]; }; -/* - * Reply - */ -define memfd_segment_create_reply -{ - u32 context; - i32 retval; - u32 master_fd; -}; +/* define sock_init_shm_reply { + u32 client_index; + u32 context; + i32 retval; +}; */ /* * Memory client ping / response