ssize_t n;
int ret;
const char *const passwd = "/bin/passwd";
- const struct timespec req = {0, 100 * 1000 * 1000};
+ const struct timespec ts = {0, 100 * 1000 * 1000};
blobmsg_parse(rpc_password_policy, __RPC_P_MAX, tb,
blob_data(msg), blob_len(msg));
if (n < 0)
return rpc_errno_status();
- nanosleep(&req, NULL);
+ nanosleep(&ts, NULL);
n = write(fds[1], blobmsg_data(tb[RPC_P_PASSWORD]),
blobmsg_data_len(tb[RPC_P_PASSWORD]) - 1);
continue;
}
+ /* If there is ABIVersion, remove that suffix */
+ if (!strcmp(var, "ABIVersion:")) {
+ if (strlen(pkg) <= strlen(p1))
+ continue;
+ tmp = &pkg[strlen(pkg) - strlen(p1)];
+ if (strncmp(p1, tmp, strlen(p1)))
+ continue;
+
+ *tmp = '\0';
+ continue;
+ }
+
if (!strcmp(var, "Version:")) {
strncpy(ver, p1, sizeof(ver));
continue;
};
static struct ubus_object_type sys_type =
- UBUS_OBJECT_TYPE("luci-rpc-sys", sys_methods);
+ UBUS_OBJECT_TYPE("rpcd-plugin-sys", sys_methods);
static struct ubus_object obj = {
.name = "rpc-sys",