add request_hash argument to more method calls
authorTony Mack <tmack@cs.princeton.edu>
Fri, 16 Oct 2009 03:34:20 +0000 (03:34 +0000)
committerTony Mack <tmack@cs.princeton.edu>
Fri, 16 Oct 2009 03:34:20 +0000 (03:34 +0000)
sfa/methods/register_peer_object.py
sfa/methods/remove_peer_object.py

index bb0f100..2268bc6 100644 (file)
@@ -32,11 +32,13 @@ class register_peer_object(Method):
     accepts = [
         Parameter(str, "Credential string"),
         Parameter(dict, "Record dictionary containing record fields")
+        Parameter(str, "Request hash")
         ]
 
     returns = Parameter(int, "1 if successful")
     
-    def call(self, cred, record_dict, caller_cred=None):
+    def call(self, cred, record_dict, request_hash, caller_cred=None):
+        self.api.auth.authenticateCred(cred, [cred], request_hash)
         self.api.auth.check(cred, "register")
         if caller_cred==None:
                caller_cred=cred
index f3ea1e7..b9b337f 100644 (file)
@@ -27,16 +27,17 @@ class remove_peer_object(Method):
     accepts = [
         Parameter(str, "Credential string"),
         Parameter(dict, "Record dictionary")
+        Parameter(str, "Request hash"),
         ]
 
     returns = Parameter(int, "1 if successful")
     
-    def call(self, cred, record, caller_cred=None):
+    def call(self, cred, record, request_hash, caller_cred=None):
         if caller_cred==None:
             caller_cred=cred
         #log the call
         self.api.logger.info("interface: %s\tcaller-hrn: %s\ttarget-hrn: %s\tmethod-name: %s"%(self.api.interface, Credential(string=caller_cred).get_gid_caller().get_hrn(), record['hrn'], self.name))
-        
+        self.api.auth.authenticateCred(cred, [cred], request_hash) 
         self.api.auth.check(cred, "remove")
 
         # Only allow the local interface or record owner to delete peer_records