server: discovery: Apply interface filtering rules

We have interface rules but are not applying them on new daemon
startup discovery.  This results in unintended caching of blacklisted
or unspecified interfaces.

Resolves openbmc/openbmc#3052
Tested: Built palmetto image and booted BMC to obmc-standby target
Change-Id: I57d01f925e51a10abdb55d39922c7f52d2286d91
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/obmc/mapper/server.py b/obmc/mapper/server.py
index 01c18ee..5e51d65 100644
--- a/obmc/mapper/server.py
+++ b/obmc/mapper/server.py
@@ -102,7 +102,9 @@
             try:
                 self.gmo_pending.remove(path)
                 for k, v in list(objs.items()):
-                    self.results[k] = v
+                    ifaces = {iface: properties for iface, properties in list(
+                        filter(lambda x: iface_match(x[0]), v.items()))}
+                    self.results[k] = ifaces
             except Exception as e:
                 error_callback(service, path, e)
                 return None