CVSROOT:        /cvs
Module name:    src
Changes by:     guent...@cvs.openbsd.org        2015/08/30 20:53:57

Modified files:
        include        : err.h 
        lib/libc/include: namespace.h 
        lib/libc       : Symbols.list Makefile.inc 
        lib/libc/arch/alpha: SYS.h 
        lib/libc/arch/alpha/string: bcopy.S bzero.S ffs.S memcpy.S 
                                    memmove.S 
        lib/libc/arch/amd64: SYS.h 
        lib/libc/arch/amd64/string: bcmp.S bzero.S ffs.S memchr.S 
                                    memmove.S memset.S strchr.S strcmp.S 
                                    strlen.S strrchr.S 
        lib/libc/arch/arm: SYS.h 
        lib/libc/arch/arm/string: _memcpy.S bcopy.S bzero.S ffs.S 
                                  memcmp.S memcpy.S memmove.S memset.S 
                                  strcmp.S strncmp.S 
        lib/libc/arch/hppa: SYS.h 
        lib/libc/arch/hppa/string: memmove.S 
        lib/libc/arch/hppa64: SYS.h 
        lib/libc/arch/i386: SYS.h 
        lib/libc/arch/i386/string: bcmp.S bzero.S ffs.S memchr.S 
                                   memcmp.S memmove.S memset.S strcat.S 
                                   strchr.S strcmp.S strcpy.S strncmp.S 
                                   strrchr.S 
        lib/libc/arch/m88k: SYS.h 
        lib/libc/arch/mips64: SYS.h 
        lib/libc/arch/mips64/string: bcmp.S bcopy.S bzero.S ffs.S 
                                     strchr.S strcmp.S strlen.S 
                                     strrchr.S 
        lib/libc/arch/powerpc: SYS.h 
        lib/libc/arch/powerpc/string: memmove.S 
        lib/libc/arch/sh: SYS.h 
        lib/libc/arch/sh/string: bcopy.S ffs.S memcpy.S memmove.S 
                                 memset.S 
        lib/libc/arch/sparc: DEFS.h SYS.h 
        lib/libc/arch/sparc/string: bzero.S ffs.S strlen.S 
        lib/libc/arch/sparc64: SYS.h 
        lib/libc/arch/sparc64/string: ffs.S strlen.S 
        lib/libc/arch/vax: DEFS.h SYS.h 
        lib/libc/arch/vax/string: bcmp.S bcopy.S bzero.S ffs.S memcmp.S 
                                  memcpy.S memmove.S memset.S strchr.S 
        lib/libc/gen   : auth_subr.c authenticate.c ctermid.c err.c 
                         errc.c errx.c getbsize.c getnetgrent.c popen.c 
                         psignal.c shm_open.c verr.c verrc.c verrx.c 
                         vwarn.c vwarnc.c vwarnx.c warn.c warnc.c 
                         warnx.c 
        lib/libc/stdio : asprintf.c clrerr.c dprintf.c fclose.c fdopen.c 
                         feof.c ferror.c fflush.c fgetc.c fgetln.c 
                         fgetpos.c fgets.c fgetwc.c fgetws.c fileno.c 
                         fmemopen.c fopen.c fprintf.c fpurge.c fputc.c 
                         fputs.c fputwc.c fputws.c fread.c freopen.c 
                         fscanf.c fseek.c fsetpos.c ftell.c funopen.c 
                         fwide.c fwprintf.c fwrite.c fwscanf.c getc.c 
                         getchar.c getdelim.c getline.c getw.c getwc.c 
                         getwchar.c mktemp.c open_memstream.c 
                         open_wmemstream.c perror.c printf.c putc.c 
                         putchar.c puts.c putw.c putwc.c putwchar.c 
                         remove.c rewind.c rget.c scanf.c setbuf.c 
                         setbuffer.c setvbuf.c snprintf.c sscanf.c 
                         swprintf.c swscanf.c tempnam.c tmpfile.c 
                         tmpnam.c ungetc.c ungetwc.c vasprintf.c 
                         vdprintf.c vfprintf.c vfscanf.c vfwprintf.c 
                         vfwscanf.c vprintf.c vscanf.c vsnprintf.c 
                         vsscanf.c vswprintf.c vswscanf.c vwprintf.c 
                         vwscanf.c wbuf.c wprintf.c wscanf.c 
        lib/libc/string: bcmp.c bcopy.c bzero.c explicit_bzero.c ffs.c 
                         memccpy.c memchr.c memcmp.c memcpy.c memmem.c 
                         memmove.c memrchr.c memset.c stpncpy.c 
                         strcasecmp.c strcasestr.c strchr.c strcmp.c 
                         strcoll.c strcspn.c strdup.c strerror.c 
                         strerror_r.c strlcat.c strlcpy.c strlen.c 
                         strmode.c strncat.c strncmp.c strncpy.c 
                         strndup.c strnlen.c strpbrk.c strrchr.c 
                         strsep.c strsignal.c strspn.c strstr.c strtok.c 
                         strxfrm.c timingsafe_bcmp.c timingsafe_memcmp.c 
        libexec/ld.so  : Makefile 
Added files:
        lib/libc/hidden: err.h stdio.h string.h wchar.h 

Log message:
Add framework for resolving (pun intended) libc namespace issues, using
wrapper .h files and asm labels to let internal calls resolve directly and
not be overridable or use the PLT.  Then, apply that framework to most of
the functions in stdio.h, string.h, err.h, and wchar.h.  Delete the
should-have-been-hidden-all-along _v?(err|warn)[cx]? symbols while here.

tests clean on i386, amd64, sparc64, powerpc, and mips64

naming feedback from kettenis@ and millert@
ok kettenis@

Reply via email to