summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
add41f0)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@6148
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
int myport; /* port on which I receive stuff */
int todo; /* amount of messages I should get */
char *data; /* message content */
int myport; /* port on which I receive stuff */
int todo; /* amount of messages I should get */
char *data; /* message content */
gras_socket_t mysock; /* socket on which other people contact me */
gras_socket_t expeditor; /* to notice who wrote me */
gras_socket_t mysock; /* socket on which other people contact me */
gras_socket_t expeditor; /* to notice who wrote me */
/* Init the GRAS infrastructure and declare my globals */
gras_init(&argc,argv);
/* Init the GRAS infrastructure and declare my globals */
gras_init(&argc,argv);
/* Get my settings from the command line */
myport=atoi(argv[1]);
todo=atoi(argv[2]);
/* Get my settings from the command line */
myport=atoi(argv[1]);
todo=atoi(argv[2]);
- /* Create my master socket */
- mysock = gras_socket_server(myport);
-
/* Register the known messages */
gras_msgtype_declare("data", gras_datadesc_by_name("string"));
/* Register the known messages */
gras_msgtype_declare("data", gras_datadesc_by_name("string"));
+ /* Create my master socket */
+ mysock = gras_socket_server(myport);
INFO2("Listening on port %d (expecting %d messages)",
gras_socket_my_port(mysock),
todo);
INFO2("Listening on port %d (expecting %d messages)",
gras_socket_my_port(mysock),
todo);
&expeditor,
&data);
todo--;
&expeditor,
&data);
todo--;
INFO3("Got Data from %s:%d (still %d to go)",
gras_socket_peer_name(expeditor), gras_socket_peer_port(expeditor),
todo);
INFO3("Got Data from %s:%d (still %d to go)",
gras_socket_peer_name(expeditor), gras_socket_peer_port(expeditor),
todo);
int datasize; /* size of message */
xbt_peer_t h; /* iterator */
int connected = 0;
int datasize; /* size of message */
xbt_peer_t h; /* iterator */
int connected = 0;
gras_socket_t peer=NULL; /* socket to node */
gras_socket_t peer=NULL; /* socket to node */
/* xbt_dynar for peers */
xbt_dynar_t peers = xbt_dynar_new(sizeof(xbt_peer_t),&xbt_peer_free_voidp);
/* xbt_dynar for peers */
xbt_dynar_t peers = xbt_dynar_new(sizeof(xbt_peer_t),&xbt_peer_free_voidp);
/* Init the GRAS infrastructure and declare my globals */
gras_init(&argc,argv);
/* Init the GRAS infrastructure and declare my globals */
gras_init(&argc,argv);
/* Get the node location from argc/argv */
for (iter=1; iter<argc-1; iter++){
xbt_peer_t peer = xbt_peer_from_string(argv[iter]);
xbt_dynar_push(peers,&peer);
}
/* Get the node location from argc/argv */
for (iter=1; iter<argc-1; iter++){
xbt_peer_t peer = xbt_peer_from_string(argv[iter]);
xbt_dynar_push(peers,&peer);
}
datasize=atoi(argv[argc-1]);
datasize=atoi(argv[argc-1]);
data=(char *) malloc(datasize+1); // allocation of datasize octets
memset(data, 32, datasize);
data[datasize] = '\0';
data=(char *) malloc(datasize+1); // allocation of datasize octets
memset(data, 32, datasize);
data[datasize] = '\0';
INFO2(" Sent Data from %s to %s", gras_os_myname(),h->name);
} else {
INFO0(" Sent Data");
INFO2(" Sent Data from %s to %s", gras_os_myname(),h->name);
} else {
INFO0(" Sent Data");
gras_socket_close(peer);
}
/* Free the allocated resources, and shut GRAS down */
free(data);
xbt_dynar_free(&peers);
gras_socket_close(peer);
}
/* Free the allocated resources, and shut GRAS down */
free(data);
xbt_dynar_free(&peers);
gras_exit();
return 0;
} /* end_of_sender */
gras_exit();
return 0;
} /* end_of_sender */