mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-22 02:40:08 +00:00
Fri Jul 5 12:22:51 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
This commit is contained in:
parent
a0da2d51da
commit
66219c0794
@ -5,6 +5,7 @@ Fri Jul 5 17:34:47 1996 Miles Bader <miles@gnu.ai.mit.edu>
|
||||
* login/pututline_r.c (pututline_r): Since we assign RESULT from
|
||||
lseek now, check that it's >= 0, not == 0.
|
||||
|
||||
Fri Jul 5 12:22:51 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
|
||||
Wed Jul 3 13:28:04 1996 Miles Bader <miles@gnu.ai.mit.edu>
|
||||
|
||||
* login/login.c (login): Make a copy of *UT, fill in various
|
||||
@ -14,7 +15,6 @@ Wed Jul 3 13:28:04 1996 Miles Bader <miles@gnu.ai.mit.edu>
|
||||
* login/getutline_r.c (getutline_r): When we return ESRCH, mark
|
||||
UTMP_DATA->ubuf invalid (by setting UTMP_DATA->loc_utmp to 0).
|
||||
|
||||
Fri Jul 5 12:22:51 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
|
||||
|
||||
* hurd/hurdsig.c (_hurd_internal_post_signal): In case of handled
|
||||
signal during critical section doing interruptible RPC, if
|
||||
|
17
FAQ
17
FAQ
@ -1,7 +1,7 @@
|
||||
Frequently Asked Question on GNU C Library
|
||||
|
||||
As every FAQ this one also tries to answer questions the user might have
|
||||
when using the pacakge. Please make sure you read this before sending
|
||||
when using the package. Please make sure you read this before sending
|
||||
questions or bug reports to the maintainers.
|
||||
|
||||
The GNU C Library is very complex. The building process exploits the
|
||||
@ -39,6 +39,9 @@ please let me know.
|
||||
|
||||
[Q9] ``Why does getlogin() always return NULL on my Linux box?''
|
||||
|
||||
[Q10] ``Where are the DST_* constants found in <sys/time.h> on many
|
||||
systems?''
|
||||
|
||||
|
||||
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|
||||
[Q1] ``What systems does the GNU C Library run on?''
|
||||
@ -259,6 +262,18 @@ means to support the new techniques later.
|
||||
|
||||
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|
||||
|
||||
[Q10] ``Where are the DST_* constants found in <sys/time.h> on many
|
||||
systems?''
|
||||
|
||||
[A10] {UD} These constants come from the old BSD days and are not used
|
||||
today anymore (even the Linux based glibc does not implement the handling
|
||||
although the cosntants are defined).
|
||||
|
||||
Instead GNU libc contains the zone database handling and compatibility
|
||||
code for POSIX TZ environment variable handling.
|
||||
|
||||
|
||||
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|
||||
|
||||
Answers were given by:
|
||||
{UD} Ulrich Drepper, <drepper@cygnus.com>
|
||||
|
@ -28,8 +28,8 @@ struct keyword_t ;
|
||||
#define MIN_WORD_LENGTH 3
|
||||
#define MAX_WORD_LENGTH 17
|
||||
#define MIN_HASH_VALUE 3
|
||||
#define MAX_HASH_VALUE 185
|
||||
/* maximum key range = 183, duplicates = 0 */
|
||||
#define MAX_HASH_VALUE 132
|
||||
/* maximum key range = 130, duplicates = 0 */
|
||||
|
||||
#ifdef __GNUC__
|
||||
inline
|
||||
@ -39,19 +39,19 @@ hash (register const char *str, register int len)
|
||||
{
|
||||
static const unsigned char asso_values[] =
|
||||
{
|
||||
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
|
||||
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
|
||||
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
|
||||
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
|
||||
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
|
||||
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
|
||||
186, 186, 186, 186, 186, 186, 186, 0, 0, 0,
|
||||
0, 0, 186, 0, 186, 186, 0, 186, 0, 35,
|
||||
186, 186, 0, 0, 0, 5, 186, 186, 186, 0,
|
||||
186, 186, 186, 186, 186, 15, 186, 0, 0, 5,
|
||||
15, 10, 55, 30, 15, 75, 186, 20, 5, 40,
|
||||
10, 0, 0, 186, 35, 30, 0, 70, 186, 10,
|
||||
20, 75, 186, 186, 186, 186, 186, 186,
|
||||
133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
|
||||
133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
|
||||
133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
|
||||
133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
|
||||
133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
|
||||
133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
|
||||
133, 133, 133, 133, 133, 133, 133, 0, 0, 0,
|
||||
0, 0, 133, 0, 133, 133, 0, 133, 0, 20,
|
||||
133, 133, 0, 0, 0, 5, 133, 133, 133, 5,
|
||||
133, 133, 133, 133, 133, 5, 133, 0, 60, 0,
|
||||
15, 10, 20, 40, 5, 20, 133, 0, 45, 40,
|
||||
10, 0, 0, 133, 15, 50, 0, 30, 0, 10,
|
||||
15, 15, 133, 133, 133, 133, 133, 133,
|
||||
};
|
||||
register int hval = len;
|
||||
|
||||
@ -59,16 +59,16 @@ hash (register const char *str, register int len)
|
||||
{
|
||||
default:
|
||||
case 5:
|
||||
hval += asso_values[(int) str[4]];
|
||||
hval += asso_values[str[4]];
|
||||
case 4:
|
||||
case 3:
|
||||
case 2:
|
||||
hval += asso_values[(int) str[1]];
|
||||
hval += asso_values[str[1]];
|
||||
case 1:
|
||||
hval += asso_values[(int) str[0]];
|
||||
hval += asso_values[str[0]];
|
||||
break;
|
||||
}
|
||||
return hval + asso_values[(int) str[len - 1]];
|
||||
return hval + asso_values[str[len - 1]];
|
||||
}
|
||||
|
||||
#ifdef __GNUC__
|
||||
@ -86,113 +86,104 @@ locfile_hash (register const char *str, register int len)
|
||||
{"LC_TIME", tok_lc_time, 0},
|
||||
{"LC_CTYPE", tok_lc_ctype, 0},
|
||||
{"",},
|
||||
{"alpha", tok_alpha, 0},
|
||||
{"t_fmt", tok_t_fmt, 0},
|
||||
{"LC_MESSAGES", tok_lc_messages, 0},
|
||||
{"",}, {"",},
|
||||
{"",},
|
||||
{"charconv", tok_charconv, 0},
|
||||
{"UNDEFINED", tok_undefined, 0},
|
||||
{"LC_NUMERIC", tok_lc_numeric, 0},
|
||||
{"",}, {"",},
|
||||
{"position", tok_position, 0},
|
||||
{"",},
|
||||
{"t_fmt", tok_t_fmt, 0},
|
||||
{"",},
|
||||
{"collating-element", tok_collating_element, 0},
|
||||
{"positive_sign", tok_positive_sign, 0},
|
||||
{"",},
|
||||
{"abmon", tok_abmon, 0},
|
||||
{"collating-symbol", tok_collating_symbol, 0},
|
||||
{"",}, {"",}, {"",},
|
||||
{"cntrl", tok_cntrl, 0},
|
||||
{"",}, {"",},
|
||||
{"backward", tok_backward, 0},
|
||||
{"",},
|
||||
{"d_fmt", tok_d_fmt, 0},
|
||||
{"",}, {"",}, {"",},
|
||||
{"p_sep_by_space", tok_p_sep_by_space, 0},
|
||||
{"position", tok_position, 0},
|
||||
{"copy", tok_copy, 0},
|
||||
{"print", tok_print, 0},
|
||||
{"",},
|
||||
{"toupper", tok_toupper, 0},
|
||||
{"negative_sign", tok_negative_sign, 0},
|
||||
{"",},
|
||||
{"LC_COLLATE", tok_lc_collate, 0},
|
||||
{"LC_MONETARY", tok_lc_monetary, 0},
|
||||
{"positive_sign", tok_positive_sign, 0},
|
||||
{"",},
|
||||
{"d_fmt", tok_d_fmt, 0},
|
||||
{"",}, {"",},
|
||||
{"era", tok_era, 0},
|
||||
{"n_sep_by_space", tok_n_sep_by_space, 0},
|
||||
{"blank", tok_blank, 0},
|
||||
{"p_sep_by_space", tok_p_sep_by_space, 0},
|
||||
{"LC_COLLATE", tok_lc_collate, 0},
|
||||
{"noexpr", tok_noexpr, 0},
|
||||
{"tolower", tok_tolower, 0},
|
||||
{"mon", tok_mon, 0},
|
||||
{"day", tok_day, 0},
|
||||
{"era_t_fmt", tok_era_t_fmt, 0},
|
||||
{"space", tok_space, 0},
|
||||
{"",},
|
||||
{"mon_thousands_sep", tok_mon_thousands_sep, 0},
|
||||
{"thousands_sep", tok_thousands_sep, 0},
|
||||
{"",},
|
||||
{"alt_digits", tok_alt_digits, 0},
|
||||
{"",},
|
||||
{"punct", tok_punct, 0},
|
||||
{"LC_MONETARY", tok_lc_monetary, 0},
|
||||
{"comment_char", tok_comment_char, 0},
|
||||
{"",},
|
||||
{"charclass", tok_charclass, 0},
|
||||
{"t_fmt_ampm", tok_t_fmt_ampm, 0},
|
||||
{"p_sign_posn", tok_p_sign_posn, 0},
|
||||
{"charmap", tok_charmap, 0},
|
||||
{"n_sep_by_space", tok_n_sep_by_space, 0},
|
||||
{"digit", tok_digit, 0},
|
||||
{"order_start", tok_order_start, 0},
|
||||
{"forward", tok_forward, 0},
|
||||
{"negative_sign", tok_negative_sign, 0},
|
||||
{"",},
|
||||
{"nostr", tok_nostr, 0},
|
||||
{"yesstr", tok_yesstr, 0},
|
||||
{"d_t_fmt", tok_d_t_fmt, 0},
|
||||
{"",},
|
||||
{"era_d_fmt", tok_era_d_fmt, 0},
|
||||
{"",},
|
||||
{"alpha", tok_alpha, 0},
|
||||
{"era_d_t_fmt", tok_era_d_t_fmt, 0},
|
||||
{"",},
|
||||
{"mon", tok_mon, 0},
|
||||
{"order_end", tok_order_end, 0},
|
||||
{"t_fmt_ampm", tok_t_fmt_ampm, 0},
|
||||
{"xdigit", tok_xdigit, 0},
|
||||
{"mon_thousands_sep", tok_mon_thousands_sep, 0},
|
||||
{"",}, {"",}, {"",},
|
||||
{"collating-symbol", tok_collating_symbol, 0},
|
||||
{"yesexpr", tok_yesexpr, 0},
|
||||
{"era_year", tok_era_year, 0},
|
||||
{"charclass", tok_charclass, 0},
|
||||
{"upper", tok_upper, 0},
|
||||
{"p_sign_posn", tok_p_sign_posn, 0},
|
||||
{"",},
|
||||
{"thousands_sep", tok_thousands_sep, 0},
|
||||
{"",},
|
||||
{"graph", tok_graph, 0},
|
||||
{"",},
|
||||
{"mon_decimal_point", tok_mon_decimal_point, 0},
|
||||
{"p_cs_precedes", tok_p_cs_precedes, 0},
|
||||
{"",},
|
||||
{"punct", tok_punct, 0},
|
||||
{"space", tok_space, 0},
|
||||
{"n_sign_posn", tok_n_sign_posn, 0},
|
||||
{"forward", tok_forward, 0},
|
||||
{"",},
|
||||
{"decimal_point", tok_decimal_point, 0},
|
||||
{"",},
|
||||
{"from", tok_from, 0},
|
||||
{"lower", tok_lower, 0},
|
||||
{"order_start", tok_order_start, 0},
|
||||
{"",},
|
||||
{"",}, {"",},
|
||||
{"n_cs_precedes", tok_n_cs_precedes, 0},
|
||||
{"copy", tok_copy, 0},
|
||||
{"nostr", tok_nostr, 0},
|
||||
{"",},
|
||||
{"abmon", tok_abmon, 0},
|
||||
{"escape_char", tok_escape_char, 0},
|
||||
{"",}, {"",}, {"",},
|
||||
{"alnum", tok_alnum, 0},
|
||||
{"",},
|
||||
{"d_t_fmt", tok_d_t_fmt, 0},
|
||||
{"day", tok_day, 0},
|
||||
{"order_end", tok_order_end, 0},
|
||||
{"digit", tok_digit, 0},
|
||||
{"",}, {"",}, {"",}, {"",},
|
||||
{"graph", tok_graph, 0},
|
||||
{"int_curr_symbol", tok_int_curr_symbol, 0},
|
||||
{"",}, {"",},
|
||||
{"backward", tok_backward, 0},
|
||||
{"",},
|
||||
{"abday", tok_abday, 0},
|
||||
{"",}, {"",}, {"",}, {"",},
|
||||
{"currency_symbol", tok_currency_symbol, 0},
|
||||
{"frac_digits", tok_frac_digits, 0},
|
||||
{"",},
|
||||
{"grouping", tok_grouping, 0},
|
||||
{"",},
|
||||
{"currency_symbol", tok_currency_symbol, 0},
|
||||
{"cntrl", tok_cntrl, 0},
|
||||
{"",}, {"",}, {"",}, {"",},
|
||||
{"int_curr_symbol", tok_int_curr_symbol, 0},
|
||||
{"blank", tok_blank, 0},
|
||||
{"",}, {"",}, {"",}, {"",},
|
||||
{"int_frac_digits", tok_int_frac_digits, 0},
|
||||
{"",}, {"",}, {"",}, {"",},
|
||||
{"alt_digits", tok_alt_digits, 0},
|
||||
{"",}, {"",}, {"",}, {"",},
|
||||
{"am_pm", tok_am_pm, 0},
|
||||
{"",}, {"",}, {"",}, {"",},
|
||||
{"alnum", tok_alnum, 0},
|
||||
{"",},
|
||||
{"mon_grouping", tok_mon_grouping, 0},
|
||||
{"",}, {"",}, {"",},
|
||||
{"xdigit", tok_xdigit, 0},
|
||||
{"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
|
||||
{"am_pm", tok_am_pm, 0},
|
||||
{"yesstr", tok_yesstr, 0},
|
||||
{"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
|
||||
{"from", tok_from, 0},
|
||||
{"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
|
||||
{"",},
|
||||
{"upper", tok_upper, 0},
|
||||
{"frac_digits", tok_frac_digits, 0},
|
||||
{"yesexpr", tok_yesexpr, 0},
|
||||
{"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
|
||||
{"abday", tok_abday, 0},
|
||||
{"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
|
||||
{"era_year", tok_era_year, 0},
|
||||
{"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
|
||||
{"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
|
||||
{"",}, {"",}, {"",},
|
||||
{"int_frac_digits", tok_int_frac_digits, 0},
|
||||
};
|
||||
|
||||
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
|
||||
|
Loading…
Reference in New Issue
Block a user