summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix bug in previous patch.Eric Blake2008-05-282-5/+9
| | | | * libc/machine/i386/memset.S (memset): Mask second arg correctly.
* 2008-05-27 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2008-05-272-1/+6
| | | | | * libc/string/memset.c: Fix documented prototype to remove erroneous const attribute on first parameter.
* 2008-05-26 Eric Blake <ebb9@byu.net>Jeff Johnston2008-05-263-53/+124
| | | | | | | | Optimize the generic and x86 memchr. * libc/string/memchr.c (memchr) [!__OPTIMIZE_SIZE__]: Pre-align pointer so unaligned searches aren't penalized. * libc/machine/i386/memchr.S (memchr) [!__OPTIMIZE_SIZE__]: Word operations are faster than repnz byte searches.
* 2008-05-26 Eric Blake <ebb9@byu.net>Jeff Johnston2008-05-263-43/+85
| | | | | | | | | Optimize the generic and x86 memset. * libc/string/memset.c (memset) [!__OPTIMIZE_SIZE__]: Pre-align pointer so unaligned stores aren't penalized. * libc/machine/i386/memset.S (memset): [!__OPTIMIZE_SIZE__]: Pre-align pointer so unaligned stores aren't penalized. Prefer 8-byte over 4-byte alignment. Reduce register pressure.
* 2008-05-26 Eric Blake <ebb9@byu.net>Jeff Johnston2008-05-263-22/+93
| | | | | | | | Optimize the generic and x86 strlen. * libc/string/strlen.c (strlen) [!__OPTIMIZE_SIZE__]: Pre-align data so unaligned searches aren't penalized. * libc/machine/i386/strlen.S (strlen) [!__OPTIMIZE_SIZE__]: Word operations are faster than repnz byte searches.
* * mount.cc (mount_info::from_fstab): Use proper buffer size.Christopher Faylor2008-05-252-4/+7
|
* * mount.cc (mount_info::init): Revert previous change.Christopher Faylor2008-05-242-4/+9
| | | | | (mount_info::from_fstab): Change system_printf to debug_printf. Just use a local NT_MAX_PATH sized temporary buffer.
* * mount.cc (mount_info::init): Recreate path when trying to read theCorinna Vinschen2008-05-242-2/+9
| | | | user fstab file.
* * path.cc (symlink_info::check): Reorder test for nfs symlinks.Corinna Vinschen2008-05-242-1/+5
|
* * fhandler_disk_file.cc (fhandler_disk_file::opendir): Don't try toCorinna Vinschen2008-05-233-14/+25
| | | | | | | use FileIdBothDirectoryInformation on NFS shares. Fix comment to explain why. * path.cc (symlink_info::check): Reinstantiate no_ea. Use in erroneously changed condition.
* * mount.cc (find_root_from_cygwin_dll): New function factored from from_fstab.Christopher Faylor2008-05-233-50/+74
| | | | | | | | | | | Avoid use of tls since it isn't necessarily initialized when cygwin1.dll is dynamically loaded. (mount_info::create_root_entry): Ditto. (mount_info::init): Calculate cygwin root once. Use create_root_entry to record it. Pass fstab location to from_fstab. (mount_info::from_fstab): Move root calculation stuff elsewhere, as per above. * shared_info.h (mount_info::from_fstab_line): Make private. (mount_info::fstab): Ditto. Accommodate new arguments.
* * mount.cc (mount_info::from_fstab): Use cygwin_hmodule rather than trying toChristopher Faylor2008-05-233-5/+9
| | | | | find handle based on cygwin1.dll. * path.cc (symlink_info::check): Remove unused variable.
* * libc/include/sys/_default_fcntl.h: Include <sys/time.h> on Cygwin.Corinna Vinschen2008-05-232-0/+5
|
* * shared.cc (open_shared): Fix comments. Fix a condition which hasCorinna Vinschen2008-05-232-3/+7
| | | | been overlooked to revert to its old state in change from 2008-04-18.
* * path.cc (symlink_info::check): Define eabuf and easize outside ofCorinna Vinschen2008-05-232-3407/+3412
| | | | | loop. Set to NULL on first STATUS_EAS_NOT_SUPPORTED. Align comments. Fix formatting.
* * fhandler_disk_file.cc (fhandler_disk_file::readdir): EliminateCorinna Vinschen2008-05-232-2/+6
| | | | compiler warning.
* * path.cc (symlink_info::check): Don't pass EaBuffer to NtCreateFile if it hasChristopher Faylor2008-05-234-3441/+3453
| | | | | | indicated that it isn't appropriate. * ntdll.h (STATUS_EAS_NOT_SUPPORTED): Define. * winsup.h: Remove __builtin* defines.
* 2008-05-22 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2008-05-22210-25484/+15079
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libc/include/sys/reent.h: Add _h_errno field. * libc/sys/linux/libc-symbols.h: Add default stubs for new libc macros now used in net directory. * libc/sys/linux/bits/libc-lock.h: Always define _IO_MTSAFE_IO. * libc/sys/linux/include/hesiod.h: Add needed macros for new code in net directory. * libc/sys/linux/include/netdb.h: Ditto. * libc/sys/linux/include/resolv.h: Ditto. * libc/sys/linux/include/stdint.h: Ditto. * libc/sys/linux/include/arpa/nameser.h: Ditto. * libc/sys/linux/include/net/ethernet.h: Ditto. * libc/sys/linux/include/net/if_ppp.h: Ditto. * libc/sys/linux/include/netinet/if_ether.h: Ditto. * libc/sys/linux/machine/i386/get_clockfreq.c: Remove static memmem. * libc/sys/linux/machine/i386/include/endian.h: Protect macros with flags to avoid duplicate definition. * libc/sys/linux/machine/i386/include/param.h: Ditto. * libc/sys/linux/net/Makefile.am: Modified to account for removed and added files. * libc/sys/linux/net/Makefile.in: Regenerated. * libc/sys/linux/net/base64.c: Replaced with glibc version of code. * libc/sys/linux/net/getaddrinfo.c: Ditto. * libc/sys/linux/net/getnameinfo.c: Ditto. * libc/sys/linux/net/getproto.c: Ditto. * libc/sys/linux/net/getservent.c: Ditto. * libc/sys/linux/net/inet_netof.c: Ditto. * libc/sys/linux/net/inet_lnaof.c: Ditto. * libc/sys/linux/net/ns_name.c: Ditto. * libc/sys/linux/net/ns_netint.c: Ditto. * libc/sys/linux/net/inet_ntoa.c: Ditto. * libc/sys/linux/net/ns_parse.c: Ditto. * libc/sys/linux/net/ns_print.c: Ditto. * libc/sys/linux/net/ns_ttl.c: Ditto. * libc/sys/linux/net/nsap_addr.c: Ditto. * libc/sys/linux/net/rcmd.c: Ditto. * libc/sys/linux/net/res_comp.c: Ditto. * libc/sys/linux/net/res_data.c: Ditto. * libc/sys/linux/net/res_debug.c: Ditto. * libc/sys/linux/net/res_init.c: Ditto. * libc/sys/linux/net/res_mkquery.c: Ditto. * libc/sys/linux/net/res_query.c: Ditto. * libc/sys/linux/net/res_send.c: Ditto. * libc/sys/linux/net/send.c: Ditto. * libc/sys/linux/stdlib/collate.c: Ditto. * libc/sys/linux/sys/ioctl.h: Ditto. * libc/sys/linux/sys/socket.h: Ditto. * libc/sys/linux/sys/unistd.h: Ditto. * libc/sys/linux/iconv/iconvconfig.c: Removed either because no longer used or because licensing includes advertising clause that cannot be ignored. * libc/sys/linux/iconv/strtab.c: Ditto. * libc/sys/linux/include/libc_private.h: Ditto. * libc/sys/linux/include/nsswitch.h: Ditto. * libc/sys/linux/include/net/if_atm.h: Ditto. * libc/sys/linux/include/net/if_media.h: Ditto. * libc/sys/linux/include/net/if_pppvar.h: Ditto. * libc/sys/linux/include/netinet/if_atm.h: Ditto. * libc/sys/linux/include/netinet/ip_flow.h: Ditto. * libc/sys/linux/intl/locale.alias: Ditto. * libc/sys/linux/net/addr2ascii.3: Ditto. * libc/sys/linux/net/bindresvport.c: Ditto. * libc/sys/linux/net/byteorder.3: Ditto. * libc/sys/linux/net/res_config.h: Ditto. * libc/sys/linux/net/ether_addr.c: Ditto. * libc/sys/linux/net/ethers.3: Ditto. * libc/sys/linux/net/getaddrinfo.3: Ditto. * libc/sys/linux/net/gethostbydns.c: Ditto. * libc/sys/linux/net/gethostbyht.c: Ditto. * libc/sys/linux/net/gethostbyname.3: Ditto. * libc/sys/linux/net/gethostbynis.c: Ditto. * libc/sys/linux/net/gethostnamadr.c: Ditto. * libc/sys/linux/net/getifaddrs.3: Ditto. * libc/sys/linux/net/getifaddrs.c: Ditto. * libc/sys/linux/net/getipnodebyname.3: Ditto. * libc/sys/linux/net/getnameinfo.3: Ditto. * libc/sys/linux/net/getnetbydns.c: Ditto. * libc/sys/linux/net/getnetbyht.c: Ditto. * libc/sys/linux/net/getnetbynis.c: Ditto. * libc/sys/linux/net/getnetent.3: Ditto. * libc/sys/linux/net/getnetnamadr.c: Ditto. * libc/sys/linux/net/getprotoent.3: Ditto. * libc/sys/linux/net/getprotoent.c: Ditto. * libc/sys/linux/net/getprotoname.c: Ditto. * libc/sys/linux/net/getservbyname.c: Ditto. * libc/sys/linux/net/getservbyport.c: Ditto. * libc/sys/linux/net/getservent.3: Ditto. * libc/sys/linux/net/herror.c: Ditto. * libc/sys/linux/net/hesiod.3: Ditto. * libc/sys/linux/net/hesiod.c: Ditto. * libc/sys/linux/net/if_indextoname.3: Ditto. * libc/sys/linux/net/inet.3: Ditto. * libc/sys/linux/net/inet6_option_space.3: Ditto. * libc/sys/linux/net/inet6_rthdr_space.3: Ditto. * libc/sys/linux/net/inet_makeaddr.c: Ditto. * libc/sys/linux/net/inet_net.3: Ditto. * libc/sys/linux/net/inet_network.c: Ditto. * libc/sys/linux/net/innetgr-stub.c: Ditto. * libc/sys/linux/net/ip6opt.c: Ditto. * libc/sys/linux/net/iso_addr.3: Ditto. * libc/sys/linux/net/iso_addr.c: Ditto. * libc/sys/linux/net/linkaddr.3: Ditto. * libc/sys/linux/net/linkaddr.c: Ditto. * libc/sys/linux/net/map_v4v6.c: Ditto. * libc/sys/linux/net/name6.c: Ditto. * libc/sys/linux/net/namespace.h: Ditto. * libc/sys/linux/net/ns.3: Ditto. * libc/sys/linux/net/ns_addr.c: Ditto. * libc/sys/linux/net/ns_ntoa.c: Ditto. * libc/sys/linux/net/nsdispatch.3: Ditto. * libc/sys/linux/net/nsdispatch.c: Ditto. * libc/sys/linux/net/nslexer.c: Ditto. * libc/sys/linux/net/nslexer.l: Ditto. * libc/sys/linux/net/nsparser.c: Ditto. * libc/sys/linux/net/nsparser.h: Ditto. * libc/sys/linux/net/nsparser.y: Ditto. * libc/sys/linux/net/rcmd.3: Ditto. * libc/sys/linux/net/rcmdsh.3: Ditto. * libc/sys/linux/net/res_mkupdate.c: Ditto. * libc/sys/linux/net/res_update.c: Ditto. * libc/sys/linux/net/resolver.3: Ditto. * libc/sys/linux/net/rthdr.c: Ditto. * libc/sys/linux/net/vars.c: Ditto. * libc/sys/linux/shlib-compat.h: New file. * libc/sys/linux/machine/i386/atomic.h: Ditto. * libc/sys/linux/net/XXX-lookup.c: Ditto. * libc/sys/linux/net/alias-lookup.c: Ditto. * libc/sys/linux/net/res_libc.c: Ditto. * libc/sys/linux/net/aliases.h: Ditto. * libc/sys/linux/net/check_pf.c: Ditto. * libc/sys/linux/net/databases.def: Ditto. * libc/sys/linux/net/digits_dots.c: Ditto. * libc/sys/linux/net/ether_aton.c: Ditto. * libc/sys/linux/net/ether_aton_r.c: Ditto. * libc/sys/linux/net/ether_hton.c: Ditto. * libc/sys/linux/net/ether_line.c: Ditto. * libc/sys/linux/net/ether_ntoa.c: Ditto. * libc/sys/linux/net/ether_ntoa_r.c: Ditto. * libc/sys/linux/net/ether_ntoh.c: Ditto. * libc/sys/linux/net/etherent.h: Ditto. * libc/sys/linux/net/ethers-lookup.c: Ditto. * libc/sys/linux/net/function.def: Ditto. * libc/sys/linux/net/getXXbyYY.c: Ditto. * libc/sys/linux/net/getXXbyYY_r.c: Ditto. * libc/sys/linux/net/getXXent.c: Ditto. * libc/sys/linux/net/getXXent_r.c: Ditto. * libc/sys/linux/net/getaliasent.c: Ditto. * libc/sys/linux/net/getaliasent_r.c: Ditto. * libc/sys/linux/net/getaliasname.c: Ditto. * libc/sys/linux/net/getaliasname_r.c: Ditto. * libc/sys/linux/net/gethstbyad.c: Ditto. * libc/sys/linux/net/gethstbyad_r.c: Ditto. * libc/sys/linux/net/gethstbynm.c: Ditto. * libc/sys/linux/net/gethstbynm2.c: Ditto. * libc/sys/linux/net/gethstbynm2_r.c: Ditto. * libc/sys/linux/net/gethstbynm_r.c: Ditto. * libc/sys/linux/net/gethstent.c: Ditto. * libc/sys/linux/net/gethstent_r.c: Ditto. * libc/sys/linux/net/getnetbyad.c: Ditto. * libc/sys/linux/net/getnetbyad_r.c: Ditto. * libc/sys/linux/net/getnetbynm.c: Ditto. * libc/sys/linux/net/getnetbynm_r.c: Ditto. * libc/sys/linux/net/getnetent.c: Ditto. * libc/sys/linux/net/getnetent_r.c: Ditto. * libc/sys/linux/net/getnetgrent.c: Ditto. * libc/sys/linux/net/getnetgrent_r.c: Ditto. * libc/sys/linux/net/getnssent.c: Ditto. * libc/sys/linux/net/getnssent_r.c: Ditto. * libc/sys/linux/net/getproto_r.c: Ditto. * libc/sys/linux/net/getprtent.c: Ditto. * libc/sys/linux/net/getprtent_r.c: Ditto. * libc/sys/linux/net/getprtname.c: Ditto. * libc/sys/linux/net/getprtname_r.c: Ditto. * libc/sys/linux/net/getrpcbyname.c: Ditto. * libc/sys/linux/net/getrpcbyname_r.c: Ditto. * libc/sys/linux/net/getrpcbynumber.c: Ditto. * libc/sys/linux/net/getrpcbynumber_r.c: Ditto. * libc/sys/linux/net/getrpcent.c: Ditto. * libc/sys/linux/net/getrpcent_r.c: Ditto. * libc/sys/linux/net/getservent_r.c: Ditto. * libc/sys/linux/net/getsrvbynm.c: Ditto. * libc/sys/linux/net/getsrvbynm_r.c: Ditto. * libc/sys/linux/net/getsrvbypt.c: Ditto. * libc/sys/linux/net/getsrvbypt_r.c: Ditto. * libc/sys/linux/net/grp-lookup.c: Ditto. * libc/sys/linux/net/herrno.c: Ditto. * libc/sys/linux/net/hosts-lookup.c: Ditto. * libc/sys/linux/net/ifaddrs.h: Ditto. * libc/sys/linux/net/ifreq.c: Ditto. * libc/sys/linux/net/ifreq.h: Ditto. * libc/sys/linux/net/in6_addr.c: Ditto. * libc/sys/linux/net/inet6_option.c: Ditto. * libc/sys/linux/net/inet_mkadr.c: Ditto. * libc/sys/linux/net/inet_net.c: Ditto. * libc/sys/linux/net/key-lookup.c: Ditto. * libc/sys/linux/net/local.h: Ditto. * libc/sys/linux/net/netgroup.h: Ditto. * libc/sys/linux/net/netgrp-lookup.c: Ditto. * libc/sys/linux/net/network-lookup.c: Ditto. * libc/sys/linux/net/not-cancel.h: Ditto. * libc/sys/linux/net/ns_samedomain.c: Ditto. * libc/sys/linux/net/nscd-types.h: Ditto. * libc/sys/linux/net/nss.h: Ditto. * libc/sys/linux/net/nsswitch.c: Ditto. * libc/sys/linux/net/nsswitch.h: Ditto. * libc/sys/linux/net/opensock.c: Ditto. * libc/sys/linux/net/proto-lookup.c: Ditto. * libc/sys/linux/net/pwd-lookup.c: Ditto. * libc/sys/linux/net/res_debug.h: Ditto. * libc/sys/linux/net/res_hconf.c: Ditto. * libc/sys/linux/net/res_hconf.h: Ditto. * libc/sys/linux/net/rexec.c: Ditto. * libc/sys/linux/net/rpc-lookup.c: Ditto. * libc/sys/linux/net/ruserpass.c: Ditto. * libc/sys/linux/net/service-lookup.c: Ditto. * libc/sys/linux/net/spwd-lookup.c: Ditto. * libc/sys/linux/net/nscd/nscd-client.h: Ditto. * libc/sys/linux/net/nscd/nscd_proto.h: Ditto.
* * grp.cc (internal_getgroups): Fix thinko. Only add enabled groups toCorinna Vinschen2008-05-222-2/+6
| | | | the group list.
* * grp.cc (internal_getgroups): Don't add deny-only groups to the groupCorinna Vinschen2008-05-222-2/+9
| | | | list.
* * cygtls.h (struct san): Add two int values to store the currentCorinna Vinschen2008-05-223-41/+60
| | | | | | | tls_pathbuf counters. (return_from_fault): Restore tls_pathbuf counters. (setup_fault): Save tls_pathbuf counters. * tlsoffset.h: Regenerate.
* * setfacl.c (setfacl): Change from void to int. Return 2 in case ofCorinna Vinschen2008-05-222-7/+20
| | | | | error. (main): Return with error code from setfacl.
* * sec_acl.cc (setacl): Set errno to EINVAL if user or group don't exist.Corinna Vinschen2008-05-222-6/+18
|
* * path.cc (cygwin_conv_path): Define tp before setting up faul handler.Corinna Vinschen2008-05-223-28/+49
| | | | | | * syscalls.cc: Ditto, throughout. (gen_full_path_at): Add bool parameter to allow NULL pathname. (futimesat): Allow NULL pathname as GLIBC.
* Optimize the generic strchr.Eric Blake2008-05-222-29/+50
| | | | | | * libc/string/strchr.c (strchr) [!__OPTIMIZE_SIZE__]: Pre-align data so unaligned searches aren't penalized. Special-case searching for 0.
* Committed as obvious.Danny Smith2008-05-222-1/+7
| | | | | | | | 2008-05-22 Danny Smith <dannysmith@users.sourceforge.net> [ mingw-Bugs-1961893 ] * mingwex/gdtoa/mingw_snprint.c (x_sprintf): Always set __ldtoa mode to 2 for E format.
* * string.h (strchr): Eliminate.Christopher Faylor2008-05-223-22/+7
| | | | * syscalls.cc (rename): Work around inexplicable C++ warning.
* Optimize strchr for x86.Eric Blake2008-05-212-14/+107
| | | | | * libc/machine/i386/strchr.S (strchr): Pre-align data so unaligned searches aren't penalized. Special-case searching for 0.
* * reloc-macros.h: Add a comment about the use of theNick Clifton2008-05-213-1/+39
| | | | | END_RELOC_NUMBERS symbol as a sentinel value. * arm.h (END_RELOC_NUMBERS): Provide a maximum value.
* * fhandler_disk_file.cc (get_ino_by_handle): Rename pfai to fai.Corinna Vinschen2008-05-214-117/+103
| | | | | | | | | | | | | | | | | | | | | | (fhandler_base::fstat_by_handle): Drop fai_size and pfai in favor of static struct fai_buf. Restructure. (fhandler_base::fstat_by_name): Drop fvi_size and pfvi. Drop fdi_size and pfdi in favor of static struct fdi_buf. Drop redundant test for existance. Use FileDirectoryInformation class instead of FileBothDirectoryInformation. Drop call to NtQueryVolumeInformationFile in favor of using pc.fs_serial_number (). Fix FileId information given to fstat_helper. (fhandler_disk_file::fstatvfs): Drop fvi_size, pfvi, fai_size and pfai. Drop getting FileFsVolumeInformation and FileFsAttributeInformation in favor of using the related path_conv info. (fhandler_disk_file::opendir): Fix comment. (fhandler_disk_file::readdir): Ditto. Use FileDirectoryInformation class instead of FileBothDirectoryInformation. * path.cc (fs_info::update): Store MaximumComponentNameLength in new member name_len. * path.h (struct fs_info): Use ULONG rather than DWORD. Add member name_len to store MaximumComponentNameLength. Add accessor methods. (path_conv::fs_name_len): New method.
* * fhandler.h (dirent_states): Add dirent_nfs_d_ino state and add it toCorinna Vinschen2008-05-214-10/+50
| | | | | | | | | | | | dirent_info_mask. * fhandler_disk_file.cc (fhandler_disk_file::opendir): Set dirent_nfs_d_ino flag for NFS shares. Explain why. (fhandler_disk_file::readdir): Use FileNamesInformation instead of FileBothDirectoryInformation info class on NFS clients not supporting the FileIdBothDirectoryInformation info class. Use local pointers to accommodate different offsets. * path.cc (symlink_info::check): Don't test directories for symlinks on NFS shares. Enhance comment.
* * syscalls.cc (FILTERED_MODE): Define valid chmod mode mask.Corinna Vinschen2008-05-212-2/+11
| | | | | (chmod): Call fh->fchmod with filtered mode. (fchmod): Ditto.
* * libc/sys/sysnecv850/crt0.S (___dso_handle): Define (weak).Nick Clifton2008-05-216-1/+34
| | | | | | * iq2000/crt0.S (__dso_handle): Define (weak). * frv/crt0.S (__dso_handle): Define (weak). * mn10300/crt0.S (___dso_handle): Define (weak).
* * fhandler_disk_file.cc (fhandler_disk_file::fchmod): Fix test forCorinna Vinschen2008-05-202-1/+6
| | | | S_IFSOCK in mode bits.
* * path.cc (symlink_worker): Fix EA buffer size info given toCorinna Vinschen2008-05-202-5/+11
| | | | | | NtCreateFile. (symlink_info::check_nfs_symlink): Get 64K buffer for EA buffer. Change EA buffer size info given to NtQueryEaFile accordingly.
* * path.cc (symlink_info::check_shortcut): Minimize requested fileCorinna Vinschen2008-05-202-5/+14
| | | | | | | access flags. (symlink_info::check_sysfile): Ditto. Add missing `else'. (symlink_info::check): Only retry to open file if first try failed with access denied.
* 2008-05-20 DJ Delorie <dj@redhat.com>Jeff Johnston2008-05-202-1/+5
| | | | * libc/sys/sysnecv850/isatty.c (_isatty): Renamed from isatty.
* * path.cc (fs_info::update): Re-add opening the unsplitted pathCorinna Vinschen2008-05-202-0/+7
| | | | for fillout_mntent's sake.
* * fhandler_disk_file.cc (fhandler_disk_file::mkdir): Create directoriesCorinna Vinschen2008-05-202-1/+27
| | | | on NFS shares with correct mode bits.
* * winsup.h (cygwin_inet_addr): Fix type of declaration.Corinna Vinschen2008-05-202-1/+6
|
* * Makefile.in (DLL_OFILES): Add nfs.o.Corinna Vinschen2008-05-2010-157/+527
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fhandler.cc (fhandler_base::open): Open files on NFS shares with correct access flags and EAs. * fhandler.h (fhandler_base::fstat_by_nfs_ea): Declare. * fhandler_disk_file.cc (fhandler_base::fstat_by_nfs_ea): New method. (fhandler_base::fstat_by_handle): Call fstat_by_nfs_ea for files on NFS shares. (fhandler_disk_file::fchmod): Use NFS specific method to set mode for files on NFS shares. Don't overrule errno from call to set_file_attribute with errno from NtSetInformationFile call. (fhandler_disk_file::fchown): Add comment. * mount.cc (fillout_mntent): Accommodate change in second parameter to fs_info::update. * nfs.cc: New file. * nfs.h: New file. * path.cc (fs_info::update): Take handle instead of bool as second parameter. Use that handle if it's not NULL. Only close handle if it has been opened here. Use static defined buffers instead of alloca'd buffers. (path_conv::check): Call symlink_info::check with reference to fs. Don't call fs.update here if file exists. (conv_path_list): Prefer tmp_pathbuf buffer over using alloca. (symlink_worker): Use NFS specific method to create symlinks on NFS shares. Prefer tmp_pathbuf buffer over using alloca. (symlink_info::check_shortcut): Reopen file from incoming handle with necessary FILE_GENERIC_READ flag. Prefer tmp_pathbuf buffer over using alloca. (symlink_info::check_sysfile): Ditto. (symlink_info::check_reparse_point): Use tmp_pathbuf buffer to allocate REPARSE_DATA_BUFFER. (symlink_info::check_nfs_symlink): New method. (enum symlink_t): Remove. (symlink_info::check): Don't use NtQueryAttributesFile. Rather, open file with necessary access flags and call NtQueryInformationFile. Fix error handling in case file can't be opened. For existing files, call fs_info::update here. Restructure symlink checking to accommodate the fact that the file is already open. Add case for NFS symlinks. * path.h (fs_info::update): Take handle instead of bool as second parameter.
* * syscalls.cc (rename): Fix condition when to start a transaction.Corinna Vinschen2008-05-202-1/+6
|
* * path.cc (path_conv::check): Free wide_path and normalized_path ifCorinna Vinschen2008-05-203-10/+28
| | | | | | necessary. * path.h (path_conv::path_conv): Set wide_path, normalized_path and normalized_path_size to 0 in all constructors.
* * syscalls.cc (rename): Allocate temporary path buffers usingCorinna Vinschen2008-05-192-5/+17
| | | | | tmp_pathbuf. Don't try to unset R/O attribute on dstpc if a removepc exists. dstpc is a non-existant file in that case.
* * include/stdint.h: Use int rather than long for {u,}int32_t.Christopher Faylor2008-05-172-2/+6
|
* * src-release (DEVO_SUPPORT): Add ChangeLog, MAINTAINERS,Daniel Jacobowitz2008-05-162-5/+10
| | | | | | README-maintainer-mode, lt~obsolete.m4, ltgcc.m4, depcomp, mkdep, and compile. Update comments. (ETC_SUPPORT): Add ChangeLog and update comments.
* * Makefile.in (install-license): Install COPYING file as well.Corinna Vinschen2008-05-162-2/+8
|
* * CYGWIN_LICENSE: New text.Corinna Vinschen2008-05-162-28/+59
|
* * CYGWIN_LICENSE: Remove duplicate file here.Corinna Vinschen2008-05-162-38/+4
|
* 2008-05-15 Ramiro Polla <ramiro@lisha.ufsc.br>Chris Sutcliffe2008-05-152-1/+11
| | | | * include/stdlib.h: Fix strtod under C++.