]> mj.ucw.cz Git - libucw.git/blobdiff - ucw/tbf.h
Logger: Fixed use of unitialized flags
[libucw.git] / ucw / tbf.h
index 5610090bf38b111d9784d958f9d6523ff15786e4..801d5f6d338026396cd3a7edcfc9ef01dd9fc995 100644 (file)
--- a/ucw/tbf.h
+++ b/ucw/tbf.h
 #ifndef _UCW_TBF_H_
 #define _UCW_TBF_H_
 
+#ifdef CONFIG_UCW_CLEAN_ABI
+#define tbf_init ucw_tbf_init
+#define tbf_limit ucw_tbf_limit
+#endif
+
+/** A data structure describing a single TBF. **/
 struct token_bucket_filter {
-  double rate;                         // Number of tokens per second
-  uns burst;                           // Capacity of the bucket
+  double rate;                         // Number of tokens received per second
+  uint burst;                          // Capacity of the bucket
   timestamp_t last_hit;                        // Internal state...
   double bucket;
-  uns drop_count;
+  uint drop_count;
 };
 
+/** Initialize the bucket. **/
 void tbf_init(struct token_bucket_filter *f);
+
+/**
+ * Ask the filter to process a single event. Returns a negative number
+ * if the event exceeds the rate (and should be dropped) and a non-negative
+ * number if the event passes the filter.
+ * The absolute value of the result is the number of dropped events
+ * since the last passed event.
+ **/
 int tbf_limit(struct token_bucket_filter *f, timestamp_t now);
 
 #endif