add dependency and auto-generation rule for bn_prime.h
[openssl.git] / crypto / bn / bn_prime.h
1 /* Auto generated by bn_prime.pl */
2 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3  * All rights reserved.
4  *
5  * This package is an SSL implementation written
6  * by Eric Young (eay@cryptsoft.com).
7  * The implementation was written so as to conform with Netscapes SSL.
8  * 
9  * This library is free for commercial and non-commercial use as long as
10  * the following conditions are aheared to.  The following conditions
11  * apply to all code found in this distribution, be it the RC4, RSA,
12  * lhash, DES, etc., code; not just the SSL code.  The SSL documentation
13  * included with this distribution is covered by the same copyright terms
14  * except that the holder is Tim Hudson (tjh@cryptsoft.com).
15  * 
16  * Copyright remains Eric Young's, and as such any Copyright notices in
17  * the code are not to be removed.
18  * If this package is used in a product, Eric Young should be given attribution
19  * as the author of the parts of the library used.
20  * This can be in the form of a textual message at program startup or
21  * in documentation (online or textual) provided with the package.
22  * 
23  * Redistribution and use in source and binary forms, with or without
24  * modification, are permitted provided that the following conditions
25  * are met:
26  * 1. Redistributions of source code must retain the copyright
27  *    notice, this list of conditions and the following disclaimer.
28  * 2. Redistributions in binary form must reproduce the above copyright
29  *    notice, this list of conditions and the following disclaimer in the
30  *    documentation and/or other materials provided with the distribution.
31  * 3. All advertising materials mentioning features or use of this software
32  *    must display the following acknowledgement:
33  *    "This product includes cryptographic software written by
34  *     Eric Young (eay@cryptsoft.com)"
35  *    The word 'cryptographic' can be left out if the rouines from the library
36  *    being used are not cryptographic related :-).
37  * 4. If you include any Windows specific code (or a derivative thereof) from 
38  *    the apps directory (application code) you must include an acknowledgement:
39  *    "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
40  * 
41  * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
42  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
43  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
44  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
45  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
46  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
47  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
48  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
49  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
50  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
51  * SUCH DAMAGE.
52  * 
53  * The licence and distribution terms for any publically available version or
54  * derivative of this code cannot be changed.  i.e. this code cannot simply be
55  * copied and put under another distribution licence
56  * [including the GNU Public Licence.]
57  */
58 #ifndef EIGHT_BIT
59 #define NUMPRIMES 2048
60 #else
61 #define NUMPRIMES 54
62 #endif
63 static unsigned int primes[NUMPRIMES]=
64         {
65            2,   3,   5,   7,  11,  13,  17,  19,
66           23,  29,  31,  37,  41,  43,  47,  53,
67           59,  61,  67,  71,  73,  79,  83,  89,
68           97, 101, 103, 107, 109, 113, 127, 131,
69          137, 139, 149, 151, 157, 163, 167, 173,
70          179, 181, 191, 193, 197, 199, 211, 223,
71          227, 229, 233, 239, 241, 251,
72 #ifndef EIGHT_BIT
73          257, 263,
74          269, 271, 277, 281, 283, 293, 307, 311,
75          313, 317, 331, 337, 347, 349, 353, 359,
76          367, 373, 379, 383, 389, 397, 401, 409,
77          419, 421, 431, 433, 439, 443, 449, 457,
78          461, 463, 467, 479, 487, 491, 499, 503,
79          509, 521, 523, 541, 547, 557, 563, 569,
80          571, 577, 587, 593, 599, 601, 607, 613,
81          617, 619, 631, 641, 643, 647, 653, 659,
82          661, 673, 677, 683, 691, 701, 709, 719,
83          727, 733, 739, 743, 751, 757, 761, 769,
84          773, 787, 797, 809, 811, 821, 823, 827,
85          829, 839, 853, 857, 859, 863, 877, 881,
86          883, 887, 907, 911, 919, 929, 937, 941,
87          947, 953, 967, 971, 977, 983, 991, 997,
88         1009,1013,1019,1021,1031,1033,1039,1049,
89         1051,1061,1063,1069,1087,1091,1093,1097,
90         1103,1109,1117,1123,1129,1151,1153,1163,
91         1171,1181,1187,1193,1201,1213,1217,1223,
92         1229,1231,1237,1249,1259,1277,1279,1283,
93         1289,1291,1297,1301,1303,1307,1319,1321,
94         1327,1361,1367,1373,1381,1399,1409,1423,
95         1427,1429,1433,1439,1447,1451,1453,1459,
96         1471,1481,1483,1487,1489,1493,1499,1511,
97         1523,1531,1543,1549,1553,1559,1567,1571,
98         1579,1583,1597,1601,1607,1609,1613,1619,
99         1621,1627,1637,1657,1663,1667,1669,1693,
100         1697,1699,1709,1721,1723,1733,1741,1747,
101         1753,1759,1777,1783,1787,1789,1801,1811,
102         1823,1831,1847,1861,1867,1871,1873,1877,
103         1879,1889,1901,1907,1913,1931,1933,1949,
104         1951,1973,1979,1987,1993,1997,1999,2003,
105         2011,2017,2027,2029,2039,2053,2063,2069,
106         2081,2083,2087,2089,2099,2111,2113,2129,
107         2131,2137,2141,2143,2153,2161,2179,2203,
108         2207,2213,2221,2237,2239,2243,2251,2267,
109         2269,2273,2281,2287,2293,2297,2309,2311,
110         2333,2339,2341,2347,2351,2357,2371,2377,
111         2381,2383,2389,2393,2399,2411,2417,2423,
112         2437,2441,2447,2459,2467,2473,2477,2503,
113         2521,2531,2539,2543,2549,2551,2557,2579,
114         2591,2593,2609,2617,2621,2633,2647,2657,
115         2659,2663,2671,2677,2683,2687,2689,2693,
116         2699,2707,2711,2713,2719,2729,2731,2741,
117         2749,2753,2767,2777,2789,2791,2797,2801,
118         2803,2819,2833,2837,2843,2851,2857,2861,
119         2879,2887,2897,2903,2909,2917,2927,2939,
120         2953,2957,2963,2969,2971,2999,3001,3011,
121         3019,3023,3037,3041,3049,3061,3067,3079,
122         3083,3089,3109,3119,3121,3137,3163,3167,
123         3169,3181,3187,3191,3203,3209,3217,3221,
124         3229,3251,3253,3257,3259,3271,3299,3301,
125         3307,3313,3319,3323,3329,3331,3343,3347,
126         3359,3361,3371,3373,3389,3391,3407,3413,
127         3433,3449,3457,3461,3463,3467,3469,3491,
128         3499,3511,3517,3527,3529,3533,3539,3541,
129         3547,3557,3559,3571,3581,3583,3593,3607,
130         3613,3617,3623,3631,3637,3643,3659,3671,
131         3673,3677,3691,3697,3701,3709,3719,3727,
132         3733,3739,3761,3767,3769,3779,3793,3797,
133         3803,3821,3823,3833,3847,3851,3853,3863,
134         3877,3881,3889,3907,3911,3917,3919,3923,
135         3929,3931,3943,3947,3967,3989,4001,4003,
136         4007,4013,4019,4021,4027,4049,4051,4057,
137         4073,4079,4091,4093,4099,4111,4127,4129,
138         4133,4139,4153,4157,4159,4177,4201,4211,
139         4217,4219,4229,4231,4241,4243,4253,4259,
140         4261,4271,4273,4283,4289,4297,4327,4337,
141         4339,4349,4357,4363,4373,4391,4397,4409,
142         4421,4423,4441,4447,4451,4457,4463,4481,
143         4483,4493,4507,4513,4517,4519,4523,4547,
144         4549,4561,4567,4583,4591,4597,4603,4621,
145         4637,4639,4643,4649,4651,4657,4663,4673,
146         4679,4691,4703,4721,4723,4729,4733,4751,
147         4759,4783,4787,4789,4793,4799,4801,4813,
148         4817,4831,4861,4871,4877,4889,4903,4909,
149         4919,4931,4933,4937,4943,4951,4957,4967,
150         4969,4973,4987,4993,4999,5003,5009,5011,
151         5021,5023,5039,5051,5059,5077,5081,5087,
152         5099,5101,5107,5113,5119,5147,5153,5167,
153         5171,5179,5189,5197,5209,5227,5231,5233,
154         5237,5261,5273,5279,5281,5297,5303,5309,
155         5323,5333,5347,5351,5381,5387,5393,5399,
156         5407,5413,5417,5419,5431,5437,5441,5443,
157         5449,5471,5477,5479,5483,5501,5503,5507,
158         5519,5521,5527,5531,5557,5563,5569,5573,
159         5581,5591,5623,5639,5641,5647,5651,5653,
160         5657,5659,5669,5683,5689,5693,5701,5711,
161         5717,5737,5741,5743,5749,5779,5783,5791,
162         5801,5807,5813,5821,5827,5839,5843,5849,
163         5851,5857,5861,5867,5869,5879,5881,5897,
164         5903,5923,5927,5939,5953,5981,5987,6007,
165         6011,6029,6037,6043,6047,6053,6067,6073,
166         6079,6089,6091,6101,6113,6121,6131,6133,
167         6143,6151,6163,6173,6197,6199,6203,6211,
168         6217,6221,6229,6247,6257,6263,6269,6271,
169         6277,6287,6299,6301,6311,6317,6323,6329,
170         6337,6343,6353,6359,6361,6367,6373,6379,
171         6389,6397,6421,6427,6449,6451,6469,6473,
172         6481,6491,6521,6529,6547,6551,6553,6563,
173         6569,6571,6577,6581,6599,6607,6619,6637,
174         6653,6659,6661,6673,6679,6689,6691,6701,
175         6703,6709,6719,6733,6737,6761,6763,6779,
176         6781,6791,6793,6803,6823,6827,6829,6833,
177         6841,6857,6863,6869,6871,6883,6899,6907,
178         6911,6917,6947,6949,6959,6961,6967,6971,
179         6977,6983,6991,6997,7001,7013,7019,7027,
180         7039,7043,7057,7069,7079,7103,7109,7121,
181         7127,7129,7151,7159,7177,7187,7193,7207,
182         7211,7213,7219,7229,7237,7243,7247,7253,
183         7283,7297,7307,7309,7321,7331,7333,7349,
184         7351,7369,7393,7411,7417,7433,7451,7457,
185         7459,7477,7481,7487,7489,7499,7507,7517,
186         7523,7529,7537,7541,7547,7549,7559,7561,
187         7573,7577,7583,7589,7591,7603,7607,7621,
188         7639,7643,7649,7669,7673,7681,7687,7691,
189         7699,7703,7717,7723,7727,7741,7753,7757,
190         7759,7789,7793,7817,7823,7829,7841,7853,
191         7867,7873,7877,7879,7883,7901,7907,7919,
192         7927,7933,7937,7949,7951,7963,7993,8009,
193         8011,8017,8039,8053,8059,8069,8081,8087,
194         8089,8093,8101,8111,8117,8123,8147,8161,
195         8167,8171,8179,8191,8209,8219,8221,8231,
196         8233,8237,8243,8263,8269,8273,8287,8291,
197         8293,8297,8311,8317,8329,8353,8363,8369,
198         8377,8387,8389,8419,8423,8429,8431,8443,
199         8447,8461,8467,8501,8513,8521,8527,8537,
200         8539,8543,8563,8573,8581,8597,8599,8609,
201         8623,8627,8629,8641,8647,8663,8669,8677,
202         8681,8689,8693,8699,8707,8713,8719,8731,
203         8737,8741,8747,8753,8761,8779,8783,8803,
204         8807,8819,8821,8831,8837,8839,8849,8861,
205         8863,8867,8887,8893,8923,8929,8933,8941,
206         8951,8963,8969,8971,8999,9001,9007,9011,
207         9013,9029,9041,9043,9049,9059,9067,9091,
208         9103,9109,9127,9133,9137,9151,9157,9161,
209         9173,9181,9187,9199,9203,9209,9221,9227,
210         9239,9241,9257,9277,9281,9283,9293,9311,
211         9319,9323,9337,9341,9343,9349,9371,9377,
212         9391,9397,9403,9413,9419,9421,9431,9433,
213         9437,9439,9461,9463,9467,9473,9479,9491,
214         9497,9511,9521,9533,9539,9547,9551,9587,
215         9601,9613,9619,9623,9629,9631,9643,9649,
216         9661,9677,9679,9689,9697,9719,9721,9733,
217         9739,9743,9749,9767,9769,9781,9787,9791,
218         9803,9811,9817,9829,9833,9839,9851,9857,
219         9859,9871,9883,9887,9901,9907,9923,9929,
220         9931,9941,9949,9967,9973,10007,10009,10037,
221         10039,10061,10067,10069,10079,10091,10093,10099,
222         10103,10111,10133,10139,10141,10151,10159,10163,
223         10169,10177,10181,10193,10211,10223,10243,10247,
224         10253,10259,10267,10271,10273,10289,10301,10303,
225         10313,10321,10331,10333,10337,10343,10357,10369,
226         10391,10399,10427,10429,10433,10453,10457,10459,
227         10463,10477,10487,10499,10501,10513,10529,10531,
228         10559,10567,10589,10597,10601,10607,10613,10627,
229         10631,10639,10651,10657,10663,10667,10687,10691,
230         10709,10711,10723,10729,10733,10739,10753,10771,
231         10781,10789,10799,10831,10837,10847,10853,10859,
232         10861,10867,10883,10889,10891,10903,10909,10937,
233         10939,10949,10957,10973,10979,10987,10993,11003,
234         11027,11047,11057,11059,11069,11071,11083,11087,
235         11093,11113,11117,11119,11131,11149,11159,11161,
236         11171,11173,11177,11197,11213,11239,11243,11251,
237         11257,11261,11273,11279,11287,11299,11311,11317,
238         11321,11329,11351,11353,11369,11383,11393,11399,
239         11411,11423,11437,11443,11447,11467,11471,11483,
240         11489,11491,11497,11503,11519,11527,11549,11551,
241         11579,11587,11593,11597,11617,11621,11633,11657,
242         11677,11681,11689,11699,11701,11717,11719,11731,
243         11743,11777,11779,11783,11789,11801,11807,11813,
244         11821,11827,11831,11833,11839,11863,11867,11887,
245         11897,11903,11909,11923,11927,11933,11939,11941,
246         11953,11959,11969,11971,11981,11987,12007,12011,
247         12037,12041,12043,12049,12071,12073,12097,12101,
248         12107,12109,12113,12119,12143,12149,12157,12161,
249         12163,12197,12203,12211,12227,12239,12241,12251,
250         12253,12263,12269,12277,12281,12289,12301,12323,
251         12329,12343,12347,12373,12377,12379,12391,12401,
252         12409,12413,12421,12433,12437,12451,12457,12473,
253         12479,12487,12491,12497,12503,12511,12517,12527,
254         12539,12541,12547,12553,12569,12577,12583,12589,
255         12601,12611,12613,12619,12637,12641,12647,12653,
256         12659,12671,12689,12697,12703,12713,12721,12739,
257         12743,12757,12763,12781,12791,12799,12809,12821,
258         12823,12829,12841,12853,12889,12893,12899,12907,
259         12911,12917,12919,12923,12941,12953,12959,12967,
260         12973,12979,12983,13001,13003,13007,13009,13033,
261         13037,13043,13049,13063,13093,13099,13103,13109,
262         13121,13127,13147,13151,13159,13163,13171,13177,
263         13183,13187,13217,13219,13229,13241,13249,13259,
264         13267,13291,13297,13309,13313,13327,13331,13337,
265         13339,13367,13381,13397,13399,13411,13417,13421,
266         13441,13451,13457,13463,13469,13477,13487,13499,
267         13513,13523,13537,13553,13567,13577,13591,13597,
268         13613,13619,13627,13633,13649,13669,13679,13681,
269         13687,13691,13693,13697,13709,13711,13721,13723,
270         13729,13751,13757,13759,13763,13781,13789,13799,
271         13807,13829,13831,13841,13859,13873,13877,13879,
272         13883,13901,13903,13907,13913,13921,13931,13933,
273         13963,13967,13997,13999,14009,14011,14029,14033,
274         14051,14057,14071,14081,14083,14087,14107,14143,
275         14149,14153,14159,14173,14177,14197,14207,14221,
276         14243,14249,14251,14281,14293,14303,14321,14323,
277         14327,14341,14347,14369,14387,14389,14401,14407,
278         14411,14419,14423,14431,14437,14447,14449,14461,
279         14479,14489,14503,14519,14533,14537,14543,14549,
280         14551,14557,14561,14563,14591,14593,14621,14627,
281         14629,14633,14639,14653,14657,14669,14683,14699,
282         14713,14717,14723,14731,14737,14741,14747,14753,
283         14759,14767,14771,14779,14783,14797,14813,14821,
284         14827,14831,14843,14851,14867,14869,14879,14887,
285         14891,14897,14923,14929,14939,14947,14951,14957,
286         14969,14983,15013,15017,15031,15053,15061,15073,
287         15077,15083,15091,15101,15107,15121,15131,15137,
288         15139,15149,15161,15173,15187,15193,15199,15217,
289         15227,15233,15241,15259,15263,15269,15271,15277,
290         15287,15289,15299,15307,15313,15319,15329,15331,
291         15349,15359,15361,15373,15377,15383,15391,15401,
292         15413,15427,15439,15443,15451,15461,15467,15473,
293         15493,15497,15511,15527,15541,15551,15559,15569,
294         15581,15583,15601,15607,15619,15629,15641,15643,
295         15647,15649,15661,15667,15671,15679,15683,15727,
296         15731,15733,15737,15739,15749,15761,15767,15773,
297         15787,15791,15797,15803,15809,15817,15823,15859,
298         15877,15881,15887,15889,15901,15907,15913,15919,
299         15923,15937,15959,15971,15973,15991,16001,16007,
300         16033,16057,16061,16063,16067,16069,16073,16087,
301         16091,16097,16103,16111,16127,16139,16141,16183,
302         16187,16189,16193,16217,16223,16229,16231,16249,
303         16253,16267,16273,16301,16319,16333,16339,16349,
304         16361,16363,16369,16381,16411,16417,16421,16427,
305         16433,16447,16451,16453,16477,16481,16487,16493,
306         16519,16529,16547,16553,16561,16567,16573,16603,
307         16607,16619,16631,16633,16649,16651,16657,16661,
308         16673,16691,16693,16699,16703,16729,16741,16747,
309         16759,16763,16787,16811,16823,16829,16831,16843,
310         16871,16879,16883,16889,16901,16903,16921,16927,
311         16931,16937,16943,16963,16979,16981,16987,16993,
312         17011,17021,17027,17029,17033,17041,17047,17053,
313         17077,17093,17099,17107,17117,17123,17137,17159,
314         17167,17183,17189,17191,17203,17207,17209,17231,
315         17239,17257,17291,17293,17299,17317,17321,17327,
316         17333,17341,17351,17359,17377,17383,17387,17389,
317         17393,17401,17417,17419,17431,17443,17449,17467,
318         17471,17477,17483,17489,17491,17497,17509,17519,
319         17539,17551,17569,17573,17579,17581,17597,17599,
320         17609,17623,17627,17657,17659,17669,17681,17683,
321         17707,17713,17729,17737,17747,17749,17761,17783,
322         17789,17791,17807,17827,17837,17839,17851,17863,
323 #endif
324         };