Browse Source

add man page for fmt_strm_alloca and fmt_strm_malloc

master
Felix von Leitner 10 months ago
parent
commit
bd5461a618
  1. 2
      fmt/fmt_strm.3
  2. 25
      fmt/fmt_strm_alloca.3
  3. 19
      fmt/fmt_strm_malloc.3

2
fmt/fmt_strm.3

@ -17,4 +17,4 @@ If \fIdest\fR equals FMT_LEN (i.e. is zero), fmt_str returns the number
of bytes it would have written, i.e. the number of leading nonzero bytes
of \fIsource\fR and following function arguments.
.SH "SEE ALSO"
fmt_str(3), strcpy(3)
fmt_str(3), strcpy(3), fmt_strm_alloca(3), fmt_strm_malloc(3)

25
fmt/fmt_strm_alloca.3

@ -0,0 +1,25 @@
.TH fmt_strm_alloca 3
.SH NAME
fmt_strm_alloca \- write multiple ASCII strings
.SH SYNTAX
.B #include <libowfat/fmt.h>
char* \fBfmt_strm_alloca\fP(const char *\fIsource\fR, ...);
.SH DESCRIPTION
fmt_strm_alloca copies all leading nonzero bytes from \fIsource\fR and
following function arguments to a freshly allocated stack buffer and
returns a pointer to it.
Unlink fmt_strm, fmt_strm_alloca does append \\0.
Warning: Using variable size stack buffers is dangerous. If the size of
the buffer is larger than the hardware page size, then it can be used to
skip over the guard page and cause memory corruption. fmt_strm_alloca
has a built-in limit of 100000 bytes. Use this only for trivially small
strings.
If the strings do not come from a trusted place or you are not sure they
are small, prefer fmt_strm_malloc instead.
.SH "SEE ALSO"
fmt_str(3), fmt_strm(3), fmt_strm_malloc(3), alloca(3), strcpy(3)

19
fmt/fmt_strm_malloc.3

@ -0,0 +1,19 @@
.TH fmt_strm_malloc 3
.SH NAME
fmt_strm_malloc \- write multiple ASCII strings
.SH SYNTAX
.B #include <libowfat/fmt.h>
char* \fBfmt_strm_malloc\fP(const char *\fIsource\fR, ...);
.SH DESCRIPTION
fmt_strm_malloc copies all leading nonzero bytes from \fIsource\fR and
following function arguments to a freshly allocated heap buffer and
returns a pointer to it.
The buffer was allocated with \fImalloc\fR and you need to call
\fIfree\fR on it when you are done.
Unlink fmt_strm, fmt_strm_malloc does append \\0.
.SH "SEE ALSO"
fmt_str(3), fmt_strm(3), fmt_strm_alloca(3), alloca(3), strcpy(3)
Loading…
Cancel
Save