/*
- * Copyright (c) 2008, 2009 Nicira Networks.
+ * Copyright (c) 2008, 2009, 2010 Nicira Networks.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
struct vconn;
struct rconn_packet_counter;
-struct rconn *rconn_new(const char *name,
- int inactivity_probe_interval, int max_backoff);
-struct rconn *rconn_new_from_vconn(const char *name, struct vconn *);
struct rconn *rconn_create(int inactivity_probe_interval, int max_backoff);
void rconn_set_max_backoff(struct rconn *, int max_backoff);
void rconn_set_probe_interval(struct rconn *, int inactivity_probe_interval);
int rconn_get_probe_interval(const struct rconn *);
-int rconn_connect(struct rconn *, const char *name);
+void rconn_connect(struct rconn *, const char *target, const char *name);
void rconn_connect_unreliably(struct rconn *,
- const char *name, struct vconn *vconn);
+ struct vconn *, const char *name);
void rconn_reconnect(struct rconn *);
void rconn_disconnect(struct rconn *);
void rconn_destroy(struct rconn *);
void rconn_add_monitor(struct rconn *, struct vconn *);
const char *rconn_get_name(const struct rconn *);
+void rconn_set_name(struct rconn *, const char *new_name);
+const char *rconn_get_target(const struct rconn *);
+
bool rconn_is_alive(const struct rconn *);
bool rconn_is_connected(const struct rconn *);
bool rconn_is_admitted(const struct rconn *);
int rconn_get_backoff(const struct rconn *);
unsigned int rconn_get_state_elapsed(const struct rconn *);
unsigned int rconn_get_connection_seqno(const struct rconn *);
+int rconn_get_last_error(const struct rconn *);
/* Counts the number of packets queued into an rconn by a given source. */
struct rconn_packet_counter {