--- ipmitool-1.8.11/lib/ipmi_fru.c.orig 2009-02-25 21:38:52.000000000 +0100 +++ ipmitool-1.8.11/lib/ipmi_fru.c 2012-07-12 16:37:45.000000000 +0200 @@ -2694,7 +2695,7 @@ ipmi_fru_print_all(struct ipmi_intf * in rc = ipmi_fru_print(intf, NULL); printf("\n"); - if ((itr = ipmi_sdr_start(intf, 0)) == NULL) + if (rc == -1 || (itr = ipmi_sdr_start(intf, 0)) == NULL) return -1; while ((header = ipmi_sdr_get_next_header(intf, itr)) != NULL)