|
|
@ -157,7 +157,7 @@ public: |
|
|
{30203, nullptr, "UnblockDeliveryTask"}, |
|
|
{30203, nullptr, "UnblockDeliveryTask"}, |
|
|
{90100, nullptr, "EnumerateBackgroundDeliveryTask"}, |
|
|
{90100, nullptr, "EnumerateBackgroundDeliveryTask"}, |
|
|
{90200, nullptr, "GetDeliveryList"}, |
|
|
{90200, nullptr, "GetDeliveryList"}, |
|
|
{90201, nullptr, "ClearDeliveryCacheStorage"}, |
|
|
|
|
|
|
|
|
{90201, &IBcatService::ClearDeliveryCacheStorage, "ClearDeliveryCacheStorage"}, |
|
|
{90300, nullptr, "GetPushNotificationLog"}, |
|
|
{90300, nullptr, "GetPushNotificationLog"}, |
|
|
}; |
|
|
}; |
|
|
// clang-format on
|
|
|
// clang-format on
|
|
|
@ -252,6 +252,28 @@ private: |
|
|
rb.Push(RESULT_SUCCESS); |
|
|
rb.Push(RESULT_SUCCESS); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void ClearDeliveryCacheStorage(Kernel::HLERequestContext& ctx) { |
|
|
|
|
|
IPC::RequestParser rp{ctx}; |
|
|
|
|
|
const auto title_id = rp.PopRaw<u64>(); |
|
|
|
|
|
|
|
|
|
|
|
LOG_DEBUG(Service_BCAT, "called, title_id={:016X}", title_id); |
|
|
|
|
|
|
|
|
|
|
|
if (title_id == 0) { |
|
|
|
|
|
LOG_ERROR(Service_BCAT, "Invalid title ID!"); |
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2}; |
|
|
|
|
|
rb.Push(ERROR_INVALID_ARGUMENT); |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (!backend.Clear(title_id)) { |
|
|
|
|
|
LOG_ERROR(Service_BCAT, "Could not clear the directory successfully!"); |
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2}; |
|
|
|
|
|
rb.Push(ERROR_FAILED_CLEAR_CACHE); |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2}; |
|
|
|
|
|
rb.Push(RESULT_SUCCESS); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
Backend& backend; |
|
|
Backend& backend; |
|
|
|