Log

Author Commit Date CI Message
Casper Dik a4812cdf 2013-03-15T01:13:58 Fix getpeereid() compilation on Solaris The code in getpeereid() is unlikely to compile as ucred_t is an opaque struct (ucred_t * works but ucred_t does not). Either you need to give a pointer initialized to NULL and getpeerucred() allocates a new ucred or you call it with an allocated ucred as in this patch. Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover d3a09e1c 2012-12-27T11:19:20 Switch dehumanize_number() to use expand_number() The function is a duplicate of expand_number(), but covering less prefixes and with a slightly different function signature. Spotted-by: Peter da Silva <resuna@gmail.com>
Guillem Jover 330b569f 2013-05-26T04:34:57 test: Add new humanize unit test
Guillem Jover 8c26c40a 2012-11-27T14:23:26 test: Add setproctitle() unit test
Guillem Jover e9933255 2013-05-25T17:11:53 Make setproctitle() available in 0.2 and 0.5 version nodes Make the 0.5 version the default, so that code wanting the actual implemented version can get a proper versioned depdendency. For code linked against the old version, make it available as an alias.
Guillem Jover c984dacd 2012-11-27T14:24:13 Implement sendmail semantics for setproctitle() Prefix the title with "progname: ", and skip it if the format string starts with '-' (which gets skipped on output too).
Guillem Jover 35785f8d 2012-11-25T21:10:53 Modify setproctitle() to conform to project coding style Use local getprogname()/setprogname() instead of reimplementing them locally. Use clearenv() if available, not just on glibc. Use bool instead of _Bool. Use paranthesis on sizeof. Fold the SPT_MIN macro into spt_min(). Make spt_init() static. Avoid unnecessary gotos.
William Ahern 2a0260d0 2012-11-28T11:09:02 Add a setproctitle() implementation Taken from libnostd. Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover f8d52ead 2012-11-23T18:33:23 Add x32 support to nlist()
Guillem Jover cf683a27 2012-11-23T18:32:35 Add arm64 (aka aarch64) to nlist()
Guillem Jover 7196b4dc 2013-05-23T02:05:19 test: Add new fgetln() and fgetwln() unit test
Guillem Jover a97ce513 2012-11-23T21:19:45 Add new fgetwln() function Man page taken from FreeBSD.
Strake ee0489eb 2012-08-07T08:44:30 Add new fparseln() function Taken from NetBSD. [guillem@hadrons.org: - Import from NetBSD instead of FreeBSD to get a 3-clause BSD license, instead of a 4-clause one. - Define compatibility macros. - Change library from libc to libbsd and header in man page. - Add copyright information to COPYING. - Add symbol to map file. ] Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover cb7bc0d8 2012-11-25T22:09:43 Add file buffer pool support to fgetln() This avoids buffer overwrites during concurrent or intermixed calls to fgetln() when using more than one different stream (currently 32), which the original interface supports natively by using an internal buffer from the FILE structure. Although this workaround is rudimentary, it should cover most of the theoretically problematic cases.
Guillem Jover 1be0bdb2 2012-11-25T21:13:38 Add new strnstr() function Taken from FreeBSD.
Guillem Jover ff0d700d 2012-11-23T17:16:43 Add new wcslcat() and wcslcpy() functions Taken from FreeBSD.
Guillem Jover 38627648 2013-05-21T04:13:55 Coalesce identical BSD-2-clause licenses
Guillem Jover 918a4dba 2012-06-27T09:15:15 Release libbsd 0.4.2
Guillem Jover 444bd1fb 2012-06-21T10:16:14 man: Use minus signs and hyphens consistently Any string that can be copy & pasted into a terminal, for example, needs to correctly use minus signs (escaped dashes), instead of the default hyphen.
Guillem Jover 1d69ae1c 2012-06-04T05:47:26 man: Recode flopen(3) to UTF-8 Spotted-by: Eric Smith <eric@brouhaha.com>
Guillem Jover 14524b54 2012-06-03T07:39:42 build: Set default compiler variables from configure This centralizes the setting so there's no duplication anymore, makes sure the user supplied variables are never overridden, and are only set when using gcc. Reported-by: Samuli Suominen <ssuominen@gentoo.org>
Guillem Jover c21d788f 2012-06-01T08:20:37 Release libbsd 0.4.1
Guillem Jover fdcae577 2012-06-01T08:17:42 build: Set runtimelibdir to libdir This makes sure the install-exec-hook under src works as expected even when no runtimelibdir was specified, otherwise the symlinks end up pointing to non-existing targets. Reported-by: Ryan Mullen <rmmullen@gmail.com>
Guillem Jover e9e4a60d 2012-06-01T08:15:00 build: Use MKDIR_P variable instead of literal «mkdir -p»
Guillem Jover 309c82a0 2012-05-29T04:38:07 Release libbsd 0.4.0
Guillem Jover cd67cb14 2012-05-29T07:17:46 Use implicit <md5.h> from overlay instead explicit <bsd/md5.h> This was assuming an installed <bsd/md5.h> on the system, due to the build system not including -Iinclude/ anymore. Regression introduced in commit 901ed630fc64fca828e031bc8fa6780db9f05db1.
Guillem Jover 1b5b1cd5 2012-04-24T04:20:58 Move mdX.3 man page to section 3bsd This makes sure there will be no collisions on systems where a mdX.3 provided by a third party is already present.
Guillem Jover ddefaae3 2012-04-24T04:05:48 Do not quote man page titles
Guillem Jover e7f39760 2012-03-23T10:31:42 Add email address to my name
Guillem Jover e59ac2c9 2012-03-23T10:11:57 Clarify that the 4-clause BSD licenses are only for man pages
Guillem Jover 7620fef7 2012-01-12T20:56:24 Remove UC Berkeley advertising clause As per <ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change>.
Guillem Jover 7cfa7e43 2012-01-12T19:13:16 Add new man page for tree(3) Taken from FreeBSD.
Guillem Jover 08139dd5 2012-01-12T19:13:16 Add new man pages for bitstring(3) and queue(3) Taken from FreeBSD.
Guillem Jover d90ce079 2011-05-14T14:18:57 Add new man pages for getprogname(3) and setprogname(3) Taken from FreeBSD.
Guillem Jover c1d086c2 2011-05-14T14:18:57 Add new man page for setproctitle(3) Taken from FreeBSD.
Guillem Jover e37293a1 2012-01-12T18:16:55 Add <bitstring.h> for compatibility with NetBSD and OpenBSD
Guillem Jover 34bf1068 2012-03-23T10:43:33 test: Add a unit test for endian encoder/decoder
Robert Millan 4eab0cc3 2012-01-03T05:29:36 Add inline endian encoding/decoding functions Taken from FreeBSD. Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover 75299746 2012-01-03T08:58:01 Base getprogname() on program_invocation_short_name presence instead of glibc
Guillem Jover d5d91869 2012-01-03T09:08:35 Base fpurge() implementation on __fpurge presence instead of glibc
Guillem Jover f8e80630 2012-01-03T08:40:18 Base fgetln() implementation on getline presence instead of glibc
Guillem Jover 786d1439 2012-03-24T20:37:55 test: Add new overlay unit test
Guillem Jover 866f73af 2012-01-03T05:39:22 Move overlay inclusions outside of header protection Glibc tends to include standard headers with special definitions that make few declarations or macros visible, this stomps over the overlay #include_next <> logic. Based-on-patch-by: Robert Millan <rmh@debian.org>
Guillem Jover f71d8e05 2012-03-21T04:10:37 Remove bogus deprecation warning from <getopt.h>
Guillem Jover 0b96e1a2 2012-01-03T07:32:53 Remove deprecated compatibility includes in headers
Guillem Jover 109cafb3 2012-01-03T07:32:37 Remove deprecated headers
Robert Millan 64348583 2011-12-31T04:30:48 Add new expand_number() function Taken from FreeBSD. [guillem@hadrons.org: - Include <stdint.h> in <bsd/libutil.h>. ] Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover 943939d0 2011-12-31T08:39:44 Add new closefrom() function Code taken from sudo, man page from FreeBSD.
Guillem Jover 3d614131 2011-12-31T06:01:27 Base errc() and warnc() on vwarnc() and verrc() respectively
Guillem Jover 87232260 2011-07-06T16:29:26 Use system __progname variable in progname module if available
Guillem Jover b5cc17d6 2011-07-05T23:27:31 Use getexecname() if available for getprogname() This function is present on Solaris.
Guillem Jover abf14c39 2012-03-24T20:37:55 test: Add new headers unit test
Guillem Jover 23973e22 2012-03-23T10:43:33 build: Add a test suite infrastructure
Guillem Jover 980f04f7 2012-01-03T08:58:52 build: Do not define already defined _GNU_SOURCE The macro is defined by configure on config.h which is now implicitly included by all source files.
Guillem Jover 8d2f12d7 2012-01-03T08:45:05 build: Include <config.h> through -include for all source files
Guillem Jover 88004b30 2011-12-31T07:31:47 build: Set -Wno-unused-parameter to default CFLAGS
Guillem Jover dcaa93d9 2010-12-17T11:13:04 build: Switch to autotools
Guillem Jover 0aa777f4 2011-12-31T07:35:52 Move .pc and .map files to src/
Guillem Jover 540ab03b 2011-12-31T06:50:40 Move man pages to man/
Guillem Jover 93321224 2011-12-11T07:57:05 Rename version script from Versions to libbsd.map
Guillem Jover 2fb7200d 2011-10-23T19:27:44 Fix typos in source comments Found by codespell.
Guillem Jover 0acd86f6 2011-07-05T21:01:57 build: Use -isystem instead of -I
Guillem Jover 901ed630 2011-07-05T21:01:18 build: Do not add -Iinclude/ to MK_CPPFLAGS The source code should not be using any of the headers there.
Guillem Jover 059f89ca 2011-07-05T20:59:04 Add missing semicolon to bsd_getopt() declaration Accidentally lost in commit 4a6303ba3b64504ab0077b9cfebd2a4b918d531d.
Guillem Jover 4a6303ba 2011-06-08T02:10:38 Constify bsd_getopt(3) arguments This matches the standard declaration for getopt(3).
Guillem Jover 7446f029 2011-06-02T19:16:57 Release libbsd 0.3.0
Guillem Jover e80d338b 2011-06-02T19:14:44 Add a COPYING file to ease the distributors work This file includes all the copyright and license notices from the source code in a single place.
Guillem Jover b891772a 2011-05-29T02:49:14 Remove blank lines at EOF
Guillem Jover b0eb1997 2011-05-28T11:40:36 Move bsd_getopt() from <bsd/getopt.h> to <bsd/unistd.h> Deprecate <bsd/getopt.h>.
Guillem Jover 0bf3d391 2011-05-28T10:39:54 Include the correct deprecated headeres when using the overlay
Guillem Jover 913cdd91 2011-05-28T06:35:18 Do not use the same header inclusion protector for <nlist.h> and <bsd/nlist.h> Regression introduced in commit f7caf2b30da93d46528ec706dffaf5cbde5266d9.
Guillem Jover 200eeb12 2011-05-27T21:58:20 Add LIBBSD_DISABLE_DEPRECATED to deprecated headers When enabled this will make the inclusion of deprecated headers a fatal error so that it's easier to spot.
Guillem Jover fbd62297 2011-05-27T22:11:28 Condense and clarify header deprecation warnings Mention the possibility of using libbsd-overlay.pc.
Guillem Jover 755d86be 2011-05-27T21:39:14 Rename LIBBSD_CLEAN_INCLUDES to LIBBSD_DISABLE_DEPRECATED
Guillem Jover cd4996ce 2011-05-27T21:23:18 Namespace header protector in <bsd/sys/cdefs.h> with LIBBSD_SYS_
Guillem Jover a7dd4457 2011-05-27T21:13:18 Add new <bsd/sys/poll.h> header
Guillem Jover 8be40010 2011-05-27T20:37:10 Add new <bsd/sys/endian.h> header
Guillem Jover e1f2a6f8 2011-05-25T21:27:58 Add new __packed, __aligned and __nonnull attributes
Guillem Jover 87dd203c 2011-05-25T21:27:12 Define __dead2 and __pure2 to actual gcc attributes if possible
Guillem Jover de206287 2011-05-25T21:25:54 Define <sys/cdefs.h> attributes conditional to the supported gcc version
Guillem Jover 71e5db4c 2011-05-25T21:02:40 Define _SYS_CDEFS_H and _SYS_CDEFS_H after including <sys/cdefs.h> This makes sure the “standard” inclusion protectors are in place, as at least some FreeBSD kernel headers expect these to be defined to do some sanity checks.
Guillem Jover 9d042171 2011-05-25T07:38:36 Map getopt to bsd_getopt if we are using the overlay This will ensure the code can safely and correctly use optreset transparently.
Guillem Jover 17a9a847 2011-05-25T07:36:19 Rename transparent support to overlay This affects the pkg-config file now named libbsd-overlay.pc, and the macro to use the overlay LIBBSD_OVERLAY.
Guillem Jover 94fe901e 2011-05-14T18:12:48 Abort compilation if fgetln cannot be wrapped
Guillem Jover 28585a58 2011-05-14T17:58:08 Add fpurge function
Guillem Jover b36c59c0 2011-02-23T12:39:58 Conditionalize <time.h> inclusion from <bsd/bsd.h> This was added long time ago to fix some software which was implicitly depending on the header through some other header, and to avoid having to modify such software. Conditionalize it on LIBBSD_CLEAN_INCLUDES, so that buildability can be tested for its future removal.
Guillem Jover 8b6a7477 2011-02-23T12:38:42 Conditionalize temporary compatibility inclusions These inclusions were in place for backward compatibility purposes, when the headers were split so that code using them would not break. Make it possible for applications to disable them by defining LIBBSD_CLEAN_INCLUDES so that buildability can be tested and fixed before they get removed in a subsequent release.
Guillem Jover c594192b 2011-05-14T14:17:44 Correct library name in man pages
Guillem Jover 8478e574 2011-02-23T13:14:22 Update libbsd header references in man pages Point to the namespaced path for libbsd specific headers.
Guillem Jover f7caf2b3 2011-02-23T11:07:30 Move all header files to /usr/include/bsd/ and deprecate /usr/include/ First stage of the transition to avoid possible clashes with other software by moving out of the way the remaining headers from /usr/include/. At least nlist.h is known to cause file conflicts with some libelf implementations. libutil.h is not really complete and might cause confusion if software detects its availability w/o someone actually checking. And lastly vis.h is not known to cause any problem and it's complete, but better be safe than sorry. The compatibility headers will be removed in a later release.
Guillem Jover 520682e5 2011-02-23T14:04:57 Add support for transparent compilation This means that software being ported should not need to be modified in the usual case, as the libbsd headers will take over the standard namespace and fill the missing gaps, and include the system headers. To use this the new libbsd-transparent.pc file can be used through pkg-config, which should end up doing the right thing.
Guillem Jover 4c01261f 2011-02-23T14:15:43 Move each version symbol declaration into its own line
Guillem Jover 8a99226f 2011-02-23T14:01:06 Generalize pkg-config file handling Use a make pattern for the .pc rule to allow using more than one .pc file. And generalize the .gitignore entry.
Guillem Jover 1497d347 2011-02-25T13:52:59 Initialize __progname to program_invocation_short_name As we do not have cooperation from the crt0 code to set __progname, we have to set it ourselves from getprogname() in case it's NULL. On GNU systems we can use program_invocation_short_name which is actually set on crt0.
Kevin McCarthy 741eb587 2011-02-22T20:44:21 Add missing prototypes for arc4random_buf and arc4random_uniform Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=34511
Guillem Jover 9baf9640 2011-02-22T20:19:37 Add new <bsd/sys/bitstring.h> header Taken from FreeBSD.
Guillem Jover 4b95e82a 2011-02-25T18:48:10 Add new radixsort and sradixsort functions Taken from FreeBSD.
Guillem Jover c766e58a 2011-02-25T18:25:17 Add man pages for heapsort and mergesort Taken from FreeBSD, originally as qsort.3 but qsort references stripped.
Guillem Jover be6ab549 2011-02-25T18:17:16 Add new mergesort function Taken from FreeBSD.
Guillem Jover 5b19adfa 2010-12-17T10:50:56 Add getpeereid function