Commit 9af5b625 authored by David Goulet's avatar David Goulet 🐼
Browse files

cmux: Rename cell_ewma_set_scale_factor()



It is rename to something more meaningful that explains what it does exactly
which is sets the EWMA options (currently only one exists). The new name is
cmux_ewma_set_options().

Also, remove a public function from circuitmux_ewma.h that is only used in the
C file. Make it static inline as well.

Signed-off-by: David Goulet's avatarDavid Goulet <dgoulet@torproject.org>
parent 6b1dba21
Loading
Loading
Loading
Loading
+9 −9
Original line number Diff line number Diff line
@@ -241,6 +241,13 @@ circuitmux_policy_t ewma_policy = {

/*** EWMA method implementations using the below EWMA helper functions ***/

/** Compute and return the current cell_ewma tick. */
static inline unsigned int
cell_ewma_get_tick(void)
{
  return ((unsigned)approx_time() / EWMA_TICK_LEN);
}

/**
 * Allocate an ewma_policy_data_t and upcast it to a circuitmux_policy_data_t;
 * this is called when setting the policy on a circuitmux_t to ewma_policy.
@@ -610,13 +617,6 @@ cell_ewma_tick_from_timeval(const struct timeval *now,
  return res;
}

/** Compute and return the current cell_ewma tick. */
unsigned int
cell_ewma_get_tick(void)
{
  return ((unsigned)approx_time() / EWMA_TICK_LEN);
}

/* Default value for the CircuitPriorityHalflifeMsec consensus parameter in
 * msec. */
#define CMUX_PRIORITY_HALFLIFE_MSEC_DEFAULT 30000
@@ -672,7 +672,7 @@ get_circuit_priority_halflife(const or_options_t *options,

/** Adjust the global cell scale factor based on <b>options</b> */
void
cell_ewma_set_scale_factor(const or_options_t *options,
cmux_ewma_set_options(const or_options_t *options,
                      const networkstatus_t *consensus)
{
  double halflife;
+3 −3
Original line number Diff line number Diff line
@@ -12,11 +12,11 @@
#include "or.h"
#include "circuitmux.h"

/* The public EWMA policy callbacks object. */
extern circuitmux_policy_t ewma_policy;

/* Externally visible EWMA functions */
unsigned int cell_ewma_get_tick(void);
void cell_ewma_set_scale_factor(const or_options_t *options,
void cmux_ewma_set_options(const or_options_t *options,
                           const networkstatus_t *consensus);

#endif /* !defined(TOR_CIRCUITMUX_EWMA_H) */
+1 −1
Original line number Diff line number Diff line
@@ -2073,7 +2073,7 @@ options_act(const or_options_t *old_options)
    configure_accounting(time(NULL));

  /* Change the cell EWMA settings */
  cell_ewma_set_scale_factor(options, networkstatus_get_latest_consensus());
  cmux_ewma_set_options(options, networkstatus_get_latest_consensus());

  /* Update the BridgePassword's hashed version as needed.  We store this as a
   * digest so that we can do side-channel-proof comparisons on it.
+1 −1
Original line number Diff line number Diff line
@@ -2003,7 +2003,7 @@ networkstatus_set_current_consensus(const char *consensus,
    update_consensus_networkstatus_fetch_time(now);

    /* Change the cell EWMA settings */
    cell_ewma_set_scale_factor(options, c);
    cmux_ewma_set_options(options, c);

    /* XXXX this call might be unnecessary here: can changing the
     * current consensus really alter our view of any OR's rate limits? */