From 75fbf719866a77fe75398968dc3f1f1730b97f8e Mon Sep 17 00:00:00 2001
From: Tony Mack <tmack@paris.CS.Princeton.EDU>
Date: Tue, 6 Sep 2011 16:08:49 -0400
Subject: [PATCH] When calling CreateSliver, only attempt to fetch user keys
 from user record

---
 sfa/client/sfi.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/sfa/client/sfi.py b/sfa/client/sfi.py
index 764ce18c..e9be588c 100755
--- a/sfa/client/sfi.py
+++ b/sfa/client/sfi.py
@@ -694,6 +694,7 @@ class Sfi:
         hrn = args[0]
         user_cred = self.get_user_cred().save_to_string(save_parents=True)
         records = self.registry.Resolve(hrn, user_cred)
+        print records
         records = filter_records(opts.type, records)
         if not records:
             print "No record of type", opts.type
@@ -969,6 +970,8 @@ class Sfi:
             user_urns = [hrn_to_urn(hrn, 'user') for hrn in user_hrns]
             user_records = self.registry.Resolve(user_urns, [user_cred.save_to_string(save_parents=True)])
             for user_record in user_records:
+                if user_record['type'] != 'user':
+                    continue
                 #user = {'urn': user_cred.get_gid_caller().get_urn(),'keys': []}
                 user = {'urn': user_cred.get_gid_caller().get_urn(), #
                         'keys': user_record['keys'],
@@ -993,7 +996,7 @@ class Sfi:
         if self.server_supports_call_id_arg(server):
             call_args.append(unique_call_id())
              
-        result =  server.CreateSliver(*call_args)
+        result = server.CreateSliver(*call_args)
         print result
         return result
 
@@ -1181,6 +1184,7 @@ class Sfi:
             self.dispatch(command, cmd_opts, cmd_args)
         except KeyError:
             self.logger.critical ("Unknown command %s"%command)
+            raise
             sys.exit(1)
     
         return
-- 
2.47.0