--- a/print-forces.c.orig	2010-03-12 02:56:44.000000000 +0100
+++ b/print-forces.c	2015-03-16 21:16:57.380588066 +0100
@@ -282,9 +282,11 @@
 
 			chk_op_type(type, op_msk, ops->op_msk);
 
-			rc = ops->print((const u_char *)pdtlv,
-					tll + pad + TLV_HDRL, op_msk,
-					indent + 2);
+			if (ops->print) {
+				rc = ops->print((const u_char *)pdtlv,
+						tll + pad + TLV_HDRL, op_msk,
+						indent + 2);
+			}
 		} else {
 			printf("Invalid path data content type 0x%x len %d\n",
 			       type, EXTRACT_16BITS(&pdtlv->length));
@@ -491,7 +493,9 @@
 
 	}
 
-	rc = ops->print(dp, tll, ops->op_msk, indent + 1);
+        if(ops->print) {
+          rc = ops->print(dp, tll, ops->op_msk, indent + 1);
+        }
 	return rc;
 
 trunc:
