]> granicus.if.org Git - apache/blob - include/heartbeat.h
mod_lbmethod_heartbeat, mod_heartmonitor: Respect DefaultRuntimeDir/
[apache] / include / heartbeat.h
1 /* Licensed to the Apache Software Foundation (ASF) under one or more
2  * contributor license agreements.  See the NOTICE file distributed with
3  * this work for additional information regarding copyright ownership.
4  * The ASF licenses this file to You under the Apache License, Version 2.0
5  * (the "License"); you may not use this file except in compliance with
6  * the License.  You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #ifndef HEARTBEAT_H
18 #define HEARTBEAT_H
19
20 /**
21  * @file  heartbeat.h
22  * @brief commun structures for mod_heartmonitor.c  and mod_lbmethod_heartbeat.c
23  *
24  * @defgroup HEARTBEAT mem
25  * @ingroup  APACHE_MODS
26  * @{
27  */
28
29 #include "apr.h"
30 #include "apr_time.h"
31
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35
36 /*
37  * Worse Case: IPv4-Mapped IPv6 Address
38  * 0000:0000:0000:0000:0000:FFFF:255.255.255.255
39  */
40 #define MAXIPSIZE  46
41 typedef struct hm_slot_server_t
42 {
43     char ip[MAXIPSIZE];
44     int busy;
45     int ready;
46     apr_time_t seen;
47     int id;
48 } hm_slot_server_t;
49
50 /* default name of heartbeat data file, created in the configured
51  * runtime directory when mod_slotmem_shm is not available
52  */
53 #define DEFAULT_HEARTBEAT_STORAGE "hb.dat"
54
55 #ifdef __cplusplus
56 }
57 #endif
58
59 #endif
60 /** @} */