summaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* Zero out a local variable also when PURIFY is not defined.tuexen2015-09-101-2/+0
| | | | | | | | | | | | This silence a warning brought up by valgrind whenever if_nametoindex is used. This was already discussed in PR 166483, but the code committed in r234329 guards the initilization with #ifdef PURIFY. Therefore, valgrind still complains. Since this code is not performance critical, always zero out the local variable to silence valgrind. PR: 166483 Discussed with: eadler@ MFC after: 4 weeks
* - Fix SIGSEGV when sa == NULL. NULL check in getnameinfo_inet()hrs2015-09-091-12/+8
| | | | | | | | did not work as expected. - Simplify afdl table lookup. MFC after: 3 days
* Enable mincore_test on arm64, we now have a working pmap_mincore.andrew2015-09-081-3/+0
| | | | | | PR: 202307 Obtained from: ABT Systems Ltd Sponsored by: The FreeBSD Foundation
* Make it possible to use acl_create_entry_np(3) to use first entry to antrasz2015-09-081-1/+1
| | | | | | | | empty ACL, and to append an entry to an ACL. Submitted by: sef@ MFC after: 1 month Sponsored by: The FreeBSD Foundation
* Style. Use ANSI definition, wrap long lines, no initialization inkib2015-09-081-8/+15
| | | | | | | declaration for locals. Sponsored by: The FreeBSD Foundation MFC after: 1 week
* In the pthread_once(), if the initializer has already run, then thekib2015-09-081-3/+5
| | | | | | | | | | | | | | | | | calling thread is supposed to see accesses issued by the initializer. This means that the read of the once_control->state variable should have an acquire semantic. Use atomic_thread_fence_acq() when the value read is ONCE_DONE, instead of straightforward atomic_load_acq(), to only put a barrier when needed (*). On the other hand, the updates of the once_control->state with the intermediate progress state do not need to synchronize with other state accesses, remove _acq suffix. Reviewed by: alc (previous version) Suggested by: alc (*) Sponsored by: The FreeBSD Foundation MFC after: 1 week
* In libz's inflateMark(), avoid left-shifting a negative integer, whichdim2015-09-071-1/+1
| | | | | | | | is undefined. Reviewed by: delphij Differential Revision: https://reviews.freebsd.org/D3344 MFC after: 3 days
* MFV r287451 + 287452: file 5.24 + fix for bin/181436.delphij2015-09-041-3/+3
| | | | | PR: 181436 MFC after: 2 weeks
* Expose an interface to determine if an ACE is inherited.delphij2015-09-042-1/+3
| | | | | | | Submitted by: sef Reviewed by: trasz MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D3540
* Detect badly behaved coredump note helperscem2015-09-032-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Coredump notes depend on being able to invoke dump routines twice; once in a dry-run mode to get the size of the note, and another to actually emit the note to the corefile. When a note helper emits a different length section the second time around than the length it requested the first time, the kernel produces a corrupt coredump. NT_PROCSTAT_FILES output length, when packing kinfo structs, is tied to the length of filenames corresponding to vnodes in the process' fd table via vn_fullpath. As vnodes may move around during dump, this is racy. So: - Detect badly behaved notes in putnote() and pad underfilled notes. - Add a fail point, debug.fail_point.fill_kinfo_vnode__random_path to exercise the NT_PROCSTAT_FILES corruption. It simply picks random lengths to expand or truncate paths to in fo_fill_kinfo_vnode(). - Add a sysctl, kern.coredump_pack_fileinfo, to allow users to disable kinfo packing for PROCSTAT_FILES notes. This should avoid both FILES note corruption and truncation, even if filenames change, at the cost of about 1 kiB in padding bloat per open fd. Document the new sysctl in core.5. - Fix note_procstat_files to self-limit in the 2nd pass. Since sometimes this will result in a short write, pad up to our advertised size. This addresses note corruption, at the risk of sometimes truncating the last several fd info entries. - Fix NT_PROCSTAT_FILES consumers libutil and libprocstat to grok the zero padding. With suggestions from: bjk, jhb, kib, wblock Approved by: markj (mentor) Relnotes: yes Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D3548
* Fix acl_strip_np(3) breakage introduced in r279962.trasz2015-09-031-9/+11
| | | | | MFC after: 1 month Sponsored by: The FreeBSD Foundation
* Fix the way acl_init(3) uses posix_memalign(3) - the latter doesn'ttrasz2015-09-031-1/+3
| | | | | | | set errno. MFC after: 1 month Sponsored by: The FreeBSD Foundation
* - snprintf() returns at most size-1 of the chars printed intohrs2015-09-021-10/+6
| | | | | | | | the buffer. (n == hostlen) also means the buffer length was too short. - Use sdl->sdl_data only when (sdl->sdl_nlen > 0 && sdl->sdl_alen == 0) to prevent redundant output.
* Fix t_spawnattr test for attributes handling by posix_spawn(3).kib2015-09-011-1/+1
| | | | | | | | | | | | | | | | | | | | | Connect it to the build. The code assumed that SCHED_* constants form a contiguous set of numbers, remove the assumption by using schedulers[] array in get_different_scheduler(). This is no-op on FreeBSD, but improves code portability. The selection of different priority used the min/max priority range of the current scheduler class, instead of the priority to be changed to. The bug caused the test failure. Remove duplication of POSIX_SPAWN_SETSIGDEF flag and now unused duplications of MIN/MAX definitions. Reviewed by: jilles, pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D3533
* Use unsigned variable.rodrigc2015-09-011-1/+1
| | | | Eliminates gcc 4.9 compiler warning.
* Use ANSI C prototypes.rodrigc2015-09-015-12/+12
| | | | Eliminates gcc 4.9 warnings.
* Print sdl->sdl_data when sdl->sdl_nlen > 0 as link_ntoa(3) does.hrs2015-09-011-6/+18
| | | | MFC after: 1 week
* Use correct function prototype for signal handler.rodrigc2015-09-011-2/+2
| | | | Eliminates gcc 4.9 warning.
* Use ANSI C prototypes.rodrigc2015-09-011-21/+7
| | | | Eliminates gcc 4.9 warnings.
* Mark unused parameters to reduce gcc 4.9 warnings.rodrigc2015-09-011-2/+2
|
* Use ANSI C prototypes.rodrigc2015-09-0115-395/+180
| | | | Eliminates gcc 4.9 warnings.
* Enable libproc symbol_lookup tests on arm64emaste2015-08-311-9/+0
| | | | | | | | This reverts part of r286863, as the kernel support required by these tests was added in r287105. PR: 202305 Sponsored by: The FreeBSD Foundation
* Include stdlib.h to get devname() prototype.rodrigc2015-08-311-0/+1
| | | | Eliminates -Wmissing-prototypes warnings with gcc
* Fix a mistake in r287292. Despite correctly stating intent in thekib2015-08-301-2/+2
| | | | | | | | | comment above, POSIX_SPAWN_SETSIGMASK and POSIX_SPAWN_SETSIGDEF handlers used libthr interposed functions instead of syscalls. Noted by: jilles Sponsored by: The FreeBSD Foundation MFC after: 6 days
* Switch libc from using _sig{procmask,action,suspend} symbols, whichkib2015-08-2922-121/+104
| | | | | | | | | | | | | | | | | | | | | | | | 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
* Plug memory leaks when running out of memory.delphij2015-08-281-1/+3
| | | | | Reported by: clang scan-build MFC after: 2 weeks
* Use CFLAGS_NO_SIMD in preference to varying lists of -mno-xxxx flags.imp2015-08-271-26/+1
| | | | | | | | | Go ahead and defined -D_STANDALONE for all targets (only strictly needed for some architecture, but harmless on those it isn't required for). Also add -msoft-float to all architectures uniformly rather that higgley piggley like it is today. Differential Revision: https://reviews.freebsd.org/D3496
* Replace strndup with OpenBSD's implementation.delphij2015-08-261-33/+22
| | | | MFC after: 2 weeks
* Make UTF-8 parsing and generation more strict.ed2015-08-251-1/+5
| | | | | | | | - in mbrtowc() we need to disallow codepoints above 0x10ffff. - In wcrtomb() we need to disallow codepoints between 0xd800 and 0xdfff. Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D3399
* Upgrade libxo to 0.4.5.marcel2015-08-241-11/+32
| | | | | | | Local changes incorporated by 0.4.5: r284340 Local changes retained: r276260, r282117 Obtained from: https://github.com/Juniper/libxo
* Fix libproc on architectures that don't need the program counter to beandrew2015-08-241-1/+10
| | | | | | | | | | adjusted. This seems to be the case on all non-x86 architectures libproc supports. Reviewed by: kib Obtained from: ABT Systems Ltd Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3465
* Instead of doing an no-op (|= 0), actually clear the flags indelphij2015-08-241-1/+1
| | | | | | acl_clear_flags_np. MFC after: 2 weeks
* Fix spelling.araujo2015-08-241-2/+1
| | | | | | Reviewed by: wblock, pfg Approved by: bapt (mentor) Differential Revision: D3380
* Update bzero(3) manpage to following the Posix Standard.araujo2015-08-241-1/+9
| | | | | | Reviewed by: wblock, pfg Approved by: bapt (mentor) Differential Revision: D3380
* Editing pass on procctl.2bjk2015-08-211-26/+26
| | | | | | | | | | Spell "descendant" correctly. Grammar fixes. Use correct width argument to Bl. Use Po and Pc to avoid leaving a dangling '(' on the end of a line.
* If process becomes reaper (procctl(PROC_REAP_ACQUIRE)) while alreadykib2015-08-201-2/+6
| | | | | | | | | | | | | having some children, the children' reaper is not reset to the parent. This allows for the situation where reaper has children but not descendands and the too strict asserts in the reap_status() fire. Remove the wrong asserts, add some clarification for the situation to the procctl(2) REAP_STATUS. Reported and tested by: feld Sponsored by: The FreeBSD Foundation MFC after: 1 week
* Add the definitions of __infinity and __nan.andrew2015-08-203-0/+17
|
* Add support to libkvm for reading minidumps on arm64. The kernel side isandrew2015-08-203-10/+320
| | | | | | | | | missing until it can be cleaned up. Reviewed by: jhb Approved by: ABT Systems Ltd Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3319
* getrlimit.2: Document RSS, AS/VMEM limit behavior more clearlycem2015-08-201-15/+46
| | | | | | | | | Alphabetize the RLIMIT_ list while here. Reviewed by: jilles (previous version), wblock (previous version) Approved by: markj (mentor) Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D3433
* wordexp(): Improve some error codes.jilles2015-08-192-18/+32
| | | | | | | Distinguish between WRDE_BADVAL and WRDE_SYNTAX based on when the error occurred (parsing or execution), not based on whether WRDE_UNDEF was passed. Also, return WRDE_NOSPACE for a few more unexpected results from sh.
* - ANSIfydelphij2015-08-181-10/+5
| | | | | | | | | | | - Remove the redundant _PATH_RSH definition (paths.h at r96194); - Use pid_t for PIDs - Note that we are at the same level of OpenBSD's counterpart of revision 1.7 (r94757). No functional changes. MFC after: 2 weeks
* wordexp(3): Update man page for no longer using the wordexp builtin.jilles2015-08-181-4/+3
|
* Add missing sdallocx updates and remove *allocm manpage links.jasone2015-08-182-5/+6
| | | | Submitted by: jbeich
* Update jemalloc to version 4.0.0.jasone2015-08-182-13/+14
|
* On arm64 disable three tests that hang or panicemaste2015-08-173-0/+14
| | | | | | | | | | Each issue has a PR open to track. This workaround allows us to run the tests to investigate the failures and avoid any new regressions. PR: 202304, 202305, 202307 Reviewed by: ngie Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3378
* wordexp(): Stop using the undocumented wordexp builtin.jilles2015-08-161-3/+4
| | | | | | | | | The functionality of the wordexp builtin is easily replaced using normal shell code, although performance is slightly worse. This does not mean that wordexp() will remain shell-independent -- a fully reliable implementation of WRDE_NOCMD is really only possible using extensions to the shell, or by adding much of the shell's code to libc.
* bsd.lib.mk has to be included after MLINKS assignmentantoine2015-08-151-2/+2
|
* Add support for the arrays in nvlist library.oshogbo2015-08-152-0/+1192
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add nvlist_{add,get,take,move,exists,free}_{number,bool,string,nvlist, descriptor} functions. - Add support for (un)packing arrays. - Add the nvl_array_next field to the nvlist structure. If an array is added by the nvlist_{move,add}_nvlist_array function this field will contains next element in the array. - Add the nitems field to the nvpair and nvpair_header structure. This field contains number of elements in the array. - Add special flag (NV_FLAG_IN_ARRAY) which is set if nvlist is a part of an array. - Add special type (NV_TYPE_NVLIST_ARRAY_NEXT).This type is used only on packing/unpacking. - Add new API for traversing arrays (nvlist_get_array_next). - Add the nvlist_get_pararr function which combines the nvlist_get_array_next and nvlist_get_parent functions. If nvlist is in the array it will return next element from array. If nvlist is last element in array or it isn't in array it will return his container (parent). This function should simplify traveling over nvlist. - Add tests for new features. - Add documentation for new functions. - Add my copyright. - Regenerate the sys/cddl/compat/opensolaris/sys/nvpair.h file. PR: 191083 Reviewed by: allanjude (doc) Approved by: pjd (mentor)
* Remove a stale comment and clarify the original where it was taken frompfg2015-08-142-7/+2
| | | | | | | | | The comment in the libc/sys symbol map referenced the generated symbols for the syscall trampolines. Such comment was out of place in the secure symbol map so remove the stale comment and attempt to clarify the old one to avoid risks of confusion. Pointed out by: kib
* Move the stack protector to a new "secure" directorypfg2015-08-147-5/+27
| | | | | | | | | | As part of the code refactoring to support FORTIFY_SOURCE we want a new subdirectory "secure" to keep the files related to security. Move the stack protector functions to this new directory. No functional change. Differential Review: https://reviews.freebsd.org/D3333
OpenPOWER on IntegriCloud