chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
util: replace close_nointr_nofail() by a more useful safe_close()
[elogind.git]
/
src
/
shared
/
ask-password-api.c
diff --git
a/src/shared/ask-password-api.c
b/src/shared/ask-password-api.c
index 755abf0b5e4c37279babfefe5aa4b6e1f2613946..117f0c668747c15669154e2b4a764c69a124e8d3 100644
(file)
--- a/
src/shared/ask-password-api.c
+++ b/
src/shared/ask-password-api.c
@@
-226,8
+226,7
@@
int ask_password_tty(
r = 0;
finish:
r = 0;
finish:
- if (notify >= 0)
- close_nointr_nofail(notify);
+ safe_close(notify);
if (ttyfd >= 0) {
if (ttyfd >= 0) {
@@
-236,7
+235,7
@@
finish:
tcsetattr(ttyfd, TCSADRAIN, &old_termios);
}
tcsetattr(ttyfd, TCSADRAIN, &old_termios);
}
-
close_nointr_nofail
(ttyfd);
+
safe_close
(ttyfd);
}
return r;
}
return r;
@@
-262,7
+261,7
@@
static int create_socket(char **name) {
return -errno;
}
return -errno;
}
- snprintf(sa.un.sun_path, sizeof(sa.un.sun_path)-1, "/run/systemd/ask-password/sck.%
llu", random_ull
());
+ snprintf(sa.un.sun_path, sizeof(sa.un.sun_path)-1, "/run/systemd/ask-password/sck.%
" PRIx64, random_u64
());
RUN_WITH_UMASK(0177) {
r = bind(fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + strlen(sa.un.sun_path));
RUN_WITH_UMASK(0177) {
r = bind(fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + strlen(sa.un.sun_path));
@@
-290,7
+289,7
@@
static int create_socket(char **name) {
return fd;
fail:
return fd;
fail:
-
close_nointr_nofail
(fd);
+
safe_close
(fd);
return r;
}
return r;
}
@@
-325,10
+324,7
@@
int ask_password_agent(
mkdir_p_label("/run/systemd/ask-password", 0755);
mkdir_p_label("/run/systemd/ask-password", 0755);
- RUN_WITH_UMASK(0022) {
- fd = mkostemp(temp, O_CLOEXEC|O_CREAT|O_WRONLY);
- }
-
+ fd = mkostemp_safe(temp, O_WRONLY|O_CLOEXEC);
if (fd < 0) {
log_error("Failed to create password file: %m");
r = -errno;
if (fd < 0) {
log_error("Failed to create password file: %m");
r = -errno;
@@
-524,19
+520,15
@@
int ask_password_agent(
r = 0;
finish:
r = 0;
finish:
- if (fd >= 0)
- close_nointr_nofail(fd);
+ safe_close(fd);
if (socket_name) {
unlink(socket_name);
free(socket_name);
}
if (socket_name) {
unlink(socket_name);
free(socket_name);
}
- if (socket_fd >= 0)
- close_nointr_nofail(socket_fd);
-
- if (signal_fd >= 0)
- close_nointr_nofail(signal_fd);
+ safe_close(socket_fd);
+ safe_close(signal_fd);
if (f)
fclose(f);
if (f)
fclose(f);