ipa-firmware: Add the entry first and then seek

The sub entry might not be a SDP file so it is best to add the
read entry, add it to the list and then attempt to recursively
parse this one.
diff --git a/openbsc/src/ipaccess/ipaccess-firmware.c b/openbsc/src/ipaccess/ipaccess-firmware.c
index 8c7f08f..5f16a7d 100644
--- a/openbsc/src/ipaccess/ipaccess-firmware.c
+++ b/openbsc/src/ipaccess/ipaccess-firmware.c
@@ -115,6 +115,10 @@
 			return -1;
 		}
 
+		header_entry = talloc_zero(header,  struct sdp_header_item);
+		header_entry->header_entry = entry;
+		llist_add(&header_entry->entry, &header->header_list);
+
 		/* now we need to find the SDP file... */
 		offset = ntohl(entry.start) + 4 + base_offset;
 		if (lseek(fd, offset, SEEK_SET) != offset) {
@@ -122,9 +126,6 @@
 			return -1;
 		}
 
-		header_entry = talloc_zero(header,  struct sdp_header_item);
-		header_entry->header_entry = entry;
-		llist_add(&header_entry->entry, &header->header_list);
 
 		ipaccess_analyze_file(fd, ntohl(entry.length), offset, list);
 	}