changeset 1162:2a1206932f53

(issue107) Comment all TODO's and FIXME's with issues as documented in issue107
author Andre Heinecke <andre.heinecke@intevation.de>
date Thu, 18 Sep 2014 18:53:11 +0200
parents b67681a61e3e
children e3772d2810b3
files cinst/main.c cmake/FindNSS.cmake common/linuxlockfile.c common/listutil.c common/util.c packaging/trustbridge.nsi ui/certificate.cpp ui/createinstallerdialog.cpp ui/installwrapper.cpp ui/l10n/trustbridge_de_DE.ts ui/mainwindow.cpp ui/processhelp.h ui/processhelp_linux.cpp ui/sslconnection.cpp
diffstat 14 files changed, 126 insertions(+), 131 deletions(-) [+]
line wrap: on
line diff
--- a/cinst/main.c	Thu Sep 18 18:30:54 2014 +0200
+++ b/cinst/main.c	Thu Sep 18 18:53:11 2014 +0200
@@ -211,7 +211,6 @@
 int
 main (int argc, char **argv)
 {
-  /* TODO handle wchar arguments on Windows or do conversion dance */
   char **to_install = NULL,
          **to_remove = NULL,
            **all_valid_certs = NULL;
--- a/cmake/FindNSS.cmake	Thu Sep 18 18:30:54 2014 +0200
+++ b/cmake/FindNSS.cmake	Thu Sep 18 18:53:11 2014 +0200
@@ -7,7 +7,6 @@
 # - Try to find Mozilla NSS
 
 include(FindPkgConfig)
-# FIXME: maybe a minimal version would be wise...
 pkg_check_modules (NSS  nss)
 
 if (NOT NSS_FOUND)
--- a/common/linuxlockfile.c	Thu Sep 18 18:30:54 2014 +0200
+++ b/common/linuxlockfile.c	Thu Sep 18 18:53:11 2014 +0200
@@ -32,7 +32,7 @@
       lk.l_len = 0;
       if (fcntl(fd, F_SETLK, &lk) != -1)
         {
-          /* FIXME: For extra security we should check if there is
+          /* FIXME (issue139): For extra security we should check if there is
              already a pid in the file.  If so we should check in
              /proc/$PID if there is still a process of the same name
              as ours running... */
--- a/common/listutil.c	Thu Sep 18 18:30:54 2014 +0200
+++ b/common/listutil.c	Thu Sep 18 18:53:11 2014 +0200
@@ -203,14 +203,10 @@
         }
       if (ret == READ_FILE_UNREADABLE)
         {
-          /* TODO: work with errno ? */
-          /* errsv = errno; */
-          /* perror("read_and_verify_list(), READ_FILE_UNREADABLE:");  */
           return SeekFailed;
         }
       if (ret == READ_FILE_READ_FAILED)
         {
-          /* TODO: work with ferror() or feof() ? */
           return ReadFailed;
         }
       return UnknownError;
--- a/common/util.c	Thu Sep 18 18:30:54 2014 +0200
+++ b/common/util.c	Thu Sep 18 18:53:11 2014 +0200
@@ -761,7 +761,7 @@
       if (err == ERROR_ALREADY_EXISTS)
         {
           /* Verify that the directory has the correct rights */
-          // TODO
+          // TODO (issue138)
           retval = true;
           goto done;
         }
--- a/packaging/trustbridge.nsi	Thu Sep 18 18:30:54 2014 +0200
+++ b/packaging/trustbridge.nsi	Thu Sep 18 18:53:11 2014 +0200
@@ -273,7 +273,7 @@
     ExpandEnvStrings $0 %LOCALAPPDATA%
     nsExec::ExecToLog '"$INSTDIR\cinst.exe" "list=$0\BSI\TrustBridge\list-installed.txt" "choices=uninstall"'
 skip_certs:
-  RMDir /r "$INSTDIR" ; TODO include uninstall files
+  RMDir /r "$INSTDIR" ; TODO (issue137) include uninstall files
 ; !include "filelist-un.nsh"
 ;  Delete "$INSTDIR\Uninstall.exe"
 ;  RMDir "$INSTDIR"
--- a/ui/certificate.cpp	Thu Sep 18 18:30:54 2014 +0200
+++ b/ui/certificate.cpp	Thu Sep 18 18:53:11 2014 +0200
@@ -142,7 +142,6 @@
     /* We read the file using Qt to avoid filename encoding problems
      * on Windows */
 
-    /* TODO change qDebug errors into messageboxes */
     QFile certificateFile(file_name);
     QByteArray fileContent;
     QList<Certificate> retval;
@@ -173,7 +172,6 @@
 
     if (ret > 0) {
         qDebug() << "Some certificates could not be parsed.";
-        /* Maybe return here? */
     }
 
     x509_crt *iter = &chain;
--- a/ui/createinstallerdialog.cpp	Thu Sep 18 18:30:54 2014 +0200
+++ b/ui/createinstallerdialog.cpp	Thu Sep 18 18:53:11 2014 +0200
@@ -435,7 +435,7 @@
         if (entry.suffix() == "exe") {
             if (!signFile(targetPath)) {
                 showErrorMessage(tr("Failed to sign binaries with osslsigncode.\n"
-                            "Please check that %1 is a valid code signing certificate and that"
+                            "Please check that %1 is a valid code signing certificate and that "
                             "osslsigncode can be found in the PATH.").arg(mCertFile->text()));
                 mProgress.cancel();
                 return NULL;
--- a/ui/installwrapper.cpp	Thu Sep 18 18:30:54 2014 +0200
+++ b/ui/installwrapper.cpp	Thu Sep 18 18:53:11 2014 +0200
@@ -61,8 +61,6 @@
 
 void InstallWrapper::run()
 {
-    /* TODO: We need errorcodes here so that we can see if a user
-     * cancled the UAC elevation */
     QTemporaryFile choicesFile;
     QFileInfo cinstProcInfo = getCinstProcInfo();
 
@@ -171,7 +169,7 @@
     fclose(vres.fptr);
 
     if (retval != 0) {
-        /* TODO make this nicer */
+        /* TODO (issue135) make this nicer */
         emit error (tr("The process failed with return code. %1").arg(retval));
         return;
     }
@@ -239,7 +237,7 @@
     if (installerProcess.exitCode() == 0) {
         qDebug() << "output: " << installerProcess.readAllStandardOutput();
     } else {
-        /* TODO handle errors defined by errorcodes.h */
+        /* TODO (issue135) handle errors defined by errorcodes.h */
         qDebug() << "Installer Process returned: " << installerProcess.exitCode();
         qDebug() << "output: " << installerProcess.readAllStandardOutput();
         return;
--- a/ui/l10n/trustbridge_de_DE.ts	Thu Sep 18 18:30:54 2014 +0200
+++ b/ui/l10n/trustbridge_de_DE.ts	Thu Sep 18 18:53:11 2014 +0200
@@ -165,33 +165,33 @@
         <translation>Auführungsfehler: %1</translation>
     </message>
     <message>
-        <location filename="../installwrapper.cpp" line="140"/>
+        <location filename="../installwrapper.cpp" line="147"/>
         <source>Error monitoring process: %1</source>
         <translation>Fehlerüberwachung: %1</translation>
     </message>
     <message>
-        <location filename="../installwrapper.cpp" line="144"/>
+        <location filename="../installwrapper.cpp" line="151"/>
         <source>Certificate installation timed out.</source>
         <translation>Zeitüberschreitung bei der Zertifikatsinstallation.</translation>
     </message>
     <message>
-        <location filename="../installwrapper.cpp" line="158"/>
+        <location filename="../installwrapper.cpp" line="165"/>
         <source>Failed to check process status: %1</source>
         <translation>Fehler in der Prozess-Statusprüfung: %1</translation>
     </message>
     <message>
-        <location filename="../installwrapper.cpp" line="168"/>
+        <location filename="../installwrapper.cpp" line="175"/>
         <source>The process failed with return code. %1</source>
         <translation>Der Prozess ist fehlgeschlagen. Fehlercode: %1</translation>
     </message>
     <message>
-        <location filename="../installwrapper.cpp" line="214"/>
+        <location filename="../installwrapper.cpp" line="221"/>
         <source>Failed to start installer process.</source>
         <translation>Fehler beim Starten des Installer-Prozess.</translation>
     </message>
     <message>
-        <location filename="../installwrapper.cpp" line="223"/>
-        <location filename="../installwrapper.cpp" line="228"/>
+        <location filename="../installwrapper.cpp" line="230"/>
+        <location filename="../installwrapper.cpp" line="235"/>
         <source>Failed to complete installation.</source>
         <translation>Fehler beim Abschließen der Installation.</translation>
     </message>
@@ -203,19 +203,19 @@
         <translation type="vanished">Neue Vorschläge für Wurzelzertifikate sind verfügbar. Klicken Sie hier zum Installieren.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="579"/>
-        <location filename="../mainwindow.cpp" line="742"/>
+        <location filename="../mainwindow.cpp" line="592"/>
+        <location filename="../mainwindow.cpp" line="755"/>
         <source>Check for Updates</source>
         <translation>Neue Empfehlungen suchen</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="581"/>
-        <location filename="../mainwindow.cpp" line="1106"/>
+        <location filename="../mainwindow.cpp" line="594"/>
+        <location filename="../mainwindow.cpp" line="1119"/>
         <source>Quit</source>
         <translation>Beenden</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="599"/>
+        <location filename="../mainwindow.cpp" line="612"/>
         <source>TrustBridge</source>
         <translation>TrustBridge</translation>
     </message>
@@ -241,7 +241,7 @@
 Empfehlungen</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1015"/>
+        <location filename="../mainwindow.cpp" line="1028"/>
         <source>Revoked
 certificates</source>
         <translation>Abgeratene
@@ -256,41 +256,41 @@
         <translation type="vanished">Aktualisierungen (%1/%2)</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="691"/>
-        <location filename="../mainwindow.cpp" line="1111"/>
+        <location filename="../mainwindow.cpp" line="704"/>
+        <location filename="../mainwindow.cpp" line="1124"/>
         <source>Quit without saving</source>
         <translation>Beenden ohne Schreiben</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="795"/>
-        <location filename="../mainwindow.cpp" line="1152"/>
+        <location filename="../mainwindow.cpp" line="808"/>
+        <location filename="../mainwindow.cpp" line="1165"/>
         <source>Remove revoked certificates (%1/%2)</source>
         <translation>Abgeratene Wurzelzertifikate entfernen (%1/%2)</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="872"/>
+        <location filename="../mainwindow.cpp" line="885"/>
         <source>Trusted certificates</source>
         <translation>Empfohlene Wurzelzertifikate</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="873"/>
+        <location filename="../mainwindow.cpp" line="886"/>
         <source>The following list of trusted root certificates is managed by the BSI. The BSI validates independently the authenticity, security and actuality of these certificates.</source>
         <translation>Die folgenden Wurzelzertifikate wurden bisher vom BSI zur Installation vorgeschlagen. Sie können erkennen, welche Sie bereits geschrieben haben.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="880"/>
+        <location filename="../mainwindow.cpp" line="893"/>
         <source>Please choose the certificates you want to trust or untrust. TrustBridge will install these certificates for your secure communication for email and internet.</source>
         <translation>Legen Sie fest, ob Sie der Empfehlung ganz oder teilweise folgen möchten. TrustBridge wird die Änderungen an den Wurzelzertifikaten vornehmen.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1006"/>
+        <location filename="../mainwindow.cpp" line="1019"/>
         <source>Trusted
 certificates</source>
         <translation>Empfohlene
 Wurzelzertifikate</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1024"/>
+        <location filename="../mainwindow.cpp" line="1037"/>
         <source>Information
 and help</source>
         <translation>Informationen
@@ -317,27 +317,27 @@
         <translation type="vanished">Aktualisierungen einspielen</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="773"/>
-        <location filename="../mainwindow.cpp" line="1136"/>
+        <location filename="../mainwindow.cpp" line="786"/>
+        <location filename="../mainwindow.cpp" line="1149"/>
         <source>Install new trusted certificates (%1/%2)</source>
         <translation>Neue, empfohlene Wurzelzertifikate installieren (%1/%2)</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="777"/>
-        <location filename="../mainwindow.cpp" line="799"/>
-        <location filename="../mainwindow.cpp" line="818"/>
-        <location filename="../mainwindow.cpp" line="1142"/>
-        <location filename="../mainwindow.cpp" line="1158"/>
+        <location filename="../mainwindow.cpp" line="790"/>
+        <location filename="../mainwindow.cpp" line="812"/>
+        <location filename="../mainwindow.cpp" line="831"/>
+        <location filename="../mainwindow.cpp" line="1155"/>
+        <location filename="../mainwindow.cpp" line="1171"/>
         <source>Show details</source>
         <translation>Details einblenden</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="913"/>
+        <location filename="../mainwindow.cpp" line="926"/>
         <source>Revoked certificates</source>
         <translation>Abgeratene Wurzelzertifikate</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="914"/>
+        <location filename="../mainwindow.cpp" line="927"/>
         <source>Certificates can be corrupted or stolen and misused in many ways. Therefore the BSI recommends to remove all revoked certificates from your system.</source>
         <translation>Wurzelzertifikate können veraltet sein, korrumpiert, gestohlen oder missbraucht werden. Die Wurzelzertifikate , von denen das BSI abrät, sollten umgehend entfernt werden.</translation>
     </message>
@@ -350,7 +350,7 @@
         <translation type="vanished">Abweichend zu behandelnde Wurzelzertifikate (%1)</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="964"/>
+        <location filename="../mainwindow.cpp" line="977"/>
         <source>Trust in your digital communication</source>
         <translation>Vertrauen in Ihre digitale Kommunikation</translation>
     </message>
@@ -359,8 +359,8 @@
         <translation type="vanished">Änderungen</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="687"/>
-        <location filename="../mainwindow.cpp" line="1107"/>
+        <location filename="../mainwindow.cpp" line="700"/>
+        <location filename="../mainwindow.cpp" line="1120"/>
         <source>Certificates unchanged</source>
         <translation>Wurzelzertifikate unverändert</translation>
     </message>
@@ -377,75 +377,80 @@
         <translation type="vanished">Es wird empfohlen, die nachfolgenden Änderungen an Ihren Wurzelzertifikaten zu übernehmen.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1115"/>
+        <location filename="../mainwindow.cpp" line="1128"/>
         <source>Apply changes</source>
         <translation>Änderungen schreiben</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="612"/>
+        <location filename="../mainwindow.cpp" line="625"/>
         <source>Version: </source>
         <translation>Version:</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="272"/>
-        <location filename="../mainwindow.cpp" line="274"/>
+        <location filename="../mainwindow.cpp" line="180"/>
+        <source>Show recommendations</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="282"/>
+        <location filename="../mainwindow.cpp" line="284"/>
         <source>An updated certificate list is available.</source>
         <translation>Neue Vorschläge für Wurzelzertifikate sind verfügbar.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="274"/>
+        <location filename="../mainwindow.cpp" line="284"/>
         <source>Click here to install.</source>
         <translation>Klicken Sie hier zum Installieren.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="284"/>
-        <location filename="../mainwindow.cpp" line="287"/>
+        <location filename="../mainwindow.cpp" line="294"/>
+        <location filename="../mainwindow.cpp" line="297"/>
         <source>An update for %1 is available.</source>
         <translation>Eine Aktualisierung für %1 ist verfügbar.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="288"/>
+        <location filename="../mainwindow.cpp" line="298"/>
         <source>Click here to download and install the update.</source>
         <translation>Hier klicken, um Download und Installation zu starten.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="327"/>
+        <location filename="../mainwindow.cpp" line="337"/>
         <source>Failed to create update process.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="328"/>
+        <location filename="../mainwindow.cpp" line="338"/>
         <source>This could be caused by not enough disk space or invalid permissions.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="516"/>
+        <location filename="../mainwindow.cpp" line="526"/>
         <source>Downloading update...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="563"/>
+        <location filename="../mainwindow.cpp" line="585"/>
         <source>Failed to check for updates:</source>
         <translation>Fehler bei Updateprüfung:</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1095"/>
+        <location filename="../mainwindow.cpp" line="1108"/>
         <source>You should apply the following, recommended changes to your certificate stores:</source>
         <translation>Es wird empfohlen, die nachfolgenden Änderungen an Ihren Zertifikatsspeichern vorzunehmen:</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1098"/>
+        <location filename="../mainwindow.cpp" line="1111"/>
         <source>You can apply the following, changes to your certificate stores:</source>
         <translation>Sie können die nachfolgenden Änderungen an Ihren Zertifikatsspeichern vornehmen:</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1101"/>
+        <location filename="../mainwindow.cpp" line="1114"/>
         <source>There are currently no changes for your certificate stores.</source>
         <translation>Es liegen keine neuen Empfehlungen vor.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="695"/>
-        <location filename="../mainwindow.cpp" line="1109"/>
+        <location filename="../mainwindow.cpp" line="708"/>
+        <location filename="../mainwindow.cpp" line="1122"/>
         <source>Install certificates again</source>
         <translation>Wurzelzertifikate erneut schreiben</translation>
     </message>
@@ -498,7 +503,7 @@
         <translation type="vanished">Letzte erfolgreiche Prüfung nach Aktualisierungen: %1</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1618"/>
+        <location filename="../mainwindow.cpp" line="1631"/>
         <source>Sucessfully checked for updates.</source>
         <translation>Suche nach neuen Empfehlungen erfolgreich.</translation>
     </message>
@@ -509,141 +514,141 @@
 Hier klicken, um Download und Installation zu starten.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="627"/>
+        <location filename="../mainwindow.cpp" line="640"/>
         <source>TrustBridge is a root certificate installer for Windows and GNU/Linux.&lt;br/&gt;</source>
         <translation>TrustBridge ist ein Wurzelzertifikatsinstaller für Windows und GNU/Linux.&lt;br/&gt;</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="629"/>
+        <location filename="../mainwindow.cpp" line="642"/>
         <source>The root certificate lists are managed by the German &lt;a href=&quot;https://www.bsi.bund.de&quot;&gt;Federal Office for Information Security (BSI)&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;</source>
         <translation>Die Wurzelzertifikate werden vom &lt;a href=&quot;https://www.bsi.bund.de&quot;&gt;Bundesamt für Sicherheit in der Informationstechnik (BSI)&lt;/a&gt; vorgeschlagen.&lt;br/&gt;&lt;br/&gt;</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="632"/>
+        <location filename="../mainwindow.cpp" line="645"/>
         <source>The software was developed by the companies &lt;a href=&quot;http://www.intevation.de&quot;&gt;Intevation GmbH&lt;/a&gt; and  &lt;a href=&quot;http://www.dn-systems.de&quot;&gt;DN-Systems GmbH&lt;/a&gt;, &lt;br&gt; contracted by the German Federal Office for Information Security (BSI).&lt;br/&gt;&lt;br/&gt;</source>
         <translation>Die Software wurde von den Unternehmen &lt;a href=&quot;http://www.intevation.de&quot;&gt;Intevation GmbH&lt;/a&gt; und  &lt;a href=&quot;http://www.dn-systems.de&quot;&gt;DN-Systems GmbH&lt;/a&gt; entwickelt, &lt;br&gt; beauftragt vom Bundesamt für Sicherheit in der Informationstechnik (BSI).&lt;br/&gt;&lt;br/&gt;</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="636"/>
+        <location filename="../mainwindow.cpp" line="649"/>
         <source>TrustBridge is Free Software licensed under GNU GPL v2+.&lt;br/&gt;&lt;br/&gt;Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik</source>
         <translation>TrustBridge ist Freie Software, lizensiert unter der GNU GPL v2+.&lt;br/&gt;&lt;br/&gt;(C) 2014. Die Rechte liegen beim Bundesamt für Sicherheit in der Informationstechnik.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="653"/>
+        <location filename="../mainwindow.cpp" line="666"/>
         <source>Show Help</source>
         <translation>Hilfe anzeigen</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="658"/>
+        <location filename="../mainwindow.cpp" line="671"/>
         <source>Proxy settings</source>
         <translation>Proxy-Einstellungen</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="733"/>
+        <location filename="../mainwindow.cpp" line="746"/>
         <source>Last update check:</source>
         <translation>Letzte Suche:</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="738"/>
+        <location filename="../mainwindow.cpp" line="751"/>
         <source>No connection with the updateserver.</source>
         <translation>Keine Verbindung zum Updateserver.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="740"/>
+        <location filename="../mainwindow.cpp" line="753"/>
         <source>Update</source>
         <translation>Aktualisieren</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="776"/>
-        <location filename="../mainwindow.cpp" line="798"/>
-        <location filename="../mainwindow.cpp" line="817"/>
+        <location filename="../mainwindow.cpp" line="789"/>
+        <location filename="../mainwindow.cpp" line="811"/>
+        <location filename="../mainwindow.cpp" line="830"/>
         <source>Details</source>
         <translation>Details</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="921"/>
+        <location filename="../mainwindow.cpp" line="934"/>
         <source>The following unsecure certificates were revoked by the BSI. Already uninstalled certificates cannot be reinstalled. It is recommended that you select all certificates to uninstall if you still have revoked certificates installed.</source>
         <translation>Von den folgenden, ehemals empfohlenen Wurzelzertifikaten, rät das BSI ab. Über diese Anwendung können sie auch nicht mehr installiert werden. Markieren Sie verbleibende Wurzelzertifikate zur Löschung, sobald Sie können.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="966"/>
+        <location filename="../mainwindow.cpp" line="979"/>
         <source>Version</source>
         <translation>Version</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="993"/>
+        <location filename="../mainwindow.cpp" line="1006"/>
         <source>Pending
 changes</source>
         <translation>Ausstehende
 Änderungen</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1131"/>
+        <location filename="../mainwindow.cpp" line="1144"/>
         <source>Manual changes (%1)</source>
         <translation>Manuelle Änderungen (%1)</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1182"/>
+        <location filename="../mainwindow.cpp" line="1195"/>
         <source>Certificate list from:</source>
         <translation>Zertifikatsliste vom:</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1187"/>
+        <location filename="../mainwindow.cpp" line="1200"/>
         <source>Currently installed certificate list:</source>
         <translation>Aktuell installierte Zertifikatsliste:</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1191"/>
+        <location filename="../mainwindow.cpp" line="1204"/>
         <source>No certificate list installed.</source>
         <translation>Keine Zertifikatsliste installiert.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1221"/>
-        <location filename="../mainwindow.cpp" line="1273"/>
-        <location filename="../mainwindow.cpp" line="1485"/>
+        <location filename="../mainwindow.cpp" line="1234"/>
+        <location filename="../mainwindow.cpp" line="1286"/>
+        <location filename="../mainwindow.cpp" line="1498"/>
         <source>Certificate will be installed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1222"/>
-        <location filename="../mainwindow.cpp" line="1262"/>
+        <location filename="../mainwindow.cpp" line="1235"/>
+        <location filename="../mainwindow.cpp" line="1275"/>
         <source>Certifcate is not installed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1224"/>
-        <location filename="../mainwindow.cpp" line="1261"/>
+        <location filename="../mainwindow.cpp" line="1237"/>
+        <location filename="../mainwindow.cpp" line="1274"/>
         <source>Certificate is installed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1225"/>
-        <location filename="../mainwindow.cpp" line="1236"/>
-        <location filename="../mainwindow.cpp" line="1289"/>
-        <location filename="../mainwindow.cpp" line="1307"/>
-        <location filename="../mainwindow.cpp" line="1486"/>
+        <location filename="../mainwindow.cpp" line="1238"/>
+        <location filename="../mainwindow.cpp" line="1249"/>
+        <location filename="../mainwindow.cpp" line="1302"/>
+        <location filename="../mainwindow.cpp" line="1320"/>
+        <location filename="../mainwindow.cpp" line="1499"/>
         <source>Certificate will be removed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1237"/>
-        <location filename="../mainwindow.cpp" line="1290"/>
+        <location filename="../mainwindow.cpp" line="1250"/>
+        <location filename="../mainwindow.cpp" line="1303"/>
         <source>Certificate has not been removed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1244"/>
-        <location filename="../mainwindow.cpp" line="1297"/>
+        <location filename="../mainwindow.cpp" line="1257"/>
+        <location filename="../mainwindow.cpp" line="1310"/>
         <source>Certificate has been removed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1274"/>
+        <location filename="../mainwindow.cpp" line="1287"/>
         <source>Certificate will not be installed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1308"/>
+        <location filename="../mainwindow.cpp" line="1321"/>
         <source>Certificate will not be removed.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -657,18 +662,18 @@
         <translation type="vanished">Sie können die nachfolgenden Änderungen an Ihren Zertifikatsspeichern vornehmen.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1112"/>
+        <location filename="../mainwindow.cpp" line="1125"/>
         <source>Pending changes (%1)</source>
         <translation>Ausstehende
 Änderungen (%1)</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1170"/>
+        <location filename="../mainwindow.cpp" line="1183"/>
         <source>New, recommended changes (%1/%2)</source>
         <translation>Neue, empfohlene Änderungen (%1/%2)</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1178"/>
+        <location filename="../mainwindow.cpp" line="1191"/>
         <source>No new recommendations</source>
         <translation>Keine neuen Empfehlungen</translation>
     </message>
@@ -689,37 +694,37 @@
         <translation type="vanished">Neue empfohlene Änderungen (%1)</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1322"/>
+        <location filename="../mainwindow.cpp" line="1335"/>
         <source>Error executing update</source>
         <translation>Fehler bei der Aktualisierung</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1409"/>
+        <location filename="../mainwindow.cpp" line="1422"/>
         <source>Installation with standard user account</source>
         <translation>Installation mit Standardbenutzerkonto</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1410"/>
+        <location filename="../mainwindow.cpp" line="1423"/>
         <source>Windows will now ask you to confirm each root certificate modification because TrustBridge does not have the necessary privileges to install root certificates into the Windows certificate store silently.</source>
         <translation>Windows wird Sie nun bitten, jede Wurzelzertifikatsänderung zu bestätigen. Grund dafür: TrustBridge besitzt nicht die nötigen Privilegien, um Wurzelzertifikate ohne Nachfrage in den Windows-Zertifikatsspeicher zu installieren.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1418"/>
+        <location filename="../mainwindow.cpp" line="1431"/>
         <source>Installing certificates...</source>
         <translation>Wurzelzertifikate werden geändert...</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1660"/>
+        <location filename="../mainwindow.cpp" line="1673"/>
         <source>Error!</source>
         <translation>Fehler!</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1660"/>
+        <location filename="../mainwindow.cpp" line="1673"/>
         <source>Failed to find the manual</source>
         <translation>Fehler beim Finden des Handbuchs</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1674"/>
+        <location filename="../mainwindow.cpp" line="1687"/>
         <source>TrustBridge error</source>
         <translation>TrustBridge Fehler</translation>
     </message>
@@ -792,28 +797,28 @@
         <translation>Automatische Aktualisierungsprüfung von TrustBridge.</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="305"/>
+        <location filename="../mainwindow.cpp" line="315"/>
         <source>TrustBridge-Updater</source>
         <comment>Used as filename for the updater. Only use ASCII please.</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1553"/>
+        <location filename="../mainwindow.cpp" line="1566"/>
         <source>Hide details</source>
         <translation>Details ausblenden</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1554"/>
+        <location filename="../mainwindow.cpp" line="1567"/>
         <source>Less</source>
         <translation>Weniger</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1559"/>
+        <location filename="../mainwindow.cpp" line="1572"/>
         <source>Show details</source>
         <translation>Details einblenden</translation>
     </message>
     <message>
-        <location filename="../mainwindow.cpp" line="1560"/>
+        <location filename="../mainwindow.cpp" line="1573"/>
         <source>Details</source>
         <translation>Details</translation>
     </message>
@@ -821,12 +826,12 @@
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../trayicon.cpp" line="54"/>
+        <location filename="../trayicon.cpp" line="58"/>
         <source>Install update</source>
         <translation>Herunterladen und installieren</translation>
     </message>
     <message>
-        <location filename="../trayicon.cpp" line="55"/>
+        <location filename="../trayicon.cpp" line="60"/>
         <source>Remind me later</source>
         <translation>Später erinnern</translation>
     </message>
--- a/ui/mainwindow.cpp	Thu Sep 18 18:30:54 2014 +0200
+++ b/ui/mainwindow.cpp	Thu Sep 18 18:53:11 2014 +0200
@@ -271,7 +271,7 @@
     verifyListData();
     if (!mListToInstall.isValid()) {
         /* Downloader provided invalid files */
-        /* TODO: Error count. Error handling. Otherwise
+        /* TODO (issue38): Error count. Error handling. Otherwise
          * we can go into an endless loop here */
 
         /* Retry the download again in 10 - 20 minutes */
@@ -571,7 +571,7 @@
 
 void MainWindow::downloaderError(const QString &message, SSLConnection::ErrorCode error)
 {
-    /* TODO logging and handle error according to a plan */
+    /* TODO (issue38) handle error according to a plan */
     syslog_error_printf ("Failed to check for updates: %s", message.toUtf8().constData());
 #ifdef IS_TAG_BUILD
     /* During tag build it should never happen that an url checked is not available
@@ -1209,7 +1209,7 @@
 
 void MainWindow::loadCertificateList()
 {
-    /* TODO: if nothing is available (neither old nor new) add some progress
+    /* TODO (issue134): if nothing is available (neither old nor new) add some progress
      * indication */
     mInstallList->clear();
     mRemoveList->clear();
--- a/ui/processhelp.h	Thu Sep 18 18:30:54 2014 +0200
+++ b/ui/processhelp.h	Thu Sep 18 18:53:11 2014 +0200
@@ -34,6 +34,9 @@
 /**
 * @brief check if another process with the same name exists
 *
+* Under GNU/Linux this only works for processes that have a
+* processName.pid file in QStandardPaths::DataLocation.
+*
 * @param[in] processName name of the process to look for.
 *
 * @returns true if one or more processes (other than the current process) exist
--- a/ui/processhelp_linux.cpp	Thu Sep 18 18:30:54 2014 +0200
+++ b/ui/processhelp_linux.cpp	Thu Sep 18 18:53:11 2014 +0200
@@ -23,15 +23,12 @@
 }
 
 const QList<int> ProcessHelp::getProcessesIdForName(const QString &processName) {
-    // TODO
+    // TODO (issue39)
     Q_UNUSED(processName);
     return QList<int>();
 }
 
 bool ProcessHelp::otherProcessesExist(const QString &processName) {
-    // FIXME: We are using lock file semantics on GNU Linux so the
-    // name of this method is rather misleading.
-
     QDir dataDir(QStandardPaths::writableLocation(QStandardPaths::DataLocation));
     dataDir.mkpath(".");
     QString lockFilePath = dataDir.filePath(processName + ".pid");
@@ -44,7 +41,7 @@
 }
 
 void ProcessHelp::activateWindowForProcess(const QString &executableName) {
-    // TODO
+    // TODO (issue136)
     Q_UNUSED(executableName);
     return;
 }
--- a/ui/sslconnection.cpp	Thu Sep 18 18:30:54 2014 +0200
+++ b/ui/sslconnection.cpp	Thu Sep 18 18:53:11 2014 +0200
@@ -27,7 +27,7 @@
 {
     if (certificate.isEmpty()) {
 #ifdef RELEASE_BUILD
-        /* TODO Change certificate here in case of release build */
+        /* TODO (issue95) Change certificate here in case of release build */
         QFile certResource(":certs/ssl-test");
 #else
         QFile certResource(":certs/ssl-test");

http://wald.intevation.org/projects/trustbridge/