From 4b234fbfbdce5df1ddb76e614390e1367adb72a3 Mon Sep 17 00:00:00 2001 From: Andrew Bettison Date: Mon, 2 Mar 2015 14:31:31 +1030 Subject: [PATCH] Fix /restful/rhizome/insert HTTP status code Return 403 "Forbidden" instead of 501 "Not implemented" when given a journal bundle --- rhizome_restful.c | 2 +- tests/rhizomerestful | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/rhizome_restful.c b/rhizome_restful.c index 8eafa5bb..998ae477 100644 --- a/rhizome_restful.c +++ b/rhizome_restful.c @@ -549,7 +549,7 @@ static int insert_mime_part_end(struct http_request *hr) return 500; } if (r->manifest->is_journal) - return http_request_rhizome_response(r, 501, "Insert not supported for journals", NULL); + return http_request_rhizome_response(r, 403, "Insert not supported for journals", NULL); assert(r->manifest != NULL); } else if (r->u.insert.current_part == PART_PAYLOAD) { diff --git a/tests/rhizomerestful b/tests/rhizomerestful index 022660c4..28f80580 100755 --- a/tests/rhizomerestful +++ b/tests/rhizomerestful @@ -973,7 +973,7 @@ test_RhizomeInsertDuplicateManifest() { assert_rhizome_list } -doc_RhizomeInsertJournal="HTTP RESTful insert Rhizome bundle does not support journals" +doc_RhizomeInsertJournal="HTTP RESTful insert Rhizome bundle does not accept journals" setup_RhizomeInsertJournal() { setup echo 'File one' >file1 @@ -990,8 +990,8 @@ test_RhizomeInsertJournal() { "http://$addr_localhost:$PORTA/restful/rhizome/insert" tfw_cat http.header http.body assertExitStatus == 0 - assertStdoutIs 501 - assertJq http.body 'contains({"http_status_code": 501})' + assertStdoutIs 403 + assertJq http.body 'contains({"http_status_code": 403})' assertJqGrep --ignore-case http.body '.http_status_message' 'not supported.*journal' executeOk_servald rhizome list assert_rhizome_list