- {
- fputs("<a name=\"erp\"></a><p><table border><tr><th colspan=\"5\">Enterprise Research and Planning (ERP)</th></tr>\n",f);
- fputs("<tr><td>Analytic category</td>\n",f);
- fputs("<td colspan=\"2\" align=\"center\">Active Classes</td><td colspan=\"2\" align=\"center\">Data transfers</td></tr>\n",f);
-
- find(sum,sums,sum->l>=total/4)
- {
- fprintf(f,"<tr><td>Top 25%% of traffic</td>\n");
- fprintf(f,"<td align=\"right\">%d</td><td align=\"right\">%d %%</td><td align=\"right\">%Lu M</td><td align=\"right\">%Ld %%</td></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);
- }
-
- find(sum,sums,sum->i==10)
- {
- fprintf(f,"<tr><td>Top 10 downloaders</td>\n");
- fprintf(f,"<th align=\"right\">10</th><td align=\"right\">%d %%</td><td align=\"right\">%Lu M</td><td align=\"right\">%Ld %%</td></tr>\n",(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);
- }
-
- find(sum,sums,sum->l>=total/2)
- {
- fprintf(f,"<tr><td>Top 50%% of traffic</td>\n");
- fprintf(f,"<td align=\"right\">%d</td><td align=\"right\">%d %%</td><td align=\"right\">%Lu M</td><th align=\"right\">%Ld %%</th></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);
- }
-
- find(sum,sums,sum->l>=4*total/5)
- {
- fprintf(f,"<tr><td>Top 80%% of traffic</td>\n");
- fprintf(f,"<td align=\"right\">%d</td><td align=\"right\">%d %%</td><td align=\"right\">%Lu M</td><th align=\"right\">%Ld %%</th></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);
- }
-
- find (sum,sums,sum->i>=(active_classes+1)/5)
- {
- fprintf(f,"<tr><td>Top 20%% downloaders</td>\n");
- fprintf(f,"<td align=\"right\">%d</td><th align=\"right\">%d %%</th><td align=\"right\">%Lu M</td><td align=\"right\">%Ld %%</td></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);
- }
-
- find(sum,sums,sum->i>=(active_classes+1)/4)
- {
- fprintf(f,"<tr><td>Top 25%% downloaders</td>\n");
- fprintf(f,"<td align=\"right\">%d</td><td align=\"right\">%d %%</td><td align=\"right\">%Lu M</td><td align=\"right\">%Ld %%</td></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);
- }
-
- find(sum,sums,sum->i>=(active_classes+1)/2)
- {
- fprintf(f,"<tr><td>Top 50%% downloaders</td>\n");
- fprintf(f,"<td align=\"right\">%d</td><th align=\"right\">%d %%</th><td align=\"right\">%Lu M</td><td align=\"right\">%Ld %%</td></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);
- }
-
- find(sum,sums,sum->i>=4*(active_classes+1)/5)
- {
- fprintf(f,"<tr><td>Top 80%% downloaders</td>\n");
- fprintf(f,"<td align=\"right\">%d</td><td align=\"right\">%d %%</td><td align=\"right\">%Lu M</td><td align=\"right\">%Ld %%</td></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);
- }
-
- fprintf(f,"<tr><td>All users, all traffic</td>\n");
- fprintf(f,"<th align=\"right\">%d</th><th align=\"right\">100 %%</th><th align=\"right\">%Lu M</th><th align=\"right\">100 %%</th></tr>\n",active_classes,total);
- fputs("</table>\n",f);
- }
- fprintf(f,"<small>Statistics generated by Prometheus QoS version %s<br>GPL+Copyright(C)2005-2008 Michael Polak, <a href=\"http://www.arachne.cz/\">Arachne Labs</a></small>\n",version);\r
+ {\r
+ fputs("<a name=\"erp\"></a><p><table border><tr><th colspan=\"5\">Enterprise Research and Planning (ERP)</th></tr>\n",f);\r
+ fputs("<tr><td>Analytic category</td>\n",f);\r
+ fputs("<td colspan=\"2\" align=\"center\">Active Classes</td><td colspan=\"2\" align=\"center\">Data transfers</td></tr>\n",f);\r
+\r
+ find(sum,sums,sum->l>=total/4)\r
+ {\r
+ fprintf(f,"<tr><td>Top 25%% of traffic</td>\n");\r
+ fprintf(f,"<td align=\"right\">%d</td><td align=\"right\">%d %%</td><td align=\"right\">%Lu M</td><td align=\"right\">%Ld %%</td></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);\r
+ }\r
+ \r
+ find(sum,sums,sum->i==10)\r
+ {\r
+ fprintf(f,"<tr><td>Top 10 downloaders</td>\n");\r
+ fprintf(f,"<th align=\"right\">10</th><td align=\"right\">%d %%</td><td align=\"right\">%Lu M</td><td align=\"right\">%Ld %%</td></tr>\n",(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);\r
+ }\r
+\r
+ find(sum,sums,sum->l>=total/2)\r
+ {\r
+ fprintf(f,"<tr><td>Top 50%% of traffic</td>\n");\r
+ fprintf(f,"<td align=\"right\">%d</td><td align=\"right\">%d %%</td><td align=\"right\">%Lu M</td><th align=\"right\">%Ld %%</th></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);\r
+ }\r
+\r
+ find(sum,sums,sum->l>=4*total/5)\r
+ {\r
+ fprintf(f,"<tr><td>Top 80%% of traffic</td>\n");\r
+ fprintf(f,"<td align=\"right\">%d</td><td align=\"right\">%d %%</td><td align=\"right\">%Lu M</td><th align=\"right\">%Ld %%</th></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);\r
+ }\r
+\r
+ find (sum,sums,sum->i>=(active_classes+1)/5)\r
+ {\r
+ fprintf(f,"<tr><td>Top 20%% downloaders</td>\n");\r
+ fprintf(f,"<td align=\"right\">%d</td><th align=\"right\">%d %%</th><td align=\"right\">%Lu M</td><td align=\"right\">%Ld %%</td></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);\r
+ }\r
+\r
+ find(sum,sums,sum->i>=(active_classes+1)/4)\r
+ {\r
+ fprintf(f,"<tr><td>Top 25%% downloaders</td>\n");\r
+ fprintf(f,"<td align=\"right\">%d</td><td align=\"right\">%d %%</td><td align=\"right\">%Lu M</td><td align=\"right\">%Ld %%</td></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);\r
+ }\r
+\r
+ find(sum,sums,sum->i>=(active_classes+1)/2)\r
+ {\r
+ fprintf(f,"<tr><td>Top 50%% downloaders</td>\n");\r
+ fprintf(f,"<td align=\"right\">%d</td><th align=\"right\">%d %%</th><td align=\"right\">%Lu M</td><td align=\"right\">%Ld %%</td></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);\r
+ }\r
+\r
+ find(sum,sums,sum->i>=4*(active_classes+1)/5)\r
+ {\r
+ fprintf(f,"<tr><td>Top 80%% downloaders</td>\n");\r
+ fprintf(f,"<td align=\"right\">%d</td><td align=\"right\">%d %%</td><td align=\"right\">%Lu M</td><td align=\"right\">%Ld %%</td></tr>\n",sum->i,(100*sum->i+50)/active_classes,sum->l,(100*sum->l+50)/total);\r
+ }\r
+\r
+ fprintf(f,"<tr><td>All users, all traffic</td>\n");\r
+ fprintf(f,"<th align=\"right\">%d</th><th align=\"right\">100 %%</th><th align=\"right\">%Lu M</th><th align=\"right\">100 %%</th></tr>\n",active_classes,total);\r
+ fputs("</table>\n", f);\r
+ }\r
+ fprintf(f, stats_html_signature, version);\r