1 /*
   2  * This file and its contents are supplied under the terms of the
   3  * Common Development and Distribution License ("CDDL"), version 1.0.
   4  * You may only use this file in accordance with the terms of version
   5  * 1.0 of the CDDL.
   6  *
   7  * A full copy of the text of the CDDL should have accompanied this
   8  * source.  A copy of the CDDL is also available via the Internet at
   9  * http://www.illumos.org/license/CDDL.
  10  */
  11 
  12 /*
  13  * Copyright (c) 2017, Joyent, Inc. 
  14  */
  15 
  16 /*
  17  * Misc. support routines
  18  */
  19 
  20 #include <sys/cmn_err.h>
  21 #include <sys/ddi.h>
  22 #include <sys/sunddi.h>
  23 
  24 /*
  25  * We need to emulate sprintf. Unfortunately illumos sprintf does not return the
  26  * number of bytes written, only a pointer to the string. Therefore we need this
  27  * wrapper.
  28  */
  29 size_t
  30 qede_sprintf(char *s, const char *fmt, ...)
  31 {
  32         size_t r;
  33         va_list args;
  34 
  35         va_start(args, fmt);
  36         r = vsnprintf(s, SIZE_MAX, fmt, args);
  37         va_end(args);
  38 
  39         return (r);
  40 }