File busybox-1.18.3-libarchive.patch of Package busybox.20467

Index: busybox-1.23.2/archival/libarchive/get_header_tar.c
===================================================================
--- busybox-1.23.2.orig/archival/libarchive/get_header_tar.c
+++ busybox-1.23.2/archival/libarchive/get_header_tar.c
@@ -304,6 +304,9 @@ char FAST_FUNC get_header_tar(archive_ha
 	}
 	file_header->link_target = NULL;
 	if (!p_linkname && parse_names && tar.linkname[0]) {
+		/* we trash magic[0] here to terminate tar.linkname, it's ok */
+		tar.magic[0] = '\0';
+
 		file_header->link_target = xstrndup(tar.linkname, sizeof(tar.linkname));
 		/* FIXME: what if we have non-link object with link_target? */
 		/* Will link_target be free()ed? */
openSUSE Build Service is sponsored by