chiark / gitweb /
Use memcpy helpers and FILLZERO
[secnet.git] / site.c
diff --git a/site.c b/site.c
index c8206d03943a7f4617f89209ff65750e593d7431..cb5b4edbc7e5fa805960d4e86358bc5544caa8a8 100644 (file)
--- a/site.c
+++ b/site.c
@@ -549,9 +549,9 @@ static bool_t generate_msg(struct site *st, uint32_t type, cstring_t what)
     append_string_xinfo_done(&st->buffer,&xia);
 
     buf_append_string(&st->buffer,st->remotename);
-    memcpy(buf_append(&st->buffer,NONCELEN),st->localN,NONCELEN);
+    BUF_ADD_OBJ(append,&st->buffer,st->localN);
     if (type==LABEL_MSG1) return True;
-    memcpy(buf_append(&st->buffer,NONCELEN),st->remoteN,NONCELEN);
+    BUF_ADD_OBJ(append,&st->buffer,st->remoteN);
     if (type==LABEL_MSG2) return True;
 
     if (hacky_par_mid_failnow()) return False;
@@ -1328,8 +1328,8 @@ static void enter_state_run(struct site *st)
 
     st->setup_session_id=0;
     transport_peers_clear(st,&st->setup_peers);
-    memset(st->localN,0,NONCELEN);
-    memset(st->remoteN,0,NONCELEN);
+    FILLZERO(st->localN);
+    FILLZERO(st->remoteN);
     dispose_transform(&st->new_transform);
     memset(st->dhsecret,0,st->dh->len);
     memset(st->sharedsecret,0,st->sharedsecretlen);
@@ -1921,7 +1921,7 @@ static list_t *site_apply(closure_t *self, struct cloc loc, dict_t *context,
     st->transport_peers_max= !st->peer_mobile ? 1 : dict_read_number(
        dict,"mobile-peers-max",False,"site",loc,DEFAULT_MOBILE_PEERS_MAX);
     if (st->transport_peers_max<1 ||
-       st->transport_peers_max>=MAX_MOBILE_PEERS_MAX) {
+       st->transport_peers_max>MAX_MOBILE_PEERS_MAX) {
        cfgfatal(loc,"site","mobile-peers-max must be in range 1.."
                 STRING(MAX_MOBILE_PEERS_MAX) "\n");
     }
@@ -2144,7 +2144,7 @@ static void transport_peers_clear(struct site *st, transport_peers *peers) {
 static void transport_peers_copy(struct site *st, transport_peers *dst,
                                 const transport_peers *src) {
     dst->npeers=src->npeers;
-    memcpy(dst->peers, src->peers, sizeof(*dst->peers) * dst->npeers);
+    COPY_ARRAY(dst->peers, src->peers, dst->npeers);
     transport_peers_debug(st,dst,"copy",
                          src->npeers, &src->peers->addr, sizeof(*src->peers));
 }