[Pkg-shadow-commits] r1629 - in debian/trunk/debian: . patches
nekral-guest at alioth.debian.org
nekral-guest at alioth.debian.org
Fri Jan 4 19:59:42 UTC 2008
Author: nekral-guest
Date: 2008-01-04 19:59:42 +0000 (Fri, 04 Jan 2008)
New Revision: 1629
Modified:
debian/trunk/debian/changelog
debian/trunk/debian/patches/419_time_structures.dpatch
debian/trunk/debian/patches/series
Log:
I finally reviewed 419_time_structures.dpatch, and it needs to be applied.
One chunk was not applied upstream.
Modified: debian/trunk/debian/changelog
===================================================================
--- debian/trunk/debian/changelog 2008-01-03 20:21:55 UTC (rev 1628)
+++ debian/trunk/debian/changelog 2008-01-04 19:59:42 UTC (rev 1629)
@@ -32,6 +32,8 @@
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 from
CFLAGS.
- 479_chowntty_debug was debian specific. Renamed to 579_chowntty_debug
+ - Reapply 419_time_structures.dpatch. Remove teh parts which are already
+ fixed upstream (not necessarily the same way).
-- Nicolas FRANCOIS (Nekral) <nicolas.francois at centraliens.net> Sat, 17 Nov 2007 18:33:26 +0100
Modified: debian/trunk/debian/patches/419_time_structures.dpatch
===================================================================
--- debian/trunk/debian/patches/419_time_structures.dpatch 2008-01-03 20:21:55 UTC (rev 1628)
+++ debian/trunk/debian/patches/419_time_structures.dpatch 2008-01-04 19:59:42 UTC (rev 1629)
@@ -11,136 +11,17 @@
## DP:
## DP: Some parts of this patch have been applied upstream. The other parts
## DP: should be checked.
+## DP:
+## DP: With the Glibc, with __WORDSIZE == 64 && defined __WORDSIZE_COMPAT32,
+## DP: ut_time (i.e. ut_tv.tv_sec) is not a time_t but an int32 (ditto for
+## DP: ll_time)
@DPATCH@
-Index: shadow-4.0.3/libmisc/log.c
+Index: shadow-4.1.0/src/login.c
===================================================================
---- shadow-4.0.3.orig/libmisc/log.c 1998-04-16 21:57:44.000000000 +0200
-+++ shadow-4.0.3/libmisc/log.c 2005-05-12 14:05:29.976542831 +0200
-@@ -88,7 +88,7 @@ dolastlog(struct lastlog *ll, const stru
- if (ll)
- *ll = newlog;
-
-- time(&newlog.ll_time);
-+ newlog.ll_time = time(0);
- strncpy(newlog.ll_line, line, sizeof newlog.ll_line);
- #if HAVE_LL_HOST
- strncpy(newlog.ll_host, host, sizeof newlog.ll_host);
-Index: shadow-4.0.3/libmisc/utmp.c
-===================================================================
---- shadow-4.0.3.orig/libmisc/utmp.c 2002-03-08 05:30:30.000000000 +0100
-+++ shadow-4.0.3/libmisc/utmp.c 2005-05-12 14:05:29.994540142 +0200
-@@ -111,7 +111,7 @@ checkutmp(int picky)
- /* XXX - assumes /dev/tty?? */
- strncpy(utent.ut_id, utent.ut_line + 3, sizeof utent.ut_id);
- strcpy(utent.ut_user, "LOGIN");
-- time(&utent.ut_time);
-+ utent.ut_time = time(0);
- }
- }
-
-@@ -195,7 +195,7 @@ checkutmp(int picky)
- strcpy(utent.ut_user, "LOGIN");
- utent.ut_pid = getpid();
- utent.ut_type = LOGIN_PROCESS;
-- time(&utent.ut_time);
-+ utent.ut_time = time(0);
- #if HAVE_UTMPX_H
- strncpy(utxent.ut_line, line, sizeof utxent.ut_line);
- if ((utx = getutxline(&utxent)))
-@@ -204,7 +204,15 @@ checkutmp(int picky)
- strcpy(utxent.ut_user, "LOGIN");
- utxent.ut_pid = utent.ut_pid;
- utxent.ut_type = utent.ut_type;
-- gettimeofday((struct timeval *) &utxent.ut_tv, NULL);
-+ /* don't assume that utmpx.ut_tv is a struct timeval */
-+ {
-+ struct timeval tv;
-+
-+ gettimeofday(&tv, NULL);
-+
-+ utxent.ut_tv.tv_sec = tv.tv_sec;
-+ utxent.ut_tv.tv_usec = tv.tv_usec;
-+ }
- utent.ut_time = utxent.ut_tv.tv_sec;
- #endif
- }
-@@ -230,7 +238,7 @@ checkutmp(int picky)
- line += 5;
-
- (void) strncpy (utent.ut_line, line, sizeof utent.ut_line);
-- (void) time (&utent.ut_time);
-+ utent.ut_time = time(0);
- }
-
- #endif /* !USG */
-@@ -286,7 +294,7 @@ setutmp(const char *name, const char *li
- {
- utent.ut_type = USER_PROCESS;
- strncpy(utent.ut_user, name, sizeof utent.ut_user);
-- time(&utent.ut_time);
-+ utent.ut_time = time(0);
- /* other fields already filled in by checkutmp above */
- setutent();
- pututline(&utent);
-@@ -375,7 +383,14 @@ setutmp(const char *name, const char *li
-
- utline.ut_type = utxline.ut_type = USER_PROCESS;
-
-- gettimeofday(&utxline.ut_tv, NULL);
-+ /* don't assume that utmpx.ut_tv is a struct timeval */
-+ {
-+ struct timeval tv;
-+
-+ gettimeofday(&tv, NULL);
-+ utxline.ut_tv.tv_sec = tv.tv_sec;
-+ utxline.ut_tv.tv_usec = tv.tv_usec;
-+ }
- utline.ut_time = utxline.ut_tv.tv_sec;
-
- strncpy(utxline.ut_host, host ? host : "", sizeof utxline.ut_host);
-@@ -435,7 +450,7 @@ setutmp(const char *name, const char *li
- * Put in the current time (common to everyone)
- */
-
-- (void) time (&utmp.ut_time);
-+ utmp.ut_time = time(0);
-
- #ifdef UT_HOST
- /*
-Index: shadow-4.0.3/src/lastlog.c
-===================================================================
---- shadow-4.0.3.orig/src/lastlog.c 2005-05-12 14:05:24.511359400 +0200
-+++ shadow-4.0.3/src/lastlog.c 2005-05-12 14:05:29.994540142 +0200
-@@ -184,7 +184,13 @@ static void print_one (const struct pass
- #endif
- once++;
- }
-- tm = localtime (&lastlog.ll_time);
-+ /* don't assume lastlog.ll_time is a time_t */
-+ {
-+ time_t when;
-+
-+ when = lastlog.ll_time;
-+ tm = localtime (&when);
-+ }
- #ifdef HAVE_STRFTIME
- strftime (ptime, sizeof (ptime), "%a %b %e %H:%M:%S %z %Y", tm);
- cp = ptime;
-@@ -193,7 +199,7 @@ static void print_one (const struct pass
- cp[24] = '\0';
- #endif
-
-- if (lastlog.ll_time == (time_t) 0)
-+ if (lastlog.ll_time == 0)
- cp = _("**Never logged in**\0");
-
- #ifdef HAVE_LL_HOST
-Index: shadow-4.0.3/src/login.c
-===================================================================
---- shadow-4.0.3.orig/src/login.c 2005-05-12 14:04:27.490878998 +0200
-+++ shadow-4.0.3/src/login.c 2005-05-12 14:05:29.995539993 +0200
-@@ -849,10 +849,18 @@ int main (int argc, char **argv)
+--- shadow-4.1.0.orig/src/login.c 2008-01-03 23:00:48.872001845 +0100
++++ shadow-4.1.0/src/login.c 2008-01-03 23:15:56.012001027 +0100
+@@ -736,10 +736,18 @@
if (getdef_str("FTMP_FILE") != NULL) {
#if HAVE_UTMPX_H
failent = utxent;
@@ -161,42 +42,3 @@
#endif
strncpy(failent.ut_user, failent_user, sizeof(failent.ut_user));
#ifdef USER_PROCESS
-@@ -1093,10 +1101,17 @@ int main (int argc, char **argv)
-
- #if HAVE_UTMPX_H
- failent = utxent;
-- gettimeofday (&(failent.ut_tv), NULL);
-+ /* don't assume that utmpx.ut_tv is a struct timeval */
-+ {
-+ struct timeval tv;
-+
-+ gettimeofday(&tv, NULL);
-+ failent.ut_tv.tv_sec = tv.tv_sec;
-+ failent.ut_tv.tv_usec = tv.tv_usec;
-+ }
- #else
- failent = utent;
-- time (&failent.ut_time);
-+ failent.ut_time = time(0);
- #endif
- if (pwd) {
- failent_user = pwent.pw_name;
-@@ -1378,15 +1393,16 @@ int main (int argc, char **argv)
- }
- if (getdef_bool ("LASTLOG_ENAB")
- && lastlog.ll_time != 0) {
-+ time_t when = lastlog.ll_time; /* may not be a time_t */
- #ifdef HAVE_STRFTIME
- strftime (ptime, sizeof (ptime),
- "%a %b %e %H:%M:%S %z %Y",
-- localtime (&lastlog.ll_time));
-+ localtime (&when));
- printf (_("Last login: %s on %s"),
- ptime, lastlog.ll_line);
- #else
- printf (_("Last login: %.19s on %s"),
-- ctime (&lastlog.ll_time),
-+ ctime (&when),
- lastlog.ll_line);
- #endif
- #ifdef HAVE_LL_HOST /* SVR4 || __linux__ || SUN4 */
Modified: debian/trunk/debian/patches/series
===================================================================
--- debian/trunk/debian/patches/series 2008-01-03 20:21:55 UTC (rev 1628)
+++ debian/trunk/debian/patches/series 2008-01-04 19:59:42 UTC (rev 1629)
@@ -6,8 +6,7 @@
434_login_stop_checking_args_after--
008_login_log_failure_in_FTMP
429_login_FAILLOG_ENAB
-#
-# 419_time_structures.dpatch # must be checked another time
+419_time_structures.dpatch
401_cppw_src.dpatch
504_undef_USE_PAM.dpatch
504_undef_USE_PAM.nolibpam
More information about the Pkg-shadow-commits
mailing list