summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin
Commit message (Collapse)AuthorAgeFilesLines
* * spawn.cc (spawn_guts): Remove long path prefix from win32 pathCorinna Vinschen2008-07-222-0/+19
| | | | before calling CreateProcess if path length is < MAX_PATH.
* * include/ctype.h: Declare __ctype_ptr__ to keep newlib build happy.Corinna Vinschen2008-07-222-0/+7
|
* * Makefile.in (cygcheck.exe): Link against ntdll.Corinna Vinschen2008-07-211-0/+11
| | | | | | | | | | * bloda.cc: link against ntdll functions statically. * cygpath.cc (get_user_folder): Drop 9x code. (print_version): Fix copyright. * mkgroup.c: Remove 9x code. * mkpasswd.c: Ditto. * path.cc (oopts): Add new mount options. * ps.cc: Fix copyright.
* * autoload.cc (WNetGetProviderNameA): Define.Corinna Vinschen2008-07-193-34/+101
| | | | | | | | | | | | (WNetGetResourceParentA): Remove. * fhandler_netdrive.cc (struct net_hdls): New structure to keep WNet handles. Stored in dir->__handle throughout. (thread_netdrive): Rewrite to enumerate all servers in all accessible domains and workgroups. (fhandler_netdrive::readdir): Simplify toplevel code. Lowercase all server names in toplevel. (fhandler_netdrive::rewinddir): Close all WNet handles and free net_hdls structure.
* * fhandler.cc (fhandler_base::open): Rename x to fh. On Samba, alwaysCorinna Vinschen2008-07-182-17/+30
| | | | | create file with NULL security descriptor and set the permissions afterwards. Explain why.
* * environ.cc (known): Remove "binmode" option.Corinna Vinschen2008-07-186-11/+11
| | | | | | | | * fhandler.cc (binmode): Remove. (fhandler_base::set_flags): Accommodate binmode removal. * path.h (path_conv::set_binary): Remove. * pipe.cc (pipe): Create pipes always as binary pipes. * winsup.h (binmode): Remove declaration.
* * mount.cc (mount_info::from_fstab_line): Default to binary mount.Corinna Vinschen2008-07-172-1/+5
|
* * path.cc (allow_winsymlinks): Revert default to create system bitCorinna Vinschen2008-07-162-1/+6
| | | | symlinks for speed.
* Add case-sensitivity.Corinna Vinschen2008-07-1622-490/+288
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unconditionally handle mount points case-sensitive. Unconditionally handle virtual paths case-sensitive. Unconditionally handle registry paths case-insensitive. Otherwise, accommodate case-sensitivity of given path throughout. * cygheap.cc (cygheap_root::set): Get additional caseinsensitive parameter and store it. * cygheap.h (struct cygheap_root_mount_info): Add member caseinsensitive. * dlfcn.cc (get_full_path_of_dll): Drop PC_NOFULL parameter from call to path_conv::check. * environ.cc (pcheck_case): Remove. (check_case_init): Remove. (known): Drop "check_case" option. * exceptions.cc (open_stackdumpfile): Add comment. * fhandler.cc (fhandler_base::get_default_fmode): Call pathmatch instead of strcasematch. * fhandler_disk_file.cc: Accommodate case-sensitivity of given path throughout. (__DIR_mounts::check_mount): Unconditionally check virtual paths case-sensitive. (fhandler_disk_file::link): Drop case clash handling. (fhandler_disk_file::open): Ditto. (fhandler_disk_file::readdir_helper): Drop managed mount code. * mount.cc: Remove managed mount code and datastructures. (struct opt): Remove "managed" option. Add "posix=0" and "posix=1" options. (fillout_mntent): Remove "managed" output. Add "posix" output. * path.cc (struct symlink_info): Remove case_clash member and case_check method. (pcheck_case): Remove. (path_prefix_p): Take additional bool parameter "caseinsensitive". (pathnmatch): Ditto. (pathmatch): Ditto. (mkrelpath): Ditto. (fs_info::update): Set caseinsensitive flag according to file system name and FILE_CASE_SENSITIVE_SEARCH flag. Add comment. (tfx_chars_managed): Remove. (transform_chars): Drop "managed" parameter. Always use tfx_chars. (get_nt_native_path): Drop "managed" parameter. Make sure drive letters are always upper case. (getfileattr): Change second parameter to denote caseinsensitivity. (path_conv::check): Initialize caseinsensitive to OBJ_CASE_INSENSITIVE. Set caseinsensitive according to global obcaseinsensitive flag, file system case sensitivity and MOUNT_NOPOSIX mount flag. Drop case_clash and all the related code. (symlink_worker): Drop case clash handling. (symlink_info::set): Drop setting case_clash. (symlink_info::case_check): Remove. (cwdstuff::set): Add comment. (etc::init): Take path_conv instead of PUNICODE_STRING as parameter to allow case sensitivity. * path.h (enum pathconv_arg): Drop PC_SYM_IGNORE. (enum case_checking): Remove. (enum path_types): Drop PATH_ENC, add PATH_NOPOSIX flag. (struct fs_info): Add caseinsensitive flag and accessor methods. (class path_conv): Add caseinsensitive member and define objcaseinsensitive method. Drop case_clash member and isencoded method. (pathmatch): Change prototype according to above change. (pathnmatch): Ditto. (path_prefix_p): Ditto. (get_nt_native_path): Ditto. (class etc): Ditto. (fnunmunge): Remove prototype. * shared.cc (shared_info::init_obcaseinsensitive): Initialize obcaseinsensitive flag from obcaseinsensitive registry value. (shared_info::initialize): Call init_obcaseinsensitive here by the first process creating the shared memory. * shared_info.h (mount_item::fnmunge): Remove. (shared_info::obcaseinsensitive): Rename from obcaseinsensitivity. (shared_info::init_obcaseinsensitive): Declare. * syscalls.cc (try_to_bin): Add comment. * include/sys/mount.h (MOUNT_ENC): Remove flag. (MOUNT_NOPOSIX): Add flag.
* * fhandler_tape.cc (mtinfo::initialize): Remove synchronization stuff.Corinna Vinschen2008-07-155-40/+25
| | | | | | | | | | | | | | Just initialize drive data. * mtinfo.h (MTINFO_MAGIC): Remove. (MTINFO_VERSION): Remove. (class mtinfo): Remove magic and version members. * shared.cc (shared_info::initialize): Move call to get_session_parent_dir so that the dir creation is only called once. Move call to mt.initialize so that it's called only by the first process creating the shared memory. * shared_info.h (SHARED_INFO_CB): Accommodate change to shared_info. (CURR_SHARED_MAGIC): Ditto. (class shared_info): Add obcaseinsensitivity member.
* * fhandler.cc (fhandler_base::fpathconf): On _PC_POSIX_PERMISSIONSCorinna Vinschen2008-07-142-1/+6
| | | | and _PC_POSIX_SECURITY, return true for NFS, too.
* Throughout drop allow_ntsec and allow_smbntsec handling.Corinna Vinschen2008-07-1413-56/+51
| | | | | | | | | | | | | | | | * environ.cc (set_ntsec): Remove. (set_smbntsec): Remove. (known): Remove ntsec and smbntsec options. * external.cc (check_ntsec): Return true if no filename is given. * mount.cc (oopts): Add "acl" and "noacl" options. Set MOUNT_NOACL flag accordingly. (fillout_mntent): Handle MOUNT_NOACL flag. * path.h (enum path_types): Add PATH_NOACL. * security.cc (allow_ntsec): Remove. (allow_smbntsec): Remove. * security.h (allow_ntsec): Drop declaration. (allow_smbntsec): Drop declaration. * include/sys/mount.h (MOUNT_NOACL): Define.
* * miscfuncs.cc (cygwin_strncasecmp): Fix bug which results inCorinna Vinschen2008-07-142-6/+10
| | | | | prematurely truncated strings. Simplify target length argument to sys_mbstowcs.
* * autoload.cc (GetExtendedTcpTable): Define.Corinna Vinschen2008-07-144-20/+68
| | | | | | | | | * fhandler_socket.cc (address_in_use): Take const struct sockaddr pointer as argument. Implement additional AF_INET6 table check. (fhandler_socket::bind): Drop AF_INET test before calling address_in_use. * net.cc (ipv4_getnameinfo): Return EAI_FAMILY instead of 1 if called with unsupported af_family.
* Fix usage of recently fixed Interlocked* functions.Eric Blake2008-07-122-10/+15
| | | | | * winbase.h (ilockincr, ilockdecr, ilockexch, ilockcmpexch): Add volatile qualifier, to match Interlocked* functions.
* * select.cc (peek_pipe): Temporarily revert patch from 2008-05-30.Corinna Vinschen2008-07-112-4/+10
|
* Change length for domain buffers from INTERNET_MAX_HOST_NAME_LENGTH toCorinna Vinschen2008-07-117-90/+135
| | | | | | | | | | | | | | | | | | | | | | | | | MAX_DOMAIN_NAME_LEN throughout. * cyglsa.h (CYG_LSA_MAGIC): New value. (cyglsa_t): Define username and domain as WCHAR arrays. * errno.cc (errmap): Add mapping for ERROR_NONE_MAPPED. * sec_auth.cc: Drop 'w' prefix from WCHAR string variable names where appropriate. (extract_nt_dom_user): Prefer resolving by SID before resolving by domain\name pair. (cygwin_logon_user): Don't print cleartext password in debug output. Change comment. (get_user_groups): Revert calls to LookupAccountNameW to use NULL server instead of explicit server name, according to MSDN. (get_user_local_groups): Ditto. (get_server_groups): Fetch domain and user name from usersid per LookupAccountSidW instead of calling extract_nt_dom_user. (lsaauth): Fetch domain and user name from usersid per LookupAccountSidW instead of calling extract_nt_dom_user. * sec_helper.cc (cygpriv): Convert to wchar_t pointer array. (privilege_luid): Convert first parameter to PWCHAR. (privilege_name): Return wchar_t pointer. (set_privileges): Accommodate debug output. * security.h (privilege_luid): Change prototype accordingly.
* * cyglsa.h (SECURITY_STRING): Define.Corinna Vinschen2008-07-103-7/+94
| | | | | | | | | | (enum _SECPKG_NAME_TYPE): Define. (struct _SECPKG_CALL_INFO): Define. (struct _LSA_SECPKG_FUNCS): Extend to full size. Define unused functions lazily. (cygprf_t): Define. * sec_auth.cc (lsaauth): Use actual primary group if no admins group. Add (disabled) code to fetch token from profil data.
* * sec_auth.cc (verify_token): Allow builtin groups missing in a tokenCorinna Vinschen2008-07-092-2/+12
| | | | and it's still valid. Explain why.
* * autoload.cc (DsGetDcNameW): Replace DsGetDcNameA.Corinna Vinschen2008-07-097-129/+118
| | | | | | | | | | | | | | | | | | * dcrt0.cc (child_info_spawn::handle_spawn): Drop artificial supplementary group list from calling setgroups in parent. * grp.cc (internal_getgroups): Drop 9x-only code. Reformat. * sec_auth.cc (get_logon_server): Do everything in WCHAR only. (get_user_groups): Ditto. Use wlogonserver in LookupAccountNameW calls, too. (is_group_member): Get logon server as first argument and use in call to NetLocalGroupGetMembers. (get_user_local_groups): Get logon server as first argument and use in calls to NetLocalGroupEnum and LookupAccountNameW. Revamp to work more correctly in domain environments. (get_server_groups): Accommodate aforementioned changed function calls. * security.h (get_logon_server): Change prototype accordingly. * uinfo.cc (cygheap_user::env_logsrv): Accommodate changed get_logon_server call.
* * grp.cc (internal_getgroups): Also add integrity-enabled groups.Corinna Vinschen2008-07-092-1/+6
|
* * sec_auth.cc (verify_token): Disable code which returns false ifCorinna Vinschen2008-07-092-0/+17
| | | | | the token contains additional groups not requested by setgroups. Explain why.
* * fhandler_socket.cc (fhandler_socket::bind): Don't run explicitCorinna Vinschen2008-07-085-7/+50
| | | | | | | | | | local socket test in SO_REUSEADDR case on systems supporting enhanced socket security. Explain why. Only call address_in_use for AF_INET sockets. * net.cc (cygwin_setsockopt): Don't call setsockopt to set SO_REUSEADDR on systems supporting enhanced socket security. Add comment. * wincap.h (wincaps::has_enhanced_socket_security): New element. * wincap.cc: Implement above element throughout.
* * net.cc (ipv6_inited): Make NO_COPY.Corinna Vinschen2008-07-082-1/+5
|
* * path.cc (path_conv::is_binary): Fix test. Add comment.Corinna Vinschen2008-07-022-2/+8
|
* * net.cc (cygwin_bindresvport_sa): Fix usage of last_used_bindresvport.Corinna Vinschen2008-06-242-2/+6
|
* * include/limits.h (PATH_MAX): Add comment.Corinna Vinschen2008-06-213-1/+8
| | | | | * include/cygwin/config.h (__FILENAME_MAX__): Define as 4096. Add comment.
* * fhandler_tty.cc (fhandler_pty_master::setup): Fix pipe inheritance.Corinna Vinschen2008-06-192-2/+6
|
* * strsig.cc (strsignal): Return non-const buffer to allow building with recentChristopher Faylor2008-06-192-3/+12
| | | | newlib change.
* * sec_auth.cc (DsGetDcNameA): Drop declaration.Corinna Vinschen2008-06-172-5/+5
| | | | (DS_FORCE_REDISCOVERY): Drop definition.
* * spawn.cc (spawn_guts): Reinstate call to fhandler_console::need_invisibleChristopher Faylor2008-06-172-0/+8
| | | | since it is required to prevent console flashing.
* * include/resolv.h (_getshort): Drop declaration.Corinna Vinschen2008-06-172-4/+5
| | | | (_getlong): Ditto.
* * mount.cc (mount_info::get_cygdrive_info): Fix usage of user andCorinna Vinschen2008-06-132-9/+23
| | | | | system arguments. Strip trailing slash from path for backward compatibility.
* * fhandler.h (set_console_state_for_spawn): Drop declaration.Corinna Vinschen2008-06-124-39/+14
| | | | | | | * fhandler_console.cc (set_console_state_for_spawn): Remove. (fhandler_console::open): Set console state last. Don't set ENABLE_PROCESSED_INPUT flag. * spawn.cc (spawn_guts): Drop call to set_console_state_for_spawn.
* remove obsolete commentChristopher Faylor2008-06-121-1/+0
|
* * path.cc (get_nt_native_path): Drop considerations for DOS devices.Corinna Vinschen2008-06-112-5/+17
| | | | | | Keep relative paths relative. (cygwin_conv_path): Don't try to skip native NT prefixes on relative paths.
* * include/cygwin/version.h (CYGWIN_VERSION_MOUNT_REGISTRY): Bump.Corinna Vinschen2008-06-112-4/+14
| | | | | | | | (CYGWIN_INFO_CYGWIN_MOUNT_REGISTRY_NAME): Remove. (CYGWIN_INFO_CYGDRIVE_FLAGS): Remove. (CYGWIN_INFO_CYGDRIVE_PREFIX): Remove. (CYGWIN_INFO_CYGDRIVE_DEFAULT_PREFIX): Add comment to differ from the registry related defines.
* * fhandler_procnet.cc (dad_to_flags): Fix comment.Corinna Vinschen2008-06-112-1/+5
|
* * fhandler_procnet.cc (get_scope): New static function to evaluateCorinna Vinschen2008-06-102-4/+39
| | | | | | | | | scope. (dad_to_flags): New static array to convert Windows DAD state to Linux values. (format_procnet_ifinet6): Drop asking for IfIndex, just use Ipv6IfIndex. Use get_scope and dad_to_flags to generate more accurate linux-like output.
* * net.cc (if_nametoindex): Fix typo in call to get_adapters_addresses.Corinna Vinschen2008-06-102-1/+29
| | | | | | (if_indextoname): Prefer IPv6 loopback device name over IPv4 loopback device name on pre-Vista systems. (if_nameindex): Ditto.
* * fhandler_procnet.cc (format_procnet_ifinet6): Use sprintf rather thanCorinna Vinschen2008-06-103-12/+21
| | | | | | | | __small_sprintf. * net.cc (if_nametoindex): Prefer IPv6IfIndex over IfIndex for consistency with /proc/net/if_inet6. (if_indextoname): Ditto. (if_nameindex): Ditto.
* * mount.cc (mount_info::from_fstab): Read sizeof (buf) - 2 bytes.Corinna Vinschen2008-06-102-3/+34
| | | | Add code to handle overly long lines.
* * sec_auth.cc (lsaauth): Make returned token inheritable.Corinna Vinschen2008-06-102-0/+9
|
* * devices.cc: Regenerate.Corinna Vinschen2008-06-102-64/+68
|
* * devices.in: Remove "Global" from tty device.Christopher Faylor2008-06-092-1/+5
|
* * signal.cc (abort): Only flush streams after signal handler.Christopher Faylor2008-06-092-10/+8
|
* * cygwin.sc: Remove unrequired and erroneous definition.Christopher Faylor2008-06-032-1/+4
|
* * select.cc (peek_pipe): Semi-reinstate pipe NT-special write detection.Christopher Faylor2008-05-302-14/+17
|
* add missing entryChristopher Faylor2008-05-291-0/+1
|
* * devices.in: Change mapping for /dev/ttyS* and /dev/com*.Christopher Faylor2008-05-293-82/+86
|