Tue Aug 18 01:46:07 2020 UTC ()
synce-libsynce: fix build


(tnn)
diff -r1.2 -r1.3 pkgsrc/comms/synce-libsynce/distinfo
diff -r0 -r1.1 pkgsrc/comms/synce-libsynce/patches/patch-lib_files.c

cvs diff -r1.2 -r1.3 pkgsrc/comms/synce-libsynce/distinfo (expand / switch to unified diff)

--- pkgsrc/comms/synce-libsynce/distinfo 2015/11/03 01:34:57 1.2
+++ pkgsrc/comms/synce-libsynce/distinfo 2020/08/18 01:46:06 1.3
@@ -1,8 +1,9 @@ @@ -1,8 +1,9 @@
1$NetBSD: distinfo,v 1.2 2015/11/03 01:34:57 agc Exp $ 1$NetBSD: distinfo,v 1.3 2020/08/18 01:46:06 tnn Exp $
2 2
3SHA1 (synce-libsynce-0.9.1.tar.gz) = 603930b41fa987fa7e5e709a40360a616eac231c 3SHA1 (synce-libsynce-0.9.1.tar.gz) = 603930b41fa987fa7e5e709a40360a616eac231c
4RMD160 (synce-libsynce-0.9.1.tar.gz) = a8c9d68196dec1b7555f56e8aab622a2817e1cf3 4RMD160 (synce-libsynce-0.9.1.tar.gz) = a8c9d68196dec1b7555f56e8aab622a2817e1cf3
5SHA512 (synce-libsynce-0.9.1.tar.gz) = 5ef1b77b06d6afc97e9918728d4fdeb9069650e43644abaf8fabdb0fd355c4352f008edd760ad6982d1b9a189656341d90c83f60f0930b02466c791e78aecafb 5SHA512 (synce-libsynce-0.9.1.tar.gz) = 5ef1b77b06d6afc97e9918728d4fdeb9069650e43644abaf8fabdb0fd355c4352f008edd760ad6982d1b9a189656341d90c83f60f0930b02466c791e78aecafb
6Size (synce-libsynce-0.9.1.tar.gz) = 356343 bytes 6Size (synce-libsynce-0.9.1.tar.gz) = 356343 bytes
7SHA1 (patch-aa) = bec59abf5b271c4f9a92af85a7cd3e3c19833d61 7SHA1 (patch-aa) = bec59abf5b271c4f9a92af85a7cd3e3c19833d61
8SHA1 (patch-ab) = 0f36a9f97706e26ae49569dda0d21a42cfdb63ec 8SHA1 (patch-ab) = 0f36a9f97706e26ae49569dda0d21a42cfdb63ec
 9SHA1 (patch-lib_files.c) = 4bc7d83e1ea3f83a103c7d5543c9cf3130e87aef

File Added: pkgsrc/comms/synce-libsynce/patches/patch-lib_files.c
$NetBSD: patch-lib_files.c,v 1.1 2020/08/18 01:46:07 tnn Exp $

files.c:128:35: error: '__builtin_snprintf' output may be truncated before the last format character [-Werror=format-truncation=]
  snprintf(buffer, sizeof(buffer), "%s/%s" , path, connection_filename);
                                   ^~~~~~~
files.c:128:2: note: '__builtin_snprintf' output 2 or more bytes (assuming 257) into a destination of size 256
  snprintf(buffer, sizeof(buffer), "%s/%s" , path, connection_filename);

--- lib/files.c.orig	2005-05-16 21:42:34.000000000 +0000
+++ lib/files.c
@@ -125,7 +125,8 @@ bool synce_get_connection_filename(char*
 	if (!synce_get_directory(&path))
 		goto exit;
 
-	snprintf(buffer, sizeof(buffer), "%s/%s" , path, connection_filename);
+	if (snprintf(buffer, sizeof(buffer), "%s/%s" , path, connection_filename) > (int)sizeof(buffer) - 1)
+		goto exit;
 	*filename = strdup(buffer);
 
 	success = true;