1 /**
2 * collectd - src/network.h
3 * Copyright (C) 2005-2008 Florian octo Forster
4 *
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License as published by the
7 * Free Software Foundation; only version 2 of the License is applicable.
8 *
9 * This program is distributed in the hope that it will be useful, but
10 * WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
17 *
18 * Authors:
19 * Florian octo Forster <octo at verplant.org>
20 **/
22 #ifndef NETWORK_H
23 #define NETWORK_H
25 /*
26 * From RFC2365: Administratively Scoped IP Multicast
27 *
28 * The IPv4 Organization Local Scope -- 239.192.0.0/14
29 *
30 * 239.192.0.0/14 is defined to be the IPv4 Organization Local Scope, and is
31 * the space from which an organization should allocate sub-ranges when
32 * defining scopes for private use.
33 *
34 * Port 25826 is not assigned as of 2005-09-12
35 */
37 /*
38 * From RFC2373: IP Version 6 Addressing Architecture
39 *
40 * 2.7 Multicast Addresses
41 *
42 * | 8 | 4 | 4 | 80 bits | 32 bits |
43 * +--------+----+----+---------------------------+-----------------+
44 * |11111111|flgs|scop| reserved must be zero | group ID |
45 * +--------+----+----+---------------------------+-----------------+
46 *
47 * flgs = 1 => non-permanently-assigned ("transient") multicast address.
48 * scop = 8 => organization-local scope
49 *
50 * group = efc0:4a42 = 239.192.74.66
51 */
53 #define NET_DEFAULT_V4_ADDR "239.192.74.66"
54 #define NET_DEFAULT_V6_ADDR "ff18::efc0:4a42"
55 #define NET_DEFAULT_PORT "25826"
57 #define TYPE_HOST 0x0000
58 #define TYPE_TIME 0x0001
59 #define TYPE_TIME_HR 0x0008
60 #define TYPE_PLUGIN 0x0002
61 #define TYPE_PLUGIN_INSTANCE 0x0003
62 #define TYPE_TYPE 0x0004
63 #define TYPE_TYPE_INSTANCE 0x0005
64 #define TYPE_VALUES 0x0006
65 #define TYPE_INTERVAL 0x0007
66 #define TYPE_INTERVAL_HR 0x0009
68 /* Types to transmit notifications */
69 #define TYPE_MESSAGE 0x0100
70 #define TYPE_SEVERITY 0x0101
72 #define TYPE_SIGN_SHA256 0x0200
73 #define TYPE_ENCR_AES256 0x0210
75 #endif /* NETWORK_H */