summaryrefslogtreecommitdiffstats
path: root/lib/libc/compat-43
Commit message (Collapse)AuthorAgeFilesLines
* Use ANSI C prototypes. Eliminates -Wold-style-definition warnings.rodrigc2015-09-201-7/+3
|
* Add declaration to eliminate -Wmissing-prototypes warningrodrigc2015-09-201-0/+2
|
* Switch libc from using _sig{procmask,action,suspend} symbols, whichkib2015-08-291-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | are aliases for the syscall stubs and are plt-interposed, to the libc-private aliases of internally interposed sigprocmask() etc. Since e.g. _sigaction is not interposed by libthr, calling signal() removes thr_sighandler() from the handler slot etc. The result was breaking signal semantic and rtld locking. The added __libc_sigprocmask and other symbols are hidden, they are not exported and cannot be called through PLT. The setjmp/longjmp functions for x86 were changed to use direct calls, and since PIC_PROLOGUE only needed for functional PLT indirection on i386, it is removed as well. The PowerPC bug of calling the syscall directly in the setjmp/longjmp implementation is kept as is. Reported by: Pete French <petefrench@ingresso.co.uk> Tested by: Michiel Boland <boland37@xs4all.nl> Reviewed by: jilles (previous version) Sponsored by: The FreeBSD Foundation MFC after: 1 week
* Reduce the size of the interposing table and amount ofkib2015-01-112-12/+6
| | | | | | | | | | | | | | | | | cancellation-handling code in the libthr. Translate some syscalls into their more generic counterpart, and remove translated syscalls from the table. List of the affected syscalls: creat, open -> openat raise -> thr_kill sleep, usleep -> nanosleep pause -> sigsuspend wait, wait3, waitpid -> wait4 Suggested and reviewed by: jilles (previous version) Sponsored by: The FreeBSD Foundation MFC after: 1 week
* Fix known issues which blow up the process after dlopen("libthr.so")kib2015-01-032-4/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (or loading a dso linked to libthr.so into process which was not linked against threading library). - Remove libthr interposers of the libc functions, including __error(). Instead, functions calls are indirected through the interposing table, similar to how pthread stubs in libc are already done. Libc by default points either to syscall trampolines or to existing libc implementations. On libthr load, libthr rewrites the pointers to the cancellable implementations already in libthr. The interposition table is separate from pthreads stubs indirection table to not pull pthreads stubs into static binaries. - Postpone the malloc(3) internal mutexes initialization until libthr is loaded. This avoids recursion between calloc(3) and static pthread_mutex_t initialization. - Reinstall signal handlers with wrapper on libthr load. The _rtld_is_dlopened(3) is used to avoid useless calls to sigaction(2) when libthr is statically referenced from the main binary. In the process, fix openat(2), swapcontext(2) and setcontext(2) interposing. The libc symbols were exported at different versions than libthr interposers. Export both libc and libthr versions from libc now, with default set to the higher version from libthr. Remove unused and disconnected swapcontext(3) userspace implementation from libc/gen. No objections from: deischen Tested by: pho, antoine (exp-run) (previous versions) Sponsored by: The FreeBSD Foundation MFC after: 1 week
* Replace use of ${.CURDIR} by ${LIBC_SRCTOP} and define ${LIBC_SRCTOP}marcel2014-03-041-2/+2
| | | | | | | | | | | if not already defined. This allows building libc from outside of lib/libc using a reach-over makefile. A typical use-case is to build a standard ILP32 version and a COMPAT32 version in a single iteration by building the COMPAT32 version using a reach-over makefile. Obtained from: Juniper Networks, Inc.
* Update the kill(2) and killpg(2) man pages to the modern permissioneadler2012-10-221-8/+5
| | | | | | | | | checks. Also indicate killpg(2) is POSIX compliant. Reviewed by: jilles Reviewed by: wblock Approved by: cperciva MFC after: 3 days
* General mdoc(7) and typo fixes.gjb2012-05-081-2/+3
| | | | | PR: 167713 Submitted by: Nobuyuki Koganemaru (kogane!jp.freebsd.org)
* Remove non-existing error condition.ed2012-03-151-4/+1
| | | | | | | | Just like kill(2), it is impossible for killpg(0, ...) to fail with ESRCH, as a process always has a process group. Discussed on: arch@ MFC after: 1 week
* Powerpc is special here. powerpc and powerpc64 use different ABIs, soimp2010-08-241-1/+1
| | | | | | their implementations aren't in the same files. Introduce LIBC_ARCH and use that in preference to MACHINE_CPUARCH. Tested by amd64 and powerpc64 builds (thanks nathanw@)
* MFtbemd:imp2010-08-231-1/+1
| | | | | Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want to test of all the CPUs of a given family conform.
* Verify return value of the sigset manipulation functionskib2010-07-221-22/+14
| | | | | | | | to catch invalid signal numbers [1]. Use consistent style of not assigning the return value to a local variable. Reported by: Garrett Cooper <yanegomi gmail com> [1] MFC after: 1 week
* For xsi_sigpause(3), remove the supplied signal from the process maskkib2010-07-121-2/+10
| | | | | | | | during sigpause(2) call. It was backward. Check that the signal number is valid. Reported by: Garrett Cooper <yanegomi gmail com> MFC after: 1 week
* These features will first appear in 8.1, soon to be releaseduqs2010-05-241-1/+1
| | | | MFC after: 3 days
* Fix several typos in macros or macro misusage.uqs2010-03-121-0/+1
| | | | | | Found by: make manlint Reviewed by: ru Approved by: philip (mentor)
* Implement sighold, sigignore, sigpause, sigrelse, sigset functionskib2009-11-264-8/+250
| | | | | | | | | | from SUSv4 XSI. Note that the functions are obsoleted, and only provided to ease porting from System V-like systems. Since sigpause already exists in compat with different interface, XSI sigpause is named xsi_sigpause. Reviewed by: davidxu MFC after: 3 weeks
* Use C comments since we now preprocess these files with CPP.deischen2007-04-291-2/+4
|
* Per Regents of the University of Calfornia letter, remove advertisingimp2007-01-0916-64/+0
| | | | | | clause. # If I've done so improperly on a file, please let me know.
* o From kern_prot.c::p_cansignal():maxim2006-10-101-2/+2
| | | | | | | | | | | | UNIX signalling semantics require that processes in the same session always be able to deliver SIGCONT to one another, overriding the remaining protections. Fix SIGCONT special case description similar to rev. 1.22 kill.2. PR: docs/58710 Submitted by: Ryan Younce MFC after: 2 weeks
* Add each directory's symbol map file to SYM_MAPS.deischen2006-03-131-0/+2
|
* Add symbol maps and initial symbol version definitions to libc.deischen2006-03-131-0/+21
| | | | Reviewed by: davidxu
* Include a couple of headers to ensure consistency between the prototype andstefanf2005-09-121-0/+2
| | | | the function definition.
* The header and the man page say that sethostid() returns void, so make thestefanf2005-09-101-4/+4
| | | | definition match. Include <unistd.h>.
* Revert accidiental removal of string.h inclusion.phantom2005-02-271-0/+1
|
* Replace usage of strerror()/strcpy() with strerror_r() here, reducingphantom2005-02-271-4/+2
| | | | | | | number of required operations to get error message and avoiding of strerror's buffer clobbering. Also ANSI'fy prototypes while I'm here
* Sort sections.ru2005-01-203-38/+38
|
* Mechanically kill hard sentence breaks.ru2004-07-022-10/+20
|
* mdoc(7): Use the new feature of the .In macro.ru2003-09-081-2/+2
|
* Explain the relationship to POSIX.wollman2003-06-201-0/+14
|
* The .Fn functioncharnier2003-02-061-2/+3
|
* mdoc(7) police: "The .Fa argument.".ru2002-12-193-6/+16
|
* mdoc(7) police: "The .Fn function".ru2002-12-186-16/+40
|
* libc_r wasn't so tied to libc for 22 months.ru2002-11-181-3/+1
|
* Assume __STDC__, remove non-__STDC__ code.alfred2002-05-286-32/+0
| | | | Submitted by: keramida
* Fix the style of the SCM ID's.obrien2002-03-229-6/+18
| | | | I believe have made all of libc .c's as consistent as possible.
* mdoc(7) police: Use the new .In macro for #include statements.ru2001-10-017-8/+8
|
* Use ``.Rv -std'' wherever possible.ru2001-08-311-7/+9
| | | | Submitted by: yar
* Removed duplicate VCS ID tags, as per style(9).ru2001-08-131-2/+0
|
* Use the ``.Rv -std'' mdoc(7) macro in appropriate cases.yar2001-08-092-8/+2
| | | | Reviewed by: ru
* mdoc(7) police: expand plain text xrefs.ru2001-08-081-1/+2
|
* Remove whitespace at EOL.dd2001-07-155-13/+13
|
* mdoc(7) police: removed HISTORY info from the .Os call.ru2001-07-107-7/+7
|
* MAN[1-9] -> MAN.ru2001-03-271-2/+2
|
* Remove _THREAD_SAFE and make libc thread-safe by default bydeischen2001-01-242-12/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | adding (weak definitions to) stubs for some of the pthread functions. If the threads library is linked in, the real pthread functions will pulled in. Use the following convention for system calls wrapped by the threads library: __sys_foo - actual system call _foo - weak definition to __sys_foo foo - weak definition to __sys_foo Change all libc uses of system calls wrapped by the threads library from foo to _foo. In order to define the prototypes for _foo(), we introduce namespace.h and un-namespace.h (suggested by bde). All files that need to reference these system calls, should include namespace.h before any standard includes, then include un-namespace.h after the standard includes and before any local includes. <db.h> is an exception and shouldn't be included in between namespace.h and un-namespace.h namespace.h will define foo to _foo, and un-namespace.h will undefine foo. Try to eliminate some of the recursive calls to MT-safe functions in libc/stdio in preparation for adding a mutex to FILE. We have recursive mutexes, but would like to avoid using them if possible. Remove uneeded includes of <errno.h> from a few files. Add $FreeBSD$ to a few files in order to pass commitprep. Approved by: -arch
* Merge the documentation for sigsetmask() and sigblock() into aben2001-01-173-99/+31
| | | | | | | | single manual page, appropriately linked, since this removes the decision of which page the (previously non-existent) sigmask.2 MLINK should point at. Submitted by: will
* Prepare for mdoc(7)NG.ru2000-12-291-2/+2
|
* mdoc(7) police: Er macro usage cleanup.ru2000-11-222-2/+2
|
* mdoc(7) police: use certified section headers wherever possible.ru2000-11-171-1/+1
|
* Remove fullstops from the end of .Xr lines in SEE ALSO section.ben2000-11-151-1/+1
|
* Use `Er' variable to define first column width in ERRORS section.phantom2000-05-061-1/+1
|
OpenPOWER on IntegriCloud