+static bool rconn_logging_connection_attempts__(const struct rconn *rc)
+ OVS_REQUIRES(rc->mutex);
+static int rconn_get_version__(const struct rconn *rconn)
+ OVS_REQUIRES(rconn->mutex);
+
+/* The following prototypes duplicate those in rconn.h, but there we weren't
+ * able to add the OVS_EXCLUDED annotations because the definition of struct
+ * rconn was not visible. */
+
+void rconn_set_max_backoff(struct rconn *rc, int max_backoff)
+ OVS_EXCLUDED(rc->mutex);
+void rconn_connect(struct rconn *rc, const char *target, const char *name)
+ OVS_EXCLUDED(rc->mutex);
+void rconn_connect_unreliably(struct rconn *rc,
+ struct vconn *vconn, const char *name)
+ OVS_EXCLUDED(rc->mutex);
+void rconn_reconnect(struct rconn *rc) OVS_EXCLUDED(rc->mutex);
+void rconn_disconnect(struct rconn *rc) OVS_EXCLUDED(rc->mutex);
+void rconn_run(struct rconn *rc) OVS_EXCLUDED(rc->mutex);
+void rconn_run_wait(struct rconn *rc) OVS_EXCLUDED(rc->mutex);
+struct ofpbuf *rconn_recv(struct rconn *rc) OVS_EXCLUDED(rc->mutex);
+void rconn_recv_wait(struct rconn *rc) OVS_EXCLUDED(rc->mutex);
+int rconn_send(struct rconn *rc, struct ofpbuf *b,
+ struct rconn_packet_counter *counter)
+ OVS_EXCLUDED(rc->mutex);
+int rconn_send_with_limit(struct rconn *rc, struct ofpbuf *b,
+ struct rconn_packet_counter *counter,
+ int queue_limit)
+ OVS_EXCLUDED(rc->mutex);
+void rconn_add_monitor(struct rconn *rc, struct vconn *vconn)
+ OVS_EXCLUDED(rc->mutex);
+void rconn_set_name(struct rconn *rc, const char *new_name)
+ OVS_EXCLUDED(rc->mutex);
+bool rconn_is_admitted(const struct rconn *rconn) OVS_EXCLUDED(rconn->mutex);
+int rconn_failure_duration(const struct rconn *rconn)
+ OVS_EXCLUDED(rconn->mutex);
+ovs_be16 rconn_get_local_port(const struct rconn *rconn)
+ OVS_EXCLUDED(rconn->mutex);
+int rconn_get_version(const struct rconn *rconn) OVS_EXCLUDED(rconn->mutex);
+unsigned int rconn_count_txqlen(const struct rconn *rc)
+ OVS_EXCLUDED(rc->mutex);
+