75
75
def __init__(self, key):
77
self.fingerprint = None
80
self.display_name = None
83
78
(keys, unmatched) = openpgp.MatchKeys([self.get_id()], 0x00000010)
84
79
self.available = (key in keys)
86
def get_field(self, field, default=None):
87
(valid, value) = openpgp.GetKeyField(self.key, field)
82
fields = openpgp.GetKeyFields(key, ['fingerprint', 'trust', 'flags', 'display-name', 'location'])
86
self.fingerprint = fields.get('fingerprint', 'N/A')
87
self.trust = fields.get('trust', TRUST_UNKNOWN)
88
self.flags = fields.get('flags', 0)
89
self.display_name = fields.get('display-name', '')
90
self.location = fields.get('location', LOCATION_MISSING)
94
92
def get_flags(self):
95
if self.flags is None:
96
self.flags = self.get_field('flags', 0)
100
95
def get_display_name(self):
101
if self.display_name is None:
102
self.display_name = self.get_field('display-name')
104
96
return self.display_name
107
99
return self.key.split(':')[1][8:]
109
101
def get_fingerprint(self):
110
if self.fingerprint is None:
111
self.fingerprint = self.get_field('fingerprint')
113
102
return self.fingerprint
115
104
def get_trust(self):
116
if self.trust is None:
117
self.trust = self.get_field('trust', TRUST_UNKNOWN)
119
105
return self.trust
121
107
def get_location(self):
122
if self.location is None:
123
self.location = self.get_field('location', LOCATION_MISSING)
125
108
return self.location
127
110
def is_available(self):
128
111
return self.available
130
113
def is_trusted(self):
131
return self.get_flags() & FLAG_TRUSTED
114
return self.flags & FLAG_TRUSTED != 0