From 396fda8bc8feab2d8cb55d43403e87ae3df227b0 Mon Sep 17 00:00:00 2001 From: Isaku Yamahata Date: Thu, 17 May 2012 13:10:58 +0900 Subject: [PATCH] lib/dpid: dpid formatter/parser Signed-off-by: Isaku Yamahata Signed-off-by: FUJITA Tomonori --- ryu/lib/dpid.py | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 ryu/lib/dpid.py diff --git a/ryu/lib/dpid.py b/ryu/lib/dpid.py new file mode 100644 index 00000000..8c8bf759 --- /dev/null +++ b/ryu/lib/dpid.py @@ -0,0 +1,30 @@ +# Copyright (C) 2012 Nippon Telegraph and Telephone Corporation. +# Copyright (C) 2012 Isaku Yamahata +# +# 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 +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Internal representation of datapath id is quad int +# string representation is in hex without '0x' + +_DPID_LEN = 16 +_DPID_FMT = '%0' + str(_DPID_LEN) + 'x' + + +def dpid_to_str(dpid): + return _DPID_FMT % dpid + + +def str_to_dpid(dpid_str): + assert len(dpid_str) == _DPID_LEN + return int(dpid_str, 16)