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[];