diff --git a/util/cbmem/Makefile b/util/cbmem/Makefile
index 9219a08..0c88aeb 100644
--- a/util/cbmem/Makefile
+++ b/util/cbmem/Makefile
@@ -4,6 +4,7 @@
 PROGRAM   = cbmem
 TOP      ?= $(abspath ../..)
 ROOT      = $(TOP)/src
+COMMONLIB = $(ROOT)/commonlib
 CC       ?= $(CROSS_COMPILE)gcc
 INSTALL  ?= /usr/bin/env install
 PREFIX   ?= /usr/local
@@ -13,14 +14,14 @@
 CPPFLAGS += -I . -I $(ROOT)/commonlib/include -I $(ROOT)/commonlib/bsd/include
 CPPFLAGS += -include $(ROOT)/commonlib/bsd/include/commonlib/bsd/compiler.h
 
-OBJS = $(PROGRAM).o
+OBJS = $(PROGRAM).o $(COMMONLIB)/bsd/ipchksum.o
 
 all: $(PROGRAM)
 
 $(PROGRAM): $(OBJS)
 
 clean:
-	rm -f $(PROGRAM) *.o .dependencies *~ junit.xml
+	rm -f $(PROGRAM) $(OBJS:.c=.o) .dependencies *~ junit.xml
 
 install: $(PROGRAM)
 	$(INSTALL) -d $(DESTDIR)$(PREFIX)/sbin/
diff --git a/util/cbmem/cbmem.c b/util/cbmem/cbmem.c
index d33b714..15b6770 100644
--- a/util/cbmem/cbmem.c
+++ b/util/cbmem/cbmem.c
@@ -19,6 +19,7 @@
 #include <assert.h>
 #include <regex.h>
 #include <commonlib/bsd/cbmem_id.h>
+#include <commonlib/bsd/ipchksum.h>
 #include <commonlib/bsd/tpm_log_defs.h>
 #include <commonlib/loglevel.h>
 #include <commonlib/timestamp_serialized.h>
@@ -199,25 +200,6 @@
 	return dest;
 }
 
-/*
- * calculate ip checksum (16 bit quantities) on a passed in buffer. In case
- * the buffer length is odd last byte is excluded from the calculation
- */
-static u16 ipchcksum(const void *addr, unsigned size)
-{
-	const u16 *p = addr;
-	unsigned i, n = size / 2; /* don't expect odd sized blocks */
-	u32 sum = 0;
-
-	for (i = 0; i < n; i++)
-		sum += p[i];
-
-	sum = (sum >> 16) + (sum & 0xffff);
-	sum += (sum >> 16);
-	sum = ~sum & 0xffff;
-	return (u16) sum;
-}
-
 /* Find the first cbmem entry filling in the details. */
 static int find_cbmem_entry(uint32_t id, uint64_t *addr, size_t *size)
 {
@@ -400,7 +382,7 @@
 		lbh = buf + i;
 		if (memcmp(lbh->signature, "LBIO", sizeof(lbh->signature)) ||
 		    !lbh->header_bytes ||
-		    ipchcksum(lbh, sizeof(*lbh))) {
+		    ipchksum(lbh, sizeof(*lbh))) {
 			continue;
 		}
 
@@ -411,7 +393,7 @@
 			continue;
 		}
 
-		if (ipchcksum(mapping_virt(&table_mapping), lbh->table_bytes) !=
+		if (ipchksum(mapping_virt(&table_mapping), lbh->table_bytes) !=
 		    lbh->table_checksum) {
 			debug("Signature found, but wrong checksum.\n");
 			unmap_memory(&table_mapping);
