1e18a033bSKonstantin Ananyev
2e18a033bSKonstantin Ananyev/*
3e18a033bSKonstantin Ananyev * Copyright (C) Nginx, Inc.
4e18a033bSKonstantin Ananyev */
5e18a033bSKonstantin Ananyev
6e18a033bSKonstantin Ananyev
7e18a033bSKonstantin Ananyev#ifndef _NGX_SYSLOG_H_INCLUDED_
8e18a033bSKonstantin Ananyev#define _NGX_SYSLOG_H_INCLUDED_
9e18a033bSKonstantin Ananyev
10e18a033bSKonstantin Ananyev
11e18a033bSKonstantin Ananyevtypedef struct {
12e18a033bSKonstantin Ananyev    ngx_pool_t       *pool;
13e18a033bSKonstantin Ananyev    ngx_uint_t        facility;
14e18a033bSKonstantin Ananyev    ngx_uint_t        severity;
15e18a033bSKonstantin Ananyev    ngx_str_t         tag;
16e18a033bSKonstantin Ananyev
17e18a033bSKonstantin Ananyev    ngx_addr_t        server;
18e18a033bSKonstantin Ananyev    ngx_connection_t  conn;
19e18a033bSKonstantin Ananyev    unsigned          busy:1;
20e18a033bSKonstantin Ananyev    unsigned          nohostname:1;
21e18a033bSKonstantin Ananyev} ngx_syslog_peer_t;
22e18a033bSKonstantin Ananyev
23e18a033bSKonstantin Ananyev
24e18a033bSKonstantin Ananyevchar *ngx_syslog_process_conf(ngx_conf_t *cf, ngx_syslog_peer_t *peer);
25e18a033bSKonstantin Ananyevu_char *ngx_syslog_add_header(ngx_syslog_peer_t *peer, u_char *buf);
26e18a033bSKonstantin Ananyevvoid ngx_syslog_writer(ngx_log_t *log, ngx_uint_t level, u_char *buf,
27e18a033bSKonstantin Ananyev    size_t len);
28e18a033bSKonstantin Ananyevssize_t ngx_syslog_send(ngx_syslog_peer_t *peer, u_char *buf, size_t len);
29e18a033bSKonstantin Ananyev
30e18a033bSKonstantin Ananyev
31e18a033bSKonstantin Ananyev#endif /* _NGX_SYSLOG_H_INCLUDED_ */
32