libdebian-installer
Data Structures | Functions
Di_string

Data Structures

struct  di_rstring
 raw string More...
 

Functions

int di_snprintfcat (char *str, size_t size, const char *format,...)
 
char * di_stradup (const char *s, size_t n)
 

Detailed Description

Function Documentation

◆ di_snprintfcat()

int di_snprintfcat ( char *  str,
size_t  size,
const char *  format,
  ... 
)

cat resolved format to str

Parameters
strstring
sizelen of str
formatprintf compatible string
Returns
append chars
33 {
34  va_list ap;
35  int retval;
36  size_t len = strlen (str);
37 
38  va_start (ap, format);
39  retval = vsnprintf (str + len, size - len, format, ap);
40  va_end (ap);
41 
42  return retval;
43 }

◆ di_stradup()

char* di_stradup ( const char *  s,
size_t  n 
)

Copies n bytes from s, without calculating the length of s itself.

Parameters
ssource
nlen of source without delimiter
Returns
malloced string

References di_new.

46 {
47  size_t len = n + 1;
48  char *string = di_new (char, len);
49  string[n] = '\0';
50  return memcpy (string, s, n);
51 }
#define di_new(struct_type, n_structs)
Definition: mem.h:73