d8427deb8efa5815341858433eff38e47f1b7e60
[svn/Prometheus-QoS/.git] / ipstruct.h
1 /* Modified by: xChaos, 20131029 */
2
3 struct IP
4 {
5 char *addr;
6 char *name;
7 char *sharing;
8 int min;
9 int desired;
10 int max;
11 int mark;
12 int prio;
13 int fixedprio;
14 int group;
15 int lmsid;
16 int pps_limit;
17 unsigned long long direct;
18 unsigned long long proxy;
19 unsigned long long upload;
20 unsigned long long traffic;
21 unsigned long long credit;
22 unsigned long long realquota;
23 unsigned long pktsup;
24 unsigned long pktsdown;
25 struct Keyword *keyword;
26 int v6;
27 int mask;
28 struct IP *uplink;
29 list(IP);
30 };
31
32 struct Group
33 {
34 int min;
35 int count;
36 int desired;
37 int id;
38 list(Group);
39 };
40
41 struct Keyword
42 {
43 char *key;
44
45 int asymetry_ratio; /* ratio for ADSL-like upload */
46 int asymetry_fixed; /* fixed treshold for ADSL-like upload */
47 int data_limit; /* hard shaping: apply magic_treshold if max*data_limit MB exceeded */
48 int data_prio; /* soft shaping (qos): reduce HTB prio if max*data_prio MB exceeded */
49 long fixed_limit; /* fixed data limit for setting lower HTB ceil */
50 long fixed_prio; /* fixed data lmit for setting lower HTB prio */
51 int reserve_min; /* bonus for nominal HTB rate bandwidth (in kbps) */
52 int reserve_max; /* malus for nominal HTB ceil (in kbps) */
53 // int divide_max; /* relative malus: new_ceil=rate+(old_ceil-rate)/divide_max */
54 // int htb_ceil_bonus_divide; /* relative bonus: new_ceil=old_ceil+old_ceil/htb_ceil_bonus_divide */
55 int default_prio; /* default HTB priority for this keyword */
56 char *html_color;
57 int ip_count;
58 char *leaf_discipline;
59 int allowed_avgmtu; /* this is for calculating packet limits, 0 = no limit*/
60 list(Keyword);
61 };
62
63 void TheIP(char *ipaddr, int is_network);
64 /* function implemented in parsehosts.c */
This page took 0.370792 seconds and 4 git commands to generate.