Patch from Matt Kraai to enable proxy support.
[oweals/busybox.git] / dd.c
diff --git a/dd.c b/dd.c
index 2b77ea6a587a6882275f54310fa869eecd8f573f..626b54898404b2d478b8f782c772b023d4a29c02 100644 (file)
--- a/dd.c
+++ b/dd.c
@@ -71,28 +71,28 @@ extern int dd_main(int argc, char **argv)
                else if (outFile == NULL && (strncmp(*argv, "of", 2) == 0))
                        outFile = ((strchr(*argv, '=')) + 1);
                else if (strncmp("count", *argv, 5) == 0) {
-                       count = getNum((strchr(*argv, '=')) + 1);
+                       count = atoi_w_units((strchr(*argv, '=')) + 1);
                        if (count < 0) {
-                               errorMsg("Bad count value %s\n", *argv);
+                               error_msg("Bad count value %s\n", *argv);
                                goto usage;
                        }
                } else if (strncmp(*argv, "bs", 2) == 0) {
-                       blockSize = getNum((strchr(*argv, '=')) + 1);
+                       blockSize = atoi_w_units((strchr(*argv, '=')) + 1);
                        if (blockSize <= 0) {
-                               errorMsg("Bad block size value %s\n", *argv);
+                               error_msg("Bad block size value %s\n", *argv);
                                goto usage;
                        }
                } else if (strncmp(*argv, "skip", 4) == 0) {
-                       skipBlocks = getNum((strchr(*argv, '=')) + 1);
+                       skipBlocks = atoi_w_units((strchr(*argv, '=')) + 1);
                        if (skipBlocks <= 0) {
-                               errorMsg("Bad skip value %s\n", *argv);
+                               error_msg("Bad skip value %s\n", *argv);
                                goto usage;
                        }
 
                } else if (strncmp(*argv, "seek", 4) == 0) {
-                       seekBlocks = getNum((strchr(*argv, '=')) + 1);
+                       seekBlocks = atoi_w_units((strchr(*argv, '=')) + 1);
                        if (seekBlocks <= 0) {
-                               errorMsg("Bad seek value %s\n", *argv);
+                               error_msg("Bad seek value %s\n", *argv);
                                goto usage;
                        }
                } else if (strncmp(*argv, "conv", 4) == 0) {
@@ -119,7 +119,7 @@ extern int dd_main(int argc, char **argv)
                 * here anyways... */
 
                /* free(buf); */
-               fatalPerror("%s", inFile);
+               perror_msg_and_die("%s", inFile);
        }
 
        if (outFile == NULL)
@@ -134,7 +134,7 @@ extern int dd_main(int argc, char **argv)
 
                /* close(inFd);
                   free(buf); */
-               fatalPerror("%s", outFile);
+               perror_msg_and_die("%s", outFile);
        }
 
        lseek(inFd, (off_t) (skipBlocks * blockSize), SEEK_SET);
@@ -146,13 +146,13 @@ extern int dd_main(int argc, char **argv)
                ibs=BUFSIZ;
                        
        while (totalSize > outTotal) {
-               inCc = fullRead(inFd, buf, ibs);
+               inCc = full_read(inFd, buf, ibs);
                inTotal += inCc;
                if ( (sync==TRUE) && (inCc>0) )
                        while (inCc<ibs)
                                buf[inCc++]='\0';
 
-               if ((outCc = fullWrite(outFd, buf, inCc)) < 1){
+               if ((outCc = full_write(outFd, buf, inCc)) < 1){
                        if (outCc < 0 ){
                                perror("Error during write");
                        }
@@ -174,7 +174,7 @@ extern int dd_main(int argc, char **argv)
                   (inTotal % blockSize) != 0);
        printf("%ld+%d records out\n", (long) (outTotal / blockSize),
                   (outTotal % blockSize) != 0);
-       exit(TRUE);
+       return EXIT_SUCCESS;
   usage:
 
        usage(dd_usage);