#
259065 |
|
07-Dec-2013 |
gjb |
- Copy stable/10 (r259064) to releng/10.0 as part of the 10.0-RELEASE cycle. - Update __FreeBSD_version [1] - Set branch name to -RC1
[1] 10.0-CURRENT __FreeBSD_version value ended at '55', so start releng/10.0 at '100' so the branch is started with a value ending in zero.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
256281 |
|
10-Oct-2013 |
gjb |
Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
#
244126 |
|
11-Dec-2012 |
jilles |
libc: Make various internal file descriptors close-on-exec.
These are obtained via fopen().
|
#
244091 |
|
10-Dec-2012 |
brooks |
Improve style(9) compliance of function declarations.
|
#
238182 |
|
06-Jul-2012 |
theraven |
Restore the __collate_load_error global that was accidentally removed in the xlocale refactoring.
MFC after: 1 week
|
#
236889 |
|
11-Jun-2012 |
theraven |
Fix a leak when setting the global character locale to "C" from something else.
Reported by: mm
|
#
232498 |
|
04-Mar-2012 |
theraven |
Reapply 227753 (xlocale cleanup), plus some fixes so that it passes build universe with gcc.
Approved by: dim (mentor)
|
#
231714 |
|
14-Feb-2012 |
dim |
Revert r231673 and r231682 for now, until we can run a full make universe with them. Sorry for the breakage.
Pointy hat to: me and brooks
|
#
231682 |
|
14-Feb-2012 |
theraven |
Fix a misplaced __NO_TLS locations, and change a GNUism to a C11ism for consistency.
Approved by: brooks (mentor)
|
#
231673 |
|
14-Feb-2012 |
theraven |
Cleanup of xlocale:
- Address performance regressions encountered by das@ by caching per-thread data in TLS where available. - Add a __NO_TLS flag to cdefs.h to indicate where not available. - Reorganise the xlocale.h definitions into xlocale/*.h so that they can be included from multiple places. - Export the POSIX2008 subset of xlocale when POSIX2008 says it should be exported, independently of whether xlocale.h is included. - Fix the bug where programs using ctype functions always assumed ASCII unless recompiled. - Fix some style(9) violations.
Reviewed by: brooks (mentor) Approved by: dim (mentor)
|
#
227753 |
|
20-Nov-2011 |
theraven |
Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a load of _l suffixed versions of various standard library functions that use the global locale, making them take an explicit locale parameter. Also adds support for per-thread locales. This work was funded by the FreeBSD Foundation.
Please test any code you have that uses the C standard locale functions!
Reviewed by: das (gdtoa changes) Approved by: dim (mentor)
|
#
175586 |
|
23-Jan-2008 |
ache |
Fix longstanding mb/wc functions segfault if error occurse inside _<encoding>_init(). Currently _EUC_init() only was affected.
|
#
175585 |
|
23-Jan-2008 |
ache |
Better fix for longstanding segfault. Don't touch current locale at all on unknown encoding. Previous fix resets it to POSIX.
|
#
175584 |
|
22-Jan-2008 |
ache |
1) Add (void) cast to _none_init() (while I am here) 2) Fix longstanding segfault in mb/wc code when unknown encoding is specified in the locale file (mb/wc functions becomes NULL in that case).
|
#
175553 |
|
21-Jan-2008 |
ache |
Introduce new encoding: "ASCII" It differs from default C/POSIX "NONE" mainly by stricter 8bit check for mb*towc*/wc*tomb* family, returning EILSEQ
|
#
172619 |
|
13-Oct-2007 |
ache |
The problem is: currently our single byte ctype(3) functions are broken for wide characters locales in the argument range >= 0x80 - they may return false positives.
Example 1: for UTF-8 locale we currently have: iswspace(0xA0)==1 and isspace(0xA0)==1 (because iswspace() and isspace() are the same code) but must have iswspace(0xA0)==1 and isspace(0xA0)==0 (because there is no such character and all others in the range 0x80..0xff for the UTF-8 locale, it keeps ASCII only in the single byte range because our internal wchar_t representation for UTF-8 is UCS-4).
Example 2: for all wide character locales isalpha(arg) when arg > 0xFF may return false positives (must be 0). (because iswalpha() and isalpha() are the same code)
This change address this issue separating single byte and wide ctype and also fix iswascii() (currently iswascii() is broken for arguments > 0xFF). This change is 100% binary compatible with old binaries.
Reviewied by: i18n@
|
#
165903 |
|
08-Jan-2007 |
imp |
Per Regents of the University of Calfornia letter, remove advertising clause.
# If I've done so improperly on a file, please let me know.
|
#
142654 |
|
27-Feb-2005 |
phantom |
. Static'ize functions exported via function reference variables only. . Replace inclusion of sys/param.h to sys/cdefs.h and sys/types.h where appropriate. . move _*_init() prototypes to mblocal.h, and remove these prototypes from .c files . use _none_init() in __setrunelocale() instead of duplicating code . move __mb* variables from table.c to none.c allowing us to not to export _none_*() externs, and appropriately remove them from mblocal.h
Ok'ed by: tjr
|
#
136640 |
|
18-Oct-2004 |
ache |
Remove setrunelocale()
|
#
136609 |
|
17-Oct-2004 |
tjr |
Remove the obsolete <rune.h> interface.
|
#
136604 |
|
17-Oct-2004 |
tjr |
Remove support for the obsolete UTF2 encoding.
|
#
134104 |
|
21-Aug-2004 |
tjr |
Change "deprecated" in link-time warnings about various rune functions to "obsolete".
|
#
132497 |
|
21-Jul-2004 |
tjr |
Implement the GNU extensions of mbsnrtowcs() and wcsnrtombs(). These are convenient when the source string isn't null-terminated.
Implement the other conversion functions (mbstowcs(), mbsrtowcs(), wcstombs(), wcsrtombs()) in terms of these new functions.
|
#
130961 |
|
23-Jun-2004 |
tjr |
Prefix the names of members of _RuneLocale and its sub-structures with ``__'' to avoid polluting the namespace. This doesn't change the documented rune interface at all, but breaks applications that accessed _RuneLocale directly.
|
#
129179 |
|
13-May-2004 |
tjr |
Allow encoding modules to override the default implementations of mbsrtowcs() and wcsrtombs(). Provide a fast implementation for the trivial "NONE" encoding.
|
#
129153 |
|
12-May-2004 |
tjr |
Move prototypes of various encoding-related functions into a new header file to avoid extern'ing them all over the place.
|
#
128004 |
|
07-Apr-2004 |
tjr |
Allow partial multibyte characters to accumulate in conversion state objects passed to mbrtowc(), mbsrtowcs(), and mbrlen(), as required by C99.
|
#
127835 |
|
04-Apr-2004 |
tjr |
Remove support for emulating mbrtowc() and wcrtomb() in terms of the old rune interface now that it is no longer needed.
|
#
123308 |
|
08-Dec-2003 |
tjr |
Set __mbrtowc and __wcrtomb correctly when changing to the C/POSIX locale. Save __mbrtowc and __wcrtomb and restore them when changing back to the cached locale.
Reported by: perky
|
#
122145 |
|
05-Nov-2003 |
davidxu |
Add gb2312 encoding.
|
#
121845 |
|
01-Nov-2003 |
tjr |
Allow mbrtowc() and wcrtomb() to be implemented directly, instead of as wrappers around the deprecated 4.4BSD rune functions. This paves the way for state-dependent encodings, which the rune API does not support. - Add __emulated_sgetrune() and __emulated_sputrune(), which are implementations of sgetrune() and sputrune() in terms of mbrtowc() and wcrtomb(). - Rename the old rune-wrapper mbrtowc() and wcrtomb() functions to __emulated_mbrtowc() and __emulated_wcrtomb(). - Add __mbrtowc and __wcrtomb function pointers, which point to the current locale's conversion functions, or the __emulated versions. - Implement mbrtowc() and wcrtomb() as calls to these function pointers. - Make the "NONE" encoding implement mbrtowc() and wcrtomb() directly.
All of this emulation mess will be removed, together with rune support, in FreeBSD 6.
|
#
118146 |
|
29-Jul-2003 |
ache |
Add support for gb18030 encoding
PR: 51729 Submitted by: Kang Liu <liukang@bjpu.edu.cn>
|
#
117274 |
|
06-Jul-2003 |
ache |
Add const to __setrunelocale prototype
|
#
117270 |
|
06-Jul-2003 |
ache |
Reorganize wrapper around setrunelocale() to mark it as deprecated in FreeBSD 6
|
#
116847 |
|
25-Jun-2003 |
phantom |
Reduce code duplication by separating _PathLocle detection code into internal helper function.
|
#
115626 |
|
01-Jun-2003 |
ache |
Add GBK encoding
PR: 51504 Submitted by: Statue <statue@freebsd.sinica.edu.tw>
|
#
104828 |
|
10-Oct-2002 |
tjr |
Add a UTF-8 encoding method, which will eventually replace the antique "UTF2" method. Although UTF-8 and the old UTF2 encoding are compatible for 16-bit characters, the new UTF-8 implementation is much more strict about rejecting malformed input and also handles the full 31 bit range of characters.
|
#
101566 |
|
09-Aug-2002 |
ache |
Add safeguards to never use errno == 0 as setrunelocale() error return code
|
#
101498 |
|
08-Aug-2002 |
ache |
Rewrite locale loading procedures, so any load failure will not affect currently cached data. It allows a number of nice things, like: removing fallback code from single locale loading, remove memory leak when LC_CTYPE data loaded again and again, efficient cache use, not only for setlocale(locale1); setlocale(locale1), but for setlocale(locale1); setlocale("C"); setlocale(locale1) too (i.e. data file loaded only once).
|
#
101488 |
|
07-Aug-2002 |
ache |
Reset __mb_cur_max to 1 when "C" or "POSIX" locales loaded after multibyte one
|
#
101276 |
|
03-Aug-2002 |
ache |
Catch empty encoding name too
|
#
101263 |
|
03-Aug-2002 |
ache |
Return errno provided by fopen, not always ENOENT. Return EFTYPE instead of EINVAL for wrong locale file format. Whitespaces.
|
#
101262 |
|
03-Aug-2002 |
ache |
Check encoding for ".", ".." and / inside
|
#
101261 |
|
03-Aug-2002 |
ache |
Return EINVAL for NULL or too long encoding, not EFAULT
|
#
101260 |
|
03-Aug-2002 |
ache |
Return ENAMETOOLONG for long PATH_LOCALE, not EFAULT
|
#
92986 |
|
22-Mar-2002 |
obrien |
Fix the style of the SCM ID's. I believe have made all of libc .c's as consistent as possible.
|
#
92905 |
|
21-Mar-2002 |
obrien |
Remove __P() usage.
|
#
61218 |
|
03-Jun-2000 |
ache |
Megre XPG4 code into libc
|
#
38333 |
|
15-Aug-1998 |
phk |
I have added the support for BIG5 encoding into libc/libxpg4/mklocale. the diff is attached below. This is done on the 3.0 source-tree. I have test this on 2.2-stable before, but I don't have a 3.0 machine right now.
This patch is mainly to make libc support BIG5 encoding, thus add zh_TW.BIG5 locale to 3.0.
Submitted by: Chen Hsiung Chan <frankch@waru.life.nthu.edu.tw>
|
#
32524 |
|
15-Jan-1998 |
jb |
Add #ifndef __NETBSD_SYSCALLS around calls to issetugid() which do not exist in NetBSD 1.3.
|
#
29857 |
|
25-Sep-1997 |
ache |
Move MSKanji under XPG4 define
|
#
29818 |
|
24-Sep-1997 |
julian |
Submitted by: Sin'ichiro MIYATANI / Phase One, Inc <siu@phaseone.co.jp> Basic support for the Shift JIS encoding of japanese. (and one tiny typo fixed in a comment)
|
#
24694 |
|
07-Apr-1997 |
ache |
Restore PATH_LOCALE functionality using issetugid() call now
|
#
22330 |
|
06-Feb-1997 |
ache |
Use symbolic constants instead of hardcoded digits Add range check for setrunelocale since it can be called directly. Remove _startup_setlocale compatibility function
Should go into 2.2
|
#
22304 |
|
05-Feb-1997 |
ache |
Update the comment why range checking not needed
Fix setrunelocale fail if called directly without prior setlocale call
Should go in 2.2
|
#
20961 |
|
28-Dec-1996 |
ache |
Add comment that range checking is already done at upper level Kill snprintf left in collate.c from previous backout
Should go in 2.2
|
#
20810 |
|
22-Dec-1996 |
joerg |
Back out rev 1.5: the overflow condition is already handled elsewhere.
|
#
20552 |
|
16-Dec-1996 |
joerg |
Fix yet another buffer overflow. :-(
Vulnerable: all programs that use setlocale(LC_COLLATE), setlocale(LC_CTYPE), or setlocale(LC_ALL). The only setuid/setgid binary i've found for this is w(1).
Should go into 2.2.
|
#
19964 |
|
26-Nov-1996 |
ache |
PATH_LOCALE: use this non-standard env variable first time only, i.e. strdup() it to prevent unsetenv() or setenv() effects. Check its length to not allow user to overflow internal locale buffer. Move PATH_LOCALE handling code into one place.
POSIX: make better stub for LC_MONETARY & LC_NUMERIC, now it check locale directory existance instead of refusing all non-C non-POSIX locales. POSIX treats empty locale env variable as unset variable while our old code treats it as "C" locale, fix it. Implement previous locale restoring, if locale setting fails. Old code assumes success if some of LC_ALL subset is successed even other fails, POSIX treats it as failure with previous locale restoring, fix it.
Remove unneccessary length checking in currentlocale()
|
#
12022 |
|
03-Nov-1995 |
ache |
Move more stuff out to XPG4 Handle negative chars inside runetype/tolower/toupper
|
#
11737 |
|
23-Oct-1995 |
ache |
Treat empty encoding as "C" encoding
|
#
11695 |
|
22-Oct-1995 |
ache |
Migrate from XPG4 to XPG3 (libxpg4 will be added soon) Remove big part of my startup_setlocale hack. Add missing manpage links.
|