From mboxrd@z Thu Jan 1 00:00:00 1970 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 shelob.surriel.com (shelob.surriel.com [96.67.55.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 487D3E728E1 for ; Sat, 30 Sep 2023 18:49:21 +0000 (UTC) Received: from localhost ([::1] helo=shelob.surriel.com) by shelob.surriel.com with esmtp (Exim 4.96) (envelope-from ) id 1qmf14-0004Vs-1m; Sat, 30 Sep 2023 14:48:38 -0400 Received: from mail-lf1-x136.google.com ([2a00:1450:4864:20::136]) by shelob.surriel.com with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1qmf13-0004Vh-1W for kernelnewbies@kernelnewbies.org; Sat, 30 Sep 2023 14:48:37 -0400 Received: by mail-lf1-x136.google.com with SMTP id 2adb3069b0e04-5041335fb9cso23566105e87.0 for ; Sat, 30 Sep 2023 11:48:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1696099705; x=1696704505; darn=kernelnewbies.org; h=content-disposition:mime-version:message-id:subject:to:from:date :from:to:cc:subject:date:message-id:reply-to; bh=wF/Xa/y/03adDPLehlsZ4m3zl7vT3Uw1TzJFYlZ6hOk=; b=gsrx/iPhp/2wenVN2HdtWqCZnkKouse90d1wKu6CdzmTCXJRUKoWEOWv0IBb6xelPg WcujIcX2Ji8QhIBm2d6bnGRIuiZVd2SLYhTVT/QITmJTu1EnUH33YJTdh5Zs9tQ8YbQy +ND3g2vlx8LRFRUZBfH3YADqkij4KPVCRtVV1nNLUJQMm2uOzWuViyJo4u+b3S8uzKq7 hfYcufEUHVePO5nDlK13D7uFf/3+Bd3xkgjBB4FBDtCd2BqpE/WCkuXApA7CoUvC0b3L GuStS97MuU/Gcabpru+tTOm+N8MOR8uJqeDO92kCehaz+zfLh1XEl8lrmhCjgzK4uq+R w1nA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696099705; x=1696704505; h=content-disposition:mime-version:message-id:subject:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=wF/Xa/y/03adDPLehlsZ4m3zl7vT3Uw1TzJFYlZ6hOk=; b=KI+enaDWF6E/JW60DfbJIKWlwH02HFacQlgnoIF1L/6vxv840iJ2Y6DzvE/TFklD0I eL+yDgAVxmVNHaxT6pybSsam/+iD/KZjUQSLShZIq7rq4CLouQI9wnaeObkqSazlIVYu OP5nQEVkYbF9LXud4rdF7ALr/4S1fY4NrP0qarEF2OcEpAHKKehSvLZkNoVDUygdREVj hjmBdPeR8t8w/wR7AVS+gMlpDRZbkPE3dvj5pbj9jeeprNQ8DFsStXKjEhhSKqc+NMBH n3ES0CS3Le20g/EH42yIubDDCY3yT+2XjOareHDG3NrMxmb4PEcQkVqlNWaeQzhYlkaG vaHw== X-Gm-Message-State: AOJu0YyezFQi1yqE2ZhZ00pHOlAJ5svx1KSXqaUxb222Y4ZPHB+fXl5z vVOiauaSERlglQ8qZp6bfxxv8PzYg6xBWA== X-Google-Smtp-Source: AGHT+IGWkQkMVVRaExeJ2glz+sCwgWkrAA6oTgpN2H6Gm16FSq6303Vz1EIwZSjOYwUZE4NUmVJ5rg== X-Received: by 2002:ac2:4205:0:b0:503:3654:37bd with SMTP id y5-20020ac24205000000b00503365437bdmr5303508lfh.45.1696099705163; Sat, 30 Sep 2023 11:48:25 -0700 (PDT) Received: from HP-ENVY-Notebook (81-229-94-10-no68.tbcn.telia.com. [81.229.94.10]) by smtp.gmail.com with ESMTPSA id f10-20020a19ae0a000000b0050334e5f5a8sm3969606lfc.271.2023.09.30.11.48.24 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 30 Sep 2023 11:48:24 -0700 (PDT) Date: Sat, 30 Sep 2023 20:48:22 +0200 From: Jonathan Bergh To: kernelnewbies@kernelnewbies.org Subject: Prefer strscpy over strcpy Message-ID: MIME-Version: 1.0 Content-Disposition: inline X-BeenThere: kernelnewbies@kernelnewbies.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Learn about the Linux kernel List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: kernelnewbies-bounces@kernelnewbies.org hi there So this is a question about the common checkpatch warning I am sure (most) people have seen when runing checkpatch.pl over kernel code. In this particular example "driver_name": * In: vme_fake.c: static const char driver_name[] = "vme_fake": will always fit into vme_bridge->name: * In: vme_bridge.h: ... #define VMENAMSIZ 16 ... struct vme_bridge { ... char name[VMENAMSIZ]; ... } and yet in the __init function, the code uses: * vme_fake.c: strcpy(fake_bridge->name, driver_name); Is it (would not be) correct to use: * strscpy(fake_bridge->name, driver_name, sizeof(fake_bridge->name)); I cant see an issue, since driver_name is a const char[] and will always fit into fake_bridge->name but I wanted to check whether there might be some reason strcpy and not strscpy has been used? thanks in advance, regards Jon _______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies