Subject: kern/23474: Missing \ in kern_verifiedexec.c (gcc3)
To: None <>
From: None <>
List: netbsd-bugs
Date: 11/18/2003 11:23:47
>Number:         23474
>Category:       kern
>Synopsis:       Missing \ in kern_verifiedexec.c (gcc3)
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Nov 18 10:24:00 UTC 2003
>Originator:     Juan RP
>Release:        NetBSD 1.6ZF

The NetBSD Project

System: NetBSD Insomnio 1.6ZF NetBSD 1.6ZF (Insomnio) #9: Thu Nov 13 04:34:03 CET 2003 juan@Insomnio:/home/juan/httpd/nbsd/obj/sys/arch/i386/compile/Insomnio i386
Architecture: i386
Machine: i386

When trying to install a current kernel with verifiedexec enabled, the build
will fail because there are missing '\' in printf calls (GCC3 seems more strict
than GCC 2.x series).


Try to compile a current kernel with GCC3 and:

	pseudo-device verifiedexec 1


Index: kern_verifiedexec.c
RCS file: /cvsroot/src/sys/kern/kern_verifiedexec.c,v
retrieving revision 1.5
diff -b -u -r1.5 kern_verifiedexec.c
--- kern_verifiedexec.c	2003/11/01 17:35:42	1.5
+++ kern_verifiedexec.c	2003/11/18 10:15:55
@@ -320,8 +320,8 @@
           case FINGERPRINT_INDIRECT: /* fingerprint ok but need to check
                                         for direct execution */
                   if (direct_exec == 1) {
-                          printf("Attempt to execute %s (dev %lu, inode %lu) dir
-ectly by pid %u (ppid %u, gppid %u)\n",
+                          printf("Attempt to execute %s (dev %lu, inode %lu) \
+directly by pid %u (ppid %u, gppid %u)\n",
                                  epp->ep_name, epp->ep_vap->va_fsid,
                                  epp->ep_vap->va_fileid, p->p_pid,
                                  p->p_pptr->p_pid, p->p_pptr->p_pptr->p_pid);
@@ -331,8 +331,8 @@
           case FINGERPRINT_NOMATCH: /* does not match - whine about it */
-                  printf("Fingerprint for %s (dev %lu, inode %lu) does not match
- loaded value\n",
+                  printf("Fingerprint for %s (dev %lu, inode %lu) does not match \
+loaded value\n",
                          epp->ep_name, epp->ep_vap->va_fsid,
                   if (securelevel > 1)