Introduction
Introduction Statistics Contact Development Disclaimer Help
simplify listfds handling - geomyidae - A small C-based gopherd.
git clone git://bitreich.org/geomyidae/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfri…
Log
Files
Refs
Tags
README
LICENSE
---
commit aa6b70539a2b175efadad1d5f6a771d77a92f8ef
parent 206c57aca0611bef65a365710aaef32529634b5c
Author: Hiltjo Posthuma <[email protected]>
Date: Sun, 11 Nov 2018 14:00:02 +0100
simplify listfds handling
simplify:
- closing listfds, remove unneccesary >= fd check.
- use the same order of closing the log as in sighandler.
- don't check for NULL, free(NULL) is valid.
Signed-off-by: Christoph Lohmann <[email protected]>
Diffstat:
M main.c | 46 ++++++++++++-----------------…
1 file changed, 18 insertions(+), 28 deletions(-)
---
diff --git a/main.c b/main.c
@@ -271,14 +271,12 @@ sighandler(int sig)
close(glfd);
glfd = -1;
}
- if (listfds != NULL) {
- for (i = 0; i < nlistfds; i++) {
- if (listfds[i] >= 0) {
- shutdown(listfds[i], SHUT_RDWR);
- close(listfds[i]);
- }
- }
+
+ for (i = 0; i < nlistfds; i++) {
+ shutdown(listfds[i], SHUT_RDWR);
+ close(listfds[i]);
}
+ free(listfds);
exit(0);
break;
default:
@@ -583,11 +581,9 @@ main(int argc, char *argv[])
sizeof(*listfds) * ++nlistfds);
listfds[nlistfds-1] = lfdret[j];
}
- if (lfdret != NULL)
- free(lfdret);
+ free(lfdret);
}
- if (bindips != NULL)
- free(bindips);
+ free(bindips);
if (nlistfds < 1)
return 1;
@@ -613,15 +609,12 @@ main(int argc, char *argv[])
if (dropprivileges(gr, us) < 0) {
perror("dropprivileges");
- if (listfds != NULL) {
- for (i = 0; i < nlistfds; i++) {
- if (listfds[i] >= 0) {
- shutdown(listfds[i], SHUT_RDWR);
- close(listfds[i]);
- }
- }
- free(listfds);
+
+ for (i = 0; i < nlistfds; i++) {
+ shutdown(listfds[i], SHUT_RDWR);
+ close(listfds[i]);
}
+ free(listfds);
return 1;
}
@@ -734,21 +727,18 @@ main(int argc, char *argv[])
close(sock);
}
- if (listfds != NULL) {
- for (i = 0; i < nlistfds; i++) {
- if (listfds[i] >= 0) {
- shutdown(listfds[i], SHUT_RDWR);
- close(listfds[i]);
- }
- }
- free(listfds);
- }
if (logfile != NULL && glfd != -1) {
close(glfd);
glfd = -1;
}
free(ohost);
+ for (i = 0; i < nlistfds; i++) {
+ shutdown(listfds[i], SHUT_RDWR);
+ close(listfds[i]);
+ }
+ free(listfds);
+
return 0;
}
You are viewing proxied material from bitreich.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.