File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / lighttpd / src / mod_ssi_expr.h
Revision 1.1.1.3 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Wed Nov 2 10:35:00 2016 UTC (8 years, 1 month ago) by misho
Branches: lighttpd, MAIN
CVS tags: v1_4_41p8, HEAD
lighttpd 1.4.41

#ifndef _MOD_SSI_EXPR_H_
#define _MOD_SSI_EXPR_H_
#include "first.h"

#include "buffer.h"

typedef struct {
	enum { SSI_TYPE_UNSET, SSI_TYPE_BOOL, SSI_TYPE_STRING } type;

	buffer *str;
	int     bo;
} ssi_val_t;

typedef struct {
	int     ok;

	ssi_val_t val;

	void   *srv;
} ssi_ctx_t;

typedef enum { SSI_COND_UNSET, SSI_COND_LE, SSI_COND_GE, SSI_COND_EQ, SSI_COND_NE, SSI_COND_LT, SSI_COND_GT } ssi_expr_cond;

void *ssiexprparserAlloc(void *(*mallocProc)(size_t));
void ssiexprparserFree(void *p, void (*freeProc)(void*));
void ssiexprparser(void *yyp, int yymajor, buffer *yyminor, ssi_ctx_t *ctx);

int ssi_val_tobool(ssi_val_t *B);
ssi_val_t *ssi_val_init(void);
void ssi_val_free(ssi_val_t *s);

#endif

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>