+ // 6453525 and 34848916 require us to limit our blocksize to resonable values.
+ if ((size_t) s->sb.st_size < iBlocksize && iMinblocksize > 0) {
+ copyfile_debug(3, "rounding up block size from fsize: %lld to multiple of %zu\n", s->sb.st_size, iMinblocksize);
+ iBlocksize = roundup((size_t) s->sb.st_size, iMinblocksize);
+ oBlocksize = MIN(oBlocksize, iBlocksize);
+ }
+
+ if (iBlocksize > blocksize_limit) {
+ iBlocksize = blocksize_limit;
+ oBlocksize = MIN(oBlocksize, iBlocksize);
+ }
+
+ copyfile_debug(3, "input block size: %zu output block size: %zu\n", iBlocksize, oBlocksize);
+