$ diff -u client/original.client.c client/client.c --- client/original.client.c 2006-05-13 10:47:58.000000000 +0200 +++ client/client.c 2006-05-13 11:06:25.000000000 +0200 @@ -1237,9 +1237,13 @@ ret = cli_write(targetcli, fnum, 0, buf, nread + start, n); if (n != ret) { - d_printf("Error writing file: %s\n", cli_errstr(cli)); - rc = 1; - break; + /* before giving-up, lets try another way - RMCG */ + ret = cli_smbwrite(targetcli, fnum, buf, nread + start, n); + if (n != ret) { + d_printf("Error writing file: %s\n", cli_errstr(cli)); + rc = 1; + break; + } } nread += n;