* time/Makefile (tests): Add tst-mktime.
	* time/tst-mktime.c: New file.

	* posix/tst-dir.c (main): One more mkdir() test.
This commit is contained in:
Ulrich Drepper 2001-01-09 01:04:59 +00:00
parent f93e323f9e
commit 354e6102a1
5 changed files with 70 additions and 6 deletions

View File

@ -1,5 +1,10 @@
2001-01-08 Ulrich Drepper <drepper@redhat.com> 2001-01-08 Ulrich Drepper <drepper@redhat.com>
* time/Makefile (tests): Add tst-mktime.
* time/tst-mktime.c: New file.
* posix/tst-dir.c (main): One more mkdir() test.
* sysdeps/unix/sysv/linux/ia64/getpagesize.c (__getpagesize): * sysdeps/unix/sysv/linux/ia64/getpagesize.c (__getpagesize):
Remove getpagesize syscall. We assume that the pagesize is always Remove getpagesize syscall. We assume that the pagesize is always
determined from the auxiliary vector. determined from the auxiliary vector.

View File

@ -1,5 +1,5 @@
/* Implementation of the internal dcigettext function. /* Implementation of the internal dcigettext function.
Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc. Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as modify it under the terms of the GNU Library General Public License as
@ -658,7 +658,7 @@ _nl_find_msg (domain_file, msgid, lengthp)
const char *msgid; const char *msgid;
size_t *lengthp; size_t *lengthp;
{ {
const struct loaded_domain *domain; struct loaded_domain *domain;
size_t act; size_t act;
char *result; char *result;
size_t resultlen; size_t resultlen;
@ -669,7 +669,7 @@ _nl_find_msg (domain_file, msgid, lengthp)
if (domain_file->data == NULL) if (domain_file->data == NULL)
return NULL; return NULL;
domain = (const struct loaded_domain *) domain_file->data; domain = (struct loaded_domain *) domain_file->data;
/* Locate the MSGID and its translation. */ /* Locate the MSGID and its translation. */
if (domain->hash_size > 2 && domain->hash_tab != NULL) if (domain->hash_size > 2 && domain->hash_tab != NULL)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2000 Free Software Foundation, Inc. /* Copyright (C) 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2000. Contributed by Ulrich Drepper <drepper@redhat.com>, 2000.
@ -518,6 +518,32 @@ main (int argc, char *argv[])
result = 1; result = 1;
} }
/* One more test before we leave: mkdir() is supposed to fail with
EEXIST if the named file is a symlink. */
if (symlink ("a-symlink", "a-symlink") != 0)
{
printf ("cannot create symlink \"a-symlink\": %m\n");
result = 1;
}
else
{
if (mkdir ("a-symlink", 0666) == 0)
{
puts ("can make directory \"a-symlink\"");
result = 1;
}
else if (errno != EEXIST)
{
puts ("mkdir(\"a-symlink\") does not fail with EEXIST\n");
result = 1;
}
if (unlink ("a-symlink") < 0)
{
printf ("cannot unlink \"a-symlink\": %m\n");
result = 1;
}
}
if (chdir (srcdir) < 0) if (chdir (srcdir) < 0)
{ {
printf ("cannot change back to source directory: %m\n"); printf ("cannot change back to source directory: %m\n");

View File

@ -1,4 +1,4 @@
# Copyright (C) 1991-1999, 2000 Free Software Foundation, Inc. # Copyright (C) 1991-1999, 2000, 2001 Free Software Foundation, Inc.
# This file is part of the GNU C Library. # This file is part of the GNU C Library.
# The GNU C Library is free software; you can redistribute it and/or # The GNU C Library is free software; you can redistribute it and/or
@ -33,7 +33,7 @@ routines := offtime asctime clock ctime ctime_r difftime \
distribute := datemsk distribute := datemsk
tests := test_time clocktest tst-posixtz tst-strptime tst_wcsftime \ tests := test_time clocktest tst-posixtz tst-strptime tst_wcsftime \
tst-getdate tst-getdate tst-mktime
include ../Rules include ../Rules

33
time/tst-mktime.c Normal file
View File

@ -0,0 +1,33 @@
#include <stdio.h>
#include <string.h>
#include <time.h>
int
main (void)
{
struct tm time_str;
char daybuf[20];
int result;
time_str.tm_year = 2001 - 1900;
time_str.tm_mon = 7 - 1;
time_str.tm_mday = 4;
time_str.tm_hour = 0;
time_str.tm_min = 0;
time_str.tm_sec = 1;
time_str.tm_isdst = -1;
if (mktime (&time_str) == -1)
{
(void) puts ("-unknown-");
result = 1;
}
else
{
(void) strftime (daybuf, sizeof (daybuf), "%A", &time_str);
(void) puts (daybuf);
result = strcmp (daybuf, "Wednesday") != 0;
}
return result;
}