On January 15, 2018 1:53 AM, Wayne Davison write: >I have made rsync 3.1.3pre1 available for testing. This release has a couple >security fixes, a few new features, and a smattering of bug fixes. >Please test this new release and send email to the rsync mailing list with any >questions, comments, or bug reports.
Incompatibility introduced at 3.1.3pre1. These are not present at master, which compiles cleanly. sys/file.h is not available outside LINUX, so the requirement for its use, including apparently, flist.c, sadly breaks the NonStop port. We were running off vanilla code until 16b4971 3.1.2, with only minor changes through 1f83b51. With this change, we can no longer build since NonStop is not Linux (it is POSIX compliant) and the internal kernel file tables are not available. I'm looking for an alternative to make this work because rsync is widely used on our platform and picking up the latest CVE is pretty important to us. I was hoping to contribute the port, but without a valid build/test... well, you know. The set compile errors (after removing the catastrophically missing sys/file.h) are mostly device related (makedev, major, minor) that sets a dependency to Linux only. The others, relating to time, can be fixed for the platform, but I'm just reporting them. cc -c99 -I. -I. -I./zlib -I./popt -g -DHAVE_CONFIG_H -c flist.c -o flist.o if ((uint32)major(rdev) == rdev_major) ^ "/home/git/rsync/flist.c", line 436: error(114): identifier "major" is undefined if (protocol_version < 30 && (uint32)minor(rdev) <= 0xFFu) ^ "/home/git/rsync/flist.c", line 440: error(114): identifier "minor" is undefined rdev = MAKEDEV(major(rdev), 0); ^ "/home/git/rsync/flist.c", line 449: error(114): identifier "makedev" is undefined rdev = MAKEDEV(major(rdev), 0); ^ "/home/git/rsync/flist.c", line 449: error(114): identifier "major" is undefined rdev = MAKEDEV(0, 0); ^ "/home/git/rsync/flist.c", line 455: error(114): identifier "makedev" is undefined write_varint30(f, major(rdev)); ^ "/home/git/rsync/flist.c", line 599: error(114): identifier "major" is undefined write_varint(f, minor(rdev)); ^ "/home/git/rsync/flist.c", line 601: error(114): identifier "minor" is undefined write_byte(f, minor(rdev)); ^ "/home/git/rsync/flist.c", line 603: error(114): identifier "minor" is undefined write_int(f, minor(rdev)); ^ "/home/git/rsync/flist.c", line 605: error(114): identifier "minor" is undefined rdev = MAKEDEV(DEV_MAJOR(devp), DEV_MINOR(devp)); ^ "/home/git/rsync/flist.c", line 770: error(114): identifier "makedev" is undefined rdev = MAKEDEV(rdev_major, rdev_minor); ^ "/home/git/rsync/flist.c", line 845: error(114): identifier "makedev" is undefined rdev = MAKEDEV(0, 0); ^ "/home/git/rsync/flist.c", line 851: error(114): identifier "makedev" is undefined DEV_MAJOR(devp) = major(rdev); ^ "/home/git/rsync/flist.c", line 1008: error(114): identifier "major" is undefined DEV_MINOR(devp) = minor(rdev); ^ "/home/git/rsync/flist.c", line 1009: error(114): identifier "minor" is undefined cc -c99 -I. -I. -I./zlib -I./popt -g -DHAVE_CONFIG_H -c generator.c -o generator.o if (sxp->st.st_rdev != MAKEDEV(DEV_MAJOR(devp), DEV_MINOR(devp))) ^ "/home/git/rsync/generator.c", line 1049: error(114): identifier "makedev" is undefined DEV_MAJOR(devp) = major(real_sx.st.st_dev); ^ "/home/git/rsync/generator.c", line 1476: error(114): identifier "major" is undefined DEV_MINOR(devp) = minor(real_sx.st.st_dev); ^ "/home/git/rsync/generator.c", line 1477: error(114): identifier "minor" is undefined if (atomic_create(file, fname, sl, NULL, MAKEDEV(0, 0), &sx, statret == 0 ? DEL_FOR_SYMLINK : 0)) { ^ "/home/git/rsync/generator.c", line 1558: error(114): identifier "makedev" is undefined rdev = MAKEDEV(DEV_MAJOR(devp), DEV_MINOR(devp)); ^ "/home/git/rsync/generator.c", line 1588: error(114): identifier "makedev" is undefined (long)major(rdev), (long)minor(rdev)); ^ "/home/git/rsync/generator.c", line 1637: error(114): identifier "major" is undefined (long)major(rdev), (long)minor(rdev)); ^ "/home/git/rsync/generator.c", line 1637: error(114): identifier "minor" is undefined dirdev = MAKEDEV(DEV_MAJOR(devp), DEV_MINOR(devp)); ^ "/home/git/rsync/generator.c", line 2252: error(114): identifier "makedev" is undefined dirdev = MAKEDEV(0, 0); ^ "/home/git/rsync/generator.c", line 2254: error(114): identifier "makedev" is undefined cc -c99 -I. -I. -I./zlib -I./popt -g -DHAVE_CONFIG_H -c syscall.c -o syscall.o return utime(fname, t); ^ "/home/git/rsync/syscall.c", line 448: error(252): argument of type "time_t *" is incompatible with parameter of type "const struct utimbuf *" cc -c99 -I. -I. -I./zlib -I./popt -g -DHAVE_CONFIG_H -c hlink.c -o hlink.o if (atomic_create(file, fname, NULL, oldname, MAKEDEV(0, 0), sxp, statret == 0 ? DEL_FOR_FILE : 0)) { ^ "/home/git/rsync/hlink.c", line 234: error(114): identifier "makedev" is undefined cc -c99 -I. -I. -I./zlib -I./popt -g -DHAVE_CONFIG_H -c lib/compat.c -o lib/compat.o return gettimeofday(tv); ^ "/home/git/rsync/lib/compat.c", line 154: error(250): too few arguments in function call Assistance requested. Cheers, Randall -- Brief whoami: NonStop developer since approximately NonStop(211288444200000000) UNIX developer since approximately 421664400 -- In my real life, I talk too much. -- Please use reply-all for most replies to avoid omitting the mailing list. To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html