)]}'
{"api-ref/source/os-certificates.inc":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"5e857ce1a8dfc500ec7460b4757fd49a077b89d5","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Normal response codes: 200"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Error response codes: unauthorized(401), forbidden(403)"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Request"},{"line_number":24,"context_line":"-------"}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_ad3daf2c","line":21,"updated":"2016-05-11 11:56:21.000000000","message":"I think 400 can happen because Invalid exception is raised if something goes wrong. https://github.com/openstack/nova/blob/4777bd9ff47aa8f314f44d7a4b6abbe244d41c14/nova/crypto.py#L111","commit_id":"8b1298ff583c19a0c3149b98c41de144bc36d6b7"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"9d69c25cbb40a4de3a1954a1775a895e58231996","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Normal response codes: 200"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Error response codes: unauthorized(401), forbidden(403)"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Request"},{"line_number":24,"context_line":"-------"}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_d7f39071","line":21,"in_reply_to":"dab17558_6fe729ac","updated":"2016-05-16 15:12:12.000000000","message":"Hmm you are right, it calls down into here:https://github.com/openstack/nova/blob/4777bd9ff47aa8f314f44d7a4b6abbe244d41c14/nova/crypto.py#L262\n\nAs there are no params, its hard to get a 400, I think.","commit_id":"8b1298ff583c19a0c3149b98c41de144bc36d6b7"},{"author":{"_account_id":20217,"name":"Anusha Unnam","email":"anusha.unnam25@gmail.com","username":"aunnam"},"change_message_id":"a10baa852592c5041b526ac423413e1980970f28","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Normal response codes: 200"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Error response codes: unauthorized(401), forbidden(403)"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Request"},{"line_number":24,"context_line":"-------"}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_6fe729ac","line":21,"in_reply_to":"dab17558_ad3daf2c","updated":"2016-05-11 16:58:38.000000000","message":"Thanks for the review. I went through the code and I don\u0027t actually find any call trace to the method you mentioned in the crypto.py file. It was only going to CertAPI and there is no call from CertAPI to crypto. I am trying to understand the flow here rather than just adding 400. Help me if I am missing anything here.","commit_id":"8b1298ff583c19a0c3149b98c41de144bc36d6b7"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"9d69c25cbb40a4de3a1954a1775a895e58231996","unresolved":false,"context_lines":[{"line_number":38,"context_line":"Show Certificate Details"},{"line_number":39,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":".. rest_method:: GET /v2.1/{tenant_id}/os-certificates/{certificate_id}"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Shows details for a certificate."},{"line_number":44,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_376adced","line":41,"range":{"start_line":41,"start_character":56,"end_line":41,"end_character":70},"updated":"2016-05-16 15:12:12.000000000","message":"it seems the only valid value is \"root\", else you get 501 (yuck). But this is correct for now.","commit_id":"8b1298ff583c19a0c3149b98c41de144bc36d6b7"}]}
