X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/6961ee4e0cb867ed6100e487a584fccc703ada4f..0681447e18ab9dafad643cc3e7ad845f714da943:/examples/gras/rpc/rpc.c diff --git a/examples/gras/rpc/rpc.c b/examples/gras/rpc/rpc.c index f686f20f72..10e84e0bb9 100644 --- a/examples/gras/rpc/rpc.c +++ b/examples/gras/rpc/rpc.c @@ -60,6 +60,20 @@ static void exception_catching(void) * Client code * **********************************************************************/ +static void client_create_sockets(gras_socket_t *toserver, + gras_socket_t *toforwarder, + const char *srv_host, int srv_port, + const char *fwd_host, int fwd_port) +{ + TRY { + exception_catching(); + *toserver = gras_socket_client(srv_host, srv_port); + *toforwarder = gras_socket_client(fwd_host, fwd_port); + } + CATCH_ANONYMOUS { + RETHROWF("Unable to connect to the server: %s"); + } +} int client(int argc, char *argv[]) { @@ -92,14 +106,8 @@ int client(int argc, char *argv[]) gras_os_sleep(2); /* 4. Create a socket to speak to the server */ - TRY { - exception_catching(); - toserver = gras_socket_client(host, port); - toforwarder = gras_socket_client(argv[3], atoi(argv[4])); - } - CATCH(e) { - RETHROWF("Unable to connect to the server: %s"); - } + client_create_sockets(&toserver, &toforwarder, + host, port, argv[3], atoi(argv[4])); XBT_INFO("Connected to %s:%d.", host, port); @@ -119,7 +127,7 @@ int client(int argc, char *argv[]) exception_catching(); gras_msg_rpccall(toserver, 6000.0, "plain ping", &ping, &pong); } - CATCH(e) { + CATCH_ANONYMOUS { gras_socket_close(toserver); RETHROWF("Failed to execute a PING rpc on the server: %s"); }