Commit Graph

12947 Commits

Author SHA1 Message Date
Christopher Faylor 8d07b1aa2b * autoload.cc (std_dll_init): Move dll_path closer to its use. Use dll_path in
fatal error.  Set ret values under lock control.
* lib/minires.c (res_nsend): Fix compilation errors owing to pointer
signedness.
2010-09-24 19:53:18 +00:00
Corinna Vinschen 7438a10a01 * fhandler.cc (fhandler_base::open): Handle query_write_dac flag.
* fhandler.h (enum query_state): Add query_write_dac flag.
	* fhandler_disk_file.cc (fhandler_disk_file::fchmod): Open file
	with query_write_dac instead of query_write_control.
2010-09-24 16:22:53 +00:00
Corinna Vinschen 3498f76deb * errno.cc (errmap): Map ERROR_BAD_NET_RESP to ENOSYS.
* fhandler_disk_file.cc (fhandler_disk_file::facl): Handle ENOSYS and
	point to  the explanation.
	* ntdll.h (STATUS_NOT_IMPLEMENTED): Define.
	* path.cc (symlink_info::check): Handle the inability of NT4 to use
	FileNetworkOpenInformation on share root dirs in either direction.
	* path.h (slash_unc_prefix_p): Remove unused declaration.
	* security.cc (get_info_from_sd): Handle ENOSYS from get_file_sd.
	Explain when this happens.
2010-09-24 12:41:33 +00:00
Christopher Faylor b375557956 * autoload.cc (std_dll_init): Use correct format type when displaying dll name
in error output.
2010-09-23 20:18:16 +00:00
Matthew Gretton-Dann 2b35bca98a * bfd/bfd-in2.h (BFD_RELOC_ARM_HVC): New enum value.
* gas/config/tc-arm.c (arm_ext_virt): New variable.
	(arm_reg_type): Add REG_TYPE_RNB for banked registers.
	(reg_entry): Allow registers to be larger than a byte.
	(reg_alias): Fix type warning.
	(parse_operands): Parse banked registers when appropriate.
	(do_mrs): Add support for Virtualization Extensions.
	(do_hvc): New function.
	(do_t_mrs): Add support for Virtualization Extensions.
	(do_t_msr): Likewise.
	(do_t_hvc): New function.
	(SPLRBANK): New define.
	(reg_names): Add banked registers.
	(insns): Add support for Virtualization Extensions.
	(md_apply_fixup): Likewise.
	(arm_cpus): -mcpu=cortex-a15 implies the Virtualization Extensions.
	(arm_extensions): Add 'virt' extension.
	(aeabi_set_public_attributes): Add support for Virtualization
	Extensions.
	* gas/doc/c-arm.texi: Document 'virt' extension.
	* gas/testsuite/gas/arm/armv7-a+virt.d: New test.
	* gas/testsuite/gas/arm/armv7-a+virt.s: Likewise.
	* gas/testsuite/gas/arm/attr-march-all.d: Update for Virtualization Extensions.
	* gas/testsuite/gas/arm/attr-march-armv7-a+sec+virt.d: New test.
	* gas/testsuite/gas/arm/attr-march-armv7-a+virt.d: Likewise.
	* include/opcode/arm.h (ARM_EXT_VIRT): New define.
	(ARM_ARCH_V7A_IDIV_MP_SEC): Rename...
	(ARM_ARCH_V7A_IDIV_MP_SEC_VIRT): ...to this and include Virtualization
	Extensions.
	* opcodes/arm-dis.c (arm_opcodes): Add Virtualiztion Extensions support.
	(thumb32_opcodes): Likewise.
	(banked_regname): New function.
	(print_insn_arm): Add Virtualization Extensions support.
	(print_insn_thumb32): Likewise.
