From nobody Mon Nov 10 21:40:49 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=fail(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1588046846; cv=none; d=zohomail.com; s=zohoarc; b=Dpe2fNpw9pWelll2RuPWEXNBI4rv1Il+SkXm/bBdGkbhyPB6//FIpnd4+dDJJKeZXZJHC84+carN+sINdvHFU3l+Nblrbqy/gZEc1+tK0qA5lf7fcO1+rxGJkvfmwmGn2JolEJ9Ski0cB7Lo3yf0x8UsgVMdW1oVnEaJdYZBGvc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1588046846; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=62xznBzAJrZ5cBLJ6CH8pd+32QEr+JtnkMAlzxn5W2w=; b=GgKIhYqJcvqEVl1viGEQkaCMO7VU8VPhVpEREjHrV6FBVa1FJZrYjbjoPTxpNaia5wDZDva8RuD0vLX4dswo/wQw32541G1+s1dtPQcm1N1u16iJo1VZh5+QXt331E0ykZcWi5tHljgoloSP2frASp/JpyoDd/dHm1guqjrMFWU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1588046846561533.8195299488924; Mon, 27 Apr 2020 21:07:26 -0700 (PDT) Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1jTHWb-0001Yz-2z; Tue, 28 Apr 2020 04:07:13 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1jTHWZ-0001XE-4f for xen-devel@lists.xenproject.org; Tue, 28 Apr 2020 04:07:11 +0000 Received: from mail-qv1-xf41.google.com (unknown [2607:f8b0:4864:20::f41]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id a27849d0-8905-11ea-b07b-bc764e2007e4; Tue, 28 Apr 2020 04:06:28 +0000 (UTC) Received: by mail-qv1-xf41.google.com with SMTP id ck5so2986161qvb.11 for ; Mon, 27 Apr 2020 21:06:28 -0700 (PDT) Received: from shine.lan ([2001:470:8:67e:f1d1:23b9:fc94:a1a9]) by smtp.gmail.com with ESMTPSA id v2sm13445480qth.66.2020.04.27.21.06.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 Apr 2020 21:06:26 -0700 (PDT) X-Inumbo-ID: a27849d0-8905-11ea-b07b-bc764e2007e4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=62xznBzAJrZ5cBLJ6CH8pd+32QEr+JtnkMAlzxn5W2w=; b=bXTbQKnEynKDrvf8b9s3N/Gt9pB8jg+WpOAo3c8oczvyv/ZvMx+Vz3Bn27Up4YWLhM pmI5N8dyG6Pn80b8u4Rs/p5RxJUa0F7ar1LyF35vSW78hZaMa2OuEACpw/PLuYyov53k MmNcd5WjTDs2x3P5BjU1YDc+ONa/e89QUC/sd1cj2y3b+EOmQVuViqLcE8Y194DIlQ8R /ZVPOE+ylmS4+QEEEKxVwZ2ZYS2AtEKLUAwdH0hMbt5W8dWS0nhwUXM+df/lQEjZZnsI I+gZPwCllD/WUwUX61N31ah7t1g+yc8XKuGuR/ZtdwSqjjOXTiYIIJmOClGJX1VgAWsA yWUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=62xznBzAJrZ5cBLJ6CH8pd+32QEr+JtnkMAlzxn5W2w=; b=YTd2Xviyk3xILYpKkufTSXSgFFLeMhbMiXOzYNZlrO130JRyznnAzlRT2dzVAV5yHe Ok7N5PFKlMlc3QF4o8zW22dCKYvgAPveMzmXY1Eh1ecuxv3Y8Hcn90Woi6rGVssu5NuO 9kkpe9hgeDSCh9r50QQJcCVYYu4wLxzGsJu57BDDmFGIFd1/fWtZEmw2tWnkarx76SoO 69sh3V6S+qz/1jhoNBa4XeKU0s3vclyniVai3tjsAKdKo9mVtf7w5l0edFUAK5oLLyhl 0mU6R6fkzHQXXVv+sihMfBLAoTLtV+MVUe/MWBXA+XxELnJuAYgio0k7GBmHXYjTIuI1 x2mw== X-Gm-Message-State: AGi0PuZ3C7t97Yw8ixIxgMddEmYK5DWpbNfvidkVuUjpjOnsYAf0qXxy uFWegAJxV+2HNL3wmHChNgpmvmcm X-Google-Smtp-Source: APiQypJJz9jy7S7Ew3uCA+nDzpyziyVQvXa9uf0vY7aQB+TGNx4mkQ5nvc2OxG8y5z5GaMBVpJH3xQ== X-Received: by 2002:a05:6214:188a:: with SMTP id cx10mr26208160qvb.119.1588046787600; Mon, 27 Apr 2020 21:06:27 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Subject: [PATCH v5 21/21] tools: Clean up vchan-socket-proxy socket Date: Tue, 28 Apr 2020 00:04:33 -0400 Message-Id: <20200428040433.23504-22-jandryuk@gmail.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200428040433.23504-1-jandryuk@gmail.com> References: <20200428040433.23504-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Ian Jackson , Wei Liu , Jason Andryuk Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" To avoid socket files lingering in /run/xen, have vchan-socket-proxy clean up the sockets it creates. Use a signal handler as well as atexit to handle both means of termination. Signed-off-by: Jason Andryuk --- tools/libvchan/vchan-socket-proxy.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/tools/libvchan/vchan-socket-proxy.c b/tools/libvchan/vchan-soc= ket-proxy.c index 13700c5d67..0fb42964b5 100644 --- a/tools/libvchan/vchan-socket-proxy.c +++ b/tools/libvchan/vchan-socket-proxy.c @@ -33,6 +33,7 @@ =20 #include #include +#include #include #include #include @@ -88,6 +89,22 @@ char outbuf[BUFSIZE]; int insiz =3D 0; int outsiz =3D 0; int verbose =3D 0; +char *cleanup_socket; + +static void cleanup(void) +{ + if (cleanup_socket) { + unlink(cleanup_socket); + free(cleanup_socket); + cleanup_socket =3D NULL; + } +} + +static void cleanup_exit(int signum) +{ + cleanup(); + exit(0); +} =20 static void vchan_wr(struct libxenvchan *ctrl) { int ret; @@ -394,6 +411,9 @@ int main(int argc, char **argv) vchan_path =3D argv[optind+1]; socket_path =3D argv[optind+2]; =20 + signal(SIGHUP, cleanup_exit); + signal(SIGTERM, cleanup_exit); + if (is_server) { ctrl =3D libxenvchan_server_init(NULL, domid, vchan_path, 0, 0); if (!ctrl) { @@ -410,6 +430,8 @@ int main(int argc, char **argv) perror("listen socket"); return 1; } + cleanup_socket =3D strdup(socket_path); + atexit(cleanup); } } =20 --=20 2.20.1