X-Git-Url: http://git.harvie.cz/?p=svn%2FPrometheus-QoS%2F.git;a=blobdiff_plain;f=parsehosts.c;h=d17c61917c32ad0235da1f3b036b768e3b56e27b;hp=2740c1c8c08d29936dcef4301abaa0572f85788b;hb=f19d3cd0bca8ef24e8c78fb6ae24346dc3b7db36;hpb=1c9cae56507516acf3eda8fcfe60a74bfe923ee4 diff --git a/parsehosts.c b/parsehosts.c index 2740c1c..d17c619 100644 --- a/parsehosts.c +++ b/parsehosts.c @@ -14,9 +14,32 @@ extern int class_count; extern int ip_count; extern int found_lmsid; extern int free_min; +extern const int highest_priority; -/* function implemented in prometheus.c */ -void TheIP(void); +/* This must be object oriented! This looks almost like constructor ;-) */ +void TheIP(char *ipaddr) +{ + create(ip,IP); + ip->name = ""; + ip->addr = ipaddr; + ip->sharing = NULL; + ip->prio = highest_priority+1; + ip->lmsid = -1; + ip->fixedprio = \ + ip->mark = \ + ip->min = \ + ip->max = \ + ip->desired = \ + ip->credit = \ + ip->upload = \ + ip->proxy = \ + ip->direct = \ + ip->traffic = \ + ip->pktsup = \ + ip->pktsdown = 0; + ip->keyword = keywords; + push(ip,ips); +} /* == This function strips extra characters after IPv4 address and stores it = */ void parse_ip(char *str) @@ -57,9 +80,8 @@ void parse_ip(char *str) if_exists(ip, ips, eq(ip->addr,ipaddr)); else { - TheIP(); + TheIP(ipaddr); } - ip->addr = ipaddr; ip->name = ipname; if(lmsid) {