*/
#include "pkg_request.hh"
+
+#include "utils/logging.hh"
+
#include "pkgmgrinfo_debug.h"
namespace pkgmgr_server {
+PkgRequest::PkgRequest()
+ : request_type_(pkgmgr_common::REQ_TYPE_NONE), data_size_(-1),
+ privilege_checked_(false) {}
+
PkgRequest::PkgRequest(int fd)
- : request_type_(pkgmgr_common::REQ_TYPE_NONE), data_size_(-1) {
+ : request_type_(pkgmgr_common::REQ_TYPE_NONE), data_size_(-1),
+ privilege_checked_(false) {
socket_ = std::unique_ptr<pkgmgr_common::socket::DataSocket>(
new (std::nothrow) pkgmgr_common::socket::DataSocket(fd));
if (socket_ == nullptr)
- LOGE("Out of memory");
+ LOG(ERROR) << "Out of memory";
}
PkgRequest::~PkgRequest() {
delete[] data_;
}
-unsigned char* PkgRequest::GetData() {
+const unsigned char* PkgRequest::GetData() {
return data_;
}
bool PkgRequest::ReceiveData() {
int ret = socket_->ReceiveData(&request_type_, sizeof(request_type_));
if (ret < 0 || request_type_ == pkgmgr_common::REQ_TYPE_NONE) {
- LOGE("Failed to ReceiveData");
+ LOG(ERROR) << "Failed to ReceiveData";
return false;
}
ret = socket_->ReceiveData(&data_size_, sizeof(data_size_));
if (ret < 0) {
- LOGE("Failed to ReceiveData");
+ LOG(ERROR) << "Failed to ReceiveData";
request_type_ = pkgmgr_common::REQ_TYPE_NONE;
return false;
}
if (data_size_ <= 0) {
- LOGE("Invalid data");
+ LOG(ERROR) << "Invalid data";
request_type_ = pkgmgr_common::REQ_TYPE_NONE;
return false;
}
data_ = new (std::nothrow) unsigned char[data_size_];
if (data_ == nullptr) {
- LOGE("Out of memory");
+ LOG(ERROR) << "Out of memory";
request_type_ = pkgmgr_common::REQ_TYPE_NONE;
return false;
}
ret = socket_->ReceiveData(reinterpret_cast<void*>(data_), data_size_);
if (ret < 0) {
- LOGE("Failed to ReceiveData");
+ LOG(ERROR) << "Failed to ReceiveData";
delete[] data_;
data_ = nullptr;
request_type_ = pkgmgr_common::REQ_TYPE_NONE;
return (socket_->SendData(data, size) == 0);
}
+bool PkgRequest::GetPrivilegeChecked() {
+ return privilege_checked_;
+}
+
+void PkgRequest::SetPrivilegeChecked(bool checked) {
+ privilege_checked_ = checked;
+}
+
} // namespace pkgmgr_server