2010-09-23 15:52:19 +00:00
Matthew Gretton-Dann fa4115fd6e * gas/config/tc-arm.c (arm_ext_adiv): New variable.
(do_div): New function.
	(insns): Accept UDIV and SDIV in ARM state.
	(arm_cpus): The cortex-a15 option has all current v7-A extensions.
	(arm_extensions): Add 'idiv' extension.
	(aeabi_set_public_attributes): Update Tag_DIV_use values for the
	Integer Divide extension.
	* gas/doc/c-arm.texi: Document the idiv extension.
	* gas/testsuite/gas/arm/armv7-a+idiv.d: New test.
	* gas/testsuite/gas/arm/armv7-a+idiv.s: Likewise.
	* gas/testsuite/gas/arm/attr-march-all.d: Update for Integer divide extension.
	* gas/testsuite/gas/arm/attr-march-armv7-a+idiv.d: New test.
	* include/opcode/arm.h (ARM_AEXT_ADIV): New define.
	(ARM_ARCH_V7A_IDIV_MP_SEC): Likewise.
	* opcodes/arm-dis.c (arm_opcodes): Support disassembly of UDIV and SDIV in
	ARM state.
2010-09-23 15:37:45 +00:00
Matthew Gretton-Dann 76be61ea8a * config/tc-arm.c (arm_ext_v6m): New variable.
(arm_ext_m): Add support for OS extension.
	(arm_ext_os): New variable.
	(do_t_swi): In v6-M ensure we have the OS extension.
	(arm_cpus): The cortex-m1 and cortex-m0 options have the OS
	extension by default.
	(arm_archs): Add armv6s-m.
	(arm_extensions): Add 'os' extension.
	(cpu_arch_ver): Add support for v6S-M.
	* gas/doc/c-arm.texi: Document the OS Extension, and v6-m and v6s-m
	architecture options.
	* gas/testsuite/gas/arm/archv6s-m-bad.d: New test.
	* gas/testsuite/gas/arm/archv6s-m-bad.l: Likewise.
	* gas/testsuite/gas/arm/archv6s-m.d: Likewise.
	* gas/testsuite/gas/arm/archv6s-m.s: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6-m+os.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6s-m.d: Likewise.
	* include/opcode/arm.h (ARM_EXT_OS): New define.
	(ARM_AEXT_V6SM): Likewise.
	(ARM_ARCH_V6SM): Likewise.
2010-09-23 15:31:34 +00:00
Matthew Gretton-Dann da9aacd71c * gas/config/tc-arm.c (arm_ext_v6z): Remove.
(arm_ext_sec): New variable.
	(do_t_smc): In Thumb state SMC requires v7-A.
	(insns): Make SMC depend on Security Extensions.
	(arm_cpus): All -mcpu=cortex-a* options have the Security Extensions.
	(arm_extensions): Add 'sec' extension.
	(cpu_arch_ver): Reorder.
	(aeabi_set_public_attributes): Emit Tag_Virtualization_use as
	appropriate.
	* gas/doc/c-arm.texi: Document Security Extensions.
	* gas/testsuite/gas/arm/attr-march-all.d: Update for Security Extensions..
	* gas/testsuite/gas/arm/attr-march-armv6k+sec.d: New test.
	* gas/testsuite/gas/arm/attr-march-armv6z.d: Update for Security Extensions.
	* gas/testsuite/gas/arm/attr-march-armv6zk.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6zkt2.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6zt2.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv7-a+sec.d: New test.
	* gas/testsuite/gas/arm/attr-mcpu.d: Update for Security Extensions.
	* gas/testsuite/gas/arm/thumb32.d: Likewise.
	* gas/testsuite/gas/arm/thumb32.s: Likewise.
	* include/opcode/arm.h (ARM_EXT_V6Z): Remove.
	(ARM_EXT_SEC): New define.
	(ARM_AEXT_V6Z): Use Security Extensions.
	(ARM_AEXT_V6ZK): Likeiwse.
	(ARM_AEXT_V6ZT2): Likewise.
	(ARM_AEXT_V6ZKT2): Likewise.
	(ARM_AEXT_V7_ARM): Base v7 does not have Security Extensions.
	(ARM_ARCH_V7A_SEC): New define.
	(ARM_ARCH_V7A_MP): Rename...
	(ARM_ARCH_V7A_MP_SEC): ...to this and add Security Extensions.
	* ld/testsuite/ld-arm/attr-merge-6.attr: Update for Security Extensions.
	* ld/testsuite/ld-arm/attr-merge-7.attr: Likewise.
	* opcodes/arm-dis.c (arm_opcodes): SMC implies Security Extensions.
	(thumb32_opcodes): Likewise.
