# HG changeset patch
# User Jean-Francois Pieronne <jf.pieronne@laposte.net>
# Date 1587571350 -7200
#      Wed Apr 22 18:02:30 2020 +0200
# Node ID defb94a760c3bda6f5222122520e4b5791e8e2a4
# Parent  ee448ee1ad9abd2fab1452986b4a4faa681d6843
secrules/DisplayProxy.py initial version

diff --git a/secrules/DisplayProxy.py b/secrules/DisplayProxy.py
new file mode 100644
--- /dev/null
+++ b/secrules/DisplayProxy.py
@@ -0,0 +1,36 @@
+from vms import starlet, ssdef
+
+
+class DisplayProxy(object):
+    def __init__(self, rem_node='*', rem_user='*', flags=0):
+        self.rem_node = rem_node
+        self.rem_user = rem_user
+        self.flags = 0
+        self.contxt = 0
+
+    def __enter__(self):
+        return self
+
+    def __exit__(self, exc_type, exc_value, traceback):
+        return
+
+    def __iter__(self):
+        return self
+
+    def __next__(self):
+        s, proxy_node, proxy_user, default_user, local_users, self.contxt = \
+                starlet.display_proxy(self.rem_node, self.rem_user, self.flags, self.contxt)
+        if s == ssdef.SS__NOMOREITEMS: 
+            raise StopIteration
+        return proxy_node, proxy_user, default_user, local_users
+     
+    def next(self):
+        return self.__next__()
+
+
+if __name__ == '__main__':
+    with DisplayProxy() as idp:
+        for dp in idp:
+            print dp
+    for dp in DisplayProxy():
+        print dp