diff options
Diffstat (limited to 'src/ping903.h')
-rw-r--r-- | src/ping903.h | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/ping903.h b/src/ping903.h index 26851ad..1390152 100644 --- a/src/ping903.h +++ b/src/ping903.h @@ -30,6 +30,12 @@ enum { CF_SERIALIZE /* serialize configuration setting */ }; +typedef enum { + CF_HEREDOC_START, + CF_HEREDOC_NEXT, + CF_HEREDOC_STOP +} CF_HEREDOC_OPCODE; + union cf_callback_arg { struct json_value *output; /* Output value */ struct cf_line { @@ -37,6 +43,12 @@ union cf_callback_arg { char const *file; /* Statement location: file name */ unsigned line; /* ... and input line number */ } input; + struct cf_heredoc { + CF_HEREDOC_OPCODE op; + char const *val; /* Statement value (after keyword) */ + char const *file; /* Statement location: file name */ + unsigned line; /* ... and input line number */ + } heredoc; }; enum { @@ -53,11 +65,13 @@ enum { STMT_T_STRING, STMT_T_ULONG, STMT_T_BOOL, - STMT_T_CALLBACK + STMT_T_CALLBACK, + STMT_T_HEREDOC }; int readconfig(char const *file); int cf_trusted_ip(int mode, union cf_callback_arg *arg, void *data); +int cf_trusted_ip_heredoc(int mode, union cf_callback_arg *arg, void *data); int cf_syslog_facility(int mode, union cf_callback_arg *arg, void *data); int cf_auth(int mode, union cf_callback_arg *arg, void *data); |