-/* $Id$ */
-
/* virtu_sg - specific GRAS implementation for simulator */
-/* Copyright (c) 2003, 2004 Martin Quinson. All rights reserved. */
+/* Copyright (c) 2004, 2005, 2006, 2007, 2009, 2010. The SimGrid Team.
+ * All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
typedef struct {
int port; /* list of ports used by a server socket */
int meas; /* (boolean) the channel is for measurements or for messages */
- smx_process_t process;
- gras_socket_t socket;
+ smx_process_t process; /* process listening */
+ smx_rdv_t rdv; /* rendez-vous point to the listener */
+// gras_socket_t socket; FIXME KILLME
} gras_sg_portrec_t;
/* Data for each host */
typedef struct {
int refcount;
- /* Nothing in particular (anymore) */
+ xbt_dynar_t ports;
+
} gras_hostdata_t;
/* data for each socket (FIXME: find a better location for that)*/
typedef struct {
- smx_rdv_t rdv;
+ smx_process_t from_process;
+ smx_process_t to_process;
- smx_process_t from_process; /* the one who created the socket */
smx_host_t to_host; /* Who's on other side */
- smx_comm_t comm; /* Ongoing communication */
-
- s_gras_msg_t ongoing_msg;
- size_t ongoing_msg_size;
- gras_socket_t to_socket; /* If != NULL, this socket was created as accept when receiving onto to_socket */
+ smx_rdv_t rdv_server; /* The rendez-vous point to use */
+ smx_rdv_t rdv_client; /* The rendez-vous point to use */
+ int im_server:1;
+ smx_comm_t comm_recv; /* The comm of irecv on receiving sockets */
} gras_trp_sg_sock_data_t;