__fxprintf (NULL, "%s", L"%s", buf);
universal (struct svc_req *rqstp, SVCXPRT *transp_l){  int prog, proc;  char *outdata;  char xdrbuf[UDPMSGSIZE];  struct proglst_ *pl;  char *buf = NULL;  /*   * enforce "procnum 0 is echo" convention   */  if (rqstp->rq_proc == NULLPROC)    {      if (INTUSE(svc_sendreply) (transp_l, (xdrproc_t)INTUSE(xdr_void),				 (char *) NULL) == FALSE)	{	  __write (STDERR_FILENO, "xxx\n", 4);	  exit (1);	}      return;    }  prog = rqstp->rq_prog;  proc = rqstp->rq_proc;  for (pl = proglst; pl != NULL; pl = pl->p_nxt)    if (pl->p_prognum == prog && pl->p_procnum == proc)      {	/* decode arguments into a CLEAN buffer */	__bzero (xdrbuf, sizeof (xdrbuf));	/* required ! */	if (!svc_getargs (transp_l, pl->p_inproc, xdrbuf))	  {	    INTUSE(svcerr_decode) (transp_l);	    return;	  }	outdata = (*(pl->p_progname)) (xdrbuf);	if (outdata == NULL && pl->p_outproc != (xdrproc_t)INTUSE(xdr_void))	  /* there was an error */	  return;	if (!INTUSE(svc_sendreply) (transp_l, pl->p_outproc, outdata))	  {	    if (__asprintf (&buf, _("trouble replying to prog %d\n"),			    pl->p_prognum) < 0)	      buf = NULL;	    goto err_out2;	  }	/* free the decoded arguments */	(void) svc_freeargs (transp_l, pl->p_inproc, xdrbuf);	return;      }  if (__asprintf (&buf, _("never registered prog %d\n"), prog) < 0)    buf = NULL; err_out2:  if (buf == NULL)    exit (1);#ifdef USE_IN_LIBIO  if (_IO_fwide (stderr, 0) > 0)    __fwprintf (stderr, L"%s", buf);  else#endif    fputs (buf, stderr);  free (buf);  exit (1);}