# to perform this encoding.
class Credential(Certificate):
- gidOriginCaller = None
gidCaller = None
gidObject = None
lifeTime = None
def __init__(self, create=False, subject=None, string=None, filename=None):
Certificate.__init__(self, create, subject, string, filename)
- ## set the GID of the original caller
- #
- # @param gid GID object of the original caller
- def set_gid_origin_caller(self, gid):
- self.gidOriginCaller = gid
-
- ##
- # get the GID of the object
-
- def get_gid_origin_caller(self):
- if not self.gidOriginCaller:
- self.decode()
- return self.gidOriginCaller
-
##
# set the GID of the caller
#
# done immediately before signing the credential.
def encode(self):
- dict = {"gidOriginCaller": None,
- "gidCaller": None,
+ dict = {"gidCaller": None,
"gidObject": None,
"lifeTime": self.lifeTime,
"privileges": None,
"delegate": self.delegate}
- if self.gidOriginCaller:
- dict["gidOriginCaller"] = self.gidOriginCaller.save_to_string(save_parents=True)
if self.gidCaller:
dict["gidCaller"] = self.gidCaller.save_to_string(save_parents=True)
if self.gidObject:
else:
self.privileges = None
- gidOriginCallerStr = dict.get("gidOriginCaller", None)
- if gidOriginCallerStr:
- self.gidOriginCaller = GID(string=gidOriginCallerStr)
- else:
- self.gidOriginCaller = None
-
gidCallerStr = dict.get("gidCaller", None)
if gidCallerStr:
self.gidCaller = GID(string=gidCallerStr)
print " privs:", self.get_privileges().save_to_string()
- print " gidOriginCaller:"
- gidOriginCaller = self.get_gid_origin_caller()
- if gidOriginCaller:
- gidOriginCaller.dump(8, dump_parents)
-
print " gidCaller:"
gidCaller = self.get_gid_caller()
if gidCaller: