1 // SPDX-License-Identifier: GPL-2.0-or-later 1 // SPDX-License-Identifier: GPL-2.0-or-later 2 /* 2 /* 3 * Common lookup tables for CAST-128 (cast5) a 3 * Common lookup tables for CAST-128 (cast5) and CAST-256 (cast6) 4 * 4 * 5 * Copyright © 1998, 1999, 2000, 2001 Free So 5 * Copyright © 1998, 1999, 2000, 2001 Free Software Foundation, Inc. 6 * Copyright © 2003 Kartikey Mahendra Bhatt < 6 * Copyright © 2003 Kartikey Mahendra Bhatt <kartik_me@hotmail.com> 7 * Copyright © 2012 Jussi Kivilinna <jussi.ki 7 * Copyright © 2012 Jussi Kivilinna <jussi.kivilinna@mbnet.fi> 8 */ 8 */ 9 9 10 #include <linux/module.h> 10 #include <linux/module.h> 11 #include <crypto/cast_common.h> 11 #include <crypto/cast_common.h> 12 12 13 __visible const u32 cast_s1[256] = { 13 __visible const u32 cast_s1[256] = { 14 0x30fb40d4, 0x9fa0ff0b, 0x6beccd2f, 0x 14 0x30fb40d4, 0x9fa0ff0b, 0x6beccd2f, 0x3f258c7a, 0x1e213f2f, 15 0x9c004dd3, 0x6003e540, 0xcf9fc949, 15 0x9c004dd3, 0x6003e540, 0xcf9fc949, 16 0xbfd4af27, 0x88bbbdb5, 0xe2034090, 0x 16 0xbfd4af27, 0x88bbbdb5, 0xe2034090, 0x98d09675, 0x6e63a0e0, 17 0x15c361d2, 0xc2e7661d, 0x22d4ff8e, 17 0x15c361d2, 0xc2e7661d, 0x22d4ff8e, 18 0x28683b6f, 0xc07fd059, 0xff2379c8, 0x 18 0x28683b6f, 0xc07fd059, 0xff2379c8, 0x775f50e2, 0x43c340d3, 19 0xdf2f8656, 0x887ca41a, 0xa2d2bd2d, 19 0xdf2f8656, 0x887ca41a, 0xa2d2bd2d, 20 0xa1c9e0d6, 0x346c4819, 0x61b76d87, 0x 20 0xa1c9e0d6, 0x346c4819, 0x61b76d87, 0x22540f2f, 0x2abe32e1, 21 0xaa54166b, 0x22568e3a, 0xa2d341d0, 21 0xaa54166b, 0x22568e3a, 0xa2d341d0, 22 0x66db40c8, 0xa784392f, 0x004dff2f, 0x 22 0x66db40c8, 0xa784392f, 0x004dff2f, 0x2db9d2de, 0x97943fac, 23 0x4a97c1d8, 0x527644b7, 0xb5f437a7, 23 0x4a97c1d8, 0x527644b7, 0xb5f437a7, 24 0xb82cbaef, 0xd751d159, 0x6ff7f0ed, 0x 24 0xb82cbaef, 0xd751d159, 0x6ff7f0ed, 0x5a097a1f, 0x827b68d0, 25 0x90ecf52e, 0x22b0c054, 0xbc8e5935, 25 0x90ecf52e, 0x22b0c054, 0xbc8e5935, 26 0x4b6d2f7f, 0x50bb64a2, 0xd2664910, 0x 26 0x4b6d2f7f, 0x50bb64a2, 0xd2664910, 0xbee5812d, 0xb7332290, 27 0xe93b159f, 0xb48ee411, 0x4bff345d, 27 0xe93b159f, 0xb48ee411, 0x4bff345d, 28 0xfd45c240, 0xad31973f, 0xc4f6d02e, 0x 28 0xfd45c240, 0xad31973f, 0xc4f6d02e, 0x55fc8165, 0xd5b1caad, 29 0xa1ac2dae, 0xa2d4b76d, 0xc19b0c50, 29 0xa1ac2dae, 0xa2d4b76d, 0xc19b0c50, 30 0x882240f2, 0x0c6e4f38, 0xa4e4bfd7, 0x 30 0x882240f2, 0x0c6e4f38, 0xa4e4bfd7, 0x4f5ba272, 0x564c1d2f, 31 0xc59c5319, 0xb949e354, 0xb04669fe, 31 0xc59c5319, 0xb949e354, 0xb04669fe, 32 0xb1b6ab8a, 0xc71358dd, 0x6385c545, 0x 32 0xb1b6ab8a, 0xc71358dd, 0x6385c545, 0x110f935d, 0x57538ad5, 33 0x6a390493, 0xe63d37e0, 0x2a54f6b3, 33 0x6a390493, 0xe63d37e0, 0x2a54f6b3, 34 0x3a787d5f, 0x6276a0b5, 0x19a6fcdf, 0x 34 0x3a787d5f, 0x6276a0b5, 0x19a6fcdf, 0x7a42206a, 0x29f9d4d5, 35 0xf61b1891, 0xbb72275e, 0xaa508167, 35 0xf61b1891, 0xbb72275e, 0xaa508167, 36 0x38901091, 0xc6b505eb, 0x84c7cb8c, 0x 36 0x38901091, 0xc6b505eb, 0x84c7cb8c, 0x2ad75a0f, 0x874a1427, 37 0xa2d1936b, 0x2ad286af, 0xaa56d291, 37 0xa2d1936b, 0x2ad286af, 0xaa56d291, 38 0xd7894360, 0x425c750d, 0x93b39e26, 0x 38 0xd7894360, 0x425c750d, 0x93b39e26, 0x187184c9, 0x6c00b32d, 39 0x73e2bb14, 0xa0bebc3c, 0x54623779, 39 0x73e2bb14, 0xa0bebc3c, 0x54623779, 40 0x64459eab, 0x3f328b82, 0x7718cf82, 0x 40 0x64459eab, 0x3f328b82, 0x7718cf82, 0x59a2cea6, 0x04ee002e, 41 0x89fe78e6, 0x3fab0950, 0x325ff6c2, 41 0x89fe78e6, 0x3fab0950, 0x325ff6c2, 42 0x81383f05, 0x6963c5c8, 0x76cb5ad6, 0x 42 0x81383f05, 0x6963c5c8, 0x76cb5ad6, 0xd49974c9, 0xca180dcf, 43 0x380782d5, 0xc7fa5cf6, 0x8ac31511, 43 0x380782d5, 0xc7fa5cf6, 0x8ac31511, 44 0x35e79e13, 0x47da91d0, 0xf40f9086, 0x 44 0x35e79e13, 0x47da91d0, 0xf40f9086, 0xa7e2419e, 0x31366241, 45 0x051ef495, 0xaa573b04, 0x4a805d8d, 45 0x051ef495, 0xaa573b04, 0x4a805d8d, 46 0x548300d0, 0x00322a3c, 0xbf64cddf, 0x 46 0x548300d0, 0x00322a3c, 0xbf64cddf, 0xba57a68e, 0x75c6372b, 47 0x50afd341, 0xa7c13275, 0x915a0bf5, 47 0x50afd341, 0xa7c13275, 0x915a0bf5, 48 0x6b54bfab, 0x2b0b1426, 0xab4cc9d7, 0x 48 0x6b54bfab, 0x2b0b1426, 0xab4cc9d7, 0x449ccd82, 0xf7fbf265, 49 0xab85c5f3, 0x1b55db94, 0xaad4e324, 49 0xab85c5f3, 0x1b55db94, 0xaad4e324, 50 0xcfa4bd3f, 0x2deaa3e2, 0x9e204d02, 0x 50 0xcfa4bd3f, 0x2deaa3e2, 0x9e204d02, 0xc8bd25ac, 0xeadf55b3, 51 0xd5bd9e98, 0xe31231b2, 0x2ad5ad6c, 51 0xd5bd9e98, 0xe31231b2, 0x2ad5ad6c, 52 0x954329de, 0xadbe4528, 0xd8710f69, 0x 52 0x954329de, 0xadbe4528, 0xd8710f69, 0xaa51c90f, 0xaa786bf6, 53 0x22513f1e, 0xaa51a79b, 0x2ad344cc, 53 0x22513f1e, 0xaa51a79b, 0x2ad344cc, 54 0x7b5a41f0, 0xd37cfbad, 0x1b069505, 0x 54 0x7b5a41f0, 0xd37cfbad, 0x1b069505, 0x41ece491, 0xb4c332e6, 55 0x032268d4, 0xc9600acc, 0xce387e6d, 55 0x032268d4, 0xc9600acc, 0xce387e6d, 56 0xbf6bb16c, 0x6a70fb78, 0x0d03d9c9, 0x 56 0xbf6bb16c, 0x6a70fb78, 0x0d03d9c9, 0xd4df39de, 0xe01063da, 57 0x4736f464, 0x5ad328d8, 0xb347cc96, 57 0x4736f464, 0x5ad328d8, 0xb347cc96, 58 0x75bb0fc3, 0x98511bfb, 0x4ffbcc35, 0x 58 0x75bb0fc3, 0x98511bfb, 0x4ffbcc35, 0xb58bcf6a, 0xe11f0abc, 59 0xbfc5fe4a, 0xa70aec10, 0xac39570a, 59 0xbfc5fe4a, 0xa70aec10, 0xac39570a, 60 0x3f04442f, 0x6188b153, 0xe0397a2e, 0x 60 0x3f04442f, 0x6188b153, 0xe0397a2e, 0x5727cb79, 0x9ceb418f, 61 0x1cacd68d, 0x2ad37c96, 0x0175cb9d, 61 0x1cacd68d, 0x2ad37c96, 0x0175cb9d, 62 0xc69dff09, 0xc75b65f0, 0xd9db40d8, 0x 62 0xc69dff09, 0xc75b65f0, 0xd9db40d8, 0xec0e7779, 0x4744ead4, 63 0xb11c3274, 0xdd24cb9e, 0x7e1c54bd, 63 0xb11c3274, 0xdd24cb9e, 0x7e1c54bd, 64 0xf01144f9, 0xd2240eb1, 0x9675b3fd, 0x 64 0xf01144f9, 0xd2240eb1, 0x9675b3fd, 0xa3ac3755, 0xd47c27af, 65 0x51c85f4d, 0x56907596, 0xa5bb15e6, 65 0x51c85f4d, 0x56907596, 0xa5bb15e6, 66 0x580304f0, 0xca042cf1, 0x011a37ea, 0x 66 0x580304f0, 0xca042cf1, 0x011a37ea, 0x8dbfaadb, 0x35ba3e4a, 67 0x3526ffa0, 0xc37b4d09, 0xbc306ed9, 67 0x3526ffa0, 0xc37b4d09, 0xbc306ed9, 68 0x98a52666, 0x5648f725, 0xff5e569d, 0x 68 0x98a52666, 0x5648f725, 0xff5e569d, 0x0ced63d0, 0x7c63b2cf, 69 0x700b45e1, 0xd5ea50f1, 0x85a92872, 69 0x700b45e1, 0xd5ea50f1, 0x85a92872, 70 0xaf1fbda7, 0xd4234870, 0xa7870bf3, 0x 70 0xaf1fbda7, 0xd4234870, 0xa7870bf3, 0x2d3b4d79, 0x42e04198, 71 0x0cd0ede7, 0x26470db8, 0xf881814c, 71 0x0cd0ede7, 0x26470db8, 0xf881814c, 72 0x474d6ad7, 0x7c0c5e5c, 0xd1231959, 0x 72 0x474d6ad7, 0x7c0c5e5c, 0xd1231959, 0x381b7298, 0xf5d2f4db, 73 0xab838653, 0x6e2f1e23, 0x83719c9e, 73 0xab838653, 0x6e2f1e23, 0x83719c9e, 74 0xbd91e046, 0x9a56456e, 0xdc39200c, 0x 74 0xbd91e046, 0x9a56456e, 0xdc39200c, 0x20c8c571, 0x962bda1c, 75 0xe1e696ff, 0xb141ab08, 0x7cca89b9, 75 0xe1e696ff, 0xb141ab08, 0x7cca89b9, 76 0x1a69e783, 0x02cc4843, 0xa2f7c579, 0x 76 0x1a69e783, 0x02cc4843, 0xa2f7c579, 0x429ef47d, 0x427b169c, 77 0x5ac9f049, 0xdd8f0f00, 0x5c8165bf 77 0x5ac9f049, 0xdd8f0f00, 0x5c8165bf 78 }; 78 }; 79 EXPORT_SYMBOL_GPL(cast_s1); 79 EXPORT_SYMBOL_GPL(cast_s1); 80 80 81 __visible const u32 cast_s2[256] = { 81 __visible const u32 cast_s2[256] = { 82 0x1f201094, 0xef0ba75b, 0x69e3cf7e, 0x 82 0x1f201094, 0xef0ba75b, 0x69e3cf7e, 0x393f4380, 0xfe61cf7a, 83 0xeec5207a, 0x55889c94, 0x72fc0651, 83 0xeec5207a, 0x55889c94, 0x72fc0651, 84 0xada7ef79, 0x4e1d7235, 0xd55a63ce, 0x 84 0xada7ef79, 0x4e1d7235, 0xd55a63ce, 0xde0436ba, 0x99c430ef, 85 0x5f0c0794, 0x18dcdb7d, 0xa1d6eff3, 85 0x5f0c0794, 0x18dcdb7d, 0xa1d6eff3, 86 0xa0b52f7b, 0x59e83605, 0xee15b094, 0x 86 0xa0b52f7b, 0x59e83605, 0xee15b094, 0xe9ffd909, 0xdc440086, 87 0xef944459, 0xba83ccb3, 0xe0c3cdfb, 87 0xef944459, 0xba83ccb3, 0xe0c3cdfb, 88 0xd1da4181, 0x3b092ab1, 0xf997f1c1, 0x 88 0xd1da4181, 0x3b092ab1, 0xf997f1c1, 0xa5e6cf7b, 0x01420ddb, 89 0xe4e7ef5b, 0x25a1ff41, 0xe180f806, 89 0xe4e7ef5b, 0x25a1ff41, 0xe180f806, 90 0x1fc41080, 0x179bee7a, 0xd37ac6a9, 0x 90 0x1fc41080, 0x179bee7a, 0xd37ac6a9, 0xfe5830a4, 0x98de8b7f, 91 0x77e83f4e, 0x79929269, 0x24fa9f7b, 91 0x77e83f4e, 0x79929269, 0x24fa9f7b, 92 0xe113c85b, 0xacc40083, 0xd7503525, 0x 92 0xe113c85b, 0xacc40083, 0xd7503525, 0xf7ea615f, 0x62143154, 93 0x0d554b63, 0x5d681121, 0xc866c359, 93 0x0d554b63, 0x5d681121, 0xc866c359, 94 0x3d63cf73, 0xcee234c0, 0xd4d87e87, 0x 94 0x3d63cf73, 0xcee234c0, 0xd4d87e87, 0x5c672b21, 0x071f6181, 95 0x39f7627f, 0x361e3084, 0xe4eb573b, 95 0x39f7627f, 0x361e3084, 0xe4eb573b, 96 0x602f64a4, 0xd63acd9c, 0x1bbc4635, 0x 96 0x602f64a4, 0xd63acd9c, 0x1bbc4635, 0x9e81032d, 0x2701f50c, 97 0x99847ab4, 0xa0e3df79, 0xba6cf38c, 97 0x99847ab4, 0xa0e3df79, 0xba6cf38c, 98 0x10843094, 0x2537a95e, 0xf46f6ffe, 0x 98 0x10843094, 0x2537a95e, 0xf46f6ffe, 0xa1ff3b1f, 0x208cfb6a, 99 0x8f458c74, 0xd9e0a227, 0x4ec73a34, 99 0x8f458c74, 0xd9e0a227, 0x4ec73a34, 100 0xfc884f69, 0x3e4de8df, 0xef0e0088, 0x 100 0xfc884f69, 0x3e4de8df, 0xef0e0088, 0x3559648d, 0x8a45388c, 101 0x1d804366, 0x721d9bfd, 0xa58684bb, 101 0x1d804366, 0x721d9bfd, 0xa58684bb, 102 0xe8256333, 0x844e8212, 0x128d8098, 0x 102 0xe8256333, 0x844e8212, 0x128d8098, 0xfed33fb4, 0xce280ae1, 103 0x27e19ba5, 0xd5a6c252, 0xe49754bd, 103 0x27e19ba5, 0xd5a6c252, 0xe49754bd, 104 0xc5d655dd, 0xeb667064, 0x77840b4d, 0x 104 0xc5d655dd, 0xeb667064, 0x77840b4d, 0xa1b6a801, 0x84db26a9, 105 0xe0b56714, 0x21f043b7, 0xe5d05860, 105 0xe0b56714, 0x21f043b7, 0xe5d05860, 106 0x54f03084, 0x066ff472, 0xa31aa153, 0x 106 0x54f03084, 0x066ff472, 0xa31aa153, 0xdadc4755, 0xb5625dbf, 107 0x68561be6, 0x83ca6b94, 0x2d6ed23b, 107 0x68561be6, 0x83ca6b94, 0x2d6ed23b, 108 0xeccf01db, 0xa6d3d0ba, 0xb6803d5c, 0x 108 0xeccf01db, 0xa6d3d0ba, 0xb6803d5c, 0xaf77a709, 0x33b4a34c, 109 0x397bc8d6, 0x5ee22b95, 0x5f0e5304, 109 0x397bc8d6, 0x5ee22b95, 0x5f0e5304, 110 0x81ed6f61, 0x20e74364, 0xb45e1378, 0x 110 0x81ed6f61, 0x20e74364, 0xb45e1378, 0xde18639b, 0x881ca122, 111 0xb96726d1, 0x8049a7e8, 0x22b7da7b, 111 0xb96726d1, 0x8049a7e8, 0x22b7da7b, 112 0x5e552d25, 0x5272d237, 0x79d2951c, 0x 112 0x5e552d25, 0x5272d237, 0x79d2951c, 0xc60d894c, 0x488cb402, 113 0x1ba4fe5b, 0xa4b09f6b, 0x1ca815cf, 113 0x1ba4fe5b, 0xa4b09f6b, 0x1ca815cf, 114 0xa20c3005, 0x8871df63, 0xb9de2fcb, 0x 114 0xa20c3005, 0x8871df63, 0xb9de2fcb, 0x0cc6c9e9, 0x0beeff53, 115 0xe3214517, 0xb4542835, 0x9f63293c, 115 0xe3214517, 0xb4542835, 0x9f63293c, 116 0xee41e729, 0x6e1d2d7c, 0x50045286, 0x 116 0xee41e729, 0x6e1d2d7c, 0x50045286, 0x1e6685f3, 0xf33401c6, 117 0x30a22c95, 0x31a70850, 0x60930f13, 117 0x30a22c95, 0x31a70850, 0x60930f13, 118 0x73f98417, 0xa1269859, 0xec645c44, 0x 118 0x73f98417, 0xa1269859, 0xec645c44, 0x52c877a9, 0xcdff33a6, 119 0xa02b1741, 0x7cbad9a2, 0x2180036f, 119 0xa02b1741, 0x7cbad9a2, 0x2180036f, 120 0x50d99c08, 0xcb3f4861, 0xc26bd765, 0x 120 0x50d99c08, 0xcb3f4861, 0xc26bd765, 0x64a3f6ab, 0x80342676, 121 0x25a75e7b, 0xe4e6d1fc, 0x20c710e6, 121 0x25a75e7b, 0xe4e6d1fc, 0x20c710e6, 122 0xcdf0b680, 0x17844d3b, 0x31eef84d, 0x 122 0xcdf0b680, 0x17844d3b, 0x31eef84d, 0x7e0824e4, 0x2ccb49eb, 123 0x846a3bae, 0x8ff77888, 0xee5d60f6, 123 0x846a3bae, 0x8ff77888, 0xee5d60f6, 124 0x7af75673, 0x2fdd5cdb, 0xa11631c1, 0x 124 0x7af75673, 0x2fdd5cdb, 0xa11631c1, 0x30f66f43, 0xb3faec54, 125 0x157fd7fa, 0xef8579cc, 0xd152de58, 125 0x157fd7fa, 0xef8579cc, 0xd152de58, 126 0xdb2ffd5e, 0x8f32ce19, 0x306af97a, 0x 126 0xdb2ffd5e, 0x8f32ce19, 0x306af97a, 0x02f03ef8, 0x99319ad5, 127 0xc242fa0f, 0xa7e3ebb0, 0xc68e4906, 127 0xc242fa0f, 0xa7e3ebb0, 0xc68e4906, 128 0xb8da230c, 0x80823028, 0xdcdef3c8, 0x 128 0xb8da230c, 0x80823028, 0xdcdef3c8, 0xd35fb171, 0x088a1bc8, 129 0xbec0c560, 0x61a3c9e8, 0xbca8f54d, 129 0xbec0c560, 0x61a3c9e8, 0xbca8f54d, 130 0xc72feffa, 0x22822e99, 0x82c570b4, 0x 130 0xc72feffa, 0x22822e99, 0x82c570b4, 0xd8d94e89, 0x8b1c34bc, 131 0x301e16e6, 0x273be979, 0xb0ffeaa6, 131 0x301e16e6, 0x273be979, 0xb0ffeaa6, 132 0x61d9b8c6, 0x00b24869, 0xb7ffce3f, 0x 132 0x61d9b8c6, 0x00b24869, 0xb7ffce3f, 0x08dc283b, 0x43daf65a, 133 0xf7e19798, 0x7619b72f, 0x8f1c9ba4, 133 0xf7e19798, 0x7619b72f, 0x8f1c9ba4, 134 0xdc8637a0, 0x16a7d3b1, 0x9fc393b7, 0x 134 0xdc8637a0, 0x16a7d3b1, 0x9fc393b7, 0xa7136eeb, 0xc6bcc63e, 135 0x1a513742, 0xef6828bc, 0x520365d6, 135 0x1a513742, 0xef6828bc, 0x520365d6, 136 0x2d6a77ab, 0x3527ed4b, 0x821fd216, 0x 136 0x2d6a77ab, 0x3527ed4b, 0x821fd216, 0x095c6e2e, 0xdb92f2fb, 137 0x5eea29cb, 0x145892f5, 0x91584f7f, 137 0x5eea29cb, 0x145892f5, 0x91584f7f, 138 0x5483697b, 0x2667a8cc, 0x85196048, 0x 138 0x5483697b, 0x2667a8cc, 0x85196048, 0x8c4bacea, 0x833860d4, 139 0x0d23e0f9, 0x6c387e8a, 0x0ae6d249, 139 0x0d23e0f9, 0x6c387e8a, 0x0ae6d249, 140 0xb284600c, 0xd835731d, 0xdcb1c647, 0x 140 0xb284600c, 0xd835731d, 0xdcb1c647, 0xac4c56ea, 0x3ebd81b3, 141 0x230eabb0, 0x6438bc87, 0xf0b5b1fa, 141 0x230eabb0, 0x6438bc87, 0xf0b5b1fa, 142 0x8f5ea2b3, 0xfc184642, 0x0a036b7a, 0x 142 0x8f5ea2b3, 0xfc184642, 0x0a036b7a, 0x4fb089bd, 0x649da589, 143 0xa345415e, 0x5c038323, 0x3e5d3bb9, 143 0xa345415e, 0x5c038323, 0x3e5d3bb9, 144 0x43d79572, 0x7e6dd07c, 0x06dfdf1e, 0x 144 0x43d79572, 0x7e6dd07c, 0x06dfdf1e, 0x6c6cc4ef, 0x7160a539, 145 0x73bfbe70, 0x83877605, 0x4523ecf1 145 0x73bfbe70, 0x83877605, 0x4523ecf1 146 }; 146 }; 147 EXPORT_SYMBOL_GPL(cast_s2); 147 EXPORT_SYMBOL_GPL(cast_s2); 148 148 149 __visible const u32 cast_s3[256] = { 149 __visible const u32 cast_s3[256] = { 150 0x8defc240, 0x25fa5d9f, 0xeb903dbf, 0x 150 0x8defc240, 0x25fa5d9f, 0xeb903dbf, 0xe810c907, 0x47607fff, 151 0x369fe44b, 0x8c1fc644, 0xaececa90, 151 0x369fe44b, 0x8c1fc644, 0xaececa90, 152 0xbeb1f9bf, 0xeefbcaea, 0xe8cf1950, 0x 152 0xbeb1f9bf, 0xeefbcaea, 0xe8cf1950, 0x51df07ae, 0x920e8806, 153 0xf0ad0548, 0xe13c8d83, 0x927010d5, 153 0xf0ad0548, 0xe13c8d83, 0x927010d5, 154 0x11107d9f, 0x07647db9, 0xb2e3e4d4, 0x 154 0x11107d9f, 0x07647db9, 0xb2e3e4d4, 0x3d4f285e, 0xb9afa820, 155 0xfade82e0, 0xa067268b, 0x8272792e, 155 0xfade82e0, 0xa067268b, 0x8272792e, 156 0x553fb2c0, 0x489ae22b, 0xd4ef9794, 0x 156 0x553fb2c0, 0x489ae22b, 0xd4ef9794, 0x125e3fbc, 0x21fffcee, 157 0x825b1bfd, 0x9255c5ed, 0x1257a240, 157 0x825b1bfd, 0x9255c5ed, 0x1257a240, 158 0x4e1a8302, 0xbae07fff, 0x528246e7, 0x 158 0x4e1a8302, 0xbae07fff, 0x528246e7, 0x8e57140e, 0x3373f7bf, 159 0x8c9f8188, 0xa6fc4ee8, 0xc982b5a5, 159 0x8c9f8188, 0xa6fc4ee8, 0xc982b5a5, 160 0xa8c01db7, 0x579fc264, 0x67094f31, 0x 160 0xa8c01db7, 0x579fc264, 0x67094f31, 0xf2bd3f5f, 0x40fff7c1, 161 0x1fb78dfc, 0x8e6bd2c1, 0x437be59b, 161 0x1fb78dfc, 0x8e6bd2c1, 0x437be59b, 162 0x99b03dbf, 0xb5dbc64b, 0x638dc0e6, 0x 162 0x99b03dbf, 0xb5dbc64b, 0x638dc0e6, 0x55819d99, 0xa197c81c, 163 0x4a012d6e, 0xc5884a28, 0xccc36f71, 163 0x4a012d6e, 0xc5884a28, 0xccc36f71, 164 0xb843c213, 0x6c0743f1, 0x8309893c, 0x 164 0xb843c213, 0x6c0743f1, 0x8309893c, 0x0feddd5f, 0x2f7fe850, 165 0xd7c07f7e, 0x02507fbf, 0x5afb9a04, 165 0xd7c07f7e, 0x02507fbf, 0x5afb9a04, 166 0xa747d2d0, 0x1651192e, 0xaf70bf3e, 0x 166 0xa747d2d0, 0x1651192e, 0xaf70bf3e, 0x58c31380, 0x5f98302e, 167 0x727cc3c4, 0x0a0fb402, 0x0f7fef82, 167 0x727cc3c4, 0x0a0fb402, 0x0f7fef82, 168 0x8c96fdad, 0x5d2c2aae, 0x8ee99a49, 0x 168 0x8c96fdad, 0x5d2c2aae, 0x8ee99a49, 0x50da88b8, 0x8427f4a0, 169 0x1eac5790, 0x796fb449, 0x8252dc15, 169 0x1eac5790, 0x796fb449, 0x8252dc15, 170 0xefbd7d9b, 0xa672597d, 0xada840d8, 0x 170 0xefbd7d9b, 0xa672597d, 0xada840d8, 0x45f54504, 0xfa5d7403, 171 0xe83ec305, 0x4f91751a, 0x925669c2, 171 0xe83ec305, 0x4f91751a, 0x925669c2, 172 0x23efe941, 0xa903f12e, 0x60270df2, 0x 172 0x23efe941, 0xa903f12e, 0x60270df2, 0x0276e4b6, 0x94fd6574, 173 0x927985b2, 0x8276dbcb, 0x02778176, 173 0x927985b2, 0x8276dbcb, 0x02778176, 174 0xf8af918d, 0x4e48f79e, 0x8f616ddf, 0x 174 0xf8af918d, 0x4e48f79e, 0x8f616ddf, 0xe29d840e, 0x842f7d83, 175 0x340ce5c8, 0x96bbb682, 0x93b4b148, 175 0x340ce5c8, 0x96bbb682, 0x93b4b148, 176 0xef303cab, 0x984faf28, 0x779faf9b, 0x 176 0xef303cab, 0x984faf28, 0x779faf9b, 0x92dc560d, 0x224d1e20, 177 0x8437aa88, 0x7d29dc96, 0x2756d3dc, 177 0x8437aa88, 0x7d29dc96, 0x2756d3dc, 178 0x8b907cee, 0xb51fd240, 0xe7c07ce3, 0x 178 0x8b907cee, 0xb51fd240, 0xe7c07ce3, 0xe566b4a1, 0xc3e9615e, 179 0x3cf8209d, 0x6094d1e3, 0xcd9ca341, 179 0x3cf8209d, 0x6094d1e3, 0xcd9ca341, 180 0x5c76460e, 0x00ea983b, 0xd4d67881, 0x 180 0x5c76460e, 0x00ea983b, 0xd4d67881, 0xfd47572c, 0xf76cedd9, 181 0xbda8229c, 0x127dadaa, 0x438a074e, 181 0xbda8229c, 0x127dadaa, 0x438a074e, 182 0x1f97c090, 0x081bdb8a, 0x93a07ebe, 0x 182 0x1f97c090, 0x081bdb8a, 0x93a07ebe, 0xb938ca15, 0x97b03cff, 183 0x3dc2c0f8, 0x8d1ab2ec, 0x64380e51, 183 0x3dc2c0f8, 0x8d1ab2ec, 0x64380e51, 184 0x68cc7bfb, 0xd90f2788, 0x12490181, 0x 184 0x68cc7bfb, 0xd90f2788, 0x12490181, 0x5de5ffd4, 0xdd7ef86a, 185 0x76a2e214, 0xb9a40368, 0x925d958f, 185 0x76a2e214, 0xb9a40368, 0x925d958f, 186 0x4b39fffa, 0xba39aee9, 0xa4ffd30b, 0x 186 0x4b39fffa, 0xba39aee9, 0xa4ffd30b, 0xfaf7933b, 0x6d498623, 187 0x193cbcfa, 0x27627545, 0x825cf47a, 187 0x193cbcfa, 0x27627545, 0x825cf47a, 188 0x61bd8ba0, 0xd11e42d1, 0xcead04f4, 0x 188 0x61bd8ba0, 0xd11e42d1, 0xcead04f4, 0x127ea392, 0x10428db7, 189 0x8272a972, 0x9270c4a8, 0x127de50b, 189 0x8272a972, 0x9270c4a8, 0x127de50b, 190 0x285ba1c8, 0x3c62f44f, 0x35c0eaa5, 0x 190 0x285ba1c8, 0x3c62f44f, 0x35c0eaa5, 0xe805d231, 0x428929fb, 191 0xb4fcdf82, 0x4fb66a53, 0x0e7dc15b, 191 0xb4fcdf82, 0x4fb66a53, 0x0e7dc15b, 192 0x1f081fab, 0x108618ae, 0xfcfd086d, 0x 192 0x1f081fab, 0x108618ae, 0xfcfd086d, 0xf9ff2889, 0x694bcc11, 193 0x236a5cae, 0x12deca4d, 0x2c3f8cc5, 193 0x236a5cae, 0x12deca4d, 0x2c3f8cc5, 194 0xd2d02dfe, 0xf8ef5896, 0xe4cf52da, 0x 194 0xd2d02dfe, 0xf8ef5896, 0xe4cf52da, 0x95155b67, 0x494a488c, 195 0xb9b6a80c, 0x5c8f82bc, 0x89d36b45, 195 0xb9b6a80c, 0x5c8f82bc, 0x89d36b45, 196 0x3a609437, 0xec00c9a9, 0x44715253, 0x 196 0x3a609437, 0xec00c9a9, 0x44715253, 0x0a874b49, 0xd773bc40, 197 0x7c34671c, 0x02717ef6, 0x4feb5536, 197 0x7c34671c, 0x02717ef6, 0x4feb5536, 198 0xa2d02fff, 0xd2bf60c4, 0xd43f03c0, 0x 198 0xa2d02fff, 0xd2bf60c4, 0xd43f03c0, 0x50b4ef6d, 0x07478cd1, 199 0x006e1888, 0xa2e53f55, 0xb9e6d4bc, 199 0x006e1888, 0xa2e53f55, 0xb9e6d4bc, 200 0xa2048016, 0x97573833, 0xd7207d67, 0x 200 0xa2048016, 0x97573833, 0xd7207d67, 0xde0f8f3d, 0x72f87b33, 201 0xabcc4f33, 0x7688c55d, 0x7b00a6b0, 201 0xabcc4f33, 0x7688c55d, 0x7b00a6b0, 202 0x947b0001, 0x570075d2, 0xf9bb88f8, 0x 202 0x947b0001, 0x570075d2, 0xf9bb88f8, 0x8942019e, 0x4264a5ff, 203 0x856302e0, 0x72dbd92b, 0xee971b69, 203 0x856302e0, 0x72dbd92b, 0xee971b69, 204 0x6ea22fde, 0x5f08ae2b, 0xaf7a616d, 0x 204 0x6ea22fde, 0x5f08ae2b, 0xaf7a616d, 0xe5c98767, 0xcf1febd2, 205 0x61efc8c2, 0xf1ac2571, 0xcc8239c2, 205 0x61efc8c2, 0xf1ac2571, 0xcc8239c2, 206 0x67214cb8, 0xb1e583d1, 0xb7dc3e62, 0x 206 0x67214cb8, 0xb1e583d1, 0xb7dc3e62, 0x7f10bdce, 0xf90a5c38, 207 0x0ff0443d, 0x606e6dc6, 0x60543a49, 207 0x0ff0443d, 0x606e6dc6, 0x60543a49, 208 0x5727c148, 0x2be98a1d, 0x8ab41738, 0x 208 0x5727c148, 0x2be98a1d, 0x8ab41738, 0x20e1be24, 0xaf96da0f, 209 0x68458425, 0x99833be5, 0x600d457d, 209 0x68458425, 0x99833be5, 0x600d457d, 210 0x282f9350, 0x8334b362, 0xd91d1120, 0x 210 0x282f9350, 0x8334b362, 0xd91d1120, 0x2b6d8da0, 0x642b1e31, 211 0x9c305a00, 0x52bce688, 0x1b03588a, 211 0x9c305a00, 0x52bce688, 0x1b03588a, 212 0xf7baefd5, 0x4142ed9c, 0xa4315c11, 0x 212 0xf7baefd5, 0x4142ed9c, 0xa4315c11, 0x83323ec5, 0xdfef4636, 213 0xa133c501, 0xe9d3531c, 0xee353783 213 0xa133c501, 0xe9d3531c, 0xee353783 214 }; 214 }; 215 EXPORT_SYMBOL_GPL(cast_s3); 215 EXPORT_SYMBOL_GPL(cast_s3); 216 216 217 __visible const u32 cast_s4[256] = { 217 __visible const u32 cast_s4[256] = { 218 0x9db30420, 0x1fb6e9de, 0xa7be7bef, 0x 218 0x9db30420, 0x1fb6e9de, 0xa7be7bef, 0xd273a298, 0x4a4f7bdb, 219 0x64ad8c57, 0x85510443, 0xfa020ed1, 219 0x64ad8c57, 0x85510443, 0xfa020ed1, 220 0x7e287aff, 0xe60fb663, 0x095f35a1, 0x 220 0x7e287aff, 0xe60fb663, 0x095f35a1, 0x79ebf120, 0xfd059d43, 221 0x6497b7b1, 0xf3641f63, 0x241e4adf, 221 0x6497b7b1, 0xf3641f63, 0x241e4adf, 222 0x28147f5f, 0x4fa2b8cd, 0xc9430040, 0x 222 0x28147f5f, 0x4fa2b8cd, 0xc9430040, 0x0cc32220, 0xfdd30b30, 223 0xc0a5374f, 0x1d2d00d9, 0x24147b15, 223 0xc0a5374f, 0x1d2d00d9, 0x24147b15, 224 0xee4d111a, 0x0fca5167, 0x71ff904c, 0x 224 0xee4d111a, 0x0fca5167, 0x71ff904c, 0x2d195ffe, 0x1a05645f, 225 0x0c13fefe, 0x081b08ca, 0x05170121, 225 0x0c13fefe, 0x081b08ca, 0x05170121, 226 0x80530100, 0xe83e5efe, 0xac9af4f8, 0x 226 0x80530100, 0xe83e5efe, 0xac9af4f8, 0x7fe72701, 0xd2b8ee5f, 227 0x06df4261, 0xbb9e9b8a, 0x7293ea25, 227 0x06df4261, 0xbb9e9b8a, 0x7293ea25, 228 0xce84ffdf, 0xf5718801, 0x3dd64b04, 0x 228 0xce84ffdf, 0xf5718801, 0x3dd64b04, 0xa26f263b, 0x7ed48400, 229 0x547eebe6, 0x446d4ca0, 0x6cf3d6f5, 229 0x547eebe6, 0x446d4ca0, 0x6cf3d6f5, 230 0x2649abdf, 0xaea0c7f5, 0x36338cc1, 0x 230 0x2649abdf, 0xaea0c7f5, 0x36338cc1, 0x503f7e93, 0xd3772061, 231 0x11b638e1, 0x72500e03, 0xf80eb2bb, 231 0x11b638e1, 0x72500e03, 0xf80eb2bb, 232 0xabe0502e, 0xec8d77de, 0x57971e81, 0x 232 0xabe0502e, 0xec8d77de, 0x57971e81, 0xe14f6746, 0xc9335400, 233 0x6920318f, 0x081dbb99, 0xffc304a5, 233 0x6920318f, 0x081dbb99, 0xffc304a5, 234 0x4d351805, 0x7f3d5ce3, 0xa6c866c6, 0x 234 0x4d351805, 0x7f3d5ce3, 0xa6c866c6, 0x5d5bcca9, 0xdaec6fea, 235 0x9f926f91, 0x9f46222f, 0x3991467d, 235 0x9f926f91, 0x9f46222f, 0x3991467d, 236 0xa5bf6d8e, 0x1143c44f, 0x43958302, 0x 236 0xa5bf6d8e, 0x1143c44f, 0x43958302, 0xd0214eeb, 0x022083b8, 237 0x3fb6180c, 0x18f8931e, 0x281658e6, 237 0x3fb6180c, 0x18f8931e, 0x281658e6, 238 0x26486e3e, 0x8bd78a70, 0x7477e4c1, 0x 238 0x26486e3e, 0x8bd78a70, 0x7477e4c1, 0xb506e07c, 0xf32d0a25, 239 0x79098b02, 0xe4eabb81, 0x28123b23, 239 0x79098b02, 0xe4eabb81, 0x28123b23, 240 0x69dead38, 0x1574ca16, 0xdf871b62, 0x 240 0x69dead38, 0x1574ca16, 0xdf871b62, 0x211c40b7, 0xa51a9ef9, 241 0x0014377b, 0x041e8ac8, 0x09114003, 241 0x0014377b, 0x041e8ac8, 0x09114003, 242 0xbd59e4d2, 0xe3d156d5, 0x4fe876d5, 0x 242 0xbd59e4d2, 0xe3d156d5, 0x4fe876d5, 0x2f91a340, 0x557be8de, 243 0x00eae4a7, 0x0ce5c2ec, 0x4db4bba6, 243 0x00eae4a7, 0x0ce5c2ec, 0x4db4bba6, 244 0xe756bdff, 0xdd3369ac, 0xec17b035, 0x 244 0xe756bdff, 0xdd3369ac, 0xec17b035, 0x06572327, 0x99afc8b0, 245 0x56c8c391, 0x6b65811c, 0x5e146119, 245 0x56c8c391, 0x6b65811c, 0x5e146119, 246 0x6e85cb75, 0xbe07c002, 0xc2325577, 0x 246 0x6e85cb75, 0xbe07c002, 0xc2325577, 0x893ff4ec, 0x5bbfc92d, 247 0xd0ec3b25, 0xb7801ab7, 0x8d6d3b24, 247 0xd0ec3b25, 0xb7801ab7, 0x8d6d3b24, 248 0x20c763ef, 0xc366a5fc, 0x9c382880, 0x 248 0x20c763ef, 0xc366a5fc, 0x9c382880, 0x0ace3205, 0xaac9548a, 249 0xeca1d7c7, 0x041afa32, 0x1d16625a, 249 0xeca1d7c7, 0x041afa32, 0x1d16625a, 250 0x6701902c, 0x9b757a54, 0x31d477f7, 0x 250 0x6701902c, 0x9b757a54, 0x31d477f7, 0x9126b031, 0x36cc6fdb, 251 0xc70b8b46, 0xd9e66a48, 0x56e55a79, 251 0xc70b8b46, 0xd9e66a48, 0x56e55a79, 252 0x026a4ceb, 0x52437eff, 0x2f8f76b4, 0x 252 0x026a4ceb, 0x52437eff, 0x2f8f76b4, 0x0df980a5, 0x8674cde3, 253 0xedda04eb, 0x17a9be04, 0x2c18f4df, 253 0xedda04eb, 0x17a9be04, 0x2c18f4df, 254 0xb7747f9d, 0xab2af7b4, 0xefc34d20, 0x 254 0xb7747f9d, 0xab2af7b4, 0xefc34d20, 0x2e096b7c, 0x1741a254, 255 0xe5b6a035, 0x213d42f6, 0x2c1c7c26, 255 0xe5b6a035, 0x213d42f6, 0x2c1c7c26, 256 0x61c2f50f, 0x6552daf9, 0xd2c231f8, 0x 256 0x61c2f50f, 0x6552daf9, 0xd2c231f8, 0x25130f69, 0xd8167fa2, 257 0x0418f2c8, 0x001a96a6, 0x0d1526ab, 257 0x0418f2c8, 0x001a96a6, 0x0d1526ab, 258 0x63315c21, 0x5e0a72ec, 0x49bafefd, 0x 258 0x63315c21, 0x5e0a72ec, 0x49bafefd, 0x187908d9, 0x8d0dbd86, 259 0x311170a7, 0x3e9b640c, 0xcc3e10d7, 259 0x311170a7, 0x3e9b640c, 0xcc3e10d7, 260 0xd5cad3b6, 0x0caec388, 0xf73001e1, 0x 260 0xd5cad3b6, 0x0caec388, 0xf73001e1, 0x6c728aff, 0x71eae2a1, 261 0x1f9af36e, 0xcfcbd12f, 0xc1de8417, 261 0x1f9af36e, 0xcfcbd12f, 0xc1de8417, 262 0xac07be6b, 0xcb44a1d8, 0x8b9b0f56, 0x 262 0xac07be6b, 0xcb44a1d8, 0x8b9b0f56, 0x013988c3, 0xb1c52fca, 263 0xb4be31cd, 0xd8782806, 0x12a3a4e2, 263 0xb4be31cd, 0xd8782806, 0x12a3a4e2, 264 0x6f7de532, 0x58fd7eb6, 0xd01ee900, 0x 264 0x6f7de532, 0x58fd7eb6, 0xd01ee900, 0x24adffc2, 0xf4990fc5, 265 0x9711aac5, 0x001d7b95, 0x82e5e7d2, 265 0x9711aac5, 0x001d7b95, 0x82e5e7d2, 266 0x109873f6, 0x00613096, 0xc32d9521, 0x 266 0x109873f6, 0x00613096, 0xc32d9521, 0xada121ff, 0x29908415, 267 0x7fbb977f, 0xaf9eb3db, 0x29c9ed2a, 267 0x7fbb977f, 0xaf9eb3db, 0x29c9ed2a, 268 0x5ce2a465, 0xa730f32c, 0xd0aa3fe8, 0x 268 0x5ce2a465, 0xa730f32c, 0xd0aa3fe8, 0x8a5cc091, 0xd49e2ce7, 269 0x0ce454a9, 0xd60acd86, 0x015f1919, 269 0x0ce454a9, 0xd60acd86, 0x015f1919, 270 0x77079103, 0xdea03af6, 0x78a8565e, 0x 270 0x77079103, 0xdea03af6, 0x78a8565e, 0xdee356df, 0x21f05cbe, 271 0x8b75e387, 0xb3c50651, 0xb8a5c3ef, 271 0x8b75e387, 0xb3c50651, 0xb8a5c3ef, 272 0xd8eeb6d2, 0xe523be77, 0xc2154529, 0x 272 0xd8eeb6d2, 0xe523be77, 0xc2154529, 0x2f69efdf, 0xafe67afb, 273 0xf470c4b2, 0xf3e0eb5b, 0xd6cc9876, 273 0xf470c4b2, 0xf3e0eb5b, 0xd6cc9876, 274 0x39e4460c, 0x1fda8538, 0x1987832f, 0x 274 0x39e4460c, 0x1fda8538, 0x1987832f, 0xca007367, 0xa99144f8, 275 0x296b299e, 0x492fc295, 0x9266beab, 275 0x296b299e, 0x492fc295, 0x9266beab, 276 0xb5676e69, 0x9bd3ddda, 0xdf7e052f, 0x 276 0xb5676e69, 0x9bd3ddda, 0xdf7e052f, 0xdb25701c, 0x1b5e51ee, 277 0xf65324e6, 0x6afce36c, 0x0316cc04, 277 0xf65324e6, 0x6afce36c, 0x0316cc04, 278 0x8644213e, 0xb7dc59d0, 0x7965291f, 0x 278 0x8644213e, 0xb7dc59d0, 0x7965291f, 0xccd6fd43, 0x41823979, 279 0x932bcdf6, 0xb657c34d, 0x4edfd282, 279 0x932bcdf6, 0xb657c34d, 0x4edfd282, 280 0x7ae5290c, 0x3cb9536b, 0x851e20fe, 0x 280 0x7ae5290c, 0x3cb9536b, 0x851e20fe, 0x9833557e, 0x13ecf0b0, 281 0xd3ffb372, 0x3f85c5c1, 0x0aef7ed2 281 0xd3ffb372, 0x3f85c5c1, 0x0aef7ed2 282 }; 282 }; 283 EXPORT_SYMBOL_GPL(cast_s4); 283 EXPORT_SYMBOL_GPL(cast_s4); 284 284 285 MODULE_DESCRIPTION("Common lookup tables for C << 286 MODULE_LICENSE("GPL"); 285 MODULE_LICENSE("GPL"); 287 286
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.