[xlockmore] fixed "CVE-2012-4524 xlockmore: Screensaver crash (screen lock bypass) when 'dclock' mode used" (#86
Adrian Reber
adrian at fedoraproject.org
Thu Oct 18 15:36:52 UTC 2012
commit fc2570aa46676d4c72135ea7a9aa94c958b8f750
Author: Adrian Reber <adrian at lisas.de>
Date: Thu Oct 18 17:36:47 2012 +0200
fixed "CVE-2012-4524 xlockmore: Screensaver crash (screen lock bypass) when 'dclock' mode used" (#867908)
patch-modes_dclock.patch | 53 ++++++++++++++++++++++++++++++++++++++++++++++
xlockmore.spec | 7 +++++-
2 files changed, 59 insertions(+), 1 deletions(-)
---
diff --git a/patch-modes_dclock.patch b/patch-modes_dclock.patch
new file mode 100644
index 0000000..e4fa9a4
--- /dev/null
+++ b/patch-modes_dclock.patch
@@ -0,0 +1,53 @@
+--- modes/dclock.c.orig 2012-01-23 13:19:21.000000000 +0000
++++ modes/dclock.c
+@@ -376,11 +376,11 @@ static dclockstruct *dclocks = (dclockst
+ extern char *message;
+
+ static unsigned long
+-timeAtLastNewYear(long timeNow)
++timeAtLastNewYear(time_t timeNow)
+ {
+ struct tm *t;
+
+- t = localtime((const time_t *) &timeNow);
++ t = localtime(&timeNow);
+ return (unsigned long)(t->tm_year);
+ }
+
+@@ -420,7 +420,7 @@ convert(double x, char *string)
+ }
+
+ static void
+-dayhrminsec(long timeCount, int tzoffset, char *string)
++dayhrminsec(time_t timeCount, int tzoffset, char *string)
+ {
+ int days, hours, minutes, secs;
+ int bufsize, i;
+@@ -675,7 +675,7 @@ drawDclock(ModeInfo * mi)
+ "%a %b %d %Y", localtime(&(dp->timeold)));
+ }
+ } else {
+- long timeNow, timeLocal;
++ time_t timeNow, timeLocal;
+ timeNow = seconds();
+ timeLocal = timeNow + dp->tzoffset;
+
+@@ -950,7 +950,7 @@ init_dclock(ModeInfo * mi)
+ {
+ Display *display = MI_DISPLAY(mi);
+ dclockstruct *dp;
+- long timeNow, timeLocal;
++ time_t timeNow, timeLocal;
+ int i, j;
+
+ if (dclocks == NULL) {
+@@ -1252,7 +1252,7 @@ defined(MODE_dclock_mayan)
+ dayhrminsec(MAYAN_TIME_START - timeLocal, dp->tzoffset, dp->strnew[1]);
+ dp->strpta[1] = dp->strnew[1];
+ } else {
+- struct tm *t = localtime((const time_t *) &timeLocal);
++ struct tm *t = localtime(&timeLocal);
+
+ if (dp->time24)
+ (void) strftime(dp->strnew[0], STRSIZE, "%H:%M:%S", t);
+
diff --git a/xlockmore.spec b/xlockmore.spec
index b941d08..c451591 100644
--- a/xlockmore.spec
+++ b/xlockmore.spec
@@ -1,11 +1,12 @@
Summary: Screen lock and screen saver
Name: xlockmore
Version: 5.40
-Release: 2%{?dist}
+Release: 3%{?dist}
License: BSD
Group: Amusements/Graphics
URL: http://www.tux.org/~bagleyd/xlockmore.html
Source0: http://www.tux.org/~bagleyd/xlock/xlockmore-5.40/xlockmore-5.40.tar.bz2
+Patch0: patch-modes_dclock.patch
BuildRequires: pam-devel
BuildRequires: mesa-libGL-devel mesa-libGLU-devel
BuildRequires: desktop-file-utils libXdmcp-devel
@@ -34,6 +35,7 @@ GTK based frontend for xlockmore.
%prep
%setup -q
+%patch0
%{__sed} -i -e "s,/lib,/%{_lib},g" configure
@@ -104,6 +106,9 @@ desktop-file-install \
%{_bindir}/xglock
%changelog
+* Thu Oct 18 2012 Adrian Reber <adrian at lisas.de> - 5.40-3
+- fixed "CVE-2012-4524 xlockmore: Screensaver crash (screen lock bypass) when 'dclock' mode used" (#867908)
+
* Thu Oct 18 2012 Adrian Reber <adrian at lisas.de> - 5.40-2
- removed esound-devel BR
More information about the scm-commits
mailing list