30 lines
579 B
C
30 lines
579 B
C
#pragma once
|
|
#include <stddef.h>
|
|
|
|
#define LIBSCOMP_MAXARG 32
|
|
#define LIBSCOMP_MAXBUF 1024
|
|
|
|
struct libscomp_line {
|
|
size_t name;
|
|
char *buf[LIBSCOMP_MAXARG];
|
|
size_t len;
|
|
};
|
|
|
|
struct libscomp_input {
|
|
int state;
|
|
|
|
char intbuf[LIBSCOMP_MAXBUF];
|
|
size_t len;
|
|
};
|
|
|
|
enum libscomp_input_r {
|
|
LIBSCOMP_MORE,
|
|
LIBSCOMP_OVERFLOW,
|
|
LIBSCOMP_ARG_OVERFLOW,
|
|
LIBSCOMP_COMPLETE
|
|
};
|
|
|
|
void libscomp_reset(struct libscomp_input *);
|
|
enum libscomp_input_r libscomp_read(struct libscomp_input *,
|
|
char **,
|
|
struct libscomp_line *);
|