2010-09-23 15:26:23 +00:00
Matthew Gretton-Dann 33bb162ac7 * gas/config/tc-arm.c (arm_ext_mp): Add.
(do_pld): Update comment.
	(insns): Add support for pldw.
	(arm_cpus): Update cortex-a5, cortex-a9, and cortex-a15 to support
	MP extension.
	(arm_extensions): Add 'mp' extension.
	(aeabi_set_public_attributes): Emit correct build attribute when
	MP extension is enabled.
	* gas/doc/c-arm.texi: Update for MP extensions.
	* gas/testsuite/gas/arm/arch7a-mp.d: Add.
	* gas/testsuite/gas/arm/arch7ar-mp.s: Likewise.
	* gas/testsuite/gas/arm/arch7r-mp.d: Likewise.
	* gas/testsuite/gas/arm/armv2-mp-bad.d: Likewise.
	* gas/testsuite/gas/arm/armv2-mp-bad.l: Likewise.
	* gas/testsuite/gas/arm/attr-march-all.d: Update for MP extension.
	* gas/testsuite/gas/arm/attr-march-armv7-a+mp.d: Add.
	* gas/testsuite/gas/arm/attr-march-armv7-r+mp.d: Likewise.
	* include/opcode/arm.h (ARM_EXT_MP): Add.
	(ARM_ARCH_V7A_MP): Likewise.
	* opcodes/arm-dis.c (arm_opcodes): Add support for pldw.
	(thumb32_opcodes): Likewise.
2010-09-23 15:18:18 +00:00
Corinna Vinschen 4996145486 * doc/porting.texi: Fix typos. 2010-09-23 08:07:47 +00:00
Michael Frysinger 631c8d784b libgloss: add Blackfin to the README 2010-09-22 22:45:07 +00:00
Michael Frysinger d3e228722e opcodes/gas: blackfin: support OUTC debug insn
The disassembler has partial (but incomplete/broken) support already for
the pseudo debug insn OUTC, so let's fix it up and finish it.  And now
that the disassembler can handle it, make sure our assembler can output
it too.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-09-22 20:59:00 +00:00
Jeff Johnston 60376287eb 2010-09-21 Craig Howland <howland@LGSInnovations.com>
* libc/string/memcpy.c: Do not assign size_t parameter to int.
        Use parameter directly, instead.
        * libc/string/memccpy.c:  Likewise.
        * libc/string/mempcpy.c:  Likewise.
        * libc/string/memmove.c:  Likewise.
2010-09-22 03:15:07 +00:00
Pierre Humblet 5c22068f7f 2010-09-21 Pierre Humblet <Pierre.Humblet@ieee.org>
* libc/minires.c (res_nsend): Use the Windows resolver if appropriate.
        (dn_expand): Only set errno in case of error. Delete old comments.
        (dn_skipname): Fix typo in comment.
2010-09-21 21:41:31 +00:00
Corinna Vinschen b53c1929e5 * path.cc (cwdstuff::set): Replace constant 2 with sizeof(WCHAR) where
appropriate.
2010-09-21 16:41:17 +00:00
Corinna Vinschen 4c9d01fdad * mount.h (class fs_info): Add has_buggy_reopen flag and accessor
methods.
	* mount.cc (fs_info::update): Set has_buggy_reopen flag for NWFS.
	Add comment.
	* path.h (path_conv::get_object_attr) Make inline method.
	(path_conv::init_reopen_attr): New inline method.
	* path.cc (path_conv::get_object_attr): Remove.
	* fhandler_disk_file.cc (fhandler_base::fstat_helper): Use
	path_conv::init_reopen_attr method to initialize OBJECT_ATTRIBUTE for
	reopening file.
	(fhandler_disk_file::fchmod): Ditto.
	(fhandler_base::utimens_fs): Ditto.
	(fhandler_disk_file::rewinddir): Ditto.
	* syscalls.cc (unlink_nt): Ditto.
2010-09-21 16:32:22 +00:00
Corinna Vinschen 7ba1698ed9 * fhandler.cc (fhandler_base::open): Always open NFS files with
FILE_READ_EA, even when opening with O_WRONLY to allow fstat.
	* fhandler_disk_file.cc (fhandler_base::fstat_by_nfs_ea): Call
	FlushFileBuffers if file has been opened for writing.  Explain why.
	(fhandler_base::fstat_by_handle): Renew content of pc.fnoi if called
	via fstat.  Explain why.  Fix formatting.
	* path.cc (symlink_info::check): Try to open file the second time with
	FILE_READ_EA permissions since it's needed in later calls to
	fhandler_base::fstat_by_nfs_ea.
