{"push_id":985635453,"size":108,"distinct_size":0,"ref":"refs/heads/master","head":"869a9df5b5f7da57ebd86d146e25f78450678eeb","before":"7b712844e38bdfc1ef728e257fb8616c16ec4cc8","commits":[{"sha":"e4f9d811684011d8a67e363827de39d5f2d3ae5a","author":{"email":"66dbfa9ac70d64a0115425cd5cf334835ba79b72@port70.net","name":"Szabolcs Nagy"},"message":"fix tdelete to properly balance the tree\n\nthe tsearch data structure is an avl tree, but it did not implement\nthe deletion operation correctly so the tree could become unbalanced.\n\nreported by Ed Schouten.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/e4f9d811684011d8a67e363827de39d5f2d3ae5a"},{"sha":"bc9744763afe72d626e7b9f461001d425582fe9c","author":{"email":"66dbfa9ac70d64a0115425cd5cf334835ba79b72@port70.net","name":"Szabolcs Nagy"},"message":"fix tsearch to avoid crash on oom\n\nmalloc failure was not properly propagated in the insertion method\nwhich led to null pointer dereference.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/bc9744763afe72d626e7b9f461001d425582fe9c"},{"sha":"8994908b199a57097f420707b1fca75fc30236fa","author":{"email":"66dbfa9ac70d64a0115425cd5cf334835ba79b72@port70.net","name":"Szabolcs Nagy"},"message":"tsearch code cleanup\n\nchanged the insertion method to simplify the recursion logic and\nreduce code size a bit.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/8994908b199a57097f420707b1fca75fc30236fa"},{"sha":"3abb094d19ca4c7c4adcf373d971fb5aa05c5252","author":{"email":"66dbfa9ac70d64a0115425cd5cf334835ba79b72@port70.net","name":"Szabolcs Nagy"},"message":"fix tsearch, tfind, tdelete to handle null pointer input\n\nPOSIX specifies the behaviour for null rootp input, but it\nwas not implemented correctly.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/3abb094d19ca4c7c4adcf373d971fb5aa05c5252"},{"sha":"0d58bf2d6078dd486951cdeb24790043eb171081","author":{"email":"1c24ea00d8ce704dffa3997c81be1310fc2bbac6@aerifal.cx","name":"Rich Felker"},"message":"remove visibility suppression by SHARED macro in mips and x32 arch files\n\ncommit 8a8fdf6398b85c99dffb237e47fa577e2ddc9e77 was intended to remove\nall such usage, but these arch-specific files were overlooked, leading\nto inconsistent declarations and definitions.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/0d58bf2d6078dd486951cdeb24790043eb171081"},{"sha":"42216742cd69e52e70aeb1d14498a8145872de52","author":{"email":"1c24ea00d8ce704dffa3997c81be1310fc2bbac6@aerifal.cx","name":"Rich Felker"},"message":"fix crash when signal number 0 is passed to sigaction\n\nthis error case was overlooked in the old range checking logic. new\ncheck is moved out of __libc_sigaction to the public wrapper in order\nto unify the error path and reduce code size.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/42216742cd69e52e70aeb1d14498a8145872de52"},{"sha":"d87f0a9a95f0a1228ee5579e5822a8c93bc96823","author":{"email":"1c24ea00d8ce704dffa3997c81be1310fc2bbac6@aerifal.cx","name":"Rich Felker"},"message":"avoid updating caller's size when getdelim fails to realloc\n\ngetdelim was updating *n, the caller's stored buffer size, before\ncalling realloc. if getdelim then failed due to realloc failure, the\ncaller would see in *n a value larger than the actual size of the\nallocated block, and use of that value is unsafe. in particular,\npassing it again to getdelim is unsafe.\n\nnow, temporary storage is used for the desired new size, and *n is not\nwritten until realloc succeeds.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/d87f0a9a95f0a1228ee5579e5822a8c93bc96823"},{"sha":"c673158d91ad995ed59dd910777cd6464f61fe8e","author":{"email":"1c24ea00d8ce704dffa3997c81be1310fc2bbac6@aerifal.cx","name":"Rich Felker"},"message":"fix overly pessimistic realloc strategy in getdelim\n\npreviously, getdelim was allocating twice the space needed every time\nit expanded its buffer to implement exponential buffer growth (in\norder to avoid quadratic run time). however, this doubling was\nperformed even when the final buffer length needed was already known,\nwhich is the common case that occurs whenever the delimiter is in the\nFILE's buffer.\n\nthis patch makes two changes to remedy the situation:\n\n1. over-allocation is no longer performed if the delimiter has already\nbeen found when realloc is needed.\n\n2. growth factor is reduced from 2x to 1.5x to reduce the relative\nexcess allocation in cases where the delimiter is not initially in the\nbuffer, including unbuffered streams.\n\nin theory these changes could lead to quadratic time if the same\nbuffer is reused to process a sequence of lines successively\nincreasing in length, but once this length exceeds the stdio buffer\nsize, the delimiter will not be found in the buffer right away and\nexponential growth will still kick in.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/c673158d91ad995ed59dd910777cd6464f61fe8e"},{"sha":"71991a803c8a8fe10a6ed49bc4f0a1f4890d6c46","author":{"email":"1c24ea00d8ce704dffa3997c81be1310fc2bbac6@aerifal.cx","name":"Rich Felker"},"message":"adjust i386 max_align_t definition to work around some broken compilers\n\nat least gcc 4.7 claims c++11 support but does not accept the alignas\nkeyword, causing breakage when stddef.h is included in c++11 mode.\ninstead, prefer using __attribute__((__aligned__)) on any compiler\nwith GNU extensions, and only use the alignas keyword as a fallback\nfor other C++ compilers.\n\nC code should not be affected by this patch.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/71991a803c8a8fe10a6ed49bc4f0a1f4890d6c46"},{"sha":"5e396fb996a80b035d0f6ecf7fed50f68aa3ebb7","author":{"email":"1c24ea00d8ce704dffa3997c81be1310fc2bbac6@aerifal.cx","name":"Rich Felker"},"message":"adjust mips crt_arch entry point asm to avoid assembler bugs\n\napparently the .gpword directive does not work reliably with local\ntext labels; values produced were offset by 64k from the correct\nvalue, resulting in incorrect computation of the got pointer at\nruntime. instead, use an external label so that the assembler does not\nmunge the relocation; the linker will then get it right.\n\ncommit 6fef8cafbd0f6f185897bc87feb1ff66e2e204e1 exposed this issue by\nremoving the old, non-PIE-compatible handwritten crt1.s, which was not\naffected. presumably mips PIE executables (using Scrt1.o produced from\ncrt_arch.h) were already affected at the time.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/5e396fb996a80b035d0f6ecf7fed50f68aa3ebb7"},{"sha":"d5f8394f6ea9549607567bd92de12a2446c15614","author":{"email":"266f729f1f620250264df63d5dfd302c2a88080e@iki.fi","name":"Timo Teräs"},"message":"add missing protocols to protoent lookup functions","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/d5f8394f6ea9549607567bd92de12a2446c15614"},{"sha":"2f853dd6b9a95d5b13ee8f9df762125e0588df5d","author":{"email":"28e431f5669ee416eed3c0cf0e57e28af39903b5@chromium.org","name":"Petr Hosek"},"message":"support out-of-tree build\n\nthis change adds support for building musl outside of the source\ntree. the implementation is similar to autotools where running\nconfigure in a different directory creates config.mak in the current\nworking directory and symlinks the makefile, which contains the\nlogic for creating all necessary directories and resolving paths\nrelative to the source directory.\n\nto support both in-tree and out-of-tree builds with implicit make\nrules, all object files are now placed into a separate directory.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/2f853dd6b9a95d5b13ee8f9df762125e0588df5d"},{"sha":"3cdbfb99c3beda1e04efcc94f0af2abc8dc5d4ad","author":{"email":"f151efa85df3e5abc64a25fec22969d0887b947d@frippery.org","name":"Ron Yorston"},"message":"fix if_nametoindex return value when socket open fails\n\nThe return value of if_nametoindex is unsigned; it should return 0\non error.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/3cdbfb99c3beda1e04efcc94f0af2abc8dc5d4ad"},{"sha":"53f41fb568ae43034c9876cc9bd3961fd6d13671","author":{"email":"24837c10191c459d7ff27b972503d6659bbadac0@exherbo.org","name":"Kylie McClain"},"message":"netinet/tcp: Add TCPOPT, TCPOLEN constants\n\nPrograms such as iptables depend on these constants, which can also\nbe found defined in other libcs.\n\nSince only TCP_* is reserved as part of tcp.h's namespace, we hide\nthem behind _BSD_SOURCE (and therefore _DEFAULT_SOURCE) to expose\nthem by default, but keep it standard conforming.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/53f41fb568ae43034c9876cc9bd3961fd6d13671"},{"sha":"9f5eb77992b42d484d69e879d24ef86466f20f21","author":{"email":"1c24ea00d8ce704dffa3997c81be1310fc2bbac6@aerifal.cx","name":"Rich Felker"},"message":"add support for arch-provided replacement files as .c or .S\n\npreviously, replacement files provided in $(ARCH) dirs under src/ had\nto be .s files. in order to replace a file with C source, an empty .s\nfile was needed there to suppress the original file, and a separate .c\nfile was needed in arch/$(ARCH)/src/.\n\nsupport for .S is new and is aimed at short-term use eliminating .sub\nfiles. asm source files are still expected not to make any heavy\npreprocessor use, just simple conditionals on subarch. eventually most\naffected files may be replaced with C source files with minimal inline\nasm instead of asm source files.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/9f5eb77992b42d484d69e879d24ef86466f20f21"},{"sha":"9514e70c60649ea13c25e1ac1e944cee7c82c9a7","author":{"email":"1c24ea00d8ce704dffa3997c81be1310fc2bbac6@aerifal.cx","name":"Rich Felker"},"message":"eliminate separate static/shared CFLAGS vars in makefile\n\nthis allows the rules for .o and .lo files to be identical, with -fPIC\nand -DSHARED added for .lo files via target-specific variable append.\nthis is arguably cleaner now and will allow more cleanup and removal\nof redundant rule bodies after other prerequisite changes are made.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/9514e70c60649ea13c25e1ac1e944cee7c82c9a7"},{"sha":"cb1875eb4ff755fe6c5d1909f64fc4be1ee396ab","author":{"email":"1c24ea00d8ce704dffa3997c81be1310fc2bbac6@aerifal.cx","name":"Rich Felker"},"message":"adapt build of arm memcpy asm not to use .sub files\n\nthis depends on commit 9f5eb77992b42d484d69e879d24ef86466f20f21, which\nmade it possible to use a .c file for arch-specific replacements, and on\ncommit 2f853dd6b9a95d5b13ee8f9df762125e0588df5d, the out-of-tree build\nsupport, which made it so that src/*/$(ARCH)/* 'replacement' files get\nused even if they don't match the base name of a .c file in the parent\ndirectory.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/cb1875eb4ff755fe6c5d1909f64fc4be1ee396ab"},{"sha":"e4355bd6bec89688e8c739cd7b4c76e675643dca","author":{"email":"1c24ea00d8ce704dffa3997c81be1310fc2bbac6@aerifal.cx","name":"Rich Felker"},"message":"replace armhf math asm source files with inline asm\n\nthis makes it possible to inline them with LTO, and is the simplest\napproach to eliminating the use of .sub files.\n\nthis also makes VFP sqrt available for use with the standard EABI\n(plain arm rather than armhf subarch) when libc is built with\n-mfloat-abi=softfp. the same could have been done for fabs, but when\nthe argument and return value are in integer registers, moving to VFP\nregisters and back is almost certainly more costly than a simple\ninteger operation.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/e4355bd6bec89688e8c739cd7b4c76e675643dca"},{"sha":"56764601af17aa6fb8b70b714c6bd8bb1d9f4229","author":{"email":"1c24ea00d8ce704dffa3997c81be1310fc2bbac6@aerifal.cx","name":"Rich Felker"},"message":"fix dynamic linker path file selection for arm vs armhf\n\nthe __SOFTFP__ macro which was wrongly being used does not reflect the\nABI (arm vs armhf) but just the availability of floating point\ninstructions/registers, so -mfloat-abi=softfp was wrongly being\ntreated as armhf. __ARM_PCS_VFP is the correct predefined macro to\ncheck for the armhf EABI variant. this macro usage was corrected for\nthe build process in commit 4918c2bb206bfaaf5a1f7d3448c2f63d5e2b7d56\nbut reloc.h was apparently overlooked at the time.","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/56764601af17aa6fb8b70b714c6bd8bb1d9f4229"},{"sha":"4b9a08f29303661e9680fc1ee1569daa25df7d50","author":{"email":"1c24ea00d8ce704dffa3997c81be1310fc2bbac6@aerifal.cx","name":"Rich Felker"},"message":"switch sh and mips setjmp asm from .sub system to .S files","distinct":false,"url":"https://api.github.com/repos/libos-nuse/musl/commits/4b9a08f29303661e9680fc1ee1569daa25df7d50"}]}