From b7a7b4cb5e2a5c52fc132e5e2053954829e1be3f Mon Sep 17 00:00:00 2001 From: Rob Crittenden Date: Tue, 6 Mar 2012 15:53:07 -0500 Subject: Display serial number as HEX (DECIMAL) when showing certificates. https://fedorahosted.org/freeipa/ticket/1991 --- ipaserver/plugins/dogtag.py | 6 ++++++ ipaserver/plugins/selfsign.py | 1 + 2 files changed, 7 insertions(+) (limited to 'ipaserver') diff --git a/ipaserver/plugins/dogtag.py b/ipaserver/plugins/dogtag.py index b31058c1..b56e04f4 100644 --- a/ipaserver/plugins/dogtag.py +++ b/ipaserver/plugins/dogtag.py @@ -609,6 +609,7 @@ def parse_profile_submit_result_xml(doc): if len(serial_number) == 1: serial_number = int(serial_number[0].text, 16) # parse as hex response_request['serial_number'] = serial_number + response['serial_number_hex'] = u'0x%X' % serial_number certificate = request.xpath('b64[1]') if len(certificate) == 1: @@ -834,6 +835,7 @@ def parse_display_cert_xml(doc): if len(serial_number) == 1: serial_number = int(serial_number[0].text, 16) # parse as hex response['serial_number'] = serial_number + response['serial_number_hex'] = u'0x%X' % serial_number pkcs7_chain = doc.xpath('//xml/header/pkcs7ChainBase64[1]') if len(pkcs7_chain) == 1: @@ -1026,6 +1028,7 @@ def parse_revoke_cert_xml(doc): if len(serial_number) == 1: serial_number = int(serial_number[0].text, 16) # parse as hex response_record['serial_number'] = serial_number + response['serial_number_hex'] = u'0x%X' % serial_number error_string = record.xpath('error[1]') if len(error_string) == 1: @@ -1187,6 +1190,7 @@ def parse_unrevoke_cert_xml(doc): if len(serial_number) == 1: serial_number = int(serial_number[0].text, 16) # parse as hex response['serial_number'] = serial_number + response['serial_number_hex'] = u'0x%X' % serial_number return response @@ -1471,6 +1475,7 @@ class ra(rabase.rabase): if parse_result.has_key('serial_number'): # see module documentation concerning serial numbers and XMLRPC cmd_result['serial_number'] = unicode(parse_result['serial_number']) + cmd_result['serial_number_hex'] = u'0x%X' % int(cmd_result['serial_number']) if parse_result.has_key('revocation_reason'): cmd_result['revocation_reason'] = parse_result['revocation_reason'] @@ -1539,6 +1544,7 @@ class ra(rabase.rabase): if request.has_key('serial_number'): # see module documentation concerning serial numbers and XMLRPC cmd_result['serial_number'] = unicode(request['serial_number']) + cmd_result['serial_number_hex'] = u'0x%X' % request['serial_number'] if request.has_key('certificate'): cmd_result['certificate'] = request['certificate'] diff --git a/ipaserver/plugins/selfsign.py b/ipaserver/plugins/selfsign.py index 2f13b1fd..bbf8fa78 100644 --- a/ipaserver/plugins/selfsign.py +++ b/ipaserver/plugins/selfsign.py @@ -221,6 +221,7 @@ class ra(rabase.rabase): cmd_result = {} cmd_result['serial_number'] = unicode(serial) # convert long to decimal unicode string + cmd_result['serial_number_hex'] = u'0x%X' % serial cmd_result['certificate'] = unicode(cert) cmd_result['subject'] = unicode(subject) -- cgit