diff --git a/changelog b/changelog
index 29eba9f4..7f6061a9 100644
--- a/changelog
+++ b/changelog
@@ -1,4 +1,6 @@
+
+ * fix date settings in Certificate renewal dialog
* change the hashing for the default password.
this makes it incompatible to older versions
* Major changes for MAC OS X
diff --git a/lib/func.cpp b/lib/func.cpp
index bba29152..45835a78 100644
--- a/lib/func.cpp
+++ b/lib/func.cpp
@@ -201,27 +201,29 @@ void applyTD(QWidget *parent, int number, int range, bool mnc,
Validity *nb, Validity *na)
{
#define d_fac (60 * 60 * 24)
- int faktor[] = { 1, 30, 365 }, midnight, delta;
- a1time a;
- time_t t;
+ int faktor[] = { 1, 30, 365 }, midnight, delta;
+ a1time a;
+ time_t t;
- midnight = mnc? 1:0;
+ midnight = mnc ? 1:0;
- if (range>2 || range<0) range = 0;
- time(&t);
- delta = faktor[range] * number;
+ if (range>2 || range<0)
+ range = 0;
+ time(&t);
+ delta = faktor[range] * number;
// one day less if we go from 0:00:00 to 23:59:59
- if (mnc) delta -=1;
+ if (mnc)
+ delta -=1;
- t /= d_fac;
- if (delta + t > 24850){
- QMessageBox::warning(parent, XCA_TITLE,
- "Time difference too big\nYou must set it manually." );
- return;
- }
- nb->setDate(a.now(), midnight);
- na->setDate(a.now(delta * d_fac), midnight* (-1));
+ t /= d_fac;
+ if (delta + t > 24850) {
+ QMessageBox::warning(parent, XCA_TITLE,
+ "Time difference too big\nYou must set it manually." );
+ return;
+ }
+ nb->setDate(a.now(), midnight);
+ na->setDate(a.now(delta * d_fac), midnight* (-1));
}
QString asn1ToQString(const ASN1_STRING *str)
diff --git a/ui/CertExtend.ui b/ui/CertExtend.ui
index 0694827c..de6abe44 100644
--- a/ui/CertExtend.ui
+++ b/ui/CertExtend.ui
@@ -5,28 +5,46 @@
0
0
- 393
- 333
+ 450
+ 335
-
- 8
-
6
+
+ 8
+
+
+ 8
+
+
+ 8
+
+
+ 8
+
-
-
- 0
-
6
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
-
@@ -102,30 +120,60 @@
-
-
- 0
-
6
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
-
Validity
-
- 8
-
6
+
+ 8
+
+
+ 8
+
+
+ 8
+
+
+ 8
+
-
-
+
0
-
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 6
+
+
6
-
@@ -159,10 +207,22 @@
Time range
-
+
8
-
+
+ 8
+
+
+ 8
+
+
+ 8
+
+
+ 6
+
+
6
-
@@ -197,9 +257,7 @@
-
-
- 7
- 5
+
0
0
@@ -232,18 +290,25 @@
-
-
- 0
-
6
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
-
-
- 7
- 0
+
0
0
@@ -275,9 +340,7 @@
-
-
- 7
- 0
+
0
0
diff --git a/widgets/CertExtend.cpp b/widgets/CertExtend.cpp
index 347721c8..1b8248d1 100644
--- a/widgets/CertExtend.cpp
+++ b/widgets/CertExtend.cpp
@@ -25,8 +25,9 @@ CertExtend::CertExtend(QWidget *parent)
a1time time;
setWindowTitle(tr(XCA_TITLE));
image->setPixmap(*MainWindow::certImg);
- notBefore->setDate(time.now());
- notAfter->setDate(time.now(60 * 60 * 24 * 356));
+ validNumber->setText("1");
+ validRange->setCurrentIndex(2);
+ applyTimeDiff();
}
void CertExtend::applyTimeDiff()