2010-09-21 16:07:20 +00:00
Michael Frysinger 6fb0ddfe34 opcodes: blackfin: strip trailing whitespace 2010-09-21 06:04:21 +00:00
Christopher Faylor df4d2bea3d * include/sys/cygwin.h (PID_NOTCYGWIN): New enum.
* spawn.cc (spawn_guts): Set a flag when a process is not a cygwin process.
* fhandler_tty.cc (fhandler_tty_slave::init): Remove previous change.  Try a
different method to determine when we should become the process group owner.
* signal.cc (kill0): Remove archaic code which dealt with never-set flag.
2010-09-20 22:28:57 +00:00
Christopher Faylor 73b6b43ed3 * fhandler_tty.cc (fhandler_tty_slave::init): Add additional checks to
determine when a process should grab control of a tty's pgid.  Use
being_debugged() for consistency.
* debug.h (being_debugged): Remove vestige of win9x accommodation.
2010-09-20 20:25:50 +00:00
Christopher Faylor b64733135a * wincap.h (wincaps::has_buggy_thread_startup): Declare.
(wincapc::has_buggy_thread_startup): Ditto.
* wincap.cc::wincap_*): Accommodate has_buggy_thread_startup.
(wincapc::init): Explicitly turn off has_buggy_thread_startup if not WOW64.
* cygthread.h (cygthread::thread_handle): Declare/define new method.
* dcrt0.cc (_dll_crt0): Don't call __sinit here.
(dll_crt0_0): Don't call sigproc_init during initialization if
wincap.has_buggy_thread_startup().
(dll_crt0_1): Defer sigproc_init to here when
wincap.has_buggy_thread_startup().  Call __sinit after we've determined that
we're not forking.
(__main): Rework comments.  Add potential future reminder.
2010-09-19 20:18:36 +00:00
Christopher Faylor 392397f46c * overview2.sgml: Remove cheerful paragraph which implied that it was ok to
casually mix Windows and POSIX.  Add more words about mixing POSIX/Windows.
2010-09-18 15:58:46 +00:00
Corinna Vinschen 6ce9ff387c * setup2.sgml (setup-locale-how): Fix typo. 2010-09-18 11:29:06 +00:00
Corinna Vinschen 421ff3ff77 * fhandler_disk_file.cc (fhandler_base::fstat_by_handle): Fetch number
of links and inode number only if path has good inodes.
	(fhandler_base::fstat_by_name): Fetch inode number only if path has
	good inodes.
2010-09-15 11:26:10 +00:00
Kevin Buettner f859880a5b Fix typo in my most recent ChangeLog entry. Regenerated file is
Makefile.in, not Makefile.
2010-09-14 17:09:41 +00:00
Corinna Vinschen 1df35772d6 * path.cc (symlink_info::check): Make sure AllocationSize and EndOfFile
are stored in the right order when fetching the info from the
	NtQueryDirectoryFile result.
2010-09-14 14:10:39 +00:00
Corinna Vinschen 27e79675f8 * fhandler_process.cc (get_mem_values): Simplify code. Fix
NtQueryVirtualMemory loop so it handles memory allocation gracefully.
	Always set errno to a useful value.
2010-09-13 13:02:19 +00:00
Corinna Vinschen c80480bfa0 * fhandler.h (class fhandler_base): Change inheritance of fstat_helper
and fstat_by_...  methods to private.
	(fhandler_base::fstat_helper): Drop all redundant arguments.
	* fhandler_disk_file.cc (fhandler_base::fstat_by_handle): Drop call
	to fstat_by_nfs_ea here.  Drop fetching basic file information.
	Drop setting file attributes.  Accommodate change in fstat_helper call.
	(fhandler_base::fstat_by_name): Simplify.  Only fetch directory
	information to get the inode number.  Drop setting file attributes.
	Accommodate change in fstat_helper call.
	(fhandler_base::fstat_fs): Call fstat_by_nfs_ea if on NFS.
	(fhandler_base::fstat_helper): Drop all redundant arguments.  Use
	information already collected in the fhandler.  Move heading comment
	into code and drop dwFileAttributes comment.
	* mmap.cc (mmap64): Call fstat_fs rather than fstat_by_handle.
	* mount.cc (fs_info::update): Note that has_buggy_basic_info is unused.
	* path.cc (symlink_info::check_reparse_point): Add comment.
	(symlink_info::check): Fetch FileNetworkOpenInformation rather than
	FileBasicInformation throughout, except on NFS.  Explain why.  Store
	FILE_NETWORK_OPEN_INFORMATION in conv_hdl.  Remove
	FILE_ATTRIBUTE_DIRECTORY attribute in conv_hdl for reparse point
	symlinks.
	* path.h (class path_conv_handle): Add FILE_NETWORK_OPEN_INFORMATION
	member _fnoi.
	(path_conv_handle::fnoi): New accessor method for _fnoi.
	(path_conv::fnoi): New accessor method for cubv_hdl._fnoi.

	* fhandler_tty.cc (fhandler_tty_slave::init): Use tty::setpgid method.
