Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Aug 2005 07:34:11 +0200
From:      Robert Millan <rmh@aybabtu.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        323154-forwarded@bugs.debian.org
Subject:   kern/84981: [PATCH] header protection for <sys/syscall.h>
Message-ID:  <E1E4Xbv-0000Sa-AN@bombadil>
Resent-Message-ID: <200508160920.j7G9KCWt094018@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         84981
>Category:       kern
>Synopsis:       [PATCH] header protection for <sys/syscall.h>
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Aug 16 09:20:11 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Robert Millan
>Release:        GNU/kFreeBSD 5.3-1 i686
>Organization:
>Environment:
System: GNU/kFreeBSD bombadil 5.3-1 #0 Sun Aug 14 12:51:55 CEST 2005 i686 GNU/kFreeBSD


	
>Description:
	This patch implements header protection in <sys/syscall.h> by modifiing
        the generator script in sys/kern/makesyscalls.sh.

        Please could you apply and re-generate sys/syscall.h ?

        Thanks!
>How-To-Repeat:
	
>Fix:

diff -ur sys/kern/makesyscalls.sh~ sys/kern/makesyscalls.sh
--- sys/kern/makesyscalls.sh~   2003-12-23 04:50:43.000000000 +0100
+++ sys/kern/makesyscalls.sh    2005-08-14 15:05:41.000000000 +0200
@@ -13,6 +13,7 @@
 sysproto="../sys/sysproto.h"
 sysproto_h=_SYS_SYSPROTO_H_
 syshdr="../sys/syscall.h"
+syshdr_h=_SYS_SYSCALL_H_
 sysmk="../sys/syscall.mk"
 syssw="init_sysent.c"
 syscallprefix="SYS_"
@@ -72,6 +73,7 @@
                sysarg = \"$sysarg\"
                sysnames = \"$sysnames\"
                syshdr = \"$syshdr\"
+               syshdr_h = \"$syshdr_h\"
                sysmk = \"$sysmk\"
                compat = \"$compat\"
                compat4 = \"$compat4\"
@@ -137,6 +139,8 @@
                printf "const char *%s[] = {\n", namesname > sysnames
 
                printf " * created from%s\n */\n\n", $0 > syshdr
+               printf "#ifndef %s\n", syshdr_h > syshdr
+               printf "#define\t%s\n\n", syshdr_h > syshdr
 
                printf "# created from%s\nMIASM = ", $0 > sysmk
 
@@ -486,6 +490,7 @@
                printf("};\n") > sysnames
                printf("#define\t%sMAXSYSCALL\t%d\n", syscallprefix, syscall) \
                    > syshdr
+               printf("\n#endif /* !%s */\n", syshdr_h) > syshdr
        } '
 
 cat $sysinc $sysent >> $syssw


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1E4Xbv-0000Sa-AN>