The unified diff between revisions [fa7bd45e..] and [74da1ebd..] is displayed below. It can also be downloaded as a raw diff.

#
#
# rename "Attic/doc/log.txt"
#     to "Attic/doc/misc/log-15.txt"
#
# rename "Attic/misc/nist_tests/tests/test01/End Certificate CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test01/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test01/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test01/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test01/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test01/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test02/End Certificate CP.01.02.crt"
#     to "Attic/misc/nist_tests/tests/test02/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test02/Intermediate CRL CP.01.02.crl"
#     to "Attic/misc/nist_tests/tests/test02/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test02/Intermediate Certificate CP.01.02.crt"
#     to "Attic/misc/nist_tests/tests/test02/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test02/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test02/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test02/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test02/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test03/End Certificate CP.01.03.crt"
#     to "Attic/misc/nist_tests/tests/test03/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test03/Intermediate CRL CP.01.03.crl"
#     to "Attic/misc/nist_tests/tests/test03/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test03/Intermediate Certificate CP.01.03.crt"
#     to "Attic/misc/nist_tests/tests/test03/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test03/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test03/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test03/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test03/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test04/End Certificate CP.02.01.crt"
#     to "Attic/misc/nist_tests/tests/test04/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test04/Intermediate CRL 1 CP.02.01.crl"
#     to "Attic/misc/nist_tests/tests/test04/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test04/Intermediate CRL 2 CP.02.01.crl"
#     to "Attic/misc/nist_tests/tests/test04/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test04/Intermediate Certificate 1 CP.02.01.crt"
#     to "Attic/misc/nist_tests/tests/test04/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test04/Intermediate Certificate 2 CP.02.01.crt"
#     to "Attic/misc/nist_tests/tests/test04/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test04/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test04/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test04/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test04/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test05/End Certificate CP.02.02.crt"
#     to "Attic/misc/nist_tests/tests/test05/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test05/Intermediate CRL CP.02.02.crl"
#     to "Attic/misc/nist_tests/tests/test05/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test05/Intermediate Certificate CP.02.02.crt"
#     to "Attic/misc/nist_tests/tests/test05/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test05/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test05/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test05/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test05/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test06/End Certificate CP.02.03.crt"
#     to "Attic/misc/nist_tests/tests/test06/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test06/Intermediate CRL CP.02.03.crl"
#     to "Attic/misc/nist_tests/tests/test06/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test06/Intermediate Certificate CP.02.03.crt"
#     to "Attic/misc/nist_tests/tests/test06/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test06/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test06/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test06/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test06/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test07/End Certificate CP.02.04.crt"
#     to "Attic/misc/nist_tests/tests/test07/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test07/Intermediate CRL CP.02.04.crl"
#     to "Attic/misc/nist_tests/tests/test07/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test07/Intermediate Certificate CP.02.04.crt"
#     to "Attic/misc/nist_tests/tests/test07/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test07/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test07/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test07/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test07/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test08/End Certificate CP.02.05.crt"
#     to "Attic/misc/nist_tests/tests/test08/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test08/Intermediate CRL CP.02.05.crl"
#     to "Attic/misc/nist_tests/tests/test08/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test08/Intermediate Certificate CP.02.05.crt"
#     to "Attic/misc/nist_tests/tests/test08/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test08/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test08/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test08/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test08/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test09/End Certificate CP.03.01.crt"
#     to "Attic/misc/nist_tests/tests/test09/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test09/Intermediate CRL CP.03.01.crl"
#     to "Attic/misc/nist_tests/tests/test09/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test09/Intermediate Certificate CP.03.01.crt"
#     to "Attic/misc/nist_tests/tests/test09/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test09/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test09/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test09/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test09/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test10/End Certificate CP.03.02.crt"
#     to "Attic/misc/nist_tests/tests/test10/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test10/Intermediate CRL CP.03.02.crl"
#     to "Attic/misc/nist_tests/tests/test10/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test10/Intermediate Certificate CP.03.02.crt"
#     to "Attic/misc/nist_tests/tests/test10/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test10/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test10/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test10/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test10/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test11/End Certificate CP.03.03.crt"
#     to "Attic/misc/nist_tests/tests/test11/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test11/Intermediate CRL CP.03.03.crl"
#     to "Attic/misc/nist_tests/tests/test11/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test11/Intermediate Certificate CP.03.03.crt"
#     to "Attic/misc/nist_tests/tests/test11/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test11/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test11/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test11/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test11/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test12/End Certificate CP.03.04.crt"
#     to "Attic/misc/nist_tests/tests/test12/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test12/Intermediate CRL CP.03.04.crl"
#     to "Attic/misc/nist_tests/tests/test12/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test12/Intermediate Certificate CP.03.04.crt"
#     to "Attic/misc/nist_tests/tests/test12/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test12/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test12/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test12/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test12/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test13/End Certificate CP.04.01.crt"
#     to "Attic/misc/nist_tests/tests/test13/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test13/Intermediate CRL CP.04.01.crl"
#     to "Attic/misc/nist_tests/tests/test13/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test13/Intermediate Certificate CP.04.01.crt"
#     to "Attic/misc/nist_tests/tests/test13/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test13/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test13/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test13/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test13/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test14/End Certificate CP.04.02.crt"
#     to "Attic/misc/nist_tests/tests/test14/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test14/Intermediate CRL CP.04.02.crl"
#     to "Attic/misc/nist_tests/tests/test14/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test14/Intermediate Certificate CP.04.02.crt"
#     to "Attic/misc/nist_tests/tests/test14/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test14/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test14/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test14/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test14/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test15/End Certificate CP.04.03.crt"
#     to "Attic/misc/nist_tests/tests/test15/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test15/Intermediate CRL CP.04.03.crl"
#     to "Attic/misc/nist_tests/tests/test15/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test15/Intermediate Certificate CP.04.03.crt"
#     to "Attic/misc/nist_tests/tests/test15/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test15/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test15/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test15/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test15/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test16/End Certificate CP.04.04.crt"
#     to "Attic/misc/nist_tests/tests/test16/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test16/Intermediate CRL CP.04.04.crl"
#     to "Attic/misc/nist_tests/tests/test16/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test16/Intermediate Certificate CP.04.04.crt"
#     to "Attic/misc/nist_tests/tests/test16/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test16/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test16/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test16/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test16/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test17/End Certificate CP.04.05.crt"
#     to "Attic/misc/nist_tests/tests/test17/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test17/Intermediate CRL CP.04.05.crl"
#     to "Attic/misc/nist_tests/tests/test17/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test17/Intermediate Certificate CP.04.05.crt"
#     to "Attic/misc/nist_tests/tests/test17/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test17/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test17/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test17/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test17/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test18/End Certificate CP.04.06.crt"
#     to "Attic/misc/nist_tests/tests/test18/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test18/Intermediate CRL CP.04.06.crl"
#     to "Attic/misc/nist_tests/tests/test18/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test18/Intermediate Certificate CP.04.06.crt"
#     to "Attic/misc/nist_tests/tests/test18/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test18/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test18/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test18/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test18/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test19/End Certificate CP.05.01.crt"
#     to "Attic/misc/nist_tests/tests/test19/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test19/Intermediate Certificate CP.05.01.crt"
#     to "Attic/misc/nist_tests/tests/test19/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test19/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test19/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test19/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test19/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test20/End Certificate CP.06.01.crt"
#     to "Attic/misc/nist_tests/tests/test20/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test20/Intermediate CRL CP.06.01.crl"
#     to "Attic/misc/nist_tests/tests/test20/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test20/Intermediate Certificate CP.06.01.crt"
#     to "Attic/misc/nist_tests/tests/test20/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test20/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test20/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test20/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test20/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test21/End Certificate CP.06.02.crt"
#     to "Attic/misc/nist_tests/tests/test21/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test21/Intermediate CRL CP.06.02.crl"
#     to "Attic/misc/nist_tests/tests/test21/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test21/Intermediate Certificate CP.06.02.crt"
#     to "Attic/misc/nist_tests/tests/test21/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test21/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test21/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test21/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test21/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test22/End Certificate IC.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test22/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test22/Intermediate CRL IC.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test22/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test22/Intermediate Certificate IC.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test22/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test22/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test22/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test22/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test22/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test23/End Certificate IC.02.01.crt"
#     to "Attic/misc/nist_tests/tests/test23/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test23/Intermediate CRL IC.02.01.crl"
#     to "Attic/misc/nist_tests/tests/test23/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test23/Intermediate Certificate IC.02.01.crt"
#     to "Attic/misc/nist_tests/tests/test23/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test23/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test23/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test23/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test23/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test24/End Certificate IC.02.02.crt"
#     to "Attic/misc/nist_tests/tests/test24/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test24/Intermediate CRL IC.02.02.crl"
#     to "Attic/misc/nist_tests/tests/test24/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test24/Intermediate Certificate IC.02.02.crt"
#     to "Attic/misc/nist_tests/tests/test24/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test24/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test24/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test24/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test24/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test25/End Certificate IC.02.03.crt"
#     to "Attic/misc/nist_tests/tests/test25/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test25/Intermediate CRL IC.02.03.crl"
#     to "Attic/misc/nist_tests/tests/test25/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test25/Intermediate Certificate IC.02.03.crt"
#     to "Attic/misc/nist_tests/tests/test25/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test25/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test25/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test25/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test25/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test26/End Certificate IC.02.04.crt"
#     to "Attic/misc/nist_tests/tests/test26/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test26/Intermediate CRL IC.02.04.crl"
#     to "Attic/misc/nist_tests/tests/test26/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test26/Intermediate Certificate IC.02.04.crt"
#     to "Attic/misc/nist_tests/tests/test26/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test26/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test26/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test26/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test26/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test27/End Certificate IC.04.01.crt"
#     to "Attic/misc/nist_tests/tests/test27/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test27/Intermediate CRL IC.04.01.crl"
#     to "Attic/misc/nist_tests/tests/test27/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test27/Intermediate Certificate IC.04.01.crt"
#     to "Attic/misc/nist_tests/tests/test27/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test27/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test27/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test27/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test27/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test28/End Certificate IC.05.01.crt"
#     to "Attic/misc/nist_tests/tests/test28/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test28/Intermediate CRL IC.05.01.crl"
#     to "Attic/misc/nist_tests/tests/test28/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test28/Intermediate Certificate IC.05.01.crt"
#     to "Attic/misc/nist_tests/tests/test28/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test28/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test28/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test28/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test28/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test29/End Certificate IC.05.02.crt"
#     to "Attic/misc/nist_tests/tests/test29/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test29/Intermediate CRL IC.05.02.crl"
#     to "Attic/misc/nist_tests/tests/test29/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test29/Intermediate Certificate IC.05.02.crt"
#     to "Attic/misc/nist_tests/tests/test29/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test29/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test29/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test29/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test29/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test30/End Certificate IC.05.03.crt"
#     to "Attic/misc/nist_tests/tests/test30/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test30/Intermediate CRL IC.05.03.crl"
#     to "Attic/misc/nist_tests/tests/test30/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test30/Intermediate Certificate IC.05.03.crt"
#     to "Attic/misc/nist_tests/tests/test30/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test30/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test30/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test30/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test30/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test31/End Certificate IC.06.01.crt"
#     to "Attic/misc/nist_tests/tests/test31/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test31/Intermediate CRL IC.06.01.crl"
#     to "Attic/misc/nist_tests/tests/test31/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test31/Intermediate Certificate IC.06.01.crt"
#     to "Attic/misc/nist_tests/tests/test31/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test31/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test31/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test31/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test31/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test32/End Certificate IC.06.02.crt"
#     to "Attic/misc/nist_tests/tests/test32/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test32/Intermediate CRL IC.06.02.crl"
#     to "Attic/misc/nist_tests/tests/test32/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test32/Intermediate Certificate IC.06.02.crt"
#     to "Attic/misc/nist_tests/tests/test32/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test32/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test32/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test32/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test32/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test33/End Certificate IC.06.03.crt"
#     to "Attic/misc/nist_tests/tests/test33/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test33/Intermediate CRL IC.06.03.crl"
#     to "Attic/misc/nist_tests/tests/test33/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test33/Intermediate Certificate IC.06.03.crt"
#     to "Attic/misc/nist_tests/tests/test33/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test33/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test33/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test33/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test33/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test34/End Certificate PP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test34/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test34/Intermediate CRL PP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test34/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test34/Intermediate Certificate PP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test34/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test34/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test34/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test34/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test34/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test35/End Certificate PP.01.02.crt"
#     to "Attic/misc/nist_tests/tests/test35/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test35/Intermediate CRL PP.01.02.crl"
#     to "Attic/misc/nist_tests/tests/test35/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test35/Intermediate Certificate PP.01.02.crt"
#     to "Attic/misc/nist_tests/tests/test35/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test35/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test35/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test35/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test35/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test36/End Certificate PP.01.03.crt"
#     to "Attic/misc/nist_tests/tests/test36/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test36/Intermediate CRL 1 PP.01.03.crl"
#     to "Attic/misc/nist_tests/tests/test36/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test36/Intermediate CRL 2 PP.01.03.crl"
#     to "Attic/misc/nist_tests/tests/test36/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test36/Intermediate Certificate 1 PP.01.03.crt"
#     to "Attic/misc/nist_tests/tests/test36/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test36/Intermediate Certificate 2 PP.01.03.crt"
#     to "Attic/misc/nist_tests/tests/test36/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test36/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test36/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test36/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test36/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test37/End Certificate PP.01.04.crt"
#     to "Attic/misc/nist_tests/tests/test37/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test37/Intermediate CRL 1 PP.01.04.crl"
#     to "Attic/misc/nist_tests/tests/test37/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test37/Intermediate CRL 2 PP.01.04.crl"
#     to "Attic/misc/nist_tests/tests/test37/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test37/Intermediate Certificate 1 PP.01.04.crt"
#     to "Attic/misc/nist_tests/tests/test37/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test37/Intermediate Certificate 2 PP.01.04.crt"
#     to "Attic/misc/nist_tests/tests/test37/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test37/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test37/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test37/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test37/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test38/End Certificate PP.01.05.crt"
#     to "Attic/misc/nist_tests/tests/test38/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test38/Intermediate CRL 1 PP.01.05.crl"
#     to "Attic/misc/nist_tests/tests/test38/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test38/Intermediate CRL 2 PP.01.05.crl"
#     to "Attic/misc/nist_tests/tests/test38/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test38/Intermediate Certificate 1 PP.01.05.crt"
#     to "Attic/misc/nist_tests/tests/test38/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test38/Intermediate Certificate 2 PP.01.05.crt"
#     to "Attic/misc/nist_tests/tests/test38/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test38/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test38/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test38/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test38/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test39/End Certificate PP.01.06.crt"
#     to "Attic/misc/nist_tests/tests/test39/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test39/Intermediate CRL 1 PP.01.06.crl"
#     to "Attic/misc/nist_tests/tests/test39/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test39/Intermediate CRL 2 PP.01.06.crl"
#     to "Attic/misc/nist_tests/tests/test39/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test39/Intermediate CRL 3 PP.01.06.crl"
#     to "Attic/misc/nist_tests/tests/test39/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test39/Intermediate Certificate 1 PP.01.06.crt"
#     to "Attic/misc/nist_tests/tests/test39/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test39/Intermediate Certificate 2 PP.01.06.crt"
#     to "Attic/misc/nist_tests/tests/test39/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test39/Intermediate Certificate 3 PP.01.06.crt"
#     to "Attic/misc/nist_tests/tests/test39/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test39/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test39/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test39/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test39/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test40/End Certificate PP.01.07.crt"
#     to "Attic/misc/nist_tests/tests/test40/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test40/Intermediate CRL 1 PP.01.07.crl"
#     to "Attic/misc/nist_tests/tests/test40/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test40/Intermediate CRL 2 PP.01.07.crl"
#     to "Attic/misc/nist_tests/tests/test40/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test40/Intermediate CRL 3 PP.01.07.crl"
#     to "Attic/misc/nist_tests/tests/test40/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test40/Intermediate Certificate 1 PP.01.07.crt"
#     to "Attic/misc/nist_tests/tests/test40/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test40/Intermediate Certificate 2 PP.01.07.crt"
#     to "Attic/misc/nist_tests/tests/test40/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test40/Intermediate Certificate 3 PP.01.07.crt"
#     to "Attic/misc/nist_tests/tests/test40/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test40/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test40/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test40/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test40/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test41/End Certificate PP.01.08.crt"
#     to "Attic/misc/nist_tests/tests/test41/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test41/Intermediate CRL 1 PP.01.08.crl"
#     to "Attic/misc/nist_tests/tests/test41/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test41/Intermediate CRL 2 PP.01.08.crl"
#     to "Attic/misc/nist_tests/tests/test41/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test41/Intermediate CRL 3 PP.01.08.crl"
#     to "Attic/misc/nist_tests/tests/test41/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test41/Intermediate Certificate 1 PP.01.08.crt"
#     to "Attic/misc/nist_tests/tests/test41/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test41/Intermediate Certificate 2 PP.01.08.crt"
#     to "Attic/misc/nist_tests/tests/test41/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test41/Intermediate Certificate 3 PP.01.08.crt"
#     to "Attic/misc/nist_tests/tests/test41/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test41/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test41/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test41/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test41/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test42/End Certificate PP.01.09.crt"
#     to "Attic/misc/nist_tests/tests/test42/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test42/Intermediate CRL 1 PP.01.09.crl"
#     to "Attic/misc/nist_tests/tests/test42/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test42/Intermediate CRL 2 PP.01.09.crl"
#     to "Attic/misc/nist_tests/tests/test42/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test42/Intermediate CRL 3 PP.01.09.crl"
#     to "Attic/misc/nist_tests/tests/test42/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test42/Intermediate CRL 4 PP.01.09.crl"
#     to "Attic/misc/nist_tests/tests/test42/int4.crl"
#
# rename "Attic/misc/nist_tests/tests/test42/Intermediate Certificate 1 PP.01.09.crt"
#     to "Attic/misc/nist_tests/tests/test42/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test42/Intermediate Certificate 2 PP.01.09.crt"
#     to "Attic/misc/nist_tests/tests/test42/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test42/Intermediate Certificate 3 PP.01.09.crt"
#     to "Attic/misc/nist_tests/tests/test42/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test42/Intermediate Certificate 4 PP.01.09.crt"
#     to "Attic/misc/nist_tests/tests/test42/int4.crt"
#
# rename "Attic/misc/nist_tests/tests/test42/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test42/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test42/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test42/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test43/End Certificate PP.06.01.crt"
#     to "Attic/misc/nist_tests/tests/test43/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test43/Intermediate CRL 1 PP.06.01.crl"
#     to "Attic/misc/nist_tests/tests/test43/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test43/Intermediate CRL 2 PP.06.01.crl"
#     to "Attic/misc/nist_tests/tests/test43/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test43/Intermediate CRL 3 PP.06.01.crl"
#     to "Attic/misc/nist_tests/tests/test43/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test43/Intermediate CRL 4 PP.06.01.crl"
#     to "Attic/misc/nist_tests/tests/test43/int4.crl"
#
# rename "Attic/misc/nist_tests/tests/test43/Intermediate Certificate 1 PP.06.01.crt"
#     to "Attic/misc/nist_tests/tests/test43/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test43/Intermediate Certificate 2 PP.06.01.crt"
#     to "Attic/misc/nist_tests/tests/test43/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test43/Intermediate Certificate 3 PP.06.01.crt"
#     to "Attic/misc/nist_tests/tests/test43/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test43/Intermediate Certificate 4 PP.06.01.crt"
#     to "Attic/misc/nist_tests/tests/test43/int4.crt"
#
# rename "Attic/misc/nist_tests/tests/test43/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test43/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test43/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test43/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test44/End Certificate PP.06.02.crt"
#     to "Attic/misc/nist_tests/tests/test44/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test44/Intermediate CRL 1 PP.06.02.crl"
#     to "Attic/misc/nist_tests/tests/test44/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test44/Intermediate CRL 2 PP.06.02.crl"
#     to "Attic/misc/nist_tests/tests/test44/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test44/Intermediate CRL 3 PP.06.02.crl"
#     to "Attic/misc/nist_tests/tests/test44/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test44/Intermediate CRL 4 PP.06.02.crl"
#     to "Attic/misc/nist_tests/tests/test44/int4.crl"
#
# rename "Attic/misc/nist_tests/tests/test44/Intermediate Certificate 1 PP.06.02.crt"
#     to "Attic/misc/nist_tests/tests/test44/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test44/Intermediate Certificate 2 PP.06.02.crt"
#     to "Attic/misc/nist_tests/tests/test44/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test44/Intermediate Certificate 3 PP.06.02.crt"
#     to "Attic/misc/nist_tests/tests/test44/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test44/Intermediate Certificate 4 PP.06.02.crt"
#     to "Attic/misc/nist_tests/tests/test44/int4.crt"
#
# rename "Attic/misc/nist_tests/tests/test44/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test44/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test44/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test44/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test45/End Certificate PP.06.03.crt"
#     to "Attic/misc/nist_tests/tests/test45/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test45/Intermediate CRL 1 PP.06.03.crl"
#     to "Attic/misc/nist_tests/tests/test45/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test45/Intermediate CRL 2 PP.06.03.crl"
#     to "Attic/misc/nist_tests/tests/test45/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test45/Intermediate CRL 3 PP.06.03.crl"
#     to "Attic/misc/nist_tests/tests/test45/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test45/Intermediate CRL 4 PP.06.03.crl"
#     to "Attic/misc/nist_tests/tests/test45/int4.crl"
#
# rename "Attic/misc/nist_tests/tests/test45/Intermediate Certificate 1 PP.06.03.crt"
#     to "Attic/misc/nist_tests/tests/test45/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test45/Intermediate Certificate 2 PP.06.03.crt"
#     to "Attic/misc/nist_tests/tests/test45/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test45/Intermediate Certificate 3 PP.06.03.crt"
#     to "Attic/misc/nist_tests/tests/test45/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test45/Intermediate Certificate 4 PP.06.03.crt"
#     to "Attic/misc/nist_tests/tests/test45/int4.crt"
#
# rename "Attic/misc/nist_tests/tests/test45/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test45/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test45/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test45/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test46/End Certificate PP.06.04.crt"
#     to "Attic/misc/nist_tests/tests/test46/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test46/Intermediate CRL 1 PP.06.04.crl"
#     to "Attic/misc/nist_tests/tests/test46/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test46/Intermediate CRL 2 PP.06.04.crl"
#     to "Attic/misc/nist_tests/tests/test46/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test46/Intermediate CRL 3 PP.06.04.crl"
#     to "Attic/misc/nist_tests/tests/test46/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test46/Intermediate CRL 4 PP.06.04.crl"
#     to "Attic/misc/nist_tests/tests/test46/int4.crl"
#
# rename "Attic/misc/nist_tests/tests/test46/Intermediate Certificate 1 PP.06.04.crt"
#     to "Attic/misc/nist_tests/tests/test46/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test46/Intermediate Certificate 2 PP.06.04.crt"
#     to "Attic/misc/nist_tests/tests/test46/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test46/Intermediate Certificate 3 PP.06.04.crt"
#     to "Attic/misc/nist_tests/tests/test46/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test46/Intermediate Certificate 4 PP.06.04.crt"
#     to "Attic/misc/nist_tests/tests/test46/int4.crt"
#
# rename "Attic/misc/nist_tests/tests/test46/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test46/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test46/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test46/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test47/End Certificate PP.06.05.crt"
#     to "Attic/misc/nist_tests/tests/test47/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test47/Intermediate CRL 1 PP.06.05.crl"
#     to "Attic/misc/nist_tests/tests/test47/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test47/Intermediate CRL 2 PP.06.05.crl"
#     to "Attic/misc/nist_tests/tests/test47/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test47/Intermediate CRL 3 PP.06.05.crl"
#     to "Attic/misc/nist_tests/tests/test47/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test47/Intermediate CRL 4 PP.06.05.crl"
#     to "Attic/misc/nist_tests/tests/test47/int4.crl"
#
# rename "Attic/misc/nist_tests/tests/test47/Intermediate Certificate 1 PP.06.05.crt"
#     to "Attic/misc/nist_tests/tests/test47/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test47/Intermediate Certificate 2 PP.06.05.crt"
#     to "Attic/misc/nist_tests/tests/test47/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test47/Intermediate Certificate 3 PP.06.05.crt"
#     to "Attic/misc/nist_tests/tests/test47/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test47/Intermediate Certificate 4 PP.06.05.crt"
#     to "Attic/misc/nist_tests/tests/test47/int4.crt"
#
# rename "Attic/misc/nist_tests/tests/test47/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test47/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test47/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test47/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test48/End Certificate PP.08.01.crt"
#     to "Attic/misc/nist_tests/tests/test48/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test48/Intermediate CRL PP.08.01.crl"
#     to "Attic/misc/nist_tests/tests/test48/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test48/Intermediate Certificate PP.08.01.crt"
#     to "Attic/misc/nist_tests/tests/test48/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test48/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test48/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test48/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test48/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test49/End Certificate PP.08.02.crt"
#     to "Attic/misc/nist_tests/tests/test49/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test49/Intermediate CRL PP.08.02.crl"
#     to "Attic/misc/nist_tests/tests/test49/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test49/Intermediate Certificate PP.08.02.crt"
#     to "Attic/misc/nist_tests/tests/test49/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test49/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test49/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test49/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test49/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test50/End Certificate PP.08.03.crt"
#     to "Attic/misc/nist_tests/tests/test50/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test50/Intermediate CRL PP.08.03.crl"
#     to "Attic/misc/nist_tests/tests/test50/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test50/Intermediate Certificate PP.08.03.crt"
#     to "Attic/misc/nist_tests/tests/test50/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test50/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test50/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test50/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test50/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test51/End Certificate PP.08.04.crt"
#     to "Attic/misc/nist_tests/tests/test51/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test51/Intermediate CRL PP.08.04.crl"
#     to "Attic/misc/nist_tests/tests/test51/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test51/Intermediate Certificate PP.08.04.crt"
#     to "Attic/misc/nist_tests/tests/test51/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test51/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test51/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test51/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test51/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test52/End Certificate PP.08.05.crt"
#     to "Attic/misc/nist_tests/tests/test52/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test52/Intermediate CRL PP.08.05.crl"
#     to "Attic/misc/nist_tests/tests/test52/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test52/Intermediate Certificate PP.08.05.crt"
#     to "Attic/misc/nist_tests/tests/test52/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test52/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test52/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test52/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test52/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test53/End Certificate PP.08.06.crt"
#     to "Attic/misc/nist_tests/tests/test53/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test53/Intermediate CRL PP.08.06.crl"
#     to "Attic/misc/nist_tests/tests/test53/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test53/Intermediate Certificate PP.08.06.crt"
#     to "Attic/misc/nist_tests/tests/test53/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test53/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test53/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test53/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test53/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test54/End Certificate PL.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test54/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test54/Intermediate CRL 1 PL.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test54/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test54/Intermediate CRL 2 PL.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test54/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test54/Intermediate Certificate 1 PL.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test54/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test54/Intermediate Certificate 2 PL.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test54/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test54/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test54/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test54/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test54/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test55/End Certificate PL.01.02.crt"
#     to "Attic/misc/nist_tests/tests/test55/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test55/Intermediate CRL 1 PL.01.02.crl"
#     to "Attic/misc/nist_tests/tests/test55/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test55/Intermediate CRL 2 PL.01.02.crl"
#     to "Attic/misc/nist_tests/tests/test55/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test55/Intermediate Certificate 1 PL.01.02.crt"
#     to "Attic/misc/nist_tests/tests/test55/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test55/Intermediate Certificate 2 PL.01.02.crt"
#     to "Attic/misc/nist_tests/tests/test55/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test55/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test55/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test55/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test55/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test56/End Certificate PL.01.03.crt"
#     to "Attic/misc/nist_tests/tests/test56/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test56/Intermediate CRL PL.01.03.crl"
#     to "Attic/misc/nist_tests/tests/test56/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test56/Intermediate Certificate PL.01.03.crt"
#     to "Attic/misc/nist_tests/tests/test56/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test56/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test56/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test56/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test56/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test57/End Certificate PL.01.04.crt"
#     to "Attic/misc/nist_tests/tests/test57/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test57/Intermediate CRL PL.01.04.crl"
#     to "Attic/misc/nist_tests/tests/test57/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test57/Intermediate Certificate PL.01.04.crt"
#     to "Attic/misc/nist_tests/tests/test57/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test57/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test57/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test57/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test57/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test58/End Certificate PL.01.05.crt"
#     to "Attic/misc/nist_tests/tests/test58/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test58/Intermediate CRL 1 PL.01.05.crl"
#     to "Attic/misc/nist_tests/tests/test58/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test58/Intermediate CRL 2 PL.01.05.crl"
#     to "Attic/misc/nist_tests/tests/test58/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test58/Intermediate CRL 3 PL.01.05.crl"
#     to "Attic/misc/nist_tests/tests/test58/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test58/Intermediate Certificate 1 PL.01.05.crt"
#     to "Attic/misc/nist_tests/tests/test58/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test58/Intermediate Certificate 2 PL.01.05.crt"
#     to "Attic/misc/nist_tests/tests/test58/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test58/Intermediate Certificate 3 PL.01.05.crt"
#     to "Attic/misc/nist_tests/tests/test58/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test58/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test58/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test58/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test58/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test59/End Certificate PL.01.06.crt"
#     to "Attic/misc/nist_tests/tests/test59/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test59/Intermediate CRL 1 PL.01.06.crl"
#     to "Attic/misc/nist_tests/tests/test59/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test59/Intermediate CRL 2 PL.01.06.crl"
#     to "Attic/misc/nist_tests/tests/test59/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test59/Intermediate CRL 3 PL.01.06.crl"
#     to "Attic/misc/nist_tests/tests/test59/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test59/Intermediate Certificate 1 PL.01.06.crt"
#     to "Attic/misc/nist_tests/tests/test59/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test59/Intermediate Certificate 2 PL.01.06.crt"
#     to "Attic/misc/nist_tests/tests/test59/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test59/Intermediate Certificate 3 PL.01.06.crt"
#     to "Attic/misc/nist_tests/tests/test59/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test59/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test59/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test59/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test59/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test60/End Certificate PL.01.07.crt"
#     to "Attic/misc/nist_tests/tests/test60/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test60/Intermediate CRL 1 PL.01.07.crl"
#     to "Attic/misc/nist_tests/tests/test60/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test60/Intermediate CRL 2 PL.01.07.crl"
#     to "Attic/misc/nist_tests/tests/test60/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test60/Intermediate CRL 3 PL.01.07.crl"
#     to "Attic/misc/nist_tests/tests/test60/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test60/Intermediate CRL 4 PL.01.07.crl"
#     to "Attic/misc/nist_tests/tests/test60/int4.crl"
#
# rename "Attic/misc/nist_tests/tests/test60/Intermediate Certificate 1 PL.01.07.crt"
#     to "Attic/misc/nist_tests/tests/test60/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test60/Intermediate Certificate 2 PL.01.07.crt"
#     to "Attic/misc/nist_tests/tests/test60/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test60/Intermediate Certificate 3 PL.01.07.crt"
#     to "Attic/misc/nist_tests/tests/test60/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test60/Intermediate Certificate 4 PL.01.07.crt"
#     to "Attic/misc/nist_tests/tests/test60/int4.crt"
#
# rename "Attic/misc/nist_tests/tests/test60/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test60/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test60/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test60/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test61/End Certificate PL.01.08.crt"
#     to "Attic/misc/nist_tests/tests/test61/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test61/Intermediate CRL 1 PL.01.08.crl"
#     to "Attic/misc/nist_tests/tests/test61/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test61/Intermediate CRL 2 PL.01.08.crl"
#     to "Attic/misc/nist_tests/tests/test61/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test61/Intermediate CRL 3 PL.01.08.crl"
#     to "Attic/misc/nist_tests/tests/test61/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test61/Intermediate CRL 4 PL.01.08.crl"
#     to "Attic/misc/nist_tests/tests/test61/int4.crl"
#
# rename "Attic/misc/nist_tests/tests/test61/Intermediate Certificate 1 PL.01.08.crt"
#     to "Attic/misc/nist_tests/tests/test61/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test61/Intermediate Certificate 2 PL.01.08.crt"
#     to "Attic/misc/nist_tests/tests/test61/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test61/Intermediate Certificate 3 PL.01.08.crt"
#     to "Attic/misc/nist_tests/tests/test61/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test61/Intermediate Certificate 4 PL.01.08.crt"
#     to "Attic/misc/nist_tests/tests/test61/int4.crt"
#
# rename "Attic/misc/nist_tests/tests/test61/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test61/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test61/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test61/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test62/End Certificate PL.01.09.crt"
#     to "Attic/misc/nist_tests/tests/test62/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test62/Intermediate CRL 1 PL.01.09.crl"
#     to "Attic/misc/nist_tests/tests/test62/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test62/Intermediate CRL 2 PL.01.09.crl"
#     to "Attic/misc/nist_tests/tests/test62/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test62/Intermediate CRL 3 PL.01.09.crl"
#     to "Attic/misc/nist_tests/tests/test62/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test62/Intermediate CRL 4 PL.01.09.crl"
#     to "Attic/misc/nist_tests/tests/test62/int4.crl"
#
# rename "Attic/misc/nist_tests/tests/test62/Intermediate Certificate 1 PL.01.09.crt"
#     to "Attic/misc/nist_tests/tests/test62/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test62/Intermediate Certificate 2 PL.01.09.crt"
#     to "Attic/misc/nist_tests/tests/test62/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test62/Intermediate Certificate 3 PL.01.09.crt"
#     to "Attic/misc/nist_tests/tests/test62/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test62/Intermediate Certificate 4 PL.01.09.crt"
#     to "Attic/misc/nist_tests/tests/test62/int4.crt"
#
# rename "Attic/misc/nist_tests/tests/test62/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test62/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test62/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test62/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test63/End Certificate PL.01.10.crt"
#     to "Attic/misc/nist_tests/tests/test63/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test63/Intermediate CRL 1 PL.01.10.crl"
#     to "Attic/misc/nist_tests/tests/test63/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test63/Intermediate CRL 2 PL.01.10.crl"
#     to "Attic/misc/nist_tests/tests/test63/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test63/Intermediate CRL 3 PL.01.10.crl"
#     to "Attic/misc/nist_tests/tests/test63/int3.crl"
#
# rename "Attic/misc/nist_tests/tests/test63/Intermediate CRL 4 PL.01.10.crl"
#     to "Attic/misc/nist_tests/tests/test63/int4.crl"
#
# rename "Attic/misc/nist_tests/tests/test63/Intermediate Certificate 1 PL.01.10.crt"
#     to "Attic/misc/nist_tests/tests/test63/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test63/Intermediate Certificate 2 PL.01.10.crt"
#     to "Attic/misc/nist_tests/tests/test63/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test63/Intermediate Certificate 3 PL.01.10.crt"
#     to "Attic/misc/nist_tests/tests/test63/int3.crt"
#
# rename "Attic/misc/nist_tests/tests/test63/Intermediate Certificate 4 PL.01.10.crt"
#     to "Attic/misc/nist_tests/tests/test63/int4.crt"
#
# rename "Attic/misc/nist_tests/tests/test63/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test63/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test63/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test63/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test64/End Certificate RL.02.01.crt"
#     to "Attic/misc/nist_tests/tests/test64/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test64/Intermediate CRL RL.02.01.crl"
#     to "Attic/misc/nist_tests/tests/test64/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test64/Intermediate Certificate RL.02.01.crt"
#     to "Attic/misc/nist_tests/tests/test64/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test64/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test64/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test64/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test64/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test65/End Certificate RL.03.01.crt"
#     to "Attic/misc/nist_tests/tests/test65/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test65/Intermediate CRL RL.03.01.crl"
#     to "Attic/misc/nist_tests/tests/test65/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test65/Intermediate Certificate 1 RL.03.01.crt"
#     to "Attic/misc/nist_tests/tests/test65/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test65/Intermediate Certificate 2 RL.03.01.crt"
#     to "Attic/misc/nist_tests/tests/test65/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test65/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test65/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test65/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test65/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test66/End Certificate RL.03.02.crt"
#     to "Attic/misc/nist_tests/tests/test66/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test66/Intermediate CRL RL.03.02.crl"
#     to "Attic/misc/nist_tests/tests/test66/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test66/Intermediate Certificate RL.03.02.crt"
#     to "Attic/misc/nist_tests/tests/test66/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test66/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test66/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test66/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test66/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test67/End Certificate RL.03.03.crt"
#     to "Attic/misc/nist_tests/tests/test67/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test67/Intermediate CRL 1 RL.03.03.crl"
#     to "Attic/misc/nist_tests/tests/test67/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test67/Intermediate CRL 2 RL.03.03.crl"
#     to "Attic/misc/nist_tests/tests/test67/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test67/Intermediate Certificate RL.03.03.crt"
#     to "Attic/misc/nist_tests/tests/test67/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test67/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test67/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test67/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test67/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test68/End Certificate RL.05.01.crt"
#     to "Attic/misc/nist_tests/tests/test68/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test68/Intermediate CRL 1 RL.05.01.crl"
#     to "Attic/misc/nist_tests/tests/test68/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test68/Intermediate CRL 2 RL.05.01.crl"
#     to "Attic/misc/nist_tests/tests/test68/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test68/Intermediate Certificate 1 RL.05.01.crt"
#     to "Attic/misc/nist_tests/tests/test68/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test68/Intermediate Certificate 2 RL.05.01.crt"
#     to "Attic/misc/nist_tests/tests/test68/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test68/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test68/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test68/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test68/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test69/End Certificate RL.05.02.crt"
#     to "Attic/misc/nist_tests/tests/test69/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test69/Intermediate CRL RL.05.02.crl"
#     to "Attic/misc/nist_tests/tests/test69/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test69/Intermediate Certificate RL.05.02.crt"
#     to "Attic/misc/nist_tests/tests/test69/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test69/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test69/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test69/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test69/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test70/End Certificate RL.06.01.crt"
#     to "Attic/misc/nist_tests/tests/test70/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test70/Intermediate CRL 1 RL.06.01.crl"
#     to "Attic/misc/nist_tests/tests/test70/int1.crl"
#
# rename "Attic/misc/nist_tests/tests/test70/Intermediate CRL 2 RL.06.01.crl"
#     to "Attic/misc/nist_tests/tests/test70/int2.crl"
#
# rename "Attic/misc/nist_tests/tests/test70/Intermediate Certificate 1 RL.06.01.crt"
#     to "Attic/misc/nist_tests/tests/test70/int1.crt"
#
# rename "Attic/misc/nist_tests/tests/test70/Intermediate Certificate 2 RL.06.01.crt"
#     to "Attic/misc/nist_tests/tests/test70/int2.crt"
#
# rename "Attic/misc/nist_tests/tests/test70/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test70/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test70/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test70/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test71/End Certificate RL.06.02.crt"
#     to "Attic/misc/nist_tests/tests/test71/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test71/Intermediate CRL RL.06.02.crl"
#     to "Attic/misc/nist_tests/tests/test71/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test71/Intermediate Certificate RL.06.02.crt"
#     to "Attic/misc/nist_tests/tests/test71/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test71/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test71/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test71/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test71/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test72/End Certificate RL.07.01.crt"
#     to "Attic/misc/nist_tests/tests/test72/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test72/Intermediate CRL RL.07.01.crl"
#     to "Attic/misc/nist_tests/tests/test72/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test72/Intermediate Certificate RL.07.01.crt"
#     to "Attic/misc/nist_tests/tests/test72/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test72/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test72/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test72/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test72/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test73/End Certificate RL.07.02.crt"
#     to "Attic/misc/nist_tests/tests/test73/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test73/Intermediate CRL RL.07.02.crl"
#     to "Attic/misc/nist_tests/tests/test73/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test73/Intermediate Certificate RL.07.02.crt"
#     to "Attic/misc/nist_tests/tests/test73/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test73/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test73/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test73/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test73/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test74/End Certificate RL.07.03.crt"
#     to "Attic/misc/nist_tests/tests/test74/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test74/Intermediate CRL RL.07.03.crl"
#     to "Attic/misc/nist_tests/tests/test74/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test74/Intermediate Certificate RL.07.03.crt"
#     to "Attic/misc/nist_tests/tests/test74/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test74/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test74/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test74/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test74/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test75/End Certificate RL.08.01.crt"
#     to "Attic/misc/nist_tests/tests/test75/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test75/Intermediate CRL RL.08.01.crl"
#     to "Attic/misc/nist_tests/tests/test75/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test75/Intermediate Certificate RL.08.01.crt"
#     to "Attic/misc/nist_tests/tests/test75/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test75/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test75/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test75/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test75/root.crl"
#
# rename "Attic/misc/nist_tests/tests/test76/End Certificate RL.09.01.crt"
#     to "Attic/misc/nist_tests/tests/test76/end.crt"
#
# rename "Attic/misc/nist_tests/tests/test76/Intermediate CRL RL.09.01.crl"
#     to "Attic/misc/nist_tests/tests/test76/int.crl"
#
# rename "Attic/misc/nist_tests/tests/test76/Intermediate Certificate RL.09.01.crt"
#     to "Attic/misc/nist_tests/tests/test76/int.crt"
#
# rename "Attic/misc/nist_tests/tests/test76/Trust Anchor CP.01.01.crt"
#     to "Attic/misc/nist_tests/tests/test76/root.crt"
#
# rename "Attic/misc/nist_tests/tests/test76/Trust Anchor CRL CP.01.01.crl"
#     to "Attic/misc/nist_tests/tests/test76/root.crl"
#
# rename "Attic/modules/alg_amd64/mp_muladd.S"
#     to "Attic/modules/alg_amd64/mp_mulop.S"
#
# rename "Attic/modules/alg_ia32/mp_muladd.S"
#     to "Attic/modules/alg_ia32/mp_mulop.S"
#
# patch "Attic/doc/api.tex"
#  from [24f0ee532fd3c18d3979a41c2750bf4114ce6402]
#    to [8298bf084d4d113e2df22fdbe53366fd753e7deb]
#
# patch "Attic/doc/misc/log-15.txt"
#  from [c835983bdf8864f607bf4dd57a1b2d699a1158a2]
#    to [b25c38d909e329c7abdb2ce43420da31a80f0f06]
#
# patch "Attic/misc/Botan.spec"
#  from [8f6d6ebdbfafbc9b98003641a326c536334e626a]
#    to [0bf5b39a35ac44f16b3c3c1d352d3eee425c724f]
#
# patch "Attic/misc/config/cc/msvc"
#  from [fa3e3ee04cf6e3bca2aed4aa12cd73cb7c02aeca]
#    to [a518e200b92423fc58f0c78eafea50e4395799e2]
#
# patch "Attic/misc/config/makefile/nmake.in"
#  from [e9b1cecdf1e3ebf38becb8e84067de944e07e979]
#    to [5982ee9b1c9e97433a1a1dbf14efa412585cf490]
#
# patch "Attic/misc/gtk/Makefile"
#  from [10999a0650770e6880072f29726dcb3c7e30f143]
#    to [4ee35fae08bc92c4e3ec53e7474bea9d4924322c]
#
# patch "Attic/misc/gtk/dsa.cpp"
#  from [9faaf2c69aeedf789a1fd063bd24d893118f1182]
#    to [2dc3f65471587608d5a5e0ca53cbe0cb289db78a]
#
# patch "Attic/misc/gtk/readme.txt"
#  from [b8d9f23cb2a081dfaa4e5b1e67d0e824db94ed93]
#    to [22d1a8c020532e8994064232bbfa9f2736647a2b]
#
# patch "Attic/misc/nist_tests/x509test.cpp"
#  from [79e95b75aceec8874c1728604e6aeb5121b4b775]
#    to [981d5f7aea97d952ef2df9cfb8279a6db962616a]
#
# patch "Attic/misc/python/nisttest.py"
#  from [27f326a1620d60a5dbfff2745947b664641fbfdf]
#    to [977c579f01e571dddaac33b57521b0b223b850db]
#
# patch "Attic/misc/python/src/pk.cpp"
#  from [2fe597d3617538be1f7c2b447be091db87c7b1ee]
#    to [ec7d76829ef9058c837d3ddbcecc4930d3973ca7]
#
# patch "Attic/modules/alg_amd64/modinfo.txt"
#  from [d73e9033b08859e5e94970c0beafae394437ce0f]
#    to [6086d394850522537238f61f5ffaed5aefa8b4e5]
#
# patch "Attic/modules/alg_ia32/modinfo.txt"
#  from [95bbfd7319fdc36a8a2f5fe843001a53bbaf55af]
#    to [06da382f85623de9067fec5d905bd3356cfe095a]
#
# patch "Attic/readme.txt"
#  from [03d624dc2b7958f3d790715aedc0ea71385e1878]
#    to [ff647042f51cf5189ac60386454f84b957f976f7]
#
# patch "base64.h"
#  from [2b090ec65993ce3366d06dd30665032b2ce2ff02]
#    to [3f09eb989fc4b2b391f9cefa31455c9fbd2794cb]
#
# patch "config.cpp"
#  from [d4dc8bd89b02461a03377681d9a106fbfbf4d70d]
#    to [0c3d3bed551ae74cdb33be1843727648e87a80a2]
#
# patch "config.h"
#  from [538f35746c12898efa1cca7bd034027214f90611]
#    to [67ea849588c76de31039a5b31d47983ae8ad7159]
#
# patch "engine.h"
#  from [83d79b578eeab1e96af10e64f9dd5c757611d0a9]
#    to [b097b39a35e56fa7065db88304f00a54c79e88b3]
#
# patch "enums.h"
#  from [f4aae4647a70b0d879cd06bbe9951a2b1f8d33c8]
#    to [baf21a6f233200a4cfd0e09f584285a4fd3caef4]
#
# patch "filter.cpp"
#  from [24a13d191c5b20b1445a0b581fc8b0ca92dcda43]
#    to [eb64d7cb6d31e58b2bde650ed5f244626e1d69e3]
#
# patch "hex.h"
#  from [065a18cbf522daf1c6283587bec607f788be2e46]
#    to [cd20faea5de483ad9e90bb8921e492bcbb7b743e]
#
# patch "init_def.cpp"
#  from [28f1a3f5c9ec0d18cc9d86a2ddc7009653d9accb]
#    to [afd1c1e0132c65e36d289940fe251b2875ec3a25]
#
# patch "libstate.cpp"
#  from [9f1b052f1934e8bd5778d6952df3c2cfe4aab789]
#    to [ab62d4062809876fb3f5e4f72bf6d44821bc218d]
#
# patch "libstate.h"
#  from [f5c5c2663864660f509a451ef9ff53fa6d7b8ecb]
#    to [4070e82c699e67065b4337afd0475b0e9c9e6120]
#
# patch "make_prm.cpp"
#  from [133075e517d2f68f4b4370fdae3898422c33a5d6]
#    to [4ef12c2a523d27ad2c7602374ed7aac7d0de36ef]
#
# patch "numthry.cpp"
#  from [84009604c0629348da9cf653aa8d11f477c72ed9]
#    to [126f52c53fff81483812e62e387a63db90aad512]
#
# patch "policy.cpp"
#  from [7edd21b6fc8e3770981ad0eba6b28402efdba46b]
#    to [e166ff18acbb721c2e2631204f7214510606a596]
#
# patch "symkey.h"
#  from [2d69cca7990aa00f317cfce3c3fc4fe4aa82dbd7]
#    to [bb111b6485d7142552cdaf683eb32c045d3bc837]
#
# patch "ui.cpp"
#  from [32d9c59fa34f0fd2f122a5cc3b2ff021b3a8898c]
#    to [110c99f760077c645bd4066dee446930ad8736da]
#
# patch "ui.h"
#  from [b2113a0666a19f2ab5a86669b4aba1b7fb031b1a]
#    to [798f616232c5e7d573b8804757aece798e38be28]
#
# patch "x509_ext.cpp"
#  from [ef06bb3ca34bbd16a7735dbc40fede0e06fad529]
#    to [ea9c0179d437bd8041db6761a911dad82139cc36]
#
# patch "x509cert.h"
#  from [ec2ade1cc5bfc6ed02672025821794fc4589eac0]
#    to [3e0aff7d3950cca7179fabe9758606bddc688d40]
#
============================================================
--- Attic/doc/api.tex	24f0ee532fd3c18d3979a41c2750bf4114ce6402
+++ Attic/doc/api.tex	8298bf084d4d113e2df22fdbe53366fd753e7deb
@@ -12,7 +12,7 @@

 \title{\textbf{Botan API Reference}}
 \author{}