2010-09-13 11:17:36 +00:00
Corinna Vinschen f7382efe27 * sec_acl.cc (acl_worker): Remove.
(acl32): Implement acl_worker functionality here.
	(lacl32): Just return -1 with errno set to ENOSYS.
	(lacl): Ditto.
	* include/cygwin/acl.h (lacl): Remove this call.
2010-09-12 19:43:55 +00:00
Christopher Faylor 11fef78748 * sigproc.cc (sig_dispatch_pending): Remove debugging statement.
(sigproc_init): Wrap a long line.
2010-09-12 19:13:09 +00:00
Christopher Faylor 6c6eb02b33 * cygthread.h (cygthread::cygthread): Reorganize slightly.
* dcrt0.cc (dll_crt0_0): Move sigproc initialization later to ensure everything
we need has been set up.
(dll_crt0_1): Streamline some logic slightly.
* sigproc.cc (no_signals_available): Add back dropped test for macro parameter.
* fhandler_console.cc (fhandler_console::write): Show a little bit of what's
being written to the console in debugging output.
2010-09-12 15:49:30 +00:00
Corinna Vinschen 18df393573 * syscalls.cc (start_transaction): Make inline function. Move up to be
more generally available.
	(stop_transaction): Ditto.
	(unlink_nt): Potentially start transaction when trying to delete file
	with DOS R/O attribute set.  If file is .lnk symlink, check for number
	of hardlinks.  Add "out" label and only return via "out".  Rearrange
	reversion of DOS R/O attribute and, on success, only revert R/O
	attribute if file is .lnk symlink with more than one hardlink.  Add
	length comment to explain why.
2010-09-12 11:41:56 +00:00
Dave Korn 2981e56e29 * new-features.sgml: Mention fenv support. 2010-09-11 11:42:15 +00:00
Corinna Vinschen 99544f92a0 * fhandler_disk_file.cc (fhandler_disk_file::rmdir): More thoroughly
check the existence condition on remote drives.  Enhance comment.
2010-09-11 10:58:42 +00:00
Dave Korn 0f81b5d4bc winsup/cygwin/ChangeLog:
* Makefile.in (DLL_OFILES): Add new fenv.o module.
	(fenv_CFLAGS): New flags definition for fenv.o compile.
	* autoload.cc (std_dll_init): Use fenv.h functions instead of direct
	manipulation of x87 FPU registers.
	* crt0.c (mainCRTStartup): Likewise.
	* cygwin.din (feclearexcept, fegetexceptflag, feraiseexcept,
	fesetexceptflag, fetestexcept, fegetround, fesetround, fegetenv,
	feholdexcept, fesetenv, feupdateenv, fegetprec, fesetprec,
	feenableexcept, fedisableexcept, fegetexcept, _feinitialise,
	_fe_dfl_env, _fe_nomask_env): Export new functions and data items.
	* fenv.cc: New file.
	* posix.sgml: Update status of newly-implemented APIs.
	* include/fenv.h: Likewise related header.
	* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
