summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add a check that the data area does not overrun the stack.Nick Clifton2015-05-277-3/+110
| | | | | | | | | | | * msp430/msp430-sim.ld (.stack): Add an assertion to make sure that the data area does not overrun the stack. PROVIDE a new symbol __stack_size to allow the user to set the limit. * msp430/msp430xl-sim.ld (.stack): Likewise. * rl78/rl78-sim.ld (.stack): Likewise. * rl78/rl78.ld (.stack): Likewise. * rx/rx-sim.ld (.stack): Likewise. * rx/rx.ld (.stack): Likewise.
* Update signbit functions to work on targets where integers are only 16-bits.Nick Clifton2015-05-272-4/+9
| | | | | * libm/common/s_signbit.c (__signbitf): Fix for 16-bit targets. (__signbitd): Likewise.
* Adds support for placing MSP430 code and data into either low memory or high ↵Nick Clifton2015-05-2710-786/+455
| | | | | | | | | | | | | | | | | | | | | | | | | | | | memory. * msp430/msp430.ld: Delete. * msp430/msp430F5438A-l.ld: Delete. * msp430/msp430F5438A-s.ld: Delete. * msp430/crt_movedata.S: Delete. * msp430/Makefile.in (SCRIPTS): Remove msp430.ld. (CRT_OBJS): Add crt_move_highdata.o. * msp430/memmodel.h (START_CRT_FUNC): New macro. (END_CRT_FUNC): New macro. (WEAK_DEF): New macro. * msp430/crt0.S: Use new macros. (move_highdata): New code to initialise the .data section if it is held in high memory. * msp430/msp430-sim.ld (.data): Add .either.data. (.rodata2): Move some read-only data sections here. (.text): Add .either.text. (.rodata): Add .either.rodata. (.bss): Add .either.bss. * msp430/msp430xl-sim.ld (MEMORY): Add HIROM. (.rodata2): Move some read-only data sections here. (.upper.data): New section. Include notes about how to initialise it.
* Bump minor DLL version to 2cygwin-2_0_2-releaseCorinna Vinschen2015-05-032-1/+5
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Revert to exposing sys/select.h from sys/time.h on CygwinCorinna Vinschen2015-05-022-0/+10
| | | | | | * libc/include/sys/time.h: Include sys/select.h on Cygwin. Explain why. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Bump minor DLL version to 1cygwin-2_0_1-releaseCorinna Vinschen2015-04-303-1/+13
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Use all ACEs from original ACL on Samba shareCorinna Vinschen2015-04-302-3/+8
| | | | | | | * security.cc (convert_samba_sd): Fix accidental dropping of all non-Unix User, non-Unix Group accounts. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix more typos in ntsec.xmlYaakov Selkowitz2015-04-291-4/+4
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* Improve check for int32_t being long or intCorinna Vinschen2015-04-295-32/+53
| | | | | | | | | | | | | | * libc/include/sys/config.h: Move evaluation of _UINTPTR_EQ_ULONG and _UINTPTR_EQ_ULONGLONG from here... * libc/include/sys/_intsup.h: ...to here. Rename to _INTPTR_EQ_LONG and _INTPTR_EQ_LONGLONG to refer to signed base type. Add test for base type of int32_t and set _INT32_EQ_LONG accordingly. * libc/include/stdint.h: Change checks for __have_long32 to checks for _INT32_EQ_LONG. * libc/include/inttypes.h: Ditto. Accommodate aforementioned name change. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Define __s64 and __u64cygwin-2_0_0-releaseCorinna Vinschen2015-04-272-1/+9
| | | | | | * include/asm/types.h: Add __s64 and __u64 types. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygserver.xml: Add new section. How to install Cygserver.Mike DePaulo2015-04-272-0/+18
| | | | | | | * cygserver.xml (install-cygserver): Add new section. How to install Cygserver. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Document previous unlink patchCorinna Vinschen2015-04-231-0/+6
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Handle unlinking in-use files on virtual drivesCorinna Vinschen2015-04-234-3/+46
| | | | | | | | | | * path.cc (path_conv::set_nt_native_path): New function. * path.h (path_conv::set_nt_native_path): Add prototype. * syscall.cc (try_to_bin): Handle moving files to the recycler accessed via a local virtual drive (subst). Fix a problem renaming the file to the unique replacement name on Samba. Align comment. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix closing too many handles in pty fchown/fchmodCorinna Vinschen2015-04-232-3/+5
| | | | | | | * fhandler_tty.cc (fhandler_pty_slave::fch_close_handles): Don't close handles not opened via fhandler_pty_slave::fch_open_handles. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix OPOST for non-Cygwin pty slavesTakashi Yano2015-04-235-19/+178
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fhandler.h (class fhandler_base): Add virtual function get_io_handle_cyg() to get handle from which OPOST-processed output is read on PTY master. (class fhandler_pty_slave): Add variable output_handle_cyg to store a handle to which OPOST-processed output is written. Add two functions, i.e., set_output_handle_cyg() and get_output_handle_cyg(), regarding variable output_handle_cyg. Now, output_handle is used only by native windows program. The data before OPOST-processing is written to output_handle and OPOST-processing is applied in the master-side. For a cygwin process, OPOST-processing is applied in the slave-side, and the data after OPOST-processing is written to output_handle_cyg. (class fhandler_pty_master): Add two variables, i.e., io_handle_cyg and to_master_cyg, to store handles of a pipe through which OPOST-processed output passes. Add pty_master_fwd_thread and function pty_master_fwd_thread() for a thread which applies OPOST-processing and forwards data from io_handle to to_master_cyg. Add function get_io_handle_cyg() regarding variable io_handle_cyg. Now, the pipe between io_handle and to_master are used only by native windows program for applying OPOST-processing in the master-side. For a cygwin process, the pipe between io_handle_cyg and to_master_cyg is used for passing through the data which is applied OPOST-processing in the slave-side. * fhandler_tty.cc (struct pipe_reply): Add member to_master_cyg. (fhandler_pty_master::process_slave_output): Read slave output from io_handle_cyg rather than io_handle. (fhandler_pty_slave::fhandler_pty_salve): Initialize output_handle_cyg. (fhandler_pty_slave::open): Set output_handle_cyg by duplicating handle to_master_cyg on PTY master. (fhandler_pty_slave::close): Close handle output_handle_cyg. (fhandler_pty_slave::write): Write data to output_handle_cyg rather than output_handle. (fhandler_pty_slave::fch_close_handles): Close handle output_handle_cyg. (fhandler_pty_master::fhandler_pty_master): Initialize io_handle_cyg, to_master_cyg and master_fwd_thread. (fhandler_pty_master::cleanup): Clean up to_master_cyg as well. (fhandler_pty_master::close): Print to_master_cyg as well in debug message. Terminate master forwarding thread. Close handles to_master_cyg and io_handle_cyg. (fhandler_pty_master::ioctl): Use io_handle_cyg rather than to_master. (fhandler_pty_master::pty_master_thread): Add code for duplicating handle to_master_cyg. (fhandler_pty_master::pty_master_fwd_thread): New function for a thread to forward OPOST-processed data from io_handle to to_master_cyg. This thread applies OPOST-processing to the output of native windows program. (::pty_master_fwd_thread): Ditto. (fhandler_pty_master::setup): Create a new pipe to pass thruegh OPOST- processed output. Create new thread to forward data from io_handle to to_master_cyg. Set handle to_master_cyg to tty. Print io_handle_cyg as well in debug message. Close handles io_handle_cyg and to_master_cyg in case of error. (fhandler_pty_master::fixup_after_fork): Set handle to_master_cyg to tty. Copy handle to_master_cyg from arch->to_master_cyg. (fhandler_pty_master::fixup_after_exec): Clean up to_master_cyg. * select.cc: Check handle returned by get_io_handle_cyg() rather than get_handle(). * tty.h (class tty): Add variable _to_master_cyg to store a handle to which OPOST-processed data is written. Add two functions, to_master_cyg() and set_to_master_cyg(), regarding _to_master_cyg. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Undef basename before defining function.Corinna Vinschen2015-04-232-0/+7
| | | | | | | * path.cc (basename): Undefine basename before defining function to avoid type collision with prototype in string.h. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix basename prototype collision string.h vs libgen.hCorinna Vinschen2015-04-233-12/+34
| | | | | | | | | | * libc/include/libgen.h (basename): Drop defining _BASENAME_DEFINED. Always define macro basename. Add comment to explain why. * libc/include/string.h (basename): Check for basename instead of _BASENAME_DEFINED. Drop __GNUC__ branch, always use basename macro. Change comment to explain why. Add nonnull function attribute. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* libgloss: mcore: add custom syscall headerMike Frysinger2015-04-232-0/+47
| | | | | The mcore simulator has a unique set of syscall numbers. Add a header that matches reality since the common one doesn't.
* libgloss: arm: fix copy & paste in syscall.hMike Frysinger2015-04-232-3/+7
| | | | | | This header was clearly copied from the common syscall.h and customized, but the header comment is no longer accurate -- this isn't the general file anymore.
* Remove Cygwin's libgen.hCorinna Vinschen2015-04-232-23/+4
| | | | | | * include/libgen.h: Remove in favor of newlib version. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Asia/Calcutta -> Asia/Kolkata (not on unicode.org)Corinna Vinschen2015-04-233-4/+13
| | | | | | | * tzmap-from-unicode.org: Convert Calcutta to Kolkata. * tzmap.h: Regenerate. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix inconsistencies in docs regarding fstab and executable file detectionDavid Macek2015-04-231-7/+6
| | | | | | | | | | | | | The inline list of mount options seemed redundant, so the paragraph now points to the list below it. List of executable extensions updated according to fhandler_disk_file.cc. List of executable magic numbers updated according to path.h (has_exec_chars). * pathnames.xml: Fix inconsistencies in docs regarding fstab and executable file detection Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix broken SID in passwd/group entry for unkown accountCorinna Vinschen2015-04-232-1/+6
| | | | | | | * uinfo.cc (pwdgrp::fetch_account_from_windows): Always revert SID subauth count after checking for known domain. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix broken PSID problem on cygheap in account handlingCorinna Vinschen2015-04-234-4/+20
| | | | | | | | | | * pwdgrp.h: Add comment to explain below change. (struct pg_pwd): Convert sid member to BYTE array. (struct pg_grp): Ditto. * grp.cc (pwdgrp::parse_group): Accommodate above change. * passwd.cc (pwdgrp::parse_passwd): Ditto. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Don't rely on size argument in shmget callCorinna Vinschen2015-04-233-1/+17
| | | | | | | | * shm.cc (shmget): Fetch segment size from server rather than using size argument to accommodate existing segments. Add comment to explain why. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Bump Cygwin version to 2.0.0.Corinna Vinschen2015-04-235-3/+13
| | | | | | | | | | * include/cygwin/version.h (CYGWIN_VERSION_DLL_MAJOR): Bump to 2000. (CYGWIN_VERSION_DLL_MINOR): Set to 0. * new-features.xml (ov-new2.0): Rename from ov-new1.7.36 and change version number to 2.0. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Set mcontext.cr2 to the faulting addressJon TURNEY2015-04-232-0/+9
| | | | | | | * exceptions.cc (call_signal_handler): Set mcontext.cr2 to the faulting address. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Only construct ucontext for SA_SIGINFO signal handlersJon TURNEY2015-04-232-22/+38
| | | | | | | | * exceptions.cc (call_signal_handler): Only bother to construct the ucontext for signal handlers with SA_SIGINFO set. Set mcontext.oldmask. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Initialize context before RtlContextCaptureJon TURNEY2015-04-232-2/+11
| | | | | | | * exceptions.cc (call_signal_handler): Zero initialize context and set context flags, as RlCaptureContext doesn't. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Call open_null to open fake handleCorinna Vinschen2015-04-232-2/+6
| | | | | | * fhandler_dsp.cc (fhandler_dev_dsp::open): Call open_null. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* For the RX port, avoid using string instructions when ↵Nick Clifton2015-04-2316-0/+272
| | | | | | | | | | | | | | | | | | | __RX_DISALLOW_STRING_INSNS__ is defined. * rx/crt0.S (_start): If string instructions are not allowed, avoid using SMOVF. * libc/machine/rx/memchr.S: Add non-string insn using version. * libc/machine/rx/memcpy.S: Likewise. * libc/machine/rx/memmove.S: Likewise. * libc/machine/rx/mempcpy.S: Likewise. * libc/machine/rx/strcat.S: Likewise. * libc/machine/rx/strcmp.S: Likewise. * libc/machine/rx/strcpy.S: Likewise. * libc/machine/rx/strlen.S: Likewise. * libc/machine/rx/strncat.S: Likewise. * libc/machine/rx/strncmp.S: Likewise. * libc/machine/rx/strncpy.S: Likewise.
* Add .note and DWARF3 sections to RX linker scripts.Nick Clifton2015-04-233-0/+17
| | | | | * rx/rx.ld: Add .note and DWARF3 sections. * rx/rx-sim.ld: Likewise.
* Introduce sidfromuid and sidfromgidCorinna Vinschen2015-04-234-14/+30
| | | | | | | | | * pwdgrp.h (sidfromuid): New inline function. (sidfromgid): Ditto. * fhandler_disk_file.cc (fhandler_disk_file::fchown): Use sidfromuid. * quotactl.cc (quotactl): Use sidfromuid and sidfromgid. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Remove __acl16 from official headerCorinna Vinschen2015-04-233-10/+11
| | | | | | | * include/cyggwin/acl.h (struct __acl16): Move from here... * sec_acl.cc: ...to here. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Always include the .csstart section in RL78 executables.Nick Clifton2015-04-233-2/+7
| | | | | * rl78/rl78.ld (.csstart): Add a KEEP directive. * rl78/rl78-sim.ld (.csstart): Add a KEEP directive.
* Remove unused 32/64 bit tty codeCorinna Vinschen2015-04-232-18/+8
| | | | | | | * tty.h (class tty): Remove unused 32/64 bit interoperability considerations. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Raise # of ptys to 128.Corinna Vinschen2015-04-235-3154/+6324
| | | | | | | | * tty.h (NTTYS): Raise to 128. * devices.in: Change pty, ptym, and cons expressions accordingly. * devices.cc: Regenerate. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Compile exceptions.cc with -fno-omit-frame-pointer on x86Jon TURNEY2015-04-232-52/+13
| | | | | | | | | | | | | | Selectively using -fomit-frame-pointer when -O is used doesn't make sense anymore, apparently since gcc 4.6, -O implies -fomit-frame-pointer. exceptions.cc must be compiled with -fno-omit-frame-pointer on x86, as it uses RtlCaptureContext, which requires a frame pointer. * Makefile.in : Remove setting -fomit-frame-pointer for compiling various files, it is already the default. Set -fno-omit-frame-pointer for exceptions.cc on x86. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Cygwin hangs up if several keys are typed during outputting a lot of texts.Takashi Yano2015-04-232-1/+6
| | | | | | | * fhandler_tty.cc (fhandler_pty_slave::read): Change calculation of "readlen" not to use "bytes_in_pipe" value directly. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Add FAQ entry on how Cygwin counters install and update MITM attacksDavid A. Wheeler2015-04-232-1/+127
| | | | | | | | | * faq-setup.xml: Document how Cygwin secures installation and update against man-in-the-middle (MITM) attacks. Note that setup embeds a public key to check the signature of setup.ini, and that setup.ini includes SHA-512 cryptographic hashes. Signed-off-by: David A. Wheeler <dwheeler@dwheeler.com>
* Try to make sure struct _mcontext is 16-byte alignedJon TURNEY2015-04-233-3/+8
| | | | | | | | | | | | | | | | | | On x86_64, RtlCaptureContext() uses fxsave to save FPU/MMX/SSE state. fxsave requires that the destination address is 16-byte aligned, or it will fault. CONTEXT is already annotated __attribute__ ((aligned (16))), do the same with struct _mcontext. Rearrange ucontext_t so that it's struct _mcontext element is also correctly aligned. * include/cygwin/signal.h (struct __mcontext): 16-byte align. * include/sys/ucontext.h (ucontext_t): Ditto. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Add parens around MIN/MAX values in stdint.h.Corinna Vinschen2015-04-232-71/+75
| | | | | | * libc/include/stdint.h: Throughout add parens around MIN/MAX values. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Drop local stdint.h and inttypes.h in favor of newlib filesCorinna Vinschen2015-04-234-544/+7
| | | | | | | | * include/cygwin/types.h: Include sys/_stdint.h rather than stdint.h. * include/stdint.h: Drop in favor of newlib version. * include/inttypes.h: Ditto. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Add <sys/_stdint.h> for FreeBSD compatibilitySebastian Huber2015-04-236-46/+87
| | | | | | | | | | | | | | | | | | | | * libc/include/sys/_stdint.h: New file. * libc/include/stdint.h (int8_t): Move to <sys/_stdint.h>. (uint8_t): Likewise. (int16_t): Likewise. (uint16_t): Likewise. (int32_t): Likewise. (uint32_t): Likewise. (int64_t): Likewise. (uint64_t): Likewise. (intptr_t): Likewise. (uintptr_t): Likewise. * libc/include/sys/types.h: Include <sys/_stdint.h>. * libc/sys/rtems/machine/_types.h: Remove <stdint.h> include. * libc/sys/time.h>: Replace __uint32_t with uint32_t and __uint64_t with uint64_t. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Provide ucontext to signal handlersJon TURNEY2015-04-234-2/+70
| | | | | | | | | | | | | | Add ucontext.h header, defining ucontext_t and mcontext_t types. Provide sigaction sighandlers with a ucontext_t parameter, containing stack and context information. * include/sys/ucontext.h : New header. * include/ucontext.h : Ditto. * exceptions.cc (call_signal_handler): Provide ucontext_t parameter to signal handler function. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Make stack_t typedef generally availableJon TURNEY2015-04-232-9/+14
| | | | | | | * libc/include/sys/signal.h (stack_t): Make typedef generally available. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Add cygwin_internal() operation to retrieve the EXCEPTION_RECORD from a ↵Jon TURNEY2015-04-234-1/+26
| | | | | | | | | | | siginfo_t * * external.cc (cygwin_internal): Add operation to retrieve a copy of the EXCEPTION_RECORD from a siginfo_t *. * include/sys/cygwin.h (cygwin_getinfo_types): Ditto. * exception.h (cygwin_exception): Add exception_record accessor. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Rename struct ucontext to struct __mcontextJon TURNEY2015-04-232-9/+26
| | | | | | | | | * include/cygwin/signal.h : Rename struct ucontext to struct __mcontext. Fix layout differences from the Win32 API CONTEXT type. Remove unused member _internal. Rename member which corresponds to ContextFlags. Add cr2 member. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Fix UTF-16 surrogate handling in wctomb and friends.Corinna Vinschen2015-04-233-1/+9
| | | | | | | * libc/stdlib/wctomb_r.c (__utf8_wctomb): Fix check for handling a lone high surrogate. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Avoid potential crash at startup or in getgroups(2).Corinna Vinschen2015-04-233-1/+13
| | | | | | | * grp.cc (internal_getgroups): Handle negative domain index to avoid crashes. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>