chiark
/
gitweb
/
~ian
/
secnet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
comm etc.: Provide comm_addr_equal
[secnet.git]
/
site.c
diff --git
a/site.c
b/site.c
index ecb45bf150b58bf10b15aa9ef08b59eb3e3b90bf..d360699214bdd5b54bffa8738193ce06099b9a5d 100644
(file)
--- a/
site.c
+++ b/
site.c
@@
-40,7
+40,6
@@
#define DEFAULT_MOBILE_WAIT_TIME (10*1000) /* [ms] */
#define DEFAULT_MOBILE_PEER_EXPIRY (2*60) /* [s] */
#define DEFAULT_MOBILE_WAIT_TIME (10*1000) /* [ms] */
#define DEFAULT_MOBILE_PEER_EXPIRY (2*60) /* [s] */
-#define DEFAULT_PEERS_MAX 3 /* send at most this many copies (default) */
/* Each site can be in one of several possible states. */
/* Each site can be in one of several possible states. */
@@
-144,9
+143,6
@@
static struct flagstr log_event_table[]={
/* Details of "mobile peer" semantics:
/* Details of "mobile peer" semantics:
- | Note: this comment is wishful thinking right now. It will be
- | implemented in subsequent commits.
-
- We use the same data structure for the different configurations,
but manage it with different algorithms.
- We use the same data structure for the different configurations,
but manage it with different algorithms.
@@
-1968,7
+1964,7
@@
static list_t *site_apply(closure_t *self, struct cloc loc, dict_t *context,
const char *peerskey= st->peer_mobile
? "mobile-peers-max" : "static-peers-max";
st->transport_peers_max= dict_read_number(
const char *peerskey= st->peer_mobile
? "mobile-peers-max" : "static-peers-max";
st->transport_peers_max= dict_read_number(
- dict,peerskey,False,"site",loc,
DEFAULT_PEERS_MAX
);
+ dict,peerskey,False,"site",loc,
st->address ? 4 : 3
);
if (st->transport_peers_max<1 ||
st->transport_peers_max>MAX_PEER_ADDRS) {
cfgfatal(loc,"site", "%s must be in range 1.."
if (st->transport_peers_max<1 ||
st->transport_peers_max>MAX_PEER_ADDRS) {
cfgfatal(loc,"site", "%s must be in range 1.."
@@
-2092,11
+2088,6
@@
static void transport_peers_debug(struct site *st, transport_peers *dst,
}
}
}
}
-static bool_t transport_addrs_equal(const struct comm_addr *a,
- const struct comm_addr *b) {
- return !memcmp(a,b,sizeof(*a));
-}
-
static void transport_peers_expire(struct site *st, transport_peers *peers) {
/* peers must be sorted first */
int previous_peers=peers->npeers;
static void transport_peers_expire(struct site *st, transport_peers *peers) {
/* peers must be sorted first */
int previous_peers=peers->npeers;
@@
-2120,7
+2111,7
@@
static bool_t transport_peer_record_one(struct site *st, transport_peers *peers,
return 0;
for (search=0; search<peers->npeers; search++)
return 0;
for (search=0; search<peers->npeers; search++)
- if (
transport_addrs
_equal(&peers->peers[search].addr, ca))
+ if (
comm_addr
_equal(&peers->peers[search].addr, ca))
return 1;
peers->peers[peers->npeers].addr = *ca;
return 1;
peers->peers[peers->npeers].addr = *ca;
@@
-2139,7
+2130,7
@@
static void transport_record_peers(struct site *st, transport_peers *peers,
* Caller must first call transport_peers_expire. */
if (naddrs==1 && peers->npeers>=1 &&
* Caller must first call transport_peers_expire. */
if (naddrs==1 && peers->npeers>=1 &&
-
transport_addrs
_equal(&addrs[0], &peers->peers[0].addr)) {
+
comm_addr
_equal(&addrs[0], &peers->peers[0].addr)) {
/* optimisation, also avoids debug for trivial updates */
peers->peers[0].last = *tv_now;
return;
/* optimisation, also avoids debug for trivial updates */
peers->peers[0].last = *tv_now;
return;