Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Detect socket closed by peer in the transport layer, so that such things don't polute...
[simgrid.git] / src / gras / Transport / transport_private.h
index 6d3857f..88357d6 100644 (file)
@@ -14,7 +14,6 @@
 
 #include "xbt/sysdep.h"
 #include "xbt/log.h"
-#include "xbt/error.h"
 #include "xbt/dynar.h"
 #include "xbt/dict.h"
 
@@ -24,8 +23,9 @@
 #include "gras/transport.h"  /* rest of module interface */
 
 #include "gras/Transport/transport_interface.h" /* semi-public API */
-#include "gras/Virtu/virtu_interface.h" /* socketset_get() */
+#include "gras/Virtu/virtu_interface.h" /* libdata management */
 
+extern int gras_trp_libdata_id; /* our libdata identifier */
 /**
  * s_gras_socket:
  * 
@@ -40,13 +40,15 @@ typedef struct s_gras_socket  {
   int outgoing :1; /* true if we can write on this sock */
   int accepting :1; /* true if master incoming sock in tcp */
   int meas :1; /* true if this is an experiment socket instead of messaging */
+  int recv_ok :1; /* true if it is valid to recv() on the socket (false if it is a file) */
 
-  unsigned long int bufSize; /* what to say to the OS. field here to remember it when accepting */
+  unsigned long int buf_size; /* what to say to the OS. field here to remember it when accepting */
    
   int  sd; 
   int  port; /* port on this side */
   int  peer_port; /* port on the other side */
   char *peer_name; /* hostname of the other side */
+  char *peer_proc; /* process on the other side */
 
   void *data;    /* plugin specific data */
 
@@ -61,9 +63,9 @@ void gras_trp_socket_new(int incomming,
 typedef void (*gras_trp_setup_t)(gras_trp_plugin_t dst);
 
 void gras_trp_tcp_setup(gras_trp_plugin_t plug);
+void gras_trp_iov_setup(gras_trp_plugin_t plug);
 void gras_trp_file_setup(gras_trp_plugin_t plug);
 void gras_trp_sg_setup(gras_trp_plugin_t plug);
-void gras_trp_buf_setup(gras_trp_plugin_t plug);
 
 /*
 
@@ -83,16 +85,6 @@ void gras_trp_buf_setup(gras_trp_plugin_t plug);
 
 */
 
-void gras_trp_buf_init_sock(gras_socket_t sock);
-
-
-/* Data exchange over measurement sockets */ /* FIXME: KILLME */
-xbt_error_t gras_socket_meas_exchange(gras_socket_t peer,
-                                     int sender,
-                                     unsigned int timeout,
-                                     unsigned long int expSize,
-                                     unsigned long int msgSize);
-
-xbt_dynar_t gras_socketset_get(void); /* FIXME:KILLME */
+gras_socket_t gras_trp_buf_init_sock(gras_socket_t sock);
 
 #endif /* GRAS_TRP_PRIVATE_H */