Blob Blame History Raw
commit 7f8463fe702174bd613df9d308cc899af25ae02e
Author: Steve Dickson <steved@redhat.com>
Date:   Wed Feb 23 15:19:51 2022 -0500

    systemd: Fix format-overflow warning
    
    rpc-pipefs-generator.c:35:23: error: '%s' directive output between 0 and 2147483653 bytes may exceed minimum required size of 4095 [-Werror=format-overflow=]
       35 |         sprintf(path, "%s/%s", dirname, pipefs_unit);
          |                       ^
    
    Signed-off-by: Steve Dickson <steved@redhat.com>

diff --git a/systemd/rpc-pipefs-generator.c b/systemd/rpc-pipefs-generator.c
index c24db567..7b2bb4f7 100644
--- a/systemd/rpc-pipefs-generator.c
+++ b/systemd/rpc-pipefs-generator.c
@@ -28,11 +28,12 @@ static int generate_mount_unit(const char *pipefs_path, const char *pipefs_unit,
 {
 	char	*path;
 	FILE	*f;
+	size_t size = (strlen(dirname) + 1 + strlen(pipefs_unit) + 1);
 
-	path = malloc(strlen(dirname) + 1 + strlen(pipefs_unit));
+	path = malloc(size);
 	if (!path)
 		return 1;
-	sprintf(path, "%s/%s", dirname, pipefs_unit);
+	snprintf(path, size, "%s/%s", dirname, pipefs_unit);
 	f = fopen(path, "w");
 	if (!f)
 	{