From f72753f3ebc0d824a2aa856b17dd5a9597d091ba Mon Sep 17 00:00:00 2001 From: zzz <zzz@mail.i2p> Date: Sat, 23 Apr 2016 17:11:50 +0000 Subject: [PATCH] Addressbook: Store last-modified date SusiDNS: Display signature validation on details page --- apps/addressbook/java/src/net/i2p/addressbook/Daemon.java | 2 ++ apps/susidns/src/java/src/i2p/susi/dns/AddressBean.java | 4 ++++ apps/susidns/src/jsp/details.jsp | 3 +++ .../src/net/i2p/client/naming/BlockfileNamingService.java | 2 ++ 4 files changed, 11 insertions(+) diff --git a/apps/addressbook/java/src/net/i2p/addressbook/Daemon.java b/apps/addressbook/java/src/net/i2p/addressbook/Daemon.java index 099cdc6579..6f57754dd1 100644 --- a/apps/addressbook/java/src/net/i2p/addressbook/Daemon.java +++ b/apps/addressbook/java/src/net/i2p/addressbook/Daemon.java @@ -373,6 +373,7 @@ public class Daemon { ". From: " + addressbook.getLocation()); } allowExistingKeyInPublished = true; + props.setProperty("m", Long.toString(I2PAppContext.getGlobalContext().clock().now())); } else { // mismatch, disallow logMismatch(log, action, key, pod2, polddest, addressbook); @@ -447,6 +448,7 @@ public class Daemon { } else if (action.equals(HostTxtEntry.ACTION_UPDATE)) { if (isKnown) { allowExistingKeyInPublished = true; + props.setProperty("m", Long.toString(I2PAppContext.getGlobalContext().clock().now())); } } else { if (log != null) diff --git a/apps/susidns/src/java/src/i2p/susi/dns/AddressBean.java b/apps/susidns/src/java/src/i2p/susi/dns/AddressBean.java index 9cd3821df2..242ceea85e 100644 --- a/apps/susidns/src/java/src/i2p/susi/dns/AddressBean.java +++ b/apps/susidns/src/java/src/i2p/susi/dns/AddressBean.java @@ -202,6 +202,10 @@ public class AddressBean return getDate("m"); } + /** @since 0.9.26 */ + public boolean isValidated() { + return Boolean.valueOf(getProp("v")); + } /** @since 0.8.7 */ public String getNotes() { diff --git a/apps/susidns/src/jsp/details.jsp b/apps/susidns/src/jsp/details.jsp index 2fddad5b65..d4f92e849b 100644 --- a/apps/susidns/src/jsp/details.jsp +++ b/apps/susidns/src/jsp/details.jsp @@ -119,6 +119,9 @@ <td><%=intl._t("Added Date")%></td> <td><%=addr.getAdded()%></td> </tr><tr class="list${book.trClass}"> +<td><%=intl._t("Validated")%></td> +<td><%=addr.isValidated() ? intl._t("yes") : intl._t("no")%></td> +</tr><tr class="list${book.trClass}"> <td><%=intl._t("Source")%></td> <td><%=addr.getSource()%></td> </tr><tr class="list${book.trClass}"> diff --git a/core/java/src/net/i2p/client/naming/BlockfileNamingService.java b/core/java/src/net/i2p/client/naming/BlockfileNamingService.java index 3e7003d8db..5dd389adac 100644 --- a/core/java/src/net/i2p/client/naming/BlockfileNamingService.java +++ b/core/java/src/net/i2p/client/naming/BlockfileNamingService.java @@ -132,7 +132,9 @@ public class BlockfileNamingService extends DummyNamingService { private static final String VERSION = "4"; private static final String PROP_ADDED = "a"; + private static final String PROP_MODDED = "m"; private static final String PROP_SOURCE = "s"; + private static final String PROP_VALIDATED = "v"; private static final String DUMMY = ""; private static final int NEGATIVE_CACHE_SIZE = 32; -- GitLab