Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
free the callback list on gras_process_exit
[simgrid.git] / src / gras / Virtu / process.c
index 93475bf..ef02c5d 100644 (file)
@@ -33,7 +33,22 @@ gras_procdata_init() {
   gras_error_t errcode;
   gras_procdata_t *pd=gras_procdata_get();
   pd->userdata = NULL;
-  TRY(gras_dynar_new(  &(pd->msg_queue), sizeof(gras_msg_t),      NULL  ));
-  TRY(gras_dynar_new(  &(pd->cbl_list),  sizeof(gras_cblist_t *), NULL  ));
+  TRY(gras_dynar_new(&(pd->msg_queue), sizeof(gras_msg_t),     NULL));
+  TRY(gras_dynar_new(&(pd->cbl_list),  sizeof(gras_cblist_t *),gras_cbl_free));
+  TRY(gras_dynar_new(&(pd->sockets),   sizeof(gras_socket_t*), NULL));
   return no_error;
 }
+
+void
+gras_procdata_exit() {
+  gras_procdata_t *pd=gras_procdata_get();
+
+  gras_dynar_free(pd->msg_queue);
+  gras_dynar_free(pd->cbl_list);
+  gras_dynar_free(pd->sockets);
+}
+
+gras_dynar_t *
+gras_socketset_get(void) {
+   return gras_procdata_get()->sockets;
+}