2017-03-30 Fred Gleason <fredg@paravelsystems.com>

* Changed the result code of the 'AddCart' service when the cart
	already exists from '403' to '400'.
	* Changed the result code of the 'EditCart' service when attempting
	to set a forced length on a macro cart from '403' to '400'.
	* Changed the result code of the 'EditCart' service when attempting
	to set a forced length outside of the valid range from '403' to '400'.
	* Changed the result code of the 'Export' service when attempting
	to export from a cut with no audio content from '403' to '404'.
	* Changed the '401' result code of the 'EditCart' service to be 403.
	* Changed the '401' result code of the 'DeleteAudio' service to be 403.
	* Changed the '401' result code of the 'Export' service to be 403.
This commit is contained in:
Fred Gleason 2017-03-30 11:38:18 -04:00
parent 36fa10802a
commit 11a6609876
5 changed files with 26 additions and 14 deletions

View File

@ -15681,3 +15681,15 @@
2017-03-30 Fred Gleason <fredg@paravelsystems.com> 2017-03-30 Fred Gleason <fredg@paravelsystems.com>
* Added '--relink-audio' and '--relink-audio-move' commands to * Added '--relink-audio' and '--relink-audio-move' commands to
rddbcheck(8) in 'utils/rddbcheck.cpp' and 'utils/rddbcheck.h'. rddbcheck(8) in 'utils/rddbcheck.cpp' and 'utils/rddbcheck.h'.
2017-03-30 Fred Gleason <fredg@paravelsystems.com>
* Changed the result code of the 'AddCart' service when the cart
already exists from '403' to '400'.
* Changed the result code of the 'EditCart' service when attempting
to set a forced length on a macro cart from '403' to '400'.
* Changed the result code of the 'EditCart' service when attempting
to set a forced length outside of the valid range from '403' to '400'.
* Changed the result code of the 'Export' service when attempting
to export from a cut with no audio content from '403' to '404'.
* Changed the '401' result code of the 'EditCart' service to be 403.
* Changed the '401' result code of the 'DeleteAudio' service to be 403.
* Changed the '401' result code of the 'Export' service to be 403.

View File

@ -81,11 +81,11 @@ void Xport::AddCart()
} }
if(!group->cartNumberValid(cart_number)) { if(!group->cartNumberValid(cart_number)) {
delete group; delete group;
XmlExit("Cart number out of range for group",401); XmlExit("Cart number out of range for group",403);
} }
delete group; delete group;
if(!xport_user->createCarts()) { if(!xport_user->createCarts()) {
XmlExit("Unauthorized",401); XmlExit("Forbidden",403);
} }
// //
@ -94,7 +94,7 @@ void Xport::AddCart()
cart=new RDCart(cart_number); cart=new RDCart(cart_number);
if(cart->exists()) { if(cart->exists()) {
delete cart; delete cart;
XmlExit("Cart already exists",403); XmlExit("Cart already exists",400);
} }
if(!cart->create(group_name,cart_type)) { if(!cart->create(group_name,cart_type)) {
delete cart; delete cart;
@ -249,7 +249,7 @@ void Xport::EditCart()
XmlExit("No such cart",404); XmlExit("No such cart",404);
} }
if(!xport_user->modifyCarts()) { if(!xport_user->modifyCarts()) {
XmlExit("Unauthorized",401); XmlExit("Unauthorized",403);
} }
if(xport_post->getValue("GROUP_NAME",&group_name)) { if(xport_post->getValue("GROUP_NAME",&group_name)) {
if(!xport_user->groupAuthorized(group_name)) { if(!xport_user->groupAuthorized(group_name)) {
@ -282,11 +282,11 @@ void Xport::EditCart()
number=RDSetTimeLength(value); number=RDSetTimeLength(value);
if(cart->type()==RDCart::Macro) { if(cart->type()==RDCart::Macro) {
delete cart; delete cart;
XmlExit("Unsupported operation for cart type",403); XmlExit("Unsupported operation for cart type",400);
} }
if(!cart->validateLengths(number)) { if(!cart->validateLengths(number)) {
delete cart; delete cart;
XmlExit("Forced length out of range",403); XmlExit("Forced length out of range",400);
} }
} }
switch(cart->type()) { switch(cart->type()) {
@ -413,7 +413,7 @@ void Xport::RemoveCart()
XmlExit("No such cart",404); XmlExit("No such cart",404);
} }
if(!xport_user->deleteCarts()) { if(!xport_user->deleteCarts()) {
XmlExit("Unauthorized",401); XmlExit("Unauthorized",403);
} }
// //
@ -454,7 +454,7 @@ void Xport::AddCut()
XmlExit("No such cart",404); XmlExit("No such cart",404);
} }
if(!xport_user->editAudio()) { if(!xport_user->editAudio()) {
XmlExit("Unauthorized",401); XmlExit("Forbidden",403);
} }
// //
@ -620,7 +620,7 @@ void Xport::EditCut()
XmlExit("No such cart",404); XmlExit("No such cart",404);
} }
if(!xport_user->editAudio()) { if(!xport_user->editAudio()) {
XmlExit("Unauthorized",401); XmlExit("Forbidden",403);
} }
// //
@ -911,7 +911,7 @@ void Xport::RemoveCut()
XmlExit("No such cart",404); XmlExit("No such cart",404);
} }
if(!xport_user->editAudio()) { if(!xport_user->editAudio()) {
XmlExit("Unauthorized",401); XmlExit("Forbidden",403);
} }
// //

View File

@ -49,7 +49,7 @@ void Xport::DeleteAudio()
// Process Request // Process Request
// //
if((!xport_user->deleteCarts())&&(!xport_user->adminConfig())) { if((!xport_user->deleteCarts())&&(!xport_user->adminConfig())) {
XmlExit("User not authorized",401); XmlExit("User not authorized",403);
} }
RDCut *cut=new RDCut(cartnum,cutnum); RDCut *cut=new RDCut(cartnum,cutnum);
if(!cut->exists()) { if(!cut->exists()) {

View File

@ -189,7 +189,7 @@ void Xport::Export()
break; break;
case RDAudioConvert::ErrorNoSource: case RDAudioConvert::ErrorNoSource:
resp_code=403; resp_code=404;
break; break;
case RDAudioConvert::ErrorNoDestination: case RDAudioConvert::ErrorNoDestination:

View File

@ -101,10 +101,10 @@ void Xport::Import()
} }
} }
if(!xport_user->editAudio()) { if(!xport_user->editAudio()) {
XmlExit("Unauthorized",401); XmlExit("Forbidden",403);
} }
if(create&&(!xport_user->createCarts())) { if(create&&(!xport_user->createCarts())) {
XmlExit("Unauthorized",401); XmlExit("Forbidden",403);
} }
// //