From patchwork Sat Jan 27 19:23:37 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anibal Limon X-Patchwork-Id: 38419 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id E7D70C46CD2 for ; Sat, 27 Jan 2024 19:23:54 +0000 (UTC) Received: from mail-oo1-f54.google.com (mail-oo1-f54.google.com [209.85.161.54]) by mx.groups.io with SMTP id smtpd.web10.22796.1706383425159028946 for ; Sat, 27 Jan 2024 11:23:45 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@limonsoftware-com.20230601.gappssmtp.com header.s=20230601 header.b=3Zgl9EDD; spf=pass (domain: limonsoftware.com, ip: 209.85.161.54, mailfrom: anibal@limonsoftware.com) Received: by mail-oo1-f54.google.com with SMTP id 006d021491bc7-59a2dde1cfcso44500eaf.1 for ; Sat, 27 Jan 2024 11:23:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=limonsoftware-com.20230601.gappssmtp.com; s=20230601; t=1706383424; x=1706988224; darn=lists.yoctoproject.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=8E2mw7fZqPQGaGVgraJvcZsJ+747JQM9CJlZ2c+T0vU=; b=3Zgl9EDDA2mFpiie4PALVsmfxKD5AduAGUHV013BucsSg99w5B+wcJR5K+hYkdbg0M 9tVa6I7i2sxWa+9oYA6+txYSzqvSyX6rQF6bNKB0mudUA4zIzTa42p+tEACGuNBLkGQA 6peKRucvUQcLL5aGgeu/08Giywnux3LKBGlsbwgfVedJMFw2FOd48GEu/08k49r7f8jg T+biLkKIv94wUlQib3TJv8/rYNP+l/LABowDugQw/fd7vRCWVFq5wkgInnvE20r2TRhV HVCOScrx+iMCwpJC3ORD7REbOpiHgqcZZccB1gtAltyvMhLxsgHjnpvmwd9CamicBV+S 2Eqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706383424; x=1706988224; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=8E2mw7fZqPQGaGVgraJvcZsJ+747JQM9CJlZ2c+T0vU=; b=XvwX3l2h2OSVutEnBbcl6Bkth7OoG/Z+gVw8ZjwlnrmGtTHUT4P9LRntXqJ8q9HzqF 4T7EeFdoYFrpMCSpcL5mnySTJqEVBA0b5kbcMuutqhtkf/h91gzJBnhLkoEW3vseUywE fG+TnNeULjOyYGpGakQnft2NHiTmLmBMLwlwd+djj6CL0xLZY4TdR8mlSiCXgvFgtU/i IM9BhWAKsDnXkxRq1ic89lXwOQFNsMqYkYbgURZ283FlUkcnTZzt8TX+2BrfVHbwrXjU dA0PxAygUVojCliz6gIcrtVc0c3dhC0Qyr9hzaWYU/ZxvA2qstG7v0MA9cVkjcAHlXEd BNWw== X-Gm-Message-State: AOJu0Yz7M2TLJtolBF2OEYE1nLkLR1N8T0YvTxz+xiWDezrMqjd6sMiz 8Wm0lR9P9dydOQoSBD6qhbZGIoiCc29thze1y+Y1nNb6WgZIR72FMuPN7wfzJG/85SfmohEgXtQ k X-Google-Smtp-Source: AGHT+IEZ6yBFJcO0m3NmS7XJ0U6I7696C4brElCbjKhOu5eufda4UkszAlyEzI+TH+klbtC7GaICjg== X-Received: by 2002:a05:6830:33a8:b0:6dc:8160:3168 with SMTP id dw8-20020a05683033a800b006dc81603168mr1167756otb.39.1706383424152; Sat, 27 Jan 2024 11:23:44 -0800 (PST) Received: from localhost.localdomain ([2806:10b7:3:10a9:bcea:6138:f9fd:313f]) by smtp.gmail.com with ESMTPSA id h10-20020a4ac44a000000b00599f1741917sm64558ooq.43.2024.01.27.11.23.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 27 Jan 2024 11:23:43 -0800 (PST) From: Anibal Limon To: yocto@lists.yoctoproject.org Cc: richard.purdie@linuxfoundation.org, JPEWhacker@gmail.com, randy.macleod@windriver.com, Anibal Limon Subject: [yocto][ptest-runner 1/2] utils.c: get_available_ptests fix security flags compilation Date: Sat, 27 Jan 2024 13:23:37 -0600 Message-ID: <20240127192338.776610-1-anibal@limonsoftware.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Sat, 27 Jan 2024 19:23:54 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/yocto/message/62310 When get_available_ptests uses realpath to support symlinks, this is expected to not fail because usage of stack memory, if fails prints the error and exit. Signed-off-by: Anibal Limon --- utils.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/utils.c b/utils.c index 59b8b77..54394cc 100644 --- a/utils.c +++ b/utils.c @@ -118,7 +118,10 @@ get_available_ptests(const char *dir) int saved_errno = -1; /* Initalize to invalid errno. */ char realdir[PATH_MAX]; - realpath(dir, realdir); + if (realpath(dir, realdir) == NULL) { + fprintf(stderr, "ERROR: get_available_ptests failed to get realpath, %s\n", strerror(errno)); + exit(1); + } do { From patchwork Sat Jan 27 19:23:38 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anibal Limon X-Patchwork-Id: 38418 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id E9C8FC47DA9 for ; Sat, 27 Jan 2024 19:23:54 +0000 (UTC) Received: from mail-oo1-f41.google.com (mail-oo1-f41.google.com [209.85.161.41]) by mx.groups.io with SMTP id smtpd.web10.22797.1706383425794898749 for ; Sat, 27 Jan 2024 11:23:45 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@limonsoftware-com.20230601.gappssmtp.com header.s=20230601 header.b=g6I3GjxE; spf=pass (domain: limonsoftware.com, ip: 209.85.161.41, mailfrom: anibal@limonsoftware.com) Received: by mail-oo1-f41.google.com with SMTP id 006d021491bc7-59a2dde1cfcso44502eaf.1 for ; Sat, 27 Jan 2024 11:23:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=limonsoftware-com.20230601.gappssmtp.com; s=20230601; t=1706383425; x=1706988225; darn=lists.yoctoproject.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=tOQVtVyarvQJha95YZzsVfrW+kz9SUlvqizgB/Xt96o=; b=g6I3GjxE9J61jTKwG/oBOHXf+yN97WAghegPhwxQqU9TW3VjEA0M+gTEPJWZPo7Tdf +p4QxIbQKRL8JZfmvpZVBoWxAGdCL6/XS7RLurYu/da4ylKVXOyZw0xz+QAlRKoGBbyb seM4yYFF8DEtNGVzqYjbasRvcdc7ypoU5Qho0SB2/Se01o9U2bf5wKT+8Hkuxnm5Egvw Z4LCvRpNx6EKcbEMwugqD6kqZu3f7whARYqIJbv30FliI0hjQ3pBxiynsbCZiPK7B/bm KzoZFXa+rIfZlHRbFWQ87ToMenRLh9uvu/FkyLGyugU/RB2M2E81ZdBCAUzVvs+TMAHv n/Rw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706383425; x=1706988225; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tOQVtVyarvQJha95YZzsVfrW+kz9SUlvqizgB/Xt96o=; b=lTIZG+Jpnq/o6a9mpeSa5ulg99J8K1TS0dvJ0U1XeD0YDakCIDVdtV6G9rYiHwrbFt 730L4ltQzYgx2h4MBFFo8qX1KXNknyu/1lvOw6a6uIvAWIKRYRgg6f8E6Oq4rKsdfEnU 3aI9f8xFgHZ1glgis4RV20A5zL2QJwkKoBgvGCR5SA6w9/m1c4IQEKwk9HAVvfvBySYn TDzjSoBGeTyo3VoeYfv1k+cFB8v2SNGtKGBXo58TPnbT3UGkfIFXd7xmkN0xl+T8/Ss5 QMjO+UnAd56fZ1zZ/TqQGwWyiIPJkrWfTPcJwQ70kYn7aACikm7XIXJ2uua5QwPVxNpT oyIw== X-Gm-Message-State: AOJu0YyGZvYcgWPsn9CgByexMtc6HF1eiX4sC/98aG2snGOxbibM2SAo fKZ95i7FH2iD38DlmiFapLgaAiEbrZrFLKhsWUkEcCXAZW3+zTSPK6ONZS9y4o52mYbD7ynZ1mC c X-Google-Smtp-Source: AGHT+IHLSSpMKnDodQ79gmvFlCKj7b5VuodvSFaCJX+0/XB6kU1WfRZ3csEk6otN51Mw/2UVVUsHjg== X-Received: by 2002:a4a:c489:0:b0:59a:a18:59cc with SMTP id f9-20020a4ac489000000b0059a0a1859ccmr579674ooq.4.1706383424994; Sat, 27 Jan 2024 11:23:44 -0800 (PST) Received: from localhost.localdomain ([2806:10b7:3:10a9:bcea:6138:f9fd:313f]) by smtp.gmail.com with ESMTPSA id h10-20020a4ac44a000000b00599f1741917sm64558ooq.43.2024.01.27.11.23.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 27 Jan 2024 11:23:44 -0800 (PST) From: Anibal Limon To: yocto@lists.yoctoproject.org Cc: richard.purdie@linuxfoundation.org, JPEWhacker@gmail.com, randy.macleod@windriver.com, Anibal Limon Subject: [yocto][ptest-runner 2/2] utils: run_child fix security flags build Date: Sat, 27 Jan 2024 13:23:38 -0600 Message-ID: <20240127192338.776610-2-anibal@limonsoftware.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240127192338.776610-1-anibal@limonsoftware.com> References: <20240127192338.776610-1-anibal@limonsoftware.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Sat, 27 Jan 2024 19:23:54 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/yocto/message/62311 Move chdir outside run_child to better handle when fails output an error message plus remove the need to strdup inside run_child (already have ptest_dir). Signed-off-by: Anibal Limon --- utils.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/utils.c b/utils.c index 54394cc..472520f 100644 --- a/utils.c +++ b/utils.c @@ -327,7 +327,6 @@ static inline void run_child(char *run_ptest, int fd_stdout, int fd_stderr) { char *const argv[2] = {run_ptest, NULL}; - chdir(dirname(strdup(run_ptest))); dup2(fd_stdout, STDOUT_FILENO); // XXX: Redirect stderr to stdout to avoid buffer ordering problems. @@ -466,7 +465,11 @@ run_ptests(struct ptest_list *head, const struct ptest_options opts, fprintf(fp, "ERROR: Unable to attach to controlling tty, %s\n", strerror(errno)); } - run_child(p->run_ptest, pipefd_stdout[PIPE_WRITE], pipefd_stderr[PIPE_WRITE]); + if (chdir(ptest_dir) == -1) { + fprintf(fp, "ERROR: Unable to chdir(%s), %s\n", ptest_dir, strerror(errno)); + } else { + run_child(p->run_ptest, pipefd_stdout[PIPE_WRITE], pipefd_stderr[PIPE_WRITE]); + } } else { bool timedout = false;