| Commit message (Expand) | Author | Age | Files | Lines |
| * | if_ether.h: new ethernet protocol type•••for High-availability Seamless Redundancy (HSR) specified in IEC 62439-3
new in linux v3.13, f421436a591d34fa5279b54a96ac07d70250cc8d
| Szabolcs Nagy | 2014-02-25 | 1 | -0/+1 |
| * | sys/socket.h: add the SO_MAX_PACING_RATE SOL_SOCKET option•••introduced in linux v3.13, 62748f32d501f5d3712a7c372bbb92abc7c62bc7
| Szabolcs Nagy | 2014-02-25 | 1 | -0/+1 |
| * | elf.h: add aarch64 relocations | Szabolcs Nagy | 2014-02-25 | 1 | -0/+111 |
| * | elf.h: new elf header flag to mark 2008-NaN vs legacy-NaN on mips•••see glibc commit 9c21573c02446b3d5cf6a34b67c8545e5be6a600
| Szabolcs Nagy | 2014-02-25 | 1 | -0/+1 |
| * | sys/shm.h: move arch specific structs to bits/ | rofl0r | 2014-02-23 | 1 | -16/+7 |
| * | sys/sem.h: cheat and make all longs use time_t instead•••most of the members should be time_t anyway, and time_t has the
correct semantics for "syscall_long", so it works on all archs, even x32.
| rofl0r | 2014-02-22 | 1 | -8/+8 |
| * | add flock64 alias for (struct) flock in fcntl.h•••this was a missing part of the LFS64 API; it's "needed" for use with
fcntl and the corresponding lock commands.
| Rich Felker | 2014-02-18 | 1 | -0/+1 |
| * | add parens when bit and arith ops are mixed in macros in public headers•••another commit to silence gcc warnings (-Wparentheses) for standard headers.
changed macros: LOG_UPTO, IN6_ARE_ADDR_EQUAL
| Szabolcs Nagy | 2014-02-11 | 2 | -2/+2 |
| * | fix signed and unsigned comparision in macros in public headers•••gcc -Wsign-compare warns about expanded macros that were defined in
standard headers (before gcc 4.8) which can make builds fail that
use -Werror. changed macros: WIFSIGNALED, __CPU_op_S
| Szabolcs Nagy | 2014-02-11 | 3 | -3/+3 |
| * | reduce namespace pollution in netinet/udp.h•••the affected part of the header is responsible for providing both GNU
and BSD versions of the udphdr structure. previously, the
namespace-polluting GNU names were always used for the actual struct
members, and the BSD names, which are named in a manner resembling a
sane namespace, were always macros defined to expand to the GNU names.
now, unless _GNU_SOURCE is defined, the BSD names are used as the
actual structure members, and the macros and GNU names only come into
play when the application requests them.
| Rich Felker | 2014-02-05 | 1 | -7/+10 |
| * | fix use of legacy u_intN_t types in netinet/tcp.h•••policy is to avoid using these types except where they are needed for
namespace conformance. C99-style stdint.h types should be used
instead.
| Rich Felker | 2014-02-05 | 1 | -73/+74 |
| * | add support for BSD struct tcphdr in netinet/tcp.h•••there are two versions of this structure: the BSD version and the GNU
version. previously only the GNU version was supported. the only way
to support both simultaneously is with an anonymous union, which was a
nonstandard extension prior to C11, so some effort is made to avoid
breakage with compilers which do not support anonymous unions.
this commit is based on a patch by Timo Teräs, but with some changes.
in particular, the GNU version of the structure is not exposed unless
_GNU_SOURCE is defined; this both avoids namespace pollution and
dependency on anonymous unions in the default feature profile.
| Rich Felker | 2014-02-05 | 1 | -4/+41 |
| * | add nonstandard timespec/timeval conversion macros in sys/time.h•••these are poorly designed (illogical argument order) and even poorly
implemented (brace issues) on glibc, but unfortunately some software
is using them. we could consider removing them again in the future at
some point if they're documented as deprecated, but for now the
simplest thing to do is just to provide them under _GNU_SOURCE.
| Rich Felker | 2014-02-05 | 1 | -0/+11 |
| * | add NO_ADDRESS macro to netdb.h as an alias for NO_DATA•••some applications expect it to be defined, despite the standard making
it impossible for it to ever be returned as a value distinct from
NO_DATA. since these macros are outside the scope of the current
standards, no special effort is made to hide NO_ADDRESS under
conditions where the others are exposed.
| Timo Teräs | 2014-02-05 | 1 | -0/+1 |
| * | fix namespace violation in sys/shm.h•••in fixing this, I've changed the logic from ugly #if/#else blocks
inside the struct shm_info definition to a fixed struct definition and
optional macros to rename the elements. this will be helpful if we
need to move shm_info to a bits header in the future, as it will keep
the feature test logic out of bits.
| Rich Felker | 2014-01-08 | 1 | -6/+8 |
| * | fix namespace violations in utmpx.h | Rich Felker | 2014-01-08 | 2 | -5/+12 |
| * | fix remaining known namespace violations for netinet/in.h•••the imr_, imsf_, ip6_, ip6m_, ipi_, ipi6_, SCM_, and SOL_ prefixes are
not in the reserved namespace for this header. thus the constants and
structures using them need to be protected under appropriate feature
test macros.
this also affects some headers which are permitted to include
netinet/in.h, particularly netdb.h and arpa/inet.h.
the SOL_ macros are moved to sys/socket.h where they are in the
reserved namespace (SO*). they are still accessible via netinet/in.h
since it includes sys/socket.h implicitly (which is permitted).
the SCM_SRCRT macro is simply removed, since the definition used for
it, IPV6_RXSRCRT is not defined anywhere. it could be re-added, this
time in sys/socket.h, if the appropriate value can be determined;
however, given that the erroneous definition was not caught, it is
unlikely that any software actually attempts to use SCM_SRCRT.
| Rich Felker | 2014-01-08 | 2 | -22/+18 |
| * | fix const-correctness of argument to stime•••it's unclear what the historical signature for this function was, but
semantically, the argument should be a pointer to const, and this is
what glibc uses. correct programs should not be using this function
anyway, so it's unlikely to matter.
| Rich Felker | 2014-01-07 | 1 | -1/+1 |
| * | fix signedness of pgoff argument to remap_file_pages•••both the kernel and glibc agree that this argument is unsigned; the
incorrect type ssize_t came from erroneous man pages.
| Rich Felker | 2014-01-07 | 1 | -1/+1 |
| * | fix const-correctness in sigandset/sigorset arguments•••this change is consistent with the corresponding glibc functions and
is semantically const-correct. the incorrect argument types without
const seem to have been taken from erroneous man pages.
| Rich Felker | 2014-01-07 | 1 | -2/+2 |
| * | remove sys/sysctl.h•••this functionality has essentially always been deprecated in linux,
and was never supported by musl. the presence of the header was
reported to cause some software to attempt to use the nonexistant
function, so removing the header is the cleanest solution.
| Rich Felker | 2014-01-07 | 1 | -17/+0 |
| * | fix incorrect type for wd argument of inotify_rm_watch•••this was wrong since the original commit adding inotify, and I don't
see any explanation for it. not even the man pages have it wrong. it
was most likely a copy-and-paste error.
| Rich Felker | 2014-01-07 | 1 | -1/+1 |
| * | fix argument types for legacy function inet_makeaddr•••the type int was taken from seemingly erroneous man pages. glibc uses
in_addr_t (uint32_t), and semantically, the arguments should be
unsigned.
| Rich Felker | 2014-01-06 | 1 | -1/+1 |
| * | const-qualify the address argument to dladdr•••this agrees with implementation practice on glibc and BSD systems, and
is the const-correct way to do things; it eliminates warnings from
passing pointers to const. the prototype without const came from
seemingly erroneous man pages.
| Rich Felker | 2014-01-06 | 1 | -1/+1 |
| * | add some missing LFS64 aliases for fadvise/fallocate functions | Rich Felker | 2014-01-06 | 1 | -0/+1 |
| * | add fanotify syscall wrapper and header | rofl0r | 2014-01-02 | 1 | -0/+73 |
| * | fix struct signalfd_siginfo•••ssi_ptr is really 64-bit in kernel, so fix that. assuming sizeof(void*)
for it also caused incorrect padding for 32-bits, as the following
64-bits are aligned to 64-bits (and the padding was not taken into
account), so fix the padding as well. add addr_lsb field while there.
| Timo Teräs | 2013-12-29 | 1 | -2/+3 |
| * | implement legacy function herror•••based on patch by Timo Teräs; greatly simplified to use fprintf.
| Rich Felker | 2013-12-20 | 1 | -0/+1 |
| * | add sys/quota.h and quotactl syscall wrapper•••based on patch by Timo Teräs.
| Rich Felker | 2013-12-20 | 1 | -0/+104 |
| * | add netinet/igmp.h and multicast groups to netinet/in.h•••based on patch by Timo Teräs.
| Rich Felker | 2013-12-20 | 2 | -0/+50 |
| * | add TCP_INFO and TCP_MD5SIG socket option related structures | Timo Teräs | 2013-12-20 | 1 | -0/+58 |
| * | add posix_close, accepted for inclusion in the next issue of POSIX•••this is purely a wrapper for close since Linux does not support EINTR
semantics for the close syscall.
| Rich Felker | 2013-12-06 | 1 | -0/+3 |
| * | move struct ucred under _GNU_SOURCE in sys/socket.h for clean posix namespace | Szabolcs Nagy | 2013-12-04 | 1 | -0/+2 |
| * | fix SHUT_WR typo in sys/socket.h and duplicate definitions of SHUT_* | Szabolcs Nagy | 2013-12-04 | 1 | -5/+1 |
| * | fix res_mkquery and res_send prototypes in resolv.h•••historically these functions appeared in BSD 4.3 without prototypes,
then in the bind project prototypes were added to resolv.h, but those
were incompatible with the definitions of the implementation.
the bind resolv.h became the defacto api most systems use now, but the
old internal definitions found their way into the linux manuals and thus
into musl.
| Szabolcs Nagy | 2013-12-04 | 1 | -4/+2 |
| * | remove duplicate definition of _PATH_LASTLOG in paths.h | Rich Felker | 2013-12-03 | 1 | -1/+0 |
| * | remove now-unnecessary features.h inclusion from fnmatch.h | Rich Felker | 2013-12-02 | 1 | -2/+0 |
| * | expose FNM_* extensions in fnmatch.h without _GNU_SOURCE•••at least a couple of these are used on BSD too, and the FNM_*
namespace is reserved in fnmatch.h anyway.
| Rich Felker | 2013-12-02 | 1 | -3/+0 |
| * | increase TTY_NAME_MAX limit to 32•••the old value of 20 was reported by Laurent Bercot as being
insufficient for a reasonable real-world usage case. actual problem
was the internal buffer used by ttyname(), but the implementation of
ttyname uses TTY_NAME_MAX, and for consistency it's best to increase
both. the new value is aligned with glibc.
| Rich Felker | 2013-11-29 | 1 | -1/+1 |
| * | adjust fallback INFINITY definition for FLT_EVAL_METHOD==2 case•••on archs with excess precision, the floating point constant 1e40f may
be evaluated such that it does not actually produce an infinity.
1e5000f is sufficiently large to produce an infinity for all supported
floating point formats. note that this definition of INFINITY is only
used for old or non-GNUC compilers anyway; despite being a portable,
conforming definition, it leads to erroneous warnings on many
compilers and thus using the builtin is preferred.
| Rich Felker | 2013-11-26 | 1 | -1/+1 |
| * | restore type of NULL to void * except when used in C++ programs•••unfortunately this eliminates the ability of the compiler to diagnose
some dangerous/incorrect usage, but POSIX requires (as an extension to
the C language, i.e. CX shaded) that NULL have type void *. plain C
allows it to be defined as any null pointer constant.
the definition 0L is preserved for C++ rather than reverting to plain
0 to avoid dangerous behavior in non-conforming programs which use
NULL as a variadic sentinel. (it's impossible to use (void *)0 for C++
since C++ lacks the proper implicit pointer conversions, and other
popular alternatives like the GCC __null extension seem non-conforming
to the standard's requirements.)
| Rich Felker | 2013-11-24 | 8 | -0/+33 |
| * | Fix dn_comp prototype and add stub•••This function is used by ping6 from iputils.
| Michael Forney | 2013-11-24 | 1 | -1/+1 |
| * | use 0 instead of NULL in headers where NULL is not defined•••some macros in sys/mtio.h and syslog.h used NULL without defining it
| Szabolcs Nagy | 2013-11-24 | 2 | -3/+3 |
| * | add TCP_NOTSENT_LOWAT tcp socket option, new in linux v3.12 | Szabolcs Nagy | 2013-11-23 | 1 | -0/+1 |
| * | add linux tcp state enums | Timo Teräs | 2013-11-23 | 1 | -0/+12 |
| * | add multicast structures from RFC 3678 to netinet/in.h•••and use _GNU_SOURCE || _BSD_SOURCE guards for all of the RFC 3678
namespace polluting things like glibc/uclibc does.
| Timo Teräs | 2013-11-23 | 1 | -1/+42 |
| * | timeradd/timersub: cast result to void to get rid of warnings•••previously:
timersub(&now, t, &diff);
warning: value computed is not used [-Wunused-value]
| rofl0r | 2013-11-23 | 1 | -2/+2 |
| * | add legacy getloadavg api | Szabolcs Nagy | 2013-11-21 | 1 | -0/+1 |
| * | math: add (obsolete) bsd drem and finite functions | Szabolcs Nagy | 2013-11-21 | 1 | -0/+6 |
| * | write floating point limit constants to 21 significant decimal places•••this is enough to produce the correct value even if the constant is
interpreted as 80-bit extended precision, which matters on archs with
excess precision (FLT_EVAL_METHOD==2) under at least some
interpretations of the C standard. the shorter representations, while
correct if converted to the nominal precision at translation time,
could produce an incorrect value at extended precision, yielding
results such as (double)DBL_MAX != DBL_MAX.
| Rich Felker | 2013-11-20 | 2 | -10/+10 |