chiark
/
gitweb
/
~ian
/
secnet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
resolver: construct comm_addr; honour multiple addresses from the resolver
[secnet.git]
/
netlink.c
diff --git
a/netlink.c
b/netlink.c
index b54327bbb4aeb0efa94548a6b63ca98c89bd7077..e197e80f8c69508f5f617d9af86b1bfa07957098 100644
(file)
--- a/
netlink.c
+++ b/
netlink.c
@@
-430,7
+430,7
@@
static void netlink_icmp_simple(struct netlink *st,
len=netlink_icmp_reply_len(buf);
h=netlink_icmp_tmpl(st,icmpsource,icmpdest,len);
h->type=type; h->code=code; h->d=info;
len=netlink_icmp_reply_len(buf);
h=netlink_icmp_tmpl(st,icmpsource,icmpdest,len);
h->type=type; h->code=code; h->d=info;
-
memcpy(buf_append(&st->icmp,len)
,buf->start,len);
+
BUF_ADD_BYTES(append,&st->icmp
,buf->start,len);
netlink_icmp_csum(h);
if (!st->ptp) {
netlink_icmp_csum(h);
if (!st->ptp) {
@@
-591,7
+591,7
@@
static void netlink_maybe_fragment(struct netlink *st,
long avail = mtu - hl;
long remain = endindata - indata;
long use = avail < remain ? (avail & ~(long)7) : remain;
long avail = mtu - hl;
long remain = endindata - indata;
long use = avail < remain ? (avail & ~(long)7) : remain;
-
memcpy(buf_append(buf, use)
, indata, use);
+
BUF_ADD_BYTES(append, buf
, indata, use);
indata += use;
_Bool last_frag = indata >= endindata;
indata += use;
_Bool last_frag = indata >= endindata;
@@
-976,7
+976,6
@@
static void netlink_output_subnets(struct netlink *st, uint32_t loglevel,
for (i=0; i<snets->entries; i++) {
net=subnet_to_string(snets->list[i]);
Message(loglevel,"%s ",net);
for (i=0; i<snets->entries; i++) {
net=subnet_to_string(snets->list[i]);
Message(loglevel,"%s ",net);
- free(net);
}
}
}
}
@@
-1014,7
+1013,6
@@
static void netlink_dump_routes(struct netlink *st, bool_t requested)
for (i=0; i<st->subnets->entries; i++) {
net=subnet_to_string(st->subnets->list[i]);
Message(c,"%s ",net);
for (i=0; i<st->subnets->entries; i++) {
net=subnet_to_string(st->subnets->list[i]);
Message(c,"%s ",net);
- free(net);
}
if (i>0)
Message(c,"-> host (use %d)\n",st->outcount);
}
if (i>0)
Message(c,"-> host (use %d)\n",st->outcount);