- TALLOC_CTX *tmp_ctx=talloc_new(NULL);
- TRPS_INSTANCE *trps=talloc_get_type_abort(arg, TRPS_INSTANCE);
- TRP_REQ *req=NULL;
- TR_MSG msg;
- char *encoded=NULL;
-
- tr_debug("debug_ping entered, trps=%p, trps->trpc=%p", trps, trps->trpc);
- if (trps->trpc==NULL)
- tr_trpc_initiate(trps, trps->hostname, trps->port);
-
- /* create a TRP route request msg */
- req=trp_req_new(tmp_ctx);
- tr_msg_set_trp_req(&msg, req);
- encoded=tr_msg_encode(&msg);
- if (encoded==NULL)
- tr_err("debug_ping: error encoding TRP message.");
- else {
- tr_debug("debug_ping: sending message");
- trps_send_msg(trps, NULL, encoded);
- tr_msg_free_encoded(encoded);
- }
+ sigset_t signals;
+ /* ignore SIGPIPE */
+ sigemptyset(&signals);
+ sigaddset(&signals, SIGPIPE);
+ pthread_sigmask(SIG_BLOCK, &signals, NULL);