-\date{2006/10/11}
+\date{2006/12/14}

 \newcommand{\filename}[1]{\texttt{#1}}
 \newcommand{\manpage}[2]{\texttt{#1}(#2)}
@@ -2493,18 +2493,25 @@ \subsection{Pulses}
 as generating a 4096-bit prime), your pretty GUI will block up while the
 library does something, because the event loop is not being run. Not only does
 this look bad, it prevents the user from doing something else while the library
-works. The way around this is to register a pulse function, using
-\function{UI::set\_pulse}(\type{pulse\_func} \arg{f}, \type{void*} \arg{opaque}
-= 0). During long running operations, the library will call
-\arg{f}(\type{Pulse\_Type} \arg{type}, \arg{opaque}), where the \type{enum}
-\arg{type} provides mildly useful information about the operation in progress
-(for a full list of the defined \type{Pulse\_Type} values, see
-\filename{ui.h}). The type code allows you do simple feedback such as that
-GnuPG does during key generation (printing various characters as the prime
-generation process proceeds, such as '-' for prime test failed, '+' for prime
-test worked, and so on). The optional \arg{opaque} value allows you to pass
-data back to your pulse function without making it a global variable.
+works. The way around this is to register a pulse function.

+By creating a class that inherits from \type{Library\_State::UI} and
+passing it to \function{global\_function}().\function{set\_ui}, you
+can cause a pulse to be sent to your object occasionally (generally
+when performing long running operations like prime generation;
+eventually this will be extended for all operations that might take
+longer than a few milliseconds).
+
+You can recieve a pulse by implementing the member function
+\function{pulse}(\type{Pulse\_Type}) within your UI class.  The
+\type{Pulse\_Type} enum provides mildly useful information about the
+operation in progress (for a full list of the defined
+\type{Pulse\_Type} values, see \filename{enums.h}). The type code
+allows you do simple feedback such as that GnuPG does during key
+generation (printing various characters as the prime generation
+process proceeds, such as '-' for prime test failed, '+' for prime
+test worked, and so on).
+
 Generally the thing to do inside the pulse function is to run the GUI's event
 loop, for example with GTK+:

@@ -2580,31 +2587,30 @@ \subsection{Setting and Getting Options}

 \subsection{Setting and Getting Options}

-The header \filename{botan/conf.h} has the interface for setting policy
-options. All of the functions are declared inside of the \namespace{Config}
-namespace; there is 1 for setting options, and 4 for getting the values of
-them.
+The header \filename{botan/config.h} has the interface for setting
+policy options. All the actual configuration options are stored in a
+global object (of type \type{Config}); you can get a reference to this
+object by calling \function{global\_config}.

-To add (or set) an option, call \function{add}(\type{std::string} \arg{option},
-\type{std::string} \arg{value}), which sets the value of \arg{option} to
-\arg{value}.
+To add (or set) an option, call
+\function{global\_config}().\function{set\_option} (\type{std::string}
+\arg{name}, \type{std::string} \arg{value})

-There are 5 functions to retrieve the values of options, one for each of the
-types:
+To get the value of an option, there are number of member

-\type{std::string} \function{get\_string}(\type{std::string} \arg{option})
+\type{std::string} \function{option}(\type{std::string} \arg{option})

-\type{std::vector<std::string>} \function{get\_list}(\type{std::string}
+\type{std::vector<std::string>} \function{option\_as\_list}(\type{std::string}
 \arg{option})

-\type{u32bit} \function{get\_u32bit}(\type{std::string} \arg{option})
+\type{u32bit} \function{option\_as\_u32bit}(\type{std::string} \arg{option})

-\type{u32bit} \function{get\_time}(\type{std::string} \arg{option})
+\type{u32bit} \function{option\_as\_time}(\type{std::string} \arg{option})

-\type{bool} \function{get\_bool}(\type{std::string} \arg{option})
+\type{bool} \function{option\_as\_bool}(\type{std::string} \arg{option})

-The only one that might be confusing is \function{get\_time}, which returns the
-time in seconds.
+The only one that might be confusing is \function{option\_as\_time},
+which returns the time in seconds.

 As to defaults: strings default to the empty string, lists to an empty list,
 integers default to 0, times default to no time (0 seconds), and booleans will
============================================================
--- Attic/doc/log.txt	c835983bdf8864f607bf4dd57a1b2d699a1158a2
+++ Attic/doc/misc/log-15.txt	b25c38d909e329c7abdb2ce43420da31a80f0f06
@@ -111,7 +111,7 @@
 * 1.5.2, January 15, 2006
  - Fixed an off-by-one memory read in MISTY1::key()
  - Fixed a nasty memory leak in Output_Buffers::retire()
- - Reimplemented the memory allocator for scratch
+ - Reimplemented the memory allocator from scratch
  - Improved memory caching in Montgomery exponentiation
  - Optimizations for multiple precision addition and subtraction
  - Fixed a build problem in the hardware timer module on 64-bit PowerPC
============================================================
--- Attic/misc/Botan.spec	8f6d6ebdbfafbc9b98003641a326c536334e626a
+++ Attic/misc/Botan.spec	0bf5b39a35ac44f16b3c3c1d352d3eee425c724f
@@ -15,8 +15,8 @@
 ##################################################
 # Hardware restrictions on various modules       #
 ##################################################
-%define USE_TM_HARD i586 i686 athlon x86_64 alpha sparcv9 sparc64
-%define USE_MP64    alpha ppc64 ia64 x86_64
+%define USE_TM_HARD i586 i686 athlon x86_64 ppc ppc64 alpha sparcv9 sparc64
+%define MP64_ARCH    alpha ppc64 ia64 sparc64

 ##################################################
 # Module settings                                #
@@ -32,6 +32,14 @@
   %{expand: %%define EXTRA_MODS %{EXTRA_MODS},mp_asm64}
 %endif

+%ifarch x86
+  %{expand: %%define EXTRA_MODS %{EXTRA_MODS},mp_ia32,alg_ia32}
+%endif
+
+%ifarch x86_64
+  %{expand: %%define EXTRA_MODS %{EXTRA_MODS},mp_amd64,alg_amd64}
+%endif
+
 %if %{ONLY_BASE_MODS}
   %define MODULES %{BASE_MODS}
 %else
@@ -63,18 +71,18 @@ BuildRoot: %{_tmppath}/%{name}-%{version
 BuildRoot: %{_tmppath}/%{name}-%{version}-root

 %description
-Botan is a C++ library which provides support for many common cryptographic
-operations, including encryption, authentication, and X.509v3 certificates and
-CRLs. A wide variety of algorithms is supported, including RSA, DSA, DES, AES,
-MD5, and SHA-1.
+Botan is a C++ library which provides support for many common
+cryptographic operations, including encryption, authentication, and
+X.509v3 certificates and CRLs. A wide variety of algorithms is
+supported, including RSA, DSA, DES, AES, MD5, and SHA-1.

 %package devel
 Summary: Development files for Botan
 Group: Development/Libraries
 Requires: Botan = %{VERSION}
 %description devel
-This package contains the header files and libraries needed to develop programs
-that use the Botan library.
+This package contains the header files and libraries needed to develop
+programs that use the Botan library.

 ##################################################
 # Main Logic                                     #
@@ -136,11 +144,7 @@ fi
 /usr/share/doc/Botan-%{VERSION}/api.pdf
 /usr/share/doc/Botan-%{VERSION}/tutorial.tex
 /usr/share/doc/Botan-%{VERSION}/tutorial.pdf
-/usr/share/doc/Botan-%{VERSION}/fips140.tex
-/usr/share/doc/Botan-%{VERSION}/fips140.pdf
 /usr/share/doc/Botan-%{VERSION}/todo.txt
-/usr/share/doc/Botan-%{VERSION}/bugs.txt
-/usr/share/doc/Botan-%{VERSION}/botan.rc
 /usr/lib/libbotan.so
 /usr/lib/libbotan.a
 /usr/include/botan/
============================================================
--- Attic/misc/config/cc/msvc	fa3e3ee04cf6e3bca2aed4aa12cd73cb7c02aeca
+++ Attic/misc/config/cc/msvc	a518e200b92423fc58f0c78eafea50e4395799e2
@@ -1,4 +1,4 @@
-realname "Visual C++ 2000/2003"
+realname "Visual C++"

 binary_name "cl /nologo"

@@ -19,14 +19,6 @@ makefile_style nmake

 makefile_style nmake

-<mach_opt>
-i486     -> "/G4"
-i586     -> "/G5"
-i686     -> "/G6"
-athlon   -> "/G6"
-pentium4 -> "/G6"
-</mach_opt>
-
 <arch>
 ia32
 </arch>
============================================================
--- Attic/misc/config/makefile/nmake.in	e9b1cecdf1e3ebf38becb8e84067de944e07e979
+++ Attic/misc/config/makefile/nmake.in	5982ee9b1c9e97433a1a1dbf14efa412585cf490
@@ -92,6 +92,7 @@ distclean: clean
 	$(RM) $(LIBRARIES) $(CHECK)

 distclean: clean
+	$(RM) @{var:build-dir}\build.h
 	$(RM) @{var:build-dir}\include\botan\*
 	$(RMDIR) @{var:build-dir}\include\botan @{var:build-dir}\include
 	$(RMDIR) @{var:build-dir}\lib @{var:build-dir}\checks
============================================================
--- Attic/misc/gtk/Makefile	10999a0650770e6880072f29726dcb3c7e30f143
+++ Attic/misc/gtk/Makefile	4ee35fae08bc92c4e3ec53e7474bea9d4924322c
@@ -3,7 +3,7 @@ CXX = g++
 IFLAGS=$(shell botan-config --cflags) $(shell pkg-config --cflags gtk+-2.0)

 CXX = g++
-CXXFLAGS=-Wall -W $(IFLAGS)
+CXXFLAGS = -Wall -W $(IFLAGS)

 dsa: gtk_ui.o dsa.o
 	$(CXX) $^ $(LIBS) -o $@
============================================================
--- Attic/misc/gtk/dsa.cpp	9faaf2c69aeedf789a1fd063bd24d893118f1182
+++ Attic/misc/gtk/dsa.cpp	2dc3f65471587608d5a5e0ca53cbe0cb289db78a
@@ -6,7 +6,7 @@

   The major points of interest (assuming what you care about is how to use
   Botan from a GUI, and not looking at my terrible GTK code) are gtk_ui.cpp
-  and, in this file, gtk_pulse(), gen_key(), and get_key():
+  and, in this file, GTK_Pulse, gen_key(), and get_key():

      gtk_ui.cpp and get_key() show how to get a passphrase from a user for
      decrypting (well, in theory, anything), but in this case, PKCS #8 private
@@ -15,7 +15,7 @@
      double duty, for getting passphrases for encryption as well (in
      do_save_key).

-     gen_key() and gtk_pulse() show how to do an activity meter while doing a
+     gen_key() and GTK_Pulse show how to do an activity meter while doing a
      long-term operation inside Botan. Since, typically, the only operations
      which take a long time and can't be broken up into smaller parts are prime
      generation/testing, that is currently where the pulse hooks are
@@ -31,16 +31,13 @@
 #include <memory>

 #include <botan/botan.h>
+#include <botan/libstate.h>
 #include <botan/look_pk.h>
 #include <botan/filters.h>
 #include <botan/dsa.h>
 // we don't have a 'using namespace' here, so it's easy to grep for code that
 // is actually dealing with the library (rather than messing around with GTK).

-#if BOTAN_VERSION_CODE < BOTAN_VERSION_CODE_FOR(1,4,4)
-  #error "You need a more recent version of Botan (at least 1.4.4)"
-#endif
-
 #include <gtk/gtk.h>
 #include "gtk_ui.h"

@@ -225,12 +222,19 @@ static void sign_buffer()
 /*************************************************
 * GTK+ pulse callback                            *
 *************************************************/
-static void gtk_pulse(Botan::UI::Pulse_Type, void*)
+class GTK_Pulse : public Botan::Library_State::UI
    {
-   /* We need this to flush the udpates, otherwise GTK+ will wait until we're
-      done with the computation before doing any updates (generally the right
-      thing, but not with a progress bar).
+   public:
+      void pulse(Botan::Pulse_Type);
+   };
+
+void GTK_Pulse::pulse(Botan::Pulse_Type)
+   {
+   /* We need this to flush the updates, otherwise GTK+ will wait until we're
+   done with the computation before doing any updates (generally the right
+   thing, but not with a progress bar).
    */
+
    while(gtk_events_pending())
       gtk_main_iteration();
    }
@@ -289,7 +293,7 @@ static void gen_key()
       the progress bar. That's because the amount of time between pulses
       from the library is rather irregular, so the progress bar looks jerky.
    */
-   Botan::UI::set_pulse(gtk_pulse);
+   Botan::global_state().set_ui(new GTK_Pulse);

    /* Not generally recommended, since it's slow and there's not much point.
       However, *because* it's slow, we'll want to put up a progress bar or
@@ -300,7 +304,7 @@ static void gen_key()
    key = new Botan::DSA_PrivateKey(group);

    gtk_timeout_remove(timer_id);
-   Botan::UI::set_pulse(0); // unset the pulse function
+   Botan::global_state().set_ui(0); // unset the pulse function

    gtk_widget_destroy(dialog);

============================================================
--- Attic/misc/gtk/readme.txt	b8d9f23cb2a081dfaa4e5b1e67d0e824db94ed93
+++ Attic/misc/gtk/readme.txt	22d1a8c020532e8994064232bbfa9f2736647a2b
@@ -1,19 +1,18 @@

 This is an example of how to use Botan in a GUI. You need at least
-Botan 1.4.x.
+Botan 1.6.0.

-You'll also need GTK+ 2.x (tested with GTK+ 2.2 and 2.6). Keep in mind
-that I was learning GTK as I was writing this code, so it is not
-exactly the best GTK code you're likely to see.
+You'll also need GTK+ 2.x (tested with GTK+ 2.10; should work with
+most versions). Keep in mind that I was learning GTK as I was writing
+this code, so it is not exactly the best GTK code you're likely to
+see.

-dsa.cpp is the main GTK+ driver. It has some comments at the top which point
-out major areas of interest.
+dsa.cpp is the main GTK+ driver. It has some comments at the top which
+point out major areas of interest.

+gtk_ui.* implement a User_Interface object that opens up a GTK+ dialog
+box that asks the user for their passphrase. It works pretty well, the
+only major deficiency is a fixed upper limit on the size of the
+passphrase (currently 64).  You may want to use this in your own code,
+assuming you use GTK. If not, it should at least provide an outline
+for writing a version for your favorite windowing system.
-gtk_ui.* implement a User_Interface object that opens up a GTK+ dialog box that
-asks the user for their passphrase. It works pretty well, the only major
-deficiency is a fixed upper limit on the size of the passphrase (currently 64).
-You may want to use this in your own code, assuming you use GTK. If not, it
-should at least provide an outline for writing a version for your favorite
-windowing system.
-
-To build, you'll need to have GNU make, or be willing to compile it by hand.
============================================================
--- Attic/misc/nist_tests/x509test.cpp	79e95b75aceec8874c1728604e6aeb5121b4b775
+++ Attic/misc/nist_tests/x509test.cpp	981d5f7aea97d952ef2df9cfb8279a6db962616a
@@ -60,14 +60,14 @@ int main()
       for(size_t k = 0; k != all_files.size(); k++)
          {
          const std::string current = all_files[k];
-         if(current.find("Intermediate Certificate") != std::string::npos)
+         if(current.find("int") != std::string::npos &&
+            current.find(".crt") != std::string::npos)
             certs.push_back(test_dir + current);
-         else if(current.find("Trust Anchor CP") != std::string::npos)
+         else if(current.find("root.crt") != std::string::npos)
             root_cert = test_dir + current;
-         else if(current.find("End Certificate") != std::string::npos &&
-                 current.find(".crtx") == std::string::npos)
+         else if(current.find("end.crt") != std::string::npos)
             to_verify = test_dir + current;
-         else if(current.find("CRL") != std::string::npos)
+         else if(current.find(".crl") != std::string::npos)
             crls.push_back(test_dir + current);
          }

============================================================
--- Attic/misc/python/nisttest.py	27f326a1620d60a5dbfff2745947b664641fbfdf
+++ Attic/misc/python/nisttest.py	977c579f01e571dddaac33b57521b0b223b850db
@@ -24,8 +24,8 @@ def run_test(files, rootdir, testname, e
 def run_test(files, rootdir, testname, expected):
     crls = [join(rootdir,x) for x in files if x.endswith(".crl")]
     certs = [join(rootdir,x) for x in files if x.endswith(".crt")]
-    end_entity = [x for x in certs if x.find("End Cert") != -1]
-    ca_certs = [x for x in certs if x.find("Trust Anchor") != -1]
+    end_entity = [x for x in certs if x.find("end.crt") != -1]
+    ca_certs = [x for x in certs if x.find("root.crt") != -1]

     print "%s..." % testname,

============================================================
--- Attic/misc/python/src/pk.cpp	2fe597d3617538be1f7c2b447be091db87c7b1ee
+++ Attic/misc/python/src/pk.cpp	ec7d76829ef9058c837d3ddbcecc4930d3973ca7
@@ -98,6 +98,7 @@ void export_pk()
    python::class_<RSA_PrivateKey, python::bases<RSA_PublicKey, PK_Decrypting_Key> >
       ("RSA_PrivateKey", python::init<u32bit>());

+   /*
    python::class_<PK_Encryptor, boost::noncopyable>
       ("PK_Encryptor", python::no_init)
       .def("__init__",
@@ -105,6 +106,7 @@ void export_pk()
                                     python::with_custodian_and_ward_postcall<0, 1>()))
       .def("max_input", &PK_Encryptor::maximum_input_size)
       .def("encrypt", encrypt_string);
+   */

    /*
    python::class_<PK_Decryptor, boost::noncopyable>
============================================================
--- Attic/modules/alg_amd64/modinfo.txt	d73e9033b08859e5e94970c0beafae394437ce0f
+++ Attic/modules/alg_amd64/modinfo.txt	6086d394850522537238f61f5ffaed5aefa8b4e5
@@ -2,18 +2,13 @@

 mp_bits 64

-<replace>
-#sha160.cpp
-</replace>
-
 <ignore>
-mp_muladd.cpp
+mp_mulop.cpp
 </ignore>

 <add>
 asm_macr.h
-mp_muladd.S
-#sha1core.S
+mp_mulop.S
 </add>

 <arch>
============================================================
--- Attic/modules/alg_ia32/modinfo.txt	95bbfd7319fdc36a8a2f5fe843001a53bbaf55af
+++ Attic/modules/alg_ia32/modinfo.txt	06da382f85623de9067fec5d905bd3356cfe095a
@@ -10,7 +10,7 @@
 </replace>

 <ignore>
-mp_muladd.cpp
+mp_mulop.cpp
 </ignore>

 <add>
@@ -19,7 +19,7 @@
 md5core.S
 sha1core.S
 serp_asm.S
-mp_muladd.S
+mp_mulop.S
 </add>

 <arch>
============================================================
--- Attic/readme.txt	03d624dc2b7958f3d790715aedc0ea71385e1878
+++ Attic/readme.txt	ff647042f51cf5189ac60386454f84b957f976f7
@@ -1,10 +1,10 @@

-This is the first release candidate for Botan 1.6.0. Please test with
-your applications and report problems. Note that some APIs have
-changed, in some cases dramatically. However most code that works
-against Botan 1.4.x should work with minimal or no modifications.
+Please note that this is an experimental / development version of
+Botan.  Don't be surprised by bugs. No, the documentation hasn't been
+updated (yet). Feedback and critical analysis is highly
+appreciated. If this sounds scary, it's recommened you use the latest
+stable release (either 1.4.x or, preferably, 1.6.x). You can file bugs
+at http://www.randombit.net/bugzilla

-You can file bugs at http://www.randombit.net/bugzilla
-
 Jack
 (lloyd@randombit.net)
============================================================
--- base64.h	2b090ec65993ce3366d06dd30665032b2ce2ff02
+++ base64.h	3f09eb989fc4b2b391f9cefa31455c9fbd2794cb
@@ -7,6 +7,7 @@
 #define BOTAN_BASE64_H__

 #include <botan/filter.h>
+#include <botan/enums.h>

 namespace Botan {

============================================================
--- config.cpp	d4dc8bd89b02461a03377681d9a106fbfbf4d70d
+++ config.cpp	0c3d3bed551ae74cdb33be1843727648e87a80a2
@@ -82,6 +82,14 @@ std::string Config::deref_alias(const st
    }

 /*************************************************
+* Set/Add an option                              *
+*************************************************/
+void Config::set_option(const std::string key, const std::string& value)
+   {
+   set("conf", key, value);
+   }
+
+/*************************************************
 * Get an option value                            *
 *************************************************/
 std::string Config::option(const std::string& key) const
============================================================
--- config.h	538f35746c12898efa1cca7bd034027214f90611
+++ config.h	67ea849588c76de31039a5b31d47983ae8ad7159
@@ -27,22 +27,22 @@ class Config
       void set(const std::string&, const std::string&,
                const std::string&, bool = true);

+      std::string option(const std::string&) const;
       u32bit option_as_u32bit(const std::string&) const;
       u32bit option_as_time(const std::string&) const;
       bool option_as_bool(const std::string&) const;
       std::vector<std::string> option_as_list(const std::string&) const;

+      void set_option(const std::string, const std::string&);
+
       void add_alias(const std::string&, const std::string&);
       std::string deref_alias(const std::string&) const;

-      std::string option(const std::string&) const;
-
       void load_inifile(const std::string&);

       static void choose_sig_format(const std::string&, std::string&,
                                     Signature_Format&);
    private:
-
       std::map<std::string, std::string> settings;
    };

============================================================
--- engine.h	83d79b578eeab1e96af10e64f9dd5c757611d0a9
+++ engine.h	b097b39a35e56fa7065db88304f00a54c79e88b3
@@ -11,6 +11,7 @@
 #include <botan/pk_ops.h>
 #include <botan/pow_mod.h>
 #include <botan/basefilt.h>
+#include <botan/enums.h>
 #include <utility>
 #include <map>

============================================================
--- enums.h	f4aae4647a70b0d879cd06bbe9951a2b1f8d33c8
+++ enums.h	baf21a6f233200a4cfd0e09f584285a4fd3caef4
@@ -99,6 +99,23 @@ enum Character_Set {
    LATIN1_CHARSET
 };

+/*************************************************
+* Pulse Function                                 *
+*************************************************/
+enum Pulse_Type {
+   GENERAL_PULSE,
+
+   PIPE_WRITE,
+
+   PRIME_SEARCHING,
+   PRIME_SIEVING,
+   PRIME_PASSED_SIEVE,
+   PRIME_TESTING,
+   PRIME_FOUND
+};
+
+static const u32bit NO_CERT_PATH_LIMIT = 0xFFFFFFF0;
+
 }

 #endif
============================================================
--- filter.cpp	24a13d191c5b20b1445a0b581fc8b0ca92dcda43
+++ filter.cpp	eb64d7cb6d31e58b2bde650ed5f244626e1d69e3
@@ -5,7 +5,7 @@

 #include <botan/filter.h>
 #include <botan/secqueue.h>
-#include <botan/ui.h>
+#include <botan/libstate.h>

 namespace Botan {

@@ -25,7 +25,7 @@ void Filter::send(const byte input[], u3
 *************************************************/
 void Filter::send(const byte input[], u32bit length)
    {
-   UI::pulse(UI::PIPE_WRITE);
+   global_state().pulse(PIPE_WRITE);

    bool nothing_attached = true;
    for(u32bit j = 0; j != total_ports(); ++j)
============================================================
--- hex.h	065a18cbf522daf1c6283587bec607f788be2e46
+++ hex.h	cd20faea5de483ad9e90bb8921e492bcbb7b743e
@@ -7,6 +7,7 @@
 #define BOTAN_HEX_H__

 #include <botan/filter.h>
+#include <botan/enums.h>

 namespace Botan {

============================================================
--- init_def.cpp	28f1a3f5c9ec0d18cc9d86a2ddc7009653d9accb
+++ init_def.cpp	afd1c1e0132c65e36d289940fe251b2875ec3a25
@@ -28,16 +28,8 @@ void LibraryInitializer::initialize(cons
 *************************************************/
 void LibraryInitializer::initialize(const InitializerOptions& args)
    {
-   try
-      {
-      Builtin_Modules modules(args);
-      initialize(args, modules);
-      }
-   catch(...)
-      {
-      deinitialize();
-      throw;
-      }
+   Builtin_Modules modules(args);
+   initialize(args, modules);
    }

 /*************************************************
============================================================
--- libstate.cpp	9f1b052f1934e8bd5778d6952df3c2cfe4aab789
+++ libstate.cpp	ab62d4062809876fb3f5e4f72bf6d44821bc218d
@@ -292,6 +292,24 @@ X509_GlobalState& Library_State::x509_st
    }

 /*************************************************
+* Set the UI object state                        *
+*************************************************/
+void Library_State::set_ui(UI* new_ui)
+   {
+   delete ui;
+   ui = new_ui;
+   }
+
+/*************************************************
+* Send a pulse to the UI object                  *
+*************************************************/
+void Library_State::pulse(Pulse_Type pulse_type) const
+   {
+   if(ui)
+      ui->pulse(pulse_type);
+   }
+
+/*************************************************
 * Set the configuration object                   *
 *************************************************/
 Config& Library_State::config() const
@@ -348,6 +366,7 @@ Library_State::Library_State(Mutex_Facto
    rng = 0;
    cached_default_allocator = 0;
    x509_state_obj = 0;
+   ui = 0;
    }

 /*************************************************
@@ -360,6 +379,7 @@ Library_State::~Library_State()
    delete rng;
    delete timer;
    delete config_obj;
+   delete ui;

    std::for_each(entropy_sources.begin(), entropy_sources.end(),
                  del_fun<EntropySource>());
============================================================
--- libstate.h	f5c5c2663864660f509a451ef9ff53fa6d7b8ecb
+++ libstate.h	4070e82c699e67065b4337afd0475b0e9c9e6120
@@ -7,6 +7,8 @@
 #define BOTAN_LIB_STATE_H__

 #include <botan/base.h>
+#include <botan/enums.h>
+#include <botan/ui.h>
 #include <string>
 #include <vector>
 #include <map>
@@ -30,6 +32,13 @@ class Library_State
          };
       friend class Engine_Iterator;

+      class UI
+         {
+         public:
+            virtual void pulse(Pulse_Type) {}
+            virtual ~UI() {}
+         };
+
       Allocator* get_allocator(const std::string& = "") const;
       void add_allocator(Allocator*);
       void set_default_allocator(const std::string&) const;
@@ -58,6 +67,9 @@ class Library_State
       void set_x509_state(class X509_GlobalState*);
       class X509_GlobalState& x509_state();

+      void pulse(Pulse_Type) const;
+      void set_ui(UI*);
+
       void set_transcoder(class Charset_Transcoder*);
       std::string transcode(const std::string,
                             Character_Set, Character_Set) const;
@@ -79,6 +91,7 @@ class Library_State
       std::map<std::string, Allocator*> alloc_factory;
       mutable Allocator* cached_default_allocator;

+      UI* ui;
       class Charset_Transcoder* transcoder;
       RandomNumberGenerator* rng;
       std::vector<Allocator*> allocators;
============================================================
--- make_prm.cpp	133075e517d2f68f4b4370fdae3898422c33a5d6
+++ make_prm.cpp	4ef12c2a523d27ad2c7602374ed7aac7d0de36ef
@@ -4,11 +4,11 @@
 *************************************************/

 #include <botan/numthry.h>
+#include <botan/libstate.h>
 #include <botan/lookup.h>
 #include <botan/bit_ops.h>
 #include <botan/parsing.h>
 #include <botan/rng.h>
-#include <botan/ui.h>
 #include <algorithm>
 #include <memory>

@@ -55,7 +55,7 @@ bool generate_dsa_primes(BigInt& p, BigI
    q.binary_decode(qhash, qhash.size());
    if(!is_prime(q))
       return false;
-   UI::pulse(UI::PRIME_FOUND);
+   global_state().pulse(PRIME_FOUND);

    u32bit n = (pbits-1) / 160, b = (pbits-1) % 160;
    SecureVector<byte> W(20 * (n+1));
@@ -67,7 +67,7 @@ bool generate_dsa_primes(BigInt& p, BigI

    for(u32bit j = 0; j != 4096 - counter_start; ++j)
       {
-      UI::pulse(UI::PRIME_SEARCHING);
+      global_state().pulse(PRIME_SEARCHING);

       for(u32bit k = 0; k != n + 1; ++k)
          {
@@ -82,7 +82,7 @@ bool generate_dsa_primes(BigInt& p, BigI

       if(p.bits() == pbits && is_prime(p))
          {
-         UI::pulse(UI::PRIME_FOUND);
+         global_state().pulse(PRIME_FOUND);
          return true;
          }
       }
@@ -99,7 +99,7 @@ SecureVector<byte> generate_dsa_primes(B
    while(true)
       {
       Global_RNG::randomize(seed, seed.size());
-      UI::pulse(UI::PRIME_SEARCHING);
+      global_state().pulse(PRIME_SEARCHING);
       if(generate_dsa_primes(p, q, seed, seed.size(), pbits))
          return seed;
       }
@@ -124,7 +124,7 @@ BigInt random_prime(u32bit bits, const B

    while(true)
       {
-      UI::pulse(UI::PRIME_SEARCHING);
+      global_state().pulse(PRIME_SEARCHING);

       BigInt p = random_integer(bits);
       p.set_bit(bits - 2);
@@ -139,7 +139,7 @@ BigInt random_prime(u32bit bits, const B
       for(u32bit j = 0; j != sieve.size(); ++j)
          {
          sieve[j] = p % PRIMES[j];
-         UI::pulse(UI::PRIME_SIEVING);
+         global_state().pulse(PRIME_SIEVING);
          }

       u32bit counter = 0;
@@ -148,7 +148,7 @@ BigInt random_prime(u32bit bits, const B
          if(counter == 4096 || p.bits() > bits)
             break;

-         UI::pulse(UI::PRIME_SEARCHING);
+         global_state().pulse(PRIME_SEARCHING);

          bool passes_sieve = true;
          ++counter;
@@ -157,17 +157,17 @@ BigInt random_prime(u32bit bits, const B
          for(u32bit j = 0; j != sieve.size(); ++j)
             {
             sieve[j] = (sieve[j] + modulo) % PRIMES[j];
-            UI::pulse(UI::PRIME_SIEVING);
+            global_state().pulse(PRIME_SIEVING);
             if(sieve[j] == 0)
                passes_sieve = false;
             }

          if(!passes_sieve || gcd(p - 1, coprime) != 1)
             continue;
-         UI::pulse(UI::PRIME_PASSED_SIEVE);
+         global_state().pulse(PRIME_PASSED_SIEVE);
          if(passes_mr_tests(p))
             {
-            UI::pulse(UI::PRIME_FOUND);
+            global_state().pulse(PRIME_FOUND);
             return p;
             }
          }
============================================================
--- numthry.cpp	84009604c0629348da9cf653aa8d11f477c72ed9
+++ numthry.cpp	126f52c53fff81483812e62e387a63db90aad512
@@ -4,7 +4,7 @@
 *************************************************/

 #include <botan/numthry.h>
-#include <botan/ui.h>
+#include <botan/libstate.h>
 #include <algorithm>

 namespace Botan {
@@ -284,7 +284,7 @@ bool MillerRabin_Test::passes_test(const
    if(a < 2 || a >= n_minus_1)
       throw Invalid_Argument("Bad size for nonce in Miller-Rabin test");

-   UI::pulse(UI::PRIME_TESTING);
+   global_state().pulse(PRIME_TESTING);

    BigInt y = pow_mod(a);
    if(y == 1 || y == n_minus_1)
@@ -292,7 +292,7 @@ bool MillerRabin_Test::passes_test(const

    for(u32bit j = 1; j != s; ++j)
       {
-      UI::pulse(UI::PRIME_TESTING);
+      global_state().pulse(PRIME_TESTING);
       y = reducer.square(y);

       if(y == 1)
============================================================
--- policy.cpp	7edd21b6fc8e3770981ad0eba6b28402efdba46b
+++ policy.cpp	e166ff18acbb721c2e2631204f7214510606a596
@@ -181,51 +181,51 @@ void set_default_config(Config& config)
 *************************************************/
 void set_default_config(Config& config)
    {
-   config.set("conf", "base/memory_chunk", "64*1024");
-   config.set("conf", "base/pkcs8_tries", "3");
-   config.set("conf", "base/default_pbe",
+   config.set_option("base/memory_chunk", "64*1024");
+   config.set_option("base/pkcs8_tries", "3");
+   config.set_option("base/default_pbe",
                      "PBE-PKCS5v20(SHA-1,TripleDES/CBC)");
-   config.set("conf", "base/default_allocator", "malloc");
+   config.set_option("base/default_allocator", "malloc");

-   config.set("conf", "pk/blinder_size", "64");
-   config.set("conf", "pk/test/public", "basic");
-   config.set("conf", "pk/test/private", "basic");
-   config.set("conf", "pk/test/private_gen", "all");
+   config.set_option("pk/blinder_size", "64");
+   config.set_option("pk/test/public", "basic");
+   config.set_option("pk/test/private", "basic");
+   config.set_option("pk/test/private_gen", "all");

-   config.set("conf", "pem/search", "4*1024");
-   config.set("conf", "pem/forgive", "8");
-   config.set("conf", "pem/width", "64");
+   config.set_option("pem/search", "4*1024");
+   config.set_option("pem/forgive", "8");
+   config.set_option("pem/width", "64");

-   config.set("conf", "rng/ms_capi_prov_type", "INTEL_SEC:RSA_FULL");
-   config.set("conf", "rng/unix_path", "/usr/ucb:/usr/etc:/etc");
-   config.set("conf", "rng/es_files", "/dev/urandom:/dev/random");
-   config.set("conf", "rng/egd_path",
+   config.set_option("rng/ms_capi_prov_type", "INTEL_SEC:RSA_FULL");
+   config.set_option("rng/unix_path", "/usr/ucb:/usr/etc:/etc");
+   config.set_option("rng/es_files", "/dev/urandom:/dev/random");
+   config.set_option("rng/egd_path",
                      "/var/run/egd-pool:/dev/egd-pool");
-   config.set("conf", "rng/slow_poll_request", "256");
-   config.set("conf", "rng/fast_poll_request", "64");
+   config.set_option("rng/slow_poll_request", "256");
+   config.set_option("rng/fast_poll_request", "64");

-   config.set("conf", "x509/validity_slack", "24h");
-   config.set("conf", "x509/v1_assume_ca", "false");
-   config.set("conf", "x509/cache_verify_results", "30m");
+   config.set_option("x509/validity_slack", "24h");
+   config.set_option("x509/v1_assume_ca", "false");
+   config.set_option("x509/cache_verify_results", "30m");

-   config.set("conf", "x509/ca/allow_ca", "false");
-   config.set("conf", "x509/ca/basic_constraints", "always");
-   config.set("conf", "x509/ca/default_expire", "1y");
-   config.set("conf", "x509/ca/signing_offset", "30s");
-   config.set("conf", "x509/ca/rsa_hash", "SHA-1");
-   config.set("conf", "x509/ca/str_type", "latin1");
+   config.set_option("x509/ca/allow_ca", "false");
+   config.set_option("x509/ca/basic_constraints", "always");
+   config.set_option("x509/ca/default_expire", "1y");
+   config.set_option("x509/ca/signing_offset", "30s");
+   config.set_option("x509/ca/rsa_hash", "SHA-1");
+   config.set_option("x509/ca/str_type", "latin1");

-   config.set("conf", "x509/crl/unknown_critical", "ignore");
-   config.set("conf", "x509/crl/next_update", "7d");
+   config.set_option("x509/crl/unknown_critical", "ignore");
+   config.set_option("x509/crl/next_update", "7d");

-   config.set("conf", "x509/exts/basic_constraints", "critical");
-   config.set("conf", "x509/exts/subject_key_id", "yes");
-   config.set("conf", "x509/exts/authority_key_id", "yes");
-   config.set("conf", "x509/exts/subject_alternative_name", "yes");
-   config.set("conf", "x509/exts/issuer_alternative_name", "no");
-   config.set("conf", "x509/exts/key_usage", "critical");
-   config.set("conf", "x509/exts/extended_key_usage", "yes");
-   config.set("conf", "x509/exts/crl_number", "yes");
+   config.set_option("x509/exts/basic_constraints", "critical");
+   config.set_option("x509/exts/subject_key_id", "yes");
+   config.set_option("x509/exts/authority_key_id", "yes");
+   config.set_option("x509/exts/subject_alternative_name", "yes");
+   config.set_option("x509/exts/issuer_alternative_name", "no");
+   config.set_option("x509/exts/key_usage", "critical");
+   config.set_option("x509/exts/extended_key_usage", "yes");
+   config.set_option("x509/exts/crl_number", "yes");
    }

 /*************************************************
============================================================
--- symkey.h	2d69cca7990aa00f317cfce3c3fc4fe4aa82dbd7
+++ symkey.h	bb111b6485d7142552cdaf683eb32c045d3bc837
@@ -7,7 +7,6 @@
 #define BOTAN_SYMKEY_H__

 #include <botan/secmem.h>
-#include <botan/enums.h>
 #include <string>

 namespace Botan {
============================================================
--- ui.cpp	32d9c59fa34f0fd2f122a5cc3b2ff021b3a8898c
+++ ui.cpp	110c99f760077c645bd4066dee446930ad8736da
@@ -4,6 +4,7 @@
 *************************************************/

 #include <botan/ui.h>
+#include <botan/libstate.h>

 namespace Botan {

@@ -31,32 +32,4 @@ User_Interface::User_Interface(const std
    first_try = true;
    }

-namespace UI {
-
-/*************************************************
-* The current pulse function                     *
-*************************************************/
-pulse_func pulse_f = 0;
-void* pulse_f_data = 0;
-
-/*************************************************
-* Set the UI pulse function                      *
-*************************************************/
-void set_pulse(pulse_func p, void* p_data)
-   {
-   pulse_f = p;
-   pulse_f_data = p_data;
-   }
-
-/*************************************************
-* Call the UI pulse function                     *
-*************************************************/
-void pulse(Pulse_Type type)
-   {
-   if(pulse_f)
-      pulse_f(type, pulse_f_data);
-   }
-
 }
-
-}
============================================================
--- ui.h	b2113a0666a19f2ab5a86669b4aba1b7fb031b1a
+++ ui.h	798f616232c5e7d573b8804757aece798e38be28
@@ -28,36 +28,6 @@ class User_Interface
       mutable bool first_try;
    };

-namespace UI {
-
-/*************************************************
-* Pulse Function                                 *
-*************************************************/
-enum Pulse_Type {
-   GENERAL_PULSE,
-
-   PIPE_WRITE,
-
-   PRIME_SEARCHING,
-   PRIME_SIEVING,
-   PRIME_PASSED_SIEVE,
-   PRIME_TESTING,
-   PRIME_FOUND
-};
-typedef void (*pulse_func)(Pulse_Type, void*);
-
-/*************************************************
-* Set the UI pulse function                      *
-*************************************************/
-void set_pulse(pulse_func, void* = 0);
-
-/*************************************************
-* Call the UI pulse function                     *
-*************************************************/
-void pulse(Pulse_Type = GENERAL_PULSE);
-
 }

-}
-
 #endif
============================================================
--- x509_ext.cpp	ef06bb3ca34bbd16a7735dbc40fede0e06fad529
+++ x509_ext.cpp	ea9c0179d437bd8041db6761a911dad82139cc36
@@ -4,7 +4,6 @@
 *************************************************/

 #include <botan/x509_ext.h>
-#include <botan/x509cert.h>
 #include <botan/x509stat.h>
 #include <botan/libstate.h>
 #include <botan/der_enc.h>
============================================================
--- x509cert.h	ec2ade1cc5bfc6ed02672025821794fc4589eac0
+++ x509cert.h	3e0aff7d3950cca7179fabe9758606bddc688d40
@@ -9,12 +9,11 @@
 #include <botan/x509_obj.h>
 #include <botan/x509_key.h>
 #include <botan/datastor.h>
+#include <botan/enums.h>
 #include <map>

 namespace Botan {

-static const u32bit NO_CERT_PATH_LIMIT = 0xFFFFFFF0;
-
 /*************************************************
 * X.509 Certificate                              *
 *************************************************/