relay.h 1.34 KB
Newer Older
1
/*
Bernd Zeimetz's avatar
Bernd Zeimetz committed
2
 * Copyright 2013-2017 Fabian Groffen
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */


#ifndef HAVE_RELAY_H
#define HAVE_RELAY_H 1

Bernd Zeimetz's avatar
Bernd Zeimetz committed
21
#define VERSION "2.5"
22 23 24

#define METRIC_BUFSIZ 8192

25 26 27 28 29
/* these are the various modes in which the relay runs */
#define MODE_DEBUG      (1 << 0)
#define MODE_SUBMISSION (1 << 1)
#define MODE_TEST       (1 << 2)
#define MODE_DAEMON     (1 << 3)
Bernd Zeimetz's avatar
Bernd Zeimetz committed
30
#define MODE_TRACE      (1 << 4)
31
extern unsigned char mode;
32

Bernd Zeimetz's avatar
Bernd Zeimetz committed
33 34 35 36 37 38
#ifdef ENABLE_TRACE
#define tracef(...) if (mode & MODE_TRACE) fprintf(stdout, __VA_ARGS__)
#else
#define tracef(...) /* noop */
#endif

39
typedef enum { CON_TCP, CON_UDP, CON_PIPE, CON_FILE } serv_ctype;
40 41 42 43 44 45 46 47 48 49

extern char relay_hostname[];

enum logdst { LOGOUT, LOGERR };

int relaylog(enum logdst dest, const char *fmt, ...);
#define logout(args...) relaylog(LOGOUT, args)
#define logerr(args...) relaylog(LOGERR, args)

#endif