2010-09-11 06:53:28 +00:00
Corinna Vinschen f7dea7f233 * syscalls.cc (rename): Limit retry loop in case of sharing violation
to about a second.
2010-09-10 19:55:26 +00:00
Corinna Vinschen 396561aa0b * syscalls.cc (fstatat): Call stat_worker directly from here. 2010-09-10 18:51:44 +00:00
Corinna Vinschen 4e8f539f15 * flock.cc (allow_others_to_sync): Define MAX_PROCESS_SD_SIZE. Use
instead of ACL_DEFAULT_SIZE.
	* sec_acl.cc (setacl): Use TLS buffer to allow maximum ACL size.
	* security.h (ACL_DEFAULT_SIZE): Drop definition.
	(ACL_MAXIMUM_SIZE): Define.
	(SD_MAXIMUM_SIZE): Define.
	* security.cc (get_file_sd): Allocate security_decscriptor with size
	SD_MAXIMUM_SIZE.
	(alloc_sd): Use TLS buffer to allow maximum ACL size.
2010-09-10 14:53:44 +00:00
Corinna Vinschen f65c5a0a2b * mount.cc (class fs_info_cache): New class to cache filesystem
information.
	(fs_info::update): Check FileFsVolumeInformation against filesystem
	cache and use it, if filesystem is already available.  Add filesystem
	to cache, if not.  Only request FileFsObjectIdInformation if
	FILE_SUPPORTS_OBJECT_IDS is set in filesystem flags.
	* ntdll.h (struct _FILE_FS_VOLUME_INFORMATION): Add pragma pack so the
	structure size is matching the OS expectations.  Add __dummy member
	used in filesystem cache.
2010-09-10 10:04:28 +00:00
Corinna Vinschen 67a9307898 * security.cc (get_file_sd): Add bool parameter justcreated. Use
GetSecurityInfo only if justcreated is true, NtQuerySecurityObject
	otherwise.  Add comment to explain why.  Don't waste time to call
	NtQuerySecurityObject twice, just allocate big enough area.
	(get_file_attribute): Call get_file_sd with justcreated set to false.
	(set_file_attribute): Call get_file_sd with justcreated depending on
	S_JUSTCREATED pseudo file attribute.
	(check_file_access): Call get_file_sd with justcreated set to false.
	* sec_acl.cc (setacl): Ditto.
	(getacl): Ditto.
	* security.h: Convert many functions to regparm functions.
	(get_file_sd): Declare with extra bool parameter.
2010-09-10 09:32:13 +00:00
Corinna Vinschen 28e19bafa0 * fhandler_procsys.cc (fhandler_procsys::exists): Rearrange to handle
dangling symlinks correctly.  Fix comments.
	(fhandler_procsys::fill_filebuf): Remove useless comment.
2010-09-10 08:06:02 +00:00
Kevin Buettner b88e4203a9 * libc/sys/sysnecv850/Makefile.am (lib_a_SOURCES): Provide an
empty definition.
	* libc/sys/sysnecv850/Makefile: Regenerate.
2010-09-09 14:54:24 +00:00
Jakub Jelinek 59808b22d2 * dwarf.h (debug_info): Add offset_info and dwarf_version fields.
* dwarf.c (decode_location_expression): Add offset_size and
	dwarf_version arguments.  Prefix DIE offset with 0x for
	DW_OP_call{2,4,_ref}.  Fix up DW_OP_call_ref operand size,
	complain if in frame info section.  Handle
	DW_OP_GNU_implicit_pointer.
	(read_and_display_attr_value, display_debug_loc,
	display_debug_frames): Adjust decode_location_expression callers.
	(process_debug_info): Save offset_size and dwarf_version values
	into debug_information array.

	* dwarf2.h (DW_OP_GNU_implicit_pointer): New.
2010-09-09 10:18:12 +00:00
Corinna Vinschen f99de2b3d2 * fhandler_procsys.cc (fhandler_procsys::open): Simplify by just
calling fhandler_base::open.
2010-09-08 09:10:21 +00:00
Christopher Faylor fa3ab15b1c fix two typos 2010-09-07 15:13:14 +00:00
H.J. Lu f965b5b6a3 Sync bootstrap-lto.mk and dfp.m4 with gcc. 2010-09-06 15:46:09 +00:00
Corinna Vinschen 395ef596e0 * new-features.sgml (ov-new1.7.8): Document /proc/sys. 2010-09-06 14:42:30 +00:00
Jan Kratochvil 0d6baa8f58 gdb/
* common/signals.c (ANY): Remove.
	(SET): No longer use ANY.

include/gdb/
	* signals.def: Replace all ANY uses by SET with specific numbers.
	* signals.h (ANY): Remove.
