-/* A plugin type */
-struct gras_trp_plugin_ {
- char *name;
-
- /* dst pointers are created and initialized with default values
- before call to socket_client/server.
- Retrive the info you need from there. */
- xbt_error_t (*socket_client)(gras_trp_plugin_t *self,
- gras_socket_t dst);
- xbt_error_t (*socket_server)(gras_trp_plugin_t *self,
- gras_socket_t dst);
-
- xbt_error_t (*socket_accept)(gras_socket_t sock,
- gras_socket_t *dst);
-
-
- /* socket_close() is responsible of telling the OS that the socket is over,
- but should not free the socket itself (beside the specific part) */
- void (*socket_close)(gras_socket_t sd);
-
- xbt_error_t (*chunk_send)(gras_socket_t sd,
- const char *data,
- long int size);
- xbt_error_t (*chunk_recv)(gras_socket_t sd,
- char *data,
- long int size);
+ /* List of sockets ready to be select()ed */
+ xbt_queue_t msg_selectable_sockets; /* regular sockets */
+ xbt_queue_t meas_selectable_sockets; /* measurement ones */