summaryrefslogtreecommitdiff
path: root/scp.c
diff options
context:
space:
mode:
Diffstat (limited to 'scp.c')
-rw-r--r--scp.c36
1 files changed, 18 insertions, 18 deletions
diff --git a/scp.c b/scp.c
index 1cd0c55a4..81690609d 100644
--- a/scp.c
+++ b/scp.c
@@ -71,7 +71,7 @@
71 */ 71 */
72 72
73#include "includes.h" 73#include "includes.h"
74RCSID("$OpenBSD: scp.c,v 1.106 2003/06/12 15:34:09 nino Exp $"); 74RCSID("$OpenBSD: scp.c,v 1.107 2003/06/28 16:23:06 deraadt Exp $");
75 75
76#include "xmalloc.h" 76#include "xmalloc.h"
77#include "atomicio.h" 77#include "atomicio.h"
@@ -549,7 +549,7 @@ syserr: run_err("%s: %s", name, strerror(errno));
549 (void) snprintf(buf, sizeof buf, "T%lu 0 %lu 0\n", 549 (void) snprintf(buf, sizeof buf, "T%lu 0 %lu 0\n",
550 (u_long) stb.st_mtime, 550 (u_long) stb.st_mtime,
551 (u_long) stb.st_atime); 551 (u_long) stb.st_atime);
552 (void) atomicio(write, remout, buf, strlen(buf)); 552 (void) atomicio(vwrite, remout, buf, strlen(buf));
553 if (response() < 0) 553 if (response() < 0)
554 goto next; 554 goto next;
555 } 555 }
@@ -560,7 +560,7 @@ syserr: run_err("%s: %s", name, strerror(errno));
560 if (verbose_mode) { 560 if (verbose_mode) {
561 fprintf(stderr, "Sending file modes: %s", buf); 561 fprintf(stderr, "Sending file modes: %s", buf);
562 } 562 }
563 (void) atomicio(write, remout, buf, strlen(buf)); 563 (void) atomicio(vwrite, remout, buf, strlen(buf));
564 if (response() < 0) 564 if (response() < 0)
565 goto next; 565 goto next;
566 if ((bp = allocbuf(&buffer, fd, 2048)) == NULL) { 566 if ((bp = allocbuf(&buffer, fd, 2048)) == NULL) {
@@ -580,9 +580,9 @@ next: (void) close(fd);
580 haderr = result >= 0 ? EIO : errno; 580 haderr = result >= 0 ? EIO : errno;
581 } 581 }
582 if (haderr) 582 if (haderr)
583 (void) atomicio(write, remout, bp->buf, amt); 583 (void) atomicio(vwrite, remout, bp->buf, amt);
584 else { 584 else {
585 result = atomicio(write, remout, bp->buf, amt); 585 result = atomicio(vwrite, remout, bp->buf, amt);
586 if (result != amt) 586 if (result != amt)
587 haderr = result >= 0 ? EIO : errno; 587 haderr = result >= 0 ? EIO : errno;
588 statbytes += result; 588 statbytes += result;
@@ -596,7 +596,7 @@ next: (void) close(fd);
596 if (close(fd) < 0 && !haderr) 596 if (close(fd) < 0 && !haderr)
597 haderr = errno; 597 haderr = errno;
598 if (!haderr) 598 if (!haderr)
599 (void) atomicio(write, remout, "", 1); 599 (void) atomicio(vwrite, remout, "", 1);
600 else 600 else
601 run_err("%s: %s", name, strerror(haderr)); 601 run_err("%s: %s", name, strerror(haderr));
602 (void) response(); 602 (void) response();
@@ -623,7 +623,7 @@ rsource(char *name, struct stat *statp)
623 (void) snprintf(path, sizeof(path), "T%lu 0 %lu 0\n", 623 (void) snprintf(path, sizeof(path), "T%lu 0 %lu 0\n",
624 (u_long) statp->st_mtime, 624 (u_long) statp->st_mtime,
625 (u_long) statp->st_atime); 625 (u_long) statp->st_atime);
626 (void) atomicio(write, remout, path, strlen(path)); 626 (void) atomicio(vwrite, remout, path, strlen(path));
627 if (response() < 0) { 627 if (response() < 0) {
628 closedir(dirp); 628 closedir(dirp);
629 return; 629 return;
@@ -633,7 +633,7 @@ rsource(char *name, struct stat *statp)
633 (u_int) (statp->st_mode & FILEMODEMASK), 0, last); 633 (u_int) (statp->st_mode & FILEMODEMASK), 0, last);
634 if (verbose_mode) 634 if (verbose_mode)
635 fprintf(stderr, "Entering directory: %s", path); 635 fprintf(stderr, "Entering directory: %s", path);
636 (void) atomicio(write, remout, path, strlen(path)); 636 (void) atomicio(vwrite, remout, path, strlen(path));
637 if (response() < 0) { 637 if (response() < 0) {
638 closedir(dirp); 638 closedir(dirp);
639 return; 639 return;
@@ -652,7 +652,7 @@ rsource(char *name, struct stat *statp)
652 source(1, vect); 652 source(1, vect);
653 } 653 }
654 (void) closedir(dirp); 654 (void) closedir(dirp);
655 (void) atomicio(write, remout, "E\n", 2); 655 (void) atomicio(vwrite, remout, "E\n", 2);
656 (void) response(); 656 (void) response();
657} 657}
658 658
@@ -742,7 +742,7 @@ sink(int argc, char **argv)
742 if (targetshouldbedirectory) 742 if (targetshouldbedirectory)
743 verifydir(targ); 743 verifydir(targ);
744 744
745 (void) atomicio(write, remout, "", 1); 745 (void) atomicio(vwrite, remout, "", 1);
746 if (stat(targ, &stb) == 0 && S_ISDIR(stb.st_mode)) 746 if (stat(targ, &stb) == 0 && S_ISDIR(stb.st_mode))
747 targisdir = 1; 747 targisdir = 1;
748 for (first = 1;; first = 0) { 748 for (first = 1;; first = 0) {
@@ -760,7 +760,7 @@ sink(int argc, char **argv)
760 760
761 if (buf[0] == '\01' || buf[0] == '\02') { 761 if (buf[0] == '\01' || buf[0] == '\02') {
762 if (iamremote == 0) 762 if (iamremote == 0)
763 (void) atomicio(write, STDERR_FILENO, 763 (void) atomicio(vwrite, STDERR_FILENO,
764 buf + 1, strlen(buf + 1)); 764 buf + 1, strlen(buf + 1));
765 if (buf[0] == '\02') 765 if (buf[0] == '\02')
766 exit(1); 766 exit(1);
@@ -768,7 +768,7 @@ sink(int argc, char **argv)
768 continue; 768 continue;
769 } 769 }
770 if (buf[0] == 'E') { 770 if (buf[0] == 'E') {
771 (void) atomicio(write, remout, "", 1); 771 (void) atomicio(vwrite, remout, "", 1);
772 return; 772 return;
773 } 773 }
774 if (ch == '\n') 774 if (ch == '\n')
@@ -790,7 +790,7 @@ sink(int argc, char **argv)
790 atime.tv_usec = strtol(cp, &cp, 10); 790 atime.tv_usec = strtol(cp, &cp, 10);
791 if (!cp || *cp++ != '\0') 791 if (!cp || *cp++ != '\0')
792 SCREWUP("atime.usec not delimited"); 792 SCREWUP("atime.usec not delimited");
793 (void) atomicio(write, remout, "", 1); 793 (void) atomicio(vwrite, remout, "", 1);
794 continue; 794 continue;
795 } 795 }
796 if (*cp != 'C' && *cp != 'D') { 796 if (*cp != 'C' && *cp != 'D') {
@@ -875,7 +875,7 @@ sink(int argc, char **argv)
875bad: run_err("%s: %s", np, strerror(errno)); 875bad: run_err("%s: %s", np, strerror(errno));
876 continue; 876 continue;
877 } 877 }
878 (void) atomicio(write, remout, "", 1); 878 (void) atomicio(vwrite, remout, "", 1);
879 if ((bp = allocbuf(&buffer, ofd, 4096)) == NULL) { 879 if ((bp = allocbuf(&buffer, ofd, 4096)) == NULL) {
880 (void) close(ofd); 880 (void) close(ofd);
881 continue; 881 continue;
@@ -912,7 +912,7 @@ bad: run_err("%s: %s", np, strerror(errno));
912 if (count == bp->cnt) { 912 if (count == bp->cnt) {
913 /* Keep reading so we stay sync'd up. */ 913 /* Keep reading so we stay sync'd up. */
914 if (wrerr == NO) { 914 if (wrerr == NO) {
915 j = atomicio(write, ofd, bp->buf, count); 915 j = atomicio(vwrite, ofd, bp->buf, count);
916 if (j != count) { 916 if (j != count) {
917 wrerr = YES; 917 wrerr = YES;
918 wrerrno = j >= 0 ? EIO : errno; 918 wrerrno = j >= 0 ? EIO : errno;
@@ -925,7 +925,7 @@ bad: run_err("%s: %s", np, strerror(errno));
925 if (showprogress) 925 if (showprogress)
926 stop_progress_meter(); 926 stop_progress_meter();
927 if (count != 0 && wrerr == NO && 927 if (count != 0 && wrerr == NO &&
928 (j = atomicio(write, ofd, bp->buf, count)) != count) { 928 (j = atomicio(vwrite, ofd, bp->buf, count)) != count) {
929 wrerr = YES; 929 wrerr = YES;
930 wrerrno = j >= 0 ? EIO : errno; 930 wrerrno = j >= 0 ? EIO : errno;
931 } 931 }
@@ -970,7 +970,7 @@ bad: run_err("%s: %s", np, strerror(errno));
970 run_err("%s: %s", np, strerror(wrerrno)); 970 run_err("%s: %s", np, strerror(wrerrno));
971 break; 971 break;
972 case NO: 972 case NO:
973 (void) atomicio(write, remout, "", 1); 973 (void) atomicio(vwrite, remout, "", 1);
974 break; 974 break;
975 case DISPLAYED: 975 case DISPLAYED:
976 break; 976 break;
@@ -1005,7 +1005,7 @@ response(void)
1005 } while (cp < &rbuf[sizeof(rbuf) - 1] && ch != '\n'); 1005 } while (cp < &rbuf[sizeof(rbuf) - 1] && ch != '\n');
1006 1006
1007 if (!iamremote) 1007 if (!iamremote)
1008 (void) atomicio(write, STDERR_FILENO, rbuf, cp - rbuf); 1008 (void) atomicio(vwrite, STDERR_FILENO, rbuf, cp - rbuf);
1009 ++errs; 1009 ++errs;
1010 if (resp == 1) 1010 if (resp == 1)
1011 return (-1); 1011 return (-1);