Last call, convert your oldebcdic tapes (not to be confused with old
ebcdic tapes) now before it's too late.



Index: args.c
===================================================================
RCS file: /cvs/src/bin/dd/args.c,v
retrieving revision 1.23
diff -u -p -r1.23 args.c
--- args.c      24 Mar 2014 21:42:41 -0000      1.23
+++ args.c      24 Mar 2014 21:56:08 -0000
@@ -275,9 +275,6 @@ static const struct conv {
        { "ebcdic",     C_EBCDIC,       C_ASCII,        a2e_POSIX },
        { "ibm",        C_EBCDIC,       C_ASCII,        a2ibm_POSIX },
        { "lcase",      C_LCASE,        C_UCASE,        NULL },
-       { "oldascii",   C_ASCII,        C_EBCDIC,       e2a_32V },
-       { "oldebcdic",  C_EBCDIC,       C_ASCII,        a2e_32V },
-       { "oldibm",     C_EBCDIC,       C_ASCII,        a2ibm_32V },
        { "osync",      C_OSYNC,        C_BS,           NULL },
        { "swab",       C_SWAB,         0,              NULL },
        { "sync",       C_SYNC,         0,              NULL },
Index: conv_tab.c
===================================================================
RCS file: /cvs/src/bin/dd/conv_tab.c,v
retrieving revision 1.5
diff -u -p -r1.5 conv_tab.c
--- conv_tab.c  27 Oct 2009 23:59:21 -0000      1.5
+++ conv_tab.c  24 Mar 2014 21:56:08 -0000
@@ -37,11 +37,7 @@
 #include <sys/types.h>
 
 /*
- * There are currently six tables:
- *
- *     ebcdic          -> ascii        32V             conv=oldascii
- *     ascii           -> ebcdic       32V             conv=oldebcdic
- *     ascii           -> ibm ebcdic   32V             conv=oldibm
+ * There are currently three tables:
  *
  *     ebcdic          -> ascii        POSIX/S5        conv=ascii
  *     ascii           -> ebcdic       POSIX/S5        conv=ebcdic
@@ -52,8 +48,7 @@
  *
  * Tables used for conversions to/from IBM and EBCDIC to support an extension
  * to POSIX P1003.2/D11. The tables referencing POSIX contain data extracted
- * from tables 4-3 and 4-4 in P1003.2/Draft 11.  The historic tables were
- * constructed by running against a file with all possible byte values.
+ * from tables 4-3 and 4-4 in P1003.2/Draft 11.
  *
  * More information can be obtained in "Correspondences of 8-Bit and Hollerith
  * Codes for Computer Environments-A USASI Tutorial", Communications of the
@@ -61,114 +56,6 @@
  */
 
 u_char casetab[256];
-
-/* EBCDIC to ASCII -- 32V compatible. */
-const u_char e2a_32V[] = {
-       0000, 0001, 0002, 0003, 0234, 0011, 0206, 0177,         /* 0000 */
-       0227, 0215, 0216, 0013, 0014, 0015, 0016, 0017,         /* 0010 */
-       0020, 0021, 0022, 0023, 0235, 0205, 0010, 0207,         /* 0020 */
-       0030, 0031, 0222, 0217, 0034, 0035, 0036, 0037,         /* 0030 */
-       0200, 0201, 0202, 0203, 0204, 0012, 0027, 0033,         /* 0040 */
-       0210, 0211, 0212, 0213, 0214, 0005, 0006, 0007,         /* 0050 */
-       0220, 0221, 0026, 0223, 0224, 0225, 0226, 0004,         /* 0060 */
-       0230, 0231, 0232, 0233, 0024, 0025, 0236, 0032,         /* 0070 */
-       0040, 0240, 0241, 0242, 0243, 0244, 0245, 0246,         /* 0100 */
-       0247, 0250, 0133, 0056, 0074, 0050, 0053, 0041,         /* 0110 */
-       0046, 0251, 0252, 0253, 0254, 0255, 0256, 0257,         /* 0120 */
-       0260, 0261, 0135, 0044, 0052, 0051, 0073, 0136,         /* 0130 */
-       0055, 0057, 0262, 0263, 0264, 0265, 0266, 0267,         /* 0140 */
-       0270, 0271, 0174, 0054, 0045, 0137, 0076, 0077,         /* 0150 */
-       0272, 0273, 0274, 0275, 0276, 0277, 0300, 0301,         /* 0160 */
-       0302, 0140, 0072, 0043, 0100, 0047, 0075, 0042,         /* 0170 */
-       0303, 0141, 0142, 0143, 0144, 0145, 0146, 0147,         /* 0200 */
-       0150, 0151, 0304, 0305, 0306, 0307, 0310, 0311,         /* 0210 */
-       0312, 0152, 0153, 0154, 0155, 0156, 0157, 0160,         /* 0220 */
-       0161, 0162, 0313, 0314, 0315, 0316, 0317, 0320,         /* 0230 */
-       0321, 0176, 0163, 0164, 0165, 0166, 0167, 0170,         /* 0240 */
-       0171, 0172, 0322, 0323, 0324, 0325, 0326, 0327,         /* 0250 */
-       0330, 0331, 0332, 0333, 0334, 0335, 0336, 0337,         /* 0260 */
-       0340, 0341, 0342, 0343, 0344, 0345, 0346, 0347,         /* 0270 */
-       0173, 0101, 0102, 0103, 0104, 0105, 0106, 0107,         /* 0300 */
-       0110, 0111, 0350, 0351, 0352, 0353, 0354, 0355,         /* 0310 */
-       0175, 0112, 0113, 0114, 0115, 0116, 0117, 0120,         /* 0320 */
-       0121, 0122, 0356, 0357, 0360, 0361, 0362, 0363,         /* 0330 */
-       0134, 0237, 0123, 0124, 0125, 0126, 0127, 0130,         /* 0340 */
-       0131, 0132, 0364, 0365, 0366, 0367, 0370, 0371,         /* 0350 */
-       0060, 0061, 0062, 0063, 0064, 0065, 0066, 0067,         /* 0360 */
-       0070, 0071, 0372, 0373, 0374, 0375, 0376, 0377,         /* 0370 */
-};
-
-/* ASCII to EBCDIC -- 32V compatible. */
-const u_char a2e_32V[] = {
-       0000, 0001, 0002, 0003, 0067, 0055, 0056, 0057,         /* 0000 */
-       0026, 0005, 0045, 0013, 0014, 0015, 0016, 0017,         /* 0010 */
-       0020, 0021, 0022, 0023, 0074, 0075, 0062, 0046,         /* 0020 */
-       0030, 0031, 0077, 0047, 0034, 0035, 0036, 0037,         /* 0030 */
-       0100, 0117, 0177, 0173, 0133, 0154, 0120, 0175,         /* 0040 */
-       0115, 0135, 0134, 0116, 0153, 0140, 0113, 0141,         /* 0050 */
-       0360, 0361, 0362, 0363, 0364, 0365, 0366, 0367,         /* 0060 */
-       0370, 0371, 0172, 0136, 0114, 0176, 0156, 0157,         /* 0070 */
-       0174, 0301, 0302, 0303, 0304, 0305, 0306, 0307,         /* 0100 */
-       0310, 0311, 0321, 0322, 0323, 0324, 0325, 0326,         /* 0110 */
-       0327, 0330, 0331, 0342, 0343, 0344, 0345, 0346,         /* 0120 */
-       0347, 0350, 0351, 0112, 0340, 0132, 0137, 0155,         /* 0130 */
-       0171, 0201, 0202, 0203, 0204, 0205, 0206, 0207,         /* 0140 */
-       0210, 0211, 0221, 0222, 0223, 0224, 0225, 0226,         /* 0150 */
-       0227, 0230, 0231, 0242, 0243, 0244, 0245, 0246,         /* 0160 */
-       0247, 0250, 0251, 0300, 0152, 0320, 0241, 0007,         /* 0170 */
-       0040, 0041, 0042, 0043, 0044, 0025, 0006, 0027,         /* 0200 */
-       0050, 0051, 0052, 0053, 0054, 0011, 0012, 0033,         /* 0210 */
-       0060, 0061, 0032, 0063, 0064, 0065, 0066, 0010,         /* 0220 */
-       0070, 0071, 0072, 0073, 0004, 0024, 0076, 0341,         /* 0230 */
-       0101, 0102, 0103, 0104, 0105, 0106, 0107, 0110,         /* 0240 */
-       0111, 0121, 0122, 0123, 0124, 0125, 0126, 0127,         /* 0250 */
-       0130, 0131, 0142, 0143, 0144, 0145, 0146, 0147,         /* 0260 */
-       0150, 0151, 0160, 0161, 0162, 0163, 0164, 0165,         /* 0270 */
-       0166, 0167, 0170, 0200, 0212, 0213, 0214, 0215,         /* 0300 */
-       0216, 0217, 0220, 0232, 0233, 0234, 0235, 0236,         /* 0310 */
-       0237, 0240, 0252, 0253, 0254, 0255, 0256, 0257,         /* 0320 */
-       0260, 0261, 0262, 0263, 0264, 0265, 0266, 0267,         /* 0330 */
-       0270, 0271, 0272, 0273, 0274, 0275, 0276, 0277,         /* 0340 */
-       0312, 0313, 0314, 0315, 0316, 0317, 0332, 0333,         /* 0350 */
-       0334, 0335, 0336, 0337, 0352, 0353, 0354, 0355,         /* 0360 */
-       0356, 0357, 0372, 0373, 0374, 0375, 0376, 0377,         /* 0370 */
-};
-
-/* ASCII to IBM EBCDIC -- 32V compatible. */
-const u_char a2ibm_32V[] = {
-       0000, 0001, 0002, 0003, 0067, 0055, 0056, 0057,         /* 0000 */
-       0026, 0005, 0045, 0013, 0014, 0015, 0016, 0017,         /* 0010 */
-       0020, 0021, 0022, 0023, 0074, 0075, 0062, 0046,         /* 0020 */
-       0030, 0031, 0077, 0047, 0034, 0035, 0036, 0037,         /* 0030 */
-       0100, 0132, 0177, 0173, 0133, 0154, 0120, 0175,         /* 0040 */
-       0115, 0135, 0134, 0116, 0153, 0140, 0113, 0141,         /* 0050 */
-       0360, 0361, 0362, 0363, 0364, 0365, 0366, 0367,         /* 0060 */
-       0370, 0371, 0172, 0136, 0114, 0176, 0156, 0157,         /* 0070 */
-       0174, 0301, 0302, 0303, 0304, 0305, 0306, 0307,         /* 0100 */
-       0310, 0311, 0321, 0322, 0323, 0324, 0325, 0326,         /* 0110 */
-       0327, 0330, 0331, 0342, 0343, 0344, 0345, 0346,         /* 0120 */
-       0347, 0350, 0351, 0255, 0340, 0275, 0137, 0155,         /* 0130 */
-       0171, 0201, 0202, 0203, 0204, 0205, 0206, 0207,         /* 0140 */
-       0210, 0211, 0221, 0222, 0223, 0224, 0225, 0226,         /* 0150 */
-       0227, 0230, 0231, 0242, 0243, 0244, 0245, 0246,         /* 0160 */
-       0247, 0250, 0251, 0300, 0117, 0320, 0241, 0007,         /* 0170 */
-       0040, 0041, 0042, 0043, 0044, 0025, 0006, 0027,         /* 0200 */
-       0050, 0051, 0052, 0053, 0054, 0011, 0012, 0033,         /* 0210 */
-       0060, 0061, 0032, 0063, 0064, 0065, 0066, 0010,         /* 0220 */
-       0070, 0071, 0072, 0073, 0004, 0024, 0076, 0341,         /* 0230 */
-       0101, 0102, 0103, 0104, 0105, 0106, 0107, 0110,         /* 0240 */
-       0111, 0121, 0122, 0123, 0124, 0125, 0126, 0127,         /* 0250 */
-       0130, 0131, 0142, 0143, 0144, 0145, 0146, 0147,         /* 0260 */
-       0150, 0151, 0160, 0161, 0162, 0163, 0164, 0165,         /* 0270 */
-       0166, 0167, 0170, 0200, 0212, 0213, 0214, 0215,         /* 0300 */
-       0216, 0217, 0220, 0232, 0233, 0234, 0235, 0236,         /* 0310 */
-       0237, 0240, 0252, 0253, 0254, 0255, 0256, 0257,         /* 0320 */
-       0260, 0261, 0262, 0263, 0264, 0265, 0266, 0267,         /* 0330 */
-       0270, 0271, 0272, 0273, 0274, 0275, 0276, 0277,         /* 0340 */
-       0312, 0313, 0314, 0315, 0316, 0317, 0332, 0333,         /* 0350 */
-       0334, 0335, 0336, 0337, 0352, 0353, 0354, 0355,         /* 0360 */
-       0356, 0357, 0372, 0373, 0374, 0375, 0376, 0377,         /* 0370 */
-};
 
 /* EBCDIC to ASCII -- POSIX and System V compatible. */
 const u_char e2a_POSIX[] = {
Index: dd.1
===================================================================
RCS file: /cvs/src/bin/dd/dd.1,v
retrieving revision 1.30
diff -u -p -r1.30 dd.1
--- dd.1        24 Mar 2014 21:42:41 -0000      1.30
+++ dd.1        24 Mar 2014 21:56:08 -0000
@@ -201,7 +201,7 @@ Input records shorter than the conversio
 Input records longer than the conversion record size are truncated.
 The number of truncated input records, if any, is reported to the standard
 error output at the completion of the copy.
-.It Cm ebcdic , ibm , oldebcdic , oldibm
+.It Cm ebcdic , ibm
 The same as the
 .Cm block
 value except that characters are translated from
@@ -215,7 +215,7 @@ records are converted.
 if the operand
 .Cm cbs
 is also specified.)
-There are four conversion maps for
+There are two conversion maps for
 .Tn EBCDIC .
 The value
 .Cm ebcdic
@@ -227,15 +227,6 @@ is a slightly different mapping, which i
 .At V
 .Cm ibm
 value.
-The values
-.Cm oldebcdic
-and
-.Cm oldibm
-are maps used in historic
-.At
-and
-.Pf pre- Bx 4.3 Reno
-systems.
 .It Cm lcase
 Transform uppercase characters into lowercase characters.
 .It Cm noerror
@@ -397,20 +388,18 @@ The
 and
 .Cm status
 operands,
-the conversions
-.Cm oldascii ,
-.Cm oldebcdic ,
-.Cm oldibm ,
-and
-.Cm osync ,
-the size multipliers
+the
+.Cm osync
+conversion,
+the
 .Sq K ,
 .Sq m ,
 .Sq M ,
 .Sq g ,
 .Sq G ,
 and
-.Sq w ,
+.Sq w
+size multipliers
 and
 .Dv SIGINFO
 handling
Index: extern.h
===================================================================
RCS file: /cvs/src/bin/dd/extern.h,v
retrieving revision 1.8
diff -u -p -r1.8 extern.h
--- extern.h    4 Dec 2012 02:27:00 -0000       1.8
+++ extern.h    24 Mar 2014 21:56:08 -0000
@@ -58,7 +58,7 @@ extern size_t cbsz;
 extern u_int ddflags;
 extern size_t files_cnt;
 extern const u_char *ctab;
-extern const u_char a2e_32V[], a2e_POSIX[];
-extern const u_char e2a_32V[], e2a_POSIX[];
-extern const u_char a2ibm_32V[], a2ibm_POSIX[];
+extern const u_char a2e_POSIX[];
+extern const u_char e2a_POSIX[];
+extern const u_char a2ibm_POSIX[];
 extern u_char casetab[];



Reply via email to