summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLAN-TW <lantw44@gmail.com>2013-10-13 01:17:33 +0800
committerLAN-TW <lantw44@gmail.com>2013-10-13 01:17:33 +0800
commita2e6bfc8dcd86e1ef7827123950dea13040d2233 (patch)
tree5514dd1b7364c776d66f97ce0aa7bc8275688f4e
parentd2158089e2e38e8b665535799c1c3643d65087ff (diff)
downloadsp2013-a2e6bfc8dcd86e1ef7827123950dea13040d2233.tar
sp2013-a2e6bfc8dcd86e1ef7827123950dea13040d2233.tar.gz
sp2013-a2e6bfc8dcd86e1ef7827123950dea13040d2233.tar.bz2
sp2013-a2e6bfc8dcd86e1ef7827123950dea13040d2233.tar.lz
sp2013-a2e6bfc8dcd86e1ef7827123950dea13040d2233.tar.xz
sp2013-a2e6bfc8dcd86e1ef7827123950dea13040d2233.tar.zst
sp2013-a2e6bfc8dcd86e1ef7827123950dea13040d2233.zip
HW1: 將重複的 request_msg 用 request_err 替代
-rw-r--r--hw1/proc_r.c12
-rw-r--r--hw1/proc_w.c8
2 files changed, 5 insertions, 15 deletions
diff --git a/hw1/proc_r.c b/hw1/proc_r.c
index 301f4e2..46f03b1 100644
--- a/hw1/proc_r.c
+++ b/hw1/proc_r.c
@@ -94,9 +94,7 @@ bool procconn(server* svr, request* req, int maxfd,
if (req[i].header_done) {
if (!req[i].header_accept) {
req[i].file_fd = open (req[i].filename, O_RDONLY);
- request_msg (&req[i], "open %s%s",
- req[i].file_fd < 0 ? "error: " : "done",
- req[i].file_fd < 0 ? strerror(errno) : "");
+ request_err (&req[i], "open", req[i].file_fd);
if (req[i].file_fd < 0) {
write (req[i].conn_fd, svr->reject_hdr, SVR_REJECT_HDR_LEN);
request_msg (&req[i], "REJECT sent");
@@ -106,9 +104,7 @@ bool procconn(server* svr, request* req, int maxfd,
struct stat file_stat;
rval = fstat (req[i].file_fd, &file_stat);
- request_msg (&req[i], "fstat %s%s",
- req[i].file_fd < 0 ? "error: " : "done",
- req[i].file_fd < 0 ? strerror(errno) : "");
+ request_msg (&req[i], "fstat", rval);
if (req[i].file_fd < 0) {
write (req[i].conn_fd, svr->reject_hdr, SVR_REJECT_HDR_LEN);
request_msg (&req[i], "REJECT sent");
@@ -128,9 +124,7 @@ bool procconn(server* svr, request* req, int maxfd,
.l_len = 0
};
rval = fcntl (req[i].file_fd, F_SETLK, &lock_info);
- request_msg (&req[i], "lock %s%s",
- rval < 0 ? "error: " : "done",
- rval < 0 ? strerror(errno) : "");
+ request_msg (&req[i], "lock", rval);
if (rval < 0) {
write (req[i].conn_fd, svr->reject_hdr, SVR_REJECT_HDR_LEN);
request_msg (&req[i], "REJECT sent");
diff --git a/hw1/proc_w.c b/hw1/proc_w.c
index 450981b..6bd1990 100644
--- a/hw1/proc_w.c
+++ b/hw1/proc_w.c
@@ -112,9 +112,7 @@ bool procconn(server* svr, request* req, int maxfd,
req[i].file_fd = open (req[i].filename,
O_WRONLY | O_CREAT,
S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH);
- request_msg (&req[i], "open %s%s",
- req[i].file_fd < 0 ? "error: " : "done",
- req[i].file_fd < 0 ? strerror(errno) : "");
+ request_err (&req[i], "open", req[i].file_fd);
if (req[i].file_fd < 0) {
write (req[i].conn_fd, svr->reject_hdr, SVR_REJECT_HDR_LEN);
request_msg (&req[i], "REJECT sent");
@@ -124,9 +122,7 @@ bool procconn(server* svr, request* req, int maxfd,
struct stat file_stat;
rval = fstat (req[i].file_fd, &file_stat);
- request_msg (&req[i], "fstat %s%s",
- req[i].file_fd < 0 ? "error: " : "done",
- req[i].file_fd < 0 ? strerror(errno) : "");
+ request_err (&req[i], "fstat", rval);
if (req[i].file_fd < 0) {
write (req[i].conn_fd, svr->reject_hdr, SVR_REJECT_HDR_LEN);
request_msg (&req[i], "REJECT sent");