---
name: "libmawk_append_input"
section: "3libmawk"
platform: "linux"
package: "libmawk1t64"
version: "1.0.4-4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/libmawk_append_input"
---

# libmawk\_append\_input(3libmawk)

append a string to an input buffer

## NAME

libmawk\_append\_input - append a string to an input buffer

## SYNOPSIS

```
#include <libmawk.h>

void libmawk_append_input(mawk_state_t *m, const char *input_str);
```

**void libmawk\_append\_ninput(mawk\_state\_t \****m***, const char \****input***, int***len***);**

## DESCRIPTION

The **libmawk\_append\_input**() and **libmawk\_append\_ninput**() functions allow the application to fill the input buffer of a libmawk context. No record separator is appended, only the bytes donated by input\_str or input, thus it is possible to append partial records. Appending to the input doesn't have the side effect of any script being run. There may be multiple libmawk\_append\_input() calls before a call to libmawk\_run\_main(). The latter all is used to let the script process the input buffer.

The only difference between the two calls are the input format: **libmawk\_append\_input**() expects a nul-terminated string, whereas **libmawk\_append\_ninput**() takes an arbitrary binary data and its length.

Argument m is a libmawk context previously returned by libmawk\_initialize() or libmawk\_initialize\_stage3().

## SEE ALSO

**libmawk\_initialize\_stage**(3libmawk), **libmawk\_initialize**(3libmawk), **libmawk\_run\_main**(3libmawk).
