The fifth and sixth arguments to upload_dir_internal() are swapped. 1520- } else if (S_ISDIR(sb.st_mode)) { 1521- if (strcmp(filename, ".") == 0 || 1522- strcmp(filename, "..") == 0) 1523- continue; 1524- 1525: if (upload_dir_internal(conn, new_src, new_dst, 1526- pflag, depth + 1, printflag) == -1) 1527- ret = -1; 1528- } else if (S_ISREG(sb.st_mode)) { 1529- if (do_upload(conn, new_src, new_dst, pflag) == -1) { 1530- error("Uploading of file %s to %s failed!",
oops, fix committed and will be in openssh-5.6. Thanks again.
With the release of OpenSSH 5.6p1 this bug is now considered closed. If you have further problems please reopen or file a new bug as appropriate.