aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2007-08-032007-03-25 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>Chris Sutcliffe2-1/+2
* include/_mingw.h: Increment version to 3.13. * Makefile.in: Reset CYGRELEASE to 1
2007-08-032007-03-25 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>Chris Sutcliffe2-2/+6
* include/_mingw.h: Increment version to 3.13.
2007-08-032007-08-03 Chris Sutcliffe <ir0nh34d@users.sf.net>Chris Sutcliffe3-3/+8
* include/w32api.h: Increment version to 3.10. * Makefile.in: Ditto.
2007-08-032007-08-03 Ralf Corsepius <ralf.corsepius@rtems.org>Jeff Johnston2-0/+43
* libc/include/tar.h: New.
2007-08-032007-08-03 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston4-17/+25
* libc/sys/linux/intl/Makefile.am: Change stpcpy reference to lcl_stpcpy to avoid conflict with new stpcpy.c in libc/string. * libc/sys/linux/intl/Makefile.in: Regenerated. * libc/sys/linux/intl/stpcpy.c: Renamed to... * libc/sys/linux/intl/lcl_stpcpy.c: ..this.
2007-08-03 * Makefile.in (cygcheck.exe): Add bloda.o as prerequisite, adjustingDave Korn4-5/+438
dependency-filtering $(wordlist ...) call appropriately. Link ntdll. (bloda.o): New rule to build bloda.o * cygcheck.cc (dump_sysinfo): Call bloda function dump_dodgy_apps(). * bloda.cc: New file implements detection of applications from the Big List Of Dodgy Apps.
2007-08-02Implement fmemopen and open_memstream.Eric Blake8-10/+780
* libc/stdio/fmemopen.c (_fmemopen_r, fmemopen): New file. * libc/stdio/open_memstream.c (_open_memstream_r, open_memstream): New file. * libc/stdio/fopencookie.c (fcwriter): Minor optimization. * libc/include/stdio.h (dprintf, vdprintf): Group all POSIX 200x functions together. (fmemopen, open_memstream): Declare new functions. * libc/stdio/stdio.tex: Document them. * libc/stdio/Makefile.am (ELIX_4_SOURCES, CHEWOUT_FILES): Add fmemopen and open_memstream. * libc/stdio/Makefile.in: Regenerate.
2007-08-02bfd/H.J. Lu2-7/+45
2007-08-02 H.J. Lu <hongjiu.lu@intel.com> * coffcode.h (ALIGN_SET): Removed. (ELIFALIGN_SET): Likewise. (coff_set_alignment_hook): Handle IMAGE_SCN_ALIGN_128BYTES, IMAGE_SCN_ALIGN_256BYTES, IMAGE_SCN_ALIGN_512BYTES, IMAGE_SCN_ALIGN_1024BYTES, IMAGE_SCN_ALIGN_2048BYTES, IMAGE_SCN_ALIGN_4096BYTES and IMAGE_SCN_ALIGN_8192BYTES. include/coff/ 2007-08-02 H.J. Lu <hongjiu.lu@intel.com> * pe.h (IMAGE_SCN_ALIGN_POWER_BIT_POS): New. (IMAGE_SCN_ALIGN_POWER_BIT_MASK): Likewise. (IMAGE_SCN_ALIGN_POWER_NUM): Likewise. (IMAGE_SCN_ALIGN_POWER_CONST): Likewise. (IMAGE_SCN_ALIGN_128BYTES): Likewise. (IMAGE_SCN_ALIGN_256BYTES): Likewise. (IMAGE_SCN_ALIGN_512BYTES): Likewise. (IMAGE_SCN_ALIGN_1024BYTES): Likewise. (IMAGE_SCN_ALIGN_2048BYTES): Likewise. (IMAGE_SCN_ALIGN_4096BYTES): Likewise. (IMAGE_SCN_ALIGN_8192BYTES): Likewise. (IMAGE_SCN_ALIGN_1BYTES): Redefined with IMAGE_SCN_ALIGN_POWER_CONST. (IMAGE_SCN_ALIGN_2BYTES): Likewise. (IMAGE_SCN_ALIGN_4BYTES): Likewise. (IMAGE_SCN_ALIGN_8BYTES): Likewise. (IMAGE_SCN_ALIGN_16BYTES): Likewise. (IMAGE_SCN_ALIGN_32BYTES): Likewise. (IMAGE_SCN_ALIGN_64BYTES): Likewise.
2007-08-02 * fhandler_disk_file.cc (readdir_get_ino): Accommodate native symlinks.Corinna Vinschen3-3/+15
* syscalls.cc (rename): Ditto.
2007-08-02 * smallprint.c: Remove.Corinna Vinschen2-250/+4
2007-08-02* lib/Makefile: Add missed file to accommodate below changes.Christopher Faylor1-0/+4
2007-08-02Add missing checkin.Christopher Faylor1-4/+4
2007-08-02* lib/cygwin_attach_dll.c: Fix compiler warning.Christopher Faylor3-0/+9
* lib/cygwin_crt0.c: Ditto.
2007-08-02* Makefile.in: Add -lntdll to link line.Christopher Faylor2-3/+8
(CYGWIN_OBJS): Include strfuncs.o.
2007-08-02* dcrt0.cc (codepage_type): Remove definition.Christopher Faylor4-32/+50
* strfuncs.cc: Move it here. New file with bits of miscfuncs.cc. * miscfuncs.cc: Remove wide character stuff.
2007-08-02 * smallprint.c: New file.Corinna Vinschen3-2/+258
* Makefile.in (OBJS): Add smallprint.o. (CYGWIN_OBJS): Remove smallprint.o from Cygwin dir.
2007-08-02 * syscalls.cc (rename): Move and add text to comment about testingCorinna Vinschen2-16/+31
oldpath and newpath referring to the same file. Test if oldpath has more than one hardlink before opening oldpath (idea by Eric Blake). Reorder test so that file id is tested before volume serial number.
2007-08-02 * path.h (struct fs_info): Drop root_len and name_hash members.Corinna Vinschen3-17/+10
(fsinfo::length): Remove. (path_conv::rootdir): Remove. * syscalls.cc (try_to_bin): Use rootdir function instead of path_conv::rootdir method.
2007-08-02 * fhandler_disk_file.cc (path_conv::ndisk_links): Fix typo in call toCorinna Vinschen2-1/+6
NtClose.
2007-08-02 * include/winbase.h (ReOpenFile): Add prototype.Corinna Vinschen3-0/+9
* lib/kernel32.def (ReOpenFile@16): Add export.
2007-08-01 * syscalls.cc (rename): Check if oldpath and newpath refer to theCorinna Vinschen2-1/+41
same file. If so, return successfully and perform no other action, as per SUSv3.
2007-08-01Correct ChangeLog entries.H.J. Lu2-7/+7
2007-08-01 * ntdll.h (STATUS_ACCESS_DENIED): Define.Corinna Vinschen3-25/+80
* syscalls.cc (check_dir_not_empty): New static function. (unlink_nt): Move code checking for non-empty dir to check_dir_not_empty and call check_dir_not_empty instead. (rename): Add fault handler. Check oldpath and newpath for trailing . and .. path components and return EINVAL if so. Check oldpath for being on a vrtual file system. If renaming a dir fails with STATUS_ACCESS_DENIED, check if the target dir is non-empty and return ENOTEMPTY if so.
2007-08-01 * localtime.cc (tzsetwall): Don't set TZ.Corinna Vinschen2-0/+8
2007-08-01 * fhandler_disk_file.cc (fhandler_base::fstat_by_handle): DropCorinna Vinschen5-99/+135
usage of path_conv::volser(). (fhandler_base::fstat_by_name): Ditto. * ntdll.h (STATUS_NO_MEDIA_IN_DEVICE): Define. (STATUS_OBJECT_NAME_NOT_FOUND): Define. (FILE_REMOVABLE_MEDIA, FILE_READ_ONLY_DEVICE, FILE_FLOPPY_DISKETTE) (FILE_WRITE_ONCE_MEDIA, FILE_REMOTE_DEVICE, FILE_DEVICE_IS_MOUNTED) (FILE_VIRTUAL_VOLUME, FILE_AUTOGENERATED_DEVICE_NAME) FILE_DEVICE_SECURE_OPEN): Define Device Characteristics. (struct _FILE_FS_DEVICE_INFORMATION): Define. * path.cc (MAX_FS_INFO_CNT): Remove. (fsinfo): Remove. (fsinfo_cnt): Remove. (fs_info::update): Rewrite using native NT functions. Drop fs_info cashing since it's incorrect. (path_conv::fillin): Use NtQueryInformationFile. Drop setting serial number. (path_conv::check): Accommodate new fs_info::update parameters. (fillout_mntent): Ditto. * path.h (fs_info): Drop serial, has_ea and drive_type status flags. (fs_info::update): Declare with new parameters. (path_conf::drive_type): Remove. (path_conf::fs_has_ea): Remove. (path_conf::volser): Remove.
2007-08-01 * fhandler.cc (check_posix_perms): Remove.Corinna Vinschen2-26/+7
(fhandler_base::fpathconf): Return value of pc.has_acls () instead of calling check_posix_perms.
2007-08-01 * syscalls.cc (rename): Use unchanged path_conv in condition.Corinna Vinschen2-2/+6
2007-08-01 * smallprint.cc (__small_vsprintf): Add format specifier 'W' forCorinna Vinschen2-13/+26
PWCHAR arguments. Move wide char handling after char handling.
2007-07-31More POSIX stream corner cases.Eric Blake4-23/+30
* libc/stdio/findfp.c (__sinit): Open stderr read/write. * libc/stdio/fdopen.c (_fdopen_r): Set O_APPEND on fd when requested. * libc/stdio64/fdopen64.c (_fdopen64_r): Likewise.
2007-07-31 * ntdll.h (RtlFreeAnsiString): Declare.Corinna Vinschen3-12/+63
* ntdll.h (RtlFreeOemString): Declare. * ntdll.h (RtlUnicodeStringToAnsiString): Declare. * ntdll.h (RtlUnicodeStringToOemString): Declare. * smallprint.cc: Renamed from smallprint.c. Drop unnecessary forward declarations. (__small_vsprintf): Add format specifiers 'C' for WCHAR arguments and 'S' for PUNICODE_STRING arguments.
2007-07-312007-07-31 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>Chris Sutcliffe2-1/+7
* include/wtsapi32.h (WTS_CURRENT_SESSION, WTSDisconnectSession): Define.
2007-07-31 * fhandler_disk_file.cc (fhandler_disk_file::link): Revert to checkingCorinna Vinschen6-152/+190
for binary in case of .exe files. * ntdll.h (RtlPrefixUnicodeString): Declare. * path.cc (path_conv::is_binary): New method. * path.h (path_conv::is_binary): Declare. * syscalls.cc (rename_append_suffix): New static helper function for rename. (rename): Rewrite. New suffix tests. Use native NT functions.
2007-07-30 * fhandler_disk_file.cc (fhandler_disk_file::facl): If file can't beCorinna Vinschen4-2/+26
opened for reading the ACLs, fall back to faking them. * sec_acl.cc (acl_worker): Handle non-existing files. * security.cc (get_file_attribute): Return ILLEGAL_UID/ILLEGAL_GID as owner/group for non-readable ACLs on file systems supporting them.
2007-07-30 * syscalls.cc (stat_worker): Don't call build_fh_pc with invalid pc.Corinna Vinschen2-10/+15
2007-07-302007-7-30 Martijn Wargers <martijnw22@users.sourceforge.net>Danny Smith3-0/+9
* include/wingdi.h (GetTextExtentExPointI): Add prototype. * lib/gdi32.def (GetTextExtentExPointI@28): Add export.
2007-07-29* fhandler.cc (fhandler_base::wait_overlapped): Handle read EOF better andChristopher Faylor2-6/+26
issue a SIGPIPE when we get ERROR_NO_DATA.
2007-07-29 * fhandler_disk_file.cc (fhandler_disk_file::fchmod): Don't allowCorinna Vinschen3-19/+38
FileAttributes set to 0 when calling NtSetInformationFile since it has a special meaning. (fhandler_disk_file::facl): Ditto. (fhandler_disk_file::link): Only set attributes after copying files. Use SetFileAttributesW. * syscalls.cc (unlink_nt): Only care for actual FILE_ATTRIBUTE_READONLY. Don't allow FileAttributes set to 0 when calling NtSetInformationFile. After marking for deletion, restore R/O attribute on files to accommodate hardlinks.
2007-07-29 * fhandler_disk_file.cc (fhandler_disk_file::link): Use FILE_ANY_ACCESS.Corinna Vinschen4-133/+134
(fhandler_base::utimes_fs): Fix white space. (fhandler_disk_file::lock): Remove 9x blurb from comment. (fhandler_disk_file::mkdir): Use NtCreateFile/NtClose instead of CreateDirectoryA. (fhandler_disk_file::rmdir): Accommodate changes to unlink_nt. Simplify post-delete SMB-related tests. Use NtQueryAttributesFile instead of GetFileAttributes. * ntdll.h (STATUS_DIRECTORY_NOT_EMPTY): Define. (NtQueryAttributesFile): Declare. * syscalls.cc (unlink_nt): Return NTSTATUS. Drop setattrs parameter. Never use FILE_DELETE_ON_CLOSE, always use NtSetInformationFile(FileDispositionInformation) instead. Check for R/O attributes and open file with FILE_WRITE_ATTRIBUTES access if any of them are set. Remove R/O attributes before marking for delete if necessary. Revert them afterwards if necessary. (unlink): Accommodate changes to unlink_nt.
2007-07-29 * fhandler_disk_file.cc: Use get_handle throughout.Corinna Vinschen3-43/+83
(fhandler_disk_file::fchmod): Always try to open file with required access rights. Use NtSetInformationFile instead of SetFileAttributes. (fhandler_disk_file::facl): Use NtSetInformationFile instead of SetFileAttributes. (fhandler_base::utimes_fs): Change lastaccess and lastwrite to LARGE_INTEGER. Drop 9x directory case. Use NtSetInformationFile instead of SetFileAttributes. Drop temporarily changing R/O attribute since NtSetInformationFile(FileBasicInformation) also works on R/O files. * ntdll.h (STATUS_NOT_SUPPORTED): Define.
2007-07-29* cygtls.h (_cygtls::inside_kernel): Move function declaration into _cygtlsChristopher Faylor6-23/+61
class. * exceptions.cc (_cygtls::inside_kernel): Move function definition into _cygtls class. * fhandler.cc (fhandler_base::wait_overlapped): Make return tri-state to detect when there is a EINTR situation. Add a pointer to a length parameter. Move GetOverlappedResult into this function. (fhandler_base::read_overlapped): Accommodate above changes and loop if we receive a restartable signal. (fhandler_base::write_overlapped): Ditto. * fhandler.h (fhandler_base::wait_overlapped): Reflect above changes. * fhandler_fifo.cc (fhandler_fifo::wait): Ditto.
2007-07-28 * ntdll.h (RtlEqualUnicodePathPrefix): Rename from RtlEqualPathPrefix.Corinna Vinschen3-10/+17
(RtlEqualUnicodePathSuffix): Rename from RtlEqualPathSuffix. * fhandler_disk_file.cc (fhandler_disk_file::link): Accommodate above change.
2007-07-28 * ntdll.h (RtlInitCountedUnicodeString): Swap order of string and lengthCorinna Vinschen3-22/+61
parameters to be the same as for RtlInitEmptyUnicodeString. (RtlEqualPathPrefix): New inline function. (RtlEqualPathSuffix): New inline function. * fhandler_disk_file.cc: Accommodate parameter order change of RtlInitEmptyUnicodeString throughout. (fhandler_disk_file::link): Do path checking in unicode. Call CopyFileW instead of CopyFileA.
2007-07-27 * autoload.cc (CreateHardLinkA): Remove.Corinna Vinschen4-118/+68
* fhandler_disk_file.cc (fhandler_disk_file::link): Drop GetBinaryType test. Just check exe suffix instead. Tune creating new file name. Implement creating hard link using native NT functions which works on all platforms. * ntdll.h (STATUS_INVALID_DEVICE_REQUEST): Define. (struct _FILE_LINK_INFORMATION): Define.
2007-07-27 * fhandler_disk_file.cc (fhandler_disk_file::ftruncate): UseCorinna Vinschen2-12/+20
NtQueryInformationFile instead of GetFileSize, NtFsControlFile instead of DeviceIoControl.
2007-07-27 * fhandler_disk_file.cc (fhandler_base::fstat_by_name): UseCorinna Vinschen3-36/+55
RtlSplitUnicodePath. (fhandler_disk_file::fstat): Rename oret to opened. Open file using NT functions right here. Try to open parent dir instead of root directory to avoid call to rootdir. Use NtFsControlFile. * ntdll.h (RtlSplitUnicodePath): Define.
2007-07-27 * fhandler_disk_file.cc (is_volume_mountpoint): New static inlineCorinna Vinschen2-40/+40
function. (path_conv::ndisk_links): Call is_volume_mountpoint. (fhandler_disk_file::readdir_helper): Ditto.
2007-07-27 * fhandler.h (enum query_state): Drop redundant query_stat_control.Corinna Vinschen4-20/+18
* fhandler.cc (fhandler_base::open): Ditto. Add READ_CONTROL to access and FILE_OPEN_FOR_BACKUP_INTENT to create_options when opening for writing. Always set security attributes to avoid calling has_acls. * fhandler_disk_file.cc (fhandler_base::fstat_fs): Don't try to open file twice.
2007-07-26 * dir.cc (readdir_worker): Drop dir parameter from call toCorinna Vinschen12-270/+573
readdir_get_ino. * fhandler.h (fhandler_disk_file::readdir_helper): Switch file name parameter to PUNICODE_STRING. * fhandler_disk_file.cc: Drop including ntdef.h. (class __DIR_mounts): Store mount points in UNICODE. Additionally store cygdrive prefix in unicode here. Change methods accordingly. (__DIR_mounts::eval_ino): Call new stat_worker instead of lstat64. (__DIR_mounts::~__DIR_mounts): New destructor to free UNICODE buffers. (path_conv::ndisk_links): Rewrite using native NT functions. (fhandler_base::fstat_by_handle): Use NAME_MAX instead of CYG_MAX_PATH. Always set pfvi->VolumeSerialNumber to non-0. Remove last resort code. (fhandler_base::fstat_by_name): Rewrite using native NT functions. (fhandler_base::fstat_fs): Always call fstat_by_name if fstat_by_handle fails. (fhandler_base::fstat_helper): Rely on dwVolumeSerialNumber. (fhandler_disk_file::facl): Call fstat_by_name if fstat_by_handle fails. (DIR_BUF_SIZE): Define using NAME_MAX instead of CYG_MAX_PATH. (__DIR_cache): Remove __name. (d_dirname): Remove. (fhandler_disk_file::opendir): Drop pathname length check. Remove outdated comment. Use get_name method instead of accessing pc.normalized_path directly. (readdir_get_ino): Drop unused dir parameter. Accomodate throughout. Allocate fname dynamically. Call new stat_worker instead of lstat64. Call NtOpenFile instead of CreateFile. Call NtClose instead of CloseHandle. (fhandler_disk_file::readdir_helper): Use native NT functions. Check for volume mount points and use correct inode number. (fhandler_disk_file::readdir): Simplify slightly. Use get_name instead of pc.normalized_path. (fhandler_disk_file::rewinddir): Use RtlInitUnicodeString. (fhandler_cygdrive::fstat): Ignore floppy drives. Set st_nlink correctly. (fhandler_cygdrive::readdir): Ignore floppy drives. * fhandler_netdrive.cc (fhandler_netdrive::readdir): Accommodate change to readdir_get_ino. * fhandler_proc.cc (PROC_DIR_COUNT): Define. (fhandler_proc::fstat): Evaluate correct link count for /proc. * ntdll.h (struct _FILE_DIRECTORY_INFORMATION): Define. (NtFsControlFile): Declare. (RtlAppendUnicodeToString): Declare. (RtlAppendUnicodeStringToString): Declare. (RtlCompareUnicodeString): Declare. (RtlCopyUnicodeString): Declare. (RtlCreateUnicodeStringFromAsciiz): Declare. (RtlEqualUnicodeString): Declare. (RtlFreeUnicodeString): Declare. (RtlInitEmptyUnicodeString): Declare. (RtlSecondsSince1970ToTime): Declare. (RtlInitEmptyUnicodeString): Define as inline function. (RtlInitCountedUnicodeString): Define as inline function. * path.cc (path_conv::check): New method with PUNICODE_STRING as path, preliminary implementation. (mount_info::get_mounts_here): Change to create UNICODE_STRINGs. Also copy cygpath prefix into UNICODE_STRING. (is_floppy): Drop 9x consideration. * path.h: Drop including ntdef.h. (path_conv::check): Add declaration. (path_conv::path_conv): Add constructor for UNICODE_STRING paths. * shared_info.h (mount_info::get_mounts_here): Change declaration. * syscalls.cc: Drop forward declaration of stat_worker. (stat_worke): Take path_conv as parameter. Drop nofollow flag. (stat64): Create matching path_conv and call stat_worker with it. (lstat64): Ditto. * winsup.h: Include ntdef.h. (stat_worker): Declare. (readdir_get_ino): Change declaration.
2007-07-25 * autoload.cc (CreateToolhelp32Snapshot): Remove.Corinna Vinschen2-1/+4
2007-07-25 * autoload.cc (Process32First): Remove.Corinna Vinschen2-2/+5
(Process32Next): Remove.