Displaying 8 results from an estimated 8 matches for "sa_tmpdir".
2019 Sep 26
1
Re: [PATCH libnbd 2/2] api: Implement local command with systemd socket activation.
...r.de/blog/projects/socket-activation.html
> ---
> +
> + /* Use /tmp instead of TMPDIR because we must ensure the path is
> + * short enough to store in the sockaddr_un. On some platforms this
> + * may cause problems so we may need to revisit it. XXX
> + */
> + h->sa_tmpdir = strdup ("/tmp/libnbdXXXXXX");
> + h->sa_sockpath = strdup ("/tmp/libnbdXXXXXX/sock");
> + if (h->sa_tmpdir == NULL || h->sa_sockpath == NULL) {
> + SET_NEXT_STATE (%.DEAD);
> + set_error (errno, "strdup");
> + return 0;
> + }
&g...
2019 Oct 01
2
Re: [PATCH libnbd v2 2/2] api: Implement local command with systemd socket activation.
...ssert (h->argv);
> + assert (h->argv[0]);
> +
> + /* Use /tmp instead of TMPDIR because we must ensure the path is
> + * short enough to store in the sockaddr_un. On some platforms this
> + * may cause problems so we may need to revisit it. XXX
> + */
> + h->sa_tmpdir = strdup ("/tmp/libnbdXXXXXX");
> + if (h->sa_tmpdir == NULL) {
> + SET_NEXT_STATE (%.DEAD);
> + set_error (errno, "strdup");
> + return 0;
> + }
> + if (mkdtemp (h->sa_tmpdir) == NULL) {
> + SET_NEXT_STATE (%.DEAD);
> + set_error...
2019 Sep 26
5
[PATCH libnbd 1/2] lib: Avoid killing subprocess twice.
If the user calls nbd_kill_subprocess, we shouldn't kill the process
again when we close the handle (since the process has likely gone and
we might be killing a different process).
---
lib/handle.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lib/handle.c b/lib/handle.c
index 2af25fe..5ad818e 100644
--- a/lib/handle.c
+++ b/lib/handle.c
@@ -315,6 +315,8 @@
2019 Sep 30
4
[PATCH libnbd v2 0/2] Implement systemd socket activation.
v1 was posted here:
https://www.redhat.com/archives/libguestfs/2019-September/thread.html#00337
v2:
- Drop the first patch.
- Hopefully fix the multiple issues with fork-safety and general
behaviour on error paths.
Note this requires execvpe for which there seems to be no equivalent
on FreeBSD, except some kind of tedious path parsing (but can we
assign to environ?)
Rich.
2019 Sep 30
0
[PATCH libnbd v2 2/2] api: Implement local command with systemd socket activation.
...gs;
+
+ assert (!h->sock);
+ assert (h->argv);
+ assert (h->argv[0]);
+
+ /* Use /tmp instead of TMPDIR because we must ensure the path is
+ * short enough to store in the sockaddr_un. On some platforms this
+ * may cause problems so we may need to revisit it. XXX
+ */
+ h->sa_tmpdir = strdup ("/tmp/libnbdXXXXXX");
+ if (h->sa_tmpdir == NULL) {
+ SET_NEXT_STATE (%.DEAD);
+ set_error (errno, "strdup");
+ return 0;
+ }
+ if (mkdtemp (h->sa_tmpdir) == NULL) {
+ SET_NEXT_STATE (%.DEAD);
+ set_error (errno, "mkdtemp");
+ /* Av...
2019 Sep 26
0
[PATCH libnbd 2/2] api: Implement local command with systemd socket activation.
...6];
+
+ assert (!h->sock);
+ assert (h->argv);
+ assert (h->argv[0]);
+
+ /* Use /tmp instead of TMPDIR because we must ensure the path is
+ * short enough to store in the sockaddr_un. On some platforms this
+ * may cause problems so we may need to revisit it. XXX
+ */
+ h->sa_tmpdir = strdup ("/tmp/libnbdXXXXXX");
+ h->sa_sockpath = strdup ("/tmp/libnbdXXXXXX/sock");
+ if (h->sa_tmpdir == NULL || h->sa_sockpath == NULL) {
+ SET_NEXT_STATE (%.DEAD);
+ set_error (errno, "strdup");
+ return 0;
+ }
+
+ if (mkdtemp (h->sa_tmpdi...
2019 Sep 26
2
Re: [PATCH libnbd 2/2] api: Implement local command with systemd socket activation.
...tmp instead of TMPDIR because we must ensure the path is
> + * short enough to store in the sockaddr_un. On some platforms this
> + * may cause problems so we may need to revisit it. XXX
> + */
Is the use of socketpair() any better than creating a socket under /tmp?
> + h->sa_tmpdir = strdup ("/tmp/libnbdXXXXXX");
> + h->sa_sockpath = strdup ("/tmp/libnbdXXXXXX/sock");
> + if (h->sa_tmpdir == NULL || h->sa_sockpath == NULL) {
> + SET_NEXT_STATE (%.DEAD);
> + set_error (errno, "strdup");
> + return 0;
> + }
&g...
2019 Oct 01
0
Re: [PATCH libnbd v2 2/2] api: Implement local command with systemd socket activation.
...s_done);
> > nbd_internal_free_string_list (h->argv);
> >+ if (h->sa_sockpath) {
> >+ if (h->pid > 0)
> >+ kill (h->pid, SIGTERM);
> >+ unlink (h->sa_sockpath);
> >+ free (h->sa_sockpath);
> >+ }
> >+ if (h->sa_tmpdir) {
> >+ rmdir (h->sa_tmpdir);
> >+ free (h->sa_tmpdir);
> >+ }
> > free (h->unixsocket);
> > free (h->hostname);
> > free (h->port);
>
> Somewhat pre-existing: we have a waitpid() here (good, so we don't
> hang on to a...