-XBT_PUBLIC(void) SIMIX_network_send(smx_rdv_t rdv, void *data, size_t size, double rate, double timeout);
-XBT_PUBLIC(void) SIMIX_network_recv(smx_rdv_t rvp, void **data, size_t *size, double timeout);
+XBT_PUBLIC(void) SIMIX_network_send(smx_rdv_t rdv, double task_size, double rate,
+ double timeout, void *data, size_t data_size,
+ int (filter)(smx_comm_t, void *), void *arg);
+XBT_PUBLIC(void) SIMIX_network_recv(smx_rdv_t rdv, double timeout, void *data,
+ size_t *data_size, int (filter)(smx_comm_t, void *), void *arg);