XBT_LOG_NEW_DEFAULT_CATEGORY(Rpc,"Messages specific to this example");
-int err=0; /* to make the message of the raised exception more informative and
- even be able to follow their propagation from server to client*/
-
/* register messages which may be sent (common to client and server) */
static void register_messages(void) {
gras_msgtype_declare_rpc("plain ping",
int forwarder (int argc,char *argv[]);
int client (int argc,char *argv[]);
-static void exception_raising(void) {
- /*THROW1(unknown_error,42,"Some error we will catch on client side %d",err++);*/
-}
+#define exception_raising() \
+ THROW0(unknown_error,42,"Some error we will catch on client side")
+
static void exception_catching(void) {
int gotit = 0,i;
xbt_ex_t e;
register_messages();
/* 6. Keep the user informed of what's going on */
- INFO2("Connected to server which is on %s:%d ",
+ INFO2("Connected to server which is on %s:%d",
gras_socket_peer_name(toserver),gras_socket_peer_port(toserver));
/* 7. Prepare and send the ping message to the server */
exception_catching();
/* 8. Keep the user informed of what's going on, again */
- INFO4("The answer to PING(%d) on %s:%d is PONG(%d) ",
+ INFO4("The answer to PING(%d) on %s:%d is PONG(%d)",
ping,
gras_socket_peer_name(toserver),gras_socket_peer_port(toserver),
pong);
/* 11. Cleanup the place before leaving */
gras_socket_close(toserver);
gras_socket_close(toforwarder);
- gras_exit();
INFO0("Done.");
+ gras_exit();
return 0;
} /* end_of_client */
gras_socket_close(mysock);
gras_socket_close(fdata->server);
free(fdata);
- gras_exit();
INFO0("Done.");
+ gras_exit();
return 0;
}
gras_socket_t expeditor = gras_msg_cb_ctx_from(ctx);
/* 2. Log which client connected */
- INFO3("Got message PING(%d) from %s:%d ",
+ INFO3("Got message PING(%d) from %s:%d",
msg,
gras_socket_peer_name(expeditor), gras_socket_peer_port(expeditor));
gras_cb_register("raise exception",&server_cb_raise_ex);
gras_cb_register("kill",&server_cb_kill);
- INFO1("Listening on port %d ", gras_socket_my_port(mysock));
+ INFO1("Listening on port %d", gras_socket_my_port(mysock));
/* 5. Wait for the ping incomming messages */
/* 8. Free the allocated resources, and shut GRAS down */
free(sdata);
gras_socket_close(mysock);
+ INFO0("Done.");
gras_exit();
- INFO0("Done.");
return 0;
} /* end_of_server */