trusty: storageproxyd: Fix rebase of UFS support
The UFS support got rebased on top of the RPMB socket support improperly. As a result, RPMB socket support was broken due to an unconditional rmpb_fd = rc which would set the rpmb_fd to be connect()'s error code in the case of an RPMB socket. Bug: 146903427 Test: Boot Trusty+Android with the rpmb_dev mock, check for liveness Change-Id: Ib1220dc49392f1a10369eed7716e44680bd83a66
This commit is contained in:
parent
e1c879c816
commit
17785fd185
1 changed files with 9 additions and 9 deletions
|
|
@ -361,6 +361,15 @@ int rpmb_open(const char* rpmb_devname, enum dev_type open_dev_type) {
|
|||
return rc;
|
||||
}
|
||||
rpmb_fd = rc;
|
||||
|
||||
/* For UFS, it is prudent to check we have a sg device by calling an ioctl */
|
||||
if (dev_type == UFS_RPMB) {
|
||||
if ((ioctl(rpmb_fd, SG_GET_VERSION_NUM, &sg_version_num) < 0) ||
|
||||
(sg_version_num < RPMB_MIN_SG_VERSION_NUM)) {
|
||||
ALOGE("%s is not a sg device, or old sg driver\n", rpmb_devname);
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
struct sockaddr_un unaddr;
|
||||
struct sockaddr *addr = (struct sockaddr *)&unaddr;
|
||||
|
|
@ -382,15 +391,6 @@ int rpmb_open(const char* rpmb_devname, enum dev_type open_dev_type) {
|
|||
}
|
||||
}
|
||||
|
||||
/* For UFS, it is prudent to check we hava a sg device by calling an ioctl */
|
||||
if (dev_type == UFS_RPMB) {
|
||||
if ((ioctl(rc, SG_GET_VERSION_NUM, &sg_version_num) < 0) ||
|
||||
(sg_version_num < RPMB_MIN_SG_VERSION_NUM)) {
|
||||
ALOGE("%s is not a sg device, or old sg driver\n", rpmb_devname);
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
rpmb_fd = rc;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue