Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-03-03Cygwin: glob: fix conversion from UTF-32 to multibyteCorinna Vinschen
The conversion function g_Ctoc missed to drop the flag values from the wint_t value. That wasn't noticable with the original version because it used a 64 bit Char type and the flags were in the upper 32 bit region. So the flag values were silently dropped when wcrtomb was called. After converting Char to wint_t, we have to do drop the flags explicitely. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2023-03-01Cygwin: add wcipcpy and wcipncpy helper functionsCorinna Vinschen
wint_t replacements for wcpcpy and wcpncpy Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2023-03-01Cygwin: wcitoascii: move to wchar.h as inline functionCorinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2023-02-24Cygwin: convert Windows locale handling from LCID to ISO5646 stringsCorinna Vinschen
Since Windows Vista, locale handling is converted from using numeric locale identifiers (LCID) to using ISO5646 locale strings. In the meantime Windows introduced new locales which don't even have a LCID attached. Those were unusable in Cygwin because locale information for these locales required to call the new locale functions taking a locale string. Convert Cygwin to drop LCIDs and use Windows ISO5646 locales instead. The last place using LCIDs is the __set_charset_from_locale function. Checking numerically is easier and uslay faster than checking strings. However, this function is clearly a TODO
2023-02-22Cygwin: glob: perform ignore_case_with_glob on inputCorinna Vinschen
Rather than converting single chars on the fly to lowercase in case ignore_case_with_glob is set, perform the conversion on the entire input (pattern and filenames).
2023-02-22Cygwin: glob: perform correct utf-32 -> multibyte conversionCorinna Vinschen
g_Ctoc, converting the UTF-32 filenames to multibyte, still used UTF-16 to multibyte conversion. Introduce a wirtomb helper and fix that. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2023-02-22Cygwin: glob: fix includesCorinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2023-02-21Cygwin: glob: implement collating symbol supportCorinna Vinschen
Allow the [.<sym>.] expression This requires a string comparision rather than a character comparison. Introduce and use __wscollate_range_cmp. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2023-02-21Cygwin: glob: convert internal character datatype to wint_tCorinna Vinschen
uint_fast64_t doesn't allow easy string handling, so convert the internal "Char" type to wint_t. Given that UTF-32 only needs 21 bits, we're well off with 28 usable character bits. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2023-02-21Cygwin: glob: sort in current locale's collating orderCorinna Vinschen
Follow glibc here. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2023-02-19Cygwin: convert __collate_range_cmp to __wcollate_range_cmpCorinna Vinschen
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=179721 After FreeBSD eventually picked up the bugreport from within only 5 years, rename __collate_range_cmp to __wcollate_range_cmp as suggested all along, and make it type safe (wint_t instead of wchar_t for hopefully obvious reasons...) While at it, drop __collate_load_error and fix the checks for it in glob and fnmatch. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2023-02-16Cygwin: glob: handle equivalence class expressionsCorinna Vinschen
Handle [=x=] expressions in range brackets. Use the new is_unicode_equiv() function to perform the check. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2023-02-15Cygwin: glob: handle named character classesCorinna Vinschen
Handle [:<character-class>:] expressions in range brackets. TODO: Collating symbols [.<collsym>'.] and Equivalence class expressions [=<equiv-class>=] are recognized but skipped as if they are not present at all. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2023-02-14Cygwin: glob: convert wchar_t to wint_tCorinna Vinschen
...thus handling all Unicode values sanely. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2022-05-30Cygwin: simplify some function namesKen Brown
Remove "32" or "64" from each of the following names: acl32, aclcheck32, aclfrommode32, aclfrompbits32, aclfromtext32, aclsort32, acltomode32, acltopbits32, acltotext32, facl32, fchown32, fcntl64, fstat64, _fstat64, _fstat64_r, ftruncate64, getgid32, getgrent32, getgrgid32, getgrnam32, getgroups32, getpwuid32, getpwuid_r32, getuid32, getuid32, initgroups32, lseek64, lstat64, mknod32, mmap64, setegid32, seteuid32, setgid32, setgroups32, setregid32, setreuid32, setuid32, stat64, _stat64_r, truncate64. Remove prototypes and macro definitions of these names. Remove "#ifndef __INSIDE_CYGWIN__" from some headers so that the new names will be available when compiling Cygwin. Remove aliases that are no longer needed. Include <unistd.h> in fhandler_clipboard.cc for the declarations of geteuid and getegid.
2022-05-30Cygwin: remove some 32-bit-only function definitionsKen Brown
Remove the definitions of the following: acl, aclcheck, aclfrommode, aclfrompbits, aclfromtext, aclsort, acltomode, acltopbits, acltotext, chown, fchown, _fcntl, fstat, _fstat_r, ftruncate, getegid, geteuid, getgid, getgrent, getgrgid, getgrnam, getgroups, getpwduid, getpwuid, getpwuid_r, getuid, initgroups, lacl, lacl32, lchown, lseek, lstat, mknod, mmap, setegid, seteuid, setgid, setgroups, setregid, setreuid, setuid, stat, _stat_r, truncate. [For most of these, the corresponding 64-bit entry points are obtained by exporting aliases. For example, acl is an alias for acl32, and truncate is an alias for truncate64.] Remove the following structs and all code using them (which is 32-bit only): __stat32, __group16, __flock32, __aclent16_t. Remove the typedefs of __blkcnt32_t __dev16_t, __ino32_t, which are used only in code that has been removed. Put the typedefs of __uid16_t and __gid16_t in one header, instead of one header if __INSIDE_CYGWIN__ is defined and a different header otherwise.
2020-08-05Cygwin: Add 'fallthrough' pseudo keyword for switch/case useCorinna Vinschen
This patch has been inspired by the Linux kernel patch 294f69e662d1 compiler_attributes.h: Add 'fallthrough' pseudo keyword for switch/case use written by Joe Perches <joe AT perches DOT com> based on an idea from Dan Carpenter <dan DOT carpenter AT oracle DOT com>. The following text is from the original log message: Reserve the pseudo keyword 'fallthrough' for the ability to convert the various case block /* fallthrough */ style comments to appear to be an actual reserved word with the same gcc case block missing fallthrough warning capability. All switch/case blocks now should end in one of: break; fallthrough; goto <label>; return [expression]; continue; In C mode, GCC supports the __fallthrough__ attribute since 7.1, the same time the warning and the comment parsing were introduced. Cygwin-only: add an explicit -Wimplicit-fallthrough=5 to the build flags.
2015-03-03 * common.din (issetugid): Export.Corinna Vinschen
* glob.cc (issetugid): Drop macro. * sec_auth.cc (issetugid): New exported function. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
2013-11-25 Throughout, keep function definitions and declarations in sync withCorinna Vinschen
newlib in terms of C99 "restrict" keyword.
2013-04-23 * Merge in cygwin-64bit-branch.Corinna Vinschen
2013-04-16 * glob.cc: Include winsup.h before anything else.Corinna Vinschen
2012-08-17whitespace cleanupChristopher Faylor
2012-03-07 * glob.cc (MAXPATHLEN): Reinstantiate with a value of 8192.Corinna Vinschen
2012-02-13 * Makefile.in (clean): Remove non-existant regexp dir.Corinna Vinschen
* collate.h: New header. (__collate_range_cmp): Declare. (__collate_load_error): Define. * glob.cc: Pull in latest version from FreeBSD. Simplify and reduce Cygwin-specific changes. * regex/regcomp.c: Include collate.h on Cygwin as well. (__collate_range_cmp): Move from here... * nlsfuncs.cc (__collate_range_cmp): ...to here. * miscfuncs.cc (thread_wrapper): Fix typo in comment. (CygwinCreateThread): Take dead zone of Windows stack into account. Change the way how the stack is commited and how to handle guardpages. Explain how and why. * thread.h (PTHREAD_DEFAULT_STACKSIZE): Change definition. Explain why.
2009-01-03Remove unneeded header files from source files throughout. Update copyrightsChristopher Faylor
where appropriate. * globals.cc: New file for generic global variables. * mkglobals_h: New file to generate globals.h. * mkstatic: New Script used to build a (currently non-working) static libcygwin_s.a. * Makefile.in: Add unused rule to build a non-working libcygwin_s.a. (DLL_OFILES): Add globals.o. Make all objects rely on globals.h. (globals.h): New target. Generate globals.h. * cygtls.h: Honor new CYGTLS_HANDLE define to control when the HANDLE operator is allowed in _cygtls. * dcrt0.cc: Move most globals to globals.cc. * init.cc: Ditto. * environ.cc (strip_title_path): Remove now-unneeded extern. * fhandler_serial.cc (fhandler_serial::open): Ditto. * pinfo.cc: Ditto. (commune_process): Ditto. * shared.cc: Ditto. * glob.cc: Ditto. * strace.cc: Ditto. * exceptions.cc: Define CYGTLS_HANDLE before including winsup.h. * path.cc (stat_suffixes): Move here. * security.h: Add forward class path_conv declaration. * smallprint.cc (__small_vsprintf): Make a true c++ function. (__small_sprintf): Ditto. (small_printf): Ditto. (console_printf): Ditto. (__small_vswprintf): Ditto. (__small_swprintf): Ditto. * spawn.cc (spawn_guts): Remove _stdcall decoration in favor of regparm. (hExeced): Move to globals.cc * strfuncs.cc (current_codepage): Ditto. (active_codepage): Ditto. * sync.cc (lock_process::locker): Move here from dcrt0.cc. * syscalls.cc (stat_suffixes): Move to path.cc. * tty.cc (tty::create_master): Uncapitalize fatal warning for consistency. * winsup.h: Include globals.h to declare most of the grab bag list of globals which were previously defined here. * mount.h: Move USER_* defines back to shared_info.h. * speclib: Force temporary directory cleanup.
2008-04-07Remove unneeded header files from source files throughout.Christopher Faylor
2007-03-06 Add accidentally missing checkins.Corinna Vinschen
* fhandler.h (fhandler_base::fstat_helper): Add creation time parameter. * glob.cc (stat32_to_stat64): Set st_birthtim to st_mtim.
2007-02-20Remove extraneous whitespace.Christopher Faylor
* pinfo.cc (commune_process): Use default argument to lock_process. * sigproc.cc: Update copyright. * select.cc: Ditto.
2007-01-13* glob.cc: Update copyright notice with latest from FreeBSD.Christopher Faylor
(glob0): Use correct type for c variable to propagate previously detected protection.
2006-10-17 * glob.c: Remove.Corinna Vinschen
* glob.cc: New file. Latest glob version from FreeBSD plus Cygwin specific changes (__stat64/__stat32, ignore_case_with_glob, drop collate functions). (glob3): Return GLOB_ABORTED in case directory is unreadable and GLOB_ERR is set, as demanded by SUSv3. * glob.h: Import latest version from FreeBSD.