X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Flibraries%2Fpython%2FDhcp.py;h=5f76e434eca74a8ec6bf6082d7ec18a0c4cfa6bf;hp=ebdfeb3b8021e74b1b0a0d122b8fcb53ad216bf6;hb=cc0c2870a18fb74a56410eca2d1870bddc945397;hpb=ec3512ff7f1405f2e7bc74bbfadf5691afc352c4 diff --git a/resources/libraries/python/Dhcp.py b/resources/libraries/python/Dhcp.py index ebdfeb3b80..5f76e434ec 100644 --- a/resources/libraries/python/Dhcp.py +++ b/resources/libraries/python/Dhcp.py @@ -1,4 +1,4 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. +# Copyright (c) 2017 Cisco and/or its affiliates. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at: @@ -47,6 +47,10 @@ class DhcpClient(object): ' interface {}.' .format(vpp_node, interface)) + +class DhcpProxy(object): + """DHCP Proxy utilities.""" + @staticmethod def dhcp_proxy_config(vpp_node, server_address, source_address): """Set DHCP proxy. @@ -69,3 +73,19 @@ class DhcpClient(object): if output["retval"] != 0: raise RuntimeError('Unable to set DHCP proxy on node {}' .format(vpp_node)) + + @staticmethod + def vpp_get_dhcp_proxy(node, ip_version): + """Retrieve DHCP relay configuration. + + :param node: VPP node. + :param ip_version: IP protocol version: ipv4 or ipv6. + :type node: dict + :type ip_version: str + :returns: DHCP relay data. + :rtype: list + """ + + return VatExecutor.cmd_from_template( + node, "dhcp_proxy_dump.vat", + ipv6="ipv6" if ip_version == "ipv6" else "")