2010-09-06 13:34:03 +00:00
Corinna Vinschen d2cc418e6e * cygpath.cc (RtlEqualUnicodePathPrefix): New helper function.
(HARDDISK_PREFIX): Move.
	(GLOBALROOT_PREFIX): Define.
	(get_device_name): Take GLOBALROOT_PREFIX into account.
	Improve check for path to allow filesystem access via block devices.
	Potentially drop \\.\ prefix if resulting path is a valid DOS
	pathname.
	(do_pathconv): Make sure to drop \\?\ prefix only if path is
	actually a filesystem based path.
	(print_version): Fix copyright.
2010-09-06 09:48:55 +00:00
Corinna Vinschen 43f65cdd7d * Makefile.in (DLL_OFILES): Add fhandler_procsys.o.
* devices.h (enum fh_devices): Add FH_PROCSYS.
	* devices.in (dev_procsys_storage): New device.
	* devices.cc: Regenerate.
	* dtable.cc (build_fh_pc): Add code to allocate fhandler_procsys.
	* fhandler.h (proc_len): Convert to size_t.
	(procsys): Declare.
	(procsys_len): Declare.
	(enum virtual_ftype_t): Move here from fhandler_virtual.h.
	Add members supported by fhandler_procsys.
	(fhandler_virtual::exists): Return virtual_ftype_t.  Change
	in all derived classes.
	(class fhandler_procsys): New class.
	(fhandler_union): Add fhandler_procnet and fhandler_procsys members.
	* fhandler_disk_file.cc (__DIR_mounts::check_missing_mount): Use
	ro_u_proc.
	(fhandler_base::fstat_by_handle): Don't copy attributes if file is an
	NT device.
	(fhandler_base::fstat_by_name): Ditto.
	* fhandler_netdrive.cc (fhandler_netdrive::exists): Return
	virtual_ftype_t.
	* fhandler_proc.cc (proc_tab): Sort alphabetically.  Use _VN macro
	to store length.
	(proc_len): Change to size_t.
	(proc_tab_cmp): New static function.
	(virt_tab_search): New function to search entry in virt_tab_t
	arrays.  Use throughout in /proc and sibling classes instead of
	loop.
	(fhandler_proc::exists): Return virtual_ftype_t.
	* fhandler_process.cc (process_tab): Sort alphabetically.  Use _VN
	macro to store length.
	(fhandler_process::exists): Return virtual_ftype_t.
	(fhandler_process::open): Simplify code.
	* fhandler_procnet.cc (procnet_tab): Sort alphabetically.  Use _VN
	macro to store length.
	(fhandler_procnet::exists): Return virtual_ftype_t.
	(fhandler_procnet::open): Simplify.
	* fhandler_procsys.cc: New file.
	* fhandler_registry.cc (fhandler_registry::exists): Return
	virtual_ftype_t.
	* fhandler_virtual.cc (fhandler_virtual::exists): Ditto.
	* fhandler_virtual.h (enum virtual_ftype_t): Move to fhandler.h.
	(virt_tab_t): Add name_len member.
	(_VN): New macro.
	(virt_tab_search): Declare.
	* mount.cc (mount_info::conv_to_win32_path): Fix comment.  Backslashify
	isprocsys_dev paths.
	* ntdll.h (STATUS_OBJECT_TYPE_MISMATCH): Define
	(STATUS_INSTANCE_NOT_AVAILABLE): Define.
	(STATUS_PIPE_NOT_AVAILABLE): Define.
	(STATUS_INVALID_PIPE_STATE): Define.
	(STATUS_PIPE_BUSY): Define.
	(SYMBOLIC_LINK_QUERY): Define.
	(NtOpenSymbolicLinkObject): Declare.
	(NtQuerySymbolicLinkObject): Declare.
	* path.cc (path_conv::check): Accommodate fact that exists method
	returns virtual_ftype_t now.  Add cases for new virtual_ftype_t
	types.
	(cygwin_conv_path): Add GLOBALROOT prefix to native device paths.
	Make sure to strip \\?\ prefix only for actual filesystem-based
	paths, not for all paths.
	* path.h (isproc_dev): Add FH_PROCSYS.
	(isprocsys_dev): Define.
2010-09-06 09:47:01 +00:00