aboutsummaryrefslogtreecommitdiffstats
path: root/src/libskabus/skabus_rpc_idstr.c
blob: 8e48e853aa6932b67f45ad797c960406c0296a78 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* ISC license. */

#include <errno.h>

#include <skalibs/tai.h>
#include <skalibs/skaclient.h>

#include <skabus/rpc.h>

int skabus_rpc_idstr (skabus_rpc_t *a, char const *idstr, skabus_rpc_interface_t const *ifbody, char const *re, tain const *deadline, tain *stamp)
{
  skabus_rpc_interface_result_t r ;
  if (!skabus_rpc_idstr_async(a, idstr, ifbody, re, &r)) return 0 ;
  if (!skaclient_syncify(&a->connection, deadline, stamp)) return 0 ;
  return r.err ? (errno = r.err, 0) : 1 ;
}