Эх сурвалжийг харах

kallsyms: fix escaping of NUL char in strings

The current kallsyms code is using \\0 to escape the backslash in the awk
code, but the shell too needs escaping.  This way we make sure gcc is
passed the \0.  Then gcc itself will consume this as an octal, so we have
to use 000 so gcc will create the final NUL.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger 16 жил өмнө
parent
commit
7bd49ad12c
1 өөрчлөгдсөн 1 нэмэгдсэн , 1 устгасан
  1. 1 1
      Makefile

+ 1 - 1
Makefile

@@ -352,7 +352,7 @@ GEN_UBOOT = \
 $(obj)u-boot:		depend $(SUBDIRS) $(OBJS) $(LIBBOARD) $(LIBS) $(LDSCRIPT)
 		$(GEN_UBOOT)
 ifeq ($(CONFIG_KALLSYMS),y)
-		smap=`$(call SYSTEM_MAP,u-boot) | awk '$$2 ~ /[tTwW]/ {printf $$1 $$3 "\\0"}'` ; \
+		smap=`$(call SYSTEM_MAP,u-boot) | awk '$$2 ~ /[tTwW]/ {printf $$1 $$3 "\\\\000"}'` ; \
 		$(CC) $(CFLAGS) -DSYSTEM_MAP="\"$${smap}\"" -c common/system_map.c -o $(obj)common/system_map.o
 		$(GEN_UBOOT) $(obj)common/system_map.o
 endif