summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* * fhandler_disk_file.cc (fhandler_base::fstat_by_name): UseCorinna Vinschen2007-07-273-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.
* * fhandler_disk_file.cc (is_volume_mountpoint): New static inlineCorinna Vinschen2007-07-272-40/+40
| | | | | | function. (path_conv::ndisk_links): Call is_volume_mountpoint. (fhandler_disk_file::readdir_helper): Ditto.
* * fhandler.h (enum query_state): Drop redundant query_stat_control.Corinna Vinschen2007-07-274-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.
* * dir.cc (readdir_worker): Drop dir parameter from call toCorinna Vinschen2007-07-2612-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.
* * autoload.cc (CreateToolhelp32Snapshot): Remove.Corinna Vinschen2007-07-252-1/+4
|
* * autoload.cc (Process32First): Remove.Corinna Vinschen2007-07-252-2/+5
| | | | (Process32Next): Remove.
* * include/wtypes.h (LPDECIMAL): Define.Danny Smith2007-07-252-6/+12
| | | | (DECIMAL_NEG, DECIMAL_SETZERO): Move definitions.
* * autoload.cc (NetWkstaUserGetInfo): Remove.Corinna Vinschen2007-07-252-5/+8
| | | | | | | (CharToOemBuffA): Remove. (KillTimer): Remove. (OemToCharBuffA): Remove. (SetTimer): Remove.
* * ternary.h: Remove.Ben Elliston2007-07-252-51/+4
|
* Add missing ChangeLog entry.Corinna Vinschen2007-07-241-0/+1
|
* * dumper.cc: Change license to plain GPLv2 + later.Corinna Vinschen2007-07-245-10/+386
| | | | | * dumper.h: Ditto. * parse_pe.cc: Ditto.
* * Makefile.in (SUBDIRS): Delete stray line continuation artifact,Keith Marshall2007-07-232-2/+10
| | | | | resulting from incomplete removal of enclosing `for ...; do ...; done' loop from compound command; (reported by Greg Chicares).
* * strace.cc (create_child): Don't convert a path from cygwin format unless itChristopher Faylor2007-07-232-1/+7
| | | | has a slash.
* * bsd_helper.cc: Drop unnecessary security.h include.Corinna Vinschen2007-07-212-1/+4
|
* Fix ChangeLogCorinna Vinschen2007-07-201-2/+0
|
* * fhandler.cc (fhandler_base::fhaccess): Accommodate interface changesCorinna Vinschen2007-07-2010-1381/+1287
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | of access control functions throughout. * fhandler_disk_file.cc: Ditto. * fhandler_registry.cc: Ditto. * sec_acl.cc: Drop unnecessary includes. (setacl): Take path_conv instead of file name as parameter. Accommodate interface changes of access control functions. (getacl): Ditto. * sec_auth.cc: New file, taking over all authentication related functions from security.cc. * sec_helper.cc: Drop unnecessary includes. * security.cc: Ditto. Move all authentication related functions to sec_auth.cc. (ALL_SECURITY_INFORMATION): New define. Use throughout. (set_file_sd): New function, replacing read_sd and the file related part of get_nt_object_security. (get_reg_sd): Rename from get_reg_security. Drop type parameter. (get_reg_attribute): New function, replacing the registry related part of get_nt_object_security. (get_file_attribute): Take path_conv instead of file name as parameter. Use new get_file_sd call. (set_file_attribute): Ditto plus new set_file_sd. Drop unnecessary implementation without uid/gid parameters. (check_file_access): Take path_conv instead of file name as parameter. Use new get_file_sd call. (check_registry_access): Use new get_reg_sd call. * security.h: Accommodate above interface changes.
* * security.cc (set_nt_attribute): Remove.Corinna Vinschen2007-07-192-21/+16
| | | | | (set_file_attribute): Do it yourself instead of calling set_nt_attribute.
* * fhandler_disk_file.cc (fhandler_base::fstat_by_name): UseCorinna Vinschen2007-07-193-29/+43
| | | | | | | | NtQueryFullAttributesFile instead of FindFirstFile. (fhandler_base::fstat_fs): Drop check for exec_state. Drop check for invalid characters. * ntdll.h (struct _FILE_NETWORK_OPEN_INFORMATION): Define. (NtQueryFullAttributesFile): Declare.
* * fhandler.cc (fhandler_base::open): Drop local wpath and upathCorinna Vinschen2007-07-196-24/+74
| | | | | | | | | | | | | | | | | variables. Call pc.get_object_attr to create object attributes. * fhandler_disk_file.cc (fhandler_disk_file::opendir): Ditto. * syscalls.cc (unlink_nt): Ditto. * path.cc (path_conv::set_normalized_path): Set wide_path to NULL. (path_conv::get_nt_native_path): Drop parameter. Create path in wide_path/uni_path members. (path_conv::get_object_attr): New method to create object attributes. (path_conv::get_wide_win32_path): New method to create Win32 wide path. (path_conv::check): Initialize wide_path to NULL. (path_conv::~path_conv): cfree wide_path. * path.h (class path_conv): New members wide_path and uni_path. Add declarations of get_object_attr and get_wide_win32_path. (path_conv::path_conv): Initialize wide_path to NULL. (path_conv::get_nt_native_path): Drop parameter.
* * include/fcntl.h (_O_WTEXT, _O_U16TEXT, _O_U8TEXT) Define forDanny Smith2007-07-192-1/+12
| | | | Vista.
* * sec_helper.cc: Remove unused code.Corinna Vinschen2007-07-192-71/+4
|
* * autoload.cc (SetSecurityDescriptorControl): Drop.Corinna Vinschen2007-07-195-22/+25
| | | | | | | | * security.cc (alloc_sd): Set security descriptor control flag without calling SetSecurityDescriptorControl function. * wincap.h (wincapc::has_dacl_protect): Rename from has_security_descriptor_control. * wincap.cc: Ditto throughout.
* * autoload.cc (SetUserObjectSecurity): Drop.Corinna Vinschen2007-07-195-7/+24
| | | | | | | | * pinfo.cc (pinfo::set_acl): Use NtSetSecurityObject instead of SetKernelObjectSecurity. * spawn.cc (spawn_guts): Use NtSetSecurityObject instead of SetUserObjectSecurity. * uinfo.cc (cygheap_user::init): Ditto.
* * cygheap.h (init_cygheap::luid): Remove.Corinna Vinschen2007-07-199-170/+302
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * mmap.cc (mlock): Accommodate parameter change in call to push_thread_privilege. (munlock): Ditto. * ntdll.h (STATUS_NOT_ALL_ASSIGNED): Define. (NtAdjustPrivilegesToken): Declare. * sec_helper.cc (cygpriv): Reorder to match numerical privilege order. (privilege_luid): Take job of privilege_luid_by_name, using new cygpriv. (privilege_luid_by_name): Remove. (privilege_name): Accommodate new cygpriv array. (set_privilege): Call NtAdjustPrivilegesToken to avoid using advapi32. Accommodate changes to privilege_name. (set_cygwin_privileges): Simplify. Don't try to set SE_CREATE_GLOBAL_PRIVILEGE on systems not supporting it. * security.cc (sys_privs): Reorder to match numerical privilege order. Use real privilege values as defined in security.h. (get_system_priv_list): Drop unused grp_list argument. Create list of privileges according to new wincapc::max_sys_priv value. (get_priv_list): Call privilege_luid instead of privilege_luid_by_name. Make priv a local value instead of a pointer. (create_token): Accommodate parameter change in call to push_self_privilege. (lsaauth): Ditto. (check_access): Use privilege values directly instead of calling privilege_luid. * security.h: Define real privilege values. (cygpriv_idx): Remove. (privilege_luid): Change declaration. (privilege_luid_by_name): Drop declaration. (set_privilege): Change declaration. (set_process_privilege): Drop definition. (_push_thread_privilege): Accomodate new set_privilege parameters. * wincap.h (wincapc::max_sys_priv): New element. * wincap.cc: Implement above element throughout. (wincap_2000sp4): New wincaps structure. (wincap_xpsp1): Ditto. (wincap_xpsp2): Ditto. (wincapc::init): Use new wincaps. (wincapc::max_sys_priv): New element.
* * dcrt0.cc (dll_crt0_0): Call set_cygwin_privileges here, afterCorinna Vinschen2007-07-193-2/+8
| | | | | initializing hProcToken. * sec_helper.cc (init_global_security): Don't call set_cygwin_privileges here.
* Fix 'make info'.Eric Blake2007-07-199-20/+39
| | | | | | | | | | | | * libc/stdio/stdio.tex: Add missing include. * libc/stdio/vfprintf.c: Use expected node name. * libc/stdio/vfscanf.c: Likewise. * libc/stdio/sscanf.c: Likewise. * libc/stdio/sprintf.c: Likewise. * libc/stdio/siscanf.c: Likewise. * libc/stdio/siprintf.c: Likewise. * libc/stdio/fopencookie.c: Quote raw {}. Reported by DJ Delorie.
* * xtensa-config.h (XCHAL_HAVE_THREADPTR): New.Bob Wilson2007-07-182-1/+15
| | | | (XCHAL_HAVE_RELEASE_SYNC, XCHAL_HAVE_S32C1I): New.
* Fix date type for 1.15 release.Jeff Johnston2007-07-181-1/+1
|
* * faq-using.xml (faq.using.console-window): Mention FHS location ofBrian Dessent2007-07-182-5/+7
| | | | docs and remove outdated reference to ash.
* * include/winnt.h (SE_TRUSTED_CREDMAN_ACCESS_NAME): Define.Corinna Vinschen2007-07-182-0/+5
|
* * cygheap.h (shared_prefix): De-const.Corinna Vinschen2007-07-183-2/+13
| | | | | | | (shared_prefix_buf): Add static buffer for shared prefix to avoid additional allocation. * cygheap.cc (cygheap_init): Set cygheap->shared_prefix to cygheap->shared_prefix_buf and strcpy.
* * fhandler.cc (fhandler_base::fhaccess): Add check for R/O file system.Corinna Vinschen2007-07-173-1/+16
| | | | | * security.cc (check_registry_access): Set errno to EROFS when checking for W_OK.
* * include/winnt.h (FILE_READ_ONLY_VOLUME): Define.Corinna Vinschen2007-07-173-0/+7
| | | | * include/ddk/ntifs.h (FILE_READ_ONLY_VOLUME): Define.
* * COPYING3: New file. Contains version 3 of the GNU General Public License.Nick Clifton2007-07-175-0/+1525
| | | | * COPYING3.LIB: New file. Contains version 3 of the GNU Lesser General Public License.
* * fhandler_disk_file.cc (fhandler_disk_file::opendir): Move settingCorinna Vinschen2007-07-172-3/+8
| | | | cfd->nohandle where it won't crash.
* * cygheap.h (cygheap_user::curr_imp_token): Rename from current_token.Corinna Vinschen2007-07-167-16/+28
| | | | | | | | | | | Accommodate changge throughout Cygwin. (cygheap_user::imp_token): Rename from token. Accommodate changge throughout Cygwin. (rcygheap_user::eimpersonate): Use primary token for impersonation. * grp.cc (internal_getgroups): Use primary impersonation token when impersonated. * security.h (_push_thread_privilege): Use primary impersonation token when impersonated.
* * init.cc (in_dllentry): Delete.Christopher Faylor2007-07-145-7/+10
| | | | | | | (dll_entry): Remove assignment to deleted variable. * winsup.h (in_dllentry): Delete declaration. * exceptions.cc (inside_kernel): Use another method to see if we are in dll_entry phase.
* * init.cc (in_dllentry): Make NO_COPY to avoid spurious false positives.Christopher Faylor2007-07-142-1/+6
|
* Fix fflush issues.Eric Blake2007-07-1317-67/+152
| | | | | | | | | | | | | | | | | | | | | * libc/stdio/fflush.c (_fflush_r): New function. (fflush): Fix reentrancy and large offset behavior. * libc/include/stdio.h (_fflush_r): Add prototype. * libc/stdio/fclose.c (_fclose_r): All fflush callers changed. * libc/stdio/freopen.c (_freopen_r): Likewise. * libc/stdio/fseek.c (_fseek_r): Likewise. * libc/stdio/ftell.c (_ftell_r): Likewise. * libc/stdio/fvwrite.c (__sfvwrite_r): Likewise. * libc/stdio/refill.c (__srefill_r): Likewise. * libc/stdio/setvbuf.c (setvbuf): Likewise. * libc/stdio/ungetc.c (_ungetc_r): Likewise. * libc/stdio/vfprintf.c (__sbprintf): Likewise. * libc/stdio/wbuf.c (__swbuf_r): Likewise. * libc/stdio64/freopen64.c (_freopen64_r): Likewise. * libc/stdio64/fseeko64.c (_fseeko64_r): Likewise. Defer to 32-bit version if not large file. * libc/stdio64/ftello64.c (_ftello64_r): Likewise. * libc/stdio64/tmpfile64.c (_tmpfile64_r): Avoid compile warning.
* merge from gccDJ Delorie2007-07-131-17/+17
|
* * mep/fmax.ld, mep/gmap_default.ld, mep/min.ld, mep/simple.ldKevin Buettner2007-07-135-4/+9
| | | | (.gcc_except_table): Add pattern for .gcc_except_table.*.
* Documentation updates.Eric Blake2007-07-135-49/+111
| | | | | | | | * libc/stdio/ungetc.c: Document ungetc. * libc/stdio/Makefile.am (CHEWOUT_FILES): Sort, match current list of files with documentation. * libc/stdio/Makefile.in: Regenerate. * libc/stdio/stdio.tex: Sort and update stdio documentation index.
* * splay-tree.h (libi_uhostptr_t, libi_shostptr_t): Adjust typesHans-Peter Nilsson2007-07-122-4/+7
| | | | work-a-round whitespace problem in gcc gengtype.
* * configure.ac: Fix my previous change to really match GCC.Bernd Schmidt2007-07-123-2/+7
| | | | * configure: Regenerate.
* 2007-07-12 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>Chris Sutcliffe2007-07-122-0/+7
| | | | | * include/winuser.h (FE_FONTSMOOTHINGSTANDARD, FE_FONTSMOOTHINGCLEARTYPE): Define.
* Changelog typoDanny Smith2007-07-121-2/+3
|
* * incude/wchar.h (_wsystem) Declare.Danny Smith2007-07-124-13/+39
| | | | | | | | | | | | | (_wputenv) Declare. (_wgetenv): Declare. (_wsearchenv): Declare. (_wmakepath): Declare. (_wsplitpath): Declare. (_wfullpath): Declare. * incude/stdlib.h (_wsystem) Declare. (_wputenv, _wgetenv, _wsearchenv, _wmakepath, _wsplitpath, _wfullpath): Move into _WSTDLIB_DEFINED guard. * include/tchar.h (_tsystem): New UNICODE mapping define.
* * include/winuser.h: (PBT_APMQUERYSUSPEND, PBT_APMQUERYSTANDBY,Danny Smith2007-07-123-16/+36
| | | | | | | | PBT_APMQUERYSUSPENDFAILED, PBT_APMQUERYSTANDBYFAILED, PBT_APMSUSPEND, PBT_APMSTANDBY, PBT_APMRESUMECRITICAL, PBT_APMRESUMESUSPEND, PBT_APMRESUMESTANDBY, PBT_APMBATTERYLOW, PBT_APMPOWERSTATUSCHANGE, PBT_APMOEMEVENT, PBT_APMRESUMEAUTOMATIC): Sync with include/pbt.h.
* Add support for building on a 64-bit Windows host.Nick Clifton2007-07-124-21/+40
|
* [mingw-Bugs-1751518]Danny Smith2007-07-124-34/+19
| | | | | | | | | | | * include/mshtml.h (IHTMLDocument2): Correct spelling of put_URL, get_URL. [mingw-Bugs-1751565] * include/basetyps.h (IID); Guard with __IID_DEFINED__ [mingw-Bugs-1751595] * include/exdisp.h (DWebBrowserEvents2): Remove undocumented STDDISP methods.