From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Bryan D. Payne" Subject: [PATCH][ACM] Add type check and conversion to get_decision Date: Wed, 31 May 2006 09:34:51 -0400 Message-ID: <447D9B7B.9050507@us.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com Cc: "Bryan D. Payne" , Reiner Sailer List-Id: xen-devel@lists.xenproject.org This patch allows domid and ssidref args to get_decision in util/security.py to be either strings or ints (previously only strings would work due to the underlying call to lowlevel.acm). Signed-off-by: Bryan D. Payne Signed-off-by: Reiner Sailer --- tools/python/xen/util/security.py | 9 +++++++++ 1 file changed, 9 insertions(+) Index: xen-unstable.hg-shype/tools/python/xen/util/security.py =================================================================== --- xen-unstable.hg-shype.orig/tools/python/xen/util/security.py +++ xen-unstable.hg-shype/tools/python/xen/util/security.py @@ -429,6 +429,15 @@ def get_decision(arg1, arg2): err("Argument type not supported.") ssidref = label2ssidref(arg2[2][1], arg2[1][1]) arg2 = ['ssidref', str(ssidref)] + + # accept only int or string types for domid and ssidref + if isinstance(arg1[1], int): + arg1[1] = str(arg1[1]) + if isinstance(arg2[1], int): + arg2[1] = str(arg2[1]) + if not isinstance(arg1[1], str) or not isinstance(arg2[1], str): + err("Invalid id or ssidref type, string or int required") + try: decision = acm.getdecision(arg1[0], arg1[1], arg2[0], arg2[1]) except: