Fixes the following warnings:
rpcd/sys.c: In function 'rpc_cgi_password_set':
rpcd/sys.c:116:8: error: ignoring return value of 'chdir', declared with attribute warn_unused_result [-Werror=unused-result]
chdir("/");
^
rpcd/sys.c:125:8: error: ignoring return value of 'write', declared with attribute warn_unused_result [-Werror=unused-result]
write(fds[1], blobmsg_data(tb[RPC_P_PASSWORD]),
^
rpcd/sys.c:127:8: error: ignoring return value of 'write', declared with attribute warn_unused_result [-Werror=unused-result]
write(fds[1], "\n", 1);
^
rpcd/sys.c:131:8: error: ignoring return value of 'write', declared with attribute warn_unused_result [-Werror=unused-result]
write(fds[1], blobmsg_data(tb[RPC_P_PASSWORD]),
^
rpcd/sys.c:133:8: error: ignoring return value of 'write', declared with attribute warn_unused_result [-Werror=unused-result]
write(fds[1], "\n", 1);
^
cc1: all warnings being treated as errors
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
int fd, fds[2];
struct stat s;
struct blob_attr *tb[__RPC_P_MAX];
int fd, fds[2];
struct stat s;
struct blob_attr *tb[__RPC_P_MAX];
blobmsg_parse(rpc_password_policy, __RPC_P_MAX, tb,
blob_data(msg), blob_len(msg));
blobmsg_parse(rpc_password_policy, __RPC_P_MAX, tb,
blob_data(msg), blob_len(msg));
+ ret = chdir("/");
+ if (ret < 0)
+ return rpc_errno_status();
if (execl("/usr/bin/passwd", "/usr/bin/passwd",
blobmsg_data(tb[RPC_P_USER]), NULL))
if (execl("/usr/bin/passwd", "/usr/bin/passwd",
blobmsg_data(tb[RPC_P_USER]), NULL))
- write(fds[1], blobmsg_data(tb[RPC_P_PASSWORD]),
+ n = write(fds[1], blobmsg_data(tb[RPC_P_PASSWORD]),
blobmsg_data_len(tb[RPC_P_PASSWORD]) - 1);
blobmsg_data_len(tb[RPC_P_PASSWORD]) - 1);
- write(fds[1], "\n", 1);
+ if (n < 0)
+ return rpc_errno_status();
+
+ n = write(fds[1], "\n", 1);
+ if (n < 0)
+ return rpc_errno_status();
- write(fds[1], blobmsg_data(tb[RPC_P_PASSWORD]),
+ n = write(fds[1], blobmsg_data(tb[RPC_P_PASSWORD]),
blobmsg_data_len(tb[RPC_P_PASSWORD]) - 1);
blobmsg_data_len(tb[RPC_P_PASSWORD]) - 1);
- write(fds[1], "\n", 1);
+ if (n < 0)
+ return rpc_errno_status();
+ n = write(fds[1], "\n", 1);
+ if (n < 0)
+ return rpc_errno_status();