Turns out, we forgot to add the METRICS connection type fo the finished
flushing handler.
Fixes #40295
Signed-off-by: David Goulet <dgoulet@torproject.org>
--- /dev/null
+ o Minor bugfixes (metrics port):
+ - Fix a BUG() on the MetricsPort for an internal missing handler. Fixes bug
+ 40295; bugfix on 0.4.5.1-alpha.
return connection_dir_finished_flushing(TO_DIR_CONN(conn));
case CONN_TYPE_CONTROL:
return connection_control_finished_flushing(TO_CONTROL_CONN(conn));
+ case CONN_TYPE_METRICS:
+ return metrics_connection_finished_flushing(conn);
default:
log_err(LD_BUG,"got unexpected conn type %d.", conn->type);
tor_fragile_assert();
return 0;
}
+/** Called when conn has no more bytes left on its outbuf. Return 0 indicating
+ * success. */
+int
+metrics_connection_finished_flushing(connection_t *conn)
+{
+ tor_assert(conn);
+ return 0;
+}
+
/** Initialize the subsystem. */
void
metrics_init(void)
/* Connection. */
int metrics_connection_process_inbuf(struct connection_t *conn);
int metrics_connection_reached_eof(struct connection_t *conn);
+int metrics_connection_finished_flushing(struct connection_t *conn);
/* Configuration. */
int metrics_parse_ports(or_options_t *options, smartlist_t *ports,