summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* * cygtls.cc (_cygtls::remove): Revert previous patch.Corinna Vinschen2014-08-259-178/+206
| | | | | | | | | | | | | | | | | * cygtls.h (struct _local_storage): Move pathbufs back here. (class san/x86_64): Revert class. Save and restore pathbufs counters only. (class san/i686): Revert saving and restoring pathbufs counters. (__try/x86_64): Add a san variable and call it's setup method. (__except/x86_64): Call san::leave to restore pathbufs counters. * gendef (_sigbe): Revert previous change. * thread.cc (verifyable_object_state): Remove gcc 4.7 workaround in forward declaration as well. * tls_pbuf.cc (tls_pbuf): Revert previous change. * tls_pbuf.h (class tmp_pathbuf): Accommodate reverting pathbufs to locals structure. * tlsoffsets.h: Regenerate. * tlsoffsets64.h: Regenerate.
* * Throughout, use __try/__except/__endtry blocks, rather than myfaultCorinna Vinschen2014-08-2241-5678/+6137
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | handler. * cygtls.cc (_cygtls::remove): Accommodate the fact that pathbufs has been moved from _local_storage to _cygtls. * cygtls.h (class tls_pathbuf): Add comment to hint to gendef usage of counters. Change type of counters to uint32_t for clarity. Remove _cygtls as friend class. (struct _local_storage): Move pathbufs from here... (struct _cygtls): ...to here, allowing to access it from _sigbe. (class san): Only define on 32 bit. Remove errno, _c_cnt and _w_cnt members. (san::setup): Drop parameter. Don't initialize removed members. (san::leave): Don't set removed members. (class myfault): Only define on 32 bit. (myfault::faulted): Only keep implementation not taking any parameter. Drop argument in call to sebastian.setup. (__try/__leave/__except/__endtry): Implement to support real SEH. For now stick to SJLJ on 32 bit. * dcrt0.cc (dll_crt0_0): Drop 64 bit call to exception::install_myfault_handler. * exception.h (exception_handler): Define with EXCEPTION_DISPOSITION as return type. (PDISPATCHER_CONTEXT): Define as void * on 32 bit. Define as pointer to _DISPATCHER_CONTEXT on 64 bit. (class exception): Define separately for 32 and 64 bit. (exception::myfault): Add handler for myfault SEH handling on 64 bit. (exception::exception): Fix mangled method name to account for change in type of last parameter. (exception::install_myfault_handler): Remove. * exceptions.cc (exception::myfault_handle): Remove. (exception::myfault): New SEH handler for 64 bit. * gendef (_sigbe): Set tls_pathbuf counters to 0 explicitely when returning to the caller. * ntdll.h: Move a comment to a better place. (struct _SCOPE_TABLE): Define on 64 bit. * thread.cc (verifyable_object_isvalid): Remove gcc 4.7 workaround. * tls_pbuf.cc (tls_pbuf): Fix to accommodate new place of pathbufs. (tls_pathbuf::destroy): Change type of loop variables to uint32_t. * tls_pbuf.h (class tmp_pathbuf): Change type of buffer counters to uint32_t. Accommodate new place of pathbufs. * tlsoffsets.h: Regenerate. * tlsoffsets64.h: Regenerate.
* * miscfuncs.cc (__import_address): Cover the first dereference to impCorinna Vinschen2014-08-212-2/+7
| | | | under the fault handler.
* * net.cc (if_freenameindex): Don't catch a SEGV from free to failCorinna Vinschen2014-08-212-3/+5
| | | | loudly on double free.
* * dir.cc (rmdir): Don't skip deleting fh in the ENOTEMPTY case.Corinna Vinschen2014-08-212-4/+5
|
* * tls_pbuf.h (tmp_pathbuf::tmp_pathbuf): Convert to inline method.Corinna Vinschen2014-08-203-13/+18
| | | | | | (tmp_pathbuf::~tmp_pathbuf): Ditto. * tls_pbuf.cc (tmp_pathbuf::tmp_pathbuf): Remove here. (tmp_pathbuf::~tmp_pathbuf): Ditto.
* * dir.cc (dirfd): Per POSIX, return EINVAL on invalid directory stream.Corinna Vinschen2014-08-193-3/+13
| | | | | | (telldir): Per POSIX, return -1 and set errno to EBADF, rather than just returning 0, on invalid directory stream. * signal.cc (sigwaitinfo): Return -1, not EFAULT, when SEGV was catched.
* * libc/machine/aarch64/memchr.S: Add check for zero-sized buffer.Richard Earnshaw2014-08-192-0/+10
|
* * fhandler.h (enum conn_state): Add "connect_credxchg" state.Corinna Vinschen2014-08-193-9/+31
| | | | | | | | | | (class fhandler_socket): Grant another bit to connect_state flag. * fhandler_socket.cc (fhandler_socket::af_local_connect): Rearrange variable definition. Set connect_state to connect_credxchg. (fhandler_socket::af_local_accept): Ditto. (fhandler_socket::recv_internal): Accept connect_credxchg on connection oriented AF_LOCAL sockets as well to allow the credential exchange. Extend comment to explain.
* * autoload.cc: Replace WNet[...]A with WNet[...]W imports.Corinna Vinschen2014-08-194-50/+78
| | | | | | | * dcrt0.cc (initial_env): Drop strlwr calls. Call strcasestr instead. * fhandler_netdrive.cc: Throughout, convert to calling WNet UNICODE functions. Use tmp_pathbuf rather than alloca. Replace call to strlwr with call to RtlDowncaseUnicodeString.
* * fhandler.h (fhandler_serial::is_tty): Reinstantiate.Corinna Vinschen2014-08-192-0/+6
|
* * miscfuncs.cc (strlwr): Rename from cygwin_strlwr. Drop __stdcallCorinna Vinschen2014-08-183-11/+14
| | | | | | | decoration. (strupr): Rename from cygwin_strupr. Drop __stdcall decoration. * string.h (strlwr): Remove override macro. Simply declare. (strupr): Ditto.
* * libc/include/sys/signal.h: Declare sigaltstack for RTEMS only.Corinna Vinschen2014-08-182-1/+6
|
* 2014-08-18 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2014-08-182-0/+9
| | | | | * libc/include/sys/config.h[__m68k__]: Set _READ_WRITE_RETURN_TYPE to _ssize_t to match underlying code in libgloss.
* 2014-08-18 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2014-08-182-34/+55
| | | | * libc/include/string.h: Improve language and OS standard guards.
* 2014-08-18 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2014-08-182-3/+43
| | | | * libc/include/sys/signal.h: Add sigaltstack() support.
* *** empty log message ***Corinna Vinschen2014-08-181-0/+7
|
* * dtable.cc (dtable::init_std_file_from_handle): Mention that consoleCorinna Vinschen2014-08-185-20/+55
| | | | | | | | | | | | | | | handles are kernel objects since Windows 8. * fhandler.h (enum conn_state): Add "listener" state. (class fhandler_socket): Drop listener status flag. (fhandler_socket::lseek): Return -1 and errno ESPIPE. (fhandler_serial::lseek): Ditto. * fhandler_socket.cc (fhandler_socket::listen): Set connect_state to listener. Add comment. (fhandler_socket::accept4): Explicitely check if the socket is listening and fail with EINVAL, if not. Explain why we have to do that. (fhandler_socket::recv_internal): Explicitely check if the socket is connected if it's a stream socket. Explain why we have to do that. (fhandler_socket::getpeereid): Drop now redundant test.
* * configure.ac: Convert to new AC_INIT style.Corinna Vinschen2014-08-1515-230/+308
| | | | * configure: Regenerate.
* * winsup.h (_GNU_SOURCE): Define. Explain why.Corinna Vinschen2014-08-154-22/+55
| | | | | * configure.ac: Convert to new AC_INIT style. * configure: Regenerate.
* * cygerrno.h (seterrno): Define as (always) inline function.Corinna Vinschen2014-08-153-11/+14
| | | | * errno.cc (seterrno): Remove.
* Add missing file from last patchCorinna Vinschen2014-08-151-0/+18
|
* * cygwin-api.xml: Include misc-funcs.xml.Corinna Vinschen2014-08-143-0/+70
| | | | * misc-funcs.xml: New file.
* * dll_init.sgml: Remove.Corinna Vinschen2014-08-145-62/+7
| | | | | | * dtable.sgml: Move into ../doc/misc-funcs.xml. * external.sgml: Ditto. * stackdump.sgml: Ditto.
* * cygwin-api.xml: Move chapter tags from path.xml back here.Corinna Vinschen2014-08-144-15/+85
| | | | | | Include logon-funcs.xml. * logon-funcs.xml: Moved from ../cygwin here and converted to XML. * path.xml: Drop chapter tags. Create subsections.
* * security.sgml: Move to ../doc dir and rename to logon-funcs.xml.Corinna Vinschen2014-08-142-45/+4
|
* * Makefile.in: Throughout use parenthesis instead of braces whereCorinna Vinschen2014-08-1411-824/+3909
| | | | | | | | | | | | | | | | | | | appropriate. (DBXDIRS): Remove. (XSLTPROC): Define for symmetry. Use throughout. (clean): Drop removing cygwin-api.xml and doctool.*. (cygwin-api.xml): Drop rule. (doctool): Drop rule. (Makefile.dep): Add dependency to cygwin-api.xml. * cygwin-api.in.xml: Rename to cygwin-api.xml. Convert includes to XML XInclude style. * doctool.c: Remove. * doctool.txt: Remove. * faq-programming.xml: Drop reference to local utils.xml file. * path.xml: Moved from ../cygwin and converted to XML. * posix.xml: Ditto. * using.xml: Drop relative path from utils.xml include. * utils.xml: Moved from ../utils.
* * utils.xml: Move to ../doc.Corinna Vinschen2014-08-142-2104/+4
|
* * path.sgml: Move to ../doc dir and rename to path.xml.Corinna Vinschen2014-08-143-1735/+6
| | | | * posix.sgml: Move to ../doc dir and rename to posix.xml.
* * dlmalloc.c: Remove unused file.Corinna Vinschen2014-08-144-5199/+2516
| | | | | * dlmalloc.h: Ditto. * malloc.cc: Update to Doug Lea's malloc version 2.8.6.
* * arm/elf-nano.specs: New file.Corinna Vinschen2014-08-144-12/+31
| | | | | | * arm/elf-rdimon.specs: Support nano.specs. * arm/Makefile.in: Support nano.specs. * libnosys/nosys.specs: Support nano.specs.
* * libc/stdio/findfp.c (std): Don't inline when optimizing for code size.Corinna Vinschen2014-08-142-0/+8
|
* * new-features.xml: (ov-new1.7.33): Add new section.Corinna Vinschen2014-08-132-1/+28
| | | | (ov-new1.7.32): Reflect intermediate 1.7.32 release.
* * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 33.Corinna Vinschen2014-08-134-9/+38
| | | | (CYGWIN_VERSION_API_MINOR): Bump to reflect intermediate 1.7.32 release.
* * cpuid.h: Add missing copyright header. Fix formatting. Use uint32_tCorinna Vinschen2014-08-115-93/+204
| | | | | | | | | | | | | instead of unsigned throughout. Change functions to static inline and always inline. (cpuid): Add parameter to set ecx, allowing to request extended CPUID info. * fhandler_proc.cc (format_proc_cpuinfo): Use uint32_t instead of unsigned throughout. Add fake decimal places to MHz info. Handle more feature flags. * fhandler_random.cc (fhandler_dev_random::write): Allow up to 4K input to add entropy. * syscalls.cc: Drop including cpuid.h.
* * common.din (__cxa_finalize): Export.Yaakov Selkowitz2014-08-075-5/+14
| | | | | | | * dcrt0.cc (cygwin_atexit): Use d->handle with __cxa_atexit. * dll_init.cc (dll_list::detach): Use d->handle with __cxa_finalize. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Use 274 for __cxa_finalize as well.
* * Makefile.common (COMPILE.cc): Add -fno-use-cxa-atexit.Yaakov Selkowitz2014-08-072-1/+5
|
* * passwd.c (usage): Rename DAYS to MINDAYS and MAXDAYS.Corinna Vinschen2014-08-063-21/+21
| | | | * utils.xml (passwd): Ditto.
* * ntsec.xml (ntsec-mapping): Drop plus-prepended builtin accounts asCorinna Vinschen2014-08-062-12/+24
| | | | | default setting. Add short explanation in db_prefix: always mode. Fix a type. Drop a paragraph with redundant information.
* * include/sys/file.h: Add extern "C".Corinna Vinschen2014-08-062-0/+13
|
* * libc/include/math.h: Also define M_PI etc. if _XOPEN_SOURCE isJon TURNEY2014-08-042-3/+17
| | | | defined appropriately.
* * common.din (__cxa_atexit): Export.Corinna Vinschen2014-08-043-1/+8
| | | | * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump to 274.
* * uinfo.cc (pwdgrp::fetch_account_from_windows): Drop "plus_prepended"Corinna Vinschen2014-08-042-65/+75
| | | | | | | as naming style. Drop enum name_style_t, use a boolean "fully_qualified_name" value instead. Rework function to drop "plus_prepended" handling througout and default to "name only" style as replacement.
* * faq-what.xml (faq.what.who): Remove mention of retired setupYaakov Selkowitz2014-08-032-1/+7
| | | | maintainers. Add link to cygwin-pkg-maint.
* headers: properly decorate attributesEric Blake2014-08-016-27/+36
| | | | | | | | | | | | | | | | | | As pointed out here: https://cygwin.com/ml/cygwin/2014-07/msg00371.html any use of __attribute__ in a header that can be included by a user should be namespace-safe, by decorating the attribute arguments with __ (while gcc does a lousy job at documenting it, ALL attributes have a __ counterpart, precisely so that public headers can use attributes without risk of collision with macros belonging to user namespace). * include/pthread.h: Decorate attribute names with __, for namespace safety. * include/cygwin/core_dump.h: Likewise. * include/cygwin/cygwin_dll.h: Likewise. * include/sys/cygwin.h: Likewise. * include/sys/strace.h: Likewise.
* headers: properly decorate attributesEric Blake2014-08-0118-64/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Found by: find -name '*.h' |xargs grep -i 'attribute.*(([a-z]' For an example of the type of bugs this causes, try compiling this valid C11 program (it's valid because 'noreturn' is reserved for use in the user namespace unless you include <stdnoreturn.h>): $ cat foo.c #define noreturn __attribute__((noreturn)) #include <stdlib.h> $ gcc -c -o foo.o -Wall foo.c In file included from /usr/include/stdlib.h:11:0, from foo.c:2: foo.c:1:18: error: expected ')' before '__attribute__' #define noreturn __attribute__((noreturn)) ^ /usr/include/stdlib.h:66:28: error: expected ',' or ';' before ')' token _VOID _EXFUN(abort,(_VOID) _ATTRIBUTE ((noreturn))); ^ * libc/machine/spu/spu_timer_internal.h: Decorate attribute names with __, for namespace safety. * libc/machine/xscale/machine/profile.h: Likewise. * libc/include/stdlib.h: Likewise. * libc/include/_ansi.h: Likewise. * libc/include/sys/unistd.h: Likewise. * libc/sys/linux/linuxthreads/libc-symbols.h: Likewise. * libc/sys/linux/linuxthreads/internals.h: Likewise. * libc/sys/linux/machine/i386/weakalias.h: Likewise. * libc/sys/linux/machine/i386/dl-procinfo.h: Likewise. * libc/sys/linux/machine/i386/dl-machine.h: Likewise. * libc/sys/linux/libc-symbols.h: Likewise. * libc/sys/linux/iconv/gconv_charset.h: Likewise. * libc/sys/linux/include/resolv.h: Likewise. * libc/sys/linux/sys/unistd.h: Likewise. * libc/sys/linux/dl/atomicity.h: Likewise. * libc/sys/linux/dl/dynamic-link.h: Likewise. * libc/sys/linux/dl/ldsodefs.h: Likewise.
* * faq-what.xml (faq.what.who): CGF has retired.Yaakov Selkowitz2014-08-012-8/+5
|
* * uinfo.cc (pwdgrp::fetch_account_from_windows): Fix comment.Corinna Vinschen2014-07-302-8/+11
|
* * ntsec.xml: Small improvments.Corinna Vinschen2014-07-302-10/+18
|
* * new-features.xml: (ov-new1.7): Change section title.Corinna Vinschen2014-07-302-1/+5
|