summaryrefslogtreecommitdiffstats
path: root/proto/ospf
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2010-05-02 22:41:40 +0200
committerOndrej Zajicek <santiago@crfreenet.org>2010-05-02 22:41:40 +0200
commit506fa1a73eab0c6426f68cd7784c6712898b88f3 (patch)
tree3c04d5900a70a026f98a0f20349fd33fde0e4162 /proto/ospf
parent6384c7d7aa85d1e593eca30cda48f6677b023cb0 (diff)
downloadbird-506fa1a73eab0c6426f68cd7784c6712898b88f3.tar
bird-506fa1a73eab0c6426f68cd7784c6712898b88f3.zip
Merge several fixes suggested by Joakim Tjernlund.
Diffstat (limited to 'proto/ospf')
-rw-r--r--proto/ospf/lsalib.c2
-rw-r--r--proto/ospf/lsalib.h4
2 files changed, 3 insertions, 3 deletions
diff --git a/proto/ospf/lsalib.c b/proto/ospf/lsalib.c
index 27a0148..2f52fe9 100644
--- a/proto/ospf/lsalib.c
+++ b/proto/ospf/lsalib.c
@@ -240,7 +240,7 @@ lsasum_check(struct ospf_lsa_header *h, void *body)
c1 %= 255;
}
- x = ((length - LSA_CHECKSUM_OFFSET) * c0 - c1) % 255;
+ x = (int)((length - LSA_CHECKSUM_OFFSET) * c0 - c1) % 255;
if (x <= 0)
x += 255;
y = 510 - c0 - x;
diff --git a/proto/ospf/lsalib.h b/proto/ospf/lsalib.h
index f98a1bd..8a949d8 100644
--- a/proto/ospf/lsalib.h
+++ b/proto/ospf/lsalib.h
@@ -13,8 +13,8 @@
#ifdef CPU_BIG_ENDIAN
static inline void htonlsah(struct ospf_lsa_header *h, struct ospf_lsa_header *n) { *n = *h; };
static inline void ntohlsah(struct ospf_lsa_header *n, struct ospf_lsa_header *h) { *h = *n; };
-static inline void htonlsab(void *h, void *n, u16 len) { memcpy(n, h, len); };
-static inline void ntohlsab(void *n, void *h, u16 len) { memcpy(h, n, len); };
+static inline void htonlsab(void *h, void *n, u16 len) { ASSERT(h != n); memcpy(n, h, len); };
+static inline void ntohlsab(void *n, void *h, u16 len) { ASSERT(n != h); memcpy(h, n, len); };
static inline void htonlsab1(void *h, u16 len) { };
static inline void ntohlsab1(void *n, u16 len) { };
#else