- /* TODO: Put in RSYNC_NAME at the start. */
-
- if ((size_t) len > sizeof(buf)-1)
- exit_cleanup(RERR_MESSAGEIO);
-
- sysmsg = strerror(errcode);
- sys_len = strlen(sysmsg);
- if ((size_t) len + 3 + sys_len > sizeof(buf) - 1)
+ if (len < sizeof buf) {
+ len += snprintf(buf + len, sizeof buf - len,
+ ": %s (%d)\n", strerror(errcode), errcode);
+ }
+ if (len >= sizeof buf)