Print this page
2964 need POSIX 2008 locale object support

Split Close
Expand all
Collapse all
          --- old/usr/src/lib/libc/port/locale/none.c
          +++ new/usr/src/lib/libc/port/locale/none.c
   1    1  /*
   2    2   * Copyright 2010 Nexenta Systems, Inc.  All rights reserved.
   3    3   * Copyright (c) 2002-2004 Tim J. Robbins. All rights reserved.
   4    4   * Copyright (c) 1993
   5    5   *      The Regents of the University of California.  All rights reserved.
   6    6   *
   7    7   * This code is derived from software contributed to Berkeley by
   8    8   * Paul Borman at Krystal Technologies.
   9    9   *
       10 + * Copyright (c) 2011 The FreeBSD Foundation
       11 + * All rights reserved.
       12 + * Portions of this software were developed by David Chisnall
       13 + * under sponsorship from the FreeBSD Foundation.
       14 + *
  10   15   * Redistribution and use in source and binary forms, with or without
  11   16   * modification, are permitted provided that the following conditions
  12   17   * are met:
  13   18   * 1. Redistributions of source code must retain the above copyright
  14   19   *    notice, this list of conditions and the following disclaimer.
  15   20   * 2. Redistributions in binary form must reproduce the above copyright
  16   21   *    notice, this list of conditions and the following disclaimer in the
  17   22   *    documentation and/or other materials provided with the distribution.
  18   23   * 4. Neither the name of the University nor the names of its contributors
  19   24   *    may be used to endorse or promote products derived from this software
↓ open down ↓ 170 lines elided ↑ open up ↑
 190  195  int (*__mbsinit)(const mbstate_t *) = _none_mbsinit;
 191  196  
 192  197  size_t (*__mbsnrtowcs)(wchar_t *_RESTRICT_KYWD, const char **_RESTRICT_KYWD,
 193  198      size_t, size_t, mbstate_t *_RESTRICT_KYWD) = _none_mbsnrtowcs;
 194  199  
 195  200  size_t (*__wcrtomb)(char *_RESTRICT_KYWD, wchar_t, mbstate_t *_RESTRICT_KYWD) =
 196  201      _none_wcrtomb;
 197  202  
 198  203  size_t (*__wcsnrtombs)(char *_RESTRICT_KYWD, const wchar_t **_RESTRICT_KYWD,
 199  204      size_t, size_t, mbstate_t *_RESTRICT_KYWD) = _none_wcsnrtombs;
      205 +
      206 +struct xlocale_ctype __xlocale_global_ctype = {
      207 +        {{0}, "C"},
      208 +        (_RuneLocale*)&_DefaultRuneLocale,
      209 +        _none_mbrtowc,
      210 +        _none_mbsinit,
      211 +        _none_mbsnrtowcs,
      212 +        _none_wcrtomb,
      213 +        _none_wcsnrtombs,
      214 +        1,      /* __mb_cur_max */
      215 +        256     /* __mb_sb_limit */
      216 +};
      217 +
      218 +const struct xlocale_ctype __xlocale_C_ctype = {
      219 +        {{0}, "C"},
      220 +        (_RuneLocale*)&_DefaultRuneLocale,
      221 +        _none_mbrtowc,
      222 +        _none_mbsinit,
      223 +        _none_mbsnrtowcs,
      224 +        _none_wcrtomb,
      225 +        _none_wcsnrtombs,
      226 +        1,      /* __mb_cur_max */
      227 +        256     /* __mb_sb_limit */
      228 +};
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX