blob: 4c12089d4fad425b8fe3e1a0d48f02d6703cb774 [file] [log] [blame]
Willy Tarreau5b4c2b52009-10-03 11:21:53 +02001/*
2 * include/types/lb_map.h
3 * Types for map-based load-balancing (RR and HASH)
4 *
5 * Copyright (C) 2000-2009 Willy Tarreau - w@1wt.eu
6 *
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation, version 2.1
10 * exclusively.
11 *
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20 */
21
22#ifndef _TYPES_LB_MAP_H
23#define _TYPES_LB_MAP_H
24
25#include <common/config.h>
26#include <types/server.h>
27
28/* values for map.state */
29#define LB_MAP_RECALC (1 << 0)
30
31struct lb_map {
32 struct server **srv; /* the server map used to apply weights */
33 int rr_idx; /* next server to be elected in round robin mode */
34 int state; /* LB_MAP_RECALC */
35};
36
37#endif /* _TYPES_LB_MAP_H */
38
39/*
40 * Local variables:
41 * c-indent-level: 8
42 * c-basic-offset: 8
43 * End:
44 */