#include "msg/msg.h"
#include "gras/Virtu/virtu_sg.h"
-XBT_LOG_EXTERNAL_CATEGORY(transport);
-XBT_LOG_DEFAULT_CATEGORY(transport);
+XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(gras_trp);
/**
* gras_trp_select:
gras_socket_t gras_trp_select(double timeout) {
gras_socket_t res;
- gras_trp_procdata_t pd=(gras_trp_procdata_t)gras_libdata_get("gras_trp");
+ gras_trp_procdata_t pd =
+ (gras_trp_procdata_t) gras_libdata_by_id(gras_trp_libdata_id);
gras_trp_sg_sock_data_t *sockdata;
gras_trp_plugin_t trp;
/* Try to reuse an already openned socket to that expeditor */
xbt_dynar_foreach(pd->sockets,cursor,sock_iter) {
DEBUG1("Consider %p as outgoing socket to expeditor",sock_iter);
- sockdata = sock_iter->data;
if (sock_iter->meas || !sock_iter->outgoing)
continue;
+ sockdata = sock_iter->data;
if (sockdata->to_PID == r_pid) {
return sock_iter;
}
/* Socket to expeditor not created yet */
DEBUG0("Create a socket to the expeditor");
- trp = gras_trp_plugin_get_by_name("buf");
+ trp = gras_trp_plugin_get_by_name("sg");
gras_trp_socket_new(1,&res);
res->plugin = trp;
res->accepting = 0;
res->sd = -1;
- res->port = -1;
+ res->port = -1;
sockdata = xbt_new(gras_trp_sg_sock_data_t,1);
sockdata->from_PID = MSG_process_self_PID();
sockdata->to_host = MSG_process_get_host(MSG_process_from_PID(r_pid));
res->data = sockdata;
gras_trp_buf_init_sock(res);
-
+
res->peer_name = strdup(MSG_host_get_name(sockdata->to_host));
remote_hd=(gras_hostdata_t *)MSG_host_get_data(sockdata->to_host);
}
}
}
+ res->peer_port = ((gras_trp_procdata_t) gras_libdata_by_name_from_remote("gras_trp",MSG_process_from_PID(r_pid)))->myport;
xbt_assert0(sockdata->to_chan != -1,
"Got a message from a process without channel");
void gras_trp_tcp_setup(gras_trp_plugin_t plug) { THROW0(mismatch_error,0,NULL); }
void gras_trp_file_setup(gras_trp_plugin_t plug){ THROW0(mismatch_error,0,NULL); }
-void gras_trp_buf_setup(gras_trp_plugin_t plug) { THROW0(mismatch_error,0,NULL); }
void gras_trp_iov_setup(gras_trp_plugin_t plug) { THROW0(mismatch_error,0,NULL); }
gras_socket_t gras_trp_buf_init_sock(gras_socket_t sock) { return sock;}