nginx-mod-rtmp/ngx_rtmp_eval.h

45 lines
843 B
C

/*
* Copyright (C) Roman Arutyunyan
*/
#ifndef _NGX_RTMP_EVAL_H_INCLUDED_
#define _NGX_RTMP_EVAL_H_INCLUDED_
#include <ngx_config.h>
#include <ngx_core.h>
#include "ngx_rtmp.h"
typedef struct ngx_rtmp_eval_s ngx_rtmp_eval_t;
typedef void (* ngx_rtmp_eval_pt)(void *ctx, ngx_rtmp_eval_t *e,
ngx_str_t *ret);
struct ngx_rtmp_eval_s {
ngx_str_t name;
ngx_rtmp_eval_pt handler;
ngx_uint_t offset;
};
#define ngx_rtmp_null_eval { ngx_null_string, NULL, 0 }
/* standard session eval variables */
extern ngx_rtmp_eval_t ngx_rtmp_eval_session[];
ngx_int_t ngx_rtmp_eval(void *ctx, ngx_str_t *in, ngx_rtmp_eval_t **e,
ngx_str_t *out, ngx_log_t *log);
ngx_int_t ngx_rtmp_eval_streams(ngx_str_t *in);
#endif /* _NGX_RTMP_EVAL_H_INCLUDED_ */