+/* Modified by: xChaos, 20131029 */\r
+\r
struct IP\r
{\r
char *addr;\r
int max;\r
int mark;\r
int prio;\r
+ int aggregated;\r
int fixedprio;\r
int group;\r
int lmsid;\r
+ int pps_limit;\r
unsigned long long direct;\r
unsigned long long proxy;\r
+ unsigned long long traffic_down;\r
+ unsigned long long traffic_up;\r
unsigned long long upload;\r
unsigned long long traffic;\r
unsigned long long credit;\r
+ unsigned long long realquota;\r
unsigned long pktsup;\r
unsigned long pktsdown;\r
struct Keyword *keyword;\r
+ int v6;\r
+ int mask;\r
+ struct IP *uplink;\r
list(IP);\r
};\r
\r
{\r
char *key;\r
\r
- int asymetry_ratio; /* ratio for ADSL-like upload */\r
+ float asymetry_ratio; /* ratio for ADSL-like upload */\r
int asymetry_fixed; /* fixed treshold for ADSL-like upload */\r
int data_limit; /* hard shaping: apply magic_treshold if max*data_limit MB exceeded */\r
int data_prio; /* soft shaping (qos): reduce HTB prio if max*data_prio MB exceeded */\r
// int divide_max; /* relative malus: new_ceil=rate+(old_ceil-rate)/divide_max */\r
// int htb_ceil_bonus_divide; /* relative bonus: new_ceil=old_ceil+old_ceil/htb_ceil_bonus_divide */\r
int default_prio; /* default HTB priority for this keyword */\r
+ int download_aggregation; /* apply agregation with -s start_shaping switch */\r
+ int upload_aggregation; /* apply agregation with -s start_shaping switch */\r
char *html_color;\r
int ip_count;\r
char *leaf_discipline;\r
- \r
+ int allowed_avgmtu; /* this is for calculating packet limits, 0 = no limit*/ \r
list(Keyword);\r
};\r
+\r
+struct Macro\r
+{\r
+ char *rewrite_from;\r
+ char *rewrite_to;\r
+ list(Macro);\r
+};\r
+\r
+struct Index\r
+{\r
+ char *addr;\r
+ char *id;\r
+ struct Index *parent;\r
+ int bitmask;\r
+ int children;\r
+ int ipv6;\r
+ list(Index);\r
+};\r
+\r
+struct Interface \r
+{\r
+ char *name;\r
+ long long speed;\r
+ int is_upstream;\r
+ char *chain;\r
+ char *idxprefix;\r
+ list(Interface);\r
+};\r
+\r
+void TheIP(char *ipaddr, int is_network);\r
+/* function implemented in parsehosts.c */\r