X-Git-Url: https://git.harvie.cz/?a=blobdiff_plain;f=ipstruct.h;h=d4383b32fc4192e98ce6d18f01dd2976e966b680;hb=dccb32271f7c04bfcfa0fd44ffff02a0f1b628de;hp=dab37fcbe97f486109ee942559af9b44c62a444c;hpb=f19d3cd0bca8ef24e8c78fb6ae24346dc3b7db36;p=svn%2FPrometheus-QoS%2F.git diff --git a/ipstruct.h b/ipstruct.h index dab37fc..d4383b3 100644 --- a/ipstruct.h +++ b/ipstruct.h @@ -1,3 +1,5 @@ +/* Modified by: xChaos, 20131029 */ + struct IP { char *addr; @@ -11,6 +13,7 @@ struct IP int fixedprio; int group; int lmsid; + int pps_limit; unsigned long long direct; unsigned long long proxy; unsigned long long upload; @@ -20,6 +23,9 @@ struct IP unsigned long pktsup; unsigned long pktsdown; struct Keyword *keyword; + int v6; + int mask; + struct IP *uplink; list(IP); }; @@ -36,7 +42,7 @@ struct Keyword { char *key; - int asymetry_ratio; /* ratio for ADSL-like upload */ + float asymetry_ratio; /* ratio for ADSL-like upload */ int asymetry_fixed; /* fixed treshold for ADSL-like upload */ int data_limit; /* hard shaping: apply magic_treshold if max*data_limit MB exceeded */ int data_prio; /* soft shaping (qos): reduce HTB prio if max*data_prio MB exceeded */ @@ -47,12 +53,21 @@ struct Keyword // int divide_max; /* relative malus: new_ceil=rate+(old_ceil-rate)/divide_max */ // int htb_ceil_bonus_divide; /* relative bonus: new_ceil=old_ceil+old_ceil/htb_ceil_bonus_divide */ int default_prio; /* default HTB priority for this keyword */ + int download_aggregation; /* apply agregation with -s start_shaping switch */ + int upload_aggregation; /* apply agregation with -s start_shaping switch */ char *html_color; int ip_count; char *leaf_discipline; - + int allowed_avgmtu; /* this is for calculating packet limits, 0 = no limit*/ list(Keyword); }; -void TheIP(char *ipaddr); +struct Macro +{ + char *rewrite_from; + char *rewrite_to; + list(Macro); +}; + +void TheIP(char *ipaddr, int is_network); /* function implemented in parsehosts.c */